[
  {
    "path": ".gitignore",
    "content": "# General\n.DS_Store\n\n# Build\n\ndistribution/build\ndistribution/artifacts\ndistribution/Template/Template_rw.dmg\n\n# Xcode project\n\nproject.xcworkspace/xcuserdata/\n\n*.xcodeproj/xcuserdata/\n*.xcuserdata\n*.xcuserstate\n"
  },
  {
    "path": ".gitmodules",
    "content": "[submodule \"submodules/ips2crash\"]\n\tpath = submodules/ips2crash\n\turl = https://github.com/packagesdev/ips2crash\n"
  },
  {
    "path": "Configs/CodeSigningConfigurationSettings.xcconfig",
    "content": "// Code Signing Settings\n\n// CODE_SIGN_IDENTITY = Developer ID Application: Your Identifity (SomeValue)"
  },
  {
    "path": "Configs/SharedConfigurationSettings.xcconfig",
    "content": "// Shared Configuration Settings for Unexpectedly Xcode Projects\n\n#include \"CodeSigningConfigurationSettings.xcconfig\"\n\n// Universal\n\nARCHS = $(ARCHS_STANDARD_64_BIT)\n\n// Use Latest OS X SDK\n\nSDKROOT = macosx\n\n// Deployment Target\n\nMACOSX_DEPLOYMENT_TARGET = 10.13\nMACOSX_DEPLOYMENT_TARGET[arch=arm64] = 11.0\n\n//\n\nCOPY_PHASE_STRIP[config=Debug] = NO\nCOPY_PHASE_STRIP = YES\n\n// Codesigning\n\nOTHER_CODE_SIGN_FLAGS = --timestamp\n"
  },
  {
    "path": "LICENSE.txt",
    "content": "Copyright © 2021-2025, Stéphane Sudre. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\nRedistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n\nRedistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n\nNeither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n\nLicense for the third party code Included in this software: \n\nNoodleLineNumberView & NoodleLineNumberMarker\n\nCreated by Paul Kim on 9/28/08.\nCopyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE."
  },
  {
    "path": "README.md",
    "content": "## Synopsis\n\nUnexpectedly is a macOS utility to browse and inspect crash reports of Mac applications.\n\n## Screenshot\n\n![Alt text](http://s.sudre.free.fr/Software/Unexpectedly/images/about_top.png \"Unexpectedly text mode\")\n\n## Motivation\n\nThe macOS system utility Console.app is pretty limited and confusing when it comes to browsing crash reports. \n\nMinimum OS requirement is macOS 10.13 at this time.\n\n## Development Environment\n\n- macOS 10.14 or later\n- Xcode 10.1 or later\n- Objective-C 2.x\n\n\n## License\n\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n## Attributions\n\nUnexpectedly uses an updated implementation of the Line View Test project\n\nCopyright (c) 2008 Noodlesoft, LLC. All Rights Reserved.\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n\n\n## Potentially Interesting Implementations In The Code\n\n- Code to access the segments and sections of a Mach-O file is available in the app_unexpectedly project/app_unexpectedly project/Mach-o directory.\n\n- Code to analyze DWARF files is available in the app_unexpectedly project/app_unexpectedly project/DWARF directory. Unexpectedly does not rely on LLVM.\n\n- A solution to deal with a NSTextView when it comes to vertical scrolling when a vertical ruleview is visible is available in the CUICrashLogTextView class.\n\n- How the project uses - forwardingTargetForSelector: , - respondsToSelector: to go downward in the responders chain might be interesting.\n\n- Code to implement a thick NSSplitView divider with subviews as in Xcode can be found in the CUICrashLogPresentationOutlineViewController class.  \n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSColor+LabelColor.h",
    "content": "/*\n Copyright (c) 2018, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface NSColor ()\n\n+ (NSColor *)labelColor;\n+ (NSColor *)secondaryLabelColor;\n+ (NSColor *)tertiaryLabelColor;\n+ (NSColor *)quaternaryLabelColor;\n+ (NSColor *)containerBorderColor;\n\n+ (NSColor *)systemBlueColor;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSColor+LabelColor.m",
    "content": "/*\n Copyright (c) 2018, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSColor+LabelColor.h\"\n\n#import <objc/objc-class.h>\n\n@interface NSColor (LabelColor_WB)\n\n+ (NSColor *)WB_labelColor;\n\n+ (NSColor *)WB_secondaryLabelColor;\n\n+ (NSColor *)WB_tertiaryLabelColor;\n\n+ (NSColor *)WB_quaternaryLabelColor;\n\n+ (NSColor *)WB_containerBorderColor;\n\n\n+ (NSColor *)WB_systemBlueColor;\n\n@end\n\n@implementation NSColor (LabelColor_WB)\n\n+ (void)load\n{\n\tClass tClass = object_getClass(self);\n\t\n\tif ([self respondsToSelector:@selector(labelColor)]==NO)\n\t{\n\t\tMethod origMethod = class_getClassMethod(tClass, @selector(WB_labelColor));\n\t\t\n\t\tclass_addMethod(tClass, @selector(labelColor), method_getImplementation(origMethod),method_getTypeEncoding(origMethod));\n\t}\n\t\n\tif ([self respondsToSelector:@selector(secondaryLabelColor)]==NO)\n\t{\n\t\tMethod origMethod = class_getClassMethod(tClass, @selector(WB_secondaryLabelColor));\n\t\t\n\t\tclass_addMethod(tClass, @selector(secondaryLabelColor), method_getImplementation(origMethod),method_getTypeEncoding(origMethod));\n\t}\n\t\n\tif ([self respondsToSelector:@selector(tertiaryLabelColor)]==NO)\n\t{\n\t\tMethod origMethod = class_getClassMethod(tClass, @selector(WB_tertiaryLabelColor));\n\t\t\n\t\tclass_addMethod(tClass, @selector(tertiaryLabelColor), method_getImplementation(origMethod),method_getTypeEncoding(origMethod));\n\t}\n\t\n\tif ([self respondsToSelector:@selector(quaternaryLabelColor)]==NO)\n\t{\n\t\tMethod origMethod = class_getClassMethod(tClass, @selector(WB_quaternaryLabelColor));\n\t\t\n\t\tclass_addMethod(tClass, @selector(quaternaryLabelColor), method_getImplementation(origMethod),method_getTypeEncoding(origMethod));\n\t}\n\t\n\tif ([self respondsToSelector:@selector(containerBorderColor)]==NO)\n\t{\n\t\tMethod origMethod = class_getClassMethod(tClass, @selector(WB_containerBorderColor));\n\t\t\n\t\tclass_addMethod(tClass, @selector(containerBorderColor), method_getImplementation(origMethod),method_getTypeEncoding(origMethod));\n\t}\n\t\n\tif ([self respondsToSelector:@selector(systemBlueColor)]==NO)\n\t{\n\t\tMethod origMethod = class_getClassMethod(tClass, @selector(WB_systemBlueColor));\n\t\t\n\t\tclass_addMethod(tClass, @selector(systemBlueColor), method_getImplementation(origMethod),method_getTypeEncoding(origMethod));\n\t}\n}\n\n#pragma mark -\n\n+ (NSColor *)WB_labelColor\n{\n\treturn [NSColor colorWithDeviceWhite:0.0 alpha:0.85];\n}\n\n+ (NSColor *)WB_secondaryLabelColor\n{\n\treturn [NSColor colorWithDeviceWhite:0.0 alpha:0.5];\n}\n\n+ (NSColor *)WB_tertiaryLabelColor\n{\n\treturn [NSColor colorWithDeviceWhite:0.0 alpha:0.25];\n}\n\n+ (NSColor *)WB_quaternaryLabelColor\n{\n\treturn [NSColor colorWithDeviceWhite:0.0 alpha:0.10];\n}\n\n+ (NSColor *)WB_containerBorderColor\n{\n\tif ([[NSColor class] respondsToSelector:@selector(tertiaryLabelColor)]==YES)\n\t\treturn [[NSColor class] performSelector:@selector(tertiaryLabelColor) withObject:nil];\n\t\n\treturn [NSColor colorWithDeviceWhite:0.0 alpha:0.25];\n}\n\n+ (NSColor *)WB_systemBlueColor\n{\n\treturn [NSColor colorWithDeviceRed:0.4 green:0.69 blue:0.94 alpha:1.0];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSColor+String.h",
    "content": "/*\n Copyright (c) 2019, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface NSColor (String)\n\n+ (NSColor *)colorFromString:(NSString *)inString;\n\n- (NSString *)stringValue;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSColor+String.m",
    "content": "/*\n Copyright (c) 2019, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSColor+String.h\"\n\n@implementation NSColor (String)\n\n+ (NSColor *)colorFromString:(NSString *)inString\n{\n    NSColor * tColor=nil;\n    \n    if (inString!=nil)\n    {\n        NSArray<NSString *> * tComponents=[inString componentsSeparatedByString:@\"|\"];\n    \n        if (tComponents.count==3)\n        {\n            tColor=[NSColor colorWithCalibratedRed:[tComponents[0] floatValue]\n                                             green:[tComponents[1] floatValue]\n                                              blue:[tComponents[2] floatValue]\n                                             alpha:1.0];\n        }\n    }\n    \n    return tColor;\n}\n\n#pragma mark -\n\n- (NSString *)stringValue\n{\n    NSColorSpace * tColorSpace = [NSColorSpace genericRGBColorSpace];\n    NSColor * tColor = [self colorUsingColorSpace:tColorSpace];\n    \n    return([NSString stringWithFormat:@\"%f|%f|%f\",(float)[tColor redComponent],(float)[tColor greenComponent],(float)[tColor blueComponent]]);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSResponder+Appearance.h",
    "content": "/*\n Copyright (c) 2018, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#ifndef NSAppKitVersionNumber10_14\n#define NSAppKitVersionNumber10_14 1641.10\n#endif\n\ntypedef NS_ENUM(NSUInteger, WB_AppearanceMode)\n{\n\tWB_AppearanceAqua=0,\n\tWB_AppearanceDarkAqua\n};\n\nextern NSString * const WB_NSAppearanceNameAqua;\n\nextern NSString * const WB_NSAppearanceNameDarkAqua;\n\n@interface NSResponder (WB_Appearance)\n\n+ (WB_AppearanceMode) WB_appearanceModeForAppearanceName:(NSString *)inAppearanceName;\n\n+ (NSString *)WB_appearanceNameForAppearanceMode:(WB_AppearanceMode)inAppearanceMode;\n\n- (NSString *)WB_effectiveAppearanceName;\n\n- (BOOL)WB_isEffectiveAppearanceDarkAqua;\n\n@end"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSResponder+Appearance.m",
    "content": "/*\n Copyright (c) 2018, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSResponder+Appearance.h\"\n\nNSString * const WB_NSAppearanceNameAqua=@\"NSAppearanceNameAqua\";\n\nNSString * const WB_NSAppearanceNameDarkAqua=@\"NSAppearanceNameDarkAqua\";\n\n@implementation NSResponder (Appearance_WB)\n\n+ (WB_AppearanceMode)WB_appearanceModeForAppearanceName:(NSString *)inAppearanceName\n{\n\tif ([inAppearanceName isEqualToString:WB_NSAppearanceNameDarkAqua]==YES)\n\t\treturn WB_AppearanceDarkAqua;\n\t\n\treturn WB_AppearanceAqua;\n}\n\n+ (NSString *)WB_appearanceNameForAppearanceMode:(WB_AppearanceMode)inAppearanceMode\n{\n\tswitch(inAppearanceMode)\n\t{\n\t\tcase WB_AppearanceAqua:\n\t\t\t\n\t\t\treturn WB_NSAppearanceNameAqua;\n\t\t\t\n\t\tcase WB_AppearanceDarkAqua:\n\t\t\t\n\t\t\treturn WB_NSAppearanceNameDarkAqua;\n\t}\n\t\n\treturn WB_NSAppearanceNameAqua;\n}\n\n#pragma mark -\n\n- (NSString *)WB_effectiveAppearanceName\n{\n\tif (NSAppKitVersionNumber<NSAppKitVersionNumber10_14)\n\t\treturn WB_NSAppearanceNameAqua;\n\t\n\tif ([self conformsToProtocol:@protocol(NSAppearanceCustomization)]==NO)\n\t\treturn WB_NSAppearanceNameAqua;\n\t\n\tid tAppearance=[self performSelector:@selector(effectiveAppearance) withObject:nil];\n\t\n\treturn (NSString *)[tAppearance performSelector:@selector(bestMatchFromAppearancesWithNames:) withObject:@[WB_NSAppearanceNameAqua,WB_NSAppearanceNameDarkAqua]];\n}\n\n- (BOOL)WB_isEffectiveAppearanceDarkAqua\n{\n\tif (NSAppKitVersionNumber<NSAppKitVersionNumber10_14)\n\t\treturn NO;\n\t\n\tif ([self conformsToProtocol:@protocol(NSAppearanceCustomization)]==NO)\n\t\treturn NO;\n\t\n\tid tAppearance=[self performSelector:@selector(effectiveAppearance) withObject:nil];\n\t\n\tNSString * tBestMatch=(NSString *)[tAppearance performSelector:@selector(bestMatchFromAppearancesWithNames:) withObject:@[WB_NSAppearanceNameAqua,WB_NSAppearanceNameDarkAqua]];\n\t\n\treturn [tBestMatch isEqualToString:WB_NSAppearanceNameDarkAqua];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSTableView+Selection.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface NSTableView (Selection_WB)\n\n\t@property (readonly, copy) NSIndexSet *WB_selectedOrClickedRowIndexes;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSTableView+Selection.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSTableView+Selection.h\"\n\n@implementation NSTableView (Selection_WB)\n\n- (NSIndexSet *)WB_selectedOrClickedRowIndexes\n{\n\tNSIndexSet * tSelectionIndexSet=self.selectedRowIndexes;\n\t\n\tNSInteger tClickedRow=self.clickedRow;\n\t\n\tif (tClickedRow!=-1 && [tSelectionIndexSet containsIndex:tClickedRow]==NO)\n\t\ttSelectionIndexSet=[NSIndexSet indexSetWithIndex:tClickedRow];\n\t\n\treturn tSelectionIndexSet;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSToolbar+Packages.h",
    "content": "/*\n Copyright (c) 2016, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <AppKit/AppKit.h>\n\n@interface NSToolbar (Packages)\n\n- (NSToolbarItem *)PKG_toolBarItemWithIdentifier:(NSString *)inIdentifier;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/AppKit + Extensions/NSToolbar+Packages.m",
    "content": "/*\n Copyright (c) 2016, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSToolbar+Packages.h\"\n\n@implementation NSToolbar (Packages)\n\n- (NSToolbarItem *)PKG_toolBarItemWithIdentifier:(NSString *)inIdentifier\n{\n\tif (inIdentifier==nil)\n\t\treturn nil;\n\t\n\tfor(NSToolbarItem * tItem in self.items)\n\t{\n\t\tif ([tItem.itemIdentifier isEqualToString:inIdentifier]==YES)\n\t\t\treturn tItem;\n\t}\n\t\t\t\n\treturn nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSArray+UniqueName.h",
    "content": "/*\n Copyright (c) 2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSArray (UniqueName)\n\n- (NSString *)uniqueNameWithBaseName:(NSString *)inBaseName usingNameExtractor:(NSString * (^)(id,NSUInteger))nameExtractor;\n\n- (NSString *)uniqueNameWithBaseName:(NSString *)inBaseName options:(NSStringCompareOptions)inOptions usingNameExtractor:(NSString * (^)(id,NSUInteger))nameExtractor;\n\n- (NSString *)uniqueNameWithBaseName:(NSString *)inBaseName format:(NSString *)inFormat options:(NSStringCompareOptions)inOptions usingNameExtractor:(NSString * (^)(id,NSUInteger))nameExtractor;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSArray+UniqueName.m",
    "content": "/*\n Copyright (c) 2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSArray+UniqueName.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n#define UNIQUENAME_ATTEMPTS_MAX\t\t65535\n\n@implementation NSArray (UniqueName)\n\n- (NSString *)uniqueNameWithBaseName:(NSString *)inBaseName usingNameExtractor:(NSString * (^)(id bObject,NSUInteger bIndex))nameExtractor\n{\n\treturn [self uniqueNameWithBaseName:inBaseName options:NSCaseInsensitiveSearch usingNameExtractor:nameExtractor];\n}\n\n- (NSString *)uniqueNameWithBaseName:(NSString *)inBaseName options:(NSStringCompareOptions)inOptions usingNameExtractor:(NSString * (^)(id bObject,NSUInteger bIndex))nameExtractor\n{\n\treturn [self uniqueNameWithBaseName:inBaseName format: @\"%@ %lu\" options:inOptions usingNameExtractor:nameExtractor];\n}\n\n- (NSString *)uniqueNameWithBaseName:(NSString *)inBaseName format:(NSString *)inFormat options:(NSStringCompareOptions)inOptions usingNameExtractor:(NSString * (^)(id bObject,NSUInteger bIndex))nameExtractor\n{\n\tif (inBaseName==nil || nameExtractor==nil)\n\t\treturn nil;\n\t\n\tif (inFormat.length==0 ||\n\t\t[inFormat rangeOfString:@\"%@\"].location==NSNotFound ||\n\t\t[inFormat rangeOfString:@\"%lu\"].location==NSNotFound)\n\t\treturn nil;\n\t\n\tNSArray * tNamesArray=[self WB_arrayByMappingObjectsUsingBlock:nameExtractor];\n\t\n\tif (tNamesArray==nil)\n\t\treturn nil;\n\t\n\tNSString * tFileName=inBaseName;\n\tNSUInteger tIndex=1;\n\t\n\tdo\n\t{\n\t\tif ([tNamesArray indexOfObjectPassingTest:^BOOL(NSString * bName, NSUInteger bIndex, BOOL * bOutStop){\n\t\t\n\t\t\treturn ([bName compare:tFileName options:inOptions]==NSOrderedSame);\n\t\t\n\t\t}]==NSNotFound)\n\t\t\treturn tFileName;\n\t\t\n\t\ttFileName=[NSString stringWithFormat:inFormat,inBaseName,(unsigned long)tIndex];\n\t\t\n\t\ttIndex++;\n\t}\n\twhile (tIndex<UNIQUENAME_ATTEMPTS_MAX);\n\t\n\tNSLog(@\"Unable to find a unique name using the basename %@\",inBaseName);\n\t\n\treturn nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSArray+WBExtensions.h",
    "content": "/*\n Copyright (c) 2016-2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSArray (WBExtensions)\n\n- (instancetype)WB_arrayByMappingObjectsUsingBlock:(id (^)(id bObject, NSUInteger bIndex))inBlock;\n\n- (instancetype)WB_arrayByMappingObjectsLenientlyUsingBlock:(id (^)(id bObject, NSUInteger bIndex))inBlock;\n\n- (instancetype)WB_filteredArrayUsingBlock:(BOOL (^)(id bObject, NSUInteger bIndex))inBlock;\n\n@end\n\n@interface NSMutableArray (WBExtensions)\n\n- (void)WB_mergeWithArray:(NSArray *)inArray;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSArray+WBExtensions.m",
    "content": "/*\n Copyright (c) 2016, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSArray+WBExtensions.h\"\n\n@implementation NSArray (WBExtensions)\n\n- (instancetype)WB_arrayByMappingObjectsUsingBlock:(id (^)(id bObject, NSUInteger bIndex))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\t__block NSMutableArray * tMutableArray=[NSMutableArray array];\n\t\n\t[self enumerateObjectsUsingBlock:^(id bOject,NSUInteger bIndex,BOOL * bOutStop){\n\t\n\t\tid tObject=inBlock(bOject,bIndex);\n\t\t\n\t\tif (tObject==nil)\n\t\t{\n\t\t\t*bOutStop=YES;\n\t\t\ttMutableArray=nil;\n\t\t}\n\t\telse\n\t\t{\n\t\t\t[tMutableArray addObject:tObject];\n\t\t}\n\t\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableArray.class]==YES)\n\t\treturn tMutableArray;\n\t\t\n\treturn [tMutableArray copy];\n}\n\n- (instancetype)WB_arrayByMappingObjectsLenientlyUsingBlock:(id (^)(id bObject, NSUInteger bIndex))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\tNSMutableArray * tMutableArray=[NSMutableArray array];\n\t\n\t[self enumerateObjectsUsingBlock:^(id bOject,NSUInteger bIndex,__attribute__((unused))BOOL * bOutStop){\n\t\t\n\t\tid tObject=inBlock(bOject,bIndex);\n\t\t\n\t\tif (tObject!=nil)\n\t\t\t[tMutableArray addObject:tObject];\n\t\t\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableArray.class]==YES)\n\t\treturn tMutableArray;\n\t\n\treturn [tMutableArray copy];\n}\n\n- (instancetype)WB_filteredArrayUsingBlock:(BOOL (^)(id bObject, NSUInteger bIndex))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\t__block NSMutableArray * tMutableArray=[NSMutableArray array];\n\t\n\t[self enumerateObjectsUsingBlock:^(id bOject,NSUInteger bIndex,__attribute__((unused))BOOL * bOutStop){\n\t\t\n\t\tif (inBlock(bOject,bIndex)==YES)\n\t\t\t[tMutableArray addObject:bOject];\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableArray.class]==YES)\n\t\treturn tMutableArray;\n\t\n\treturn [tMutableArray copy];\n}\n\n@end\n\n@implementation NSMutableArray (WBExtensions)\n\n- (void)WB_mergeWithArray:(NSArray *)inArray\n{\n\tif (inArray==nil)\n\t\treturn;\n\t\n\t[inArray enumerateObjectsUsingBlock:^(id bObject,__attribute__((unused))NSUInteger bIndex,__attribute__((unused))BOOL * bOutStop){\n\t\n\t\tif ([self containsObject:bObject]==NO)\n\t\t\t[self addObject:bObject];\n\t\t\n\t}];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSDictionary+MutableDeepCopy.h",
    "content": "/*\n Copyright (c) 2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSDictionary (WBMutableDeepCopy)\n\n- (id)mutableDeepCopy;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSDictionary+MutableDeepCopy.m",
    "content": "/*\n Copyright (c) 2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSDictionary+MutableDeepCopy.h\"\n\n@implementation NSDictionary (WBMutableDeepCopy)\n\n- (id)mutableDeepCopy\n{\n\tNSError * tError=nil;\n\t\n\tNSData * tData=[NSPropertyListSerialization dataWithPropertyList:self format:NSPropertyListXMLFormat_v1_0 options:0 error:&tError];\n\t\n\tif (tData==nil)\n\t{\n\t\tif (tError!=nil)\n\t\t\tNSLog(@\"[NSDictionary mutableDeepCopy] : %@\",tError.localizedDescription);\n\t\t\n\t\treturn nil;\n\t}\n\t\n\tNSPropertyListFormat tFormat;\n\tNSMutableDictionary * tMutableDictionary=(NSMutableDictionary *) [NSPropertyListSerialization propertyListWithData:tData options:NSPropertyListMutableContainersAndLeaves format:&tFormat error:&tError];\n\t\n\tif (tMutableDictionary==nil)\n\t{\n\t\tif (tError!=nil)\n\t\t\tNSLog(@\"[NSDictionary mutableDeepCopy] : %@\",tError.localizedDescription);\n\t}\n\t\n\treturn tMutableDictionary;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSDictionary+WBExtensions.h",
    "content": "\n#import <Foundation/Foundation.h>\n\n@interface NSDictionary (WBExtensions)\n\n- (instancetype)WB_dictionaryByMappingKeysUsingBlock:(id (^)(id bKey,id bObject))inBlock;\n\n- (instancetype)WB_dictionaryByMappingObjectsUsingBlock:(id (^)(id bKey,id bObject))inBlock;\n\n- (instancetype)WB_dictionaryByMappingObjectsLenientlyUsingBlock:(id (^)(id bKey,id bObject))inBlock;\n\n- (instancetype)WB_filteredDictionaryUsingBlock:(BOOL (^)(id bKey,id bObject))inBlock;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSDictionary+WBExtensions.m",
    "content": "\n#import \"NSDictionary+WBExtensions.h\"\n\n@implementation NSDictionary (WBExtensions)\n\n- (instancetype)WB_dictionaryByMappingKeysUsingBlock:(id (^)(id bKey,id bObject))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\t__block NSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n\t\n\t[self enumerateKeysAndObjectsUsingBlock:^(id bKey, id bObject, BOOL *bOutStop) {\n\t\tid tKey=inBlock(bKey,bObject);\n\t\t\n\t\tif (tKey==nil)\n\t\t{\n\t\t\t*bOutStop=YES;\n\t\t\ttMutableDictionary=nil;\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttMutableDictionary[tKey]=bObject;\n\t\t}\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableDictionary.class]==YES)\n\t\treturn tMutableDictionary;\n\t\n\treturn [tMutableDictionary copy];\n}\n\n- (instancetype)WB_dictionaryByMappingObjectsUsingBlock:(id (^)(id bKey,id bObject))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\t__block NSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n\t\n\t[self enumerateKeysAndObjectsUsingBlock:^(id bKey, id bObject, BOOL *bOutStop) {\n\t\tid tObject=inBlock(bKey,bObject);\n\t\t\n\t\tif (tObject==nil)\n\t\t{\n\t\t\t*bOutStop=YES;\n\t\t\ttMutableDictionary=nil;\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttMutableDictionary[bKey]=tObject;\n\t\t}\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableDictionary.class]==YES)\n\t\treturn tMutableDictionary;\n\t\n\treturn [tMutableDictionary copy];\n}\n\n- (instancetype)WB_dictionaryByMappingObjectsLenientlyUsingBlock:(id (^)(id bKey,id bObject))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\tNSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n\t\n\t[self enumerateKeysAndObjectsUsingBlock:^(id bKey, id bObject,__attribute__((unused))BOOL *bOutStop) {\n\t\tid tObject=inBlock(bKey,bObject);\n\t\t\n\t\tif (tObject!=nil)\n\t\t\ttMutableDictionary[bKey]=tObject;\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableDictionary.class]==YES)\n\t\treturn tMutableDictionary;\n\t\n\treturn [tMutableDictionary copy];\n}\n\n- (instancetype)WB_filteredDictionaryUsingBlock:(BOOL (^)(id bKey,id bObject))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\tNSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n\t\n\t[self enumerateKeysAndObjectsUsingBlock:^(id bKey, id bObject,__attribute__((unused))BOOL *bOutStop) {\n\t\tBOOL tDoNotFilter=inBlock(bKey,bObject);\n\t\t\n\t\tif (tDoNotFilter==YES)\n\t\t\ttMutableDictionary[bKey]=bObject;\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableDictionary.class]==YES)\n\t\treturn tMutableDictionary;\n\t\n\treturn [tMutableDictionary copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSIndexSet+Analysis.h",
    "content": "#import <Foundation/Foundation.h>\n\n@interface NSIndexSet (Analysis)\n\n- (BOOL)WB_containsOnlyOneRange;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSIndexSet+Analysis.m",
    "content": "#import \"NSIndexSet+Analysis.h\"\n\n@implementation NSIndexSet (Analysis)\n\n- (BOOL)WB_containsOnlyOneRange\n{\n    NSUInteger tCount=self.count;\n    \n    if (tCount>0)\n    {\n        NSUInteger tFirstIndex=self.firstIndex;\n        NSUInteger tLastIndex=self.lastIndex;\n        \n        return ((tLastIndex-tFirstIndex+1)==tCount);\n    }\n    \n    return NO;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSSet+WBExtensions.h",
    "content": "/*\n Copyright (c) 2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSSet (WBExtensions)\n\n- (instancetype)WB_setByMappingObjectsUsingBlock:(id (^)(id bObject))inBlock;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSSet+WBExtensions.m",
    "content": "/*\n Copyright (c) 2017, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSSet+WBExtensions.h\"\n\n@implementation NSSet (WBExtensions)\n\n- (instancetype)WB_setByMappingObjectsUsingBlock:(id (^)(id bObject))inBlock\n{\n\tif (inBlock==nil)\n\t\treturn self;\n\t\n\t__block NSMutableSet * tMutableSet=[NSMutableSet set];\n\t\n\t[self enumerateObjectsUsingBlock:^(id bObject,BOOL * bOutStop){\n\t\t\n\t\tid tObject=inBlock(bObject);\n\t\t\n\t\tif (tObject==nil)\n\t\t{\n\t\t\t*bOutStop=YES;\n\t\t\ttMutableSet=nil;\n\t\t}\n\t\telse\n\t\t{\n\t\t\t[tMutableSet addObject:tObject];\n\t\t}\n\t\t\n\t}];\n\t\n\tif ([self isKindOfClass:NSMutableSet.class]==YES)\n\t\treturn tMutableSet;\n\t\n\treturn [tMutableSet copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSString+CPU.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSString (CPU)\n\n- (cpu_type_t)CUI_CPUType;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/Foundation + Extensions/NSString+CPU.m",
    "content": "/*\n Copyright (c) 2021-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSString+CPU.h\"\n\n@implementation NSString (CPU)\n\n- (cpu_type_t)CUI_CPUType\n{\n    static NSDictionary * sCPUFamiliesRegistry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sCPUFamiliesRegistry=@{\n                               @\"X86-64\":@(CPU_TYPE_X86_64),\n                               @\"x86_64\":@(CPU_TYPE_X86_64),\n                               @\"ARM-64\":@(CPU_TYPE_ARM64),\n                               @\"arm64\":@(CPU_TYPE_ARM64),\n                               };\n        \n    });\n    \n    NSNumber * tCPUFamily=sCPUFamiliesRegistry[self];\n    \n    return (tCPUFamily!=nil) ? [tCPUFamily intValue] : CPU_TYPE_X86;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/RSCore/LICENSE.txt",
    "content": "MIT License\n\nCopyright (c) 2002-2025 Brent Simmons\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\nSOFTWARE.\n"
  },
  {
    "path": "app_unexpectedly/RSCore/NSMenuItem+RSCore.h",
    "content": "//\n//  NSMenuItem+RSCore.h\n//  RSCore\n//\n//  Created by Brent Simmons on 1/5/26.\n//\n\n#if TARGET_OS_MAC && !TARGET_OS_IPHONE\n\n@import AppKit;\n\n@interface NSMenuItem (RSCore)\n\n/// When YES, the menu item’s image will be shown (if it exists) despite icon disabling.\n/// Defaults to NO.\n@property (nonatomic, assign) BOOL rs_shouldShowImage;\n\n/// Disables icons in all menu items (except where `rs_shouldShowImage == YES`)\n/// and those that are likely toolbar item representations.\n///\n/// Call +[NSMenuItem rs_disableIcons] early (from AppDelegate init is good).\n+ (void)rs_disableIcons;\n\n@end\n\n#endif\n"
  },
  {
    "path": "app_unexpectedly/RSCore/NSMenuItem+RSCore.m",
    "content": "//\n//  NSMenuItem+RSCore.m\n//  RSCore\n//\n//  Created by Brent Simmons on 1/7/26.\n//\n\n#if TARGET_OS_MAC && !TARGET_OS_IPHONE\n\n#import \"NSMenuItem+RSCore.h\"\n#import <objc/runtime.h>\n\nstatic void *kShouldShowImageKey = &kShouldShowImageKey;\n\n@implementation NSMenuItem (RSCore)\n\n+ (void)rs_disableIcons {\n\n\tMethod originalMethod = class_getInstanceMethod(self, @selector(image));\n\tMethod swizzledMethod = class_getInstanceMethod(self, @selector(rs_swizzledImage));\n\n\tif (originalMethod && swizzledMethod) {\n\t\tmethod_exchangeImplementations(originalMethod, swizzledMethod);\n\t}\n}\n\n- (NSImage *)rs_swizzledImage {\n\n\tif (self.rs_shouldShowImage || [self rs_isToolbarItemRepresentation] || ![self rs_isMainMenuItem] || self.title.length < 1) {\n\t\t// Call the original getter (now swapped to rs_swizzledImage)\n\t\treturn [self rs_swizzledImage];\n\t}\n\treturn nil;\n}\n\n- (BOOL)rs_isToolbarItemRepresentation {\n\n\t// Menu items not attached to any menu are likely toolbar button representations\n\treturn self.menu == nil;\n}\n\n- (BOOL)rs_isMainMenuItem {\n\n\t// Return true if the parent menu is the main menu.\n\t// This allows images to show for (for instance) the traffic light menus\n\t// and for menu items in submenus such as Move & Resize and Full Screen Tile.\n\treturn self.menu.supermenu == NSApplication.sharedApplication.mainMenu;\n}\n\n- (BOOL)rs_shouldShowImage {\n\n\tNSNumber *value = objc_getAssociatedObject(self, kShouldShowImageKey);\n\treturn value.boolValue;\n}\n\n- (void)setRs_shouldShowImage:(BOOL)shouldShowImage {\n\n\tobjc_setAssociatedObject(self, kShouldShowImageKey, @(shouldShowImage), OBJC_ASSOCIATION_RETAIN_NONATOMIC);\n}\n\n@end\n\n#endif\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/AppDelegate.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface AppDelegate : NSObject \n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/AppDelegate.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"AppDelegate.h\"\n\n#import \"CUIBinaryImage.h\"\n\n#import \"CUIMainWindowController.h\"\n\n#import \"CUICrashLogsSourcesManager.h\"\n\n#import \"CUICrashLogsSourceAll.h\"\n\n#import \"CUICrashLogsSourceFile.h\"\n\n#import \"CUICrashLogsSourcesSelection.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n#import \"CUICallStackBacktrace.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUIThemesManager.h\"\n\n#import \"CUIPreferencesWindowController.h\"\n#import \"CUIPreferencesWindowController+Convenience.h\"\n\n#import \"CUIRegistersWindowController.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUIAboutBoxWindowController.h\"\n\n#import \"CUICrashReporterDefaults.h\"\n\n#import \"CUICrashLogsOpenErrorRecord.h\"\n\n#import \"CUICrashLogsOpenErrorPanel.h\"\n\n#import \"WBRemoteVersionChecker.h\"\n\n#import \"NSMenuItem+RSCore.h\"\n\n\nNSString * const CUIApplicationShowDebugMenuKey=@\"ui.menu.debug.show\";\n\nNSString * const CUIApplicationShowDebugDidChangeNotification=@\"CUIApplicationShowDebugDidChangeNotification\";\n\n@interface AppDelegate () <NSApplicationDelegate,NSMenuItemValidation>\n{\n    IBOutlet NSMenu * _themesMenu;\n    \n    IBOutlet NSMenuItem * _debugMenuBarItem;\n    \n\tCUIMainWindowController * _mainWindowController;\n}\n\n- (IBAction)showAboutBox:(id)sender;\n\n- (IBAction)showPreferences:(id)sender;\n\n- (IBAction)editThemes:(id)sender;\n\n// Help Menu\n\n- (IBAction)showUserGuide:(id)sender;\n\n- (IBAction)sendFeedback:(id)sender;\n\n- (IBAction)showUnexpectedlyWebSite:(id)sender;\n\n// Notifications\n\n- (void)themesListDidChange:(NSNotification *)inNotification;\n\n- (void)showDebugMenuDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation AppDelegate\n\n+ (void)initialize\n{\n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                              CUIApplicationShowDebugMenuKey:@(NO),\n                                                              @\"NSScrollViewShouldFlipRulerForRTL\":@(NO)\n                                                              }];\n\t\n\t[NSMenuItem rs_disableIcons];\n}\n\n- (void)awakeFromNib\n{\n    [self refreshThemesMenu];\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    if ([tUserDefaults boolForKey:CUIApplicationShowDebugMenuKey]==YES)\n        _debugMenuBarItem.hidden=NO;\n    \n    // Register for notifications\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(themesListDidChange:) name:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(showDebugMenuDidChange:) name:CUIApplicationShowDebugDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)refreshThemesMenu\n{\n    // Cleanup menu\n    \n    NSUInteger tMenuItemsCount=_themesMenu.numberOfItems;\n    \n    if (tMenuItemsCount>2)\n    {\n        for(NSUInteger tIndex=tMenuItemsCount-2;tIndex>0;tIndex--)\n        {\n            [_themesMenu removeItemAtIndex:tIndex-1];\n        }\n    }\n    \n    // Populate menu\n    \n    CUIThemesManager * tThemesManager=[CUIThemesManager sharedManager];\n    \n    NSArray * tThemes=[tThemesManager allThemes];\n    \n\tSEL selector=NSSelectorFromString(@\"CUI_MENUACTION_switchTheme:\");\n\t\n    [tThemes enumerateObjectsWithOptions:NSEnumerationReverse  usingBlock:^(CUITheme * bTheme, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        NSMenuItem * tMenuItem=[[NSMenuItem alloc] initWithTitle:bTheme.name action:selector keyEquivalent:@\"\"];\n        \n        tMenuItem.representedObject=bTheme.UUID;\n        \n        [self->_themesMenu insertItem:tMenuItem atIndex:0];\n        \n    }];\n}\n\n\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(switchCrashReporterDialogType:))\n    {\n        CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n        \n        inMenuItem.state=(tDefaults.dialogType==inMenuItem.tag) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        return YES;\n    }\n    \n    if (tAction==@selector(switchCrashReporterNotificationMode:))\n    {\n        CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n        \n        inMenuItem.state=(tDefaults.notificationMode==inMenuItem.tag) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        return YES;\n    }\n    \n    if (tAction==@selector(switchReportUncaughtException:))\n    {\n        CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n        \n        inMenuItem.state=(tDefaults.reportUncaughtExceptions==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    }\n    \n    return YES;\n}\n\n// Application Menu\n\n- (IBAction)showAboutBox:(id)sender\n{\n    [CUIAboutBoxWindowController showAbouxBox];\n}\n\n- (IBAction)showPreferences:(id)sender\n{\n    CUIPreferencesWindowController * tPreferencesWindowController=[CUIPreferencesWindowController sharedPreferencesWindowController];\n    \n    [tPreferencesWindowController showWindow:nil];\n}\n\n- (IBAction)editThemes:(id)sender\n{\n    CUIPreferencesWindowController * tPreferencesWindowController=[CUIPreferencesWindowController sharedPreferencesWindowController];\n    \n    [tPreferencesWindowController showFontsAndColorsPrefPane];\n}\n\n// Windows Menu\n\n// Help Menu\n\n- (IBAction)showUserGuide:(id)sender\n{\n    NSURL * tURL=[NSURL URLWithString:NSLocalizedString(@\"http://s.sudre.free.fr/Software/documentation/Unexpectedly/index.html\",@\"No comment\")];\n    \n    if (tURL!=nil)\n        [[NSWorkspace sharedWorkspace] openURL:tURL];\n}\n\n- (IBAction)sendFeedback:(id)sender\n{\n    NSDictionary * tDictionary=[NSBundle mainBundle].infoDictionary;\n    \n    NSString * tString=[NSString stringWithFormat:NSLocalizedString(@\"mailto:dev.unexpectedly@gmail.com?subject=[Unexpectedly%%20%@]%%20Feedback%%20(build%%20%@)\",@\"No comment\"),tDictionary[@\"CFBundleShortVersionString\"],\n                        tDictionary[@\"CFBundleVersion\"]];\n    NSURL * tURL=[NSURL URLWithString:tString];\n    \n    if (tURL!=nil)\n        [[NSWorkspace sharedWorkspace] openURL:tURL];\n}\n\n- (IBAction)showUnexpectedlyWebSite:(id)sender\n{\n    NSURL * tURL=[NSURL URLWithString:NSLocalizedString(@\"http://s.sudre.free.fr/Software/Unexpectedly/about.html\",@\"No comment\")];\n    \n    if (tURL!=nil)\n        [[NSWorkspace sharedWorkspace] openURL:tURL];\n}\n\n// Debug Menu\n\n- (IBAction)switchCrashReporterDialogType:(NSMenuItem *)sender\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    tDefaults.dialogType=sender.tag;\n}\n\n- (IBAction)switchCrashReporterNotificationMode:(NSMenuItem *)sender\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    tDefaults.notificationMode=sender.tag;\n}\n\n- (IBAction)switchReportUncaughtException:(NSMenuItem *)sender\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    tDefaults.reportUncaughtExceptions=!(tDefaults.reportUncaughtExceptions);\n}\n\n#pragma mark - NSApplicationDelegate\n\n- (void)application:(NSApplication *)sender openFiles:(NSArray<NSString *> *)inFilePaths\n{\n    NSMutableArray<CUICrashLogsOpenErrorRecord *> * tOpenErrorsArray=[NSMutableArray array];\n    \n    for(NSString * tFilePath in inFilePaths)\n    {\n        BOOL tIsDirectory=NO;\n        \n        if ([[NSFileManager defaultManager] fileExistsAtPath:tFilePath isDirectory:&tIsDirectory]==NO)\n        {\n            continue;\n        }\n        \n        if (tIsDirectory==NO)\n        {\n            CUICrashLogsSourcesManager * tSourcesManager=[CUICrashLogsSourcesManager sharedManager];\n            CUICrashLogsSourcesSelection * tSharedSourcesSelection=[CUICrashLogsSourcesSelection sharedSourcesSelection];\n            \n            CUICrashLogsSourceAll * tSourcesAll=[CUICrashLogsSourceAll crashLogsSourceAll];\n            \n            if ([tSourcesAll containsCrashLogForFileAtPath:tFilePath]==YES)\n            {\n                NSArray * tCrashLogSources=[tSourcesManager sourcesOfTypes:[NSSet setWithObjects:@(CUICrashLogsSourceTypeStandardDirectory),@(CUICrashLogsSourceTypeDirectory),@(CUICrashLogsSourceTypeFile),nil]];\n                \n                for(CUICrashLogsSource * tSource in tCrashLogSources)\n                {\n                    CUIRawCrashLog * tCrashLog=[tSource crashLogForFileAtPath:tFilePath];\n                    \n                    if (tCrashLog!=nil)\n                    {\n                        tSharedSourcesSelection.sources=[NSSet setWithObject:tSource];\n                        \n                        [[CUICrashLogsSelection sharedSelection] setSource:tSource crashLogs:@[tCrashLog]];\n                        \n                        break;\n                    }\n                }\n               \n                continue;\n            }\n            \n            NSError * tError;\n            \n            CUICrashLogsSourceFile * tSource=[[CUICrashLogsSourceFile alloc] initWithContentsOfFileSystemItemAtPath:tFilePath error:&tError];\n            \n            if (tSource==nil)\n            {\n                if (tError!=nil)\n                {\n                    if ([tError.domain isEqualToString:IPSErrorDomain]==YES)\n                    {\n                        switch(tError.code)\n                        {\n                            case IPSUnsupportedBugTypeError:\n                                \n                                // Open file in Console.app\n                                \n                                if ([[NSWorkspace sharedWorkspace] openFile:tFilePath withApplication:@\"/Applications/Utilities/Console.app\"]==YES)\n                                {\n                                    return;\n                                }\n                                \n                                break;\n                        }\n                    }\n                }\n                \n                CUICrashLogsOpenErrorRecord * tRecord=[CUICrashLogsOpenErrorRecord new];\n                tRecord.sourceURL=[NSURL fileURLWithPath:tFilePath];\n                tRecord.openError=tError;\n                \n                [tOpenErrorsArray addObject:tRecord];\n                \n                continue;\n            }\n            \n            [tSourcesManager addSources:@[tSource]];\n            \n            tSharedSourcesSelection.sources=[NSSet setWithObject:tSource];\n            \n            [[CUICrashLogsSelection sharedSelection] setSource:tSource crashLogs:tSource.crashLogs];\n        }\n        else\n        {\n            CUIdSYMBundle * tBundle=[[CUIdSYMBundle alloc] initWithPath:tFilePath];\n        \n            if (tBundle.isDSYMBundle==NO)\n                continue;\n            \n            [[CUIdSYMBundlesManager sharedManager] addBundle:tBundle];\n        }\n    }\n    \n    if (tOpenErrorsArray.count>0)\n    {\n        CUICrashLogsOpenErrorPanel * tErrorPanel=[CUICrashLogsOpenErrorPanel crashLogsOpenErrorPanel];\n        \n        tErrorPanel.errors=tOpenErrorsArray;\n        \n        [tErrorPanel runModal];\n    }\n    \n    [NSApp replyToOpenOrPrint:NSApplicationDelegateReplySuccess];\n}\n\n- (BOOL)application:(NSApplication *)sender openFile:(NSString *)inFilePath\n{\n    BOOL tIsDirectory=NO;\n    \n    if ([[NSFileManager defaultManager] fileExistsAtPath:inFilePath isDirectory:&tIsDirectory]==NO)\n    {\n        return NO;\n    }\n    \n    if (tIsDirectory==NO)\n    {\n        CUICrashLogsSourcesManager * tSourcesManager=[CUICrashLogsSourcesManager sharedManager];\n        CUICrashLogsSourcesSelection * tSharedSourcesSelection=[CUICrashLogsSourcesSelection sharedSourcesSelection];\n        \n        CUICrashLogsSourceAll * tSourcesAll=[CUICrashLogsSourceAll crashLogsSourceAll];\n        \n        if ([tSourcesAll containsCrashLogForFileAtPath:inFilePath]==YES)\n        {\n            NSArray * tCrashLogSources=[tSourcesManager sourcesOfTypes:[NSSet setWithObjects:@(CUICrashLogsSourceTypeStandardDirectory),@(CUICrashLogsSourceTypeDirectory),@(CUICrashLogsSourceTypeFile),nil]];\n            \n            for(CUICrashLogsSource * tSource in tCrashLogSources)\n            {\n                CUIRawCrashLog * tCrashLog=[tSource crashLogForFileAtPath:inFilePath];\n                \n                if (tCrashLog!=nil)\n                {\n                    tSharedSourcesSelection.sources=[NSSet setWithObject:tSource];\n                    \n                    [[CUICrashLogsSelection sharedSelection] setSource:tSource crashLogs:@[tCrashLog]];\n                    \n                    break;\n                }\n            }\n            return YES;\n        }\n        \n        NSError * tError;\n        \n        CUICrashLogsSourceFile * tSource=[[CUICrashLogsSourceFile alloc] initWithContentsOfFileSystemItemAtPath:inFilePath error:&tError];\n        \n        if (tSource==nil)\n        {\n            NSLog(@\"Unable to create Source from file at \\\"%@\\\"\",inFilePath);\n            \n            return NO;\n        }\n        \n        [tSourcesManager addSources:@[tSource]];\n        \n        tSharedSourcesSelection.sources=[NSSet setWithObject:tSource];\n        \n        [[CUICrashLogsSelection sharedSelection] setSource:tSource crashLogs:tSource.crashLogs];\n    }\n    else\n    {\n        CUIdSYMBundle * tBundle=[[CUIdSYMBundle alloc] initWithPath:inFilePath];\n        \n        if (tBundle.isDSYMBundle==NO)\n            return NO;\n        \n        [[CUIdSYMBundlesManager sharedManager] addBundle:tBundle];\n    }\n    \n    return YES;\n}\n\n- (void)applicationDidFinishLaunching:(NSNotification *)aNotification\n{\n    [WBRemoteVersionChecker sharedChecker];\n    \n    _mainWindowController=[CUIMainWindowController new];\n    \n    //NSLog(@\"%@\",_mainWindowController.window.frameAutosaveName);\n\t\n\t[_mainWindowController showWindow:self];\n}\n\n- (void)applicationWillTerminate:(NSNotification *)aNotification\n{\n\t// Insert code here to tear down your application\n}\n\n#pragma mark - Notifications\n\n- (void)themesListDidChange:(NSNotification *)inNotification\n{\n    [self refreshThemesMenu];\n}\n\n- (void)showDebugMenuDidChange:(NSNotification *)inNotification\n{\n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    _debugMenuBarItem.hidden=([tUserDefaults boolForKey:CUIApplicationShowDebugMenuKey]==NO);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAATextFieldCell.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIAATextFieldCell : NSTextFieldCell\n\n    @property BOOL selected;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAATextFieldCell.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIAATextFieldCell.h\"\n\nvoid CGContextSetFontSmoothingBackgroundColor(CGContextRef,CGColorRef);\n\n@implementation CUIAATextFieldCell\n\n- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView\n{\n    CGContextRef tContextRef=[NSGraphicsContext currentContext].CGContext;\n    \n    CGContextSetFontSmoothingBackgroundColor(tContextRef,self.backgroundColor.CGColor);\n    \n    CGContextSetShouldSmoothFonts(tContextRef,TRUE);\n    CGContextSetAllowsFontSmoothing(tContextRef,TRUE);\n    \n    CGContextSetShouldSubpixelQuantizeFonts(tContextRef,TRUE);\n    CGContextSetAllowsFontSubpixelQuantization(tContextRef,TRUE);\n    \n    [super drawInteriorWithFrame:cellFrame inView:controlView];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAboutBoxFooterView.h",
    "content": "/*\nCopyright (c) 2007-2016, Stephane Sudre\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n- Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIAboutBoxFooterView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAboutBoxFooterView.m",
    "content": "/*\nCopyright (c) 2007-2018, Stephane Sudre\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n- Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n\n#import \"CUIAboutBoxFooterView.h\"\n\n@implementation CUIAboutBoxFooterView\n\n- (void)drawRect:(NSRect)inRect\n{\n    NSRect tRefreshRect=NSIntersectionRect(self.bounds, inRect);\n    \n\t// Draw background\n\t\n    BOOL tIsDarkMode=[self WB_isEffectiveAppearanceDarkAqua];\n    \n\tif (tIsDarkMode==NO)\n\t\t[[NSColor colorWithDeviceWhite:0.898 alpha:1.0] set];\n\telse\n\t\t[[NSColor colorWithDeviceWhite:0.0 alpha:0.18] set];\n\t\n\tNSRectFillUsingOperation(tRefreshRect,NSCompositingOperationSourceOver);\n\t\n\t// Draw top line\n\t\n\tif (tIsDarkMode==NO)\n\t\t[[NSColor colorWithDeviceWhite:0.698 alpha:1.0] set];\n\telse\n\t\t[[NSColor colorWithDeviceWhite:0.42 alpha:0.35] set];\n\t\n\tNSRect tLineRect;\n\t\n\tif (tIsDarkMode==NO)\n\t\ttLineRect=NSMakeRect(NSMinX(tRefreshRect),NSMaxY(tRefreshRect)-1.0,NSWidth(tRefreshRect),1.0);\n\telse\n\t\ttLineRect=NSMakeRect(NSMinX(tRefreshRect)+1.0,NSMaxY(tRefreshRect)-1.0,NSWidth(tRefreshRect)-3.0,1.0);\n\t\t\n\tNSRectFillUsingOperation(tLineRect,NSCompositingOperationSourceOver);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAboutBoxWindow.h",
    "content": "//\n//  CUIAboutBoxWindow.h\n//  Unexpectedly\n//\n//  Created by stephane on 09/04/2021.\n//  Copyright © 2021 Acme, Inc. All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUIOptionKeyStateDidChangeNotification;\n\nextern NSString * const CUIOptionKeyState;\n\n@interface CUIAboutBoxWindow : NSWindow\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAboutBoxWindow.m",
    "content": "//\n//  CUIAboutBoxWindow.m\n//  Unexpectedly\n//\n//  Created by stephane on 09/04/2021.\n//  Copyright © 2021 Acme, Inc. All rights reserved.\n//\n\n#import \"CUIAboutBoxWindow.h\"\n\nNSString * const CUIOptionKeyStateDidChangeNotification=@\"CUIOptionKeyStateDidChangeNotification\";\n\nNSString * const CUIOptionKeyState=@\"CUIOptionKeyState\";\n\n@interface CUIAboutBoxWindow ()\n{\n    BOOL _optionKeyDown;\n}\n\n@end\n\n@implementation CUIAboutBoxWindow\n\n- (void)becomeKeyWindow\n{\n    NSEvent * tEvent=[NSApp currentEvent];\n    \n    if (tEvent!=nil)\n    {\n        NSUInteger tModifierFlags=tEvent.modifierFlags;\n        \n        BOOL isDown=((tModifierFlags & NSEventModifierFlagOption) == NSEventModifierFlagOption);\n        \n        if (isDown!=_optionKeyDown)\n        {\n            _optionKeyDown=isDown;\n            \n            [NSNotificationCenter.defaultCenter postNotificationName:CUIOptionKeyStateDidChangeNotification\n                                                              object:self\n                                                            userInfo:@{CUIOptionKeyState:@(_optionKeyDown)}];\n        }\n    }\n    \n    [super becomeKeyWindow];\n}\n\n- (void)resignKeyWindow\n{\n    if (_optionKeyDown==YES)\n    {\n        _optionKeyDown=NO;\n        \n        // Post Notification\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIOptionKeyStateDidChangeNotification\n                                                          object:self\n                                                        userInfo:@{CUIOptionKeyState:@(_optionKeyDown)}];\n    }\n    \n    [super resignKeyWindow];\n}\n\n- (void)flagsChanged:(NSEvent *)inEvent\n{\n    if (inEvent==nil)\n        return;\n    \n    NSUInteger tModifierFlags=inEvent.modifierFlags;\n    \n    BOOL isDown=((tModifierFlags & NSEventModifierFlagOption) == NSEventModifierFlagOption);\n    \n    if (isDown!=_optionKeyDown)\n    {\n        _optionKeyDown=isDown;\n        \n        // Post Notification\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIOptionKeyStateDidChangeNotification\n                                                          object:self\n                                                        userInfo:@{CUIOptionKeyState:@(_optionKeyDown)}];\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAboutBoxWindowController.h",
    "content": "//\n//  CUIAboutBoxWindowController.h\n//  Unexpectedly\n//\n//  Created by stephane on 15/11/2020.\n//  Copyright © 2020 Stephane Sudre All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIAboutBoxWindowController : NSWindowController\n\n+ (void)showAbouxBox;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIAboutBoxWindowController.m",
    "content": "//\n//  CUIAboutBoxWindowController.m\n//  Unexpectedly\n//\n//  Created by stephane on 15/11/2020.\n//  Copyright © 2020 Stephane Sudre. All rights reserved.\n//\n\n#import \"CUIAboutBoxWindowController.h\"\n\n#import \"CUIAboutBoxWindow.h\"\n#import \"CUIApplicationIconView.h\"\n\n@interface CUIAboutBoxWindowController ()\n{\n    IBOutlet CUIApplicationIconView * _applicationIconView;\n\n    IBOutlet NSTextField * _versionLabel;\n}\n\n- (IBAction)showLicenseAgreement:(id)sender;\n\n- (IBAction)showAcknowledgments:(id)sender;\n\n// Notifications\n\n- (void)optionKeyStateDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIAboutBoxWindowController\n\n+ (void)showAbouxBox\n{\n    static dispatch_once_t onceToken;\n    static CUIAboutBoxWindowController * sAbouxBoxWindowController=nil;\n    \n    dispatch_once(&onceToken, ^{\n        \n        sAbouxBoxWindowController=[CUIAboutBoxWindowController new];\n    });\n    \n    [sAbouxBoxWindowController showWindow:nil];\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)windowNibName\n{\n    return @\"CUIAboutBoxWindowController\";\n}\n\n#pragma mark -\n\n- (void)windowDidLoad\n{\n    NSDictionary * tDictionary=[NSBundle mainBundle].infoDictionary;\n    \n    _versionLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"version %@ (%@)\",@\"\"),tDictionary[@\"CFBundleShortVersionString\"],tDictionary[@\"CFBundleVersion\"]];\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(optionKeyStateDidChange:) name:CUIOptionKeyStateDidChangeNotification object:self.window];\n    \n    [self.window center];\n}\n\n#pragma mark -\n\n- (IBAction)showLicenseAgreement:(id)sender\n{\n    NSString * tPath=[[NSBundle mainBundle] pathForResource:@\"Unexpectedly_License\" ofType:@\"pdf\"];\n    \n    if (tPath==nil)\n    {\n        NSLog(@\"[CUIAboutBoxWindowController showLicenseAgreement:] Missing License file\");\n        return;\n    }\n    \n    [[NSWorkspace sharedWorkspace] openURL:[NSURL fileURLWithPath:tPath]];\n}\n\n- (IBAction)showAcknowledgments:(id)sender\n{\n    NSString * tPath=[[NSBundle mainBundle] pathForResource:@\"Unexpectedly_Acknowledgements\" ofType:@\"pdf\"];\n    \n    if (tPath==nil)\n    {\n        NSLog(@\"[CUIAboutBoxWindowController showAcknowledgments:] Missing Acknowledgements file\");\n        return;\n    }\n    \n    [[NSWorkspace sharedWorkspace] openURL:[NSURL fileURLWithPath:tPath]];\n}\n\n#pragma mark - Notifications\n\n- (void)optionKeyStateDidChange:(NSNotification *)inNotification\n{\n    BOOL tPressed=[inNotification.userInfo[CUIOptionKeyState] boolValue];\n    \n    _applicationIconView.renderingMode=(tPressed==YES) ? CUIWatchRenderingModeWireframe : CUIWatchRenderingModeFull; \n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationItemAttributes.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIApplicationItemAttributes : NSObject\n\n    @property (readonly) NSURL * applicationURL;\n\n    @property NSString * displayName;\n\n    @property NSString * bundleIdentifier;\n\n    @property NSImage * icon;\n\n    @property NSString * version;\n\n    @property (nonatomic,readonly) NSMenuItem * applicationMenuItem;\n\n    @property BOOL showsVersion;\n\n    @property BOOL duplicate;\n\n- (instancetype)initWithURL:(NSURL *)inApplicationURL;\n\n- (NSComparisonResult)compare:(CUIApplicationItemAttributes *)inOther;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationItemAttributes.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import \"CUIApplicationItemAttributes.h\"\n\n@implementation CUIApplicationItemAttributes\n\n- (instancetype)initWithURL:(NSURL *)inApplicationURL\n{\n    if (inApplicationURL.isFileURL==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _applicationURL=inApplicationURL;\n        \n        _icon=[[NSWorkspace sharedWorkspace] iconForFile:inApplicationURL.path];\n        \n        if (_icon!=nil)\n            _icon.size=NSMakeSize(16.0f,16.0f);\n        \n        _displayName=[[NSFileManager defaultManager] displayNameAtPath:inApplicationURL.path];\n        \n        // Get Version\n        \n        NSBundle * tBundle=[NSBundle bundleWithURL:inApplicationURL];\n        NSString * tVersion=@\"1.0\";\n        \n        if (tBundle!=nil)\n        {\n            _bundleIdentifier=tBundle.bundleIdentifier;\n            \n            NSDictionary * tInfoDictionary;\n            \n            tInfoDictionary=[tBundle infoDictionary];\n            \n            if (tInfoDictionary!=nil)\n            {\n                tVersion=[tInfoDictionary objectForKey:@\"CFBundleShortVersionString\"];\n                \n                if (tVersion==nil)\n                {\n                    tVersion=@\"1.0\";\n                }\n            }\n        }\n        \n        _version=tVersion;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSMenuItem *)applicationMenuItem\n{\n    NSString * tTitle=(self.showsVersion==YES) ? [NSString stringWithFormat:@\"%@ (%@)\",self.displayName,self.version] : self.displayName;\n    \n    NSMenuItem * tMenuItem=[[NSMenuItem alloc] initWithTitle:tTitle\n                                                      action:nil\n                                               keyEquivalent:@\"\"];\n    \n    tMenuItem.image=self.icon;\n    tMenuItem.representedObject=self;\n    \n    return tMenuItem;\n}\n\n#pragma mark -\n\n- (NSComparisonResult)compare:(CUIApplicationItemAttributes *)inOther\n{\n    NSComparisonResult tResult=NSOrderedSame;\n    \n    if ([self.bundleIdentifier isEqualToString:inOther.bundleIdentifier]==YES)\n    {\n        self.showsVersion=YES;\n        inOther.showsVersion=YES;\n    }\n    else\n    {\n        tResult=[self.displayName caseInsensitiveCompare:inOther.displayName];\n    }\n    \n    if (tResult!=NSOrderedSame)\n        return tResult;\n    \n    // Compare version\n    \n    tResult=[self.version caseInsensitiveCompare:inOther.version];\n    \n    if (tResult==NSOrderedSame)\n    {\n        if ([self.applicationURL.path hasPrefix:@\"/Volumes/\"]==YES)\n            self.duplicate=YES;\n        else\n            inOther.duplicate=YES;\n    }\n    \n    return -tResult;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationPreferences+Themes.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIApplicationPreferences.h\"\n\n@interface CUIApplicationPreferences (Themes)\n\n+ (NSString *)groupIdentifierForPresentationMode:(CUIPresentationMode)inPresentationMode;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationPreferences+Themes.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIApplicationPreferences+Themes.h\"\n\n@implementation CUIApplicationPreferences (Themes)\n\n+ (NSString *)groupIdentifierForPresentationMode:(CUIPresentationMode)inPresentationMode\n{\n    switch (inPresentationMode)\n    {\n        case CUIPresentationModeText:\n            \n            return @\"Text\";\n        \n        case CUIPresentationModeOutline:\n            \n            return @\"Outline\";\n        \n        default:\n            break;\n    }\n    \n    return nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationPreferences.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUITextModeDisplaySettings.h\"\n\n#import \"CUIOutlineModeDisplaySettings.h\"\n\ntypedef NS_ENUM(NSInteger, CUIPresentationMode)\n{\n    CUIPresentationModeUnknown=-1,\n    CUIPresentationModeText=0,\n    CUIPresentationModeOutline,\n};\n\ntypedef NS_ENUM(NSUInteger, CUICrashLogsSortType)\n{\n    CUICrashLogsSortDateDescending=0,\n    CUICrashLogsSortProcessNameAscending\n};\n\n@interface CUIApplicationPreferences : NSObject\n\n    // General\n\n    @property (nonatomic) CUIPresentationMode defaultPresentationMode;\n\n    @property (nonatomic) BOOL showsRegistersWindowAutomaticallyAtLaunch;\n\n    @property (nonatomic) NSURL * preferedSourceCodeEditorURL;\n\n    // Text Mode\n\n    @property (nonatomic) BOOL showsLineNumbers;\n\n    @property (nonatomic) BOOL lineWrapping;\n\n    @property (nonatomic) CUITextModeDisplaySettings * defaultTextModeDisplaySettings;\n\n    // Outline Mode\n\n    @property (nonatomic) CUIOutlineModeDisplaySettings * defaultOutlineModeDisplaySettings;\n\n    // Fonts and Colors\n\n\n    // Symbolication\n\n    @property (nonatomic) BOOL symbolicateAutomatically;\n\n    @property (nonatomic) BOOL searchForSymbolsFilesAutomatically;\n\n    // Crash Logs List\n\n    @property (nonatomic) CUICrashLogsSortType crashLogsSortType;\n\n    @property (nonatomic) BOOL crashLogsShowFileNames;\n\n\n+ (CUIApplicationPreferences *)sharedPreferences;\n\n+ (NSURL *)defaultSourceCodeEditorURL;\n\n@end\n\nextern NSString * const CUIPreferencesTextModeShowsLineNumbersDidChangeNotification;\n\nextern NSString * const CUIPreferencesTextModeLineWrappingDidChangeNotification;\n\nextern NSString * const CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification;\n\nextern NSString * const CUIPreferencesCrashLogsSortTypeDidChangeNotification;\n\nextern NSString * const CUIPreferencesCrashLogsShowFileNamesDidChangeNotification;\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationPreferences.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"NSDictionary+MutableDeepCopy.h\"\n\n#import \"NSColor+String.h\"\n\n// General\n\nNSString * const CUIPreferencesGeneralDefaultPresentationModeKey=@\"general.defaultPresentationMode\";\n\nNSString * const CUIPreferencesGeneralShowsRegistersWindowAtLaunchKey=@\"general.registers-window.showsAtLaunch\";\n\nNSString * const CUIPreferencesGeneralPreferedSourceCodeEditorPathKey=@\"general.preferedSourceCodeEditor.path\";\n\n// Text Mode\n\nNSString * const CUIPreferencesTextModeDefaultDisplaySettings=@\"textmode.displaySettings.defaults\";\n\nNSString * const CUIPreferencesTextModeShowsLineNumbersKey=@\"textmode.showsLineNumbers\";\n\nNSString * const CUIPreferencesTextModeLineWrappingKey=@\"textmode.lineWrapping\";\n\n\nextern NSString * const CUITextModeDisplaySettingsVisibleSectionKey;\n\nextern NSString * const CUITextModeDisplaySettingsVisibleStackFrameComponentsKey;\n\n\n// Outline Mode\n\nNSString * const CUIPreferencesOutlineModeDefaultDisplaySettings=@\"outlinemode.displaySettings.defaults\";\n\nextern NSString * const CUIOutlineModeDisplaySettingsShowOnlyCrashedThreadKey;\n\nextern NSString * const CUIOutlineModeDisplaySettingsVisibleStackFrameComponentsKey;\n\n// Fonts & Colors\n\n\n// Symbolication\n\nNSString * const CUIPreferencesSymbolicationSearchSymbolsFilesKey=@\"symbolication.searchForSymbolsFiles\";\n\nNSString * const CUIPreferencesSymbolicationSymbolicateAutomaticallyKey=@\"symbolication.symbolicateAutomatically\";\n\n\n// Crash Logs List\n\nNSString * const CUIPreferencesCrashLogsShowFileNamesKey=@\"showFileNames\";\n\nNSString * const CUIPreferencesCrashLogsSortTypeKey=@\"crashLogs.list.sort\";\n\n// Notifications\n\n\n\nNSString * const CUIPreferencesTextModeShowsLineNumbersDidChangeNotification=@\"CUIPreferencesTextModeShowsLineNumbersDidChangeNotification\";\n\nNSString * const CUIPreferencesTextModeLineWrappingDidChangeNotification=@\"CUIPreferencesTextModeLineWrappingDidChangeNotification\";\n\nNSString * const CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification=@\"CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification\";\n\n\nNSString * const CUIPreferencesCrashLogsSortTypeDidChangeNotification=@\"CUIPreferencesCrashLogsSortTypeDidChangeNotification\";\n\nNSString * const CUIPreferencesCrashLogsShowFileNamesDidChangeNotification=@\"CUIPreferencesCrashLogsShowFileNamesDidChangeNotification\";\n\n@interface CUIApplicationPreferences ()\n{\n    NSUserDefaults * _defaults;\n}\n\n@end\n\n@implementation CUIApplicationPreferences\n\n+ (CUIApplicationPreferences *)sharedPreferences\n{\n    static dispatch_once_t onceToken;\n    static CUIApplicationPreferences * sPreferences=nil;\n    \n    dispatch_once(&onceToken, ^{\n        \n        sPreferences=[CUIApplicationPreferences new];\n    });\n    \n    return sPreferences;\n}\n\n+ (NSURL *)defaultSourceCodeEditorURL\n{\n    return (__bridge_transfer NSURL *)LSCopyDefaultApplicationURLForContentType(CFSTR(\"public.c-source\"),kLSRolesEditor,NULL);\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _defaults=[NSUserDefaults standardUserDefaults];\n        \n        [_defaults registerDefaults:@{\n                                      // General\n                                      \n                                      CUIPreferencesGeneralDefaultPresentationModeKey:@(CUIPresentationModeText),\n                                      \n                                      CUIPreferencesGeneralShowsRegistersWindowAtLaunchKey:@(NO),\n                                      \n                                      CUIPreferencesSymbolicationSearchSymbolsFilesKey:@(YES),\n                                      \n                                      CUIPreferencesSymbolicationSymbolicateAutomaticallyKey:@(YES),\n                                      \n                                      // Text Mode\n                                      \n                                      CUIPreferencesTextModeShowsLineNumbersKey:@(NO),\n                                      \n                                      CUIPreferencesTextModeLineWrappingKey:@(YES),\n                                      \n                                      CUIPreferencesTextModeDefaultDisplaySettings:@{\n                                              CUITextModeDisplaySettingsVisibleSectionKey:@(CUIDocumentAllSections),\n                                              CUITextModeDisplaySettingsVisibleStackFrameComponentsKey:@(CUIStackFrameAllComponents)\n                                              },\n                                      \n                                      // Outline Mode\n                                      \n                                      CUIPreferencesOutlineModeDefaultDisplaySettings:@{\n                                              CUIOutlineModeDisplaySettingsShowOnlyCrashedThreadKey:@(NO),\n                                              CUIOutlineModeDisplaySettingsVisibleStackFrameComponentsKey:@(CUIStackFrameByteOffsetComponent)\n                                              },\n                                      \n                                      // Fonts & Colors\n                                      \n                                      // Crash Logs\n                                      \n                                      CUIPreferencesCrashLogsSortTypeKey:@(CUICrashLogsSortDateDescending),\n                                      CUIPreferencesCrashLogsSortTypeKey:@(NO)\n                                      \n                                      }];\n        \n        // General\n        \n        _defaultPresentationMode=[_defaults integerForKey:CUIPreferencesGeneralDefaultPresentationModeKey];\n        \n        \n        _showsRegistersWindowAutomaticallyAtLaunch=[_defaults boolForKey:CUIPreferencesGeneralShowsRegistersWindowAtLaunchKey];\n        \n        \n        _searchForSymbolsFilesAutomatically=[_defaults boolForKey:CUIPreferencesSymbolicationSearchSymbolsFilesKey];\n        \n        NSString * tPath=[_defaults stringForKey:CUIPreferencesGeneralPreferedSourceCodeEditorPathKey];\n        \n        if (tPath==nil || [[NSFileManager defaultManager] fileExistsAtPath:tPath]==NO)\n        {\n            _preferedSourceCodeEditorURL=[CUIApplicationPreferences defaultSourceCodeEditorURL];\n        }\n        else\n        {\n            _preferedSourceCodeEditorURL=[NSURL fileURLWithPath:tPath];\n        }\n        \n        _symbolicateAutomatically=[_defaults integerForKey:CUIPreferencesSymbolicationSymbolicateAutomaticallyKey];\n\n        // Text Mode\n        \n        _showsLineNumbers=[_defaults boolForKey:CUIPreferencesTextModeShowsLineNumbersKey];\n        \n        _lineWrapping=[_defaults boolForKey:CUIPreferencesTextModeLineWrappingKey];\n        \n        \n        \n        \n        _defaultTextModeDisplaySettings=[[CUITextModeDisplaySettings alloc] initWithRepresentation:[_defaults objectForKey:CUIPreferencesTextModeDefaultDisplaySettings]];\n        \n        // Outline Mode\n        \n        _defaultOutlineModeDisplaySettings=[[CUIOutlineModeDisplaySettings alloc] initWithRepresentation:[_defaults objectForKey:CUIPreferencesOutlineModeDefaultDisplaySettings]];\n        \n        // Fonts and Colors\n        \n        // Crash Logs\n        \n        _crashLogsSortType=[_defaults integerForKey:CUIPreferencesCrashLogsSortTypeKey];\n        \n        _crashLogsShowFileNames=[_defaults boolForKey:CUIPreferencesCrashLogsShowFileNamesKey];\n        \n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)setDefaultPresentationMode:(CUIPresentationMode)inMode\n{\n    _defaultPresentationMode=inMode;\n    \n    [_defaults setInteger:inMode forKey:CUIPreferencesGeneralDefaultPresentationModeKey];\n}\n\n- (void)setShowsRegistersWindowAutomaticallyAtLaunch:(BOOL)inShowsRegistersWindowAutomaticallyAtLaunch\n{\n    _showsRegistersWindowAutomaticallyAtLaunch=inShowsRegistersWindowAutomaticallyAtLaunch;\n    \n    [_defaults setBool:inShowsRegistersWindowAutomaticallyAtLaunch forKey:CUIPreferencesGeneralShowsRegistersWindowAtLaunchKey];\n}\n\n- (void)setSearchForSymbolsFilesAutomatically:(BOOL)inSearchForSymbolsFilesAutomatically\n{\n    _searchForSymbolsFilesAutomatically=inSearchForSymbolsFilesAutomatically;\n    \n    [_defaults setBool:inSearchForSymbolsFilesAutomatically forKey:CUIPreferencesSymbolicationSearchSymbolsFilesKey];\n}\n\n- (void)setSymbolicateAutomatically:(BOOL)inSymbolicateAutomatically\n{\n    _symbolicateAutomatically=inSymbolicateAutomatically;\n    \n    [_defaults setBool:inSymbolicateAutomatically forKey:CUIPreferencesSymbolicationSymbolicateAutomaticallyKey];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification object:nil];\n}\n\n- (void)setPreferedSourceCodeEditorURL:(NSURL *)inURL\n{\n    if (inURL.isFileURL==NO)\n        return;\n    \n    _preferedSourceCodeEditorURL=inURL;\n    \n    NSString * tPath=inURL.path;\n    \n    [_defaults setObject:tPath forKey:CUIPreferencesGeneralPreferedSourceCodeEditorPathKey];\n}\n\n- (void)setShowsLineNumbers:(BOOL)inShowsLineNumber\n{\n    _showsLineNumbers=inShowsLineNumber;\n    \n    [_defaults setBool:inShowsLineNumber forKey:CUIPreferencesTextModeShowsLineNumbersKey];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIPreferencesTextModeShowsLineNumbersDidChangeNotification object:nil];\n}\n\n- (void)setLineWrapping:(BOOL)inLineWrapping\n{\n    _lineWrapping=inLineWrapping;\n    \n    [_defaults setBool:inLineWrapping forKey:CUIPreferencesTextModeLineWrappingKey];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIPreferencesTextModeLineWrappingDidChangeNotification object:nil];\n}\n\n- (void)setDefaultTextModeDisplaySettings:(CUITextModeDisplaySettings *)inDisplaySettings\n{\n    _defaultTextModeDisplaySettings=[inDisplaySettings copy];\n    \n    [_defaults setObject:[_defaultTextModeDisplaySettings representation] forKey:CUIPreferencesTextModeDefaultDisplaySettings];\n}\n\n- (void)setDefaultOutlineModeDisplaySettings:(CUIOutlineModeDisplaySettings *)inDisplaySettings\n{\n    _defaultOutlineModeDisplaySettings=[inDisplaySettings copy];\n    \n    [_defaults setObject:[_defaultOutlineModeDisplaySettings representation] forKey:CUIPreferencesOutlineModeDefaultDisplaySettings];\n}\n\n#pragma mark -\n\n- (void)setCrashLogsSortType:(CUICrashLogsSortType)inCrashLogsSortType\n{\n    if (_crashLogsSortType==inCrashLogsSortType)\n        return;\n    \n    _crashLogsSortType=inCrashLogsSortType;\n    \n    [_defaults setObject:@(_crashLogsSortType) forKey:CUIPreferencesCrashLogsSortTypeKey];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIPreferencesCrashLogsSortTypeDidChangeNotification object:nil];\n}\n\n- (void)setCrashLogsShowFileNames:(BOOL)inCrashLogsShowFileNames\n{\n    if (_crashLogsShowFileNames==inCrashLogsShowFileNames)\n        return;\n    \n    _crashLogsShowFileNames=inCrashLogsShowFileNames;\n    \n    [_defaults setObject:@(_crashLogsShowFileNames) forKey:CUIPreferencesCrashLogsShowFileNamesKey];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIPreferencesCrashLogsShowFileNamesDidChangeNotification object:nil];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationSpecificBacktraceRowView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUIApplicationSpecificBacktraceRowViewIdentifier;\n\n@interface CUIApplicationSpecificBacktraceRowView : NSTableRowView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIApplicationSpecificBacktraceRowView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIApplicationSpecificBacktraceRowView.h\"\n\nNSString * const CUIApplicationSpecificBacktraceRowViewIdentifier=@\"CUIApplicationSpecificBacktraceRowViewIdentifier\";\n\n@implementation CUIApplicationSpecificBacktraceRowView\n\n- (void)drawRect:(NSRect)inRect\n{\n    if (self.isSelected==YES)\n    {\n        [super drawRect:inRect];\n        \n        return;\n    }\n    \n    NSRect tBounds=self.bounds;\n    \n    BOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    if (tIsDark==NO)\n    {\n        [[NSColor colorWithCalibratedRed:1.0 green:233.0/255.0 blue:203.0/255.0 alpha:1.0] set];\n    }\n    else\n    {\n        [[NSColor colorWithCalibratedRed:119.0/255.0 green:100.0/255.0 blue:43.0/255.0 alpha:1.0] set];\n    }\n    \n    NSRectFill(tBounds);\n    \n    if (tIsDark==NO)\n    {\n        [[NSColor colorWithCalibratedRed:1.0 green:184.0/255.0 blue:115.0/255.0 alpha:1.0] set];\n    }\n    else\n    {\n        [[NSColor colorWithCalibratedRed:106.0/255.0 green:88.0/255.0 blue:29.0/255.0 alpha:1.0] set];\n    }\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMinY(tBounds)+0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMinY(tBounds)+0.5)];\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMaxY(tBounds)-0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMaxY(tBounds)-0.5)];\n    \n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIBinaryImage.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"IPSImage.h\"\n\n@interface CUIAddressesRange : NSObject\n\n    @property NSUInteger loadAddress;\n\n    @property NSUInteger length;\n\n    @property (nonatomic,readonly) NSUInteger max;\n\n\n- (NSString *)stringValue;\n\n- (NSComparisonResult)compare:(CUIAddressesRange *)inOtherAddressesRange;\n\n@end\n\n@interface CUIBinaryImage : NSObject\n\n    @property (readonly,getter=isUserCode) BOOL userCode;\n\n\t@property (readonly,copy) NSString * identifier;\n\n    @property (readonly) cpu_type_t architecture;       // Future (iOS only)\n\n    @property (readonly,copy) NSString * version;       // macOS only\n\n\t@property (readonly,copy) NSString * buildNumber;   // macOS only\n\n    @property (readonly,copy) NSString * UUID;          // can be nil\n\n\t@property (readonly,copy) NSString * path;\n\n\t@property (readonly) CUIAddressesRange * addressesRange;\n\n    @property (nonatomic,readonly) NSUInteger binaryImageOffset;\n\n- (instancetype)initWithString:(NSString *)inString reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError;\n\n- (instancetype)initWithImage:(IPSImage *)inImage error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIBinaryImage.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIBinaryImage.h\"\n\n#import \"NSString+CPU.h\"\n\n#import \"IPSImage+UserCode.h\"\n\n@interface CUIAddressesRange ()\n\n+ (CUIAddressesRange *)addressesRangeWithLocation:(NSUInteger)inLocation length:(NSUInteger)inLength;\n\n- (instancetype)initWithLocation:(NSUInteger)inLocation length:(NSUInteger)inLength;\n\n@end\n\n@implementation CUIAddressesRange\n\n+ (CUIAddressesRange *)addressesRangeWithLocation:(NSUInteger)inLocation length:(NSUInteger)inLength\n{\n    return [[CUIAddressesRange alloc] initWithLocation:inLocation length:inLength];\n}\n\n- (instancetype)initWithLocation:(NSUInteger)inLocation length:(NSUInteger)inLength\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _loadAddress=inLocation;\n        \n        _length=inLength;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSUInteger)max\n{\n    return self.loadAddress+self.length;\n}\n\n#pragma mark -\n\n- (NSString *)stringValue\n{\n    return [NSString stringWithFormat:@\"0x%012lx - 0x%012lx\",self.loadAddress,self.max];\n}\n\n#pragma mark -\n\n- (NSComparisonResult)compare:(CUIAddressesRange *)inOtherAddressesRange\n{\n    if (inOtherAddressesRange==nil)\n        return NSOrderedDescending;\n    \n    if (self.loadAddress>inOtherAddressesRange.loadAddress)\n        return NSOrderedDescending;\n    \n    if (self.loadAddress<inOtherAddressesRange.loadAddress)\n        return NSOrderedAscending;\n    \n    if (self.length>inOtherAddressesRange.length)\n        return NSOrderedDescending;\n    \n    if (self.length<inOtherAddressesRange.length)\n        return NSOrderedAscending;\n    \n    return NSOrderedSame;\n}\n\n@end\n\n\n@interface CUIBinaryImage ()\n\n    @property (getter=isUserCode) BOOL userCode;\n\n    @property (copy) NSString * identifier;\n\n    @property (copy) NSString * version;\n\n    @property (copy) NSString * buildNumber;\n\n    @property (copy) NSString * UUID;\n\n    @property (copy) NSString * path;\n\n    @property CUIAddressesRange * addressesRange;\n\n- (BOOL)_isUserCode;\n\n@end\n\n// Line example:\n// 0x7fff2d259000 -     0x7fff2d259fff  com.apple.Accelerate (1.11 - Accelerate 1.11) <B2A0C739-1D41-3452-9D00-8C01ADA5DD99> /System/Library/Frameworks/Accelerate.framework/Versions/A/Accelerate\n\n@implementation CUIBinaryImage\n\n- (instancetype)initWithString:(NSString *)inString reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if ([inString isKindOfClass:NSString.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSCharacterSet * tWhitespaceCharacterSet=[NSCharacterSet whitespaceCharacterSet];\n        NSScanner * tScanner=[NSScanner scannerWithString:inString];\n        \n        tScanner.charactersToBeSkipped=tWhitespaceCharacterSet;\n        \n        unsigned long long tAddressRangeStart=0;\n        \n        if ([tScanner scanHexLongLong:&tAddressRangeStart]==NO)\n            return nil;\n        \n        if ([tScanner scanUpToString:@\"0\" intoString:NULL]==NO)\n            return nil;\n        \n        unsigned long long tAddressRangeEnd=0;\n        \n        if ([tScanner scanHexLongLong:&tAddressRangeEnd]==NO)\n            return nil;\n        \n        _addressesRange=[CUIAddressesRange addressesRangeWithLocation:tAddressRangeStart length:tAddressRangeEnd-tAddressRangeStart+1];\n        \n        NSString * tString;\n        NSString * tOriginalString;\n        \n        BOOL tIsMissingVersion=NO;\n        \n        NSUInteger tSavedScannerScanLocation=tScanner.scanLocation;\n        \n        if ([tScanner scanUpToString:@\"(\" intoString:&tOriginalString]==NO)\n        {\n            return nil;\n        }\n        else\n        {\n            // Maybe only the version is missing\n            \n            if (tScanner.scanLocation==inString.length)\n            {\n                tScanner.scanLocation=tSavedScannerScanLocation;\n                \n                if ([tScanner scanUpToString:@\"<\" intoString:&tOriginalString]==NO)\n                    return nil;\n                \n                tIsMissingVersion=YES;\n            }\n        }\n        \n        if (inReportVersion==6)\n        {\n            // Remove the version\n            \n            NSUInteger tLength=tOriginalString.length;\n            \n            NSRange tRange=[tOriginalString rangeOfCharacterFromSet:tWhitespaceCharacterSet options:NSBackwardsSearch range:NSMakeRange(0,tLength-1)];\n            \n            if (tRange.location==NSNotFound)\n            {\n                NSLog(@\"Unable to find version for binary image\");\n                \n                return nil;\n            }\n            \n            tString=[tOriginalString substringToIndex:tRange.location];\n        }\n        else\n        {\n            tString=tOriginalString;\n        }\n        \n        if ([tString hasPrefix:@\"+\"]==YES && tString.length>1)  // Cheap way to find that a binary image is user code.\n        {\n            _userCode=YES;\n            \n            tString=[tString substringFromIndex:1];\n        }\n        \n        _identifier=[[tString stringByTrimmingCharactersInSet:tWhitespaceCharacterSet] copy];\n        \n        // Version\n        \n        if (tScanner.scanLocation>=inString.length)\n            return nil;\n        \n        if (tIsMissingVersion==NO)\n        {\n        \n            if (inReportVersion==6)\n            {\n                NSUInteger tLength=tOriginalString.length;\n                \n                NSRange tRange=[tOriginalString rangeOfCharacterFromSet:tWhitespaceCharacterSet options:NSBackwardsSearch range:NSMakeRange(0,tLength-1)];\n                \n                _version=[[tOriginalString substringFromIndex:tRange.location] stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n                \n                tScanner.scanLocation+=1;\n                \n                if ([tScanner scanUpToString:@\")\" intoString:&tString]==NO)\n                    return nil;\n                \n                _buildNumber=[tString stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n            }\n            else\n            {\n                tScanner.scanLocation+=1;\n                \n                if ([tScanner scanUpToString:@\")\" intoString:&tString]==NO)\n                    return nil;\n                \n                NSArray * tVersions=[tString componentsSeparatedByString:@\" - \"];\n                \n                switch(tVersions.count)\n                {\n                    case 2:\n                        \n                        _buildNumber=[tVersions[1] stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n                        \n                    case 1:\n                        \n                        _version=[tVersions.firstObject stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n                        \n                        break;\n                }\n            }\n            \n            tScanner.scanLocation+=2;\n        }\n        else\n        {\n            _version=@\"???\";\n            _buildNumber=@\"???\";\n        }\n        \n        // UUID\n        \n        if ([inString characterAtIndex:tScanner.scanLocation]=='<')\n        {\n            if ([tScanner scanUpToString:@\">\" intoString:&tString]==NO)\n                return nil;\n        \n            _UUID=[tString substringFromIndex:1];\n        }\n        else\n        {\n            tScanner.scanLocation-=2;\n        }\n        \n        if ([tScanner scanUpToString:@\"/\" intoString:NULL]==NO)\n            return nil;\n        \n        _path=[[inString substringFromIndex:tScanner.scanLocation] stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n        \n        // User Code\n        \n        _userCode = (_userCode == YES) ? YES : [self _isUserCode];\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithImage:(IPSImage *)inImage error:(NSError **)outError\n{\n    if ([inImage isKindOfClass:IPSImage.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _userCode=inImage.isUserCode;\n\n        _identifier=[((inImage.bundleIdentifier!=nil) ? inImage.bundleIdentifier : inImage.name) copy];\n\n        _architecture=[inImage.architecture CUI_CPUType];\n\n        _version=[inImage.bundleShortVersionString copy];\n\n        _buildNumber=[inImage.bundleVersion copy];\n        \n        _UUID=[inImage.UUID.UUIDString copy];\n        \n        _path=[inImage.path copy];\n        \n        _addressesRange=[CUIAddressesRange new];\n        _addressesRange.loadAddress=inImage.loadAddress;\n        _addressesRange.length=inImage.size;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSUInteger)binaryImageOffset\n{\n    NSUInteger tLoadAddress=self.addressesRange.loadAddress;\n    \n    if (tLoadAddress>0x7fff00000000)    // Won't happen with ARM-64.\n        return tLoadAddress;\n    \n    if (tLoadAddress>=0x100000000)\n        return (tLoadAddress-0x100000000);\n    \n    return tLoadAddress;    // 32-bit\n}\n\n- (BOOL)_isUserCode\n{\n    NSString * tIdentifier=self.identifier;\n    \n    if (tIdentifier!=nil)\n    {\n        if ([tIdentifier hasPrefix:@\"com.apple.\"]==YES)\n            return NO;\n    }\n    \n    NSString * tPath=self.path;\n    \n    if (tPath!=nil)\n    {\n        if ([tPath hasPrefix:@\"/System/\"]==YES)\n            return NO;\n        \n        if ([tPath hasPrefix:@\"/usr/\"]==YES)\n        {\n            if ([tPath hasPrefix:@\"/usr/bin\"]==YES)\n                return NO;\n            \n            if ([tPath hasPrefix:@\"/usr/sbin\"]==YES)\n                return NO;\n            \n            if ([tPath hasPrefix:@\"/usr/lib\"]==YES)\n                return NO;\n            \n            if ([tPath hasPrefix:@\"/usr/libexec\"]==YES)\n                return NO;\n            \n            if ([tPath hasPrefix:@\"/usr/share\"]==YES)\n                return NO;\n        }\n        \n        if ([tPath hasPrefix:@\"/bin/\"]==YES)\n            return NO;\n        \n        if ([tPath hasPrefix:@\"/sbin/\"]==YES)\n            return NO;\n        \n        if ([tPath hasPrefix:@\"/Library/Apple\"]==YES)\n            return NO;\n    }\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIBinaryImageUtility.h",
    "content": "/*\nCopyright (c) 2020-2021, Stephane Sudre\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n\n- Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n- Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n- Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n*/\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUIBinaryImageGroupAppKitUIKit;\nextern NSString * const CUIBinaryImageGroupAudioSpeech;\nextern NSString * const CUIBinaryImageGroupDatabaseStorage;\nextern NSString * const CUIBinaryImageGroupFoundation;\nextern NSString * const CUIBinaryImageGroupGenericUncategorized;\nextern NSString * const CUIBinaryImageGroupGraphics;\nextern NSString * const CUIBinaryImageGroupLanguages;\nextern NSString * const CUIBinaryImageGroupNetworkIO;\nextern NSString * const CUIBinaryImageGroupOtherFrameworks;\nextern NSString * const CUIBinaryImageGroupSecurity;\nextern NSString * const CUIBinaryImageGroupSystem;\nextern NSString * const CUIBinaryImageGroupUserCode;\nextern NSString * const CUIBinaryImageGroupWebInternet;\n\n@interface CUIBinaryImageUtility : NSObject\n\n+ (NSString *)binaryImageGroupForIdentifier:(NSString *)inIdentifier;\n\n+ (NSImage *)iconForBinaryImageGroup:(NSString *)inBinaryImageGroup;\n\n+ (NSColor *)colorForBinaryImageGroup:(NSString *)inBinaryImageGroup;\n\n+ (NSImage *)iconForIdentifier:(NSString *)inIdentifier;\n\n+ (NSImage *)iconForPath:(NSString *)inPath;\n\n+ (NSColor *)colorForUserCode;\n\n+ (NSColor *)colorForIdentifier:(NSString *)inIdentifier;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIBinaryImageUtility.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIBinaryImageUtility.h\"\n\nNSString * const CUIBinaryImageGroupAppKitUIKit=@\"AppKit/UIKit\";\nNSString * const CUIBinaryImageGroupAudioSpeech=@\"Audio/Speech\";\nNSString * const CUIBinaryImageGroupDatabaseStorage=@\"Database/Storage\";\nNSString * const CUIBinaryImageGroupFoundation=@\"Foundation\";\nNSString * const CUIBinaryImageGroupGenericUncategorized=@\"Generic/Uncategorized\";\nNSString * const CUIBinaryImageGroupGraphics=@\"Graphics\";\nNSString * const CUIBinaryImageGroupLanguages=@\"Languages\";\nNSString * const CUIBinaryImageGroupNetworkIO=@\"Network or I/O\";\nNSString * const CUIBinaryImageGroupOtherFrameworks=@\"Other frameworks\";\nNSString * const CUIBinaryImageGroupSecurity=@\"Security\";\nNSString * const CUIBinaryImageGroupSystem=@\"System\";\nNSString * const CUIBinaryImageGroupUserCode=@\"User Code\";\nNSString * const CUIBinaryImageGroupWebInternet=@\"Web/Internet\";\n\n\n@implementation CUIBinaryImageUtility\n\n+ (NSString *)binaryImageGroupForIdentifier:(NSString *)inIdentifier\n{\n    if (inIdentifier==nil)\n        return CUIBinaryImageGroupGenericUncategorized;\n    \n    static NSDictionary * sGroupRegistry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sGroupRegistry=@{\n                         \n                         // Application UI\n                         \n                         @\"libswiftAppKit.dylib\":CUIBinaryImageGroupAppKitUIKit,\n                         \n                         @\"com.apple.AppKit\":CUIBinaryImageGroupAppKitUIKit,\n                         @\"com.apple.UIKit\":CUIBinaryImageGroupAppKitUIKit,\n                         \n                         // Audio Speech\n                         \n                         @\"libswiftCoreAudio.dylib\":CUIBinaryImageGroupAudioSpeech,\n                         \n                         @\"com.apple.audio.CoreAudio\":CUIBinaryImageGroupAudioSpeech,\n                         @\"com.apple.audio.AppleHDAHALPlugIn\":CUIBinaryImageGroupAudioSpeech,\n                         @\"com.apple.audio.AVFAudio\":CUIBinaryImageGroupAudioSpeech,\n                         @\"com.apple.audio.toolbox.AudioToolbox\":CUIBinaryImageGroupAudioSpeech,\n                         @\"com.apple.audio.units.AudioUnit\":CUIBinaryImageGroupAudioSpeech,\n                         \n                         @\"com.apple.speech.recognition.framework\":CUIBinaryImageGroupAudioSpeech,\n                         @\"com.apple.speech.synthesis.framework\":CUIBinaryImageGroupAudioSpeech,\n                         @\"com.apple.SpeechRecognitionCore\":CUIBinaryImageGroupAudioSpeech,\n                         \n                         // Database\n                         \n                         @\"libswiftCoreData.dylib\":CUIBinaryImageGroupDatabaseStorage,\n                         \n                         @\"com.apple.CoreData\":CUIBinaryImageGroupDatabaseStorage,\n                         @\"libsqlite3.dylib\":CUIBinaryImageGroupDatabaseStorage,\n                         \n                         // Foundation\n                         \n                         @\"libswiftCoreFoundation.dylib\":CUIBinaryImageGroupFoundation,\n                         @\"libswiftFoundation.dylib\":CUIBinaryImageGroupFoundation,\n                         \n                         @\"com.apple.Foundation\":CUIBinaryImageGroupFoundation,\n                         @\"com.apple.CoreFoundation\":CUIBinaryImageGroupFoundation,\n                         \n                         // Graphics\n                         \n                         @\"libswiftAVFoundation.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libswiftCoreGraphics.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libswiftCoreImage.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libswiftMetal.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libswiftQuartzCore.dylib\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.ApplicationServices.ATS\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.opencl\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.IOSurface\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.avfoundation\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.AVKit\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.ColorSync\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.ColorSyncLegacy\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreGraphics\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreImage\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.ImageCapture\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.imageCaptureCore\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.ImageIO.framework\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.CoreMedia\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreMediaAccessibility\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreMediaAuthoring\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreMediaIO\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreMediaKit\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.MediaPlayer\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.MediaToolbox\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreText\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CoreVideo\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.VideoToolbox\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.opengl\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.QuartzCore\":CUIBinaryImageGroupGraphics,\n                         @\"libGL.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libGLImage.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libGLU.dylib\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.QD\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"libmetal_timestamp.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.gpusw.MetalTools\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.PDFKit\":CUIBinaryImageGroupGraphics,\n                         @\"com.apple.CorePDF\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"com.apple.AppleJPEG\":CUIBinaryImageGroupGraphics,\n                         \n                         @\"libGIF.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libJP2.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libJPEG.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libPng.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libRadiance.dylib\":CUIBinaryImageGroupGraphics,\n                         @\"libTIFF.dylib\":CUIBinaryImageGroupGraphics,\n                         \n                         // Languages\n                         \n                         @\"libswiftObjectiveC.dylib\":CUIBinaryImageGroupLanguages,\n                         \n                         // Network\n                         \n                         @\"com.apple.CFNetwork\":CUIBinaryImageGroupNetworkIO,\n                         @\"libnetwork.dylib\":CUIBinaryImageGroupNetworkIO,\n                         @\"libsystem_networkextension.dylib\":CUIBinaryImageGroupNetworkIO,\n                         @\"libapple_nghttp2.dylib\":CUIBinaryImageGroupNetworkIO,\n                         \n                         // Security\n                         \n                         @\"com.apple.Kerberos\":CUIBinaryImageGroupSecurity,\n                         @\"libcommonCrypto.dylib\":CUIBinaryImageGroupSecurity,\n                         @\"libcorecrypto.dylib\":CUIBinaryImageGroupSecurity,\n                         \n                         // System\n                         \n                         @\"libdyld.dylib\":CUIBinaryImageGroupSystem,\n                         @\"libdispatch.dylib\":CUIBinaryImageGroupSystem,\n                         \n                         // Web Internet\n                         \n                         @\"com.apple.JavaScriptCore\":CUIBinaryImageGroupWebInternet,\n                         @\"com.apple.WebCore\":CUIBinaryImageGroupWebInternet,\n                         @\"com.apple.WebKitLegacy\":CUIBinaryImageGroupWebInternet,\n                         @\"com.apple.WebKit\":CUIBinaryImageGroupWebInternet,\n                         @\"libwebrtc.dylib\":CUIBinaryImageGroupWebInternet,\n                         };\n        \n    });\n    \n    NSString * tBinaryImageGroup=sGroupRegistry[inIdentifier];\n    \n    if (tBinaryImageGroup!=nil)\n        return tBinaryImageGroup;\n    \n    // Try to figure out differently\n    \n    if ([inIdentifier hasPrefix:@\"libc++\"]==YES ||\n        [inIdentifier hasPrefix:@\"libobjc\"]==YES)\n        return CUIBinaryImageGroupLanguages;\n    \n    if ([inIdentifier hasPrefix:@\"com.apple.Metal\"]==YES)\n        return CUIBinaryImageGroupGraphics;\n    \n    if ([inIdentifier hasPrefix:@\"com.apple.security\"]==YES)\n        return CUIBinaryImageGroupSecurity;\n    \n    if ([inIdentifier hasPrefix:@\"com.apple.\"]==YES)\n        return CUIBinaryImageGroupOtherFrameworks;\n    \n    if ([inIdentifier hasPrefix:@\"libsystem_\"]==YES)\n        return CUIBinaryImageGroupSystem;\n    \n    return CUIBinaryImageGroupGenericUncategorized;\n}\n\n+ (NSImage *)iconForBinaryImageGroup:(NSString *)inBinaryImageGroup\n{\n    if (inBinaryImageGroup==nil)\n        inBinaryImageGroup=CUIBinaryImageGroupGenericUncategorized;\n    \n    static NSDictionary * sIconsRegistry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        \n        sIconsRegistry=@{\n                         \n                         CUIBinaryImageGroupAppKitUIKit:[NSImage imageNamed:@\"call-appkit\"],\n                         CUIBinaryImageGroupAudioSpeech:[NSImage imageNamed:@\"call-audiospeech\"],\n                         CUIBinaryImageGroupDatabaseStorage:[NSImage imageNamed:@\"call-database\"],\n                         CUIBinaryImageGroupFoundation:[NSImage imageNamed:@\"call-foundation\"],\n                         CUIBinaryImageGroupGenericUncategorized:[NSImage imageNamed:@\"call-generic\"],\n                         CUIBinaryImageGroupGraphics:[NSImage imageNamed:@\"call-graphics\"],\n                         CUIBinaryImageGroupLanguages:[NSImage imageNamed:@\"call-languages\"],\n                         CUIBinaryImageGroupNetworkIO:[NSImage imageNamed:@\"call-network\"],\n                         CUIBinaryImageGroupOtherFrameworks:[NSImage imageNamed:@\"call-framework\"],\n                         CUIBinaryImageGroupSecurity:[NSImage imageNamed:@\"call-security\"],\n                         CUIBinaryImageGroupSystem:[NSImage imageNamed:@\"call-system\"],\n                         CUIBinaryImageGroupUserCode:[NSImage imageNamed:@\"call-usercode\"],\n                         CUIBinaryImageGroupWebInternet:[NSImage imageNamed:@\"call-webinternet\"],\n                         };\n        \n    });\n    \n    NSImage * tImage=sIconsRegistry[inBinaryImageGroup];\n    \n    if (tImage!=nil)\n        return tImage;\n    \n    return sIconsRegistry[CUIBinaryImageGroupGenericUncategorized];\n}\n\n+ (NSColor *)colorForBinaryImageGroup:(NSString *)inBinaryImageGroup\n{\n    if (inBinaryImageGroup==nil)\n        inBinaryImageGroup=CUIBinaryImageGroupGenericUncategorized;\n    \n    static NSDictionary * sColorsRegistry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        \n        sColorsRegistry=@{\n                          \n                          CUIBinaryImageGroupAppKitUIKit:[NSColor colorWithDeviceRed:176/255.0 green:155/255.0 blue:202/255.0 alpha:1.0],\n                          CUIBinaryImageGroupAudioSpeech:[NSColor colorWithDeviceRed:169/255.0 green:184/255.0 blue:192/255.0 alpha:1.0],\n                          CUIBinaryImageGroupDatabaseStorage:[NSColor colorWithDeviceRed:212/255.0 green:194/255.0 blue:87/255.0 alpha:1.0],\n                          CUIBinaryImageGroupFoundation:[NSColor colorWithDeviceRed:185/255.0 green:181/255.0 blue:160/255.0 alpha:1.0],\n                          CUIBinaryImageGroupGenericUncategorized:[NSColor colorWithDeviceRed:167/255.0 green:146/255.0 blue:126/255.0 alpha:1.0],\n                          CUIBinaryImageGroupGraphics:[NSColor colorWithDeviceRed:155/255.0 green:152/255.0 blue:210/255.0 alpha:1.0],\n                          CUIBinaryImageGroupLanguages:[NSColor colorWithDeviceRed:158/255.0 green:111/255.0 blue:147/255.0 alpha:1.0],\n                          CUIBinaryImageGroupNetworkIO:[NSColor colorWithDeviceRed:215/255.0 green:137/255.0 blue:101/255.0 alpha:1.0],\n                          CUIBinaryImageGroupOtherFrameworks:[NSColor colorWithDeviceRed:190/255.0 green:154/255.0 blue:150/255.0 alpha:1.0],\n                          CUIBinaryImageGroupSecurity:[NSColor colorWithDeviceRed:85/255.0 green:138/255.0 blue:82/255.0 alpha:1.0],\n                          CUIBinaryImageGroupSystem:[NSColor colorWithDeviceRed:201/255.0 green:185/255.0 blue:156/255.0 alpha:1.0],\n                          CUIBinaryImageGroupUserCode:[NSColor colorWithDeviceRed:133/255.0 green:168/255.0 blue:210/255.0 alpha:1.0],\n                          CUIBinaryImageGroupWebInternet:[NSColor colorWithDeviceRed:106/255.0 green:131/255.0 blue:141/255.0 alpha:1.0],\n                          };\n        \n    });\n    \n    NSColor * tColor=sColorsRegistry[inBinaryImageGroup];\n    \n    if (tColor!=nil)\n        return tColor;\n    \n    return sColorsRegistry[CUIBinaryImageGroupGenericUncategorized];\n}\n\n+ (NSImage *)iconForIdentifier:(NSString *)inIdentifier\n{\n    NSString * tBinaryImageGroup=[CUIBinaryImageUtility binaryImageGroupForIdentifier:inIdentifier];\n    \n    return [CUIBinaryImageUtility iconForBinaryImageGroup:tBinaryImageGroup];\n}\n\n+ (NSImage *)iconForPath:(NSString *)inPath\n{\n    return nil;\n}\n\n+ (NSColor *)colorForUserCode\n{\n    static NSColor * sUserCodeColor=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n    \n        sUserCodeColor=[NSColor colorWithDeviceRed:133/255.0 green:168/255.0 blue:210/255.0 alpha:1.0];\n    });\n    \n    return sUserCodeColor;\n}\n\n+ (NSColor *)colorForIdentifier:(NSString *)inIdentifier\n{\n    NSString * tBinaryImageGroup=[CUIBinaryImageUtility binaryImageGroupForIdentifier:inIdentifier];\n    \n    return [CUIBinaryImageUtility colorForBinaryImageGroup:tBinaryImageGroup];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIBinaryImagesViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n\n@interface CUIBinaryImagesViewController : NSViewController\n\n    @property (nonatomic) CUICrashLog * crashLog;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIBinaryImagesViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIBinaryImagesViewController.h\"\n\n#import \"CUIBinaryImage.h\"\n\n#import \"CUIBinaryImageUtility.h\"\n\n#import \"CUICallsSelection.h\"\n\n#import \"CUIApplicationItemAttributes.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n#import \"NSTableView+Selection.h\"\n\n#import \"NSSet+WBExtensions.h\"\n\n#import \"CUIRawCrashLog+Path.h\"\n\n#import \"CUIHopperDisassemblerManager.h\"\n\n@interface CUIBinaryImagesViewController () <CUIHopperDisassemblerActions,NSMenuItemValidation,NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTableView * _tableView;\n    \n    IBOutlet NSMenuItem * _openWithMenuItem;\n    \n    IBOutlet NSSearchField * _filterField;\n    \n    NSMutableArray * _sortedAndFilteredBinaryImagesArray;\n    \n    NSString * _filterPattern;\n    \n    NSSet * _highlightedBinaryImagesSet;\n}\n\n    @property (nonatomic,copy) NSString * userCodeBinaryImageIdentifier;\n\n    @property (nonatomic) NSArray * binaryImages;\n\n- (void)refreshList;\n\n- (IBAction)showInFinder:(id)sender;\n\n- (IBAction)takeFilterPatternFrom:(id)sender;\n\n// Notifications\n\n- (void)callsSelectionDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIBinaryImagesViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _filterPattern=@\"\";\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUIBinaryImagesViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    // Table\n    \n    NSSortDescriptor *buildETASortDescriptor = [[NSSortDescriptor alloc] initWithKey:@\"addressesRange\" ascending:YES];\n    \n    _tableView.sortDescriptors=@[buildETASortDescriptor];\n    \n    // Open With menu\n    \n    NSMenu * tHopperMenu=[[CUIHopperDisassemblerManager sharedManager] availableApplicationsMenuWithTarget:self];\n    \n    _openWithMenuItem.submenu=tHopperMenu;\n    _openWithMenuItem.hidden=(tHopperMenu==nil);\n    \n    // Filter Field\n    \n    _filterField.centersPlaceholder=NO;\n    \n    NSSearchFieldCell * tSearchFieldCell=_filterField.cell;\n    NSButtonCell * tButtonCell=tSearchFieldCell.searchButtonCell;\n    \n    tButtonCell.image=[NSImage imageNamed:@\"filter_Template\"];\n    tButtonCell.alternateImage=tButtonCell.image;\n    \n    // Notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(callsSelectionDidChange:) name:CUICallsSelectionDidChangeNotification object:[CUICallsSelection sharedCallsSelection]];\n}\n\n#pragma mark -\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    if (_crashLog==inCrashLog)\n        return;\n    \n    _crashLog=inCrashLog;\n    \n    _binaryImages=_crashLog.binaryImages.binaryImages;\n    _userCodeBinaryImageIdentifier=_crashLog.header.bundleIdentifier;\n    \n    [_tableView sizeLastColumnToFit];\n    \n    [self refreshList];\n}\n\n#pragma mark -\n\n- (void)refreshList\n{\n    NSIndexSet * tIndexSet=_tableView.selectedRowIndexes;\n    \n    NSArray * tSelectedItems=[_sortedAndFilteredBinaryImagesArray objectsAtIndexes:tIndexSet];\n    \n    NSArray * tSelectedPaths=[tSelectedItems WB_arrayByMappingObjectsUsingBlock:^id(CUIBinaryImage * bBinaryImage, NSUInteger bIndex) {\n        \n        return bBinaryImage.path;\n        \n    }];\n    \n    NSArray * tArray=_binaryImages;\n    \n    if (_filterPattern.length>0)\n    {\n        _sortedAndFilteredBinaryImagesArray=[NSMutableArray array];\n        \n        [tArray enumerateObjectsUsingBlock:^(CUIBinaryImage * bBinaryImage, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([bBinaryImage.identifier rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound ||\n                [bBinaryImage.addressesRange.stringValue rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound ||\n                [bBinaryImage.path rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n            {\n                [self->_sortedAndFilteredBinaryImagesArray addObject:bBinaryImage];\n            }\n        }];\n    }\n    else\n    {\n        _sortedAndFilteredBinaryImagesArray=[tArray mutableCopy];\n    }\n    \n    [_sortedAndFilteredBinaryImagesArray sortUsingDescriptors: _tableView.sortDescriptors];\n    \n    [_tableView reloadData];\n    \n    NSMutableIndexSet * tNewSelectionIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_sortedAndFilteredBinaryImagesArray enumerateObjectsUsingBlock:^(CUIBinaryImage * bBinaryImage, NSUInteger bIndex,BOOL * bOutStop) {\n        \n        if ([tSelectedPaths containsObject:bBinaryImage.path]==YES)\n            [tNewSelectionIndexSet addIndex:bIndex];\n        \n    }];\n    \n    if (tNewSelectionIndexSet.count>0)\n        [_tableView selectRowIndexes:tNewSelectionIndexSet byExtendingSelection:NO];\n    \n    NSMutableIndexSet * tMutableIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_sortedAndFilteredBinaryImagesArray enumerateObjectsUsingBlock:^(CUIBinaryImage * bBinaryImage, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if ([self->_highlightedBinaryImagesSet containsObject:bBinaryImage.identifier]==YES)\n            [tMutableIndexSet addIndex:bIndex];\n    }];\n    \n    if (tMutableIndexSet.count>0)\n        [_tableView scrollRowToVisible:tMutableIndexSet.firstIndex];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    if (tAction==@selector(showInFinder:) ||\n        tAction==@selector(openWithHopperDisassembler:))\n    {\n        if (tSelectedRows.count==0)\n            return NO;\n        \n        NSArray<CUIBinaryImage *> * tArray=[_sortedAndFilteredBinaryImagesArray objectsAtIndexes:tSelectedRows];\n        \n        NSFileManager * tFileManager=[NSFileManager defaultManager];\n        \n        for(CUIBinaryImage * tBinaryImage in tArray)\n        {\n            NSString * tPath=tBinaryImage.path;\n            \n            if (tPath.length==0)\n                return NO;\n            \n            if ([tFileManager fileExistsAtPath:tPath]==NO)\n                return NO;\n        }\n        \n        return (tSelectedRows.count>0);\n    }\n    \n    return YES;\n}\n\n- (IBAction)showInFinder:(id)sender\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    NSWorkspace * tSharedWorkspace=[NSWorkspace sharedWorkspace];\n    \n    [_sortedAndFilteredBinaryImagesArray enumerateObjectsAtIndexes:tSelectionIndexSet options:0 usingBlock:^(CUIBinaryImage * bBinaryImage, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if (bBinaryImage.path.length>0)\n            [tSharedWorkspace selectFile:bBinaryImage.path inFileViewerRootedAtPath:@\"\"];\n    }];\n}\n\n- (IBAction)openWithHopperDisassembler:(NSMenuItem *)sender\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    CUIApplicationItemAttributes * tApplicationItemAttributes=sender.representedObject;\n    \n    [_sortedAndFilteredBinaryImagesArray enumerateObjectsAtIndexes:tSelectionIndexSet options:0 usingBlock:^(CUIBinaryImage * bBinaryImage, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if (bBinaryImage.path.length>0)\n        {\n            [[CUIHopperDisassemblerManager sharedManager] openBinaryImage:bBinaryImage.path\n                                                withApplicationAttributes:tApplicationItemAttributes\n                                                                 codeType:self.crashLog.header.codeType\n                                                               fileOffSet:NULL];\n        }\n    }];\n}\n\n- (IBAction)takeFilterPatternFrom:(NSSearchField *)sender\n{\n    _filterPattern=sender.stringValue;\n    \n    [self refreshList];\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n    return _sortedAndFilteredBinaryImagesArray.count;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    NSString * tTableColumnIdentifier=inTableColumn.identifier;\n    NSTableCellView * tTableCellView=[inTableView makeViewWithIdentifier:tTableColumnIdentifier owner:self];\n    \n    CUIBinaryImage * tBinaryImage=_sortedAndFilteredBinaryImagesArray[inRow];\n    \n    tTableCellView.textField.textColor=(_highlightedBinaryImagesSet.count>0) ? [NSColor secondaryLabelColor] : [NSColor labelColor];\n    \n    if ([_highlightedBinaryImagesSet containsObject:tBinaryImage.identifier]==YES)\n    {\n        tTableCellView.textField.textColor=[NSColor labelColor];\n        \n        tTableCellView.textField.font=[[NSFontManager sharedFontManager] convertFont:tTableCellView.textField.font\n                                                                         toHaveTrait:NSBoldFontMask];\n    }\n    else\n    {\n        tTableCellView.textField.font=[[NSFontManager sharedFontManager] convertFont:tTableCellView.textField.font\n                                                                         toHaveTrait:NSUnboldFontMask];\n    }\n    \n    if ([tTableColumnIdentifier isEqualToString:@\"identifier\"]==YES)\n    {\n        tTableCellView.textField.stringValue=tBinaryImage.identifier;\n        \n        if (tBinaryImage.isUserCode==YES)\n            tTableCellView.imageView.image=[NSImage imageNamed:@\"call-usercode\"];\n        else\n            tTableCellView.imageView.image=[CUIBinaryImageUtility iconForIdentifier:tBinaryImage.identifier];\n    }\n    else if ([tTableColumnIdentifier isEqualToString:@\"version\"]==YES)\n    {\n        if (tBinaryImage.buildNumber==nil)\n            tTableCellView.textField.stringValue=(tBinaryImage.version!=nil) ? tBinaryImage.version : @\"-\";\n        else\n            tTableCellView.textField.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"%@ (%@)\",@\"\"),tBinaryImage.version,tBinaryImage.buildNumber];\n    }\n    else if ([tTableColumnIdentifier isEqualToString:@\"addresses\"]==YES)\n    {\n        //tTableCellView.textField.font=[NSFont monospacedDigitSystemFontOfSize:18.0 weight:NSFontWeightRegular];\n        tTableCellView.textField.stringValue=tBinaryImage.addressesRange.stringValue;\n    }\n    else if ([tTableColumnIdentifier isEqualToString:@\"path\"]==YES)\n    {\n        tTableCellView.textField.stringValue=[self.crashLog stringByResolvingUSERInPath:tBinaryImage.path];\n    }\n    \n    return tTableCellView;\n}\n\n- (void)tableView:(NSTableView *)inTableView sortDescriptorsDidChange:(NSArray *)inOldDescriptors\n{\n    [self refreshList];\n}\n\n#pragma mark - Notifications\n\n- (void)callsSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICallsSelection * tCallSelection=inNotification.object;\n    \n    if ([tCallSelection isKindOfClass:[CUICallsSelection class]]==NO)\n        return;\n    \n    _highlightedBinaryImagesSet=tCallSelection.binaryImageIdentifiers;\n    \n    NSMutableIndexSet * tMutableIndexSet=[NSMutableIndexSet indexSet];\n    \n    \n    [_sortedAndFilteredBinaryImagesArray enumerateObjectsUsingBlock:^(CUIBinaryImage * bBinaryImage, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if ([self->_highlightedBinaryImagesSet containsObject:bBinaryImage.identifier]==YES)\n        {\n            [tMutableIndexSet addIndex:bIndex];\n        }\n    }];\n    \n    [_tableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, _sortedAndFilteredBinaryImagesArray.count)]\n                          columnIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 4)]];\n    \n    if (tMutableIndexSet.count>0)\n        [_tableView scrollRectToVisible:[_tableView rectOfRow:tMutableIndexSet.firstIndex]];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICallStackBacktrace.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIStackFrame.h\"\n\n#import \"IPSThreadFrame.h\"\n#import \"IPSImage.h\"\n\n@interface CUICallStackBacktrace : NSObject\n\n\t@property (readonly) NSArray<CUIStackFrame *> * stackFrames;\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError;\n\n- (instancetype)initWithFrames:(NSArray<IPSThreadFrame *> *)inFrames binaryImages:(NSArray<IPSImage *> *)inImages error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICallStackBacktrace.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICallStackBacktrace.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n@interface CUICallStackBacktrace ()\n\n\t@property NSArray * stackFrames;\n\n@end\n\n@implementation CUICallStackBacktrace\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError\n{\n\tif ([inLines isKindOfClass:[NSArray class]]==NO)\n\t{\n\t\tif (outError!=NULL)\n\t\t\t*outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n\t\t\n\t\treturn nil;\n\t}\n\t\n\tself=[super init];\n\t\n\tif (self!=nil)\n\t{\n\t\t__block NSError * tError=nil;\n        \n        _stackFrames=[inLines WB_arrayByMappingObjectsUsingBlock:^id(NSString * bLine, NSUInteger bLineNumber) {\n\t\t\t\n\t\t\tCUIStackFrame * tCall=[[CUIStackFrame alloc] initWithString:bLine error:&tError];\n\t\t\t\n\t\t\tif (tCall==nil)\n\t\t\t{\n                NSLog(@\"Error parsing line: %@\",bLine);\n                \n                return nil;\n\t\t\t}\n\t\t\t\n\t\t\treturn tCall;\n\t\t}];\n\t\t\n\t\tif (_stackFrames==nil)\n        {\n            if (outError!=NULL)\n                *outError=tError;\n            \n\t\t\treturn nil;\n        }\n\t}\n\t\n\treturn self;\n}\n\n- (instancetype)initWithFrames:(NSArray<IPSThreadFrame *> *)inFrames binaryImages:(NSArray<IPSImage *> *)inImages error:(NSError **)outError\n{\n    if ([inFrames isKindOfClass:[NSArray class]]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _stackFrames=[inFrames WB_arrayByMappingObjectsUsingBlock:^CUIStackFrame *(IPSThreadFrame * bFrame, NSUInteger bIndex) {\n            \n            CUIStackFrame * tStackFrame=[[CUIStackFrame alloc] initWithThreadFrame:bFrame\n                                                                           atIndex:bIndex\n                                                                             image:inImages[bFrame.imageIndex]\n                                                                             error:NULL];\n            \n            if (tStackFrame==nil)\n            {\n                return nil;\n            }\n            \n            return tStackFrame;\n            \n        }];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\treturn self.stackFrames.description;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICallTableCellView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICallTableCellView : NSTableCellView\n\n    @property (assign) IBOutlet NSTextField * callIndexLabel;\n\n    @property (assign) IBOutlet NSTextField * binaryImageLabel;\n\n    @property (assign) IBOutlet NSTextField * addressLabel;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICallTableCellView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICallTableCellView.h\"\n\n@implementation CUICallTableCellView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICallsSelection.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\nextern NSString * const CUICallsSelectionDidChangeNotification;\n\n@interface CUICallsSelection : NSObject\n\n    @property (nonatomic) NSSet * calls;\n\n    @property (nonatomic,readonly) NSSet * binaryImageIdentifiers;\n\n+ (CUICallsSelection *)sharedCallsSelection;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICallsSelection.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICallsSelection.h\"\n\n#import \"CUICallStackBacktrace.h\"\n\nNSString * const CUICallsSelectionDidChangeNotification=@\"CUICallsSelectionDidChangeNotification\";\n\n@implementation CUICallsSelection\n\n+ (CUICallsSelection *)sharedCallsSelection\n{\n    static CUICallsSelection * sSharedCallsSelection=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSharedCallsSelection=[CUICallsSelection new];\n        \n    });\n    \n    return sSharedCallsSelection;\n}\n\n#pragma mark -\n\n- (void)setCalls:(NSSet *)inCalls\n{\n    _calls=inCalls;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICallsSelectionDidChangeNotification object:self];\n}\n\n- (NSSet *)binaryImageIdentifiers\n{\n    NSMutableSet * tMutableSet=[NSMutableSet set];\n    \n    [self.calls enumerateObjectsUsingBlock:^(CUIStackFrame * bCall,BOOL * bOutStop) {\n        \n        NSString * tBinaryImageIdentifier=bCall.binaryImageIdentifier;\n        \n        if (tBinaryImageIdentifier!=nil)\n            [tMutableSet addObject:tBinaryImageIdentifier];\n            \n    }];\n    \n    return [tMutableSet copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICaptionView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICaptionView : NSTextField\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICaptionView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICaptionView.h\"\n\n#define CUICaptionMinWidth  40.0\n\n@implementation CUICaptionView\n\n- (NSSize)badgeSizeForString:(NSString*)string\n{\n    NSSize tSize = [self.attributedStringValue size];\n    \n    // Paddings\n    \n    tSize.width += 12.0;\n    \n    if (tSize.width<CUICaptionMinWidth)\n        tSize.width=CUICaptionMinWidth;\n    \n    return tSize;\n}\n\n- (void)drawRect:(NSRect)inRect\n{\n    NSRect tFrame=self.bounds;\n    \n    NSSize tBadgeSize = [self badgeSizeForString:self.stringValue];\n    \n    tBadgeSize.height=NSHeight(tFrame);\n    \n    NSRect tBadgeRect;\n    \n    tBadgeRect.origin.x=round(NSMaxX(tFrame)-tBadgeSize.width);\n    tBadgeRect.origin.y=round(NSMidY(tFrame)-tBadgeSize.height*0.5);\n    tBadgeRect.size=tBadgeSize;\n    \n    // Draw badge\n    \n    NSBezierPath* path = [NSBezierPath bezierPathWithRoundedRect:tBadgeRect xRadius:4.0 yRadius:4.0];\n    \n    if (self.cell.backgroundStyle==NSBackgroundStyleEmphasized)\n    {\n        [[NSColor colorWithDeviceWhite:0.95 alpha:1.0] setFill];\n    }\n    else\n    {\n        [[NSColor tertiaryLabelColor] setFill];\n    }\n    \n    [path fill];\n    \n    // Draw text\n    \n    NSMutableParagraphStyle* paragraphStyle = [NSMutableParagraphStyle new];\n    paragraphStyle.alignment=NSTextAlignmentCenter;\n    \n    NSColor * tTextColor=nil;\n    \n    if (self.cell.backgroundStyle==NSBackgroundStyleEmphasized)\n    {\n        tTextColor=[NSColor colorWithDeviceWhite:0.25 alpha:1.0];\n    }\n    else\n    {\n        tTextColor=[NSColor whiteColor];\n    }\n    \n    NSDictionary* textAttributes = @{NSForegroundColorAttributeName:tTextColor, NSParagraphStyleAttributeName:paragraphStyle};\n    \n    tBadgeRect.origin.y+=1;\n    \n    [self.stringValue drawInRect:tBadgeRect withAttributes:textAttributes];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICategoriesClipView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICategoriesClipView : NSClipView\n\n    @property (nonatomic) NSColor * themeBackgroundColor;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICategoriesClipView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICategoriesClipView.h\"\n\n@implementation CUICategoriesClipView\n\n- (void)setThemeBackgroundColor:(NSColor *)inColor\n{\n    _themeBackgroundColor=inColor;\n    \n    [self setNeedsDisplay:YES];\n}\n\n#pragma mark -\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    [self.themeBackgroundColor set];\n    \n    NSRectFill(dirtyRect);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICenteredLabelViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\ntypedef NS_ENUM(NSUInteger, CUILabelSize)\n{\n    CUILabelSizeRegular,\n    CUILabelSizeBig,\n};\n\n@interface CUICenteredLabelViewController : NSViewController\n\n    @property (nonatomic) CUILabelSize labelSize;\n\n    @property (nonatomic,copy) NSString * label;\n\n    @property (nonatomic) CGFloat verticalOffset;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICenteredLabelViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICenteredLabelViewController.h\"\n\n#define H_MARGIN_REGULAR  15.0\n#define H_MARGIN_BIG  20.0\n\n#define MARGIN_REGULAR_TOP  10.0\n#define MARGIN_REGULAR_BOTTOM  12.0\n#define MARGIN_BIG_TOP  14.0\n#define MARGIN_BIG_BOTTOM  16.0\n\n@interface CUICenteredLabelViewController ()\n{\n    IBOutlet NSView * _frameView;\n    \n    IBOutlet NSTextField * _labelTextField;\n}\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICenteredLabelViewController\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n- (NSString *)nibName\n{\n    return @\"CUICenteredLabelViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    if (self.label!=nil)\n    {\n        _labelTextField.stringValue=self.label;\n    }\n}\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    // Center view\n    \n    [self resizeLabel];\n    \n    [self layout];\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(viewFrameDidChange:) name:NSViewFrameDidChangeNotification object:self.view];\n}\n\n\n- (void)viewWillDisappear\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self name:NSViewFrameDidChangeNotification object:self.view];\n}\n\n#pragma mark -\n\n- (void)setLabelSize:(CUILabelSize)inLabelSize\n{\n    if (_labelSize==inLabelSize)\n        return;\n    \n    _labelSize=inLabelSize;\n    \n    [self resizeLabel];\n}\n\n- (void)setLabel:(NSString *)inLabel\n{\n    if (inLabel==nil)\n        return;\n    \n    if (_label==inLabel)\n        return;\n    \n    _label=[inLabel copy];\n    \n    _labelTextField.stringValue=inLabel;\n    \n    [self resizeLabel];\n}\n\n#pragma mark -\n\n- (void)setVerticalOffset:(CGFloat)inVerticalOffset\n{\n    if (_verticalOffset==inVerticalOffset)\n        return;\n    \n    _verticalOffset=inVerticalOffset;\n    \n    [self layout];\n}\n\nCGFloat verticalOffset;\n\n- (void)resizeLabel\n{\n    CGFloat tFontSize=13.0;\n    \n    switch(self.labelSize)\n    {\n        case CUILabelSizeBig:\n            \n            tFontSize=30.0f;\n            break;\n            \n        case CUILabelSizeRegular:\n            \n            tFontSize=14.0f;\n            break;\n    }\n    \n    _labelTextField.font=[NSFont systemFontOfSize:tFontSize weight:NSFontWeightLight];\n    \n    [_labelTextField sizeToFit];\n    \n    NSRect tLabelFrame=_labelTextField.frame;\n    \n    NSRect tFrameFrame=_frameView.frame;\n    \n    CGFloat tMargin=H_MARGIN_REGULAR;\n    CGFloat tMarginTop=MARGIN_REGULAR_TOP;\n    CGFloat tMarginBottom=MARGIN_REGULAR_BOTTOM;\n    \n    switch(self.labelSize)\n    {\n        case CUILabelSizeBig:\n            \n            tMargin=H_MARGIN_BIG;\n            tMarginTop=MARGIN_BIG_TOP;\n            tMarginBottom=MARGIN_BIG_BOTTOM;\n            break;\n            \n        case CUILabelSizeRegular:\n            \n            tMargin=H_MARGIN_REGULAR;\n            tMarginTop=MARGIN_REGULAR_TOP;\n            tMarginBottom=MARGIN_REGULAR_BOTTOM;\n            break;\n    }\n    \n    tFrameFrame.size.width=NSWidth(tLabelFrame)+2*tMargin;\n    tFrameFrame.size.height=NSHeight(tLabelFrame)+tMarginTop+tMarginBottom;\n    \n    _frameView.frame=tFrameFrame;\n    \n    tLabelFrame.origin.x=tMargin;\n    tLabelFrame.origin.y=tMarginBottom;\n    \n    _labelTextField.frame=tLabelFrame;\n}\n\n- (void)layout\n{\n    NSRect tBounds=self.view.bounds;\n    \n    NSRect tFrame=_frameView.frame;\n    \n    tFrame.origin.x=round(NSMidX(tBounds)-NSWidth(tFrame)*0.5);\n    tFrame.origin.y=round(NSMidY(tBounds)+(self.verticalOffset-NSHeight(tFrame))*0.5);\n    \n    _frameView.frame=tFrame;\n}\n\n#pragma mark - Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification\n{\n    [self layout];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICenteredLabelViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICenteredLabelViewController\">\n            <connections>\n                <outlet property=\"_frameView\" destination=\"3Jf-x8-KQY\" id=\"EJg-R3-Tbd\"/>\n                <outlet property=\"_labelTextField\" destination=\"QZ0-qZ-VHE\" id=\"tI8-jf-qHN\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"480\" height=\"272\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <customView id=\"3Jf-x8-KQY\" customClass=\"CUIRoundedRectBezelView\">\n                    <rect key=\"frame\" x=\"185\" y=\"116\" width=\"111\" height=\"40\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <subviews>\n                        <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"QZ0-qZ-VHE\">\n                            <rect key=\"frame\" x=\"8\" y=\"12\" width=\"95\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                            <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"center\" title=\"Placeholder\" id=\"rpr-97-Q3J\">\n                                <font key=\"font\" metaFont=\"systemLight\" size=\"14\"/>\n                                <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </textFieldCell>\n                        </textField>\n                    </subviews>\n                </customView>\n            </subviews>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICodeSigningFlagsTableView.h",
    "content": "/*\n Copyright (c) 2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface CUICodeSigningFlagsTableView : NSTableView\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICodeSigningFlagsTableView.m",
    "content": "/*\n Copyright (c) 2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICodeSigningFlagsTableView.h\"\n\n@implementation CUICodeSigningFlagsTableView\n\n- (BOOL)isOpaque\n{\n\treturn NO;\n}\n\n- (NSColor *)backgroundColor\n{\n\treturn [NSColor clearColor];\n}\n\n#pragma mark -\n\n- (BOOL)acceptsFirstResponder\n{\n\treturn NO;\n}\n\n- (NSView *)hitTest:(NSPoint)point\n{\n\treturn nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICodeSigningInformationViewController.h",
    "content": "/*\n Copyright (c) 2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"IPSIncidentHeader.h\"\n\n@interface CUICodeSigningInformationViewController : NSViewController\n\n- (instancetype)initWithCodeSigningInfo:(IPSCodeSigningInfo *)inCodeSigningInfo;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICodeSigningInformationViewController.m",
    "content": "/*\n Copyright (c) 2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICodeSigningInformationViewController.h\"\n#import \"NSDictionary+WBExtensions.h\"\n\n@interface IPSCodeSigningInfo (UI)\n\n@property (nonatomic, readonly) NSString *validationCategoryDisplayString;\n\n@end\n\n\n@implementation IPSCodeSigningInfo (UI)\n\n- (NSString *)validationCategoryDisplayString\n{\n\tswitch(self.validationCategory)\n\t{\n\t\tcase IPSCodeSigningValidationCategoryPlatform:\n\t\t\treturn NSLocalizedStringFromTable(@\"\",@\"CodeSigning\",@\"\");\n\t\t\t\n\t\tcase IPSCodeSigningValidationCategoryTestFlight:\n\t\t\treturn NSLocalizedStringFromTable(@\"TestFlight\",@\"CodeSigning\",@\"\");\n\t\t\t\n\t\tcase IPSCodeSigningValidationCategoryDevelopment:\n\t\t\treturn NSLocalizedStringFromTable(@\"Development\",@\"CodeSigning\",@\"\");\n\t\t\t\n\t\tcase IPSCodeSigningValidationCategoryAppStore:\n\t\t\treturn NSLocalizedStringFromTable(@\"AppStore\",@\"CodeSigning\",@\"\");\n\t\t\t\n\t\tcase IPSCodeSigningValidationCategoryEnterprise:\n\t\t\treturn NSLocalizedStringFromTable(@\"Enterprise\",@\"CodeSigning\",@\"\");\n\t\t\t\n\t\tcase IPSCodeSigningValidationCategoryDeveloperID:\n\t\t\treturn NSLocalizedStringFromTable(@\"Developer ID\",@\"CodeSigning\",@\"\");\n\n\t\tcase IPSCodeSigningValidationCategoryNone:\n\t\t\treturn NSLocalizedStringFromTable(@\"None\",@\"CodeSigning\",@\"\");\n\t}\n\t\n\treturn @\"-\";\n}\n\n@end\n\n@interface CUICodeSigningInformationViewController ()\n{\n\tIPSCodeSigningInfo * _info;\n\t\n\tIBOutlet NSTextField * _identifierTextField;\n\tIBOutlet NSTextField * _teamIdentifierTextField;\n\t\n\tIBOutlet NSTextField * _validationCategoryTextField;\n\t\n\tIBOutlet NSTextField * _flagsRichTextField;\n\t\n\tIBOutlet NSTextField * _trustLevelTextField;\n}\n\n@end\n\n@implementation CUICodeSigningInformationViewController\n\n+ (NSDictionary <NSString *, NSNumber *> *)flagsToLocalizedNameDictionary\n{\n\tstatic dispatch_once_t onceToken;\n\tstatic NSDictionary <NSString *, NSNumber *> * sConversionDictionary=nil;\n\t\n\tdispatch_once(&onceToken, ^{\n\t\t\n\t\tNSURL * tResourceURL=[[NSBundle bundleForClass:self] URLForResource:@\"CodeSigningFlags\" withExtension:@\"plist\"];\n\t\tNSError * tError;\n\t\t\n\t\tsConversionDictionary=[[NSDictionary alloc] initWithContentsOfURL:tResourceURL error:&tError];\n\t\t\n\t\tif (sConversionDictionary==nil)\n\t\t\tNSLog(@\"Could not get the list of codesigning flags: %@\",tError);\n\t});\n\t\n\treturn sConversionDictionary;\n}\n\n- (instancetype)initWithCodeSigningInfo:(IPSCodeSigningInfo *)inCodeSigningInfo\n{\n\tself=[super init];\n\t\n\tif (self!=nil)\n\t{\n\t\t_info=[inCodeSigningInfo copy];\n\t}\n\t\n\treturn self;\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n\t_identifierTextField.stringValue=_info.identifier ?: @\"-\";\n\t_teamIdentifierTextField.stringValue=_info.teamIdentifier ?: @\"-\";\n\t_validationCategoryTextField.stringValue=_info.validationCategoryDisplayString;\n\t_flagsRichTextField.attributedStringValue=[self codeSigningFlagsDisplayString];\n\t_trustLevelTextField.stringValue=[NSString stringWithFormat:@\"0x%x\",_info.trustLevel];\n}\n\n#pragma mark -\n\n- (NSAttributedString *)codeSigningFlagsDisplayString\n{\n\tNSMutableAttributedString * tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:@\"\"];\n\t\n\tNSDictionary <NSString *, NSNumber *> *tFlagsToLocalizedNameDictionary = [CUICodeSigningInformationViewController flagsToLocalizedNameDictionary];\n\tstatic dispatch_once_t onceToken;\n\tstatic NSArray <NSString *> * sAllFlags=nil;\n\t\n\tdispatch_once(&onceToken, ^{\n\t\tsAllFlags=[tFlagsToLocalizedNameDictionary.allKeys sortedArrayUsingSelector:@selector(compare:)];\n\t});\n\t\n\tBOOL tFirstLine=YES;\n\tNSAttributedString * tNewLine=[[NSAttributedString alloc] initWithString:@\"\\n\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  attributes:nil];\n\tBOOL tShouldIncreaseContrast=NSWorkspace.sharedWorkspace.accessibilityDisplayShouldIncreaseContrast;\n\tNSFont * tSystemFont=[NSFont systemFontOfSize:NSFont.systemFontSize];;\n\tNSFont * tBoldSystemFont=[NSFont boldSystemFontOfSize:NSFont.systemFontSize];\n\t\n\tfor(NSString * tKey in sAllFlags)\n\t{\n\t\tif (tFirstLine==NO)\n\t\t\t[tMutableAttributedString appendAttributedString:tNewLine];\n\t\telse\n\t\t\ttFirstLine=NO;\n\t\t\n\t\tNSNumber * tFlagNumber=tFlagsToLocalizedNameDictionary[tKey];\n\t\tBOOL tIsFlagSet=((tFlagNumber.unsignedIntValue & _info.flags)!=0);\n\t\tNSDictionary * tAttributes;\n\t\t\n\t\tif (tIsFlagSet==YES)\n\t\t{\n\t\t\tNSFont * tFont;\n\t\t\t\n\t\t\tif (tShouldIncreaseContrast==YES)\n\t\t\t\ttFont = tBoldSystemFont;\n\t\t\telse\n\t\t\t\ttFont = tSystemFont;\n\t\t\t\n\t\t\ttAttributes = @{\n\t\t\t\t\t\t\tNSForegroundColorAttributeName : NSColor.labelColor,\n\t\t\t\t\t\t\tNSFontAttributeName : tFont\n\t\t\t\t\t\t\t};\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttAttributes = @{\n\t\t\t\t\t\t\tNSForegroundColorAttributeName : NSColor.tertiaryLabelColor,\n\t\t\t\t\t\t\tNSFontAttributeName : tSystemFont\n\t\t\t\t\t\t\t};\n\t\t}\n\t\t\n\t\tNSAttributedString * tAttributedLine=[[NSAttributedString alloc] initWithString:tKey\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t attributes:tAttributes];\n\t\t\n\t\t[tMutableAttributedString appendAttributedString:tAttributedLine];\n\t}\n\t\n\treturn tMutableAttributedString;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICodeType.h",
    "content": "//\n//  CUICodeType.h\n//  app_unexpectedly\n//\n//  Created by stephane on 09/03/2021.\n//  Copyright © 2021 Acme, Inc. All rights reserved.\n//\n\n#ifndef CUICodeType_h\n#define CUICodeType_h\n\ntypedef NS_ENUM(NSInteger, CUICodeType)\n{\n    CUICodeTypeUnknown=-1,\n    CUICodeTypeX86=0,\n    CUICodeTypeX86_64,\n    CUICodeTypeARM_64,\n    \n    CUICodeTypePPC=601,\n};\n\n#endif /* CUICodeType_h */\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewDockedThreadItem.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewThreadItem.h\"\n\n@interface CUICollectionViewDockedThreadItem : CUICollectionViewThreadItem\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewDockedThreadItem.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewDockedThreadItem.h\"\n\n#import \"CUILightTableDockedThreadView.h\"\n\n#import \"CUIThread.h\"\n\n@interface CUICollectionViewDockedThreadItem ()\n{\n    IBOutlet NSTextField * _threadNumberLabel;\n    IBOutlet NSTextField * _threadNumberBigLabel;\n    IBOutlet NSTextField * _threadNameLabel;\n}\n\n- (IBAction)openThreadView:(id)sender;\n\n@end\n\n@implementation CUICollectionViewDockedThreadItem\n\n- (void)setRepresentedObject:(id)inRepresentedObject\n{\n    [super setRepresentedObject:inRepresentedObject];\n    \n    CUILightTableDockedThreadView * tView=(CUILightTableDockedThreadView *)self.view;\n    \n    CUIThread * tThread=(CUIThread *)inRepresentedObject;\n    \n    tView.crashed=tThread.isCrashed;\n    \n    tView.applicationSpecificBacktrace=tThread.isApplicationSpecificBacktrace;\n    \n    self.imageView.image=(tThread.isCrashed==YES) ? [NSImage imageNamed:@\"crashedThread_Template\"] : [NSImage imageNamed:@\"thread_Template\"];\n    \n    \n    if (tThread.isApplicationSpecificBacktrace==YES)\n    {\n        _threadNumberBigLabel.stringValue=tThread.name;\n        \n        _threadNumberLabel.stringValue=@\"\";\n        _threadNameLabel.stringValue=@\"\";\n    }\n    else\n    {\n        if (tThread.name==nil)\n        {\n            _threadNumberBigLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Thread %ld\",@\"\"),tThread.number];\n            \n            _threadNumberLabel.stringValue=@\"\";\n            _threadNameLabel.stringValue=@\"\";\n        }\n        else\n        {\n            _threadNumberBigLabel.stringValue=@\"\";\n            \n            _threadNumberLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Thread %ld\",@\"\"),tThread.number];\n            _threadNameLabel.stringValue=tThread.name;\n        }\n    }\n}\n\n- (IBAction)openThreadView:(id)sender\n{\n    id tDataSource=self.collectionView.dataSource;\n    \n    if ([tDataSource respondsToSelector:@selector(openThread:)]==YES)\n        [tDataSource performSelector:@selector(openThread:) withObject:self.representedObject];\n    \n    // A COMPLETER\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewDockedThreadItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\" customClass=\"CUILightTableDockedThreadView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"565\" height=\"32\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"88O-JQ-GvW\">\n                    <rect key=\"frame\" x=\"33\" y=\"12\" width=\"498\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"center\" title=\"Big\" id=\"jsx-rw-i0j\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"pGy-ja-GHK\">\n                    <rect key=\"frame\" x=\"34\" y=\"18\" width=\"494\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"center\" title=\"Label\" id=\"xKX-Kl-es1\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"C6v-m3-QQ3\">\n                    <rect key=\"frame\" x=\"34\" y=\"5\" width=\"494\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"center\" title=\"name\" id=\"sHq-1f-30Q\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"vdO-IR-fI9\">\n                    <rect key=\"frame\" x=\"8\" y=\"6\" width=\"20\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"5uD-g0-zh7\"/>\n                </imageView>\n                <button verticalHuggingPriority=\"750\" id=\"PLO-tm-uaH\">\n                    <rect key=\"frame\" x=\"532\" y=\"4\" width=\"27\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"round\" bezelStyle=\"circular\" image=\"NSAddTemplate\" imagePosition=\"overlaps\" alignment=\"center\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"y1j-yK-UgW\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"openThreadView:\" target=\"hsE-Q5-loh\" id=\"Bcs-3F-eX2\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"47.5\" y=\"43\"/>\n        </customView>\n        <collectionViewItem id=\"hsE-Q5-loh\" customClass=\"CUICollectionViewDockedThreadItem\">\n            <connections>\n                <outlet property=\"_threadNameLabel\" destination=\"C6v-m3-QQ3\" id=\"WKB-Oa-vW9\"/>\n                <outlet property=\"_threadNumberBigLabel\" destination=\"88O-JQ-GvW\" id=\"JQm-3Q-Ok4\"/>\n                <outlet property=\"_threadNumberLabel\" destination=\"pGy-ja-GHK\" id=\"7jL-zS-5Yu\"/>\n                <outlet property=\"imageView\" destination=\"vdO-IR-fI9\" id=\"8S6-QA-lKM\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"GIY-zr-stA\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n    <resources>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewDockedThreadsLayout.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICollectionViewDockedThreadsLayout : NSCollectionViewLayout\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewDockedThreadsLayout.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewDockedThreadsLayout.h\"\n\n#define CUIColumnInterGapWidth  16.0\n\n#define CUICardMinimumWidth     150.0\n#define CUICardMaximumWidth     300.0\n\n#define CUICardHeight           32.0\n\n#define CUICardVerticalMargin   5.0\n\n@interface CUICollectionViewDockedThreadsLayout ()\n{\n    NSEdgeInsets _cachedEdgeInsets;\n    NSSize _cachedContentSize;\n    \n    CGFloat _cardWidth;\n}\n\n@end\n\n@implementation CUICollectionViewDockedThreadsLayout\n\n- (NSSize)itemSize\n{\n    NSSize tSize;\n    \n    tSize.width=_cardWidth;\n    tSize.height=CUICardHeight;\n    \n    return tSize;\n}\n\n- (NSCollectionViewScrollDirection)scrollDirection\n{\n    return NSCollectionViewScrollDirectionHorizontal;\n}\n\n- (void) prepareLayout\n{\n    if (self.collectionView==nil)\n        return;\n    \n    [super prepareLayout];\n    \n    NSView * tSuperView=self.collectionView.superview;\n    \n    NSRect tReferenceBounds=NSZeroRect;\n    \n    if ([tSuperView isKindOfClass:[NSClipView class]]==YES)\n    {\n        tReferenceBounds=tSuperView.bounds;\n    }\n    else\n    {\n        tReferenceBounds=self.collectionView.bounds;\n    }\n    \n    NSInteger tNumberOfItems = [self.collectionView numberOfItemsInSection:0];\n    \n    CGFloat tVisibleWidth=NSWidth(tReferenceBounds);\n    \n    _cardWidth=(tVisibleWidth-((tNumberOfItems+1) * CUIColumnInterGapWidth))/tNumberOfItems;\n    \n    if (_cardWidth<CUICardMinimumWidth)\n        _cardWidth=CUICardMinimumWidth;\n    else if (_cardWidth>CUICardMaximumWidth)\n        _cardWidth=CUICardMaximumWidth;\n    \n    //NSSize tSize=NSMakeSize((tNumberOfItems * _cardWidth) + ((tNumberOfItems+1) * CUIColumnInterGapWidth), NSHeight(self.collectionView.frame));\n    \n    //NSRect tBounds=tReferenceBounds;\n    \n    _cachedEdgeInsets.top=_cachedEdgeInsets.bottom=0.0;\n    _cachedEdgeInsets.left=5.0;\n    _cachedEdgeInsets.right=5.0;\n}\n\n- (NSSize)collectionViewContentSize\n{\n    NSView * tSuperView=self.collectionView.superview;\n    \n    NSRect tReferenceBounds=NSZeroRect;\n    \n    if ([tSuperView isKindOfClass:[NSClipView class]]==YES)\n    {\n        tReferenceBounds=tSuperView.bounds;\n    }\n    else\n    {\n        tReferenceBounds=self.collectionView.bounds;\n    }\n    \n    NSInteger tNumberOfItems = [self.collectionView numberOfItemsInSection:0];\n    \n    CGFloat tVisibleWidth=NSWidth(tReferenceBounds);\n    \n    CGFloat tTotalWidth=(tNumberOfItems * _cardWidth) + ((tNumberOfItems+1) * CUIColumnInterGapWidth);\n    \n    if (tTotalWidth<tVisibleWidth)\n        tTotalWidth=tVisibleWidth;\n    \n    _cachedContentSize=NSMakeSize(tTotalWidth, NSHeight(tReferenceBounds));\n    \n    \n    //NSLog(@\"%@ %@ %@\",NSStringFromSize(_cachedContentSize), NSStringFromRect(clipBounds),NSStringFromRect(self.collectionView.frame));\n    \n    return _cachedContentSize;\n}\n\n- (BOOL)shouldInvalidateLayoutForBoundsChange:(NSRect)newBounds\n{\n    return YES;\n}\n\n- (nullable NSCollectionViewLayoutAttributes *)layoutAttributesForDropTargetAtPoint:(NSPoint)inPoint\n{\n    CGFloat tX=inPoint.x;\n    \n    NSUInteger tIndex=0;\n    \n    if (tX>(_cachedEdgeInsets.left+CUIColumnInterGapWidth+_cardWidth*0.5))\n        tIndex=(tX-_cachedEdgeInsets.left-CUIColumnInterGapWidth-_cardWidth*0.5)/(CUIColumnInterGapWidth+_cardWidth)+1;\n    \n    NSCollectionViewLayoutAttributes* tAttributes = [NSCollectionViewLayoutAttributes layoutAttributesForInterItemGapBeforeIndexPath:[NSIndexPath indexPathForItem:tIndex inSection:0]];\n    \n    NSRect tFrame;\n    \n    tFrame.origin.x=_cachedEdgeInsets.left+CUIColumnInterGapWidth*0.5+tIndex * CUIColumnInterGapWidth + (tIndex * _cardWidth)-1;\n    tFrame.size.width=2;\n    \n    tFrame.origin.y=5;\n    tFrame.size.height=_cachedContentSize.height-10;\n    \n    tAttributes.frame=tFrame;\n    \n    return tAttributes;\n}\n\n- (NSArray<__kindof NSCollectionViewLayoutAttributes *> *) layoutAttributesForElementsInRect:(NSRect)rect\n{\n    NSInteger tNumberOfItems = [self.collectionView numberOfItemsInSection:0];\n    \n    NSMutableArray* tAttributesArray = [NSMutableArray arrayWithCapacity:tNumberOfItems];\n    \n    for (NSInteger tIndex=0; tIndex<tNumberOfItems; tIndex++)\n    {\n        NSCollectionViewLayoutAttributes * tAttribute=[self layoutAttributesForItemAtIndexPath:[NSIndexPath indexPathForItem:tIndex inSection:0]];\n        \n        //if (NSIntersectsRect(tAttribute.frame, rect)==YES)\n        [tAttributesArray addObject:tAttribute];\n    }\n    \n    return tAttributesArray;\n}\n\n-(NSCollectionViewLayoutAttributes*) layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    NSRect tItemFrame;\n    \n    tItemFrame.origin.x = (indexPath.item+1) * CUIColumnInterGapWidth + (indexPath.item * _cardWidth)+_cachedEdgeInsets.left;\n    tItemFrame.origin.y = CUICardVerticalMargin;\n    tItemFrame.size = NSMakeSize(_cardWidth,CUICardHeight);\n    \n    NSCollectionViewLayoutAttributes * tAttributes = [NSCollectionViewLayoutAttributes layoutAttributesForItemWithIndexPath:indexPath];\n    tAttributes.frame = tItemFrame;\n    \n    return tAttributes;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewRegisterItem.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUIRegisterItemViewAsValueDidChangeNotification;\n\n@interface CUICollectionViewRegisterItem : NSCollectionViewItem\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewRegisterItem.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewRegisterItem.h\"\n\n#import \"CUIRegister.h\"\n\n#import \"CUIRegisterLabel.h\"\n\n#define MACOS_BIGSUR_WIDTH_INSET   3.0\n\nNSString * const CUIRegisterItemViewAsValueDidChangeNotification=@\"CUIRegisterItemViewAsValueDidChangeNotification\";\n\n@interface CUICollectionViewRegisterItem () <CUIRegisterLabelDelegate>\n{\n    IBOutlet NSTextField * _registerNameLabel;\n    \n    IBOutlet CUIRegisterLabel * _registerValueLabel;\n    \n    IBOutlet NSPopUpButton* _registerValueDisplayFormatPopUpButton;\n}\n@end\n\n@implementation CUICollectionViewRegisterItem\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    if (NSAppKitVersionNumber>0/*2022.00*/)  // A VERIFIER\n    {\n        // Deal with macOS Big Sur different UI metrics\n    \n        NSRect tFrame=_registerValueDisplayFormatPopUpButton.frame;\n    \n        tFrame.origin.x+=MACOS_BIGSUR_WIDTH_INSET;\n        tFrame.size.width-=MACOS_BIGSUR_WIDTH_INSET;\n        \n        _registerValueDisplayFormatPopUpButton.frame=tFrame;\n    }\n}\n\n#pragma mark -\n\n- (NSString *)toolTipForRegisterName:(NSString *)inRegisterName\n{\n    if (inRegisterName==nil)\n        return nil;\n    \n    static NSDictionary * sRegistersExpandedNamesRegistry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sRegistersExpandedNamesRegistry=@{\n                                          @\"cpsr\":@\"Current Program Status Register\",\n                                          @\"cr2\":@\"Control Register 2\",\n                                          @\"esr\":@\"Exception Syndrome Register\",\n                                          @\"far\":@\"Fault Address Register\",\n                                          @\"lr\":@\"Link Register\",\n                                          @\"pc\":@\"Program Counter\",\n                                          @\"rbp\":@\"Register Base Pointer\",\n                                          @\"rdi\":@\"Register Destination Index\",\n                                          @\"rip\":@\"Instruction Pointer Register\",\n                                          @\"rsi\":@\"Register Source Index\",\n                                          @\"rsp\":@\"Register Stack Pointer\",\n                                          @\"sp\":@\"Stack Pointer\",\n                                          };\n        \n    });\n    \n    return sRegistersExpandedNamesRegistry[inRegisterName.lowercaseString];\n}\n\n- (void)setRepresentedObject:(id)inRepresentedObject\n{\n    [super setRepresentedObject:inRepresentedObject];\n    \n    if (inRepresentedObject==nil)\n        return;\n    \n    NSDictionary * tRepresentation=(NSDictionary *)inRepresentedObject;\n    \n    CUIRegister * tRegister=(CUIRegister *)tRepresentation[@\"register\"];\n    \n    if (tRegister.name==nil)\n    {\n        NSLog(@\"Missing register name\");\n        \n        return;\n    }\n    \n    _registerNameLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"%@:\",@\"\"),tRegister.name];\n    _registerNameLabel.toolTip=[self toolTipForRegisterName:tRegister.name];\n    \n    _registerValueLabel.delegate=self;\n    _registerValueLabel.registerValue=tRegister.value;\n    \n    CUIRegisterViewValueAsType tType=CUIRegisterViewValueAsHex;\n    \n    NSNumber * tRegisterViewAs=tRepresentation[@\"viewAs\"];\n    \n    if (tRegisterViewAs!=nil)\n        tType=[tRegisterViewAs unsignedIntegerValue];\n    \n    _registerValueLabel.viewValueAs=tType;\n}\n\n#pragma mark -\n\n- (void)registerLabel:(CUIRegisterLabel *)inRegisterLabel viewValueAsDidChange:(CUIRegisterViewValueAsType)inType\n{\n    NSDictionary * tRepresentation=(NSDictionary *)self.representedObject;\n    \n    CUIRegister * tRegister=(CUIRegister *)tRepresentation[@\"register\"];\n    \n    if (tRegister==nil)\n        return;\n    \n    // Post Notification\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIRegisterItemViewAsValueDidChangeNotification\n                                                      object:tRegister\n                                                    userInfo:@{\n                                                               @\"viewAs\":@(inType)\n                                                               }];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewThreadItem.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n\n@interface CUICollectionViewThreadItem : NSCollectionViewItem\n\n    @property (nonatomic) BOOL showsOffset;\n\n    @property (nonatomic) BOOL showsMemoryAddress;\n\n    @property (nonatomic) BOOL showsBinaryImageIdentifier;\n\n    @property CUICrashLog * crashLog;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewThreadItem.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewThreadItem.h\"\n\n@interface CUICollectionViewThreadItem ()\n\n@end\n\n@implementation CUICollectionViewThreadItem\n\n- (void)setShowsOffset:(BOOL)aBool\n{\n    _showsOffset=aBool;\n}\n\n- (void)setShowsMemoryAddress:(BOOL)aBool\n{\n}\n\n- (void)setShowsBinaryImageIdentifier:(BOOL)aBool\n{\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewVisibleThreadItem.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewThreadItem.h\"\n\n@interface CUICollectionViewVisibleThreadItem : CUICollectionViewThreadItem\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewVisibleThreadItem.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewVisibleThreadItem.h\"\n\n#import \"CUILightTableVisibleThreadView.h\"\n\n#import \"CUIThread.h\"\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUICallsSelection.h\"\n\n@interface CUICollectionViewVisibleThreadItem () <NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTextField * _threadNumberLabel;\n    IBOutlet NSTextField * _threadNumberBigLabel;\n    IBOutlet NSTextField * _threadNameLabel;\n    \n    IBOutlet NSTableView * _backtraceTableView;\n}\n\n- (IBAction)minimizeThreadView:(id)sender;\n\n@end\n\n@implementation CUICollectionViewVisibleThreadItem\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.imageView.cell.backgroundStyle=NSBackgroundStyleEmphasized;\n    \n    _threadNumberBigLabel.cell.backgroundStyle=NSBackgroundStyleEmphasized;\n    \n    _threadNumberLabel.cell.backgroundStyle=NSBackgroundStyleEmphasized;\n    _threadNameLabel.cell.backgroundStyle=NSBackgroundStyleEmphasized;\n    \n    NSScrollView * tScrollView=_backtraceTableView.enclosingScrollView;\n    \n    tScrollView.wantsLayer=YES;\n    tScrollView.layer.cornerRadius=8.0;\n    //tScrollView.layer.maskedCorners=kCALayerMinXMinYCorner|kCALayerMaxXMinYCorner;\n    \n    tScrollView.contentView.wantsLayer=YES;\n    tScrollView.contentView.layer.cornerRadius=8.0;\n    //tScrollView.contentView.layer.maskedCorners=kCALayerMinXMinYCorner|kCALayerMaxXMinYCorner;\n}\n\n#pragma mark -\n\n- (void)setRepresentedObject:(id)inRepresentedObject\n{\n    [super setRepresentedObject:inRepresentedObject];\n    \n    CUIThread * tThread=(CUIThread *)inRepresentedObject;\n    \n    CUILightTableVisibleThreadView * tView=(CUILightTableVisibleThreadView *)self.view;\n    \n    tView.crashed=tThread.isCrashed;\n    \n    tView.applicationSpecificBacktrace=tThread.isApplicationSpecificBacktrace;\n    \n    self.imageView.image=(tThread.isCrashed==YES) ? [NSImage imageNamed:@\"crashedThread_Template\"] : [NSImage imageNamed:@\"thread_Template\"];\n    \n    \n    if (tThread.isApplicationSpecificBacktrace==YES)\n    {\n        _threadNumberBigLabel.stringValue=tThread.name;\n        \n        _threadNumberLabel.stringValue=@\"\";\n        _threadNameLabel.stringValue=@\"\";\n    }\n    else\n    {\n        if (tThread.name==nil)\n        {\n            _threadNumberBigLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Thread %ld\",@\"\"),tThread.number];\n            \n            _threadNumberLabel.stringValue=@\"\";\n            _threadNameLabel.stringValue=@\"\";\n        }\n        else\n        {\n            _threadNumberBigLabel.stringValue=@\"\";\n            \n            _threadNumberLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Thread %ld\",@\"\"),tThread.number];\n            _threadNameLabel.stringValue=tThread.name;\n        }\n    }\n    \n    [_backtraceTableView reloadData];\n}\n\n- (void)setHighlightState:(NSCollectionViewItemHighlightState)newHighlightState\n{\n    [super setHighlightState:newHighlightState];\n    \n    //((MyView *)self.view).highlightState=newHighlightState;\n}\n\n- (void)setSelected:(BOOL)inSelected\n{\n    [super setSelected:inSelected];\n    \n    \n    \n    //((MyView *)self.view).selected=inSelected;\n}\n\n- (void)setShowsOffset:(BOOL)aBool\n{\n    super.showsOffset=aBool;\n    \n    [_backtraceTableView reloadData];\n}\n\n#pragma mark -\n\n- (NSArray *)draggingImageComponents\n{\n    NSView *itemRootView = self.view;\n    NSRect itemBounds = itemRootView.bounds;\n    NSBitmapImageRep *bitmap = [itemRootView bitmapImageRepForCachingDisplayInRect:itemBounds];\n    unsigned char *bitmapData = bitmap.bitmapData;\n    if (bitmapData) {\n        bzero(bitmapData, bitmap.bytesPerRow * bitmap.pixelsHigh);\n    }\n    \n    [itemRootView cacheDisplayInRect:itemBounds toBitmapImageRep:bitmap];\n    NSImage *image = [[NSImage alloc] initWithSize:[bitmap size]];\n    [image addRepresentation:bitmap];\n    \n    NSDraggingImageComponent *component = [[NSDraggingImageComponent alloc] initWithKey:NSDraggingImageComponentIconKey];\n    component.frame = itemBounds;\n    component.contents = image;\n    \n    return [NSArray arrayWithObject:component];\n}\n\n#pragma mark -\n\n- (IBAction)minimizeThreadView:(id)sender\n{\n    id tDataSource=self.collectionView.dataSource;\n    \n    if ([tDataSource respondsToSelector:@selector(minimizeThread:)]==YES)\n        [tDataSource performSelector:@selector(minimizeThread:) withObject:self.representedObject];\n    \n    // A COMPLETER\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n    CUIThread * tThread=(CUIThread *)self.representedObject;\n    \n    if (tThread==nil)\n        return 0;\n    \n    return tThread.callStackBacktrace.stackFrames.count;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    if (inTableView!=_backtraceTableView)\n        return nil;\n    \n    CUIThread * tThread=(CUIThread *)self.representedObject;\n    \n    CUIStackFrame * tCall=(CUIStackFrame *)tThread.callStackBacktrace.stackFrames[inRow];\n    \n    NSString * tTableColumnIdentifier=inTableColumn.identifier;\n    NSTableCellView * tTableCellView=[inTableView makeViewWithIdentifier:tTableColumnIdentifier owner:self];\n    \n    if ([tTableColumnIdentifier isEqualToString:@\"symbol\"]==YES)\n    {\n        NSMutableString * tCallLine=[NSMutableString stringWithFormat:@\"%lu \",tCall.index];\n        \n        [tCallLine appendString:tCall.symbol];\n        \n        if (self.showsOffset==YES)\n        {\n            [tCallLine appendFormat:@\" + %lu\",tCall.byteOffset];\n        }\n        \n        tTableCellView.textField.stringValue=tCallLine;\n        \n        NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n        \n        BOOL tIsUserCode=NO;\n        \n        CUICrashLogBinaryImages * tBinaryImages=self.crashLog.binaryImages;\n        \n        CUIBinaryImage * tBinaryImage=[tBinaryImages binaryImageWithIdentifierOrName:tBinaryImageIdentifier identifier:&tBinaryImageIdentifier];\n        \n        if (tBinaryImage!=nil)\n        {\n            NSString * tPath=tBinaryImage.path;\n            \n            if ([tPath isEqualToString:self.crashLog.header.executablePath]==YES)\n                tIsUserCode=YES;\n        }\n        \n        if (tIsUserCode==NO)\n            tIsUserCode=[tBinaryImages isUserCodeAtMemoryAddress:tCall.machineInstructionAddress inBinaryImage:tBinaryImageIdentifier];\n        \n        if (tIsUserCode==YES)\n        {\n            tTableCellView.imageView.image=[NSImage imageNamed:@\"call-usercode\"];\n            tTableCellView.textField.textColor=[NSColor labelColor];\n        }\n        else\n        {\n            tTableCellView.imageView.image=tCall.binaryImageIcon;\n            \n            tTableCellView.textField.textColor=[NSColor secondaryLabelColor];\n        }\n    }\n    else if ([tTableColumnIdentifier isEqualToString:@\"address\"]==YES)\n    {\n        tTableCellView.textField.stringValue=[NSString stringWithFormat:@\"0x%012lx\",tCall.machineInstructionAddress];\n    }\n    else if ([tTableColumnIdentifier isEqualToString:@\"binary\"]==YES)\n    {\n        tTableCellView.textField.stringValue=[NSString stringWithFormat:@\"%@\",tCall.binaryImageIdentifier];\n    }\n    \n    /*if ([tCall.binaryImageIdentifier isEqualToString:self.crashLog.header.bundleIdentifier]==YES)\n    {\n        tTableCellView.textField.textColor=[NSColor labelColor];\n    }\n    else\n    {\n        tTableCellView.textField.textColor=[NSColor secondaryLabelColor];\n    }*/\n    \n    return tTableCellView;\n}\n\n- (void)tableViewSelectionDidChange:(NSNotification *)inNotification\n{\n    NSIndexSet * tIndexSet=[_backtraceTableView selectedRowIndexes];\n    \n    NSMutableSet * tMutableSet=[NSMutableSet set];\n    \n    CUIThread * tThread=(CUIThread *)self.representedObject;\n    \n    [tIndexSet enumerateIndexesUsingBlock:^(NSUInteger bIndex, BOOL * bOutStop) {\n        \n        CUIStackFrame * tCall=(CUIStackFrame *)tThread.callStackBacktrace.stackFrames[bIndex];\n        \n        [tMutableSet addObject:tCall];\n        \n    }];\n    \n    [CUICallsSelection sharedCallsSelection].calls=tMutableSet;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewVisibleThreadItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\" customClass=\"CUILightTableVisibleThreadView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"387\" height=\"522\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView borderType=\"none\" autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"hKC-cD-zr3\">\n                    <rect key=\"frame\" x=\"5\" y=\"5\" width=\"377\" height=\"485\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" copiesOnScroll=\"NO\" id=\"qBn-VG-yYh\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"377\" height=\"485\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"jrz-6X-cDx\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"377\" height=\"485\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"symbol\" width=\"374\" minWidth=\"40\" maxWidth=\"1000\" id=\"2Na-2E-rmR\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"XOM-Zz-oxv\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"PBl-C8-OwF\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"374\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"AnD-W5-SbI\">\n                                                        <rect key=\"frame\" x=\"23\" y=\"1\" width=\"344\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Quv-Ex-PCd\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"dxh-pg-3U5\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"0.0\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"p4b-ht-Es7\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"dxh-pg-3U5\" id=\"JoW-MS-ObD\"/>\n                                                    <outlet property=\"textField\" destination=\"AnD-W5-SbI\" id=\"qXb-I2-G8H\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"5Hw-0P-vch\" id=\"up3-nF-D5P\"/>\n                                    <outlet property=\"delegate\" destination=\"5Hw-0P-vch\" id=\"Yjh-z1-9Sh\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                        <nil key=\"backgroundColor\"/>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"FPZ-To-2gi\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"F5R-kC-ZbC\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"BVV-cm-yaM\">\n                    <rect key=\"frame\" x=\"354\" y=\"490\" width=\"27\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"round\" bezelStyle=\"circular\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Xs0-3g-LI6\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"minimizeThreadView:\" target=\"5Hw-0P-vch\" id=\"gId-sR-0Eu\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"FrN-tD-1YM\">\n                    <rect key=\"frame\" x=\"34\" y=\"505\" width=\"319\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"center\" title=\"Label\" id=\"JNp-va-sOg\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Zz2-fW-scF\">\n                    <rect key=\"frame\" x=\"33\" y=\"499\" width=\"319\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"center\" title=\"Big\" id=\"Lec-xn-GkU\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"bR5-ng-6eV\">\n                    <rect key=\"frame\" x=\"34\" y=\"492\" width=\"319\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"center\" title=\"name\" id=\"dIh-ua-zcE\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"eYA-ze-24b\">\n                    <rect key=\"frame\" x=\"11\" y=\"494\" width=\"20\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"NQz-5e-nuL\"/>\n                </imageView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-8.5\" y=\"-58\"/>\n        </customView>\n        <collectionViewItem id=\"5Hw-0P-vch\" customClass=\"CUICollectionViewVisibleThreadItem\">\n            <connections>\n                <outlet property=\"_backtraceTableView\" destination=\"jrz-6X-cDx\" id=\"DpR-Dn-vaq\"/>\n                <outlet property=\"_threadNameLabel\" destination=\"bR5-ng-6eV\" id=\"s2f-ba-7bJ\"/>\n                <outlet property=\"_threadNumberBigLabel\" destination=\"Zz2-fW-scF\" id=\"gSj-eM-eoc\"/>\n                <outlet property=\"_threadNumberLabel\" destination=\"FrN-tD-1YM\" id=\"NlW-XA-Jp1\"/>\n                <outlet property=\"imageView\" destination=\"eYA-ze-24b\" id=\"vXG-7e-DMp\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"uMu-Da-wmW\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n    <resources>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewVisibleThreadsLayout.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICollectionViewVisibleThreadsLayout : NSCollectionViewLayout\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICollectionViewVisibleThreadsLayout.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICollectionViewVisibleThreadsLayout.h\"\n\n#define CUIColumnInterGapWidth  16.0\n\n#define CUICardMinimumWidth     300.0\n#define CUICardMaximumWidth     600.0\n\n#define CUICardVerticalMargin   5.0\n\n@interface CUICollectionViewVisibleThreadsLayout ()\n{\n    NSEdgeInsets _cachedEdgeInsets;\n    NSSize _cachedContentSize;\n    \n    CGFloat _cardWidth;\n    CGFloat _cardHeight;\n}\n\n@end\n\n@implementation CUICollectionViewVisibleThreadsLayout\n\n- (NSSize)itemSize\n{\n    NSSize tSize;\n    \n    tSize.width=_cardWidth;\n    tSize.height=_cardHeight;\n    \n    return tSize;\n}\n\n- (NSCollectionViewScrollDirection)scrollDirection\n{\n    return NSCollectionViewScrollDirectionHorizontal;\n}\n\n- (void) prepareLayout\n{\n    if (self.collectionView==nil)\n        return;\n    \n    [super prepareLayout];\n    \n    NSView * tSuperView=self.collectionView.superview;\n    \n    NSRect tReferenceBounds=NSZeroRect;\n    \n    if ([tSuperView isKindOfClass:[NSClipView class]]==YES)\n    {\n        tReferenceBounds=tSuperView.bounds;\n    }\n    else\n    {\n        tReferenceBounds=self.collectionView.bounds;\n    }\n    \n    NSInteger tNumberOfItems = [self.collectionView numberOfItemsInSection:0];\n    \n    CGFloat tVisibleWidth=NSWidth(tReferenceBounds);\n    \n    _cardWidth=(tVisibleWidth-((tNumberOfItems+1) * CUIColumnInterGapWidth))/tNumberOfItems;\n    \n    if (_cardWidth<CUICardMinimumWidth)\n        _cardWidth=CUICardMinimumWidth;\n    else if (_cardWidth>CUICardMaximumWidth)\n        _cardWidth=CUICardMaximumWidth;\n    \n    _cardHeight=NSHeight(tReferenceBounds)-2*CUICardVerticalMargin;\n    \n    NSSize tSize=NSMakeSize((tNumberOfItems * _cardWidth) + ((tNumberOfItems+1) * CUIColumnInterGapWidth), NSHeight(self.collectionView.frame));\n    \n    NSRect tBounds=tReferenceBounds;\n    \n    CGFloat tHDiff=tBounds.size.width-tSize.width;\n    \n    if (tHDiff>0)\n    {\n        _cachedEdgeInsets.top=_cachedEdgeInsets.bottom=0.0;\n        _cachedEdgeInsets.left=round(tHDiff*0.5);\n        _cachedEdgeInsets.right=tHDiff-_cachedEdgeInsets.left;\n        \n        _cachedContentSize.width+=tHDiff;\n    }\n    else\n    {\n        _cachedEdgeInsets=NSEdgeInsetsZero;\n    }\n}\n\n- (NSSize)collectionViewContentSize\n{\n    NSView * tSuperView=self.collectionView.superview;\n    \n    NSRect tReferenceBounds=NSZeroRect;\n    \n    if ([tSuperView isKindOfClass:[NSClipView class]]==YES)\n    {\n        tReferenceBounds=tSuperView.bounds;\n    }\n    else\n    {\n        tReferenceBounds=self.collectionView.bounds;\n    }\n    \n    NSInteger tNumberOfItems = [self.collectionView numberOfItemsInSection:0];\n    \n    CGFloat tVisibleWidth=NSWidth(tReferenceBounds);\n    \n    /*CGFloat _cardWidth=(tVisibleWidth-((tNumberOfItems+1) * CUIColumnInterGapWidth))/tNumberOfItems;\n    \n    if (_cardWidth<CUICardMinimumWidth)\n        _cardWidth=CUICardMinimumWidth;\n    else if (_cardWidth>CUICardMaximumWidth)\n        _cardWidth=CUICardMaximumWidth;*/\n    \n    CGFloat tTotalWidth=(tNumberOfItems * _cardWidth) + ((tNumberOfItems+1) * CUIColumnInterGapWidth);\n    \n    if (tTotalWidth<tVisibleWidth)\n        tTotalWidth=tVisibleWidth;\n    \n    _cachedContentSize=NSMakeSize(tTotalWidth, NSHeight(tReferenceBounds));\n    \n    \n    //NSLog(@\"%@ %@ %@\",NSStringFromSize(_cachedContentSize), NSStringFromRect(clipBounds),NSStringFromRect(self.collectionView.frame));\n    \n    return _cachedContentSize;\n}\n\n- (BOOL)shouldInvalidateLayoutForBoundsChange:(NSRect)newBounds\n{\n    return YES;\n}\n\n- (nullable NSCollectionViewLayoutAttributes *)layoutAttributesForDropTargetAtPoint:(NSPoint)inPoint\n{\n    CGFloat tX=inPoint.x;\n    \n    NSUInteger tIndex=0;\n    \n    if (tX>(_cachedEdgeInsets.left+CUIColumnInterGapWidth+_cardWidth*0.5))\n        tIndex=(tX-_cachedEdgeInsets.left-CUIColumnInterGapWidth-_cardWidth*0.5)/(CUIColumnInterGapWidth+_cardWidth)+1;\n    \n    NSCollectionViewLayoutAttributes* tAttributes = [NSCollectionViewLayoutAttributes layoutAttributesForInterItemGapBeforeIndexPath:[NSIndexPath indexPathForItem:tIndex inSection:0]];\n    \n    NSRect tFrame;\n    \n    tFrame.origin.x=_cachedEdgeInsets.left+CUIColumnInterGapWidth*0.5+tIndex * CUIColumnInterGapWidth + (tIndex * _cardWidth)-1;\n    tFrame.size.width=2;\n    \n    tFrame.origin.y=30;\n    tFrame.size.height=_cachedContentSize.height-60;\n    \n    tAttributes.frame=tFrame;\n    \n    return tAttributes;\n}\n\n- (NSArray<__kindof NSCollectionViewLayoutAttributes *> *) layoutAttributesForElementsInRect:(NSRect)rect\n{\n    NSInteger tNumberOfItems = [self.collectionView numberOfItemsInSection:0];\n    \n    NSMutableArray* tAttributesArray = [NSMutableArray arrayWithCapacity:tNumberOfItems];\n    \n    for (NSInteger tIndex=0; tIndex<tNumberOfItems; tIndex++)\n    {\n        NSCollectionViewLayoutAttributes * tAttribute=[self layoutAttributesForItemAtIndexPath:[NSIndexPath indexPathForItem:tIndex inSection:0]];\n        \n        //if (NSIntersectsRect(tAttribute.frame, rect)==YES)\n        [tAttributesArray addObject:tAttribute];\n    }\n    \n    return tAttributesArray;\n}\n\n-(NSCollectionViewLayoutAttributes*) layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    NSRect tItemFrame;\n    \n    tItemFrame.origin.x = (indexPath.item+1) * CUIColumnInterGapWidth + (indexPath.item * _cardWidth)+_cachedEdgeInsets.left;\n    tItemFrame.origin.y = CUICardVerticalMargin;\n    tItemFrame.size = NSMakeSize(_cardWidth,_cardHeight);\n    \n    NSCollectionViewLayoutAttributes * tAttributes = [NSCollectionViewLayoutAttributes layoutAttributesForItemWithIndexPath:indexPath];\n    tAttributes.frame = tItemFrame;\n    \n    return tAttributes;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIContentBox.h",
    "content": "/*\n Copyright (c) 2018, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIContentBox : NSBox\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIContentBox.m",
    "content": "/*\n Copyright (c) 2018, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIContentBox.h\"\n\n@implementation CUIContentBox\n\n- (void)awakeFromNib\n{\n\tself.boxType=NSBoxCustom;\n\t\n\tself.fillColor=(NSAppKitVersionNumber>=NSAppKitVersionNumber10_14) ? [NSColor controlBackgroundColor] : [NSColor whiteColor];\n\t\n\tif (self.borderType!=NSLineBorder)\n\t{\n\t\tself.borderType=NSNoBorder;\n\t}\n\telse\n\t{\n\t\tself.borderColor=[NSColor containerBorderColor];\n\t}\n\t\n\tself.contentViewMargins=NSZeroSize;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIContentsViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUICrashLogContentsViewController.h\"\n\n#import \"CUIKeyViews.h\"\n\n@interface CUIContentsViewController : NSViewController <CUIKeyViews>\n\n    @property (nonatomic) CUIPresentationMode presentationMode;\n\n    @property (nonatomic,readonly) BOOL isEmptySelection;\n\n    @property (nonatomic,getter=isBottomViewCollapsed) BOOL bottomViewCollapsed;\n\n\n- (IBAction)showHideBottomView:(id)sender;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIContentsViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIContentsViewController.h\"\n\n#import \"CUIPresentationTextNavigationViewController.h\"\n\n#import \"CUICenteredLabelViewController.h\"\n\n#import \"CUICrashLogContentsViewController.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n@interface CUIContentsViewController () <NSMenuItemValidation>\n{\n    IBOutlet NSView * _topView;\n    \n    IBOutlet NSView * _contentsView;\n    \n    CUICenteredLabelViewController * _emptySelectionViewController;\n    \n    CUICrashLogContentsViewController * _contentsViewController;\n    \n    NSViewController * _currentController;\n    \n    CUIPresentationTextNavigationViewController * _navigationViewController;\n}\n\n    @property (nonatomic,copy) CUICrashLogsSelection * selection;\n\n@end\n\n@implementation CUIContentsViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _emptySelectionViewController=[CUICenteredLabelViewController new];\n        _emptySelectionViewController.label=NSLocalizedString(@\"No Selection\",@\"\");\n        _emptySelectionViewController.verticalOffset=24.0;\n        \n        _contentsViewController=[CUICrashLogContentsViewController new];\n        \n        // Register for notifications\n        \n        [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:nil];\n        \n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUIContentsViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _navigationViewController=[CUIPresentationTextNavigationViewController new];\n    \n    _navigationViewController.view.frame=_topView.bounds;\n    \n    [_topView addSubview:_navigationViewController.view];\n    \n    self.selection=[CUICrashLogsSelection new];\n}\n\n#pragma mark - NSObject\n\n- (id)forwardingTargetForSelector:(SEL)aSelector\n{\n    if (_currentController!=_contentsViewController)\n        return nil;\n    \n    return _contentsViewController;\n}\n\n- (BOOL)respondsToSelector:(SEL)aSelector\n{\n    BOOL tResponds=[super respondsToSelector:aSelector];\n    \n    if (tResponds==YES)\n        return YES;\n    \n    if (_currentController!=_contentsViewController)\n        return NO;\n    \n    NSString * tSelectorName=NSStringFromSelector(aSelector);\n    \n    if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO && [tSelectorName isEqualToString:@\"performTextFinderAction:\"]==NO)\n        return NO;\n    \n    tResponds=[_contentsViewController respondsToSelector:aSelector];\n    \n    if (tResponds==YES)\n        return YES;\n    \n    return NO;\n}\n\n#pragma mark -\n\n- (BOOL)isBottomViewCollapsed\n{\n    return _contentsViewController.isBottomViewCollapsed;\n}\n\n- (CUIPresentationMode)presentationMode\n{\n    if (_currentController==nil || _currentController!=_contentsViewController)\n        return CUIPresentationModeUnknown;\n    \n    return _contentsViewController.presentationMode;\n}\n\n- (void)setPresentationMode:(CUIPresentationMode)inPresentationMode\n{\n    if (_currentController==nil || _currentController!=_contentsViewController)\n        return;\n    \n    _contentsViewController.presentationMode=inPresentationMode;\n    \n    _navigationViewController.presentationViewController=_contentsViewController.presentationViewController;\n}\n\n- (BOOL)isEmptySelection\n{\n    return (_selection.crashLogs.count==0);\n}\n\n- (void)setSelection:(CUICrashLogsSelection *)inSelection\n{\n    if ([_selection isEqual:inSelection]==YES)\n        return;\n    \n    _selection=[inSelection copy];\n    \n    NSViewController * tNewController=nil;\n    \n    if (_selection.crashLogs.count==0)\n    {\n        tNewController=_emptySelectionViewController;\n        \n        _navigationViewController.presentationViewController=nil;\n    }\n    else\n    {\n        tNewController=_contentsViewController;\n    }\n    \n    if (_currentController!=tNewController)\n    {\n        [_currentController.view removeFromSuperview];\n    \n        tNewController.view.frame=_contentsView.bounds;\n    \n        [_contentsView addSubview:tNewController.view];\n    }\n    \n    _currentController=tNewController;\n    \n    \n    \n    if (_selection.crashLogs.count!=0)\n    {\n        _contentsViewController.crashLog=_selection.crashLogs.firstObject;\n        \n        _navigationViewController.presentationViewController=_contentsViewController.presentationViewController;\n    }\n}\n\n- (IBAction)showHideBottomView:(id)sender\n{\n    if (_contentsViewController.presentationMode!=CUIPresentationModeOutline)\n        return;\n    \n    [_contentsViewController showHideBottomView:sender];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (_currentController!=_contentsViewController)\n        return NO;\n    \n    if ([super respondsToSelector:tAction]==NO)\n    {\n        NSString * tSelectorName=NSStringFromSelector(tAction);\n        \n        if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO && [tSelectorName isEqualToString:@\"performTextFinderAction:\"]==NO)\n            return NO;\n        \n        if ([_contentsViewController respondsToSelector:tAction]==YES)\n            return [_contentsViewController validateMenuItem:inMenuItem];\n        \n        return NO;\n    }\n    \n    return YES;\n}\n\n#pragma mark - CUIKeyViews\n\n- (NSView *)firstKeyView\n{\n    if (_currentController==nil || _currentController==_emptySelectionViewController)\n        return nil;\n    \n    return _contentsViewController.firstKeyView;\n}\n\n- (NSView *)lastKeyView\n{\n    if (_currentController==nil || _currentController==_emptySelectionViewController)\n        return nil;\n    \n    return _contentsViewController.lastKeyView;\n}\n\n#pragma mark - Notifications\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogsSelection * tSelection=inNotification.object;\n    \n    if (tSelection==nil)\n        return;\n    \n    self.selection=tSelection;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIContentsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIContentsViewController\">\n            <connections>\n                <outlet property=\"_contentsView\" destination=\"q7u-cY-NOg\" id=\"0Db-a5-lkR\"/>\n                <outlet property=\"_topView\" destination=\"sgn-Xg-Z0p\" id=\"Akm-SC-gPD\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"933\" height=\"710\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <customView id=\"sgn-Xg-Z0p\" customClass=\"CUINavigationView\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"685\" width=\"933\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </customView>\n                <customView id=\"q7u-cY-NOg\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"933\" height=\"685\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"61.5\" y=\"-72\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashDataTransform.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIReportThemedTransform.h\"\n\n@interface CUICrashDataTransform : CUIReportThemedTransform\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashDataTransform.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashDataTransform.h\"\n\n#import \"CUIApplicationPreferences.h\"\n#import \"CUIApplicationPreferences+Themes.h\"\n\n#import \"CUICrashLogBinaryImages.h\"\n\n#import \"CUIBinaryImageUtility.h\"\n\n#import \"CUIThemesManager.h\"\n#import \"CUIThemeItemsGroup+UI.h\"\n\n#ifndef __DISABLE_SYMBOLICATION_\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUISymbolicationManager.h\"\n\n#import \"CUISymbolicationDataFormatter.h\"\n#endif\n\n#import \"CUICrashLogExceptionInformation+QuickHelp.h\"\n\n@interface CUICrashLog (Private)\n\n    // Sections ranges\n\n    @property (readonly) NSRange headerRange;\n\n    @property (readonly) NSRange exceptionInformationRange;\n    @property (readonly) NSRange diagnosticMessagesRange;\n\n    @property (readonly) NSRange backtracesRange;\n\n    @property (readonly) NSRange threadStateRange;\n\n    @property (readonly) NSRange binaryImagesRange;\n\n@end\n\n@interface CUIDataTransform (Private)\n\n- (void)setOutput:(NSAttributedString *)inOutput;\n\n@end\n\n@implementation CUICrashDataTransform\n\n- (CUICrashLog *)crashlog\n{\n    return self.input;\n}\n\n#pragma mark -\n\n- (BOOL)transform\n{\n    if ([super transform]==NO)\n        return NO;\n    \n    CUICrashLog * tCrashLog=self.input;\n    \n    if ([tCrashLog isKindOfClass:CUIRawCrashLog.class]==NO)\n    {\n        // A COMPLETER\n        \n        return NO;\n    }\n    \n    [self updatesCachedAttributes];\n    \n    if ([tCrashLog isMemberOfClass:CUIRawCrashLog.class]==YES)\n    {\n        NSAttributedString * tAttributedString=[[NSAttributedString alloc] initWithString:tCrashLog.rawText\n                                                                               attributes:self.plainTextAttributes];\n        \n        self.output=tAttributedString;\n        \n        return YES;\n    }\n    \n    if ([tCrashLog isMemberOfClass:CUICrashLog.class]==NO)\n    {\n        // A COMPLETER\n        \n        return NO;\n    }\n    \n    self.processPath=tCrashLog.header.executablePath;\n    \n    NSMutableArray * tLines=[NSMutableArray array];\n    \n    [tCrashLog.rawText enumerateLinesUsingBlock:^(NSString * bLine, BOOL * bOutStop) {\n        \n        [tLines addObject:bLine];\n    }];\n    \n    NSMutableArray * tMutableArray=[tLines mutableCopy];\n    \n    \n    if (tCrashLog.binaryImagesRange.location!=NSNotFound)\n    {\n        if ((self.displaySettings.visibleSections & CUIDocumentBinaryImagesSection)==0)\n        {\n            [tMutableArray removeObjectsInRange:tCrashLog.binaryImagesRange];\n        }\n        else\n        {\n            NSArray * tBacktracesLines=[tLines subarrayWithRange:tCrashLog.binaryImagesRange];\n            \n            NSArray * tFilteredLines=[self processedBinaryImagesSectionLines:tBacktracesLines reportVersion:tCrashLog.reportVersion error:NULL];\n            \n            [tMutableArray removeObjectsInRange:tCrashLog.binaryImagesRange];\n            \n            [tMutableArray insertObjects:tFilteredLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tCrashLog.binaryImagesRange.location,tFilteredLines.count)]];\n        }\n    }\n    \n    if (tCrashLog.threadStateRange.location!=NSNotFound)\n    {\n        if ((self.displaySettings.visibleSections & CUIDocumentThreadStateSection)==0)\n        {\n            [tMutableArray removeObjectsInRange:tCrashLog.threadStateRange];\n        }\n        else\n        {\n            NSArray * tThreadStateLines=[tLines subarrayWithRange:tCrashLog.threadStateRange];\n            \n            NSArray * tFilteredLines=[self processedThreadStateSectionLines:tThreadStateLines error:NULL];\n            \n            [tMutableArray removeObjectsInRange:tCrashLog.threadStateRange];\n            \n            [tMutableArray insertObjects:tFilteredLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tCrashLog.threadStateRange.location,tFilteredLines.count)]];\n        }\n    }\n    \n    if (tCrashLog.backtracesRange.location!=NSNotFound)\n    {\n        if ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==0)\n        {\n            [tMutableArray removeObjectsInRange:tCrashLog.backtracesRange];\n        }\n        else\n        {\n            NSArray * tBacktracesLines=[tLines subarrayWithRange:tCrashLog.backtracesRange];\n            \n            NSArray * tFilteredLines=[self processedBacktracesSectionLines:tBacktracesLines error:NULL];\n            \n            [tMutableArray removeObjectsInRange:tCrashLog.backtracesRange];\n            \n            [tMutableArray insertObjects:tFilteredLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tCrashLog.backtracesRange.location,tFilteredLines.count)]];\n        }\n    }\n    \n    \n    if (tCrashLog.diagnosticMessagesRange.location!=NSNotFound)\n    {\n        if ((self.displaySettings.visibleSections & CUIDocumentDiagnosticMessagesSection)==0)\n        {\n            [tMutableArray removeObjectsInRange:tCrashLog.diagnosticMessagesRange];\n        }\n        else\n        {\n            NSArray * tDiagnosticMessagesLines=[tLines subarrayWithRange:tCrashLog.diagnosticMessagesRange];\n            \n            NSArray * tFilteredLines=[self processedDiagnosticMessagesSectionLines:tDiagnosticMessagesLines error:NULL];\n            \n            [tMutableArray removeObjectsInRange:tCrashLog.diagnosticMessagesRange];\n            \n            [tMutableArray insertObjects:tFilteredLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tCrashLog.diagnosticMessagesRange.location,tFilteredLines.count)]];\n        }\n    }\n    \n    \n    if (tCrashLog.exceptionInformationRange.location!=NSNotFound)\n    {\n        if ((self.displaySettings.visibleSections & CUIDocumentExceptionInformationSection)==0)\n        {\n            [tMutableArray removeObjectsInRange:tCrashLog.exceptionInformationRange];\n        }\n        else\n        {\n            NSArray * tExceptionInformationLines=[tLines subarrayWithRange:tCrashLog.exceptionInformationRange];\n            \n            NSArray * tFilteredLines=[self processedExceptionInformationSectionLines:tExceptionInformationLines error:NULL];\n            \n            [tMutableArray removeObjectsInRange:tCrashLog.exceptionInformationRange];\n            \n            [tMutableArray insertObjects:tFilteredLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tCrashLog.exceptionInformationRange.location,tFilteredLines.count)]];\n        }\n    }\n    \n    \n    if (tCrashLog.isHeaderAvailable==YES)\n    {\n        if ((self.displaySettings.visibleSections & CUIDocumentHeaderSection)==0)\n        {\n            [tMutableArray removeObjectsInRange:tCrashLog.headerRange];\n        }\n        else\n        {\n            NSArray * HeaderLines=[tLines subarrayWithRange:tCrashLog.headerRange];\n            \n            NSArray * tFilteredLines=[self processedHeaderSectionLines:HeaderLines error:NULL];\n            \n            [tMutableArray removeObjectsInRange:tCrashLog.headerRange];\n            \n            [tMutableArray insertObjects:tFilteredLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tCrashLog.headerRange.location,tFilteredLines.count)]];\n        }\n    }\n    \n    self.output=[self joinLines:tMutableArray withString:@\"\\n\"];\n    \n    return YES;\n}\n\n#pragma mark - Header\n\n- (NSArray *)processedHeaderSectionLines:(NSArray *)inLines error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray array];\n    \n    [inLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        NSUInteger tLineLength=bLine.length;\n        \n        // Skip Blank lines\n        \n        if (tLineLength==0)\n        {\n            [tProcessedLines addObject:bLine];\n            return;\n        }\n        \n        // Find Key and Value\n        \n        NSScanner * tScanner=[NSScanner scannerWithString:bLine];\n        \n        NSString * tKey;\n        \n        if ([tScanner scanUpToString:@\":\" intoString:&tKey]==NO)\n        {\n            [tProcessedLines addObject:bLine];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        NSRange tKeyRange=NSMakeRange(0,tScanner.scanLocation+1);\n        \n        tScanner.scanLocation=tScanner.scanLocation+1;\n        \n        tScanner.charactersToBeSkipped=nil;\n        \n        [tScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:NULL];\n        \n        NSRange tValueRange=NSMakeRange(tScanner.scanLocation,bLine.length-1-tScanner.scanLocation+1);\n        \n        \n        NSMutableAttributedString * tProcessedLine=[[NSMutableAttributedString alloc] initWithString:bLine attributes:self.plainTextAttributes];\n        \n        if (bLineNumber==0)\n        {\n            NSDictionary * tJumpAnchorAttributes=@{\n                                                   CUISectionAnchorAttributeName:@\"section:Header\"\n                                                   };\n            \n            [tProcessedLine addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,bLine.length)];\n        }\n        \n        \n        [tProcessedLine addAttributes:self.keyAttributes range:tKeyRange];\n        \n        \n        if ([tKey isEqualToString:@\"Path\"]==YES)\n        {\n            [tProcessedLine addAttributes:self.pathAttributes range:tValueRange];\n        }\n        else if ([tKey isEqualToString:@\"Version\"]==YES ||\n                 [tKey isEqualToString:@\"OS Version\"]==YES)\n        {\n            [tProcessedLine addAttributes:self.versionAttributes range:tValueRange];\n        }\n        else if ([tKey isEqualToString:@\"Anonymous UUID\"]==YES ||\n                 [tKey isEqualToString:@\"Sleep/Wake UUID\"]==YES)\n        {\n            [tProcessedLine addAttributes:self.UUIDAttributes range:tValueRange];\n        }\n        \n        [tProcessedLines addObject:tProcessedLine];\n    }];\n    \n    return [tProcessedLines copy];\n}\n\n#pragma mark - Exception Information\n\n- (NSArray *)processedExceptionInformationSectionLines:(NSArray *)inLines error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray array];\n    \n    [inLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        NSUInteger tLineLength=bLine.length;\n        \n        // Skip Blank lines\n        \n        if (tLineLength==0)\n        {\n            [tProcessedLines addObject:bLine];\n            return;\n        }\n        \n        // Find Key and Value\n        \n        NSScanner * tScanner=[NSScanner scannerWithString:bLine];\n        \n        NSString * tKey;\n        \n        if ([tScanner scanUpToString:@\":\" intoString:&tKey]==NO ||\n            tScanner.scanLocation==tLineLength)\n        {\n            [tProcessedLines addObject:bLine];\n            \n            return;\n        }\n        \n        NSRange tKeyRange=NSMakeRange(0,tScanner.scanLocation+1);\n        \n        \n        tScanner.scanLocation=tScanner.scanLocation+1;\n        \n        tScanner.charactersToBeSkipped=nil;\n        \n        [tScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:NULL];\n        \n        \n        \n        \n        \n        NSRange tValueRange=NSMakeRange(tScanner.scanLocation,bLine.length-1-tScanner.scanLocation+1);\n        \n        \n        \n        NSMutableAttributedString * tProcessedLine=[[NSMutableAttributedString alloc] initWithString:bLine attributes:self.plainTextAttributes];\n        \n        [tProcessedLine addAttributes:self.keyAttributes range:tKeyRange];\n        \n        if (bLineNumber==0)\n        {\n            NSDictionary * tJumpAnchorAttributes=@{\n                                                   CUISectionAnchorAttributeName:@\"section:Exception Information\"\n                                                   };\n            \n            [tProcessedLine addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,bLine.length)];\n        }\n        \n        if ([tKey isEqualToString:@\"Exception Type\"]==YES)\n        {\n            switch(self.hyperlinksStyle)\n            {\n                case CUIHyperlinksInternal:\n                    \n                    [tProcessedLine addAttributes:@{\n                                                    NSUnderlineStyleAttributeName:@(NSUnderlineStyleSingle|NSUnderlineStylePatternDash)\n                                                    }\n                     \n                                            range:tValueRange];\n                    \n                    [tProcessedLine addAttributes:@{\n                                                    NSLinkAttributeName:[NSURL URLWithString:@\"a://exception_type\"]\n                                                    }\n                                            range:tValueRange];\n                    \n                    break;\n                    \n                default:\n                    \n                    break;\n            }\n        }\n        \n        if ([tKey isEqualToString:@\"Termination Reason\"]==YES)\n        {\n            switch(self.hyperlinksStyle)\n            {\n                case CUIHyperlinksInternal:\n                    \n                    if (self.crashlog.exceptionInformation.isQuickHelpAvailableForTerminationReason==YES)\n                    {\n                        [tProcessedLine addAttributes:@{\n                                                        NSUnderlineStyleAttributeName:@(NSUnderlineStyleSingle|NSUnderlineStylePatternDash)\n                                                        }\n                         \n                                                range:tValueRange];\n                        \n                        [tProcessedLine addAttributes:@{\n                                                        NSLinkAttributeName:[NSURL URLWithString:@\"a://termination_reason\"]\n                                                        }\n                                                range:tValueRange];\n                    }\n                    \n                    break;\n                    \n                default:\n                    \n                    break;\n            }\n        }\n        \n        if ([tKey isEqualToString:@\"Crashed Thread\"]==YES)\n        {\n            if ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==CUIDocumentBacktracesSection &&\n                ((CUICrashLog *)self.input).backtraces.threads.count>0)\n            {\n                switch(self.hyperlinksStyle)\n                {\n                    case CUIHyperlinksInternal:\n                        \n                        [tProcessedLine addAttributes:@{\n                                                        NSLinkAttributeName:[NSURL URLWithString:@\"a://crashed_thread\"]\n                                                        }\n                                                range:tKeyRange];\n                        \n                        break;\n                        \n                    case CUIHyperlinksHTML:\n                        \n                        [tProcessedLine addAttributes:@{\n                                                        NSLinkAttributeName:[NSURL URLWithString:@\"sharp://crashed_thread\"]\n                                                        }\n                                                range:tKeyRange];\n                        \n                        break;\n                        \n                    default:\n                        \n                        break;\n                }\n            }\n            \n            [tProcessedLine addAttributes:self.crashedThreadLabelAttributes range:tValueRange];\n        }\n        \n        [tProcessedLines addObject:tProcessedLine];\n    }];\n    \n    \n    return tProcessedLines;\n}\n\n#pragma mark - Diagnostic Messages\n\n- (NSArray *)processedDiagnosticMessagesSectionLines:(NSArray *)inLines error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray array];\n    \n    // First line\n    \n    NSDictionary * tJumpAnchorAttributes=@{\n                                           CUISectionAnchorAttributeName:@\"section:Diagnostic Messages\"\n                                           };\n    \n    NSMutableAttributedString * tAttributedString=[[NSMutableAttributedString alloc] initWithString:inLines.firstObject attributes:tJumpAnchorAttributes];\n    \n    NSDictionary * tFirstLineAttributes=self.keyAttributes;\n    \n    [tAttributedString addAttributes:tFirstLineAttributes range:NSMakeRange(0,tAttributedString.length)];\n    \n    [tProcessedLines addObject:tAttributedString];\n    \n    // Other Lines\n    \n    NSRange tOtherLinesRange=NSMakeRange(1,inLines.count-1);\n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:tOtherLinesRange]\n                               options:0\n                            usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                                \n                                id tObject=bLine;\n                                \n                                NSUInteger tLineLength=bLine.length;\n                                \n                                if (tLineLength==0)\n                                {\n                                    [tProcessedLines addObject:bLine];\n                                    \n                                    return;\n                                }\n                                \n                                if ([bLine characterAtIndex:tLineLength-1]==':')\n                                {\n                                    if ([bLine isEqualToString:@\"Application Specific Information:\"]==YES ||\n                                        [bLine isEqualToString:@\"Dyld Error Message:\"]==YES ||\n                                        [bLine isEqualToString:@\"Application Specific Signatures:\"]==YES ||\n                                        [bLine isEqualToString:@\"CreationBacktrace:\"]==YES ||\n                                        [bLine isEqualToString:@\" Ordered grouping begin/end backtraces:\"]==YES)\n                                    {\n                                        NSAttributedString * tLineAttributedString=[[NSAttributedString alloc] initWithString:bLine attributes:self.keyAttributes];\n                                        \n                                        tObject=tLineAttributedString;\n                                    }\n                                }\n                                \n                                [tProcessedLines addObject:tObject];\n                                \n                            }];\n    \n    return tProcessedLines;\n}\n\n#pragma mark - Backtraces\n\n- (NSArray *)processedBacktracesSectionLines:(NSArray *)inLines error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray array];\n    \n    __block NSInteger tThreadEntityLineStart=0;\n    __block NSInteger tThreadEntityLineEnd=0;\n    \n    [inLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL *bOutStop) {\n        \n        // Retrieve thread number, crashed status and dispatch queue name\n        \n        if (bLine.length!=0)\n            return;\n        \n        tThreadEntityLineEnd=bLineNumber;   // Keep the blank line\n        \n        NSRange tThreadRange=NSMakeRange(tThreadEntityLineStart, tThreadEntityLineEnd-tThreadEntityLineStart+1);\n        \n        NSError * tError;\n        \n        NSArray * tFilteredThreadLines=[self processedThreadBacktraceLines:[inLines subarrayWithRange:tThreadRange] error:&tError];\n        \n        [tProcessedLines addObjectsFromArray:tFilteredThreadLines];\n        \n        tThreadEntityLineStart=bLineNumber+1;\n    }];\n    \n    NSMutableAttributedString * tMutableAttributedString=tProcessedLines.firstObject;\n    \n    NSDictionary * tJumpAnchorAttributes=@{\n                                           CUISectionAnchorAttributeName:@\"section:Backtraces\"\n                                           };\n    \n    [tMutableAttributedString addAttributes:tJumpAnchorAttributes\n                                      range:NSMakeRange(0, tMutableAttributedString.length)];\n    \n    return tProcessedLines;\n}\n\n- (NSArray *)processedThreadBacktraceLines:(NSArray *)inLines error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSString * tHeaderLine=inLines.firstObject;\n    BOOL tCrashedThread=NO;\n    NSString * tName=nil;\n    \n    if ([tHeaderLine isEqualToString:@\"Backtrace not available\"]==YES)\n    {\n        NSMutableAttributedString * tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:tHeaderLine attributes:self.plainTextAttributes];\n        \n        NSMutableArray * tProcessedLines=[NSMutableArray arrayWithObject:tMutableAttributedString];\n        \n        NSRange tOtherLinesRange=NSMakeRange(1,inLines.count-1);\n        \n        [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:tOtherLinesRange]\n                                   options:0\n                                usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                                    \n                                    [tProcessedLines addObject:bLine];\n                                }];\n        \n        return [tProcessedLines copy];\n    }\n    \n    CUICrashLogBacktraces * tBacktraces=((CUICrashLog *)self.input).backtraces;\n    \n    CUIThread * tThread=nil;\n    \n    if ([tHeaderLine hasPrefix:@\"Application Specific Backtrace\"]==YES)\n    {\n        tName=@\"Application Specific Backtrace\";\n        \n        tThread=[tBacktraces threadNamed:tName];\n    }\n    else\n    {\n        NSArray * tComponents=[tHeaderLine componentsSeparatedByString:@\"::\"];\n        NSString * tLeftPart;\n        \n        if (tComponents.count==0)\n        {\n            // Uh oh\n            \n            // A COMPLETER\n        }\n        \n        tLeftPart=tComponents.firstObject;\n        \n        if (tComponents.count!=2)\n            tLeftPart=[tLeftPart stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@\":\"]];\n        \n        NSArray * tThreadNumberComponents=[tLeftPart componentsSeparatedByString:@\" \"];\n        \n        if (tThreadNumberComponents.count<2)\n        {\n            // Uh oh\n            \n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:CUIDataTransformErrorDomain code:CUIDataTransformUnknownError userInfo:@{}];\n            \n            return nil;\n        }\n        \n        tName=tThreadNumberComponents[1];   // <- it's actually the number\n        \n        if (tThreadNumberComponents.count==3)\n        {\n            if ([tThreadNumberComponents[2] caseInsensitiveCompare:@\"Crashed\"]==NSOrderedSame)\n                tCrashedThread=YES;\n        }\n        \n        if ((self.displaySettings.visibleSections & CUIDocumentBacktraceCrashedThreadSubSection)!=0)\n        {\n            if (tCrashedThread==NO)\n                return @[];\n        }\n        \n        tThread=[tBacktraces threadWithNumber:[tName integerValue]];\n    }\n    \n    \n    NSMutableAttributedString * tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:inLines.firstObject attributes:self.plainTextAttributes];\n    \n    NSRange tStringRange=NSMakeRange(0, tMutableAttributedString.length);\n    \n    [tMutableAttributedString addAttributes:@{\n                                              CUIThreadAnchorAttributeName:[NSString stringWithFormat:@\"thread:%@\",tName]\n                                              }\n                                      range:tStringRange];\n    \n    \n    \n    \n    if (tCrashedThread==YES)\n    {\n        switch(self.hyperlinksStyle)\n        {\n            case CUIHyperlinksInternal:\n                \n                [tMutableAttributedString addAttributes:@{\n                                                          CUIGenericAnchorAttributeName:@\"a:crashed_thread\"\n                                                          }\n                                                  range:tStringRange];\n                \n                break;\n                \n            case CUIHyperlinksHTML:\n            {\n                NSURL * tURL=[NSURL URLWithString:@\"anchor://crashed_thread\"];\n                \n                if (tURL!=nil)\n                    [tMutableAttributedString addAttributes:@{NSLinkAttributeName:tURL}\n                                                      range:tStringRange];\n                \n                break;\n            }\n            default:\n                \n                break;\n        }\n    }\n    \n    NSDictionary * tAttributes=(tCrashedThread==YES) ? self.crashedThreadLabelAttributes : self.threadLabelAttributes;\n    \n    [tMutableAttributedString addAttributes:tAttributes\n                                      range:tStringRange];\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray arrayWithObject:tMutableAttributedString];\n    \n    NSRange tOtherLinesRange=NSMakeRange(1,inLines.count-1);\n    \n    __block NSUInteger tStackFrameIndex=0;\n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:tOtherLinesRange]\n                               options:0\n                            usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                                \n                                if (bLine.length==0)\n                                {\n                                    [tProcessedLines addObject:bLine];\n                                    return;\n                                }\n                                \n                                NSString * tProcessedStackFrameLine=[self processedStackFrameLine:bLine stackFrame:tThread.callStackBacktrace.stackFrames[tStackFrameIndex]];\n                                \n                                if (tProcessedStackFrameLine!=nil)\n                                {\n                                    [tProcessedLines addObject:tProcessedStackFrameLine];\n                                }\n                                else\n                                {\n                                    NSLog(@\"Error transforming line: %@\",bLine);\n                                    \n                                    [tProcessedLines addObject:bLine];\n                                }\n                                \n                                tStackFrameIndex+=1;\n                                \n                            }];\n    \n    return tProcessedLines;\n}\n\n#pragma mark - Thread State\n\n- (NSArray *)processedThreadStateSectionLines:(NSArray *)inLines error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray array];\n    \n    // First line\n    \n    NSDictionary * tJumpAnchorAttributes=@{\n                                           CUISectionAnchorAttributeName:@\"section:Thread State\"\n                                           };\n    \n    NSMutableAttributedString * tAttributedString=[[NSMutableAttributedString alloc] initWithString:inLines.firstObject attributes:tJumpAnchorAttributes];\n    \n    NSDictionary * tFirstLineAttributes=self.keyAttributes;\n    \n    [tAttributedString addAttributes:tFirstLineAttributes range:NSMakeRange(0,tAttributedString.length)];\n    \n    \n    [tProcessedLines addObject:tAttributedString];\n    \n    // Other Lines\n    \n    NSRange tOtherLinesRange=NSMakeRange(1,inLines.count-1);\n    \n    __block NSUInteger tLastLine=0;\n    \n    \n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:tOtherLinesRange]\n                               options:0\n                            usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                                \n                                NSMutableAttributedString * tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:bLine attributes:self.keyAttributes];\n                                \n                                if (bLine.length<4)\n                                {\n                                    tLastLine=bLineNumber+1;\n                                    \n                                    [tProcessedLines addObject:tMutableAttributedString];\n                                    \n                                    *bOutStop=YES;\n                                    return;\n                                }\n                                \n                                NSScanner * tRegistersScanner=[NSScanner scannerWithString:bLine];\n                                \n                                tRegistersScanner.charactersToBeSkipped=self.whitespaceCharacterSet;\n                                \n                                while (tRegistersScanner.isAtEnd==NO)\n                                {\n                                    tRegistersScanner.charactersToBeSkipped=nil;\n                                    \n                                    [tRegistersScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:nil];\n                                    \n                                    NSString * tRegisterName;\n                                    \n                                    tRegistersScanner.charactersToBeSkipped=self.whitespaceCharacterSet;\n                                    \n                                    if ([tRegistersScanner scanUpToString:@\":\" intoString:&tRegisterName]==NO)\n                                        return;\n                                    \n                                    if ([tRegistersScanner scanString:@\": \" intoString:NULL]==NO)\n                                        return;\n                                    \n                                    NSRange tValueRange=NSMakeRange(tRegistersScanner.scanLocation, 0);\n                                    \n                                    if ([tRegistersScanner scanHexLongLong:NULL]==NO)\n                                        return;\n                                    \n                                    tValueRange.length=tRegistersScanner.scanLocation-1-tValueRange.location+1;\n                                    \n                                    tRegistersScanner.charactersToBeSkipped=nil;\n                                    \n                                    [tRegistersScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:nil];\n                                    \n                                    [tMutableAttributedString addAttributes:self.registerValueAttributes range:tValueRange];\n                                }\n                                \n                                [tProcessedLines addObject:tMutableAttributedString];\n                                \n                            }];\n    \n    // Remaining lines\n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tLastLine,inLines.count-1-tLastLine+1)] options:0 usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        NSUInteger tLineLength=bLine.length;\n        \n        // Skip Blank lines\n        \n        if (tLineLength==0)\n        {\n            [tProcessedLines addObject:[[NSAttributedString alloc] initWithString:bLine attributes:self.plainTextAttributes]];\n            return;\n        }\n        \n        // Find Key and Value\n        \n        NSScanner * tScanner=[NSScanner scannerWithString:bLine];\n        \n        NSString * tKey;\n        \n        if ([tScanner scanUpToString:@\":\" intoString:&tKey]==NO)\n        {\n            // A COMPLETER\n            \n            [tProcessedLines addObject:[[NSAttributedString alloc] initWithString:bLine attributes:self.plainTextAttributes]];\n            \n            return;\n        }\n        \n        NSRange tKeyRange=NSMakeRange(0,tScanner.scanLocation+1);\n        \n        \n        NSMutableAttributedString * tMutableAttributedString=nil;\n        \n        if (tScanner.scanLocation<bLine.length)\n        {\n            tScanner.scanLocation=tScanner.scanLocation+1;\n            \n            tScanner.charactersToBeSkipped=nil;\n            \n            [tScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:NULL];\n            \n            tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:[bLine substringWithRange:tKeyRange] attributes:self.keyAttributes];\n            \n            NSAttributedString * tOther=[[NSAttributedString alloc] initWithString:[bLine substringWithRange:NSMakeRange(tKeyRange.length,bLine.length-1-tKeyRange.length+1)] attributes:self.plainTextAttributes];\n            \n            [tMutableAttributedString appendAttributedString:tOther];\n        }\n        else\n        {\n            tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:bLine attributes:self.plainTextAttributes];\n        }\n        \n        [tProcessedLines addObject:tMutableAttributedString];\n        \n    }];\n    \n    return tProcessedLines;\n}\n\n\n#pragma mark - Binary Images\n\n- (NSArray *)processedBinaryImagesSectionLines:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if (inLines.count==0)\n        return inLines;\n    \n    NSMutableArray * tProcessedLines=[NSMutableArray array];\n    \n    // First line\n    \n    NSDictionary * tJumpAnchorAttributes=@{\n                                           CUISectionAnchorAttributeName:@\"section:Binary Images\"\n                                           };\n    \n    NSMutableAttributedString * tAttributedString=[[NSMutableAttributedString alloc] initWithString:inLines.firstObject attributes:tJumpAnchorAttributes];\n    \n    NSDictionary * tFirstLineAttributes=self.keyAttributes;\n    \n    if (tFirstLineAttributes!=nil)\n        [tAttributedString addAttributes:tFirstLineAttributes range:NSMakeRange(0,tAttributedString.length)];\n    \n    [tProcessedLines addObject:tAttributedString];\n    \n    // Other Lines\n    \n    NSRange tOtherLinesRange=NSMakeRange(1,inLines.count-1);\n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:tOtherLinesRange]\n                               options:0\n                            usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL *bOutStop) {\n                                \n                                if (bLine.length==0)\n                                {\n                                    [tProcessedLines addObjectsFromArray:[inLines subarrayWithRange:NSMakeRange(bLineNumber,inLines.count-1-bLineNumber+1)]];\n                                    \n                                    *bOutStop=YES;\n                                    \n                                    return;\n                                }\n                                \n                                id tProcessedLine=[self processedBinaryImageLine:bLine reportVersion:inReportVersion];\n                                \n                                if (tProcessedLine==nil)\n                                {\n                                    tProcessedLine=[[NSAttributedString alloc] initWithString:bLine attributes:self.parsingErrorAttributes];\n                                    \n                                    NSLog(@\"Error transforming line: %@\",bLine);\n                                }\n                                \n                                [tProcessedLines addObject:tProcessedLine];\n                            }];\n    \n    return tProcessedLines;\n}\n\n- (id)processedBinaryImageLine:(NSString *)inLine reportVersion:(NSUInteger)inReportVersion\n{\n    NSScanner * tScanner=[NSScanner scannerWithString:inLine];\n    \n    tScanner.charactersToBeSkipped=nil;\n    \n    [tScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:NULL];\n    \n    NSUInteger tMinAddressStart=tScanner.scanLocation;\n    \n    tScanner.charactersToBeSkipped=self.whitespaceCharacterSet;\n    \n    if ([tScanner scanHexLongLong:NULL]==NO)\n        return nil;\n    \n    NSUInteger tMinAddressEnd=tScanner.scanLocation;\n    \n    [tScanner scanUpToString:@\"0x\" intoString:NULL];\n    \n    NSUInteger tMaxAddressStart=tScanner.scanLocation;\n    \n    if ([tScanner scanHexLongLong:NULL]==NO)\n        return nil;\n    \n    NSUInteger tMaxAddressEnd=tScanner.scanLocation;\n    \n    tScanner.charactersToBeSkipped=nil;\n    \n    [tScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:NULL];\n    \n    NSUInteger tIdentifierStart=tScanner.scanLocation;\n    \n    NSString * tIdentifier=nil;\n    NSString * tOriginalString;\n    BOOL tIsMissingVersion=NO;\n    \n    if ([tScanner scanUpToString:@\"(\" intoString:&tOriginalString]==NO)\n    {\n        return nil;\n    }\n    else\n    {\n        // Maybe only the version is missing\n        \n        if (tScanner.scanLocation==inLine.length)\n        {\n            tScanner.scanLocation=tIdentifierStart;\n            \n            if ([tScanner scanUpToString:@\"<\" intoString:&tOriginalString]==NO)\n                return nil;\n            \n            tIsMissingVersion=YES;\n        }\n    }\n    \n    if (inReportVersion==6)\n    {\n        // Remove the version\n        \n        NSUInteger tLength=tOriginalString.length;\n        \n        NSRange tRange=[tOriginalString rangeOfCharacterFromSet:self.whitespaceCharacterSet options:NSBackwardsSearch range:NSMakeRange(0,tLength-1)];\n        \n        if (tRange.location==NSNotFound)\n            return nil;\n        \n        tIdentifier=[tOriginalString substringToIndex:tRange.location];\n    }\n    else\n    {\n        tIdentifier=tOriginalString;\n    }\n    \n    BOOL tIsUserCode=NO;\n    \n    tIdentifier=[tIdentifier stringByTrimmingCharactersInSet:self.whitespaceCharacterSet];\n    \n    NSUInteger tIdentifierRealLength=tIdentifier.length;\n    \n    if ([tIdentifier hasPrefix:@\"+\"]==YES && tIdentifierRealLength>1)\n    {\n        // User Code\n        \n        tIsUserCode=YES;\n    }\n    \n    NSMutableAttributedString * tNewLine=[[NSMutableAttributedString alloc] initWithString:inLine attributes:self.plainTextAttributes];\n    \n    tScanner.scanLocation=tIdentifierStart+tIdentifierRealLength;\n    \n    NSRange tIdentifierRange=NSMakeRange(tIdentifierStart, tIdentifierRealLength);\n    \n    if (inReportVersion==6)\n    {\n        tScanner.scanLocation+=1;\n    }\n    else\n    {\n        if (tIsMissingVersion==NO)\n        {\n            if ([tScanner scanUpToString:@\"(\" intoString:NULL]==NO)\n                return nil;\n        }\n        else\n        {\n            if ([tScanner scanUpToString:@\"<\" intoString:NULL]==NO)\n                return nil;\n        }\n    }\n    \n    // Version\n    \n    NSUInteger tVersionStart=NSNotFound;\n    NSUInteger tVersionEnd=NSNotFound;\n    \n    if (tIsMissingVersion==NO)\n    {\n        tVersionStart=tScanner.scanLocation;\n        \n        if ([tScanner scanUpToString:@\")\" intoString:NULL]==NO)\n            return nil;\n        \n        tVersionEnd=tScanner.scanLocation;\n    }\n    \n    // UUID can be missing // A COMPLETER\n    \n    if (tIsMissingVersion==NO)\n    {\n        tScanner.scanLocation+=2;\n    }\n    \n    NSUInteger tUUIDStart=NSNotFound;\n    NSUInteger tUUIDEnd=NSNotFound;\n    \n    if ([inLine characterAtIndex:tScanner.scanLocation]=='<')\n    {\n        tUUIDStart=tScanner.scanLocation;\n        \n        if ([tScanner scanUpToString:@\">\" intoString:NULL]==NO)\n            return nil;\n        \n        tUUIDEnd=tScanner.scanLocation;\n    }\n    else\n    {\n        tScanner.scanLocation-=2;\n    }\n    \n    if ([tScanner scanUpToString:@\"/\" intoString:NULL]==NO)\n        return nil;\n    \n    if (tUUIDEnd!=NSNotFound)\n    {\n        NSString * tBinaryImageUUID=[inLine substringWithRange:NSMakeRange(tUUIDStart+1, tUUIDEnd-tUUIDStart-1)];\n        \n        switch(self.hyperlinksStyle)\n        {\n            case CUIHyperlinksHTML:\n            {\n                NSURL * tURL=[NSURL URLWithString:[NSString stringWithFormat:@\"anchor://%@\",tBinaryImageUUID]];\n                \n                if (tURL!=nil)\n                    [tNewLine addAttributes:@{NSLinkAttributeName:tURL}\n                                      range:NSMakeRange(0, tNewLine.length)];\n                \n                break;\n            }\n                \n            default:\n                \n                [tNewLine addAttributes:@{\n                                          CUIBinaryAnchorAttributeName:[NSString stringWithFormat:@\"bin:%@\",tBinaryImageUUID]\n                                          }\n                                  range:NSMakeRange(0, tNewLine.length)];\n                \n                break;\n        }\n    }\n    \n    NSRange tPathRange=NSMakeRange(tScanner.scanLocation,inLine.length-1-tScanner.scanLocation+1);\n    \n    NSDictionary * tIdentifierAttributes=self.plainTextAttributes;\n    \n    if (self.themesProvider.currentTheme.isMonochrome==NO)\n    {\n        tIdentifierAttributes=@{\n                                NSForegroundColorAttributeName:(tIsUserCode==YES) ? [CUIBinaryImageUtility colorForUserCode]: [CUIBinaryImageUtility colorForIdentifier:tIdentifier]\n                                };\n    }\n    \n    [tNewLine addAttributes:tIdentifierAttributes\n                      range:tIdentifierRange];\n    \n    [tNewLine addAttributes:self.memoryAddressAttributes\n                      range:NSMakeRange(tMinAddressStart, tMinAddressEnd-tMinAddressStart+1)];\n    \n    [tNewLine addAttributes:self.memoryAddressAttributes\n                      range:NSMakeRange(tMaxAddressStart, tMaxAddressEnd-tMaxAddressStart+1)];\n    \n    if (tUUIDStart!=NSNotFound)\n    {\n        [tNewLine addAttributes:self.UUIDAttributes\n                          range:NSMakeRange(tUUIDStart,tUUIDEnd-tUUIDStart+1)];\n    }\n    \n    if (tVersionEnd!=NSNotFound && tVersionStart!=NSNotFound)\n    {\n        [tNewLine addAttributes:self.versionAttributes\n                          range:NSMakeRange(tVersionStart,tVersionEnd-tVersionStart+1)];\n    }\n    \n    [tNewLine addAttributes:self.pathAttributes\n                      range:tPathRange];\n    \n    return tNewLine;\n}\n\n#pragma mark -\n\n- (NSAttributedString *)joinLines:(NSArray *)inLines withString:(NSString *)inNewLineFeed\n{\n    NSMutableAttributedString * tMutableAttributedString=[NSMutableAttributedString new];\n    \n    [inLines enumerateObjectsUsingBlock:^(id bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ([bLine isKindOfClass:NSString.class]==YES)\n        {\n            NSAttributedString * tAttributedString=[[NSAttributedString alloc] initWithString:bLine\n                                                                                   attributes:self.plainTextAttributes];\n            \n            [tMutableAttributedString appendAttributedString:tAttributedString];\n            \n            if (bLineNumber<inLines.count)\n                [tMutableAttributedString appendAttributedString:[[NSAttributedString alloc] initWithString:inNewLineFeed attributes:self.plainTextAttributes]];\n            \n            return;\n        }\n        \n        if ([bLine isKindOfClass:NSAttributedString.class]==YES)\n        {\n            [tMutableAttributedString appendAttributedString:bLine];\n            \n            if (bLineNumber<inLines.count)\n                [tMutableAttributedString appendAttributedString:[[NSAttributedString alloc] initWithString:inNewLineFeed attributes:self.plainTextAttributes]];\n        }\n    }];\n    \n    return tMutableAttributedString;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLog+Transform.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLog.h\"\n\n@interface CUICrashLog (Transform)\n\n- (NSString *)exceptionType;\n\n- (NSString *)exceptionSignal;\n\n- (NSNumber *)reportSourceTypeNumber;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLog+Transform.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLog+Transform.h\"\n\n@implementation CUICrashLog (Transform)\n\n- (NSString *)exceptionType\n{\n    NSString * tExceptionType=self.exceptionInformation.exceptionType;\n    \n    return (tExceptionType!=nil) ? tExceptionType : @\"\";\n}\n\n- (NSString *)exceptionSignal\n{\n    NSString * tExceptionSignal=self.exceptionInformation.exceptionSignal;\n    \n    return (tExceptionSignal!=nil) ? tExceptionSignal : @\"\";\n}\n\n- (NSNumber *)reportSourceTypeNumber\n{\n    return @(self.reportSourceType);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLog+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLog.h\"\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLog (UI)\n\n- (NSImage *)processIcon;\n\n- (NSString *)operatingSystemDisplayName;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLog+UI.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLog+UI.h\"\n\n#import \"CUIRawCrashLog+Path.h\"\n\n@implementation CUICrashLog (UI)\n\n- (NSImage *)processIcon\n{    \n    static NSImage * sExecutableBinaryIcon=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sExecutableBinaryIcon=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ExecutableBinaryIcon.icns\"];\n        \n    });\n    \n    NSString * tPath=[self stringByResolvingUSERInPath:self.header.executablePath];\n\t\n\tNSString * tMacOSDirectoryPath=tPath.stringByDeletingLastPathComponent;\n\t\n\tif ([tMacOSDirectoryPath.lastPathComponent isEqualToString:@\"MacOS\"]==NO)\n\t\treturn [[NSWorkspace sharedWorkspace] iconForFile:tPath];\n\t\n\tNSString * tContentsDirectoryPath=tMacOSDirectoryPath.stringByDeletingLastPathComponent;\n\t\n\tif ([tContentsDirectoryPath.lastPathComponent isEqualToString:@\"Contents\"]==NO)\n\t\treturn sExecutableBinaryIcon;\n\t\n\tNSDictionary * tDictionary=[NSDictionary dictionaryWithContentsOfFile:[tContentsDirectoryPath stringByAppendingPathComponent:@\"Info.plist\"]];\n\t\n\tif (tDictionary==nil)\n\t\treturn sExecutableBinaryIcon;\n\t\n\tNSString * tExecutableName=tDictionary[@\"CFBundleExecutable\"];\n    \n    if ([tExecutableName isEqualToString:tPath.lastPathComponent]==NO)\n        return sExecutableBinaryIcon;\n    \n    NSString * tApplicationIconName=tDictionary[@\"CFBundleIconFile\"];\n\t\n\tif (tApplicationIconName.pathExtension.length==0)\n\t\ttApplicationIconName=[tApplicationIconName stringByAppendingPathExtension:@\"icns\"];\n\t\n\tNSString * tIconPath=[[tContentsDirectoryPath stringByAppendingPathComponent:@\"Resources\"] stringByAppendingPathComponent:tApplicationIconName];\n\t\n\tNSImage * tImage=[[NSImage alloc] initWithContentsOfFile:tIconPath];\n\t\n\tif (tImage!=nil)\n        return tImage;\n    \n\treturn [[NSWorkspace sharedWorkspace] iconForFileType:NSFileTypeForHFSTypeCode(kGenericApplicationIcon)];\n}\n\n- (NSString *)operatingSystemDisplayName\n{\n    CUIOperatingSystemVersion * tVersion=self.header.operatingSystemVersion;\n    \n    switch(tVersion.majorVersion)\n    {\n        case 11:\n            \n            return @\"macOS Big Sur\";\n            \n        case 12:\n            \n            return @\"macOS Monterey\";\n            \n        case 13:\n            \n            return @\"macOS Ventura\";\n            \n        case 14:\n            \n            return @\"macOS Sonoma\";\n            \n        default:\n            \n            break;\n    }\n    \n\tNSUInteger tMinorVersion=self.header.operatingSystemVersion.minorVersion;\n\t\n\tswitch(tMinorVersion)\n\t{\n\t\tcase 6:\n\t\t\t\n\t\t\treturn @\"Mac OS X Snow Leopard\";\n\t\t\n\t\tcase 10:\n\t\t\t\n\t\t\treturn @\"OS X Yosemite\";\n\t\t\t\n        case 11:\n            \n            return @\"macOS Mavericks\";\n        \n        case 12:\n            \n            return @\"macOS Sierra\";\n        \n        case 13:\n            \n            return @\"macOS High Sierra\";\n        \n        case 14:\n            \n            return @\"macOS Mojave\";\n        \n        case 15:\n\t\t\t\n\t\t\treturn @\"macOS Catalina\";\n\t}\n\t\n\treturn @\"macOS\";\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLog.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRawCrashLog.h\"\n\n\n#import \"CUICrashLogHeader.h\"\n\n#import \"CUICrashLogExceptionInformation.h\"\n\n#import \"CUICrashLogDianosticMessages.h\"\n\n#import \"CUICrashLogBacktraces.h\"\n\n#import \"CUICrashLogThreadState.h\"\n\n#import \"CUICrashLogBinaryImages.h\"\n\n#import \"NSFileManager+ExtendedAttributes.h\"\n\n@interface CUICrashLog : CUIRawCrashLog\n\n    @property (readonly) CUICrashLogHeader * header;\n\n    @property (readonly) CUICrashLogExceptionInformation * exceptionInformation;\n\n    @property (readonly) CUICrashLogDianosticMessages * diagnosticMessages;\n\n    @property (readonly) CUICrashLogBacktraces * backtraces;\n\n    @property (readonly) CUICrashLogThreadState * threadState;\n\n    @property (readonly) CUICrashLogBinaryImages * binaryImages;\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLog.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLog.h\"\n\n#import \"CUIParsingErrors.h\"\n\n#import \"CUICrashLogSectionsDetector.h\"\n\n@interface CUICrashLog ()\n\n    @property NSError * parsingError;\n\n    // Sections ranges\n\n    @property NSRange headerRange;\n\n    @property NSRange exceptionInformationRange;\n    @property NSRange diagnosticMessagesRange;\n\n    @property NSRange backtracesRange;\n\n    @property NSRange threadStateRange;\n\n    @property NSRange binaryImagesRange;\n\n    @property BOOL fullyParsed;\n\n\n    @property CUICrashLogHeader * header;\n\n    @property CUICrashLogExceptionInformation * exceptionInformation;\n\n    @property CUICrashLogDianosticMessages * diagnosticMessages;\n\n    @property CUICrashLogBacktraces * backtraces;\n\n    @property CUICrashLogThreadState * threadState;\n\n    @property CUICrashLogBinaryImages * binaryImages;\n\n@end\n\n@implementation CUICrashLog\n\n- (instancetype)initWithString:(NSString *)inString error:(NSError **)outError\n{\n    if ([inString isKindOfClass:NSString.class]==NO)\n\t{\n\t\tif (outError!=NULL)\n\t\t\t*outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n\t\t\n\t\treturn nil;\n\t}\n\t\n\tself=[super initWithString:inString error:outError];\n\t\n\tif (self!=nil)\n\t{\n        _headerRange.location=NSNotFound;\n        \n        _exceptionInformationRange.location=NSNotFound;\n        _diagnosticMessagesRange.location=NSNotFound;\n        \n        _backtracesRange.location=NSNotFound;\n        \n        _threadStateRange.location=NSNotFound;\n        \n        _binaryImagesRange.location=NSNotFound;\n        \n        NSError * tError=nil;\n        \n        if (self.ipsReport!=nil)\n        {\n            IPSIncident * tIncident=self.ipsReport.incident;\n            \n            _header=[[CUICrashLogHeader alloc] initWithIPSIncident:tIncident error:&tError];\n            \n            if (_header==nil)\n            {\n                // A COMPLETER\n                \n                return nil;\n            }\n            \n            _exceptionInformation=[[CUICrashLogExceptionInformation alloc] initWithIPSIncident:tIncident error:&tError];\n            \n            if (_exceptionInformation==nil)\n            {\n                // A COMPLETER\n                \n                return nil;\n            }\n            \n            _diagnosticMessages=[[CUICrashLogDianosticMessages alloc] initWithIPSIncident:tIncident error:&tError];\n            \n            if (_diagnosticMessages==nil)\n            {\n                // A COMPLETER\n                \n                return nil;\n            }\n        }\n        else\n        {\n            NSMutableArray * tLines=[NSMutableArray array];\n            \n            [self.rawText enumerateLinesUsingBlock:^(NSString * bLine, BOOL * bOutStop) {\n                \n                [tLines addObject:bLine];\n            }];\n\n            @try\n            {\n                BOOL tResult=[self detectSectionsOfTextualRepresentation:tLines error:&tError];\n                \n                if (tResult==NO)\n                {\n                    NSLog(@\"Error detecting section : %@\",tError.userInfo[CUIParsingErrorSectionNameKey]);\n                    \n                    _parsingError=tError;\n                    \n                    // Raw Text Mode only\n                    \n                    // A COMPLETER\n                    \n                    return nil;\n                }\n                \n                _header=[[CUICrashLogHeader alloc] initWithTextualRepresentation:[tLines subarrayWithRange:_headerRange] error:&tError];\n                \n                if (_header==nil)\n                {\n                    if (tError!=nil)\n                    {\n                        NSUInteger tAbsoluteLineNumber=[tError.userInfo[CUIParsingErrorLineKey] unsignedIntegerValue]+_headerRange.location;\n                        \n                        NSLog(@\"Error parsing line : %lu\",tAbsoluteLineNumber);\n                        \n                        _parsingError=[NSError errorWithDomain:CUIParsingErrorDomain code:tError.code userInfo:@{CUIParsingErrorLineKey:@(tAbsoluteLineNumber)}];\n                    }\n                    \n                    // A COMPLETER\n                    \n                    return nil;\n                }\n                \n                _exceptionInformation=[[CUICrashLogExceptionInformation alloc] initWithTextualRepresentation:[tLines subarrayWithRange:_exceptionInformationRange] reportVersion:_header.reportVersion error:&tError];\n                \n                if (_exceptionInformation==nil)\n                {\n                    if (tError!=nil)\n                    {\n                        NSUInteger tAbsoluteLineNumber=[tError.userInfo[CUIParsingErrorLineKey] unsignedIntegerValue]+_headerRange.location;\n                        \n                        NSLog(@\"Error parsing line : %lu\",tAbsoluteLineNumber);\n                        \n                        _parsingError=[NSError errorWithDomain:CUIParsingErrorDomain code:tError.code userInfo:@{CUIParsingErrorLineKey:@(tAbsoluteLineNumber)}];\n                    }\n                    \n                    // A COMPLETER\n                    \n                    return nil;\n                }\n                \n                if (_diagnosticMessagesRange.location!=NSNotFound)\n                {\n                    _diagnosticMessages=[[CUICrashLogDianosticMessages alloc] initWithTextualRepresentation:[tLines subarrayWithRange:_diagnosticMessagesRange] reportVersion:_header.reportVersion error:&tError];\n                    \n                    if (_diagnosticMessages==nil)\n                    {\n                        if (tError!=nil)\n                        {\n                            NSUInteger tAbsoluteLineNumber=[tError.userInfo[CUIParsingErrorLineKey] unsignedIntegerValue]+_headerRange.location;\n                            \n                            NSLog(@\"Error parsing line : %lu\",tAbsoluteLineNumber);\n                            \n                            _parsingError=[NSError errorWithDomain:CUIParsingErrorDomain code:tError.code userInfo:@{CUIParsingErrorLineKey:@(tAbsoluteLineNumber)}];\n                        }\n                        \n                        // A COMPLETER\n                        \n                        return nil;\n                    }\n                }\n                \n                // The other sections will be parsed when the log is displayed for real\n            }\n            \n            @catch (NSException *exception)\n            {\n                NSLog(@\"Exception raised while parsing \\\"%@\\\"\",self.rawText);\n                \n                return nil;\n            }\n            \n            @finally\n            {\n            }\n        }\n\t}\n    \n\treturn self;\n}\n\n#pragma mark -\n\n- (BOOL)isHeaderAvailable\n{\n    if ([super isHeaderAvailable]==YES)\n        return YES;\n    \n    return (self.headerRange.location!=NSNotFound);\n}\n\n- (BOOL)isExceptionInformationAvailable\n{\n    if ([super isExceptionInformationAvailable]==YES)\n        return YES;\n    \n    return (self.exceptionInformationRange.location!=NSNotFound);\n}\n\n- (BOOL)isDiagnosticMessageAvailable\n{\n    if ([super isDiagnosticMessageAvailable]==YES)\n        return YES;\n    \n    return (self.diagnosticMessagesRange.location!=NSNotFound);\n}\n\n- (BOOL)isBacktracesAvailable\n{\n    if ([super isBacktracesAvailable]==YES)\n        return YES;\n    \n    return (self.backtracesRange.location!=NSNotFound);\n}\n\n- (BOOL)isThreadStateAvailable\n{\n    if ([super isThreadStateAvailable]==YES)\n        return YES;\n    \n    return (self.threadStateRange.location!=NSNotFound);\n}\n\n- (BOOL)isBinaryImagesAvailable\n{\n    if ([super isBinaryImagesAvailable]==YES)\n        return YES;\n    \n    return (self.binaryImagesRange.location!=NSNotFound);\n}\n\n- (id)valueForKeyPath:(NSString *)inKeyPath\n{\n    if ([inKeyPath isEqualToString:@\"header.bundleIdentifier\"]==YES)\n        return self.header.bundleIdentifier;\n    \n    if ([inKeyPath isEqualToString:@\"header.executablePath\"]==YES)\n        return self.header.executablePath;\n    \n    if ([inKeyPath isEqualToString:@\"header.executableVersion\"]==YES)\n        return self.header.executableVersion;\n    \n    if ([inKeyPath isEqualToString:@\"header.operatingSystemVersion.stringValue\"]==YES)\n        return self.header.operatingSystemVersion.stringValue;\n    \n    if ([inKeyPath isEqualToString:@\"exceptionInformation.crashedThreadName\"]==YES)\n        return self.exceptionInformation.crashedThreadName;\n    \n    return [super valueForKeyPath:inKeyPath];\n}\n\n\n- (NSString *)processName\n{\n    return self.header.processName;\n}\n\n- (NSDate *)dateTime\n{\n    return self.header.dateTime;\n}\n\n- (NSUInteger)reportVersion\n{\n    return self.header.reportVersion;\n}\n\n- (NSNumber *)numberOfHoursSinceCrash\n{\n    NSDate * tDate=[NSDate date];\n    \n    NSTimeInterval tTimeInterval=[tDate timeIntervalSinceDate:self.dateTime];\n    \n    NSInteger tNumberOfHours=round(tTimeInterval/3600);\n    \n    return @(tNumberOfHours);\n}\n\n#pragma mark -\n\n- (BOOL)detectSectionsOfTextualRepresentation:(NSArray *)inLines error:(NSError **)outError\n{\n    NSRange tRange;\n    NSUInteger tFirstLine=0;\n    \n    // Header Section (Required)\n    \n    tRange=[CUICrashLogSectionsDetector detectHeaderSectionRangeInTextualRepresentation:inLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,inLines.count-tFirstLine)]];\n    \n    if (tRange.location==NSNotFound)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Header\"}];\n        \n        return NO;\n    }\n    \n    self.headerRange=tRange;\n    \n    // Exception Information Section (Required)\n    \n    tFirstLine=NSMaxRange(tRange);\n    \n    tRange=[CUICrashLogSectionsDetector detectExceptionInformationSectionRangeInTextualRepresentation:inLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,inLines.count-tFirstLine)]];\n    \n    if (tRange.location==NSNotFound)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Exception Information\"}];\n        \n        return NO;\n    }\n    \n    self.exceptionInformationRange=tRange;\n    \n    // Diagnostic Messages (Optional)\n    \n    tFirstLine=NSMaxRange(tRange);\n    \n    NSString * tString=inLines[tFirstLine];\n    \n    if ([tString hasPrefix:@\"Application Specific Information:\"]==YES ||\n        [tString hasPrefix:@\"VM Regions Near\"]==YES ||\n        [tString hasPrefix:@\"VM Region Info:\"]==YES)\n    {\n        tRange=[CUICrashLogSectionsDetector detectDiagnosticMessageSectionRangeInTextualRepresentation:inLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,inLines.count-tFirstLine)]];\n        \n        if (tRange.location==NSNotFound)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Diagnostic Messages\"}];\n            \n            return NO;\n        }\n        \n        self.diagnosticMessagesRange=tRange;\n        \n        tFirstLine=NSMaxRange(tRange);\n        \n        tString=inLines[tFirstLine];\n    }\n    \n    // Backtraces\n    \n    if ([tString isEqualToString:@\"Backtrace not available\"]==YES ||\n        [tString hasPrefix:@\"Application Specific Backtrace\"]==YES ||\n        [tString hasPrefix:@\"Thread 0\"]==YES)\n    {\n        tRange=[CUICrashLogSectionsDetector detectBacktracesSectionRangeInTextualRepresentation:inLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,inLines.count-tFirstLine)]];\n        \n        if (tRange.location==NSNotFound)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Backtraces\"}];\n            \n            return NO;\n        }\n        \n        self.backtracesRange=tRange;\n        \n        tFirstLine=NSMaxRange(tRange);\n        \n        tString=inLines[tFirstLine];\n    }\n    \n    // Thread State\n    \n    if ((([tString hasPrefix:@\"Thread\"]==YES || [tString hasPrefix:@\"Unknown thread\"]==YES) && [tString rangeOfString:@\"crashed with\"].location!=NSNotFound) ||\n        ([tString rangeOfString:@\"Thread State\" options:NSCaseInsensitiveSearch].location==0))\n    {\n        tRange=[CUICrashLogSectionsDetector detectThreadStateSectionRangeInTextualRepresentation:inLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,inLines.count-tFirstLine)]];\n        \n        if (tRange.location==NSNotFound)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Thread State\"}];\n            \n            return NO;\n        }\n        \n        self.threadStateRange=tRange;\n        \n        tFirstLine=NSMaxRange(tRange);\n        \n        tString=inLines[tFirstLine];\n    }\n    \n    // Binary Images\n    \n    if ([tString rangeOfString:@\"Binary Images\" options:NSCaseInsensitiveSearch].location==0)\n    {\n        tRange=[CUICrashLogSectionsDetector detectBinaryImagesSectionRangeInTextualRepresentation:inLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,inLines.count-tFirstLine)]];\n        \n        if (tRange.location==NSNotFound)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Binary Images\"}];\n            \n            return NO;\n        }\n        \n        self.binaryImagesRange=tRange;\n    }\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (BOOL)isFullyParsed\n{\n    return self.fullyParsed;\n}\n\n- (BOOL)finalizeParsing\n{\n    NSError * tError=nil;\n    IPSReport * tIPSReport=self.ipsReport;\n    \n    if (tIPSReport!=nil)\n    {\n        if (tIPSReport.incident.threads!=nil)\n        {\n            _backtraces=[[CUICrashLogBacktraces alloc] initWithIPSIncident:tIPSReport.incident error:&tError];\n        \n            if (_backtraces==nil)\n            {\n                // A COMPLETER\n                \n                return NO;\n            }\n        }\n        \n        {\n            _threadState=[[CUICrashLogThreadState alloc] initWithIPSIncident:tIPSReport.incident error:&tError];\n        \n            if (_threadState==nil && tError!=nil)\n            {\n                // A COMPLETER\n            \n                return NO;\n            }\n        }\n        \n        if (tIPSReport.incident.binaryImages!=nil)\n        {\n            _binaryImages=[[CUICrashLogBinaryImages alloc] initWithIPSIncident:tIPSReport.incident error:&tError];\n            \n            if (_binaryImages==nil)\n            {\n                // A COMPLETER\n                \n                return NO;\n            }\n        }\n        \n        self.fullyParsed=YES;\n        \n        return YES;\n    }\n    \n    NSMutableArray * tLines=[NSMutableArray array];\n    \n    [self.rawText enumerateLinesUsingBlock:^(NSString * bLine, BOOL * bOutStop) {\n        \n        [tLines addObject:bLine];\n    }];\n    \n    if (self.backtracesRange.location!=NSNotFound)\n    {\n        _backtraces=[[CUICrashLogBacktraces alloc] initWithTextualRepresentation:[tLines subarrayWithRange:self.backtracesRange] reportVersion:_header.reportVersion error:&tError];\n        \n        if (_backtraces==nil)\n        {\n            if (tError!=nil)\n            {\n                NSUInteger tAbsoluteLineNumber=[tError.userInfo[CUIParsingErrorLineKey] unsignedIntegerValue]+_headerRange.location;\n                \n                NSLog(@\"Error parsing line : %lu\",tAbsoluteLineNumber);\n                \n                _parsingError=[NSError errorWithDomain:CUIParsingErrorDomain code:tError.code userInfo:@{CUIParsingErrorLineKey:@(tAbsoluteLineNumber)}];\n            }\n            \n            // A COMPLETER\n            \n            return NO;\n        }\n    }\n    \n    if (self.threadStateRange.location!=NSNotFound)\n    {\n        _threadState=[[CUICrashLogThreadState alloc] initWithTextualRepresentation:[tLines subarrayWithRange:self.threadStateRange] reportVersion:_header.reportVersion error:&tError];\n        \n        if (_threadState==nil)\n        {\n            if (tError!=nil)\n            {\n                NSUInteger tAbsoluteLineNumber=[tError.userInfo[CUIParsingErrorLineKey] unsignedIntegerValue]+_headerRange.location;\n                \n                NSLog(@\"Error parsing line : %lu\",tAbsoluteLineNumber);\n                \n                _parsingError=[NSError errorWithDomain:CUIParsingErrorDomain code:tError.code userInfo:@{CUIParsingErrorLineKey:@(tAbsoluteLineNumber)}];\n            }\n            \n            // A COMPLETER\n            \n            return NO;\n        }\n    }\n    \n    if (self.binaryImagesRange.location!=NSNotFound)\n    {\n        _binaryImages=[[CUICrashLogBinaryImages alloc] initWithTextualRepresentation:[tLines subarrayWithRange:self.binaryImagesRange] reportVersion:self.reportVersion error:&tError];\n        \n        if (_binaryImages==nil)\n        {\n            if (tError!=nil)\n            {\n                NSUInteger tAbsoluteLineNumber=[tError.userInfo[CUIParsingErrorLineKey] unsignedIntegerValue]+_headerRange.location;\n                \n                NSLog(@\"Error parsing line : %lu\",tAbsoluteLineNumber);\n                \n                _parsingError=[NSError errorWithDomain:CUIParsingErrorDomain code:tError.code userInfo:@{CUIParsingErrorLineKey:@(tAbsoluteLineNumber)}];\n            }\n            \n            // A COMPLETER\n            \n            return NO;\n        }\n    }\n    \n    self.fullyParsed=YES;\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\treturn [NSString stringWithFormat:@\"%@ %@\",self.processName,self.dateTime.description];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBacktraces+Utilities.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogBacktraces.h\"\n\n@interface CUICrashLogBacktraces (Utilities)\n\n- (NSArray *)allBinaryImagesIdentifiers;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBacktraces+Utilities.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogBacktraces+Utilities.h\"\n\n@implementation CUICrashLogBacktraces (Utilities)\n\n- (NSArray *)allBinaryImagesIdentifiers\n{\n    NSMutableSet * tMutableSet=[NSMutableSet set];\n    \n    [self.threads enumerateObjectsUsingBlock:^(CUIThread * bThread, NSUInteger bIndex, BOOL * bOutStop) {\n       \n        [bThread.callStackBacktrace.stackFrames enumerateObjectsUsingBlock:^(CUIStackFrame * bCall, NSUInteger bOtherIndex, BOOL * bOutOtherStop) {\n            \n            if (bCall.binaryImageIdentifier!=nil)\n\t\t\t\t[tMutableSet addObject:bCall.binaryImageIdentifier];\n            \n        }];\n        \n    }];\n    \n    return [tMutableSet allObjects];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBacktraces.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIThread.h\"\n\n#import \"IPSIncident.h\"\n\n@interface CUICrashLogBacktraces : NSObject\n\n@property (readonly) BOOL hasApplicationSpecificBacktrace;\n\n@property (nonatomic,readonly) NSArray<CUIThread *> * threads;\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError;\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError;\n\n- (CUIThread *)threadNamed:(NSString *)inName;\n\n- (CUIThread *)threadWithNumber:(NSUInteger)inThreadNumber;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBacktraces.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogBacktraces.h\"\n\n#import \"CUIParsingErrors.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n@interface CUICrashLogBacktraces ()\n{\n    NSMutableArray * _threads;\n}\n\n@property (readwrite) BOOL hasApplicationSpecificBacktrace;\n\n- (BOOL)parseTextualRepresentation:(NSArray<NSString *> *)inLines outError:(NSError **)outError;\n\n@end\n\n@implementation CUICrashLogBacktraces\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if ([inLines isKindOfClass:NSArray.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _threads=[NSMutableArray array];\n        \n        if ([self parseTextualRepresentation:inLines outError:outError]==NO)\n        {\n            return nil;\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError\n{\n    if ([inIncident isKindOfClass:IPSIncident.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSMutableArray * tApplicationBacktracesThreads=[NSMutableArray array];\n        \n        _hasApplicationSpecificBacktrace=NO;\n        \n        IPSIncidentExceptionInformation * tExceptionInformation=inIncident.exceptionInformation;\n        \n        if (tExceptionInformation!=nil)\n        {\n            NSArray<IPSThreadFrame *> * tLastExceptionBacktrace=tExceptionInformation.lastExceptionBacktrace;\n            \n            if (tLastExceptionBacktrace.count>0)\n            {\n                NSError * tError;\n                \n                CUIThread * tThread=[[CUIThread alloc] initApplicationSpecificBacktraceWithThreadFrames:tLastExceptionBacktrace binaryImages:inIncident.binaryImages error:&tError];\n                \n                if (tThread==nil)\n                {\n                    return nil;\n                }\n                \n                [tApplicationBacktracesThreads addObject:tThread];\n                \n                _hasApplicationSpecificBacktrace=YES;\n            }\n        }\n        \n        if (_hasApplicationSpecificBacktrace==NO)\n        {\n            IPSIncidentDiagnosticMessage * tDiagnosticMessage=inIncident.diagnosticMessage;\n            \n            if (tDiagnosticMessage!=nil)\n            {\n                IPSApplicationSpecificInformation * tApplicationSpecificInformation=tDiagnosticMessage.asi;\n                \n                if (tApplicationSpecificInformation.backtraces.count>0)\n                {\n                    NSArray * tApplicationSpecificBacktraces=tApplicationSpecificInformation.backtraces;\n                    \n                    [tApplicationSpecificBacktraces enumerateObjectsUsingBlock:^(NSString * bString, NSUInteger bIndex, BOOL * bOutStop) {\n                       \n                        NSMutableArray * tLines=[NSMutableArray arrayWithObject:@\"Application Specific Backtrace 1\"];\n                        \n                        [bString enumerateLinesUsingBlock:^(NSString * bLine, BOOL * bOutStop) {\n                            \n                            [tLines addObject:bLine];\n                        }];\n                        \n                        NSError * tError;\n                        \n                        CUIThread * tThread=[[CUIThread alloc] initApplicationSpecificBacktraceWithTextualRepresentation:tLines error:&tError];\n                        \n                        if (tThread==nil)\n                        {\n                            *bOutStop=YES;\n                            \n                            return;\n                        }\n                        \n                        [tApplicationBacktracesThreads addObject:tThread];\n                        \n                    }];\n                    \n                    // A COMPLETER\n                    \n                    _hasApplicationSpecificBacktrace=YES;\n                }\n            }\n        }\n        \n        \n        NSArray * tThreads=inIncident.threads;\n        \n        if (tThreads==nil)\n        {\n            // A COMPLETER\n            \n            return nil;\n        }\n            \n        _threads=[[tThreads WB_arrayByMappingObjectsUsingBlock:^CUIThread *(IPSThread * bThread, NSUInteger bIndex) {\n            \n            CUIThread * tThread=[[CUIThread alloc] initWithIPSThread:bThread atIndex:bIndex binaryImages:inIncident.binaryImages error:NULL];\n            \n            if (tThread==nil)\n            {\n                // A COMPLETER\n            }\n            \n            return tThread;\n        }] mutableCopy];\n        \n        if (tApplicationBacktracesThreads.count>0)\n        {\n            [_threads insertObjects:tApplicationBacktracesThreads atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0,tApplicationBacktracesThreads.count)]];\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (CUIThread *)threadNamed:(NSString *)inName\n{\n    if (inName==nil)\n        return nil;\n    \n    for(CUIThread * tThread in _threads)\n    {\n        if ([tThread.name isEqualToString:inName]==YES)\n            return tThread;\n    }\n    \n    return nil;\n}\n\n- (CUIThread *)threadWithNumber:(NSUInteger)inThreadNumber\n{\n    for(CUIThread * tThread in _threads)\n    {\n        if (tThread.isApplicationSpecificBacktrace==NO && tThread.number==inThreadNumber)\n            return tThread;\n    }\n    \n    return nil;\n}\n\n#pragma mark -\n\n- (BOOL)parseTextualRepresentation:(NSArray<NSString *> *)inLines outError:(NSError **)outError\n{\n    if ([inLines.firstObject isEqualToString:@\"Backtrace not available\"]==YES)\n        return YES;\n    \n    __block NSError * tError=nil;\n    \n    // Probably not as fast as block enumeration but the code is easier to follow.\n    NSUInteger tLinesCount=inLines.count;\n    NSUInteger tIndex=0;\n    \n    while (tIndex<tLinesCount && inLines[tIndex].length==0)\n        tIndex++;\n    \n    while (tIndex<tLinesCount)\n    {\n        NSInteger tThreadEntityLineStart=tIndex;\n        \n        while (tIndex<tLinesCount && inLines[tIndex].length!=0)\n            tIndex++;\n        \n        NSInteger tThreadEntityLineEnd=tIndex-1;\n        \n        CUIThread * tThread=[[CUIThread alloc] initWithTextualRepresentation:[inLines subarrayWithRange:NSMakeRange(tThreadEntityLineStart, tThreadEntityLineEnd-tThreadEntityLineStart+1)]\n                                                                       error:&tError];\n        \n        if (tThread==nil)\n            break;\n        \n        if (tThread.isApplicationSpecificBacktrace==YES)\n            self.hasApplicationSpecificBacktrace=YES;\n        \n        [_threads addObject:tThread];\n        \n        while (tIndex<tLinesCount && inLines[tIndex].length==0)\n            tIndex++;\n    }\n    \n    if (tError!=nil)\n    {\n        if (outError!=NULL)\n            *outError=tError;\n    \n        return NO;\n    }\n        \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBinaryImages.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIBinaryImage.h\"\n\n#import \"IPSIncident.h\"\n\n@interface CUICrashLogBinaryImages : NSObject\n\n    @property (readonly) NSArray<CUIBinaryImage *> * binaryImages;\n\n    @property (nonatomic,readonly) NSArray * allUUIDs;\n\n    @property (nonatomic,readonly) NSArray * userCodeBinaryImages;\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError;\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError;\n\n- (CUIBinaryImage *)binaryImageWithIdentifier:(NSString *)inIdentifier;\n\n- (CUIBinaryImage *)binaryImageForMemoryAddress:(NSUInteger)inMemoryAddress;\n\n- (BOOL)isUserCodeAtMemoryAddress:(NSUInteger)inMemoryAddress inBinaryImage:(NSString *)inIdentifier;\n\n- (BOOL)isUserCodeAtMemoryAddress:(NSUInteger)inMemoryAddress inBinaryName:(NSString *)inName;\n\n- (NSString *)binaryImageIdentifierForName:(NSString *)inBinaryName;\n\n\n- (CUIBinaryImage *)binaryImageWithIdentifierOrName:(NSString *)inString identifier:(NSString **)outIdentifier;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBinaryImages.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogBinaryImages.h\"\n\n#import \"CUIParsingErrors.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n@interface CUICrashLogBinaryImages ()\n{\n    NSMutableDictionary * _binaryImagesRegistry;\n    \n    NSMutableDictionary * _binaryNamesRegistry;\n    \n    NSMutableDictionary * _binaryNameToIdentifierRosettaStone;\n}\n\n@property (readwrite) NSArray<CUIBinaryImage *> * binaryImages;\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion outError:(NSError **)outError;\n\n@end\n\n\n@implementation CUICrashLogBinaryImages\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if ([inLines isKindOfClass:NSArray.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _binaryImages=[NSArray array];\n        \n        _binaryImagesRegistry=[NSMutableDictionary dictionary];\n        \n        _binaryNamesRegistry=[NSMutableDictionary dictionary];\n        \n        _binaryNameToIdentifierRosettaStone=[NSMutableDictionary dictionary];\n        \n        if ([self parseTextualRepresentation:inLines reportVersion:inReportVersion outError:outError]==NO)\n        {\n            return nil;\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError\n{\n    if ([inIncident isKindOfClass:IPSIncident.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSMutableDictionary * tBinaryImagesRegistry=[NSMutableDictionary dictionary];\n        \n        NSMutableDictionary * tBinaryNamesRegistry=[NSMutableDictionary dictionary];\n        \n        NSMutableDictionary * tBinaryNameToIdentifierRosettaStone=[NSMutableDictionary dictionary];\n        \n        _binaryImages=(NSArray<CUIBinaryImage *> *)[inIncident.binaryImages WB_arrayByMappingObjectsLenientlyUsingBlock:^CUIBinaryImage *(IPSImage * bImage, NSUInteger bIndex) {\n            \n            if ([bImage.source isEqualToString:@\"A\"]==YES)\n                return nil;\n            \n            CUIBinaryImage * tBinaryImage=[[CUIBinaryImage alloc] initWithImage:bImage error:NULL];\n        \n            if (tBinaryImage==nil)\n            {\n                // A COMPLETER\n            }\n            else\n            {\n                tBinaryImagesRegistry[tBinaryImage.identifier]=tBinaryImage;\n                \n                NSString * tBinartName=tBinaryImage.path.lastPathComponent;\n                \n                tBinaryNamesRegistry[tBinartName]=tBinaryImage;\n                \n                tBinaryNameToIdentifierRosettaStone[tBinartName]=tBinaryImage.identifier;\n            }\n            \n            return tBinaryImage;\n            \n        }];\n        \n        _binaryImagesRegistry=tBinaryImagesRegistry;\n        \n        _binaryNamesRegistry=tBinaryNamesRegistry;\n        \n        _binaryNameToIdentifierRosettaStone=tBinaryNameToIdentifierRosettaStone;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion outError:(NSError **)outError\n{\n    if ([inLines.firstObject isEqualToString:@\"Binary images description not available\"]==YES)\n        return YES;\n    \n    __block NSError * tError=nil;\n    \n    NSArray * tImagesLines=[inLines subarrayWithRange:NSMakeRange(1, inLines.count-1)];\n    \n    NSMutableArray * tBinaryImages=[NSMutableArray array];\n    \n    [tImagesLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL *bOutStop) {\n        \n        NSUInteger tLineLength=bLine.length;\n        \n        if (tLineLength==0)\n        {\n            *bOutStop=YES;\n            \n            return;\n        }\n        \n        CUIBinaryImage * tBinaryImage=[[CUIBinaryImage alloc] initWithString:bLine reportVersion:inReportVersion error:&tError];\n        \n        if (tBinaryImage==nil)\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            \n            return;\n        }\n        \n        [tBinaryImages addObject:tBinaryImage];\n        \n        self->_binaryImagesRegistry[tBinaryImage.identifier]=tBinaryImage;\n        \n        NSString * tBinartName=tBinaryImage.path.lastPathComponent;\n        \n        self->_binaryNamesRegistry[tBinartName]=tBinaryImage;\n        \n        self->_binaryNameToIdentifierRosettaStone[tBinartName]=tBinaryImage.identifier;\n        \n    }];\n    \n    _binaryImages=[tBinaryImages copy];\n    \n    if (outError!=NULL && tError!=nil)\n        *outError=tError;\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (NSArray *)allUUIDs\n{\n    return [_binaryImages WB_arrayByMappingObjectsLenientlyUsingBlock:^id(CUIBinaryImage * bBinaryImage, NSUInteger bIndex) {\n        \n        return bBinaryImage.UUID;   // can be nil\n    }];\n}\n\n- (NSArray *)userCodeBinaryImages\n{\n    return [_binaryImages WB_filteredArrayUsingBlock:^BOOL(CUIBinaryImage * bBinaryImage, NSUInteger bIndex) {\n       \n        \n        if (bBinaryImage.isUserCode==YES)\n            return YES;\n        \n        NSString * tPath=bBinaryImage.path;\n        \n        return ([tPath hasPrefix:@\"/System/\"]==NO && [tPath hasPrefix:@\"/usr/lib\"]==NO);\n    }];\n}\n\n- (NSString *)binaryImageIdentifierForName:(NSString *)inBinaryName\n{\n    if (inBinaryName==nil)\n        return nil;\n    \n    return _binaryNameToIdentifierRosettaStone[inBinaryName];\n}\n\n- (CUIBinaryImage *)binaryImageWithIdentifier:(NSString *)inIdentifier\n{\n    if (inIdentifier==nil)\n        return nil;\n    \n    return _binaryImagesRegistry[inIdentifier];\n}\n\n- (CUIBinaryImage *)binaryImageForMemoryAddress:(NSUInteger)inMemoryAddress\n{\n    static CUIBinaryImage * sLastFoundBinaryImage=nil;\n    \n    if (sLastFoundBinaryImage!=nil)\n    {\n        CUIAddressesRange * tRange=sLastFoundBinaryImage.addressesRange;\n        \n        if (inMemoryAddress>=tRange.loadAddress && inMemoryAddress<(tRange.loadAddress+tRange.length))\n            return sLastFoundBinaryImage;\n    }\n    \n    for(CUIBinaryImage * tBinaryImage in _binaryImages)\n    {\n        CUIAddressesRange * tRange=tBinaryImage.addressesRange;\n        \n        if (inMemoryAddress>=tRange.loadAddress && inMemoryAddress<(tRange.loadAddress+tRange.length))\n        {\n            sLastFoundBinaryImage=tBinaryImage;\n            \n            return tBinaryImage;\n        }\n    }\n    \n    return nil;\n}\n\n- (BOOL)isUserCodeAtMemoryAddress:(NSUInteger)inMemoryAddress inBinaryImage:(NSString *)inIdentifier\n{\n    CUIBinaryImage * tBinaryImage=_binaryImagesRegistry[inIdentifier];\n    \n    if (tBinaryImage==nil)\n        return NO;\n    \n    if (tBinaryImage.isUserCode==NO)\n        return NO;\n    \n    CUIAddressesRange * tRange=tBinaryImage.addressesRange;\n    \n    return (inMemoryAddress>=tRange.loadAddress && inMemoryAddress<(tRange.loadAddress+tRange.length));\n}\n\n- (BOOL)isUserCodeAtMemoryAddress:(NSUInteger)inMemoryAddress inBinaryName:(NSString *)inName\n{\n    CUIBinaryImage * tBinaryImage=_binaryNamesRegistry[inName];\n    \n    if (tBinaryImage==nil)\n        return NO;\n    \n    if (tBinaryImage.isUserCode==NO)\n        return NO;\n    \n    CUIAddressesRange * tRange=tBinaryImage.addressesRange;\n    \n    return (inMemoryAddress>=tRange.loadAddress && inMemoryAddress<(tRange.loadAddress+tRange.length));\n}\n\n- (CUIBinaryImage *)binaryImageWithIdentifierOrName:(NSString *)inString identifier:(NSString **)outIdentifier\n{\n    CUIBinaryImage * tBinaryImage=[self binaryImageWithIdentifier:inString];\n    \n    if (tBinaryImage==nil)\n    {\n        NSString * tUUID=[self binaryImageIdentifierForName:inString];\n        \n        if (tUUID!=nil)\n        {\n            tBinaryImage=[self binaryImageWithIdentifier:tUUID];\n            \n            if (tBinaryImage!=nil)\n            {\n                if (outIdentifier!=NULL)\n                    *outIdentifier=tUUID;\n            }\n        }\n    }\n    else\n    {\n        if (outIdentifier!=NULL)\n            *outIdentifier=inString;\n    }\n    \n    return tBinaryImage;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBrowsingState.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUITextModeDisplaySettings.h\"\n#import \"CUIOutlineModeDisplaySettings.h\"\n\n@interface CUICrashLogBrowsingState : NSObject\n\n    @property CUITextModeDisplaySettings * textModeDisplaySettings;\n\n    @property NSUInteger firstVisibleLineNumber;\n\n    @property CGFloat firstVisibleLineVerticalOffset;\n\n\n    @property CUIOutlineModeDisplaySettings * outlineModeDisplaySettings;\n\n    @property NSMutableDictionary * listDisclosedThreads;\n\n    @property (copy) NSString * listSelectedStackFrame;\n\n\n    @property NSUInteger columnSelectedThread;\n\n    @property NSUInteger columnSelectedStackFrame;\n\n\n\n    @property (readonly) NSMutableDictionary * registersViewValues;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBrowsingState.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogBrowsingState.h\"\n\n@interface CUICrashLogBrowsingState ()\n\n    @property NSMutableDictionary * registersViewValues;\n\n@end\n\n@implementation CUICrashLogBrowsingState\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _firstVisibleLineNumber=NSNotFound;\n        \n        _firstVisibleLineVerticalOffset=0;\n        \n        _registersViewValues=[NSMutableDictionary dictionary];\n        \n        _listDisclosedThreads=nil;\n        \n        _listSelectedStackFrame=nil;\n        \n        _columnSelectedThread=NSNotFound;\n        \n        _columnSelectedStackFrame=NSNotFound;\n    }\n    \n    return self;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBrowsingStateRegistry.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLogBrowsingState.h\"\n\n#import \"CUICrashLog.h\"\n\n@interface CUICrashLogBrowsingStateRegistry : NSObject\n\n+ (CUICrashLogBrowsingStateRegistry *)sharedRegistry;\n\n- (CUICrashLogBrowsingState *)browsingStateForCrashLog:(CUICrashLog *)inCrashLog windowNumber:(NSInteger)inWindowNumber;\n\n- (void)setBrowsingState:(CUICrashLogBrowsingState *)inBrowsingState forCrashLog:(CUICrashLog *)inCrashLog windowNumber:(NSInteger)inWindowNumber;\n\n- (void)removeBrowsingStateForCrashLog:(CUICrashLog *)inCrashLog windowNumber:(NSInteger)inWindowNumber;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogBrowsingStateRegistry.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogBrowsingStateRegistry.h\"\n\n@interface CUICrashLogBrowsingStateRegistry ()\n{\n    NSMutableDictionary * _registry;\n}\n\n@end\n\n@implementation CUICrashLogBrowsingStateRegistry\n\n+ (CUICrashLogBrowsingStateRegistry *)sharedRegistry\n{\n    static CUICrashLogBrowsingStateRegistry * sRegistry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sRegistry=[CUICrashLogBrowsingStateRegistry new];\n    });\n    \n    return sRegistry;\n}\n\n#pragma mark -\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _registry=[NSMutableDictionary dictionary];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (CUICrashLogBrowsingState *)browsingStateForCrashLog:(CUICrashLog *)inCrashLog windowNumber:(NSInteger)inWindowNumber\n{\n    NSString * tPath=inCrashLog.crashLogFilePath;\n    \n    if (tPath==nil)\n        return nil;\n    \n    NSMutableDictionary * tMutableDictionary=_registry[@(inWindowNumber)];\n    \n    if (tMutableDictionary==nil)\n    {\n        tMutableDictionary=[NSMutableDictionary dictionary];\n        \n        _registry[@(inWindowNumber)]=tMutableDictionary;\n    }\n    \n    CUICrashLogBrowsingState * tBrowsingState=tMutableDictionary[tPath];\n    \n    if (tBrowsingState==nil)\n    {\n        tBrowsingState=[CUICrashLogBrowsingState new];\n        \n        tMutableDictionary[tPath]=tBrowsingState;\n    }\n    \n    return tBrowsingState;\n}\n\n- (void)setBrowsingState:(CUICrashLogBrowsingState *)inBrowsingState forCrashLog:(CUICrashLog *)inCrashLog windowNumber:(NSInteger)inWindowNumber\n{\n    NSString * tPath=inCrashLog.crashLogFilePath;\n    \n    if (inBrowsingState==nil || tPath==nil)\n        return;\n    \n    NSMutableDictionary * tMutableDictionary=_registry[@(inWindowNumber)];\n    \n    if (tMutableDictionary==nil)\n    {\n        tMutableDictionary=[NSMutableDictionary dictionary];\n        \n        if (tMutableDictionary==nil)\n        {\n            NSLog(@\"Uh oh\");\n            return;\n        }\n        \n        _registry[@(inWindowNumber)]=tMutableDictionary;\n    }\n    \n    tMutableDictionary[tPath]=inBrowsingState;\n}\n\n- (void)removeBrowsingStateForCrashLog:(CUICrashLog *)inCrashLog windowNumber:(NSInteger)inWindowNumber\n{\n    NSString * tPath=inCrashLog.crashLogFilePath;\n    \n    if (tPath==nil)\n        return;\n    \n    NSMutableDictionary * tMutableDictionary=_registry[@(inWindowNumber)];\n    \n    if (tMutableDictionary==nil)\n        return;\n    \n    [tMutableDictionary removeObjectForKey:tPath];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogContentsViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUICrashLogPresentationViewController.h\"\n\n#import \"CUIKeyViews.h\"\n\n@interface CUICrashLogContentsViewController : NSViewController <CUIKeyViews>\n\n    @property (nonatomic) CUIPresentationMode presentationMode;\n\n    @property (nonatomic) CUICrashLog * crashLog;\n\n    @property (nonatomic,getter=isBottomViewCollapsed) BOOL bottomViewCollapsed;\n\n    @property (nonatomic,readonly) CUICrashLogPresentationViewController * presentationViewController;\n\n\n- (IBAction)showHideBottomView:(id)sender;\n\n@end\n\nextern NSString * const CUICrashLogContentsViewPresentationModeDidChangeNotification;\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogContentsViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogContentsViewController.h\"\n\n#import \"CUICrashLogPresentationTextViewController.h\"\n\n#import \"CUICrashLogPresentationOutlineViewController.h\"\n\n#import \"CUIdSYMDropView.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUIdSYMHunter.h\"\n\nNSString * const CUIDefaultsPresentationModeKey=@\"ui.presentationMode\";\n\nNSString * const CUICrashLogContentsViewPresentationModeDidChangeNotification=@\"CUICrashLogContentsViewPresentationModeDidChangeNotification\";\n\n@interface CUICrashLogContentsViewController () <CUIFileDeadDropViewDelegate,NSMenuItemValidation>\n{\n    CUICrashLogPresentationTextViewController * _textViewController;\n    \n    CUICrashLogPresentationOutlineViewController * _outlineViewController;\n    \n    \n    CUICrashLogPresentationViewController * _currentPresentationViewController;\n    \n    CUIdSYMHunter * _shareddSYMHunter;\n}\n\n- (void)setPresentationMode:(CUIPresentationMode)inPresentationMode transferCrashLog:(BOOL)inTransferCrashLog;\n\n- (void)symbolicate;\n\n// Notifications\n\n- (void)huntDidFinish:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashLogContentsViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _presentationMode=CUIPresentationModeUnknown;\n        \n        _textViewController=[CUICrashLogPresentationTextViewController new];\n        \n        _outlineViewController=[CUICrashLogPresentationOutlineViewController new];\n        \n        _shareddSYMHunter=[CUIdSYMHunter sharedHunter];\n    }\n    \n    return self;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUICrashLogContentsViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    [tUserDefaults registerDefaults:@{\n                                      CUIDefaultsPresentationModeKey:@(CUIPresentationModeText)\n                                      }];\n    \n    [self setPresentationMode:[tUserDefaults integerForKey:CUIDefaultsPresentationModeKey] transferCrashLog:NO];\n    \n    ((CUIdSYMDropView *)self.view).delegate=self;\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(huntDidFinish:) name:CUIdSYMHunterHuntDidFinishNotification object:nil];\n}\n\n#pragma mark -\n\n- (CUICrashLogPresentationViewController *)presentationViewController\n{\n    return _currentPresentationViewController;\n}\n\n#pragma mark - NSObject\n\n- (id)forwardingTargetForSelector:(SEL)aSelector\n{\n    return _currentPresentationViewController;\n}\n\n- (BOOL)respondsToSelector:(SEL)aSelector\n{\n    BOOL tResponds=[super respondsToSelector:aSelector];\n    \n    if (tResponds==YES)\n        return YES;\n    \n    if (_currentPresentationViewController==nil)\n        return NO;\n    \n    NSString * tSelectorName=NSStringFromSelector(aSelector);\n    \n    if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO && [tSelectorName isEqualToString:@\"performTextFinderAction:\"]==NO)\n        return NO;\n    \n    return [_currentPresentationViewController respondsToSelector:aSelector];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if ([super respondsToSelector:tAction]==NO)\n    {\n        NSString * tSelectorName=NSStringFromSelector(tAction);\n        \n        if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO && [tSelectorName isEqualToString:@\"performTextFinderAction:\"]==NO)\n            return NO;\n        \n        if ([_currentPresentationViewController respondsToSelector:tAction]==YES)\n            return [_currentPresentationViewController validateMenuItem:inMenuItem];\n        \n        return NO;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchPresentationMode:))\n    {\n        inMenuItem.state=(inMenuItem.tag==self.presentationMode) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        return YES;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_champollion:))\n    {\n        NSArray * tUserCodeBinaryUUIDs=[self.crashLog.binaryImages.userCodeBinaryImages WB_arrayByMappingObjectsUsingBlock:^NSString *(CUIBinaryImage * bImage, NSUInteger bIndex) {\n            \n            return bImage.UUID;\n            \n        }];\n        \n        NSMutableSet * tUUIDsSet=[NSMutableSet setWithArray:tUserCodeBinaryUUIDs];\n        \n        // Remove the UUIDs that are already known to the dSYMBundleManager\n        \n        [[CUIdSYMBundlesManager sharedManager].bundlesSet enumerateObjectsUsingBlock:^(CUIdSYMBundle * bBundle, BOOL * bOutStop) {\n            \n            NSArray * tUUIDs=bBundle.binaryUUIDs;\n            \n            if (tUUIDs.count==0)\n                return;\n            \n            [tUUIDsSet minusSet:[NSSet setWithArray:tUUIDs]];\n        }];\n        \n        [tUUIDsSet minusSet:_shareddSYMHunter.huntingBundleUUIDs];\n        \n        return (tUUIDsSet.count>0);\n    }\n    \n    return NO;\n}\n\n- (IBAction)CUI_MENUACTION_switchPresentationMode:(id)sender\n{\n    CUIPresentationMode tPresentationMode=CUIPresentationModeUnknown;\n    \n    if ([sender isKindOfClass:[NSMenuItem class]]==YES)\n    {\n        NSMenuItem * tMenuItem=(NSMenuItem *)sender;\n        \n        tPresentationMode=tMenuItem.tag;\n    }\n    else if ([sender isKindOfClass:[NSSegmentedControl class]]==YES)\n    {\n        NSSegmentedControl * tSegmentedControl=(NSSegmentedControl *)sender;\n        \n        tPresentationMode=[tSegmentedControl tagForSegment:tSegmentedControl.selectedSegment];\n    }\n    else\n    {\n        return;\n    }\n        \n    self.presentationMode=tPresentationMode;\n}\n\n- (IBAction)CUI_MENUACTION_champollion:(id)sender\n{\n    [self symbolicate];\n}\n\n#pragma mark -\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    if (_crashLog==inCrashLog)\n        return;\n    \n    _crashLog=inCrashLog;\n    \n    CUIApplicationPreferences * tApplicationPreferences=[CUIApplicationPreferences sharedPreferences];\n    \n    if (inCrashLog==nil)\n        return;\n    \n    _currentPresentationViewController.crashLog=inCrashLog;\n    \n    if ([inCrashLog isKindOfClass:[CUICrashLog class]]==NO)\n        return;\n    \n    if (tApplicationPreferences.searchForSymbolsFilesAutomatically==YES)\n        [self symbolicate];\n}\n\n- (BOOL)isBottomViewCollapsed\n{\n    switch(self.presentationMode)\n    {\n        case CUIPresentationModeOutline:\n            \n            return _outlineViewController.isBinaryImagesViewCollapsed;\n            \n        case CUIPresentationModeText:\n        default:\n            \n            break;\n    }\n    \n    return NO;\n}\n\n#pragma mark -\n\n- (void)symbolicate\n{\n    NSArray * tUserCodeBinaryUUIDs=[self.crashLog.binaryImages.userCodeBinaryImages WB_arrayByMappingObjectsUsingBlock:^NSString *(CUIBinaryImage * bImage, NSUInteger bIndex) {\n        \n        return bImage.UUID;\n        \n    }];\n    \n    NSMutableSet * tUUIDsSet=[NSMutableSet setWithArray:tUserCodeBinaryUUIDs];\n    \n    // Remove the UUIDs that are already known to the dSYMBundleManager\n    \n    [[CUIdSYMBundlesManager sharedManager].bundlesSet enumerateObjectsUsingBlock:^(CUIdSYMBundle * bBundle, BOOL * bOutStop) {\n        \n        NSArray * tUUIDs=bBundle.binaryUUIDs;\n        \n        if (tUUIDs.count==0)\n            return;\n        \n        [tUUIDsSet minusSet:[NSSet setWithArray:tUUIDs]];\n    }];\n    \n    if (tUUIDsSet.count==0)\n        return;\n    \n    [_shareddSYMHunter huntBundleWithUUIDs:tUUIDsSet];\n}\n\n- (void)setPresentationMode:(CUIPresentationMode)inPresentationMode\n{\n    [self setPresentationMode:inPresentationMode transferCrashLog:YES];\n}\n\n- (void)setPresentationMode:(CUIPresentationMode)inPresentationMode transferCrashLog:(BOOL)inTransferCrashLog\n{\n    if (inPresentationMode==CUIPresentationModeUnknown)\n        return;\n    \n    if (_presentationMode==inPresentationMode)\n        return;\n    \n    _presentationMode=inPresentationMode;\n    \n    NSWindow * tWindow=self.view.window;\n    BOOL tShouldRestoreFirstController=NO;\n    \n    CUICrashLog * tCurrentCrashLog=nil;\n    \n    if (inTransferCrashLog==YES)\n    {\n        tCurrentCrashLog=_currentPresentationViewController.crashLog;\n    }\n    \n    if (_currentPresentationViewController!=nil)\n    {\n        NSResponder * tResponder=tWindow.firstResponder;\n        \n        while (tResponder!=nil)\n        {\n            if (tResponder==_currentPresentationViewController)\n            {\n                tShouldRestoreFirstController=YES;\n                break;\n            }\n            \n            tResponder=tResponder.nextResponder;\n        }\n    }\n    \n    [_currentPresentationViewController.view removeFromSuperview];\n    \n    switch(_presentationMode)\n    {\n       case CUIPresentationModeText:\n            \n            _textViewController.view.frame=self.view.bounds;\n            \n            _currentPresentationViewController=_textViewController;\n            \n            break;\n            \n        case CUIPresentationModeOutline:\n            \n            _outlineViewController.view.frame=self.view.bounds;\n            \n            _currentPresentationViewController=_outlineViewController;\n            \n            break;\n            \n        default:\n            \n            return;\n    }\n    \n    if (inTransferCrashLog==YES)\n    {\n        _currentPresentationViewController.crashLog=tCurrentCrashLog;\n    }\n    \n    [self.view addSubview:_currentPresentationViewController.view];\n    \n    if (tShouldRestoreFirstController==YES)\n        [tWindow makeFirstResponder:_currentPresentationViewController];\n    \n    // Post Notification\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogContentsViewPresentationModeDidChangeNotification object:self userInfo:@{@\"mode\":@(_presentationMode)}];\n    \n    // Save presentation mode in defaults\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    [tUserDefaults setInteger:_presentationMode forKey:CUIDefaultsPresentationModeKey];\n}\n\n#pragma mark -\n\n- (IBAction)showHideBottomView:(id)sender\n{\n    if ([_currentPresentationViewController isKindOfClass:[CUICrashLogPresentationOutlineViewController class]]==NO)\n        return;\n    \n    [_outlineViewController showHideBottomView:sender];\n}\n\n#pragma mark - CUIFileDeadDropViewDelegate\n\n- (BOOL)fileDeadDropView:(CUIFileDeadDropView *)inView validateDropFileURLs:(NSArray<NSURL *> *)inURLArray\n{\n    if (inURLArray==nil)\n        return NO;\n    \n    if ([self.crashLog isMemberOfClass:[CUICrashLog class]]==NO)\n        return NO;\n    \n    CUIdSYMBundlesManager * tBundlesManager=[CUIdSYMBundlesManager sharedManager];\n    \n    NSArray * tAllUUIDs=self.crashLog.binaryImages.allUUIDs;\n    \n    NSArray<NSURL *> * tFilteredArray=[inURLArray WB_filteredArrayUsingBlock:^BOOL(NSURL * bURL, NSUInteger bIndex) {\n        \n        NSNumber *tIsDirectoryNumber;\n        \n        if ([bURL getResourceValue:&tIsDirectoryNumber forKey:NSURLIsDirectoryKey error:NULL]==NO)\n            return NO;\n        \n        if (tIsDirectoryNumber.boolValue==NO)\n            return NO;\n        \n        // Should have .crash extension\n        \n        if ([bURL.pathExtension caseInsensitiveCompare:@\"dSYM\"]!=NSOrderedSame)\n            return NO;\n        \n        // Check that these are dSYM bundles and that the UUIDs are not already listed\n        \n        CUIdSYMBundle * tBundle=[[CUIdSYMBundle alloc] initWithURL:bURL];\n        \n        if (tBundle.isDSYMBundle==NO)\n            return NO;\n        \n        if ([tBundlesManager containsBundle:tBundle]==YES)\n            return NO;\n        \n        // Check that one of the UUIDs is the one of a binary of the crash log\n        \n        NSUInteger tIndex=[tBundle.binaryUUIDs indexOfObjectPassingTest:^BOOL(NSString * bUUID, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            return [tAllUUIDs containsObject:bUUID];\n        }];\n        \n        return (tIndex!=NSNotFound);\n\n    }];\n    \n    return (tFilteredArray.count>0);\n}\n\n- (BOOL)fileDeadDropView:(CUIFileDeadDropView *)inView acceptDropFileURLs:(NSArray<NSURL *> *)inURLArray\n{\n    if (inURLArray==nil)\n        return NO;\n    \n    CUIdSYMBundlesManager * tBundlesManager=[CUIdSYMBundlesManager sharedManager];\n    \n    NSArray * tAllUUIDs=self.crashLog.binaryImages.allUUIDs;\n    \n    NSArray * tMappedArray=[inURLArray WB_arrayByMappingObjectsLenientlyUsingBlock:^CUIdSYMBundle *(NSURL * bURL, NSUInteger bIndex) {\n        \n        NSNumber *tIsDirectoryNumber;\n        \n        if ([bURL getResourceValue:&tIsDirectoryNumber forKey:NSURLIsDirectoryKey error:NULL]==NO)\n            return nil;\n        \n        if (tIsDirectoryNumber.boolValue==NO)\n            return nil;\n        \n        // Should have .crash extension\n        \n        if ([bURL.pathExtension caseInsensitiveCompare:@\"dSYM\"]!=NSOrderedSame)\n            return nil;\n        \n        // Check that these are dSYM bundles and that the UUIDs are not already listed\n        \n        CUIdSYMBundle * tBundle=[[CUIdSYMBundle alloc] initWithURL:bURL];\n        \n        if (tBundle.isDSYMBundle==NO)\n            return nil;\n        \n        if ([tBundlesManager containsBundle:tBundle]==YES)\n            return nil;\n        \n        // Check that one the UUIDs is the one of a binary of the crash log\n        \n        NSUInteger tIndex=[tBundle.binaryUUIDs indexOfObjectPassingTest:^BOOL(NSString * bUUID, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            return [tAllUUIDs containsObject:bUUID];\n        }];\n        \n        return (tIndex!=NSNotFound) ? tBundle : nil;\n    }];\n    \n    [tBundlesManager addBundles:tMappedArray];\n    \n    return (tMappedArray.count>0);\n}\n\n#pragma mark - CUIKeyViews\n\n- (NSView *)firstKeyView\n{\n    return _currentPresentationViewController.firstKeyView;\n}\n\n- (NSView *)lastKeyView\n{\n    return _currentPresentationViewController.lastKeyView;\n}\n\n#pragma mark - Notifications\n\n- (void)huntDidFinish:(NSNotification *)inNotification\n{\n    // A COMPLETER\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogContentsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogContentsViewController\">\n            <connections>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\" customClass=\"CUIdSYMDropView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"726\" height=\"845\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <point key=\"canvasLocation\" x=\"81\" y=\"278\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogDianosticMessages.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"IPSIncident.h\"\n\n@interface CUICrashLogDianosticMessages : NSObject\n\n    @property (readonly,copy) NSString * messages;\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError;\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogDianosticMessages.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogDianosticMessages.h\"\n\n#import \"IPSIncident+ApplicationSpecificInformation.h\"\n\n#import \"CUIParsingErrors.h\"\n\n@interface CUICrashLogDianosticMessages ()\n\n    @property (copy) NSString * messages;\n\n@end\n\n@implementation CUICrashLogDianosticMessages\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if ([inLines isKindOfClass:NSArray.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    _messages=@\"\";\n    \n    if ([self parseTextualRepresentation:inLines outError:outError]==NO)\n    {\n        return nil;\n    }\n\n    return self;\n}\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError\n{\n    if ([inIncident isKindOfClass:IPSIncident.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        IPSIncidentDiagnosticMessage * tDiagnosticMessage=inIncident.diagnosticMessage;\n        \n        if (tDiagnosticMessage!=nil)\n        {\n            NSMutableString * tMessages=[NSMutableString string];\n            \n            // VM Region Info\n            \n            if (tDiagnosticMessage.vmregioninfo!=nil)\n            {\n                [tMessages appendFormat:@\"VM Region Info: %@\\n\",tDiagnosticMessage.vmregioninfo];\n                \n                [tMessages appendString:@\"\\n\"];\n            }\n            \n            // Application Specific Information\n            \n            NSArray<NSString *> * tApplicationSpecificInformationMessage = [inIncident applicationSpecificInformationMessage];\n            \n            if (tApplicationSpecificInformationMessage.count>0)\n            {\n                [tMessages appendString:@\"Application Specific Information:\\n\"];\n                \n                [tMessages appendString:[tApplicationSpecificInformationMessage componentsJoinedByString:@\"\\n\"]];\n                \n                 [tMessages appendString:@\"\\n\"];\n            }\n            \n            // Application Specific Signatures\n            \n            NSArray<NSString *> * tSignatures = tDiagnosticMessage.asi.signatures;\n            \n            if (tSignatures)\n            {\n                [tMessages appendString:@\"Application Specific Signatures:\\n\"];\n                \n                for(NSString * tSignature in tSignatures)\n                    [tMessages appendFormat:@\"%@\\n\",tSignature];\n            }\n            \n            _messages=[tMessages copy];\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError\n{\n    __block NSError * tError=nil;\n    \n    NSString * tFirstLine=inLines.firstObject;\n    \n    NSMutableIndexSet * tMutableIndexSet=[NSMutableIndexSet indexSetWithIndexesInRange:NSMakeRange(0,inLines.count)];\n    \n    if ([tFirstLine hasPrefix:@\"Application Specific Information:\"]==YES)\n    {\n        [tMutableIndexSet removeIndex:0];\n    }\n    \n    _messages=[[inLines objectsAtIndexes:tMutableIndexSet] componentsJoinedByString:@\"\\n\"];\n    \n    \n    if (outError!=NULL && tError!=nil)\n        *outError=tError;\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogErrors.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\nextern NSString * const CUICrashLogDomain;\n\nNS_ERROR_ENUM(CUICrashLogDomain)\n{\n    CUICrashLogEmptyFileError = 1,          // Empty file\n    CUICrashLogInvalidFormatFileError = 2,  // File with contents that do not match the supported formats\n};\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogErrors.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogErrors.h\"\n\nNSString * const CUICrashLogDomain=@\"fr.whitebox.crashlog\";\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+QuickHelp.h",
    "content": "/*\n Copyright (c) 2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogExceptionInformation.h\"\n\n@interface CUICrashLogExceptionInformation (QuickHelp)\n\n@property (nonatomic,readonly,getter=isQuickHelpAvailableForTerminationReason) BOOL quickHelpAvailableForTerminationReason;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+QuickHelp.m",
    "content": "/*\n Copyright (c) 2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogExceptionInformation+QuickHelp.h\"\n\nNSString * const CUITerminationReasonSignalNamespace=@\"SIGNAL\";                         // OS_REASON_SIGNAL\nNSString * const CUITerminationReasonCodesigningNamespace=@\"CODESIGNING\";               // OS_REASON_CODESIGNING\nNSString * const CUITerminationReasonDyldNamespace=@\"DYLD\";                             // OS_REASON_DYLD\nNSString * const CUITerminationReasonLibXPCNamespace=@\"LIBXPC\";                         // OS_REASON_LIBXPC\nNSString * const CUITerminationReasonLibSystemNamespace=@\"LIBSYSTEM\";                   // OS_REASON_LIBSYSTEM\nNSString * const CUITerminationReasonWatchdogNamespace=@\"WATCHDOG\";                     // OS_REASON_WATCHDOG\nNSString * const CUITerminationReasonEndpointSecurityNamespace=@\"ENDPOINTSECURITY\";     // OS_REASON_ENDPOINTSECURITY\n\ntypedef NS_ENUM(NSUInteger, CUITerminationReasonEndpointSecurityCode)\n{\n    CUITerminationReasonEndpointSecurityProcessBlockedByESClient = 1,\n    CUITerminationReasonEndpointSecurityESClientRequestTimedOut = 2\n};\n\n@implementation CUICrashLogExceptionInformation (QuickHelp)\n\n- (BOOL)isQuickHelpAvailableForTerminationReason\n{\n    if ([self.terminationNamespace isEqualToString:CUITerminationReasonEndpointSecurityNamespace]==YES)\n    {\n        switch(self.terminationCode)\n        {\n            case 2:\n                return YES;\n                \n            default:\n                \n                break;\n        }\n        \n        return NO;\n    }\n    \n    if ([self.terminationNamespace isEqualToString:CUITerminationReasonLibSystemNamespace]==YES)   // libkern/os/reason_private.h\n    {\n        switch(self.terminationCode)\n        {\n            case 2: // OS_REASON_LIBSYSTEM_CODE_FAULT\n                return NO;  // A COMPLETER\n                \n            default:\n                \n                break;\n        }\n        \n        return NO;\n    }\n    \n    if ([self.terminationNamespace isEqualToString:CUITerminationReasonWatchdogNamespace]==YES)\n    {\n        switch(self.terminationCode)\n        {\n            case 1:\n                return NO;  // A COMPLETER\n                \n            default:\n                \n                break;\n        }\n        \n        return NO;\n    }\n    \n    if ([self.terminationNamespace isEqualToString:CUITerminationReasonCodesigningNamespace]==YES)     // bsd/sys/reason.h\n    {\n        switch(self.terminationCode)\n        {\n            case 1: // CODESIGNING_EXIT_REASON_TASKGATED_INVALID_SIG\n                return NO;  // A COMPLETER\n                \n            case 2: // CODESIGNING_EXIT_REASON_INVALID_PAGE\n                return NO;  // A COMPLETER\n            \n            default:\n                \n                break;\n        }\n        \n        return NO;\n    }\n    \n    if ([self.terminationNamespace isEqualToString:CUITerminationReasonDyldNamespace]==YES)   // dyld/include/mach-o/dyld_priv.h\n    {\n        switch(self.terminationCode)\n        {\n            case 1: // DYLD_EXIT_REASON_DYLIB_MISSING\n                return NO;  // A COMPLETER\n            \n            case 2: // DYLD_EXIT_REASON_DYLIB_WRONG_ARCH\n                return NO;  // A COMPLETER\n                \n            default:\n                \n                break;\n        }\n        \n        return NO;\n    }\n    \n    if ([self.terminationNamespace isEqualToString:CUITerminationReasonLibXPCNamespace]==YES)   // dyld/include/mach-o/dyld_priv.h\n    {\n        switch(self.terminationCode)\n        {\n            case 4:\n                return NO;  // A COMPLETER\n                \n            default:\n                \n                break;\n        }\n        \n        return NO;\n    }\n    \n    return NO;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogExceptionInformation.h\"\n\n@interface CUICrashLogExceptionInformation (UI)\n\n- (NSString *)humanFriendlyExceptionType;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogExceptionInformation+UI.h\"\n\n@implementation CUICrashLogExceptionInformation (UI)\n\n- (NSString *)humanFriendlyExceptionType\n{\n    NSString * tExceptionType=self.exceptionType;\n    \n    if (tExceptionType==nil)\n        return @\"Unknown\";\n    \n    static NSDictionary * sHumanFriendlyStrings=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sHumanFriendlyStrings=@{\n                                @\"EXC_BAD_ACCESS\":@\"Bad Access\",\n                                @\"EXC_BAD_INSTRUCTION\":@\"Bad Insruction\",\n                                @\"EXC_BREAKPOINT\":@\"Breakpoint\",\n                                @\"EXC_CRASH\":@\"Crash\",\n                                \n                                // A COMPLETER\n                                \n                                };\n        \n    });\n    \n    NSString * tString=sHumanFriendlyStrings[tExceptionType];\n    \n    if (tString!=nil)\n        return tString;\n    \n    return tExceptionType;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"IPSIncident.h\"\n\n@interface CUICrashLogExceptionInformation : NSObject\n\n    @property (readonly) NSInteger crashedThreadIndex;  // -1 -> Unknown\n\n    @property (readonly,copy) NSString * crashedThreadName; // Can be nil\n\n    @property (readonly,copy) NSString * exceptionType;\n\n    @property (readonly,copy) NSString * exceptionSignal;\n\n    @property (readonly,copy) NSString * exceptionSubtype;  // Can be nil   // On macOS, exception subtype is in exceptionCodes.\n\n    @property (readonly) NSArray * exceptionCodes;\n\n    @property (readonly,copy) NSString * exceptionNote;     // Can be nil\n\n    @property (readonly,copy) NSString * terminationNamespace;  // Can be nil\n\n    @property (readonly) NSUInteger terminationCode;\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError;\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError;\n\n- (NSString *)displayedExceptionType;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogExceptionInformation.h\"\n\n#import \"CUIParsingErrors.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n@interface CUICrashLogExceptionInformation ()\n\n    @property NSInteger crashedThreadIndex;     // -1 -> Unknown\n\n    @property (copy) NSString * crashedThreadName;\n\n    @property (copy) NSString * exceptionType;\n\n    @property (copy) NSString * exceptionSignal;\n\n    @property (copy) NSString * exceptionSubtype;\n\n    @property NSArray * exceptionCodes;\n\n    @property (copy) NSString * exceptionNote;\n\n    @property (copy) NSString * terminationNamespace;\n\n    @property NSUInteger terminationCode;\n\n+ (BOOL)parseString:(NSString *)inString threadIndex:(NSInteger *)outThreadIndex threadName:(NSString **)outThreadName;\n\n+ (BOOL)parseString:(NSString *)inString exceptionType:(NSString **)outExceptionType signal:(NSString **)outExceptionSignal;\n\n+ (BOOL)parseString:(NSString *)inString exceptionCodes:(NSArray **)outExceptionCodes;\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError;\n\n@end\n\n@implementation CUICrashLogExceptionInformation\n\n+ (BOOL)parseString:(NSString *)inString threadIndex:(NSInteger *)outThreadIndex threadName:(NSString **)outThreadName\n{\n    if ([inString isEqualToString:@\"Unknown\"]==YES)\n    {\n        if (outThreadIndex!=NULL)\n            *outThreadIndex=-1;\n        \n        if (outThreadName!=NULL)\n            *outThreadName=nil;\n        \n        return YES;\n    }\n    \n    NSScanner * tScanner=[NSScanner scannerWithString:inString];\n    \n    NSInteger tInteger;\n    \n    if ([tScanner scanInteger:&tInteger]==NO)\n    {\n        // A COMPLETER\n        \n        return NO;\n    }\n    \n    if (outThreadIndex!=NULL)\n        *outThreadIndex=tInteger;\n    \n    NSString * tString=[[inString substringFromIndex:tScanner.scanLocation] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];\n    \n    if (outThreadName!=NULL)\n        *outThreadName=tString;\n    \n    return YES;\n}\n\n+ (BOOL)parseString:(NSString *)inString exceptionType:(NSString **)outExceptionType signal:(NSString **)outExceptionSignal\n{\n    NSScanner * tScanner=[NSScanner scannerWithString:inString];\n    \n    NSString * tString;\n    \n    if ([tScanner scanUpToString:@\" (\" intoString:&tString]==NO || tString.length==inString.length)\n    {\n        if (outExceptionType!=NULL)\n            *outExceptionType=[inString copy];\n        \n        return YES;\n    }\n    \n    if (outExceptionType!=NULL)\n        *outExceptionType=[tString copy];\n    \n    NSString * tSubString=[inString substringWithRange:NSMakeRange(tScanner.scanLocation+2,inString.length-2-(tScanner.scanLocation+2)+1)];\n    \n    if (outExceptionSignal!=NULL)\n        *outExceptionSignal=tSubString;\n    \n    return YES;\n}\n\n+ (BOOL)parseString:(NSString *)inString exceptionCodes:(NSArray **)outExceptionCodes\n{\n    NSArray * tComponents=[inString componentsSeparatedByString:@\",\"];\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    for(NSString * tCodeString in tComponents)\n    {\n        NSScanner * tScanner=[NSScanner scannerWithString:tCodeString];\n        \n        unsigned long long tHexaValue;\n        \n        if ([tScanner scanHexLongLong:&tHexaValue]==NO)\n        {\n            return NO;\n        }\n        \n        [tMutableArray addObject:@(tHexaValue)];\n    }\n    \n    if (outExceptionCodes!=NULL)\n        *outExceptionCodes=[tMutableArray copy];\n    \n    return YES;\n}\n\n+ (BOOL)parseString:(NSString *)inString terminationReasonNamespace:(NSString **)outNamespace code:(NSUInteger *)outCode\n{\n    NSScanner * tScanner=[NSScanner scannerWithString:inString];\n\n    BOOL tSimpleFormat=YES;\n    \n    if ([inString hasPrefix:@\"Namespace \"]==YES)\n    {\n        tSimpleFormat=NO;\n        tScanner.scanLocation+=@\"Namespace \".length;\n    }\n    \n    NSString * tNamespace=nil;\n    \n    if (tSimpleFormat==YES)\n    {\n        if ([tScanner scanUpToString:@\", [\" intoString:&tNamespace]==NO)\n        {\n            return NO;\n        }\n        \n        tScanner.scanLocation+=@\", [\".length;\n    }\n    else\n    {\n        if ([tScanner scanUpToString:@\", Code \" intoString:&tNamespace]==NO)\n        {\n            return NO;\n        }\n        \n        tScanner.scanLocation+=@\", Code \".length;\n    }\n    \n    if (outNamespace!=NULL)\n        *outNamespace=tNamespace;\n    \n    unsigned long long tHexValue;\n    \n    if ([tScanner scanHexLongLong:&tHexValue]==NO)\n        return NO;\n    \n    if (outCode!=NULL)\n        *outCode=tHexValue;\n        \n    return YES;\n}\n\n#pragma mark -\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if ([inLines isKindOfClass:NSArray.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _crashedThreadIndex=-1;\n        \n        if ([self parseTextualRepresentation:inLines outError:outError]==NO)\n        {\n            return nil;\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError\n{\n    if ([inIncident isKindOfClass:IPSIncident.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        IPSIncidentExceptionInformation * tExceptionInformation=inIncident.exceptionInformation;\n        \n        _crashedThreadIndex=tExceptionInformation.faultingThread;\n        \n        if (tExceptionInformation.legacyInfo.threadTriggered.queue!=nil)\n            _crashedThreadName=[NSString stringWithFormat:@\"Dispatch queue: %@\",tExceptionInformation.legacyInfo.threadTriggered.queue];\n        \n        _exceptionType=tExceptionInformation.exception.type;\n        \n        _exceptionSignal=tExceptionInformation.exception.signal;\n        \n        _exceptionSubtype=tExceptionInformation.exception.codes;\n        \n        _exceptionCodes=[tExceptionInformation.exception.rawCodes WB_arrayByMappingObjectsUsingBlock:^NSString *(NSNumber * bNumber, NSUInteger bIndex) {\n            \n            return @\"A COMPLETER\";\n        }];\n        \n        _exceptionNote=(tExceptionInformation.isCorpse==YES) ? @\"EXC_CORPSE_NOTIFY\" : nil;\n        \n        _terminationNamespace=[tExceptionInformation.termination.namespace copy];\n        \n        _terminationCode=tExceptionInformation.termination.code;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError\n{\n    __block NSError * tError=nil;\n    \n    [inLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL *bOutStop) {\n        \n        NSUInteger tLineLength=bLine.length;\n        \n        // Skip Blank lines\n        \n        if (tLineLength==0)\n            return;\n        \n        // Find Key and Value\n        \n        NSScanner * tScanner=[NSScanner scannerWithString:bLine];\n        \n        NSString * tKey;\n        \n        if ([tScanner scanUpToString:@\":\" intoString:&tKey]==NO)\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        NSUInteger tIndex=tScanner.scanLocation+1;\n        \n        if (tIndex>=(tLineLength-1))\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        NSString * tValue=[[bLine substringFromIndex:tIndex] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];\n        \n        if (tValue.length==0)\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        // Retrieve values\n        \n        if ([tKey isEqualToString:@\"Crashed Thread\"]==YES)\n        {\n            NSInteger tInteger;\n            NSString * tString;\n            \n            if ([CUICrashLogExceptionInformation parseString:tValue threadIndex:&tInteger threadName:&tString]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.crashedThreadIndex=tInteger;\n            self.crashedThreadName=tString;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Exception Type\"]==YES)\n        {\n            NSString * tExceptionType=nil;\n            NSString * tExceptionSignal=nil;\n            \n            if ([CUICrashLogExceptionInformation parseString:tValue exceptionType:&tExceptionType signal:&tExceptionSignal]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                \n                return;\n            }\n            \n            self.exceptionType=tExceptionType;\n            self.exceptionSignal=tExceptionSignal;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Exception Subtype\"]==YES)\n        {\n            self.exceptionSubtype=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Exception Codes\"]==YES)\n        {\n            NSArray * tExceptionCodes=nil;\n            \n            if ([CUICrashLogExceptionInformation parseString:tValue exceptionCodes:&tExceptionCodes]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                \n                return;\n            }\n            \n            self.exceptionCodes=tExceptionCodes;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Exception Note\"]==YES)\n        {\n            self.exceptionNote=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Termination Reason\"]==YES)\n        {\n            NSString * tNamespace=nil;\n            NSUInteger tCode=0;\n            \n            if ([CUICrashLogExceptionInformation parseString:tValue terminationReasonNamespace:&tNamespace code:&tCode]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                \n                return;\n            }\n            \n            self.terminationNamespace=tNamespace;\n            self.terminationCode=tCode;\n            \n            return;\n        }\n    }];\n    \n    if (outError!=NULL && tError!=nil)\n        *outError=tError;\n    \n    return YES;\n}\n\n            //Exception Type:        EXC_CRASH (Code Signature Invalid)\n            //Exception Codes:       0x0000000000000000, 0x0000000000000000\n            //Exception Note:        EXC_CORPSE_NOTIFY\n\n#pragma mark -\n\n- (NSString *)displayedExceptionType\n{\n    if (self.exceptionSignal==nil)\n        return self.exceptionType;\n    \n    return [NSString stringWithFormat:@\"%@ (%@)\",self.exceptionType,self.exceptionSignal];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogHeader.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"IPSIncident.h\"\n\n#import \"CUIOperatingSystemVersion.h\"\n\n#include \"CUICodeType.h\"\n\n@interface CUICrashLogHeader : NSObject\n\n    @property (readonly) NSUInteger reportVersion;\n\n    @property (readonly) NSDate * dateTime;\n\n    @property (readonly) CUIOperatingSystemVersion * operatingSystemVersion;\n\n    @property (readonly) BOOL systemIntegrityProtectionEnabled;\n\n    @property (readonly,copy) NSString * bridgeOSVersion;       // T2 Embedded OS Version (can be nil)\n\n\n\n    @property (readonly,copy) NSString * anonymousUUID;\n\n\n\n\n\n    @property (readonly) CUICodeType codeType;\n\n    @property (readonly) BOOL native;\n\n\n    @property (readonly,copy) NSString * executablePath;\n\n    @property (readonly,copy) NSString * bundleIdentifier;\n\n    @property (readonly,copy) NSString * executableVersion;\n\n\n\n    @property (readonly,copy) NSString * responsibleProcessName;\n\n    @property (readonly) pid_t responsibleProcessIdentifier;\n\n    @property (readonly,copy) NSString * processName;\n\n    @property (readonly) pid_t processIdentifier;\n\n    @property (readonly,copy) NSString * parentProcessName;\n\n    @property (readonly) pid_t parentProcessIdentifier;\n\n\n\n    @property (readonly) uid_t userIdentifier;\n\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError;\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogHeader.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogHeader.h\"\n\n#import \"CUIParsingErrors.h\"\n\n@interface CUICrashLogHeader ()\n{\n    NSDateFormatter * _dateFormatter;\n}\n    @property NSUInteger reportVersion;\n\n\n    @property NSDate * dateTime;\n\n    @property CUIOperatingSystemVersion * operatingSystemVersion;\n\n    @property BOOL systemIntegrityProtectionEnabled;\n\n    @property (copy) NSString * bridgeOSVersion;\n\n\n    @property (copy) NSString * anonymousUUID;\n\n\n    @property CUICodeType codeType;\n\n    @property BOOL native;\n\n\n    @property (copy) NSString * executablePath;\n\n    @property (copy) NSString * bundleIdentifier;\n\n    @property (copy) NSString * executableVersion;\n\n\n    @property (copy) NSString * responsibleProcessName;\n\n    @property pid_t responsibleProcessIdentifier;\n\n    @property (copy) NSString * processName;\n\n    @property pid_t processIdentifier;\n\n    @property (copy) NSString * parentProcessName;\n\n    @property pid_t parentProcessIdentifier;\n\n\n\n    @property uid_t userIdentifier;\n\n    \n+ (NSDateFormatter *)crashDateFormatter;\n\n+ (BOOL)parseString:(NSString *)inString processName:(NSString **)outProcessName identifier:(pid_t *)outProcessIdentifier;\n+ (BOOL)parseString:(NSString *)inString integerValue:(NSInteger *)outIntegerValue;\n\n+ (BOOL)parseString:(NSString *)inString codeType:(CUICodeType *)outCodeType native:(BOOL *)outNative;\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError;\n\n@end\n\n@implementation CUICrashLogHeader\n\n+ (NSDateFormatter *)crashDateFormatter\n{\n    static NSDateFormatter * sCrashDateFormatter=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sCrashDateFormatter = [NSDateFormatter new];\n        sCrashDateFormatter.locale=[NSLocale localeWithLocaleIdentifier:@\"en_US_POSIX\"];    // Technical Q&A QA1480\n        sCrashDateFormatter.dateFormat=@\"yyyy-MM-dd HH:mm:ss.SSS z\";\n    });\n    \n    return sCrashDateFormatter;\n}\n\n+ (BOOL)parseString:(NSString *)inString processName:(NSString **)outProcessName identifier:(pid_t *)outProcessIdentifier\n{\n    NSScanner * tScanner=[NSScanner scannerWithString:inString];\n    \n    NSString * tString;\n    \n    if ([tScanner scanUpToString:@\" [\" intoString:&tString]==NO)\n    {\n        // A COMPLETER\n        \n        return NO;\n    }\n    \n    if (outProcessName!=NULL)\n        *outProcessName=[tString copy];\n    \n    NSString * tSubString=[inString substringWithRange:NSMakeRange(tScanner.scanLocation+2,inString.length-2-(tScanner.scanLocation+2)+1)];\n    \n    if (outProcessIdentifier!=NULL)\n        *outProcessIdentifier=(pid_t)[tSubString integerValue];\n    \n    return YES;\n}\n\n+ (BOOL)parseString:(NSString *)inString integerValue:(NSInteger *)outIntegerValue\n{\n    if (outIntegerValue!=NULL)\n        *outIntegerValue=[inString integerValue];\n    \n    return YES;\n}\n\n\n\n+ (BOOL)parseString:(NSString *)inString codeType:(CUICodeType *)outCodeType native:(BOOL *)outNative\n{\n    NSArray * tComponents=[inString componentsSeparatedByString:@\" \"];\n    \n    switch(tComponents.count)\n    {\n        case 2:\n            \n            if (outNative!=NULL)\n                *outNative=([tComponents[1] caseInsensitiveCompare:@\"(Native)\"]==NSOrderedSame);\n            \n        case 1:\n            \n            if (outCodeType!=NULL)\n            {\n                *outCodeType=CUICodeTypeUnknown;\n                \n                NSString * tString=tComponents.firstObject;\n                \n                if ([tString isEqualToString:@\"X86\"]==YES)\n                {\n                    *outCodeType=CUICodeTypeX86;\n                }\n                else if ([tString isEqualToString:@\"X86-64\"]==YES)\n                {\n                    *outCodeType=CUICodeTypeX86_64;\n                }\n                else if ([tString isEqualToString:@\"ARM-64\"]==YES)\n                {\n                    *outCodeType=CUICodeTypeARM_64;\n                }\n            }\n            \n            break;\n    }\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError\n{\n    if ([inLines isKindOfClass:NSArray.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _systemIntegrityProtectionEnabled=YES;\n        \n        if ([self parseTextualRepresentation:inLines outError:outError]==NO)\n        {\n            return nil;\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError\n{\n    if ([inIncident isKindOfClass:IPSIncident.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        IPSIncidentHeader * tIPSHeader=inIncident.header;\n        \n        _reportVersion=12;\n        \n        _dateTime=tIPSHeader.captureTime;\n        \n        NSString * tSystemVersionTrain=tIPSHeader.operatingSystemVersion.train;\n        \n        NSString * tPrefix=@\"Mac OS X \";\n        \n        // A COMPLETER (Think iOS)\n        \n        if ([tSystemVersionTrain hasPrefix:tPrefix]==NO)\n        {\n            tPrefix=@\"macOS \";\n            \n            if ([tSystemVersionTrain hasPrefix:tPrefix]==NO)\n            {\n                tPrefix=@\"\";\n            }\n        }\n        \n        _operatingSystemVersion=[[CUIOperatingSystemVersion alloc] initWithString:[tSystemVersionTrain substringFromIndex:tPrefix.length]];\n        \n        _systemIntegrityProtectionEnabled=tIPSHeader.systemIntegrityProtectionEnable;\n        \n        _bridgeOSVersion=nil;\n        \n        if ([tIPSHeader.crashReporterKey isKindOfClass:NSUUID.class]==YES)\n\t\t\t_anonymousUUID=[tIPSHeader.crashReporterKey UUIDString];\n\t\telse\n\t\t\t_anonymousUUID=tIPSHeader.crashReporterKey;\n        \n        \n        _codeType=CUICodeTypeARM_64;\n        \n        if ([tIPSHeader.cpuType isEqualToString:@\"X86-64\"]==YES)\n        {\n            _codeType=CUICodeTypeX86_64;\n        }\n        else if ([tIPSHeader.cpuType isEqualToString:@\"ARM-64\"]==YES)\n        {\n            _codeType=CUICodeTypeARM_64;\n        }\n        \n        _native=(tIPSHeader.translated==NO);\n        \n        \n        _executablePath=tIPSHeader.processPath;\n        \n\t\tIPSBundleInfo * tBundleInfo=tIPSHeader.bundleInfo;\n\t\t\n\t\t_bundleIdentifier=tBundleInfo.bundleIdentifier;\n        \n\t\tif (tBundleInfo.bundleVersion!=nil)\n\t\t{\n\t\t\t_executableVersion=[NSString stringWithFormat:@\"%@ (%@)\",tBundleInfo.bundleShortVersionString,tBundleInfo.bundleVersion];\n\t\t}\n\t\telse\n\t\t{\n\t\t\t_executableVersion=tIPSHeader.bundleInfo.bundleShortVersionString;\n\t\t}\n        \n\t\t\n        _responsibleProcessName=tIPSHeader.responsibleProcessName;\n        _responsibleProcessIdentifier=tIPSHeader.responsibleProcessID;\n        \n        _processName=tIPSHeader.processName;\n        _processIdentifier=tIPSHeader.processID;\n        \n        _parentProcessName=tIPSHeader.parentProcessName;\n        _parentProcessIdentifier=tIPSHeader.parentProcessID;\n        \n        \n        _userIdentifier=tIPSHeader.userID;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError\n{\n    __block NSError * tError=nil;\n    \n    [inLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL *bOutStop) {\n        \n        NSUInteger tLineLength=bLine.length;\n        \n        // Skip Blank lines\n        \n        if (tLineLength==0)\n            return;\n        \n        // Find Key and Value\n        \n        NSScanner * tScanner=[NSScanner scannerWithString:bLine];\n        \n        NSString * tKey;\n        \n        if ([tScanner scanUpToString:@\":\" intoString:&tKey]==NO)\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        NSUInteger tIndex=tScanner.scanLocation+1;\n        \n        if (tIndex>=(tLineLength-1))\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        NSString * tValue=[[bLine substringFromIndex:tIndex] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];\n        \n        if (tValue.length==0)\n        {\n            tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n            \n            *bOutStop=YES;\n            return;\n        }\n        \n        // Retrieve values\n        \n        NSString * tString;\n        pid_t tProcessIdentifier;\n        \n        if ([tKey isEqualToString:@\"Process\"]==YES)\n        {\n            if ([CUICrashLogHeader parseString:tValue processName:&tString identifier:&tProcessIdentifier]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.processName=tString;\n            self.processIdentifier=tProcessIdentifier;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Parent Process\"]==YES)\n        {\n            if ([CUICrashLogHeader parseString:tValue processName:&tString identifier:&tProcessIdentifier]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.parentProcessName=tString;\n            self.parentProcessIdentifier=tProcessIdentifier;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Responsible\"]==YES)\n        {\n            if ([CUICrashLogHeader parseString:tValue processName:&tString identifier:&tProcessIdentifier]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.responsibleProcessName=tString;\n            self.responsibleProcessIdentifier=tProcessIdentifier;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Date/Time\"]==YES)\n        {\n            NSDate * tDate = [[CUICrashLogHeader crashDateFormatter] dateFromString:tValue];\n            \n            if (tDate==nil)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingDateTimeParsingError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.dateTime=tDate;\n            \n            return;\n        }\n        \n        NSInteger tInteger=0;\n        \n        if ([tKey isEqualToString:@\"Report Version\"]==YES)\n        {\n            if ([CUICrashLogHeader parseString:tValue integerValue:&tInteger]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.reportVersion=tInteger;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"User ID\"]==YES)\n        {\n            if ([CUICrashLogHeader parseString:tValue integerValue:&tInteger]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.userIdentifier=(uid_t)tInteger;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Path\"]==YES)\n        {\n            self.executablePath=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Identifier\"]==YES)\n        {\n            self.bundleIdentifier=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Version\"]==YES)\n        {\n            self.executableVersion=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Bridge OS Version\"]==YES)\n        {\n            self.bridgeOSVersion=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"Anonymous UUID\"]==YES)\n        {\n            self.anonymousUUID=tValue;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"OS Version\"]==YES)\n        {\n            NSString * tPrefix=@\"Mac OS X \";\n            \n            \n            // A COMPLETER (Think iOS)\n            \n            if ([tValue hasPrefix:tPrefix]==NO)\n            {\n                tPrefix=@\"macOS \";\n                \n                if ([tValue hasPrefix:tPrefix]==NO)\n                {\n                    tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                    \n                    *bOutStop=YES;\n                    return;\n                }\n            }\n            \n            NSString * tVersion=[tValue substringFromIndex:tPrefix.length];\n            \n            CUIOperatingSystemVersion * tOperatingSystemVersion=[[CUIOperatingSystemVersion alloc] initWithString:tVersion];\n            \n            if (tOperatingSystemVersion==nil)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.operatingSystemVersion=tOperatingSystemVersion;\n            \n            return;\n        }\n        \n        \n        \n        if ([tKey isEqualToString:@\"Code Type\"]==YES)\n        {\n            CUICodeType tCodeType=CUICodeTypeUnknown;\n            BOOL tNative=NO;\n            \n            // X86-64 (Native)\n            // X86 (Native)\n            \n            if ([CUICrashLogHeader parseString:tValue codeType:&tCodeType native:&tNative]==NO)\n            {\n                tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                \n                *bOutStop=YES;\n                return;\n            }\n            \n            self.codeType=tCodeType;\n            self.native=tNative;\n            \n            return;\n        }\n        \n        if ([tKey isEqualToString:@\"System Integrity Protection\"]==YES)\n        {\n            // A COMPLETER\n            \n            if ([tValue caseInsensitiveCompare:@\"enabled\"]==YES)\n            {\n                self.systemIntegrityProtectionEnabled=NO;\n            }\n            else if ([tValue caseInsensitiveCompare:@\"disabled\"]==YES)\n            {\n                self.systemIntegrityProtectionEnabled=NO;\n            }\n            \n            return;\n        }\n    }];\n    \n    if (outError!=NULL && tError!=nil)\n        *outError=tError;\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogPresentationOutlineViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogPresentationViewController.h\"\n\n#import \"CUIOutlineModeDisplaySettings.h\"\n\n@interface CUICrashLogPresentationOutlineViewController : CUICrashLogPresentationViewController\n\n    @property (readonly) CUIOutlineModeDisplaySettings * displaySettings;\n\n    @property (nonatomic,readonly,getter=isBinaryImagesViewCollapsed) BOOL binaryImagesViewCollapsed;\n\n- (IBAction)showHideBottomView:(id)sender;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogPresentationOutlineViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogPresentationOutlineViewController.h\"\n\n#import \"CUIThreadNamedTableCellView.h\"\n\n#import \"CUICrashLog+UI.h\"\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUIThreadsListViewController.h\"\n#import \"CUIThreadsColumnViewController.h\"\n\n#import \"CUICenteredLabelViewController.h\"\n\n#import \"CUIBinaryImagesViewController.h\"\n\n#import \"CUIExceptionTypePopUpViewController.h\"\n\n#import \"CUICrashLogBrowsingStateRegistry.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\nNSString * const CUIDefaultsThreadsModeViewKey=@\"ui.threadView\";\n\nNSString * const CUIDefaultsTopViewHeightKey=@\"topView.height\";\n\nNSString * const CUIDefaultsTopViewCollapsedKey=@\"topView.collapsed\";\n\nNSString * const CUIDefaultsBottomViewHeightKey=@\"bottomView.height\";\n\nNSString * const CUIDefaultsBottomViewCollapsedKey=@\"bottomView.collapsed\";\n\nNSString  * const CUIBottomViewCollapseStateDidChangeNotification=@\"CUIBottomViewCollapseStateDidChangeNotification\";\n\ntypedef NS_ENUM(NSUInteger, CUIThreadsModeView)\n{\n\tCUIThreadsModeViewUnknown=0,\n    CUIThreadsModeViewList=1,\n\tCUIThreadsModeViewColumn=2,\n    CUIThreadsModeViewLightTable=3\n};\n\n#define CUIThreadsBottomBarHeight   16.0\n\n#define CUIDiagnosticsViewMinimumHeight    60.0\n#define CUIThreadsViewMinimumHeight    200.0\n#define CUIBinaryImagesViewMinimumHeight    190.0\n\n@interface CUICrashLogPresentationOutlineViewController () <CUIQuickHelpPopUpViewControllerDelegate,NSMenuItemValidation, NSOutlineViewDataSource,NSOutlineViewDelegate,NSPopoverDelegate,NSSplitViewDelegate>\n{\n\tIBOutlet NSTextField * _exceptionTypeValue;\n\t\n    IBOutlet NSButton * _exceptionTypeMoreInfoButton;\n    \n    IBOutlet NSSplitView * _splitView;\n    \n    IBOutlet NSView * _topView;\n    \n    IBOutlet NSTextView * _diagnosticMessageTextView;\n    \n    IBOutlet NSView * _middleView;\n    \n    IBOutlet NSView * _threadsContainerView;\n    \n    // Bottom bar\n    \n    IBOutlet NSButton * _showBinaryImagesButton;\n    \n    \n    IBOutlet NSButton * _listModeButton;\n    IBOutlet NSButton * _columnModeButton;\n    IBOutlet NSButton * _lightTableModeButton;\n    \n    \n    IBOutlet NSButton * _showOnlyCrashedThreadButton;\n    \n    \n    IBOutlet NSView * _bottomView;\n\n\t\n\tCUIThreadsModeView _threadsViewMode;\n\t\n    CUICenteredLabelViewController * _noThreadsViewController;\n\tCUIThreadsViewController * _threadsViewController;\n    \n    CUIBinaryImagesViewController * _binaryImagesViewController;\n    \n    NSAttributedString * _diagnosticHeader;\n}\n\n@property CUIOutlineModeDisplaySettings * displaySettings;\n\n- (void)refresh;\n\n- (IBAction)showMoreExceptionInfo:(id)sender;\n\n- (IBAction)showInFinder:(id)sender;\n\n- (IBAction)switchViewMode:(id)sender;\n\n\n\n\n\n- (void)showThreadsViewForMode:(CUIThreadsModeView)inMode;\n\n@end\n\n@implementation CUICrashLogPresentationOutlineViewController\n\n+ (void)initialize\n{\n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                              CUIDefaultsThreadsModeViewKey:@(CUIThreadsModeViewList),\n                                                              \n                                                              CUIDefaultsTopViewCollapsedKey:@(NO),\n                                                              CUIDefaultsTopViewHeightKey:@(92.0),\n                                                              \n                                                              CUIDefaultsBottomViewCollapsedKey:@(YES),\n                                                              CUIDefaultsBottomViewHeightKey:@(CUIBinaryImagesViewMinimumHeight)\n                                                              }];\n}\n\n- (instancetype)init\n{\n\tself=[super init];\n\t\n\tif (self!=nil)\n\t{\n        _diagnosticHeader=[[NSAttributedString alloc] initWithString:NSLocalizedString(@\"Diagnostics\\n\\n\",@\"\")\n                                                          attributes:@{\n                                                                       NSForegroundColorAttributeName:[NSColor secondaryLabelColor],\n                                                                       NSFontAttributeName:[NSFont systemFontOfSize:13.0 weight:NSFontWeightBold]\n                                                                       \n                                                                       }];\n        \n        \n        self.visibleStackFrameComponents=CUIStackFrameByteOffsetComponent;\n\n        \n        _threadsViewMode=[[NSUserDefaults standardUserDefaults] integerForKey:CUIDefaultsThreadsModeViewKey];\n\t}\n\t\n\treturn self;\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n\treturn @\"CUICrashLogPresentationOutlineViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n\n    _diagnosticMessageTextView.textContainerInset=NSMakeSize(8.0, 8.0);\n    \n    _listModeButton.state=NSControlStateValueOff;\n    _columnModeButton.state=NSControlStateValueOff;\n    _lightTableModeButton.state=NSControlStateValueOff;\n    \n\tswitch(_threadsViewMode)\n    {\n        case CUIThreadsModeViewList:\n            \n            _listModeButton.state=NSControlStateValueOn;\n            \n            break;\n            \n        case CUIThreadsModeViewColumn:\n            \n            _columnModeButton.state=NSControlStateValueOn;\n            \n            break;\n            \n        case CUIThreadsModeViewLightTable:\n            \n            _lightTableModeButton.state=NSControlStateValueOn;\n            \n            break;\n            \n        default:\n            \n            break;\n    }\n\t\n\t\n\t_showOnlyCrashedThreadButton.state=(self.showOnlyCrashedThread==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showByteOffsetButton.state=((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showMachineInstructionAddressButton.state=((self.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showBinaryNameButton.state=((self.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n\t\n    \n\t[self showThreadsViewForMode:_threadsViewMode];\n    \n    _binaryImagesViewController=[CUIBinaryImagesViewController new];\n    \n    _binaryImagesViewController.view.frame=_bottomView.bounds;\n    \n    [_bottomView addSubview:_binaryImagesViewController.view];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    // Restore SplitView divider position\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    CGFloat tTopViewHeight=CUIDiagnosticsViewMinimumHeight;\n    \n    NSNumber * tNumber=[tUserDefaults objectForKey:CUIDefaultsTopViewCollapsedKey];\n    \n    if (tNumber==nil || [tNumber boolValue]==YES)\n        [_splitView setPosition:[_splitView maxPossiblePositionOfDividerAtIndex:0] ofDividerAtIndex:0];\n    \n    tNumber=[tUserDefaults objectForKey:CUIDefaultsTopViewHeightKey];\n    \n    if (tNumber!=nil)\n        tTopViewHeight=[tNumber doubleValue];\n    \n    \n    BOOL tIsCollapsed=NO;\n    \n    tNumber=[tUserDefaults objectForKey:CUIDefaultsBottomViewCollapsedKey];\n    \n    if (tNumber==nil || [tNumber boolValue]==YES)\n        tIsCollapsed=YES;\n    \n    if (tIsCollapsed==YES)\n        [_splitView setPosition:[_splitView maxPossiblePositionOfDividerAtIndex:1] ofDividerAtIndex:1];\n    \n    CGFloat tBottomViewWHeight=CUIBinaryImagesViewMinimumHeight;\n    \n    tNumber=[tUserDefaults objectForKey:CUIDefaultsBottomViewHeightKey];\n    \n    if (tNumber!=nil)\n        tBottomViewWHeight=[tNumber doubleValue];\n    \n    [self _splitView:_splitView resizeSubviewsWithTopViewHeight:tTopViewHeight bottomViewHeight:tBottomViewWHeight];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIBottomViewCollapseStateDidChangeNotification\n                                                      object:self.view.window\n                                                    userInfo:@{@\"Collapsed\":@(tIsCollapsed)}];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    // Save browsing state\n    \n    [self saveBrowsingState];\n    \n    // Save SplitView divider position\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    NSArray * tSubviews=_splitView.subviews;\n    \n    NSView * tTopView=tSubviews[0];\n    \n    [tUserDefaults setObject:@(NSHeight(tTopView.frame)) forKey:CUIDefaultsTopViewHeightKey];\n    \n    [tUserDefaults setBool:[_splitView isSubviewCollapsed:tTopView] forKey:CUIDefaultsTopViewCollapsedKey];\n    \n    NSView * tBottomView=tSubviews[2];\n    \n    [tUserDefaults setObject:@(NSHeight(tBottomView.frame)) forKey:CUIDefaultsBottomViewHeightKey];\n    \n    [tUserDefaults setBool:[_splitView isSubviewCollapsed:tBottomView] forKey:CUIDefaultsBottomViewCollapsedKey];\n}\n\n- (void)saveBrowsingState\n{\n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    if (self.crashLog!=nil)\n    {\n        CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n        \n        tBrowsingState.outlineModeDisplaySettings=[self.displaySettings copy];\n    }\n}\n\n#pragma mark -\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    [self saveBrowsingState];\n    \n    [super setCrashLog:inCrashLog];\n\t\n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:inCrashLog windowNumber:self.view.window.windowNumber];\n    \n    _displaySettings=[tBrowsingState.outlineModeDisplaySettings copy];\n    \n    if (self.displaySettings==nil)\n    {\n        // A COMPLETER\n        \n        self.displaySettings=[[CUIApplicationPreferences sharedPreferences].defaultOutlineModeDisplaySettings copy];\n    }\n    \n    BOOL tIsRawCrashLog=[self.crashLog isMemberOfClass:[CUIRawCrashLog class]];\n    \n    _exceptionTypeMoreInfoButton.enabled=(tIsRawCrashLog==NO);\n    \n    NSUInteger tThreadsCount=0;\n    \n    if (tIsRawCrashLog==NO)\n    {\n        tThreadsCount=self.crashLog.backtraces.threads.count;\n    }\n    \n    BOOL tAreBacktracesAvailable=(tThreadsCount>0);\n    \n    if (_noThreadsViewController!=nil)\n    {\n        if (tThreadsCount>0)\n        {\n            [self showThreadsViewForMode:_threadsViewMode];\n        }\n    }\n    else\n    {\n        if (tThreadsCount==0)\n        {\n            [self showThreadsViewForMode:_threadsViewMode];\n        }\n    }\n    \n    _threadsViewController.crashLog=inCrashLog;\n\t\n    _threadsViewController.showOnlyCrashedThread=self.displaySettings.showOnlyCrashedThread;\n    \n    _threadsViewController.visibleStackFrameComponents=self.displaySettings.visibleStackFrameComponents;\n    \n    \n    \n    _showOnlyCrashedThreadButton.enabled=(tIsRawCrashLog==NO && tAreBacktracesAvailable==YES);\n    _showByteOffsetButton.enabled=(tIsRawCrashLog==NO && tAreBacktracesAvailable==YES);\n    _showMachineInstructionAddressButton.enabled=(tIsRawCrashLog==NO && tAreBacktracesAvailable==YES);\n    _showBinaryNameButton.enabled=(tIsRawCrashLog==NO && tAreBacktracesAvailable==YES);\n    \n    if (tIsRawCrashLog==NO && tAreBacktracesAvailable==YES)\n    {\n        _showOnlyCrashedThreadButton.state=(self.displaySettings.showOnlyCrashedThread==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        _showByteOffsetButton.state=((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==CUIStackFrameByteOffsetComponent) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        _showMachineInstructionAddressButton.state=((self.displaySettings.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)==CUIStackFrameMachineInstructionAddressComponent) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        _showBinaryNameButton.state=(((self.displaySettings.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)==CUIStackFrameBinaryNameComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    }\n    else\n    {\n        _showOnlyCrashedThreadButton.state=NSControlStateValueOff;\n        \n        _showByteOffsetButton.state=NSControlStateValueOff;\n        \n        _showMachineInstructionAddressButton.state=NSControlStateValueOff;\n        \n        _showBinaryNameButton.state=NSControlStateValueOff;\n    }\n    \n    _binaryImagesViewController.crashLog=(tIsRawCrashLog==NO) ? inCrashLog : nil;\n    \n    [self refresh];\n}\n\n- (void)showThreadsViewForMode:(CUIThreadsModeView)inMode\n{\n\tif ([self.crashLog isMemberOfClass:[CUIRawCrashLog class]]==YES ||\n        self.crashLog.backtraces.threads.count==0)\n    {\n        if (_noThreadsViewController!=nil)\n            return;\n        \n        [_threadsViewController.view removeFromSuperview];\n        _threadsViewController=nil;\n        \n        _noThreadsViewController=[CUICenteredLabelViewController new];\n        _noThreadsViewController.label=NSLocalizedString(@\"No backtraces available\", @\"\");\n        _noThreadsViewController.labelSize=CUILabelSizeBig;\n        \n        NSRect tBounds=_threadsContainerView.bounds;\n        \n        _noThreadsViewController.view.frame=tBounds;\n        \n        \n        [_threadsContainerView addSubview:_noThreadsViewController.view];\n        \n        NSWindow * tWindow=self.view.window;\n        \n        if (tWindow.firstResponder==tWindow)\n            [tWindow makeFirstResponder:self];\n        \n        return;\n    }\n\n    [_noThreadsViewController.view removeFromSuperview];\n    _noThreadsViewController=nil;\n    \n    [_threadsViewController.view removeFromSuperview];\n\n    switch(inMode)\n    {\n        case CUIThreadsModeViewList:\n            \n\t\t\t_threadsViewController=[[CUIThreadsListViewController alloc] initWithUserInterfaceLayoutDirection:self.view.userInterfaceLayoutDirection];\n            \n            break;\n            \n        case CUIThreadsModeViewColumn:\n            \n\t\t\t_threadsViewController=[[CUIThreadsColumnViewController alloc] initWithUserInterfaceLayoutDirection:self.view.userInterfaceLayoutDirection];\n\n            break;\n            \n        default:\n            \n            break;\n    }\n    \n\tNSRect tBounds=_threadsContainerView.bounds;\n\t\n\t_threadsViewController.view.frame=tBounds;\n\t\n\t\n\t[_threadsContainerView addSubview:_threadsViewController.view];\n    \n\t_threadsViewController.crashLog=self.crashLog;\n\t\n\t_threadsViewController.showOnlyCrashedThread=self.showOnlyCrashedThread;\n\t\n    _threadsViewController.visibleStackFrameComponents=self.visibleStackFrameComponents;\n}\n\n- (BOOL)isBinaryImagesViewCollapsed\n{\n    return ([_splitView isSubviewCollapsed:_bottomView]==YES);\n}\n\n- (BOOL)showOnlyCrashedThread\n{\n    return self.displaySettings.showOnlyCrashedThread;\n}\n\n- (void)setShowOnlyCrashedThread:(BOOL)inShowOnlyCrashedThread\n{\n    self.displaySettings.showOnlyCrashedThread=inShowOnlyCrashedThread;\n    \n    _threadsViewController.showOnlyCrashedThread=inShowOnlyCrashedThread;\n}\n\n- (void)setVisibleStackFrameComponents:(CUIStackFrameComponents)inVisibleStackFrameComponents\n{\n    [super setVisibleStackFrameComponents:inVisibleStackFrameComponents];\n    \n    self.displaySettings.visibleStackFrameComponents=inVisibleStackFrameComponents;\n    \n    _threadsViewController.visibleStackFrameComponents=inVisibleStackFrameComponents;\n}\n\n#pragma mark -\n\n- (void)refresh\n{\n    CUICrashLog * tCrashLog=self.crashLog;\n\n    NSMutableParagraphStyle * tMutableParagraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];\n    \n    tMutableParagraphStyle.tabStops=@[];\n    \n    tMutableParagraphStyle.lineSpacing=2.0;\n    \n    NSMutableAttributedString * tMutableAttributedString=[_diagnosticHeader mutableCopy];\n    \n    if ([tCrashLog isKindOfClass:[CUICrashLog class]]==NO)\n    {\n        _exceptionTypeValue.stringValue=@\"\";\n        \n        [tMutableAttributedString appendAttributedString:[[NSAttributedString alloc] initWithString:NSLocalizedString(@\"N/A\", @\"\")\n                                                                                         attributes:@{NSParagraphStyleAttributeName:tMutableParagraphStyle,\n                                                                                                      NSForegroundColorAttributeName:[NSColor textColor]\n                                                                                                      }]];\n        \n        _diagnosticMessageTextView.textStorage.attributedString=tMutableAttributedString;\n    \n        return;\n    }\n    \n    NSString * tString=[tCrashLog.exceptionInformation displayedExceptionType];\n    \n    _exceptionTypeValue.stringValue=(tString!=nil) ? tString : @\"\";\n    \n    tString=tCrashLog.diagnosticMessages.messages;\n    \n    if (tString.length==0)\n        tString=NSLocalizedString(@\"N/A\", @\"\");\n    \n    [tMutableAttributedString appendAttributedString:[[NSAttributedString alloc] initWithString:tString\n                                                                                     attributes:@{NSParagraphStyleAttributeName:tMutableParagraphStyle,\n                                                                                                  NSForegroundColorAttributeName:[NSColor textColor]\n                                                                                                  }]];\n    \n    _diagnosticMessageTextView.textStorage.attributedString=tMutableAttributedString;\n    \n    [_diagnosticMessageTextView scrollPoint:NSZeroPoint];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n\treturn [super validateMenuItem:inMenuItem];\n}\n\n- (IBAction)showMoreExceptionInfo:(id)sender\n{\n    if ([self.crashLog isMemberOfClass:[CUIRawCrashLog class]]==YES)\n        return;\n    \n    NSPopover * tExceptionTypeLookUpPopOver = [NSPopover new];\n    tExceptionTypeLookUpPopOver.contentSize=NSMakeSize(500.0, 20.0);\n    tExceptionTypeLookUpPopOver.behavior=NSPopoverBehaviorTransient;\n    tExceptionTypeLookUpPopOver.animates=NO;\n    tExceptionTypeLookUpPopOver.delegate=self;\n    \n    CUIExceptionTypePopUpViewController * tPopUpViewController=[CUIExceptionTypePopUpViewController new];\n    tPopUpViewController.popover=tExceptionTypeLookUpPopOver;\n    tPopUpViewController.delegate=self;\n    [tPopUpViewController setExceptionType:self.crashLog.exceptionType signal:self.crashLog.exceptionSignal];\n    \n    tExceptionTypeLookUpPopOver.contentViewController=tPopUpViewController;\n    \n    NSView * tTrick=tPopUpViewController.view;  // This is used to trigger the viewDidLoad method of the contentViewController.\n    \n    (void)tTrick;\n}\n\n- (IBAction)showInFinder:(id)sender\n{\n\t[[NSWorkspace sharedWorkspace] selectFile:self.crashLog.header.executablePath inFileViewerRootedAtPath:@\"\"];\n}\n\n- (IBAction)showHideBottomView:(id)sender\n{\n    if ([_splitView isSubviewCollapsed:_bottomView]==YES)\n    {\n        CGFloat tPosition=NSHeight(_splitView.frame)-_splitView.dividerThickness-NSHeight(_bottomView.frame);\n        \n        [_splitView setPosition:tPosition ofDividerAtIndex:1];\n    }\n    else\n    {\n        [_splitView setPosition:[_splitView maxPossiblePositionOfDividerAtIndex:1] ofDividerAtIndex:1];\n    }\n}\n\n- (IBAction)switchViewMode:(NSButton *)sender\n{\n    if (sender.tag==_threadsViewMode)\n    {\n        switch(_threadsViewMode)\n        {\n            case CUIThreadsModeViewList:\n                \n                _listModeButton.state=WBControlStateValueOn;\n                \n                break;\n                \n            case CUIThreadsModeViewColumn:\n                \n                _columnModeButton.state=WBControlStateValueOn;\n                \n                break;\n                \n            case CUIThreadsModeViewLightTable:\n                \n                _lightTableModeButton.state=WBControlStateValueOn;\n                \n                break;\n                \n            default:\n                \n                break;\n        }\n        \n        return;\n    }\n    \n    switch(_threadsViewMode)\n    {\n        case CUIThreadsModeViewList:\n            \n            _listModeButton.state=NSControlStateValueOff;\n            \n            break;\n            \n        case CUIThreadsModeViewColumn:\n            \n            _columnModeButton.state=NSControlStateValueOff;\n            \n            break;\n            \n        case CUIThreadsModeViewLightTable:\n            \n            _lightTableModeButton.state=NSControlStateValueOff;\n            \n            break;\n            \n        default:\n            \n            break;\n    }\n    \n    _threadsViewMode=sender.tag;\n    \n    [self showThreadsViewForMode:_threadsViewMode];\n    \n    [[NSUserDefaults standardUserDefaults] setInteger:_threadsViewMode forKey:CUIDefaultsThreadsModeViewKey];\n}\n\n- (IBAction)CUI_MENUACTION_switchShowOnlyCrashedThread:(NSButton *)sender\n{\n    BOOL tShow=(sender.state==NSControlStateValueOn);\n    \n    self.showOnlyCrashedThread=tShow;\n\t\n\t_threadsViewController.showOnlyCrashedThread=tShow;\n}\n\n#pragma mark - CUIQuickHelpPopUpViewControllerDelegate\n\n- (void)quickHelpPopUpViewController:(CUIQuickHelpPopUpViewController *)inController didComputeSizeOfPopover:(NSPopover *)inPopover\n{\n    // Compute the coordinates for the popover\n    \n    NSRect tRect=_exceptionTypeMoreInfoButton.bounds;\n    \n    [inPopover showRelativeToRect:tRect\n                           ofView:_exceptionTypeMoreInfoButton\n                    preferredEdge:NSMaxYEdge];\n}\n\n#pragma mark - NSPopoverDelegate\n\n- (void)popoverDidClose:(NSNotification *)inNotification\n{\n    NSWindow * tWindow=self.view.window;\n    \n    if (tWindow.firstResponder==tWindow.contentView)\n        [tWindow makeFirstResponder:self];\n}\n\n#pragma mark - NSSplitViewDelegate\n\n- (BOOL)splitView:(NSSplitView *)inSplitView canCollapseSubview:(NSView *)subview\n{\n    if (subview==_bottomView /*|| subview==_topView*/)\n        return YES;\n    \n    return NO;\n}\n\n- (void)_splitView:(NSSplitView *)inSplitView resizeSubviewsWithTopViewHeight:(CGFloat)inTopViewHeight bottomViewHeight:(CGFloat)inBottomViewHeight\n{\n    NSRect tSplitViewFrame=inSplitView.frame;\n    \n    NSRect tTopFrame=_topView.frame;\n    \n    \n    tTopFrame.size.height=inTopViewHeight;\n    \n    NSRect tMiddleFrame=_middleView.frame;\n    NSRect tBottomFrame=_bottomView.frame;\n    \n    tBottomFrame.size.height=inBottomViewHeight;\n    \n    CGFloat tTopHeight=([inSplitView isSubviewCollapsed:_topView]==NO) ? NSHeight(tTopFrame) : 0.0;\n    CGFloat tBottomHeight=([inSplitView isSubviewCollapsed:_bottomView]==NO) ? NSHeight(tBottomFrame) : 0.0;\n    \n    tMiddleFrame.size.height=NSHeight(tSplitViewFrame)-tTopHeight-tBottomHeight-2*inSplitView.dividerThickness;\n    \n    if (tMiddleFrame.size.height<CUIThreadsViewMinimumHeight)\n    {\n        tMiddleFrame.size.height=CUIThreadsViewMinimumHeight;\n        \n        tBottomHeight=NSHeight(tSplitViewFrame)-CUIThreadsViewMinimumHeight-tTopHeight-2*inSplitView.dividerThickness;\n        \n        if (tBottomHeight<CUIBinaryImagesViewMinimumHeight)\n        {\n            tBottomHeight=CUIBinaryImagesViewMinimumHeight;\n            \n            tTopHeight=NSHeight(tSplitViewFrame)-CUIThreadsViewMinimumHeight-CUIBinaryImagesViewMinimumHeight-2*inSplitView.dividerThickness;\n        }\n    }\n    \n    if ([inSplitView isSubviewCollapsed:_topView]==NO)\n    {\n        tTopFrame.origin.y=0;\n        tTopFrame.size.height=tTopHeight;\n        tTopFrame.origin.x=0;\n        tTopFrame.size.width=NSWidth(tSplitViewFrame);\n        \n        _topView.frame=tTopFrame;\n    }\n    \n    tMiddleFrame.origin.y=tTopHeight+inSplitView.dividerThickness;\n    tMiddleFrame.origin.x=0;\n    tMiddleFrame.size.width=NSWidth(tSplitViewFrame);\n    \n    _middleView.frame=tMiddleFrame;\n    \n    if ([inSplitView isSubviewCollapsed:_bottomView]==NO)\n    {\n        tBottomFrame.origin.y=NSHeight(tSplitViewFrame)-tBottomHeight;\n        tBottomFrame.size.height=tBottomHeight;\n        tBottomFrame.origin.x=0;\n        tBottomFrame.size.width=NSWidth(tSplitViewFrame);\n        \n        _bottomView.frame=tBottomFrame;\n    }\n}\n\n- (void)splitView:(NSSplitView *)inSplitView resizeSubviewsWithOldSize:(NSSize)oldSize\n{\n    NSArray * tSubviews=inSplitView.subviews;\n    \n    NSView *tTopView=tSubviews[0];\n    NSView *tBottomView=tSubviews[2];\n    \n    [self _splitView:(NSSplitView *)inSplitView resizeSubviewsWithTopViewHeight:NSHeight(tTopView.frame) bottomViewHeight:NSHeight(tBottomView.frame)];\n}\n\n- (CGFloat)splitView:(NSSplitView *)inSplitView constrainMinCoordinate:(CGFloat)proposedMinimumPosition ofSubviewAt:(NSInteger)inDividerIndex\n{\n    switch(inDividerIndex)\n    {\n        case 0:\n            \n            return CUIThreadsBottomBarHeight+inSplitView.dividerThickness+3;\n            \n        case 1:\n        {\n            CGFloat tTopHeight=([inSplitView isSubviewCollapsed:_topView]==NO) ? NSHeight(_topView.frame) : 0.0;\n            \n            return tTopHeight+inSplitView.dividerThickness+CUIThreadsViewMinimumHeight;\n        }\n            \n        default:\n            \n            break;\n    }\n    \n    return 0;\n}\n\n- (CGFloat)splitView:(NSSplitView *)inSplitView constrainMaxCoordinate:(CGFloat)proposedMax ofSubviewAt:(NSInteger)inDividerIndex\n{\n    switch(inDividerIndex)\n    {\n        case 0:\n            \n            return NSHeight(inSplitView.frame)-NSHeight(_bottomView.frame)-inSplitView.dividerThickness-CUIThreadsViewMinimumHeight-inSplitView.dividerThickness;\n            \n        case 1:\n            \n            return NSHeight(inSplitView.frame)-CUIBinaryImagesViewMinimumHeight-inSplitView.dividerThickness;\n            \n        default:\n            \n            break;\n    }\n    \n    return 0;\n}\n\n- (NSRect)splitView:(NSSplitView *)inSplitView effectiveRect:(NSRect)proposedEffectiveRect forDrawnRect:(NSRect)drawnRect ofDividerAtIndex:(NSInteger)inDividerIndex\n{\n    if (inDividerIndex==0)\n    {\n        proposedEffectiveRect.size.height=CUIThreadsBottomBarHeight+inSplitView.dividerThickness+4.0;\n        proposedEffectiveRect.origin.y-=CUIThreadsBottomBarHeight;\n        \n        return proposedEffectiveRect;\n    }\n    \n    if (inDividerIndex==1)\n    {\n\t\tproposedEffectiveRect.size.height=CUIThreadsBottomBarHeight+inSplitView.dividerThickness+4.0;\n\t\tproposedEffectiveRect.origin.y-=CUIThreadsBottomBarHeight;\n\t\t\n\t\tswitch(self.view.userInterfaceLayoutDirection)\n\t\t{\n\t\t\tcase NSUserInterfaceLayoutDirectionLeftToRight:\n\t\t\t\t\n\t\t\t\tproposedEffectiveRect.origin.x=NSMaxX(_columnModeButton.frame);\n\t\t\t\tproposedEffectiveRect.size.width=NSMinX(_showOnlyCrashedThreadButton.frame)-proposedEffectiveRect.origin.x;\n\t\t\t\tbreak;\n\t\t\tcase NSUserInterfaceLayoutDirectionRightToLeft:\n\t\t\t\t\n\t\t\t\tproposedEffectiveRect.origin.x=NSMaxX(_showOnlyCrashedThreadButton.frame);\n\t\t\t\tproposedEffectiveRect.size.width=NSMinX(_columnModeButton.frame)-proposedEffectiveRect.origin.x;\n\t\t\t\tbreak;\n\t\t}\n\t\t\n        return proposedEffectiveRect;\n    }\n    \n    return NSZeroRect;\n}\n\n- (void)splitViewDidResizeSubviews:(NSNotification *)inNotification\n{\n    BOOL tIsCollapsed=self.isBinaryImagesViewCollapsed;\n    \n    _showBinaryImagesButton.state=(tIsCollapsed==NO) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIBottomViewCollapseStateDidChangeNotification\n                                                      object:self.view.window\n                                                    userInfo:@{@\"Collapsed\":@(tIsCollapsed)}];\n}\n\n/* Given a divider index, return an additional rectangular area (in the coordinate system established by the split view's bounds) in which mouse clicks should also initiate divider dragging, or NSZeroRect to not add one. If a split view has no delegate, or if its delegate does not respond to this message, only mouse clicks within the effective frame of a divider initiate divider dragging.\n */\n//- (NSRect)splitView:(NSSplitView *)splitView additionalEffectiveRectOfDividerAtIndex:(NSInteger)dividerIndex\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogPresentationTextViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogPresentationViewController.h\"\n\n#import \"CUITextModeDisplaySettings.h\"\n\n@interface CUICrashLogPresentationTextViewController : CUICrashLogPresentationViewController\n\n    @property (readonly) CUITextModeDisplaySettings * displaySettings;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogPresentationTextViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogPresentationTextViewController.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n\n\n#import \"CUIBinaryImageUtility.h\"\n\n#import \"CUIApplicationPreferences.h\"\n#import \"CUIApplicationPreferences+Themes.h\"\n\n#import \"CUIThemesManager.h\"\n#import \"CUIThemeItemsGroup+UI.h\"\n\n#import \"CUIIPSTransform.h\"\n#import \"CUICrashDataTransform.h\"\n\n#import \"CUIExceptionTypePopUpViewController.h\"\n#import \"CUITerminationReasonPopUpViewController.h\"\n\n#import \"CUICrashLogTextView.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUISymbolicationManager.h\"\n\n#import \"CUILineJumperWindowController.h\"\n\n#import \"CUIExportAccessoryViewController.h\"\n\n// Obfuscation\n\n#import \"IPSObfuscator.h\"\n#import \"IPSReport+Obfuscating.h\"\n\n// Noodle\n\n#import \"NoodleLineNumberView.h\"\n#import \"NoodleLineNumberMarker.h\"\n\n\n#import \"CUICrashLogBrowsingStateRegistry.h\"\n\n\nNSString * const CUICrashLogPresentationTextViewFontSizeDelta=@\"ui.text.fontSize.delta\";\n\n@interface CUICrashLogPresentationTextViewController () <CUIQuickHelpPopUpViewControllerDelegate, NSMenuItemValidation, NSTextViewDelegate>\n{\n    IBOutlet CUICrashLogTextView * _textView;\n    \n    NoodleLineNumberView * _lineNumberView;\n    \n    IBOutlet NSPopUpButton * _sectionsVisibilityPopUpButton;\n    \n    IBOutlet NSButton * _colorsSyntaxButton;\n    \n    BOOL _wrapText;\n    \n    CGFloat _fontSizeDelta;\n    \n    //NSFont * _monospacedFont;\n    \n    CUIThemeItemsGroup * _textThemeItemsGroup;\n    \n    NSArray * _sectionsList;\n    \n    NSDictionary * _sectionsRanges;\n}\n\n@property CUITextModeDisplaySettings * displaySettings;\n\n- (void)saveBrowsingState;\n\n- (void)refreshText;\n\n- (IBAction)CUI_MENUACTION_exportCrashLog:(id)sender;\n\n\n- (IBAction)CUI_MENUACTION_jumpToCrashedThread:(id)sender;\n\n\n- (IBAction)CUI_MENUACTION_increaseFontSize:(id)sender;\n\n- (IBAction)CUI_MENUACTION_decreaseFontSize:(id)sender;\n\n- (IBAction)CUI_MENUACTION_resetFontSize:(id)sender;\n\n- (IBAction)CUI_MENUACTION_jumpToLine:(id)sender;\n\n// Notifications\n\n- (void)itemAttributesDidChange:(NSNotification *)inNotification;\n\n- (void)currentThemeDidChange:(NSNotification *)inNotification;\n\n- (void)jumpToSection:(NSNotification *)inNotification;\n\n- (void)boundsDidChange:(NSNotification *)inNotification;\n\n\n- (void)symbolicateAutomaticallyDidChange:(NSNotification *)inNotification;\n\n- (void)showsLineNumbersDidChange:(NSNotification *)inNotification;\n\n- (void)lineWrappingDidChange:(NSNotification *)inNotification;\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification;\n\n- (void)stackFrameSymbolicationDidSucceed:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashLogPresentationTextViewController\n\n+ (void)initialize\n{\n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{CUICrashLogPresentationTextViewFontSizeDelta:@(0.0)}];\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _wrapText=YES;\n        \n        _fontSizeDelta=[[NSUserDefaults standardUserDefaults] doubleForKey:CUICrashLogPresentationTextViewFontSizeDelta];\n        \n        _textThemeItemsGroup=[[CUIThemesManager sharedManager].currentTheme itemsGroupWithIdentifier:[CUIApplicationPreferences groupIdentifierForPresentationMode:CUIPresentationModeText]];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUICrashLogPresentationTextViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n\n    NSScrollView * tScrollView=_textView.enclosingScrollView;\n    \n    _lineNumberView = [[NoodleLineNumberView alloc] initWithScrollView:tScrollView];\n    \n    tScrollView.verticalRulerView=_lineNumberView;\n    tScrollView.hasHorizontalRuler=NO;\n    tScrollView.hasVerticalRuler=YES;\n    \n    _textView.textContainerInset=NSMakeSize(8,300);\n    \n    _textView.delegate=self;\n    \n    _textView.textStorage.font=[[_textThemeItemsGroup attributesForItem:CUIThemeItemPlainText] font];\n    \n    _textView.displaysLinkToolTips=NO;\n    \n    _textView.linkTextAttributes = @{\n                                     NSCursorAttributeName:[NSCursor pointingHandCursor]\n                                     };\n    \n    [_textView setPostsBoundsChangedNotifications:YES];\n    \n    _textView.wrapLines=YES;\n    \n    CUIThemeItemAttributes * tAttributes=[_textThemeItemsGroup attributesForItem:CUIThemeItemSelectionBackground];\n    \n    if (tAttributes!=nil)\n        _textView.selectedTextAttributes=@{NSBackgroundColorAttributeName:tAttributes.color,\n                                           NSForegroundColorAttributeName:[[_textThemeItemsGroup attributesForItem:CUIThemeItemSelectionText] color]\n                                       };\n                                       \n                                       //NSBackgroundColorAttributeName:[NSColor unemphasizedSelectedTextBackgroundColor],\n                                       //NSForegroundColorAttributeName:[NSColor unemphasizedSelectedTextColor],\n                                       //NSBackgroundColorAttributeName:[NSColor greenColor]\n    \n    [self showsLineNumbers:[CUIApplicationPreferences sharedPreferences].showsLineNumbers];\n    \n    if ([_textView.identifier isEqualToString:@\"CUIAlwaysWrap\"]==YES)\n        [self setWrapText:YES];\n    else\n        [self setWrapText:[CUIApplicationPreferences sharedPreferences].lineWrapping];\n    \n    // Register for notifications\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(currentThemeDidChange:) name:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter removeObserver:self name:CUIThemeItemAttributesDidChangeNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(itemAttributesDidChange:) name:CUIThemeItemAttributesDidChangeNotification object:nil];\n\n    \n    \n    [tNotificationCenter removeObserver:self name:@\"jumpToSectionNotification\" object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(jumpToSection:) name:@\"jumpToSectionNotification\" object:nil];\n    \n    [tNotificationCenter removeObserver:self name:NSViewBoundsDidChangeNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(boundsDidChange:) name:NSViewBoundsDidChangeNotification object:nil];\n    \n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(symbolicateAutomaticallyDidChange:) name:CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification object:nil];\n    \n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesTextModeShowsLineNumbersDidChangeNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(showsLineNumbersDidChange:) name:CUIPreferencesTextModeShowsLineNumbersDidChangeNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesTextModeLineWrappingDidChangeNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(lineWrappingDidChange:) name:CUIPreferencesTextModeLineWrappingDidChangeNotification object:nil];\n    \n    \n    [tNotificationCenter removeObserver:self name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(dSYMBundlesManagerDidAddBundles:) name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIStackFrameSymbolicationDidSucceedNotification object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(stackFrameSymbolicationDidSucceed:) name:CUIStackFrameSymbolicationDidSucceedNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:@\"windowDidNotHandleKeyEventNotification\" object:nil];\n    [tNotificationCenter addObserver:self selector:@selector(handleKeyDown:) name:@\"windowDidNotHandleKeyEventNotification\" object:self.view.window];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    // Save browsing state\n    \n    [self saveBrowsingState];\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter removeObserver:self name:CUIThemeItemAttributesDidChangeNotification object:nil];\n    \n    //[tNotificationCenter removeObserver:self name:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:@\"jumpToSectionNotification\" object:nil];\n    \n    [tNotificationCenter removeObserver:self name:NSViewBoundsDidChangeNotification object:nil];\n    \n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesTextModeShowsLineNumbersDidChangeNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesTextModeLineWrappingDidChangeNotification object:nil];\n    \n    \n    [tNotificationCenter removeObserver:self name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIStackFrameSymbolicationDidSucceedNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:@\"windowDidNotHandleKeyEventNotification\" object:nil];\n}\n\n#pragma mark -\n\n- (void)saveBrowsingState\n{\n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    if (self.crashLog!=nil)\n    {\n        CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n        \n        tBrowsingState.textModeDisplaySettings=[self.displaySettings copy];\n        \n        NSRect tVisibleRect = _textView.visibleRect;\n        \n        NSLayoutManager * tLayoutManager = _textView.layoutManager;\n        \n        NSUInteger tNumberOfGlyphs = tLayoutManager.numberOfGlyphs;\n        \n        NSUInteger tGlyphIndex = 0;\n        \n        for (NSUInteger tLineNumber = 1; tGlyphIndex < tNumberOfGlyphs; tLineNumber++)\n        {\n            NSRange tLineRange;\n            \n            NSRect tLineRect=[tLayoutManager lineFragmentRectForGlyphAtIndex:tGlyphIndex effectiveRange:&tLineRange];\n            \n            if (NSIntersectsRect(tVisibleRect, tLineRect)==YES)\n            {\n                tBrowsingState.firstVisibleLineNumber=tLineNumber;\n                \n                NSRect tBounds=[tLayoutManager boundingRectForGlyphRange:tLineRange inTextContainer:_textView.textContainer];\n                \n                tBrowsingState.firstVisibleLineVerticalOffset=NSMinY(tVisibleRect)-NSMinY(tBounds);\n                \n                break;\n            }\n            \n            tGlyphIndex = NSMaxRange(tLineRange);\n        }\n    }\n}\n\n- (BOOL)showOnlyCrashedThread\n{\n    return ((self.displaySettings.visibleSections & CUIDocumentBacktraceCrashedThreadSubSection)==CUIDocumentBacktraceCrashedThreadSubSection);\n}\n\n- (void)setShowOnlyCrashedThread:(BOOL)inShowOnlyCrashedThread\n{\n    if (inShowOnlyCrashedThread==YES)\n    {\n        self.displaySettings.visibleSections|=CUIDocumentBacktraceCrashedThreadSubSection;\n    }\n    else\n    {\n        self.displaySettings.visibleSections&=~CUIDocumentBacktraceCrashedThreadSubSection;\n    }\n}\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    [self saveBrowsingState];\n    \n    [super setCrashLog:inCrashLog];\n    \n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:inCrashLog windowNumber:self.view.window.windowNumber];\n    \n    self.displaySettings=[tBrowsingState.textModeDisplaySettings copy];\n    \n    if (self.displaySettings==nil)\n    {\n        self.displaySettings=[[CUIApplicationPreferences sharedPreferences].defaultTextModeDisplaySettings copy];\n    }\n    \n    BOOL tIsRawCrashLog=[self.crashLog isMemberOfClass:[CUIRawCrashLog class]];\n    \n    _sectionsVisibilityPopUpButton.enabled=(tIsRawCrashLog==NO);\n    \n    _showOnlyCrashedThreadButton.enabled=(tIsRawCrashLog==NO);\n    _showByteOffsetButton.enabled=(tIsRawCrashLog==NO);\n    _showMachineInstructionAddressButton.enabled=(tIsRawCrashLog==NO);\n    _showBinaryNameButton.enabled=(tIsRawCrashLog==NO);\n    \n    if (tIsRawCrashLog==NO)\n    {\n        _showOnlyCrashedThreadButton.state=((self.displaySettings.visibleSections & CUIDocumentBacktraceCrashedThreadSubSection)==CUIDocumentBacktraceCrashedThreadSubSection) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        _showByteOffsetButton.state=((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==CUIStackFrameByteOffsetComponent) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        _showMachineInstructionAddressButton.state=((self.displaySettings.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)==CUIStackFrameMachineInstructionAddressComponent) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        _showBinaryNameButton.state=(((self.displaySettings.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)==CUIStackFrameBinaryNameComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    }\n    \n    if (tIsRawCrashLog==NO)\n    {\n        self.visibleStackFrameComponents=self.displaySettings.visibleStackFrameComponents;\n    }\n    else\n    {\n        [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n        \n        [self refreshText];\n    }\n    \n    // Restore (vertical) scrolling position?\n    \n    if (tBrowsingState.firstVisibleLineNumber==NSNotFound ||\n        (tBrowsingState.firstVisibleLineNumber==0 && tBrowsingState.firstVisibleLineNumber<0.01))\n    {\n        [_textView CUI_scrollPoint:NSZeroPoint];\n        \n        //[_textView scrollToBeginningOfDocument:self];\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogPresentationDisplayedSectionsDidChangeNotification object:nil];\n        \n        return;\n    }\n    \n    NSLayoutManager * tLayoutManager = _textView.layoutManager;\n            \n    NSUInteger tNumberOfGlyphs = tLayoutManager.numberOfGlyphs;\n\n    NSUInteger tGlyphIndex = 0;\n\n    for (NSUInteger tLineNumber = 1; tGlyphIndex < tNumberOfGlyphs; tLineNumber++)\n    {\n        NSRange tLineRange;\n        \n        [tLayoutManager lineFragmentRectForGlyphAtIndex:tGlyphIndex effectiveRange:&tLineRange];\n        \n        if (tLineNumber == tBrowsingState.firstVisibleLineNumber)\n        {\n            // Scroll to line\n            \n            NSRect tBounds=[_textView.layoutManager boundingRectForGlyphRange:tLineRange inTextContainer:_textView.textContainer];\n            \n            tBounds.origin.x=0;\n            \n            tBounds.origin.y+=tBrowsingState.firstVisibleLineVerticalOffset;\n            \n            [_textView CUI_scrollPoint:tBounds.origin];\n            \n            break;\n        }\n        \n        tGlyphIndex = NSMaxRange(tLineRange);\n    }\n\n    dispatch_async(dispatch_get_main_queue(), ^{\n        \n        [self boundsDidChange:[NSNotification notificationWithName:NSViewBoundsDidChangeNotification object:self->_textView]];\n        \n    });\n    \n    //_textView.textStorage.font=[NSFont monospacedDigitSystemFontOfSize:11.0 weight:NSFontWeightRegular];\n}\n\n- (void)setVisibleStackFrameComponents:(CUIStackFrameComponents)inVisibleStackFrameComponents\n{\n    [super setVisibleStackFrameComponents:inVisibleStackFrameComponents];\n    \n    self.displaySettings.visibleStackFrameComponents=inVisibleStackFrameComponents;\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n    \n    [self refreshText];\n}\n\n- (NSRange)crashedThreadRange\n{\n    __block NSRange tRange=NSMakeRange(NSNotFound,0);\n    \n    [_textView.textStorage enumerateAttribute:CUIGenericAnchorAttributeName\n                                      inRange:NSMakeRange(0,_textView.textStorage.length)\n                                      options:0\n                                   usingBlock:^(NSString * bValue, NSRange bRange, BOOL * bOutStop) {\n                                       \n                                       if (bValue==nil)\n                                           return;\n                                       \n                                       if ([bValue isEqualToString:@\"a:crashed_thread\"])\n                                       {\n                                           tRange=bRange;\n                                           *bOutStop=YES;\n                                       }\n                                   }];\n    \n    \n    return tRange;\n}\n\n- (void)showsLineNumbers:(BOOL)inShowsLineNumbers\n{\n    NSScrollView * tScrollView=_textView.enclosingScrollView;\n    \n    BOOL tIsChange=(_textView.enclosingScrollView.rulersVisible!=inShowsLineNumbers);\n    \n    _textView.enclosingScrollView.rulersVisible=inShowsLineNumbers;\n    \n    [_textView.enclosingScrollView tile];\n    \n    if (tIsChange==YES && inShowsLineNumbers==YES)\n    {\n        // Offset to the right\n        \n        NSRect tVisibleRect=[_textView visibleRect];\n        \n        tVisibleRect.origin.x-=NSWidth(tScrollView.verticalRulerView.frame);\n        \n        [_textView scrollRectToVisible:tVisibleRect];\n    }\n    \n    [self refreshLinesGutter];\n}\n\n- (void)setWrapText:(BOOL)inWrap\n{\n    if (_wrapText==inWrap)\n        return;\n    \n    _wrapText=inWrap;\n    \n    NSScrollView * tScrollView=_textView.enclosingScrollView;\n    \n    if (_wrapText==NO)\n    {\n        tScrollView.hasHorizontalScroller=YES;\n        tScrollView.hasVerticalScroller=YES;\n        \n        _textView.autoresizingMask=(NSViewWidthSizable | NSViewHeightSizable);\n\n        NSClipView * tClipView=(NSClipView *)_textView.superview;\n        NSRect tClipViewFrame=tClipView.frame;\n        \n        NSTextContainer * tTextContainer=[[NSTextContainer alloc] initWithContainerSize:NSMakeSize(10000000, 10000000)];\n        \n        [tTextContainer setWidthTracksTextView:NO];\n        [tTextContainer setHeightTracksTextView:NO];\n        \n        [_textView replaceTextContainer:tTextContainer];\n        \n        _textView.minSize=tClipViewFrame.size;\n        _textView.maxSize=NSMakeSize(10000000, 10000000);\n        _textView.horizontallyResizable=YES;\n        _textView.verticallyResizable=YES; \n    }\n    else\n    {\n        tScrollView.hasHorizontalScroller=NO;\n        tScrollView.hasVerticalScroller=YES;\n        \n        _textView.autoresizingMask=(NSViewWidthSizable | NSViewHeightSizable);\n        \n        NSClipView * tClipView=(NSClipView *)_textView.superview;\n        NSRect tClipViewFrame=tClipView.frame;\n        \n        CGFloat tWidth=NSWidth(tClipViewFrame);\n        \n        NSTextContainer * tTextContainer=[[NSTextContainer alloc] initWithContainerSize:NSMakeSize(tWidth, 10000000)];\n        \n        [tTextContainer setWidthTracksTextView:YES];\n        [tTextContainer setHeightTracksTextView:NO];\n        \n        [_textView replaceTextContainer:tTextContainer];\n        \n        _textView.minSize=tClipViewFrame.size;\n        _textView.maxSize=NSMakeSize(tWidth, 10000000);\n        _textView.horizontallyResizable=NO;\n        _textView.verticallyResizable=YES;\n    }\n    \n    _textView.wrapLines=inWrap;\n    \n    _textView.autoresizingMask=NSViewNotSizable;\n    \n    tScrollView.rulersVisible=[CUIApplicationPreferences sharedPreferences].showsLineNumbers;\n}\n\n#pragma mark -\n\n- (void)refreshLinesGutter\n{\n    // Update Line Numbers color\n    \n    CUIThemeItemAttributes * tAttributes=[_textThemeItemsGroup attributesForItem:CUIThemeItemLineNumber];\n    \n    _lineNumberView.textColor=tAttributes.color;\n}\n\n- (void)refreshText\n{\n    CUICrashLog * tCrashLog=self.crashLog;\n    \n    if (tCrashLog==nil)\n        return;\n    \n    _lineNumberView.fontSizeDelta=_fontSizeDelta;\n    \n    CUIDataTransform * tDataTransform=nil;\n    \n    if (tCrashLog.ipsReport!=nil)\n    {\n        tDataTransform=[[CUIIPSTransform alloc] initWithThemesProvider:[CUIThemesManager sharedManager]];\n        tDataTransform.input=tCrashLog.ipsReport;\n        ((CUIIPSTransform *)tDataTransform).crashlog=tCrashLog;\n    }\n    else\n    {\n        tDataTransform=[[CUICrashDataTransform alloc] initWithThemesProvider:[CUIThemesManager sharedManager]];\n        tDataTransform.input=tCrashLog;\n    }\n    \n    tDataTransform.displaySettings=self.displaySettings;\n    tDataTransform.fontSizeDelta=_fontSizeDelta;\n    \n    if ([tDataTransform transform]==NO)\n    {\n        // A COMPLETER\n    }\n    \n    NSAttributedString * tAttributedString=tDataTransform.output;\n    \n    _textView.backgroundColor=[[_textThemeItemsGroup attributesForItem:CUIThemeItemBackground] color];\n    \n    _lineNumberView.backgroundColor=[[_textThemeItemsGroup attributesForItem:CUIThemeItemBackground] color];\n    \n    _textView.selectedTextAttributes=@{\n                                       NSBackgroundColorAttributeName:[[_textThemeItemsGroup attributesForItem:CUIThemeItemSelectionBackground] color],\n                                       NSForegroundColorAttributeName:[[_textThemeItemsGroup attributesForItem:CUIThemeItemSelectionText] color]\n                                       };\n    \n    _textView.textStorage.attributedString=tAttributedString;\n    \n    //[_textView.layoutManager ensureLayoutForTextContainer:_textView.textContainer];\n    \n    // Compute sections ranges\n    \n    __block NSString * tPreviousSection=nil;\n    __block NSString * tCurrentSection=nil;\n    \n    NSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    [tAttributedString enumerateAttributesInRange:NSMakeRange(0,tAttributedString.length)\n                                          options:0\n                                       usingBlock:^(NSDictionary<NSAttributedStringKey,id> * bAttributes, NSRange bRange, BOOL * bOutStop) {\n                                           \n                                           NSString * bValue=bAttributes[CUIThreadAnchorAttributeName];\n                                           \n                                           if (bValue==nil)\n                                           {\n                                               bValue=bAttributes[CUISectionAnchorAttributeName];\n                                               \n                                               if (bValue==nil)\n                                                   return;\n                                           }\n                                           \n                                           if (tMutableDictionary[bValue]!=nil)\n                                               return;\n                                           \n                                           [tMutableArray addObject:bValue];\n                                           \n                                           tCurrentSection=bValue;\n                                           \n                                           tMutableDictionary[tCurrentSection]=[NSValue valueWithRange:bRange];\n                                           \n                                           if (tPreviousSection!=nil)\n                                           {\n                                               NSRange tPreviousRange=[tMutableDictionary[tPreviousSection] rangeValue];\n                                               \n                                               tPreviousRange.length=bRange.location-tPreviousRange.location;\n                                               \n                                               tMutableDictionary[tPreviousSection]=[NSValue valueWithRange:tPreviousRange];\n                                           \n                                           }\n                                           \n                                           tPreviousSection=tCurrentSection;\n                                       }];\n    \n    if (tPreviousSection!=nil)\n    {\n        NSRange tPreviousRange=[tMutableDictionary[tPreviousSection] rangeValue];\n        \n        tPreviousRange.length=tAttributedString.length-tPreviousRange.location;\n        \n        tMutableDictionary[tPreviousSection]=[NSValue valueWithRange:tPreviousRange];\n        \n    }\n    \n    _sectionsList=[tMutableArray copy];\n    \n    _sectionsRanges=[tMutableDictionary copy];\n}\n\n#pragma mark - CUIEQuickHelpPopUpViewControllerDelegate\n\n- (void)quickHelpPopUpViewController:(CUIQuickHelpPopUpViewController *)inController didComputeSizeOfPopover:(NSPopover *)inPopover\n{\n    // Compute the coordinates for the popover\n    \n    NSRect tRect=[_textView.layoutManager boundingRectForGlyphRange:inController.textRange inTextContainer:_textView.textContainer];\n    \n    NSPoint containerOrigin = [_textView textContainerOrigin];\n    \n    tRect=NSOffsetRect(tRect, containerOrigin.x, containerOrigin.y);\n    \n    [inPopover showRelativeToRect:tRect\n                           ofView:_textView\n                    preferredEdge:NSMaxYEdge];\n}\n\n#pragma mark - NSTextViewDelegate\n\n- (BOOL)textView:(NSTextView *)inTextView clickedOnLink:(id)inLink atIndex:(NSUInteger)inCharIndex\n{\n    if ([inLink isKindOfClass:[NSURL class]]==YES)\n    {\n        NSURL * tURL=(NSURL *)inLink;\n        \n        if ([tURL.scheme isEqualToString:@\"a\"]==YES)\n        {\n            NSString * tHost=tURL.host;\n            \n            if ([tHost isEqualToString:@\"crashed_thread\"]==YES)\n            {\n                // Jump to crash thread line\n                \n                NSRange tCrashedThreadRange=[self crashedThreadRange];\n                \n                [_textView setSelectedRange:tCrashedThreadRange];\n                \n                [_textView scrollRangeToVisible:tCrashedThreadRange];\n                \n                return YES;\n            }\n            else if ([tHost isEqualToString:@\"exception_type\"]==YES)\n            {\n                __block NSRange tRange=NSMakeRange(NSNotFound,0);\n                \n                //:[NSURL URLWithString:@\"a://exception_type\"]\n                \n\n                [_textView.textStorage enumerateAttribute:NSLinkAttributeName\n                                                  inRange:NSMakeRange(0,_textView.textStorage.length)\n                                                  options:0\n                                               usingBlock:^(NSURL * bValue, NSRange bRange, BOOL * bOutStop) {\n                                                   \n                                                   if ([bValue isKindOfClass:[NSURL class]]==NO)\n                                                       return;\n                                                   \n                                                   if ([bValue.absoluteString isEqualToString:@\"a://exception_type\"]==YES)\n                                                   {\n                                                       tRange=bRange;\n                                                       *bOutStop=YES;\n                                                   }\n                                               }];\n                    \n                if (tRange.location==NSNotFound)\n                    return NO;\n                \n                \n                \n                NSPopover * tExceptionTypeLookUpPopOver = [NSPopover new];\n                tExceptionTypeLookUpPopOver.contentSize=NSMakeSize(500.0, 20.0);\n                tExceptionTypeLookUpPopOver.behavior=NSPopoverBehaviorTransient;\n                tExceptionTypeLookUpPopOver.animates=NO;\n\n                CUIExceptionTypePopUpViewController * tPopUpViewController=[CUIExceptionTypePopUpViewController new];\n                tPopUpViewController.popover=tExceptionTypeLookUpPopOver;\n                tPopUpViewController.delegate=self;\n                tPopUpViewController.textRange=tRange;\n                \n                [tPopUpViewController setExceptionType:self.crashLog.exceptionType signal:self.crashLog.exceptionSignal];\n                \n                tExceptionTypeLookUpPopOver.contentViewController=tPopUpViewController;\n                \n                NSView * tTrick=tPopUpViewController.view;  // This is used to trigger the viewDidLoad method of the contentViewController.\n\n                (void)tTrick;\n                \n                return YES;\n            }\n            else if ([tHost isEqualToString:@\"termination_reason\"]==YES)\n            {\n                __block NSRange tRange=NSMakeRange(NSNotFound,0);\n                \n                //:[NSURL URLWithString:@\"a://termination_reason\"]\n                \n                \n                [_textView.textStorage enumerateAttribute:NSLinkAttributeName\n                                                  inRange:NSMakeRange(0,_textView.textStorage.length)\n                                                  options:0\n                                               usingBlock:^(NSURL * bValue, NSRange bRange, BOOL * bOutStop) {\n                                                   \n                                                   if ([bValue isKindOfClass:[NSURL class]]==NO)\n                                                       return;\n                                                   \n                                                   if ([bValue.absoluteString isEqualToString:@\"a://termination_reason\"]==YES)\n                                                   {\n                                                       tRange=bRange;\n                                                       *bOutStop=YES;\n                                                   }\n                                               }];\n                \n                if (tRange.location==NSNotFound)\n                    return NO;\n                \n                \n                \n                NSPopover * tExceptionTypeLookUpPopOver = [NSPopover new];\n                tExceptionTypeLookUpPopOver.contentSize=NSMakeSize(500.0, 20.0);\n                tExceptionTypeLookUpPopOver.behavior=NSPopoverBehaviorTransient;\n                tExceptionTypeLookUpPopOver.animates=NO;\n                \n                CUITerminationReasonPopUpViewController * tPopUpViewController=[CUITerminationReasonPopUpViewController new];\n                tPopUpViewController.popover=tExceptionTypeLookUpPopOver;\n                tPopUpViewController.delegate=self;\n                tPopUpViewController.textRange=tRange;\n                \n                CUICrashLogExceptionInformation * tExceptionInformation=self.crashLog.exceptionInformation;\n                \n                [tPopUpViewController setNamespace:tExceptionInformation.terminationNamespace\n                                              code:tExceptionInformation.terminationCode];\n                \n                tExceptionTypeLookUpPopOver.contentViewController=tPopUpViewController;\n                \n                NSView * tTrick=tPopUpViewController.view;  // This is used to trigger the viewDidLoad method of the contentViewController.\n                \n                (void)tTrick;\n                \n                return YES;\n            }\n        }\n        else if ([tURL.scheme isEqualToString:@\"bin\"]==YES)\n        {\n            __block NSRange tRange=NSMakeRange(NSNotFound,0);\n            \n            NSString * tAnchorValue=[NSString stringWithFormat:@\"bin:%@\",tURL.host];\n            \n            [_textView.textStorage enumerateAttribute:CUIBinaryAnchorAttributeName\n                                              inRange:NSMakeRange(0,_textView.textStorage.length)\n                                              options:0\n                                           usingBlock:^(NSString * bValue, NSRange bRange, BOOL * bOutStop) {\n                                               \n                                               if (bValue==nil)\n                                                   return;\n                                               \n                                               if ([bValue isEqualToString:tAnchorValue])\n                                               {\n                                                   tRange=bRange;\n                                                   *bOutStop=YES;\n                                               }\n                                           }];\n            \n            if (tRange.location!=NSNotFound)\n            {\n                [_textView setSelectedRange:tRange];\n                \n                [_textView scrollRangeToVisible:tRange];\n            }\n            \n            return YES;\n        }\n        else if ([tURL.scheme hasPrefix:@\"sourcecode-\"]==YES)\n        {\n            //NSUInteger tLineNumber=[[tURL.scheme substringFromIndex:[@\"sourcecode-\" length]] integerValue];\n            \n            // BBEdit -> bbedit_tool file_path +line\n            \n            // Open the file in the appropriate source editor\n            \n            NSURL * tFileURL=[NSURL fileURLWithPath:tURL.path];\n            \n#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101600\n\t\t\tif (@available(*, macOS 11.0))\n\t\t\t{\n\t\t\t\t[[NSWorkspace sharedWorkspace] openURLs:@[tFileURL]\n\t\t\t\t\t\t\t\t   withApplicationAtURL:[CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL\n\t\t\t\t\t\t\t\t\t\t  configuration:[NSWorkspaceOpenConfiguration configuration]\n\t\t\t\t\t\t\t\t\t  completionHandler:^(NSRunningApplication * _Nullable app, NSError * _Nullable error) {\n\t\t\t\t\t\n\t\t\t\t}];\n\t\t\t}\n\t\t\telse\n#endif\n\t\t\t{\n\t\t\t\t[[NSWorkspace sharedWorkspace] openURLs:@[tFileURL]\n\t\t\t\t\t\t\t\t   withApplicationAtURL:[CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL\n\t\t\t\t\t\t\t\t\t\t\t\toptions:NSWorkspaceLaunchDefault\n\t\t\t\t\t\t\t\t\t\t  configuration:@{}\n\t\t\t\t\t\t\t\t\t\t\t\t  error:NULL];\n\t\t\t}\n\t\t\t\n            return YES;\n        }\n    }\n    \n    return NO;\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    CUICrashLog * tCrashLog=self.crashLog;\n    \n    // Text Viewer\n    \n    /*if (tAction==@selector(CUI_MENUACTION_switchSyntaxHighlighting:))\n    {\n        inMenuItem.state=(self.displaySettings.highlightSyntax==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    }*/\n    \n    if (tAction==@selector(performTextFinderAction:))\n    {\n        return [_textView validateMenuItem:inMenuItem];\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_resetFontSize:))\n    {\n        return (fabs(_fontSizeDelta)>=1);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchTheme:))\n    {\n        return [super validateMenuItem:inMenuItem];\n    }\n    \n    // File Menu\n    \n    if (tAction==@selector(CUI_MENUACTION_print:))\n    {\n        return YES;\n    }\n    \n    // Navigate Menu\n    \n    BOOL tIsRawCrashLog=[tCrashLog isMemberOfClass:[CUIRawCrashLog class]];\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToHeader:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentHeaderSection)==CUIDocumentHeaderSection);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToExceptionInformation:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentExceptionInformationSection)==CUIDocumentExceptionInformationSection);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToDiagnosticMessages:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentDiagnosticMessagesSection)==CUIDocumentDiagnosticMessagesSection);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToBacktraces:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==CUIDocumentBacktracesSection);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToThreadState:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentThreadStateSection)==CUIDocumentThreadStateSection);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToBinaryImages:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentBinaryImagesSection)==CUIDocumentBinaryImagesSection);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_jumpToCrashedThread:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        return ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==CUIDocumentBacktracesSection) &&\n               ((self.displaySettings.visibleSections & CUIDocumentBacktraceCrashedThreadSubSection)==0);\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchHeaderVisibility:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        BOOL tEnabled=tCrashLog.isHeaderAvailable;\n        \n        inMenuItem.state=(tEnabled==YES) ? ((self.displaySettings.visibleSections & CUIDocumentHeaderSection)==CUIDocumentHeaderSection) : NSControlStateValueOff;\n        \n        return tEnabled;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchExceptionInformationVisibility:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        BOOL tEnabled=tCrashLog.isExceptionInformationAvailable;\n        \n        inMenuItem.state=(tEnabled==YES) ? ((self.displaySettings.visibleSections & CUIDocumentExceptionInformationSection)==CUIDocumentExceptionInformationSection) : NSControlStateValueOff;\n        \n        return tEnabled;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchDiagnosticMessagesVisibility:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        BOOL tEnabled=tCrashLog.isDiagnosticMessageAvailable;\n        \n        inMenuItem.state=(tEnabled==YES) ? ((self.displaySettings.visibleSections & CUIDocumentDiagnosticMessagesSection)==CUIDocumentDiagnosticMessagesSection) : NSControlStateValueOff;\n        \n        return tEnabled;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchBacktracesVisibility:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        BOOL tEnabled=tCrashLog.isBacktracesAvailable;\n        \n        inMenuItem.state=(tEnabled==YES) ? ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==CUIDocumentBacktracesSection) : NSControlStateValueOff;\n        \n        return tEnabled;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchThreadStateVisibility:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        BOOL tEnabled=tCrashLog.isThreadStateAvailable;\n        \n        inMenuItem.state=(tEnabled==YES) ? ((self.displaySettings.visibleSections & CUIDocumentThreadStateSection)==CUIDocumentThreadStateSection) : NSControlStateValueOff;\n        \n        return tEnabled;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchBinaryImagesVisibility:))\n    {\n        if (tIsRawCrashLog==YES)\n            return NO;\n        \n        BOOL tEnabled=tCrashLog.isBinaryImagesAvailable;\n        \n        inMenuItem.state=(tEnabled==YES) ? ((self.displaySettings.visibleSections & CUIDocumentBinaryImagesSection)==CUIDocumentBinaryImagesSection) : NSControlStateValueOff;\n        \n        return tEnabled;\n    }\n\n    \n    return [super validateMenuItem:inMenuItem];\n}\n\n#pragma mark -\n\n- (void)handleKeyDown:(NSNotification *)inNotification\n{\n    NSEvent * tEvent=inNotification.userInfo[@\"Event\"];\n    \n    NSString * tTypedText=tEvent.characters;\n    \n    NSUInteger tLength=tTypedText.length;\n    \n    for(NSUInteger tIndex=0;tIndex<tLength;tIndex++)\n    {\n        unichar tChar=[tTypedText characterAtIndex:tIndex];\n        \n        switch(tChar)\n        {\n            case NSHomeFunctionKey:\n                \n                [_textView scrollToBeginningOfDocument:self];\n                return;\n                \n            case NSEndFunctionKey:\n                \n                [_textView scrollToEndOfDocument:self];\n                break;\n                \n            case ' ':\n            case NSPageDownFunctionKey:\n                \n                [_textView scrollPageDown:self];\n                return;\n                \n            case 'b':\n            case NSPageUpFunctionKey:\n                \n                [_textView scrollPageUp:self];\n                return;\n                \n            case NSUpArrowFunctionKey:\n                \n                [_textView scrollLineUp:self];\n                return;\n                \n            case NSDownArrowFunctionKey:\n                \n                [_textView scrollLineDown:self];\n                return;\n        }\n    }\n}\n\n#pragma mark - File Menu\n\n- (IBAction)CUI_MENUACTION_print:(id)sender\n{\n    NSPrintInfo * tPrintInfo=[NSPrintInfo sharedPrintInfo];\n    \n    tPrintInfo.topMargin=0;\n    tPrintInfo.bottomMargin=0;\n    tPrintInfo.leftMargin=0;\n    tPrintInfo.rightMargin=0;\n    \n    tPrintInfo.verticallyCentered=NO;\n    \n    NSRect tFrame=NSMakeRect(0, 0, tPrintInfo.paperSize.width, tPrintInfo.paperSize.height);\n    \n    NSTextView * tPrintableTextView=[[NSTextView alloc] initWithFrame:tFrame];\n    tPrintableTextView.appearance = [NSAppearance appearanceNamed:NSAppearanceNameAqua];\n    \n    NSMutableAttributedString * tMutableAttributedString=[_textView.textStorage mutableCopy];\n    \n    [tMutableAttributedString setAttributes:@{NSForegroundColorAttributeName:[NSColor blackColor],\n                                              NSBackgroundColorDocumentAttribute:[NSColor whiteColor]}\n                                      range:NSMakeRange(0,tMutableAttributedString.length)];\n    \n    [tPrintableTextView.textStorage appendAttributedString:tMutableAttributedString];\n    tPrintableTextView.textStorage.font=[[_textThemeItemsGroup attributesForItem:CUIThemeItemPlainText] font];\n    \n    NSPrintOperation * tPrintOperation=[NSPrintOperation printOperationWithView:tPrintableTextView];\n    \n    [tPrintOperation runOperation];\n}\n\n- (IBAction)CUI_MENUACTION_exportCrashLog:(id)sender\n{\n    NSSavePanel * tExportPanel=[NSSavePanel savePanel];\n    \n    tExportPanel.canSelectHiddenExtension=YES;\n    tExportPanel.allowedFileTypes=@[@\"html\"];\n    \n    tExportPanel.nameFieldLabel=NSLocalizedString(@\"Export As:\", @\"\");\n    tExportPanel.nameFieldStringValue=[self.crashLog.crashLogFilePath.lastPathComponent stringByDeletingPathExtension];\n    \n    tExportPanel.prompt=NSLocalizedString(@\"Export\", @\"\");\n    \n    CUIExportAccessoryViewController * tAccessoryViewController=[CUIExportAccessoryViewController new];\n    \n    tAccessoryViewController.savePanel=tExportPanel;\n    tAccessoryViewController.displaySettings=[self.displaySettings copy];\n    tAccessoryViewController.exportFormat=CUICrashLogExportFormatHTML;\n    \n    NSRange tSelectionRange=_textView.selectedRange;\n    \n    tAccessoryViewController.canSelectExportedContents=(tSelectionRange.length>0); // A COMPLETER (minimum length?)\n    \n    IPSReport * tIPSReport=self.crashLog.ipsReport;\n    \n    tAccessoryViewController.canObfuscateContents=(tIPSReport!=nil);\n    \n    tExportPanel.accessoryView=tAccessoryViewController.view;\n    \n    \n    [tExportPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger bResult){\n        \n        if (bResult!=NSModalResponseOK)\n            return;\n        \n        CUICrashLogExportFormat tSelectedExportFormat=tAccessoryViewController.exportFormat;\n        \n        CUIDataTransform * tDataTransform=nil;\n        \n        if (tIPSReport!=nil)\n        {\n            IPSReport * tFinalIPSReport=tIPSReport;\n            \n            tDataTransform=[[CUIIPSTransform  alloc] initWithThemesProvider:[CUIThemesManager sharedManager]];\n            \n            if (tAccessoryViewController.obfuscateContents==YES)\n            {\n                IPSObfuscator * tObfuscator=[IPSObfuscator new];\n                \n                tFinalIPSReport=[tIPSReport obfuscateWithObfuscator:tObfuscator];\n                \n                tDataTransform.symbolicationMode=CUISymbolicationModeNone;\n            }\n            \n            tDataTransform.input=tFinalIPSReport;\n            ((CUIReportThemedTransform *)tDataTransform).crashlog=self.crashLog;\n        }\n        else\n        {\n            tDataTransform=[[CUICrashDataTransform  alloc] initWithThemesProvider:[CUIThemesManager sharedManager]];\n            tDataTransform.input=self.crashLog;\n        }\n        \n        tDataTransform.displaySettings=[tAccessoryViewController.displaySettings copy];\n        tDataTransform.fontSizeDelta=0;\n        \n        switch(tSelectedExportFormat)\n        {\n            case CUICrashLogExportFormatHTML:\n                \n                tDataTransform.hyperlinksStyle=CUIHyperlinksHTML;\n                \n                break;\n                \n            default:\n                \n                tDataTransform.hyperlinksStyle=CUIHyperlinksNone;\n                \n                break;\n        }\n        \n        if ([tDataTransform transform]==NO)\n        {\n            NSBeep();\n            return;\n        }\n        \n        NSAttributedString * tAttributedString=tDataTransform.output;\n        \n        // Extract the selection if needed\n        \n        if (tAccessoryViewController.exportedContents==CUICrashLogExportedContentsSelection)\n        {\n            tAttributedString=[tAttributedString attributedSubstringFromRange:tSelectionRange];\n        }\n        \n        //NSRTFTextDocumentType\n        //NSHTMLTextDocumentType\n        \n        // <A NAME=\"Component Attributes\">\n        \n        \n        \n        NSAttributedStringDocumentType tDocumenType=NSPlainTextDocumentType;\n        \n        switch(tSelectedExportFormat)\n        {\n            case CUICrashLogExportFormatRTF:\n                \n                tDocumenType=NSRTFTextDocumentType;\n                \n                break;\n                \n            case CUICrashLogExportFormatHTML:\n                \n                tDocumenType=NSHTMLTextDocumentType;\n                \n                break;\n                \n            default:\n                \n                break;\n        }\n        \n        NSData * tData=nil;\n        NSError * tError=nil;\n        \n        if (tSelectedExportFormat==CUICrashLogExportFormatPDF)\n        {\n            NSPrintInfo * tPrintInfo=[NSPrintInfo sharedPrintInfo];\n            \n            NSRect tBounds=self->_textView.bounds;\n            \n            if (tAccessoryViewController.exportedContents==CUICrashLogExportedContentsSelection)\n            {\n                NSRange tGlyphRange=[self->_textView.layoutManager glyphRangeForCharacterRange:tSelectionRange actualCharacterRange:NULL];\n                \n                NSRect tBoundingRect=[self->_textView.layoutManager boundingRectForGlyphRange:tGlyphRange inTextContainer:self->_textView.textContainer];\n                \n                tBounds.size.height=NSHeight(tBoundingRect);\n            }\n            else\n            {\n                tBounds=self->_textView.bounds;\n                tBounds.size.height-=300;\n            }\n            \n            \n            \n            tPrintInfo.paperSize=tBounds.size;\n            \n            tPrintInfo.topMargin=0;\n            tPrintInfo.bottomMargin=0;\n            tPrintInfo.leftMargin=0;\n            tPrintInfo.rightMargin=0;\n            \n            tPrintInfo.verticallyCentered=NO;\n            \n            NSTextView * tPrintableTextView=[[NSTextView alloc] initWithFrame:tBounds];\n            tPrintableTextView.backgroundColor=[[self->_textThemeItemsGroup attributesForItem:CUIThemeItemBackground] color];\n            \n            [tPrintableTextView.textStorage appendAttributedString:tAttributedString];\n            tPrintableTextView.textStorage.font=[[self->_textThemeItemsGroup attributesForItem:CUIThemeItemPlainText] font];\n            \n            NSMutableData * tMutableData=[NSMutableData data];\n            \n            NSPrintOperation * tPrintOperation=[NSPrintOperation PDFOperationWithView:tPrintableTextView\n                                                                           insideRect:tBounds\n                                                                               toData:tMutableData\n                                                                            printInfo:tPrintInfo];\n            \n            [tPrintOperation runOperation];\n            \n            tData=[tMutableData copy];\n        }\n        else\n        {\n            if (tSelectedExportFormat==CUICrashLogExportFormatText)\n            {\n                tData=[tAttributedString.string dataUsingEncoding:NSUTF8StringEncoding];\n            }\n            else\n            {\n                NSDictionary * tDocumentAttributes=@{\n                                                     NSDocumentTypeDocumentAttribute:tDocumenType,\n                                                     NSBackgroundColorDocumentAttribute:self->_textView.backgroundColor\n                                                     };\n                \n                tData=[tAttributedString dataFromRange:NSMakeRange(0,tAttributedString.length) documentAttributes:tDocumentAttributes error:&tError];\n            }\n        }\n        \n        if (tData==nil)\n        {\n            NSBeep();\n            \n            // A COMPLETER (Alert dialog?)\n            \n            return;\n        }\n        \n        switch(tSelectedExportFormat)\n        {\n            case CUICrashLogExportFormatRTF:\n                \n                break;\n                \n            case CUICrashLogExportFormatHTML:\n            {\n                NSString * tString=[[NSString alloc] initWithData:tData encoding:NSUTF8StringEncoding];\n                \n                NSString * tOtherString=[tString stringByReplacingOccurrencesOfString:@\"href=\\\"sharp://\" withString:@\"style=\\\"color:inherit;text-decoration: none\\\" href=\\\"#\" options:NSCaseInsensitiveSearch range:NSMakeRange(0,tString.length)];\n                \n                tOtherString=[tOtherString stringByReplacingOccurrencesOfString:@\"href=\\\"anchor://\" withString:@\"name=\\\"\" options:NSCaseInsensitiveSearch range:NSMakeRange(0,tOtherString.length)];\n                \n                tData=[tOtherString dataUsingEncoding:NSUTF8StringEncoding];\n                \n                break;\n            }\n                \n            default:\n                \n                break;\n                \n        }\n        \n        tError=nil;\n        \n        if ([tData writeToURL:tExportPanel.URL options:(NSDataWritingAtomic) error:&tError]==YES)\n        {\n            //[[NSWorkspace sharedWorkspace] selectFile:tExportPanel.URL.path inFileViewerRootedAtPath:@\"\"];\n            \n            return;\n        }\n        \n        // Export failed\n        \n        NSString * tInformativeText=nil;\n        \n        if (tError!=nil)\n            tInformativeText=tError.localizedDescription;\n        \n        dispatch_async(dispatch_get_main_queue(), ^{\n           \n            NSBeep();\n            \n            NSAlert * tAlert=[NSAlert new];\n            tAlert.messageText=NSLocalizedString(@\"The export operation failed.\", @\"\");\n            tAlert.informativeText=tInformativeText;\n            \n            [tAlert beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse returnCode) {\n               \n                // Do nothing\n                \n            }];\n            \n        });\n    }];\n}\n\n#pragma Reader Menu\n\n- (IBAction)CUI_MENUACTION_increaseFontSize:(id)sender\n{\n    _fontSizeDelta+=1.0;\n    \n    [self refreshText];\n    \n    [[NSUserDefaults standardUserDefaults] setDouble:_fontSizeDelta forKey:CUICrashLogPresentationTextViewFontSizeDelta];\n}\n\n- (IBAction)CUI_MENUACTION_decreaseFontSize:(id)sender\n{\n    NSFont * tPlainTextFont=[[_textThemeItemsGroup attributesForItem:CUIThemeItemPlainText] font];\n    \n    CGFloat tNewDeltaSize=_fontSizeDelta-1.0;\n    \n    if (tPlainTextFont.pointSize + tNewDeltaSize>6.0)\n    {\n        _fontSizeDelta=tNewDeltaSize;\n    \n        [self refreshText];\n        \n        [[NSUserDefaults standardUserDefaults] setDouble:_fontSizeDelta forKey:CUICrashLogPresentationTextViewFontSizeDelta];\n    }\n}\n\n- (IBAction)CUI_MENUACTION_resetFontSize:(id)sender\n{\n    _fontSizeDelta=0;\n    \n    [self refreshText];\n    \n    [[NSUserDefaults standardUserDefaults] setDouble:_fontSizeDelta forKey:CUICrashLogPresentationTextViewFontSizeDelta];\n}\n\n\n#pragma mark -\n\n- (IBAction)performTextFinderAction:(id)sender\n{\n    [_textView performTextFinderAction:sender];\n}\n\n#pragma mark - Navigate Menu\n\n- (IBAction)CUI_MENUACTION_jumpToLine:(id)sender\n{\n    CUILineJumperWindowController * tController=[CUILineJumperWindowController sharedLineJumperWindowController];\n    \n    if (tController.window.isVisible==NO)\n        [tController popUpForTextView:_textView];\n}\n\n- (IBAction)CUI_MENUACTION_jumpToCrashedThread:(id)sender\n{\n    [self _jumpToAnchor:@\"a:crashed_thread\"];\n}\n\n- (void)_jumpToAnchor:(NSString *)inAnchor\n{\n    if (inAnchor.length==0)\n        return;\n    \n    __block NSRange tRange=NSMakeRange(NSNotFound,0);\n    \n    NSArray * tAnchorsAttributesNames=@[\n                                        CUIGenericAnchorAttributeName,\n                                        CUISectionAnchorAttributeName,\n                                        CUIThreadAnchorAttributeName,\n                                        CUIBinaryAnchorAttributeName\n                                        ];\n    \n    for(NSString * tAnchorAttributeName in tAnchorsAttributesNames)\n    {\n        [_textView.textStorage enumerateAttribute:tAnchorAttributeName\n                                          inRange:NSMakeRange(0,_textView.textStorage.length)\n                                          options:0\n                                       usingBlock:^(NSString * bValue, NSRange bRange, BOOL * bOutStop) {\n                                           \n                                           if (bValue==nil)\n                                               return;\n                                           \n                                           if ([bValue isEqualToString:inAnchor])\n                                           {\n                                               tRange=bRange;\n                                               *bOutStop=YES;\n                                           }\n                                       }];\n        \n        if (tRange.location!=NSNotFound)\n            break;\n    }\n    \n    if (tRange.location!=NSNotFound)\n    {\n        NSRect tBounds=[_textView.layoutManager boundingRectForGlyphRange:tRange inTextContainer:_textView.textContainer];\n        \n        tBounds.origin.x=0;\n        \n        [_textView CUI_scrollPoint:tBounds.origin];\n    }\n}\n\n- (IBAction)CUI_MENUACTION_jumpToHeader:(id)sender\n{\n    [self _jumpToAnchor:@\"section:Header\"];\n}\n\n- (IBAction)CUI_MENUACTION_jumpToExceptionInformation:(id)sender\n{\n    [self _jumpToAnchor:@\"section:Exception Information\"];\n}\n\n- (IBAction)CUI_MENUACTION_jumpToDiagnosticMessages:(id)sender\n{\n    [self _jumpToAnchor:@\"section:Diagnostic Messages\"];\n}\n\n- (IBAction)CUI_MENUACTION_jumpToBacktraces:(id)sender\n{\n    [self _jumpToAnchor:@\"section:Backtraces\"];\n}\n\n- (IBAction)CUI_MENUACTION_jumpToThreadState:(id)sender\n{\n    [self _jumpToAnchor:@\"section:Thread State\"];\n}\n\n- (IBAction)CUI_MENUACTION_jumpToBinaryImages:(id)sender\n{\n    [self _jumpToAnchor:@\"section:Binary Images\"];\n}\n\n#pragma mark -\n\n- (void)_CUI_MENUACTION_switchVisibilityCommon\n{\n    [self refreshText];\n    \n    // Update the Sections menu in the navigation bar\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogPresentationDisplayedSectionsDidChangeNotification object:nil];\n    \n    // Update the selected item in the Sections menu if needed\n    \n    [self boundsDidChange:nil];\n}\n\n- (IBAction)CUI_MENUACTION_switchHeaderVisibility:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentHeaderSection;\n    \n    [self _CUI_MENUACTION_switchVisibilityCommon];\n}\n\n- (IBAction)CUI_MENUACTION_switchExceptionInformationVisibility:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentExceptionInformationSection;\n    \n    [self _CUI_MENUACTION_switchVisibilityCommon];\n}\n\n- (IBAction)CUI_MENUACTION_switchDiagnosticMessagesVisibility:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentDiagnosticMessagesSection;\n    \n    [self _CUI_MENUACTION_switchVisibilityCommon];\n}\n\n- (IBAction)CUI_MENUACTION_switchBacktracesVisibility:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentBacktracesSection;\n    \n    [self _CUI_MENUACTION_switchVisibilityCommon];\n}\n\n- (IBAction)CUI_MENUACTION_switchThreadStateVisibility:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentThreadStateSection;\n    \n    [self _CUI_MENUACTION_switchVisibilityCommon];\n}\n\n- (IBAction)CUI_MENUACTION_switchBinaryImagesVisibility:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentBinaryImagesSection;\n    \n    [self _CUI_MENUACTION_switchVisibilityCommon];\n}\n\n#pragma mark -\n\n- (IBAction)CUI_MENUACTION_switchShowOnlyCrashedThread:(id)sender\n{\n    self.displaySettings.visibleSections^=CUIDocumentBacktraceCrashedThreadSubSection;\n    \n    [self refreshText];\n}\n\n- (IBAction)CUI_MENUACTION_switchShowOffset:(id)sender\n{\n    self.displaySettings.visibleStackFrameComponents^=CUIStackFrameByteOffsetComponent;\n    \n    [self refreshText];\n}\n\n- (IBAction)CUI_MENUACTION_switchShowMemoryAddress:(id)sender\n{\n    self.displaySettings.visibleStackFrameComponents^=CUIStackFrameMachineInstructionAddressComponent;\n    \n    [self refreshText];\n}\n\n- (IBAction)CUI_MENUACTION_switchShowBinaryImageIdentifier:(id)sender\n{\n    self.displaySettings.visibleStackFrameComponents^=CUIStackFrameBinaryNameComponent;\n    \n    [self refreshText];\n}\n\n- (NSView *)firstKeyView\n{\n    return _textView;\n}\n\n- (NSView *)lastKeyView\n{\n    return _textView;\n}\n\n#pragma mark - Notifications\n\n- (void)itemAttributesDidChange:(NSNotification *)inNotification\n{\n    // Save selection\n    \n    NSRange tSelectionRange=_textView.selectedRange;\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n    \n    [self refreshText];\n    \n    [self refreshLinesGutter];\n    \n    // Restore selection\n    \n    if (tSelectionRange.location!=NSNotFound)\n        _textView.selectedRange=tSelectionRange;\n}\n\n- (void)currentThemeDidChange:(NSNotification *)inNotification\n{\n    _textThemeItemsGroup=[[CUIThemesManager sharedManager].currentTheme itemsGroupWithIdentifier:[CUIApplicationPreferences groupIdentifierForPresentationMode:CUIPresentationModeText]];\n    \n    // Save selection\n    \n    NSRange tSelectionRange=_textView.selectedRange;\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n    \n    [self refreshText];\n    \n    [self refreshLinesGutter];\n    \n    \n    \n    // Restore selection\n    \n    if (tSelectionRange.location!=NSNotFound)\n        _textView.selectedRange=tSelectionRange;\n}\n\n- (void)jumpToSection:(NSNotification *)inNotification\n{\n    [self _jumpToAnchor:inNotification.object];\n}\n\n- (void)boundsDidChange:(NSNotification *)inNotification\n{\n    if ([self.crashLog isMemberOfClass:[CUIRawCrashLog class]]==YES)\n        return;\n    \n    NSRect tBoundingRect=[_textView.superview bounds];\n    \n    NSRange tVisibleRange=[_textView.layoutManager glyphRangeForBoundingRect:tBoundingRect inTextContainer:_textView.textContainer];\n    \n    NSMutableArray * tVisibleSections=[_sectionsList mutableCopy];\n    \n    NSMutableIndexSet * tMutableIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_sectionsList enumerateObjectsUsingBlock:^(NSString * bSection, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        NSValue * tValue=self->_sectionsRanges[bSection];\n        \n        if (tValue==nil)\n            return;\n        \n        NSRange tSectionRange=[tValue rangeValue];\n        \n        if (NSIntersectionRange(tSectionRange,tVisibleRange).length!=0)\n            return;\n        \n        [tMutableIndexSet addIndex:bIndex];\n    }];\n    \n    [tVisibleSections removeObjectsAtIndexes:tMutableIndexSet];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogPresentationVisibleSectionsDidChangeNotification object:tVisibleSections];\n    \n    //NSLog(@\"%@\",NSStringFromRange(tVisibleRange));\n    \n    //NSLog(@\"%@\",NSStringFromRect([_textView.superview bounds]));\n}\n\n- (void)symbolicateAutomaticallyDidChange:(NSNotification *)inNotification\n{\n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n    \n    [self performSelector:@selector(refreshText) withObject:nil afterDelay:0.1];\n}\n\n- (void)showsLineNumbersDidChange:(NSNotification *)inNotification\n{\n    [self showsLineNumbers:[CUIApplicationPreferences sharedPreferences].showsLineNumbers];\n}\n\n- (void)lineWrappingDidChange:(NSNotification *)inNotification\n{\n    [self setWrapText:[CUIApplicationPreferences sharedPreferences].lineWrapping];\n}\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification\n{\n    if ([self.crashLog isMemberOfClass:[CUIRawCrashLog class]]==YES)\n        return;\n    \n    // Ideally we should just request to symbolicate the machineInstructionAddresses that can be\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n    \n    [self performSelector:@selector(refreshText) withObject:nil afterDelay:0.1];\n}\n\n- (void)stackFrameSymbolicationDidSucceed:(NSNotification *)inNotification\n{\n    if (inNotification.object!=self.crashLog)\n        return;\n    \n    if ([self.crashLog isMemberOfClass:[CUIRawCrashLog class]]==YES)\n        return;\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(refreshText) object:nil];\n    \n    [self performSelector:@selector(refreshText) withObject:nil afterDelay:0.1];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogPresentationViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n#import \"CUICrashLog+Transform.h\"\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUITextModeDisplaySettings.h\"\n\n#import \"CUIKeyViews.h\"\n\nextern NSString * const CUICrashLogPresentationDisplayedSectionsDidChangeNotification;\n\nextern NSString * const CUICrashLogPresentationVisibleSectionsDidChangeNotification;\n\n@interface CUICrashLogPresentationViewController : NSViewController <CUIKeyViews>\n{\n    IBOutlet NSButton * _showOnlyCrashedThreadButton;\n    \n    IBOutlet NSButton * _showByteOffsetButton;\n    \n    IBOutlet NSButton * _showMachineInstructionAddressButton;\n    \n    IBOutlet NSButton * _showBinaryNameButton;\n}\n\n    @property (nonatomic) CUICrashLog * crashLog;\n\n    @property (nonatomic) CUIStackFrameComponents visibleStackFrameComponents;\n\n\n- (IBAction)CUI_MENUACTION_switchTheme:(NSMenuItem *)sender;\n\n- (IBAction)CUI_MENUACTION_switchShowOffset:(id)sender;\n- (IBAction)CUI_MENUACTION_switchShowMemoryAddress:(id)sender;\n- (IBAction)CUI_MENUACTION_switchShowBinaryImageIdentifier:(id)sender;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogPresentationViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogPresentationViewController.h\"\n\n#import \"CUIThemesManager.h\"\n\n#import \"CUIPreferencesWindowController.h\"\n\nNSString * const CUICrashLogPresentationDisplayedSectionsDidChangeNotification=@\"CUICrashLogPresentationDisplayedSectionsDidChangeNotification\";\n\nNSString * const CUICrashLogPresentationVisibleSectionsDidChangeNotification=@\"CUICrashLogPresentationVisibleSectionsDidChangeNotification\";\n\n@interface CUICrashLogPresentationViewController () <NSMenuItemValidation>\n\n@end\n\n@implementation CUICrashLogPresentationViewController\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n}\n\n#pragma mark -\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    _crashLog=inCrashLog;\n    \n    if (_crashLog.isFullyParsed==NO)\n    {\n        [_crashLog finalizeParsing];\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(CUI_MENUACTION_switchTheme:))\n    {\n        if ([inMenuItem.title isEqualToString:[CUIThemesManager sharedManager].currentTheme.name]==YES)\n        {\n            inMenuItem.state=NSControlStateValueOn;\n        }\n        else\n        {\n            inMenuItem.state=NSControlStateValueOff;\n        }\n    \n        return YES;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_switchShowOffset:))\n    {\n        inMenuItem.state=((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    }\n    else if (tAction==@selector(CUI_MENUACTION_switchShowMemoryAddress:))\n    {\n        inMenuItem.state=((self.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    }\n    else if (tAction==@selector(CUI_MENUACTION_switchShowBinaryImageIdentifier:))\n    {\n        inMenuItem.state=((self.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    }\n    \n    return YES;\n}\n\n- (IBAction)CUI_MENUACTION_switchTheme:(NSMenuItem *)sender\n{\n    CUIThemesManager * tThemesManager=[CUIThemesManager sharedManager];\n    \n    tThemesManager.currentTheme=[tThemesManager themeWithUUID:sender.representedObject];\n}\n\n\n- (IBAction)CUI_MENUACTION_switchShowOffset:(id)sender\n{\n    self.visibleStackFrameComponents^=CUIStackFrameByteOffsetComponent;\n}\n\n- (IBAction)CUI_MENUACTION_switchShowMemoryAddress:(id)sender\n{\n    self.visibleStackFrameComponents^=CUIStackFrameMachineInstructionAddressComponent;\n}\n\n- (IBAction)CUI_MENUACTION_switchShowBinaryImageIdentifier:(id)sender\n{\n    self.visibleStackFrameComponents^=CUIStackFrameBinaryNameComponent;\n}\n\n#pragma mark - CUIKeyViews\n\n- (NSView *)firstKeyView\n{\n    return nil;\n}\n\n- (NSView *)lastKeyView\n{\n    return nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogSectionsDetector.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface CUICrashLogSectionsDetector : NSObject\n\n+ (NSRange)detectHeaderSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes;\n\n+ (NSRange)detectExceptionInformationSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes;\n\n+ (NSRange)detectDiagnosticMessageSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes;\n\n+ (NSRange)detectBacktracesSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes;\n\n+ (NSRange)detectThreadStateSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes;\n\n+ (NSRange)detectBinaryImagesSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogSectionsDetector.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogSectionsDetector.h\"\n\n@implementation CUICrashLogSectionsDetector\n\n+ (NSRange)detectHeaderSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes\n{\n    __block NSRange tRange={.location=NSNotFound,.length=0};\n    \n    // Find the \"Exception Information\" section start\n    \n    [inLines enumerateObjectsAtIndexes:inIndexes options:0 usingBlock:^(NSString * bLine , NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ([bLine hasPrefix:@\"Crashed Thread:\"]==YES ||\n            [bLine hasPrefix:@\"Exception Type:\"]==YES)\n        {\n            NSUInteger tFirstLine=inIndexes.firstIndex;\n            NSUInteger tLastLine=bLineNumber-1;\n            \n            tRange=NSMakeRange(tFirstLine, tLastLine-tFirstLine+1);\n            \n            *bOutStop=YES;\n            \n            return;\n        }\n    }];\n    \n    return tRange;\n}\n\n+ (NSRange)detectExceptionInformationSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes\n{\n    __block NSRange tRange={.location=NSNotFound,.length=0};\n    \n    // Find the \"Diagnostic Message\" or \"Backtrace\" section start\n    \n    [inLines enumerateObjectsAtIndexes:inIndexes options:0 usingBlock:^(NSString * bLine , NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ([bLine hasPrefix:@\"Application Specific Information:\"]==YES ||\n            [bLine hasPrefix:@\"VM Regions Near\"]==YES ||\n            [bLine hasPrefix:@\"VM Region Info:\"]==YES ||\n            \n            [bLine isEqualToString:@\"Backtrace not available\"]==YES ||\n            \n            [bLine hasPrefix:@\"Application Specific Backtrace\"]==YES ||\n            [bLine hasPrefix:@\"Thread 0\"]==YES)\n        {\n            NSUInteger tFirstLine=inIndexes.firstIndex;\n            NSUInteger tLastLine=bLineNumber-1;\n            \n            tRange=NSMakeRange(tFirstLine, tLastLine-tFirstLine+1);\n            \n            *bOutStop=YES;\n            \n            return;\n        }\n    }];\n    \n    return tRange;\n}\n\n+ (NSRange)detectDiagnosticMessageSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes\n{\n    __block NSRange tRange={.location=NSNotFound,.length=0};\n    \n    // Find the \"Backtrace\" or \"Thread State\" or \"Binary Images\" section start\n    \n    [inLines enumerateObjectsAtIndexes:inIndexes options:0 usingBlock:^(NSString * bLine , NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ([bLine hasPrefix:@\"Application Specific Backtrace\"]==YES ||\n            [bLine hasPrefix:@\"Thread 0\"]==YES ||\n            \n            ([bLine hasPrefix:@\"Thread\"]==YES && [bLine rangeOfString:@\"crashed with\"].location !=NSNotFound) ||\n            \n            [bLine rangeOfString:@\"Binary Images\" options:NSCaseInsensitiveSearch].location==0\n            )\n        {\n            NSUInteger tFirstLine=inIndexes.firstIndex;\n            NSUInteger tLastLine=bLineNumber-1;\n            \n            tRange=NSMakeRange(tFirstLine, tLastLine-tFirstLine+1);\n            \n            *bOutStop=YES;\n            \n            return;\n        }\n    }];\n    \n    return tRange;\n}\n\n+ (NSRange)detectBacktracesSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes\n{\n    __block NSRange tRange={.location=NSNotFound,.length=0};\n    \n    // Find the \"Thread State\" or \"Binary Images\" section start\n    \n    [inLines enumerateObjectsAtIndexes:inIndexes options:0 usingBlock:^(NSString * bLine , NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ((([bLine hasPrefix:@\"Thread\"]==YES || [bLine hasPrefix:@\"Unknown\"]==YES) && [bLine rangeOfString:@\"crashed with\"].location!=NSNotFound) ||\n            [bLine rangeOfString:@\"Thread State\" options:NSCaseInsensitiveSearch].location==0 ||\n            [bLine rangeOfString:@\"Binary Images\" options:NSCaseInsensitiveSearch].location==0\n            )\n        {\n            NSUInteger tFirstLine=inIndexes.firstIndex;\n            NSUInteger tLastLine=bLineNumber-1;\n            \n            tRange=NSMakeRange(tFirstLine, tLastLine-tFirstLine+1);\n            \n            *bOutStop=YES;\n            \n            return;\n        }\n    }];\n    \n    return tRange;\n}\n\n+ (NSRange)detectThreadStateSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes\n{\n    __block NSRange tRange={.location=NSNotFound,.length=0};\n    \n    // Find the \"Thread State\" or \"Binary Images\" section start\n    \n    [inLines enumerateObjectsAtIndexes:inIndexes options:0 usingBlock:^(NSString * bLine , NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ([bLine rangeOfString:@\"Binary Images\" options:NSCaseInsensitiveSearch].location==0)\n        {\n            NSUInteger tFirstLine=inIndexes.firstIndex;\n            NSUInteger tLastLine=bLineNumber-1;\n            \n            tRange=NSMakeRange(tFirstLine, tLastLine-tFirstLine+1);\n            \n            *bOutStop=YES;\n            \n            return;\n        }\n    }];\n    \n    return tRange;\n}\n\n+ (NSRange)detectBinaryImagesSectionRangeInTextualRepresentation:(NSArray *)inLines atIndexes:(NSIndexSet *)inIndexes\n{\n    NSUInteger tFirstLine=inIndexes.firstIndex;\n    NSUInteger tLastLine=inIndexes.lastIndex;\n    \n    NSRange tRange=NSMakeRange(tFirstLine, tLastLine-tFirstLine+1);\n    \n    return tRange;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogTableCellView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogTableCellView : NSTableCellView\n\n    @property (assign) IBOutlet NSTextField * dateLabel;\n\n    @property (assign) IBOutlet NSTextField * exceptionTypeLabel;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogTableCellView.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogTableCellView.h\"\n\n#define RESIZING_BORDER\t\t400\n\n#define INTERSPACE_H\t\t8\n\n#define SMALL_WIDTH\t\t\t71\n#define LARGE_WIDTH\t\t\t100\n\n@implementation CUICrashLogTableCellView\n\n- (void)layout\n{\n\tNSRect tBounds=self.bounds;\n\tNSRect tFrame=self.exceptionTypeLabel.frame;\n\n\tif (self.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft)\n\t{\n\t\tif (tBounds.size.width>RESIZING_BORDER)\n\t\t{\n\t\t\tif (tFrame.size.width<(LARGE_WIDTH+1))\n\t\t\t{\n\t\t\t\ttFrame.size.width=LARGE_WIDTH;\n\t\t\t\t\n\t\t\t\tself.exceptionTypeLabel.frame=tFrame;\n\t\t\t\t\n\t\t\t\tNSRect tOtherFrame=self.dateLabel.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMaxX(tOtherFrame)-(NSMaxX(tFrame)+INTERSPACE_H);\n\t\t\t\ttOtherFrame.origin.x=NSMaxX(tFrame)+INTERSPACE_H;\n\t\t\t\t\n\t\t\t\tself.dateLabel.frame=tOtherFrame;\n\t\t\t\t\n\t\t\t\ttOtherFrame=self.textField.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMaxX(tOtherFrame)-(NSMaxX(tFrame)+INTERSPACE_H);\n\t\t\t\ttOtherFrame.origin.x=NSMaxX(tFrame)+INTERSPACE_H;\n\t\t\t\t\n\t\t\t\tself.textField.frame=tOtherFrame;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (tFrame.size.width>(SMALL_WIDTH+1))\n\t\t\t{\n\t\t\t\ttFrame.size.width=SMALL_WIDTH;\n\t\t\t\t\n\t\t\t\tself.exceptionTypeLabel.frame=tFrame;\n\t\t\t\t\n\t\t\t\tNSRect tOtherFrame=self.dateLabel.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMaxX(tOtherFrame)-(NSMaxX(tFrame)+INTERSPACE_H);\n\t\t\t\ttOtherFrame.origin.x=NSMaxX(tFrame)+INTERSPACE_H;\n\t\t\t\t\n\t\t\t\tself.dateLabel.frame=tOtherFrame;\n\t\t\t\t\n\t\t\t\ttOtherFrame=self.textField.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMaxX(tOtherFrame)-(NSMaxX(tFrame)+INTERSPACE_H);\n\t\t\t\ttOtherFrame.origin.x=NSMaxX(tFrame)+INTERSPACE_H;\n\t\t\t\t\n\t\t\t\tself.textField.frame=tOtherFrame;\n\t\t\t}\n\t\t}\n\t}\n\telse\n\t{\n\t\tif (tBounds.size.width>RESIZING_BORDER)\n\t\t{\n\t\t\tif (tFrame.size.width<(LARGE_WIDTH+1))\n\t\t\t{\n\t\t\t\ttFrame.origin.x=NSMaxX(tFrame)-LARGE_WIDTH;\n\t\t\t\ttFrame.size.width=LARGE_WIDTH;\n\t\t\t\t\n\t\t\t\tself.exceptionTypeLabel.frame=tFrame;\n\t\t\t\t\n\t\t\t\tNSRect tOtherFrame=self.dateLabel.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMinX(tFrame)-INTERSPACE_H-NSMinX(tOtherFrame);\n\t\t\t\t\n\t\t\t\tself.dateLabel.frame=tOtherFrame;\n\t\t\t\t\n\t\t\t\ttOtherFrame=self.textField.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMinX(tFrame)-INTERSPACE_H-NSMinX(tOtherFrame);\n\t\t\t\t\n\t\t\t\tself.textField.frame=tOtherFrame;\n\t\t\t}\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (tFrame.size.width>(SMALL_WIDTH+1))\n\t\t\t{\n\t\t\t\ttFrame.origin.x=NSMaxX(tFrame)-SMALL_WIDTH;\n\t\t\t\ttFrame.size.width=SMALL_WIDTH;\n\t\t\t\t\n\t\t\t\tself.exceptionTypeLabel.frame=tFrame;\n\t\t\t\t\n\t\t\t\tNSRect tOtherFrame=self.dateLabel.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMinX(tFrame)-INTERSPACE_H-NSMinX(tOtherFrame);\n\t\t\t\t\n\t\t\t\tself.dateLabel.frame=tOtherFrame;\n\t\t\t\t\n\t\t\t\ttOtherFrame=self.textField.frame;\n\t\t\t\t\n\t\t\t\ttOtherFrame.size.width=NSMinX(tFrame)-INTERSPACE_H-NSMinX(tOtherFrame);\n\t\t\t\t\n\t\t\t\tself.textField.frame=tOtherFrame;\n\t\t\t}\n\t\t}\n\t}\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogTextView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogTextView : NSTextView\n\n@property BOOL wrapLines;\n\n- (void) CUI_scrollPoint:(NSPoint)inPoint;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogTextView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogTextView.h\"\n\n@interface NSView (Private)\n\n- (void)_scrollPoint:(NSPoint *)point fromView:(NSView *)inView;\n- (void)_scrollDown:(CGFloat)inOffset;\n- (void)_scrollUp:(CGFloat)inOffset;\n\n@end\n\n@implementation CUICrashLogTextView\n\n- (void)_scrollUp:(CGFloat)inOffset\n{\n    if (self.wrapLines==YES)\n    {\n        [super _scrollUp:inOffset];\n        return;\n    }\n    \n    NSScrollView * tScrollView=self.enclosingScrollView;\n    \n    NSView * tDocumentView=tScrollView.documentView;\n    NSRulerView * tVerticalRulerView=tScrollView.verticalRulerView;\n    \n    if (self!=tDocumentView ||\n        tVerticalRulerView==nil ||\n        tScrollView.horizontalScroller.isHidden==YES)\n    {\n        [super _scrollUp:inOffset];\n        \n        return;\n    }\n    \n    NSRect tOldFrame=tDocumentView.frame;\n    \n    // Offset the text view frame to take into account the vertical ruler width\n    \n    NSRect tNewFrame=tOldFrame;\n    \n    tNewFrame.origin.x-=NSWidth(tVerticalRulerView.frame);\n    self.frame=tNewFrame;\n    \n    [super _scrollUp:inOffset];\n    \n    // Restore the text view frame\n    \n    self.frame=tOldFrame;\n}\n\n- (void)_scrollDown:(CGFloat)inOffset\n{\n    if (self.wrapLines==YES)\n    {\n        [super _scrollDown:inOffset];\n        return;\n    }\n    \n    NSScrollView * tScrollView=self.enclosingScrollView;\n    \n    NSView * tDocumentView=tScrollView.documentView;\n    NSRulerView * tVerticalRulerView=tScrollView.verticalRulerView;\n    \n    if (self!=tDocumentView ||\n        tVerticalRulerView==nil ||\n        tScrollView.horizontalScroller.isHidden==YES)\n    {\n        [super _scrollDown:inOffset];\n        \n        return;\n    }\n    \n    NSRect tOldFrame=tDocumentView.frame;\n    \n    NSRect tNewFrame=tOldFrame;\n    \n    tNewFrame.origin.x-=NSWidth(tVerticalRulerView.frame);\n    self.frame=tNewFrame;\n    \n    [super _scrollDown:inOffset];\n    \n    // Restore the text view frame\n    \n    self.frame=tOldFrame;\n}\n\n- (void)CUI_scrollPoint:(NSPoint)inPoint\n{\n    if (self.wrapLines==YES)\n    {\n        [super scrollPoint:inPoint];\n        return;\n    }\n    \n    NSScrollView * tScrollView=self.enclosingScrollView;\n    \n    NSView * tDocumentView=tScrollView.documentView;\n    NSRulerView * tVerticalRulerView=tScrollView.verticalRulerView;\n    \n    if (self!=tDocumentView ||\n        tVerticalRulerView==nil ||\n        tScrollView.horizontalScroller.isHidden==YES)\n    {\n        [self scrollPoint:inPoint];\n        \n        return;\n    }\n\n    // Offset the text view frame to take into account the vertical ruler width\n    \n    inPoint.x-=NSWidth(tVerticalRulerView.frame);\n    \n    [self scrollPoint:inPoint];\n}\n\n- (NSPoint)textContainerOrigin\n{\n    return NSMakePoint(8,8);\n}\n\n#pragma mark -\n\n- (void)keyDown:(NSEvent *)inEvent\n{\n    NSString * tTypedText=inEvent.characters;\n    \n    NSUInteger tLength=tTypedText.length;\n    \n    for(NSUInteger tIndex=0;tIndex<tLength;tIndex++)\n    {\n        unichar tChar=[tTypedText characterAtIndex:tIndex];\n        \n        switch(tChar)\n        {\n            case ' ':\n                \n                [self scrollPageDown:self];\n                return;\n                \n            case 'b':\n                \n                [self scrollPageUp:self];\n                return;\n                \n            /*case NSDeleteCharacter:   // Jump Back ?\n                \n                NSBeep();\n                return;*/\n        }\n    }\n    \n    [super keyDown:inEvent];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogThreadState+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogThreadState.h\"\n\n@interface CUICrashLogThreadState (UI)\n\n@property (nonatomic,readonly) NSString * displayedCPUType;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogThreadState+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogThreadState+UI.h\"\n\n@implementation CUICrashLogThreadState (UI)\n\n- (NSString *)displayedCPUType\n{\n    switch(self.CPUType)\n    {\n        case CPU_TYPE_X86:\n            \n            return @\"i386\";\n            \n        case CPU_TYPE_X86_64:\n            \n            return @\"x86_64\";\n            \n        case CPU_TYPE_ARM:\n            \n            return @\"ARM\";\n            \n        case CPU_TYPE_ARM64:\n            \n            return @\"ARM-64\";\n            \n        case CPU_TYPE_POWERPC:\n            \n            return @\"PPC\";\n        \n        case CPU_TYPE_POWERPC64:\n            \n            return @\"PPC64\";\n            \n        default:\n            \n            break;\n    }\n    \n    return nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogThreadState.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIRegister.h\"\n\n#import \"IPSIncident.h\"\n\n@interface CUICrashLogThreadState : NSObject\n\n    @property (readonly) NSUInteger threadIndex;\n\n    @property (readonly) cpu_type_t CPUType;\n\n    @property (readonly) NSArray<CUIRegister *> * registers;\n\n\n    @property (readonly) NSUInteger logicalCPU;\n\n    @property (readonly) NSUInteger errorCode;\n\n    @property (readonly) NSUInteger trapNumber;\n\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError;\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogThreadState.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogThreadState.h\"\n\n#import \"CUIParsingErrors.h\"\n\n#import \"IPSThreadState+RegisterDisplayName.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n#import \"NSString+CPU.h\"\n\n@interface CUICrashLogThreadState ()\n\n    @property NSUInteger threadIndex;\n\n    @property cpu_type_t CPUType;\n\n    @property NSArray * registers;\n\n    @property NSUInteger logicalCPU;\n\n    @property NSUInteger errorCode;\n\n    @property NSUInteger trapNumber;\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError;\n\n@end\n\n@implementation CUICrashLogThreadState\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines reportVersion:(NSUInteger)inReportVersion error:(NSError **)outError\n{\n    if ([inLines isKindOfClass:NSArray.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _registers=@[];\n        \n        if ([self parseTextualRepresentation:inLines outError:outError]==NO)\n        {\n            return nil;\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithIPSIncident:(IPSIncident *)inIncident error:(NSError **)outError\n{\n    if ([inIncident isKindOfClass:IPSIncident.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        IPSThreadState * tThreadState=inIncident.threadState;\n        \n        if (tThreadState==nil)\n        {\n            if (outError!=NULL)\n                *outError=nil;\n            \n            return nil;\n        }\n        \n        _threadIndex=inIncident.exceptionInformation.faultingThread;\n        \n        IPSIncidentHeader * tHeader=inIncident.header;\n        \n        _CPUType=[tHeader.cpuType CUI_CPUType];\n        \n        NSArray * tRegistersOrder;\n        \n        if ([tThreadState.flavor isEqualToString:@\"x86_THREAD_STATE\"]==YES)\n        {\n            tRegistersOrder=@[@\"rax\",@\"rbx\",@\"rcx\",@\"rdx\",\n                              @\"rdi\",@\"rsi\",@\"rbp\",@\"rsp\",\n                              @\"r8\",@\"r9\",@\"r10\",@\"r11\",\n                              @\"r12\",@\"r13\",@\"r14\",@\"r15\",\n                              @\"rip\",@\"rflags\",@\"cr2\"\n                              ];\n        }\n        else\n        {\n            tRegistersOrder=@[@\"x0\",@\"x1\",@\"x2\",@\"x3\",\n                              @\"x4\",@\"x5\",@\"x6\",@\"x7\",\n                              @\"x8\",@\"x9\",@\"x10\",@\"x11\",\n                              @\"x12\",@\"x13\",@\"x14\",@\"x15\",\n                              @\"x16\",@\"x17\",@\"x18\",@\"x19\",\n                              @\"x20\",@\"x21\",@\"x22\",@\"x23\",\n                              @\"x24\",@\"x25\",@\"x26\",@\"x27\",\n                              @\"x28\",@\"fp\",@\"lr\",\n                              @\"sp\",@\"pc\",@\"cpsr\",\n                              @\"far\",@\"esr\"\n                              ];\n        }\n        \n        _registers=[tRegistersOrder WB_arrayByMappingObjectsUsingBlock:^id(NSString * bRegisterName, NSUInteger bIndex) {\n            \n            IPSRegisterState * tRegisterState=tThreadState.registersStates[bRegisterName];\n            \n            if (tRegisterState!=nil)\n            {\n                CUIRegister * tRegister=[CUIRegister new];\n                tRegister.name=[IPSThreadState displayNameForRegisterName:bRegisterName];\n                tRegister.value=tRegisterState.value;\n                \n                return tRegister;\n            }\n            \n            return nil;\n            \n        }];\n        \n        // A COMPLETER\n        \n        /*_logicalCPU=;\n        \n        _errorCode=;\n        \n        _trapNumber=;*/\n    }\n    \n    return self;\n}\n\n- (BOOL)parseTextualRepresentation:(NSArray *)inLines outError:(NSError **)outError\n{\n    __block NSError * tError=nil;\n    \n    // Scan the first line\n    \n    NSCharacterSet * tWhitespaceCharacterSet=[NSCharacterSet whitespaceCharacterSet];\n    \n    NSScanner * tScanner=[NSScanner scannerWithString:inLines.firstObject];\n\n    tScanner.charactersToBeSkipped=tWhitespaceCharacterSet;\n\n    if ([tScanner scanString:@\"Thread \" intoString:NULL]==NO)\n        return NO;\n\n    // Thread Index\n\n    NSInteger tInteger=-1;\n\n    if ([tScanner scanInteger:&tInteger]==YES)\n    {\n        self.threadIndex=tInteger;\n    \n        if ([tScanner scanString:@\"crashed with \" intoString:NULL]==NO)\n            return NO;\n\n        // Architecture\n\n        NSString * tString;\n\n        if ([tScanner scanUpToString:@\"Thread State\" intoString:&tString]==NO)\n            return NO;\n        \n        tString=[tString stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n        \n        if ([tString isEqualToString:@\"ARM\"]==YES)\n        {\n            self.CPUType=CPU_TYPE_ARM;\n        }\n        else if ([tString isEqualToString:@\"X86\"]==YES)\n        {\n            self.CPUType=CPU_TYPE_X86;\n        }\n        \n        tScanner.scanLocation+=[@\"Thread State\" length];\n        \n        if ([tScanner scanUpToString:@\":\" intoString:&tString]==NO)\n            return NO;\n        \n        tString=[tString stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@\"()\"]];\n        \n        if ([tString isEqualToString:@\"64-bit\"]==YES)\n            self.CPUType|=CPU_ARCH_ABI64;\n    }\n    else\n    {\n        if ([inLines.firstObject hasPrefix:@\"Thread State\"]==NO)\n            return NO;\n        \n        self.threadIndex=NSNotFound;\n        \n        self.CPUType=CPU_TYPE_ANY;\n    }\n    \n    // Registers values\n\n    NSMutableArray * tMutableArray=[NSMutableArray array];\n\n    __block NSUInteger tEndOfRegisterValues=NSNotFound;\n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(1,inLines.count-1)]\n                               options:0\n                            usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                                \n                                if (bLine.length<4)\n                                {\n                                    tEndOfRegisterValues=bLineNumber+1;\n                                    \n                                    *bOutStop=YES;\n                                    return;\n                                }\n                                \n                                NSScanner * tRegistersScanner=[NSScanner scannerWithString:bLine];\n                                \n                                tRegistersScanner.charactersToBeSkipped=tWhitespaceCharacterSet;\n                                \n                                while (tRegistersScanner.isAtEnd==NO)\n                                {\n                                    NSString * tRegisterName;\n                                    \n                                    if ([tRegistersScanner scanUpToString:@\":\" intoString:&tRegisterName]==NO)\n                                        return;\n                                    \n                                    if ([tRegistersScanner scanString:@\": \" intoString:NULL]==NO)\n                                        return;\n                                    \n                                    unsigned long long tRegisterValue;\n                                    \n                                    if ([tRegistersScanner scanHexLongLong:&tRegisterValue]==NO)\n                                        return;\n                                    \n                                    \n                                    CUIRegister * tRegister=[CUIRegister new];\n                                    \n                                    tRegister.name=tRegisterName;\n                                    tRegister.value=tRegisterValue;\n                                    \n                                    [tMutableArray addObject:tRegister];\n                                }\n                            }];\n\n    self.registers=[tMutableArray copy];\n\n    if (tEndOfRegisterValues==NSNotFound || (tEndOfRegisterValues==(inLines.count-1)))\n        return YES;\n    \n    // Other keys-values\n    \n    [inLines enumerateObjectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tEndOfRegisterValues+1,inLines.count-1-(tEndOfRegisterValues+1)+1)]\n                               options:0\n                            usingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                                \n                                NSUInteger tLineLength=bLine.length;\n        \n                                // Skip Blank lines\n                                \n                                if (tLineLength==0)\n                                    return;\n                                \n                                // Find Key and Value\n                                \n                                NSScanner * tScanner=[NSScanner scannerWithString:bLine];\n                                \n                                NSString * tKey;\n                                \n                                if ([tScanner scanUpToString:@\":\" intoString:&tKey]==NO)\n                                {\n                                    tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                                    \n                                    *bOutStop=YES;\n                                    return;\n                                }\n                                \n                                NSUInteger tIndex=tScanner.scanLocation+1;\n                                \n                                if (tIndex>=(tLineLength-1))\n                                {\n                                    tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                                    \n                                    *bOutStop=YES;\n                                    return;\n                                }\n                                \n                                NSString * tValue=[[bLine substringFromIndex:tIndex] stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n                                \n                                if (tValue.length==0)\n                                {\n                                    tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                                    \n                                    *bOutStop=YES;\n                                    return;\n                                }\n                                \n                                if ([tKey isEqualToString:@\"Logical CPU\"]==YES)\n                                {\n                                    NSScanner * tScanner=[NSScanner scannerWithString:tValue];\n                                    \n                                    unsigned long long tValue;\n                                    \n                                    if ([tScanner scanUnsignedLongLong:&tValue]==NO)\n                                    {\n                                        tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                                        \n                                        *bOutStop=YES;\n                                        \n                                        return;\n                                    }\n                                    \n                                    self.logicalCPU=tValue;\n                                    \n                                    return;\n                                }\n                                else if ([tKey isEqualToString:@\"Error Code\"]==YES)\n                                {\n                                    NSScanner * tScanner=[NSScanner scannerWithString:tValue];\n                                    \n                                    unsigned long long tHexaValue;\n                                    \n                                    if ([tScanner scanHexLongLong:&tHexaValue]==NO)\n                                    {\n                                        tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                                        \n                                        *bOutStop=YES;\n                                        \n                                        return;\n                                    }\n                                    \n                                    self.errorCode=tHexaValue;\n                                    \n                                    return;\n                                }\n                                else if ([tKey isEqualToString:@\"Trap Number\"]==YES)\n                                {\n                                    NSScanner * tScanner=[NSScanner scannerWithString:tValue];\n                                    \n                                    unsigned long long tValue;\n                                    \n                                    if ([tScanner scanUnsignedLongLong:&tValue]==NO)\n                                    {\n                                        tError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingUnknownError userInfo:@{CUIParsingErrorLineKey:@(bLineNumber)}];\n                                        \n                                        *bOutStop=YES;\n                                        \n                                        return;\n                                    }\n                                    \n                                    self.trapNumber=tValue;\n                                    \n                                    return;\n                                }\n                            }];\n    \n    if (outError!=NULL && tError!=nil)\n        *outError=tError;\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsListViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUIKeyViews.h\"\n\n@interface CUICrashLogsListViewController : NSViewController <CUIKeyViews>\n\n    @property (readonly) NSTableView * tableView;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsListViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsListViewController.h\"\n\n#import \"CUICrashLogsSourcesSelection.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n#import \"CUICrashLogTableCellView.h\"\n\n#import \"CUICrashLog+UI.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n#import \"NSTableView+Selection.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUICrashLogsSourcesManager.h\"\n\n#import \"CUICrashLogExceptionInformation+UI.h\"\n\n@interface CUICrashLogsListViewController () <NSMenuItemValidation,NSSharingServiceDelegate,NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTableView * _tableView;\n    \n    IBOutlet NSMenu * _shareMenu;\n    \n    IBOutlet NSSearchField * _filterField;\n    \n    IBOutlet NSPopUpButton * _sortPopUpButton;\n    \n    \n    CUICrashLogsSource * _source;\n    \n    NSMutableArray * _filteredAndSortedCrashLogsArray;\n    \n    NSString * _filterPattern;\n    \n    CUICrashLogsSortType _sortType;\n    \n    NSDateFormatter * _crashLogDateFormatter;\n    \n    BOOL _showsFileNames;\n}\n\n- (IBAction)share:(id)sender;\n\n- (IBAction)showInFinder:(id)sender;\n\n- (IBAction)CUI_MENUACTION_moveToTrash:(id)sender;\n\n- (IBAction)CUI_MENUACTION_moveAllToTrash:(id)sender;\n\n- (IBAction)takeFilterPatternFrom:(id)sender;\n\n- (IBAction)switchDisplayedName:(id)sender;\n\n- (IBAction)switchSortType:(id)sender;\n\n// Notification\n\n- (void)crashLogsSourcesSelectionDidChange:(NSNotification *)inNotification;\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification;\n\n- (void)crashLogsSortTypeDidChange:(NSNotification *)inNotification;\n\n- (void)showFileNamesDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashLogsListViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _filterPattern=@\"\";\n        \n        _crashLogDateFormatter=[NSDateFormatter new];\n        _crashLogDateFormatter.formatterBehavior=NSDateFormatterBehavior10_4;\n        _crashLogDateFormatter.dateStyle=NSDateFormatterMediumStyle;\n        _crashLogDateFormatter.timeStyle=NSDateFormatterShortStyle;\n        \n        CUIApplicationPreferences * tApplicationPreferences=[CUIApplicationPreferences sharedPreferences];\n        \n        _sortType=tApplicationPreferences.crashLogsSortType;\n        \n        _showsFileNames=(tApplicationPreferences.crashLogsShowFileNames==YES);\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUICrashLogsListViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n\n    [_shareMenu removeAllItems];\n    \n    [[NSSharingService sharingServicesForItems:@[[[NSBundle mainBundle] URLForResource:@\"Localizable\" withExtension:@\"strings\"]]] enumerateObjectsUsingBlock:^(NSSharingService * bSharingService, NSUInteger bIndex, BOOL * bOutStop) {\n        \n    \n        NSMenuItem * tMenuItem=[[NSMenuItem alloc] initWithTitle:bSharingService.menuItemTitle\n                                                          action:@selector(share:)\n                                                   keyEquivalent:@\"\"];\n        tMenuItem.target=self;\n        tMenuItem.image=bSharingService.image;\n        tMenuItem.representedObject=bSharingService;\n        \n        \n        [self->_shareMenu addItem:tMenuItem];\n    }];\n    \n    _filterField.centersPlaceholder=NO;\n    \n    NSSearchFieldCell * tSearchFieldCell=_filterField.cell;\n    NSButtonCell * tButtonCell=tSearchFieldCell.searchButtonCell;\n    \n    tButtonCell.image=[NSImage imageNamed:@\"filter_Template\"];\n    tButtonCell.alternateImage=tButtonCell.image;\n    \n    \n    \n    // Register for notifications\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSourcesSelectionDidChange:) name:CUICrashLogsSourcesSelectionDidChangeNotification object:[CUICrashLogsSourcesSelection sharedSourcesSelection]];\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:[CUICrashLogsSelection sharedSelection]];\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSortTypeDidChange:) name:CUIPreferencesCrashLogsSortTypeDidChangeNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(showFileNamesDidChange:) name:CUIPreferencesCrashLogsShowFileNamesDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)refreshList\n{\n    NSIndexSet * tIndexSet=_tableView.selectedRowIndexes;\n    \n    NSArray * tSelectedItems=[_filteredAndSortedCrashLogsArray objectsAtIndexes:tIndexSet];\n    \n    NSArray * tSelectedResourceIdentifiers=[tSelectedItems WB_arrayByMappingObjectsUsingBlock:^id(CUIRawCrashLog * bCrashLog, NSUInteger bIndex) {\n       \n        return bCrashLog.resourceIdentifier;\n        \n    }];\n    \n    NSArray * tArray=_source.crashLogs;\n    \n    if (_filterPattern.length>0)\n    {\n        _filteredAndSortedCrashLogsArray=[NSMutableArray array];\n        \n        [tArray enumerateObjectsUsingBlock:^(CUICrashLog * bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([bCrashLog isKindOfClass:CUICrashLog.class]==NO)\n                return;\n            \n            if (self->_showsFileNames==NO)\n            {\n                NSString * tProcessName=bCrashLog.header.processName;\n                \n                if (tProcessName!=nil && [tProcessName rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n                {\n                    [self->_filteredAndSortedCrashLogsArray addObject:bCrashLog];\n                    \n                    return;\n                }\n                \n                NSString * tResponsibleProcessName=bCrashLog.header.responsibleProcessName;\n                \n                if (tResponsibleProcessName!=nil && [tResponsibleProcessName rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n                {\n                    [self->_filteredAndSortedCrashLogsArray addObject:bCrashLog];\n                \n                    return;\n                }\n            }\n            else\n            {\n                NSString * tCrashLogFileName=bCrashLog.crashLogFilePath.lastPathComponent.stringByDeletingPathExtension;\n                \n                if (tCrashLogFileName!=nil && [tCrashLogFileName rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n                {\n                    [self->_filteredAndSortedCrashLogsArray addObject:bCrashLog];\n                    \n                    return;\n                }\n            }\n            \n            if ([bCrashLog.exceptionInformation.exceptionType rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound ||\n                [bCrashLog.exceptionInformation.exceptionSignal rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n            {\n                [self->_filteredAndSortedCrashLogsArray addObject:bCrashLog];\n                \n                return;\n            }\n        }];\n    }\n    else\n    {\n        _filteredAndSortedCrashLogsArray=[tArray mutableCopy];\n    }\n    \n    switch(_sortType)\n    {\n        case CUICrashLogsSortDateDescending:\n            \n            [_filteredAndSortedCrashLogsArray sortUsingSelector:@selector(compareDateReverse:)];\n            \n            break;\n            \n        case CUICrashLogsSortProcessNameAscending:\n            \n            if (_showsFileNames==NO)\n                [_filteredAndSortedCrashLogsArray sortUsingSelector:@selector(compareProcessName:)];\n            else\n                [_filteredAndSortedCrashLogsArray sortUsingSelector:@selector(compareCrashLogFileName:)];\n            break;\n    }\n    \n    NSArray * tSaveSelectionCrashLogs=nil;\n    \n    CUICrashLogsSelection * tSelection=[CUICrashLogsSelection sharedSelection];\n    \n    if (tSelection.source==_source)\n    {\n        tSaveSelectionCrashLogs=[tSelection.crashLogs copy];\n    }\n    \n    [_tableView reloadData];\n    \n    NSMutableIndexSet * tNewSelectionIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_filteredAndSortedCrashLogsArray enumerateObjectsUsingBlock:^(CUIRawCrashLog * bCrashLog, NSUInteger bIndex,BOOL * bOutStop) {\n       \n        if ([tSelectedResourceIdentifiers containsObject:bCrashLog.resourceIdentifier]==YES)\n            [tNewSelectionIndexSet addIndex:bIndex];\n        \n    }];\n    \n    if (tNewSelectionIndexSet.count>0)\n    {\n        [_tableView selectRowIndexes:tNewSelectionIndexSet byExtendingSelection:NO];\n    }\n    else\n    {\n        if (tSaveSelectionCrashLogs!=nil)\n        {\n            [_filteredAndSortedCrashLogsArray enumerateObjectsUsingBlock:^(id bCrashLog, NSUInteger bIndex,BOOL * bOutStop) {\n                \n                if ([tSaveSelectionCrashLogs containsObject:bCrashLog]==YES)\n                    [tNewSelectionIndexSet addIndex:bIndex];\n                \n            }];\n        }\n        \n        if (tNewSelectionIndexSet.count>0)\n        {\n            [_tableView selectRowIndexes:tNewSelectionIndexSet byExtendingSelection:NO];\n        }\n        else\n        {\n            [self tableViewSelectionDidChange:[NSNotification notificationWithName:NSTableViewSelectionDidChangeNotification object:_tableView]];\n        }\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    if (inMenuItem.tag==-1)\n        return NO;\n    \n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(showInFinder:) ||\n        tAction==@selector(CUI_MENUACTION_moveToTrash:))\n    {\n        NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n        \n        if (tSelectionIndexSet.count==0)\n            return NO;\n        \n        NSArray * tCrashLogs=_filteredAndSortedCrashLogsArray;\n        \n        __block BOOL tResult=YES;\n        \n        [tSelectionIndexSet enumerateIndexesUsingBlock:^(NSUInteger bIndex,BOOL * bOutStop){\n            \n            CUIRawCrashLog * tCrashLog=tCrashLogs[bIndex];\n            \n            NSString * tPath=tCrashLog.crashLogFilePath;\n            \n            if (tPath.length==0 ||\n                [[NSFileManager defaultManager] fileExistsAtPath:tPath]==NO)\n            {\n                tResult=NO;\n                \n                *bOutStop=NO;\n                return;\n            }\n        }];\n        \n        return tResult;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_moveAllToTrash:))\n    {\n        NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n        \n        if (tSelectionIndexSet.count!=1)\n            return NO;\n        \n        NSArray * tCrashLogs=_filteredAndSortedCrashLogsArray;\n        CUIRawCrashLog * tCrashLog=tCrashLogs[tSelectionIndexSet.firstIndex];\n        \n        if (tCrashLog==nil)\n            return NO;\n        \n        NSString * tPath=tCrashLog.crashLogFilePath;\n        \n        if (tPath.length==0 || [[NSFileManager defaultManager] fileExistsAtPath:tPath]==NO)\n            return NO;\n        \n        inMenuItem.title=[NSString stringWithFormat:NSLocalizedString(@\"Move All \\\"%@\\\" Reports to Trash\",@\"\"),tCrashLog.processName];\n        \n        return YES;\n    }\n    \n    if (tAction==@selector(switchDisplayedName:))\n    {\n        inMenuItem.state=(inMenuItem.tag==_showsFileNames) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        return YES;\n    }\n    \n    if (tAction==@selector(switchSortType:))\n    {\n        inMenuItem.state=(inMenuItem.tag==_sortType) ? NSControlStateValueOn : NSControlStateValueOff;\n        \n        return YES;\n    }\n    \n    \n    \n    return YES;\n}\n\n- (IBAction)share:(NSMenuItem *)sender\n{\n    NSSharingService * tSharingService=sender.representedObject;\n    \n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    NSArray * tArray=[_filteredAndSortedCrashLogsArray objectsAtIndexes:tSelectionIndexSet];\n    \n    NSArray * tURLs=[tArray WB_arrayByMappingObjectsUsingBlock:^id(CUIRawCrashLog * bCrashLog, NSUInteger bIndex) {\n        \n        return [NSURL fileURLWithPath:bCrashLog.crashLogFilePath];\n        \n    }];\n    \n    tSharingService.delegate = self;\n    \n    [tSharingService performWithItems:tURLs];\n}\n\n- (void)_shareSelectionWithService:(NSString *)inServiceID\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    NSArray * tArray=[_filteredAndSortedCrashLogsArray objectsAtIndexes:tSelectionIndexSet];\n    \n    NSArray * tURLs=[tArray WB_arrayByMappingObjectsUsingBlock:^id(CUIRawCrashLog * bCrashLog, NSUInteger bIndex) {\n        \n        return [NSURL fileURLWithPath:bCrashLog.crashLogFilePath];\n        \n    }];\n    \n    NSSharingService * tService = [NSSharingService sharingServiceNamed:inServiceID];\n    tService.delegate = self;\n    \n    [tService performWithItems:tURLs];\n}\n\n- (IBAction)showInFinder:(id)sender\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    NSWorkspace * tSharedWorkspace=[NSWorkspace sharedWorkspace];\n    \n    [_filteredAndSortedCrashLogsArray enumerateObjectsAtIndexes:tSelectionIndexSet options:0 usingBlock:^(CUIRawCrashLog * bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        NSString * tPath=bCrashLog.crashLogFilePath;\n        \n        if (tPath.length>0)\n            [tSharedWorkspace selectFile:tPath inFileViewerRootedAtPath:@\"\"];\n        \n    }];\n}\n\n- (IBAction)CUI_MENUACTION_moveToTrash:(id)sender\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    if (tSelectionIndexSet.count==0)\n        return;\n    \n\n    NSFileManager * tFileManager=[NSFileManager defaultManager];\n    \n    NSMutableIndexSet * tMutableIndexSet=[tSelectionIndexSet mutableCopy];\n    \n    [_filteredAndSortedCrashLogsArray enumerateObjectsAtIndexes:tSelectionIndexSet options:0 usingBlock:^(CUIRawCrashLog * bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n    \n        NSError * tError=nil;\n        \n        if ([tFileManager trashItemAtURL:[NSURL fileURLWithPath:bCrashLog.crashLogFilePath] resultingItemURL:NULL error:&tError]==NO)\n        {\n            [tMutableIndexSet removeIndex:bIndex];\n            \n            NSLog(@\"%@\",tError);\n        }\n    }];\n    \n    if (tMutableIndexSet.count<tSelectionIndexSet.count)\n    {\n        // A COMPLETER\n    }\n    \n    if (_source.type==CUICrashLogsSourceTypeFile)\n    {\n        [_filteredAndSortedCrashLogsArray removeObjectsAtIndexes:tMutableIndexSet];\n        \n        [_tableView reloadData];\n        \n        // We actually need to remove the source directly\n        \n        [[CUICrashLogsSourcesManager sharedManager] removeSources:@[_source]];\n    }\n}\n\n- (IBAction)CUI_MENUACTION_moveAllToTrash:(id)sender\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    NSUInteger tIndex=tSelectionIndexSet.firstIndex;\n    \n    CUIRawCrashLog * tReferenceCrashLog=_filteredAndSortedCrashLogsArray[tIndex];\n    NSString * tReferenceProcessName=tReferenceCrashLog.processName;\n    \n    NSArray * tFilteredArray=[_source.crashLogs WB_filteredArrayUsingBlock:^BOOL(CUIRawCrashLog * bCrashLog, NSUInteger bIndex) {\n        \n        return ([bCrashLog.processName isEqualToString:tReferenceProcessName]==YES);\n    }];\n    \n    NSFileManager * tFileManager=[NSFileManager defaultManager];\n    \n    [tFilteredArray enumerateObjectsUsingBlock:^(CUIRawCrashLog * bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        [tFileManager trashItemAtURL:[NSURL fileURLWithPath:bCrashLog.crashLogFilePath] resultingItemURL:NULL error:NULL];\n    }];\n}\n\n- (IBAction)takeFilterPatternFrom:(NSSearchField *)sender\n{\n    _filterPattern=sender.stringValue;\n    \n    [self refreshList];\n}\n\n- (IBAction)switchDisplayedName:(NSMenuItem *)sender\n{\n    NSInteger tTag=sender.tag;\n    \n    if (tTag!=_showsFileNames)\n    {\n        [CUIApplicationPreferences sharedPreferences].crashLogsShowFileNames=tTag;\n    }\n}\n\n- (IBAction)switchSortType:(NSMenuItem *)sender\n{\n    NSInteger tTag=sender.tag;\n    \n    if (tTag!=_sortType)\n    {\n        [CUIApplicationPreferences sharedPreferences].crashLogsSortType=tTag;\n    }\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n    return _filteredAndSortedCrashLogsArray.count;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    CUICrashLogTableCellView * tTableCellView=[inTableView makeViewWithIdentifier:@\"crashlog cell\" owner:self];\n    \n    CUIRawCrashLog * tCrashLog=_filteredAndSortedCrashLogsArray[inRow];\n    \n    if (_showsFileNames==NO)\n    {\n        tTableCellView.imageView.image=((CUICrashLog *)tCrashLog).processIcon;\n    \n        tTableCellView.textField.stringValue=tCrashLog.processName;\n        tTableCellView.textField.lineBreakMode=NSLineBreakByTruncatingTail;\n    }\n    else\n    {\n        static NSImage * sCrashLogFileIcon=nil;\n        static dispatch_once_t onceToken;\n        dispatch_once(&onceToken, ^{\n            \n            sCrashLogFileIcon=[[NSWorkspace sharedWorkspace] iconForFileType:@\"com.apple.crashreport\"];\n            \n        });\n        \n        tTableCellView.imageView.image=sCrashLogFileIcon;\n        tTableCellView.textField.stringValue=tCrashLog.crashLogFilePath.lastPathComponent.stringByDeletingPathExtension;\n        tTableCellView.textField.lineBreakMode=NSLineBreakByTruncatingMiddle;\n    }\n    \n    tTableCellView.dateLabel.formatter=_crashLogDateFormatter;\n    tTableCellView.dateLabel.objectValue=tCrashLog.dateTime;\n    \n    // Exception Type Summary\n    \n    NSString * tExceptionType=nil;\n    CUICrashLogExceptionInformation * tExceptionInformation=nil;\n    \n    if ([tCrashLog isKindOfClass:CUICrashLog.class]==YES)\n    {\n        tExceptionInformation=((CUICrashLog *)tCrashLog).exceptionInformation;\n    \n        tExceptionType=tExceptionInformation.exceptionType;\n    }\n    \n    if (tExceptionType==nil)\n    {\n        tTableCellView.exceptionTypeLabel.stringValue=@\"-\";\n        \n        tTableCellView.toolTip=@\"\";\n    }\n    else\n    {\n        NSString * tPrefix=@\"EXC_\";\n        NSString * tLabelValue;\n        \n        if (tExceptionType.length>tPrefix.length)\n        {\n            tLabelValue=[tExceptionType substringFromIndex:tPrefix.length];\n        }\n        else\n        {\n            tLabelValue=tExceptionType;\n        }\n        \n        tTableCellView.exceptionTypeLabel.stringValue=tLabelValue;\n        \n        \n        tTableCellView.exceptionTypeLabel.toolTip=[tExceptionInformation displayedExceptionType];\n    }\n    \n    // Voice Over\n    \n    NSString * tDateString=[_crashLogDateFormatter stringFromDate:tCrashLog.dateTime];\n    \n    if (tExceptionType==nil)\n    {\n        NSString * tFormat=NSLocalizedString(@\"Crash Report for process %@, date: %@\", @\"\");\n        \n        tTableCellView.accessibilityLabel=[NSString stringWithFormat:tFormat,tCrashLog.processName,tDateString];\n    }\n    else\n    {\n        NSString * tFormat=NSLocalizedString(@\"Crash Report for process %@, date: %@, exception type: %@\", @\"\");\n        \n        tTableCellView.accessibilityLabel=[NSString stringWithFormat:tFormat,tCrashLog.processName,tDateString,[tExceptionInformation humanFriendlyExceptionType]];\n    }\n    \n    return tTableCellView;\n}\n\n- (void)tableViewSelectionDidChange:(NSNotification *)inNotification\n{\n    NSInteger tSelectedRow=_tableView.selectedRow;\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    // Stop observing\n    \n    CUICrashLogsSelection * tCrashLogsSelection=[CUICrashLogsSelection sharedSelection];\n    \n    [tNotificationCenter removeObserver:self name:CUICrashLogsSelectionDidChangeNotification object:tCrashLogsSelection];\n    \n    [tCrashLogsSelection setSource:_source crashLogs:(tSelectedRow==-1) ? @[] : @[_filteredAndSortedCrashLogsArray[tSelectedRow]]];\n    \n    // Restore observation\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:tCrashLogsSelection];\n}\n\n#pragma mark - NSSharingServiceDelegate\n\n- (void)sharingService:(NSSharingService *)sharingService didFailToShareItems:(NSArray *)items error:(NSError *)error\n{\n    // A COMPLETER\n    \n    NSBeep();\n}\n\n#pragma mark - CUIKeyViews\n\n- (NSView *)firstKeyView\n{\n    return _tableView;\n}\n\n- (NSView *)lastKeyView\n{\n    return _filterField;\n}\n\n#pragma mark - Notifications\n\n- (void)crashLogsSourcesSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogsSourcesSelection * tSelection=inNotification.object;\n    \n    if ([tSelection isKindOfClass:CUICrashLogsSourcesSelection.class]==NO)\n        return;\n    \n    CUICrashLogsSource * tFirstSource=tSelection.sources.allObjects.firstObject;\n    \n    if (tFirstSource==_source)\n        return;\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter removeObserver:self name:CUICrashLogsSourceDidUpdateSourceNotification object:_source];\n    \n    _source=tFirstSource;\n    \n    [self refreshList];\n    \n    // Register for notification\n    \n    [tNotificationCenter addObserver:self\n                            selector:@selector(sourceDidUpdateSource:)\n                                name:CUICrashLogsSourceDidUpdateSourceNotification\n                              object:_source];\n}\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogsSelection * tSelection=inNotification.object;\n    \n    // Refresh Selection\n    \n    NSMutableIndexSet * tIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_filteredAndSortedCrashLogsArray enumerateObjectsUsingBlock:^(id bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if ([tSelection.crashLogs containsObject:bCrashLog]==YES)\n            [tIndexSet addIndex:bIndex];\n        \n    }];\n    \n    if (tIndexSet.count==0)\n    {\n        [_source.crashLogs enumerateObjectsUsingBlock:^(id bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([tSelection.crashLogs containsObject:bCrashLog]==YES)\n                [tIndexSet addIndex:bIndex];\n            \n        }];\n        \n        if (tIndexSet.count==0)\n        {\n            [tIndexSet addIndex:0];\n        }\n        else\n        {\n            NSArray * tSelectedCrashLogs=[tSelection.crashLogs copy];\n            \n            _filterField.stringValue=@\"\";\n            _filterPattern=@\"\";\n            \n            [self refreshList];\n            \n            tIndexSet=[NSMutableIndexSet indexSet];\n            \n            [_filteredAndSortedCrashLogsArray enumerateObjectsUsingBlock:^(id bCrashLog, NSUInteger bIndex, BOOL * bOutStop) {\n                \n                if ([tSelectedCrashLogs containsObject:bCrashLog]==YES)\n                    [tIndexSet addIndex:bIndex];\n                \n            }];\n        }\n    }\n    \n    [_tableView selectRowIndexes:tIndexSet byExtendingSelection:NO];\n    \n    [_tableView scrollRowToVisible:tIndexSet.firstIndex];\n}\n\n- (void)sourceDidUpdateSource:(NSNotification *)inNotification\n{\n    [self refreshList];\n}\n\n- (void)crashLogsSortTypeDidChange:(NSNotification *)inNotification\n{\n    _sortType=[CUIApplicationPreferences sharedPreferences].crashLogsSortType;\n    \n    [self refreshList];\n}\n\n- (void)showFileNamesDidChange:(NSNotification *)inNotification\n{\n    _showsFileNames=[CUIApplicationPreferences sharedPreferences].crashLogsShowFileNames;\n    \n    [self refreshList];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsMainViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogsMainViewController : NSViewController\n\n    @property (readonly) NSSplitView * splitView;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsMainViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsMainViewController.h\"\n\n#import \"CUISidebarViewController.h\"\n\n#import \"CUIContentsViewController.h\"\n\n#import \"CUIRightViewController.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n#define CUISidebarMinimumWidth 250\n\n#define CUIContentsMinimumWidth 700\n\n#define CUIInspectorMinimumWidth 250\n\ntypedef NS_ENUM(NSUInteger, CUISplitViewSubViewTag)\n{\n    CUISplitViewSidebarViewTag=0,\n    CUISplitViewMiddleViewTag=1,\n    CUISplitViewInspectorViewTag=2,\n};\n\n\nNSString * const CUIDefaultsSidebarWidthKey=@\"sidebar.width\";\n\nNSString * const CUIDefaultsSidebarCollapsedKey=@\"sidebar.collapsed\";\n\n\nNSString * const CUIDefaultsInspectorViewWidthKey=@\"rightView.width\";\n\nNSString * const CUIDefaultsInspectorViewCollapsedKey=@\"rightView.collapsed\";\n\n\n@interface CUICrashLogsMainViewController () <NSMenuItemValidation, NSSplitViewDelegate>\n{\n    IBOutlet NSSplitView * _splitView;\n    \n    IBOutlet NSView * _leftView;\n    \n    IBOutlet NSView * _middleView;\n    \n    IBOutlet NSView * _rightView;\n    \n    CUISidebarViewController * _sidebarViewController;\n    \n    CUIContentsViewController * _contentsViewController;\n    \n    CUIRightViewController * _inspectorViewController;\n    \n}\n\n- (void)updateNextKeyViews;\n\n- (IBAction)showHideViews:(id)sender;\n\n//- (IBAction)switchPresentationMode:(NSMenuItem *)sender;\n\n- (void)_splitView:(NSSplitView *)inSplitView resizeSubviewsWithSidebarWidth:(CGFloat)inSidebarWidth inspectorViewWidth:(CGFloat)inInspectorViewWidth;\n\n@end\n\n@implementation CUICrashLogsMainViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _sidebarViewController=[CUISidebarViewController new];\n        \n        _contentsViewController=[CUIContentsViewController new];\n        \n        _inspectorViewController=[CUIRightViewController new];\n        \n        [self addChildViewController:_sidebarViewController];\n        \n        [self addChildViewController:_contentsViewController];\n        \n        [self addChildViewController:_inspectorViewController];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark - NSObject\n\n- (id)forwardingTargetForSelector:(SEL)aSelector\n{\n    if ([_contentsViewController respondsToSelector:aSelector]==YES)\n    {\n        return _contentsViewController;\n    }\n    \n    if ([_sidebarViewController respondsToSelector:aSelector]==YES)\n    {\n        return _sidebarViewController;\n    }\n    \n    return nil;\n}\n\n- (BOOL)respondsToSelector:(SEL)aSelector\n{\n    BOOL tResponds=[super respondsToSelector:aSelector];\n    \n    if (tResponds==YES)\n        return YES;\n    \n    NSString * tSelectorName=NSStringFromSelector(aSelector);\n    \n    if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO && [tSelectorName isEqualToString:@\"performTextFinderAction:\"]==NO)\n        return NO;\n    \n    tResponds=[_contentsViewController respondsToSelector:aSelector];\n\n    if (tResponds==YES)\n        return YES;\n\n    return [_sidebarViewController respondsToSelector:aSelector];\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUICrashLogsMainViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    BOOL tIsLeftToRightLayout=(_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight);\n    \n    NSView *tSidebarView;\n    NSView *tInspectorView;\n    \n    if (tIsLeftToRightLayout==YES)\n    {\n        tSidebarView=_leftView;\n        tInspectorView=_rightView;\n    }\n    else\n    {\n        tSidebarView=_rightView;\n        tInspectorView=_leftView;\n    }\n    \n    _inspectorViewController.view.frame=tInspectorView.bounds;\n    \n    [tInspectorView addSubview:_inspectorViewController.view];\n    \n    _contentsViewController.view.frame=_middleView.bounds;\n    \n    [_middleView addSubview:_contentsViewController.view];\n    \n    _sidebarViewController.view.frame=tSidebarView.bounds;\n    \n    [tSidebarView addSubview:_sidebarViewController.view];\n    \n    [self updateNextKeyViews];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    // Restore SplitView divider position\n    \n    BOOL tIsLeftToRightLayout=(_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight);\n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    NSNumber * tNumber=[tUserDefaults objectForKey:CUIDefaultsSidebarCollapsedKey];\n    \n    if ([tNumber boolValue]==YES)\n    {\n        if (tIsLeftToRightLayout==YES)\n            [_splitView setPosition:[_splitView minPossiblePositionOfDividerAtIndex:0] ofDividerAtIndex:0];\n        else\n             [_splitView setPosition:[_splitView maxPossiblePositionOfDividerAtIndex:1] ofDividerAtIndex:1];\n    }\n    \n    tNumber=[tUserDefaults objectForKey:CUIDefaultsInspectorViewCollapsedKey];\n    \n    if ([tNumber boolValue]==YES)\n    {\n        if (tIsLeftToRightLayout==NO)\n            [_splitView setPosition:[_splitView minPossiblePositionOfDividerAtIndex:0] ofDividerAtIndex:0];\n        else\n            [_splitView setPosition:[_splitView maxPossiblePositionOfDividerAtIndex:1] ofDividerAtIndex:1];\n    }\n    \n    CGFloat tSidebarWidth=CUISidebarMinimumWidth;\n    \n    tNumber=[tUserDefaults objectForKey:CUIDefaultsSidebarWidthKey];\n    \n    if (tNumber!=nil)\n        tSidebarWidth=[tNumber doubleValue];\n    \n    CGFloat tInspectorViewWidth=CUIInspectorMinimumWidth;\n    \n    tNumber=[tUserDefaults objectForKey:CUIDefaultsInspectorViewWidthKey];\n    \n    if (tNumber!=nil)\n        tInspectorViewWidth=[tNumber doubleValue];\n    \n    [self _splitView:_splitView resizeSubviewsWithSidebarWidth:tSidebarWidth inspectorViewWidth:tInspectorViewWidth];\n}\n\n- (void)viewWillDisappear\n{\n    // Save SplitView divider position\n    \n    NSView * tSidebarView=nil;\n    NSView * tInspectorView=nil;\n    \n    if (_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n    {\n        tSidebarView=_leftView;\n        tInspectorView=_rightView;\n    }\n    else\n    {\n        tSidebarView=_rightView;\n        tInspectorView=_leftView;\n    }\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    [tUserDefaults setObject:@(NSWidth(tSidebarView.frame)) forKey:CUIDefaultsSidebarWidthKey];\n    \n    [tUserDefaults setBool:[_splitView isSubviewCollapsed:tSidebarView] forKey:CUIDefaultsSidebarCollapsedKey];\n    \n    [tUserDefaults setObject:@(NSWidth(tInspectorView.frame)) forKey:CUIDefaultsInspectorViewWidthKey];\n    \n    [tUserDefaults setBool:[_splitView isSubviewCollapsed:tInspectorView] forKey:CUIDefaultsInspectorViewCollapsedKey];\n}\n\n#pragma mark -\n\n- (void)updateNextKeyViews\n{\n    NSView * tContentsFirstKeyView=_contentsViewController.firstKeyView;\n    \n    if (tContentsFirstKeyView==nil)\n    {\n        [_sidebarViewController.lastKeyView setNextKeyView:_sidebarViewController.firstKeyView];\n    }\n    else\n    {\n        [_sidebarViewController.lastKeyView setNextKeyView:_contentsViewController.firstKeyView];\n    \n        [_contentsViewController.lastKeyView setNextKeyView:_sidebarViewController.firstKeyView];\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if ([super respondsToSelector:tAction]==NO)\n    {\n        NSString * tSelectorName=NSStringFromSelector(tAction);\n        \n        if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO && [tSelectorName isEqualToString:@\"performTextFinderAction:\"]==NO)\n            return NO;\n        \n        if ([_contentsViewController respondsToSelector:tAction]==YES)\n            return [_contentsViewController validateMenuItem:inMenuItem];\n            \n        if ([_sidebarViewController respondsToSelector:tAction]==YES)\n            return [_sidebarViewController validateMenuItem:inMenuItem];\n        \n        return NO;\n    }\n    \n    if (tAction==@selector(showHideViews:)==YES)\n    {\n        NSView * sidebarView=nil;\n        NSView * inspectorView=nil;\n        \n        if (_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            sidebarView=_leftView;\n            inspectorView=_rightView;\n        }\n        else\n        {\n            sidebarView=_rightView;\n            inspectorView=_leftView;\n        }\n        \n        switch(inMenuItem.tag)\n        {\n            case CUISplitViewSidebarViewTag:\n                \n                inMenuItem.title=([_splitView isSubviewCollapsed:sidebarView]==YES) ? NSLocalizedString(@\"Show Sidebar\", @\"\") : NSLocalizedString(@\"Hide Sidebar\", @\"\");\n                \n                break;\n                \n            case CUISplitViewMiddleViewTag:\n                \n                inMenuItem.title=(_contentsViewController.isBottomViewCollapsed==YES) ? NSLocalizedString(@\"Show Binary Images\", @\"\") : NSLocalizedString(@\"Hide Binary Images\", @\"\");\n                \n                if ([CUICrashLogsSelection sharedSelection].crashLogs.count==0)\n                    return NO;\n                \n                if (_contentsViewController.presentationMode!=CUIPresentationModeOutline)\n                    return NO;\n                \n                break;\n                \n            case CUISplitViewInspectorViewTag:\n                \n                inMenuItem.title=([_splitView isSubviewCollapsed:inspectorView]==YES) ? NSLocalizedString(@\"Show Inspector\", @\"\") : NSLocalizedString(@\"Hide Inspector\", @\"\");\n                \n                break;\n        }\n    }\n    \n    return YES;\n}\n\n- (IBAction)showHideViews:(id)sender\n{\n    BOOL tIsLeftViewCollapsed=[_splitView isSubviewCollapsed:_leftView];\n    BOOL tIsRightViewCollapsed=[_splitView isSubviewCollapsed:_rightView];\n    \n    CUISplitViewSubViewTag tSwitchTag=-1;\n    \n    if ([sender isKindOfClass:[NSSegmentedControl class]]==YES)\n    {\n        tSwitchTag=1;\n        \n        NSSegmentedControl * tSegmentedControl=(NSSegmentedControl *)sender;\n        \n        if ([tSegmentedControl isSelectedForSegment:0]==tIsLeftViewCollapsed)\n            tSwitchTag=0;\n        \n        if ([tSegmentedControl isSelectedForSegment:2]==tIsRightViewCollapsed)\n            tSwitchTag=2;\n    }\n    else if ([sender isKindOfClass:[NSMenuItem class]]==YES)\n    {\n        tSwitchTag=((NSMenuItem *) sender).tag;\n    }\n    \n    NSWindow * tWindow=self.view.window;\n    \n    switch(tSwitchTag)\n    {\n        case 0:\n            \n            if (tIsLeftViewCollapsed==NO)\n            {\n                [_splitView setPosition:[_splitView minPossiblePositionOfDividerAtIndex:0] ofDividerAtIndex:0];\n                \n                if (tWindow.firstResponder==tWindow)\n                    [tWindow makeFirstResponder:self];\n            }\n            else\n            {\n                CGFloat tPosition=NSWidth(_leftView.frame);\n                \n                [_splitView setPosition:tPosition ofDividerAtIndex:0];\n                \n                [self splitView:_splitView resizeSubviewsWithOldSize:_splitView.frame.size];\n            }\n            \n            break;\n        \n        case 1:\n            \n            [_contentsViewController showHideBottomView:self];\n            \n            break;\n            \n        case 2:\n            \n            if (tIsRightViewCollapsed==NO)\n            {\n                [_splitView setPosition:[_splitView maxPossiblePositionOfDividerAtIndex:1] ofDividerAtIndex:1];\n                \n                if (tWindow.firstResponder==tWindow)\n                {\n                    [tWindow makeFirstResponder:self];\n                }\n            }\n            else\n            {\n                CGFloat tPosition=NSWidth(_splitView.frame)-_splitView.dividerThickness-NSWidth(_rightView.frame);\n                \n                [_splitView setPosition:tPosition ofDividerAtIndex:1];\n                \n                [self splitView:_splitView resizeSubviewsWithOldSize:_splitView.frame.size];\n            }\n            \n            break;\n    }\n    \n    if (self.view.window.firstResponder==nil)\n    {\n        [self.view.window makeFirstResponder:_middleView];\n    }\n}\n\n#pragma mark - NSSplitViewDelegate\n\n- (void)_splitView:(NSSplitView *)inSplitView resizeSubviewsWithSidebarWidth:(CGFloat)inSidebarWidth inspectorViewWidth:(CGFloat)inInspectorViewWidth\n{\n    BOOL tIsLeftToRightLayout=(_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight);\n    \n    NSView * tSidebarView=nil;\n    NSView * tInspectorView=nil;\n    \n    if (tIsLeftToRightLayout==YES)\n    {\n        tSidebarView=_leftView;\n        tInspectorView=_rightView;\n    }\n    else\n    {\n        tSidebarView=_rightView;\n        tInspectorView=_leftView;\n    }\n    \n    NSRect tSplitViewFrame=inSplitView.frame;\n    \n    NSRect tSidebarFrame=tSidebarView.frame;\n    \n    tSidebarFrame.size.width=inSidebarWidth;\n    \n    NSRect tContentsFrame=_middleView.frame;\n    NSRect tInspectorFrame=tInspectorView.frame;\n    \n    tInspectorFrame.size.width=inInspectorViewWidth;\n    \n    \n    CGFloat tSidebarWidth=([inSplitView isSubviewCollapsed:tSidebarView]==NO) ? NSWidth(tSidebarFrame) : 0.0;\n    CGFloat tInspectorWidth=([inSplitView isSubviewCollapsed:tInspectorView]==NO) ? NSWidth(tInspectorFrame) : 0.0;\n    \n    tContentsFrame.size.width=NSWidth(tSplitViewFrame)-tSidebarWidth-tInspectorWidth-2*inSplitView.dividerThickness;\n    \n    if (tContentsFrame.size.width<CUIContentsMinimumWidth)\n    {\n        tContentsFrame.size.width=CUIContentsMinimumWidth;\n        \n        tInspectorWidth=NSWidth(tSplitViewFrame)-CUIContentsMinimumWidth-tSidebarWidth-2*inSplitView.dividerThickness;\n        \n        if (tInspectorWidth<CUIInspectorMinimumWidth)\n        {\n            tInspectorWidth=CUIInspectorMinimumWidth;\n            tSidebarWidth=NSWidth(tSplitViewFrame)-CUIContentsMinimumWidth-CUIInspectorMinimumWidth-2*inSplitView.dividerThickness;\n        }\n    }\n    \n    if (inSplitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n    {\n        if ([inSplitView isSubviewCollapsed:tSidebarView]==NO)\n        {\n            tSidebarFrame.origin.x=0;\n            tSidebarFrame.size.width=tSidebarWidth;\n            tSidebarFrame.origin.y=0;\n            tSidebarFrame.size.height=NSHeight(tSplitViewFrame);\n            \n            tSidebarView.frame=tSidebarFrame;\n        }\n        \n        tContentsFrame.origin.x=tSidebarWidth+inSplitView.dividerThickness;\n        tContentsFrame.origin.y=0;\n        tContentsFrame.size.height=NSHeight(tSplitViewFrame);\n        \n        _middleView.frame=tContentsFrame;\n        \n        if ([inSplitView isSubviewCollapsed:tInspectorView]==NO)\n        {\n            tInspectorFrame.origin.x=NSWidth(tSplitViewFrame)-tInspectorWidth;\n            tInspectorFrame.size.width=tInspectorWidth;\n            tInspectorFrame.origin.y=0;\n            tInspectorFrame.size.height=NSHeight(tSplitViewFrame);\n            \n            tInspectorView.frame=tInspectorFrame;\n        }\n    }\n    else\n    {\n        if ([inSplitView isSubviewCollapsed:tSidebarView]==NO)\n        {\n            tSidebarFrame.origin.x=NSMaxX(tSplitViewFrame)-tSidebarWidth;\n            tSidebarFrame.size.width=tSidebarWidth;\n            tSidebarFrame.origin.y=0;\n            tSidebarFrame.size.height=NSHeight(tSplitViewFrame);\n            \n            tSidebarView.frame=tSidebarFrame;\n        }\n        \n        tContentsFrame.origin.x=tInspectorWidth+inSplitView.dividerThickness;\n        tContentsFrame.origin.y=0;\n        tContentsFrame.size.height=NSHeight(tSplitViewFrame);\n        \n        _middleView.frame=tContentsFrame;\n        \n        if ([inSplitView isSubviewCollapsed:tInspectorView]==NO)\n        {\n            tInspectorFrame.origin.x=0;\n            tInspectorFrame.size.width=tInspectorWidth;\n            tInspectorFrame.origin.y=0;\n            tInspectorFrame.size.height=NSHeight(tSplitViewFrame);\n            \n            tInspectorView.frame=tInspectorFrame;\n        }\n    }\n}\n\n- (BOOL)splitView:(NSSplitView *)inSplitView canCollapseSubview:(NSView *)inSubview\n{\n    if (inSubview==_leftView ||\n        inSubview==_rightView)\n        return YES;\n    \n    return NO;\n}\n\n- (void)splitView:(NSSplitView *)inSplitView resizeSubviewsWithOldSize:(NSSize)oldSize\n{\n    BOOL tIsLeftToRightLayout=(_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight);\n    \n    NSView * tSidebarView=nil;\n    NSView * tInspectorView=nil;\n    \n    if (tIsLeftToRightLayout==YES)\n    {\n        tSidebarView=_leftView;\n        tInspectorView=_rightView;\n    }\n    else\n    {\n        tSidebarView=_rightView;\n        tInspectorView=_leftView;\n    }\n    \n    [self _splitView:(NSSplitView *)inSplitView resizeSubviewsWithSidebarWidth:NSWidth(tSidebarView.frame) inspectorViewWidth:NSWidth(tInspectorView.frame)];\n}\n\n- (CGFloat)splitView:(NSSplitView *)inSplitView constrainMinCoordinate:(CGFloat)proposedMinimumPosition ofSubviewAt:(NSInteger)inDividerIndex\n{\n    BOOL tIsLeftToRightLayout=(_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight);\n    \n    switch(inDividerIndex)\n    {\n        case 0:\n            \n            if (tIsLeftToRightLayout==YES)\n                return CUISidebarMinimumWidth;\n            else\n                return CUIInspectorMinimumWidth;\n            \n            break;\n            \n        case 1:\n        {\n            CGFloat tLeftWidth=([inSplitView isSubviewCollapsed:_leftView]==NO) ? NSWidth(_leftView.frame) : 0.0;\n            \n            return tLeftWidth+inSplitView.dividerThickness+CUIContentsMinimumWidth;\n        }\n            \n        default:\n            \n            break;\n    }\n    \n    return 0;\n}\n\n- (CGFloat)splitView:(NSSplitView *)inSplitView constrainMaxCoordinate:(CGFloat)proposedMax ofSubviewAt:(NSInteger)inDividerIndex\n{\n    BOOL tIsLeftToRightLayout=(_splitView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight);\n        \n    switch(inDividerIndex)\n    {\n        case 0:\n            \n            return NSWidth(inSplitView.frame)-NSWidth(_rightView.frame)-inSplitView.dividerThickness-CUIContentsMinimumWidth-inSplitView.dividerThickness;\n            \n        case 1:\n            \n            if (tIsLeftToRightLayout==YES)\n                return NSWidth(inSplitView.frame)-CUIInspectorMinimumWidth-inSplitView.dividerThickness;\n            else\n                return NSWidth(inSplitView.frame)-CUISidebarMinimumWidth-inSplitView.dividerThickness;\n            \n        default:\n            \n            break;\n    }\n    \n    return 0;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsMainViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsMainViewController\">\n            <connections>\n                <outlet property=\"_leftView\" destination=\"AU0-18-zRp\" id=\"yVw-cI-PsS\"/>\n                <outlet property=\"_middleView\" destination=\"DJu-Py-N57\" id=\"SBd-he-a3h\"/>\n                <outlet property=\"_rightView\" destination=\"Z8I-nA-wcp\" id=\"meo-8K-uFg\"/>\n                <outlet property=\"_splitView\" destination=\"yf5-xt-Weo\" id=\"Qki-dj-LUr\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1078\" height=\"687\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <splitView dividerStyle=\"thin\" vertical=\"YES\" id=\"yf5-xt-Weo\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1078\" height=\"687\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView id=\"AU0-18-zRp\" userLabel=\"Left View\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"250\" height=\"687\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <connections>\n                                <outlet property=\"nextKeyView\" destination=\"DJu-Py-N57\" id=\"QL4-Wh-PD8\"/>\n                            </connections>\n                        </customView>\n                        <customView id=\"DJu-Py-N57\">\n                            <rect key=\"frame\" x=\"251\" y=\"0.0\" width=\"576\" height=\"687\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <connections>\n                                <outlet property=\"nextKeyView\" destination=\"Z8I-nA-wcp\" id=\"yxq-aw-bYw\"/>\n                            </connections>\n                        </customView>\n                        <customView id=\"Z8I-nA-wcp\">\n                            <rect key=\"frame\" x=\"828\" y=\"0.0\" width=\"250\" height=\"687\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"qoa-3N-sEt\"/>\n                    </connections>\n                </splitView>\n            </subviews>\n            <connections>\n                <outlet property=\"nextKeyView\" destination=\"AU0-18-zRp\" id=\"TB8-UD-8lG\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"54\" y=\"110\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorPanel.h",
    "content": "/*\n Copyright (c) 2021-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLogsOpenErrorRecord.h\"\n\n@interface CUICrashLogsOpenErrorPanel : NSPanel\n\n    @property NSArray<CUICrashLogsOpenErrorRecord *> * errors;\n\n+ (CUICrashLogsOpenErrorPanel *)crashLogsOpenErrorPanel;\n\n- (void)beginSheetModalForWindow:(NSWindow *)inWindow completionHandler:(void (^)(NSModalResponse response))handler;\n\n- (NSModalResponse)runModal;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorPanel.m",
    "content": "/*\n Copyright (c) 2021-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsOpenErrorPanel.h\"\n\n#import \"CUICrashLogsOpenErrorRecord+UI.h\"\n\n#import \"NSTableView+Selection.h\"\n\n@interface CUICrashLogsOpenErrorWindowController : NSWindowController <NSMenuItemValidation,NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTextField * _messageLabel;\n    \n    IBOutlet NSTextField * _informativeLabel;\n    \n    IBOutlet NSTableView * _tableView;\n    \n    IBOutlet NSButton * _defaultButton;\n}\n\n@property (nonatomic) NSArray<CUICrashLogsOpenErrorRecord *> * errors;\n\n- (void)updateUI;\n\n- (IBAction)showInFinder:(id)sender;\n\n- (IBAction)endDialog:(id)sender;\n\n@end\n\n@implementation CUICrashLogsOpenErrorWindowController\n\n- (NSString *)windowNibName\n{\n    return @\"CUICrashLogsOpenErrorWindowController\";\n}\n\n- (void)windowDidLoad\n{\n    [super windowDidLoad];\n    \n    NSTableColumn * tTableColumn=[_tableView tableColumnWithIdentifier:@\"file\"];\n    tTableColumn.headerCell.title=NSLocalizedString(@\"Name\",@\"\");\n    \n    tTableColumn=[_tableView tableColumnWithIdentifier:@\"reason\"];\n    tTableColumn.headerCell.title=NSLocalizedString(@\"Reason\",@\"\");\n    \n    NSRect tButtonFrame=_defaultButton.frame;\n    \n    _defaultButton.title=NSLocalizedString(@\"OK\",@\"\");\n    \n    [_defaultButton sizeToFit];\n    \n    CGFloat tWidth=NSWidth(_defaultButton.frame);\n    \n    if (tWidth<CUIAppkitMinimumPushButtonWidth)\n        tWidth=CUIAppkitMinimumPushButtonWidth;\n    \n    tButtonFrame.origin.x=NSMaxX(tButtonFrame)-tWidth;\n    tButtonFrame.size.width=tWidth;\n    \n    _defaultButton.frame=tButtonFrame;\n    \n    [self updateUI];\n}\n\n#pragma mark -\n\n- (void)setErrors:(NSArray<CUICrashLogsOpenErrorRecord *> *)inErrors\n{\n    if (_errors==inErrors)\n        return;\n    \n    _errors=inErrors;\n    \n    if (_tableView!=nil)\n        [self updateUI];\n}\n\n#pragma mark -\n\n- (void)updateUI\n{\n    NSString * tMessageString=@\"\";\n    NSString * tInformativeString=@\"\";\n    \n    switch (_errors.count)\n    {\n        case 0:\n            \n            break;\n            \n        case 1:\n            \n            tMessageString=NSLocalizedString(@\"An error occurred while opening the file.\", @\"\");\n            tInformativeString=NSLocalizedString(@\"The file can't be opened for the following reason:\", @\"\");\n            \n            break;\n            \n        default:\n            \n            tMessageString=NSLocalizedString(@\"An error occurred while opening some files.\", @\"\");\n            tInformativeString=NSLocalizedString(@\"These files can't be opened for the following reasons:\", @\"\");\n            \n            break;\n    }\n    \n    _messageLabel.stringValue=tMessageString;\n    _informativeLabel.stringValue=tInformativeString;\n    \n    [_tableView reloadData];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(showInFinder:))\n    {\n        return YES;\n    }\n    \n    return YES;\n}\n\n- (IBAction)showInFinder:(id)sender\n{\n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    [self.errors enumerateObjectsAtIndexes:tSelectedRows options:0 usingBlock:^(CUICrashLogsOpenErrorRecord * bRecord, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        [[NSWorkspace sharedWorkspace] selectFile:bRecord.sourceURL.path inFileViewerRootedAtPath:@\"\"];\n        \n    }];\n}\n\n- (IBAction)endDialog:(NSButton *)sender\n{\n    [NSApp stopModalWithCode:NSModalResponseOK];\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView\n{\n    return _errors.count;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    CUICrashLogsOpenErrorRecord * tRecord=_errors[inRow];\n    \n    NSString * tTableColumnIdentifier=inTableColumn.identifier;\n    NSTableCellView * tTableCellView=[inTableView makeViewWithIdentifier:tTableColumnIdentifier owner:self];\n    \n    if ([tTableColumnIdentifier isEqualToString:@\"file\"]==YES)\n    {\n        NSImage * tIcon=[[NSWorkspace sharedWorkspace] iconForFile:tRecord.sourceURL.path];\n        \n        tTableCellView.imageView.image=tIcon;\n        \n        tTableCellView.textField.stringValue=tRecord.sourceURL.path.lastPathComponent;\n    }\n    else if ([tTableColumnIdentifier isEqualToString:@\"reason\"]==YES)\n    {\n        tTableCellView.textField.stringValue=tRecord.localizedDescription;\n    }\n    \n    return tTableCellView;\n}\n\n@end\n\n@interface CUICrashLogsOpenErrorPanel ()\n{\n    CUICrashLogsOpenErrorWindowController * retainedWindowController;\n}\n\n- (void)_sheetDidEndSelector:(NSWindow *)inWindow returnCode:(NSInteger)inReturnCode contextInfo:(void *)contextInfo;\n\n@end\n\n@implementation CUICrashLogsOpenErrorPanel\n\n+ (CUICrashLogsOpenErrorPanel *)crashLogsOpenErrorPanel\n{\n    CUICrashLogsOpenErrorWindowController * tWindowController=[CUICrashLogsOpenErrorWindowController new];\n    \n    CUICrashLogsOpenErrorPanel * tPanel=(CUICrashLogsOpenErrorPanel *)tWindowController.window;\n    tPanel->retainedWindowController=tWindowController;\n    \n    return tPanel;\n}\n\n#pragma mark -\n\n- (NSArray<CUICrashLogsOpenErrorRecord *> *)errors\n{\n    return retainedWindowController.errors;\n}\n\n- (void)setErrors:(NSArray<CUICrashLogsOpenErrorRecord *> *)inErrors\n{\n    retainedWindowController.errors=inErrors;\n}\n\n#pragma mark -\n\n- (void)_sheetDidEndSelector:(CUICrashLogsOpenErrorPanel *)inPanel returnCode:(NSInteger)inReturnCode contextInfo:(void *)contextInfo\n{\n    void(^handler)(NSInteger) = (__bridge_transfer void(^)(NSInteger)) contextInfo;\n    \n    if (handler!=nil)\n        handler(inReturnCode);\n    \n    inPanel->retainedWindowController=nil;\n    \n    [inPanel orderOut:self];\n}\n\n- (void)beginSheetModalForWindow:(NSWindow *)inWindow completionHandler:(void (^)(NSModalResponse))handler\n{\n    [inWindow beginSheet:self completionHandler:^(NSModalResponse bResponse) {\n        \n        if (handler!=nil)\n            handler(bResponse);\n        \n        self->retainedWindowController=nil;\n    }];\n}\n\n- (NSModalResponse)runModal\n{\n    NSModalResponse tModalResponse=[NSApp runModalForWindow:self];\n    \n    retainedWindowController=nil;\n    \n    [self orderOut:self];\n    \n    return tModalResponse;\n}\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorRecord+UI.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsOpenErrorRecord.h\"\n\n@interface CUICrashLogsOpenErrorRecord (UI)\n\n- (NSString *)localizedDescription;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorRecord+UI.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsOpenErrorRecord+UI.h\"\n\n@implementation CUICrashLogsOpenErrorRecord (UI)\n\n- (NSString *)localizedDescription\n{\n    NSString * tString=self.description;\n    \n    if (tString==nil)\n        return @\"-\";\n    \n    return NSLocalizedString(tString, @\"\");\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorRecord.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLogErrors.h\"\n\n@interface CUICrashLogsOpenErrorRecord : NSObject\n\n    @property NSURL * sourceURL;\n\n    @property (copy) NSError * openError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorRecord.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsOpenErrorRecord.h\"\n#import \"IPSError.h\"\n\n@implementation CUICrashLogsOpenErrorRecord\n\n- (NSString *)description\n{\n    NSError * tError=self.openError;\n    \n    if (tError==nil)\n        return @\"-\";\n    \n    if ([tError.domain isEqualToString:IPSErrorDomain]==YES)\n    {\n        switch(tError.code)\n        {\n            case IPSUnsupportedBugTypeError:\n                \n                return @\"The format of this file is invalid or unsupported.\";\n                \n            default:\n                \n                break;\n        }\n    }\n    else if ([tError.domain isEqualToString:CUICrashLogDomain]==YES)\n    {\n        switch(tError.code)\n        {\n            case CUICrashLogEmptyFileError:\n                \n                return @\"This file is empty.\";\n        \n            case CUICrashLogInvalidFormatFileError:\n                \n                return @\"The format of this file is invalid or unsupported.\";\n                \n            default:\n                \n                break;\n        }\n    }\n    else if ([tError.domain isEqualToString:NSCocoaErrorDomain]==YES)\n    {\n        switch (tError.code)\n        {\n            case NSFileReadNoPermissionError:\n                \n                return @\"You don't have permission to view this file.\";\n                \n            default:\n                \n                return [NSString stringWithFormat:@\"Error code: %ld\",tError.code];\n        }\n    }\n    \n    return @\"-\";\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsOpenErrorWindowController\">\n            <connections>\n                <outlet property=\"_defaultButton\" destination=\"Ggm-ig-lrr\" id=\"OfE-zw-x9Q\"/>\n                <outlet property=\"_informativeLabel\" destination=\"LBg-FC-wnl\" id=\"rmz-Q0-7Jr\"/>\n                <outlet property=\"_messageLabel\" destination=\"HPg-sp-Enx\" id=\"3HF-r5-dRs\"/>\n                <outlet property=\"_tableView\" destination=\"Bec-f9-4xu\" id=\"Exl-Y7-ZML\"/>\n                <outlet property=\"window\" destination=\"AuZ-IS-hcs\" id=\"sRN-zU-eva\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"alertPanel\" frameAutosaveName=\"\" id=\"AuZ-IS-hcs\" customClass=\"CUICrashLogsOpenErrorPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"272\" y=\"199\" width=\"800\" height=\"260\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1577\"/>\n            <value key=\"minSize\" type=\"size\" width=\"800\" height=\"260\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"800\" height=\"1024\"/>\n            <view key=\"contentView\" id=\"SDj-3l-ROf\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"800\" height=\"260\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"22\" horizontalPageScroll=\"10\" verticalLineScroll=\"22\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" id=\"pwj-81-wLC\">\n                        <rect key=\"frame\" x=\"105\" y=\"57\" width=\"675\" height=\"136\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"aSH-Ir-iSB\">\n                            <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"673\" height=\"135\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" columnSelection=\"YES\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"20\" rowSizeStyle=\"automatic\" headerView=\"HZy-rc-sYC\" viewBased=\"YES\" floatsGroupRows=\"NO\" id=\"Bec-f9-4xu\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"673\" height=\"110\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                    <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                    <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <tableViewGridLines key=\"gridStyleMask\" vertical=\"YES\"/>\n                                    <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <tableColumns>\n                                        <tableColumn identifier=\"file\" width=\"317\" minWidth=\"40\" maxWidth=\"1000\" id=\"qR5-9K-tim\">\n                                            <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Name\">\n                                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </tableHeaderCell>\n                                            <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"xkL-Qc-bOg\">\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                                <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textFieldCell>\n                                            <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                            <prototypeCellViews>\n                                                <tableCellView id=\"0eJ-eQ-9G2\">\n                                                    <rect key=\"frame\" x=\"1\" y=\"1\" width=\"317\" height=\"20\"/>\n                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                    <subviews>\n                                                        <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"9am-3O-NBp\">\n                                                            <rect key=\"frame\" x=\"22\" y=\"2\" width=\"292\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                            <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"IGJ-dI-o28\">\n                                                                <font key=\"font\" metaFont=\"system\"/>\n                                                                <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            </textFieldCell>\n                                                        </textField>\n                                                        <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"3lk-P7-AmD\">\n                                                            <rect key=\"frame\" x=\"4\" y=\"2\" width=\"16\" height=\"16\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                            <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"Hyy-hM-vyP\"/>\n                                                        </imageView>\n                                                    </subviews>\n                                                    <connections>\n                                                        <outlet property=\"imageView\" destination=\"3lk-P7-AmD\" id=\"mon-D7-ZWa\"/>\n                                                        <outlet property=\"textField\" destination=\"9am-3O-NBp\" id=\"a1O-Kh-neU\"/>\n                                                    </connections>\n                                                </tableCellView>\n                                            </prototypeCellViews>\n                                        </tableColumn>\n                                        <tableColumn identifier=\"reason\" width=\"350\" minWidth=\"40\" maxWidth=\"1000\" id=\"MXB-oE-mvB\">\n                                            <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Reason\">\n                                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </tableHeaderCell>\n                                            <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"194-7W-Ne2\">\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                                <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textFieldCell>\n                                            <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                            <prototypeCellViews>\n                                                <tableCellView id=\"T9V-s9-WgK\">\n                                                    <rect key=\"frame\" x=\"321\" y=\"1\" width=\"350\" height=\"17\"/>\n                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                    <subviews>\n                                                        <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"7Z3-jr-yf7\">\n                                                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"350\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                            <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"ouV-ea-gCI\">\n                                                                <font key=\"font\" metaFont=\"system\"/>\n                                                                <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            </textFieldCell>\n                                                        </textField>\n                                                    </subviews>\n                                                    <connections>\n                                                        <outlet property=\"textField\" destination=\"7Z3-jr-yf7\" id=\"fzc-OE-gJY\"/>\n                                                    </connections>\n                                                </tableCellView>\n                                            </prototypeCellViews>\n                                        </tableColumn>\n                                    </tableColumns>\n                                    <connections>\n                                        <outlet property=\"dataSource\" destination=\"-2\" id=\"QP0-7f-EqI\"/>\n                                        <outlet property=\"delegate\" destination=\"-2\" id=\"Bhq-A8-5dg\"/>\n                                        <outlet property=\"menu\" destination=\"8Xt-CO-p65\" id=\"PcK-n4-HAK\"/>\n                                    </connections>\n                                </tableView>\n                            </subviews>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"6Wy-Ch-h9m\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"0jY-kd-hzN\">\n                            <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <tableHeaderView key=\"headerView\" id=\"HZy-rc-sYC\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"673\" height=\"25\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </tableHeaderView>\n                    </scrollView>\n                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"LBg-FC-wnl\">\n                        <rect key=\"frame\" x=\"104\" y=\"201\" width=\"678\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" selectable=\"YES\" title=\"The file can't be opened for the following reason.\" id=\"D8g-r8-7Jo\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"0um-Rt-A6t\">\n                        <rect key=\"frame\" x=\"23\" y=\"180\" width=\"64\" height=\"64\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" image=\"NSApplicationIcon\" id=\"4LG-4V-2lb\"/>\n                    </imageView>\n                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"HPg-sp-Enx\">\n                        <rect key=\"frame\" x=\"104\" y=\"227\" width=\"678\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" selectable=\"YES\" title=\"An error occurred while opening the file.\" id=\"RHC-gI-0j7\">\n                            <font key=\"font\" metaFont=\"systemBold\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <button verticalHuggingPriority=\"750\" id=\"Ggm-ig-lrr\">\n                        <rect key=\"frame\" x=\"684\" y=\"13\" width=\"102\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"OK\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"eDY-FW-Pjb\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nDQ\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"OzT-4M-TY4\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"-23\" y=\"7\"/>\n        </window>\n        <menu id=\"8Xt-CO-p65\">\n            <items>\n                <menuItem title=\"Show in Finder\" id=\"JRT-sb-37u\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"3yv-ss-bMe\"/>\n                    </connections>\n                </menuItem>\n            </items>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSApplicationIcon\" width=\"32\" height=\"32\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsProvider.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLog.h\"\n\nextern NSString * const CUIRetiredPathComponent;\n\ntypedef NS_ENUM(NSUInteger, CUICrashLogsProviderCollectOptions)\n{\n    CUICrashLogsProviderCollectRetired = 1\n};\n\n\n@interface CUICrashLogsProvider : NSObject\n\n+ (CUICrashLogsProvider *)defaultProvider;\n\n- (NSArray *)currentUserCrashLogs;\n\n- (NSArray *)systemCrashLogs;\n\n- (id)crashLogWithContentsOfFile:(NSString *)inPath error:(NSError **)outError;\n\n- (NSArray *)crashLogsForDirectory:(NSString *)inDirectoryPath error:(NSError **)outError;\n\n- (NSArray *)crashLogsForDirectory:(NSString *)inDirectoryPath options:(CUICrashLogsProviderCollectOptions)inOptions error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsProvider.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsProvider.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\nNSString * const CUIRetiredPathComponent=@\"Retired\";\n\n@interface CUICrashLogsProvider ()\n\n- (NSArray *)crashLogsForDirectory:(NSString *)inDirectoryPath options:(CUICrashLogsProviderCollectOptions)options error:(NSError **)outError;\n\n@end\n\n@implementation CUICrashLogsProvider\n\n+ (CUICrashLogsProvider *)defaultProvider\n{\n\tstatic CUICrashLogsProvider * sDefaultProvider=nil;\n\tstatic dispatch_once_t onceToken;\n\tdispatch_once(&onceToken, ^{\n\t\tsDefaultProvider=[CUICrashLogsProvider new];\n\t});\n\t\n\treturn sDefaultProvider;\n}\n\n#pragma mark -\n\n- (NSArray *)currentUserCrashLogs\n{\n\tNSString * tDirectoryPath=[@\"~/Library/Logs/DiagnosticReports/\" stringByExpandingTildeInPath];\n\t\n    return [self crashLogsForDirectory:tDirectoryPath options:CUICrashLogsProviderCollectRetired error:NULL];\n}\n\n- (NSArray *)systemCrashLogs\n{\n\tNSString * tDirectoryPath=@\"/Library/Logs/DiagnosticReports/\";\n\t\n\treturn [self crashLogsForDirectory:tDirectoryPath options:CUICrashLogsProviderCollectRetired error:NULL];\n}\n\n- (id)crashLogWithContentsOfFile:(NSString *)inPath error:(NSError **)outError\n{\n\tif ([inPath isKindOfClass:NSString.class]==NO)\n\t{\n\t\tif (outError!=NULL)\n\t\t\t*outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n\t\t\n\t\treturn nil;\n\t}\n\t\n    NSString * tExtension=inPath.pathExtension;\n    \n    if ([tExtension caseInsensitiveCompare:@\"crash\"]!=NSOrderedSame &&\n        [tExtension caseInsensitiveCompare:@\"ips\"]!=NSOrderedSame)\n        return nil;\n    \n    NSError * tError=nil;\n    \n    id tCrashLog=[[CUICrashLog alloc] initWithContentsOfFile:inPath error:&tError];\n    \n    if (tCrashLog==nil)\n    {\n\t\tBOOL tryAgainIfRawSucceed=NO;\n\t\t\n        if ([tError.domain isEqualToString:NSCocoaErrorDomain]==YES)\n        {\n            switch(tError.code)\n            {\n                case NSFileReadNoSuchFileError:     // File is missing, no point in trying to read it\n                case NSFileReadNoPermissionError:   // Not enough privileges to read file, no point in trying to read it\n                            \n                    if (outError!=nil)\n                        *outError=tError;\n                    \n                    return nil;\n                    \n\t\t\t\tcase NSFileReadUnknownError:\n\t\t\t\t{\n\t\t\t\t\tNSError * tUnderlyingError=tError.userInfo[NSUnderlyingErrorKey];\n\t\t\t\t\t\n\t\t\t\t\tif ([tUnderlyingError.domain isEqualToString:NSPOSIXErrorDomain]==YES &&\n\t\t\t\t\t\ttUnderlyingError.code==EINTR)\n\t\t\t\t\t{\n\t\t\t\t\t\ttryAgainIfRawSucceed=YES;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\tcase NSPropertyListReadCorruptError:\t// Invalid json file.\n\t\t\t\t\tif (outError!=nil)\n\t\t\t\t\t\t*outError=tError;\n\t\t\t\t\t\n\t\t\t\t\treturn nil;\n\t\t\t\t\t\n\t\t\t\tdefault:\n                    \n                    break;\n            }\n        }\n        else if ([tError.domain isEqualToString:CUICrashLogDomain]==YES)\n        {\n            switch(tError.code)\n            {\n                case CUICrashLogEmptyFileError:\n                case CUICrashLogInvalidFormatFileError:\n                    \n                    // Not worth retrying as a raw file\n                    \n                    if (outError!=nil)\n                        *outError=tError;\n                    \n                    NSLog(@\"Error when parsing report file \\\"%@\\\": Empty file or not a crash log report.\",inPath);\n                    \n                    return nil;\n            }\n        }\n        \n        NSLog(@\"Error when parsing report file \\\"%@\\\", will try to parse it as raw report: %@\",inPath,tError.description);\n        \n        tCrashLog=[[CUIRawCrashLog alloc] initWithContentsOfFile:inPath error:&tError];\n        \n\t\tif (tCrashLog!=nil)\n\t\t{\n\t\t\tid newCrashLogAttempt=[[CUICrashLog alloc] initWithContentsOfFile:inPath error:&tError];\n\t\t\t\n\t\t\tif (newCrashLogAttempt!=nil)\n\t\t\t\ttCrashLog=newCrashLogAttempt;\n\t\t}\n    }\n    \n\treturn tCrashLog;\n}\n\n- (NSArray *)crashLogsForDirectory:(NSString *)inDirectoryPath error:(NSError **)outError\n{\n    return [self crashLogsForDirectory:inDirectoryPath options:0 error:outError];\n}\n\n- (NSArray *)crashLogsForDirectory:(NSString *)inDirectoryPath options:(CUICrashLogsProviderCollectOptions)inOptions error:(NSError **)outError\n{\n\tif ([inDirectoryPath isKindOfClass:NSString.class]==NO)\n\t{\n\t\tif (outError!=NULL)\n\t\t\t*outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n\t\t\n\t\treturn nil;\n\t}\n\t\n\tNSArray * tArray=[[NSFileManager defaultManager] contentsOfDirectoryAtPath:inDirectoryPath error:outError];\n    \n    if ((inOptions & CUICrashLogsProviderCollectRetired) == CUICrashLogsProviderCollectRetired && [tArray containsObject:CUIRetiredPathComponent]==YES)\n    {\n        NSArray * tRetiredArray=[[NSFileManager defaultManager] contentsOfDirectoryAtPath:[inDirectoryPath stringByAppendingPathComponent:CUIRetiredPathComponent] error:NULL];\n        \n        if (tRetiredArray.count>0)\n            tArray = [tArray arrayByAddingObjectsFromArray:tRetiredArray];\n    }\n\t\n\tNSArray * tCrashLogsArray=[tArray WB_arrayByMappingObjectsLenientlyUsingBlock:^id(NSString * bComponent, NSUInteger bIndex) {\n\t\t\n        NSString * tComponentExtension=bComponent.pathExtension;\n        \n\t\tif ([tComponentExtension caseInsensitiveCompare:@\"crash\"]!=NSOrderedSame &&\n            [tComponentExtension caseInsensitiveCompare:@\"ips\"]!=NSOrderedSame)\n\t\t\treturn nil;\n\t\t\n\t\tNSString * tFilePath=[inDirectoryPath stringByAppendingPathComponent:bComponent];\n\t\t\n\t\tNSError * tError=nil;\n\t\t\n\t\tid tCrashLog=[[CUICrashLog alloc] initWithContentsOfFile:tFilePath error:&tError];\n\t\t\n        if (tCrashLog==nil)\n        {\n            if ([tError.domain isEqualToString:NSCocoaErrorDomain]==YES)\n            {\n                switch(tError.code)\n                {\n                    case NSFileReadNoSuchFileError:     // File is missing, no point in trying to read it\n                    case NSFileReadNoPermissionError:   // Not enough privileges to read file, no point in trying to read it\n                        \n                        return nil;\n                        \n                    default:\n                        \n                        break;\n                }\n            }\n            else if ([tError.domain isEqualToString:CUICrashLogDomain]==YES)\n            {\n                switch(tError.code)\n                {\n                    case CUICrashLogEmptyFileError:\n                    case CUICrashLogInvalidFormatFileError:\n                        \n                        // Not worth retrying as a raw file\n                        \n                        return nil;\n                }\n            }\n            \n            tCrashLog=[[CUIRawCrashLog alloc] initWithContentsOfFile:tFilePath error:&tError];\n        }\n        \n        return tCrashLog;\n\t\t\n\t}];\n\t\n\treturn tCrashLogsArray;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSelection.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLogsSource.h\"\n\nextern NSString * const CUICrashLogsSelectionDidChangeNotification;\n\n@interface CUICrashLogsSelection : NSObject <NSCopying>\n\n    @property (readonly) CUICrashLogsSource * source;\n\n    @property (readonly) NSArray * crashLogs;\n\n+ (CUICrashLogsSelection *)sharedSelection;\n\n- (void)setSource:(CUICrashLogsSource *)inSource crashLogs:(NSArray *)inCrashLogs;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSelection.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSelection.h\"\n\nNSString * const CUICrashLogsSelectionDidChangeNotification=@\"CUICrashLogsSelectionDidChangeNotification\";\n\n@interface CUICrashLogsSelection ()\n\n@property CUICrashLogsSource * source;\n\n@property NSArray * crashLogs;\n\n@end\n\n@implementation CUICrashLogsSelection\n\n+ (CUICrashLogsSelection *)sharedSelection\n{\n    static CUICrashLogsSelection * sSharedSelection=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        sSharedSelection=[CUICrashLogsSelection new];\n    });\n    \n    return sSharedSelection;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _crashLogs=@[];\n    }\n    \n    return self;\n}\n\n#pragma mark - NSObject\n\n- (NSUInteger)hash\n{\n    return self.source.name.hash;\n}\n\n- (BOOL)isEqual:(CUICrashLogsSelection *)inOtherSelection\n{\n    return (self.source==inOtherSelection.source && [self.crashLogs isEqualToArray:inOtherSelection.crashLogs]==YES);\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(NSZone *)zone\n{\n    CUICrashLogsSelection * nSelection=[CUICrashLogsSelection new];\n    \n    nSelection.source=self.source;\n    \n    nSelection.crashLogs=[self.crashLogs copy];\n    \n    return nSelection;\n}\n\n#pragma mark -\n\n- (void)setSource:(CUICrashLogsSource *)inSource crashLogs:(NSArray *)inCrashLogs\n{\n    if (_source==inSource && _crashLogs==inCrashLogs)\n        return;\n    \n    _source=inSource;\n    _crashLogs=inCrashLogs;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogsSelectionDidChangeNotification object:self];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSource+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource.h\"\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogsSource (UI)\n\n- (NSImage *)icon;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSource+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource+UI.h\"\n\n@implementation CUICrashLogsSource (UI)\n\n- (NSImage *)icon\n{\n    NSImage * tImage=nil;\n    \n    switch(self.type)\n    {\n        case CUICrashLogsSourceTypeDirectory:\n            \n            tImage=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SidebarGenericFolder.icns\"];\n            break;\n            \n        case CUICrashLogsSourceTypeFile:\n            \n            tImage=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SidebarGenericFile.icns\"];\n            break;\n            \n        case CUICrashLogsSourceTypeSmart:\n            \n            tImage=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SidebarSmartFolder.icns\"];\n            break;\n            \n        default:\n            \n            break;\n    }\n    \n    [tImage setTemplate:YES];\n    \n    return tImage;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSource.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLog.h\"\n\nextern NSString * const CUICrashLogsSourceTypeKey;\n\nextern NSString * const CUICrashLogsSourceDidAddSourcesNotification;\n\nextern NSString * const CUICrashLogsSourceDidUpdateSourceNotification;\n\nextern NSString * const CUICrashLogsSourceDidRemoveSourcesNotification;\n\ntypedef NS_ENUM(NSUInteger, CUICrashLogsSourceType)\n{\n    CUICrashLogsSourceTypeUnknown,\n    CUICrashLogsSourceTypeAll,\n    CUICrashLogsSourceTypeStandardDirectory,\n    CUICrashLogsSourceTypeToday,\n    CUICrashLogsSourceTypeDirectory,\n    CUICrashLogsSourceTypeFile,\n    CUICrashLogsSourceTypeSmart,\n    CUICrashLogsSourceTypeSeparator\n};\n\n@interface CUICrashLogsSource : NSObject\n\n    @property (nonatomic,readonly) CUICrashLogsSourceType type;\n\n    @property (nonatomic,copy) NSString * name;\n\n    @property (nonatomic,copy) NSString * sourceDescription;\n\n    @property (nonatomic,readonly) NSArray * crashLogs;\n\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation;\n\n- (NSDictionary *)representation;\n\n- (BOOL)containsCrashLogForFileAtPath:(NSString *)inPath;\n\n- (id)crashLogForFileAtPath:(NSString *)inPath;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSource.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource.h\"\n\nNSString * const CUICrashLogsSourceTypeKey=@\"type\";\n\nNSString * const CUICrashLogsSourceNameKey=@\"name\";\n\nNSString * const CUICrashLogsSourceDescription=@\"description\";\n\n\nNSString * const CUICrashLogsSourceDidAddSourcesNotification=@\"CUICrashLogsSourcesDidAddSourcesNotification\";\n\nNSString * const CUICrashLogsSourceDidUpdateSourceNotification=@\"CUICrashLogsSourceDidUpdateSourceNotification\";\n\nNSString * const CUICrashLogsSourceDidRemoveSourcesNotification=@\"CUICrashLogsSourceDidRemoveSourcesNotification\";\n\n@implementation CUICrashLogsSource\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _name=@\"\";\n        \n        _sourceDescription=@\"\";\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    if ([inRepresentation isKindOfClass:NSDictionary.class]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSString * tString=inRepresentation[CUICrashLogsSourceNameKey];\n        \n        if (tString!=nil && [tString isKindOfClass:NSString.class]==NO)\n            return nil;\n        \n        _name=(tString!=nil) ? [tString copy] : @\"\";\n        \n        tString=inRepresentation[CUICrashLogsSourceDescription];\n        \n        if (tString!=nil && [tString isKindOfClass:NSString.class]==NO)\n            return nil;\n        \n        _sourceDescription=(tString!=nil) ? [tString copy] : @\"\";\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeUnknown;\n}\n\n- (NSArray *)crashLogs\n{\n    return nil;\n}\n\n- (NSDictionary *)representation\n{\n    return @{\n             CUICrashLogsSourceTypeKey:@(self.type),\n             CUICrashLogsSourceNameKey:self.name,\n             CUICrashLogsSourceDescription:self.sourceDescription\n             };\n}\n\n#pragma mark -\n\n- (BOOL)containsCrashLogForFileAtPath:(NSString *)inPath\n{\n    return ([self crashLogForFileAtPath:inPath]!=nil);\n}\n\n- (id)crashLogForFileAtPath:(NSString *)inPath\n{\n    for(CUIRawCrashLog * tCrashLog in self.crashLogs)\n    {\n        NSString * tCrashLogFilePath=tCrashLog.crashLogFilePath;\n        \n        if (tCrashLogFilePath==nil)\n            continue;\n        \n        if ([tCrashLogFilePath isEqualToString:inPath]==YES)\n            return tCrashLog;\n    }\n    \n    return nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceAll+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceAll.h\"\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogsSourceAll (UI)\n\n- (NSImage *)icon;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceAll+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceAll+UI.h\"\n\n@implementation CUICrashLogsSourceAll (UI)\n\n- (NSImage *)icon\n{\n    static NSImage * sIcon=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sIcon=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SidebarAllMyFiles.icns\"];\n        sIcon.template=YES;\n        \n    });\n    \n    return sIcon;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceAll.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource.h\"\n\n@interface CUICrashLogsSourceAll : CUICrashLogsSource\n\n+ (CUICrashLogsSourceAll *)crashLogsSourceAll;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceAll.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceAll.h\"\n\n@interface CUICrashLogsSourceAll ()\n{\n    NSMutableSet * _allSources;\n    \n    NSArray * _crashLogs;\n}\n\n// Notifications\n\n- (void)crashLogsSourceDidAddSources:(NSNotification *)inNotification;\n\n- (void)crashLogsSourceDidUpdateSource:(NSNotification *)inNotification;\n\n- (void)crashLogsSourceDidRemoveSources:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashLogsSourceAll\n\n+ (CUICrashLogsSourceAll *)crashLogsSourceAll\n{\n    static CUICrashLogsSourceAll * sCrashLogsSourceAll=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sCrashLogsSourceAll=[CUICrashLogsSourceAll new];\n    });\n    \n    return sCrashLogsSourceAll;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _allSources=[NSMutableSet set];\n        \n        _crashLogs=@[];\n        \n        // Register for notifications\n        \n        NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n        \n        [tNotificationCenter addObserver:self selector:@selector(crashLogsSourceDidAddSources:) name:CUICrashLogsSourceDidAddSourcesNotification object:nil];\n        [tNotificationCenter addObserver:self selector:@selector(crashLogsSourceDidUpdateSource:) name:CUICrashLogsSourceDidUpdateSourceNotification object:nil];\n        [tNotificationCenter addObserver:self selector:@selector(crashLogsSourceDidRemoveSources:) name:CUICrashLogsSourceDidRemoveSourcesNotification object:nil];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeAll;\n}\n\n- (NSString *)name\n{\n    return NSLocalizedString(@\"All\",@\"\");\n}\n\n- (NSString *)sourceDescription\n{\n    return NSLocalizedString(@\"All reports from all sources\", @\"\");\n}\n\n- (NSArray *)crashLogs\n{\n    if (_crashLogs==nil)\n    {\n        NSMutableArray * tMutableArray=[NSMutableArray array];\n        \n        [_allSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, BOOL * bOutStop) {\n            \n            NSArray * tLogs=bSource.crashLogs;\n            \n            [tMutableArray addObjectsFromArray:tLogs];\n            \n        }];\n        \n        _crashLogs=[tMutableArray copy];\n    }\n    \n    return _crashLogs;\n}\n\n#pragma mark -\n\n- (void)refresh\n{\n    _crashLogs=nil;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogsSourceDidUpdateSourceNotification object:self];\n}\n\n\n\n#pragma mark - Notifications\n\n- (void)crashLogsSourceDidAddSources:(NSNotification *)inNotification\n{\n    NSArray * tSources=inNotification.object;\n    \n    if ([tSources isKindOfClass:[NSArray class]]==NO)\n        return;\n    \n    __block NSUInteger tNewCrashLogs=0;\n    \n    [tSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n       \n        if ([bSource isKindOfClass:[CUICrashLogsSource class]]==NO)\n            return;\n        \n        if (bSource.type==CUICrashLogsSourceTypeSmart)\n            return;\n        \n        [self->_allSources addObject:bSource];\n        \n        tNewCrashLogs+=bSource.crashLogs.count;\n        \n    }];\n    \n    if (tNewCrashLogs>0)\n        [self refresh];\n}\n\n- (void)crashLogsSourceDidUpdateSource:(NSNotification *)inNotification\n{\n    CUICrashLogsSource * tSource=(CUICrashLogsSource *)inNotification.object;\n    \n    switch(tSource.type)\n    {\n        case CUICrashLogsSourceTypeAll:\n        case CUICrashLogsSourceTypeSmart:\n            \n            return;\n            \n        default:\n            \n            break;\n    }\n    \n    if ([tSource isKindOfClass:[CUICrashLogsSource class]]==NO)\n        return;\n    \n    if (tSource.type==CUICrashLogsSourceTypeSmart)\n        return;\n    \n    if ([_allSources containsObject:tSource]==NO)\n        return;\n    \n     [self refresh];\n}\n\n- (void)crashLogsSourceDidRemoveSources:(NSNotification *)inNotification\n{\n    NSArray * tSources=inNotification.object;\n    \n    if ([tSources isKindOfClass:[NSArray class]]==NO)\n        return;\n    \n    __block NSUInteger tRemovedCrashLogs=0;\n    \n    [tSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if ([bSource isKindOfClass:[CUICrashLogsSource class]]==NO)\n            return;\n        \n        if (bSource.type==CUICrashLogsSourceTypeSmart)\n            return;\n        \n        [self->_allSources removeObject:bSource];\n        \n        tRemovedCrashLogs+=bSource.crashLogs.count;\n        \n    }];\n    \n    if (tRemovedCrashLogs>0)\n        [self refresh];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceDirectory.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceFileSystemItem.h\"\n\n@interface CUICrashLogsSourceDirectory : CUICrashLogsSourceFileSystemItem\n\n- (instancetype)initWithContentsOfFileSystemItemAtPath:(NSString *)inPath collectRetired:(BOOL)inCollectRetired error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceDirectory.m",
    "content": "/*\n Copyright (c) 2020-2025 Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceDirectory.h\"\n\n#import \"CUICrashLogsProvider.h\"\n\nvoid mycallback(\n                 ConstFSEventStreamRef streamRef,\n                 void *clientCallBackInfo,\n                 size_t numEvents,\n                 void * eventPaths,\n                 const FSEventStreamEventFlags eventFlags[],\n                const FSEventStreamEventId eventIds[]);\n\n@interface CUICrashLogsSourceDirectory ()\n{\n    NSArray * _crashLogs;\n    \n    FSEventStreamRef _eventStreamRef;\n    \n    BOOL _collectRetired;\n}\n\n- (void)handleFileSystemEventIDs:(const FSEventStreamEventId[])inEventIDs paths:(NSArray *)inEventsPaths flags:(const FSEventStreamEventFlags[])inFlags;\n\n@end\n\n@implementation CUICrashLogsSourceDirectory\n\n- (BOOL)initCommonWithError:(NSError **)outError\n{\n    NSArray * tCrashLogs=[[CUICrashLogsProvider defaultProvider] crashLogsForDirectory:self.path options:(_collectRetired==YES) ? CUICrashLogsProviderCollectRetired : 0 error:outError];\n    \n    if (tCrashLogs==nil)\n        return NO;\n    \n    _crashLogs=tCrashLogs;\n    \n    NSArray * tMonitoredPaths=nil;\n    \n    if (_collectRetired == YES)\n    {\n        tMonitoredPaths=@[self.path, [self.path stringByAppendingPathComponent:CUIRetiredPathComponent]];\n    }\n    else\n    {\n        tMonitoredPaths=@[self.path];\n    }\n    \n    FSEventStreamContext context;\n    context.info = (__bridge void *)self;     // !!!\n    context.version = 0;\n    context.retain = NULL;\n    context.release = NULL;\n    context.copyDescription = NULL;\n    \n    CFAbsoluteTime latency = 3.0; /* Latency in seconds */\n    \n    /* Create the stream, passing in a callback */\n    _eventStreamRef = FSEventStreamCreate(kCFAllocatorDefault,&mycallback,&context,(__bridge CFArrayRef)tMonitoredPaths,kFSEventStreamEventIdSinceNow,latency,kFSEventStreamCreateFlagWatchRoot+kFSEventStreamCreateFlagUseCFTypes);\n    \n    FSEventStreamScheduleWithRunLoop(_eventStreamRef, CFRunLoopGetCurrent(),kCFRunLoopDefaultMode);\n    \n    FSEventStreamStart(_eventStreamRef);\n    \n    return YES;\n}\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    self=[super initWithRepresentation:inRepresentation];\n    \n    if (self!=nil)\n    {\n        if ([self initCommonWithError:NULL]==NO)\n            return nil;\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithContentsOfFileSystemItemAtPath:(NSString *)inPath error:(NSError **)outError\n{\n    self = [super initWithContentsOfFileSystemItemAtPath:inPath error:outError];\n    \n    if (self!=nil)\n    {\n        if ([self initCommonWithError:NULL]==NO)\n            return nil;\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithContentsOfFileSystemItemAtPath:(NSString *)inPath collectRetired:(BOOL)inCollectRetired error:(NSError **)outError\n{\n    self=[super initWithContentsOfFileSystemItemAtPath:inPath error:outError];\n    \n    if (self!=nil)\n    {\n        _collectRetired=inCollectRetired;\n        \n        if ([self initCommonWithError:outError]==NO)\n            return nil;\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    if (_eventStreamRef!=NULL)\n    {\n        FSEventStreamStop(_eventStreamRef);\n        FSEventStreamInvalidate(_eventStreamRef);\n    \n        FSEventStreamRelease(_eventStreamRef);\n    }\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeDirectory;\n}\n\n- (NSString *)name\n{\n    return self.path.lastPathComponent;\n}\n\n- (NSArray *)crashLogs\n{\n    return _crashLogs;\n}\n\n#pragma mark -\n\n- (BOOL)containsCrashLogsFileAtPath:(NSString *)inPath\n{\n    if ([inPath rangeOfString:self.path options:NSCaseInsensitiveSearch].location!=0)\n        return NO;\n    \n    for(CUIRawCrashLog * tCrashLog in self.crashLogs)\n    {\n        NSString * tCrashLogFilePath=tCrashLog.crashLogFilePath;\n        \n        if (tCrashLogFilePath==nil)\n            continue;\n        \n        if ([tCrashLogFilePath isEqualToString:inPath]==YES)\n            return YES;\n    }\n    \n    return NO;\n}\n\n#pragma mark -\n\n- (void)handleFileSystemEventIDs:(const FSEventStreamEventId[])inEventIDs paths:(NSArray *)inEventsPaths flags:(const FSEventStreamEventFlags[])inFlags\n{\n    // Check if the directory stil exists\n    \n    if ((inFlags[0] & kFSEventStreamEventFlagRootChanged)==kFSEventStreamEventFlagRootChanged)\n    {\n        // A COMPLETER\n        \n        /*BOOL tIsDirectory;\n         \n         if ([[NSFileManager defaultManager] fileExistsAtPath:_directoryPath isDirectory:&tIsDirectory]==NO || tIsDirectory==NO)\n         {\n         // A COMPLETER\n         \n         return;\n         }*/\n        \n        _crashLogs=[[CUICrashLogsProvider defaultProvider] crashLogsForDirectory:self.path options:(_collectRetired==YES) ? CUICrashLogsProviderCollectRetired : 0 error:NULL];\n    }\n    else\n    {\n        // Refresh the list of crash logs\n    \n        NSArray * tCrashLogs=[[CUICrashLogsProvider defaultProvider] crashLogsForDirectory:self.path options:(_collectRetired==YES) ? CUICrashLogsProviderCollectRetired : 0 error:NULL];\n        \n        if (tCrashLogs==nil)\n            return;\n        \n        _crashLogs=tCrashLogs;\n    }\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogsSourceDidUpdateSourceNotification object:self];\n}\n\n@end\n\nvoid mycallback(ConstFSEventStreamRef streamRef,void * inInfo,size_t inNumEvent,void * inEventPaths,const FSEventStreamEventFlags inEventFlags[],const FSEventStreamEventId inEventIDs[])\n{\n    NSArray * tEventPaths=(__bridge NSArray *)inEventPaths;\n    \n    CUICrashLogsSourceDirectory * tSourceDirectory=(__bridge CUICrashLogsSourceDirectory *)inInfo;\n    \n    [tSourceDirectory handleFileSystemEventIDs:inEventIDs paths:tEventPaths flags:inEventFlags];\n}\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceFile.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceFileSystemItem.h\"\n\n@interface CUICrashLogsSourceFile : CUICrashLogsSourceFileSystemItem\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceFile.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceFile.h\"\n\n#import \"CUICrashLogsProvider.h\"\n\n@interface CUICrashLogsSourceFile ()\n{\n    NSArray * _crashLogs;\n}\n\n@end\n\n@implementation CUICrashLogsSourceFile\n\n- (BOOL)initCommonWithError:(NSError **)outError\n{\n    id tCrashLog=[[CUICrashLogsProvider defaultProvider] crashLogWithContentsOfFile:self.path error:outError];\n    \n    if (tCrashLog==nil)\n        return NO;\n    \n    _crashLogs=@[tCrashLog];\n    \n    return YES;\n}\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    self=[super initWithRepresentation:inRepresentation];\n    \n    if (self!=nil)\n    {\n        if ([self initCommonWithError:NULL]==NO)\n            return nil;\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithContentsOfFileSystemItemAtPath:(NSString *)inPath error:(NSError **)outError\n{\n    self=[super initWithContentsOfFileSystemItemAtPath:inPath error:outError];\n    \n    if (self!=nil)\n    {\n        if ([self initCommonWithError:outError]==NO)\n            return nil;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeFile;\n}\n\n- (NSString *)name\n{\n    return self.path.lastPathComponent.stringByDeletingPathExtension;\n}\n\n- (NSArray *)crashLogs\n{\n    return _crashLogs;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceFileSystemItem.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource.h\"\n\n@interface CUICrashLogsSourceFileSystemItem : CUICrashLogsSource\n\n    @property (readonly,copy) NSString * path;\n\n- (instancetype)initWithContentsOfFileSystemItemAtPath:(NSString *)inPath error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceFileSystemItem.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceFileSystemItem.h\"\n\nNSString * const CUICrashLogSourcePathKey=@\"path\";\n\n@interface CUICrashLogsSourceFileSystemItem ()\n\n    @property (copy) NSString * path;\n\n@end\n\n@implementation CUICrashLogsSourceFileSystemItem\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    self=[super initWithRepresentation:inRepresentation];\n    \n    if (self!=nil)\n    {\n        NSString * tString=inRepresentation[CUICrashLogSourcePathKey];\n        \n        if ([tString isKindOfClass:NSString.class]==NO)\n            return nil;\n        \n        if (tString.length==0)\n            return nil;\n        \n        _path=[tString copy];\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithContentsOfFileSystemItemAtPath:(NSString *)inPath error:(NSError **)outError\n{\n    if ([inPath isKindOfClass:NSString.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _path=[inPath copy];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)sourceDescription\n{\n    return (self.path!=nil) ? self.path : @\"\";\n}\n\n- (NSDictionary *)representation\n{\n    NSMutableDictionary * tMutableDictionary=[[super representation] mutableCopy];\n    \n    tMutableDictionary[CUICrashLogSourcePathKey]=self.path;\n    \n    return [tMutableDictionary copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceSeparator.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource.h\"\n\n@interface CUICrashLogsSourceSeparator : CUICrashLogsSource\n\n+ (CUICrashLogsSourceSeparator *)separator;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceSeparator.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceSeparator.h\"\n\n@implementation CUICrashLogsSourceSeparator\n\n+ (CUICrashLogsSourceSeparator *)separator\n{\n    static CUICrashLogsSourceSeparator * sSeparator=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSeparator=[CUICrashLogsSourceSeparator new];\n    });\n    \n    return sSeparator;\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeSeparator;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceSmart.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSource.h\"\n\n@interface CUICrashLogsSourceSmart : CUICrashLogsSource\n\n    @property (readonly) NSUInteger version;\n\n    @property (nonatomic) NSPredicate * predicate;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceSmart.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceSmart.h\"\n\n#import \"CUICrashLogsSourceAll.h\"\n\n#define SMARTSOURCE_VERSION_1       1\n#define SMARTSOURCE_VERSION_2       2\n\n#define SMARTSOURCE_CURRENTVERSION  SMARTSOURCE_VERSION_2\n#define SMARTSOURCE_MAXIMUMSUPPORTEDVERSION  SMARTSOURCE_VERSION_2\n\nNSString * const CUICrashLogsSourcesSmartVersionKey=@\"version\";\n\nNSString * const CUICrashLogsSourcesSmartPredicateKey=@\"predicate\";\n\n@interface CUICrashLogsSourceSmart ()\n{\n    NSArray * _filteredCrashLogs;\n}\n\n    @property NSUInteger version;\n\n- (void)sourceAllDidUpdateSource:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashLogsSourceSmart\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(sourceAllDidUpdateSource:) name:CUICrashLogsSourceDidUpdateSourceNotification object:[CUICrashLogsSourceAll crashLogsSourceAll]];\n        \n        self.name=NSLocalizedString(@\"Untitled source\", @\"\");\n        \n        _version=SMARTSOURCE_CURRENTVERSION;\n        \n        _predicate=[NSPredicate predicateWithFormat:@\"processName = \\\"MyApplication\\\"\"];\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    self=[super initWithRepresentation:inRepresentation];\n    \n    if (self!=nil)\n    {\n        [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(sourceAllDidUpdateSource:) name:CUICrashLogsSourceDidUpdateSourceNotification object:[CUICrashLogsSourceAll crashLogsSourceAll]];\n        \n        NSNumber * tNumber=inRepresentation[CUICrashLogsSourcesSmartVersionKey];\n        \n        if (tNumber!=nil)\n        {\n            if ([tNumber isKindOfClass:NSNumber.class]==NO)\n                return nil;\n            \n            _version=tNumber.unsignedIntegerValue;\n        }\n        else\n        {\n            _version=SMARTSOURCE_VERSION_1;\n        }\n        \n        if (_version>SMARTSOURCE_MAXIMUMSUPPORTEDVERSION)\n        {\n            NSLog(@\"Smart Source object version (%lu) is not supported by this version of Unexpectedly\",(unsigned long)_version);\n            \n            return nil;\n        }\n        \n        NSString * tString=inRepresentation[CUICrashLogsSourcesSmartPredicateKey];\n        \n        if ([tString isKindOfClass:NSString.class]==NO)\n            return nil;\n        \n        self.predicate=[NSPredicate predicateWithFormat:tString];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeSmart;\n}\n\n- (NSArray *)crashLogs\n{\n    return _filteredCrashLogs;\n}\n\n- (void)setPredicate:(NSPredicate *)inPredicate\n{\n    if (_predicate==inPredicate)\n        return;\n    \n    _predicate=inPredicate;\n    \n    [self sourceAllDidUpdateSource:[NSNotification notificationWithName:CUICrashLogsSourceDidUpdateSourceNotification object:[CUICrashLogsSourceAll crashLogsSourceAll]]];\n}\n\n- (NSDictionary *)representation\n{\n    NSMutableDictionary * tMutableDictionary=[[super representation] mutableCopy];\n    \n    tMutableDictionary[CUICrashLogsSourcesSmartVersionKey]=@(self.version);\n    \n    tMutableDictionary[CUICrashLogsSourcesSmartPredicateKey]=self.predicate.predicateFormat;\n    \n    return [tMutableDictionary copy];\n}\n\n\n#pragma mark - Notifications\n\n- (void)sourceAllDidUpdateSource:(NSNotification *)inNotification\n{\n    _filteredCrashLogs=[[CUICrashLogsSourceAll crashLogsSourceAll].crashLogs filteredArrayUsingPredicate:self.predicate];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogsSourceDidUpdateSourceNotification object:self];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceSmartEditorPanel.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLogsSourceSmart.h\"\n\n@interface CUICrashLogsSourceSmartEditorPanel : NSPanel\n\n    @property (nonatomic) CUICrashLogsSourceSmart * source;\n\n    @property (nonatomic) NSString * prompt;\n\n+ (CUICrashLogsSourceSmartEditorPanel *)crashLogsSourceSmartEditorPanel;\n\n- (void)beginSheetModalForWindow:(NSWindow *)inWindow completionHandler:(void (^)(NSModalResponse response))handler;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceSmartEditorPanel.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceSmartEditorPanel.h\"\n\n#import \"CUICrashLogsSourcesManager.h\"\n\n#include <mach/exception_types.h>\n\n@interface CUICrashLogsSourceSmartEditorWindowController : NSWindowController\n{\n    IBOutlet NSTextField * _nameTextField;\n    \n    IBOutlet NSTextField * _descriptionTextField;\n    \n    IBOutlet NSPredicateEditor * _predicatorEditor;\n    \n    IBOutlet NSButton * _defaultButton;\n}\n\n@property (nonatomic) CUICrashLogsSourceSmart * source;\n\n@property (nonatomic,copy) NSString * prompt;\n\n- (IBAction)endDialog:(id)sender;\n\n@end\n\n@implementation CUICrashLogsSourceSmartEditorWindowController\n\n- (NSString *)windowNibName\n{\n    return @\"CUICrashLogsSourceSmartEditorWindowController\";\n}\n\n- (void)windowDidLoad\n{\n    [super windowDidLoad];\n    \n    // Row Template 1\n    \n    NSArray *keyPaths = @[[NSExpression expressionForKeyPath:@\"processName\"],\n                          [NSExpression expressionForKeyPath:@\"header.bundleIdentifier\"],\n                          [NSExpression expressionForKeyPath:@\"header.executablePath\"],\n                          [NSExpression expressionForKeyPath:@\"header.executableVersion\"],\n                          [NSExpression expressionForKeyPath:@\"exceptionInformation.crashedThreadName\"],\n                          [NSExpression expressionForKeyPath:@\"header.operatingSystemVersion.stringValue\"]];\n    \n    NSPredicateEditorRowTemplate * tRowTemplate1 = [[NSPredicateEditorRowTemplate alloc] initWithLeftExpressions:keyPaths\n                                                                                    rightExpressionAttributeType:NSStringAttributeType\n                                                                                                        modifier:NSDirectPredicateModifier\n                                                                                                       operators:@[@(NSEqualToPredicateOperatorType),\n                                                                                                                   @(NSNotEqualToPredicateOperatorType),\n                                                                                                                   @(NSBeginsWithPredicateOperatorType),\n                                                                                                                   @(NSEndsWithPredicateOperatorType),\n                                                                                                                   @(NSContainsPredicateOperatorType)]\n                                                                                                         options:(NSCaseInsensitivePredicateOption |\n                                                                                                                  NSDiacriticInsensitivePredicateOption)];\n    \n    // Row Template 2\n    \n    NSPredicateEditorRowTemplate * tRowTemplate2 = [[NSPredicateEditorRowTemplate alloc] initWithLeftExpressions:@[[NSExpression expressionForKeyPath:@\"dateTime\"]]\n                                                                                    rightExpressionAttributeType:NSDateAttributeType\n                                                                                                        modifier:NSDirectPredicateModifier\n                                                                                                       operators:@[@(NSLessThanOrEqualToPredicateOperatorType),\n                                                                                                                   @(NSGreaterThanOrEqualToPredicateOperatorType),\n                                                                                                                   ]\n                                                                                                         options:(NSCaseInsensitivePredicateOption |\n                                                                                                                  NSDiacriticInsensitivePredicateOption)];\n    \n    // Row Template 3\n    \n    NSPredicateEditorRowTemplate * tRowTemplate3 = [[NSPredicateEditorRowTemplate alloc] initWithLeftExpressions:@[[NSExpression expressionForKeyPath:@\"exceptionType\"]]\n                                                                                                rightExpressions:@[[NSExpression expressionForConstantValue:@\"EXC_ARITHMETIC\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_BAD_ACCESS\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_BAD_INSTRUCTION\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_BREAKPOINT\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_CORPSE_NOTIFY\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_CRASH\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_EMULATION\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_GUARD\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_MACH_SYSCALL\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_RESOURCE\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_RPC_ALERT\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_SOFTWARE\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"EXC_SYSCALL\"]]\n                                                                                                        modifier:NSDirectPredicateModifier\n                                                                                                       operators:@[@(NSEqualToPredicateOperatorType)]\n                                                                                                         options:(NSCaseInsensitivePredicateOption |\n                                                                                                                  NSDiacriticInsensitivePredicateOption)];\n    \n    // Row Template 4\n    \n    NSPredicateEditorRowTemplate * tRowTemplate4 = [[NSPredicateEditorRowTemplate alloc] initWithLeftExpressions:@[[NSExpression expressionForKeyPath:@\"exceptionSignal\"]]\n                                                                                                rightExpressions:@[[NSExpression expressionForConstantValue:@\"SIGABRT\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"SIGBUS\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"SIGILL\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"SIGKILL\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"SIGQUIT\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"SIGSEGV\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"SIGTRAP\"],\n                                                                                                                   [NSExpression expressionForConstantValue:@\"Code Signature Invalid\"],\n                                                                                                                   ]\n                                                                                                        modifier:NSDirectPredicateModifier\n                                                                                                       operators:@[@(NSEqualToPredicateOperatorType)]\n                                                                                                         options:(NSCaseInsensitivePredicateOption |\n                                                                                                                  NSDiacriticInsensitivePredicateOption)];\n    \n    // Row Template 5\n    \n    keyPaths = @[[NSExpression expressionForKeyPath:@\"crashLogFileName\"]];\n    \n    NSPredicateEditorRowTemplate * tRowTemplate5 = [[NSPredicateEditorRowTemplate alloc] initWithLeftExpressions:keyPaths\n                                                                                    rightExpressionAttributeType:NSStringAttributeType\n                                                                                                        modifier:NSDirectPredicateModifier\n                                                                                                       operators:@[@(NSEqualToPredicateOperatorType),\n                                                                                                                   @(NSNotEqualToPredicateOperatorType),\n                                                                                                                   @(NSBeginsWithPredicateOperatorType),\n                                                                                                                   @(NSEndsWithPredicateOperatorType),\n                                                                                                                   @(NSContainsPredicateOperatorType)]\n                                                                                                         options:(NSCaseInsensitivePredicateOption |\n                                                                                                                  NSDiacriticInsensitivePredicateOption)];\n    \n    // Row Template 6\n    \n    NSPredicateEditorRowTemplate * tRowTemplate6 = [[NSPredicateEditorRowTemplate alloc] initWithLeftExpressions:@[[NSExpression expressionForKeyPath:@\"reportSourceTypeNumber\"]]\n                                                                                                rightExpressions:@[[NSExpression expressionForConstantValue:@(CUICrashLogReportSourceTypeUser)],\n                                                                                                                   [NSExpression expressionForConstantValue:@(CUICrashLogReportSourceTypeSystem)],\n                                                                                                                   [NSExpression expressionForConstantValue:@(CUICrashLogReportSourceTypeOther)]]\n                                                                                                        modifier:NSDirectPredicateModifier\n                                                                                                       operators:@[@(NSEqualToPredicateOperatorType)]\n                                                                                                         options:(NSCaseInsensitivePredicateOption |\n                                                                                                                  NSDiacriticInsensitivePredicateOption)];\n    \n    \n    \n    \n    NSArray *compoundTypes = @[@(NSAndPredicateType),\n                               @(NSOrPredicateType)];\n    \n    NSPredicateEditorRowTemplate * tRowTemplateCompound = [[NSPredicateEditorRowTemplate alloc] initWithCompoundTypes:compoundTypes];\n    \n    _predicatorEditor.rowTemplates=@[tRowTemplate1, tRowTemplate2,tRowTemplate3,tRowTemplate4,tRowTemplate5,tRowTemplate6,tRowTemplateCompound];\n    \n    \n    // Default button\n    \n    if (self.prompt!=nil)\n    {\n        NSRect tButtonFrame=_defaultButton.frame;\n        \n        _defaultButton.title=self.prompt;\n        \n        [_defaultButton sizeToFit];\n        \n        CGFloat tWidth=NSWidth(_defaultButton.frame);\n        \n        if (tWidth<CUIAppkitMinimumPushButtonWidth)\n            tWidth=CUIAppkitMinimumPushButtonWidth;\n        \n        tButtonFrame.origin.x=NSMaxX(tButtonFrame)-tWidth;\n        tButtonFrame.size.width=tWidth;\n        \n        _defaultButton.frame=tButtonFrame;\n    }\n    \n    _nameTextField.stringValue=(self.source.name!=nil) ? self.source.name : @\"\";\n    \n    _descriptionTextField.stringValue=(self.source.sourceDescription!=nil) ? self.source.sourceDescription : @\"\";\n    \n    [_predicatorEditor setObjectValue:self.source.predicate];\n}\n\n#pragma mark -\n\n- (void)setSource:(CUICrashLogsSourceSmart *)inSource\n{\n    if (_source==inSource)\n        return;\n    \n    _source=inSource;\n    \n    _nameTextField.stringValue=(inSource.name!=nil) ? inSource.name : @\"\";\n    \n    _descriptionTextField.stringValue=(inSource.sourceDescription!=nil) ? inSource.sourceDescription : @\"\";\n    \n    [_predicatorEditor setObjectValue:inSource.predicate];\n}\n\n- (void)setPrompt:(NSString *)inPrompt\n{\n    _prompt=[inPrompt copy];\n    \n    if (_defaultButton!=nil && _prompt!=nil)\n    {\n        NSRect tButtonFrame=_defaultButton.frame;\n        \n        _defaultButton.title=_prompt;\n        \n        [_defaultButton sizeToFit];\n        \n        CGFloat tWidth=NSWidth(_defaultButton.frame);\n        \n        if (tWidth<CUIAppkitMinimumPushButtonWidth)\n            tWidth=CUIAppkitMinimumPushButtonWidth;\n        \n        tButtonFrame.origin.x=NSMaxX(tButtonFrame)-tWidth;\n        tButtonFrame.size.width=tWidth;\n        \n        _defaultButton.frame=tButtonFrame;\n    }\n}\n\n#pragma mark -\n\n- (IBAction)endDialog:(NSButton *)sender\n{\n    if (sender.tag==NSModalResponseOK)\n    {\n        NSString * tNewName=_nameTextField.stringValue;\n        \n        // Do not allow empty names\n        \n        if (tNewName.length==0)\n        {\n            NSBeep();\n            \n            _nameTextField.stringValue=_source.name;\n            \n            return;\n        }\n        \n        // Do not allow a name that is already used\n        \n        NSMutableArray * tExistingSmartSources=[[[CUICrashLogsSourcesManager sharedManager] sourcesOfType:CUICrashLogsSourceTypeSmart] mutableCopy];\n        \n        [tExistingSmartSources removeObject:_source];\n        \n        for(CUICrashLogsSourceSmart * tSmartSource in tExistingSmartSources)\n        {\n            if ([tSmartSource.name isEqualToString:tNewName]==YES)\n            {\n                NSAlert * tAlert=[NSAlert new];\n                tAlert.alertStyle=NSAlertStyleCritical;\n                tAlert.messageText=[NSString stringWithFormat:NSLocalizedString(@\"The name \\\"%@\\\" is already taken.\",@\"\"),tNewName];\n                tAlert.informativeText=NSLocalizedString(@\"Please choose a different name.\",@\"\");\n                \n                [tAlert runModal];\n                \n                return;\n            }\n        }\n        \n        _source.name=tNewName;\n        \n        _source.sourceDescription=_descriptionTextField.stringValue;\n        \n        _source.predicate=_predicatorEditor.objectValue;\n    }\n    \n    [NSApp endSheet:self.window returnCode:sender.tag];\n}\n\n@end\n\n@interface CUICrashLogsSourceSmartEditorPanel ()\n{\n    CUICrashLogsSourceSmartEditorWindowController * retainedWindowController;\n}\n\n- (void)_sheetDidEndSelector:(NSWindow *)inWindow returnCode:(NSInteger)inReturnCode contextInfo:(void *)contextInfo;\n\n@end\n\n@implementation CUICrashLogsSourceSmartEditorPanel\n\n+ (CUICrashLogsSourceSmartEditorPanel *)crashLogsSourceSmartEditorPanel\n{\n    CUICrashLogsSourceSmartEditorWindowController * tWindowController=[CUICrashLogsSourceSmartEditorWindowController new];\n    \n    CUICrashLogsSourceSmartEditorPanel * tPanel=(CUICrashLogsSourceSmartEditorPanel *)tWindowController.window;\n    tPanel->retainedWindowController=tWindowController;\n    \n    return tPanel;\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceSmart *)source\n{\n    return retainedWindowController.source;\n}\n\n- (void)setSource:(CUICrashLogsSourceSmart *)inSource\n{\n    retainedWindowController.source=inSource;\n}\n\n- (NSString *)prompt\n{\n    return retainedWindowController.prompt;\n}\n\n- (void)setPrompt:(NSString *)inPrompt\n{\n    retainedWindowController.prompt=inPrompt;\n}\n\n#pragma mark -\n\n- (void)_sheetDidEndSelector:(CUICrashLogsSourceSmartEditorPanel *)inPanel returnCode:(NSInteger)inReturnCode contextInfo:(void *)contextInfo\n{\n    void(^handler)(NSInteger) = (__bridge_transfer void(^)(NSInteger)) contextInfo;\n    \n    if (handler!=nil)\n        handler(inReturnCode);\n    \n    inPanel->retainedWindowController=nil;\n    \n    [inPanel orderOut:self];\n}\n\n- (void)beginSheetModalForWindow:(NSWindow *)inWindow completionHandler:(void (^)(NSModalResponse bResponse))handler\n{\n    [inWindow beginSheet:self completionHandler:^(NSModalResponse bResponse) {\n        \n        if (handler!=nil)\n            handler(bResponse);\n        \n        self->retainedWindowController=nil;\n    }];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceStandardDirectory+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceStandardDirectory.h\"\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogsSourceStandardDirectory (UI)\n\n- (NSImage *)icon;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceStandardDirectory+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceStandardDirectory+UI.h\"\n\n@implementation CUICrashLogsSourceStandardDirectory (UI)\n\n- (NSImage *)icon\n{\n    NSImage * tImage=nil;\n    \n    switch(self.domainMask)\n    {\n        case NSUserDomainMask:\n            \n            tImage=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SideBarHomeFolder.icns\"];\n            break;\n            \n        case NSLocalDomainMask:\n            \n            tImage=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/SidebarGenericFolder.icns\"];\n            break;\n            \n        default:\n            \n            break;\n    }\n    \n    [tImage setTemplate:YES];\n    \n    return tImage;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceStandardDirectory.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceDirectory.h\"\n\n@interface CUICrashLogsSourceStandardDirectory : CUICrashLogsSourceDirectory\n\n    @property (readonly) NSSearchPathDomainMask domainMask;\n\n+ (CUICrashLogsSourceStandardDirectory *)sourceDiagnosticReportsInDomain:(NSSearchPathDomainMask)inDomainMask error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceStandardDirectory.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceStandardDirectory.h\"\n\n#import \"CUICrashLogsProvider.h\"\n\n@interface CUICrashLogsSourceStandardDirectory ()\n\n@property NSSearchPathDomainMask domainMask;\n\n@end\n\n@implementation CUICrashLogsSourceStandardDirectory\n\n+ (CUICrashLogsSourceStandardDirectory *)sourceDiagnosticReportsInDomain:(NSSearchPathDomainMask)inDomainMask error:(NSError **)outError\n{\n    NSArray * tArray=NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, inDomainMask, YES);\n    \n    NSString * tPath=[tArray.firstObject stringByAppendingPathComponent:@\"Logs/DiagnosticReports\"];\n    \n    CUICrashLogsSourceStandardDirectory * tSource=[[CUICrashLogsSourceStandardDirectory alloc] initWithContentsOfFileSystemItemAtPath:tPath collectRetired:YES error:outError];\n    \n    if (tSource!=nil)\n    {\n        tSource.domainMask=inDomainMask;\n    }\n    \n    return tSource;\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeStandardDirectory;\n}\n\n- (NSString *)name\n{\n    switch(self.domainMask)\n    {\n        case NSUserDomainMask:\n            \n            return NSLocalizedString(@\"User Reports\", @\"\");\n            \n        case NSLocalDomainMask:\n            \n            return NSLocalizedString(@\"System Reports\", @\"\");\n            \n        default:\n            \n            break;\n    }\n    \n    return @\"Unknown domain\";\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceTableCellView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogsSourceTableCellView : NSTableCellView\n\n@property (assign) IBOutlet NSTextField * countTextField;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceTableCellView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceTableCellView.h\"\n\n@implementation CUICrashLogsSourceTableCellView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceToday+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceToday.h\"\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUICrashLogsSourceToday (UI)\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceToday+UI.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceToday+UI.h\"\n\n@implementation CUICrashLogsSourceToday (UI)\n\n- (NSImage *)icon\n{\n    static NSImage * sIcon=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sIcon=[NSImage imageNamed:@\"sidebar_recents_Template\"];\n        sIcon.template=YES;\n        \n    });\n    \n    return sIcon;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceToday.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceSmart.h\"\n\n@interface CUICrashLogsSourceToday : CUICrashLogsSourceSmart\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourceToday.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourceToday.h\"\n\n#import \"CUICrashLogsSourceAll.h\"\n\n@interface CUICrashLogsSourceSmart ()\n\n- (void)sourceAllDidUpdateSource:(NSNotification *)inNotification;\n\n@end\n\n@interface CUICrashLogsSourceToday ()\n{\n    NSTimer * _timer;\n}\n\n@end\n\n@implementation CUICrashLogsSourceToday\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        self.predicate=[NSPredicate predicateWithFormat:@\"numberOfHoursSinceCrash <= 24\"];\n        \n        _timer=[NSTimer scheduledTimerWithTimeInterval:60*60 repeats:YES block:^(NSTimer * _Nonnull timer) {\n            \n            NSNotification * tNotification=[NSNotification notificationWithName:CUICrashLogsSourceDidUpdateSourceNotification\n                                                                         object:[CUICrashLogsSourceAll crashLogsSourceAll]];\n            \n            [self sourceAllDidUpdateSource:tNotification];\n        }];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [_timer invalidate];\n    _timer=nil;\n}\n\n#pragma mark -\n\n- (CUICrashLogsSourceType)type\n{\n    return CUICrashLogsSourceTypeToday;\n}\n\n- (NSString *)name\n{\n    return NSLocalizedString(@\"Recents\",@\"\");\n}\n\n- (NSString *)sourceDescription\n{\n    return NSLocalizedString(@\"Reports from the last 24 hours\",@\"\");\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourcesManager.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLogsSource.h\"\n\nextern NSString * const CUICrashLogsSourcesManagerSourcesDidChangeNotification;\n\n@interface CUICrashLogsSourcesManager : NSObject\n\n    @property (readonly) NSArray * allSources;\n\n+ (CUICrashLogsSourcesManager *)sharedManager;\n\n- (NSArray *)sourcesOfType:(CUICrashLogsSourceType)inType;\n\n- (NSArray *)sourcesOfTypes:(NSSet *)inTypes;\n\n- (void)synchronizeDefaults;\n\n- (void)addSources:(NSArray *)inSources;\n\n- (void)moveSourcesAtIndexes:(NSIndexSet *)inOldIndexes toIndexes:(NSIndexSet *)inNewIndexes;\n\n- (void)removeSources:(NSArray *)inSources;\n\n- (void)sortCustomSourcesByName;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourcesManager.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourcesManager.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n#import \"CUICrashLogsSourceSeparator.h\"\n#import \"CUICrashLogsSourceFile.h\"\n#import \"CUICrashLogsSourceDirectory.h\"\n#import \"CUICrashLogsSourceStandardDirectory.h\"\n#import \"CUICrashLogsSourceSmart.h\"\n#import \"CUICrashLogsSourceAll.h\"\n#import \"CUICrashLogsSourceToday.h\"\n\nNSString * const CUIDefaultsSourcesManagerCustomSourcesListKey=@\"sources.custom\";\n\n\nNSString * const CUICrashLogsSourcesManagerSourcesDidChangeNotification=@\"CUICrashLogsSourcesManagerSourcesDidChangeNotification\";\n\n@interface CUICrashLogsSourcesManager ()\n{\n    NSMutableArray<CUICrashLogsSource *> * _sources;\n    \n    NSUInteger _customSourcesCount;\n}\n\n@end\n\n@implementation CUICrashLogsSourcesManager\n\n+ (CUICrashLogsSourcesManager *)sharedManager\n{\n    static CUICrashLogsSourcesManager * sSourcesManager=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        [[NSUserDefaults standardUserDefaults] registerDefaults:@{CUIDefaultsSourcesManagerCustomSourcesListKey:@[]}];\n        \n        sSourcesManager=[CUICrashLogsSourcesManager new];\n    });\n    \n    return sSourcesManager;\n}\n\n#pragma mark -\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _sources=[NSMutableArray array];\n        \n        CUICrashLogsSourceAll * tSourceAll=[CUICrashLogsSourceAll crashLogsSourceAll];\n        \n        if (tSourceAll==nil)\n        {\n        }\n        else\n        {\n            [_sources addObject:tSourceAll];\n        }\n        \n        CUICrashLogsSourceToday * tSourceToday=[CUICrashLogsSourceToday new];\n        \n        if (tSourceToday==nil)\n        {\n        }\n        else\n        {\n            [_sources addObject:tSourceToday];\n        }\n        \n        \n        NSError * tError=nil;\n        \n        // Current User Crash Logs\n        \n        CUICrashLogsSourceStandardDirectory * tUserCrashLogsSource=[CUICrashLogsSourceStandardDirectory sourceDiagnosticReportsInDomain:NSUserDomainMask error:&tError];\n        \n        if (tUserCrashLogsSource==nil)\n        {\n        }\n        else\n        {\n            [_sources addObject:tUserCrashLogsSource];\n        }\n        \n        // System User Crash Logs\n        \n        CUICrashLogsSourceStandardDirectory * tSystemCrashLogsSource=[CUICrashLogsSourceStandardDirectory sourceDiagnosticReportsInDomain:NSLocalDomainMask error:&tError];\n        \n        if (tSystemCrashLogsSource==nil)\n        {\n        }\n        else\n        {\n            [_sources addObject:tSystemCrashLogsSource];\n        }\n        \n        // Custom Sources\n        \n        NSArray * tCustomSourcesRepresentations=[[NSUserDefaults standardUserDefaults] objectForKey:CUIDefaultsSourcesManagerCustomSourcesListKey];\n        \n        NSArray * tCustomSources=[tCustomSourcesRepresentations WB_arrayByMappingObjectsLenientlyUsingBlock:^id(NSDictionary * bRepresentation, NSUInteger bIndex) {\n           \n            NSNumber * tNumber=bRepresentation[CUICrashLogsSourceTypeKey];\n            \n            if ([tNumber isKindOfClass:NSNumber.class]==NO)\n                return nil;\n            \n            CUICrashLogsSourceType tType=[tNumber unsignedIntegerValue];\n            \n            switch(tType)\n            {\n                case CUICrashLogsSourceTypeDirectory:\n                    \n                    return [[CUICrashLogsSourceDirectory alloc] initWithRepresentation:bRepresentation];\n                    \n                case CUICrashLogsSourceTypeFile:\n                    \n                    return [[CUICrashLogsSourceFile alloc] initWithRepresentation:bRepresentation];\n                    \n                case CUICrashLogsSourceTypeSmart:\n                    \n                    return [[CUICrashLogsSourceSmart alloc] initWithRepresentation:bRepresentation];\n                    \n                default:\n                    \n                    return nil;\n            }\n        }];\n        \n        _customSourcesCount=tCustomSources.count;\n        \n        NSMutableArray * tMutableArray=[NSMutableArray arrayWithObjects:tUserCrashLogsSource,tSystemCrashLogsSource, nil];\n        \n        if (_customSourcesCount>0)\n        {\n            [_sources addObject:[CUICrashLogsSourceSeparator separator]];\n            \n            [_sources addObjectsFromArray:tCustomSources];\n            \n            [tMutableArray addObjectsFromArray:tCustomSources];\n        }\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogsSourceDidAddSourcesNotification object:tMutableArray];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSArray *)allSources\n{\n    return _sources;\n}\n\n#pragma mark -\n\n- (NSArray *)sourcesOfType:(CUICrashLogsSourceType)inType\n{\n    return [_sources WB_filteredArrayUsingBlock:^BOOL(CUICrashLogsSource * bSource, NSUInteger bIndex) {\n        \n        return (bSource.type==inType);\n    }];\n}\n\n- (NSArray *)sourcesOfTypes:(NSSet *)inTypes\n{\n    return [_sources WB_filteredArrayUsingBlock:^BOOL(CUICrashLogsSource * bSource, NSUInteger bIndex) {\n        \n        return [inTypes containsObject:@(bSource.type)];\n    }];\n}\n\n#pragma mark -\n\n- (void)synchronizeDefaults\n{\n    NSArray * tCustomSourcesRepresentations=@[];\n    \n    if (_customSourcesCount>0)\n    {\n        NSArray * tCustomSources=[_sources subarrayWithRange:NSMakeRange(_sources.count-_customSourcesCount, _customSourcesCount)];\n    \n            tCustomSourcesRepresentations=[tCustomSources WB_arrayByMappingObjectsLenientlyUsingBlock:^id(CUICrashLogsSource * bSource, NSUInteger bIndex) {\n        \n            return [bSource representation];\n            }];\n    }\n    \n    [[NSUserDefaults standardUserDefaults] setObject:tCustomSourcesRepresentations forKey:CUIDefaultsSourcesManagerCustomSourcesListKey];\n}\n\n- (void)addSources:(NSArray *)inSources\n{\n    NSArray * tPossibleSources=[inSources WB_filteredArrayUsingBlock:^BOOL(CUICrashLogsSource * bSource, NSUInteger bIndex) {\n        \n        switch(bSource.type)\n        {\n            case CUICrashLogsSourceTypeDirectory:\n            case CUICrashLogsSourceTypeFile:\n            case CUICrashLogsSourceTypeSmart:\n                \n                return YES;\n                \n            default:\n                \n                return NO;\n        }\n        \n    }];\n    \n    if (tPossibleSources.count>0)\n    {\n        if (_customSourcesCount==0)\n            [_sources addObject:[CUICrashLogsSourceSeparator separator]];\n\n        \n        [_sources addObjectsFromArray:tPossibleSources];\n        \n        _customSourcesCount+=tPossibleSources.count;\n        \n        NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n        \n        [tNotificationCenter postNotificationName:CUICrashLogsSourceDidAddSourcesNotification object:tPossibleSources];\n        \n        [tNotificationCenter postNotificationName:CUICrashLogsSourcesManagerSourcesDidChangeNotification object:self];\n        \n        [self synchronizeDefaults];\n    }\n}\n\n- (void)moveSourcesAtIndexes:(NSIndexSet *)inOldIndexes toIndexes:(NSIndexSet *)inNewIndexes\n{\n    NSArray * tObjects=[_sources objectsAtIndexes:inOldIndexes];\n    \n    [_sources removeObjectsAtIndexes:inOldIndexes];\n    \n    [_sources insertObjects:tObjects atIndexes:inNewIndexes];\n}\n\n- (void)removeSources:(NSArray *)inSources\n{\n    NSArray * tPossibleSources=[inSources WB_filteredArrayUsingBlock:^BOOL(CUICrashLogsSource * bSource, NSUInteger bIndex) {\n        \n        switch(bSource.type)\n        {\n            case CUICrashLogsSourceTypeDirectory:\n            case CUICrashLogsSourceTypeFile:\n            case CUICrashLogsSourceTypeSmart:\n                \n                return YES;\n                \n            default:\n                \n                return NO;\n        }\n        \n    }];\n    \n    if (tPossibleSources.count>0)\n    {\n        [_sources removeObjectsInArray:tPossibleSources];\n        \n        _customSourcesCount-=tPossibleSources.count;\n        \n        if (_customSourcesCount==0)\n            [_sources removeObjectIdenticalTo:[CUICrashLogsSourceSeparator separator]];\n        \n        NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n        \n        [tNotificationCenter postNotificationName:CUICrashLogsSourceDidRemoveSourcesNotification object:tPossibleSources];\n        \n        [tNotificationCenter postNotificationName:CUICrashLogsSourcesManagerSourcesDidChangeNotification object:self];\n        \n        [self synchronizeDefaults];\n    }\n}\n\n- (void)sortCustomSourcesByName\n{\n    NSRange tCustomSourcesRange=NSMakeRange(5, _customSourcesCount);\n    \n    NSMutableArray * tSortableArray=[[_sources objectsAtIndexes:[NSIndexSet indexSetWithIndexesInRange:tCustomSourcesRange]] mutableCopy];\n    \n    [tSortableArray sortUsingComparator:^NSComparisonResult(CUICrashLogsSource * bSource1, CUICrashLogsSource * bSource2) {\n        \n        return [bSource1.name caseInsensitiveCompare:bSource2.name];\n    }];\n    \n    [_sources removeObjectsInRange:tCustomSourcesRange];\n    \n    [_sources addObjectsFromArray:tSortableArray];\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter postNotificationName:CUICrashLogsSourcesManagerSourcesDidChangeNotification object:self];\n    \n    [self synchronizeDefaults];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourcesSelection.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLogsSource.h\"\n\nextern NSString * const CUICrashLogsSourcesSelectionDidChangeNotification;\n\n@interface CUICrashLogsSourcesSelection : NSObject\n\n    @property (nonatomic) NSSet * sources;\n\n    @property (nonatomic,readonly) NSArray * crashLogs;\n\n+ (CUICrashLogsSourcesSelection *)sharedSourcesSelection;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourcesSelection.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourcesSelection.h\"\n\nNSString * const CUICrashLogsSourcesSelectionDidChangeNotification=@\"CUICrashLogsSourcesSelectionDidChangeNotification\";\n\n@implementation CUICrashLogsSourcesSelection\n\n+ (CUICrashLogsSourcesSelection *)sharedSourcesSelection\n{\n    static CUICrashLogsSourcesSelection * sSharedSourcesSelection=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSharedSourcesSelection=[CUICrashLogsSourcesSelection new];\n        \n    });\n    \n    return sSharedSourcesSelection;\n}\n\n#pragma mark -\n\n- (void)setSources:(NSSet *)inSources\n{\n    if (_sources==inSources)\n        return;\n    \n    _sources=inSources;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUICrashLogsSourcesSelectionDidChangeNotification object:self];\n}\n\n- (NSArray *)crashLogs\n{\n    NSMutableOrderedSet * tMutableOrderedSet=[NSMutableOrderedSet orderedSet];\n    \n    [self.sources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, BOOL * bOutStop) {\n        \n        NSArray * tCrashLogs=bSource.crashLogs;\n        \n        if (tCrashLogs!=nil)\n            [tMutableOrderedSet addObjectsFromArray:tCrashLogs];\n        \n    }];\n    \n    return [tMutableOrderedSet array];\n}\n\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourcesViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUIKeyViews.h\"\n\n@interface CUICrashLogsSourcesViewController : NSViewController <CUIKeyViews>\n\n    @property (readonly) NSTableView * tableView;\n\n    @property (nonatomic,readonly) NSRect effectiveBottonBarRect;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashLogsSourcesViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashLogsSourcesViewController.h\"\n\n#import \"CUICrashLogsSource.h\"\n#import \"CUICrashLogsSourceSeparator.h\"\n#import \"CUICrashLogsSourceAll.h\"\n#import \"CUICrashLogsSourceFileSystemItem.h\"\n#import \"CUICrashLogsSourceFile.h\"\n#import \"CUICrashLogsSourceDirectory.h\"\n\n#import \"CUICrashLogsSource+UI.h\"\n\n#import \"CUICrashLogsSourcesManager.h\"\n\n#import \"CUICrashLogsSourcesSelection.h\"\n\n#import \"NSTableView+Selection.h\"\n\n#import \"NSArray+WBExtensions.h\"\n#import \"NSIndexSet+Analysis.h\"\n\n#import \"CUICrashLogsSourceTableCellView.h\"\n\n#import \"CUICrashLogsSourceSmartEditorPanel.h\"\n\n#import \"NSArray+UniqueName.h\"\n\n#import \"CUICrashLogsOpenErrorPanel.h\"\n\nNSString * const CUICrashLogsSourcesInternalPboardType=@\"fr.whitebox.unexpectedly.sources.internal.array\";\n\n@interface CUICrashLogsSourcesViewController () <NSMenuItemValidation,NSOpenSavePanelDelegate,NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTableView * _tableView;\n    \n    IBOutlet NSButton * _removeButton;\n    \n    IBOutlet NSPopUpButton * _actionPopUpButton;\n    \n    CUICrashLogsSourcesManager * _sourcesManager;\n    \n    CUICrashLogsSourcesSelection * _sourcesSelection;\n    \n    NSIndexSet * _internalDragData;\n    \n    NSSet * _openPanelExistingSingleFiles;\n    \n    NSSet * _openPanelExistingDirectories;\n}\n\n- (IBAction)tableViewDoubleAction:(id)sender;\n\n- (IBAction)takeSourceNameFrom:(id)sender;\n\n- (IBAction)CUI_MENUACTION_addSource:(id)sender;\n\n- (IBAction)CUI_MENUACTION_addSmartSource:(id)sender;\n\n- (IBAction)editSmartSource:(id)sender;\n\n- (IBAction)CUI_MENUACTION_importSmartSource:(id)sender;\n\n- (IBAction)CUI_MENUACTION_exportSmartSource:(id)sender;\n\n- (IBAction)removeSources:(id)sender;\n\n- (IBAction)showInFinder:(id)sender;\n\n- (IBAction)sortByName:(id)sender;\n\n// Notifications\n\n- (void)sourcesManagerSourcesDidChange:(NSNotification *)inNotification;\n\n- (void)sourceDidUpdateSource:(NSNotification *)inNotification;\n\n- (void)sourcesSelectionDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashLogsSourcesViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _sourcesManager=[CUICrashLogsSourcesManager sharedManager];\n        \n        _sourcesSelection=[CUICrashLogsSourcesSelection sharedSourcesSelection];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUICrashLogsSourcesViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _tableView.doubleAction=@selector(tableViewDoubleAction:);\n    \n    [_tableView registerForDraggedTypes:@[NSPasteboardTypeFileURL,CUICrashLogsSourcesInternalPboardType]];\n    \n    _removeButton.enabled=NO;\n    \n    NSUInteger tIndex=0;\n    \n    if (_sourcesSelection.sources.count>0)\n    {\n        tIndex=[_sourcesManager.allSources indexOfObject:_sourcesSelection.sources.allObjects.firstObject];\n    }\n    \n    [_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tIndex] byExtendingSelection:NO];\n    \n    // Register for notifications\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(sourcesManagerSourcesDidChange:) name:CUICrashLogsSourcesManagerSourcesDidChangeNotification object:_sourcesManager];\n    \n    [tNotificationCenter addObserver:self selector:@selector(sourceDidUpdateSource:) name:CUICrashLogsSourceDidUpdateSourceNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(sourcesSelectionDidChange:) name:CUICrashLogsSourcesSelectionDidChangeNotification object:_sourcesSelection];\n    \n    [self tableViewSelectionDidChange:[NSNotification notificationWithName:NSTableViewSelectionDidChangeNotification object:_tableView userInfo:nil]];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n}\n\n#pragma mark -\n\n- (NSRect)effectiveBottonBarRect\n{\n    NSRect tEffectiveRect;\n    \n    if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n    {\n        tEffectiveRect.origin.x=NSMaxX(_removeButton.frame);\n        tEffectiveRect.size.width=NSMinX(_actionPopUpButton.frame)-tEffectiveRect.origin.x;\n    \n        tEffectiveRect.origin.y=NSHeight(_tableView.enclosingScrollView.frame);\n        tEffectiveRect.size.height=NSMinY(_tableView.enclosingScrollView.frame);\n    }\n    else\n    {\n        tEffectiveRect.origin.x=NSMaxX(_actionPopUpButton.frame);\n        tEffectiveRect.size.width=NSMinX(_removeButton.frame)-tEffectiveRect.origin.x;\n        \n        tEffectiveRect.origin.y=NSHeight(_tableView.enclosingScrollView.frame);\n        tEffectiveRect.size.height=NSMinY(_tableView.enclosingScrollView.frame);\n    }\n    \n    return tEffectiveRect;\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    if (tAction==@selector(delete:))\n    {\n        if (tSelectedRows.count==0)\n            return NO;\n        \n        __block BOOL tSourcesCanBeDeleted=YES;\n        \n        NSArray * tSelectedSources=[_sourcesManager.allSources objectsAtIndexes:tSelectedRows];\n        \n        [tSelectedSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            switch(bSource.type)\n            {\n                case CUICrashLogsSourceTypeAll:\n                case CUICrashLogsSourceTypeStandardDirectory:\n                case CUICrashLogsSourceTypeToday:\n                    \n                    tSourcesCanBeDeleted=NO;\n                    \n                    break;\n                    \n                default:\n                    \n                    break;\n            }\n        }];\n        \n        return tSourcesCanBeDeleted;\n    }\n    \n    if (tAction==@selector(editSmartSource:))\n    {\n        __block BOOL tCanEdit=YES;\n        \n        [_sourcesManager.allSources enumerateObjectsAtIndexes:tSelectedRows options:0 usingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([bSource isMemberOfClass:[CUICrashLogsSourceSmart class]]==NO)\n            {\n                tCanEdit=NO;\n                *bOutStop=YES;\n            }\n            \n        }];\n        \n        return tCanEdit;\n    }\n    \n    if (tAction==@selector(CUI_MENUACTION_exportSmartSource:))\n    {\n        __block BOOL tCanExport=YES;\n        \n        [_sourcesManager.allSources enumerateObjectsAtIndexes:tSelectedRows options:0 usingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([bSource isMemberOfClass:[CUICrashLogsSourceSmart class]]==NO)\n            {\n                tCanExport=NO;\n                *bOutStop=YES;\n            }\n            \n        }];\n        \n        return tCanExport;\n    }\n    \n    if (tAction==@selector(showInFinder:))\n    {\n        __block BOOL tCanShowInFinder=YES;\n        \n        [_sourcesManager.allSources enumerateObjectsAtIndexes:tSelectedRows options:0 usingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([bSource isKindOfClass:[CUICrashLogsSourceFileSystemItem class]]==NO)\n            {\n                tCanShowInFinder=NO;\n                *bOutStop=YES;\n            }\n            \n        }];\n        \n        return tCanShowInFinder;\n    }\n    \n    if (tAction==@selector(sortByName:))\n    {\n        if (tSelectedRows.count==0)\n            return NO;\n        \n        NSArray * tSelectedSources=[_sourcesManager.allSources objectsAtIndexes:tSelectedRows];\n        __block NSUInteger tNumberOfCustomSources=0;\n        \n        [tSelectedSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            switch(bSource.type)\n            {\n                case CUICrashLogsSourceTypeDirectory:\n                case CUICrashLogsSourceTypeFile:\n                case CUICrashLogsSourceTypeSmart:\n                    \n                    tNumberOfCustomSources++;\n                    \n                    break;\n                    \n                default:\n                    \n                    break;\n            }\n        }];\n        \n        return (tNumberOfCustomSources>=1);\n    }\n    \n    return YES;\n}\n\n- (IBAction)delete:(id)sender\n{\n    [self removeSources:sender];\n}\n\n- (IBAction)tableViewDoubleAction:(id)sender\n{\n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    NSArray * tArray=[_sourcesManager.allSources objectsAtIndexes:tSelectedRows];\n    \n    CUICrashLogsSourceSmart * tSmartSource=tArray.firstObject;\n    \n    if (tSmartSource.type!=CUICrashLogsSourceTypeSmart)\n        return;\n    \n    [self editSmartSource:sender];\n}\n\n- (IBAction)takeSourceNameFrom:(NSTextField *)sender\n{\n    NSInteger tEditedRow=[_tableView rowForView:sender];\n    \n    if (tEditedRow==-1)\n        return;\n    \n    NSString * tNewName=sender.stringValue;\n\n    CUICrashLogsSourceSmart * tSourceSmart=(CUICrashLogsSourceSmart *)_sourcesManager.allSources[tEditedRow];\n    \n    // Avoid replacing with the same name\n    \n    if ([tNewName isEqualToString:tSourceSmart.name]==YES)\n        return;\n    \n    // Avoid empty Name\n    \n    if (tNewName.length==0)\n    {\n        [_tableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndex:tEditedRow] columnIndexes:[NSIndexSet indexSetWithIndex:0]];\n        \n        return;\n    }\n    \n    // Avoid duplicate names\n    \n    NSArray * tAllSmartSourcesNames=[[_sourcesManager sourcesOfType:CUICrashLogsSourceTypeSmart] WB_arrayByMappingObjectsUsingBlock:^NSString *(CUICrashLogsSourceSmart * bSmartSource, NSUInteger bIndex) {\n        \n        return bSmartSource.name;\n    }];\n    \n    if ([tAllSmartSourcesNames containsObject:tNewName]==YES)\n    {\n        NSAlert * tAlert=[NSAlert new];\n        tAlert.alertStyle=NSAlertStyleCritical;\n        tAlert.messageText=[NSString stringWithFormat:NSLocalizedString(@\"The name \\\"%@\\\" is already taken.\",@\"\"),tNewName];\n        tAlert.informativeText=NSLocalizedString(@\"Please choose a different name.\",@\"\");\n        \n        [tAlert beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse returnCode) {\n            \n            [self->_tableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndex:tEditedRow] columnIndexes:[NSIndexSet indexSetWithIndex:0]];\n            \n            [self->_tableView editColumn:0 row:tEditedRow withEvent:nil select:YES];\n            \n        }];\n    \n        return;\n    }\n    \n    tSourceSmart.name=tNewName;\n    \n    [_sourcesManager synchronizeDefaults];\n}\n\n- (IBAction)CUI_MENUACTION_addSource:(id)sender\n{\n    NSOpenPanel * tOpenPanel=[NSOpenPanel openPanel];\n    tOpenPanel.canChooseFiles=YES;\n    tOpenPanel.canChooseDirectories=YES;\n    tOpenPanel.allowsMultipleSelection=YES;\n    tOpenPanel.prompt=NSLocalizedString(@\"Add\", @\"\");\n    //tOpenPanel.allowedFileTypes=@[@\".crash\"];\n    \n    tOpenPanel.delegate=self;\n    \n    NSMutableArray<CUICrashLogsOpenErrorRecord *> * tOpenErrors=[NSMutableArray array];\n    \n    CUICrashLogsSourceAll * tSourcesAll=[CUICrashLogsSourceAll crashLogsSourceAll];\n    \n    _openPanelExistingSingleFiles=[NSSet setWithArray:[tSourcesAll.crashLogs WB_arrayByMappingObjectsLenientlyUsingBlock:^id(CUICrashLog *bCrashLog, NSUInteger bIndex) {\n    \n        return bCrashLog.crashLogFilePath;\n    }]];\n    \n    _openPanelExistingDirectories=[NSSet setWithArray:[self->_sourcesManager.allSources WB_arrayByMappingObjectsLenientlyUsingBlock:^id(CUICrashLogsSourceDirectory *bCrashSource, NSUInteger bIndex) {\n        \n        if ([bCrashSource isKindOfClass:[CUICrashLogsSourceDirectory class]]==NO)\n             return nil;\n        \n        return bCrashSource.path;\n    }]];\n    \n    [tOpenPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse bReturnCode) {\n        \n        self->_openPanelExistingSingleFiles=nil;\n        self->_openPanelExistingDirectories=nil;\n        \n        if (bReturnCode==NSModalResponseCancel)\n            return;\n        \n        NSMutableArray * tNewSources=[NSMutableArray array];\n        \n        for(NSURL * tURL in tOpenPanel.URLs)\n        {\n            if (tURL.isFileURL==NO)\n                continue;\n            \n            BOOL tIsDirectory;\n            \n            if ([[NSFileManager defaultManager] fileExistsAtPath:tURL.path isDirectory:&tIsDirectory]==NO)\n                continue;\n            \n            CUICrashLogsSource * tSource=nil;\n            NSError * tError=nil;\n            \n            if (tIsDirectory==NO)\n            {\n                tSource=[[CUICrashLogsSourceFile alloc] initWithContentsOfFileSystemItemAtPath:tURL.path error:&tError];\n            }\n            else\n            {\n                tSource=[[CUICrashLogsSourceDirectory alloc] initWithContentsOfFileSystemItemAtPath:tURL.path error:NULL];\n                \n                // Check if the directory is not already a source\n                \n                // A COMPLETER\n            }\n            \n            if (tSource==nil)\n            {\n                if (tIsDirectory==NO && tError!=nil)\n                {\n                    CUICrashLogsOpenErrorRecord * tRecord=[CUICrashLogsOpenErrorRecord new];\n                    tRecord.sourceURL=tURL;\n                    tRecord.openError=tError;\n                    \n                    [tOpenErrors addObject:tRecord];\n                }\n                \n                continue;\n            }\n            \n            if (tSource!=nil)\n                [tNewSources addObject:tSource];\n        }\n        \n        [self->_sourcesManager addSources:tNewSources];\n        \n        [self->_tableView reloadData];\n        \n        [self->_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:self->_sourcesManager.allSources.count-1] byExtendingSelection:NO];\n        \n        if (tOpenErrors.count>0)\n        {\n            NSBeep();\n            \n            dispatch_async(dispatch_get_main_queue(), ^{\n                \n                CUICrashLogsOpenErrorPanel * tErrorPanel=[CUICrashLogsOpenErrorPanel crashLogsOpenErrorPanel];\n                tErrorPanel.errors=tOpenErrors;\n                \n                [tErrorPanel runModal];\n            });\n        }\n    }];\n}\n\n- (IBAction)CUI_MENUACTION_addSmartSource:(id)sender\n{\n    CUICrashLogsSourceSmartEditorPanel * tEditorPanel=[CUICrashLogsSourceSmartEditorPanel crashLogsSourceSmartEditorPanel];\n    \n    tEditorPanel.source=[CUICrashLogsSourceSmart new];\n    \n    tEditorPanel.prompt=NSLocalizedString(@\"Add\",@\"\");\n    \n    [tEditorPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse bResponse) {\n        \n        if (bResponse==NSModalResponseCancel)\n            return;\n        \n        [self->_sourcesManager addSources:@[tEditorPanel.source]];\n        \n        [self->_tableView reloadData];\n        \n        [self->_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:self->_sourcesManager.allSources.count-1] byExtendingSelection:NO];\n    }];\n}\n\n- (IBAction)editSmartSource:(id)sender\n{\n    CUICrashLogsSourceSmartEditorPanel * tEditorPanel=[CUICrashLogsSourceSmartEditorPanel crashLogsSourceSmartEditorPanel];\n    \n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    NSArray * tArray=[_sourcesManager.allSources objectsAtIndexes:tSelectedRows];\n    \n    tEditorPanel.source=tArray.firstObject;\n    \n    tEditorPanel.prompt=NSLocalizedString(@\"OK\",@\"\");\n    \n    [tEditorPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse bResponse) {\n        \n        if (bResponse==NSModalResponseCancel)\n            return;\n        \n        [self->_tableView reloadDataForRowIndexes:tSelectedRows columnIndexes:[NSIndexSet indexSetWithIndex:0]];\n        \n        [self->_sourcesManager synchronizeDefaults];\n    }];\n}\n\n- (IBAction)CUI_MENUACTION_importSmartSource:(id)sender\n{\n    NSOpenPanel * tImportPanel=[NSOpenPanel openPanel];\n    \n    tImportPanel.resolvesAliases=YES;\n    tImportPanel.canChooseFiles=YES;\n    //tImportPanel.allowsMultipleSelection=YES;\n    tImportPanel.canCreateDirectories=NO;\n    tImportPanel.prompt=NSLocalizedString(@\"Import\", @\"\");\n    \n    //tImportPanel.delegate=self;\n    \n    [tImportPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger bResult){\n        \n        if (bResult!=NSModalResponseOK)\n            return;\n        \n        NSArray * tExistingSmartSources=[self->_sourcesManager sourcesOfType:CUICrashLogsSourceTypeSmart];\n        \n        NSArray * tSmartSources=[tImportPanel.URLs WB_arrayByMappingObjectsLenientlyUsingBlock:^CUICrashLogsSourceSmart *(NSURL * bURL, NSUInteger bIndex) {\n            \n            NSDictionary * tDictionary=[NSDictionary dictionaryWithContentsOfURL:tImportPanel.URL];\n            \n            if (tDictionary==nil)\n            {\n                NSLog(@\"Import Smart Source failure: the selected file is not a property list file.\");\n                \n                return nil;\n            }\n            \n            CUICrashLogsSourceSmart * tSmartSource=[[CUICrashLogsSourceSmart alloc] initWithRepresentation:tDictionary];\n            \n            if (tSmartSource==nil)\n            {\n                NSLog(@\"Import Smart Source failure: the selected property list file is not a smart source file.\");\n                \n                return nil;\n            }\n            \n            NSString * tUniqueSourceName=[tExistingSmartSources uniqueNameWithBaseName:tSmartSource.name usingNameExtractor:^NSString *(CUICrashLogsSourceSmart * bSmartSource, NSUInteger bIndex) {\n                \n                return bSmartSource.name;\n            }];\n            \n            if (tUniqueSourceName==nil)\n            {\n                NSLog(@\"Import Smart Source failure: a smart source with this name already exists.\");\n                \n                // A COMPLETER\n                \n                return nil;\n            }\n            \n            tSmartSource.name=tUniqueSourceName;\n            \n            return tSmartSource;\n            \n        }];\n        \n        \n        \n        [self->_sourcesManager addSources:tSmartSources];\n        \n        [self->_tableView reloadData];\n        \n        [self->_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:self->_sourcesManager.allSources.count-1] byExtendingSelection:NO];\n    }];\n}\n\n- (IBAction)CUI_MENUACTION_exportSmartSource:(id)sender\n{\n    NSIndexSet * tIndexSet=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    if (tIndexSet.count!=1)\n        return;\n    \n    CUICrashLogsSourceSmart * tSource=_sourcesManager.allSources[tIndexSet.firstIndex];\n    \n    NSDictionary * tRepresentation=[tSource representation];\n    \n    if (tRepresentation==nil)\n        return;\n    \n    NSSavePanel * tExportPanel=[NSSavePanel savePanel];\n    \n    tExportPanel.canSelectHiddenExtension=YES;\n    tExportPanel.allowedFileTypes=@[@\"fr.whitebox.unexpectedly.smartSource\"];\n    \n    tExportPanel.nameFieldLabel=NSLocalizedString(@\"Export As:\", @\"\");\n    tExportPanel.nameFieldStringValue=tSource.name;\n    \n    tExportPanel.prompt=NSLocalizedString(@\"Export\", @\"\");\n    \n    [tExportPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger bResult){\n        \n        if (bResult!=NSModalResponseOK)\n            return;\n        \n        NSError * tError=nil;\n        \n        if ([tRepresentation writeToURL:tExportPanel.URL error:&tError]==NO)\n        {\n            NSBeep();\n            \n            NSLog(@\"%@\",tError.description);\n            \n            // A COMPLETER\n        }\n    }];\n}\n\n- (IBAction)removeSources:(id)sender\n{\n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    NSUInteger tSelectionLastIndex=tSelectedRows.lastIndex;\n    \n    CUICrashLogsSource * tNextSelectedSource=nil;\n    \n    if ((tSelectionLastIndex+1)!=_sourcesManager.allSources.count)\n        tNextSelectedSource=_sourcesManager.allSources[tSelectionLastIndex+1];\n    \n    NSArray * tArray=[_sourcesManager.allSources objectsAtIndexes:tSelectedRows];\n    \n    [_sourcesManager removeSources:tArray];\n    \n    [_tableView reloadData];\n    \n    // Select the row before the last selected one or select the last row\n    \n    NSUInteger tNewSelectedIndex=NSNotFound;\n    \n    if (tNextSelectedSource!=nil)\n        tNewSelectedIndex=[_sourcesManager.allSources indexOfObject:tNextSelectedSource];\n    \n    if (tNewSelectedIndex==NSNotFound)\n        tNewSelectedIndex=_sourcesManager.allSources.count-1;\n    \n    [_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tNewSelectedIndex] byExtendingSelection:NO];\n}\n\n- (IBAction)showInFinder:(id)sender\n{\n    NSIndexSet * tSelectedRows=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    [_sourcesManager.allSources enumerateObjectsAtIndexes:tSelectedRows options:0 usingBlock:^(CUICrashLogsSourceFileSystemItem * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n    \n        [[NSWorkspace sharedWorkspace] selectFile:bSource.path inFileViewerRootedAtPath:@\"\"];\n    \n    }];\n}\n\n- (IBAction)sortByName:(id)sender\n{\n    [_sourcesManager sortCustomSourcesByName];\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n    return _sourcesManager.allSources.count;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    CUICrashLogsSource * tSource=_sourcesManager.allSources[inRow];\n    \n    if (tSource.type==CUICrashLogsSourceTypeSeparator)\n    {\n        return [inTableView makeViewWithIdentifier:@\"separator\" owner:self];\n    }\n    \n    CUICrashLogsSourceTableCellView * tTableCellView=(CUICrashLogsSourceTableCellView *)[inTableView makeViewWithIdentifier:@\"regular\" owner:self];\n    \n    tTableCellView.imageView.image=tSource.icon;\n\n    tTableCellView.textField.editable=(tSource.type==CUICrashLogsSourceTypeSmart);\n    \n    tTableCellView.textField.stringValue=tSource.name;\n\n    tTableCellView.toolTip=tSource.sourceDescription;\n\n    tTableCellView.countTextField.stringValue=[NSString stringWithFormat:@\"%lu\",tSource.crashLogs.count];\n    \n    return tTableCellView;\n}\n\n- (CGFloat)tableView:(NSTableView *)inTableView heightOfRow:(NSInteger)inRow\n{\n    CUICrashLogsSource * tSource=_sourcesManager.allSources[inRow];\n    \n    if (tSource.type==CUICrashLogsSourceTypeSeparator)\n        return 12.0;\n    \n    return 24.0;\n}\n\n- (BOOL)tableView:(NSTableView *)inTableView shouldSelectRow:(NSInteger)inRow\n{\n    CUICrashLogsSource * tSource=_sourcesManager.allSources[inRow];\n    \n    return (tSource.type!=CUICrashLogsSourceTypeSeparator);\n}\n\n#pragma mark - Drag and Drop support\n\n- (BOOL)tableView:(NSTableView *)inTableView writeRowsWithIndexes:(NSIndexSet *)inRowIndexes toPasteboard:(NSPasteboard *)inPasteboard\n{\n    for(CUICrashLogsSource * tSource in [_sourcesManager.allSources objectsAtIndexes:inRowIndexes])\n    {\n        switch(tSource.type)\n        {\n            case CUICrashLogsSourceTypeUnknown:\n            case CUICrashLogsSourceTypeAll:\n            case CUICrashLogsSourceTypeStandardDirectory:\n            case CUICrashLogsSourceTypeToday:\n            case CUICrashLogsSourceTypeSeparator:\n                \n                return NO;\n                \n            default:\n                \n                break;\n        }\n    }\n    \n    _internalDragData=inRowIndexes;\n    \n    [inPasteboard declareTypes:@[CUICrashLogsSourcesInternalPboardType] owner:self];\n    \n    [inPasteboard setData:[NSData data] forType:CUICrashLogsSourcesInternalPboardType];\n    \n    return YES;\n}\n\n- (NSDragOperation)tableView:(NSTableView *)inTableView validateDrop:(id <NSDraggingInfo>)info proposedRow:(NSInteger)inRow proposedDropOperation:(NSTableViewDropOperation)inDropOperation\n{\n    if (inDropOperation==NSTableViewDropOn)\n        return NSDragOperationNone;\n    \n    NSPasteboard * tPasteBoard=[info draggingPasteboard];\n    \n    // Internal Drag\n    \n    if ([tPasteBoard availableTypeFromArray:@[CUICrashLogsSourcesInternalPboardType]]!=nil && [info draggingSource]==inTableView)\n    {\n        NSUInteger tSeparatorRow=[_sourcesManager.allSources indexOfObject:[CUICrashLogsSourceSeparator separator]];\n        \n        if (tSeparatorRow==NSNotFound)\n            return NSDragOperationNone;\n        \n        if (inRow<=tSeparatorRow)\n            return NSDragOperationNone;\n        \n        if ([_internalDragData WB_containsOnlyOneRange]==YES)\n        {\n            NSUInteger tFirstIndex=_internalDragData.firstIndex;\n            NSUInteger tLastIndex=_internalDragData.lastIndex;\n            \n            if (inRow>=tFirstIndex && inRow<=(tLastIndex+1))\n                return NSDragOperationNone;\n        }\n        else\n        {\n            if ([_internalDragData containsIndex:(inRow-1)]==YES)\n                return NSDragOperationNone;\n        }\n        \n        return NSDragOperationMove;\n    }\n    \n    if ([tPasteBoard availableTypeFromArray:@[NSPasteboardTypeFileURL]]!=nil)\n    {\n        NSArray<Class> *tClasses = @[NSURL.class];\n        NSArray<NSURL*> *tURLArray = [tPasteBoard readObjectsForClasses:tClasses\n                                                                options:@{NSPasteboardURLReadingFileURLsOnlyKey:@(YES)}];\n        \n        CUICrashLogsSourceAll * tSourcesAll=[CUICrashLogsSourceAll crashLogsSourceAll];\n        \n        for (NSURL *tURL in tURLArray)\n        {\n            NSNumber *tIsDirectoryNumber;\n            \n            if ([tURL getResourceValue:&tIsDirectoryNumber forKey:NSURLIsDirectoryKey error:NULL]==NO)\n                continue;\n            \n            NSString *tPath=tURL.path;\n            \n            if (tIsDirectoryNumber.boolValue==YES)\n            {\n                // Do not have the same directory twice\n                \n                for(CUICrashLogsSource * tSource in _sourcesManager.allSources)\n                {\n                    switch(tSource.type)\n                    {\n                        case CUICrashLogsSourceTypeStandardDirectory:\n                        case CUICrashLogsSourceTypeDirectory:\n                        {\n                            CUICrashLogsSourceDirectory * tSourceFile=(CUICrashLogsSourceDirectory *)tSource;\n                            \n                            if ([tSourceFile.path isEqualToString:tPath]==YES)\n                                return NSDragOperationNone;\n                            \n                            break;\n                        }\n                        default:\n                            \n                            break;\n                    }\n                }\n            }\n            else\n            {\n                // Should have .crash or .smartsource extension\n                NSString *tExtension=tPath.pathExtension;\n                \n                if ([tExtension caseInsensitiveCompare:@\"crash\"]==NSOrderedSame ||\n                    [tExtension caseInsensitiveCompare:@\"ips\"]==NSOrderedSame)\n                {\n                    // Do not have the same file twice (as a single file source)\n                \n                    for(CUIRawCrashLog * tCrashLog in tSourcesAll.crashLogs)\n                    {\n                        if ([tCrashLog.crashLogFilePath isEqualToString:tPath]==YES)\n                                return NSDragOperationNone;\n                    }\n                }\n                else\n                {\n                    if ([tExtension caseInsensitiveCompare:@\"smartsource\"]!=NSOrderedSame)\n                        return NSDragOperationNone;\n                }\n            }\n        }\n        \n        [inTableView setDropRow:-1 dropOperation:NSTableViewDropOn];\n        \n        return NSDragOperationCopy;\n    }\n    \n    return NSDragOperationNone;\n}\n\n- (BOOL)tableView:(NSTableView *)inTableView acceptDrop:(id <NSDraggingInfo>)info row:(NSInteger)inRow dropOperation:(NSTableViewDropOperation)inDropOperation\n{\n    if (inTableView!=_tableView)\n        return NO;\n    \n    // Internal drag and drop\n    \n    NSPasteboard * tPasteBoard=[info draggingPasteboard];\n    \n    if ([tPasteBoard availableTypeFromArray:@[CUICrashLogsSourcesInternalPboardType]]!=nil && [info draggingSource]==inTableView)\n    {\n        //NSArray * tObjects=[_sourcesManager.allSources objectsAtIndexes:_internalDragData];\n        \n        NSUInteger tIndex=[_internalDragData firstIndex];\n        \n        while (tIndex!=NSNotFound)\n        {\n            if (tIndex<inRow)\n                inRow--;\n            \n            tIndex=[_internalDragData indexGreaterThanIndex:tIndex];\n        }\n        \n        NSIndexSet * tNewIndexSet=[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(inRow, _internalDragData.count)];\n        \n        [_sourcesManager moveSourcesAtIndexes:_internalDragData toIndexes:tNewIndexSet];\n        \n        [inTableView deselectAll:nil];\n        \n        [inTableView reloadData];\n        \n        [inTableView selectRowIndexes:tNewIndexSet byExtendingSelection:NO];\n        \n        [_sourcesManager synchronizeDefaults];\n        \n        return YES;\n    }\n    \n    if ([tPasteBoard availableTypeFromArray:@[NSPasteboardTypeFileURL]]!=nil)\n    {\n        NSArray<Class> *tClasses = @[NSURL.class];\n        NSArray<NSURL*> *tURLArray = [tPasteBoard readObjectsForClasses:tClasses\n                                                                options:@{NSPasteboardURLReadingFileURLsOnlyKey:@(YES)}];\n        \n        NSMutableArray * tDelayedSmartSources=[NSMutableArray array];\n        \n        NSMutableArray<CUICrashLogsOpenErrorRecord *> * tOpenErrors=[NSMutableArray array];\n        \n        NSArray * tNewSources=[tURLArray WB_arrayByMappingObjectsLenientlyUsingBlock:^id(NSURL * bURL, NSUInteger bIndex) {\n            \n            CUICrashLogsSource * tSource=nil;\n            NSNumber *tIsDirectoryNumber;\n            \n            if ([bURL getResourceValue:&tIsDirectoryNumber forKey:NSURLIsDirectoryKey error:NULL]==NO)\n                return nil;\n            \n            NSError * tError;\n            \n            if (tIsDirectoryNumber.boolValue==NO)\n            {\n                NSString * tPathExtension=bURL.pathExtension;\n                \n                if ([tPathExtension caseInsensitiveCompare:@\"crash\"]==NSOrderedSame ||\n                    [tPathExtension caseInsensitiveCompare:@\"ips\"]==NSOrderedSame)\n                {\n                    tSource=[[CUICrashLogsSourceFile alloc] initWithContentsOfFileSystemItemAtPath:bURL.path error:&tError];\n                    \n                    if (tSource==nil)\n                    {\n                        CUICrashLogsOpenErrorRecord * tRecord=[CUICrashLogsOpenErrorRecord new];\n                        tRecord.sourceURL=bURL;\n                        tRecord.openError=tError;\n                    \n                        [tOpenErrors addObject:tRecord];\n                    }\n                }\n                else if ([tPathExtension caseInsensitiveCompare:@\"smartsource\"]==NSOrderedSame)\n                {\n                    NSDictionary * tRepresentation=[NSDictionary dictionaryWithContentsOfURL:bURL error:NULL];\n                    \n                    if (tRepresentation==nil)\n                    {\n                        // A COMPLETER\n                        return nil;\n                    }\n                    \n                    tSource=[[CUICrashLogsSourceSmart alloc] initWithRepresentation:tRepresentation];\n                    \n                    if (tSource==nil)\n                    {\n                        // A COMLETER\n                        \n                        return nil;\n                    }\n                    \n                    // Check that the name is not already used and offer to use a unique name\n                    \n                    NSString * tName=tSource.name;\n                    \n                    if (tName.length==0)\n                    {\n                        // A COMPLETER\n                        \n                        return nil;\n                    }\n                    \n                    NSArray * tExistingSmartSources=[[CUICrashLogsSourcesManager sharedManager] sourcesOfType:CUICrashLogsSourceTypeSmart];\n                    \n                    for(CUICrashLogsSourceSmart * tSmartSource in tExistingSmartSources)\n                    {\n                        if ([tSmartSource.name isEqualToString:tName]==YES)\n                        {\n                            [tDelayedSmartSources addObject:tSource];\n                            return nil;\n                        }\n                    }\n                }\n            }\n            else\n            {\n                tSource=[[CUICrashLogsSourceDirectory alloc] initWithContentsOfFileSystemItemAtPath:bURL.path error:&tError];\n            }\n            \n            return tSource;\n        }];\n        \n        if (tOpenErrors.count>0)\n        {\n            NSBeep();\n            \n            dispatch_async(dispatch_get_main_queue(), ^{\n                \n                CUICrashLogsOpenErrorPanel * tErrorPanel=[CUICrashLogsOpenErrorPanel crashLogsOpenErrorPanel];\n                tErrorPanel.errors=tOpenErrors;\n                \n                [tErrorPanel runModal];\n            });\n        }\n        \n        if (tNewSources.count==0 && tDelayedSmartSources.count==0)\n            return NO;\n        \n        if (tNewSources.count>0)\n        {\n            [_tableView deselectAll:nil];\n        \n            [_sourcesManager addSources:tNewSources];\n        \n            [_tableView reloadData];\n        \n            [_tableView selectRowIndexes:[NSIndexSet indexSetWithIndex:_sourcesManager.allSources.count-1] byExtendingSelection:NO];\n        }\n        \n        if (tDelayedSmartSources.count==0)\n        {\n            // Handle collisions\n            \n            // A COMPLETER\n        }\n        \n        return YES;\n    }\n    \n    return NO;\n}\n\n- (void)tableView:(NSTableView *)inTableView draggingSession:(NSDraggingSession *)inDraggingSession endedAtPoint:(NSPoint)inScreenPoint operation:(NSDragOperation)inOperation\n{\n    _internalDragData=nil;\n}\n\n#pragma mark - NSOpenSavePanelDelegate\n\n- (BOOL)panel:(id)sender shouldEnableURL:(NSURL *)inURL\n{\n    if (inURL==nil)\n        return NO;\n    \n    if (inURL.isFileURL==NO)\n        return NO;\n    \n    if (inURL.hasDirectoryPath==NO)\n    {\n        NSString * tPathExtension=inURL.pathExtension;\n        \n        if ([tPathExtension caseInsensitiveCompare:@\"crash\"]!=NSOrderedSame &&\n            [tPathExtension caseInsensitiveCompare:@\"ips\"]!=NSOrderedSame)\n            return NO;\n            \n        if ([_openPanelExistingSingleFiles containsObject:inURL.path]==YES)\n            return NO;\n    }\n    else\n    {\n        if ([_openPanelExistingDirectories containsObject:inURL.path]==YES)\n            return NO;\n    }\n    \n    return YES;\n}\n\n#pragma mark - CUIKeyViews\n\n- (NSView *)firstKeyView\n{\n    return _tableView;\n}\n\n- (NSView *)lastKeyView\n{\n    return _tableView;\n}\n\n#pragma mark -\n\n- (void)tableViewSelectionDidChange:(NSNotification *)inNotification\n{\n    NSIndexSet * tIndexSet=[_tableView selectedRowIndexes];\n    \n    if (tIndexSet.count==0)\n    {\n        _removeButton.enabled=NO;\n        \n        _sourcesSelection.sources=[NSSet set];\n    }\n    else\n    {\n        __block BOOL tSourcesCanBeDeleted=YES;\n        \n        NSArray * tSelectedSources=[_sourcesManager.allSources objectsAtIndexes:tIndexSet];\n        \n        [tSelectedSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            switch(bSource.type)\n            {\n                case CUICrashLogsSourceTypeAll:\n                case CUICrashLogsSourceTypeStandardDirectory:\n                case CUICrashLogsSourceTypeToday:\n                    \n                    tSourcesCanBeDeleted=NO;\n                    \n                    break;\n                    \n                default:\n                    \n                    break;\n            }\n        }];\n        \n        _removeButton.enabled=tSourcesCanBeDeleted;\n        \n        _sourcesSelection.sources=[[NSSet alloc] initWithArray:tSelectedSources];\n    }\n}\n\n- (void)sourcesManagerSourcesDidChange:(NSNotification *)inNotification\n{\n    NSSet * tOldSources=_sourcesSelection.sources;\n    \n    [_tableView reloadData];\n \n    // Refresh Selection\n    \n    NSMutableIndexSet * tIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_sourcesManager.allSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if ([tOldSources containsObject:bSource]==YES)\n            [tIndexSet addIndex:bIndex];\n        \n    }];\n    \n    if (tIndexSet.count==0)\n    {\n        [tIndexSet addIndex:0];\n    }\n    \n    _sourcesSelection.sources=[[NSSet alloc] initWithArray:[_sourcesManager.allSources objectsAtIndexes:tIndexSet]];\n    \n    [_tableView selectRowIndexes:tIndexSet byExtendingSelection:NO];\n}\n\n- (void)sourceDidUpdateSource:(NSNotification *)inNotification\n{\n    CUICrashLogsSource * tSource=(CUICrashLogsSource *)inNotification.object;\n    \n    if ([tSource isKindOfClass:[CUICrashLogsSource class]]==NO)\n        return;\n    \n    NSUInteger tIndex=[_sourcesManager.allSources indexOfObject:tSource];\n    \n    if (tIndex==NSNotFound)\n        return;\n    \n    [_tableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndex:tIndex] columnIndexes:[NSIndexSet indexSetWithIndex:0]];\n}\n\n- (void)sourcesSelectionDidChange:(NSNotification *)inNotification\n{\n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    // Stop observing\n    \n    [tNotificationCenter removeObserver:self name:CUICrashLogsSourcesSelectionDidChangeNotification object:_sourcesSelection];\n    \n    // Refresh Selection\n    \n    NSMutableIndexSet * tIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_sourcesManager.allSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if ([self->_sourcesSelection.sources containsObject:bSource]==YES)\n            [tIndexSet addIndex:bIndex];\n        \n    }];\n    \n    if (tIndexSet.count!=_sourcesManager.allSources.count)\n    {\n        if (tIndexSet.count==0)\n            [tIndexSet addIndex:0];\n        \n        _sourcesSelection.sources=[[NSSet alloc] initWithArray:[_sourcesManager.allSources objectsAtIndexes:tIndexSet]];\n    }\n    \n    [_tableView selectRowIndexes:tIndexSet byExtendingSelection:NO];\n    \n    // Restore observation\n    \n    [tNotificationCenter addObserver:self selector:@selector(sourcesSelectionDidChange:) name:CUICrashLogsSourcesSelectionDidChangeNotification object:_sourcesSelection];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashReporterDefaults.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\ntypedef NS_ENUM(NSUInteger, CUICrashReporterDialogType)\n{\n    CUICrashReporterDialogTypeBasic,\n    CUICrashReporterDialogTypeDeveloper,\n    CUICrashReporterDialogTypeServer,\n};\n\ntypedef NS_ENUM(NSUInteger, CUICrashReporterNotificationMode)\n{\n    CUICrashReporterNotificationModeDialog,\n    CUICrashReporterNotificationModeUserNotification,\n};\n\n@interface CUICrashReporterDefaults : NSObject\n\n    @property (nonatomic) CUICrashReporterDialogType dialogType;\n\n    @property (nonatomic) CUICrashReporterNotificationMode notificationMode;\n\n    @property (nonatomic) BOOL reportUncaughtExceptions;\n\n+ (CUICrashReporterDefaults *)standardCrashReporterDefaults;\n\n- (void)refresh;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashReporterDefaults.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashReporterDefaults.h\"\n\nNSString * const CUICrashReporterBundleIdentifier=@\"com.apple.CrashReporter\";\n\nNSString * const CUICrashReporterDefaultsDialogTypeKey=@\"DialogType\";\n\nNSString * const CUICrashReporterDefaultsNotificationModeKey=@\"UseUNC\";\n\nNSString * const CUICrashReporterDefaultsReportUncaughtExceptionKey=@\"NSApplicationShowExceptions\";\n\n@interface CUICrashReporterDefaults ()\n\n+ (CUICrashReporterDialogType)dialogTypeFromString:(NSString *)inString;\n\n+ (NSString *)stringFromDialogType:(CUICrashReporterDialogType)inDialogType;\n\n- (void)refresh;\n\n// Notifications\n\n- (void)applicationDidBecomeActive:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUICrashReporterDefaults\n\n+ (CUICrashReporterDefaults *)standardCrashReporterDefaults\n{\n    static CUICrashReporterDefaults * sCrashReporterDefaults=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sCrashReporterDefaults=[CUICrashReporterDefaults new];\n        \n    });\n    \n    return sCrashReporterDefaults;\n}\n\n+ (CUICrashReporterDialogType)dialogTypeFromString:(NSString *)inString\n{\n    if ([inString isKindOfClass:NSString.class]==NO)\n        return CUICrashReporterDialogTypeBasic;\n    \n    static NSDictionary * sStringToEnumDictionary=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sStringToEnumDictionary=@{\n                             @\"basic\":@(CUICrashReporterDialogTypeBasic),\n                             @\"developer\":@(CUICrashReporterDialogTypeDeveloper),\n                             @\"crashreport\":@(CUICrashReporterDialogTypeBasic),\n                             @\"server\":@(CUICrashReporterDialogTypeServer)\n                             \n                             };\n        \n    });\n    \n    NSNumber * tNumber=sStringToEnumDictionary[inString];\n    \n    if (tNumber==nil)\n        return CUICrashReporterDialogTypeBasic;\n    \n    return [tNumber unsignedIntegerValue];\n}\n\n+ (NSString *)stringFromDialogType:(CUICrashReporterDialogType)inDialogType\n{\n    static NSDictionary * sEnumToStringDictionary=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sEnumToStringDictionary=@{\n                             @(CUICrashReporterDialogTypeBasic):@\"basic\",\n                             @(CUICrashReporterDialogTypeDeveloper):@\"developer\",\n                             @(CUICrashReporterDialogTypeServer):@\"server\"\n                             };\n        \n    });\n    \n    return sEnumToStringDictionary[@(inDialogType)];\n}\n\n#pragma mark -\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        [self refresh];\n        \n        // Register for notifications\n        \n        [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(applicationDidBecomeActive:) name:NSApplicationDidBecomeActiveNotification object:nil];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (void)refresh\n{\n    NSDictionary * tDictionary=(__bridge_transfer NSDictionary *)CFPreferencesCopyMultiple(NULL,(__bridge CFStringRef) CUICrashReporterBundleIdentifier, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n    \n    if (tDictionary==nil)\n        tDictionary=[NSDictionary dictionary];\n    \n    Boolean tBoolean=FALSE;\n    \n    if (CFPreferencesGetAppBooleanValue((__bridge CFStringRef)CUICrashReporterDefaultsReportUncaughtExceptionKey,kCFPreferencesAnyApplication,&tBoolean)==FALSE)\n    {\n        tBoolean=FALSE;\n    }\n    \n    NSMutableDictionary * tRepresentation=[tDictionary mutableCopy];\n    \n    tRepresentation[CUICrashReporterDefaultsReportUncaughtExceptionKey]=@(tBoolean);\n    \n    // Dialog Type\n    \n    NSString * tDialogTypeValue=tRepresentation[CUICrashReporterDefaultsDialogTypeKey];\n    \n    if ([tDialogTypeValue isKindOfClass:NSString.class]==NO)\n    {\n        if (tDialogTypeValue!=nil)\n            NSLog(@\"Unexpected value type for key: %@\",CUICrashReporterDefaultsDialogTypeKey);\n        \n        self.dialogType=CUICrashReporterDialogTypeBasic;\n    }\n    else\n    {\n        self.dialogType=[CUICrashReporterDefaults dialogTypeFromString:tDialogTypeValue];\n    }\n    \n    // Notification Mode\n    \n    NSNumber * tNumber=tRepresentation[CUICrashReporterDefaultsNotificationModeKey];\n    \n    if ([tDialogTypeValue isKindOfClass:NSString.class]==NO)\n    {\n        self.notificationMode=CUICrashReporterNotificationModeDialog;\n    }\n    else\n    {\n        if ([tNumber boolValue]==YES)\n        {\n            self.notificationMode=CUICrashReporterNotificationModeUserNotification;\n        }\n        else\n        {\n            self.notificationMode=CUICrashReporterNotificationModeDialog;\n        }\n    }\n    \n    // Report UncaughtException\n    \n    self.reportUncaughtExceptions=[tRepresentation[CUICrashReporterDefaultsReportUncaughtExceptionKey] boolValue];\n}\n\n#pragma mark -\n\n- (void)setDialogType:(CUICrashReporterDialogType)inDialogType\n{\n    if (_dialogType==inDialogType)\n        return;\n    \n    _dialogType=inDialogType;\n    \n    NSString * tString=[CUICrashReporterDefaults stringFromDialogType:_dialogType];\n    \n    CFPreferencesSetValue((__bridge CFStringRef)CUICrashReporterDefaultsDialogTypeKey, (__bridge CFStringRef)tString, (__bridge CFStringRef)CUICrashReporterBundleIdentifier, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n    CFPreferencesSynchronize((__bridge CFStringRef)CUICrashReporterBundleIdentifier, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n}\n\n- (void)setNotificationMode:(CUICrashReporterNotificationMode)inNotificationMode\n{\n    if (_notificationMode==inNotificationMode)\n        return;\n    \n    _notificationMode=inNotificationMode;\n    \n    NSNumber * tNumber=@(_notificationMode==CUICrashReporterNotificationModeUserNotification);\n    \n    CFPreferencesSetValue((__bridge CFStringRef)CUICrashReporterDefaultsNotificationModeKey, (__bridge CFNumberRef)tNumber, (__bridge CFStringRef)CUICrashReporterBundleIdentifier, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n    CFPreferencesSynchronize((__bridge CFStringRef)CUICrashReporterBundleIdentifier, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n}\n\n- (void)setReportUncaughtExceptions:(BOOL)inReportUncaughtExceptions\n{\n    if (_reportUncaughtExceptions==inReportUncaughtExceptions)\n        return;\n    \n    _reportUncaughtExceptions=inReportUncaughtExceptions;\n    \n    CFPreferencesSetValue((__bridge CFStringRef)CUICrashReporterDefaultsReportUncaughtExceptionKey, (__bridge CFNumberRef)@(_reportUncaughtExceptions), kCFPreferencesAnyApplication, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n    CFPreferencesSynchronize(kCFPreferencesAnyApplication, kCFPreferencesCurrentUser, kCFPreferencesAnyHost);\n}\n\n#pragma mark -\n\n- (void)applicationDidBecomeActive:(NSNotification *)inNotification\n{\n    [self refresh];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashedThreadCallRowView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUICrashedThreadCallRowViewIdentifier;\n\n@interface CUICrashedThreadCallRowView : NSTableRowView\n\n    @property (getter=isRootCall) BOOL rootCall;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashedThreadCallRowView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashedThreadCallRowView.h\"\n\nNSString * const CUICrashedThreadCallRowViewIdentifier=@\"CUICrashedThreadCallRowViewIdentifier\";\n\n@implementation CUICrashedThreadCallRowView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    [super drawRect:dirtyRect];\n    \n    NSRect tBounds=self.bounds;\n    \n    // Draw Background\n    \n    BOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    if (tIsDark==NO)\n        [[NSColor colorWithCalibratedRed:1.0f green:250.0/255.0 blue:250.0/255.0 alpha:1.0f] set];\n    else\n        [[NSColor colorWithCalibratedRed:0.04f green:0/255.0 blue:0/255.0 alpha:1.0f] set];\n        \n    NSRectFill(tBounds);\n    \n    if (self.isRootCall==YES)\n    {\n        // Draw bottom line\n    \n        if (tIsDark==NO)\n            [[NSColor colorWithCalibratedRed:0.7882f green:0.1647f blue:0.0902f alpha:1.0] set];\n        else\n            [[NSColor colorWithCalibratedRed:0.2 green:0 blue:0 alpha:1.0] set];\n        \n        [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMaxY(tBounds)-0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMaxY(tBounds)-0.5)];\n    }\n    \n    if (self.isSelected==YES)\n        [self drawSelectionInRect:dirtyRect];\n}\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashedThreadRowView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUICrashedThreadRowViewIdentifier;\n\n@interface CUICrashedThreadRowView : NSTableRowView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUICrashedThreadRowView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICrashedThreadRowView.h\"\n\nNSString * const CUICrashedThreadRowViewIdentifier=@\"CUICrashedThreadRowViewIdentifier\";\n\n@implementation CUICrashedThreadRowView\n\n- (void)drawRect:(NSRect)inRect\n{\n    if (self.isSelected==YES)\n    {\n        [super drawRect:inRect];\n        \n        return;\n    }\n    \n    NSRect tBounds=self.bounds;\n    \n    BOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    if (tIsDark==NO)\n    {\n        [[NSColor colorWithCalibratedRed:0.9647f green:0.8471f blue:0.8510f alpha:1.0] set];\n    }\n    else\n    {\n        [[NSColor colorWithCalibratedRed:145/255.0 green:60/255.0 blue:46.0/255.0 alpha:1.0] set];\n    }\n    \n    NSRectFill(tBounds);\n    \n    if (tIsDark==NO)\n    {\n        [[NSColor colorWithCalibratedRed:0.7882f green:0.1647f blue:0.0902f alpha:1.0] set];\n    }\n    else\n    {\n        [[NSColor colorWithCalibratedRed:0.2f green:0.1f blue:0.1f alpha:1.0] set];\n    }\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMinY(tBounds)+0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMinY(tBounds)+0.5)];\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMaxY(tBounds)-0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMaxY(tBounds)-0.5)];\n    \n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIDataTransform.h",
    "content": "/*\n Copyright (c) 2021-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUITextModeDisplaySettings.h\"\n\nextern NSString * const CUIDataTransformErrorDomain;\n\ntypedef NS_ENUM(NSUInteger, CUIDataTransformError)\n{\n    CUIDataTransformUnknownError=1\n};\n\nextern NSString * const CUIGenericAnchorAttributeName;\n\nextern NSString * const CUISectionAnchorAttributeName;\n\nextern NSString * const CUIThreadAnchorAttributeName;\n\nextern NSString * const CUIBinaryAnchorAttributeName;\n\ntypedef NS_ENUM(NSUInteger, CUIHyperlinksStyle)\n{\n    CUIHyperlinksNone,\n    CUIHyperlinksInternal,\n    CUIHyperlinksHTML\n};\n\ntypedef NS_ENUM(NSUInteger, CUISymbolicationMode)\n{\n    CUISymbolicationModeNone,\n    CUISymbolicationModeSymbolicate\n};\n\n@interface CUIDataTransform : NSObject\n\n    @property CUISymbolicationMode symbolicationMode;\n\n    @property (nonatomic) CUIHyperlinksStyle hyperlinksStyle;\n\n    @property (nonatomic) CUITextModeDisplaySettings * displaySettings;\n\n    @property (nonatomic) CGFloat fontSizeDelta;\n\n\n    @property (nonatomic) id input;\n\n    @property (readonly) NSAttributedString * output;\n\n\n    @property (readonly) NSError * error;\n\n- (BOOL)transform;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIDataTransform.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIDataTransform.h\"\n\nNSString * const CUIDataTransformErrorDomain=@\"fr.whitebox.data-tranform.error\";\n\n\nNSString * const CUIGenericAnchorAttributeName=@\"CUIGenericAnchorAttributeName\";\n\nNSString * const CUISectionAnchorAttributeName=@\"CUISectionAnchorAttributeName\";\n\nNSString * const CUIThreadAnchorAttributeName=@\"CUIThreadAnchorAttributeName\";\n\nNSString * const CUIBinaryAnchorAttributeName=@\"CUIBinaryAnchorAttributeName\";\n\n@interface CUIDataTransform ()\n\n    @property (nonatomic,readwrite) NSAttributedString * output;\n\n    @property (readwrite) NSError * error;\n\n- (void)setOutput:(NSAttributedString *)inOutput;\n\n@end\n\n@implementation CUIDataTransform\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _symbolicationMode=CUISymbolicationModeSymbolicate;\n        \n        _hyperlinksStyle=CUIHyperlinksInternal;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)setHyperlinksStyle:(CUIHyperlinksStyle)inHyperlinksStyle\n{\n    _output=nil;\n    \n    _hyperlinksStyle=inHyperlinksStyle;\n}\n\n- (void)setDisplaySettings:(CUITextModeDisplaySettings *)inDisplaySettings\n{\n    _output=nil;\n    \n    _displaySettings=inDisplaySettings;\n}\n\n- (void)setFontSizeDelta:(CGFloat)inFontSizeDelta\n{\n    _output=nil;\n    \n    _fontSizeDelta=inFontSizeDelta;\n}\n\n- (void)setInput:(id)inInput\n{\n    _output=nil;\n    \n    _input=inInput;\n}\n\n- (void)setOutput:(NSAttributedString *)inOutput\n{\n    _output=inOutput;\n}\n\n#pragma mark -\n\n- (BOOL)transform\n{\n    self.output=nil;\n    \n    return YES;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIExceptionTypePopUpViewController.h",
    "content": "/*\n Copyright (c) 2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIQuickHelpPopUpViewController.h\"\n\n@interface CUIExceptionTypePopUpViewController : CUIQuickHelpPopUpViewController\n\n    @property (readonly,copy) NSString * exceptionType;\n\n    @property (readonly,copy) NSString * exceptionSignal;\n\n- (void)setExceptionType:(NSString *)inType signal:(NSString *)inSignal;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIExceptionTypePopUpViewController.m",
    "content": "/*\n Copyright (c) 2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIExceptionTypePopUpViewController.h\"\n\n@interface CUIExceptionTypePopUpViewController ()\n\n@property (copy) NSString * exceptionType;\n\n@property (copy) NSString * exceptionSignal;\n\n@end\n\n@implementation CUIExceptionTypePopUpViewController\n\n- (void)setExceptionType:(NSString *)inType signal:(NSString *)inSignal\n{\n    NSURL * tURL=nil;\n    \n    if (inType!=nil && inSignal!=nil)\n    {\n        tURL=[self.bundle URLForResource:[NSString stringWithFormat:@\"%@_%@\",inType,inSignal] withExtension:@\"html\"];\n    }\n    \n    if (tURL==nil)\n    {\n        // Use no documentation file\n        \n        tURL=[self.bundle URLForResource:@\"unknown_exception_type\" withExtension:@\"html\"];\n    }\n    \n    self.contentsFileURL=tURL;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIExportAccessoryViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUITextModeDisplaySettings.h\"\n\ntypedef NS_ENUM(NSUInteger, CUICrashLogExportFormat)\n{\n    CUICrashLogExportFormatHTML=0,\n    CUICrashLogExportFormatRTF,\n    CUICrashLogExportFormatPDF,\n    CUICrashLogExportFormatText\n};\n\ntypedef NS_ENUM(NSUInteger, CUICrashLogExportedContentsType)\n{\n    CUICrashLogExportedContentsAll,\n    CUICrashLogExportedContentsSelection\n};\n\n@interface CUIExportAccessoryViewController : NSViewController\n\n    @property NSSavePanel * savePanel;\n\n    @property (nonatomic) CUICrashLogExportFormat exportFormat;\n\n    @property (nonatomic) BOOL canSelectExportedContents;\n\n    @property (nonatomic,readonly) CUICrashLogExportedContentsType exportedContents;\n\n    @property (nonatomic) BOOL canObfuscateContents;\n\n    @property (readonly) BOOL obfuscateContents;\n\n    @property (nonatomic) CUITextModeDisplaySettings * displaySettings;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIExportAccessoryViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIExportAccessoryViewController.h\"\n\n\n@interface CUIExportAccessoryViewController ()\n{\n    // Format\n    \n    IBOutlet NSPopUpButton * _formatPopUpButton;\n    \n    // Exported Contents\n    \n    IBOutlet NSButton * _allContentsRadioButton;\n    \n    IBOutlet NSButton * _selectionOnlyRadioButton;\n    \n    // Obfuscate Contents\n    \n    IBOutlet NSButton * _obfuscateContentsRadioButton;\n    \n    IBOutlet NSTextField * _obfuscateDescriptionLabel;\n}\n\n@property (readwrite) BOOL obfuscateContents;\n\n- (IBAction)switchExportFormat:(id)sender;\n\n- (IBAction)switchExportedContents:(id)sender;\n\n@end\n\n@implementation CUIExportAccessoryViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _obfuscateContents=NO;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUIExportAccessoryViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    // Export Format\n    \n    [_formatPopUpButton selectItemWithTag:self.exportFormat];\n    \n    // Exported Contents\n    \n    BOOL tRadioButtonEnabled=(self.canSelectExportedContents==YES);\n    \n    _selectionOnlyRadioButton.enabled=tRadioButtonEnabled;\n    _allContentsRadioButton.enabled=tRadioButtonEnabled;\n    \n    _allContentsRadioButton.state=NSControlStateValueOn;\n    \n    // Obfuscate Contents\n    \n    tRadioButtonEnabled=(self.canObfuscateContents==YES);\n    \n    _obfuscateContentsRadioButton.enabled=tRadioButtonEnabled;\n    _obfuscateContentsRadioButton.state=NSControlStateValueOff;\n    \n    _obfuscateDescriptionLabel.textColor=(tRadioButtonEnabled==YES) ? [NSColor labelColor] : [NSColor disabledControlTextColor];\n}\n\n#pragma mark -\n\n- (void)setExportFormat:(CUICrashLogExportFormat)inExportFormat\n{\n    if ([_formatPopUpButton selectItemWithTag:inExportFormat]==NO)\n        return;\n    \n    _exportFormat=inExportFormat;\n}\n\n- (void)setCanSelectExportedContents:(BOOL)inCanSelectExportedContents\n{\n    _canSelectExportedContents=inCanSelectExportedContents;\n    \n    if (_canSelectExportedContents==YES)\n    {\n        _selectionOnlyRadioButton.enabled=YES;\n        \n    }\n    else\n    {\n        _selectionOnlyRadioButton.enabled=NO;\n        _allContentsRadioButton.state=NSControlStateValueOn;\n    }\n}\n\n- (CUICrashLogExportedContentsType)exportedContents\n{\n    if (_allContentsRadioButton.state==NSControlStateValueOn)\n        return CUICrashLogExportedContentsAll;\n    \n    return CUICrashLogExportedContentsSelection;\n}\n\n- (void)setCanObfuscateContents:(BOOL)inCanObfuscateContents\n{\n    _canObfuscateContents=inCanObfuscateContents;\n    \n    if (_canObfuscateContents==YES)\n    {\n        _obfuscateContentsRadioButton.enabled=YES;\n    }\n    else\n    {\n        _obfuscateContentsRadioButton.enabled=NO;\n        _obfuscateContentsRadioButton.state=NSControlStateValueOff;\n    }\n}\n\n#pragma mark -\n\n- (IBAction)switchExportFormat:(NSPopUpButton *)sender\n{\n    _exportFormat=sender.selectedTag;\n    \n    switch(_exportFormat)\n    {\n        case CUICrashLogExportFormatHTML:\n            \n            self.savePanel.allowedFileTypes=@[@\"html\"];\n            \n            break;\n        \n        case CUICrashLogExportFormatRTF:\n            \n            self.savePanel.allowedFileTypes=@[@\"rtf\"];\n            \n            break;\n            \n        case CUICrashLogExportFormatPDF:\n            \n            self.savePanel.allowedFileTypes=@[@\"pdf\"];\n            \n            break;\n            \n        case CUICrashLogExportFormatText:\n            \n            self.savePanel.allowedFileTypes=@[@\"crash\"];\n            \n            break;\n    }\n}\n\n- (IBAction)switchExportedContents:(id)sender\n{\n    // Not used at this time\n}\n\n- (IBAction)switchObfuscateContents:(NSButton *)sender\n{\n    BOOL tObfuscateContents=(sender.state==NSControlStateValueOn);\n    \n    if (tObfuscateContents==_obfuscateContents)\n        return;\n    \n    _obfuscateContents=tObfuscateContents;\n    \n    if (self.canSelectExportedContents==YES)\n    {\n        _selectionOnlyRadioButton.enabled=(_obfuscateContents==NO);\n        _allContentsRadioButton.enabled=(_obfuscateContents==NO);\n        \n        if (_obfuscateContents==YES)\n            _allContentsRadioButton.state=NSControlStateValueOn;\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIFileDeadDropView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@class CUIFileDeadDropView;\n\n@protocol CUIFileDeadDropViewDelegate\n\n- (BOOL)fileDeadDropView:(CUIFileDeadDropView *)inView validateDropFileURLs:(NSArray<NSURL *> *)inFileURLs;\n\n- (BOOL)fileDeadDropView:(CUIFileDeadDropView *)inView acceptDropFileURLs:(NSArray<NSURL *> *)inFileURLs;\n\n@end\n\n@interface CUIFileDeadDropView : NSView\n\n    @property (weak) id<CUIFileDeadDropViewDelegate> delegate;\n\n    @property (nonatomic,readonly,getter=isHighlighted) BOOL highlighted;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIFileDeadDropView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIFileDeadDropView.h\"\n\n@interface CUIFileDeadDropView ()\n\n    @property (nonatomic,readwrite,getter=isHighlighted) BOOL highlighted;\n\n@end\n\n@implementation CUIFileDeadDropView\n\n- (instancetype)initWithFrame:(NSRect)inFrame\n{\n    self=[super initWithFrame:inFrame];\n    \n    if (self!=nil)\n    {\n        // Register for Drop\n        \n        [self registerForDraggedTypes:@[NSPasteboardTypeFileURL]];\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithCoder:(NSCoder *)decoder\n{\n    self=[super initWithCoder:decoder];\n    \n    if (self!=nil)\n    {\n        // Register for Drop\n        \n        [self registerForDraggedTypes:@[NSPasteboardTypeFileURL]];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)setHighlighted:(BOOL)inHighlighted\n{\n    if (_highlighted!=inHighlighted)\n    {\n        _highlighted=inHighlighted;\n        \n        [self setNeedsDisplay:YES];\n    }\n}\n\n#pragma mark -\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    [super drawRect:dirtyRect];\n}\n\n#pragma mark -\n\n- (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender\n{\n    if (self.delegate==nil)\n    {\n#ifdef DEBUG\n        NSLog(@\"CUIFileDeadDropView <0x%p>: drag & drop won't work. delegate is not set\",self);\n#endif\n        return NSDragOperationNone;\n    }\n    \n    NSPasteboard * tPasteBoard=[sender draggingPasteboard];\n    \n    if ([tPasteBoard.types containsObject:NSPasteboardTypeFileURL]==NO)\n        return NSDragOperationNone;\n    \n    NSDragOperation tSourceDragMask = [sender draggingSourceOperationMask];\n    \n    if ((tSourceDragMask & NSDragOperationCopy)==0)\n        return NSDragOperationNone;\n    \n    NSArray<Class> *tClasses = @[NSURL.class];\n    NSArray<NSURL*> *tURLArray = [tPasteBoard readObjectsForClasses:tClasses\n                                                            options:@{NSPasteboardURLReadingFileURLsOnlyKey:@(YES)}];\n    \n    if (tURLArray!=nil)\n    {\n        if ([self.delegate fileDeadDropView:self validateDropFileURLs:tURLArray]==YES)\n        {\n            self.highlighted=YES;\n            \n            return NSDragOperationCopy;\n        }\n    }\n    \n    return NSDragOperationNone;\n}\n\n- (BOOL)performDragOperation:(id <NSDraggingInfo>)sender\n{\n    if (self.delegate==nil)\n    {\n#ifdef DEBUG\n        NSLog(@\"CUIFileDeadDropView <0x%p>: drag & drop won't work. delegate is not set\",self);\n#endif\n        return NO;\n    }\n    \n    NSPasteboard * tPasteBoard=[sender draggingPasteboard];\n    \n    if ([tPasteBoard.types containsObject:NSPasteboardTypeFileURL]==YES)\n    {\n        NSArray<Class> *tClasses = @[NSURL.class];\n        NSArray<NSURL*> *tURLArray = [tPasteBoard readObjectsForClasses:tClasses\n                                                                options:@{NSPasteboardURLReadingFileURLsOnlyKey:@(YES)}];\n        \n       if (tURLArray!=nil)\n            return [self.delegate fileDeadDropView:self acceptDropFileURLs:tURLArray];\n    }\n    \n    return NO;\n}\n\n- (BOOL)prepareForDragOperation:(id <NSDraggingInfo>)sender\n{\n    self.highlighted=NO;\n    \n    return YES;\n}\n\n- (void)draggingExited:(id <NSDraggingInfo>)sender\n{\n    self.highlighted=NO;\n}\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIFontAndColorsFramedView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface CUIFontAndColorsFramedView : NSView\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIFontAndColorsFramedView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIFontAndColorsFramedView.h\"\n\n@implementation CUIFontAndColorsFramedView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    NSRect tBounds=self.bounds;\n    \n    // Draw Background\n    \n    BOOL tIsDarkMode=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    NSColor * tBackgroundColor=(tIsDarkMode==NO) ? [NSColor colorWithDeviceWhite:0.95 alpha:1.0] : [NSColor colorWithDeviceWhite:0.0 alpha:0.10];\n    \n    [tBackgroundColor set];\n    \n    NSRectFill(dirtyRect);\n    \n    NSColor * tForegroundColor=(tIsDarkMode==NO) ? [NSColor colorWithDeviceWhite:0.0 alpha:0.25] : [NSColor containerBorderColor];\n    \n    [tForegroundColor set];\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMinY(tBounds)+0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMinY(tBounds)+0.5)];\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMaxY(tBounds)-0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMaxY(tBounds)-0.5)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIFontBoxView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIFontBoxView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIFontBoxView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIFontBoxView.h\"\n\n#import \"NSResponder+Appearance.h\"\n\n@implementation CUIFontBoxView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    if ([self WB_isEffectiveAppearanceDarkAqua]==NO)\n        [[NSColor colorWithWhite:1.0 alpha:0.50] set];\n    else\n        [[NSColor colorWithWhite:1.0 alpha:0.05] set];\n        \n    NSRectFillUsingOperation(self.bounds, NSCompositingOperationSourceOver);\n    \n    [[NSColor quaternaryLabelColor] set];\n    \n    NSFrameRectWithWidthUsingOperation(self.bounds, 1, NSCompositingOperationSourceOver);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIHopperDisassemblerManager.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIApplicationItemAttributes.h\"\n\n#include \"CUICodeType.h\"\n\n@protocol CUIHopperDisassemblerActions\n\n- (IBAction)openWithHopperDisassembler:(id)sender;\n\n@end\n\n@interface CUIHopperDisassemblerManager : NSObject\n\n+ (CUIHopperDisassemblerManager *)sharedManager;\n\n- (NSMenu *)availableApplicationsMenuWithTarget:(id<CUIHopperDisassemblerActions>)inTarget;\n\n- (void)openBinaryImage:(NSString *)inPath withApplicationAttributes:(CUIApplicationItemAttributes *)inApplicationAttributes codeType:(CUICodeType)inCodeType fileOffSet:(void *)inOffset;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIHopperDisassemblerManager.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import \"CUIHopperDisassemblerManager.h\"\n\nNSString * const CUIHopperDisassembler4BundleIdentifier=@\"com.cryptic-apps.hopper-web-4\";\n\n@implementation CUIHopperDisassemblerManager\n\n+ ()sharedManager\n{\n    static CUIHopperDisassemblerManager * sManager=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sManager=[CUIHopperDisassemblerManager new];\n        \n    });\n    \n    return sManager;\n}\n\n#pragma mark -\n\n- (NSMenu *)availableApplicationsMenuWithTarget:(id<CUIHopperDisassemblerActions>)inTarget\n{\n    NSArray * tArray=(__bridge_transfer NSArray *)LSCopyApplicationURLsForBundleIdentifier((__bridge CFStringRef)CUIHopperDisassembler4BundleIdentifier,NULL);\n    \n    // Remove the demo versions and the versions that do not include the hopper command line tool\n    \n    NSArray * tFilteredVersions=[tArray WB_filteredArrayUsingBlock:^BOOL(NSURL * bURL, NSUInteger bIndex) {\n        \n        NSURL * tHopperToolURL=[bURL URLByAppendingPathComponent:@\"/Contents/MacOS/hopper\"];\n        \n        if ([tHopperToolURL checkResourceIsReachableAndReturnError:NULL] == NO)\n            return NO;\n        \n        NSBundle * tBundle=[NSBundle bundleWithURL:bURL];\n        NSString * tBundleVersionString=[tBundle objectForInfoDictionaryKey:@\"CFBundleShortVersionString\"];\n        \n        return ([tBundleVersionString hasSuffix:@\"-demo\"]==NO);\n        \n    }];\n    \n    if (tFilteredVersions.count==0)\n        return nil;\n    \n    NSMutableArray * tApplicationsAttributes=[[tFilteredVersions WB_arrayByMappingObjectsUsingBlock:^CUIApplicationItemAttributes *(NSURL * bApplicationURL, NSUInteger bIndex) {\n        \n        return [[CUIApplicationItemAttributes alloc] initWithURL:bApplicationURL];\n        \n    }] mutableCopy];\n    \n    // Sort the array\n    \n    [tApplicationsAttributes sortUsingSelector:@selector(compare:)];\n    \n    // Filter the array\n    \n    tApplicationsAttributes=[tApplicationsAttributes WB_filteredArrayUsingBlock:^BOOL(CUIApplicationItemAttributes * bAttributes, NSUInteger bIndex) {\n        \n        return (bAttributes.duplicate==NO);\n        \n    }];\n    \n    NSMenu * tMenu=[[NSMenu alloc] initWithTitle:@\"\"];\n    \n    if (tMenu==nil)\n        return nil;\n    \n    for(CUIApplicationItemAttributes * tAttributes in tApplicationsAttributes)\n    {\n        NSMenuItem * tMenuItem=tAttributes.applicationMenuItem;\n        \n        tMenuItem.action=@selector(openWithHopperDisassembler:);\n        tMenuItem.target=inTarget;\n        \n        [tMenu addItem:tMenuItem];\n    }\n    \n    return tMenu;\n}\n\n- (void)openBinaryImage:(NSString *)inPath withApplicationAttributes:(CUIApplicationItemAttributes *)inApplicationAttributes codeType:(CUICodeType)inCodeType fileOffSet:(void *)inOffset\n{\n    if (inPath==nil)\n    {\n        NSLog(@\"Binary image path should not be nil\");\n        return;\n    }\n    \n\t__auto_type postLaunchActions = ^(NSRunningApplication * runningApplication)\n\t{\n\t\t// Convert the codeType\n\t\t\n\t\tNSString * tCPUSelection=nil;\n\t\t\n\t\tswitch(inCodeType)\n\t\t{\n\t\t\tcase CUICodeTypeX86:\n\t\t\t\t\n\t\t\t\ttCPUSelection=@\"--intel-32\";\n\t\t\t\tbreak;\n\t\t\t\t\n\t\t\tcase CUICodeTypeX86_64:\n\t\t\t\t\n\t\t\t\ttCPUSelection=@\"--intel-64\";\n\t\t\t\tbreak;\n\t\t\t\t\n\t\t\tcase CUICodeTypeARM_64:\n\t\t\t\t\n\t\t\t\ttCPUSelection=@\"--aarch64\";\n\t\t\t\tbreak;\n\t\t\n\t\t\tcase CUICodeTypePPC:\n\t\t\t\t\n\t\t\t\ttCPUSelection=@\"--ppc\";\n\t\t\t\tbreak;\n\t\t\t\t\n\t\t\tdefault:\n\t\t\t\t\n\t\t\t\tbreak;\n\t\t}\n\t\t\n\t\tNSURL * tCommandLineToolURL=[inApplicationAttributes.applicationURL URLByAppendingPathComponent:@\"/Contents/MacOS/hopper\"];\n\t\t\n\t\tNSTask * tTask=[NSTask new];\n\t\ttTask.executableURL=tCommandLineToolURL;\n\t\t\n\t\tNSMutableArray * tArguments=[NSMutableArray array];\n\t\t\n\t\t[tArguments addObjectsFromArray:@[\n\t\t\t\t\t\t\t\t\t\t  @\"-a\",\n\t\t\t\t\t\t\t\t\t\t  @\"-l\",\n\t\t\t\t\t\t\t\t\t\t  @\"FAT\",\n\t\t\t\t\t\t\t\t\t\t  @\"-l\",\n\t\t\t\t\t\t\t\t\t\t  @\"Mach-O\",\n\t\t\t\t\t\t\t\t\t\t  @\"-e\",\n\t\t\t\t\t\t\t\t\t\t  inPath]];\n\t\t\n\t\tif (tCPUSelection!=nil)\n\t\t\t[tArguments addObject:tCPUSelection];\n\t\t\n\t\tif (inOffset!=NULL)\n\t\t{\n\t\t\t[tArguments addObjectsFromArray:@[\n\t\t\t\t\t\t\t\t\t\t\t  @\"--python-command\",\n\t\t\t\t\t\t\t\t\t\t\t  [NSString stringWithFormat:@\"doc = Document.getCurrentDocument();doc.setCurrentAddress(0x%lx)\",(unsigned long)inOffset]\n\t\t\t\t\t\t\t\t\t\t\t  ]];\n\t\t}\n\t\t\n\t\ttTask.arguments=tArguments;\n\t\t\n\t\ttTask.terminationHandler=^(NSTask * bTask){\n\t\t\n\t\t\tdispatch_async(dispatch_get_main_queue(), ^{\n\t\t\t\t\n\t\t\t\tif (bTask.terminationStatus!=0)\n\t\t\t\t{\n\t\t\t\t\tNSLog(@\"hopper tool returned with status %d\",bTask.terminationStatus);\n\t\t\t\t}\n\t\t\t});\n\t\t};\n\t\t\n\t\tNSError * tError=nil;\n\t\t\n\t\t[tTask launchAndReturnError:&tError];\n\t};\n\t\n\t// Launch the Hopper Disassembler application if it's not already running (workaround for a limitation of the hopper command line tool)\n    \n#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101600\n\tif (@available(*, macOS 11.0))\n\t{\n\t\t[[NSWorkspace sharedWorkspace] openApplicationAtURL:inApplicationAttributes.applicationURL\n\t\t\t\t\t\t\t\t\t\t\t  configuration:[NSWorkspaceOpenConfiguration configuration] completionHandler:^(NSRunningApplication * _Nullable bRunningApplication, NSError * _Nullable error) {\n\t\t\tif (bRunningApplication==nil)\n\t\t\t{\n\t\t\t\tNSLog(@\"No running instances of Hopper Disassembler and not able to launch one: %@\",error);\n\t\t\t\t\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tpostLaunchActions(bRunningApplication);\n\t\t}];\n\t}\n\telse\n#endif\n\t{\n\t\tNSRunningApplication * tRunningApplication=[[NSWorkspace sharedWorkspace] launchApplicationAtURL:inApplicationAttributes.applicationURL\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t options:0\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   configuration:@{}\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   error:NULL];\n\t\t\n\t\tif (tRunningApplication==nil)\n\t\t{\n\t\t\tNSLog(@\"No running instances of Hopper Disassembler and not able to launch one.\");\n\t\t\t\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tpostLaunchActions(tRunningApplication);\n\t}\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIIPSTransform.h",
    "content": "/*\n Copyright (c) 2021-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import \"CUIReportThemedTransform.h\"\n\n@interface CUIIPSTransform : CUIReportThemedTransform\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIIPSTransform.m",
    "content": "/*\n Copyright (c) 2021-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import \"CUIIPSTransform.h\"\n\n#import \"IPSReport.h\"\n\n#import \"IPSDateFormatter.h\"\n\n#import \"IPSIncident+ApplicationSpecificInformation.h\"\n#import \"IPSThreadState+RegisterDisplayName.h\"\n#import \"IPSImage+UserCode.h\"\n\n#import \"IPSImage+Offset.h\"\n\n#import \"CUIApplicationPreferences.h\"\n#import \"CUIApplicationPreferences+Themes.h\"\n\n#import \"CUICrashLogBinaryImages.h\"\n\n#import \"CUIBinaryImageUtility.h\"\n\n#import \"CUIThemesManager.h\"\n#import \"CUIThemeItemsGroup+UI.h\"\n\n#ifndef __DISABLE_SYMBOLICATION_\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUISymbolicationManager.h\"\n#endif\n\n#import \"CUIStackFrame.h\"\n\n#import \"CUICrashLogExceptionInformation+QuickHelp.h\"\n\n@interface CUIDataTransform (Private)\n\n- (void)setOutput:(NSAttributedString *)inOutput;\n\n@end\n\n@implementation CUIIPSTransform\n\n+ (NSString *)binaryImageStringForAddress:(NSUInteger)inAddress\n{\n    NSString * tString=[NSString stringWithFormat:@\"0x%lx\",inAddress];\n    \n    NSUInteger tLength=tString.length;\n    \n    NSString * tSpaceString=@\"                  \";\n    \n    return [[tSpaceString substringFromIndex:tLength] stringByAppendingString:tString];\n}\n\n#pragma mark -\n\n- (NSAttributedString *)attributedStringForKey:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.keyAttributes];\n}\n\n- (NSAttributedString *)attributedStringForKeyWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.keyAttributes];\n}\n\n\n- (NSAttributedString *)attributedStringForPlainText:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n        \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.plainTextAttributes];\n}\n\n- (NSAttributedString *)attributedStringForPlainTextWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.plainTextAttributes];\n}\n\n- (NSAttributedString *)attributedStringForPath:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.pathAttributes];\n}\n\n- (NSAttributedString *)attributedStringForPathWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.pathAttributes];\n}\n\n- (NSAttributedString *)attributedStringForVersion:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.versionAttributes];\n}\n\n- (NSAttributedString *)attributedStringForVersionWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.versionAttributes];\n}\n\n- (NSAttributedString *)attributedStringForUUID:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.UUIDAttributes];\n}\n\n- (NSAttributedString *)attributedStringForUUIDWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.UUIDAttributes];\n}\n\n- (NSAttributedString *)attributedStringForThreadLabel:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.threadLabelAttributes];\n}\n\n- (NSAttributedString *)attributedStringForThreadLabelWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.threadLabelAttributes];\n}\n\n- (NSAttributedString *)attributedStringForCrashedThreadLabel:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.crashedThreadLabelAttributes];\n}\n\n- (NSAttributedString *)attributedStringForCrashedThreadLabelWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.crashedThreadLabelAttributes];\n}\n\n- (NSAttributedString *)attributedStringForMemoryAddress:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:self.memoryAddressAttributes];\n}\n\n- (NSAttributedString *)attributedStringForMemoryAddressWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.memoryAddressAttributes];\n}\n\n- (NSAttributedString *)attributedStringForUser:(BOOL)inUserCode code:(NSString *)inString\n{\n    if (inString==nil)\n        return nil;\n    \n    return [[NSAttributedString alloc] initWithString:inString attributes:(inUserCode==YES) ? self.executableCodeAttributes : self.OSCodeAttributes];\n}\n\n- (NSAttributedString *)attributedStringForUser:(BOOL)inUserCode codeWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(2,3)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:(inUserCode==YES) ? self.executableCodeAttributes : self.OSCodeAttributes];\n}\n\n- (NSAttributedString *)attributedStringForRegisterValueWithFormat:(NSString *)format, ... NS_FORMAT_FUNCTION(1,2)\n{\n    if (format==nil)\n        return nil;\n    \n    va_list args;\n    va_start(args, format);\n    NSString * tString=[[NSString alloc] initWithFormat:format arguments:args];\n    va_end(args);\n    \n    return [[NSAttributedString alloc] initWithString:tString attributes:self.registerValueAttributes];\n}\n\n- (NSAttributedString *)attributedStringForUser:(BOOL)inUserCode binaryImageIdentifier:(NSString *)inIdentifier\n{\n    if (inIdentifier==nil)\n        return nil;\n    \n    NSMutableDictionary * tMutableDictionary=[self.plainTextAttributes mutableCopy];\n    tMutableDictionary[NSForegroundColorAttributeName]=(inUserCode==YES) ? [CUIBinaryImageUtility colorForUserCode]: [CUIBinaryImageUtility colorForIdentifier:inIdentifier];\n    \n    return [[NSAttributedString alloc] initWithString:(inUserCode==NO) ? inIdentifier : [NSString stringWithFormat:@\"+%@\",inIdentifier]\n                                           attributes:tMutableDictionary];\n}\n\n#pragma mark -\n\n- (NSArray *)attributedLinesForHeaderOfIncident:(IPSIncident *)inIncident\n{\n    IPSIncidentHeader * tHeader=inIncident.header;\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n\tNSMutableAttributedString * tMutableAttributedString;\n\t\n\tif ([tHeader.crashReporterKey isKindOfClass:NSString.class])\n\t{\n\t\ttMutableAttributedString=[[self attributedStringForKey:@\"CrashReporter Key:\"] mutableCopy];\n\t\t[tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"      \"]];\n\t\t[tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:tHeader.crashReporterKey]];\n\t\t\n\t\t[tMutableArray addObject:tMutableAttributedString];\n\t}\n\t\n\ttMutableAttributedString=[[self attributedStringForKey:@\"Process:\"] mutableCopy];\n    \n    NSDictionary * tJumpAnchorAttributes=@{\n                                           CUISectionAnchorAttributeName:@\"section:Header\"\n                                           };\n    \n    [tMutableAttributedString addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,tMutableAttributedString.length)];\n    \n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"               %@ [%d]\",tHeader.processName,tHeader.processID]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Path:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"                  \"]];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPath:tHeader.processPath]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    \n    IPSBundleInfo * tBundleInfo=tHeader.bundleInfo;\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Identifier:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"            %@\",(tBundleInfo.bundleIdentifier!=nil) ? tBundleInfo.bundleIdentifier : tHeader.processName]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Version:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"               \"]];\n    \n    [tMutableAttributedString appendAttributedString:[self attributedStringForVersion:(tBundleInfo.bundleShortVersionString!=nil) ? tBundleInfo.bundleShortVersionString : @\"???\"]];\n    \n    if (tBundleInfo.bundleVersion!=nil)\n        [tMutableAttributedString appendAttributedString:[self attributedStringForVersionWithFormat:@\" (%@)\",tBundleInfo.bundleVersion]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Code Type:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"             %@ (%@)\",tHeader.cpuType,(tHeader.translated==NO) ? @\"Native\" : @\"Translated\"]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Parent Process:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"        %@ [%d]\",tHeader.parentProcessName,tHeader.parentProcessID]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    if (tHeader.responsibleProcessName!=nil)\n    {\n        tMutableAttributedString=[[self attributedStringForKey:@\"Responsible:\"] mutableCopy];\n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"           %@ [%d]\",tHeader.responsibleProcessName,tHeader.responsibleProcessID]];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n    }\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"User ID:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"               %d\",tHeader.userID]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    [tMutableArray addObject:@\"\"];\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Date/Time:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"             %@\",[[IPSDateFormatter sharedFormatter] stringFromDate:tHeader.captureTime]]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"OS Version:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"            \"]];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForVersionWithFormat:@\"%@ (%@)\",tHeader.operatingSystemVersion.train,tHeader.operatingSystemVersion.build]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Report Version:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"        12\"]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n\tif ([tHeader.crashReporterKey isKindOfClass:NSUUID.class])\n\t{\n\t\ttMutableAttributedString=[[self attributedStringForKey:@\"Anonymous UUID:\"] mutableCopy];\n\t\t[tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"        \"]];\n\t\t[tMutableAttributedString appendAttributedString:[self attributedStringForUUID:[tHeader.crashReporterKey UUIDString]]];\n\t\t\n\t\t[tMutableArray addObject:tMutableAttributedString];\n\t}\n    \n    [tMutableArray addObject:@\"\"];\n    \n    if (tHeader.sleepWakeUUID!=nil)\n    {\n        tMutableAttributedString=[[self attributedStringForKey:@\"Sleep/Wake UUID:\"] mutableCopy];\n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"       \"]];\n        [tMutableAttributedString appendAttributedString:[self attributedStringForUUID:tHeader.sleepWakeUUID.UUIDString]];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n    }\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Time Awake Since Boot:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\" %lu seconds\",(unsigned long)tHeader.uptime]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    [tMutableArray addObject:@\"\"];\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"System Integrity Protection:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\" %@\",(tHeader.systemIntegrityProtectionEnable==YES) ? @\"enabled\" : @\"disabled\"]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    [tMutableArray addObject:@\"\"];\n    \n    return tMutableArray;\n}\n\n- (NSArray *)attributedLinesForExceptionInformationOfIncident:(IPSIncident *)inIncident\n{\n    IPSIncidentExceptionInformation * tExceptionInformation=inIncident.exceptionInformation;\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForKey:@\"Crashed Thread:\"] mutableCopy];\n    \n    NSDictionary * tJumpAnchorAttributes=@{\n                                           CUISectionAnchorAttributeName:@\"section:Exception Information\"\n                                           };\n    \n    [tMutableAttributedString addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,tMutableAttributedString.length)];\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==CUIDocumentBacktracesSection &&\n        inIncident.threads.count>0)\n    {\n        switch(self.hyperlinksStyle)\n        {\n            case CUIHyperlinksInternal:\n                \n                [tMutableAttributedString addAttributes:@{\n                                                NSLinkAttributeName:[NSURL URLWithString:@\"a://crashed_thread\"]\n                                                }\n                                        range:NSMakeRange(0,tMutableAttributedString.length)];\n                \n                break;\n                \n            case CUIHyperlinksHTML:\n                \n                [tMutableAttributedString addAttributes:@{\n                                                NSLinkAttributeName:[NSURL URLWithString:@\"sharp://crashed_thread\"]\n                                                }\n                                        range:NSMakeRange(0,tMutableAttributedString.length)];\n                \n                break;\n                \n            default:\n                \n                break;\n        }\n    }\n    \n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"        \"]];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForCrashedThreadLabelWithFormat:@\"%lu\",(unsigned long)tExceptionInformation.faultingThread]];\n    \n    IPSLegacyInfo * tLegacyInfo=tExceptionInformation.legacyInfo;\n    \n    if (tLegacyInfo.threadTriggered.queue!=nil)\n        [tMutableAttributedString appendAttributedString:[self attributedStringForCrashedThreadLabelWithFormat:@\"  Dispatch queue: %@\",tLegacyInfo.threadTriggered.queue]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    [tMutableArray addObject:@\"\"];\n    \n    IPSException * tException=tExceptionInformation.exception;\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Exception Type:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"        \"]];\n    \n    NSAttributedString * tAttributedString;\n    \n    if (tException.signal!=nil)\n        tAttributedString=[self attributedStringForPlainTextWithFormat:@\"%@ (%@)\",tException.type,tException.signal];\n    else\n        tAttributedString=[self attributedStringForPlainTextWithFormat:@\"%@\",tException.type];\n    \n    NSMutableAttributedString * tValueAttributedString=[tAttributedString mutableCopy];\n    \n    switch(self.hyperlinksStyle)\n    {\n        case CUIHyperlinksInternal:\n            \n            [tValueAttributedString addAttributes:@{\n                                                    NSUnderlineStyleAttributeName:@(NSUnderlineStyleSingle|NSUnderlineStylePatternDash)\n                                                    }\n             \n                                            range:NSMakeRange(0, tValueAttributedString.length)];\n            \n            [tValueAttributedString addAttributes:@{\n                                                    NSLinkAttributeName:[NSURL URLWithString:@\"a://exception_type\"]\n                                                    }\n                                            range:NSMakeRange(0, tValueAttributedString.length)];\n            \n            break;\n            \n        default:\n            \n            break;\n    }\n    \n    [tMutableAttributedString appendAttributedString:tValueAttributedString];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    tMutableAttributedString=[[self attributedStringForKey:@\"Exception Codes:\"] mutableCopy];\n    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"       %@\",(tException.subtype!=nil) ? tException.subtype : tException.codes]];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    if (tExceptionInformation.isCorpse==YES)\n    {\n        tMutableAttributedString=[[self attributedStringForKey:@\"Exception Note:\"] mutableCopy];\n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"        EXC_CORPSE_NOTIFY\"]];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n    }\n    \n    [tMutableArray addObject:@\"\"];\n    \n    IPSTermination * tTermination=tExceptionInformation.termination;\n    \n    if (tTermination!=nil)\n    {\n        tMutableAttributedString=[[self attributedStringForKey:@\"Termination Reason:\"] mutableCopy];\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"    \"]];\n        \n        tValueAttributedString=[[self attributedStringForPlainTextWithFormat:@\"Namespace %@, Code 0x%lx\",tTermination.namespace,(unsigned long)tTermination.code] mutableCopy];\n        \n        if (self.crashlog.exceptionInformation.isQuickHelpAvailableForTerminationReason==YES)\n        {\n            [tValueAttributedString addAttributes:@{\n                                                    NSUnderlineStyleAttributeName:@(NSUnderlineStyleSingle|NSUnderlineStylePatternDash)\n                                                    }\n             \n                                            range:NSMakeRange(0, tValueAttributedString.length)];\n            \n            [tValueAttributedString addAttributes:@{\n                                                    NSLinkAttributeName:[NSURL URLWithString:@\"a://termination_reason\"]\n                                                    }\n                                            range:NSMakeRange(0, tValueAttributedString.length)];\n        }\n        \n        [tMutableAttributedString appendAttributedString:tValueAttributedString];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n    \n        if (tTermination.byProc!=nil)\n        {\n            tMutableAttributedString=[[self attributedStringForKey:@\"Terminating Process:\"] mutableCopy];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"   %@ [%d]\",tTermination.byProc,tTermination.byPid]];\n        \n            [tMutableArray addObject:tMutableAttributedString];\n        }\n        \n        [tMutableArray addObject:@\"\"];\n    }\n    \n    return tMutableArray;\n}\n\n- (NSArray *)attributedLinesForDiagnosticMessageOfIncident:(IPSIncident *)inIncident\n{\n    IPSIncidentDiagnosticMessage * tDiagnosticMessage=inIncident.diagnosticMessage;\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    if (tDiagnosticMessage.vmregioninfo!=nil)\n    {\n        NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForKey:@\"VM Region Info:\"] mutableCopy];\n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\" %@\",tDiagnosticMessage.vmregioninfo]];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        [tMutableArray addObject:@\"\"];\n    }\n        \n    NSArray<NSString *> * tApplicationSpecificInformation=[inIncident applicationSpecificInformationMessage];\n    \n    if (tApplicationSpecificInformation.count>0)\n    {\n        NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForKey:@\"Application Specific Information:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        for (NSString *tSring in tApplicationSpecificInformation)\n             [tMutableArray addObject:[self attributedStringForPlainText:tSring]];\n        \n        [tMutableArray addObject:@\"\"];\n    }\n\n    NSArray * tSignatures=tDiagnosticMessage.asi.signatures;\n            \n    if (tSignatures!=nil)\n    {\n        NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForKey:@\"Application Specific Signatures:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        [tSignatures enumerateObjectsUsingBlock:^(NSString * bSignature, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            [tMutableArray addObject:[self attributedStringForPlainText:bSignature]];\n        }];\n        \n        [tMutableArray addObject:@\"\"];\n    }\n        \n    NSMutableAttributedString * tMutableAttributedString=tMutableArray.firstObject;\n    \n    if ([tMutableAttributedString isKindOfClass:[NSMutableAttributedString class]]==YES)\n    {\n        NSDictionary * tJumpAnchorAttributes=@{\n                                               CUISectionAnchorAttributeName:@\"section:Diagnostic Messages\"\n                                               };\n        \n        [tMutableAttributedString addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,tMutableAttributedString.length)];\n    }\n    \n    return tMutableArray;\n}\n\n- (NSArray *)attributedLinesForBacktracesOfIncident:(IPSIncident *)inIncident\n{\n    #define BINARYIMAGENAME_AND_SPACE_MAXLEN    34\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    CUICrashLogBacktraces * tBacktraces=self.crashlog.backtraces;\n#ifndef __DISABLE_SYMBOLICATION_\n    NSInteger tThreadIndexOffset=0;\n#endif\n    \n    NSString * tProcessPath=inIncident.header.processPath;\n    \n    NSArray * tSortedBinaryImages=[inIncident.binaryImages sortedArrayUsingSelector:@selector(compare:)];\n    \n#ifndef __DISABLE_SYMBOLICATION_\n    NSArray * tBacktracesThreads=tBacktraces.threads;\n    __block CUIThread * tBacktraceThread;\n    __block NSArray<CUIStackFrame *> * tStackFrames;\n#endif\n    \n    void (^transformThreadFrame)(IPSThreadFrame*, NSUInteger, BOOL *) = ^(IPSThreadFrame * bFrame, NSUInteger bFrameIndex, BOOL * _Nonnull stop) {\n        \n        IPSImage * tBinaryImage=inIncident.binaryImages[bFrame.imageIndex];\n        \n        BOOL tIsUserCode=tBinaryImage.isUserCode;\n        \n        if (tIsUserCode==NO)\n        {\n            if ([tSortedBinaryImages indexOfObjectIdenticalTo:tBinaryImage]==0)\n            {\n                tIsUserCode=YES;\n            }\n            else\n            {\n                NSString * tPath=tBinaryImage.path;\n                \n                tIsUserCode=(tPath!=nil && [tProcessPath isEqualToString:tPath]==YES);\n            }\n        }\n        \n        NSString * tFrameIndexString=[NSString stringWithFormat:@\"%lu\",(unsigned long)bFrameIndex];\n        \n        NSString * tIndexSpace=[@\"    \" substringFromIndex:tFrameIndexString.length];\n        \n        NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForUser:tIsUserCode code:tFrameIndexString] mutableCopy];\n        [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode code:tIndexSpace]];\n        \n        if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)==CUIStackFrameBinaryNameComponent)\n        {\n            NSString * tBinaryImageIdentifier=(tBinaryImage.bundleIdentifier!=nil) ? tBinaryImage.bundleIdentifier : tBinaryImage.name;\n            \n            if (tBinaryImageIdentifier==nil)\n                tBinaryImageIdentifier=@\"???\";\n            \n            NSUInteger tImageNameLength=tBinaryImageIdentifier.length;\n            \n            NSMutableAttributedString * tMutableBinaryImageAttributedString=[[self attributedStringForUser:tIsUserCode code:tBinaryImageIdentifier] mutableCopy];\n            \n            if (self.hyperlinksStyle!=CUIHyperlinksNone && ((self.displaySettings.visibleSections & CUIDocumentBinaryImagesSection)==CUIDocumentBinaryImagesSection))\n            {\n                NSURL * tURL=nil;\n                \n                switch(self.hyperlinksStyle)\n                {\n                    case CUIHyperlinksInternal:\n                        \n                        tURL=[NSURL URLWithString:[NSString stringWithFormat:@\"bin://%@\",tBinaryImage.UUID.UUIDString]];\n                        \n                        break;\n                        \n                    case CUIHyperlinksHTML:\n                        \n                        tURL=[NSURL URLWithString:[NSString stringWithFormat:@\"sharp://%@\",tBinaryImage.UUID.UUIDString]];\n                        \n                        break;\n                        \n                    default:\n                        \n                        break;\n                }\n                \n                if (tURL!=nil)\n                    [tMutableBinaryImageAttributedString addAttributes:@{NSLinkAttributeName:tURL} range:NSMakeRange(0,tMutableBinaryImageAttributedString.length)];\n            }\n            \n            [tMutableAttributedString appendAttributedString:tMutableBinaryImageAttributedString];\n            \n            if ((tImageNameLength+4)>BINARYIMAGENAME_AND_SPACE_MAXLEN)\n            {\n                [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode code:@\"    \"]];\n            }\n            else\n            {\n                NSString * tImageSpace=[@\"                                  \" substringFromIndex:tImageNameLength];\n                \n                [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode code:tImageSpace]];\n            }\n        }\n        \n        NSUInteger tMachineInstructionAddress=tBinaryImage.loadAddress+bFrame.imageOffset;\n        \n        if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)==CUIStackFrameMachineInstructionAddressComponent)\n        {\n            [tMutableAttributedString appendAttributedString:[self attributedStringForMemoryAddressWithFormat:@\"0x%016lx \",(unsigned long)tMachineInstructionAddress]];\n        }\n        \n#ifndef __DISABLE_SYMBOLICATION_\n        \n        BOOL tSymbolicateAutomatically=[CUIApplicationPreferences sharedPreferences].symbolicateAutomatically;\n        \n        if (self.symbolicationMode==CUISymbolicationModeNone)\n            tSymbolicateAutomatically=NO;\n        \n        CUIStackFrame * tStackFrame=tStackFrames[bFrameIndex];\n        CUISymbolicationData * tSymbolicationData=nil;\n        \n        if (tSymbolicateAutomatically==YES)\n        {\n            tSymbolicationData=tStackFrame.symbolicationData;\n        }\n        \n        if (tSymbolicationData!=nil)\n        {\n            if (tSymbolicationData.stackFrameSymbol==nil)\n                NSLog(@\"Missing stackFrameSymbol\");\n            \n            [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode code:[self.symbolicationDataFormatter stringForObjectValue:tSymbolicationData]]];\n        }\n        else\n        {\n            if (tSymbolicateAutomatically==YES)\n            {\n                // Default values\n                \n                __block NSAttributedString * tCachedResultedAttributedString=nil;\n                \n                [[CUISymbolicationManager sharedSymbolicationManager] lookUpSymbolicationDataForMachineInstructionAddress:tMachineInstructionAddress-tBinaryImage.binaryImageOffset\n                                                                                                               binaryUUID:tBinaryImage.UUID.UUIDString\n                                                                                                        completionHandler:^(CUISymbolicationDataLookUpResult bLookUpResult, CUISymbolicationData *bSymbolicationData) {\n                                                                                                            \n                                                                                                            switch(bLookUpResult)\n                                                                                                            {\n                                                                                                                case CUISymbolicationDataLookUpResultError:\n                                                                                                                case CUISymbolicationDataLookUpResultNotFound:\n                                                                                                                    \n                                                                                                                    break;\n                                                                                                                    \n                                                                                                                case CUISymbolicationDataLookUpResultFound:\n                                                                                                                {\n                                                                                                                    tStackFrame.symbolicationData=bSymbolicationData;\n                                                                                                                    \n                                                                                                                    [[NSNotificationCenter defaultCenter] postNotificationName:CUIStackFrameSymbolicationDidSucceedNotification\n                                                                                                                                                                        object:self.crashlog];\n                                                                                                                    \n                                                                                                                    break;\n                                                                                                                }\n                                                                                                                    \n                                                                                                                case CUISymbolicationDataLookUpResultFoundInCache:\n                                                                                                                {\n                                                                                                                    tStackFrame.symbolicationData=bSymbolicationData;\n                                                                                                                    \n                                                                                                                    tCachedResultedAttributedString=[self attributedStringForUser:tIsUserCode code:[self.symbolicationDataFormatter stringForObjectValue:bSymbolicationData]];\n                                                                                                                    \n                                                                                                                    break;\n                                                                                                                }\n                                                                                                                    \n                                                                                                            }\n                                                                                                            \n                                                                                                        }];\n                \n                if (tCachedResultedAttributedString==nil)\n                {\n                    if (bFrame.symbol!=nil)\n                    {\n                        [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode code:bFrame.symbol]];\n                        \n                        if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==CUIStackFrameByteOffsetComponent)\n                            [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\" + %lu\",(unsigned long)bFrame.symbolLocation]];\n                    }\n                    else\n                    {\n                        [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\"0x%lx\",(unsigned long)tBinaryImage.loadAddress]];\n                        \n                        if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==CUIStackFrameByteOffsetComponent)\n                            [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\" + %lu\",(unsigned long)bFrame.imageOffset]];\n                    }\n                    \n                    if (bFrame.sourceFile!=nil)\n                        [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\" (%@:%lu)\",bFrame.sourceFile,(unsigned long)bFrame.sourceLine]];\n                }\n                else\n                {\n                    [tMutableAttributedString appendAttributedString:tCachedResultedAttributedString];\n                }\n            }\n            else\n            {\n                if (bFrame.symbol!=nil && (tIsUserCode==NO || self.symbolicationMode==CUISymbolicationModeSymbolicate))\n                {\n                    [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode code:bFrame.symbol]];\n                    \n                    if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==CUIStackFrameByteOffsetComponent)\n                        [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\" + %lu\",(unsigned long)bFrame.symbolLocation]];\n                }\n                else\n                {\n                    [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\"0x%lx\",(unsigned long)tBinaryImage.loadAddress]];\n                    \n                    if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==CUIStackFrameByteOffsetComponent)\n                        [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\" + %lu\",(unsigned long)bFrame.imageOffset]];\n                }\n                \n                if (bFrame.sourceFile!=nil)\n                    [tMutableAttributedString appendAttributedString:[self attributedStringForUser:tIsUserCode codeWithFormat:@\" (%@:%lu)\",bFrame.sourceFile,(unsigned long)bFrame.sourceLine]];\n            }\n        }\n        \n#endif\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n    };\n    \n    \n    if (tBacktraces.hasApplicationSpecificBacktrace==YES)\n    {\n#ifndef __DISABLE_SYMBOLICATION_\n        tThreadIndexOffset=1;\n#endif\n        NSMutableAttributedString * tMutableAttributedString=nil;\n        \n        tMutableAttributedString=[[self attributedStringForThreadLabelWithFormat:@\"Application Specific Backtrace %lu\",(unsigned long)1] mutableCopy];\n    \n        [tMutableAttributedString addAttributes:@{\n                                                  CUIThreadAnchorAttributeName:@\"thread:Application Specific Backtrace\"\n                                                  }\n                                          range:NSMakeRange(0, tMutableAttributedString.length)];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        NSArray<IPSThreadFrame *> * tFrames=inIncident.exceptionInformation.lastExceptionBacktrace;\n        \n        if (tFrames!=nil)\n        {\n#ifndef __DISABLE_SYMBOLICATION_\n                tBacktraceThread=tBacktracesThreads.firstObject;\n                tStackFrames=tBacktraceThread.callStackBacktrace.stackFrames;\n#endif\n                \n                [tFrames enumerateObjectsUsingBlock:transformThreadFrame];\n        }\n        else\n        {\n            NSArray<NSString *> * tBacktraces=inIncident.diagnosticMessage.asi.backtraces;\n        \n            if (tBacktraces!=nil)\n            {\n                [tBacktraces enumerateObjectsUsingBlock:^(NSString * bString, NSUInteger bIndex, BOOL * bOutStop) {\n                \n                    CUIThread * tThread=self.crashlog.backtraces.threads.firstObject;\n                    \n                    NSMutableArray * tLines=[NSMutableArray array];\n                    \n                    [bString enumerateLinesUsingBlock:^(NSString * bLine, BOOL * _Nonnull stop) {\n                        \n                        [tLines addObject:bLine];\n                    }];\n                    \n                    __block NSUInteger tStackFrameIndex=0;\n                    \n                    [tLines enumerateObjectsUsingBlock:^(NSString * bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n                        \n                        if (bLine.length==0)\n                        {\n                            [tMutableArray addObject:@\"\"];\n                            return;\n                        }\n                        \n                        NSString * tProcessedStackFrameLine=[self processedStackFrameLine:bLine stackFrame:tThread.callStackBacktrace.stackFrames[tStackFrameIndex]];\n                        \n                        if (tProcessedStackFrameLine!=nil)\n                        {\n                            [tMutableArray addObject:tProcessedStackFrameLine];\n                        }\n                        else\n                        {\n                            NSLog(@\"Error transforming line: %@\",bLine);\n                            \n                            [tMutableArray addObject:[[NSAttributedString alloc] initWithString:bLine]];\n                        }\n                        \n                        tStackFrameIndex+=1;\n                    }];\n                }];\n            }\n        }\n        \n        [tMutableArray addObject:@\"\"];\n    }\n    \n    [inIncident.threads enumerateObjectsUsingBlock:^(IPSThread * bThread, NSUInteger bThreadIndex, BOOL * bOutStop) {\n        \n        NSString * tCrashedString=(bThread.triggered==YES) ? @\" Crashed\":@\"\";\n        \n        NSMutableString * tThreadLabel=[NSMutableString stringWithFormat:@\"Thread %lu%@:\",(unsigned long)bThreadIndex,tCrashedString];\n        \n        if (bThread.name!=nil || bThread.queue!=nil)\n        {\n            [tThreadLabel appendString:@\": \"];\n            \n            if (bThread.name!=nil)\n                [tThreadLabel appendString:bThread.name];\n            \n            if (bThread.queue!=nil)\n                [tThreadLabel appendFormat:@\"%@Dispatch queue: %@\",(bThread.name!=nil) ? @\"  \": @\"\",bThread.queue];\n        }\n        \n        NSMutableAttributedString * tMutableAttributedString=nil;\n        \n        if (bThread.triggered==YES)\n        {\n            tMutableAttributedString=[[self attributedStringForCrashedThreadLabel:tThreadLabel] mutableCopy];\n            \n            switch(self.hyperlinksStyle)\n            {\n                case CUIHyperlinksInternal:\n                    \n                    [tMutableAttributedString addAttributes:@{\n                                                              CUIGenericAnchorAttributeName:@\"a:crashed_thread\"\n                                                              }\n                                                      range:NSMakeRange(0, tMutableAttributedString.length)];\n                    \n                    break;\n                    \n                case CUIHyperlinksHTML:\n                {\n                    NSURL * tURL=[NSURL URLWithString:@\"anchor://crashed_thread\"];\n                    \n                    if (tURL!=nil)\n                        [tMutableAttributedString addAttributes:@{NSLinkAttributeName:tURL}\n                                                          range:NSMakeRange(0, tMutableAttributedString.length)];\n                    \n                    break;\n                }\n                default:\n                    \n                    break;\n            }\n        }\n        else\n        {\n            if ((self.displaySettings.visibleSections & CUIDocumentBacktraceCrashedThreadSubSection)!=0)\n                return;\n            \n            tMutableAttributedString=[[self attributedStringForThreadLabel:tThreadLabel] mutableCopy];\n        }\n        \n        [tMutableAttributedString addAttributes:@{\n                                                  CUIThreadAnchorAttributeName:[NSString stringWithFormat:@\"thread:%lu\",(unsigned long)bThreadIndex]\n                                                  }\n                                          range:NSMakeRange(0, tMutableAttributedString.length)];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n    \n#ifndef __DISABLE_SYMBOLICATION_\n        tBacktraceThread=tBacktracesThreads[bThreadIndex + tThreadIndexOffset];\n        tStackFrames=tBacktraceThread.callStackBacktrace.stackFrames;\n#endif\n        \n        [bThread.frames enumerateObjectsUsingBlock:transformThreadFrame];\n        \n        [tMutableArray addObject:@\"\"];\n    }];\n    \n    NSMutableAttributedString * tMutableAttributedString=tMutableArray.firstObject;\n    \n    if ([tMutableAttributedString isKindOfClass:[NSMutableAttributedString class]]==YES)\n    {\n        NSDictionary * tJumpAnchorAttributes=@{\n                                               CUISectionAnchorAttributeName:@\"section:Backtraces\"\n                                               };\n        \n        [tMutableAttributedString addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,tMutableAttributedString.length)];\n    }\n    \n    return tMutableArray;\n}\n\n- (NSArray *)attributedLinesForThreadStateOfIncident:(IPSIncident *)inIncident\n{\n    IPSIncidentHeader * tHeader=inIncident.header;\n    IPSThreadState * tCrashedThreadState=nil;\n    IPSIncidentExceptionInformation * tExceptionInformation=inIncident.exceptionInformation;\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    IPSThreadInstructionState * tCrashThreadInstructionState=nil;\n    \n    if (tExceptionInformation.faultingThread<inIncident.threads.count)\n    {\n        IPSThread * tThread=inIncident.threads[tExceptionInformation.faultingThread];\n        \n        tCrashedThreadState=tThread.threadState;\n        \n        tCrashThreadInstructionState=tThread.instructionState;\n    }\n    \n    if (tCrashedThreadState!=nil)\n    {\n        NSDictionary * tCPUFamiliesRegistry=@{\n                                              @\"X86-64\":@\"X86\",\n                                              @\"ARM-64\":@\"ARM\"\n                                              };\n        \n        NSString * tCPUFamily=tCPUFamiliesRegistry[tHeader.cpuType];\n        \n        if (tCPUFamily==nil)\n            tCPUFamily=@\"-\";\n        \n        NSDictionary * tCPUSizeRegistry=@{\n                                          @\"X86-64\":@\"64-bit\",\n                                          @\"ARM-64\":@\"64-bit\"\n                                          };\n        \n        NSString * tCPUSize=tCPUSizeRegistry[tHeader.cpuType];\n        \n        if (tCPUSize==nil)\n            tCPUSize=@\"-\";\n        \n        __block NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForKeyWithFormat:@\"Thread %lu crashed with %@ Thread State (%@):\",tExceptionInformation.faultingThread,tCPUFamily,tCPUSize] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        \n        NSArray * tRegistersOrder;\n        \n        if ([tCrashedThreadState.flavor isEqualToString:@\"x86_THREAD_STATE\"]==YES)\n        {\n            tRegistersOrder=@[@\"rax\",@\"rbx\",@\"rcx\",@\"rdx\",@\"\\n\",\n                              @\"rdi\",@\"rsi\",@\"rbp\",@\"rsp\",@\"\\n\",\n                              @\"r8\",@\"r9\",@\"r10\",@\"r11\",@\"\\n\",\n                              @\"r12\",@\"r13\",@\"r14\",@\"r15\",@\"\\n\",\n                              @\"rip\",@\"rflags\",@\"cr2\",@\"\\n\"\n                              ];\n        }\n        else\n        {\n            tRegistersOrder=@[@\"x0\",@\"x1\",@\"x2\",@\"x3\",@\"\\n\",\n                              @\"x4\",@\"x5\",@\"x6\",@\"x7\",@\"\\n\",\n                              @\"x8\",@\"x9\",@\"x10\",@\"x11\",@\"\\n\",\n                              @\"x12\",@\"x13\",@\"x14\",@\"x15\",@\"\\n\",\n                              @\"x16\",@\"x17\",@\"x18\",@\"x19\",@\"\\n\",\n                              @\"x20\",@\"x21\",@\"x22\",@\"x23\",@\"\\n\",\n                              @\"x24\",@\"x25\",@\"x26\",@\"x27\",@\"\\n\",\n                              @\"x28\",@\"fp\",@\"lr\",@\"\\n\",\n                              @\"sp\",@\"pc\",@\"cpsr\",@\"\\n\",\n                              @\"far\",@\"esr\",@\"\\n\"\n                              ];\n        }\n        \n        tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:@\"\"];\n        \n        [tRegistersOrder enumerateObjectsUsingBlock:^(NSString * bRegisterName, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if ([bRegisterName isEqualToString:@\"\\n\"]==YES)\n            {\n                [tMutableArray addObject:tMutableAttributedString];\n                \n                tMutableAttributedString=[[NSMutableAttributedString alloc] initWithString:@\"\"];\n            }\n            \n            IPSRegisterState * tRegisterState=tCrashedThreadState.registersStates[bRegisterName];\n            \n            if (tRegisterState!=nil)\n            {\n                NSMutableString * tMutableString=[NSMutableString string];\n                \n                NSString * tTranslatedName=[IPSThreadState displayNameForRegisterName:bRegisterName];\n                \n                if (tTranslatedName.length<5)\n                    for(NSUInteger tWhitespace=0;tWhitespace<(5-tTranslatedName.length);tWhitespace++)\n                        [tMutableString appendString:@\" \"];\n                \n                [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:tMutableString]];\n                \n                IPSRegisterState * tRegisterState=tCrashedThreadState.registersStates[bRegisterName];\n                \n                if (tRegisterState!=nil)\n                {\n                    [tMutableAttributedString appendAttributedString:[self attributedStringForKey:tTranslatedName]];\n                    [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\": \"]];\n                    [tMutableAttributedString appendAttributedString:[self attributedStringForRegisterValueWithFormat:@\"0x%016lx\",tRegisterState.value]];\n                }\n            }\n        }];\n        \n        [tMutableArray addObject:@\"\"];\n    }\n    \n    if (tCrashThreadInstructionState!=nil)\n    {\n        IPSThreadInstructionStream * tStream=tCrashThreadInstructionState.instructionStream;\n        \n        if (tStream!=nil)\n        {\n            NSAttributedString * tAttributedString=[self attributedStringForKeyWithFormat:@\"Thread %lu instruction stream:\",tExceptionInformation.faultingThread];\n            \n            [tMutableArray addObject:tAttributedString];\n            \n            uint8_t * tBytes=tStream.bytes;\n            NSUInteger tBytesCount=tStream.bytesCount;\n            \n            NSUInteger tOffset=tStream.offset;\n            \n            for(NSUInteger tByteIndex=0;tByteIndex<tBytesCount;tByteIndex+=16)\n            {\n                NSMutableString * tMutableString=[NSMutableString string];\n                \n                unsigned char tASCIIRepresentation[17];\n                memset(tASCIIRepresentation, '.',16);\n                tASCIIRepresentation[16]='\\0';\n                \n                // Display line by line\n                \n                if (tByteIndex==tOffset)\n                {\n                    [tMutableString appendFormat:@\" [%02x]\",tBytes[tByteIndex]];\n                }\n                else\n                {\n                    [tMutableString appendFormat:@\"  %02x \",tBytes[tByteIndex]];\n                }\n                \n                [tMutableString appendFormat:@\"%02x %02x %02x %02x %02x %02x %02x\",tBytes[tByteIndex+1],tBytes[tByteIndex+2],tBytes[tByteIndex+3],tBytes[tByteIndex+4],tBytes[tByteIndex+5],tBytes[tByteIndex+6],tBytes[tByteIndex+7]];\n                \n                if ((tByteIndex+8)<tBytesCount)\n                {\n                    [tMutableString appendFormat:@\"-%02x %02x %02x %02x %02x %02x %02x %02x\",tBytes[tByteIndex+8],tBytes[tByteIndex+9],tBytes[tByteIndex+10],tBytes[tByteIndex+11],tBytes[tByteIndex+12],tBytes[tByteIndex+13],tBytes[tByteIndex+14],tBytes[tByteIndex+15]];\n                }\n                \n                \n                \n                for(NSUInteger tASCIIIndex=0;(tByteIndex+tASCIIIndex)<tBytesCount && tASCIIIndex<16;tASCIIIndex++)\n                {\n                    uint8_t tByteValue=tBytes[tByteIndex+tASCIIIndex];\n                    \n                    if (tByteValue>=32 && tByteValue<127)\n                        tASCIIRepresentation[tASCIIIndex]=tByteValue;\n                }\n                \n                [tMutableString appendFormat:@\"  %s\",tASCIIRepresentation];\n                \n                if (tByteIndex==tOffset)\n                    [tMutableString appendString:@\"    <==\"];\n                \n                tAttributedString=[self attributedStringForPlainText:tMutableString];\n                \n                [tMutableArray addObject:tAttributedString];\n            }\n            \n            [tMutableArray addObject:@\"\"];\n        }\n    }\n    \n    NSMutableAttributedString * tMutableAttributedString=tMutableArray.firstObject;\n    \n    if ([tMutableAttributedString isKindOfClass:[NSMutableAttributedString class]]==YES)\n    {\n        NSDictionary * tJumpAnchorAttributes=@{\n                                               CUISectionAnchorAttributeName:@\"section:Thread State\"\n                                               };\n        \n        [tMutableAttributedString addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,tMutableAttributedString.length)];\n    }\n    \n    return tMutableArray;\n}\n\n- (NSArray *)attributedLinesForBinaryImagesOfIncident:(IPSIncident *)inIncident\n{\n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    __block NSMutableAttributedString * tMutableAttributedString=[[self attributedStringForKey:@\"Binary Images:\"] mutableCopy];\n    \n    [tMutableArray addObject:tMutableAttributedString];\n    \n    BOOL tIsMonochromeTheme=self.themesProvider.currentTheme.isMonochrome;\n    \n    [[inIncident.binaryImages sortedArrayUsingSelector:@selector(compare:)] enumerateObjectsUsingBlock:^(IPSImage * bImage, NSUInteger bIndex, BOOL * bOutStop) {\n    \n        NSString * tSpaceString=@\"                  \";\n        \n        NSString * tAddressString=[NSString stringWithFormat:@\"0x%lx\",bImage.loadAddress];\n        \n        NSUInteger tLength=tAddressString.length;\n        \n        tMutableAttributedString=[[self attributedStringForPlainText:[tSpaceString substringFromIndex:tLength]] mutableCopy];\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForMemoryAddress:tAddressString]];\n        \n        [tMutableAttributedString appendAttributedString:[[self attributedStringForPlainText:@\" - \"] mutableCopy]];\n        \n        tAddressString=[NSString stringWithFormat:@\"0x%lx\",bImage.loadAddress+bImage.size];\n        \n        tLength=tAddressString.length;\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:[tSpaceString substringFromIndex:tLength]]];\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForMemoryAddress:tAddressString]];\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n        \n        NSString * tBinaryImageIdentifier=(bImage.bundleIdentifier!=nil) ? bImage.bundleIdentifier : bImage.name;\n        \n        if (tBinaryImageIdentifier==nil)\n            tBinaryImageIdentifier=@\"???\";\n        \n        if (tIsMonochromeTheme==YES)\n        {\n            if (bImage.isUserCode==YES)\n                [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\"+\"]];\n            \n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:tBinaryImageIdentifier]];\n        }\n        else\n        {\n            [tMutableAttributedString appendAttributedString:[self attributedStringForUser:bImage.isUserCode binaryImageIdentifier:tBinaryImageIdentifier]];\n        }\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n        \n        if (bImage.bundleShortVersionString!=nil || bImage.bundleVersion!=nil)\n        {\n            if (bImage.bundleVersion==nil)\n                [tMutableAttributedString appendAttributedString:[self attributedStringForVersionWithFormat:@\"(%@)\",bImage.bundleShortVersionString]];\n            else\n                [tMutableAttributedString appendAttributedString:[self attributedStringForVersionWithFormat:@\"(%@ - %@)\",(bImage.bundleShortVersionString!=nil) ? bImage.bundleShortVersionString : @\"???\",bImage.bundleVersion]];\n        }\n        else\n        {\n            [tMutableAttributedString appendAttributedString:[self attributedStringForVersion:@\"(???)\"]];\n                \n        }\n             \n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n     \n        NSString * tUUIDString=bImage.UUID.UUIDString;\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForUUIDWithFormat:@\"<%@>\",tUUIDString]];\n        \n        [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n\n        [tMutableAttributedString appendAttributedString:[self attributedStringForPath:(bImage.path!=nil) ? bImage.path : @\"???\"]];\n        \n        switch(self.hyperlinksStyle)\n        {\n            case CUIHyperlinksHTML:\n            {\n                NSURL * tURL=[NSURL URLWithString:[NSString stringWithFormat:@\"anchor://%@\",tUUIDString]];\n                \n                if (tURL!=nil)\n                    [tMutableAttributedString addAttributes:@{NSLinkAttributeName:tURL}\n                                                      range:NSMakeRange(0, tMutableAttributedString.length)];\n                \n                break;\n            }\n                \n            default:\n                \n                [tMutableAttributedString addAttributes:@{CUIBinaryAnchorAttributeName:[NSString stringWithFormat:@\"bin:%@\",tUUIDString]}\n                                                  range:NSMakeRange(0, tMutableAttributedString.length)];\n                \n                break;\n        }\n        \n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n    }];\n    \n    [tMutableArray addObject:@\"\"];\n    \n    // External Modification Summary\n    \n    if (inIncident.extMods!=nil)\n    {\n        __auto_type (^processStatistics)(IPSExternalModificationStatistics *) = ^(IPSExternalModificationStatistics * inObject) {\n        \n            tMutableAttributedString=[[self attributedStringForPlainText:@\"    \"] mutableCopy];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForKey:@\"task_for_pid:\"]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"%ld\",(long)inObject.taskForPid]];\n            \n            [tMutableArray addObject:tMutableAttributedString];\n        \n            tMutableAttributedString=[[self attributedStringForPlainText:@\"    \"] mutableCopy];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForKey:@\"thread_create:\"]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"%ld\",(long)inObject.threadCreate]];\n            \n            [tMutableArray addObject:tMutableAttributedString];\n            \n            tMutableAttributedString=[[self attributedStringForPlainText:@\"    \"] mutableCopy];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForKey:@\"thread_set_state:\"]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainTextWithFormat:@\"%ld\",(long)inObject.threadSetState]];\n            [tMutableAttributedString appendAttributedString:[self attributedStringForPlainText:@\" \"]];\n            \n            [tMutableArray addObject:tMutableAttributedString];\n        };\n        \n        tMutableAttributedString=[[self attributedStringForKey:@\"External Modification Summary:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        tMutableAttributedString=[[self attributedStringForKey:@\" Calls made by other processes targeting this process:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        processStatistics(inIncident.extMods.targeted);\n        \n        tMutableAttributedString=[[self attributedStringForKey:@\" Calls made by this process:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        processStatistics(inIncident.extMods.caller);\n        \n        tMutableAttributedString=[[self attributedStringForKey:@\" Calls made by all processes on this machine:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        processStatistics(inIncident.extMods.system);\n        \n        [tMutableArray addObject:@\"\"];\n    }\n    \n    // VM Summary\n    \n    if (inIncident.vmSummary!=nil)\n    {\n        tMutableAttributedString=[[self attributedStringForKey:@\"VM Region Summary:\"] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n        \n        tMutableAttributedString=[[self attributedStringForPlainText:inIncident.vmSummary] mutableCopy];\n        \n        [tMutableArray addObject:tMutableAttributedString];\n    }\n    \n    tMutableAttributedString=tMutableArray.firstObject;\n    \n    if ([tMutableAttributedString isKindOfClass:[NSMutableAttributedString class]]==YES)\n    {\n        NSDictionary * tJumpAnchorAttributes=@{\n                                               CUISectionAnchorAttributeName:@\"section:Binary Images\"\n                                               };\n        \n        [tMutableAttributedString addAttributes:tJumpAnchorAttributes range:NSMakeRange(0,tMutableAttributedString.length)];\n    }\n    \n    return tMutableArray;\n}\n\n#pragma mark -\n\n- (BOOL)transform\n{\n    if ([super transform]==NO)\n        return NO;\n    \n    IPSReport * tReport=(IPSReport *)self.input;\n    \n    if ([tReport isKindOfClass:[IPSReport class]]==NO)\n    {\n        // A COMPLETER\n        \n        return NO;\n    }\n    \n    [self updatesCachedAttributes];\n    \n    IPSIncident * tIncident=tReport.incident;\n    \n    self.processPath=tIncident.header.processPath;\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    // Header\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentHeaderSection)==CUIDocumentHeaderSection)\n    {\n        NSArray * tAttributedLines=[self attributedLinesForHeaderOfIncident:tIncident];\n        \n        if (tAttributedLines==nil)\n            return NO;\n        \n        [tMutableArray addObjectsFromArray:tAttributedLines];\n    }\n    \n    // Exception Information\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentExceptionInformationSection)==CUIDocumentExceptionInformationSection)\n    {\n        NSArray * tAttributedLines=[self attributedLinesForExceptionInformationOfIncident:tIncident];\n        \n        if (tAttributedLines==nil)\n            return NO;\n        \n        [tMutableArray addObjectsFromArray:tAttributedLines];\n    }\n    \n    // Diagnostic Message\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentDiagnosticMessagesSection)==CUIDocumentDiagnosticMessagesSection)\n    {\n        NSArray * tAttributedLines=[self attributedLinesForDiagnosticMessageOfIncident:tIncident];\n        \n        if (tAttributedLines==nil)\n            return NO;\n        \n        [tMutableArray addObjectsFromArray:tAttributedLines];\n    }\n    \n    // Backtraces\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentBacktracesSection)==CUIDocumentBacktracesSection)\n    {\n        NSArray * tAttributedLines=[self attributedLinesForBacktracesOfIncident:tIncident];\n        \n        if (tAttributedLines==nil)\n            return NO;\n        \n        [tMutableArray addObjectsFromArray:tAttributedLines];\n    }\n    \n    // Thread State\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentThreadStateSection)==CUIDocumentThreadStateSection)\n    {\n        NSArray * tAttributedLines=[self attributedLinesForThreadStateOfIncident:tIncident];\n        \n        if (tAttributedLines==nil)\n            return NO;\n        \n        [tMutableArray addObjectsFromArray:tAttributedLines];\n    }\n    \n    // Binary Images\n    \n    if ((self.displaySettings.visibleSections & CUIDocumentBinaryImagesSection)==CUIDocumentBinaryImagesSection)\n    {\n        NSArray * tAttributedLines=[self attributedLinesForBinaryImagesOfIncident:tIncident];\n        \n        if (tAttributedLines==nil)\n            return NO;\n        \n        [tMutableArray addObjectsFromArray:tAttributedLines];\n    }\n    \n    self.output=[self joinLines:tMutableArray withString:@\"\\n\"];\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (NSAttributedString *)joinLines:(NSArray *)inLines withString:(NSString *)inNewLineFeed\n{\n    NSMutableAttributedString * tMutableAttributedString=[NSMutableAttributedString new];\n    \n    [inLines enumerateObjectsUsingBlock:^(id bLine, NSUInteger bLineNumber, BOOL * bOutStop) {\n        \n        if ([bLine isKindOfClass:[NSString class]]==YES)\n        {\n            NSAttributedString * tAttributedString=[[NSAttributedString alloc] initWithString:bLine\n                                                                                   attributes:self.plainTextAttributes];\n            \n            [tMutableAttributedString appendAttributedString:tAttributedString];\n            \n            if (bLineNumber<inLines.count)\n                [tMutableAttributedString appendAttributedString:[[NSAttributedString alloc] initWithString:inNewLineFeed attributes:self.plainTextAttributes]];\n            \n            return;\n        }\n        \n        if ([bLine isKindOfClass:[NSAttributedString class]]==YES)\n        {\n            [tMutableAttributedString appendAttributedString:bLine];\n            \n            if (bLineNumber<inLines.count)\n                [tMutableAttributedString appendAttributedString:[[NSAttributedString alloc] initWithString:inNewLineFeed attributes:self.plainTextAttributes]];\n        }\n    }];\n    \n    return tMutableAttributedString;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInactiveButton.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface CUIInactiveButton : NSButton\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInactiveButton.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInactiveButton.h\"\n\n@implementation CUIInactiveButton\n\n- (NSView *)hitTest:(NSPoint)point\n{\n    return nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorAlternateBackgroundView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIInspectorAlternateBackgroundView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorAlternateBackgroundView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorAlternateBackgroundView.h\"\n\n@implementation CUIInspectorAlternateBackgroundView\n\n- (BOOL)isOpaque\n{\n    return NO;\n}\n\n#pragma mark -\n\n- (void)drawRect:(NSRect)inRect\n{\n    NSRect tRefreshRect=NSIntersectionRect(self.bounds, inRect);\n    BOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    if (tIsDark==NO)\n        [[NSColor colorWithDeviceWhite:0.95 alpha:1.0] set];\n    else\n        [[NSColor colorWithDeviceWhite:0.0 alpha:0.15] set];\n    \n    NSRectFillUsingOperation(tRefreshRect,NSCompositingOperationSourceOver);\n    \n    if (tIsDark==NO)\n        [[NSColor colorWithDeviceWhite:0.85 alpha:1.0] setStroke];\n    else\n        [[NSColor colorWithDeviceWhite:1.0 alpha:0.03] set];\n    \n    NSRect tBounds=self.bounds;\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(NSMinX(tBounds)+0.5,NSMaxY(tBounds)-0.5)];\n    [tBezierPath lineToPoint:NSMakePoint(NSMaxX(tBounds)+0.5,NSMaxY(tBounds)-0.5)];\n    \n    [tBezierPath stroke];\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(NSMinX(tBounds)-0.5,NSMinY(tBounds)+0.5)];\n    [tBezierPath lineToPoint:NSMakePoint(NSMaxX(tBounds)-0.5,NSMinY(tBounds)+0.5)];\n    \n    [tBezierPath stroke];\n}\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorExecutableViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorStackableViewController.h\"\n\n@interface CUIInspectorExecutableViewController : CUIInspectorStackableViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorExecutableViewController.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorExecutableViewController.h\"\n\n#import \"CUICodeSigningInformationViewController.h\"\n\n#import \"CUICrashLog+UI.h\"\n\n#import \"CUIRawCrashLog+Path.h\"\n\n@interface CUIInspectorExecutableViewController () <NSPopoverDelegate>\n{\n    IBOutlet NSImageView * _executableIconView;\n    \n    IBOutlet NSTextField * _executableNameValue;\n    \n    IBOutlet NSButton * _codeSigningButton;\n    \n    IBOutlet NSTextField * _executableVersionValue;\n    \n    IBOutlet NSTextField * _executableArchitectureValue;\n    \n    IBOutlet NSTextField * _executablePathValue;\n    \n    IBOutlet NSButton * _executablePathShowButton;\n}\n\n- (void)layoutView;\n\n- (IBAction)showCodeSigningInformation:(id)sender;\n\n- (IBAction)showExecutableInFinder:(id)sender;\n\n@end\n\n@implementation CUIInspectorExecutableViewController\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    if (_executablePathShowButton.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft)\n    {\n        // Mirror image.\n        NSImage * tOriginalImage=_executablePathShowButton.image;\n        \n        NSImage * newTemplate=[NSImage imageWithSize:_executablePathShowButton.bounds.size\n                                             flipped:NO drawingHandler:^BOOL(NSRect dstRect) {\n                                                 \n                                                 NSAffineTransform * tTransform = [NSAffineTransform transform];\n                                                 \n                                                 [tTransform translateXBy:NSWidth(self->_executablePathShowButton.bounds) yBy:0];\n                                                 [tTransform scaleXBy:-1.0 yBy:1.0];\n                                                 [tTransform concat];\n                                                 \n                                                 [tOriginalImage drawInRect:dstRect fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n                                                 \n                                                 return YES;\n                                             }];\n        \n        newTemplate.template=YES;\n        \n        _executablePathShowButton.image=newTemplate;\n    }\n}\n\n#pragma mark -\n\n- (void)refreshUI\n{\n    CUICrashLog * tCrashLog=self.crashLog;\n    \n    CUICrashLogHeader * tHeader=tCrashLog.header;\n    \n    _executableIconView.image=tCrashLog.processIcon;\n    \n    _executableNameValue.stringValue=tHeader.processName;\n    \n\t_codeSigningButton.hidden=(tCrashLog.ipsReport.incident.header.codeSigningInfo==nil);\n    \n\tIPSIncidentHeader * tIncidentHeader=tCrashLog.ipsReport.incident.header;\n\t\n\tif (tIncidentHeader!=nil)\n\t{\n\t\tNSString * tShorttVersionString=tIncidentHeader.bundleInfo.bundleShortVersionString;\n\t\t\n\t\tif (tShorttVersionString==nil || [tShorttVersionString isEqualToString:@\"???\"]==YES)\n\t\t{\n\t\t\t_executableVersionValue.stringValue=NSLocalizedString(@\"Unknown version\",@\"\");\n\t\t}\n\t\telse\n\t\t{\n\t\t\tNSString * tBundleVersion=tIncidentHeader.bundleInfo.bundleVersion;\n\t\t\t\n\t\t\tif (tBundleVersion!=nil)\n\t\t\t{\n\t\t\t\t_executableVersionValue.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Version %@ (%@)\",@\"\"),tShorttVersionString, tBundleVersion];\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t_executableVersionValue.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Version %@\",@\"\"),tShorttVersionString];\n\t\t\t}\n\t\t}\n\t}\n\telse\n\t{\n\t\tNSString * tVersion=tHeader.executableVersion;\n\t\t\n\t\tif (tVersion==nil || [tVersion isEqualToString:@\"???\"]==YES)\n\t\t{\n\t\t\t_executableVersionValue.stringValue=NSLocalizedString(@\"Unknown version\",@\"\");\n\t\t}\n\t\telse\n\t\t{\n\t\t\t_executableVersionValue.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"Version %@\",@\"\"),tVersion];\n\t\t}\n\t}\n    \n    NSString * tArchitectureValue=@\"-\";\n    \n    switch(tHeader.codeType)\n    {\n        case CUICodeTypeX86:\n            \n            tArchitectureValue=@\"i386\";\n            break;\n            \n        case CUICodeTypeX86_64:\n            \n            tArchitectureValue=@\"x86-64\";\n            break;\n            \n        case CUICodeTypeARM_64:\n            \n            tArchitectureValue=@\"ARM-64\";\n            break;\n            \n        default:\n            \n            tArchitectureValue=@\"TBD\";\n            break;\n    }\n    \n    \n    _executableArchitectureValue.stringValue=tArchitectureValue;\n    \n    NSString * tExecutablePath=[tCrashLog stringByResolvingUSERInPath:tHeader.executablePath];\n    \n    if (tExecutablePath==nil)\n        tExecutablePath=tCrashLog.reopenFilePath;\n    \n    if (tExecutablePath==nil)\n    {\n        _executablePathValue.stringValue=@\"\";\n        _executablePathShowButton.enabled=NO;\n    }\n    else\n    {\n        _executablePathValue.stringValue=tExecutablePath;\n        \n        _executablePathShowButton.enabled=[[NSFileManager defaultManager] fileExistsAtPath:tExecutablePath];\n    }\n    \n    // Optimize Layout\n    \n    [self layoutView];\n}\n\n- (CGFloat)heightForMaxWidth:(CGFloat)inMaxWidth\n{\n    NSTextContainer * tTextContainer= [[NSTextContainer alloc] initWithContainerSize: NSMakeSize(inMaxWidth, FLT_MAX)];\n    \n    tTextContainer.lineFragmentPadding=0.0;\n    \n    NSLayoutManager * tLayoutManager = [NSLayoutManager new];\n    \n    tLayoutManager.typesetterBehavior=NSTypesetterBehavior_10_2_WithCompatibility;\n    \n    [tLayoutManager addTextContainer:tTextContainer];\n    \n    NSTextStorage * tTextStorage=[[NSTextStorage alloc] initWithAttributedString:_executablePathValue.attributedStringValue];\n    \n    [tTextStorage addLayoutManager:tLayoutManager];\n    \n    [tLayoutManager glyphRangeForTextContainer:tTextContainer];\n    \n    CGFloat tHeight=NSHeight([tLayoutManager usedRectForTextContainer:tTextContainer]);\n    \n    if (tHeight<14.0)\n    {\n        // Min Value\n        \n        return 14.0;\n    }\n    \n    return tHeight;\n}\n\n- (void)layoutView\n{\n    NSRect tFrame=_executablePathValue.frame;\n    \n    CGFloat tOldHeight=NSHeight(tFrame);\n    CGFloat tFittingHeight = [self heightForMaxWidth:tFrame.size.width];\n\n    \n    _executablePathValue.frame=tFrame;\n    \n    NSRect tViewFrame=self.view.frame;\n    \n    tViewFrame.origin.y-=(tFittingHeight-tOldHeight);\n    \n    tViewFrame.size.height+=(tFittingHeight-tOldHeight);\n\n    self.view.frame=tViewFrame;\n}\n\n#pragma mark -\n\n- (IBAction)showCodeSigningInformation:(id)sender\n{\n\tNSPopover * tCodeSigningInformationPopOver = [NSPopover new];\n\ttCodeSigningInformationPopOver.contentSize=NSMakeSize(500.0, 20.0);\n\ttCodeSigningInformationPopOver.behavior=NSPopoverBehaviorTransient;\n\ttCodeSigningInformationPopOver.animates=NO;\n\ttCodeSigningInformationPopOver.delegate=self;\n\t\n\tNSAppearanceName tAppearanceName = ([self.view WB_isEffectiveAppearanceDarkAqua] == NO) ? WB_NSAppearanceNameAqua : WB_NSAppearanceNameDarkAqua;\n\t\n\ttCodeSigningInformationPopOver.appearance = [NSAppearance appearanceNamed:tAppearanceName];\n\t\n\tNSViewController * tPopUpViewController=[[CUICodeSigningInformationViewController alloc] initWithCodeSigningInfo:self.crashLog.ipsReport.incident.header.codeSigningInfo];\n\t\n\ttCodeSigningInformationPopOver.contentViewController=tPopUpViewController;\n\t\n\ttCodeSigningInformationPopOver.contentSize=tPopUpViewController.view.bounds.size;\n\t\n\tNSView * tTrick=tPopUpViewController.view;  // This is used to trigger the viewDidLoad method of the contentViewController.\n\t\n\t(void)tTrick;\n\t\n\t[tCodeSigningInformationPopOver showRelativeToRect:_codeSigningButton.bounds\n\t\t\t\t\t\t\t\t\t\t\t\tofView:_codeSigningButton\n\t\t\t\t\t\t\t\t\t\t preferredEdge:NSMaxXEdge];\n}\n\n- (IBAction)showExecutableInFinder:(id)sender\n{\n    NSWorkspace * tSharedWorkspace=[NSWorkspace sharedWorkspace];\n    \n    NSString * tExecutablePath=self.crashLog.reopenFilePath;\n    \n    if (tExecutablePath==nil)\n        tExecutablePath=self.crashLog.header.executablePath;\n    \n    [tSharedWorkspace selectFile:tExecutablePath inFileViewerRootedAtPath:@\"\"];\n}\n\n#pragma mark - NSPopoverDelegate\n\n- (void)popoverDidClose:(NSNotification *)inNotification\n{\n\tNSWindow * tWindow=self.view.window;\n\t\n\tif (tWindow.firstResponder==tWindow.contentView)\n\t\t[tWindow makeFirstResponder:self];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorGeneralViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorStackableViewController.h\"\n\n@interface CUIInspectorGeneralViewController : CUIInspectorStackableViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorGeneralViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorGeneralViewController.h\"\n\n@interface CUIInspectorGeneralViewController ()\n{\n    IBOutlet NSTextField * _crashDateValue;\n    \n    IBOutlet NSTextField * _operatingSystemVersionLabel;\n    \n    IBOutlet NSTextField * _operatingSystemVersionValue;\n    \n    IBOutlet NSTextField * _bridgeOSVersionValue;\n}\n\n// Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification;\n\n- (void)systemClockDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIInspectorGeneralViewController\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n \n    [self refreshDate];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(viewFrameDidChange:) name:NSViewFrameDidChangeNotification object:self.view];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(systemClockDidChange:) name:NSCurrentLocaleDidChangeNotification object:nil];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:NSViewFrameDidChangeNotification object:self.view];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:NSCurrentLocaleDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)refreshDate\n{\n    static NSArray * sDateFormatters=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        NSDateFormatter * tLongMediumFormatter=[NSDateFormatter new];\n        \n        tLongMediumFormatter.locale=[NSLocale autoupdatingCurrentLocale];\n        tLongMediumFormatter.formatterBehavior=NSDateFormatterBehavior10_4;\n        tLongMediumFormatter.dateStyle=NSDateFormatterLongStyle;\n        tLongMediumFormatter.timeStyle=NSDateFormatterMediumStyle;\n        \n        NSDateFormatter * tMediumMediumFormatter=[NSDateFormatter new];\n        \n        tMediumMediumFormatter.formatterBehavior=NSDateFormatterBehavior10_4;\n        tMediumMediumFormatter.locale=[NSLocale autoupdatingCurrentLocale];\n        tMediumMediumFormatter.dateStyle=NSDateFormatterMediumStyle;\n        tMediumMediumFormatter.timeStyle=NSDateFormatterMediumStyle;\n        \n        NSDateFormatter * tShortMediumFormatter=[NSDateFormatter new];\n        \n        tShortMediumFormatter.formatterBehavior=NSDateFormatterBehavior10_4;\n        tShortMediumFormatter.locale=[NSLocale autoupdatingCurrentLocale];\n        tShortMediumFormatter.dateStyle=NSDateFormatterShortStyle;\n        tShortMediumFormatter.timeStyle=NSDateFormatterMediumStyle;\n        \n        sDateFormatters=@[\n                          tLongMediumFormatter,\n                          tMediumMediumFormatter,\n                          tShortMediumFormatter\n                          ];\n        \n    });\n    \n    CUICrashLog * tCrashLog=self.crashLog;\n    CUICrashLogHeader * tHeader=tCrashLog.header;\n    \n    NSDate * tDate=tHeader.dateTime;\n    \n    NSRect tSavedFrame=_crashDateValue.frame;\n    \n    _crashDateValue.objectValue=tDate;\n    \n    // Try different formatters (from longest string to smallest string)\n    \n    for(NSDateFormatter * tDateFormatter in sDateFormatters)\n    {\n        _crashDateValue.formatter=tDateFormatter;\n        \n        [_crashDateValue sizeToFit];\n        \n        NSRect tFrame=_crashDateValue.frame;\n        \n        if (NSWidth(tFrame)<=NSWidth(tSavedFrame))\n            break;\n    }\n    \n    _crashDateValue.frame=tSavedFrame;\n}\n\n- (void)refreshUI\n{\n    CUICrashLog * tCrashLog=self.crashLog;\n    \n    CUICrashLogHeader * tHeader=tCrashLog.header;\n    \n    [self refreshDate];\n    \n    CUIOperatingSystemVersion * tOSVersion=tHeader.operatingSystemVersion;\n    \n    if (tOSVersion==nil)\n    {\n        _operatingSystemVersionValue.stringValue=@\"-\";\n    }\n    else\n    {\n        NSString * tDeviceOS=@\"macOS\";\n        \n        if (tOSVersion.majorVersion>10)\n        {\n            tDeviceOS=@\"macOS\";\n        }\n        else\n        {\n            if (tOSVersion.minorVersion>10)\n            {\n                tDeviceOS=@\"macOS\";\n            }\n            else if (tOSVersion.minorVersion>7)\n            {\n                tDeviceOS=@\"OS X\";\n            }\n            else\n            {\n                tDeviceOS=@\"Mac OS X\";\n            }\n        }\n        \n        _operatingSystemVersionLabel.stringValue=[NSString stringWithFormat:NSLocalizedString(@\"%@:\", @\"\"),tDeviceOS];\n        \n        _operatingSystemVersionValue.stringValue=tOSVersion.stringValue;\n    }\n}\n\n#pragma mark - Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification\n{\n    [self refreshDate];\n}\n\n- (void)systemClockDidChange:(NSNotification *)inNotification\n{\n    [self refreshDate];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorProcessesViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorStackableViewController.h\"\n\n@interface CUIInspectorProcessesViewController : CUIInspectorStackableViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorProcessesViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorProcessesViewController.h\"\n\n@interface CUIInspectorProcessesViewController ()\n{\n    IBOutlet NSTextField * _processNameValue;\n    \n    IBOutlet NSTextField * _parentProcessNameValue;\n    \n    IBOutlet NSTextField * _responsibleProcessNameValue;\n}\n\n@end\n\n@implementation CUIInspectorProcessesViewController\n\n\n- (void)refreshUI\n{\n    CUICrashLog * tCrashLog=self.crashLog;\n    \n    CUICrashLogHeader * tHeader=tCrashLog.header;\n    \n    // Processes\n    \n    NSString * tProcessFormatString=NSLocalizedString(@\"%@ (%u)\", @\"\");\n    \n    _processNameValue.stringValue=[NSString stringWithFormat:tProcessFormatString,tHeader.processName,tHeader.processIdentifier];\n    \n    NSString * tParentProcessName=tHeader.parentProcessName;\n    \n    if ([tParentProcessName isEqualToString:@\"???\"]==YES && tHeader.parentProcessIdentifier==1)\n        tParentProcessName=@\"launchd\";\n    \n    _parentProcessNameValue.stringValue=[NSString stringWithFormat:tProcessFormatString,tParentProcessName,tHeader.parentProcessIdentifier];\n    \n    if (tHeader.responsibleProcessName==nil && tHeader.responsibleProcessIdentifier==0)\n        _responsibleProcessNameValue.stringValue=@\"-\";\n    else\n        _responsibleProcessNameValue.stringValue=[NSString stringWithFormat:tProcessFormatString,tHeader.responsibleProcessName,tHeader.responsibleProcessIdentifier];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorStackableViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n\nextern NSString * const CUIInspectorStackableViewFrameDidChangeNotification;\n\n@interface CUIInspectorStackableViewController : NSViewController\n\n    @property (nonatomic) CUICrashLog * crashLog;\n\n- (void)refreshUI;\n\n- (void)layoutView;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorStackableViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorStackableViewController.h\"\n\nNSString * const CUIInspectorStackableViewFrameDidChangeNotification=@\"CUIInspectorStackableViewFrameDidChangeNotification\";\n\n\n@implementation CUIInspectorStackableViewController\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    if (_crashLog==inCrashLog)\n        return;\n    \n    _crashLog=inCrashLog;\n    \n    [self refreshUI];\n}\n\n#pragma mark -\n\n- (void)refreshUI\n{\n}\n\n- (void)layoutView\n{\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorUserViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorStackableViewController.h\"\n\n@interface CUIInspectorUserViewController : CUIInspectorStackableViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorUserViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorUserViewController.h\"\n\n@interface CUIInspectorUserViewController ()\n{\n    IBOutlet NSTextField * _userIDValue;\n}\n\n@end\n\n@implementation CUIInspectorUserViewController\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n}\n\n#pragma mark -\n\n- (void)refreshUI\n{\n    CUICrashLog * tCrashLog=self.crashLog;\n    \n    CUICrashLogHeader * tHeader=tCrashLog.header;\n    \n    // User\n    \n    NSString * tUserIDValue=@\"root\";\n    \n    if (tHeader.userIdentifier!=0)\n    {\n        tUserIDValue=[NSString stringWithFormat:@\"%u\",tHeader.userIdentifier];\n    }\n    \n    _userIDValue.stringValue=tUserIDValue;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n\n@interface CUIInspectorViewController : NSViewController\n\n    @property (nonatomic) CUICrashLog * crashLog;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIInspectorViewController.h\"\n\n#import \"CUICrashLog+UI.h\"\n\n#import \"CUIInspectorGeneralViewController.h\"\n\n#import \"CUIInspectorUserViewController.h\"\n\n#import \"CUIInspectorExecutableViewController.h\"\n\n#import \"CUIInspectorProcessesViewController.h\"\n\n@interface CUIInspectorViewController () <NSTableViewDataSource,NSTabViewDelegate>\n{\n    NSMutableArray * _stackableViewControllers;\n}\n\n- (void)refreshLayout;\n\n// Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIInspectorViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _stackableViewControllers=[NSMutableArray array];\n        \n        CUIInspectorGeneralViewController * tGeneralViewController=[CUIInspectorGeneralViewController new];\n        \n        [_stackableViewControllers addObject:tGeneralViewController];\n        \n        CUIInspectorUserViewController * tUserViewController=[CUIInspectorUserViewController new];\n        \n        [_stackableViewControllers addObject:tUserViewController];\n        \n        CUIInspectorExecutableViewController * tExecutableViewController=[CUIInspectorExecutableViewController new];\n        \n        [_stackableViewControllers addObject:tExecutableViewController];\n        \n        CUIInspectorProcessesViewController * tProcessesViewController=[CUIInspectorProcessesViewController new];\n        \n        [_stackableViewControllers addObject:tProcessesViewController];\n    }\n    \n    return self;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIInspectorViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    for(CUIInspectorStackableViewController * tViewController in _stackableViewControllers)\n    {\n        tViewController.crashLog=self.crashLog;\n        \n        [self.view addSubview:tViewController.view];\n    }\n    \n    [self refreshLayout];\n\n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(viewFrameDidChange:) name:NSViewFrameDidChangeNotification object:self.view];\n}\n\n#pragma mark -\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    if (_crashLog==inCrashLog)\n        return;\n    \n    _crashLog=inCrashLog;\n\n    for(CUIInspectorStackableViewController * tViewController in _stackableViewControllers)\n    {\n        tViewController.crashLog=inCrashLog;\n    }\n    \n    [self refreshLayout];\n}\n\n#pragma mark -\n\n- (void)refreshLayout\n{\n    NSRect tFrame=self.view.frame;\n    \n    CGFloat tMaxY=NSMaxY(tFrame);\n    \n    for(CUIInspectorStackableViewController * tViewController in _stackableViewControllers)\n    {\n        [tViewController layoutView];\n        \n        NSRect tInspectorViewFrame=tViewController.view.bounds;\n        \n        tInspectorViewFrame.origin.y=tMaxY-NSHeight(tInspectorViewFrame);\n        \n        tViewController.view.frame=tInspectorViewFrame;\n        \n        tMaxY=tInspectorViewFrame.origin.y;\n    }\n}\n\n#pragma mark - Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification\n{\n    [self refreshLayout];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIInspectorViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorViewController\">\n            <connections>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"858\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <point key=\"canvasLocation\" x=\"9\" y=\"-297\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIKeyViews.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@protocol CUIKeyViews\n\n- (NSView *)firstKeyView;\n\n- (NSView *)lastKeyView;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableDockedThreadView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableThreadView.h\"\n\n@interface CUILightTableDockedThreadView : CUILightTableThreadView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableDockedThreadView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableDockedThreadView.h\"\n\n@implementation CUILightTableDockedThreadView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    [NSGraphicsContext saveGraphicsState];\n    \n    // Background\n    \n    NSShadow *shadow = [NSShadow new];\n    shadow.shadowBlurRadius=5.0;\n    shadow.shadowOffset=NSMakeSize(0.0, -2.0);\n    shadow.shadowColor=[NSColor colorWithCalibratedWhite:0.0 alpha:0.5];\n    [shadow set];\n    \n    NSRect tRect=NSInsetRect(self.bounds,5,0);\n    tRect.origin.y+=5;\n    tRect.size.height-=5;\n    \n    NSBezierPath * tBackgroundBezierPath=[NSBezierPath bezierPathWithRoundedRect:tRect xRadius:5 yRadius:5];\n    \n    [[NSColor colorWithDeviceWhite:0.95 alpha:1.0] set];\n    \n    [tBackgroundBezierPath fill];\n    \n    [NSGraphicsContext restoreGraphicsState];\n    \n    // Header\n    \n    tRect.origin.y=NSMaxY(tRect)-32.0;\n    tRect.size.height=32.0;\n    \n    NSBezierPath * tHeaderBezierPath=[NSBezierPath bezierPath];\n    \n    [tHeaderBezierPath moveToPoint:tRect.origin];\n    \n    [tHeaderBezierPath lineToPoint:NSMakePoint(NSMaxX(tRect),NSMinY(tRect))];\n    [tHeaderBezierPath lineToPoint:NSMakePoint(NSMaxX(tRect),NSMaxY(tRect)-8.0)];\n    \n    [tHeaderBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(NSMaxX(tRect)-8.0,NSMaxY(tRect)-8.0) radius:8.0 startAngle:0 endAngle:90 clockwise:NO];\n    \n    [tHeaderBezierPath lineToPoint:NSMakePoint(NSMinX(tRect)+8.0,NSMaxY(tRect))];\n    \n    [tHeaderBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(tRect)+8.0,NSMaxY(tRect)-8.0) radius:8.0 startAngle:90 endAngle:180 clockwise:NO];\n    \n    [tHeaderBezierPath closePath];\n    \n    if (self.crashed==YES)\n        [[NSColor colorWithDeviceRed:203.0/255.0 green:49.0/255.0 blue:34.0/255.0 alpha:1.0 ] set];\n    else\n    {\n        if (self.applicationSpecificBacktrace==YES)\n            [[NSColor orangeColor] set];\n        else\n            [[NSColor colorWithDeviceWhite:0.60 alpha:1.0] set];\n    }\n    \n    [tHeaderBezierPath fill];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableThreadView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUILightTableThreadView : NSView\n\n    @property (nonatomic) NSCollectionViewItemHighlightState highlightState;\n\n    @property (nonatomic) BOOL selected;\n\n    @property (nonatomic) BOOL crashed;\n\n    @property (nonatomic) BOOL applicationSpecificBacktrace;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableThreadView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableThreadView.h\"\n\n@implementation CUILightTableThreadView\n\n- (void)setHighlightState:(NSCollectionViewItemHighlightState)inHighlightState\n{\n    _highlightState=inHighlightState;\n    \n    [self setNeedsDisplay:YES];\n}\n\n- (void)setSelected:(BOOL)inSelected\n{\n    _selected=inSelected;\n    \n    [self setNeedsDisplay:YES];\n}\n\n- (void)setCrashed:(BOOL)inCrashed\n{\n    _crashed=inCrashed;\n    \n    [self setNeedsDisplay:YES];\n}\n\n- (void)setApplicationSpecificBacktrace:(BOOL)inApplicationSpecificBacktrace\n{\n    _applicationSpecificBacktrace=inApplicationSpecificBacktrace;\n    \n    [self setNeedsDisplay:YES];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadsViewController.h\"\n\n@interface CUILightTableViewController : CUIThreadsViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableViewController.h\"\n\n#import \"CUICollectionViewVisibleThreadsLayout.h\"\n#import \"CUICollectionViewDockedThreadsLayout.h\"\n\n#import \"CUICollectionViewVisibleThreadItem.h\"\n#import \"CUICollectionViewDockedThreadItem.h\"\n\n#import \"CUILightTableVisibleThreadView.h\"\n\n#import \"CUILightTableVisibleInterGapView.h\"\n\n\n\n\n\n@interface CUILightTableViewController () <NSCollectionViewDataSource,NSCollectionViewDelegate>\n{\n    IBOutlet NSCollectionView * _visiblethreadsCollectionView;\n    \n    IBOutlet NSCollectionView * _dockedThreadsCollectionView;\n    \n    NSMutableArray<CUIThread *> * _visibleThreads;\n    \n    NSMutableArray<CUIThread *> * _dockedThreads;\n    \n    NSSet * _indexPathOfVisibleThreadsBeingDragged;\n}\n\n- (void)minimizeThread:(CUIThread *)inThread;\n\n@end\n\n@implementation CUILightTableViewController\n\n- (NSString *)nibName\n{\n    return @\"CUILightTableViewController\";\n}\n\n- (void)awakeFromNib\n{\n    // Table Collection View\n    \n    _visiblethreadsCollectionView.collectionViewLayout=[CUICollectionViewVisibleThreadsLayout new];\n    _visiblethreadsCollectionView.dataSource=self;\n    _visiblethreadsCollectionView.delegate=self;\n    \n    NSNib * tNib=[[NSNib alloc] initWithNibNamed:@\"CUICollectionViewVisibleThreadItem\" bundle:[NSBundle mainBundle]];\n    \n    [_visiblethreadsCollectionView registerNib:tNib forItemWithIdentifier:@\"visibleThread\"];\n    \n    [_visiblethreadsCollectionView registerForDraggedTypes:@[NSPasteboardTypeString]];\n    \n    [_visiblethreadsCollectionView setDraggingSourceOperationMask:NSDragOperationMove forLocal:YES];\n    \n    \n    // Dock Collection View\n    \n    _dockedThreadsCollectionView.collectionViewLayout=[CUICollectionViewDockedThreadsLayout new];\n    _dockedThreadsCollectionView.dataSource=self;\n    _dockedThreadsCollectionView.delegate=self;\n    \n    tNib=[[NSNib alloc] initWithNibNamed:@\"CUICollectionViewDockedThreadItem\" bundle:[NSBundle mainBundle]];\n    \n    [_dockedThreadsCollectionView registerNib:tNib forItemWithIdentifier:@\"dockedThread\"];\n    \n    [_dockedThreadsCollectionView registerForDraggedTypes:@[NSPasteboardTypeString]];\n    \n    [_dockedThreadsCollectionView setDraggingSourceOperationMask:NSDragOperationMove forLocal:YES];\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    \n}\n\n#pragma mark -\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n    [super setCrashLog:inCrashLog];\n    \n    _visibleThreads=[inCrashLog.backtraces.threads mutableCopy];\n    \n    _dockedThreads=[NSMutableArray array];\n    \n    [_visiblethreadsCollectionView reloadData];\n    \n    [_dockedThreadsCollectionView reloadData];\n}\n\n- (void)setVisibleStackFrameComponents:(CUIStackFrameComponents)inVisibleStackFrameComponents\n{\n    [super setVisibleStackFrameComponents:inVisibleStackFrameComponents];\n    \n    [_visiblethreadsCollectionView reloadData];\n}\n\n#pragma mark -\n\n- (void)minimizeThread:(CUIThread *)inThread\n{\n    NSUInteger tIndex=[_visibleThreads indexOfObject:inThread];\n    \n    if (tIndex==NSNotFound)\n        return;\n    \n    [_visibleThreads removeObjectAtIndex:tIndex];\n    \n    __block NSUInteger tInsertionIndex=0;\n    NSUInteger tThreadNumber=inThread.number;\n    \n    \n    [_dockedThreads enumerateObjectsUsingBlock:^(CUIThread * bThread, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if (tThreadNumber<bThread.number)\n        {\n            *bOutStop=YES;\n            return;\n        }\n        \n        tInsertionIndex++;\n    }];\n    \n    \n    [_dockedThreads insertObject:inThread atIndex:tInsertionIndex];\n    \n    [_visiblethreadsCollectionView.animator deleteItemsAtIndexPaths:[NSSet setWithObject:[NSIndexPath indexPathForItem:tIndex inSection:0]]];\n    \n    [_dockedThreadsCollectionView.animator insertItemsAtIndexPaths:[NSSet setWithObject:[NSIndexPath indexPathForItem:tInsertionIndex inSection:0]]];\n}\n\n- (void)openThread:(CUIThread *)inThread\n{\n    CUIThread * tThread=inThread;\n    \n    NSUInteger tIndex=[_dockedThreads indexOfObject:tThread];\n    \n    if (tIndex==NSNotFound)\n        return;\n    \n    [_dockedThreads removeObjectAtIndex:tIndex];\n    \n    __block NSUInteger tInsertionIndex=0;\n    NSUInteger tThreadNumber=inThread.number;\n    \n    \n    [_visibleThreads enumerateObjectsUsingBlock:^(CUIThread * bThread, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if (tThreadNumber<bThread.number)\n        {\n            *bOutStop=YES;\n            return;\n        }\n        \n        tInsertionIndex++;\n    }];\n    \n    \n    [_visibleThreads insertObject:inThread atIndex:tInsertionIndex];\n    \n    [_dockedThreadsCollectionView.animator deleteItemsAtIndexPaths:[NSSet setWithObject:[NSIndexPath indexPathForItem:tIndex inSection:0]]];\n    \n    //NSShowAnimationEffect(NSAnimationEffectDisappearingItemDefault, NSMakePoint(300,300), NSZeroSize,nil,nil,NULL);\n    \n    [_visiblethreadsCollectionView.animator insertItemsAtIndexPaths:[NSSet setWithObject:[NSIndexPath indexPathForItem:tInsertionIndex inSection:0]]];\n}\n\n#pragma mark - NSCollectionViewDataSource\n\n- (NSInteger)collectionView:(NSCollectionView *)inCollectionView numberOfItemsInSection:(NSInteger)inSection\n{\n    if (inCollectionView==_visiblethreadsCollectionView)\n        return _visibleThreads.count;\n    \n    if (inCollectionView==_dockedThreadsCollectionView)\n        return _dockedThreads.count;\n    \n    return 0;\n}\n\n- (NSCollectionViewItem *)collectionView:(NSCollectionView *)inCollectionView itemForRepresentedObjectAtIndexPath:(NSIndexPath *)inIndexPath\n{\n    if (inCollectionView==_visiblethreadsCollectionView)\n    {\n        CUICollectionViewVisibleThreadItem * tCollectionViewItem=(CUICollectionViewVisibleThreadItem *)[inCollectionView makeItemWithIdentifier:@\"visibleThread\" forIndexPath:inIndexPath];\n        \n        tCollectionViewItem.representedObject=_visibleThreads[inIndexPath.item];\n        \n        tCollectionViewItem.showsOffset=((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0);\n        tCollectionViewItem.showsMemoryAddress=((self.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)!=0);\n        tCollectionViewItem.showsBinaryImageIdentifier=((self.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)!=0);\n        \n        tCollectionViewItem.crashLog=self.crashLog;\n        \n        return tCollectionViewItem;\n    }\n    \n    if (inCollectionView==_dockedThreadsCollectionView)\n    {\n        CUICollectionViewDockedThreadItem * tCollectionViewItem=(CUICollectionViewDockedThreadItem *)[inCollectionView makeItemWithIdentifier:@\"dockedThread\" forIndexPath:inIndexPath];\n        \n        tCollectionViewItem.representedObject=_dockedThreads[inIndexPath.item];\n        \n        return tCollectionViewItem;\n    }\n    \n    return nil;\n}\n\n- (NSView *)collectionView:(NSCollectionView *)inCollectionView viewForSupplementaryElementOfKind:(NSCollectionViewSupplementaryElementKind)kind atIndexPath:(NSIndexPath *)indexPath\n{\n    return [[CUILightTableVisibleInterGapView alloc] initWithFrame:NSZeroRect];\n}\n\n#pragma  mark - NSCollectionViewDelegate\n\n- (void)collectionView:(NSCollectionView *)inCollectionView didSelectItemsAtIndexPaths:(nonnull NSSet<NSIndexPath *> *)inIndexPaths\n{\n    // A COMPLETER\n}\n\n#pragma  mark - NSCollectionViewDelegate - Drag and Drop\n\n- (BOOL)collectionView:(NSCollectionView *)inCollectionView canDragItemsAtIndexPaths:(NSSet<NSIndexPath *> *)inIndexPaths withEvent:(NSEvent *)inEvent\n{\n    return YES;\n}\n\n- (nullable id <NSPasteboardWriting>)collectionView:(NSCollectionView *)inCollectionView pasteboardWriterForItemAtIndexPath:(NSIndexPath *)indexPath\n{\n    NSPasteboardItem * tPasteboardItem=[NSPasteboardItem new];\n    \n    [tPasteboardItem setString:@\"something\" forType:NSPasteboardTypeString];\n    \n    return tPasteboardItem;\n}\n\n- (void)collectionView:(NSCollectionView *)inCollectionView draggingSession:(nonnull NSDraggingSession *)session willBeginAtPoint:(NSPoint)screenPoint forItemsAtIndexPaths:(nonnull NSSet<NSIndexPath *> *)indexPaths\n{\n    _indexPathOfVisibleThreadsBeingDragged=indexPaths;\n}\n\n- (NSDragOperation)collectionView:(NSCollectionView *)inCollectionView validateDrop:(nonnull id<NSDraggingInfo>)draggingInfo proposedIndexPath:(NSIndexPath *__autoreleasing  _Nonnull * _Nonnull)proposedDropIndexPath dropOperation:(nonnull NSCollectionViewDropOperation *)proposedDropOperation\n{\n    if (*proposedDropOperation==NSCollectionViewDropOn)\n        return NSDragOperationNone;\n    \n    if (_indexPathOfVisibleThreadsBeingDragged==nil)\n        return NSDragOperationCopy;\n    \n    NSIndexPath * tIndexPathOfFirstItem = [_indexPathOfVisibleThreadsBeingDragged anyObject];\n    \n    if ((*proposedDropIndexPath).item==tIndexPathOfFirstItem.item || (*proposedDropIndexPath).item==(tIndexPathOfFirstItem.item+1))\n        return NO;\n    \n    return NSDragOperationMove;\n}\n\n- (BOOL)collectionView:(NSCollectionView *)inCollectionView acceptDrop:(nonnull id<NSDraggingInfo>)draggingInfo indexPath:(nonnull NSIndexPath *)indexPath dropOperation:(NSCollectionViewDropOperation)dropOperation\n{\n    if (_indexPathOfVisibleThreadsBeingDragged != nil)\n    {\n        // 2\n        NSIndexPath * tIndexPathOfFirstItem = [_indexPathOfVisibleThreadsBeingDragged anyObject];\n        NSIndexPath * toIndexPath;\n        \n        \n        \n        \n        if ([tIndexPathOfFirstItem compare:indexPath] == NSOrderedAscending)\n        {\n            toIndexPath = [NSIndexPath indexPathForItem:indexPath.item-1 inSection:indexPath.section];\n        }\n        else\n        {\n            toIndexPath = [NSIndexPath indexPathForItem:indexPath.item inSection:indexPath.section];\n        }\n        // 3\n        \n        // 4\n        \n        id tObject=_visibleThreads[tIndexPathOfFirstItem.item];\n        \n        [_visibleThreads removeObjectAtIndex:tIndexPathOfFirstItem.item];\n        \n        [_visibleThreads insertObject:tObject atIndex:toIndexPath.item];\n        \n        [inCollectionView.animator moveItemAtIndexPath:tIndexPathOfFirstItem toIndexPath:toIndexPath];\n    }\n    \n    return YES;\n}\n\n- (void)collectionView:(NSCollectionView *)inCollectionView draggingSession:(nonnull NSDraggingSession *)session endedAtPoint:(NSPoint)screenPoint dragOperation:(NSDragOperation)operation\n{\n    _indexPathOfVisibleThreadsBeingDragged=nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUILightTableViewController\">\n            <connections>\n                <outlet property=\"_dockedThreadsCollectionView\" destination=\"WO8-AI-zX4\" id=\"v1S-iC-dBz\"/>\n                <outlet property=\"_visiblethreadsCollectionView\" destination=\"s3H-58-rum\" id=\"OUp-Ip-LAP\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"879\" height=\"421\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView wantsLayer=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" id=\"Is4-MH-EDS\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"51\" width=\"879\" height=\"370\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"GWA-mL-QBp\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"862\" height=\"368\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <collectionView selectable=\"YES\" id=\"s3H-58-rum\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"862\" height=\"429\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\"/>\n                                <collectionViewGridLayout key=\"collectionViewLayout\" id=\"fd6-Hx-fgD\">\n                                    <size key=\"minimumItemSize\" width=\"100\" height=\"0.0\"/>\n                                    <size key=\"maximumItemSize\" width=\"100\" height=\"0.0\"/>\n                                </collectionViewGridLayout>\n                                <color key=\"primaryBackgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </collectionView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"FjU-lf-e6a\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"233\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"PbY-6o-hdI\">\n                        <rect key=\"frame\" x=\"863\" y=\"1\" width=\"15\" height=\"368\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasVerticalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" id=\"74e-OG-fwK\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"879\" height=\"49\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"X3A-lY-R4e\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"877\" height=\"47\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <collectionView id=\"WO8-AI-zX4\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"877\" height=\"158\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\"/>\n                                <collectionViewLayout key=\"collectionViewLayout\" id=\"ZNa-Er-XTv\" customClass=\"CUICollectionViewVisibleThreadsLayout\"/>\n                                <color key=\"primaryBackgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </collectionView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"2Ji-AH-FIU\">\n                        <rect key=\"frame\" x=\"1\" y=\"144\" width=\"233\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"e0K-uF-rGR\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"15\" height=\"47\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"268\" y=\"-205\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableVisibleInterGapView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUILightTableVisibleInterGapView : NSView\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableVisibleInterGapView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableVisibleInterGapView.h\"\n\n@implementation CUILightTableVisibleInterGapView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    [[NSColor alternateSelectedControlColor] set];\n    \n    NSRectFill(self.bounds);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableVisibleThreadView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableThreadView.h\"\n\n@interface CUILightTableVisibleThreadView : CUILightTableThreadView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILightTableVisibleThreadView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILightTableVisibleThreadView.h\"\n\n@implementation CUILightTableVisibleThreadView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    [NSGraphicsContext saveGraphicsState];\n    \n    // Background\n    \n    NSShadow *shadow = [NSShadow new];\n    shadow.shadowBlurRadius=5.0;\n    shadow.shadowOffset=NSMakeSize(0.0, -2.0);\n    shadow.shadowColor=[NSColor colorWithCalibratedWhite:0.0 alpha:0.5];\n    [shadow set];\n    \n    NSRect tRect=NSInsetRect(self.bounds,5,0);\n    tRect.origin.y+=5;\n    tRect.size.height-=5;\n    \n    NSBezierPath * tBackgroundBezierPath=[NSBezierPath bezierPathWithRoundedRect:tRect xRadius:8 yRadius:8];\n    \n    [[NSColor colorWithDeviceWhite:0.95 alpha:1.0] set];\n    \n    [tBackgroundBezierPath fill];\n    \n    [NSGraphicsContext restoreGraphicsState];\n    \n    // Header\n    \n    tRect.origin.y=NSMaxY(tRect)-32.0;\n    tRect.size.height=32.0;\n    \n    NSBezierPath * tHeaderBezierPath=[NSBezierPath bezierPath];\n    \n    [tHeaderBezierPath moveToPoint:tRect.origin];\n    \n    [tHeaderBezierPath lineToPoint:NSMakePoint(NSMaxX(tRect),NSMinY(tRect))];\n    [tHeaderBezierPath lineToPoint:NSMakePoint(NSMaxX(tRect),NSMaxY(tRect)-8.0)];\n    \n    [tHeaderBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(NSMaxX(tRect)-8.0,NSMaxY(tRect)-8.0) radius:8.0 startAngle:0 endAngle:90 clockwise:NO];\n    \n    [tHeaderBezierPath lineToPoint:NSMakePoint(NSMinX(tRect)+8.0,NSMaxY(tRect))];\n    \n    [tHeaderBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(tRect)+8.0,NSMaxY(tRect)-8.0) radius:8.0 startAngle:90 endAngle:180 clockwise:NO];\n    \n    [tHeaderBezierPath closePath];\n    \n    if (self.crashed==YES)\n        [[NSColor colorWithDeviceRed:203.0/255.0 green:49.0/255.0 blue:34.0/255.0 alpha:1.0 ] set];\n    else\n    {\n        if (self.applicationSpecificBacktrace==YES)\n            [[NSColor orangeColor] set];\n        else\n            [[NSColor colorWithDeviceWhite:0.60 alpha:1.0] set];\n    }\n    \n    [tHeaderBezierPath fill];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILineJumperWindowController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUILineJumperWindowController : NSWindowController\n\n+ (CUILineJumperWindowController *)sharedLineJumperWindowController;\n\n- (void)popUpForTextView:(NSTextView *)inTextView;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUILineJumperWindowController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUILineJumperWindowController.h\"\n\n@interface CUILineNumberFormatter : NSFormatter\n\n@end\n\n@implementation CUILineNumberFormatter\n\n- (NSString *)stringForObjectValue:(id) inObject\n{\n    if ([inObject isKindOfClass:NSString.class]==NO)\n        return inObject;\n    \n    return inObject;\n}\n\n- (BOOL)getObjectValue:(id *) outObject forString:(NSString *) inString errorDescription:(NSString **) outError\n{\n    *outObject=[inString copy];\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (BOOL)isPartialStringValid:(NSString *) inPartialString newEditingString:(NSString **) outNewString errorDescription:(NSString **) outError\n{\n    if (inPartialString==nil)\n        return YES;\n    \n    NSUInteger tLength=inPartialString.length;\n    \n    if (tLength==0)\n        return YES;\n    \n    if (tLength>10)\n    {\n        *outNewString=nil;\n        \n        *outError=@\"NSBeep\";\n        \n        return NO;\n    }\n    \n    static NSCharacterSet * sForbidddenCharacterSet=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        sForbidddenCharacterSet=[[NSCharacterSet characterSetWithCharactersInString:@\"0123456789\"] invertedSet];\n    });\n    \n    if ([inPartialString rangeOfCharacterFromSet:sForbidddenCharacterSet].location!=NSNotFound)\n    {\n        *outNewString=nil;\n        \n        *outError=@\"NSBeep\";\n        \n        return NO;\n    }\n    \n    return YES;\n}\n\n@end\n\n\n@interface CUILineJumperWindowController () <NSTextFieldDelegate>\n{\n    IBOutlet NSTextField * _lineNumberField;\n    \n    IBOutlet NSButton * _resetButton;\n    \n    NSTextView * _targetedTextView;\n}\n\n- (IBAction)takeLineNumberFrom:(id)sender;\n\n- (IBAction)reset:(id)sender;\n\n@end\n\n@implementation CUILineJumperWindowController\n\n+ (CUILineJumperWindowController *)sharedLineJumperWindowController\n{\n    static CUILineJumperWindowController * sLineJumperWindowController=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sLineJumperWindowController=[CUILineJumperWindowController new];\n        \n    });\n    \n    return sLineJumperWindowController;\n}\n\n#pragma mark -\n\n- (NSString *)windowNibName\n{\n    return @\"CUILineJumperWindowController\";\n}\n\n- (void)windowDidLoad\n{\n    [super windowDidLoad];\n    \n    self.window.movableByWindowBackground=YES;\n    \n    _lineNumberField.formatter=[CUILineNumberFormatter new];\n}\n\n#pragma mark -\n\n- (void)popUpForTextView:(NSTextView *)inTextView\n{\n    if (inTextView==nil)\n        return;\n    \n    _targetedTextView=inTextView;\n    \n    _lineNumberField.stringValue=@\"\";\n    \n    [self showWindow:self];\n}\n\n- (void)_abortEditing\n{\n    [_lineNumberField abortEditing];\n    \n    _lineNumberField.stringValue=@\"\";\n    \n    [self.window close];\n}\n\n#pragma mark -\n\n- (IBAction)cancel:(id)sender\n{\n    [self _abortEditing];\n}\n\n- (IBAction)takeLineNumberFrom:(NSTextField *)sender\n{\n    NSString * tString=sender.stringValue;\n    \n    if (tString.length==0)\n    {\n        NSBeep();\n        \n        return;\n    }\n    \n    NSInteger tLineNumberToJumpTo=tString.integerValue;\n    \n    if (tLineNumberToJumpTo<=0)\n    {\n        NSBeep();\n        return;\n    }\n    \n    NSLayoutManager * tLayoutManager = _targetedTextView.layoutManager;\n    \n    NSUInteger tNumberOfGlyphs = tLayoutManager.numberOfGlyphs;\n    \n    NSUInteger tGlyphIndex = 0;\n    \n    NSString *text = _targetedTextView.string;\n    \n    for (NSUInteger tLineNumber = 1; tGlyphIndex < tNumberOfGlyphs;)\n    {\n        NSRange tLineRange;\n        \n        [tLayoutManager lineFragmentRectForGlyphAtIndex:tGlyphIndex effectiveRange:&tLineRange];\n        \n        if (tLineNumber == tLineNumberToJumpTo)\n        {\n            // Scroll to line\n            \n            NSRect tBounds=[_targetedTextView.layoutManager boundingRectForGlyphRange:tLineRange inTextContainer:_targetedTextView.textContainer];\n            \n            tBounds.origin.x=0;\n            \n            [_targetedTextView scrollPoint:tBounds.origin];\n            \n            // Select line\n            \n            [_targetedTextView setSelectedRange:tLineRange];\n            \n            // Hide # Line Number window and set the focus on the text view\n            \n            [self.window orderOut:nil];\n            \n            [_targetedTextView.window makeFirstResponder:_targetedTextView];\n            \n            return;\n        }\n        \n        tGlyphIndex=NSMaxRange(tLineRange);\n        \n        NSUInteger characterIndex=[tLayoutManager characterIndexForGlyphAtIndex:tGlyphIndex];\n        \n        if (characterIndex > 0)\n        {\n            if ([text characterAtIndex:characterIndex-1]=='\\n')\n                tLineNumber++;\n        }\n        else\n        {\n            tLineNumber++;\n        }\n    }\n    \n    // Line not found (tLineNumberToJumpTo > number of lines)\n    \n    NSBeep();\n}\n\n- (IBAction)reset:(id)sender\n{\n    _lineNumberField.currentEditor.string=@\"\";\n    \n    _resetButton.hidden=YES;\n}\n\n#pragma mark - NSTextFieldDelegate\n\n- (void)controlTextDidChange:(NSNotification *)inNotification\n{\n    NSText * tFieldEditor=inNotification.userInfo[@\"NSFieldEditor\"];\n    \n    NSString * tString=tFieldEditor.string;\n    \n    _resetButton.hidden=(tString.length==0);\n}\n\n- (void)control:(NSControl *)control didFailToValidatePartialString:(NSString *)string errorDescription:(nullable NSString *)error\n{\n    NSBeep();\n}\n\n#pragma mark - NSWindowDelegate\n\n- (void)windowDidResignMain:(NSNotification *)notification\n{\n    [self _abortEditing];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIMainWindow.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIMainWindow : NSWindow\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIMainWindow.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIMainWindow.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\nNSString * const CUIDefaultsWindowToolbarVisibleKey=@\"window.toolbar.visible\";\n\n@implementation CUIMainWindow\n\n+ (void)initialize\n{\n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                              CUIDefaultsWindowToolbarVisibleKey:@(YES)\n                                                              }];\n}\n\n- (void)awakeFromNib\n{\n    NSUserDefaults * tDefaults=[NSUserDefaults standardUserDefaults];\n    \n    if ([tDefaults boolForKey:CUIDefaultsWindowToolbarVisibleKey]==NO)\n    {\n        self.toolbar.visible=NO;\n        \n        self.titleVisibility=NSWindowTitleVisible;\n        \n        self.representedFilename=@\"\";\n        \n        self.title=@\"Unexpectedly\";\n    }\n    else\n    {\n        self.titleVisibility=NSWindowTitleHidden;\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(toggleToolbarShown:))\n    {\n        if (self.toolbar.isVisible==YES)\n            inMenuItem.title=NSLocalizedString(@\"Hide Toolbar\",@\"\");\n        else\n            inMenuItem.title=NSLocalizedString(@\"Show Toolbar\",@\"\");\n    }\n    \n    return [super validateMenuItem:inMenuItem];\n}\n\n- (void)toggleToolbarShown:(id)sender\n{\n    [super toggleToolbarShown:sender];\n    \n    self.titleVisibility=(self.toolbar.isVisible==YES) ? NSWindowTitleHidden : NSWindowTitleVisible;\n    \n    if (self.titleVisibility==NSWindowTitleVisible)\n    {\n        self.representedFilename=@\"\";   // Set to @\"\" so that the next call to setRepresentedFileName shows the proxy icon and enables the menu (if the value does not change, the API does not do its job)\n        \n        CUICrashLogsSelection * tSelection=[CUICrashLogsSelection sharedSelection];\n        \n        CUIRawCrashLog * tCrashLog=tSelection.crashLogs.firstObject;\n        \n        if (tCrashLog==nil)\n        {\n            self.title=@\"Unexpectedly\";\n            \n            return;\n        }\n        \n        NSString * tCrashLogFilePath=tCrashLog.crashLogFilePath;\n        \n        self.title=[tCrashLogFilePath lastPathComponent];\n        \n        self.representedFilename=tCrashLogFilePath;\n    }\n    \n    // Remember whether the toolbar is shown or not\n    \n    [[NSUserDefaults standardUserDefaults] setBool:(self.toolbar.isVisible==YES) forKey:CUIDefaultsWindowToolbarVisibleKey];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIMainWindowController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIMainWindowController : NSWindowController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIMainWindowController.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIMainWindowController.h\"\n\n#import \"CUICrashLogsMainViewController.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n#import \"CUIRegistersWindowController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\nextern NSString * const CUICrashLogContentsViewPresentationModeDidChangeNotification;\n\nextern NSString * const CUIBottomViewCollapseStateDidChangeNotification;\n\nextern NSString * const CUIDefaultsBottomViewCollapsedKey;\n\n@interface CUIMainWindowController () <NSMenuItemValidation, NSToolbarDelegate,NSWindowDelegate>\n{\n    CUICrashLogsMainViewController * _mainViewController;\n    \n    IBOutlet NSButton * _registersWindowButton;\n    \n    IBOutlet NSSegmentedControl * _presentationModeSegmentedControl;\n    \n    IBOutlet NSSegmentedControl * _mainLayoutSegmentedControl;\n}\n\n- (IBAction)CUIMENUACTION_showHideRegisters:(id)sender;\n\n// Notifications\n\n- (void)splitViewDidResizeSubviews:(NSNotification *)inNotification;\n\n- (void)bottomViewCollapseStateDidChange:(NSNotification *)inNotification;\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification;\n\n- (void)contentsViewPresentationModeDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIMainWindowController\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)windowNibName\n{\n\treturn @\"CUIMainWindowController\";\n}\n\n- (void)windowDidLoad\n{\n    [super windowDidLoad];\n    \n    // Register for notifications\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(contentsViewPresentationModeDidChange:) name:CUICrashLogContentsViewPresentationModeDidChangeNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(splitViewDidResizeSubviews:) name:NSSplitViewDidResizeSubviewsNotification object:_mainViewController.splitView];\n    \n    \n    [tNotificationCenter addObserver:self selector:@selector(bottomViewCollapseStateDidChange:) name:CUIBottomViewCollapseStateDidChangeNotification object:self.window];\n    \n    [tNotificationCenter addObserver:self selector:@selector(windowWillClose:) name:NSWindowWillCloseNotification object:nil];\n    \n    // Add main view\n    \n    _mainViewController=[CUICrashLogsMainViewController new];\n    \n    _mainViewController.view.frame=self.window.contentView.bounds;\n    \n    [self.window.contentView addSubview:_mainViewController.view];\n    \n    [self.window makeFirstResponder:_mainViewController];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(CUIMENUACTION_showHideRegisters:))\n    {\n        CUIRegistersWindowController * tRegistersWindowController=[CUIRegistersWindowController sharedRegistersWindowController];\n        \n        if ([tRegistersWindowController.window isVisible]==YES)\n        {\n            inMenuItem.title=NSLocalizedString(@\"Hide Registers\", @\"\");\n        }\n        else\n        {\n            inMenuItem.title=NSLocalizedString(@\"Show Registers\", @\"\");\n        }\n    }\n    \n    return YES;\n}\n\n- (void)noResponderFor:(SEL)inEventSelector\n{\n    if (inEventSelector!=@selector(keyDown:))\n        return;\n\n    [NSNotificationCenter.defaultCenter postNotificationName:@\"windowDidNotHandleKeyEventNotification\" object:self.window userInfo:@{@\"Event\":[NSApp currentEvent]}];\n}\n\n- (IBAction)CUIMENUACTION_showHideRegisters:(id)sender\n{\n    CUIRegistersWindowController * tRegistersWindowController=[CUIRegistersWindowController sharedRegistersWindowController];\n    \n    if ([tRegistersWindowController.window isVisible]==YES)\n    {\n        [tRegistersWindowController.window close];\n    }\n    else\n    {\n        [tRegistersWindowController showWindow:nil];\n        \n        _registersWindowButton.state=NSControlStateValueOn;\n    }\n}\n\n- (void)showWindow:(id)sender\n{\n    [super showWindow:sender];\n    \n    // Show Registers window?\n    \n    if ([CUIApplicationPreferences sharedPreferences].showsRegistersWindowAutomaticallyAtLaunch==YES)\n        [self CUIMENUACTION_showHideRegisters:self];\n}\n\n#pragma mark - Notifications\n\n- (void)splitViewDidResizeSubviews:(NSNotification *)inNotification\n{\n    [_mainLayoutSegmentedControl setSelected:([_mainViewController.splitView isSubviewCollapsed:_mainViewController.splitView.subviews[0]]==NO) forSegment:0];\n    \n    [_mainLayoutSegmentedControl setSelected:([_mainViewController.splitView isSubviewCollapsed:_mainViewController.splitView.subviews[2]]==NO) forSegment:2];\n}\n\n- (void)bottomViewCollapseStateDidChange:(NSNotification *)inNotification\n{\n    BOOL tIsCollapsed=[inNotification.userInfo[@\"Collapsed\"] boolValue];\n    \n    [_mainLayoutSegmentedControl setSelected:(tIsCollapsed==NO) forSegment:1];\n}\n\n- (void)contentsViewPresentationModeDidChange:(NSNotification *)inNotification\n{\n    NSNumber * tNumber=inNotification.userInfo[@\"mode\"];\n    \n    if (tNumber==nil)\n        return;\n    \n    NSUInteger tMode=tNumber.integerValue;\n    \n    [_presentationModeSegmentedControl selectSegmentWithTag:tMode];\n    \n    [_mainLayoutSegmentedControl setEnabled:(tMode==1) forSegment:1];\n    \n    if (tMode!=1)\n    {\n        [_mainLayoutSegmentedControl setSelected:NO forSegment:1];\n    }\n    else\n    {\n        BOOL tIsCollapsed=NO;\n        \n        tNumber=[[NSUserDefaults standardUserDefaults] objectForKey:CUIDefaultsBottomViewCollapsedKey];\n        \n        if (tNumber==nil || [tNumber boolValue]==YES)\n            tIsCollapsed=YES;\n        \n        [_mainLayoutSegmentedControl setSelected:(tIsCollapsed==NO) forSegment:1];\n    }\n}\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogsSelection * tSelection=inNotification.object;\n    \n    if ([tSelection isKindOfClass:[CUICrashLogsSelection class]]==NO)\n        return;\n    \n    _presentationModeSegmentedControl.enabled=(tSelection.crashLogs.count>0);\n    \n    if ([_presentationModeSegmentedControl tagForSegment:_presentationModeSegmentedControl.selectedSegment]==1)\n    {\n        [_mainLayoutSegmentedControl setEnabled:(tSelection.crashLogs.count>0) forSegment:1];\n    }\n    \n    CUIRawCrashLog * tCrashLog=tSelection.crashLogs.firstObject;\n    \n    if (tCrashLog==nil)\n    {\n        self.window.title=@\"Unexpectedly\";\n        self.window.representedFilename=@\"\";\n        \n        return;\n    }\n    \n    NSString * tCrashLogFilePath=tCrashLog.crashLogFilePath;\n    \n    self.window.title=tCrashLogFilePath.lastPathComponent;\n    \n    self.window.representedFilename=tCrashLogFilePath;\n}\n\n- (void)windowWillClose:(NSNotification *)inNotification\n{\n    NSWindow * tWindow=inNotification.object;\n    \n    if (tWindow==self.window)\n    {\n        [NSApp terminate:self];\n        \n        return;\n    }\n    \n    if ([tWindow.windowController isKindOfClass:[CUIRegistersWindowController class]]==YES)\n    {\n        _registersWindowButton.state=NSControlStateValueOff;\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUINavigationChevronView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUINavigationChevronView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUINavigationChevronView.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUINavigationChevronView.h\"\n\n@implementation CUINavigationChevronView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    NSRect tBounds=self.bounds;\n    \n    [[NSColor colorWithDeviceWhite:0.55 alpha:1.0] set];\n    \n    CGFloat tMidY=round(NSMidY(tBounds));\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPath];\n    \n    if (self.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n    {\n        [tBezierPath moveToPoint:NSMakePoint(NSMaxX(tBounds)-5,NSMaxY(tBounds))];\n        [tBezierPath lineToPoint:NSMakePoint(NSMaxX(tBounds)-1,tMidY)];\n        [tBezierPath lineToPoint:NSMakePoint(NSMaxX(tBounds)-5,NSMinY(tBounds))];\n    }\n    else\n    {\n        [tBezierPath moveToPoint:NSMakePoint(NSMaxX(tBounds)-5,NSMaxY(tBounds))];\n        [tBezierPath lineToPoint:NSMakePoint(NSMaxX(tBounds)-9,tMidY)];\n        [tBezierPath lineToPoint:NSMakePoint(NSMaxX(tBounds)-5,NSMinY(tBounds))];\n    }\n    \n    [tBezierPath stroke];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUINavigationView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUINavigationView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUINavigationView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUINavigationView.h\"\n\n@implementation CUINavigationView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    NSRect tBounds=self.bounds;\n    \n    BOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    if (tIsDark==NO)\n        [[NSColor colorWithDeviceWhite:0.95 alpha:1.0] set];\n    else\n        [[NSColor colorWithDeviceWhite:0.0 alpha:0.15] set];\n        \n    NSRectFillUsingOperation(dirtyRect, NSCompositingOperationSourceOver);\n    \n    [[NSColor colorWithDeviceWhite:0.0 alpha:0.25] set];\n    \n    [NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(tBounds),NSMinY(tBounds)+0.5) toPoint:NSMakePoint(NSMaxX(tBounds),NSMinY(tBounds)+0.5)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIOperatingSystemVersion.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface CUIOperatingSystemVersion : NSObject\n\n    @property (readonly) NSInteger majorVersion;\n\n    @property (readonly) NSInteger minorVersion;\n\n    @property (readonly) NSInteger patchVersion;\n\n    @property (readonly,copy) NSString * buildNumber;\n\n- (instancetype)initWithString:(NSString *)inString;\n\n- (NSString *)stringValue;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIOperatingSystemVersion.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIOperatingSystemVersion.h\"\n\n@interface CUIOperatingSystemVersion ()\n\n    @property NSInteger majorVersion;\n\n    @property NSInteger minorVersion;\n\n    @property NSInteger patchVersion;\n\n    @property (copy) NSString * buildNumber;\n\n@end\n\n@implementation CUIOperatingSystemVersion\n\n- (instancetype)initWithString:(NSString *)inString\n{\n    if ([inString isKindOfClass:[NSString class]]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSArray * tComponents=[inString componentsSeparatedByString:@\" \"];\n        \n        if (tComponents.count==0 || [tComponents.firstObject length]==0)\n            return nil;\n        \n        NSString * tNumericVersion=tComponents.firstObject;\n        \n        NSArray * tVersionComponents=[tNumericVersion componentsSeparatedByString:@\".\"];\n        NSUInteger tComponentsCount=tVersionComponents.count;\n        \n        _majorVersion=[tVersionComponents[0] integerValue];\n        \n        if (tComponentsCount>1)\n            _minorVersion=[tVersionComponents[1] integerValue];\n        \n        if (tComponentsCount>2)\n            _patchVersion=[tVersionComponents[2] integerValue];\n        \n        if (tComponents.count>1)\n            _buildNumber=[tComponents[1] stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@\"()\"]];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)stringValue\n{\n    return [NSString stringWithFormat:@\"%ld.%ld.%ld\",self.majorVersion,self.minorVersion,self.patchVersion];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIOutlineModeDisplaySettings.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIStackFrameComponents.h\"\n\n@interface CUIOutlineModeDisplaySettings : NSObject <NSCopying>\n\n    @property BOOL showOnlyCrashedThread;\n\n    @property CUIStackFrameComponents visibleStackFrameComponents;\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inDictionary;\n\n- (NSDictionary *)representation;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIOutlineModeDisplaySettings.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIOutlineModeDisplaySettings.h\"\n\nNSString * const CUIOutlineModeDisplaySettingsShowOnlyCrashedThreadKey=@\"backtrace.crashedThreadOnly\";\n\nNSString * const CUIOutlineModeDisplaySettingsVisibleStackFrameComponentsKey=@\"stack-frame.components.visible\";\n\n@implementation CUIOutlineModeDisplaySettings\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inDictionary\n{\n    if ([inDictionary isKindOfClass:NSDictionary.class]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSNumber * tNumber=inDictionary[CUIOutlineModeDisplaySettingsShowOnlyCrashedThreadKey];\n        \n        if ([tNumber isKindOfClass:NSNumber.class]==NO)\n            return nil;\n        \n        _showOnlyCrashedThread=tNumber.boolValue;\n        \n        \n        tNumber=inDictionary[CUIOutlineModeDisplaySettingsVisibleStackFrameComponentsKey];\n        \n        if ([tNumber isKindOfClass:NSNumber.class]==NO)\n            return nil;\n        \n        _visibleStackFrameComponents=tNumber.unsignedIntegerValue;\n    }\n    \n    return self;\n}\n\n- (NSDictionary *)representation\n{\n    return @{\n             CUIOutlineModeDisplaySettingsShowOnlyCrashedThreadKey:@(self.showOnlyCrashedThread),\n             CUIOutlineModeDisplaySettingsVisibleStackFrameComponentsKey:@(self.visibleStackFrameComponents)\n             };\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(NSZone *)zone\n{\n    CUIOutlineModeDisplaySettings * nSettings=[CUIOutlineModeDisplaySettings new];\n    \n    nSettings.showOnlyCrashedThread=self.showOnlyCrashedThread;\n    \n    nSettings.visibleStackFrameComponents=self.visibleStackFrameComponents;\n    \n    return nSettings;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIParsingErrors.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\nextern NSString * const CUIParsingErrorDomain;\n\nextern NSString * const CUIParsingErrorLineKey;\n\nextern NSString * const CUIParsingErrorSectionNameKey;\n\ntypedef NS_ENUM(NSUInteger, CUIParsingError)\n{\n    CUIParsingUnknownError=0,\n    \n    CUIParsingSectionDetectionFailedError=1,\n    \n    CUIParsingDateTimeParsingError=2,\n};\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIParsingErrors.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIParsingErrors.h\"\n\nNSString * const CUIParsingErrorDomain=@\"fr.whitebox.unexpectedly.parsing\";\n\nNSString * const CUIParsingErrorLineKey=@\"line\";\n\nNSString * const CUIParsingErrorSectionNameKey=@\"section\";\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneAdvancedViewController.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface CUIPreferencePaneAdvancedViewController : CUIPreferencePaneViewController\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneAdvancedViewController.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneAdvancedViewController.h\"\n\n#import \"WBRemoteVersionChecker.h\"\n\nextern NSString * const CUIApplicationShowDebugMenuKey;\n\nextern NSString * const CUIApplicationShowDebugDidChangeNotification;\n\n@interface CUIPreferencePaneAdvancedViewController ()\n{\n    IBOutlet NSButton * _remoteVersionCheckerCheckbox;\n    \n    IBOutlet NSButton * _showDebugMenuCheckbox;\n}\n\n- (IBAction)switchRemoteVersionCheck:(id)sender;\n\n- (IBAction)switchShowDebugMenu:(id)sender;\n\n@end\n\n@implementation CUIPreferencePaneAdvancedViewController\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePaneAdvancedViewController\";\n}\n\n#pragma mark -\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    // Remote Version Check\n    \n    _remoteVersionCheckerCheckbox.state=([WBRemoteVersionChecker sharedChecker].isCheckEnabled==YES) ? NSControlStateValueOn: NSControlStateValueOff;\n    \n    // Show Debug Menu\n    \n    NSUserDefaults * tDefaults=[NSUserDefaults standardUserDefaults];\n    \n    _showDebugMenuCheckbox.state=([tDefaults boolForKey:CUIApplicationShowDebugMenuKey]==YES) ? NSControlStateValueOn: NSControlStateValueOff;\n}\n\n#pragma mark -\n\n- (IBAction)switchRemoteVersionCheck:(NSButton *)sender\n{\n    [WBRemoteVersionChecker sharedChecker].checkEnabled=(sender.state==NSControlStateValueOn);\n}\n\n- (IBAction)switchShowDebugMenu:(NSButton *)sender\n{\n    NSUserDefaults * tDefaults=[NSUserDefaults standardUserDefaults];\n    \n    [tDefaults setBool:(sender.state==NSControlStateValueOn) forKey:CUIApplicationShowDebugMenuKey];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIApplicationShowDebugDidChangeNotification object:nil];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneCrashreporterViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\n@interface CUIPreferencePaneCrashreporterViewController : CUIPreferencePaneViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneCrashreporterViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneCrashreporterViewController.h\"\n\n#import \"CUICrashReporterDefaults.h\"\n\n@interface CUIPreferencePaneCrashreporterViewController ()\n{\n    IBOutlet NSView * _dialogTypeGroup;\n    \n    IBOutlet NSView * _notificationModeGroup;\n    \n    IBOutlet NSButton * _reportUncaughtExceptionsCheckbox;\n    \n    NSTimer * _refreshTimer;\n}\n\n- (IBAction)switchCrashReporterDialogType:(id)sender;\n\n- (IBAction)switchCrashReporterNotificationMode:(id)sender;\n\n- (IBAction)switchReportUncaughtException:(id)sender;\n\n// Notifications\n\n- (void)applicationDidBecomeActive:(NSNotification *)inNotification;\n\n- (void)applicationDidResignActive:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIPreferencePaneCrashreporterViewController\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePaneCrashreporterViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n}\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    [self refresh];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(applicationDidBecomeActive:) name:NSApplicationDidBecomeActiveNotification object:nil];\n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(applicationDidResignActive:) name:NSApplicationDidResignActiveNotification object:nil];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    // Remove timer (if needed)\n    \n    [_refreshTimer invalidate];\n    _refreshTimer=nil;\n    \n    // Remove observer\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:NSApplicationDidBecomeActiveNotification object:nil];\n    [NSNotificationCenter.defaultCenter removeObserver:self name:NSApplicationDidResignActiveNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)refresh\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    // Operation Mode\n    \n    NSButton * tRadioButton=[_dialogTypeGroup viewWithTag:tDefaults.dialogType];\n    \n    tRadioButton.state=NSControlStateValueOn;\n    \n    // Notification Mode\n    \n    tRadioButton=[_notificationModeGroup viewWithTag:tDefaults.notificationMode];\n    \n    tRadioButton.state=NSControlStateValueOn;\n    \n    // Report Uncaught Exceptions\n    \n    _reportUncaughtExceptionsCheckbox.state=(tDefaults.reportUncaughtExceptions==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n}\n\n#pragma mark -\n\n- (IBAction)switchCrashReporterDialogType:(NSButton *)sender\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    tDefaults.dialogType=sender.tag;\n}\n\n- (IBAction)switchCrashReporterNotificationMode:(NSButton *)sender\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    tDefaults.notificationMode=sender.tag;\n}\n\n- (IBAction)switchReportUncaughtException:(NSButton *)sender\n{\n    CUICrashReporterDefaults * tDefaults=[CUICrashReporterDefaults standardCrashReporterDefaults];\n    \n    tDefaults.reportUncaughtExceptions=(sender.state==NSControlStateValueOn);\n}\n\n#pragma mark - Notifications\n\n- (void)applicationDidBecomeActive:(NSNotification *)inNotification\n{\n    // Remove refresh timer\n    \n    [_refreshTimer invalidate];\n    _refreshTimer=nil;\n    \n    // Refresh\n    \n    [self refresh];\n}\n\n- (void)applicationDidResignActive:(NSNotification *)inNotification\n{\n    // Add refresh timer (Info > macOS 10.12 API)\n    \n    _refreshTimer=[NSTimer scheduledTimerWithTimeInterval:2.0 repeats:YES block:^(NSTimer * _Nonnull timer) {\n       \n        [[CUICrashReporterDefaults standardCrashReporterDefaults] refresh];\n        \n        [self refresh];\n        \n    }];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneFontscolorsViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\n@interface CUIPreferencePaneFontscolorsViewController : CUIPreferencePaneViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneFontscolorsViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneFontscolorsViewController.h\"\n\n#import \"CUICategoriesClipView.h\"\n\n#import \"CUIApplicationPreferences.h\"\n#import \"CUIApplicationPreferences+Themes.h\"\n\n#import \"CUITableCustomSelectionColorRowView.h\"\n#import \"CUIAATextFieldCell.h\"\n\n#import \"CUIThemesManager.h\"\n\n#import \"CUIThemeItemsGroup+UI.h\"\n\n#import \"NSTableView+Selection.h\"\n\n#import \"NSArray+UniqueName.h\"\n\nNSString * const CUICustomColorSelectionRowViewIdentifier=@\"whitebox.colorSelectionRowView\";\n\n@interface CUITheme (Private)\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation newUUID:(BOOL)inNewUUID;\n\n@end\n\n@interface CUIPreferencePaneFontscolorsViewController () <NSFontChanging, NSMenuItemValidation, NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTableView * _themesTableView;\n    \n    IBOutlet NSButton * _duplicateThemeButton;\n    \n    IBOutlet NSButton * _removeThemeButton;\n    \n    \n    IBOutlet NSView * _presentationModeTabHeaderView;\n    \n    IBOutlet CUICategoriesClipView * _categoriesClipView;\n    \n    IBOutlet NSTableView * _categoriesTableView;\n    \n    \n    IBOutlet NSTextField * _fontLabel;\n    \n    IBOutlet NSButton * _fontPanelButton;\n    \n    IBOutlet NSColorWell * _textColorWell;\n    \n    \n    \n    IBOutlet NSColorWell * _backgroundColorWell;\n    \n    \n    IBOutlet NSColorWell * _textSelectionBackgroundColorWell;\n    \n    IBOutlet NSColorWell * _selectedTextColorWell;\n    \n    \n    CUIThemesManager * _sharedThemeManager;\n    \n    \n    NSArray * _cachedSortedThemes;\n    \n    \n    CUIPresentationMode _selectedPresentationMode;\n    \n    CUIThemeItemsGroup * _selectedThemeItemsGroup;\n    \n    NSArray * _cachedItemsNames;\n    \n    NSString * _selectedItemName;\n    \n    \n    NSColor * _cachedBackgroundColor;\n}\n\n- (void)refreshPresentationModeUI;\n\n- (void)refreshBottomUI;\n\n- (IBAction)switchSelectedPresentationMode:(id)sender;\n\n- (IBAction)showFontPanel:(id)sender;\n\n- (IBAction)takeTextColor:(NSColorWell *)sender;\n\n- (IBAction)takeBackgroundColor:(id)sender;\n\n- (IBAction)takeTextSelectionBackgroundColor:(id)sender;\n\n- (IBAction)takeSelectedTextColor:(id)sender;\n\n- (IBAction)restoreDefaults:(id)sender;\n\n\n// Notifications\n\n- (void)currentThemeDidChange:(NSNotification *)inNotification;\n\n- (void)themesListDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIPreferencePaneFontscolorsViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _sharedThemeManager=[CUIThemesManager sharedManager];\n    }\n    \n    return self;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePaneFontscolorsViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _selectedPresentationMode=CUIPresentationModeText;\n    \n    [((NSButton *)[_presentationModeTabHeaderView viewWithTag:_selectedPresentationMode]) setState:NSControlStateValueOn];\n    \n    ((NSClipView *)_categoriesTableView.superview).drawsBackground=YES;\n    \n    [NSColorPanel sharedColorPanel].continuous=YES;\n}\n\n#pragma mark -\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    _cachedSortedThemes=[[_sharedThemeManager allThemes] sortedArrayUsingComparator:^NSComparisonResult(CUITheme * bTheme, CUITheme * bOtherTheme) {\n        \n        return [bTheme.name caseInsensitiveCompare:bOtherTheme.name];\n    }];\n    \n    _removeThemeButton.enabled=(_cachedSortedThemes.count>1);\n    \n    _themesTableView.allowsEmptySelection=YES;\n    \n    [_themesTableView reloadData];\n    \n    NSUInteger tIndex=[_cachedSortedThemes indexOfObject:_sharedThemeManager.currentTheme];\n    \n    [_themesTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tIndex] byExtendingSelection:NO];\n    \n    _themesTableView.allowsEmptySelection=NO;\n    \n    [self refreshPresentationModeUI];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    [self.view.window makeFirstResponder:_categoriesTableView];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(currentThemeDidChange:) name:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(themesListDidChange:) name:CUIThemesManagerThemesListDidChangeNotification object:nil];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:CUIThemesManagerThemesListDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (CGFloat)minimumHeight\n{\n    return 350;\n}\n\n- (CGFloat)maximumHeight\n{\n    return 800;\n}\n\n#pragma mark -\n\n- (void)refreshPresentationModeUI\n{\n    _selectedThemeItemsGroup=[_sharedThemeManager.currentTheme itemsGroupWithIdentifier:[CUIApplicationPreferences groupIdentifierForPresentationMode:_selectedPresentationMode]];\n    \n    if (_selectedThemeItemsGroup==nil)\n    {\n        NSLog(@\"Error: Missing Theme Items Group: %@\",[CUIApplicationPreferences groupIdentifierForPresentationMode:_selectedPresentationMode]);\n        \n        return;\n    }\n    \n    NSMutableArray * tItemsNames=[_selectedThemeItemsGroup.itemsNames mutableCopy];\n    \n    [tItemsNames removeObject:CUIThemeItemBackground];\n    [tItemsNames removeObject:CUIThemeItemLineNumber];\n    [tItemsNames removeObject:CUIThemeItemSelectionBackground];\n    [tItemsNames removeObject:CUIThemeItemSelectionText];\n    \n    _cachedItemsNames=[tItemsNames copy];\n    \n    _cachedBackgroundColor=[[_selectedThemeItemsGroup attributesForItem:CUIThemeItemBackground] color];\n    \n    \n    if (floor(NSAppKitVersionNumber)<=NSAppKitVersionNumber10_13)\n    {\n        _categoriesTableView.backgroundColor=_cachedBackgroundColor;\n    }\n    \n    _categoriesClipView.themeBackgroundColor=_cachedBackgroundColor;\n    \n    NSInteger tSelectedRow=_categoriesTableView.selectedRow;\n    \n    [_categoriesTableView reloadData];\n    \n    if (tSelectedRow!=-1)\n        [_categoriesTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tSelectedRow] byExtendingSelection:NO];\n    \n    [self refreshBottomUI];\n    \n    _backgroundColorWell.color=_cachedBackgroundColor;\n    \n    _textSelectionBackgroundColorWell.color=[[_selectedThemeItemsGroup attributesForItem:CUIThemeItemSelectionBackground] color];\n    \n    _selectedTextColorWell.color=[[_selectedThemeItemsGroup attributesForItem:CUIThemeItemSelectionText] color];\n    \n}\n\n- (void)refreshBottomUI\n{\n    CUIThemeItemAttributes * tAttributes=[_selectedThemeItemsGroup attributesForItem:_selectedItemName];\n    \n    NSFont * tFont=tAttributes.font;\n    \n    _fontLabel.stringValue=[NSString stringWithFormat:@\"%@ - %.1f\",tFont.displayName,tFont.pointSize];\n    \n    NSColor * tColor=tAttributes.color;\n    \n    if (tColor==nil)\n        return;\n    \n    _textColorWell.color=tColor;\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(delete:))\n    {\n        return (_cachedSortedThemes.count>1);  // A REVOIR\n    }\n    \n    return YES;\n}\n\n#pragma mark - Themes actions\n\n- (IBAction)takeThemeName:(NSTextField *)sender\n{\n    NSString * tNewName=sender.stringValue;\n    \n    if (tNewName.length==0)\n    {\n        NSBeep();\n        \n        return;\n    }\n    \n    NSInteger tEditedRow=[_themesTableView rowForView:sender];\n    \n    if (tEditedRow==-1)\n        return;\n    \n    CUITheme * tTheme=_cachedSortedThemes[tEditedRow];\n    \n    if ([tTheme.name isEqualToString:tNewName]==YES)\n        return;\n    \n    NSMutableArray * tExistingThemes=[_cachedSortedThemes mutableCopy];\n    [tExistingThemes removeObject:tTheme];\n    \n    NSArray * tAllNames=[tExistingThemes WB_arrayByMappingObjectsUsingBlock:^NSString *(CUITheme *bTheme, NSUInteger bIndex) {\n        \n        return bTheme.name;\n        \n    }];\n    \n    if ([tAllNames containsObject:tNewName]==YES)\n    {\n        NSAlert * tAlert=[NSAlert new];\n        tAlert.alertStyle=NSAlertStyleCritical;\n        tAlert.messageText=[NSString stringWithFormat:NSLocalizedString(@\"The name \\\"%@\\\" is already taken.\",@\"\"),tNewName];\n        tAlert.informativeText=NSLocalizedString(@\"Please choose a different name.\",@\"\");\n        \n        [tAlert beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse returnCode) {\n            \n            [self->_themesTableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndex:tEditedRow] columnIndexes:[NSIndexSet indexSetWithIndex:0]];\n            \n            [self->_themesTableView editColumn:0 row:tEditedRow withEvent:nil select:YES];\n            \n        }];\n        \n        return;\n    }\n    \n    BOOL tSuccess=[_sharedThemeManager renameTheme:_sharedThemeManager.currentTheme withName:tNewName];\n    \n    if (tSuccess==NO)\n    {\n        NSLog(@\"Error when trying to rename theme %@ to name %@\",_sharedThemeManager.currentTheme,tNewName);\n    }\n}\n\n- (IBAction)duplicate:(id)sender\n{\n    NSIndexSet * tIndexSet=[_themesTableView WB_selectedOrClickedRowIndexes];\n    \n    if (tIndexSet.count!=1)\n        return;\n    \n    CUITheme * tNewTheme=[_sharedThemeManager duplicateTheme:_cachedSortedThemes[tIndexSet.firstIndex]];\n    \n    _sharedThemeManager.currentTheme=tNewTheme;\n    \n    _removeThemeButton.enabled=YES;\n}\n\n- (IBAction)delete:(id)sender\n{\n    NSIndexSet * tIndexSet=[_themesTableView WB_selectedOrClickedRowIndexes];\n    \n    if (tIndexSet.count!=1)\n        return;\n    \n    CUITheme * tTheme=_cachedSortedThemes[tIndexSet.firstIndex];\n    \n    NSAlert * tAlert=[NSAlert new];\n    \n    tAlert.messageText=[NSString stringWithFormat:NSLocalizedString(@\"Do you really want to remove the \\\"%@\\\" theme?\", @\"\"),tTheme.name];\n    tAlert.informativeText=NSLocalizedString(@\"This cannot be undone.\", @\"\");\n    \n    [tAlert addButtonWithTitle:NSLocalizedString(@\"Remove\",@\"\")];\n    [tAlert addButtonWithTitle:NSLocalizedString(@\"Cancel\",@\"\")];\n    \n    [tAlert beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse bReturnCode) {\n        \n        if (bReturnCode!=NSAlertFirstButtonReturn)\n            return;\n        \n        [self->_sharedThemeManager removeTheme:tTheme];\n        \n        self->_removeThemeButton.enabled=(self->_sharedThemeManager.allThemes.count>1);\n    }];\n}\n\n- (IBAction)exportTheme:(id)sender\n{\n    NSIndexSet * tIndexSet=[_themesTableView WB_selectedOrClickedRowIndexes];\n    \n    if (tIndexSet.count!=1)\n        return;\n    \n    CUITheme * tTheme=_cachedSortedThemes[tIndexSet.firstIndex];\n    \n    if (tTheme==nil)\n        return;\n    \n    NSDictionary * tRepresentation=[tTheme representation];\n    \n    if (tRepresentation==nil)\n        return;\n    \n    NSSavePanel * tExportPanel=[NSSavePanel savePanel];\n    \n    tExportPanel.canSelectHiddenExtension=YES;\n    tExportPanel.allowedFileTypes=@[@\"fr.whitebox.unexpectedly.theme\"];\n    \n    tExportPanel.nameFieldLabel=NSLocalizedString(@\"Export As:\", @\"\");\n    tExportPanel.nameFieldStringValue=tTheme.name;\n    \n    tExportPanel.prompt=NSLocalizedString(@\"Export\", @\"\");\n    \n    [tExportPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger bResult){\n        \n        if (bResult!=NSModalResponseOK)\n            return;\n        \n        if ([tRepresentation writeToURL:tExportPanel.URL atomically:NO]==NO)\n        {\n            NSBeep();\n            \n            // A COMPLETER\n        }\n    }];\n}\n\n- (IBAction)importTheme:(id)sender\n{\n    NSOpenPanel * tImportPanel=[NSOpenPanel openPanel];\n    \n    tImportPanel.resolvesAliases=YES;\n    tImportPanel.canChooseFiles=YES;\n    //tImportPanel.allowsMultipleSelection=YES;\n    tImportPanel.canCreateDirectories=NO;\n    tImportPanel.prompt=NSLocalizedString(@\"Import\", @\"\");\n    \n    //tImportPanel.delegate=self;\n    \n    [tImportPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSInteger bResult){\n        \n        if (bResult!=NSModalResponseOK)\n            return;\n        \n        NSDictionary * tDictionary=[NSDictionary dictionaryWithContentsOfURL:tImportPanel.URL];\n        \n        if (tDictionary==nil)\n        {\n            // A COMPLETER\n            \n            return;\n        }\n        \n        CUITheme * tTheme=[[CUITheme alloc] initWithRepresentation:tDictionary newUUID:YES];\n        \n        if (tTheme==nil)\n        {\n            // A COMPLETER\n            \n            return;\n        }\n        \n        // Check that no themes exist with that name\n        \n        CUIThemesManager * tThemesManager=[CUIThemesManager sharedManager];\n        NSArray * tAllThemes=tThemesManager.allThemes;\n        \n        NSUInteger tIndex=[tAllThemes indexOfObjectPassingTest:^BOOL(CUITheme * bTheme, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            return [bTheme.name isEqualToString:tTheme.name];\n            \n        }];\n        \n        if (tIndex!=NSNotFound)\n        {\n            NSAlert * tAlert=[NSAlert new];\n            tAlert.messageText=[NSString stringWithFormat:NSLocalizedString(@\"A theme named \\\"%@\\\" already exists. Do you want to replace it with the one you're importing?\", @\"\"),tTheme.name];\n            \n            [tAlert addButtonWithTitle:NSLocalizedString(@\"Replace\", @\"\")];\n            [tAlert addButtonWithTitle:NSLocalizedString(@\"Cancel\", @\"\")];\n            [tAlert addButtonWithTitle:NSLocalizedString(@\"Keep Both\", @\"\")];\n            \n            NSModalResponse tResponse=[tAlert runModal];\n            \n            switch(tResponse)\n            {\n                case NSAlertFirstButtonReturn:  // Replace\n                {\n                    dispatch_async(dispatch_get_main_queue(), ^{\n                        \n                        [tThemesManager removeTheme:tAllThemes[tIndex]];\n                        [tThemesManager addTheme:tTheme];\n                        \n                    });\n                    \n                    return;\n                }\n                case NSAlertSecondButtonReturn: // Cancel\n                    \n                    return;\n                    \n                case NSAlertThirdButtonReturn:  // Keep Both\n                {\n                    NSString * tNewName=[tAllThemes uniqueNameWithBaseName:[tTheme.name stringByAppendingString:NSLocalizedString(@\" copy\", @\"\")]\n                                                        usingNameExtractor:^NSString *(CUITheme * bThene, NSUInteger bIndex) {\n                                                            return bThene.name;\n                                                        }];\n                    \n                    if (tNewName==nil)\n                    {\n                        NSLog(@\"Uh oh\");\n                        NSBeep();\n                        \n                        return;\n                    }\n                    \n                    tTheme.name=tNewName;\n                    \n                    break;\n                }\n            }\n        }\n        \n        \n        dispatch_async(dispatch_get_main_queue(), ^{\n            \n            [tThemesManager addTheme:tTheme];\n            \n        });\n        \n        \n    }];\n}\n\n#pragma mark -\n\n- (IBAction)switchSelectedPresentationMode:(NSButton *)sender\n{\n    _selectedPresentationMode=sender.tag;\n    \n    [self refreshPresentationModeUI];\n}\n\n- (IBAction)showFontPanel:(id)sender\n{\n    NSFontManager * tFontManager = [NSFontManager sharedFontManager];\n    \n    [tFontManager setSelectedFont:[[_selectedThemeItemsGroup attributesForItem:_selectedItemName] font]\n                       isMultiple:NO];\n    \n    tFontManager.target=self;\n    tFontManager.action=@selector(changeFont:);\n    \n    [[tFontManager fontPanel:YES] orderFront:self];\n}\n\n- (void)changeFont:(id)sender\n{\n    NSInteger tSelectedRow=_categoriesTableView.selectedRow;\n    \n    if (tSelectedRow==-1)\n        return;\n    \n    NSFontManager * tFontManager = [NSFontManager sharedFontManager];\n    \n    CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:_selectedItemName];\n    \n    NSFont * tOldFont=tItemAttributes.font;\n    \n    NSFont * tNewFont=[tFontManager convertFont:tFontManager.selectedFont];\n    \n    if ([tNewFont isEqual:tOldFont]==NO)\n    {\n        tItemAttributes.font=tNewFont;\n        \n        [self refreshBottomUI];\n        \n        NSIndexSet * tIndexSet=[NSIndexSet indexSetWithIndex:tSelectedRow];\n        \n        [_categoriesTableView reloadDataForRowIndexes:tIndexSet columnIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0,1)]];\n        \n        [_categoriesTableView noteHeightOfRowsWithIndexesChanged:tIndexSet];\n    }\n}\n\n- (IBAction)takeTextColor:(NSColorWell *)sender\n{\n    CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:_selectedItemName];\n    \n    tItemAttributes.color=sender.color;\n    \n    [_categoriesTableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndex:[_categoriesTableView selectedRow]] columnIndexes:[NSIndexSet indexSetWithIndex:0]];\n}\n\n- (IBAction)takeBackgroundColor:(NSColorWell *)sender\n{\n    _cachedBackgroundColor=sender.color;\n    \n    CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:CUIThemeItemBackground];\n    \n    tItemAttributes.color=_cachedBackgroundColor;\n    \n    [self refreshPresentationModeUI];\n}\n\n- (IBAction)takeTextSelectionBackgroundColor:(NSColorWell *)sender\n{\n    CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:CUIThemeItemSelectionBackground];\n    \n    tItemAttributes.color=sender.color;\n    \n    [self refreshPresentationModeUI];\n}\n\n- (IBAction)takeSelectedTextColor:(NSColorWell *)sender\n{\n    CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:CUIThemeItemSelectionText];\n    \n    tItemAttributes.color=sender.color;\n    \n    [self refreshPresentationModeUI];\n}\n\n- (IBAction)restoreDefaults:(id)sender\n{\n    NSAlert * tAlert=[NSAlert new];\n    \n    tAlert.messageText=NSLocalizedString(@\"Do you really want to restore the default Fonts & Colors settings?\", @\"\");\n    tAlert.informativeText=NSLocalizedString(@\"You will lose all the changes you made.\", @\"\");\n    \n    [tAlert addButtonWithTitle:NSLocalizedString(@\"Restore\",@\"\")];\n    [tAlert addButtonWithTitle:NSLocalizedString(@\"Cancel\",@\"\")];\n    \n    [tAlert beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse bReturnCode) {\n        \n        if (bReturnCode!=NSAlertFirstButtonReturn)\n            return;\n        \n        [self->_sharedThemeManager reset];\n        \n        [self->_themesTableView reloadData];\n    }];\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n    if (inTableView==_themesTableView)\n        return _cachedSortedThemes.count;\n    \n    if (inTableView==_categoriesTableView)\n        return _cachedItemsNames.count;\n\n    return 0;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSTableRowView *)tableView:(NSTableView *)inTableView rowViewForRow:(NSInteger)inRow\n{\n    if (inTableView==_themesTableView)\n        return nil;\n    \n    CUITableCustomSelectionColorRowView * tTableRowView=[inTableView makeViewWithIdentifier:CUICustomColorSelectionRowViewIdentifier owner:self];\n    \n    if (tTableRowView==nil)\n    {\n        tTableRowView=[[CUITableCustomSelectionColorRowView alloc] initWithFrame:NSZeroRect];\n        tTableRowView.identifier=CUICustomColorSelectionRowViewIdentifier;\n    }\n    \n    tTableRowView.selectionColor=[[_selectedThemeItemsGroup attributesForItem:CUIThemeItemSelectionBackground] color];\n    tTableRowView.backgroundColor=_cachedBackgroundColor;\n    \n    return tTableRowView;\n}\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    NSString * tTableColumnIdentifier=inTableColumn.identifier;\n    NSTableCellView * tTableCellView=[inTableView makeViewWithIdentifier:tTableColumnIdentifier owner:self];\n    \n    if (inTableView==_themesTableView)\n    {\n        tTableCellView.textField.stringValue=[_cachedSortedThemes[inRow] name];\n        tTableCellView.textField.editable=YES;\n        \n        return tTableCellView;\n    }\n    \n    if (inTableView==_categoriesTableView)\n    {\n        NSString * tItemName=_cachedItemsNames[inRow];\n        \n        tTableCellView.textField.stringValue=[CUIThemeItemsGroup displayNameForItemNamed:tItemName];\n        \n        CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:tItemName];\n        \n        tTableCellView.textField.font=tItemAttributes.font;\n        \n        if ([_categoriesTableView isRowSelected:inRow]==YES)\n            tTableCellView.textField.backgroundColor=[[_selectedThemeItemsGroup attributesForItem:CUIThemeItemSelectionBackground] color];\n        else\n            tTableCellView.textField.backgroundColor=_cachedBackgroundColor;\n        \n        tTableCellView.textField.textColor=tItemAttributes.color;\n        \n        return tTableCellView;\n    }\n    \n    return nil;\n}\n\n- (CGFloat)tableView:(NSTableView *)inTableView heightOfRow:(NSInteger)inRow\n{\n    if (inTableView==_themesTableView)\n        return 26.0;\n    \n    if (inTableView==_categoriesTableView)\n    {\n        NSString * tItemName=_cachedItemsNames[inRow];\n        CUIThemeItemAttributes * tItemAttributes=[_selectedThemeItemsGroup attributesForItem:tItemName];\n        NSFont * tFont=tItemAttributes.font;\n        \n        return 10.0+(tFont.ascender-tFont.descender+tFont.leading);\n    }\n    \n    return 18.0;\n}\n\n- (void)tableViewSelectionDidChange:(NSNotification *)inNotification\n{\n    if (inNotification.object==_themesTableView)\n    {\n        NSInteger tSelectedRow=_themesTableView.selectedRow;\n        \n        if (tSelectedRow==-1 || self.view.window==nil)\n            return;\n        \n        _sharedThemeManager.currentTheme=_cachedSortedThemes[tSelectedRow];\n        \n        return;\n    }\n    \n    if (inNotification.object==_categoriesTableView)\n    {\n        NSInteger tSelectedRow=_categoriesTableView.selectedRow;\n        \n        if (tSelectedRow==-1)\n            return;\n        \n        _selectedItemName=_cachedItemsNames[tSelectedRow];\n        \n        [self refreshBottomUI];\n        \n        return;\n    }\n}\n\n#pragma mark - Notifications\n\n- (void)currentThemeDidChange:(NSNotification *)inNotification\n{\n    NSUInteger tIndex=[_cachedSortedThemes indexOfObject:_sharedThemeManager.currentTheme];\n    \n    [_themesTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tIndex] byExtendingSelection:NO];\n    \n    [self refreshPresentationModeUI];\n}\n\n- (void)themesListDidChange:(NSNotification *)inNotification\n{\n    _cachedSortedThemes=[[_sharedThemeManager allThemes] sortedArrayUsingComparator:^NSComparisonResult(CUITheme * bTheme, CUITheme * bOtherTheme) {\n        \n        return [bTheme.name caseInsensitiveCompare:bOtherTheme.name];\n    }];\n    \n    _themesTableView.allowsEmptySelection=YES;\n    \n    [_themesTableView deselectAll:nil];\n    \n    [_themesTableView reloadData];\n    \n    NSUInteger tIndex=[_cachedSortedThemes indexOfObject:_sharedThemeManager.currentTheme];\n    \n    if (tIndex!=NSNotFound)\n        [_themesTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tIndex] byExtendingSelection:NO];\n    \n    _themesTableView.allowsEmptySelection=NO;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneGeneralViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\n@interface CUIPreferencePaneGeneralViewController : CUIPreferencePaneViewController\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneGeneralViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneGeneralViewController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUIApplicationItemAttributes.h\"\n\n\n@interface CUIPreferencePaneGeneralViewController ()\n{\n    IBOutlet NSButton * _showsRegistersWindowAtLaunchCheckbox;\n    \n    IBOutlet NSPopUpButton * _sourceEditorsPopUpButton;\n    \n    IBOutlet NSPopUpButton * _reportViewersPopUpButton;\n}\n\n+ (NSMenu *)reportViewersMenu;\n\n- (IBAction)switchShowsRegisterWindowAtLaunch:(id)sender;\n\n- (IBAction)switchPreferedSourceCodeEditor:(id)sender;\n\n- (IBAction)switchDefaultReportsViewer:(id)sender;\n\n@end\n\n@implementation CUIPreferencePaneGeneralViewController\n\n+ (NSMenu *)reportViewersMenu\n{\n    NSArray * tBundleIdentifiers=(__bridge_transfer NSArray *)LSCopyAllRoleHandlersForContentType(CFSTR(\"com.apple.crashreport\"),kLSRolesViewer);\n    \n    NSMutableArray * tMutableApplicationsURLs=[NSMutableArray array];\n    \n    for(NSString * tBundleIdentifier in tBundleIdentifiers)\n    {\n        NSArray * tApplicationsURLs=(__bridge_transfer NSArray *)LSCopyApplicationURLsForBundleIdentifier((__bridge CFStringRef)tBundleIdentifier,NULL);\n        \n        if (tApplicationsURLs.count>0)\n            [tMutableApplicationsURLs addObject:tApplicationsURLs.firstObject];\n    }\n    \n    NSMenu * tMenu=[[NSMenu alloc] initWithTitle:@\"\"];\n    \n    if (tMenu==nil)\n        return nil;\n    \n    NSMutableArray * tApplicationsAttributes=[[tMutableApplicationsURLs WB_arrayByMappingObjectsUsingBlock:^CUIApplicationItemAttributes *(NSURL * bApplicationURL, NSUInteger bIndex) {\n        \n        return [[CUIApplicationItemAttributes alloc] initWithURL:bApplicationURL];\n    }] mutableCopy];\n    \n    // Filter the array\n    \n    tApplicationsAttributes=[tApplicationsAttributes WB_filteredArrayUsingBlock:^BOOL(CUIApplicationItemAttributes * bAttributes, NSUInteger bIndex) {\n        \n        return (bAttributes.duplicate==NO);\n        \n    }];\n    \n    // Sort the array\n    \n    [tApplicationsAttributes sortUsingSelector:@selector(compare:)];\n    \n    for(CUIApplicationItemAttributes * tAttributes in tApplicationsAttributes)\n    {\n        tAttributes.showsVersion=NO;\n        \n        NSMenuItem * tMenuItem=tAttributes.applicationMenuItem;\n        \n        [tMenu addItem:tMenuItem];\n    }\n    \n    return tMenu;\n}\n\n+ (NSMenu *)sourceEditorsMenu\n{\n    NSURL * tCSourceFileURL=[[NSBundle mainBundle] URLForResource:@\"template\" withExtension:@\"c\"];\n    \n    NSArray * tApplicationsURLs=(__bridge_transfer NSArray *)LSCopyApplicationURLsForURL((__bridge CFURLRef)tCSourceFileURL,kLSRolesEditor);\n    \n    NSMenu * tMenu=[[NSMenu alloc] initWithTitle:@\"\"];\n    \n    if (tMenu==nil)\n        return nil;\n    \n    NSMutableArray * tApplicationsAttributes=[[tApplicationsURLs WB_arrayByMappingObjectsUsingBlock:^CUIApplicationItemAttributes *(NSURL * bApplicationURL, NSUInteger bIndex) {\n        \n        return [[CUIApplicationItemAttributes alloc] initWithURL:bApplicationURL];\n    }] mutableCopy];\n    \n    // Sort the array\n    \n    [tApplicationsAttributes sortUsingSelector:@selector(compare:)];\n    \n    // Filter the array\n    \n    tApplicationsAttributes=[tApplicationsAttributes WB_filteredArrayUsingBlock:^BOOL(CUIApplicationItemAttributes * bAttributes, NSUInteger bIndex) {\n       \n        return (bAttributes.duplicate==NO);\n        \n    }];\n    \n    for(CUIApplicationItemAttributes * tAttributes in tApplicationsAttributes)\n    {\n        NSMenuItem * tMenuItem=tAttributes.applicationMenuItem;\n        \n        [tMenu addItem:tMenuItem];\n    }\n    \n    return tMenu;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePaneGeneralViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    NSMenu * tMenu=[CUIPreferencePaneGeneralViewController sourceEditorsMenu];\n    \n    if (tMenu.numberOfItems>0)\n        _sourceEditorsPopUpButton.menu=tMenu;\n    else\n        _sourceEditorsPopUpButton.enabled=NO;\n    \n    // Default reports viewer\n    \n    tMenu=[CUIPreferencePaneGeneralViewController reportViewersMenu];\n    \n    _reportViewersPopUpButton.menu=tMenu;\n}\n\n#pragma mark -\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    CUIApplicationPreferences * tPreferences=[CUIApplicationPreferences sharedPreferences];\n    \n    _showsRegistersWindowAtLaunchCheckbox.state=(tPreferences.showsRegistersWindowAutomaticallyAtLaunch==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    NSURL * tPreferedApplicationURL=tPreferences.preferedSourceCodeEditorURL;\n    \n    \n    NSUInteger tIndex=[_sourceEditorsPopUpButton.menu.itemArray indexOfObjectPassingTest:^BOOL(NSMenuItem * bMenuItem, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        CUIApplicationItemAttributes * tAttributes=bMenuItem.representedObject;\n        \n        return [tAttributes.applicationURL isEqualTo:tPreferedApplicationURL];\n        \n    }];\n    \n    if (tIndex==NSNotFound)\n    {\n        tPreferedApplicationURL=[CUIApplicationPreferences defaultSourceCodeEditorURL];\n        \n        tIndex=[_sourceEditorsPopUpButton.menu.itemArray indexOfObjectPassingTest:^BOOL(NSMenuItem * bMenuItem, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            CUIApplicationItemAttributes * tAttributes=bMenuItem.representedObject;\n            \n            return [tAttributes.applicationURL isEqualTo:tPreferedApplicationURL];\n            \n        }];\n        \n        if (tIndex!=NSNotFound)\n            tPreferences.preferedSourceCodeEditorURL=tPreferedApplicationURL;\n    }\n    \n    if (tIndex!=NSNotFound)\n        [_sourceEditorsPopUpButton selectItemAtIndex:tIndex];\n    else\n        NSLog(@\"Ouille ouille ouille!\");\n    \n    // Default reports viewer\n    \n    NSString * tBundleIdentifier=(__bridge_transfer NSString *)LSCopyDefaultRoleHandlerForContentType(CFSTR(\"com.apple.crashreport\"),kLSRolesViewer);\n    \n    tIndex=[_reportViewersPopUpButton.menu.itemArray indexOfObjectPassingTest:^BOOL(NSMenuItem * bMenuItem, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        CUIApplicationItemAttributes * tAttributes=bMenuItem.representedObject;\n        \n        return [tAttributes.bundleIdentifier isEqualToString:tBundleIdentifier];\n        \n    }];\n    \n    if (tIndex!=NSNotFound)\n        [_reportViewersPopUpButton selectItemAtIndex:tIndex];\n}\n\n#pragma mark -\n\n- (IBAction)switchShowsRegisterWindowAtLaunch:(NSButton *)sender\n{\n    [CUIApplicationPreferences sharedPreferences].showsRegistersWindowAutomaticallyAtLaunch=(sender.state==NSControlStateValueOn);\n}\n\n- (IBAction)switchPreferedSourceCodeEditor:(NSPopUpButton *)sender\n{\n    CUIApplicationItemAttributes * tAttributes=sender.selectedItem.representedObject;\n    \n    [CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL=tAttributes.applicationURL;\n}\n\n- (IBAction)switchDefaultReportsViewer:(NSPopUpButton *)sender\n{\n    CUIApplicationItemAttributes * tAttributes=sender.selectedItem.representedObject;\n    \n    OSStatus tResult=LSSetDefaultRoleHandlerForContentType(CFSTR(\"com.apple.crashreport\"),kLSRolesViewer,(__bridge CFStringRef) tAttributes.bundleIdentifier);\n    \n    if (tResult != noErr)\n    {\n        // A VOIR (report error if we can figure out which error values this method can return)\n    }\n    \n    tResult=LSSetDefaultRoleHandlerForContentType(CFSTR(\"com.apple.ips\"),kLSRolesViewer,(__bridge CFStringRef) tAttributes.bundleIdentifier);\n    \n    if (tResult != noErr)\n    {\n        // A VOIR (report error if we can figure out which error values this method can return)\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePanePresentationOutlineViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencePanePresentationOutlineViewController : NSViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePanePresentationOutlineViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePanePresentationOutlineViewController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUIOutlineModeDisplaySettings.h\"\n\n@interface CUIPreferencePanePresentationOutlineViewController ()\n{\n    // Strack Frame\n    \n    IBOutlet NSButton * _showBinaryNameCheckbox;\n    \n    IBOutlet NSButton * _showMachineInstructionAddressCheckbox;\n    \n    IBOutlet NSButton * _showByteOffsetCheckbox;\n    \n    \n    CUIApplicationPreferences * _applicationPreferences;\n    \n    CUIOutlineModeDisplaySettings * _displaySettings;\n}\n\n- (void)_setStackFrameComponent:(CUIStackFrameComponents)inComponent visible:(BOOL)inVisible;\n\n- (IBAction)switchShowBinaryName:(id)sender;\n\n- (IBAction)switchShowMachineInstructionAddress:(id)sender;\n\n- (IBAction)switchShowByteOffset:(id)sender;\n\n@end\n\n@implementation CUIPreferencePanePresentationOutlineViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _applicationPreferences=[CUIApplicationPreferences sharedPreferences];\n        \n        _displaySettings=[_applicationPreferences.defaultOutlineModeDisplaySettings copy];\n    }\n    \n    return self;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePanePresentationOutlineViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n}\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    // Stack Frame\n    \n    _showBinaryNameCheckbox.state=((_displaySettings.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showMachineInstructionAddressCheckbox.state=((_displaySettings.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showByteOffsetCheckbox.state=((_displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n}\n\n#pragma mark -\n\n- (void)_setStackFrameComponent:(CUIStackFrameComponents)inComponent visible:(BOOL)inVisible\n{\n    if (inVisible==YES)\n        _displaySettings.visibleStackFrameComponents|=inComponent;\n    else\n        _displaySettings.visibleStackFrameComponents&=~inComponent;\n    \n    _applicationPreferences.defaultOutlineModeDisplaySettings=_displaySettings;\n}\n\n#pragma mark -\n\n- (IBAction)switchShowBinaryName:(NSButton *)sender\n{\n    [self _setStackFrameComponent:CUIStackFrameBinaryNameComponent visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowMachineInstructionAddress:(NSButton *)sender\n{\n    [self _setStackFrameComponent:CUIStackFrameMachineInstructionAddressComponent visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowByteOffset:(NSButton *)sender\n{\n    [self _setStackFrameComponent:CUIStackFrameByteOffsetComponent visible:(sender.state==NSControlStateValueOn)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePanePresentationTextViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <AppKit/AppKit.h>\n\n@interface CUIPreferencePanePresentationTextViewController : NSViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePanePresentationTextViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePanePresentationTextViewController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n@interface CUIPreferencePanePresentationTextViewController ()\n{\n    // Document\n    \n    IBOutlet NSButton * _showsLineNumbersCheckbox;\n    \n    IBOutlet NSButton * _lineWrappingCheckbox;\n    \n    // Sections\n    \n    IBOutlet NSButton * _showHeaderCheckbox;\n    \n    IBOutlet NSButton * _showExceptionInformationCheckbox;\n    \n    IBOutlet NSButton * _showDiagnosticMessagesCheckbox;\n    \n    IBOutlet NSButton * _showBacktracesCheckbox;\n    \n    IBOutlet NSButton * _showThreadStateCheckbox;\n    \n    IBOutlet NSButton * _showBinaryImagesCheckbox;\n    \n    // Strack Frame\n    \n    IBOutlet NSButton * _showBinaryNameCheckbox;\n    \n    IBOutlet NSButton * _showMachineInstructionAddressCheckbox;\n    \n    IBOutlet NSButton * _showByteOffsetCheckbox;\n    \n    \n    CUIApplicationPreferences * _applicationPreferences;\n    \n    CUITextModeDisplaySettings * _displaySettings;\n}\n\n- (IBAction)switchLineWrapping:(id)sender;\n\n- (IBAction)switchShowHeader:(id)sender;\n\n- (IBAction)switchShowExceptionInformation:(id)sender;\n\n- (IBAction)switchShowDiagnosticMessages:(id)sender;\n\n- (IBAction)switchShowBacktraces:(id)sender;\n\n- (IBAction)switchShowThreadState:(id)sender;\n\n- (IBAction)switchShowBinaryImages:(id)sender;\n\n\n- (IBAction)switchShowBinaryName:(id)sender;\n\n- (IBAction)switchShowMachineInstructionAddress:(id)sender;\n\n- (IBAction)switchShowByteOffset:(id)sender;\n\n@end\n\n@implementation CUIPreferencePanePresentationTextViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _applicationPreferences=[CUIApplicationPreferences sharedPreferences];\n        \n        _displaySettings=[_applicationPreferences.defaultTextModeDisplaySettings copy];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePanePresentationTextViewController\";\n}\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    // Document\n    \n    _showsLineNumbersCheckbox.state=(_applicationPreferences.showsLineNumbers==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _lineWrappingCheckbox.state=(_applicationPreferences.lineWrapping==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    // Sections\n    \n    _showHeaderCheckbox.state=((_displaySettings.visibleSections & CUIDocumentHeaderSection)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showExceptionInformationCheckbox.state=((_displaySettings.visibleSections & CUIDocumentExceptionInformationSection)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showDiagnosticMessagesCheckbox.state=((_displaySettings.visibleSections & CUIDocumentDiagnosticMessagesSection)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showBacktracesCheckbox.state=((_displaySettings.visibleSections & CUIDocumentBacktracesSection)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showThreadStateCheckbox.state=((_displaySettings.visibleSections & CUIDocumentThreadStateSection)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showBinaryImagesCheckbox.state=((_displaySettings.visibleSections & CUIDocumentBinaryImagesSection)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    // Stack Frame\n    \n    _showBinaryNameCheckbox.state=((_displaySettings.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showMachineInstructionAddressCheckbox.state=((_displaySettings.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _showByteOffsetCheckbox.state=((_displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0) ? NSControlStateValueOn : NSControlStateValueOff;\n}\n\n#pragma mark -\n\n- (void)_setSection:(CUIDocumentSections)inSection visible:(BOOL)inVisible\n{\n    if (inVisible==YES)\n        _displaySettings.visibleSections|=inSection;\n    else\n        _displaySettings.visibleSections&=~inSection;\n    \n    _applicationPreferences.defaultTextModeDisplaySettings=_displaySettings;\n}\n\n- (void)_setStackFrameComponent:(CUIStackFrameComponents)inComponent visible:(BOOL)inVisible\n{\n    if (inVisible==YES)\n        _displaySettings.visibleStackFrameComponents|=inComponent;\n    else\n        _displaySettings.visibleStackFrameComponents&=~inComponent;\n    \n    _applicationPreferences.defaultTextModeDisplaySettings=_displaySettings;\n}\n\n\n\n- (IBAction)switchShowsLineNumbers:(NSButton *)sender\n{\n    _applicationPreferences.showsLineNumbers=(sender.state==NSControlStateValueOn);\n}\n\n- (IBAction)switchLineWrapping:(NSButton *)sender\n{\n    _applicationPreferences.lineWrapping=(sender.state==NSControlStateValueOn);\n}\n\n- (IBAction)switchShowHeader:(NSButton *)sender\n{\n    [self _setSection:CUIDocumentHeaderSection visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowExceptionInformation:(NSButton *)sender\n{\n    [self _setSection:CUIDocumentExceptionInformationSection visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowDiagnosticMessages:(NSButton *)sender\n{\n    [self _setSection:CUIDocumentDiagnosticMessagesSection visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowBacktraces:(NSButton *)sender\n{\n    [self _setSection:CUIDocumentBacktracesSection visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowThreadState:(NSButton *)sender\n{\n    [self _setSection:CUIDocumentThreadStateSection visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowBinaryImages:(NSButton *)sender\n{\n    [self _setSection:CUIDocumentBinaryImagesSection visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowBinaryName:(NSButton *)sender\n{\n    [self _setStackFrameComponent:CUIStackFrameBinaryNameComponent visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowMachineInstructionAddress:(NSButton *)sender\n{\n    [self _setStackFrameComponent:CUIStackFrameMachineInstructionAddressComponent visible:(sender.state==NSControlStateValueOn)];\n}\n\n- (IBAction)switchShowByteOffset:(NSButton *)sender\n{\n    [self _setStackFrameComponent:CUIStackFrameByteOffsetComponent visible:(sender.state==NSControlStateValueOn)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePanePresentationViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\n@interface CUIPreferencePanePresentationViewController : CUIPreferencePaneViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePanePresentationViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePanePresentationViewController.h\"\n\n#import \"CUIPreferencePanePresentationTextViewController.h\"\n#import \"CUIPreferencePanePresentationOutlineViewController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n@interface CUIPreferencePanePresentationViewController ()\n{\n    IBOutlet NSView * _presentationModeTabHeaderView;\n    \n    IBOutlet NSView * _contentsView;\n    \n    \n    NSMutableDictionary * _paneControllersDictionary;\n    \n    NSViewController * _currentViewController;\n}\n\n- (void)showPaneForPresentationMode:(CUIPresentationMode)inPresentationMode;\n\n- (IBAction)showPresentationOptions:(id)sender;\n\n@end\n\n@implementation CUIPreferencePanePresentationViewController\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePanePresentationViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    [((NSButton *)[_presentationModeTabHeaderView viewWithTag:CUIPresentationModeText]) setState:NSControlStateValueOn];\n    \n    [self showPaneForPresentationMode:CUIPresentationModeText];\n}\n\n#pragma mark -\n\n- (void)showPaneForPresentationMode:(CUIPresentationMode)inPresentationMode\n{\n    if (inPresentationMode==CUIPresentationModeUnknown)\n        return;\n    \n    NSViewController * tViewController=_paneControllersDictionary[@(inPresentationMode)];\n    \n    if (tViewController==nil)\n    {\n        switch(inPresentationMode)\n        {\n            case CUIPresentationModeText:\n                \n                tViewController=[CUIPreferencePanePresentationTextViewController new];\n                \n                break;\n                \n            case CUIPresentationModeOutline:\n                \n                tViewController=[CUIPreferencePanePresentationOutlineViewController new];\n                \n                break;\n                \n            default:\n                \n                break;\n        }\n        \n        if (tViewController==nil)\n            return;\n        \n        _paneControllersDictionary[@(inPresentationMode)]=tViewController;\n    }\n    \n    if (_currentViewController!=nil)\n        [_currentViewController.view removeFromSuperview];\n    \n    _currentViewController=tViewController;\n    \n    _currentViewController.view.frame=_contentsView.bounds;\n    \n    [_contentsView addSubview:_currentViewController.view];\n}\n\n#pragma mark -\n\n- (IBAction)showPresentationOptions:(NSButton *)sender\n{\n    [self showPaneForPresentationMode:sender.tag];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneSymbolicationViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\n@interface CUIPreferencePaneSymbolicationViewController : CUIPreferencePaneViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneSymbolicationViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneSymbolicationViewController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUISymbolsFilesLibraryViewController.h\"\n\n@interface CUIPreferencePaneSymbolicationViewController ()\n{\n    IBOutlet NSButton * _symbolicateButton;\n    \n    IBOutlet NSButton * _searchForSymbolsFilesButton;\n    \n    IBOutlet NSView * _dSYMLibraryPlaceHolderView;\n    \n    CUISymbolsFilesLibraryViewController * _symbolFilesLibraryViewController;\n}\n\n- (IBAction)switchSymbolicate:(id)sender;\n\n- (IBAction)switchSearchForSymbolFiles:(id)sender;\n\n@end\n\n@implementation CUIPreferencePaneSymbolicationViewController\n\n- (NSString *)nibName\n{\n    return @\"CUIPreferencePaneSymbolicationViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _symbolFilesLibraryViewController=[CUISymbolsFilesLibraryViewController new];\n    \n    _symbolFilesLibraryViewController.view.frame=_dSYMLibraryPlaceHolderView.bounds;\n    \n    [_dSYMLibraryPlaceHolderView addSubview:_symbolFilesLibraryViewController.view];\n}\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    CUIApplicationPreferences * tPreferences=[CUIApplicationPreferences sharedPreferences];\n    \n    _symbolicateButton.state=(tPreferences.symbolicateAutomatically==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n    \n    _searchForSymbolsFilesButton.state=(tPreferences.searchForSymbolsFilesAutomatically==YES) ? NSControlStateValueOn : NSControlStateValueOff;\n}\n\n#pragma mark -\n\n- (CGFloat)minimumHeight\n{\n    return 350;\n}\n\n- (CGFloat)maximumHeight\n{\n    return 800;\n}\n\n#pragma mark -\n\n- (IBAction)switchSymbolicate:(NSButton *)sender\n{\n    [CUIApplicationPreferences sharedPreferences].symbolicateAutomatically=(sender.state==NSControlStateValueOn);\n}\n\n- (IBAction)switchSearchForSymbolFiles:(NSButton *)sender\n{\n    [CUIApplicationPreferences sharedPreferences].searchForSymbolsFilesAutomatically=(sender.state==NSControlStateValueOn);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencePaneViewController : NSViewController\n\n    @property (nonatomic,readonly) CGFloat minimumHeight;\n    @property (nonatomic,readonly) CGFloat maximumHeight;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencePaneViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencePaneViewController.h\"\n\n@implementation CUIPreferencePaneViewController\n\n- (CGFloat)minimumHeight\n{\n    return NSHeight(self.view.bounds);\n}\n\n- (CGFloat)maximumHeight\n{\n    return NSHeight(self.view.bounds);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesTabBox.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencesTabBox : NSBox\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesTabBox.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesTabBox.h\"\n\n@implementation CUIPreferencesTabBox\n\n- (void)awakeFromNib\n{\n\tself.boxType=NSBoxCustom;\n\tself.borderType=NSLineBorder;\n\tself.borderWidth=1.0;\n\tself.borderColor=[NSColor containerBorderColor];\n\tself.fillColor=(NSAppKitVersionNumber>=NSAppKitVersionNumber10_14) ? [NSColor controlBackgroundColor] : [NSColor whiteColor];\n\tself.contentViewMargins=NSZeroSize;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesTabButton.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencesTabButton : NSButton\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesTabButton.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesTabButton.h\"\n\n@interface CUIPreferencesTabButton ()\n{\n\tBOOL _pushed;\n}\n\n@end\n\n@implementation CUIPreferencesTabButton\n\n- (void)mouseDown:(NSEvent *)inEvent\n{\n\t_pushed=YES;\n\t\n\t[self setNeedsDisplay:YES];\n}\n\n- (void)mouseDragged:(NSEvent *)inEvent\n{\n\tNSPoint tMouseLocation=[self convertPoint:[inEvent locationInWindow] fromView:nil];\n\t\n\tif (NSPointInRect(tMouseLocation, [self bounds])!=_pushed)\n\t{\n\t\t_pushed=!_pushed;\n\t\t\n\t\t[self setNeedsDisplay:YES];\n\t}\n}\n\n- (void)mouseUp:(NSEvent *)inEvent\n{\n\tif (_pushed==YES)\n\t{\n\t\tif ([self state]!=NSControlStateValueOn)\n\t\t{\n\t\t\t[self setState:NSControlStateValueOn];\n\t\t\t\n\t\t\t[self sendAction:[self action] to:[self target]];\n\t\t}\n\t\t\n\t\t_pushed=NO;\n\t\t\n\t\t[self setNeedsDisplay:YES];\n\t}\n}\n\n#pragma mark -\n\n- (void)drawRect:(NSRect)inRect\n{\n\tNSMutableAttributedString * tAttributedString=[[self attributedTitle] mutableCopy];\n\tBOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n\tNSColor * tColor;\n\t\n\tif (self.state==NSControlStateValueOn)\n\t{\n\t\tif (tIsDark==NO)\n\t\t{\n\t\t\tif (_pushed==YES)\n\t\t\t\ttColor=[NSColor blueColor];\n\t\t\telse\n\t\t\t\ttColor=[NSColor colorWithDeviceRed:25.0/255.0 green:116.0/255.0 blue:219.0/255.0 alpha:1.0];\n\t\t}\n\t\telse\n\t\t{\n\t\t\tif (_pushed==YES)\n\t\t\t\ttColor=[NSColor colorWithDeviceRed:83.0/255.0 green:165.0/255.0 blue:251.0/255.0 alpha:1.0];\n\t\t\telse\n\t\t\t\ttColor=[NSColor colorWithDeviceRed:83.0/255.0 green:165.0/255.0 blue:251.0/255.0 alpha:1.0];\n\t\t}\n\t}\n\telse\n\t{\n\t\tif (_pushed==YES)\n\t\t{\n\t\t\ttColor=(tIsDark==NO) ? [NSColor blackColor] : [NSColor whiteColor];\n\t\t}\n\t\telse\n\t\t{\n\t\t\ttColor=[NSColor labelColor];\n\t\t}\n\t}\n\t\n\t[tAttributedString addAttribute:NSForegroundColorAttributeName\n\t\t\t\t\t\t\t  value:tColor\n\t\t\t\t\t\t\t  range:NSMakeRange(0,[tAttributedString length])];\n\t\n\t[self setAttributedTitle:tAttributedString];\n\t\n\t[super drawRect:inRect];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesTabHeaderView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencesTabHeaderView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesTabHeaderView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesTabHeaderView.h\"\n\n@implementation CUIPreferencesTabHeaderView\n\n- (BOOL)isOpaque\n{\n\treturn NO;\n}\n\n- (void)drawRect:(NSRect)inRect\n{\n\t[[NSColor containerBorderColor] set];\n\t\n\tif (NSMinY(inRect)<=1)\n\t\t[NSBezierPath strokeLineFromPoint:NSMakePoint(NSMinX(inRect),0.5) toPoint:NSMakePoint(NSMaxX(inRect), 0.5)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesWindow.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencesWindow : NSWindow\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesWindow.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesWindow.h\"\n\n@implementation CUIPreferencesWindow\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(toggleToolbarShown:))\n    {\n        return NO;\n    }\n    \n    return [super validateMenuItem:inMenuItem];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesWindowController+Convenience.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesWindowController.h\"\n\n@interface CUIPreferencesWindowController (Convenience)\n\n- (void)showFontsAndColorsPrefPane;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesWindowController+Convenience.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesWindowController+Convenience.h\"\n\n@implementation CUIPreferencesWindowController (Convenience)\n\n- (void)showFontsAndColorsPrefPane\n{\n    [self showWindow:nil];\n    \n    NSString * tIdentifier=@\"toolbarItem.fontscolors\";\n    \n    [self showPaneWithIdentifier:tIdentifier];\n    self.window.toolbar.selectedItemIdentifier=tIdentifier;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesWindowController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIPreferencesWindowController : NSWindowController\n\n+ (CUIPreferencesWindowController *)sharedPreferencesWindowController;\n\n- (void)showPaneWithIdentifier:(NSString *)inIdentifier;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPreferencesWindowController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPreferencesWindowController.h\"\n\n#import \"CUIPreferencePaneViewController.h\"\n\n#import \"NSToolbar+Packages.h\"\n\nNSString * const CUIPreferencesWindowSelectedPaneIdentifierKey=@\"preferences.ui.selected.identifier\";\n\n\n@interface CUIPreferencesWindowController () <NSToolbarDelegate>\n{\n    IBOutlet NSToolbar * _toolBar;\n    \n    NSMutableDictionary * _paneControllersDictionary;\n    \n    CUIPreferencePaneViewController * _currentViewController;\n}\n\n- (void)showPaneWithIdentifier:(NSString *)inIdentifier;\n\n- (IBAction)showPane:(id)sender;\n\n@end\n\n@implementation CUIPreferencesWindowController\n\n+ (CUIPreferencesWindowController *)sharedPreferencesWindowController\n{\n    static dispatch_once_t onceToken;\n    static CUIPreferencesWindowController * sPreferencesWindowController=nil;\n    \n    dispatch_once(&onceToken, ^{\n        \n        sPreferencesWindowController=[CUIPreferencesWindowController new];\n    });\n    \n    return sPreferencesWindowController;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _paneControllersDictionary=[NSMutableDictionary dictionary];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)windowNibName\n{\n    return @\"CUIPreferencesWindowController\";\n}\n\n- (void)windowDidLoad\n{\n    [self.window center];\n    \n    // Set the toolbar style to deal with macOS BS\n    \n#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101600\n    if (@available(*, macOS 11))\n    {\n        self.window.toolbarStyle=NSWindowToolbarStylePreference;\n    }\n#endif\n    \n    self.window.showsToolbarButton=NO;\n    self.window.collectionBehavior^=NSWindowCollectionBehaviorFullScreenAuxiliary;\n    \n    // Set the icon for Fonts & Colors\n    \n    NSToolbarItem * tFontsAndColorsToolbarItem=[self.window.toolbar PKG_toolBarItemWithIdentifier:@\"toolbarItem.fontscolors\"];\n    \n    NSImage * tFontsAndColorsIcon=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ProfileFontAndColor.icns\"];\n    \n    if (tFontsAndColorsIcon==nil)\n    {\n        tFontsAndColorsIcon=[NSImage imageWithSize:NSMakeSize(48, 48) flipped:NO drawingHandler:^BOOL(NSRect dstRect) {\n            \n            NSImage * tColorsImage=[NSImage imageNamed:@\"NSToolbarShowColorsItemImage\"];\n            \n            [tColorsImage drawInRect:NSMakeRect(6,0,48,48) fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:0.6];\n            \n            NSImage * tFontsImage=[NSImage imageNamed:@\"NSToolbarShowFontsItemImage\"];\n            \n            [tFontsImage drawInRect:NSMakeRect(-6,0,48,48) fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n            \n            return YES;\n        }];\n    }\n    \n    tFontsAndColorsToolbarItem.image=tFontsAndColorsIcon;\n    \n    // Show the first pane if not found in defaults\n    \n    NSString * tSelectedIdentifier=[[NSUserDefaults standardUserDefaults] objectForKey:CUIPreferencesWindowSelectedPaneIdentifierKey];\n    \n    if (tSelectedIdentifier==nil)\n        tSelectedIdentifier=((NSToolbarItem *)[_toolBar items][0]).itemIdentifier;\n    \n    _toolBar.selectedItemIdentifier=tSelectedIdentifier;\n    \n    [self showPaneWithIdentifier:tSelectedIdentifier];\n}\n\n#pragma mark -\n\n- (void)showPaneWithIdentifier:(NSString *)inIdentifier\n{    \n    if (inIdentifier==nil)\n        return;\n    \n    CUIPreferencePaneViewController * tViewController=_paneControllersDictionary[inIdentifier];\n    \n    if (tViewController==nil)\n    {\n        NSArray * tArray=[inIdentifier componentsSeparatedByString:@\".\"];\n        \n        if ([tArray count]!=2)\n            return;\n        \n        Class tClass=NSClassFromString([NSString stringWithFormat:@\"CUIPreferencePane%@ViewController\",[tArray[1] capitalizedString]]);\n        \n        if (tClass==nil)\n            return;\n        \n        tViewController=[tClass new];\n        \n        if (tViewController==nil)\n            return;\n        \n        _paneControllersDictionary[inIdentifier]=tViewController;\n    }\n    \n    if (_currentViewController!=nil)\n        [_currentViewController.view removeFromSuperview];\n    \n    _currentViewController=tViewController;\n    \n    NSRect tOldWindowFrame=self.window.frame;\n    \n    NSRect tNewContentRect=[[self.window contentView] bounds];\n    \n    tNewContentRect.size=_currentViewController.view.frame.size;\n    \n    NSRect tWindowFrame=[self.window frameRectForContentRect:tNewContentRect];\n    \n    tWindowFrame.origin.x=NSMinX(tOldWindowFrame);\n    \n    tWindowFrame.origin.y=NSMaxY(tOldWindowFrame)-NSHeight(tWindowFrame);\n    \n    \n    self.window.title=[_toolBar PKG_toolBarItemWithIdentifier:inIdentifier].label;\n    \n    [self.window setFrame:tWindowFrame display:YES animate:NO];\n    \n    // Set Minimum and Maximum Height\n    \n    NSSize tSize=self.window.contentMinSize;\n    tSize.height=_currentViewController.minimumHeight;\n    self.window.contentMinSize=tSize;\n    \n    tSize.height=_currentViewController.maximumHeight;\n    self.window.contentMaxSize=tSize;\n    \n    \n    \n    \n    [[self.window contentView] addSubview:_currentViewController.view];\n    \n    [[NSUserDefaults standardUserDefaults] setObject:inIdentifier forKey:CUIPreferencesWindowSelectedPaneIdentifierKey];\n}\n\n#pragma mark -\n\n- (IBAction)showPane:(id)sender\n{\n    [self showPaneWithIdentifier:[sender itemIdentifier]];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPresentationTextNavigationViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLogPresentationViewController.h\"\n\n@interface CUIPresentationTextNavigationViewController : NSViewController\n\n    @property (nonatomic) CUICrashLogPresentationViewController * presentationViewController;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPresentationTextNavigationViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIPresentationTextNavigationViewController.h\"\n\n#import \"CUICrashLogsSource+UI.h\"\n\n#import \"CUIRawCrashLog+UI.h\"\n#import \"CUICrashLog+UI.h\"\n\n#import \"CUICrashLogsSourcesManager.h\"\n\n#import \"CUICrashLogsSourcesSelection.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUICrashLogPresentationTextViewController.h\"\n\n#import \"CUICrashLogContentsViewController.h\"\n\n#define GROSSE_CHIURE_APPKIT_VERSION_NUMBER     1894\n#define GROSSE_CHIURE_EXTRA_WIDTH   5\n\n@interface CUIPresentationTextNavigationViewController () <NSMenuItemValidation>\n{\n    IBOutlet NSPopUpButton * _sourcesPopUpButton;\n    \n    IBOutlet NSView * _sourcesChevronView;\n    \n    IBOutlet NSPopUpButton * _crashLogsPopUpButton;\n    \n    IBOutlet NSView * _crashLogsChevronView;\n    \n    IBOutlet NSPopUpButton * _sectionsPopUpButton;\n    \n    \n    CUICrashLogsSourcesManager * _sourcesManager;\n    \n    CUICrashLogsSourcesSelection * _sourcesSelection;\n    \n    CUICrashLogsSelection * _crashLogsSelection;\n    \n    NSDateFormatter * _crashLogDateFormatter;\n}\n\n- (void)refreshSourcesMenu;\n\n- (void)refreshCrashLogsMenu;\n\n- (void)refreshSectionsMenu;\n\n- (void)updateLayout;\n\n- (IBAction)switchSourceCrashLog:(id)sender;\n\n- (IBAction)switchCrashLog:(id)sender;\n\n- (IBAction)switchSection:(id)sender;\n\n// Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification;\n\n- (void)sourcesManagerSourcesDidChange:(NSNotification *)inNotification;\n\n- (void)sourceDidUpdateSource:(NSNotification *)inNotification;\n\n- (void)sourcesSelectionDidChange:(NSNotification *)inNotification;\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification;\n\n- (void)crashLogsSortTypeDidChange:(NSNotification *)inNotification;\n\n\n- (void)presentationModeDidChange:(NSNotification *)inNotification;\n\n\n- (void)displayedSectionsDidChange:(NSNotification *)inNotification;\n\n- (void)visibleSectionsDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIPresentationTextNavigationViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _sourcesManager=[CUICrashLogsSourcesManager sharedManager];\n        \n        _sourcesSelection=[CUICrashLogsSourcesSelection sharedSourcesSelection];\n        \n        _crashLogsSelection=[CUICrashLogsSelection sharedSelection];\n        \n        _crashLogDateFormatter=[NSDateFormatter new];\n        _crashLogDateFormatter.formatterBehavior=NSDateFormatterBehavior10_4;\n        _crashLogDateFormatter.dateStyle=NSDateFormatterMediumStyle;\n        _crashLogDateFormatter.timeStyle=NSDateFormatterShortStyle;\n    }\n    \n    return self;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIPresentationTextNavigationViewController\";\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    // Set the autoresizing masks based on the layout direction\n    \n    if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n    {\n        _sourcesPopUpButton.autoresizingMask=NSViewMaxXMargin|NSViewMinYMargin;\n        _sourcesPopUpButton.imagePosition=NSImageLeading;\n        \n        _sourcesChevronView.autoresizingMask=NSViewMaxXMargin|NSViewMinYMargin;\n        \n        _crashLogsPopUpButton.autoresizingMask=NSViewMaxXMargin|NSViewMinYMargin;\n        _crashLogsPopUpButton.imagePosition=NSImageLeading;\n        \n        _crashLogsChevronView.autoresizingMask=NSViewMaxXMargin|NSViewMinYMargin;\n        \n        _sectionsPopUpButton.autoresizingMask=NSViewMaxXMargin|NSViewMinYMargin;\n        _sectionsPopUpButton.imagePosition=NSImageLeading;\n    }\n    else\n    {\n        _sourcesPopUpButton.autoresizingMask=NSViewMinXMargin|NSViewMinYMargin;\n        _sourcesPopUpButton.imagePosition=NSImageTrailing;\n        \n        _sourcesChevronView.autoresizingMask=NSViewMinXMargin|NSViewMinYMargin;\n        \n        _crashLogsPopUpButton.autoresizingMask=NSViewMinXMargin|NSViewMinYMargin;\n        _crashLogsPopUpButton.imagePosition=NSImageTrailing;\n        \n        _crashLogsChevronView.autoresizingMask=NSViewMinXMargin|NSViewMinYMargin;\n        \n        _sectionsPopUpButton.autoresizingMask=NSViewMinXMargin|NSViewMinYMargin;\n        _sectionsPopUpButton.imagePosition=NSImageTrailing;\n    }\n    \n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    [self refreshSourcesMenu];\n    \n    [self refreshCrashLogsMenu];\n    \n    [self refreshSectionsMenu];\n    \n    [self updateLayout];\n    \n    // Register for Notifications\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(viewFrameDidChange:) name:NSViewFrameDidChangeNotification object:self.view];\n    \n    \n    [tNotificationCenter addObserver:self selector:@selector(sourcesManagerSourcesDidChange:) name:CUICrashLogsSourcesManagerSourcesDidChangeNotification object:_sourcesManager];\n    \n    [tNotificationCenter addObserver:self selector:@selector(sourceDidUpdateSource:) name:CUICrashLogsSourceDidUpdateSourceNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(sourcesSelectionDidChange:) name:CUICrashLogsSourcesSelectionDidChangeNotification object:_sourcesSelection];\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:[CUICrashLogsSelection sharedSelection]];\n    \n    [tNotificationCenter addObserver:self selector:@selector(crashLogsSortTypeDidChange:) name:CUIPreferencesCrashLogsSortTypeDidChangeNotification object:nil];\n\n    \n    [tNotificationCenter addObserver:self selector:@selector(presentationModeDidChange:) name:CUICrashLogContentsViewPresentationModeDidChangeNotification object:nil];\n    \n    \n    \n    [tNotificationCenter addObserver:self selector:@selector(displayedSectionsDidChange:) name:CUICrashLogPresentationDisplayedSectionsDidChangeNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(visibleSectionsDidChange:) name:CUICrashLogPresentationVisibleSectionsDidChangeNotification object:nil];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (void)setPresentationViewController:(CUICrashLogPresentationViewController *)inPresentationViewController\n{\n    if (_presentationViewController==inPresentationViewController)\n        return;\n    \n    _presentationViewController=inPresentationViewController;\n    \n    [self refreshSectionsMenu];\n    \n    [self updateLayout];\n}\n\n#pragma mark -\n\n- (void)refreshSourcesMenu\n{\n    NSString * tTitleFormatString=NSLocalizedString(@\"%@ - %@\", @\"\");\n    \n    [_sourcesPopUpButton removeAllItems];\n    \n    _sourcesPopUpButton.action=@selector(switchSourceCrashLog:);\n    _sourcesPopUpButton.target=self;\n    \n    [_sourcesManager.allSources enumerateObjectsUsingBlock:^(CUICrashLogsSource * bSource, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        switch(bSource.type)\n        {\n            case CUICrashLogsSourceTypeUnknown:\n                \n                return;\n                \n            case CUICrashLogsSourceTypeSeparator:\n            \n                [self->_sourcesPopUpButton.menu addItem:[NSMenuItem separatorItem]];\n                \n                return;\n                \n            default:\n                \n                break;\n        }\n        \n        NSMenuItem * tMenuItem=[[NSMenuItem alloc] initWithTitle:bSource.name action:nil keyEquivalent:@\"\"];\n        \n        NSImage * tImage=[NSImage imageWithSize:NSMakeSize(16.0,16.0)\n                                        flipped:NO\n                                 drawingHandler:^BOOL(NSRect dstRect) {\n                                     \n                                     [bSource.icon drawInRect:dstRect fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n                                     \n                                     return YES;\n                                 \n                                 }];\n        \n        tImage.template=YES;\n        \n        tMenuItem.image=tImage;\n        \n        if (bSource.type==CUICrashLogsSourceTypeFile)\n        {\n            tMenuItem.action=@selector(switchSourceCrashLog:);\n            tMenuItem.target=self;\n        }\n        else\n        {\n            NSMenu * tMenu=[[NSMenu alloc] initWithTitle:bSource.name];\n            \n            NSMutableArray * tMutableCrashLogs=[bSource.crashLogs mutableCopy];\n            \n            switch([CUIApplicationPreferences sharedPreferences].crashLogsSortType)\n            {\n                case CUICrashLogsSortDateDescending:\n                    \n                    [tMutableCrashLogs sortUsingSelector:@selector(compareDateReverse:)];\n                    \n                    break;\n                    \n                case CUICrashLogsSortProcessNameAscending:\n                    \n                    [tMutableCrashLogs sortUsingSelector:@selector(compareProcessName:)];\n                    \n                    break;\n            }\n            \n            for(CUIRawCrashLog * tCrashLog in tMutableCrashLogs)\n            {\n                NSString * tTitle=[NSString localizedStringWithFormat:tTitleFormatString,tCrashLog.processName,[self->_crashLogDateFormatter stringFromDate:tCrashLog.dateTime]];\n                \n                NSMenuItem * tSubMenuItem=[[NSMenuItem alloc] initWithTitle:tTitle action:@selector(switchSourceCrashLog:) keyEquivalent:@\"\"];\n                \n                NSImage * tImage=[NSImage imageWithSize:NSMakeSize(16.0,16.0)\n                                                flipped:NO\n                                         drawingHandler:^BOOL(NSRect dstRect) {\n                                             \n                                             NSImage * tProcessIcon=tCrashLog.processIcon;\n                                             \n                                             [tProcessIcon drawInRect:dstRect fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n                                             \n                                             return YES;\n                                             \n                                         }];\n                \n                tSubMenuItem.image=tImage;\n                \n                tSubMenuItem.target=self;\n                \n                tSubMenuItem.representedObject=tCrashLog;\n                \n                [tMenu addItem:tSubMenuItem];\n            }\n            \n            tMenuItem.submenu=tMenu;\n        }\n        \n        tMenuItem.representedObject=bSource;\n        \n        [self->_sourcesPopUpButton.menu addItem:tMenuItem];\n    }];\n}\n\n- (void)refreshCrashLogsMenu\n{\n    NSString * tTitleFormatString=NSLocalizedString(@\"%@ - %@\", @\"\");\n    \n    [_crashLogsPopUpButton removeAllItems];\n    \n    NSMutableArray * tMutableCrashLogs=[_sourcesSelection.crashLogs mutableCopy];\n    \n    switch([CUIApplicationPreferences sharedPreferences].crashLogsSortType)\n    {\n        case CUICrashLogsSortDateDescending:\n            \n            [tMutableCrashLogs sortUsingSelector:@selector(compareDateReverse:)];\n            \n            break;\n            \n        case CUICrashLogsSortProcessNameAscending:\n            \n            [tMutableCrashLogs sortUsingSelector:@selector(compareProcessName:)];\n            \n            break;\n    }\n    \n    \n    if (tMutableCrashLogs.count==0)\n    {\n        _sourcesChevronView.hidden=YES;\n        \n        _crashLogsPopUpButton.hidden=YES;\n        \n        _crashLogsChevronView.hidden=YES;\n        \n        _sectionsPopUpButton.hidden=YES;\n        \n        return;\n    }\n\n    NSMenu * tMenu=_crashLogsPopUpButton.menu;\n    \n    for(CUIRawCrashLog * tCrashLog in tMutableCrashLogs)\n    {\n        NSString * tTitle=[NSString localizedStringWithFormat:tTitleFormatString,tCrashLog.processName,[_crashLogDateFormatter stringFromDate:tCrashLog.dateTime]];\n        \n        NSMenuItem * tSubMenuItem=[[NSMenuItem alloc] initWithTitle:tTitle action:@selector(switchCrashLog:) keyEquivalent:@\"\"];\n        \n        NSImage * tImage=[NSImage imageWithSize:NSMakeSize(16.0,16.0)\n                                        flipped:NO\n                                 drawingHandler:^BOOL(NSRect dstRect) {\n                                     \n                                     NSImage * tProcessIcon=tCrashLog.processIcon;\n                                     \n                                     [tProcessIcon drawInRect:dstRect fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n                                     \n                                     return YES;\n                                     \n                                 }];\n        \n        tSubMenuItem.image=tImage;\n        \n        tSubMenuItem.target=self;\n        \n        tSubMenuItem.representedObject=tCrashLog;\n        \n        [tMenu addItem:tSubMenuItem];\n    }\n    \n    NSArray * tSelectedCrashLogs=_crashLogsSelection.crashLogs;\n    \n    if (tSelectedCrashLogs.count==0)\n    {\n        // A VOIR (Maybe add a - menu item)\n    }\n    else if (tSelectedCrashLogs.count!=1)\n    {\n        NSLog(@\"Multiple selection of crash logs is not supported\");\n    }\n    else\n    {\n        NSInteger tIndex=[tMenu indexOfItemWithRepresentedObject:tSelectedCrashLogs.firstObject];\n        \n        if (tIndex==-1)\n        {\n            NSLog(@\"Menu index not found for item: %@\",tSelectedCrashLogs.firstObject);\n        }\n        else\n        {\n            [_crashLogsPopUpButton selectItemAtIndex:tIndex];\n        }\n    }\n    \n    _sourcesChevronView.hidden=NO;\n    \n    _crashLogsPopUpButton.hidden=NO;\n}\n\n- (void)refreshSectionsMenu\n{\n    if (self.presentationViewController==nil)\n    {\n        _crashLogsChevronView.hidden=YES;\n        _sectionsPopUpButton.hidden=YES;\n        \n        return;\n    }\n    \n    CUICrashLogPresentationTextViewController * tPresentationTextViewController=(CUICrashLogPresentationTextViewController *)self.presentationViewController;\n    \n    if ([tPresentationTextViewController isKindOfClass:[CUICrashLogPresentationTextViewController class]]==NO)\n    {\n        _crashLogsChevronView.hidden=YES;\n        _sectionsPopUpButton.hidden=YES;\n        \n        return;\n    }\n    \n    CUIDocumentSections tDocumentSections=tPresentationTextViewController.displaySettings.visibleSections;\n    \n    [_sectionsPopUpButton removeAllItems];\n    \n    NSArray * tSelectedCrashLogs=_crashLogsSelection.crashLogs;\n    \n    if (tSelectedCrashLogs.count!=1)\n    {\n        NSLog(@\"Multiple selection of crash logs is not supported\");\n        \n        return;\n    }\n    \n    NSMenu * tMenu=_sectionsPopUpButton.menu;\n    \n    NSMenuItem * tMenuItem=nil;\n    \n    CUICrashLog * tCrashLog=tSelectedCrashLogs.firstObject;\n    \n    if ([tCrashLog isKindOfClass:[CUICrashLog class]]==NO)\n    {\n        _crashLogsChevronView.hidden=YES;\n        \n        _sectionsPopUpButton.hidden=YES;\n        \n        return;\n    }\n    \n    \n    NSArray * tArray=@[\n                       @{\n                           @\"title\":NSLocalizedString(@\"Header\",@\"\"),\n                           @\"available\":@(tCrashLog.isHeaderAvailable),\n                           @\"tag\":@\"section:Header\",\n                           @\"visible\":@(tDocumentSections&CUIDocumentHeaderSection),\n                           @\"icon\":@\"menuHeader\",\n                        },\n                       @{\n                           @\"title\":NSLocalizedString(@\"Exception Information\",@\"\"),\n                           @\"available\":@(tCrashLog.isExceptionInformationAvailable),\n                           @\"tag\":@\"section:Exception Information\",\n                           @\"visible\":@(tDocumentSections&CUIDocumentExceptionInformationSection),\n                           @\"icon\":@\"menuException\",\n                           },\n                       @{\n                           @\"title\":NSLocalizedString(@\"Diagnostic Messages\",@\"\"),\n                           @\"available\":@(tCrashLog.isDiagnosticMessageAvailable),\n                           @\"tag\":@\"section:Diagnostic Messages\",\n                           @\"visible\":@(tDocumentSections&CUIDocumentDiagnosticMessagesSection),\n                           @\"icon\":@\"menuDiagnostic\",\n                           },\n                       ];\n    \n    for(NSDictionary * tDictionary in tArray)\n    {\n        NSUInteger tVisibleFlag=[tDictionary[@\"visible\"] unsignedIntegerValue];\n        \n        if (tVisibleFlag==0)\n            continue;\n        \n        if ([tDictionary[@\"available\"] boolValue]==YES)\n        {\n            tMenuItem=[[NSMenuItem alloc] initWithTitle:tDictionary[@\"title\"] action:@selector(switchSection:) keyEquivalent:@\"\"];\n            \n            NSString * tIconName=tDictionary[@\"icon\"];\n            \n            if (tIconName==nil)\n                tIconName=@\"templateBlue\";\n            \n            tMenuItem.image=[NSImage imageNamed:tIconName];\n            \n            tMenuItem.target=self;\n            \n            \n            \n            tMenuItem.representedObject=tDictionary[@\"tag\"];\n            \n            [tMenu addItem:tMenuItem];\n        }\n    }\n    \n    CUICrashLogBacktraces * tBacktraces=tCrashLog.backtraces;\n    \n    if (tBacktraces.threads.count>0 && (tDocumentSections & CUIDocumentBacktracesSection)!=0)\n    {\n        // Separator\n        \n        tMenuItem=[NSMenuItem separatorItem];\n        \n        [tMenu addItem:tMenuItem];\n        \n        // Backtraces\n        \n        \n        \n        tMenuItem=[[NSMenuItem alloc] initWithTitle:@\"\" action:@selector(switchSection:) keyEquivalent:@\"\"];\n        \n        NSAttributedString * tAttributedString=[[NSAttributedString alloc] initWithString:NSLocalizedString(@\"Backtraces\",@\"\")\n                                                                               attributes:@{\n                                                                                            NSFontAttributeName:[NSFont boldSystemFontOfSize:10.0]\n                                                                                            }];\n        \n        tMenuItem.image=[NSImage imageNamed:@\"menuBacktraces\"];\n        \n        tMenuItem.attributedTitle=tAttributedString;\n        \n        tMenuItem.target=self;\n        \n        tMenuItem.representedObject=@\"section:Backtraces\";\n        \n        [tMenu addItem:tMenuItem];\n    \n\n\n        for(CUIThread * tThread in tBacktraces.threads)\n        {\n            NSString * tName=nil;\n            \n            if (tThread.isApplicationSpecificBacktrace==YES)\n            {\n                tName=tThread.name;\n            }\n            else\n            {\n                tName=[NSString stringWithFormat:@\"Thread %lu\",tThread.number];\n                \n                if (tThread.name!=nil)\n                    tName=[tName stringByAppendingFormat:@\" :: %@\",tThread.name];\n            }\n            \n            tMenuItem=[[NSMenuItem alloc] initWithTitle:tName action:@selector(switchSection:) keyEquivalent:@\"\"];\n            \n            tMenuItem.image=(tThread.isCrashed==YES) ? [NSImage imageNamed:@\"menuThreadCrashed\"] : [NSImage imageNamed:@\"menuThread\"];\n            \n            tMenuItem.indentationLevel=1;\n            \n            tMenuItem.target=self;\n            \n            tMenuItem.representedObject=(tThread.isApplicationSpecificBacktrace==YES) ? @\"thread:Application Specific Backtrace\" : [NSString stringWithFormat:@\"thread:%lu\",tThread.number];\n            \n            [tMenu addItem:tMenuItem];\n        }\n    \n        // Separator\n        \n        tMenuItem=[NSMenuItem separatorItem];\n        \n        [tMenu addItem:tMenuItem];\n    }\n\n    tArray=@[\n             @{\n                 @\"title\":NSLocalizedString(@\"Thread State\",@\"\"),\n                 @\"available\":@(tCrashLog.isThreadStateAvailable),\n                 @\"tag\":@\"section:Thread State\",\n                 @\"visible\":@(tDocumentSections&CUIDocumentThreadStateSection),\n                 @\"icon\":@\"menuThreadState\",\n                 },\n             @{\n                 @\"title\":NSLocalizedString(@\"Binary Images\",@\"\"),\n                 @\"available\":@(tCrashLog.isBinaryImagesAvailable),\n                 @\"tag\":@\"section:Binary Images\",\n                 @\"visible\":@(tDocumentSections&CUIDocumentBinaryImagesSection),\n                 @\"icon\":@\"menuBinaryImage\",\n                 }\n             ];\n    \n    for(NSDictionary * tDictionary in tArray)\n    {\n        NSUInteger tVisibleFlag=[tDictionary[@\"visible\"] unsignedIntegerValue];\n        \n        if (tVisibleFlag==0)\n            continue;\n        \n        if ([tDictionary[@\"available\"] boolValue]==YES)\n        {\n            tMenuItem=[[NSMenuItem alloc] initWithTitle:tDictionary[@\"title\"] action:@selector(switchSection:) keyEquivalent:@\"\"];\n            \n            NSString * tIconName=tDictionary[@\"icon\"];\n            \n            if (tIconName==nil)\n                tIconName=@\"templateBlue\";\n            \n            tMenuItem.image=[NSImage imageNamed:tIconName];\n            \n            tMenuItem.target=self;\n            \n            tMenuItem.representedObject=tDictionary[@\"tag\"];\n            \n            [tMenu addItem:tMenuItem];\n        }\n    }\n    \n    _crashLogsChevronView.hidden=NO;\n    \n    _sectionsPopUpButton.hidden=NO;\n}\n\n- (void)updateLayout\n{\n#define MIN_WIDTH   30.0\n    \n#define MARGIN  0.0\n\n#define BEGIN_PADDING   3.0\n\n#define END_PADDING   10.0\n    \n    NSRect tBounds=self.view.bounds;\n    \n    NSRect tRect=_sourcesPopUpButton.frame;\n    \n    tRect.size.width=[_sourcesPopUpButton sizeThatFits:tRect.size].width;\n    \n    if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n    {\n        tRect.size.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n    }\n    \n    NSMutableArray * tMutableArray=[NSMutableArray arrayWithObject:[NSValue valueWithRect:tRect]];\n    \n    if (_crashLogsPopUpButton.hidden==NO)\n    {\n        tRect=_crashLogsPopUpButton.frame;\n        \n        tRect.size.width=[_crashLogsPopUpButton sizeThatFits:tRect.size].width;\n        \n        if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n        {\n            tRect.size.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n        }\n        \n        [tMutableArray addObject:[NSValue valueWithRect:tRect]];\n    }\n    \n    if (_sectionsPopUpButton.hidden==NO)\n    {\n        tRect=_sectionsPopUpButton.frame;\n        \n        tRect.size.width=[_sectionsPopUpButton sizeThatFits:tRect.size].width;\n        \n        if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n        {\n            tRect.size.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n        }\n        \n        [tMutableArray addObject:[NSValue valueWithRect:tRect]];\n    }\n    \n    __block CGFloat tTotalWidth=0.0;\n    \n    [tMutableArray enumerateObjectsUsingBlock:^(NSValue * bValue, NSUInteger bIndex, BOOL * outStop) {\n       \n        NSRect tRect=[bValue rectValue];\n        \n        tTotalWidth+=NSWidth(tRect);\n        \n    }];\n    \n    NSRect tChevronFrame=_sourcesChevronView.frame;\n    \n    \n    tTotalWidth+=BEGIN_PADDING+(tMutableArray.count-1)*(NSWidth(tChevronFrame)+2.0*MARGIN)+END_PADDING;\n    \n    CGFloat tDifference=tTotalWidth-NSWidth(tBounds);\n    \n    if (tDifference<0)\n        tDifference=0;\n    \n    NSUInteger tPopupsCount=tMutableArray.count;\n    \n    tRect=_sourcesPopUpButton.frame;\n    \n    NSSize tSize=[_sourcesPopUpButton sizeThatFits:tRect.size];\n    \n    if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n    {\n        tSize.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n    }\n    \n    if (tPopupsCount==1)\n    {\n        // Only the sources popup button is displayed so resize it to fit the parent view width\n        \n        if (tDifference>0)\n        {\n            tSize.width=NSMaxX(tBounds)-NSMinX(tRect);\n        }\n        \n        tRect.size.width=tSize.width;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft)\n        {\n            tRect.origin.x=NSMaxX(tBounds)-NSWidth(tRect)-BEGIN_PADDING;\n        }\n        \n        _sourcesPopUpButton.frame=tRect;\n        \n        return;\n    }\n    \n    if (tPopupsCount==2)\n    {\n        // Only the sources and the crashlogs popup buttons are displayed\n        \n        if (tDifference>0.0)\n        {\n            if (tDifference>(tSize.width-MIN_WIDTH))\n            {\n                tDifference-=(tSize.width-MIN_WIDTH);\n                \n                tSize.width=MIN_WIDTH;\n            }\n            else\n            {\n                tSize.width-=tDifference;\n                \n                tDifference=0.0;\n            }\n        }\n        \n        tRect.size.width=tSize.width;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft)\n        {\n            tRect.origin.x=NSMaxX(tBounds)-NSWidth(tRect)-BEGIN_PADDING;\n        }\n        \n        _sourcesPopUpButton.frame=tRect;\n        \n        \n        NSRect tFrame=_sourcesChevronView.frame;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            tFrame.origin.x=NSMaxX(tRect)+MARGIN;\n        }\n        else\n        {\n            tFrame.origin.x=NSMinX(tRect)-MARGIN-NSWidth(tFrame);\n        }\n        \n        _sourcesChevronView.frame=tFrame;\n        \n        \n        tRect=_crashLogsPopUpButton.frame;\n        \n        tSize=[_crashLogsPopUpButton sizeThatFits:tRect.size];\n        \n        if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n        {\n            tSize.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n        }\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            tRect.origin.x=NSMaxX(_sourcesChevronView.frame)+MARGIN;\n            \n            if (tDifference>0.0)\n            {\n                tSize.width=NSMaxX(tBounds)-NSMinX(tRect);\n            }\n        }\n        else\n        {\n            tRect.origin.x=NSMinX(_sourcesChevronView.frame)-MARGIN-tSize.width;\n            \n            if (tDifference>0.0)\n            {\n                tSize.width=NSMaxX(tRect)-NSMinX(tBounds);\n                \n                tRect.origin.x=NSMinX(tBounds);\n            }\n        }\n        \n        tRect.size.width=tSize.width;\n        \n        _crashLogsPopUpButton.frame=tRect;\n        \n        return;\n    }\n    \n    if (tPopupsCount==3)\n    {\n        if (tDifference>0.0)\n        {\n            if (tDifference>(tSize.width-MIN_WIDTH))\n            {\n                tDifference-=(tSize.width-MIN_WIDTH);\n                \n                tSize.width=MIN_WIDTH;\n            }\n            else\n            {\n                tSize.width-=tDifference;\n                \n                tDifference=0.0;\n            }\n        }\n        \n        tRect.size.width=tSize.width;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft)\n        {\n            tRect.origin.x=NSMaxX(tBounds)-NSWidth(tRect)-BEGIN_PADDING;\n        }\n        \n        _sourcesPopUpButton.frame=tRect;\n        \n        \n        NSRect tFrame=_sourcesChevronView.frame;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            tFrame.origin.x=NSMaxX(tRect)+MARGIN;\n        }\n        else\n        {\n            tFrame.origin.x=NSMinX(tRect)-MARGIN-NSWidth(tFrame);\n        }\n        \n        _sourcesChevronView.frame=tFrame;\n        \n        \n        tRect=_crashLogsPopUpButton.frame;\n        \n        tRect.origin.x=NSMaxX(_sourcesChevronView.frame)+MARGIN;\n        \n        tSize=[_crashLogsPopUpButton sizeThatFits:tRect.size];\n        \n        if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n        {\n            tSize.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n        }\n        \n        if (tDifference>(tSize.width-MIN_WIDTH))\n        {\n            tDifference-=(tSize.width-MIN_WIDTH);\n            \n            tSize.width=MIN_WIDTH;\n        }\n        else\n        {\n            tSize.width-=tDifference;\n            \n            tDifference=0.0;\n        }\n        \n        tRect.size.width=tSize.width;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            tRect.origin.x=NSMaxX(_sourcesChevronView.frame)+MARGIN;\n        }\n        else\n        {\n            tRect.origin.x=NSMinX(_sourcesChevronView.frame)-MARGIN-tSize.width;\n        }\n        \n        _crashLogsPopUpButton.frame=tRect;\n        \n        \n        tFrame=_crashLogsChevronView.frame;\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            tFrame.origin.x=NSMaxX(tRect)+MARGIN;\n        }\n        else\n        {\n            tFrame.origin.x=NSMinX(tRect)-MARGIN-NSWidth(tFrame);\n        }\n        \n        _crashLogsChevronView.frame=tFrame;\n        \n        \n        tRect=_sectionsPopUpButton.frame;\n        \n        tSize=[_sectionsPopUpButton sizeThatFits:tRect.size];\n        \n        if (NSAppKitVersionNumber>GROSSE_CHIURE_APPKIT_VERSION_NUMBER)\n        {\n            tSize.width+=GROSSE_CHIURE_EXTRA_WIDTH;\n        }\n        \n        if (tDifference>0.0)\n        {\n            tSize.width=NSMaxX(tBounds)-NSMinX(tRect);\n        }\n        \n        if (self.view.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight)\n        {\n            tRect.origin.x=NSMaxX(_crashLogsChevronView.frame)+MARGIN;\n        }\n        else\n        {\n            tRect.origin.x=NSMinX(_crashLogsChevronView.frame)-MARGIN-tSize.width;\n        }\n        \n        tRect.size.width=tSize.width;\n        \n        _sectionsPopUpButton.frame=tRect;\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)menuItem\n{\n    return YES;\n}\n\n- (IBAction)switchSourceCrashLog:(NSMenuItem *)sender\n{\n    id tRepresentedObject=sender.representedObject;\n    \n    if ([tRepresentedObject isKindOfClass:[CUICrashLogsSource class]]==YES)\n    {\n        CUICrashLogsSource * tSource=(CUICrashLogsSource *)tRepresentedObject;\n        \n        if (tSource.type!=CUICrashLogsSourceTypeFile)\n        {\n            return;\n        }\n        \n        if ([_sourcesSelection.sources containsObject:tSource]==NO)\n        {\n            _sourcesSelection.sources=[NSSet setWithObject:tSource];\n        }\n        \n        [_crashLogsSelection setSource:tSource crashLogs:@[tSource.crashLogs.firstObject]];\n        \n        [self updateLayout];\n        \n        return;\n    }\n    \n    if ([tRepresentedObject isKindOfClass:[CUIRawCrashLog class]]==NO)\n    {\n        NSLog(@\"switchCrashLog: Represented object for the menu item is not a crash log object\");\n        \n        return;\n    }\n    \n    id tCrashLog=tRepresentedObject;\n        \n    NSMenuItem * tParentMenuItem=sender.parentItem;\n    \n    id tParentRepresentedItem=tParentMenuItem.representedObject;\n    \n    if ([tParentRepresentedItem isKindOfClass:[CUICrashLogsSource class]]==NO)\n    {\n        return;\n    }\n    \n    CUICrashLogsSource * tSource=(CUICrashLogsSource *)tParentRepresentedItem;\n    \n    if ([_sourcesSelection.sources containsObject:tSource]==NO)\n    {\n        _sourcesSelection.sources=[NSSet setWithObject:tSource];\n    }\n    \n    [_crashLogsSelection setSource:tSource crashLogs:@[tCrashLog]];\n    \n    [self updateLayout];\n}\n\n- (IBAction)switchCrashLog:(NSMenuItem *)sender\n{\n    id tRepresentedObject=sender.representedObject;\n    \n    if ([tRepresentedObject isKindOfClass:[CUIRawCrashLog class]]==NO)\n    {\n        NSLog(@\"switchCrashLog: Represented object for the menu item is not a crash log object\");\n        \n        return;\n    }\n    \n    [_crashLogsSelection setSource:_crashLogsSelection.source crashLogs:@[tRepresentedObject]];\n    \n    [self updateLayout];\n}\n\n- (IBAction)switchSection:(NSMenuItem *)sender\n{\n    id tRepresentedObject=sender.representedObject;\n    \n    if ([tRepresentedObject isKindOfClass:[NSString class]]==NO)\n    {\n        NSLog(@\"switchSection: Represented object for the menu item is not a NSString\");\n        \n        return;\n    }\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:@\"jumpToSectionNotification\" object:tRepresentedObject userInfo:@{}];\n    \n    [self updateLayout];\n}\n\n#pragma mark - Notifications\n\n- (void)viewFrameDidChange:(NSNotification *)inNotification\n{\n    [self updateLayout];\n}\n\n- (void)sourcesManagerSourcesDidChange:(NSNotification *)inNotification\n{\n    [self refreshSourcesMenu];\n}\n\n- (void)sourceDidUpdateSource:(NSNotification *)inNotification\n{\n    // A COMPLETER\n}\n\n- (void)sourcesSelectionDidChange:(NSNotification *)inNotification\n{\n    NSSet * tSet=_sourcesSelection.sources;\n    \n    CUICrashLogsSource * tCrashLogsSource=[tSet anyObject];\n    \n    if (tCrashLogsSource==nil)\n        return;\n    \n    switch(tCrashLogsSource.type)\n    {\n        case CUICrashLogsSourceTypeUnknown:\n        case CUICrashLogsSourceTypeSeparator:\n            \n            return;\n            \n        default:\n            \n            break;\n    }\n    \n    // Select the appropriate menu item\n    \n    NSInteger tIndex=[_sourcesPopUpButton.menu indexOfItemWithRepresentedObject:tCrashLogsSource];\n    \n    if (tIndex==-1)\n    {\n        NSLog(@\"Menu index not found for source %@\",tCrashLogsSource);\n        \n        return;\n    }\n    \n    [_sourcesPopUpButton selectItemAtIndex:tIndex];\n    \n    // Refresh the CrashLogs menu if needed\n    \n    [self refreshCrashLogsMenu];\n    \n    [self updateLayout];\n}\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification\n{\n    // Refresh Selection\n    \n    NSMenu * tMenu=_crashLogsPopUpButton.menu;\n    \n    NSArray * tSelectedCrashLogs=_crashLogsSelection.crashLogs;\n    \n    if (tSelectedCrashLogs.count!=1)\n    {\n        if (tSelectedCrashLogs.count>0)\n            NSLog(@\"Multiple selection of crash logs is not supported\");\n    }\n    else\n    {\n        NSInteger tIndex=[tMenu indexOfItemWithRepresentedObject:tSelectedCrashLogs.firstObject];\n        \n        if (tIndex==-1)\n        {\n            // This can happen if we actually did change the source and then log selection automatically changed\n            \n            return;\n        }\n        else\n        {\n            [_crashLogsPopUpButton selectItemAtIndex:tIndex];\n            \n            [self refreshSectionsMenu];\n        }\n    }\n    \n    [self updateLayout];\n}\n\n- (void)crashLogsSortTypeDidChange:(NSNotification *)inNotification\n{\n    [self refreshCrashLogsMenu];\n}\n\n\n- (void)presentationModeDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogContentsViewController * tContentsViewController=inNotification.object;\n    \n    self.presentationViewController=tContentsViewController.presentationViewController;\n}\n\n\n- (void)displayedSectionsDidChange:(NSNotification *)inNotification\n{\n    [self refreshSectionsMenu];\n        \n    [self updateLayout];\n}\n\n- (void)visibleSectionsDidChange:(NSNotification *)inNotification\n{\n    NSArray * tVisibleSections=inNotification.object;\n    \n    NSInteger tIndex=[_sectionsPopUpButton indexOfItemWithRepresentedObject:tVisibleSections.firstObject];\n    \n    if (tIndex==-1)\n        return;\n    \n    [_sectionsPopUpButton selectItemAtIndex:tIndex];\n    \n    [self updateLayout];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIPresentationTextNavigationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPresentationTextNavigationViewController\">\n            <connections>\n                <outlet property=\"_crashLogsChevronView\" destination=\"kHF-1f-fxH\" id=\"QVQ-PN-nFU\"/>\n                <outlet property=\"_crashLogsPopUpButton\" destination=\"75E-lV-XXs\" id=\"cLI-rv-qen\"/>\n                <outlet property=\"_sectionsPopUpButton\" destination=\"MWA-bF-3yf\" id=\"P7o-kw-2mQ\"/>\n                <outlet property=\"_sourcesChevronView\" destination=\"tL8-D0-cSF\" id=\"wnV-ed-k7g\"/>\n                <outlet property=\"_sourcesPopUpButton\" destination=\"uUQ-QP-ysl\" id=\"d3w-3A-aJn\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"781\" height=\"26\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <popUpButton id=\"uUQ-QP-ysl\">\n                    <rect key=\"frame\" x=\"3\" y=\"4\" width=\"149\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"Item 1\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"noArrow\" altersStateOfSelectedItem=\"NO\" selectedItem=\"7ez-gA-lWd\" id=\"YVM-Pa-UQb\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <menu key=\"menu\" id=\"HZx-G6-NCk\">\n                            <items>\n                                <menuItem title=\"Item 1\" id=\"7ez-gA-lWd\"/>\n                                <menuItem title=\"Item 2\" id=\"Esv-PL-GRD\"/>\n                                <menuItem title=\"Item 3\" id=\"eBq-oU-aGy\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchSourceCrashLog:\" target=\"-2\" id=\"7NE-0f-o5c\"/>\n                    </connections>\n                </popUpButton>\n                <popUpButton id=\"75E-lV-XXs\">\n                    <rect key=\"frame\" x=\"187\" y=\"4\" width=\"149\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"Item 1\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"noArrow\" altersStateOfSelectedItem=\"NO\" selectedItem=\"OSw-VA-GIL\" id=\"0rx-7Z-eY5\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <menu key=\"menu\" id=\"CtZ-wl-2JL\">\n                            <items>\n                                <menuItem title=\"Item 1\" id=\"OSw-VA-GIL\"/>\n                                <menuItem title=\"Item 2\" id=\"6gM-kT-etl\"/>\n                                <menuItem title=\"Item 3\" id=\"kdH-Fd-XUf\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchCrashLog:\" target=\"-2\" id=\"pbU-Zd-yti\"/>\n                    </connections>\n                </popUpButton>\n                <popUpButton id=\"MWA-bF-3yf\">\n                    <rect key=\"frame\" x=\"371\" y=\"4\" width=\"149\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"Item 1\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"noArrow\" altersStateOfSelectedItem=\"NO\" selectedItem=\"1nd-cT-Ox6\" id=\"Lov-L8-qry\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <menu key=\"menu\" id=\"Ose-3h-odp\">\n                            <items>\n                                <menuItem title=\"Item 1\" id=\"1nd-cT-Ox6\"/>\n                                <menuItem title=\"Item 2\" id=\"YaV-vo-lbz\"/>\n                                <menuItem title=\"Item 3\" id=\"hOq-65-Yok\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchSection:\" target=\"-2\" id=\"xfm-zC-I48\"/>\n                    </connections>\n                </popUpButton>\n                <customView id=\"tL8-D0-cSF\" customClass=\"CUINavigationChevronView\">\n                    <rect key=\"frame\" x=\"162\" y=\"6\" width=\"15\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </customView>\n                <customView id=\"kHF-1f-fxH\" customClass=\"CUINavigationChevronView\">\n                    <rect key=\"frame\" x=\"346\" y=\"6\" width=\"15\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"116.5\" y=\"-299\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIQuickHelpPopUpViewController.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@class CUIQuickHelpPopUpViewController;\n\n@protocol CUIQuickHelpPopUpViewControllerDelegate\n\n- (void)quickHelpPopUpViewController:(CUIQuickHelpPopUpViewController *)inController didComputeSizeOfPopover:(NSPopover *)inPopover;\n\n@end\n\n@interface CUIQuickHelpPopUpViewController : NSViewController\n\n    @property NSPopover * popover;\n\n    @property (weak) id<CUIQuickHelpPopUpViewControllerDelegate> delegate;\n\n    @property NSRange textRange;\n\n    @property (nonatomic) NSURL * contentsFileURL;\n\n    @property (readonly) NSBundle * bundle;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIQuickHelpPopUpViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIQuickHelpPopUpViewController.h\"\n\n#import <WebKit/WebKit.h>\n\n@interface CUINoScrollingWebView : WKWebView\n\n@end\n\n@implementation CUINoScrollingWebView\n\n- (void)scrollWheel:(NSEvent *)inEvent\n{\n    [self.nextResponder scrollWheel:inEvent];\n}\n\n@end\n\n@interface CUIQuickHelpPopUpViewController () <WKNavigationDelegate>/*<WebFrameLoadDelegate,WebPolicyDelegate>*/\n{\n    IBOutlet CUINoScrollingWebView * _webView;\n}\n\n@property (readwrite) NSBundle * bundle;\n\n@end\n\n@implementation CUIQuickHelpPopUpViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _bundle=[NSBundle mainBundle];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _webView.navigationDelegate=self;\n    \n    [_webView setValue:@(NO) forKey:@\"drawsBackground\"];\n    \n    NSError * tError=nil;\n    \n    NSString * tHTMLContents=[NSString stringWithContentsOfURL:_contentsFileURL encoding:NSUTF8StringEncoding error:&tError];\n    \n    if (tHTMLContents==nil)\n    {\n        NSLog(@\"HTML data could not be loaded from file \\\"%@\\\".\",_contentsFileURL);\n        \n        return;\n    }\n    \n    [_webView loadHTMLString:tHTMLContents baseURL:_bundle.resourceURL];\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIQuickHelpPopUpViewController\";\n}\n\n#pragma mark -\n\n- (void)webView:(WKWebView *)inWebView decidePolicyForNavigationAction:(WKNavigationAction *)inNavigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler\n{\n    if (inNavigationAction.navigationType==WKNavigationTypeLinkActivated)\n    {\n        decisionHandler(WKNavigationActionPolicyCancel);\n        \n        [[NSWorkspace sharedWorkspace] openURL:inNavigationAction.request.URL];\n    }\n    else\n    {\n        decisionHandler(WKNavigationActionPolicyAllow);\n    }\n}\n\n- (void)webView:(WKWebView *)inWebView didFinishNavigation:(WKNavigation *)inNavigation\n{\n    if (self.popover==nil)\n        return;\n    \n    __block NSSize tCurrentSize=self.popover.contentSize;\n    \n    [_webView evaluateJavaScript:@\"document.body.scrollHeight;\" completionHandler:^(NSString * bResult, NSError * bError) {\n        \n        tCurrentSize.height=[bResult integerValue];\n        \n        dispatch_async(dispatch_get_main_queue(), ^{\n            \n            self.popover.contentSize=tCurrentSize;\n            \n            [self.delegate quickHelpPopUpViewController:self didComputeSizeOfPopover:self.popover];\n        });\n    }];\n}\n\n#pragma mark -\n\n- (void)setContentsFileURL:(NSURL *)inURL\n{\n    _contentsFileURL=inURL;\n    \n    if (_webView==nil)\n        return;\n    \n    NSError * tError=nil;\n    \n    NSString * tHTMLContents=[NSString stringWithContentsOfURL:_contentsFileURL encoding:NSUTF8StringEncoding error:&tError];\n    \n    if (tHTMLContents==nil)\n    {\n        NSLog(@\"Missing HTML document at %@\",_contentsFileURL.path);\n        \n        // A COMPLETER (Provide a basic HTML error report to display)\n        \n        return;\n    }\n    \n    [_webView loadHTMLString:tHTMLContents baseURL:_bundle.resourceURL];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIQuickHelpPopUpViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <plugIn identifier=\"com.apple.WebKit2IBPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIQuickHelpPopUpViewController\">\n            <connections>\n                <outlet property=\"_webView\" destination=\"Xdw-xp-fLZ\" id=\"AcE-F5-gZq\"/>\n                <outlet property=\"view\" destination=\"6TD-Ve-QYt\" id=\"Vtr-Lw-Jy7\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"6TD-Ve-QYt\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"430\" height=\"163\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <wkWebView wantsLayer=\"YES\" allowsLinkPreview=\"NO\" id=\"Xdw-xp-fLZ\" customClass=\"CUINoScrollingWebView\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"430\" height=\"163\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <wkWebViewConfiguration key=\"configuration\">\n                        <audiovisualMediaTypes key=\"mediaTypesRequiringUserActionForPlayback\" none=\"YES\"/>\n                        <wkPreferences key=\"preferences\"/>\n                    </wkWebViewConfiguration>\n                </wkWebView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-19\" y=\"-166.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRawCrashLog+Path.h",
    "content": "//\n//  CUIRawCrashLog+Path.h\n//  Unexpectedly\n//\n//  Created by stephane on 13/03/2021.\n//  Copyright © 2021 Acme, Inc. All rights reserved.\n//\n\n#import \"CUIRawCrashLog.h\"\n\n@interface CUIRawCrashLog (Path)\n\n- (NSString *)stringByResolvingUSERInPath:(NSString *)inPath;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRawCrashLog+Path.m",
    "content": "//\n//  CUIRawCrashLog+Path.m\n//  Unexpectedly\n//\n//  Created by stephane on 13/03/2021.\n//  Copyright © 2021 Acme, Inc. All rights reserved.\n//\n\n#import \"CUIRawCrashLog+Path.h\"\n\nNSString * const CUIUSERHomeFolderPath=@\"/Users/USER/\";\n\n@implementation CUIRawCrashLog (Path)\n\n- (NSString *)stringByResolvingUSERInPath:(NSString *)inPath\n{\n    if (self.USERPathComponent==nil)\n        return inPath;\n    \n    if ([inPath hasPrefix:CUIUSERHomeFolderPath]==NO)\n        return inPath;\n    \n    return [NSString stringWithFormat:@\"/Users/%@/%@\",self.USERPathComponent,[inPath substringFromIndex:CUIUSERHomeFolderPath.length]];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRawCrashLog+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRawCrashLog.h\"\n\n@interface CUIRawCrashLog (UI)\n\n- (NSImage *)processIcon;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRawCrashLog+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRawCrashLog+UI.h\"\n\n@implementation CUIRawCrashLog (UI)\n\n- (NSImage *)processIcon\n{\n    static NSImage * sExecutableBinaryIcon=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sExecutableBinaryIcon=[[NSImage alloc] initWithContentsOfFile:@\"/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources/ExecutableBinaryIcon.icns\"];\n        \n    });\n    \n    return sExecutableBinaryIcon;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRawCrashLog.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICrashLogErrors.h\"\n\n#import \"IPSReport.h\"\n\ntypedef NS_ENUM(NSUInteger, CUICrashLogReportSourceType)\n{\n    CUICrashLogReportSourceTypeSystem=0,\n    CUICrashLogReportSourceTypeUser,\n    CUICrashLogReportSourceTypeOther\n};\n\n@interface CUIRawCrashLog : NSObject\n\n    @property (readonly) id resourceIdentifier;\n\n    @property (readonly) IPSReport * ipsReport;     // Can be nil\n\n    @property (readonly,copy) NSString * rawText;   // Can be nil\n\n    @property (readonly,copy) NSString * crashLogFilePath;\n\n    @property (nonatomic,readonly) CUICrashLogReportSourceType reportSourceType;\n\n    @property (nonatomic,readonly) BOOL isFullyParsed;\n\n\n    @property (nonatomic,readonly,getter=isHeaderAvailable) BOOL headerAvailable;\n\n    @property (nonatomic,readonly,getter=isExceptionInformationAvailable) BOOL exceptionInformationAvailable;\n\n    @property (nonatomic,readonly,getter=isDiagnosticMessageAvailable) BOOL diagnosticMessageAvailable;\n\n    @property (nonatomic,readonly,getter=isBacktracesAvailable) BOOL backtracesAvailable;\n\n    @property (nonatomic,readonly,getter=isThreadStateAvailable) BOOL threadStateAvailable;\n\n    @property (nonatomic,readonly,getter=isBinaryImagesAvailable) BOOL binaryImagesAvailable;\n\n\n\n    @property (nonatomic,readonly,copy) NSString * processName;\n\n    @property (nonatomic,readonly) NSDate * dateTime;\n\n\n    @property (nonatomic,readonly) NSUInteger reportVersion;\n\n    @property (nonatomic,readonly) NSNumber * numberOfHoursSinceCrash;\n\n    // Extended Attributes\n\n    @property (readonly,copy) NSString * reopenFilePath;\n\n    @property (readonly,copy) NSString * USERPathComponent;\n\n\n- (instancetype)initWithContentsOfURL:(NSURL *)inURL error:(NSError **)outError;\n\n- (instancetype)initWithContentsOfFile:(NSString *)inPath error:(NSError **)outError;\n\n- (instancetype)initWithData:(NSData *)inData error:(NSError **)outError;\n\n- (instancetype)initWithString:(NSString *)inString error:(NSError **)outError;\n\n- (BOOL)finalizeParsing;\n\n\n@property (nonatomic,readonly,copy) NSString * crashLogFileName;\n\n\n- (NSComparisonResult)compareCrashLogFileName:(CUIRawCrashLog *)otherCrashLog;\n\n- (NSComparisonResult)compareProcessName:(CUIRawCrashLog *)otherCrashLog;\n\n- (NSComparisonResult)compareDateReverse:(CUIRawCrashLog *)otherCrashLog;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRawCrashLog.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRawCrashLog.h\"\n\n#import \"CUICrashLogSectionsDetector.h\"\n\n#import \"CUICrashLogHeader.h\"\n\n#import \"NSFileManager+ExtendedAttributes.h\"\n\n@interface CUIRawCrashLog ()\n{\n    BOOL _isLastHopeParseDone;\n    \n    id _reserved1;  // processName\n    id _reserved2;  // dateTime\n    id _reserved3;  // header.bundleIdentifier\n    id _reserved4;  // header.executablePath\n    id _reserved5;  // header.executableVersion\n    id _reserved6;  // header.operatingSystemVersion.stringValue\n}\n\n    @property (copy) NSString * crashLogFilePath;\n\n    @property (copy) NSString * rawText;\n\n    // Extended Attributes\n\n    @property (copy) NSString * reopenFilePath;\n\n\n- (instancetype)initWithString:(NSString *)inString error:(NSError **)outError;\n\n@end\n\n@implementation CUIRawCrashLog\n\n- (instancetype)initWithContentsOfURL:(NSURL *)inURL error:(NSError **)outError\n{\n    if ([inURL isKindOfClass:NSURL.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    NSError * tError=nil;\n    \n    NSData * tData=[NSData dataWithContentsOfURL:inURL options:0 error:&tError];\n    \n    if (tData==nil)\n    {\n        if (outError!=NULL)\n            *outError=tError;\n        \n        return nil;\n    }\n    \n    self=[self initWithData:tData error:outError];\n    \n    if (self!=nil)\n    {\n        id tResourceIdentifier=nil;\n        \n        if ([inURL getResourceValue:&tResourceIdentifier forKey:NSURLFileResourceIdentifierKey error:NULL]==YES)\n        {\n            _resourceIdentifier=tResourceIdentifier;\n        }\n        \n        _crashLogFilePath=[inURL.path copy];\n        \n        \n        NSDictionary * tExtendedAttributes=[[NSFileManager defaultManager] WB_extendedAttributesOfItemAtURL:inURL error:nil];\n        \n        NSData * tData=tExtendedAttributes[@\"ReopenPath\"];\n        \n        if (tData!=nil)\n        {\n            _reopenFilePath=[[NSString alloc] initWithData:tData encoding:NSUTF8StringEncoding];\n            \n            if ([_reopenFilePath hasPrefix:@\"/Users/\"]==YES)\n            {\n                NSArray * tComponents=[_reopenFilePath componentsSeparatedByString:@\"/\"];\n                \n                if (tComponents.count>2)\n                    _USERPathComponent=[tComponents[2] copy];\n            }\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithContentsOfFile:(NSString *)inPath error:(NSError **)outError\n{\n    if ([inPath isKindOfClass:NSString.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    return [self initWithContentsOfURL:[NSURL fileURLWithPath:inPath] error:outError];\n}\n\n- (instancetype)initWithData:(NSData *)inData error:(NSError **)outError\n{\n    if ([inData isKindOfClass:NSData.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    NSString * tString=[[NSString alloc] initWithData:inData encoding:NSUTF8StringEncoding];\n    \n    if (tString==nil)\n        tString=[[NSString alloc] initWithData:inData encoding:NSASCIIStringEncoding];\n    \n    if (tString==nil)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:ENOMEM userInfo:@{}];\n        \n        return nil;\n    }\n    \n    return [self initWithString:tString error:outError];\n}\n\n- (instancetype)initWithString:(NSString *)inString error:(NSError **)outError\n{\n    if ([inString isKindOfClass:NSString.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    if ([inString hasPrefix:@\"Process:\"]==YES)\n    {\n        self=[super init];\n        \n        if (self!=nil)\n        {\n            _rawText=[inString copy];\n            \n            _resourceIdentifier=[NSUUID UUID];\n        }\n    }\n    else if ([inString hasPrefix:@\"{\"]==YES)\n    {\n        self=[super init];\n        \n        if (self!=nil)\n        {\n            NSError * tError=nil;\n            \n            _ipsReport=[[IPSReport alloc] initWithString:inString error:&tError];\n            \n            if (_ipsReport==nil)\n            {\n                if (outError!=NULL)\n                    *outError=tError;\n                \n                return nil;\n            }\n            \n            _rawText=nil;\n            \n            _resourceIdentifier=[NSUUID UUID];\n        }\n    }\n    else\n    {\n        if (outError!=NULL)\n        {\n            if (inString.length==0)\n            {\n                *outError=[NSError errorWithDomain:CUICrashLogDomain code:CUICrashLogEmptyFileError userInfo:@{}];\n            }\n            else\n            {\n                *outError=[NSError errorWithDomain:CUICrashLogDomain code:CUICrashLogInvalidFormatFileError userInfo:@{}];\n            }\n        }\n        \n        return nil;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (BOOL)isHeaderAvailable\n{\n    return (self.ipsReport.incident.header!=nil);\n}\n\n- (BOOL)isExceptionInformationAvailable\n{\n    return (self.ipsReport.incident.exceptionInformation!=nil);\n}\n\n- (BOOL)isDiagnosticMessageAvailable\n{\n    return (self.ipsReport.incident.diagnosticMessage!=nil);\n}\n\n- (BOOL)isBacktracesAvailable\n{\n    return (self.ipsReport.incident.threads!=nil);\n}\n\n- (BOOL)isThreadStateAvailable\n{\n    NSUInteger tFaultingThreadIndex=self.ipsReport.incident.exceptionInformation.faultingThread;\n    \n    NSArray<IPSThread *> * tThreadsArray=self.ipsReport.incident.threads;\n    \n    if (tFaultingThreadIndex>=tThreadsArray.count)\n        return NO;\n    \n    IPSThread * tThread=tThreadsArray[tFaultingThreadIndex];\n    \n    return (tThread.threadState!=nil);\n}\n\n- (BOOL)isBinaryImagesAvailable\n{\n    return (self.ipsReport.incident.binaryImages!=nil);\n}\n\n- (id)valueForUndefinedKey:(NSString *)inKey\n{\n    NSLog(@\"Undefined key '%@'\",inKey);\n    \n    return @\"\";\n}\n\n- (id)valueForKeyPath:(NSString *)inKeyPath\n{\n    if ([inKeyPath isEqualToString:@\"header.bundleIdentifier\"]==YES)\n        return (_reserved3==nil) ? @\"\" : _reserved3;\n    \n    if ([inKeyPath isEqualToString:@\"header.executablePath\"]==YES)\n        return (_reserved4==nil) ? @\"\" : _reserved4;\n    \n    if ([inKeyPath isEqualToString:@\"header.executableVersion\"]==YES)\n        return (_reserved5==nil) ? @\"\" : _reserved5;\n    \n    if ([inKeyPath isEqualToString:@\"header.operatingSystemVersion.stringValue\"]==YES)\n        return (_reserved6==nil) ? @\"\" : _reserved6;\n    \n    if ([inKeyPath isEqualToString:@\"exceptionInformation.crashedThreadName\"]==YES)\n        return @\"\";\n    \n    id tValue=nil;\n    \n    @try\n    {\n        tValue=[super valueForKeyPath:inKeyPath];\n    }\n    \n    @catch(NSException * bException)\n    {\n        tValue=@\"\";\n    }\n    \n    return tValue;\n}\n\n- (NSString *)processName\n{\n    if (_isLastHopeParseDone==NO)\n        [self finalizeParsing];\n    \n    return (_reserved1!=nil) ? _reserved1 : @\"\";\n}\n\n- (NSDate *)dateTime\n{\n    if (_isLastHopeParseDone==NO)\n        [self finalizeParsing];\n    \n    return (_reserved2!=nil) ? _reserved2 : nil;\n}\n\n- (NSUInteger)reportVersion\n{\n    return NSNotFound;\n}\n\n- (NSNumber *)numberOfHoursSinceCrash\n{\n    if (_reserved2==nil)\n        return @(NSUIntegerMax);\n    \n    NSDate * tDate=[NSDate date];\n    \n    NSTimeInterval tTimeInterval=[tDate timeIntervalSinceDate:_reserved2];\n    \n    NSInteger tNumberOfHours=round(tTimeInterval/3600);\n    \n    return @(tNumberOfHours);\n}\n\n- (CUICrashLogReportSourceType)reportSourceType\n{\n    static NSString * sSystemReportsDirectoryPath=nil;\n    static NSString * sSystemUsersDirectoryPath=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        NSArray * tArray=NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSLocalDomainMask, YES);\n        \n        sSystemReportsDirectoryPath=[tArray.firstObject stringByAppendingPathComponent:@\"Logs/DiagnosticReports\"];\n        \n        tArray=NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);\n        \n        sSystemUsersDirectoryPath=[tArray.firstObject stringByAppendingPathComponent:@\"Logs/DiagnosticReports\"];\n        \n    });\n    \n    NSString * tParentDirectory=[self.crashLogFilePath stringByDeletingLastPathComponent];\n    \n    if ([sSystemReportsDirectoryPath isEqualToString:tParentDirectory]==YES)\n        return CUICrashLogReportSourceTypeSystem;\n    \n    if ([sSystemUsersDirectoryPath isEqualToString:tParentDirectory]==YES)\n        return CUICrashLogReportSourceTypeUser;\n    \n    return CUICrashLogReportSourceTypeOther;\n}\n\n#pragma mark -\n\n- (BOOL)isFullyParsed\n{\n    return _isLastHopeParseDone;\n}\n\n- (BOOL)finalizeParsing\n{\n    _isLastHopeParseDone=YES;\n    \n    NSRange tRange;\n    \n    NSMutableArray * tLines=[NSMutableArray array];\n    \n    [self.rawText enumerateLinesUsingBlock:^(NSString * bLine, BOOL * bOutStop) {\n        \n        [tLines addObject:bLine];\n    }];\n\n    NSUInteger tFirstLine=0;\n    \n    // Try to parse at least the header\n    \n    tRange=[CUICrashLogSectionsDetector detectHeaderSectionRangeInTextualRepresentation:tLines atIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(tFirstLine,tLines.count-tFirstLine)]];\n    \n    if (tRange.location==NSNotFound)\n    {\n        /*if (outError!=NULL)\n            *outError=[NSError errorWithDomain:CUIParsingErrorDomain code:CUIParsingSectionDetectionFailedError userInfo:@{CUIParsingErrorSectionNameKey:@\"Header\"}];*/\n        \n        return NO;\n    }\n    \n    CUICrashLogHeader * tHeader=[[CUICrashLogHeader alloc] initWithTextualRepresentation:[tLines subarrayWithRange:tRange] error:NULL];\n    \n    if (tHeader!=nil)\n    {\n        _reserved1=[tHeader.processName copy];\n        \n        _reserved2=[tHeader.dateTime copy];\n        \n        _reserved3=[tHeader.bundleIdentifier copy];\n        \n        _reserved4=[tHeader.executablePath copy];\n        \n        _reserved5=[tHeader.executableVersion copy];\n        \n        _reserved6=[tHeader.operatingSystemVersion.stringValue copy];\n    }\n    \n    return YES;\n}\n\n#pragma mark -\n\n- (NSString *)crashLogFileName\n{\n    return self.crashLogFilePath.lastPathComponent.stringByDeletingPathExtension;\n}\n\n#pragma mark -\n\n- (NSComparisonResult)compareCrashLogFileName:(CUIRawCrashLog *)otherCrashLog\n{\n    return [self.crashLogFileName compare:otherCrashLog.crashLogFileName options:NSNumericSearch|NSCaseInsensitiveSearch];\n}\n\n- (NSComparisonResult)compareProcessName:(CUIRawCrashLog *)otherCrashLog\n{\n    NSComparisonResult tResult=[self.processName compare:otherCrashLog.processName options:NSNumericSearch|NSCaseInsensitiveSearch];\n    \n    if (tResult!=NSOrderedSame)\n        return tResult;\n    \n    return [self.crashLogFilePath compare:self.crashLogFilePath];\n}\n\n- (NSComparisonResult)compareDateReverse:(CUIRawCrashLog *)otherCrashLog\n{\n    return -[self.dateTime compare:otherCrashLog.dateTime];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegister.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface CUIRegister : NSObject <NSCopying>\n\n    @property (copy) NSString * name;\n\n    @property NSUInteger value;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegister.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRegister.h\"\n\n@implementation CUIRegister\n\n- (NSString *)description\n{\n    return [NSString stringWithFormat:@\"%@:0x%016lx\",self.name,self.value];\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUIRegister * nRegister=[CUIRegister new];\n    \n    nRegister.name=[self.name copy];\n    \n    nRegister.value=self.value;\n    \n    return nRegister;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegisterLabel.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n\ntypedef NS_ENUM(NSUInteger, CUIRegisterViewValueAsType)\n{\n    CUIRegisterViewValueAsBinary,\n    CUIRegisterViewValueAsBoolean,\n    CUIRegisterViewValueAsFloat,\n    CUIRegisterViewValueAsDecimal,\n    CUIRegisterViewValueAsHex,\n    CUIRegisterViewValueAsOctal,\n    CUIRegisterViewValueAsUnsignedDecimal\n};\n\n@class CUIRegisterLabel;\n\n@protocol CUIRegisterLabelDelegate\n\n- (void)registerLabel:(CUIRegisterLabel *)inRegisterLabel viewValueAsDidChange:(CUIRegisterViewValueAsType)inType;\n\n@end\n\n@interface CUIRegisterLabel : NSView\n\n    @property (nonatomic) NSUInteger registerValue;\n\n    @property (nonatomic) CUIRegisterViewValueAsType viewValueAs;\n\n    @property (weak) id<CUIRegisterLabelDelegate> delegate;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegisterLabel.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRegisterLabel.h\"\n\nNSString * const CUIRegisterLabelViewAsValueDidChangeNotification=@\"CUIRegisterLabelViewAsValueDidChangeNotification\";\n\n@interface CUIRegisterLabel ()\n{\n    IBOutlet NSTextField * _textField;\n    \n    IBOutlet NSPopUpButton * _popUpButton;\n}\n\n- (IBAction)switchDisplayFormat:(id)sender;\n\n@end\n\n@implementation CUIRegisterLabel\n\n- (instancetype)initWithFrame:(NSRect)inFrame\n{\n    self=[super initWithFrame:inFrame];\n    \n    if (self!=nil)\n    {\n        _viewValueAs=CUIRegisterViewValueAsHex;\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithCoder:(NSCoder *)inCoder\n{\n    self=[super initWithCoder:inCoder];\n    \n    if (self!=nil)\n    {\n        _viewValueAs=CUIRegisterViewValueAsHex;\n    }\n    \n    return self;\n}\n\n- (void)awakeFromNib\n{\n    [_popUpButton selectItemWithTag:self.viewValueAs];\n}\n\n#pragma mark -\n\n- (void)setRegisterValue:(NSUInteger)inRegisterValue\n{\n    _registerValue=inRegisterValue;\n    \n    [self refreshUI];\n}\n\n- (void)setViewValueAs:(CUIRegisterViewValueAsType)inViewAs\n{\n    _viewValueAs=inViewAs;\n    \n    [self refreshUI];\n}\n\n#pragma mark -\n\n- (void)refreshUI\n{\n    static NSArray<NSString *> * sFormats=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sFormats=@[\n                   @\"N/A\", // CUIRegisterViewValueAsBinary\n                   @\"N/A\",  // CUIRegisterViewValueAsBoolean\n                   @\"%g\",  // CUIRegisterViewValueAsFloat\n                   @\"%ld\", // CUIRegisterViewValueAsDecimal\n                   @\"0x%016lx\", // CUIRegisterViewValueAsHex\n                   @\"0%o\", // CUIRegisterViewAValuesOctal\n                   @\"%lu\", // CUIRegisterViewValueAsUnsignedDecimal\n                   ];\n        \n    });\n    \n    switch(self.viewValueAs)\n    {\n        case CUIRegisterViewValueAsBinary:\n            \n            break;\n            \n        case CUIRegisterViewValueAsBoolean:\n            \n            _textField.stringValue=(self.registerValue==0) ? @\"false\" : @\"true\";\n            \n            break;\n        \n        case CUIRegisterViewValueAsFloat:\n        {\n            double tDouble=*((double *)&_registerValue);\n            \n            _textField.stringValue=[NSString stringWithFormat:@\"%g\",tDouble];\n            \n            break;\n        }\n        \n        default:\n            \n            _textField.stringValue=[NSString stringWithFormat:sFormats[self.viewValueAs],self.registerValue];\n            \n            break;\n    }\n}\n\n#pragma mark -\n\n- (IBAction)switchDisplayFormat:(NSPopUpButton *)sender\n{\n    CUIRegisterViewValueAsType tViewValueAs=sender.selectedTag;\n    \n    if (self.viewValueAs==tViewValueAs)\n        return;\n    \n    self.viewValueAs=tViewValueAs;\n    \n    if (self.delegate!=nil)\n        [self.delegate registerLabel:self viewValueAsDidChange:tViewValueAs];\n    \n    // Post notification\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIRegisterLabelViewAsValueDidChangeNotification\n                                                      object:self\n                                                    userInfo:@{\n                                                               @\"viewAs\":@(tViewValueAs)\n                                                               }];\n}\n\n#pragma mark -\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    // Draw the rounded rect\n    \n    NSRect tRect=NSInsetRect(self.bounds, 0.5, 0.5);\n    \n    NSBezierPath * tPath=[NSBezierPath bezierPathWithRoundedRect:tRect xRadius:4 yRadius:4];\n    \n    if ([self WB_isEffectiveAppearanceDarkAqua]==YES)\n    {\n        [[NSColor colorWithWhite:1.0 alpha:0.07] set];\n    }\n    else\n    {\n        [[NSColor colorWithWhite:1.0 alpha:0.9] set];\n    }\n    \n    [tPath fill];\n    \n    [[NSColor quaternaryLabelColor] set];\n    \n    [tPath stroke];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersMainViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nextern NSString * const CUIRegistersMainViewContentsViewDidChangeNotificaton;\n\n@interface CUIRegistersMainViewController : NSViewController\n\n- (NSSize)idealSizeForNumberOfColumns:(NSUInteger)inColumnsNumber;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersMainViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRegistersMainViewController.h\"\n\n#import \"CUICenteredLabelViewController.h\"\n#import \"CUIRegistersViewController.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n#import \"CUICrashLogBrowsingStateRegistry.h\"\n\n#import \"CUICrashLogThreadState+UI.h\"\n\nNSString * const CUIRegistersMainViewContentsViewDidChangeNotificaton=@\"CUIRegistersMainViewContentsViewDidChangeNotificaton\";\n\n@interface CUIRegistersMainViewController ()\n{\n    CUICenteredLabelViewController * _noRegistersViewController;\n    \n    CUIRegistersViewController * _registersViewController;\n    \n    cpu_type_t _currentCPUType;\n    \n    NSViewController * _currentViewController;\n}\n\n    @property (nonatomic,copy) CUICrashLogsSelection * selection;\n\n// Notifications\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIRegistersMainViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _noRegistersViewController=[CUICenteredLabelViewController new];\n        _noRegistersViewController.label=NSLocalizedString(@\"Registers state not available\",@\"\");\n        \n        \n        \n        _registersViewController=[CUIRegistersViewController new];\n        \n        _selection=[CUICrashLogsSelection new];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUIRegistersMainViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    // Register for Notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:nil];\n}\n\n- (void)viewWillAppear\n{\n    CUICrashLogsSelection * tSelection=[CUICrashLogsSelection sharedSelection];\n    \n    self.selection=tSelection;\n    \n    // Post Notification\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIRegistersMainViewContentsViewDidChangeNotificaton object:self];\n}\n\n\n#pragma mark -\n\n- (void)setSelection:(CUICrashLogsSelection *)inSelection\n{\n    if ([_selection isEqual:inSelection]==YES)\n        return;\n    \n    _selection=[inSelection copy];\n    \n    CUICrashLogThreadState * tThreadState=nil;\n    \n    if (_selection.crashLogs.count==0)\n    {\n        tThreadState=nil;\n    }\n    else\n    {\n        CUICrashLog * tCrashLog=_selection.crashLogs.firstObject;\n        \n        if ([tCrashLog isMemberOfClass:[CUIRawCrashLog class]]==YES)\n        {\n            tThreadState=nil;\n        }\n        else\n        {\n            tThreadState=tCrashLog.threadState;\n        }\n    }\n    \n    // Update Window title\n    \n    NSString * tCPUTypeLabel=tThreadState.displayedCPUType;\n    \n    if (tCPUTypeLabel==nil)\n    {\n        self.view.window.title=NSLocalizedString(@\"Registers\",@\"\");\n    }\n    else\n    {\n        self.view.window.title=[NSString stringWithFormat:NSLocalizedString(@\"Registers - %@\",@\"\"),tCPUTypeLabel];\n    }\n    \n    if (tThreadState==nil)\n    {\n        if (_currentViewController==_noRegistersViewController)\n            return;\n        \n        [_currentViewController.view removeFromSuperview];\n        \n        NSRect tFrame=self.view.bounds;\n        \n        _noRegistersViewController.view.frame=tFrame;\n        \n        [self.view addSubview:_noRegistersViewController.view];\n        \n        _currentViewController=_noRegistersViewController;\n        \n        _currentCPUType=0;\n    }\n    else\n    {\n        CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n        \n        _registersViewController.browsingState=[tRegistry browsingStateForCrashLog:_selection.crashLogs.firstObject windowNumber:self.view.window.windowNumber];\n        \n        _registersViewController.threadState=tThreadState;\n        \n        if (_currentViewController!=_registersViewController)\n        {\n            [_currentViewController.view removeFromSuperview];\n    \n            NSRect tFrame=self.view.bounds;\n        \n            _registersViewController.view.frame=tFrame;\n        \n            [self.view addSubview:_registersViewController.view];\n        \n            _currentViewController=_registersViewController;\n        }\n        \n        if (tThreadState.CPUType==_currentCPUType)\n            return;\n        \n        _currentCPUType=tThreadState.CPUType;\n    }\n    \n    // Post Notification\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIRegistersMainViewContentsViewDidChangeNotificaton object:self];\n}\n\n- (NSSize)idealSizeForNumberOfColumns:(NSUInteger)inColumnsNumber\n{\n    static NSSize sLastIdealSize={.width=300, .height=200};\n    \n    if (_currentViewController!=_registersViewController)\n        return NSZeroSize;\n    \n    // A VOIR (We can get rid of the static if we stay with this implementation)\n    \n    sLastIdealSize=[_registersViewController idealSizeForNumberOfColumns:inColumnsNumber];\n    \n    return sLastIdealSize;\n}\n\n#pragma mark - Notifications\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogsSelection * tSelection=inNotification.object;\n    \n    if ([tSelection isKindOfClass:[CUICrashLogsSelection class]]==NO)\n        return;\n    \n    self.selection=tSelection;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersMainViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIRegistersMainViewController\">\n            <connections>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"480\" height=\"272\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <point key=\"canvasLocation\" x=\"-142\" y=\"-317\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLogThreadState.h\"\n\n#import \"CUICrashLogBrowsingState.h\"\n\n@interface CUIRegistersViewController : NSViewController\n\n    @property (nonatomic) CUICrashLogBrowsingState * browsingState;\n\n    @property (nonatomic) CUICrashLogThreadState * threadState;\n\n- (NSSize)idealSizeForNumberOfColumns:(NSUInteger)inColumnsNumber;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRegistersViewController.h\"\n\n#import \"CUIRegister.h\"\n\n#import \"CUIRegisterLabel.h\"\n\n#import \"CUICollectionViewRegisterItem.h\"\n\n@interface CUIRegistersViewController () <NSCollectionViewDataSource,NSCollectionViewDelegate>\n{\n    IBOutlet NSCollectionView * _collectionView;\n}\n\n// Notifications\n\n- (void)registerItemValueAsDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIRegistersViewController\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n- (NSString *)nibName\n{\n    return @\"CUIRegistersViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _collectionView.dataSource=self;\n    _collectionView.delegate=self;\n    \n    _collectionView.backgroundColors=@[[NSColor clearColor]];\n    \n    NSNib * tNib=[[NSNib alloc] initWithNibNamed:@\"CUICollectionViewRegisterItem\" bundle:[NSBundle mainBundle]];\n    \n    [_collectionView registerNib:tNib forItemWithIdentifier:@\"register\"];\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(registerItemValueAsDidChange:) name:CUIRegisterItemViewAsValueDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)setBrowsingState:(CUICrashLogBrowsingState *)inBrowsingState\n{\n    _browsingState=inBrowsingState;\n    \n    [self refreshUI];\n}\n\n- (void)setThreadState:(CUICrashLogThreadState *)inThreadState\n{\n    _threadState=inThreadState;\n    \n    [self refreshUI];\n}\n\n- (NSSize)idealSizeForNumberOfColumns:(NSUInteger)inColumnsNumber\n{\n    if (inColumnsNumber==0)\n        return NSZeroSize;\n    \n    NSCollectionViewFlowLayout * tFlowLayout=(NSCollectionViewFlowLayout *)_collectionView.collectionViewLayout;\n    \n    NSEdgeInsets tMarginInsets=tFlowLayout.sectionInset;\n    \n    NSSize tItemSize=tFlowLayout.itemSize;\n    \n    CGFloat tHorizontalPadding=tFlowLayout.minimumInteritemSpacing;\n    \n    CGFloat tIdealWidth=tMarginInsets.left+inColumnsNumber*tItemSize.width+(inColumnsNumber-1)*tHorizontalPadding+tMarginInsets.right+22;\n    \n    \n    \n    NSUInteger tNumberOfSections=[self numberOfSectionsInCollectionView:_collectionView];\n    \n    NSUInteger tNumberOfItems=0;\n    \n    for(NSUInteger tSectionIndex=0;tSectionIndex<tNumberOfSections;tSectionIndex++)\n        tNumberOfItems+=[self collectionView:_collectionView numberOfItemsInSection:tSectionIndex];\n    \n    NSUInteger tNumberOfRows=(tNumberOfItems/inColumnsNumber)+(((tNumberOfItems%inColumnsNumber)==0) ? 0 : 1);\n    \n    CGFloat tIdealHeight=tFlowLayout.headerReferenceSize.height+tNumberOfRows*tItemSize.height+(tNumberOfRows-1)*tFlowLayout.minimumLineSpacing+tFlowLayout.footerReferenceSize.height;\n    \n    return NSMakeSize(tIdealWidth, tIdealHeight);\n}\n\n#pragma mark -\n\n- (void)refreshUI\n{\n    [_collectionView reloadData];\n}\n\n#pragma mark - NSCollectionViewDataSource\n\n- (NSInteger)numberOfSectionsInCollectionView:(NSCollectionView *)inCollectionView\n{\n    NSAssert(inCollectionView==_collectionView, @\"Unexpected collection view provided as parameter\");\n    \n    return 1;\n}\n\n- (NSInteger)collectionView:(NSCollectionView *)inCollectionView numberOfItemsInSection:(NSInteger)inSection\n{\n    NSAssert(inCollectionView==_collectionView, @\"Unexpected collection view provided as parameter\");\n    \n    return _threadState.registers.count;\n}\n\n- (NSCollectionViewItem *)collectionView:(NSCollectionView *)inCollectionView itemForRepresentedObjectAtIndexPath:(NSIndexPath *)inIndexPath\n{\n    NSAssert(inCollectionView==_collectionView, @\"Unexpected collection view provided as parameter\");\n    \n    CUICollectionViewRegisterItem * tCollectionViewItem=(CUICollectionViewRegisterItem *)[inCollectionView makeItemWithIdentifier:@\"register\" forIndexPath:inIndexPath];\n    \n    CUIRegister * tRegister=_threadState.registers[inIndexPath.item];\n    \n    NSMutableDictionary * tRepresentedObject=[NSMutableDictionary dictionaryWithObject:tRegister forKey:@\"register\"];\n    \n    NSNumber * tNumber=self.browsingState.registersViewValues[tRegister.name];\n    \n    if (tNumber!=nil)\n        tRepresentedObject[@\"viewAs\"]=tNumber;\n    \n    tCollectionViewItem.representedObject=tRepresentedObject;\n    \n    return tCollectionViewItem;\n}\n\n#pragma mark - Notifications\n\n- (void)registerItemValueAsDidChange:(NSNotification *)inNotification\n{\n    CUIRegister * tRegister=inNotification.object;\n    \n    NSNumber * tViewAsValueNumber=inNotification.userInfo[@\"viewAs\"];\n    \n    self.browsingState.registersViewValues[tRegister.name]=tViewAsValueNumber;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIRegistersViewController\">\n            <connections>\n                <outlet property=\"_collectionView\" destination=\"kDz-iN-Rij\" id=\"AaF-1I-O1S\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"621\" height=\"423\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView wantsLayer=\"YES\" borderType=\"none\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" id=\"VgV-Mc-I0j\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"621\" height=\"423\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" copiesOnScroll=\"NO\" id=\"avD-pN-AxH\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"621\" height=\"423\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <subviews>\n                            <collectionView id=\"kDz-iN-Rij\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"621\" height=\"423\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\"/>\n                                <collectionViewFlowLayout key=\"collectionViewLayout\" minimumInteritemSpacing=\"5\" minimumLineSpacing=\"5\" id=\"jAx-pb-k4V\">\n                                    <size key=\"itemSize\" width=\"180\" height=\"23\"/>\n                                    <size key=\"headerReferenceSize\" width=\"0.0\" height=\"12\"/>\n                                    <size key=\"footerReferenceSize\" width=\"0.0\" height=\"12\"/>\n                                    <edgeInsets key=\"sectionInset\" left=\"10\" right=\"15\" top=\"0.0\" bottom=\"0.0\"/>\n                                </collectionViewFlowLayout>\n                                <color key=\"primaryBackgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </collectionView>\n                        </subviews>\n                    </clipView>\n                    <edgeInsets key=\"contentInsets\" left=\"0.0\" right=\"0.0\" top=\"0.0\" bottom=\"0.0\"/>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"k5O-fG-JU4\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"233\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"41E-em-3Le\">\n                        <rect key=\"frame\" x=\"234\" y=\"1\" width=\"15\" height=\"143\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-3.5\" y=\"-85.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersWindowController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIRegistersWindowController : NSWindowController\n\n+ (CUIRegistersWindowController *)sharedRegistersWindowController;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersWindowController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRegistersWindowController.h\"\n\n#import \"CUIRegistersMainViewController.h\"\n\n#define REGISTERS_LAYOUT_1_COLUMN   1\n#define REGISTERS_LAYOUT_4_COLUMNS  4\n\n@interface CUIRegistersWindowController () <NSWindowDelegate>\n{\n    CUIRegistersMainViewController * _mainViewController;\n    \n    NSUInteger _columnsCount;\n}\n\n- (NSRect)windowFrameForNumberOfColumns:(NSUInteger)inNumberOfColumns;\n\n// Notifications\n\n- (void)registersMainViewContentsViewDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIRegistersWindowController\n\n+ (void)initialize\n{\n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                              @\"registers.columnsCount\":@(REGISTERS_LAYOUT_4_COLUMNS)\n                                                              }];\n}\n\n+ (CUIRegistersWindowController *)sharedRegistersWindowController\n{\n    static dispatch_once_t onceToken;\n    static CUIRegistersWindowController * sRegistersWindowController=nil;\n    \n    dispatch_once(&onceToken, ^{\n        \n        sRegistersWindowController=[CUIRegistersWindowController new];\n    });\n    \n    return sRegistersWindowController;\n}\n\n#pragma mark -\n\n- (NSString *)windowNibName\n{\n    return @\"CUIRegistersWindowController\";\n}\n\n- (void)windowDidLoad\n{\n    [super windowDidLoad];\n    \n    _columnsCount=[[NSUserDefaults standardUserDefaults] integerForKey:@\"registers.columnsCount\"];\n    \n    _mainViewController=[CUIRegistersMainViewController new];\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(registersMainViewContentsViewDidChange:) name:CUIRegistersMainViewContentsViewDidChangeNotificaton object:_mainViewController];\n    \n    NSRect tContentsBounds=self.window.contentView.bounds;\n    \n    _mainViewController.view.frame=tContentsBounds;\n    \n    [self.window.contentView addSubview:_mainViewController.view];\n}\n\n#pragma mark -\n\n- (IBAction)showWindow:(id)sender\n{\n    // Make sure the window is visible on screen\n    \n    // A COMPLETER\n    \n    [super showWindow:sender];\n}\n\n#pragma mark -\n\n- (NSRect)windowFrameForNumberOfColumns:(NSUInteger)inNumberOfColumns\n{\n    NSSize tSize=[_mainViewController idealSizeForNumberOfColumns:inNumberOfColumns];\n    \n    if (NSEqualSizes(tSize,NSZeroSize)==YES)\n        return NSZeroRect;\n    \n    NSRect tWindowFrame=self.window.frame;\n    \n    NSRect tOldContentBounds=self.window.contentView.bounds;\n    \n    if (NSEqualSizes(tSize, tOldContentBounds.size)==YES)\n        return NSZeroRect;\n    \n    NSRect tContentRect;\n    \n    tContentRect.origin=NSZeroPoint;\n    tContentRect.size=tSize;\n    \n    NSRect tNewFrame=[self.window frameRectForContentRect:tContentRect];\n    \n    tNewFrame.origin.x=tWindowFrame.origin.x;\n    tNewFrame.origin.y=tWindowFrame.origin.y+NSHeight(tWindowFrame)-NSHeight(tNewFrame);\n    \n    return tNewFrame;\n}\n\n#pragma mark - NSWindowDelegate\n\n- (NSRect)windowWillUseStandardFrame:(NSWindow *)window defaultFrame:(NSRect)newFrame\n{\n    NSUInteger tNewColumnCount=(_columnsCount==REGISTERS_LAYOUT_4_COLUMNS) ? REGISTERS_LAYOUT_1_COLUMN : REGISTERS_LAYOUT_4_COLUMNS;\n    \n    NSRect tWindowFrame=[self windowFrameForNumberOfColumns:tNewColumnCount];\n    \n    if (NSIsEmptyRect(tWindowFrame)==YES)\n        return self.window.frame;\n    \n    _columnsCount=tNewColumnCount;\n    \n    [[NSUserDefaults standardUserDefaults] setInteger:_columnsCount forKey:@\"registers.columnsCount\"];\n    \n    return tWindowFrame;\n}\n\n- (BOOL)windowShouldZoom:(NSWindow *)window toFrame:(NSRect)newFrame\n{\n    /*NSRect tWindowFrame=[self windowFrameForNumberOfColumns:REGISTERS_LAYOUT_1_COLUMN];\n    \n    if (NSIsEmptyRect(tWindowFrame)==YES)\n        return NO;*/\n    \n    if (_columnsCount==REGISTERS_LAYOUT_1_COLUMN)\n        window.minSize=NSMakeSize(NSWidth(newFrame), 310);\n    else\n        window.minSize=newFrame.size;\n    \n    window.maxSize=newFrame.size;\n    \n    return YES;\n}\n\n- (void)registersMainViewContentsViewDidChange:(NSNotification *)inNotification\n{\n    NSRect tWindowFrame=[self windowFrameForNumberOfColumns:_columnsCount];\n    \n    if (NSIsEmptyRect(tWindowFrame)==YES)\n        return;\n    \n    // Make sure the window is fully visible on screen\n    \n    NSScreen * tScreen=self.window.screen;\n    \n    if (tScreen!=nil)\n    {\n        NSRect tScreenVisibleRect=tScreen.visibleFrame;\n        \n        if (NSMaxX(tWindowFrame)>NSMaxX(tScreenVisibleRect))\n        {\n            tWindowFrame.origin.x=NSMaxX(tScreenVisibleRect)-NSWidth(tWindowFrame);\n        }\n        else if (NSMinX(tWindowFrame)<NSMinX(tScreenVisibleRect))\n        {\n            tWindowFrame.origin.x=NSMinX(tScreenVisibleRect);\n        }\n        \n        if (NSMaxY(tWindowFrame)>NSMaxY(tScreenVisibleRect))\n        {\n            tWindowFrame.origin.y=NSMaxY(tScreenVisibleRect)-NSHeight(tWindowFrame);\n        }\n        else if (NSMinY(tWindowFrame)<NSMinY(tScreenVisibleRect))\n        {\n            tWindowFrame.origin.y=NSMinY(tScreenVisibleRect);\n        }\n    }\n    \n    [self.window setFrame:tWindowFrame display:NO animate:NO];\n    \n    if (_columnsCount==REGISTERS_LAYOUT_1_COLUMN)\n        self.window.minSize=NSMakeSize(NSWidth(tWindowFrame), 310);\n    else\n        self.window.minSize=tWindowFrame.size;\n    \n    self.window.maxSize=tWindowFrame.size;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRegistersWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIRegistersWindowController\">\n            <connections>\n                <outlet property=\"window\" destination=\"2Va-8Q-YZR\" id=\"t5b-jM-OJa\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Registers\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" hidesOnDeactivate=\"YES\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.registers\" animationBehavior=\"default\" id=\"2Va-8Q-YZR\" customClass=\"NSPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\" utility=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenNone=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" rightStrut=\"YES\" topStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"2060\" y=\"1117\" width=\"500\" height=\"300\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"260\" height=\"200\"/>\n            <view key=\"contentView\" id=\"Q8B-WY-Wt1\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"500\" height=\"300\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"6XC-IW-KCG\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"-7\" y=\"-105\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIReportThemedTransform.h",
    "content": "/*\n Copyright (c) 2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIDataTransform.h\"\n\n#import <AppKit/AppKit.h>\n\n#import \"CUICrashLog.h\"\n\n#import \"CUITheme.h\"\n\n#ifndef __DISABLE_SYMBOLICATION_\n\n#import \"CUISymbolicationManager.h\"\n\n#import \"CUISymbolicationDataFormatter.h\"\n#endif\n\n@interface CUIReportThemedTransform : CUIDataTransform\n\n    @property (readonly) id<CUIThemesProvider> themesProvider;\n\n\n    @property (readonly) NSDictionary * plainTextAttributes;\n\n    @property (readonly) NSDictionary * keyAttributes;\n\n    @property (readonly) NSDictionary * versionAttributes;\n\n    @property (readonly) NSDictionary * pathAttributes;\n\n    @property (readonly) NSDictionary * UUIDAttributes;\n\n    @property (readonly) NSDictionary * crashedThreadLabelAttributes;\n\n    @property (readonly) NSDictionary * threadLabelAttributes;\n\n    @property (readonly) NSDictionary * executableCodeAttributes;\n\n    @property (readonly) NSDictionary * OSCodeAttributes;\n\n    @property (readonly) NSDictionary * memoryAddressAttributes;\n\n\n    @property (readonly) NSDictionary * registerValueAttributes;\n\n\n    @property (readonly) NSDictionary * parsingErrorAttributes;\n\n    @property (readonly) NSColor * underlineColor;\n\n    @property (readonly) NSCharacterSet * whitespaceCharacterSet;\n\n#ifndef __DISABLE_SYMBOLICATION_\n    @property (readonly)  CUISymbolicationDataFormatter * symbolicationDataFormatter;\n#endif\n\n    @property (copy) NSString * processPath;\n\n    @property (nonatomic) CUICrashLog * crashlog;\n\n- (instancetype)init NS_UNAVAILABLE;\n- (instancetype)initWithThemesProvider:(id <CUIThemesProvider>)inThemesProvider NS_DESIGNATED_INITIALIZER;\n\n- (void)updatesCachedAttributes;\n\n- (id)processedStackFrameLine:(NSString *)inLine stackFrame:(CUIStackFrame *)inStackFrame;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIReportThemedTransform.m",
    "content": "/*\n Copyright (c) 2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIReportThemedTransform.h\"\n\n#import \"CUIApplicationPreferences.h\"\n#import \"CUIApplicationPreferences+Themes.h\"\n\n#import \"CUIThemeItemsGroup+UI.h\"\n\n@interface CUIReportThemedTransform ()\n\n    @property (readwrite) NSDictionary * plainTextAttributes;\n\n    @property (readwrite) NSDictionary * keyAttributes;\n\n    @property (readwrite) NSDictionary * versionAttributes;\n\n    @property (readwrite) NSDictionary * pathAttributes;\n\n    @property (readwrite) NSDictionary * UUIDAttributes;\n\n    @property (readwrite) NSDictionary * crashedThreadLabelAttributes;\n\n    @property (readwrite) NSDictionary * threadLabelAttributes;\n\n    @property (readwrite) NSDictionary * executableCodeAttributes;\n\n    @property (readwrite) NSDictionary * OSCodeAttributes;\n\n    @property (readwrite) NSDictionary * memoryAddressAttributes;\n\n\n    @property (readwrite) NSDictionary * registerValueAttributes;\n\n\n    @property (readwrite) NSDictionary * parsingErrorAttributes;\n\n    @property (readwrite) NSColor * underlineColor;\n\n@end\n\n@implementation CUIReportThemedTransform\n\n- (instancetype)initWithThemesProvider:(id <CUIThemesProvider>)inThemesProvider;\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _themesProvider=inThemesProvider;\n        \n#ifndef __DISABLE_SYMBOLICATION_\n        _symbolicationDataFormatter=[CUISymbolicationDataFormatter new];\n#endif\n        \n        _whitespaceCharacterSet=[NSCharacterSet whitespaceCharacterSet];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)updatesCachedAttributes\n{\n    NSFontManager * tFontManager = [NSFontManager sharedFontManager];\n    \n    CUIThemeItemsGroup * tItemsGroup=[self.themesProvider.currentTheme itemsGroupWithIdentifier:[CUIApplicationPreferences groupIdentifierForPresentationMode:CUIPresentationModeText]];\n    \n    NSMutableArray * tItemsNames=[tItemsGroup.itemsNames mutableCopy];\n    \n    [tItemsNames removeObject:CUIThemeItemBackground];\n    [tItemsNames removeObject:CUIThemeItemLineNumber];\n    [tItemsNames removeObject:CUIThemeItemSelectionBackground];\n    [tItemsNames removeObject:CUIThemeItemSelectionText];\n    \n    // TabStops settings\n    \n    NSMutableParagraphStyle * tMutableParagraphStyle = [[NSParagraphStyle defaultParagraphStyle] mutableCopy];\n    \n    tMutableParagraphStyle.tabStops=@[];\n    \n    [tMutableParagraphStyle setLineSpacing:2.0];\n    \n    for (NSUInteger tIndex = 1; tIndex <= 20; tIndex++)\n    {\n        NSTextTab *tabStop = [[NSTextTab alloc] initWithType:NSLeftTabStopType location: 40 * (tIndex)];\n        [tMutableParagraphStyle addTabStop:tabStop];\n    }\n    \n    NSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n    \n    for(NSString * tItemName in tItemsNames)\n    {\n        CUIThemeItemAttributes * tItemAttributes=[tItemsGroup attributesForItem:tItemName];\n        \n        NSFont * tFont=tItemAttributes.font;\n        \n        NSFont * tAdjustedFont=nil;\n        \n        tAdjustedFont=[tFontManager convertFont:tFont toSize:tFont.pointSize + self.fontSizeDelta];\n        \n        if (tAdjustedFont==nil)\n            tAdjustedFont=tFont;\n        \n        tMutableDictionary[tItemName]=@{\n                                        NSFontAttributeName:tAdjustedFont,\n                                        NSForegroundColorAttributeName:tItemAttributes.color,\n                                        NSParagraphStyleAttributeName:tMutableParagraphStyle\n                                        };\n    }\n    \n    self.plainTextAttributes=tMutableDictionary[CUIThemeItemPlainText];\n    \n    NSColor * tForegroundColor=self.plainTextAttributes[NSForegroundColorAttributeName];\n    self.underlineColor=[tForegroundColor colorWithAlphaComponent:0.35];\n    \n    self.keyAttributes=tMutableDictionary[CUIThemeItemKey];\n    self.threadLabelAttributes=tMutableDictionary[CUIThemeItemThreadLabel];\n    self.crashedThreadLabelAttributes=tMutableDictionary[CUIThemeItemCrashedThreadLabel];\n    \n    self.executableCodeAttributes=tMutableDictionary[CUIThemeItemExecutableCode];\n    self.OSCodeAttributes=tMutableDictionary[CUIThemeItemOSCode];\n    \n    self.versionAttributes=tMutableDictionary[CUIThemeItemVersion];\n    self.memoryAddressAttributes=tMutableDictionary[CUIThemeItemMemoryAddress];\n    self.pathAttributes=tMutableDictionary[CUIThemeItemPath];\n    self.UUIDAttributes=tMutableDictionary[CUIThemeItemUUID];\n    self.registerValueAttributes=tMutableDictionary[CUIThemeItemRegisterValue];\n    \n    \n    NSMutableDictionary * tParsingErrorDictionary=[self.plainTextAttributes mutableCopy];\n    \n    tParsingErrorDictionary[NSForegroundColorAttributeName]=[NSColor redColor];\n    \n    self.parsingErrorAttributes=[tParsingErrorDictionary copy];\n}\n\n#pragma mark -\n\n- (id)processedStackFrameLine:(NSString *)inLine stackFrame:(CUIStackFrame *)inStackFrame\n{\n    NSScanner * tScanner=[NSScanner scannerWithString:inLine];\n    \n    if ([tScanner scanInteger:NULL]==NO)\n        return nil;\n    \n    __block NSString * tLine=inLine;\n    \n    tScanner.charactersToBeSkipped=nil;\n    \n    [tScanner scanCharactersFromSet:self.whitespaceCharacterSet intoString:NULL];\n    \n    tScanner.charactersToBeSkipped=self.whitespaceCharacterSet;\n    \n    NSUInteger tBinaryImageIdentifierStart=tScanner.scanLocation;\n    \n    if ([tScanner scanUpToString:@\"0x\" intoString:nil]==NO)\n        return nil;\n    \n    NSRange tBinaryImageIdentifierRange;\n    \n    if (tScanner.scanLocation==tLine.length)\n    {\n        // try to find a \\t\n        \n        tScanner.scanLocation=tBinaryImageIdentifierStart;\n        \n        if ([tScanner scanUpToString:@\"\\t\" intoString:NULL]==NO)\n            return [[NSAttributedString alloc] initWithString:tLine attributes:self.parsingErrorAttributes];\n        \n        if (tScanner.scanLocation==tLine.length)\n            return [[NSAttributedString alloc] initWithString:tLine attributes:self.parsingErrorAttributes];\n        \n        tBinaryImageIdentifierRange=NSMakeRange(tBinaryImageIdentifierStart,tScanner.scanLocation-tBinaryImageIdentifierStart+1);\n    }\n    else\n    {\n        tBinaryImageIdentifierRange=NSMakeRange(tBinaryImageIdentifierStart,tScanner.scanLocation-1-tBinaryImageIdentifierStart+1);\n    }\n    \n    NSRange tBinEndRange=[[tLine substringWithRange:tBinaryImageIdentifierRange] rangeOfCharacterFromSet:self.whitespaceCharacterSet.invertedSet options:NSBackwardsSearch];\n    \n    NSString * tBinaryImageIdentifier=[tLine substringWithRange:NSMakeRange(tBinaryImageIdentifierRange.location, tBinEndRange.location+1)];\n    \n    tScanner.charactersToBeSkipped=self.whitespaceCharacterSet;\n    \n    unsigned long long tMachineInstructionAddress=0;\n    \n    if ([tScanner scanHexLongLong:&tMachineInstructionAddress]==NO)\n        return [[NSAttributedString alloc] initWithString:tLine];\n    \n    BOOL tIsUserCode=NO;\n    \n    CUICrashLogBinaryImages * tBinaryImages=self.crashlog.binaryImages;\n    \n    CUIBinaryImage * tBinaryImage=[tBinaryImages binaryImageWithIdentifierOrName:tBinaryImageIdentifier identifier:&tBinaryImageIdentifier];\n    \n    if (tBinaryImage!=nil)\n    {\n        tIsUserCode = tBinaryImage.isUserCode;\n        \n        if (tIsUserCode==NO && [tBinaryImage.path isEqualToString:self.processPath]==YES)\n            tIsUserCode=YES;\n    }\n    \n    if (tIsUserCode==NO)\n        tIsUserCode=[tBinaryImages isUserCodeAtMemoryAddress:tMachineInstructionAddress inBinaryImage:tBinaryImageIdentifier];\n    \n    NSRange tMemoryAddressRange=NSMakeRange(tBinaryImageIdentifierRange.location+tBinaryImageIdentifierRange.length,tScanner.scanLocation-(tBinaryImageIdentifierRange.location+tBinaryImageIdentifierRange.length)+1);\n    \n    NSString * tSymbol=nil;\n    \n    if ([tScanner scanUpToString:@\" +\" intoString:&tSymbol]==NO)\n        return [[NSAttributedString alloc] initWithString:tLine];\n    \n    __block NSUInteger tSavedScanLocation=tScanner.scanLocation;\n    \n#ifndef __DISABLE_SYMBOLICATION_\n    \n    BOOL tSymbolicateAutomatically=[CUIApplicationPreferences sharedPreferences].symbolicateAutomatically;\n    \n    if (self.symbolicationMode==CUISymbolicationModeNone)\n        tSymbolicateAutomatically=NO;\n    \n    CUISymbolicationData * tSymbolicationData=nil;\n    \n    if (tSymbolicateAutomatically==YES)\n    {\n        tSymbolicationData=inStackFrame.symbolicationData;\n    }\n    \n    if (tSymbolicationData!=nil)\n    {\n        NSMutableString * tTemporaryLine=[[tLine substringToIndex:tScanner.scanLocation-tSymbol.length] mutableCopy];\n        \n        if (tSymbolicationData.stackFrameSymbol==nil)\n        {\n            NSLog(@\"Missing stackFrameSymbol\");\n        }\n        \n        tSavedScanLocation+=(tSymbolicationData.stackFrameSymbol.length-tSymbol.length);\n        \n        [tTemporaryLine appendString:[self.symbolicationDataFormatter stringForObjectValue:tSymbolicationData]];\n        \n        tLine=[tTemporaryLine copy];\n    }\n    else\n    {\n        if (tSymbolicateAutomatically==YES)\n        {\n            // Default values\n            \n            NSUInteger tAddress=tMachineInstructionAddress-tBinaryImage.binaryImageOffset;\n            \n            [[CUISymbolicationManager sharedSymbolicationManager] lookUpSymbolicationDataForMachineInstructionAddress:tAddress\n                                                                                                           binaryUUID:tBinaryImage.UUID\n                                                                                                    completionHandler:^(CUISymbolicationDataLookUpResult bLookUpResult, CUISymbolicationData *bSymbolicationData) {\n                                                                                                        \n                                                                                                        switch(bLookUpResult)\n                                                                                                        {\n                                                                                                            case CUISymbolicationDataLookUpResultError:\n                                                                                                            case CUISymbolicationDataLookUpResultNotFound:\n                                                                                                                \n                                                                                                                break;\n                                                                                                                \n                                                                                                            case CUISymbolicationDataLookUpResultFound:\n                                                                                                            {\n                                                                                                                inStackFrame.symbolicationData=bSymbolicationData;\n                                                                                                                \n                                                                                                                [NSNotificationCenter.defaultCenter postNotificationName:CUIStackFrameSymbolicationDidSucceedNotification\n                                                                                                                                                                  object:self.input];\n                                                                                                                \n                                                                                                                break;\n                                                                                                            }\n                                                                                                                \n                                                                                                            case CUISymbolicationDataLookUpResultFoundInCache:\n                                                                                                            {\n                                                                                                                inStackFrame.symbolicationData=bSymbolicationData;\n                                                                                                                \n                                                                                                                NSMutableString * tTemporaryLine=[[tLine substringToIndex:tScanner.scanLocation-tSymbol.length] mutableCopy];\n                                                                                                                \n                                                                                                                tSavedScanLocation+=(bSymbolicationData.stackFrameSymbol.length-tSymbol.length);\n                                                                                                                \n                                                                                                                [tTemporaryLine appendString:[self.symbolicationDataFormatter stringForObjectValue:bSymbolicationData]];\n                                                                                                                \n                                                                                                                tLine=[tTemporaryLine copy];\n                                                                                                                \n                                                                                                                break;\n                                                                                                            }\n                                                                                                                \n                                                                                                        }\n                                                                                                        \n                                                                                                    }];\n        }\n    }\n    \n#endif\n    \n    NSMutableAttributedString * tProcessedLine=[[NSMutableAttributedString alloc] initWithString:tLine attributes:self.plainTextAttributes];\n    \n    NSRange tRange=NSMakeRange(0,tLine.length);\n    \n    NSDictionary * tDictionary=(tIsUserCode==YES) ? self.executableCodeAttributes : self.OSCodeAttributes;\n    \n    [tProcessedLine addAttributes:tDictionary range:tRange];\n    \n    \n    if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)==0)\n    {\n        [tProcessedLine deleteCharactersInRange:NSMakeRange(tSavedScanLocation, tLine.length-1-tSavedScanLocation+1)];\n    }\n    else\n    {\n#ifndef __DISABLE_SYMBOLICATION_\n        if (tSymbolicationData!=nil)\n        {\n            NSString * tAbsolutePath=inStackFrame.symbolicationData.sourceFilePath;\n            NSString * tLastPathComponent=tAbsolutePath.lastPathComponent;\n            \n            if (tLastPathComponent!=nil)\n            {\n                NSRange tRange=[tLine rangeOfString:tLastPathComponent];\n                \n                if (tRange.location!=0)\n                {\n                    if ([[NSFileManager defaultManager] fileExistsAtPath:tAbsolutePath]==YES)\n                    {\n                        NSURLComponents * tURLComponents=[NSURLComponents new];\n                        tURLComponents.scheme=[NSString stringWithFormat:@\"sourcecode-%lu\",inStackFrame.symbolicationData.lineNumber];\n                        tURLComponents.path=tAbsolutePath;\n                        \n                        NSURL * tURL=tURLComponents.URL;\n                        \n                        if (tURL!=nil)\n                        {\n                            [tProcessedLine addAttributes:@{\n                                                            NSLinkAttributeName:tURL,\n                                                            NSUnderlineStyleAttributeName:@(NSUnderlineStyleSingle),\n                                                            NSUnderlineColorAttributeName:self.underlineColor\n                                                            }\n                                                    range:tRange];\n                            \n                            \n                        }\n                    }\n                }\n            }\n        }\n#endif\n    }\n    \n    \n    if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)==0)\n    {\n        [tProcessedLine deleteCharactersInRange:tMemoryAddressRange];\n    }\n    else\n    {\n        [tProcessedLine addAttributes:self.memoryAddressAttributes range:tMemoryAddressRange];\n    }\n    \n    if ((self.displaySettings.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)==0)\n    {\n        [tProcessedLine deleteCharactersInRange:tBinaryImageIdentifierRange];\n    }\n    else\n    {\n        if (self.hyperlinksStyle!=CUIHyperlinksNone && ((self.displaySettings.visibleSections & CUIDocumentBinaryImagesSection)==CUIDocumentBinaryImagesSection))\n        {\n            NSString * tCleanedUpIdentifier=[tBinaryImageIdentifier stringByTrimmingCharactersInSet:self.whitespaceCharacterSet];\n            \n            CUIBinaryImage * tBinaryImage=[tBinaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n            \n            if (tBinaryImage==nil)\n            {\n                tBinaryImage=[tBinaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n            }\n            \n            NSString * tBinaryImageUUID=tBinaryImage.UUID;\n            \n            if (tBinaryImageUUID!=nil)\n            {\n                NSURL * tURL=nil;\n                \n                switch(self.hyperlinksStyle)\n                {\n                    case CUIHyperlinksInternal:\n                        \n                        tURL=[NSURL URLWithString:[NSString stringWithFormat:@\"bin://%@\",tBinaryImageUUID]];\n                        \n                        break;\n                        \n                    case CUIHyperlinksHTML:\n                        \n                        tURL=[NSURL URLWithString:[NSString stringWithFormat:@\"sharp://%@\",tBinaryImageUUID]];\n                        \n                        break;\n                        \n                    default:\n                        \n                        break;\n                }\n                \n                if (tURL!=nil)\n                    [tProcessedLine addAttributes:@{NSLinkAttributeName:tURL} range:NSMakeRange(tBinaryImageIdentifierRange.location,tCleanedUpIdentifier.length)];\n                \n            }\n        }\n    }\n    \n    return tProcessedLine;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRightViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIRightViewController : NSViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRightViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRightViewController.h\"\n\n#import \"CUIInspectorViewController.h\"\n\n#import \"CUICenteredLabelViewController.h\"\n\n#import \"CUICrashLogsSelection.h\"\n\n@interface CUIRightViewController ()\n{\n    CUIInspectorViewController * _inspectorViewController;\n    \n    CUICenteredLabelViewController * _emptySelectionViewController;\n    \n    CUICenteredLabelViewController * _unavailableViewController;\n    \n    NSViewController * _currentController;\n}\n\n@property (nonatomic,copy) CUICrashLogsSelection * selection;\n\n// Notifications\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIRightViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _inspectorViewController=[CUIInspectorViewController new];\n        \n        _emptySelectionViewController=[CUICenteredLabelViewController new];\n        _emptySelectionViewController.label=NSLocalizedString(@\"No Selection\",@\"\");\n        \n        _unavailableViewController=[CUICenteredLabelViewController new];\n        _unavailableViewController.label=NSLocalizedString(@\"Not Available\",@\"\");\n    }\n    \n    return self;\n}\n    \n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.selection=[CUICrashLogsSelection new];\n    \n    // Register for Notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(crashLogsSelectionDidChange:) name:CUICrashLogsSelectionDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)setSelection:(CUICrashLogsSelection *)inSelection\n{\n    if ([_selection isEqual:inSelection]==YES)\n        return;\n    \n    _selection=[inSelection copy];\n    \n    [_currentController.view removeFromSuperview];\n    \n    if (_selection.crashLogs.count==0)\n    {\n        _emptySelectionViewController.view.frame=self.view.bounds;\n        \n        [self.view addSubview:_emptySelectionViewController.view];\n        \n        _currentController=_emptySelectionViewController;\n    }\n    else\n    {\n        CUICrashLog * tCrashLog=_selection.crashLogs.firstObject;\n        \n        if ([tCrashLog isMemberOfClass:CUIRawCrashLog.class]==YES)\n        {\n            _unavailableViewController.view.frame=self.view.bounds;\n            \n            [self.view addSubview:_unavailableViewController.view];\n            \n            _currentController=_unavailableViewController;\n        }\n        else\n        {\n            _inspectorViewController.view.frame=self.view.bounds;\n            \n            [self.view addSubview:_inspectorViewController.view];\n            \n            _currentController=_inspectorViewController;\n            \n            _inspectorViewController.crashLog=tCrashLog;\n        }\n    }\n}\n\n#pragma mark - Notifications\n\n- (void)crashLogsSelectionDidChange:(NSNotification *)inNotification\n{\n    CUICrashLogsSelection * tSelection=inNotification.object;\n    \n    if ([tSelection isKindOfClass:CUICrashLogsSelection.class]==NO)\n        return;\n    \n    self.selection=tSelection;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRightViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIRightViewController\">\n            <connections>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"480\" height=\"272\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRoundedRectBezelView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIRoundedRectBezelView : NSView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIRoundedRectBezelView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIRoundedRectBezelView.h\"\n\n@implementation CUIRoundedRectBezelView\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    NSRect tRect=NSInsetRect(self.bounds, 2.5, 2.5);\n    \n    BOOL tIsDark=[self WB_isEffectiveAppearanceDarkAqua];\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPathWithRoundedRect:tRect xRadius:4 yRadius:4];\n    \n    if (tIsDark==YES)\n    {\n        [[NSColor colorWithWhite:0.0 alpha:0.1] setStroke];\n    }\n    else\n    {\n        [[NSColor colorWithWhite:1.0 alpha:0.9] setStroke];\n    }\n    \n    [tBezierPath stroke];\n    \n    tBezierPath=[NSBezierPath bezierPathWithRoundedRect:NSOffsetRect(tRect, 0, 1) xRadius:4 yRadius:4];\n    \n    if (tIsDark==YES)\n    {\n        [[NSColor colorWithWhite:1 alpha:0.4] setStroke];\n    }\n    else\n    {\n        [[NSColor colorWithWhite:0 alpha:0.2] setStroke];\n    }\n    \n    [tBezierPath stroke];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISelectedWhiteTextFieldCell.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUISelectedWhiteTextFieldCell : NSTextFieldCell\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISelectedWhiteTextFieldCell.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISelectedWhiteTextFieldCell.h\"\n\n@implementation CUISelectedWhiteTextFieldCell\n\n- (NSColor *)textColor\n{\n    if (self.backgroundStyle==NSBackgroundStyleEmphasized)\n        return [NSColor whiteColor];\n    \n    return [super textColor];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISidebarViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUIKeyViews.h\"\n\n@interface CUISidebarViewController : NSViewController <CUIKeyViews>\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISidebarViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISidebarViewController.h\"\n\n#import \"CUICrashLogsSourcesViewController.h\"\n\n#import \"CUICrashLogsListViewController.h\"\n\n#define CUICrashLogsListMinimumHeight    340.0\n#define CUICrashLogsSourcesMinimumHeight    153.0\n\nNSString * const CUIDefaultsSidebarTopHeightKey=@\"sidebar.top.height\";\n\nNSString * const CUIDefaultsSidebarTopCollapsedKey=@\"sidebar.top.collapsed\";\n\n@interface CUISidebarViewController () <NSMenuItemValidation,NSSplitViewDelegate>\n{\n    IBOutlet NSSplitView * _splitView;\n    \n    IBOutlet NSView * _crashLogsSourcesContainerView;\n    \n    IBOutlet NSView * _crashLogsListContainerView;\n    \n    \n    CUICrashLogsSourcesViewController * _sourcesViewController;\n    \n    CUICrashLogsListViewController * _listViewController;\n}\n\n- (void)_splitView:(NSSplitView *)inSplitView resizeSubviewsWithTopHeight:(CGFloat)inTopHeight;\n\n@end\n\n@implementation CUISidebarViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _sourcesViewController=[CUICrashLogsSourcesViewController new];\n        \n        _listViewController=[CUICrashLogsListViewController new];\n        \n        [self addChildViewController:_sourcesViewController];\n        \n        [self addChildViewController:_listViewController];\n    }\n    \n    return self;\n}\n\n- (NSString *)nibName\n{\n    return @\"CUISidebarViewController\";\n}\n\n#pragma mark - NSObject\n\n- (id)forwardingTargetForSelector:(SEL)aSelector\n{\n    if ([_sourcesViewController respondsToSelector:aSelector]==YES)\n        return _sourcesViewController;\n    \n    if ([_listViewController respondsToSelector:aSelector]==YES)\n        return _listViewController;\n    \n    return nil;\n}\n\n- (BOOL)respondsToSelector:(SEL)aSelector\n{\n    BOOL tResponds=[super respondsToSelector:aSelector];\n    \n    if (tResponds==YES)\n        return YES;\n    \n    NSString * tSelectorName=NSStringFromSelector(aSelector);\n    \n    if ([tSelectorName hasPrefix:@\"CUI_MENUACTION_\"]==NO)\n        return NO;\n    \n    tResponds=[_sourcesViewController respondsToSelector:aSelector];\n    \n    if (tResponds==YES)\n        return YES;\n    \n    return [_listViewController respondsToSelector:aSelector];\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _listViewController.view.frame=_crashLogsListContainerView.bounds;\n    \n    [_crashLogsListContainerView addSubview:_listViewController.view];\n    \n    _sourcesViewController.view.frame=_crashLogsSourcesContainerView.bounds;\n    \n    [_crashLogsSourcesContainerView addSubview:_sourcesViewController.view];\n    \n    \n    [_sourcesViewController.lastKeyView setNextKeyView:_listViewController.firstKeyView];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    // Restore SplitView divider position\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    NSNumber * tNumber=[tUserDefaults objectForKey:CUIDefaultsSidebarTopCollapsedKey];\n    \n    if ([tNumber boolValue]==YES)\n    {\n        [_splitView setPosition:[_splitView minPossiblePositionOfDividerAtIndex:0] ofDividerAtIndex:0];\n    }\n    else\n    {\n        tNumber=[tUserDefaults objectForKey:CUIDefaultsSidebarTopHeightKey];\n        \n        if (tNumber!=nil)\n            [self _splitView:_splitView resizeSubviewsWithTopHeight:[tNumber doubleValue]];\n    }\n    \n    [self.view.window makeFirstResponder:_listViewController.firstKeyView];\n}\n\n- (void)viewWillDisappear\n{\n    // Save SplitView divider position\n    \n    NSView * tViewTop=_splitView.subviews.firstObject;\n    \n    NSUserDefaults * tUserDefaults=[NSUserDefaults standardUserDefaults];\n    \n    [tUserDefaults setObject:@(NSHeight(tViewTop.frame)) forKey:CUIDefaultsSidebarTopHeightKey];\n    \n    [tUserDefaults setBool:[_splitView isSubviewCollapsed:tViewTop] forKey:CUIDefaultsSidebarTopCollapsedKey];\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{    \n    SEL tAction=inMenuItem.action;\n    \n    if ([_sourcesViewController respondsToSelector:tAction]==YES)\n        return [_sourcesViewController validateMenuItem:inMenuItem];\n    \n    if ([_listViewController respondsToSelector:tAction]==YES)\n        return [_listViewController validateMenuItem:inMenuItem];\n    \n    if ([self respondsToSelector:tAction]==NO)\n        return [self.parentViewController validateMenuItem:inMenuItem];\n    \n    return YES;\n}\n\n- (void)_splitView:(NSSplitView *)inSplitView resizeSubviewsWithTopHeight:(CGFloat)inTopHeight\n{\n    NSRect tSplitViewFrame=inSplitView.frame;\n    \n    NSArray * tSubviews=inSplitView.subviews;\n    \n    NSView *tViewTop=tSubviews[0];\n    \n    NSRect tTopFrame=tViewTop.frame;\n    \n    tTopFrame.size.height=inTopHeight;\n    \n    NSView *tViewBottom=tSubviews[1];\n    \n    NSRect tBottomFrame=tViewBottom.frame;\n    \n    CGFloat tTopHeight=([inSplitView isSubviewCollapsed:tViewTop]==NO) ? NSHeight(tTopFrame) : 0;\n    \n    \n    tBottomFrame.size.height=NSHeight(tSplitViewFrame)-inSplitView.dividerThickness-tTopHeight;\n    \n    if (NSHeight(tBottomFrame)<CUICrashLogsListMinimumHeight)\n    {\n        tBottomFrame.size.height=CUICrashLogsListMinimumHeight;\n        \n        tTopFrame.size.height=NSHeight(tSplitViewFrame)-inSplitView.dividerThickness-NSHeight(tBottomFrame);\n        \n        if (NSHeight(tTopFrame)<CUICrashLogsSourcesMinimumHeight)\n            tTopFrame.size.height=CUICrashLogsSourcesMinimumHeight;\n    }\n    \n    tTopFrame.origin.x=0;\n    tTopFrame.origin.y=0;//NSHeight(tBottomFrame)+inSplitView.dividerThickness;\n    tTopFrame.size.width=NSWidth(tSplitViewFrame);\n    \n    tViewTop.frame=tTopFrame;\n    \n    tBottomFrame.origin.y=NSHeight(tTopFrame)+inSplitView.dividerThickness;\n    tBottomFrame.size.width=NSWidth(tSplitViewFrame);\n    tViewBottom.frame=tBottomFrame;\n}\n\n#pragma mark - NSSplitViewDelegate\n\n- (BOOL)splitView:(NSSplitView *)inSplitView canCollapseSubview:(NSView *)subview\n{\n    return NO;\n}\n\n- (void)splitView:(NSSplitView *)inSplitView resizeSubviewsWithOldSize:(NSSize)oldSize\n{\n    NSArray * tSubviews=inSplitView.subviews;\n    \n    NSView *tViewTop=tSubviews[0];\n    \n    NSRect tTopFrame=tViewTop.frame;\n    \n    [self _splitView:inSplitView resizeSubviewsWithTopHeight:NSHeight(tTopFrame)];\n}\n\n- (CGFloat)splitView:(NSSplitView *)inSplitView constrainMinCoordinate:(CGFloat)proposedMinimumPosition ofSubviewAt:(NSInteger)inDividerIndex\n{\n    if (inDividerIndex==0)\n        return CUICrashLogsSourcesMinimumHeight;\n    \n    return 0;\n}\n\n- (CGFloat)splitView:(NSSplitView *)inSplitView constrainMaxCoordinate:(CGFloat)proposedMin ofSubviewAt:(NSInteger)inDividerIndex\n{\n    if (inDividerIndex==0)\n        return (NSHeight(inSplitView.frame)-(inSplitView.dividerThickness+CUICrashLogsListMinimumHeight));\n    \n    return 0;\n}\n\n- (NSRect)splitView:(NSSplitView *)inSplitView effectiveRect:(NSRect)proposedEffectiveRect forDrawnRect:(NSRect)drawnRect ofDividerAtIndex:(NSInteger)inDividerIndex\n{\n    if (inDividerIndex==0)\n        return _sourcesViewController.effectiveBottonBarRect;\n    \n    return NSZeroRect;\n}\n\n#pragma mark - CUIKeyViews\n\n- (NSView *)firstKeyView\n{\n    return _sourcesViewController.firstKeyView;\n}\n\n- (NSView *)lastKeyView\n{\n    return _listViewController.lastKeyView;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISidebarViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUISidebarViewController\">\n            <connections>\n                <outlet property=\"_crashLogsListContainerView\" destination=\"k3k-Fx-i1m\" id=\"2En-kD-H4T\"/>\n                <outlet property=\"_crashLogsSourcesContainerView\" destination=\"dVl-Hk-CD2\" id=\"Mtu-ZU-j8N\"/>\n                <outlet property=\"_splitView\" destination=\"he9-hC-3Of\" id=\"BLd-5m-nnM\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"314\" height=\"599\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <splitView arrangesAllSubviews=\"NO\" dividerStyle=\"thin\" id=\"he9-hC-3Of\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"314\" height=\"599\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView id=\"dVl-Hk-CD2\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"314\" height=\"153\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                        <customView id=\"k3k-Fx-i1m\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"154\" width=\"314\" height=\"445\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"fHn-Nw-jrt\"/>\n                    </connections>\n                </splitView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-93\" y=\"126.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISourceFileTableCellView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUISourceFileTableCellView : NSTableCellView\n\n @property (assign) IBOutlet NSButton * openButton;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISourceFileTableCellView.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISourceFileTableCellView.h\"\n\n@implementation CUISourceFileTableCellView\n\n- (void)awakeFromNib\n{\n    [super awakeFromNib];\n    \n    if (self.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft)\n    {\n        // Mirror image.\n        NSImage * tOriginalImage=self.openButton.image;\n        NSRect tBounds=self.openButton.bounds;\n        \n        NSImage * newTemplate=[NSImage imageWithSize:tBounds.size\n                                             flipped:NO drawingHandler:^BOOL(NSRect dstRect) {\n                                                 \n                                                 NSAffineTransform * tTransform = [NSAffineTransform transform];\n                                                 \n                                                 [tTransform translateXBy:NSWidth(tBounds) yBy:0];\n                                                 [tTransform scaleXBy:-1.0 yBy:1.0];\n                                                 [tTransform concat];\n                                                 \n                                                 [tOriginalImage drawInRect:dstRect fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n                                                 \n                                                 return YES;\n                                             }];\n        \n        newTemplate.template=YES;\n        \n        self.openButton.image=newTemplate;\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIStackFrame+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIStackFrame.h\"\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUIStackFrameComponents.h\"\n\n@interface CUIStackFrame (UI)\n\n- (NSImage *)binaryImageIcon;\n\n- (NSString *)pasteboardRepresentationWithComponents:(CUIStackFrameComponents)inComponents;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIStackFrame+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUIBinaryImageUtility.h\"\n\n@implementation CUIStackFrame (UI)\n\n- (NSImage *)binaryImageIcon\n{\n    return [CUIBinaryImageUtility iconForIdentifier:self.binaryImageIdentifier];\n}\n\n- (NSString *)pasteboardRepresentationWithComponents:(CUIStackFrameComponents)inComponents\n{\n    NSMutableString * tMutableString=[NSMutableString stringWithFormat:@\"%lu \",self.index];\n    \n    if ((inComponents & CUIStackFrameBinaryNameComponent)!=0)\n        [tMutableString appendFormat:@\"%@ \",self.binaryImageIdentifier];\n    \n    if ((inComponents & CUIStackFrameMachineInstructionAddressComponent)!=0)\n        [tMutableString appendFormat:@\"0x%lx \",self.machineInstructionAddress];\n    \n    [tMutableString appendString:self.symbol];\n    \n    if ((inComponents & CUIStackFrameByteOffsetComponent)!=0)\n        [tMutableString appendFormat:@\" + %lu\",self.byteOffset];\n    \n    return [tMutableString copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIStackFrame.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUISymbolicationData.h\"\n\n#import \"IPSThreadFrame.h\"\n\n#import \"IPSImage.h\"\n\nextern NSString * const CUIStackFrameSymbolicationDidSucceedNotification;\n\n@interface CUIStackFrame : NSObject <NSCopying>\n\n    @property (readonly) NSUInteger index;\n\n    @property (nullable,readonly,copy) NSString * binaryImageIdentifier;\n\n    @property (readonly) NSUInteger machineInstructionAddress;\n\n    @property (readonly,copy) NSString * symbol;\n\n    @property (readonly) NSUInteger byteOffset;\n\n    @property (readonly,copy) NSString * sourceFile;\n\n    @property (readonly) NSUInteger lineNumber;\n\n\n    @property CUISymbolicationData * symbolicationData;\n\n- (instancetype)initWithString:(NSString *)inString error:(NSError **)outError;\n\n- (instancetype)initWithThreadFrame:(IPSThreadFrame *)inFrame atIndex:(NSUInteger)inIndex image:(IPSImage *)inImage error:(NSError **)outError;\n\n- (CUIStackFrame *)stackFrameCloneWithBinaryImageIdentifier:(NSString *)inBinaryImageIdentifier;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIStackFrame.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIStackFrame.h\"\n\nNSString * const CUIStackFrameSymbolicationDidSucceedNotification=@\"CUIStackFrameSymbolicationDidSucceedNotification\";\n\n@interface CUIStackFrame ()\n\n    @property NSUInteger index;\n\n    @property (copy) NSString * binaryImageIdentifier;\n\n    @property NSUInteger machineInstructionAddress;\n\n    @property (copy) NSString * symbol;\n\n    @property NSUInteger byteOffset;\n\n    @property (copy) NSString * sourceFile;\n\n    @property NSUInteger lineNumber;\n\n@end\n\n@implementation CUIStackFrame\n\n- (instancetype)initWithString:(NSString *)inString error:(NSError **)outError\n{\n    if ([inString isKindOfClass:[NSString class]]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSUInteger tLength=inString.length;\n        NSCharacterSet * tWhitespaceCharacterSet=[NSCharacterSet whitespaceCharacterSet];\n        \n        NSScanner * tScanner=[NSScanner scannerWithString:inString];\n        \n        tScanner.charactersToBeSkipped=tWhitespaceCharacterSet;\n        \n        NSInteger tInteger=-1;\n        \n        if ([tScanner scanInteger:&tInteger]==NO)\n            return nil;\n        \n        _index=tInteger;\n        \n        tScanner.charactersToBeSkipped=[NSCharacterSet characterSetWithCharactersInString:@\"\\t\"];\n        \n        NSString * tString=nil;\n        \n        NSUInteger tCurrentScanLocation=tScanner.scanLocation;\n        \n        if ([tScanner scanUpToString:@\"0x\" intoString:&tString]==NO)\n            return nil;\n        \n        if (tScanner.scanLocation==tLength)\n        {\n            // try to find a \\t\n            \n            tScanner.scanLocation=tCurrentScanLocation;\n            \n            if ([tScanner scanUpToString:@\"\\t\" intoString:&tString]==NO)\n                return nil;\n        }\n        \n        _binaryImageIdentifier=[tString stringByTrimmingCharactersInSet:tWhitespaceCharacterSet];\n        \n        tScanner.charactersToBeSkipped=tWhitespaceCharacterSet;\n        \n        unsigned long long tHexaValue=0;\n        \n        if ([tScanner scanHexLongLong:&tHexaValue]==NO)\n            return nil;\n        \n        _machineInstructionAddress=tHexaValue;\n        \n        if ([tScanner scanUpToString:@\" +\" intoString:&tString]==NO)\n            return nil;\n        \n        _symbol=[tString copy];\n        \n        if ([tScanner scanInteger:&tInteger]==NO)\n        {\n            if ([_symbol isEqualToString:@\"???\"]==NO)\n                return nil;\n            \n            tInteger=0;\n        }\n        \n        _byteOffset=tInteger;\n        \n        if (tScanner.scanLocation<(tLength-3))\n        {\n            tScanner.charactersToBeSkipped=nil;\n            \n            if ([tScanner scanUpToString:@\"(\" intoString:NULL]==YES)\n            {\n                tScanner.scanLocation+=1;\n                \n                NSString * tFileReference=nil;\n                \n                if ([tScanner scanUpToString:@\")\" intoString:&tFileReference]==YES)\n                {\n                    NSRange tRange=[tFileReference rangeOfString:@\":\" options:NSBackwardsSearch];\n                    \n                    if (tRange.location==NSNotFound)\n                    {\n                        _sourceFile=[tFileReference copy];\n                    }\n                    else\n                    {\n                        _sourceFile=[tFileReference substringToIndex:tRange.location];\n                        \n                        _lineNumber=[[tFileReference substringFromIndex:tRange.location+1] integerValue];\n                    }\n                }\n            }\n        }\n        \n    }\n    \n    return self;\n}\n\n- (instancetype)initWithThreadFrame:(IPSThreadFrame *)inFrame atIndex:(NSUInteger)inIndex image:(IPSImage *)inImage error:(NSError **)outError\n{\n    if ([inFrame isKindOfClass:[IPSThreadFrame class]]==NO ||\n        [inImage isKindOfClass:[IPSImage class]]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _index=inIndex;\n        \n        _binaryImageIdentifier=[(inImage.bundleIdentifier!=nil) ? inImage.bundleIdentifier : inImage.name copy];\n        \n        _machineInstructionAddress=inImage.loadAddress+inFrame.imageOffset;\n        \n        if (inFrame.symbol!=nil)\n        {\n            _symbol=[inFrame.symbol copy];\n            _byteOffset=inFrame.symbolLocation;\n        }\n        else\n        {\n            _symbol=[NSString stringWithFormat:@\"0x%lx\",(unsigned long)inImage.loadAddress];\n            \n            _byteOffset=_machineInstructionAddress-inImage.loadAddress;\n        }\n        \n        _sourceFile=[inFrame.sourceFile copy];\n        \n        _lineNumber=inFrame.sourceLine;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (CUIStackFrame *)stackFrameCloneWithBinaryImageIdentifier:(NSString *)inBinaryImageIdentifier\n{\n    CUIStackFrame * tStackFrameClone=[self copy];\n    \n    tStackFrameClone.binaryImageIdentifier=inBinaryImageIdentifier;\n    \n    return tStackFrameClone;\n}\n\n\n#pragma mark -\n\n- (NSString *)description\n{\n    return [NSString stringWithFormat:@\"%lu %@ 0x%lx %@ + %lu\",self.index,self.binaryImageIdentifier,(unsigned long)self.machineInstructionAddress,self.symbol,self.byteOffset];\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUIStackFrame * nStackFrame=[CUIStackFrame new];\n    \n    nStackFrame.index=self.index;\n    \n    nStackFrame.binaryImageIdentifier=[self.binaryImageIdentifier copy];\n    \n    nStackFrame.machineInstructionAddress=self.machineInstructionAddress;\n    \n    nStackFrame.symbol=[self.symbol copy];\n    \n    nStackFrame.byteOffset=self.byteOffset;\n    \n    nStackFrame.sourceFile=[self.sourceFile copy];\n    \n    nStackFrame.lineNumber=self.lineNumber;\n    \n    return nStackFrame;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIStackFrameComponents.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import <Foundation/Foundation.h>\n\ntypedef NS_OPTIONS(NSUInteger, CUIStackFrameComponents)\n{\n    CUIStackFrameBinaryNameComponent = 1 << 0,\n    CUIStackFrameMachineInstructionAddressComponent = 1 << 1,\n    CUIStackFrameByteOffsetComponent = 1 << 2,\n    \n    CUIStackFrameAllComponents=0x7\n};\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationData.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\ntypedef NS_ENUM(NSUInteger, CUISymbolicationDataLookUpResult)\n{\n    CUISymbolicationDataLookUpResultError=-1,\n    CUISymbolicationDataLookUpResultNotFound=0,\n    CUISymbolicationDataLookUpResultFound,\n    CUISymbolicationDataLookUpResultFoundInCache\n};\n\n\n@interface CUISymbolicationData : NSObject\n\n    @property (copy) NSString * stackFrameSymbol;\n\n    @property NSUInteger byteOffset;\n\n    @property (copy) NSString * sourceFilePath;\n\n    @property NSUInteger lineNumber;\n\n    @property NSUInteger columnNumber;\n\n@end\n\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationData.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISymbolicationData.h\"\n\n@implementation CUISymbolicationData\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationDataCache.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUISymbolicationData.h\"\n\n@interface CUISymbolicationDataCache : NSObject\n\n+ (CUISymbolicationDataCache *)sharedCache;\n\n- (CUISymbolicationData *)symbolicationDataForAddress:(uint64_t)inAddress binary:(NSString *)inBinaryUUID;\n\n- (void)setSymbolicationData:(CUISymbolicationData *)inSymbolicationData forAddress:(uint64_t)inAddress binary:(NSString *)inBinaryUUID;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationDataCache.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISymbolicationDataCache.h\"\n\n#include <pthread.h>\n\n@interface CUISymbolicationDataCache ()\n{\n    NSCache * _cache;\n    \n    pthread_rwlock_t _readWriteLock;\n}\n\n@end\n\n@implementation CUISymbolicationDataCache\n\n+ (CUISymbolicationDataCache *)sharedCache\n{\n    static CUISymbolicationDataCache * sSymbolsCache=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSymbolsCache=[CUISymbolicationDataCache new];\n        \n    });\n    \n    return sSymbolsCache;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        if (pthread_rwlock_init(&_readWriteLock, NULL)!=0)\n        {\n            NSLog(@\"Unable to initialize read-write lock\");\n            \n            \n            return nil;\n        }\n        \n        _cache=[NSCache new];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (CUISymbolicationData *)symbolicationDataForAddress:(uint64_t)inAddress binary:(NSString *)inBinaryUUID\n{\n    if (inBinaryUUID==nil)\n        return nil;\n    \n    NSCache * tAddressesCache=[_cache objectForKey:inBinaryUUID];\n    \n    if (tAddressesCache==nil)\n        return nil;\n    \n    return [tAddressesCache objectForKey:@(inAddress)];\n}\n\n- (void)setSymbolicationData:(CUISymbolicationData *)inSymbolicationData forAddress:(uint64_t)inAddress binary:(NSString *)inBinaryUUID\n{\n    if (inSymbolicationData==nil || inBinaryUUID==nil)\n        return;\n    \n    NSCache * tAddressesCache=[_cache objectForKey:inBinaryUUID];\n    \n    if (tAddressesCache==nil)\n    {\n        tAddressesCache=[NSCache new];\n        \n        if (tAddressesCache==nil)\n            return;\n        \n        [_cache setObject:tAddressesCache forKey:inBinaryUUID];\n    }\n    \n    [tAddressesCache setObject:inSymbolicationData forKey:@(inAddress)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationDataFormatter.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUISymbolicationData.h\"\n\ntypedef NS_ENUM(NSUInteger, CUISymbolicationDataFormatterStyle)\n{\n    CUISymbolicationDataFormatterNoStyle = 0,               /*                                                     */\n    CUISymbolicationDataFormatterShortStyle = 1,            /* symbol        file.x              L[C]              */\n    CUISymbolicationDataFormatterFullStyle = 4              /* symbol + O    /full/path/file.x   line L : column C */\n};\n\ntypedef NS_OPTIONS(NSUInteger, CUISymbolicationDataFormatterOptions)\n{\n    CUISymbolicationDataFormatterOptionAlwaysHidesColumnNumber = 0x01,\n    \n    CUISymbolicationDataFormatterOptionDefaults=CUISymbolicationDataFormatterOptionAlwaysHidesColumnNumber\n    \n};\n\n@interface CUISymbolicationDataFormatter : NSFormatter\n\n    @property CUISymbolicationDataFormatterStyle symbolStyle;\n\n    @property CUISymbolicationDataFormatterStyle pathStyle;\n\n    @property CUISymbolicationDataFormatterStyle coordinatesStyle;\n\n    @property CUISymbolicationDataFormatterOptions options;\n\n+ (NSString *)localizedStringFromSymbolicationData:(CUISymbolicationData *)inSymbolicationData symbolStyle:(CUISymbolicationDataFormatterStyle)inSymbolStyle pathStyle:(CUISymbolicationDataFormatterStyle)inPathStyle coordinatesStyle:(CUISymbolicationDataFormatterStyle)inCoordinatesStyle options:(CUISymbolicationDataFormatterOptions)inOptions;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationDataFormatter.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISymbolicationDataFormatter.h\"\n\n@implementation CUISymbolicationDataFormatter\n\n+ (NSString *)localizedStringFromSymbolicationData:(CUISymbolicationData *)inSymbolicationData symbolStyle:(CUISymbolicationDataFormatterStyle)inSymbolStyle pathStyle:(CUISymbolicationDataFormatterStyle)inPathStyle coordinatesStyle:(CUISymbolicationDataFormatterStyle)inCoordinatesStyle options:(CUISymbolicationDataFormatterOptions)inOptions\n{\n    CUISymbolicationDataFormatter * tFormatter=[CUISymbolicationDataFormatter new];\n    \n    tFormatter.symbolStyle=inSymbolStyle;\n    tFormatter.pathStyle=inPathStyle;\n    tFormatter.coordinatesStyle=inCoordinatesStyle;\n    tFormatter.options=inOptions;\n    \n    return [tFormatter stringForObjectValue:inSymbolicationData];\n}\n\n#pragma mark -\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _symbolStyle=CUISymbolicationDataFormatterFullStyle;\n        _pathStyle=CUISymbolicationDataFormatterShortStyle;\n        _coordinatesStyle=CUISymbolicationDataFormatterShortStyle;\n        \n        _options=CUISymbolicationDataFormatterOptionDefaults;\n    }\n    \n    return self;\n}\n\n- (NSString *)stringForObjectValue:(CUISymbolicationData *)inSymbolicationData\n{\n    if ([inSymbolicationData isKindOfClass:CUISymbolicationData.class]==NO)\n        return nil;\n    \n    NSMutableString * tMutableString=[NSMutableString string];\n    \n    // stack frame symbol\n    \n    switch(self.symbolStyle)\n    {\n        case CUISymbolicationDataFormatterNoStyle:\n            \n            break;\n            \n        case CUISymbolicationDataFormatterShortStyle:\n            \n            [tMutableString appendFormat:@\"%@\",inSymbolicationData.stackFrameSymbol];\n            \n            break;\n            \n        case CUISymbolicationDataFormatterFullStyle:\n            \n            [tMutableString appendFormat:@\"%@ + %lu\",inSymbolicationData.stackFrameSymbol,inSymbolicationData.byteOffset];\n            \n            break;\n    }\n    \n    // source file\n    \n    if (self.pathStyle==CUISymbolicationDataFormatterNoStyle)\n        return [tMutableString copy];\n    \n    if (self.symbolStyle!=CUISymbolicationDataFormatterNoStyle)\n        [tMutableString appendString:@\" (\"];\n    \n    switch(self.pathStyle)\n    {\n        case CUISymbolicationDataFormatterShortStyle:\n            \n            [tMutableString appendFormat:@\"%@\",inSymbolicationData.sourceFilePath.lastPathComponent];\n            \n            break;\n            \n        case CUISymbolicationDataFormatterFullStyle:\n            \n            [tMutableString appendFormat:@\"%@\",inSymbolicationData.sourceFilePath];\n            \n            break;\n            \n        default:\n            \n            break;\n    }\n    \n    if (self.coordinatesStyle==CUISymbolicationDataFormatterNoStyle || inSymbolicationData.lineNumber==0)\n    {\n        if (self.symbolStyle!=CUISymbolicationDataFormatterNoStyle)\n            [tMutableString appendString:@\")\"];\n        \n        return [tMutableString copy];\n    }\n    \n    switch(self.coordinatesStyle)\n    {\n        case CUISymbolicationDataFormatterShortStyle:\n            \n            [tMutableString appendFormat:@\":%lu\",inSymbolicationData.lineNumber];\n            \n            break;\n            \n        case CUISymbolicationDataFormatterFullStyle:\n            \n            [tMutableString appendFormat:@\" - %@ %lu\",NSLocalizedString(@\"line\",@\"\"),inSymbolicationData.lineNumber];\n            \n            break;\n            \n        default:\n            \n            break;\n    }\n    \n    if ((self.options & CUISymbolicationDataFormatterOptionAlwaysHidesColumnNumber)==0 && inSymbolicationData.columnNumber!=0)\n    {\n        switch(self.coordinatesStyle)\n        {\n            case CUISymbolicationDataFormatterShortStyle:\n                \n                [tMutableString appendFormat:@\"[%lu]\",inSymbolicationData.columnNumber];\n                \n                break;\n                \n            case CUISymbolicationDataFormatterFullStyle:\n                \n                [tMutableString appendFormat:@\" : %@ %lu\",NSLocalizedString(@\"column\",@\"\"),inSymbolicationData.columnNumber];\n                \n                break;\n                \n            default:\n                \n                break;\n        }\n    }\n    \n    if (self.symbolStyle!=CUISymbolicationDataFormatterNoStyle)\n        [tMutableString appendString:@\")\"];\n    \n    return [tMutableString copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationManager.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUISymbolicationData.h\"\n\n@interface CUISymbolicationManager : NSObject\n\n+ (CUISymbolicationManager *)sharedSymbolicationManager;\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(NSUInteger)inAddress binaryUUID:(NSString *)inBinaryUUID completionHandler:(void (^)(CUISymbolicationDataLookUpResult bLookUpResult,CUISymbolicationData * bSymbolicationData))handler;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolicationManager.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISymbolicationManager.h\"\n\n#import \"CUISymbolicationDataCache.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n@interface CUISymbolicationManager ()\n{\n    CUISymbolicationDataCache * _cache;\n    \n    CUIdSYMBundlesManager * _bundlesManager;\n}\n\n@end\n\n@implementation CUISymbolicationManager\n\n+ (CUISymbolicationManager *)sharedSymbolicationManager\n{\n    static CUISymbolicationManager *sSymbolicationManager=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSymbolicationManager=[CUISymbolicationManager new];\n        \n    });\n    \n    return sSymbolicationManager;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cache=[CUISymbolicationDataCache sharedCache];\n        \n        _bundlesManager=[CUIdSYMBundlesManager sharedManager];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(NSUInteger)inAddress binaryUUID:(NSString *)inBinaryUUID completionHandler:(void (^)(CUISymbolicationDataLookUpResult bLookUpResult,CUISymbolicationData * bSymbolicationData))handler;\n{\n    CUISymbolicationData * tData=[_cache symbolicationDataForAddress:inAddress binary:inBinaryUUID];\n    \n    if (tData!=nil)\n    {\n        if (handler!=nil)\n            handler(CUISymbolicationDataLookUpResultFoundInCache,tData);\n        \n        return;\n    }\n    \n    CUIdSYMBundle * tBundle=[_bundlesManager bundleForBinaryUUID:inBinaryUUID];\n    \n    if (tBundle==nil)\n    {\n        if (handler!=nil)\n            handler(CUISymbolicationDataLookUpResultNotFound,tData);\n        \n        return;\n    }\n    \n    [tBundle lookUpSymbolicationDataForMachineInstructionAddress:inAddress binaryUUID:inBinaryUUID completionHandler:handler];\n}\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolsFilesLibraryViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUISymbolsFilesLibraryViewController : NSViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUISymbolsFilesLibraryViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISymbolsFilesLibraryViewController.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUIdSYMBundle.h\"\n#import \"CUIdSYMBundle+UI.h\"\n\n#import \"NSArray+WBExtensions.h\"\n#import \"NSTableView+Selection.h\"\n\n@interface CUISymbolsFilesLibraryViewController () <NSMenuItemValidation,NSTableViewDataSource,NSTableViewDelegate>\n{\n    IBOutlet NSTableView * _tableView;\n    \n    IBOutlet NSButton * _removeButton;\n    \n    IBOutlet NSSearchField * _filterField;\n    \n    NSImage * _cachedBundleIcon;\n    \n    CUIdSYMBundlesManager * _dSYMBundlesManager;\n    \n    NSMutableArray<CUIdSYMBundle *> * _filteredAndSortedBundlesArray;\n    \n    NSString * _filterPattern;\n}\n\n- (IBAction)addDebuggingSymbolsFile:(id)sender;\n\n- (IBAction)delete:(id)sender;\n\n- (IBAction)showInFinder:(id)sender;\n\n- (IBAction)takeFilterPatternFrom:(NSSearchField *)sender;\n\n// Notifications\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification;\n\n- (void)dSYMBundlesManagerDidRemoveBundles:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUISymbolsFilesLibraryViewController\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _dSYMBundlesManager=[CUIdSYMBundlesManager sharedManager];\n        \n        _filterPattern=@\"\";\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)nibName\n{\n    return @\"CUISymbolsFilesLibraryViewController\";\n}\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _cachedBundleIcon=[[NSWorkspace sharedWorkspace] iconForFileType:@\"com.apple.xcode.dsym\"];\n    \n    [_tableView registerForDraggedTypes:@[NSPasteboardTypeFileURL]];\n    \n    NSSortDescriptor *buildETASortDescriptor = [[NSSortDescriptor alloc] initWithKey:@\"self\" ascending:YES selector:@selector(compareNameAndVersion:)];\n    \n    _tableView.sortDescriptors=@[buildETASortDescriptor];\n    \n    \n    _filterField.centersPlaceholder=NO;\n    \n    NSSearchFieldCell * tSearchFieldCell=_filterField.cell;\n    NSButtonCell * tButtonCell=tSearchFieldCell.searchButtonCell;\n    \n    tButtonCell.image=[NSImage imageNamed:@\"filter_Template\"];\n    tButtonCell.alternateImage=tButtonCell.image;\n    \n    \n    _filteredAndSortedBundlesArray=[_dSYMBundlesManager.bundlesSet.allObjects mutableCopy];\n}\n\n- (void)viewWillAppear\n{\n    [super viewWillAppear];\n    \n    [self refreshList];\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    // Register for notifications\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(dSYMBundlesManagerDidAddBundles:) name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(dSYMBundlesManagerDidRemoveBundles:) name:CUIdSYMBundlesManagerDidRemoveBundlesNotification object:nil];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:CUIdSYMBundlesManagerDidRemoveBundlesNotification object:nil];\n}\n\n#pragma mark -\n\n- (void)refreshList\n{\n    NSIndexSet * tIndexSet=_tableView.selectedRowIndexes;\n    \n    NSArray * tSelectedItems=[_filteredAndSortedBundlesArray objectsAtIndexes:tIndexSet];\n    \n    NSArray * tSelectedPaths=[tSelectedItems WB_arrayByMappingObjectsUsingBlock:^id(CUIdSYMBundle * bBundle, NSUInteger bIndex) {\n        \n        return bBundle.bundlePath;\n        \n    }];\n    \n    NSSet * tSet=_dSYMBundlesManager.bundlesSet;\n    \n    if (_filterPattern.length>0)\n    {\n        _filteredAndSortedBundlesArray=[NSMutableArray array];\n        \n        [tSet enumerateObjectsUsingBlock:^(CUIdSYMBundle * bBundle, BOOL * bOutStop) {\n            \n            if ([bBundle.bundlePath.lastPathComponent rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n            {\n                [self->_filteredAndSortedBundlesArray addObject:bBundle];\n                return;\n            }\n            \n            for(NSString * tUUID in bBundle.binaryUUIDs)\n            {\n                if ([tUUID rangeOfString:self->_filterPattern options:NSCaseInsensitiveSearch].location!=NSNotFound)\n                {\n                    [self->_filteredAndSortedBundlesArray addObject:bBundle];\n                    return;\n                }\n            }\n        }];\n    }\n    else\n    {\n        _filteredAndSortedBundlesArray=[tSet.allObjects mutableCopy];\n    }\n    \n    [_filteredAndSortedBundlesArray sortUsingDescriptors: _tableView.sortDescriptors];\n    \n    [_tableView deselectAll:self];\n    \n    [_tableView reloadData];\n    \n    NSMutableIndexSet * tNewSelectionIndexSet=[NSMutableIndexSet indexSet];\n    \n    [_filteredAndSortedBundlesArray enumerateObjectsUsingBlock:^(CUIdSYMBundle * bBundle, NSUInteger bIndex,BOOL * bOutStop) {\n        \n        if ([tSelectedPaths containsObject:bBundle.bundlePath]==YES)\n            [tNewSelectionIndexSet addIndex:bIndex];\n        \n    }];\n    \n    if (tNewSelectionIndexSet.count>0)\n    {\n        [_tableView selectRowIndexes:tNewSelectionIndexSet byExtendingSelection:NO];\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    if (tAction==@selector(delete:))\n    {\n        NSIndexSet * tIndexSet=[_tableView WB_selectedOrClickedRowIndexes];\n        \n        return (tIndexSet.count>=1);\n    }\n    \n    if (tAction==@selector(selectAll:))\n        return (_filteredAndSortedBundlesArray.count>0);\n    \n    if (tAction==@selector(showInFinder:))\n    {\n        NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n        \n        if (tSelectionIndexSet.count==0)\n            return NO;\n        \n        NSArray * tBundles=_filteredAndSortedBundlesArray;\n        \n        __block BOOL tResult=YES;\n        \n        [tSelectionIndexSet enumerateIndexesUsingBlock:^(NSUInteger bIndex,BOOL * bOutStop){\n            \n            CUIdSYMBundle * tBundle=tBundles[bIndex];\n            \n            NSString * tPath=tBundle.bundlePath;\n            \n            if (tPath.length==0 ||\n                [[NSFileManager defaultManager] fileExistsAtPath:tPath]==NO)\n            {\n                tResult=NO;\n                \n                *bOutStop=NO;\n                return;\n            }\n        }];\n        \n        return tResult;\n    }\n    \n    return YES;\n}\n\n- (IBAction)addDebuggingSymbolsFile:(id)sender\n{\n    NSOpenPanel * tOpenPanel=[NSOpenPanel openPanel];\n    tOpenPanel.prompt=NSLocalizedString(@\"Add\",@\"\");\n    tOpenPanel.canChooseFiles=YES;\n    tOpenPanel.canChooseDirectories=NO;\n    tOpenPanel.allowsMultipleSelection=YES;\n    tOpenPanel.allowedFileTypes=@[@\"dSYM\"];\n    \n    [tOpenPanel beginSheetModalForWindow:self.view.window completionHandler:^(NSModalResponse bReturnCode) {\n        \n        if (bReturnCode==NSModalResponseCancel)\n            return;\n    \n        CUIdSYMBundlesManager * tBundlesManager=[CUIdSYMBundlesManager sharedManager];\n        \n        NSArray * tFilteredBundles=[tOpenPanel.URLs WB_arrayByMappingObjectsLenientlyUsingBlock:^CUIdSYMBundle *(NSURL * bURL, NSUInteger bIndex) {\n            \n            CUIdSYMBundle * tBundle=[CUIdSYMBundle bundleWithURL:bURL];\n            \n            if (tBundle.isDSYMBundle==NO)\n                return nil;\n            \n            if ([tBundlesManager containsBundle:tBundle]==YES)\n                return nil;\n            \n            return tBundle;\n        }];\n        \n        \n        if (tFilteredBundles.count==0)\n        {\n            NSBeep();\n            \n            return;\n        }\n    \n        dispatch_async(dispatch_get_main_queue(), ^{\n            \n            [tBundlesManager addBundles:tFilteredBundles];\n    \n            // Select new bundles\n        \n            NSIndexSet * tIndexSet=[self->_filteredAndSortedBundlesArray indexesOfObjectsPassingTest:^BOOL(CUIdSYMBundle * bBundle, NSUInteger bIndex, BOOL * bOutStop) {\n                \n                return [tFilteredBundles containsObject:bBundle];\n            }];\n            \n            [self->_tableView selectRowIndexes:tIndexSet byExtendingSelection:NO];\n        });\n    }];\n}\n\n- (IBAction)delete:(id)sender\n{\n    NSIndexSet * tIndexSet=[_tableView WB_selectedOrClickedRowIndexes];\n    \n    if (tIndexSet.count==0)\n        return;\n    \n    NSArray * tSelectedBundles=[_filteredAndSortedBundlesArray objectsAtIndexes:tIndexSet];\n    \n    [_tableView deselectAll:nil];\n    \n    [_dSYMBundlesManager removeBundles:tSelectedBundles];\n}\n\n- (IBAction)showInFinder:(id)sender\n{\n    NSIndexSet * tSelectionIndexSet=_tableView.WB_selectedOrClickedRowIndexes;\n    \n    NSWorkspace * tSharedWorkspace=[NSWorkspace sharedWorkspace];\n    \n    [_filteredAndSortedBundlesArray enumerateObjectsAtIndexes:tSelectionIndexSet options:0 usingBlock:^(CUIdSYMBundle * bBundle, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        NSString * tPath=bBundle.bundlePath;\n        \n        if (tPath.length>0)\n            [tSharedWorkspace selectFile:tPath inFileViewerRootedAtPath:@\"\"];\n        \n    }];\n}\n\n- (IBAction)takeFilterPatternFrom:(NSSearchField *)sender\n{\n    _filterPattern=sender.stringValue;\n    \n    [self refreshList];\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n    if (inTableView==_tableView)\n        return _filteredAndSortedBundlesArray.count;\n    \n    return 0;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    NSString * tTableColumnIdentifier=inTableColumn.identifier;\n    NSTableCellView * tTableCellView=[inTableView makeViewWithIdentifier:tTableColumnIdentifier owner:self];\n    \n    CUIdSYMBundle * tBundle=_filteredAndSortedBundlesArray[inRow];\n    \n    if (inTableView==_tableView)\n    {\n        if ([tTableColumnIdentifier isEqualToString:@\"name\"]==YES)\n        {\n            tTableCellView.imageView.image=_cachedBundleIcon;\n            \n            tTableCellView.textField.stringValue=tBundle.displayName;\n            tTableCellView.textField.toolTip=tBundle.bundlePath;\n        }\n        else if ([tTableColumnIdentifier isEqualToString:@\"version\"]==YES)\n        {\n            tTableCellView.textField.stringValue=tBundle.displayVersion;\n        }\n        else if ([tTableColumnIdentifier isEqualToString:@\"uuids\"]==YES)\n        {\n            NSArray * tUUIDs=[tBundle binaryUUIDs];\n            \n            tTableCellView.textField.stringValue=[tUUIDs componentsJoinedByString:@\". \"];\n        }\n        \n        tTableCellView.textField.editable=NO;\n        \n        return tTableCellView;\n    }\n    \n    return nil;\n}\n\n- (void)tableView:(NSTableView *)inTableView sortDescriptorsDidChange:(NSArray *)inOldDescriptors\n{\n    [self refreshList];\n}\n\n\n#pragma mark - Drag and Drop support\n\n- (NSDragOperation)tableView:(NSTableView *)inTableView validateDrop:(id <NSDraggingInfo>)info proposedRow:(NSInteger)inRow proposedDropOperation:(NSTableViewDropOperation)inDropOperation\n{\n    if (inDropOperation==NSTableViewDropOn)\n        return NSDragOperationNone;\n    \n    NSPasteboard * tPasteBoard=[info draggingPasteboard];\n    \n    if ([tPasteBoard availableTypeFromArray:@[NSPasteboardTypeFileURL]]==nil)\n        return NSDragOperationNone;\n    \n    NSArray<Class> *tClasses = @[NSURL.class];\n    NSArray<NSURL*> *tURLArray = [tPasteBoard readObjectsForClasses:tClasses\n                                                            options:@{NSPasteboardURLReadingFileURLsOnlyKey:@(YES)}];\n    \n    if (tURLArray==nil)\n    {\n        // We were provided invalid data\n        \n        NSLog(@\"Unable to validate drop. Unexpected type of data\");\n        \n        return NSDragOperationNone;\n    }\n    \n    if (tURLArray.count!=1)\n        return NSDragOperationNone;\n    \n    for(NSURL * tURL in tURLArray)\n    {\n        NSNumber *tIsDirectoryNumber;\n        \n        if ([tURL getResourceValue:&tIsDirectoryNumber forKey:NSURLIsDirectoryKey error:NULL]==NO)\n            return NSDragOperationNone;\n        \n        if (tIsDirectoryNumber.boolValue==NO)\n            return NSDragOperationNone;\n\n        // Should have .crash extension\n        \n        if ([tURL.pathExtension caseInsensitiveCompare:@\"dSYM\"]!=NSOrderedSame)\n            return NSDragOperationNone;\n        \n        // Do not have the same dSYM twice\n        \n        for(CUIdSYMBundle * tBundle in _filteredAndSortedBundlesArray)\n        {\n            if ([tBundle.bundleURL isEqual:tURL]==YES)\n                return NSDragOperationNone;\n        }\n    }\n    \n    // Check that these are dSYM bundles and that the UUIDs are not already listed\n    \n    CUIdSYMBundlesManager * tBundlesManager=[CUIdSYMBundlesManager sharedManager];\n    \n    for(NSURL * tURL in tURLArray)\n    {\n        CUIdSYMBundle * tBundle=[[CUIdSYMBundle alloc] initWithURL:tURL];\n        \n        if (tBundle.isDSYMBundle==NO)\n            return NSDragOperationNone;\n        \n        if ([tBundlesManager containsBundle:tBundle]==YES)\n            return NSDragOperationNone;\n    }\n    \n    [_tableView setDropRow:-1 dropOperation:NSTableViewDropOn];\n    \n    return NSDragOperationCopy;\n}\n\n- (BOOL)tableView:(NSTableView *)inTableView acceptDrop:(id <NSDraggingInfo>)info row:(NSInteger)inRow dropOperation:(NSTableViewDropOperation)inDropOperation\n{\n    if (inTableView!=_tableView)\n        return NO;\n    \n    NSPasteboard * tPasteBoard=[info draggingPasteboard];\n    \n    if ([tPasteBoard availableTypeFromArray:@[NSPasteboardTypeFileURL]]==nil)\n        return NO;\n    \n    NSArray<Class> *tClasses = @[NSURL.class];\n    NSArray<NSURL*> *tURLArray = [tPasteBoard readObjectsForClasses:tClasses\n                                                            options:@{NSPasteboardURLReadingFileURLsOnlyKey:@(YES)}];\n    \n    NSArray * tNewBundles=[tURLArray WB_arrayByMappingObjectsUsingBlock:^id(NSURL * bURL, NSUInteger bIndex) {\n        \n        return [[CUIdSYMBundle alloc] initWithURL:bURL];\n    }];\n    \n    if (tNewBundles==nil)\n        return NO;\n    \n    [_tableView deselectAll:nil];\n    \n    CUIdSYMBundlesManager * tBundlesManager=[CUIdSYMBundlesManager sharedManager];\n    \n    [tBundlesManager addBundles:tNewBundles];\n    \n    return YES;\n}\n\n#pragma mark - Notifications\n\n- (void)tableViewSelectionDidChange:(NSNotification *)inNotification\n{\n    NSIndexSet * tIndexSet=_tableView.selectedRowIndexes;\n    \n    if (tIndexSet.count==0)\n    {\n        _removeButton.enabled=NO;\n        \n        return;\n    }\n    \n    _removeButton.enabled=YES;\n}\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification\n{\n    [self refreshList];\n}\n\n- (void)dSYMBundlesManagerDidRemoveBundles:(NSNotification *)inNotification\n{\n    [self refreshList];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITableCustomSelectionColorRowView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUITableCustomSelectionColorRowView : NSTableRowView\n\n    @property NSColor * selectionColor;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITableCustomSelectionColorRowView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUITableCustomSelectionColorRowView.h\"\n\n@implementation CUITableCustomSelectionColorRowView\n\n- (void)drawSelectionInRect:(NSRect)dirtyRect\n{\n    [self.selectionColor set];\n    \n    NSRectFillUsingOperation(dirtyRect, NSCompositingOperationSourceOver);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITableViewNoSpace.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nNS_ASSUME_NONNULL_BEGIN\n\n@interface CUITableViewNoSpace : NSTableView\n\n@end\n\nNS_ASSUME_NONNULL_END\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITableViewNoSpace.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUITableViewNoSpace.h\"\n\n@implementation CUITableViewNoSpace\n\n- (void)keyDown:(NSEvent *)inEvent\n{\n    NSString * tTypedText=inEvent.characters;\n\n    NSUInteger tLength=tTypedText.length;\n\n    for(NSUInteger tIndex=0;tIndex<tLength;tIndex++)\n    {\n        unichar tChar=[tTypedText characterAtIndex:tIndex];\n        \n        switch(tChar)\n        {\n            case ' ':\n            case 'b':\n                \n                [NSNotificationCenter.defaultCenter postNotificationName:@\"windowDidNotHandleKeyEventNotification\" object:self.window userInfo:@{@\"Event\":[NSApp currentEvent]}];\n                return;\n        }\n    }\n\n    [super keyDown:inEvent];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITerminationReasonPopUpViewController.h",
    "content": "//\n//  CUITerminationReasonPopUpViewController.h\n//  Unexpectedly\n//\n//  Created by stephane on 02/06/2022.\n//  Copyright © 2022 Acme, Inc. All rights reserved.\n//\n\n#import \"CUIQuickHelpPopUpViewController.h\"\n\n@interface CUITerminationReasonPopUpViewController : CUIQuickHelpPopUpViewController\n\n@property (readonly,copy) NSString * namespace;\n\n@property (readonly) NSUInteger code;\n\n- (void)setNamespace:(NSString *)inNameSpace code:(NSUInteger)inCode;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITerminationReasonPopUpViewController.m",
    "content": "//\n//  CUITerminationReasonPopUpViewController.m\n//  Unexpectedly\n//\n//  Created by stephane on 02/06/2022.\n//  Copyright © 2022 Acme, Inc. All rights reserved.\n//\n\n#import \"CUITerminationReasonPopUpViewController.h\"\n\n@interface CUITerminationReasonPopUpViewController ()\n\n@property (copy) NSString * namespace;\n\n@property NSUInteger code;\n\n@end\n\n@implementation CUITerminationReasonPopUpViewController\n\n- (void)setNamespace:(NSString *)inNameSpace code:(NSUInteger)inCode;\n{\n    NSURL * tURL=nil;\n    \n    inNameSpace=@\"ENDPOINTSECURITY\";\n    inCode=2;\n    \n    if (inNameSpace!=nil && inCode!=NSNotFound)\n    {\n        tURL=[self.bundle URLForResource:[NSString stringWithFormat:@\"%@_%lu\",inNameSpace,(unsigned long)inCode] withExtension:@\"html\"];\n    }\n    \n    if (tURL==nil)\n    {\n        // Use no documentation file\n        \n        tURL=[self.bundle URLForResource:@\"unknown_termination_reason\" withExtension:@\"html\"];\n    }\n    \n    self.contentsFileURL=tURL;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITextModeDisplaySettings.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIStackFrameComponents.h\"\n\ntypedef NS_OPTIONS(NSUInteger, CUIDocumentSections)\n{\n    CUIDocumentHeaderSection = 1 << 0,\n    CUIDocumentExceptionInformationSection = 1 << 1,\n    CUIDocumentDiagnosticMessagesSection = 1 << 2,\n    CUIDocumentBacktracesSection = 1 << 3,\n    CUIDocumentThreadStateSection = 1 << 4,\n    CUIDocumentBinaryImagesSection = 1 << 5,\n    \n    \n    CUIDocumentAllSections=0x3F,\n    \n    // Sub-sections\n    \n    CUIDocumentBacktraceCrashedThreadSubSection = 1 << 24\n};\n\n\n@interface CUITextModeDisplaySettings : NSObject <NSCopying>\n\n    @property CUIDocumentSections visibleSections;\n\n    @property CUIStackFrameComponents visibleStackFrameComponents;\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inDictionary;\n\n- (NSDictionary *)representation;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITextModeDisplaySettings.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUITextModeDisplaySettings.h\"\n\n//NSString * const CUITextModeDisplaySettingsHyperlinksKey=@\"hyperlinks\";\n\nNSString * const CUITextModeDisplaySettingsVisibleSectionKey=@\"sections.visible\";\n\nNSString * const CUITextModeDisplaySettingsVisibleStackFrameComponentsKey=@\"stack-frame.components.visible\";\n\n@implementation CUITextModeDisplaySettings\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inDictionary\n{\n    if ([inDictionary isKindOfClass:NSDictionary.class]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSNumber * tNumber=inDictionary[CUITextModeDisplaySettingsVisibleSectionKey];\n        \n        if ([tNumber isKindOfClass:NSNumber.class]==NO)\n            return nil;\n        \n        _visibleSections=tNumber.unsignedIntegerValue;\n        \n        \n        tNumber=inDictionary[CUITextModeDisplaySettingsVisibleStackFrameComponentsKey];\n        \n        if ([tNumber isKindOfClass:NSNumber.class]==NO)\n            return nil;\n        \n        _visibleStackFrameComponents=tNumber.unsignedIntegerValue;\n    }\n    \n    return self;\n}\n\n- (NSDictionary *)representation\n{\n    return @{\n             CUITextModeDisplaySettingsVisibleSectionKey:@(self.visibleSections),\n             CUITextModeDisplaySettingsVisibleStackFrameComponentsKey:@(self.visibleStackFrameComponents)\n             };\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(NSZone *)zone\n{\n    CUITextModeDisplaySettings * nSettings=[CUITextModeDisplaySettings new];\n    \n    nSettings.visibleSections=self.visibleSections;\n    \n    nSettings.visibleStackFrameComponents=self.visibleStackFrameComponents;\n    \n    return nSettings;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITheme.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUIThemeItemsGroup.h\"\n\n@class CUITheme;\n\n@protocol CUIThemesProvider <NSObject>\n\n- (NSArray<CUITheme *> *)allThemes;\n\n- (CUITheme *)currentTheme;\n\n@end\n\n@protocol CUIThemeDelegate <NSObject>\n\n- (void)theme:(CUITheme *)inTheme didRenameTo:(NSString *)inNewName;\n\n@end\n\n@interface CUITheme : NSObject <NSCopying>\n\n    @property (readonly,copy) NSString * UUID;\n\n    @property (copy) NSString * name;\n\n    @property (readonly,getter=isMonochrome) BOOL monochrome;\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation;\n\n- (NSDictionary *)representation;\n\n- (NSDictionary *)exportedRepresentation;\n\n@property (nonatomic,readonly) NSArray * allItemsGroups;\n\n- (CUIThemeItemsGroup *)itemsGroupWithIdentifier:(NSString *)inIdentifier;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUITheme.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUITheme.h\"\n\n#import \"NSDictionary+WBExtensions.h\"\n\nNSString * const CUIThemeNameKey=@\"name\";\n\nNSString * const CUIThemeUUIDKey=@\"UUID\";\n\nNSString * const CUIThemeMonochromeKey=@\"monochrome\";\n\nNSString * const CUIThemeGroupsKey=@\"groups\";\n\n@interface CUITheme ()\n\n    @property NSDictionary * itemsGroupsRegistry;\n\n    @property (copy) NSString * UUID;\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation newUUID:(BOOL)inNewUUID;\n\n@end\n\n@implementation CUITheme\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _name=@\"\";\n        \n        _UUID=[NSUUID UUID].UUIDString;\n        \n        _monochrome=NO;\n        \n        _itemsGroupsRegistry=@{};\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    return [self initWithRepresentation:inRepresentation newUUID:NO];\n}\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation newUUID:(BOOL)inNewUUID\n{\n    if ([inRepresentation isKindOfClass:[NSDictionary class]]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSString * tString=inRepresentation[CUIThemeNameKey];\n        \n        if ([tString isKindOfClass:[NSString class]]==NO)\n            return nil;\n        \n        _name=[tString copy];\n        \n        \n        if (inNewUUID==NO)\n        {\n            tString=inRepresentation[CUIThemeUUIDKey];\n        \n            if ([tString isKindOfClass:[NSString class]]==NO)\n                return nil;\n        \n            _UUID=[tString copy];\n        }\n        else\n        {\n            _UUID=[NSUUID UUID].UUIDString;\n        }\n        \n        NSNumber * tNumber=inRepresentation[CUIThemeMonochromeKey];\n        \n        if (tNumber!=nil)\n        {\n            if ([tNumber isKindOfClass:[NSNumber class]]==NO)\n                return nil;\n        \n            _monochrome=tNumber.boolValue;\n        }\n        else\n        {\n            _monochrome=NO;\n        }\n        \n        NSArray * tArray=inRepresentation[CUIThemeGroupsKey];\n\n        if ([tArray isKindOfClass:[NSArray class]]==NO)\n            return nil;\n        \n        NSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n        \n        for(NSDictionary * bGroupRepresentation in tArray)\n        {\n            if ([bGroupRepresentation isKindOfClass:[NSDictionary class]]==NO)\n                return nil;\n            \n            CUIThemeItemsGroup * tItemsGroup=[[CUIThemeItemsGroup alloc] initWithRepresentation:bGroupRepresentation];\n            \n            if (tItemsGroup==nil)\n                return nil;\n            \n            tMutableDictionary[tItemsGroup.identifier]=tItemsGroup;\n        }\n        \n        self.itemsGroupsRegistry=[tMutableDictionary copy];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSDictionary *)representation\n{\n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    [self.itemsGroupsRegistry enumerateKeysAndObjectsUsingBlock:^(id bKey, CUIThemeItemsGroup * bItemsGroup, BOOL * bOutStop) {\n        \n        NSDictionary * tRepresentation=[bItemsGroup representation];\n        \n        [tMutableArray addObject:tRepresentation];\n    }];\n    \n    return @{\n             CUIThemeNameKey:self.name,\n             CUIThemeUUIDKey:self.UUID,\n             CUIThemeMonochromeKey:@(self.monochrome),\n             \n             CUIThemeGroupsKey:[tMutableArray copy]\n             };\n}\n\n- (NSDictionary *)exportedRepresentation\n{\n    // We don't want exported Themes to have the same UUID as the listed ones\n    \n    NSMutableDictionary * tMutableDictionary=[[self representation] mutableCopy];\n    \n    tMutableDictionary[CUIThemeUUIDKey]=[NSUUID UUID].UUIDString;\n    \n    return [tMutableDictionary copy];\n}\n\n#pragma mark -\n\n- (NSArray *)allItemsGroups\n{\n    return [_itemsGroupsRegistry allValues];\n}\n\n- (CUIThemeItemsGroup *)itemsGroupWithIdentifier:(NSString *)inIdentifier\n{\n    if (inIdentifier==nil)\n        return nil;\n    \n    return _itemsGroupsRegistry[inIdentifier];\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUITheme * nTheme=[CUITheme new];\n    \n    nTheme.name=self.name;\n    \n    // We don't copy the monochrone key\n    \n    nTheme.itemsGroupsRegistry=[self.itemsGroupsRegistry WB_dictionaryByMappingObjectsUsingBlock:^id(id bKey, CUIThemeItemsGroup * bItemsGroup) {\n        \n        return [bItemsGroup copy];\n        \n    }];\n    \n    return nTheme;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemeItemAttributes.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIThemeItemAttributes : NSObject <NSCopying>\n\n    @property (nonatomic) NSColor * color;\n\n    @property (nonatomic) NSFont * font;    // can be nil\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation;\n\n- (NSDictionary *)representation;\n\n@end\n\nextern NSString * const CUIThemeItemAttributesDidChangeNotification;\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemeItemAttributes.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThemeItemAttributes.h\"\n\n#import \"NSColor+String.h\"\n\nNSString * const CUIThemeAttributeColorKey=@\"color\";\n\nNSString * const CUIThemeAttributeFontKey=@\"font\";\n\n\nNSString * const CUIThemeItemAttributesDidChangeNotification=@\"CUIThemeItemAttributesDidChangeNotification\";\n\n\n@implementation CUIThemeItemAttributes\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    if ([inRepresentation isKindOfClass:NSDictionary.class]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSString * tString=inRepresentation[CUIThemeAttributeColorKey];\n        \n        if ([tString isKindOfClass:NSString.class]==NO)\n            return nil;\n        \n        _color=[NSColor colorFromString:tString];\n        \n        tString=inRepresentation[CUIThemeAttributeFontKey];\n        \n        if (tString!=nil)\n        {\n            if ([tString isKindOfClass:NSString.class]==NO)\n                return nil;\n            \n        \n            NSArray * tComponents=[tString componentsSeparatedByString:@\"::\"];\n            \n            _font=[NSFont fontWithName:tComponents[0] size:[tComponents[1] floatValue]];\n            \n            if (_font==nil)\n                _font=[NSFont systemFontOfSize:11.0];\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSDictionary *)representation\n{\n    return @{\n             CUIThemeAttributeColorKey:self.color.stringValue,\n             \n             CUIThemeAttributeFontKey:[NSString stringWithFormat:@\"%@::%0.1f\",self.font.fontName,self.font.pointSize]\n            };\n}\n\n#pragma mark -\n\n- (void)setFont:(NSFont *)inFont\n{\n    if (_font!=inFont)\n    {\n        _font=inFont;\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIThemeItemAttributesDidChangeNotification object:self];\n    }\n}\n\n- (void)setColor:(NSColor *)inColor\n{\n    if (_color!=inColor)\n    {\n        _color=inColor;\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIThemeItemAttributesDidChangeNotification object:self];\n    }\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUIThemeItemAttributes * nThemeItemAttributes=[CUIThemeItemAttributes new];\n    \n    nThemeItemAttributes.color=[self.color copy];\n    \n    nThemeItemAttributes.font=[self.font copy];\n    \n    return nThemeItemAttributes;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThemeItemsGroup.h\"\n\nextern NSString * const CUIThemeItemBackground;\nextern NSString * const CUIThemeItemSelectionBackground;\nextern NSString * const CUIThemeItemSelectionText;\nextern NSString * const CUIThemeItemPlainText;\nextern NSString * const CUIThemeItemKey;\nextern NSString * const CUIThemeItemThreadLabel;\nextern NSString * const CUIThemeItemCrashedThreadLabel;\nextern NSString * const CUIThemeItemExecutableCode;\nextern NSString * const CUIThemeItemOSCode;\nextern NSString * const CUIThemeItemMemoryAddress;\nextern NSString * const CUIThemeItemRegisterValue;\nextern NSString * const CUIThemeItemPath;\nextern NSString * const CUIThemeItemVersion;\nextern NSString * const CUIThemeItemUUID;\nextern NSString * const CUIThemeItemLineNumber;\n\n@interface CUIThemeItemsGroup (UI)\n\n+ (NSString *)displayNameForItemNamed:(NSString *)inItemName;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThemeItemsGroup+UI.h\"\n\nNSString * const CUIThemeItemBackground=@\"background\";\nNSString * const CUIThemeItemSelectionBackground=@\"selection-background\";\nNSString * const CUIThemeItemSelectionText=@\"selection-text\";\nNSString * const CUIThemeItemPlainText=@\"plaintext\";\nNSString * const CUIThemeItemKey=@\"key\";\nNSString * const CUIThemeItemThreadLabel=@\"threadLabel\";\nNSString * const CUIThemeItemCrashedThreadLabel=@\"crashedThreadLabel\";\nNSString * const CUIThemeItemExecutableCode=@\"executableCode\";\nNSString * const CUIThemeItemOSCode=@\"OSCode\";\nNSString * const CUIThemeItemMemoryAddress=@\"memoryAddress\";\nNSString * const CUIThemeItemRegisterValue=@\"registerValue\";\nNSString * const CUIThemeItemPath=@\"path\";\nNSString * const CUIThemeItemVersion=@\"version\";\nNSString * const CUIThemeItemUUID=@\"uuid\";\nNSString * const CUIThemeItemLineNumber=@\"lineNumber\";\n\n@implementation CUIThemeItemsGroup (UI)\n\n+ (NSString *)displayNameForItemNamed:(NSString *)inItemName\n{\n    static NSDictionary * sDisplayedNames=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sDisplayedNames=@{\n                          CUIThemeItemBackground: NSLocalizedString(@\"Background\",@\"\"),\n                          CUIThemeItemPlainText: NSLocalizedString(@\"Plain Text\",@\"\"),\n                          CUIThemeItemKey: NSLocalizedString(@\"Key\",@\"\"),\n                          CUIThemeItemThreadLabel: NSLocalizedString(@\"Thread Label\",@\"\"),\n                          CUIThemeItemCrashedThreadLabel: NSLocalizedString(@\"Crashed Thread Label\",@\"\"),\n                          CUIThemeItemExecutableCode: NSLocalizedString(@\"Executable Code\",@\"\"),\n                          CUIThemeItemOSCode: NSLocalizedString(@\"OS Code\",@\"\"),\n                          CUIThemeItemMemoryAddress: NSLocalizedString(@\"Memory Address\",@\"\"),\n                          CUIThemeItemRegisterValue: NSLocalizedString(@\"Register Value\",@\"\"),\n                          CUIThemeItemPath: NSLocalizedString(@\"File Path\",@\"\"),\n                          CUIThemeItemVersion: NSLocalizedString(@\"Version\",@\"\"),\n                          CUIThemeItemUUID: NSLocalizedString(@\"UUID\",@\"\"),\n                          CUIThemeItemLineNumber: NSLocalizedString(@\"Line Number\",@\"\")\n                          };\n        \n    });\n    \n    NSString * tString=sDisplayedNames[inItemName];\n    \n    if (tString==nil)\n        tString=inItemName;\n    \n    return tString;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIThemeItemAttributes.h\"\n\n@interface CUIThemeItemsGroup : NSObject <NSCopying>\n\n    @property (readonly,copy) NSString * identifier;\n\n    @property (readonly) NSArray * itemsNames;\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation;\n\n- (NSDictionary *)representation;\n\n- (CUIThemeItemAttributes *)attributesForItem:(NSString *)inItemName;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThemeItemsGroup.h\"\n\n#import \"NSDictionary+WBExtensions.h\"\n\nNSString * const CUIThemeItemsGroupIdentifierKey=@\"identifier\";\n\nNSString * const CUIThemeItemsGroupItemsNamesKey=@\"items\";\n\nNSString * const CUIThemeItemsGroupItemsAttributesKey=@\"attributes\";\n\n@interface CUIThemeItemsGroup ()\n{\n    NSDictionary * _itemsRegistry;\n}\n\n    @property (copy) NSString * identifier;\n\n    @property NSArray * itemsNames;\n\n@end\n\n@implementation CUIThemeItemsGroup\n\n- (instancetype)initWithRepresentation:(NSDictionary *)inRepresentation\n{\n    if ([inRepresentation isKindOfClass:[NSDictionary class]]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        NSString * tString=inRepresentation[CUIThemeItemsGroupIdentifierKey];\n        \n        if ([tString isKindOfClass:[NSString class]]==NO)\n            return nil;\n        \n        _identifier=[tString copy];\n        \n        NSArray * tArray=inRepresentation[CUIThemeItemsGroupItemsNamesKey];\n        \n        if ([tArray isKindOfClass:[NSArray class]]==NO)\n            return nil;\n        \n        _itemsNames=[tArray copy];\n        \n        NSDictionary * tDictionary=inRepresentation[CUIThemeItemsGroupItemsAttributesKey];\n        \n        if ([tDictionary isKindOfClass:[NSDictionary class]]==NO)\n            return nil;\n        \n        _itemsRegistry=[tDictionary WB_dictionaryByMappingObjectsUsingBlock:^id(NSString * bItemName, NSDictionary * bItemAttributesRepresentation) {\n            \n            return [[CUIThemeItemAttributes alloc] initWithRepresentation:bItemAttributesRepresentation];\n        }];\n    }\n    \n    return self;\n}\n\n- (NSDictionary *)representation\n{\n    return @{\n             CUIThemeItemsGroupIdentifierKey:self.identifier,\n             CUIThemeItemsGroupItemsNamesKey:self.itemsNames,\n             CUIThemeItemsGroupItemsAttributesKey:[_itemsRegistry WB_dictionaryByMappingObjectsUsingBlock:^id(id bKey, CUIThemeItemAttributes * bItemAttributes) {\n                 \n                 return [bItemAttributes representation];\n             }]\n             };\n}\n\n#pragma mark -\n\n- (CUIThemeItemAttributes *)attributesForItem:(NSString *)inItemName\n{\n    if (inItemName==nil)\n        return nil;\n    \n    return _itemsRegistry[inItemName];\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUIThemeItemsGroup * nThemeItemsGroup=[CUIThemeItemsGroup new];\n    \n    nThemeItemsGroup.identifier=[self.identifier copy];\n    \n    nThemeItemsGroup.itemsNames=[self.itemsNames copy];\n    \n    nThemeItemsGroup->_itemsRegistry=[self->_itemsRegistry WB_dictionaryByMappingObjectsUsingBlock:^id(NSString * bItemName, CUIThemeItemAttributes * bItemAttributes) {\n        \n        return [bItemAttributes copy];\n    }];\n    \n    return nThemeItemsGroup;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemesManager.h",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUITheme.h\"\n\n@interface CUIThemesManager : NSObject <CUIThemesProvider>\n\n+ (CUIThemesManager *)sharedManager;\n\n@property (nonatomic) CUITheme * currentTheme;\n\n\n- (CUITheme *)themeWithUUID:(NSString *)inUUID;\n\n\n- (BOOL)renameTheme:(CUITheme *)inTheme withName:(NSString *)inNewName;\n\n- (void)addTheme:(CUITheme *)inTheme;   // Use to import themes only\n\n- (CUITheme *)duplicateTheme:(CUITheme *)inTheme;\n\n- (void)removeTheme:(CUITheme *)inTheme;\n\n- (void)reset;\n\n@end\n\nextern NSString * const CUIThemesManagerCurrentThemeDidChangeNotification;\n\nextern NSString * const CUIThemesManagerThemesListDidChangeNotification;\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemesManager.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThemesManager.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"NSArray+WBExtensions.h\"\n\n#import \"NSArray+UniqueName.h\"\n\nNSString * const CUIThemesCurrentThemeUUIDKey=@\"themes.current.UUID\";\n\nNSString * const CUIThemesListKey=@\"themes.list\";\n\n\nNSString * const CUIThemesManagerCurrentThemeDidChangeNotification=@\"CUIThemesManagerCurrentThemeDidChangeNotification\";\n\nNSString * const CUIThemesManagerThemesListDidChangeNotification=@\"CUIThemesManagerThemesListDidChangeNotification\";\n\n@interface CUIThemesManager ()\n{\n    NSUserDefaults * _defaults;\n    \n    NSMutableArray * _themes;\n    \n    NSMutableDictionary * _cachedThemeUUIDsRegistry;\n}\n\n// Notifications\n\n- (void)itemAttributesDidChange:(NSNotification *)inNotification;\n\n- (void)themesListDidChange:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIThemesManager\n\n+ (void)initialize\n{\n    NSArray * tThemesArray=[NSArray arrayWithContentsOfURL:[[NSBundle bundleForClass:CUIThemesManager.class] URLForResource:@\"default_themes\" withExtension:@\"plist\"]];\n    \n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                              CUIThemesListKey:tThemesArray,\n                                                              CUIThemesCurrentThemeUUIDKey:@\"UUID2\"\n  \n                                                              }];\n}\n\n+ (CUIThemesManager *)sharedManager\n{\n    static CUIThemesManager * sSharedManager=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSharedManager=[CUIThemesManager new];\n        \n    });\n    \n    return sSharedManager;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _defaults=[NSUserDefaults standardUserDefaults];\n        \n        _cachedThemeUUIDsRegistry=[NSMutableDictionary dictionary];\n        \n        _themes=[[[_defaults objectForKey:CUIThemesListKey] WB_arrayByMappingObjectsLenientlyUsingBlock:^id(NSDictionary * bThemeRepresentation, NSUInteger bIndex) {\n           \n            CUITheme * tTheme=[[CUITheme alloc] initWithRepresentation:bThemeRepresentation];\n            \n            if (tTheme==nil)\n            {\n                NSLog(@\"Archive representation of theme could not be loaded\");\n                \n                return nil;\n            }\n            \n            self->_cachedThemeUUIDsRegistry[tTheme.UUID]=tTheme;\n            \n            return tTheme;\n            \n        }] mutableCopy];\n        \n        if (_themes==nil)\n        {\n            NSLog(@\"Error when retrieving the list of themes\");\n            \n            return nil;\n        }\n        \n        NSString * tUUID=[_defaults objectForKey:CUIThemesCurrentThemeUUIDKey];\n        \n        if (tUUID!=nil)\n            _currentTheme=_cachedThemeUUIDsRegistry[tUUID];\n        \n        if (_currentTheme==nil)\n            _currentTheme=_themes.firstObject;\n        \n        \n        [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(itemAttributesDidChange:) name:CUIThemeItemAttributesDidChangeNotification object:nil];\n        \n        [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(themesListDidChange:) name:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSArray *)allThemes\n{\n    return [_themes copy];\n}\n\n- (void)setCurrentTheme:(CUITheme *)inTheme\n{\n    if (inTheme==nil)\n        return;\n    \n    if ([_themes containsObject:inTheme]==NO)\n        return;\n    \n    if (_currentTheme!=inTheme)\n    {\n        _currentTheme=inTheme;\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n        \n        [_defaults setObject:_currentTheme.UUID forKey:CUIThemesCurrentThemeUUIDKey];\n    }\n}\n\n- (CUITheme *)themeWithUUID:(NSString *)inUUID\n{\n    if (inUUID==nil)\n        return nil;\n    \n    return _cachedThemeUUIDsRegistry[inUUID];\n}\n\n#pragma mark -\n\n- (BOOL)renameTheme:(CUITheme *)inTheme withName:(NSString *)inNewName\n{\n    if (inTheme==nil || inNewName==nil)\n        return NO;\n    \n    inTheme.name=inNewName;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    \n    return YES;\n}\n\n- (void)addTheme:(CUITheme *)inTheme\n{\n    if (inTheme==nil)\n        return;\n    \n    if (_cachedThemeUUIDsRegistry[inTheme.UUID]!=nil)\n        return;\n    \n    _cachedThemeUUIDsRegistry[inTheme.UUID]=inTheme;\n    \n    [_themes addObject:inTheme];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerThemesListDidChangeNotification object:nil];\n}\n\n- (CUITheme *)duplicateTheme:(CUITheme *)inTheme\n{\n    if (inTheme==nil)\n        return nil;\n    \n    CUITheme * nTheme=[inTheme copy];\n    \n    // Find a unique name\n    \n    NSString * tNewName=[self.allThemes uniqueNameWithBaseName:[nTheme.name stringByAppendingString:NSLocalizedString(@\" copy\", @\"\")]\n                                            usingNameExtractor:^NSString *(CUITheme * bThene, NSUInteger bIndex) {\n                                                return bThene.name;\n                                            }];\n    \n    if (tNewName!=nil)\n        nTheme.name=tNewName;\n    \n    _cachedThemeUUIDsRegistry[nTheme.UUID]=nTheme;\n    \n    [_themes addObject:nTheme];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    \n    return nTheme;\n}\n\n- (void)removeTheme:(CUITheme *)inTheme\n{\n    if (_themes.count<2)\n        return;\n    \n    if (inTheme==self.currentTheme)\n    {\n        NSUInteger tIndex=[_themes indexOfObjectPassingTest:^BOOL(CUITheme * bTheme, NSUInteger idx, BOOL * _Nonnull stop) {\n            \n            return (bTheme!=inTheme);\n        }];\n        \n        if (tIndex==NSNotFound)\n            return;\n        \n        self.currentTheme=_themes[tIndex];\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n    }\n    \n    [_cachedThemeUUIDsRegistry removeObjectForKey:inTheme.UUID];\n    \n    [_themes removeObject:inTheme];\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerThemesListDidChangeNotification object:nil];\n}\n\n- (void)reset\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self name:CUIThemeItemAttributesDidChangeNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter removeObserver:self name:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    \n    [_defaults removeObjectForKey:CUIThemesCurrentThemeUUIDKey];\n    \n    [_defaults removeObjectForKey:CUIThemesCurrentThemeUUIDKey];\n    \n    NSArray * tThemesArray=[NSArray arrayWithContentsOfURL:[[NSBundle mainBundle] URLForResource:@\"default_themes\" withExtension:@\"plist\"]];\n    \n    _cachedThemeUUIDsRegistry=[NSMutableDictionary dictionary];\n    \n    _themes=[[tThemesArray WB_arrayByMappingObjectsLenientlyUsingBlock:^id(NSDictionary * bThemeRepresentation, NSUInteger bIndex) {\n        \n        CUITheme * tTheme=[[CUITheme alloc] initWithRepresentation:bThemeRepresentation];\n        \n        if (tTheme==nil)\n        {\n            NSLog(@\"Archive representation of theme could not be loaded\");\n            \n            return nil;\n        }\n        \n        self->_cachedThemeUUIDsRegistry[tTheme.UUID]=tTheme;\n        \n        return tTheme;\n        \n    }] mutableCopy];\n    \n    if (_themes==nil)\n    {\n        NSLog(@\"Error when retrieving the list of themes\");\n        \n        return;\n    }\n    \n    _currentTheme=_themes.firstObject;\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    \n     [NSNotificationCenter.defaultCenter postNotificationName:CUIThemesManagerCurrentThemeDidChangeNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(itemAttributesDidChange:) name:CUIThemeItemAttributesDidChangeNotification object:nil];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self selector:@selector(themesListDidChange:) name:CUIThemesManagerThemesListDidChangeNotification object:nil];\n    \n    // Save defaults\n    \n    NSArray * tRepresentation=[_themes WB_arrayByMappingObjectsUsingBlock:^id(CUITheme * bTheme, NSUInteger bIndex) {\n        \n        return [bTheme representation];\n        \n    }];\n    \n    [_defaults setObject:tRepresentation forKey:CUIThemesListKey];\n}\n\n#pragma mark - Notifications\n\n- (void)itemAttributesDidChange:(NSNotification *)inNotification\n{\n    // Save defaults\n    \n    NSArray * tRepresentation=[_themes WB_arrayByMappingObjectsUsingBlock:^id(CUITheme * bTheme, NSUInteger bIndex) {\n        \n        return [bTheme representation];\n        \n    }];\n    \n    [_defaults setObject:tRepresentation forKey:CUIThemesListKey];\n}\n\n- (void)themesListDidChange:(NSNotification *)inNotification\n{\n    // Save defaults\n    \n    NSArray * tRepresentation=[_themes WB_arrayByMappingObjectsUsingBlock:^id(CUITheme * bTheme, NSUInteger bIndex) {\n        \n        return [bTheme representation];\n        \n    }];\n    \n    [_defaults setObject:tRepresentation forKey:CUIThemesListKey];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemesTableView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIThemesTableView : NSTableView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThemesTableView.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThemesTableView.h\"\n\n@implementation CUIThemesTableView\n\n- (BOOL)validateProposedFirstResponder:(NSResponder *)responder forEvent:(NSEvent *)event\n{\n    if ([responder isKindOfClass:NSTextField.class])\n    {\n        if (event.type==NSEventTypeRightMouseDown)\n        {\n            return NO;\n        }\n    }\n    \n    return [super validateProposedFirstResponder:responder forEvent:event];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThread.h",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUICallStackBacktrace.h\"\n\n#import \"IPSThread.h\"\n#import \"IPSImage.h\"\n\n@interface CUIThread : NSObject\n\n    @property (readonly,getter=isApplicationSpecificBacktrace) BOOL applicationSpecificBackTrace;\n\n    @property (readonly,getter=isCrashed) BOOL crashed;\n\n\n    @property (readonly) NSUInteger number;\n\n    @property (readonly,copy) NSString * name;\n\n\t@property (readonly) CUICallStackBacktrace * callStackBacktrace;\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError;\n\n- (instancetype)initApplicationSpecificBacktraceWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError;\n\n- (instancetype)initApplicationSpecificBacktraceWithThreadFrames:(NSArray<IPSThreadFrame *> *)inFrames binaryImages:(NSArray<IPSImage *> *)inImages error:(NSError **)outError;\n\n- (instancetype)initWithIPSThread:(IPSThread *)inThread atIndex:(NSUInteger)inIndex binaryImages:(NSArray<IPSImage *> *)inImages error:(NSError **)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThread.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThread.h\"\n\n@interface CUIThread ()\n\n    @property BOOL crashed;\n\n    @property NSUInteger number;\n\n    @property (copy) NSString * name;\n\n    @property CUICallStackBacktrace * callStackBacktrace;\n\n@end\n\n@implementation CUIThread\n\n- (instancetype)initWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError\n{\n\tif ([inLines isKindOfClass:NSArray.class]==NO)\n\t{\n\t\tif (outError!=NULL)\n\t\t\t*outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n\t\t\n\t\treturn nil;\n\t}\n\t\n    if (inLines.count==0)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n\tself=[super init];\n\t\n\tif (self!=nil)\n\t{\n\t\tNSString * tHeaderLine=inLines.firstObject;\n\t\t\n        if ([tHeaderLine hasPrefix:@\"Application Specific Backtrace\"]==YES)\n        {\n            _applicationSpecificBackTrace=YES;\n            \n            _name=@\"Application Specific Backtrace\";\n        }\n        else\n        {\n            NSArray * tComponents=[tHeaderLine componentsSeparatedByString:@\"::\"];\n            NSString * tLeftPart;\n            \n            if (tComponents.count==0)\n            {\n                // Uh oh\n                \n                return nil;\n            }\n            \n            if (tComponents.count==1)\n            {\n                NSRange tRange=[tHeaderLine rangeOfString:@\"Dispatch queue:\"];\n                \n                if (tRange.location!=NSNotFound)\n                {\n                    tComponents=@[[tHeaderLine substringToIndex:tRange.location],\n                                  [tHeaderLine substringFromIndex:tRange.location]];\n                }\n            }\n            \n            tLeftPart=tComponents.firstObject;\n            \n            if (tComponents.count==2)\n            {\n                _name=[tComponents[1] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];\n            }\n            else\n            {\n                tLeftPart=[tLeftPart stringByTrimmingCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@\":\"]];\n            }\n            \n            NSArray * tThreadNumberComponents=[tLeftPart componentsSeparatedByString:@\" \"];\n            \n            if (tThreadNumberComponents.count<2)\n            {\n                // Uh oh\n                \n                // A COMPLETER\n            }\n            \n            _number=[tThreadNumberComponents[1] integerValue];\n            \n            if (tThreadNumberComponents.count==3)\n            {\n                if ([tThreadNumberComponents[2] caseInsensitiveCompare:@\"Crashed\"]==NSOrderedSame)\n                    _crashed=YES;\n            }\n        }\n        \n\t\t// backtrace\n\t\t\n\t\t_callStackBacktrace=[[CUICallStackBacktrace alloc] initWithTextualRepresentation:[inLines subarrayWithRange:NSMakeRange(1,inLines.count-1)] error:outError];\n\t\t\n\t\tif (_callStackBacktrace==nil)\n\t\t\treturn nil;\n\t\t\n\t}\n\t\n\treturn self;\n}\n\n- (instancetype)initApplicationSpecificBacktraceWithTextualRepresentation:(NSArray *)inLines error:(NSError **)outError\n{\n    self=[self initWithTextualRepresentation:inLines error:outError];\n    \n    if (self!=nil)\n    {\n        _crashed=NO;\n        \n        _applicationSpecificBackTrace=YES;\n        \n        _name=@\"Application Specific Backtrace\";\n    }\n    \n    return self;\n}\n\n- (instancetype)initApplicationSpecificBacktraceWithThreadFrames:(NSArray<IPSThreadFrame *> *)inFrames binaryImages:(NSArray<IPSImage *> *)inImages error:(NSError **)outError\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _crashed=NO;\n        \n        _applicationSpecificBackTrace=YES;\n        \n        _name=@\"Application Specific Backtrace\";\n        \n        _callStackBacktrace=[[CUICallStackBacktrace alloc] initWithFrames:inFrames binaryImages:inImages error:outError];\n        \n        if (_callStackBacktrace==nil)\n        {\n            return nil;\n        }\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithIPSThread:(IPSThread *)inThread atIndex:(NSUInteger)inIndex binaryImages:(NSArray<IPSImage *> *)inImages error:(NSError **)outError\n{\n    if ([inThread isKindOfClass:IPSThread.class]==NO)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:@{}];\n        \n        return nil;\n    }\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _crashed=inThread.triggered;\n        \n        _number=inIndex;\n        \n        if (inThread.queue!=nil)\n            _name=[NSString stringWithFormat:@\"Dispatch queue: %@\",inThread.queue];\n        \n        _callStackBacktrace=[[CUICallStackBacktrace alloc] initWithFrames:inThread.frames binaryImages:inImages error:NULL];\n        \n        if (_callStackBacktrace==nil)\n        {\n            // A COMPLETER\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\tif (_applicationSpecificBackTrace==YES)\n        return [NSString stringWithFormat:@\"%@ 1\\n%@\",self.name,self.callStackBacktrace];\n    else\n        return [NSString stringWithFormat:@\"Thread %ld %@ :: Dispatch queue: %@\\n%@\",self.number,(self.isCrashed==YES) ? @\"(Crashed)\": @\"\",self.name,self.callStackBacktrace];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadImageCell.h",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIThreadImageCell : NSImageCell\n\n    @property (nonatomic,getter=isCrashed) BOOL crashed;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadImageCell.m",
    "content": "/*\n Copyright (c) 2020-2022, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadImageCell.h\"\n\n@implementation CUIThreadImageCell\n\n+ (NSImage *)crashedThreadImage\n{\n    static NSImage * sCrahsedThreadImage=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sCrahsedThreadImage=[[NSImage imageNamed:@\"crashedThread_Template\"] copy];\n        \n        [sCrahsedThreadImage lockFocus];\n        \n        [[NSColor colorWithDeviceRed:203.0/255.0 green:49.0/255.0 blue:34.0/255.0 alpha:1.0 ] set];\n        \n        NSRectFillUsingOperation(NSMakeRect(0,0,20,23), NSCompositingOperationSourceIn);\n        \n        [sCrahsedThreadImage unlockFocus];\n        \n        sCrahsedThreadImage.template=NO;\n        \n    });\n    \n    return sCrahsedThreadImage;\n}\n\n- (instancetype)initWithCoder:(NSCoder *)inCoder\n{\n    self=[super initWithCoder:inCoder];\n    \n    if (self!=nil)\n    {\n        self.image=[NSImage imageNamed:@\"thread_Template\"];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)setCrashed:(BOOL)inCrashed\n{\n    if (_crashed==inCrashed)\n        return;\n    \n    _crashed=inCrashed;\n    \n    [self.controlView setNeedsDisplay:YES];\n}\n\n- (NSImage *)image\n{\n    if (self.isCrashed==NO)\n        return [super image];\n    \n    if (self.backgroundStyle==NSBackgroundStyleEmphasized || [self.controlView WB_isEffectiveAppearanceDarkAqua]==YES)\n        return [NSImage imageNamed:@\"crashedThread_Template\"];\n\n    return [CUIThreadImageCell crashedThreadImage];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadImageView.h",
    "content": "/*\n Copyright (c) 2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIThreadImageView : NSImageView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadImageView.m",
    "content": "/*\n Copyright (c) 2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n#import \"CUIThreadImageView.h\"\n\n@implementation CUIThreadImageView\n\n- (void)viewDidChangeEffectiveAppearance\n{\n\t[super viewDidChangeEffectiveAppearance];\n\t\n\tself.cell.image=self.cell.image;\t// To refresh the icon when switching between Light and Dark Aqua.\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadNamedTableCellView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface CUIThreadNamedTableCellView : NSTableCellView\n\n    @property (assign) IBOutlet NSTextField * dispatchQueueNameLabel;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadNamedTableCellView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadNamedTableCellView.h\"\n\n@implementation CUIThreadNamedTableCellView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsColumnViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadsViewController.h\"\n\n@interface CUIThreadsColumnViewController : CUIThreadsViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsColumnViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadsColumnViewController.h\"\n\n#import \"CUIApplicationSpecificBacktraceRowView.h\"\n#import \"CUICrashedThreadRowView.h\"\n\n#import \"CUIThreadNamedTableCellView.h\"\n\n#import \"CUICallTableCellView.h\"\n\n#import \"CUIThreadImageCell.h\"\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUICallsSelection.h\"\n\n#import \"CUICrashLogBacktraces+Utilities.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUISymbolicationManager.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUICrashLogBrowsingStateRegistry.h\"\n\n#import \"NSTableView+Selection.h\"\n\n#import \"CUIRawCrashLog+Path.h\"\n\n#define CUIBinaryImageIdentifierTextFieldMaxWidth     200.0\n\n@interface CUIThreadsColumnViewController () <NSTableViewDataSource,NSTableViewDelegate>\n{\n\tIBOutlet NSTableView * _threadsTableView;\n\t\n\tIBOutlet NSTableView * _backtraceTableView;\n    \n    NSArray * _filteredThreads;\n\t\n\tCUIThread * _selectedThread;\n    \n    \n    CGFloat _optimizedBinaryImageTextFieldWidth;\n}\n\n    @property (nonatomic) NSArray * threads;\n\n- (void)delayedReloadSymbols;\n\n@end\n\n@implementation CUIThreadsColumnViewController\n\n- (instancetype)initWithUserInterfaceLayoutDirection:(NSUserInterfaceLayoutDirection)inUserInterfaceLayoutDirection\n{\n    NSString *nibName=(inUserInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight) ? @\"CUIThreadsColumnViewController\" : @\"CUIThreadsColumnViewController_RTL\";\n    \n    return [super initWithNibName:nibName bundle:nil];\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    // TableView menu\n    \n    NSMenu * tMenu=[self createFrameContextualMenu];\n    \n    _backtraceTableView.menu=tMenu;\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    // Save browsing state\n    \n    [self saveBrowsingState];\n}\n\n#pragma mark -\n\n- (void)saveBrowsingState\n{\n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    if (self.crashLog!=nil)\n    {\n        CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n        \n        NSInteger tSelectedThread=_threadsTableView.selectedRow;\n        \n        if (tSelectedThread==-1)\n        {\n            tBrowsingState.columnSelectedThread=NSNotFound;\n            tBrowsingState.columnSelectedStackFrame=NSNotFound;\n        }\n        else\n        {\n            tBrowsingState.columnSelectedThread=tSelectedThread;\n            \n            NSInteger tSelectedStackFrame=_backtraceTableView.selectedRow;\n            \n            tBrowsingState.columnSelectedStackFrame=(tSelectedStackFrame!=-1) ? tSelectedStackFrame : NSNotFound;\n            \n            tBrowsingState.columnSelectedStackFrame=(tSelectedStackFrame!=-1) ? tSelectedStackFrame : NSNotFound;\n        }\n    }\n}\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n\t[self saveBrowsingState];\n    \n    [super setCrashLog:inCrashLog];\n\t\n    _optimizedBinaryImageTextFieldWidth=-1.0;\n    \n\tself.threads=inCrashLog.backtraces.threads;\n    \n\t[_threadsTableView reloadData];\n\t\n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:inCrashLog windowNumber:self.view.window.windowNumber];\n    \n    NSUInteger tSelectedThread=tBrowsingState.columnSelectedThread;\n    \n    if (tSelectedThread==NSNotFound || self.showOnlyCrashedThread==YES)\n    {\n        [_filteredThreads enumerateObjectsUsingBlock:^(CUIThread * bThread, NSUInteger bIndex, BOOL * bOutStop) {\n\t\t\n            if (bThread.isCrashed==YES)\n            {\n                [self->_threadsTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:bIndex] byExtendingSelection:NO];\n\t\t\t\n                *bOutStop=YES;\n            }\n        }];\n    }\n    else\n    {\n        if (tSelectedThread<_threadsTableView.numberOfRows)\n        {\n            [_threadsTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tSelectedThread] byExtendingSelection:NO];\n            \n            if (tBrowsingState.columnSelectedStackFrame!=NSNotFound)\n            {\n                [_backtraceTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tBrowsingState.columnSelectedStackFrame] byExtendingSelection:NO];\n            }\n        }\n    }\n}\n\n- (void)setThreads:(NSArray *)inThreads\n{\n    _threads=inThreads;\n    \n    if (self.showOnlyCrashedThread==NO)\n    {\n        _filteredThreads=_threads;\n        \n        return;\n    }\n    \n    NSUInteger tCrashedThreadIndex=self.crashLog.exceptionInformation.crashedThreadIndex;\n    \n    _filteredThreads=[_threads WB_filteredArrayUsingBlock:^BOOL(CUIThread * bThread, NSUInteger bIndex) {\n       \n        if (bThread.isApplicationSpecificBacktrace==YES)\n            return YES;\n        \n        return (bThread.number==tCrashedThreadIndex);\n    }];\n}\n\n- (void)setShowOnlyCrashedThread:(BOOL)aBool\n{\n    if (self.showOnlyCrashedThread==aBool)\n        return;\n    \n    [super setShowOnlyCrashedThread:aBool];\n    \n    [self saveBrowsingState];\n    \n    if (self.showOnlyCrashedThread==NO)\n    {\n        _filteredThreads=self.threads;\n    }\n    else\n    {\n        NSUInteger tCrashedThreadIndex=self.crashLog.exceptionInformation.crashedThreadIndex;\n        \n        _filteredThreads=[self.threads WB_filteredArrayUsingBlock:^BOOL(CUIThread * bThread, NSUInteger bIndex) {\n            \n            if (bThread.isApplicationSpecificBacktrace==YES)\n                return YES;\n            \n            return (bThread.number==tCrashedThreadIndex);\n        }];\n    }\n    \n    [_threadsTableView reloadData];\n    \n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n    \n    NSUInteger tSelectedThread=tBrowsingState.columnSelectedThread;\n    \n    if (tSelectedThread==NSNotFound)\n    {\n        [_filteredThreads enumerateObjectsUsingBlock:^(CUIThread * bThread, NSUInteger bIndex, BOOL * bOutStop) {\n            \n            if (bThread.isCrashed==YES)\n            {\n                [self->_threadsTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:bIndex] byExtendingSelection:NO];\n                \n                *bOutStop=YES;\n            }\n        }];\n    }\n    else\n    {\n        if (tSelectedThread<_threadsTableView.numberOfRows)\n        {\n            [_threadsTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tSelectedThread] byExtendingSelection:NO];\n            \n            if (tBrowsingState.columnSelectedStackFrame!=NSNotFound)\n            {\n                [_backtraceTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tBrowsingState.columnSelectedStackFrame] byExtendingSelection:NO];\n            }\n        }\n    }\n}\n\n- (void)setVisibleStackFrameComponents:(CUIStackFrameComponents)inVisibleStackFrameComponents\n{\n    [super setVisibleStackFrameComponents:inVisibleStackFrameComponents];\n    \n    // Save selection\n    \n    NSInteger tSelectedRow=_backtraceTableView.selectedRow;\n    \n    [_backtraceTableView reloadData];\n    \n    // Restore selection\n    \n    if (tSelectedRow!=-1)\n        [_backtraceTableView selectRowIndexes:[NSIndexSet indexSetWithIndex:tSelectedRow] byExtendingSelection:NO];\n}\n\n- (NSUInteger)numberOfSelectedStackFrames\n{\n    return [_backtraceTableView WB_selectedOrClickedRowIndexes].count;\n}\n\n- (NSArray<CUIStackFrame *> *)selectedStackFrames\n{\n    NSIndexSet * tSelectedRows=[_backtraceTableView WB_selectedOrClickedRowIndexes];\n    \n    if (tSelectedRows.count==0)\n        return @[];\n    \n    return [_selectedThread.callStackBacktrace.stackFrames objectsAtIndexes:tSelectedRows];\n}\n\n#pragma mark -\n\n- (IBAction)openSourceFile:(id)sender\n{\n    NSInteger tRow=[_backtraceTableView rowForView:sender];\n    \n    if (tRow==-1)\n        return;\n    \n    CUIStackFrame * tCall=(CUIStackFrame *)_selectedThread.callStackBacktrace.stackFrames[tRow];\n    \n#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101600\n\tif (@available(*, macOS 11.0))\n\t{\n\t\t[[NSWorkspace sharedWorkspace] openURLs:@[[NSURL fileURLWithPath:tCall.symbolicationData.sourceFilePath]]\n\t\t\t\t\t\t   withApplicationAtURL:[CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL\n\t\t\t\t\t\t\t\t  configuration:[NSWorkspaceOpenConfiguration configuration]\n\t\t\t\t\t\t\t  completionHandler:^(NSRunningApplication * _Nullable app, NSError * _Nullable error) {\n\t\t}];\n\t}\n\telse\n#endif\n\t{\n\t\t[[NSWorkspace sharedWorkspace] openURLs:@[[NSURL fileURLWithPath:tCall.symbolicationData.sourceFilePath]]\n\t\t\t\t\t\t   withApplicationAtURL:[CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL\n\t\t\t\t\t\t\t\t\t\toptions:NSWorkspaceLaunchDefault\n\t\t\t\t\t\t\t\t  configuration:@{}\n\t\t\t\t\t\t\t\t\t\t  error:NULL];\n\t}\n}\n\n#pragma mark - NSTableViewDataSource\n\n- (NSInteger)numberOfRowsInTableView:(NSTableView *)inTableView\n{\n\tif (inTableView==_threadsTableView)\n\t\treturn _filteredThreads.count;\n    \n\tif (inTableView==_backtraceTableView)\n\t\treturn _selectedThread.callStackBacktrace.stackFrames.count;\n\t\n\treturn 0;\n}\n\n#pragma mark - NSTableViewDelegate\n\n- (NSTableRowView *)tableView:(NSTableView *)inTableView rowViewForRow:(NSInteger)inRow\n{\n    if (inTableView==_threadsTableView)\n    {\n        CUIThread * tThread=(CUIThread *)_filteredThreads[inRow];\n        \n        if (tThread.isApplicationSpecificBacktrace==YES)\n        {\n            CUIApplicationSpecificBacktraceRowView * tTableRowView=[inTableView makeViewWithIdentifier:CUIApplicationSpecificBacktraceRowViewIdentifier owner:self];\n            \n            if (tTableRowView==nil)\n            {\n                tTableRowView=[[CUIApplicationSpecificBacktraceRowView alloc] initWithFrame:NSZeroRect];\n                tTableRowView.identifier=CUIApplicationSpecificBacktraceRowViewIdentifier;\n            }\n            \n            return tTableRowView;\n        }\n        \n        if (tThread.isCrashed==YES)\n        {\n            CUICrashedThreadRowView * tTableRowView=[inTableView makeViewWithIdentifier:CUICrashedThreadRowViewIdentifier owner:self];\n            \n            if (tTableRowView==nil)\n            {\n                tTableRowView=[[CUICrashedThreadRowView alloc] initWithFrame:NSZeroRect];\n                tTableRowView.identifier=CUICrashedThreadRowViewIdentifier;\n            }\n            \n            return tTableRowView;\n        }\n    }\n    \n    return nil;\n}\n\n- (NSView *)tableView:(NSTableView *)inTableView viewForTableColumn:(NSTableColumn *)inTableColumn row:(NSInteger)inRow\n{\n    if (inTableView==_threadsTableView)\n\t{\n        CUIThread * tThread=(CUIThread *)_filteredThreads[inRow];\n\t\t\n\t\tNSTableCellView * tTableCellView=nil;\n\t\t\n\t\tif (tThread.name.length==0 || tThread.isApplicationSpecificBacktrace==YES)\n\t\t{\n\t\t\ttTableCellView=[inTableView makeViewWithIdentifier:@\"thread cell\" owner:self];\n\t\t}\n\t\telse\n\t\t{\n\t\t\tCUIThreadNamedTableCellView * tNamedCell=[inTableView makeViewWithIdentifier:@\"thread named cell\" owner:self];\n\t\t\t\n\t\t\ttNamedCell.dispatchQueueNameLabel.stringValue=tThread.name;\n\t\t\t\n\t\t\ttTableCellView=tNamedCell;\n\t\t}\n\t\t\n        ((CUIThreadImageCell *)tTableCellView.imageView.cell).crashed=tThread.crashed;\n\t\t\n        if (tThread.isApplicationSpecificBacktrace==YES)\n            tTableCellView.textField.stringValue=tThread.name;\n        else\n            tTableCellView.textField.stringValue=[NSString stringWithFormat:@\"Thread %lu\",tThread.number];\n\t\t\n\t\treturn tTableCellView;\n\t}\n\t\n\tif (inTableView==_backtraceTableView)\n\t{\n        CUIStackFrame * tCall=(CUIStackFrame *)_selectedThread.callStackBacktrace.stackFrames[inRow];\n        \n        NSString * tTableColumnIdentifier=inTableColumn.identifier;\n        \n        if ([tTableColumnIdentifier isEqualToString:@\"source\"]==YES)\n        {\n            CUISourceFileTableCellView * tTableCellView=(CUISourceFileTableCellView *)[inTableView makeViewWithIdentifier:@\"source\" owner:self];\n            \n            BOOL tSymbolicateAutomatically=[CUIApplicationPreferences sharedPreferences].symbolicateAutomatically;\n            \n            CUISymbolicationData * tSymbolicationData=nil;\n            \n            if (tSymbolicateAutomatically==YES)\n                tSymbolicationData=tCall.symbolicationData;\n            \n            if (tSymbolicationData!=nil)\n            {\n                [self setUpSourceFileCellView:tTableCellView withSymbolicationData:tSymbolicationData];\n            }\n            else\n            {\n                // Default values\n                \n                if (tCall.sourceFile==nil)\n                    tTableCellView.textField.stringValue=@\"-\";\n                else\n                    tTableCellView.textField.stringValue=[NSString stringWithFormat:@\"%@ - line %lu\",tCall.sourceFile,tCall.lineNumber];\n                \n                NSRect tFrame=tTableCellView.textField.frame;\n                \n                tFrame.size.width=NSMaxX(tTableCellView.frame)-NSMinX(tFrame)-4;\n                    \n                tTableCellView.textField.frame=tFrame;\n                \n                tTableCellView.openButton.hidden=YES;\n                \n                \n                NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n                \n                CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n                \n                if (tBinaryImage==nil)\n                {\n                    NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n                    \n                    if (tAlternateIdentifier!=nil)\n                        tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n                }\n                \n                if (tSymbolicateAutomatically==YES)\n                {\n                    NSUInteger tAddress=tCall.machineInstructionAddress-tBinaryImage.binaryImageOffset;\n                    \n                    [[CUISymbolicationManager sharedSymbolicationManager] lookUpSymbolicationDataForMachineInstructionAddress:tAddress\n                                                                                                                   binaryUUID:tBinaryImage.UUID\n                                                                                                            completionHandler:^(CUISymbolicationDataLookUpResult bLookUpResult, CUISymbolicationData *bSymbolicationData) {\n                                                                                                                \n                                                                                                                switch(bLookUpResult)\n                                                                                                                {\n                                                                                                                    case CUISymbolicationDataLookUpResultError:\n                                                                                                                    case CUISymbolicationDataLookUpResultNotFound:\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                        \n                                                                                                                    case CUISymbolicationDataLookUpResultFound:\n                                                                                                                    {\n                                                                                                                        tCall.symbolicationData=bSymbolicationData;\n                                                                                                                        \n                                                                                                                        [NSNotificationCenter.defaultCenter postNotificationName:CUIStackFrameSymbolicationDidSucceedNotification\n                                                                                                                                                                          object:self.crashLog];\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                    }\n                                                                                                                        \n                                                                                                                    case CUISymbolicationDataLookUpResultFoundInCache:\n                                                                                                                    {\n                                                                                                                        tCall.symbolicationData=bSymbolicationData;\n                                                                                                                        \n                                                                                                                        [self setUpSourceFileCellView:tTableCellView withSymbolicationData:bSymbolicationData];\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                    }\n                                                                                                                        \n                                                                                                                }\n                                                                                                                \n                                                                                                                \n                                                                                                            }];\n                }\n            }\n            \n            return tTableCellView;\n        }\n        \n        \n\t\tBOOL isRightToLeft=(inTableView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft);\n        NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n        \n        BOOL tIsUserCode=NO;\n        \n        CUICrashLogBinaryImages * tBinaryImages=self.crashLog.binaryImages;\n        \n        CUIBinaryImage * tBinaryImage=[tBinaryImages binaryImageWithIdentifierOrName:tBinaryImageIdentifier identifier:&tBinaryImageIdentifier];\n        \n        if (tBinaryImage!=nil)\n        {\n            tIsUserCode = tBinaryImage.isUserCode;\n            \n            if (tIsUserCode==NO && [tBinaryImage.path isEqualToString:self.crashLog.header.executablePath]==YES)\n                tIsUserCode=YES;\n        }\n        \n        if (tIsUserCode==NO)\n            tIsUserCode=[tBinaryImages isUserCodeAtMemoryAddress:tCall.machineInstructionAddress inBinaryImage:tBinaryImageIdentifier];\n\n        \n        CUICallTableCellView * tCallTableCellView=[inTableView makeViewWithIdentifier:@\"call cell\" owner:self];\n        \n        // Call Index\n        \n        tCallTableCellView.callIndexLabel.stringValue=[NSString stringWithFormat:@\"%lu \",tCall.index];\n        \n        if (tIsUserCode==YES)\n        {\n            tCallTableCellView.callIndexLabel.textColor=[NSColor labelColor];\n        }\n        else\n        {\n            tCallTableCellView.callIndexLabel.textColor=[NSColor secondaryLabelColor];\n        }\n        \n        NSRect tLeftFrame=tCallTableCellView.callIndexLabel.frame;\n        \n        // Binary Image\n        \n        if (((self.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)==0))\n        {\n            tCallTableCellView.binaryImageLabel.hidden=YES;\n        }\n        else\n        {\n            \n            \n            if (_optimizedBinaryImageTextFieldWidth<0)\n            {\n                NSArray * tBinaryImageIdentifiers=[self.crashLog.backtraces allBinaryImagesIdentifiers];\n                __block CGFloat tMaxWidth=0.0;\n                NSFont * tFont=tCallTableCellView.binaryImageLabel.font;\n                \n                [tBinaryImageIdentifiers enumerateObjectsUsingBlock:^(NSString * bString, NSUInteger bIndex, BOOL * bOutStop) {\n                    \n                    CGFloat tWidth=[bString sizeWithAttributes:@{NSFontAttributeName:tFont}].width;\n                    \n                    if (tWidth>tMaxWidth)\n                        tMaxWidth=tWidth;\n                    \n                }];\n                \n                _optimizedBinaryImageTextFieldWidth=tMaxWidth+10.0;\n                \n                if (_optimizedBinaryImageTextFieldWidth>CUIBinaryImageIdentifierTextFieldMaxWidth)\n                    _optimizedBinaryImageTextFieldWidth=CUIBinaryImageIdentifierTextFieldMaxWidth;\n                \n            }\n            \n            tCallTableCellView.binaryImageLabel.hidden=NO;\n            \n            NSRect tFrame=tCallTableCellView.binaryImageLabel.frame;\n            \n            tFrame.size.width=_optimizedBinaryImageTextFieldWidth;\n            \n            if (isRightToLeft==NO)\n            {\n                tFrame.origin.x=NSMaxX(tLeftFrame)+8;\n            }\n            else\n            {\n                tFrame.origin.x=NSMinX(tLeftFrame)-8-NSWidth(tFrame);\n            }\n            \n            tCallTableCellView.binaryImageLabel.frame=tFrame;\n            \n            tLeftFrame=tFrame;\n            \n            tCallTableCellView.binaryImageLabel.stringValue=[NSString stringWithFormat:@\"%@\",tCall.binaryImageIdentifier];\n            \n            if (tIsUserCode==YES)\n            {\n                tCallTableCellView.binaryImageLabel.textColor=[NSColor labelColor];\n            }\n            else\n            {\n                tCallTableCellView.binaryImageLabel.textColor=[NSColor secondaryLabelColor];\n            }\n        }\n        \n        // Address\n        \n        if ((self.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)==0)\n        {\n            tCallTableCellView.addressLabel.hidden=YES;\n        }\n        else\n        {\n            tCallTableCellView.addressLabel.hidden=NO;\n            \n            NSRect tFrame=tCallTableCellView.addressLabel.frame;\n            \n            if (isRightToLeft==NO)\n            {\n                tFrame.origin.x=NSMaxX(tLeftFrame)+8;\n            }\n            else\n            {\n                tFrame.origin.x=NSMinX(tLeftFrame)-8-NSWidth(tFrame);\n            }\n            \n            tCallTableCellView.addressLabel.frame=tFrame;\n            \n            tLeftFrame=tFrame;\n            \n            \n            \n            tCallTableCellView.addressLabel.stringValue=[NSString stringWithFormat:@\"0x%012lx\",(tCall.machineInstructionAddress)];\n            \n            if (tIsUserCode==YES)\n            {\n                tCallTableCellView.addressLabel.textColor=[NSColor labelColor];\n            }\n            else\n            {\n                tCallTableCellView.addressLabel.textColor=[NSColor secondaryLabelColor];\n            }\n        }\n        \n        // Symbol\n        \n        NSRect tFrame=tCallTableCellView.textField.frame;\n        \n        if (isRightToLeft==NO)\n        {\n            CGFloat tMaxX=NSMaxX(tFrame);\n            \n            tFrame.origin.x=NSMaxX(tLeftFrame)+8;\n            \n            tFrame.size.width=tMaxX-tFrame.origin.x;\n        }\n        else\n        {\n            CGFloat tMinX=NSMinX(tFrame);\n            \n            tFrame.origin.x=tMinX;\n            \n            tFrame.size.width=(NSMinX(tLeftFrame)-8-tMinX);\n        }\n        \n        tCallTableCellView.textField.frame=tFrame;\n        \n        BOOL tSymbolicateAutomatically=[CUIApplicationPreferences sharedPreferences].symbolicateAutomatically;\n        \n        CUISymbolicationData * tData=nil;\n        \n        if (tSymbolicateAutomatically==YES)\n            tData=tCall.symbolicationData;\n        \n        if (tData!=nil)\n        {\n            NSMutableString * tCallLine=[tData.stackFrameSymbol mutableCopy];\n            \n            if ((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0)\n            {\n                [tCallLine appendFormat:@\" + %lu\",tData.byteOffset];\n            }\n            \n            tCallTableCellView.textField.stringValue=tCallLine;\n        }\n        else\n        {\n            // Default values\n            \n            NSMutableString * tCallLine=[tCall.symbol mutableCopy];\n            \n            if ((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0)\n            {\n                [tCallLine appendFormat:@\" + %lu\",tCall.byteOffset];\n            }\n            \n            tCallTableCellView.textField.stringValue=tCallLine;\n            \n            NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n            \n            CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n            \n            if (tBinaryImage==nil)\n            {\n                NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n                \n                if (tAlternateIdentifier!=nil)\n                    tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n            }\n            \n            if (tSymbolicateAutomatically==YES)\n            {\n                NSUInteger tAddress=tCall.machineInstructionAddress-tBinaryImage.binaryImageOffset;\n                \n                [[CUISymbolicationManager sharedSymbolicationManager] lookUpSymbolicationDataForMachineInstructionAddress:tAddress\n                                                                                                               binaryUUID:tBinaryImage.UUID\n                                                                                                        completionHandler:^(CUISymbolicationDataLookUpResult bLookUpResult, CUISymbolicationData *bSymbolicationData) {\n                                                                                                            \n                                                                                                            switch(bLookUpResult)\n                                                                                                            {\n                                                                                                                case CUISymbolicationDataLookUpResultError:\n                                                                                                                case CUISymbolicationDataLookUpResultNotFound:\n                                                                                                                    \n                                                                                                                    break;\n                                                                                                                    \n                                                                                                                case CUISymbolicationDataLookUpResultFound:\n                                                                                                                {\n                                                                                                                    tCall.symbolicationData=bSymbolicationData;\n                                                                                                                    \n                                                                                                                    [NSNotificationCenter.defaultCenter postNotificationName:CUIStackFrameSymbolicationDidSucceedNotification\n                                                                                                                                                                      object:self.crashLog];\n                                                                                                                    \n                                                                                                                    break;\n                                                                                                                }\n                                                                                                                    \n                                                                                                                case CUISymbolicationDataLookUpResultFoundInCache:\n                                                                                                                {\n                                                                                                                    tCall.symbolicationData=bSymbolicationData;\n                                                                                                                    \n                                                                                                                    NSMutableString * tCallLine=[bSymbolicationData.stackFrameSymbol mutableCopy];\n                                                                                                                    \n                                                                                                                    if ((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0)\n                                                                                                                    {\n                                                                                                                        [tCallLine appendFormat:@\" + %lu\",bSymbolicationData.byteOffset];\n                                                                                                                    }\n                                                                                                                    \n                                                                                                                    tCallTableCellView.textField.stringValue=tCallLine;\n                                                                                                                    \n                                                                                                                    break;\n                                                                                                                }\n                                                                                                                    \n                                                                                                            }\n                                                                                                            \n                                                                                                            \n                                                                                                        }];\n            }\n        }\n        \n        if (tIsUserCode==YES)\n        {\n            tCallTableCellView.imageView.image=[NSImage imageNamed:@\"call-usercode\"];\n            tCallTableCellView.textField.textColor=[NSColor labelColor];\n        }\n        else\n        {\n            tCallTableCellView.imageView.image=tCall.binaryImageIcon;\n            \n            tCallTableCellView.textField.textColor=[NSColor secondaryLabelColor];\n        }\n        \n        return tCallTableCellView;\n\t}\n\t\n\treturn nil;\n}\n\n- (void)tableViewSelectionDidChange:(NSNotification *)inNotification\n{\n\tif (inNotification.object==_threadsTableView)\n\t{\n\t\tNSInteger tSelectedRow=_threadsTableView.selectedRow;\n\t\t\n\t\t[_backtraceTableView deselectAll:self];\n\t\t\n\t\tif (tSelectedRow==-1)\n\t\t{\n\t\t\t_selectedThread=nil;\n\t\t\t\n\t\t\t[_backtraceTableView reloadData];\n\t\t}\n\t\telse\n\t\t{\n\t\t\t_selectedThread=_filteredThreads[tSelectedRow];\n\t\t\t\n\t\t\t[_backtraceTableView reloadData];\n\t\t}\n\t}\n\telse if (inNotification.object==_backtraceTableView)\n\t{\n        NSIndexSet * tIndexSet=_backtraceTableView.selectedRowIndexes;\n        \n        NSMutableSet * tMutableSet=[NSMutableSet set];\n        \n        [tIndexSet enumerateIndexesUsingBlock:^(NSUInteger bIndex, BOOL * bOutStop) {\n            \n            CUIStackFrame * tCall=(CUIStackFrame *)self->_selectedThread.callStackBacktrace.stackFrames[bIndex];\n            \n            CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tCall.binaryImageIdentifier];\n            \n            if (tBinaryImage==nil)\n            {\n                NSString * tIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tCall.binaryImageIdentifier];\n                \n                if (tIdentifier!=nil)\n                {\n                    tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tIdentifier];\n                    \n                    if (tBinaryImage!=nil)\n                        tCall=[tCall stackFrameCloneWithBinaryImageIdentifier:tIdentifier];\n                }\n            }\n                \n            [tMutableSet addObject:tCall];\n        }];\n        \n        [CUICallsSelection sharedCallsSelection].calls=tMutableSet;\n\t}\n}\n\n#pragma mark -\n\n- (void)delayedReloadSymbols\n{\n    [_backtraceTableView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, _backtraceTableView.numberOfRows)] columnIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 4)]];\n}\n\n#pragma mark -\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification\n{\n    // Ideally we should just request to symbolicate the machineInstructionAddresses which can be\n    \n    //NSArray * tBinaryUUIDs=inNotification.object;\n    \n    // A COMPLETER\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayedReloadSymbols) object:nil];\n    \n    [self performSelector:@selector(delayedReloadSymbols) withObject:nil afterDelay:0.1];\n}\n\n- (void)stackFrameSymbolicationDidSucceed:(NSNotification *)inNotification\n{\n    if (inNotification.object!=self.crashLog)\n        return;\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayedReloadSymbols) object:nil];\n    \n    [self performSelector:@selector(delayedReloadSymbols) withObject:nil afterDelay:0.1];\n}\n\n- (void)symbolicateAutomaticallyDidChange:(NSNotification *)inNotification\n{\n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayedReloadSymbols) object:nil];\n    \n    [self performSelector:@selector(delayedReloadSymbols) withObject:nil afterDelay:0.1];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsColumnViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23727\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23727\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIThreadsColumnViewController\">\n            <connections>\n                <outlet property=\"_backtraceTableView\" destination=\"S6L-OC-d20\" id=\"YWF-cv-Man\"/>\n                <outlet property=\"_threadsTableView\" destination=\"fyE-QL-lQ4\" id=\"7de-Dh-NS7\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1145\" height=\"492\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"34\" horizontalPageScroll=\"10\" verticalLineScroll=\"34\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Qdv-oP-5ed\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"220\" height=\"492\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"fe3-Ef-4H1\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"218\" height=\"490\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"32\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"fyE-QL-lQ4\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"218\" height=\"490\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"206\" minWidth=\"40\" maxWidth=\"1000\" id=\"RWV-HD-x81\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"wr6-Iq-9En\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"thread cell\" id=\"zyz-Vq-Bqz\" userLabel=\"Thread Cell View\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"215\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"pnQ-FG-N09\">\n                                                        <rect key=\"frame\" x=\"26\" y=\"9\" width=\"185\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"1kO-uC-ztM\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"q1I-G1-0YH\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"ED5-IY-oRb\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"q1I-G1-0YH\" id=\"uue-1A-Uyu\"/>\n                                                    <outlet property=\"textField\" destination=\"pnQ-FG-N09\" id=\"IhA-cz-sar\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"thread named cell\" id=\"hC6-LX-Eu3\" userLabel=\"Thread Named Cell View\" customClass=\"CUIThreadNamedTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"35\" width=\"215\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"nAT-TC-zJH\">\n                                                        <rect key=\"frame\" x=\"26\" y=\"15\" width=\"185\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"OWX-zr-NIf\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"iHQ-Jn-xwV\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"64h-uj-Jrq\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"iNa-TP-ykX\">\n                                                        <rect key=\"frame\" x=\"26\" y=\"2\" width=\"185\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"yMv-Sm-cMx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dispatchQueueNameLabel\" destination=\"iNa-TP-ykX\" id=\"VDL-bb-lTP\"/>\n                                                    <outlet property=\"imageView\" destination=\"iHQ-Jn-xwV\" id=\"5DI-mB-L7Q\"/>\n                                                    <outlet property=\"textField\" destination=\"nAT-TC-zJH\" id=\"5cK-nD-7iV\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Vl7-qG-qs4\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"lLJ-ox-Egi\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"WaF-L7-rqJ\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ere-yq-T6H\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"20\" horizontalPageScroll=\"10\" verticalLineScroll=\"20\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"sCt-BL-5p0\">\n                    <rect key=\"frame\" x=\"219\" y=\"0.0\" width=\"926\" height=\"492\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"xfg-Ui-xPw\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"924\" height=\"490\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"18\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"S6L-OC-d20\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"924\" height=\"490\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"800\" minWidth=\"40\" maxWidth=\"1000\" id=\"yYN-UW-sub\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"5TT-0U-1wu\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"call cell\" id=\"1Pi-XT-GrZ\" userLabel=\"Call Cell View\" customClass=\"CUICallTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"805\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"uF1-Yd-1Xb\">\n                                                        <rect key=\"frame\" x=\"409\" y=\"2\" width=\"396\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tpR-ri-Igh\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"fKs-ej-NTA\">\n                                                        <rect key=\"frame\" x=\"238\" y=\"2\" width=\"106\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sLM-5v-b5X\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"kKO-Kw-oFE\">\n                                                        <rect key=\"frame\" x=\"51\" y=\"2\" width=\"183\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"EdK-zD-sGu\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gMg-Wf-524\">\n                                                        <rect key=\"frame\" x=\"7\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"bIA-H1-ZDZ\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Qr0-Cn-7pa\">\n                                                        <rect key=\"frame\" x=\"24\" y=\"2\" width=\"20\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" alignment=\"right\" id=\"L4m-TR-sdR\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"addressLabel\" destination=\"fKs-ej-NTA\" id=\"im3-pj-pwr\"/>\n                                                    <outlet property=\"binaryImageLabel\" destination=\"kKO-Kw-oFE\" id=\"ItD-30-oq5\"/>\n                                                    <outlet property=\"callIndexLabel\" destination=\"Qr0-Cn-7pa\" id=\"PUH-AR-Hbt\"/>\n                                                    <outlet property=\"imageView\" destination=\"gMg-Wf-524\" id=\"UGc-XZ-x28\"/>\n                                                    <outlet property=\"textField\" destination=\"uF1-Yd-1Xb\" id=\"2fv-l2-aMN\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"address\" width=\"102\" minWidth=\"102\" maxWidth=\"102\" hidden=\"YES\" id=\"3ls-6d-cgz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"WTh-AY-fE4\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"3ww-wv-ufT\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"0.0\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Pma-tQ-3a8\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"4\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Lp4-XO-7w6\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"Pma-tQ-3a8\" id=\"vgl-jF-7yE\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"binary\" width=\"225\" minWidth=\"225\" maxWidth=\"225\" hidden=\"YES\" id=\"9U1-G3-khO\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"Rw7-VK-UyY\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"Hvw-ej-V3R\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"0.0\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"GXL-cy-oxI\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"4\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"KWW-HS-RiE\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"GXL-cy-oxI\" id=\"HRW-Sk-H2t\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"source\" editable=\"NO\" width=\"109\" minWidth=\"64\" maxWidth=\"3.4028234663852886e+38\" id=\"BAg-Nc-7FB\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"gIY-bC-Gql\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CVO-Ck-BOi\" customClass=\"CUISourceFileTableCellView\">\n                                                <rect key=\"frame\" x=\"809\" y=\"1\" width=\"113\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"vl6-IM-CSZ\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"92\" height=\"15\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Xa1-Rw-cxj\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gQj-hY-qaH\">\n                                                        <rect key=\"frame\" x=\"98\" y=\"3\" width=\"14\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <buttonCell key=\"cell\" type=\"square\" bezelStyle=\"shadowlessSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"lh1-L7-ejI\">\n                                                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                            <font key=\"font\" metaFont=\"system\"/>\n                                                        </buttonCell>\n                                                        <connections>\n                                                            <action selector=\"openSourceFile:\" target=\"-2\" id=\"JvY-yo-XIB\"/>\n                                                        </connections>\n                                                    </button>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"openButton\" destination=\"gQj-hY-qaH\" id=\"Ogu-Lq-QHb\"/>\n                                                    <outlet property=\"textField\" destination=\"vl6-IM-CSZ\" id=\"gPw-23-SVb\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"pwX-vF-98H\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"OoA-kg-vOB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"LJs-Xi-wYJ\">\n                        <rect key=\"frame\" x=\"1\" y=\"118.91657400131226\" width=\"238\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"gzo-Wg-bip\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"338\" y=\"-48\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"20\" height=\"20\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsColumnViewController_RTL.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23727\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23727\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIThreadsColumnViewController\">\n            <connections>\n                <outlet property=\"_backtraceTableView\" destination=\"S6L-OC-d20\" id=\"YWF-cv-Man\"/>\n                <outlet property=\"_threadsTableView\" destination=\"fyE-QL-lQ4\" id=\"7de-Dh-NS7\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1145\" height=\"492\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"34\" horizontalPageScroll=\"10\" verticalLineScroll=\"34\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Qdv-oP-5ed\">\n                    <rect key=\"frame\" x=\"925\" y=\"0.0\" width=\"220\" height=\"492\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"fe3-Ef-4H1\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"218\" height=\"490\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"32\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"fyE-QL-lQ4\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"218\" height=\"490\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"206\" minWidth=\"40\" maxWidth=\"1000\" id=\"RWV-HD-x81\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"wr6-Iq-9En\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"thread cell\" id=\"zyz-Vq-Bqz\" userLabel=\"Thread Cell View\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"215\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"pnQ-FG-N09\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"9\" width=\"185\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"1kO-uC-ztM\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"q1I-G1-0YH\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"192\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"ED5-IY-oRb\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"q1I-G1-0YH\" id=\"uue-1A-Uyu\"/>\n                                                    <outlet property=\"textField\" destination=\"pnQ-FG-N09\" id=\"IhA-cz-sar\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"thread named cell\" id=\"hC6-LX-Eu3\" userLabel=\"Thread Named Cell View\" customClass=\"CUIThreadNamedTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"35\" width=\"215\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"nAT-TC-zJH\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"15\" width=\"185\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"OWX-zr-NIf\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"iHQ-Jn-xwV\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"192\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"64h-uj-Jrq\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"iNa-TP-ykX\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"2\" width=\"185\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"yMv-Sm-cMx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dispatchQueueNameLabel\" destination=\"iNa-TP-ykX\" id=\"VDL-bb-lTP\"/>\n                                                    <outlet property=\"imageView\" destination=\"iHQ-Jn-xwV\" id=\"5DI-mB-L7Q\"/>\n                                                    <outlet property=\"textField\" destination=\"nAT-TC-zJH\" id=\"5cK-nD-7iV\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Vl7-qG-qs4\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"lLJ-ox-Egi\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"WaF-L7-rqJ\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ere-yq-T6H\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"20\" horizontalPageScroll=\"10\" verticalLineScroll=\"20\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"sCt-BL-5p0\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"927\" height=\"492\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"xfg-Ui-xPw\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"925\" height=\"490\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"18\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"S6L-OC-d20\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"925\" height=\"490\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"835\" minWidth=\"40\" maxWidth=\"1000\" id=\"yYN-UW-sub\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"left\" title=\"Text Cell\" id=\"5TT-0U-1wu\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"call cell\" id=\"1Pi-XT-GrZ\" userLabel=\"Call Cell View\" customClass=\"CUICallTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"840\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"uF1-Yd-1Xb\">\n                                                        <rect key=\"frame\" x=\"407\" y=\"2\" width=\"804\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tpR-ri-Igh\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"fKs-ej-NTA\">\n                                                        <rect key=\"frame\" x=\"157\" y=\"2\" width=\"106\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sLM-5v-b5X\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"kKO-Kw-oFE\">\n                                                        <rect key=\"frame\" x=\"-30\" y=\"2\" width=\"183\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"EdK-zD-sGu\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gMg-Wf-524\">\n                                                        <rect key=\"frame\" x=\"817\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"bIA-H1-ZDZ\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Qr0-Cn-7pa\">\n                                                        <rect key=\"frame\" x=\"796\" y=\"2\" width=\"20\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" id=\"L4m-TR-sdR\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"addressLabel\" destination=\"fKs-ej-NTA\" id=\"im3-pj-pwr\"/>\n                                                    <outlet property=\"binaryImageLabel\" destination=\"kKO-Kw-oFE\" id=\"ItD-30-oq5\"/>\n                                                    <outlet property=\"callIndexLabel\" destination=\"Qr0-Cn-7pa\" id=\"PUH-AR-Hbt\"/>\n                                                    <outlet property=\"imageView\" destination=\"gMg-Wf-524\" id=\"UGc-XZ-x28\"/>\n                                                    <outlet property=\"textField\" destination=\"uF1-Yd-1Xb\" id=\"2fv-l2-aMN\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"source\" editable=\"NO\" width=\"75\" minWidth=\"64\" maxWidth=\"3.4028234663852886e+38\" id=\"BAg-Nc-7FB\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"left\" title=\"Text Cell\" id=\"gIY-bC-Gql\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CVO-Ck-BOi\" customClass=\"CUISourceFileTableCellView\">\n                                                <rect key=\"frame\" x=\"844\" y=\"1\" width=\"79\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"vl6-IM-CSZ\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"92\" height=\"15\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Xa1-Rw-cxj\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gQj-hY-qaH\">\n                                                        <rect key=\"frame\" x=\"98\" y=\"3\" width=\"14\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <buttonCell key=\"cell\" type=\"square\" bezelStyle=\"shadowlessSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"lh1-L7-ejI\">\n                                                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                            <font key=\"font\" metaFont=\"system\"/>\n                                                        </buttonCell>\n                                                        <connections>\n                                                            <action selector=\"openSourceFile:\" target=\"-2\" id=\"JvY-yo-XIB\"/>\n                                                        </connections>\n                                                    </button>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"openButton\" destination=\"gQj-hY-qaH\" id=\"Ogu-Lq-QHb\"/>\n                                                    <outlet property=\"textField\" destination=\"vl6-IM-CSZ\" id=\"gPw-23-SVb\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"binary\" width=\"225\" minWidth=\"225\" maxWidth=\"225\" hidden=\"YES\" id=\"9U1-G3-khO\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"left\" title=\"Text Cell\" id=\"Rw7-VK-UyY\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"Hvw-ej-V3R\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"0.0\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"GXL-cy-oxI\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"4\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"KWW-HS-RiE\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"GXL-cy-oxI\" id=\"HRW-Sk-H2t\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"address\" width=\"102\" minWidth=\"102\" maxWidth=\"102\" hidden=\"YES\" id=\"3ls-6d-cgz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"left\" title=\"Text Cell\" id=\"WTh-AY-fE4\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"3ww-wv-ufT\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"0.0\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Pma-tQ-3a8\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"4\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Lp4-XO-7w6\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"Pma-tQ-3a8\" id=\"vgl-jF-7yE\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"pwX-vF-98H\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"OoA-kg-vOB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"LJs-Xi-wYJ\">\n                        <rect key=\"frame\" x=\"1\" y=\"476\" width=\"925\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"gzo-Wg-bip\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"76.5\" y=\"-47\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"20\" height=\"20\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsListViewController.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadsViewController.h\"\n\n#import \"CUIThread.h\"\n\n@interface CUIThreadsListViewController : CUIThreadsViewController\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsListViewController.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadsListViewController.h\"\n\n#import \"CUIThreadNamedTableCellView.h\"\n\n#import \"CUIApplicationSpecificBacktraceRowView.h\"\n#import \"CUICrashedThreadRowView.h\"\n\n#import \"CUICrashedThreadCallRowView.h\"\n\n#import \"CUICallTableCellView.h\"\n\n#import \"CUIThreadImageCell.h\"\n\n#import \"CUICrashLog+UI.h\"\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUICallsSelection.h\"\n\n#import \"CUICrashLogBacktraces+Utilities.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUISymbolicationManager.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUICrashLogBrowsingStateRegistry.h\"\n\n#import \"NSTableView+Selection.h\"\n\n#define CUIBinaryImageIdentifierTextFieldMaxWidth     200.0\n\n@interface CUIThread (CUIStringHash)\n\n- (NSString *)stringHash;\n\n@end\n\n@implementation CUIThread (CUIStringHash)\n\n- (NSString *)stringHash\n{\n    char tPrefix='t';\n    \n    if (self.isApplicationSpecificBacktrace==YES)\n        tPrefix='a';\n    else if (self.isCrashed==YES)\n        tPrefix='c';\n    \n    return [NSString stringWithFormat:@\"%c%lu\",tPrefix,self.number];\n}\n\n@end\n\n\n@interface CUIThreadsListViewController () <NSOutlineViewDataSource,NSOutlineViewDelegate>\n{\n\tIBOutlet NSOutlineView * _outlineView;\n    \n    IBOutlet NSTableRowView * myRowView;\n\t\n\tNSArray * _threads;\n    \n    CGFloat _threadStateRowHeight;\n    \n    BOOL _showCrashedThreadState;\n    \n    CGFloat _optimizedBinaryImageTextFieldWidth;\n}\n\n- (void)delayedReloadSymbols;\n\n@end\n\n@implementation CUIThreadsListViewController\n\n- (instancetype)initWithUserInterfaceLayoutDirection:(NSUserInterfaceLayoutDirection)inUserInterfaceLayoutDirection\n{\n    NSString *nibName=(inUserInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionLeftToRight) ? @\"CUIThreadsListViewController\" : @\"CUIThreadsListViewController_RTL\";\n\n    return [super initWithNibName:nibName bundle:nil];\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    _threadStateRowHeight=205;\n    \n    // OutlineView menu\n    \n    NSMenu * tMenu=[self createFrameContextualMenu];\n    \n    _outlineView.menu=tMenu;\n    \n    //[NSNotificationCenter.defaultCenter addObserver:self selector:@selector(viewFrameDidChange:) name:NSViewFrameDidChangeNotification object:_outlineView];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    // Save browsing state\n    \n    [self saveBrowsingState];\n}\n\n\n#pragma mark -\n\n- (void)saveBrowsingState\n{\n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    if (self.crashLog!=nil)\n    {\n        CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n        \n        tBrowsingState.listSelectedStackFrame=nil;\n        \n        NSInteger tSelectedRow=_outlineView.selectedRow;\n        \n        if (tSelectedRow!=-1)\n        {\n            id tItem=[_outlineView itemAtRow:tSelectedRow];\n            \n            if (tItem!=nil)\n            {\n                CUIThread * tThread=[_outlineView parentForItem:tItem];\n                \n                tBrowsingState.listSelectedStackFrame=[NSString stringWithFormat:@\"%@:%lu\",[tThread stringHash],[_outlineView childIndexForItem:tItem]];\n            }\n        }\n    }\n}\n\n- (void)setCrashLog:(CUICrashLog *)inCrashLog\n{\n\t[self saveBrowsingState];\n    \n    [super setCrashLog:inCrashLog];\n\t\n    _optimizedBinaryImageTextFieldWidth=-1.0;\n    \n\t_threads=inCrashLog.backtraces.threads;\n\t\n    [_outlineView sizeLastColumnToFit];\n    \n    [_outlineView reloadData];\n\t\n    \n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:inCrashLog windowNumber:self.view.window.windowNumber];\n    \n    NSDictionary * tListDiclosedThreads=tBrowsingState.listDisclosedThreads;\n    \n    if (tListDiclosedThreads==nil)\n    {\n        // Disclose the crashed thread\n\t\n        for(CUIThread * tThread in _threads)\n        {\n            if (tThread.isCrashed==YES)\n            {\n                [_outlineView expandItem:tThread];\n                \n                break;\n            }\n        }\n        \n        [self outlineViewSelectionDidChange:[NSNotification notificationWithName:NSTableViewSelectionDidChangeNotification object:_outlineView]];\n        \n        return;\n    }\n    \n    for(CUIThread * tThread in _threads)\n    {\n        if (tListDiclosedThreads[[tThread stringHash]]!=nil)\n            [_outlineView expandItem:tThread];\n    }\n    \n    NSString * tString=tBrowsingState.listSelectedStackFrame;\n    \n    if (tString!=nil)\n    {\n        NSArray * tComponents=[tString componentsSeparatedByString:@\":\"];\n        \n        if (tComponents.count!=2)\n            return;\n        \n        NSString * tStringHash=tComponents[0];\n        \n        for(CUIThread * tThread in _threads)\n        {\n            if ([[tThread stringHash] isEqualToString:tStringHash]==YES)\n            {\n                if ([_outlineView isItemExpanded:tThread]==YES)\n                {\n                    NSUInteger tItemRow=[_outlineView rowForItem:tThread]+[tComponents[1] integerValue]+1;\n                    \n                    dispatch_async(dispatch_get_main_queue(), ^{\n                        \n                        [self->_outlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:tItemRow] byExtendingSelection:NO];\n                    });\n                    \n                    return;\n                }\n                \n                break;\n            }\n            \n        }\n    }\n    \n    [self outlineViewSelectionDidChange:[NSNotification notificationWithName:NSTableViewSelectionDidChangeNotification object:_outlineView]];\n}\n\n#pragma mark -\n\n- (void)setShowOnlyCrashedThread:(BOOL)aBool\n{\n    [super setShowOnlyCrashedThread:aBool];\n    \n    [self saveBrowsingState];\n    \n    [_outlineView reloadData];\n    \n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n    \n    NSDictionary * tListDiclosedThreads=tBrowsingState.listDisclosedThreads;\n    \n    if (tListDiclosedThreads==nil)\n    {\n        // Disclose the crashed thread\n        \n        for(CUIThread * tThread in _threads)\n        {\n            if (tThread.isCrashed==YES)\n            {\n                [_outlineView expandItem:tThread];\n                \n                NSString * tNodePath=[tThread stringHash];\n                \n                tBrowsingState.listDisclosedThreads[tNodePath]=@(YES);\n                \n                break;\n            }\n        }\n        \n        return;\n    }\n    \n    for(CUIThread * tThread in _threads)\n    {\n        if (tListDiclosedThreads[[tThread stringHash]]!=nil)\n            [_outlineView expandItem:tThread];\n    }\n    \n    NSString * tString=tBrowsingState.listSelectedStackFrame;\n    \n    if (tString!=nil)\n    {\n        NSArray * tComponents=[tString componentsSeparatedByString:@\":\"];\n        \n        if (tComponents.count!=2)\n            return;\n        \n        NSString * tStringHash=tComponents[0];\n        \n        for(CUIThread * tThread in _threads)\n        {\n            if ([[tThread stringHash] isEqualToString:tStringHash]==YES)\n            {\n                if ([_outlineView isItemExpanded:tThread]==YES)\n                {\n                    NSUInteger tItemRow=[_outlineView rowForItem:tThread]+[tComponents[1] integerValue]+1;\n                    \n                    dispatch_async(dispatch_get_main_queue(), ^{\n                        \n                        [self->_outlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:tItemRow] byExtendingSelection:NO];\n                    });\n                    \n                    return;\n                }\n                \n                break;\n            }\n            \n        }\n    }\n    \n    [self outlineViewSelectionDidChange:[NSNotification notificationWithName:NSTableViewSelectionDidChangeNotification object:_outlineView]];\n}\n\n- (void)setVisibleStackFrameComponents:(CUIStackFrameComponents)inVisibleStackFrameComponents\n{\n    [super setVisibleStackFrameComponents:inVisibleStackFrameComponents];\n    \n    [_outlineView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0,_outlineView.numberOfRows)] columnIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0,_outlineView.numberOfColumns)]];\n}\n\n- (NSUInteger)numberOfSelectedStackFrames\n{\n    NSIndexSet * tSelectedRows=[_outlineView WB_selectedOrClickedRowIndexes];\n    \n    __block BOOL tContainsThreadRows=NO;\n    \n    [tSelectedRows enumerateIndexesUsingBlock:^(NSUInteger bIndex, BOOL * bOutStop) {\n       \n        if ([[self->_outlineView itemAtRow:bIndex] class]==[CUIThread class])\n        {\n            tContainsThreadRows=YES;\n            *bOutStop=YES;\n        }\n    }];\n    \n    return (tContainsThreadRows==NO) ? [_outlineView WB_selectedOrClickedRowIndexes].count : 0;\n}\n\n- (NSArray<CUIStackFrame *> *)selectedStackFrames\n{\n    NSIndexSet * tSelectedRows=[_outlineView WB_selectedOrClickedRowIndexes];\n    \n    if (tSelectedRows.count==0)\n        return @[];\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    [tSelectedRows enumerateIndexesUsingBlock:^(NSUInteger bRow, BOOL * bOutStop) {\n        \n        CUIStackFrame * tStackFrame=[self->_outlineView itemAtRow:bRow];\n        \n        if ([tStackFrame isKindOfClass:CUIStackFrame.class]==NO)\n            return;\n        \n        [tMutableArray addObject:tStackFrame];\n    }];\n    \n    return [tMutableArray copy];\n}\n\n#pragma mark -\n\n- (IBAction)openSourceFile:(id)sender\n{\n    NSInteger tRow=[_outlineView rowForView:sender];\n    \n    if (tRow==-1)\n        return;\n    \n    CUIStackFrame * tCall=(CUIStackFrame *)[_outlineView itemAtRow:tRow];\n    \n#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101600\n\tif (@available(*, macOS 11.0))\n\t{\n\t\t[[NSWorkspace sharedWorkspace] openURLs:@[[NSURL fileURLWithPath:tCall.symbolicationData.sourceFilePath]]\n\t\t\t\t\t\t   withApplicationAtURL:[CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL\n\t\t\t\t\t\t\t\t  configuration:[NSWorkspaceOpenConfiguration configuration]\n\t\t\t\t\t\t\t  completionHandler:^(NSRunningApplication * _Nullable app, NSError * _Nullable error) {\n\t\t\t\n\t\t}];\n\t}\n\telse\n#endif\n\t{\n\t\t[[NSWorkspace sharedWorkspace] openURLs:@[[NSURL fileURLWithPath:tCall.symbolicationData.sourceFilePath]]\n\t\t\t\t\t\t   withApplicationAtURL:[CUIApplicationPreferences sharedPreferences].preferedSourceCodeEditorURL\n\t\t\t\t\t\t\t\t\t\toptions:NSWorkspaceLaunchDefault\n\t\t\t\t\t\t\t\t  configuration:@{}\n\t\t\t\t\t\t\t\t\t\t  error:NULL];\n\t}\n}\n\n#pragma mark -\n\n- (void)delayedReloadSymbols\n{\n    [_outlineView reloadDataForRowIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, _outlineView.numberOfRows)] columnIndexes:[NSIndexSet indexSetWithIndexesInRange:NSMakeRange(0, 2)]];\n}\n\n#pragma mark - NSOutlineViewDataSource\n\n- (NSInteger)outlineView:(NSOutlineView *)inOutlineView numberOfChildrenOfItem:(id)inItem\n{\n\tif (_threads==nil)\n\t\treturn 0;\n\t\n\tif (inItem==nil)\n\t{\n        if (self.showOnlyCrashedThread==YES)\n        {\n            if (self.crashLog.backtraces.hasApplicationSpecificBacktrace==YES)\n                return 2;\n            \n\t\t\treturn 1;\n        }\n\t\t\n\t\treturn _threads.count;\n\t}\n\t\n    CUIThread * tThread=(CUIThread *)inItem;\n    \n    NSInteger tNumber=tThread.callStackBacktrace.stackFrames.count;\n    \n    if (tThread.isCrashed==YES && _showCrashedThreadState==YES)\n        tNumber+=1;\n    \n\treturn tNumber;\n}\n\n- (id)outlineView:(NSOutlineView *)inOutlineView child:(NSInteger)inIndex ofItem:(id)inItem\n{\n\tif (inItem==nil)\n\t{\n\t\tif (self.showOnlyCrashedThread==YES)\n        {\n            if (self.crashLog.backtraces.hasApplicationSpecificBacktrace==NO)\n            {\n                return _threads[self.crashLog.exceptionInformation.crashedThreadIndex];\n            }\n                \n            if (inIndex==0)\n                return _threads[0];\n            \n\t\t\treturn _threads[self.crashLog.exceptionInformation.crashedThreadIndex+1];\n        }\n        \n\t\treturn _threads[inIndex];\n\t}\n\t\n    CUIThread * tThread=(CUIThread *)inItem;\n    \n    if (tThread.isCrashed==NO || _showCrashedThreadState==NO)\n        return tThread.callStackBacktrace.stackFrames[inIndex];\n    \n    if (inIndex>0)\n    {\n        return tThread.callStackBacktrace.stackFrames[inIndex-1];\n    }\n    \n\treturn self.crashLog.threadState;\n}\n\n- (BOOL)outlineView:(NSOutlineView *)inOutlineView isItemExpandable:(id)inItem\n{\n\treturn [inItem isKindOfClass:[CUIThread class]];\n}\n\n#pragma mark - NSOutlineViewDelegate\n\n- (NSTableRowView *)outlineView:(NSOutlineView *)inOutlineView rowViewForItem:(id)inItem\n{\n    if (inOutlineView!=_outlineView || inItem==nil)\n        return nil;\n    \n    if ([inItem isKindOfClass:[CUIThread class]]==YES)\n    {\n        CUIThread * tThread=(CUIThread *)inItem;\n        \n        if (tThread.isApplicationSpecificBacktrace==YES)\n        {\n            CUIApplicationSpecificBacktraceRowView * tTableRowView=[inOutlineView makeViewWithIdentifier:CUIApplicationSpecificBacktraceRowViewIdentifier owner:self];\n            \n            if (tTableRowView==nil)\n            {\n                tTableRowView=[[CUIApplicationSpecificBacktraceRowView alloc] initWithFrame:NSZeroRect];\n                tTableRowView.identifier=CUIApplicationSpecificBacktraceRowViewIdentifier;\n            }\n            \n            return tTableRowView;\n        }\n        \n        if (tThread.isCrashed==YES)\n        {\n            CUICrashedThreadRowView * tTableRowView=[inOutlineView makeViewWithIdentifier:CUICrashedThreadRowViewIdentifier owner:self];\n            \n            if (tTableRowView==nil)\n            {\n                tTableRowView=[[CUICrashedThreadRowView alloc] initWithFrame:NSZeroRect];\n                tTableRowView.identifier=CUICrashedThreadRowViewIdentifier;\n            }\n            \n            return tTableRowView;\n        }\n        \n        return nil;\n    }\n        \n    if ([inItem isKindOfClass:[CUIStackFrame class]]==YES)\n    {\n        CUIThread * tThread=(CUIThread *)[inOutlineView parentForItem:inItem];\n        \n        if (tThread.isCrashed==NO)\n            return nil;\n        \n        CUICrashedThreadCallRowView * tTableRowView=[inOutlineView makeViewWithIdentifier:CUICrashedThreadCallRowViewIdentifier owner:self];\n        \n        if (tTableRowView==nil)\n        {\n            tTableRowView=[[CUICrashedThreadCallRowView alloc] initWithFrame:NSZeroRect];\n            tTableRowView.identifier=CUICrashedThreadCallRowViewIdentifier;\n        }\n        \n        CUIStackFrame * tCall=(CUIStackFrame *)inItem;\n        \n        tTableRowView.rootCall=(tCall.index==(tThread.callStackBacktrace.stackFrames.count-1));\n        \n        return tTableRowView;\n    }\n    \n    return nil;\n}\n\n- (NSView *)outlineView:(NSOutlineView *)inOutlineView viewForTableColumn:(NSTableColumn *)inTableColumn item:(id)inItem\n{\n\tif (inOutlineView!=_outlineView || inItem==nil)\n\t\treturn nil;\n\t\n\tNSString * tTableColumnIdentifier=inTableColumn.identifier;\n\t\n    if ([tTableColumnIdentifier isEqualToString:@\"source\"]==YES)\n    {\n        if ([inItem isKindOfClass:[CUIStackFrame class]]==YES)\n        {\n            CUIStackFrame * tCall=(CUIStackFrame *)inItem;\n        \n            CUISourceFileTableCellView * tTableCellView=(CUISourceFileTableCellView *)[inOutlineView makeViewWithIdentifier:@\"source\" owner:self];\n            \n            BOOL tSymbolicateAutomatically=[CUIApplicationPreferences sharedPreferences].symbolicateAutomatically;\n            \n            CUISymbolicationData * tSymbolicationData=nil;\n            \n            if (tSymbolicateAutomatically==YES)\n                tSymbolicationData=tCall.symbolicationData;\n            \n            if (tSymbolicationData!=nil)\n            {\n                [self setUpSourceFileCellView:tTableCellView withSymbolicationData:tSymbolicationData];\n            }\n            else\n            {\n                // Default values\n                \n                NSTextField * tLabel=tTableCellView.textField;\n                \n                if (tCall.sourceFile==nil)\n                    tLabel.stringValue=@\"-\";\n                else\n                    tLabel.stringValue=[NSString stringWithFormat:@\"%@ - line %lu\",tCall.sourceFile,tCall.lineNumber];\n                \n                tTableCellView.openButton.hidden=YES;\n                \n                NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n                \n                CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n                \n                if (tBinaryImage==nil)\n                {\n                    NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n                    \n                    if (tAlternateIdentifier!=nil)\n                        tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n                }\n                \n                if (tSymbolicateAutomatically==YES)\n                {\n                    NSUInteger tAddress=tCall.machineInstructionAddress-tBinaryImage.binaryImageOffset;\n                    \n                    [[CUISymbolicationManager sharedSymbolicationManager] lookUpSymbolicationDataForMachineInstructionAddress:tAddress\n                                                                                                                   binaryUUID:tBinaryImage.UUID\n                                                                                                            completionHandler:^(CUISymbolicationDataLookUpResult bLookUpResult, CUISymbolicationData *bSymbolicationData) {\n                                                                                                                \n                                                                                                                switch(bLookUpResult)\n                                                                                                                {\n                                                                                                                    case CUISymbolicationDataLookUpResultError:\n                                                                                                                    case CUISymbolicationDataLookUpResultNotFound:\n                                                                                                                    {\n                                                                                                                        NSRect tFrame=tLabel.frame;\n                                                                                                                        \n                                                                                                                        tFrame.size.width=NSMaxX(tTableCellView.frame)-NSMinX(tFrame)-4;\n                                                                                                                        \n                                                                                                                        tLabel.frame=tFrame;\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                    }\n                                                                                                                    case CUISymbolicationDataLookUpResultFound:\n                                                                                                                        \n                                                                                                                        tCall.symbolicationData=bSymbolicationData;\n                                                                                                                        \n                                                                                                                        [NSNotificationCenter.defaultCenter postNotificationName:CUIStackFrameSymbolicationDidSucceedNotification\n                                                                                                                                                                          object:self.crashLog];\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                        \n                                                                                                                    case CUISymbolicationDataLookUpResultFoundInCache:\n                                                                                                                    {\n                                                                                                                        tCall.symbolicationData=bSymbolicationData;\n                                                                                                                        \n                                                                                                                        [self setUpSourceFileCellView:tTableCellView withSymbolicationData:bSymbolicationData];\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                    }\n                                                                                                                }\n                    }];\n                }\n                else\n                {\n                    NSRect tFrame=tLabel.frame;\n                    \n                    tFrame.size.width=NSMaxX(tTableCellView.frame)-NSMinX(tFrame)-4;\n                        \n                    tLabel.frame=tFrame;\n                }\n            }\n            \n            return tTableCellView;\n        }\n        \n        return nil;\n    }\n    \n    if ([tTableColumnIdentifier isEqualToString:@\"symbol\"]==YES)\n\t{\n\t\tif ([inItem isKindOfClass:[CUIThread class]]==YES)\n\t\t{\n\t\t\tCUIThread * tThread=(CUIThread *)inItem;\n\t\t\t\n\t\t\tNSTableCellView * tTableCellView=nil;\n            \n            if (tThread.name.length==0 || tThread.isApplicationSpecificBacktrace==YES)\n\t\t\t{\n\t\t\t\ttTableCellView=[inOutlineView makeViewWithIdentifier:@\"thread cell\" owner:self];\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\tCUIThreadNamedTableCellView * tNamedCell=[inOutlineView makeViewWithIdentifier:@\"thread named cell\" owner:self];\n\t\t\t\t\n\t\t\t\ttNamedCell.dispatchQueueNameLabel.stringValue=tThread.name;\n                \n                \n\t\t\t\t\n\t\t\t\ttTableCellView=tNamedCell;\n\t\t\t}\n            \n\t\t\t((CUIThreadImageCell *)tTableCellView.imageView.cell).crashed=tThread.crashed;\n            \n            if (tThread.isApplicationSpecificBacktrace==YES)\n                tTableCellView.textField.stringValue=tThread.name;\n            else\n                tTableCellView.textField.stringValue=[NSString stringWithFormat:@\"Thread %lu\",tThread.number];\n\t\t\t\n\t\t\treturn tTableCellView;\n\t\t}\n        \n\t\tif ([inItem isKindOfClass:[CUIStackFrame class]]==YES)\n\t\t{\n            BOOL isRightToLeft=(inOutlineView.userInterfaceLayoutDirection==NSUserInterfaceLayoutDirectionRightToLeft);\n\t\t\tCUIStackFrame * tCall=(CUIStackFrame *)inItem;\n            \n            NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n            \n            BOOL tIsUserCode=NO;\n            \n            CUICrashLogBinaryImages * tBinaryImages=self.crashLog.binaryImages;\n            \n            CUIBinaryImage * tBinaryImage=[tBinaryImages binaryImageWithIdentifierOrName:tBinaryImageIdentifier identifier:&tBinaryImageIdentifier];\n            \n            if (tBinaryImage!=nil)\n            {\n                tIsUserCode = tBinaryImage.isUserCode;\n                \n                if (tIsUserCode==NO && [tBinaryImage.path isEqualToString:self.crashLog.header.executablePath]==YES)\n                    tIsUserCode=YES;\n            }\n            \n            if (tIsUserCode==NO)\n                tIsUserCode=[tBinaryImages isUserCodeAtMemoryAddress:tCall.machineInstructionAddress inBinaryImage:tBinaryImageIdentifier];\n \n            \n            CUICallTableCellView * tCallTableCellView=[inOutlineView makeViewWithIdentifier:@\"call cell\" owner:self];\n\t\t\t\n            // Call Index\n            \n            tCallTableCellView.callIndexLabel.stringValue=[NSString stringWithFormat:@\"%lu \",tCall.index];\n            \n            if (tIsUserCode==YES)\n            {\n                tCallTableCellView.callIndexLabel.textColor=[NSColor labelColor];\n            }\n            else\n            {\n                tCallTableCellView.callIndexLabel.textColor=[NSColor secondaryLabelColor];\n            }\n            \n            NSRect tLeftFrame=tCallTableCellView.callIndexLabel.frame;\n            \n            // Binary Image\n            \n            if (((self.visibleStackFrameComponents & CUIStackFrameBinaryNameComponent)==0))\n            {\n                tCallTableCellView.binaryImageLabel.hidden=YES;\n            }\n            else\n            {\n                if (_optimizedBinaryImageTextFieldWidth<0)\n                {\n                    NSArray * tBinaryImageIdentifiers=[self.crashLog.backtraces allBinaryImagesIdentifiers];\n                    __block CGFloat tMaxWidth=0.0;\n                    NSFont * tFont=tCallTableCellView.binaryImageLabel.font;\n                    \n                    [tBinaryImageIdentifiers enumerateObjectsUsingBlock:^(NSString * bString, NSUInteger bIndex, BOOL * bOutStop) {\n                        \n                        CGFloat tWidth=[bString sizeWithAttributes:@{NSFontAttributeName:tFont}].width;\n                        \n                        if (tWidth>tMaxWidth)\n                            tMaxWidth=tWidth;\n                        \n                    }];\n                    \n                    _optimizedBinaryImageTextFieldWidth=tMaxWidth+10.0;\n                    \n                    if (_optimizedBinaryImageTextFieldWidth>CUIBinaryImageIdentifierTextFieldMaxWidth)\n                        _optimizedBinaryImageTextFieldWidth=CUIBinaryImageIdentifierTextFieldMaxWidth;\n                    \n                }\n                \n                \n                \n                tCallTableCellView.binaryImageLabel.hidden=NO;\n                \n                NSRect tFrame=tCallTableCellView.binaryImageLabel.frame;\n                \n                tFrame.size.width=_optimizedBinaryImageTextFieldWidth;\n                \n                if (isRightToLeft==NO)\n                {\n                    tFrame.origin.x=NSMaxX(tLeftFrame)+8;\n                    \n                }\n                else\n                {\n                    tFrame.origin.x=NSMinX(tLeftFrame)-8-NSWidth(tFrame);\n                }\n                \n                tCallTableCellView.binaryImageLabel.frame=tFrame;\n                \n                tLeftFrame=tFrame;\n                \n                tCallTableCellView.binaryImageLabel.stringValue=[NSString stringWithFormat:@\"%@\",tCall.binaryImageIdentifier];\n                \n                if (tIsUserCode==YES)\n                {\n                    tCallTableCellView.binaryImageLabel.textColor=[NSColor labelColor];\n                }\n                else\n                {\n                    tCallTableCellView.binaryImageLabel.textColor=[NSColor secondaryLabelColor];\n                }\n            }\n            \n            // Address\n            \n            if ((self.visibleStackFrameComponents & CUIStackFrameMachineInstructionAddressComponent)==0)\n            {\n                tCallTableCellView.addressLabel.hidden=YES;\n            }\n            else\n            {\n                tCallTableCellView.addressLabel.hidden=NO;\n                \n                NSRect tFrame=tCallTableCellView.addressLabel.frame;\n                \n                if (isRightToLeft==NO)\n                {\n                    tFrame.origin.x=NSMaxX(tLeftFrame)+8;\n                }\n                else\n                {\n                    tFrame.origin.x=NSMinX(tLeftFrame)-8-NSWidth(tFrame);\n                }\n                \n                tCallTableCellView.addressLabel.frame=tFrame;\n                \n                tLeftFrame=tFrame;\n                \n                \n                \n                tCallTableCellView.addressLabel.stringValue=[NSString stringWithFormat:@\"0x%012lx\",(tCall.machineInstructionAddress)];\n                \n                if (tIsUserCode==YES)\n                {\n                    tCallTableCellView.addressLabel.textColor=[NSColor labelColor];\n                }\n                else\n                {\n                    tCallTableCellView.addressLabel.textColor=[NSColor secondaryLabelColor];\n                }\n            }\n            \n            // Symbol\n            \n            NSRect tFrame=tCallTableCellView.textField.frame;\n            \n            if (isRightToLeft==NO)\n            {\n                CGFloat tMaxX=NSMaxX(tFrame);\n            \n                tFrame.origin.x=NSMaxX(tLeftFrame)+8;\n            \n                tFrame.size.width=tMaxX-tFrame.origin.x;\n            }\n            else\n            {\n                CGFloat tMinX=NSMinX(tFrame);\n                \n                tFrame.origin.x=tMinX;\n                \n                tFrame.size.width=(NSMinX(tLeftFrame)-8-tMinX);\n            }\n            \n            tCallTableCellView.textField.frame=tFrame;\n            \n            BOOL tSymbolicateAutomatically=[CUIApplicationPreferences sharedPreferences].symbolicateAutomatically;\n            \n            CUISymbolicationData * tData=nil;\n            \n            if (tSymbolicateAutomatically==YES)\n                tData=tCall.symbolicationData;\n            \n            if (tData!=nil)\n            {\n                NSMutableString * tCallLine=[tData.stackFrameSymbol mutableCopy];\n                \n                if ((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0)\n                {\n                    [tCallLine appendFormat:@\" + %lu\",tData.byteOffset];\n                }\n                \n                tCallTableCellView.textField.stringValue=tCallLine;\n            }\n            else\n            {\n                // Default values\n                \n                NSMutableString * tCallLine=[tCall.symbol mutableCopy];\n                \n                if ((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0)\n                {\n                    [tCallLine appendFormat:@\" + %lu\",tCall.byteOffset];\n                }\n                \n                tCallTableCellView.textField.stringValue=tCallLine;\n                \n                NSString * tBinaryImageIdentifier=tCall.binaryImageIdentifier;\n                \n                CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n                \n                if (tBinaryImage==nil)\n                {\n                    NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n                    \n                    if (tAlternateIdentifier!=nil)\n                        tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n                }\n                \n                if (tSymbolicateAutomatically==YES)\n                {\n                    NSUInteger tAddress=tCall.machineInstructionAddress-tBinaryImage.binaryImageOffset;\n                \n                    [[CUISymbolicationManager sharedSymbolicationManager] lookUpSymbolicationDataForMachineInstructionAddress:tAddress\n                                                                                                                   binaryUUID:tBinaryImage.UUID\n                                                                                                            completionHandler:^(CUISymbolicationDataLookUpResult bLookUpResult, CUISymbolicationData *bSymbolicationData) {\n                                                                                                                \n                                                                                                                switch(bLookUpResult)\n                                                                                                                {\n                                                                                                                    case CUISymbolicationDataLookUpResultError:\n                                                                                                                    case CUISymbolicationDataLookUpResultNotFound:\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                        \n                                                                                                                    case CUISymbolicationDataLookUpResultFound:\n                                                                                                                    {\n                                                                                                                        tCall.symbolicationData=bSymbolicationData;\n                                                                                                                        \n                                                                                                                        [NSNotificationCenter.defaultCenter postNotificationName:CUIStackFrameSymbolicationDidSucceedNotification\n                                                                                                                                                                            object:self.crashLog];\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                    }\n                                                                                                                        \n                                                                                                                    case CUISymbolicationDataLookUpResultFoundInCache:\n                                                                                                                    {\n                                                                                                                        tCall.symbolicationData=bSymbolicationData;\n                                                                                                                        \n                                                                                                                        NSMutableString * tCallLine=[bSymbolicationData.stackFrameSymbol mutableCopy];\n                                                                                                                        \n                                                                                                                        if ((self.visibleStackFrameComponents & CUIStackFrameByteOffsetComponent)!=0)\n                                                                                                                        {\n                                                                                                                            [tCallLine appendFormat:@\" + %lu\",bSymbolicationData.byteOffset];\n                                                                                                                        }\n                                                                                                                        \n                                                                                                                        tCallTableCellView.textField.stringValue=tCallLine;\n                                                                                                                        \n                                                                                                                        break;\n                                                                                                                    }\n                                                                                                                        \n                                                                                                                }\n                                                                                                                \n                                                                                                                \n                                                                                                            }];\n                }\n            }\n\t\t\t\n            if (tIsUserCode==YES)\n\t\t\t{\n\t\t\t\ttCallTableCellView.imageView.image=[NSImage imageNamed:@\"call-usercode\"];\n\t\t\t\ttCallTableCellView.textField.textColor=[NSColor labelColor];\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\ttCallTableCellView.imageView.image=tCall.binaryImageIcon;\n\t\t\t\t\n\t\t\t\ttCallTableCellView.textField.textColor=[NSColor secondaryLabelColor];\n\t\t\t}\n\t\t\t\n\t\t\treturn tCallTableCellView;\n\t\t}\n\t\t\n\t\treturn nil;\n\t}\n\n\treturn nil;\n}\n\n- (CGFloat)outlineView:(NSOutlineView *) inOutlineView heightOfRowByItem:(id)inItem\n{\n\tif (inOutlineView!=_outlineView)\n\t\treturn 17.0;\n\t\n    if ([inItem isKindOfClass:[CUIThread class]]==YES)\n        return 32.0;\n    \n    if ([inItem isKindOfClass:[CUICrashLogThreadState class]]==YES)\n    {\n        /*if (inOutlineView.frame.size.width>800)\n            return 105.0;*/\n        \n        return _threadStateRowHeight;\n    }\n\t\n\treturn 18.0;\n}\n\n- (BOOL)outlineView:(NSOutlineView *)inOutlineView shouldSelectItem:(id)inItem\n{\n    if (inOutlineView!=_outlineView)\n        return YES;\n    \n    return ([inItem isKindOfClass:[CUIStackFrame class]]==YES);\n}\n\n- (void)outlineViewItemDidExpand:(NSNotification *)inNotification\n{\n    if (inNotification.object!=_outlineView)\n        return;\n    \n    NSDictionary * tUserInfo=inNotification.userInfo;\n    if (tUserInfo==nil)\n        return;\n    \n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n    \n    CUIThread * tThread=(CUIThread *) tUserInfo[@\"NSObject\"];\n    if (tThread==nil)\n        return;\n    \n    NSString * tNodePath=[tThread stringHash];\n    \n    if (tBrowsingState.listDisclosedThreads==nil)\n        tBrowsingState.listDisclosedThreads=[NSMutableDictionary dictionary];\n    \n    tBrowsingState.listDisclosedThreads[tNodePath]=@(YES);\n}\n\n- (void)outlineViewItemWillCollapse:(NSNotification *)inNotification\n{\n    if (inNotification.object!=_outlineView)\n        return;\n\n    NSDictionary * tUserInfo=inNotification.userInfo;\n    if (tUserInfo==nil)\n        return;\n    \n    CUICrashLogBrowsingStateRegistry * tRegistry=[CUICrashLogBrowsingStateRegistry sharedRegistry];\n    \n    CUICrashLogBrowsingState * tBrowsingState=[tRegistry browsingStateForCrashLog:self.crashLog windowNumber:self.view.window.windowNumber];\n    \n    if (tBrowsingState.listDisclosedThreads==nil)\n        return;\n    \n    CUIThread * tThread=(CUIThread *) tUserInfo[@\"NSObject\"];\n    if (tThread==nil)\n        return;\n    \n    NSString * tNodePath=[tThread stringHash];\n    \n    [tBrowsingState.listDisclosedThreads removeObjectForKey:tNodePath];\n}\n\n- (void)outlineViewSelectionDidChange:(NSNotification *)inNotification\n{\n    NSIndexSet * tIndexSet=_outlineView.selectedRowIndexes;\n    \n    NSMutableSet * tMutableSet=[NSMutableSet set];\n    \n    [tIndexSet enumerateIndexesUsingBlock:^(NSUInteger bIndex, BOOL * bOutStop) {\n        \n        CUIStackFrame * tCall=[self->_outlineView itemAtRow:bIndex];\n        \n        CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tCall.binaryImageIdentifier];\n        \n        if (tBinaryImage==nil)\n        {\n            NSString * tIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tCall.binaryImageIdentifier];\n            \n            if (tIdentifier!=nil)\n            {\n                tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tIdentifier];\n                \n                if (tBinaryImage!=nil)\n                    tCall=[tCall stackFrameCloneWithBinaryImageIdentifier:tIdentifier];\n            }\n        }\n        \n        [tMutableSet addObject:tCall];\n    }];\n    \n    [CUICallsSelection sharedCallsSelection].calls=tMutableSet;\n}\n\n- (void)idealHeightDidChange:(NSNotification *)inNotification\n{\n    if (_showCrashedThreadState==YES)\n    {\n        _threadStateRowHeight=[inNotification.object doubleValue];\n    \n        [_outlineView noteHeightOfRowsWithIndexesChanged:[NSIndexSet indexSetWithIndex:[_outlineView rowForItem:self.crashLog.threadState]]];\n    }\n}\n\n#pragma mark -\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification\n{\n    // Ideally we should just request to symbolicate the machineInstructionAddresses which can be\n    \n    //NSArray * tBinaryUUIDs=inNotification.object;\n    \n    // A COMPLETER\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayedReloadSymbols) object:nil];\n    \n    [self performSelector:@selector(delayedReloadSymbols) withObject:nil afterDelay:0.1];\n}\n\n- (void)stackFrameSymbolicationDidSucceed:(NSNotification *)inNotification\n{\n    if (inNotification.object!=self.crashLog)\n        return;\n    \n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayedReloadSymbols) object:nil];\n    \n    [self performSelector:@selector(delayedReloadSymbols) withObject:nil afterDelay:0.1];\n}\n\n- (void)symbolicateAutomaticallyDidChange:(NSNotification *)inNotification\n{\n    [NSObject cancelPreviousPerformRequestsWithTarget:self selector:@selector(delayedReloadSymbols) object:nil];\n    \n    [self performSelector:@selector(delayedReloadSymbols) withObject:nil afterDelay:0.1];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsListViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23727\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23727\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIThreadsListViewController\">\n            <connections>\n                <outlet property=\"_outlineView\" destination=\"gh9-Ip-fKG\" id=\"z3P-vC-c9G\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"922\" height=\"423\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"34\" horizontalPageScroll=\"10\" verticalLineScroll=\"34\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"R4z-bC-VfP\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"922\" height=\"423\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"73h-CD-YYB\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"920\" height=\"406\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <outlineView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"32\" rowSizeStyle=\"automatic\" viewBased=\"YES\" indentationPerLevel=\"16\" outlineTableColumn=\"AqU-d4-LSX\" id=\"gh9-Ip-fKG\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"920\" height=\"406\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"symbol\" editable=\"NO\" width=\"800.5\" minWidth=\"400\" maxWidth=\"2000\" id=\"AqU-d4-LSX\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"re8-kq-Bgf\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"thread cell\" id=\"LLf-ct-Yhe\" userLabel=\"Thread Cell View\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"806\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ybx-jg-xnl\">\n                                                        <rect key=\"frame\" x=\"26\" y=\"9\" width=\"685\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"mPE-vB-wpB\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ej7-Ge-b3Z\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"pcH-zm-4GP\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"Ej7-Ge-b3Z\" id=\"zTa-iV-0HM\"/>\n                                                    <outlet property=\"textField\" destination=\"Ybx-jg-xnl\" id=\"gzK-Au-hx4\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"thread named cell\" id=\"PAD-zc-ide\" userLabel=\"Thread Named Cell View\" customClass=\"CUIThreadNamedTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"35\" width=\"806\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"8zb-8i-7Ud\">\n                                                        <rect key=\"frame\" x=\"26\" y=\"15\" width=\"687\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"f4D-Vb-6gL\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"hFe-nR-Rmw\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"R9U-DY-aRQ\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gfG-nY-Fsa\">\n                                                        <rect key=\"frame\" x=\"26\" y=\"2\" width=\"687\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"7IH-jO-kIb\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dispatchQueueNameLabel\" destination=\"gfG-nY-Fsa\" id=\"nev-JZ-IWA\"/>\n                                                    <outlet property=\"imageView\" destination=\"hFe-nR-Rmw\" id=\"u6A-M4-wbJ\"/>\n                                                    <outlet property=\"textField\" destination=\"8zb-8i-7Ud\" id=\"UO0-67-ZvU\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"call cell\" id=\"IxE-qC-tm7\" userLabel=\"Call Cell View\" customClass=\"CUICallTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"69\" width=\"806\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"zYN-md-DWz\">\n                                                        <rect key=\"frame\" x=\"409\" y=\"2\" width=\"397\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"xz4-uD-QgZ\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ccd-Rc-JcA\">\n                                                        <rect key=\"frame\" x=\"238\" y=\"2\" width=\"106\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"MBD-jX-1c6\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"rPM-r3-prW\">\n                                                        <rect key=\"frame\" x=\"51\" y=\"2\" width=\"183\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"AkO-y0-dmU\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"9YS-QZ-Rhi\">\n                                                        <rect key=\"frame\" x=\"7\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"VbT-7Z-aXY\"/>\n                                                    </imageView>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"shV-g7-uOD\">\n                                                        <rect key=\"frame\" x=\"24\" y=\"2\" width=\"20\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" alignment=\"right\" id=\"IHA-2s-W7f\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"addressLabel\" destination=\"ccd-Rc-JcA\" id=\"rga-Mt-o2I\"/>\n                                                    <outlet property=\"binaryImageLabel\" destination=\"rPM-r3-prW\" id=\"8la-jY-F3z\"/>\n                                                    <outlet property=\"callIndexLabel\" destination=\"shV-g7-uOD\" id=\"NAS-fg-OGb\"/>\n                                                    <outlet property=\"imageView\" destination=\"9YS-QZ-Rhi\" id=\"b88-VD-oam\"/>\n                                                    <outlet property=\"textField\" destination=\"zYN-md-DWz\" id=\"ddN-1x-cLZ\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"source\" editable=\"NO\" width=\"104.5\" minWidth=\"64\" maxWidth=\"3.4028234663852886e+38\" id=\"QPp-Ew-77n\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"5hj-HL-Uaz\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"t1H-R8-h2o\" customClass=\"CUISourceFileTableCellView\">\n                                                <rect key=\"frame\" x=\"809.54695148075859\" y=\"1\" width=\"108\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Y7T-bG-hNX\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"95\" height=\"15\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QK9-9V-J6R\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"fIM-Pw-L4h\">\n                                                        <rect key=\"frame\" x=\"93\" y=\"3\" width=\"14\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <buttonCell key=\"cell\" type=\"square\" bezelStyle=\"shadowlessSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"elf-PF-gce\">\n                                                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                            <font key=\"font\" metaFont=\"system\"/>\n                                                        </buttonCell>\n                                                        <connections>\n                                                            <action selector=\"openSourceFile:\" target=\"-2\" id=\"JZA-Wh-frz\"/>\n                                                        </connections>\n                                                    </button>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"openButton\" destination=\"fIM-Pw-L4h\" id=\"tch-rp-okJ\"/>\n                                                    <outlet property=\"textField\" destination=\"Y7T-bG-hNX\" id=\"m6Z-P6-r0F\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"UMn-jj-VOg\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"xja-Xh-dqN\"/>\n                                </connections>\n                            </outlineView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"h3H-D6-1dB\">\n                        <rect key=\"frame\" x=\"1\" y=\"407\" width=\"920\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Cz6-QO-RIt\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"130\" y=\"-28.5\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"20\" height=\"20\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsListViewController_RTL.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23727\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23727\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIThreadsListViewController\">\n            <connections>\n                <outlet property=\"_outlineView\" destination=\"gh9-Ip-fKG\" id=\"z3P-vC-c9G\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"922\" height=\"423\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"34\" horizontalPageScroll=\"10\" verticalLineScroll=\"34\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"R4z-bC-VfP\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"922\" height=\"423\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"73h-CD-YYB\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"920\" height=\"421\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <outlineView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"32\" rowSizeStyle=\"automatic\" viewBased=\"YES\" indentationPerLevel=\"16\" outlineTableColumn=\"AqU-d4-LSX\" userInterfaceLayoutDirection=\"rightToLeft\" id=\"gh9-Ip-fKG\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"920\" height=\"421\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"symbol\" editable=\"NO\" width=\"800\" minWidth=\"400\" maxWidth=\"2000\" id=\"AqU-d4-LSX\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"left\" title=\"Text Cell\" id=\"re8-kq-Bgf\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"thread cell\" id=\"LLf-ct-Yhe\" userLabel=\"Thread Cell View\">\n                                                <rect key=\"frame\" x=\"114\" y=\"1\" width=\"805\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ybx-jg-xnl\">\n                                                        <rect key=\"frame\" x=\"97\" y=\"9\" width=\"684\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"mPE-vB-wpB\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ej7-Ge-b3Z\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"782\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"pcH-zm-4GP\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"Ej7-Ge-b3Z\" id=\"zTa-iV-0HM\"/>\n                                                    <outlet property=\"textField\" destination=\"Ybx-jg-xnl\" id=\"gzK-Au-hx4\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"thread named cell\" id=\"PAD-zc-ide\" userLabel=\"Thread Named Cell View\" customClass=\"CUIThreadNamedTableCellView\">\n                                                <rect key=\"frame\" x=\"114\" y=\"35\" width=\"805\" height=\"32\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"8zb-8i-7Ud\">\n                                                        <rect key=\"frame\" x=\"95\" y=\"15\" width=\"686\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"f4D-Vb-6gL\">\n                                                            <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"hFe-nR-Rmw\" customClass=\"CUIThreadImageView\">\n                                                        <rect key=\"frame\" x=\"782\" y=\"4\" width=\"20\" height=\"23\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"R9U-DY-aRQ\" customClass=\"CUIThreadImageCell\"/>\n                                                    </imageView>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gfG-nY-Fsa\">\n                                                        <rect key=\"frame\" x=\"95\" y=\"2\" width=\"686\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"7IH-jO-kIb\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dispatchQueueNameLabel\" destination=\"gfG-nY-Fsa\" id=\"nev-JZ-IWA\"/>\n                                                    <outlet property=\"imageView\" destination=\"hFe-nR-Rmw\" id=\"u6A-M4-wbJ\"/>\n                                                    <outlet property=\"textField\" destination=\"8zb-8i-7Ud\" id=\"UO0-67-ZvU\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"call cell\" id=\"IxE-qC-tm7\" userLabel=\"Call Cell View\" customClass=\"CUICallTableCellView\">\n                                                <rect key=\"frame\" x=\"114\" y=\"69\" width=\"805\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"zYN-md-DWz\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"2\" width=\"396\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"xz4-uD-QgZ\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ccd-Rc-JcA\">\n                                                        <rect key=\"frame\" x=\"465\" y=\"2\" width=\"106\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"MBD-jX-1c6\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"rPM-r3-prW\">\n                                                        <rect key=\"frame\" x=\"575\" y=\"2\" width=\"183\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"AkO-y0-dmU\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"9YS-QZ-Rhi\">\n                                                        <rect key=\"frame\" x=\"784\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"VbT-7Z-aXY\"/>\n                                                    </imageView>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"shV-g7-uOD\">\n                                                        <rect key=\"frame\" x=\"765\" y=\"2\" width=\"20\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" id=\"IHA-2s-W7f\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"addressLabel\" destination=\"ccd-Rc-JcA\" id=\"rga-Mt-o2I\"/>\n                                                    <outlet property=\"binaryImageLabel\" destination=\"rPM-r3-prW\" id=\"8la-jY-F3z\"/>\n                                                    <outlet property=\"callIndexLabel\" destination=\"shV-g7-uOD\" id=\"NAS-fg-OGb\"/>\n                                                    <outlet property=\"imageView\" destination=\"9YS-QZ-Rhi\" id=\"b88-VD-oam\"/>\n                                                    <outlet property=\"textField\" destination=\"zYN-md-DWz\" id=\"ddN-1x-cLZ\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"source\" editable=\"NO\" width=\"76\" minWidth=\"64\" maxWidth=\"3.4028234663852886e+38\" id=\"QPp-Ew-77n\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"left\" title=\"Text Cell\" id=\"5hj-HL-Uaz\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"t1H-R8-h2o\" customClass=\"CUISourceFileTableCellView\">\n                                                <rect key=\"frame\" x=\"30\" y=\"1\" width=\"80\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Y7T-bG-hNX\">\n                                                        <rect key=\"frame\" x=\"-17\" y=\"1\" width=\"95\" height=\"15\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QK9-9V-J6R\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"fIM-Pw-L4h\">\n                                                        <rect key=\"frame\" x=\"-33\" y=\"3\" width=\"14\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <buttonCell key=\"cell\" type=\"square\" bezelStyle=\"shadowlessSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"elf-PF-gce\">\n                                                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                            <font key=\"font\" metaFont=\"system\"/>\n                                                        </buttonCell>\n                                                        <connections>\n                                                            <action selector=\"openSourceFile:\" target=\"-2\" id=\"JZA-Wh-frz\"/>\n                                                        </connections>\n                                                    </button>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"openButton\" destination=\"fIM-Pw-L4h\" id=\"tch-rp-okJ\"/>\n                                                    <outlet property=\"textField\" destination=\"Y7T-bG-hNX\" id=\"m6Z-P6-r0F\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"UMn-jj-VOg\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"xja-Xh-dqN\"/>\n                                </connections>\n                            </outlineView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"h3H-D6-1dB\">\n                        <rect key=\"frame\" x=\"1\" y=\"407\" width=\"869\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Cz6-QO-RIt\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"130\" y=\"-28.5\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"20\" height=\"20\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsViewController.h",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUICrashLog.h\"\n\n#import \"CUIStackFrame+UI.h\"\n\n#import \"CUIStackFrameComponents.h\"\n\n#import \"CUISourceFileTableCellView.h\"\n\n#import \"CUISymbolicationDataFormatter.h\"\n\n#import \"CUIHopperDisassemblerManager.h\"\n\n@interface CUIThreadsViewController : NSViewController <CUIHopperDisassemblerActions>\n{\n    IBOutlet NSMenuItem * _showWithMenuItem;\n}\n\n    @property (nonatomic) CUICrashLog * crashLog;\n\n    @property (nonatomic) BOOL showOnlyCrashedThread;\n\n    @property (nonatomic) CUIStackFrameComponents visibleStackFrameComponents;\n\n    @property (readonly) CUISymbolicationDataFormatter * symbolColumnFormatter;\n\n    @property (readonly) CUISymbolicationDataFormatter * lineColumnFormatter;\n\n\n    @property (nonatomic) NSUInteger numberOfSelectedStackFrames;\n\n    @property (nonatomic) NSArray<CUIStackFrame *> * selectedStackFrames;\n\n- (instancetype)initWithUserInterfaceLayoutDirection:(NSUserInterfaceLayoutDirection)inUserInterfaceLayoutDirection;\n\n- (NSMenu *)createFrameContextualMenu;\n\n- (IBAction)copyMachineInstructionAddress:(id)sender;\n    \n- (IBAction)copyBinaryImageOffset:(id)sender;\n    \n- (IBAction)openSourceFile:(id)sender;\n\n- (void)setUpSourceFileCellView:(CUISourceFileTableCellView *)inTableCellView withSymbolicationData:(CUISymbolicationData *)inSymbolicationData;\n\n// Notifications\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification;\n\n- (void)stackFrameSymbolicationDidSucceed:(NSNotification *)inNotification;\n\n- (void)symbolicateAutomaticallyDidChange:(NSNotification *)inNotification;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIThreadsViewController.m",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIThreadsViewController.h\"\n\n#import \"CUIApplicationPreferences.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\n#import \"CUIRawCrashLog+Path.h\"\n\nNSString * const CUIThreadsViewSelectedCallsDidChangeNotification=@\"CUIThreadsViewSelectedCallsDidChangeNotification\";\n\n@interface CUIThreadsViewController () <NSMenuItemValidation>\n\n    @property (readwrite) CUISymbolicationDataFormatter * symbolColumnFormatter;\n\n    @property (readwrite) CUISymbolicationDataFormatter * lineColumnFormatter;\n\n@end\n\n@implementation CUIThreadsViewController\n\n- (instancetype)initWithUserInterfaceLayoutDirection:(NSUserInterfaceLayoutDirection)userInterfaceLayoutDirection\n{\n    return [super init];\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (NSUInteger)numberOfSelectedStackFrames\n{\n    return 0;\n}\n\n- (NSArray<CUIStackFrame *> *)selectedStackFrames\n{\n    return @[];\n}\n\n#pragma mark -\n\n- (void)viewDidLoad\n{\n    [super viewDidLoad];\n    \n    self.symbolColumnFormatter=[CUISymbolicationDataFormatter new];\n    \n    self.symbolColumnFormatter.pathStyle=CUISymbolicationDataFormatterNoStyle;\n    \n    self.lineColumnFormatter=[CUISymbolicationDataFormatter new];\n    \n    self.lineColumnFormatter.symbolStyle=CUISymbolicationDataFormatterNoStyle;\n    self.lineColumnFormatter.pathStyle=CUISymbolicationDataFormatterShortStyle;\n    self.lineColumnFormatter.coordinatesStyle=CUISymbolicationDataFormatterFullStyle;\n}\n\n- (void)viewDidAppear\n{\n    [super viewDidAppear];\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter addObserver:self selector:@selector(dSYMBundlesManagerDidAddBundles:) name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(stackFrameSymbolicationDidSucceed:) name:CUIStackFrameSymbolicationDidSucceedNotification object:nil];\n    \n    [tNotificationCenter addObserver:self selector:@selector(symbolicateAutomaticallyDidChange:) name:CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification object:nil];\n}\n\n- (void)viewWillDisappear\n{\n    [super viewWillDisappear];\n    \n    NSNotificationCenter * tNotificationCenter=NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter removeObserver:self name:CUIdSYMBundlesManagerDidAddBundlesNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIStackFrameSymbolicationDidSucceedNotification object:nil];\n    \n    [tNotificationCenter removeObserver:self name:CUIPreferencesSymbolicationSymbolicateAutomaticallyDidChangeNotification object:nil];\n}\n\n#pragma mark -\n\n- (NSMenu *)createFrameContextualMenu\n{\n    NSMenu * tMenu=[[NSMenu alloc] initWithTitle:@\"\"];\n    \n    NSMenuItem * tMenuItem=[[NSMenuItem alloc] initWithTitle:NSLocalizedString(@\"Copy\", @\"\") action:@selector(copy:) keyEquivalent:@\"\"];\n    tMenuItem.target=self;\n    \n    [tMenu addItem:tMenuItem];\n    \n    tMenuItem=[[NSMenuItem alloc] initWithTitle:NSLocalizedString(@\"Copy Machine Instruction Address\", @\"\") action:@selector(copyMachineInstructionAddress:) keyEquivalent:@\"\"];\n    tMenuItem.target=self;\n    \n    [tMenu addItem:tMenuItem];\n    \n    tMenuItem=[[NSMenuItem alloc] initWithTitle:NSLocalizedString(@\"Copy Binary Image Offset\", @\"\") action:@selector(copy:) keyEquivalent:@\"\"];\n    tMenuItem.target=self;\n    tMenuItem.keyEquivalentModifierMask=NSEventModifierFlagOption;\n    tMenuItem.alternate=YES;\n    \n    [tMenu addItem:tMenuItem];\n    \n    // Show With menu\n    \n    NSMenu * tHopperMenu=[[CUIHopperDisassemblerManager sharedManager] availableApplicationsMenuWithTarget:self];\n    \n    if (tHopperMenu!=nil)\n    {\n        [tMenu addItem:[NSMenuItem separatorItem]];\n        \n        tMenuItem=[[NSMenuItem alloc] initWithTitle:NSLocalizedString(@\"Show In\", @\"\") action:nil keyEquivalent:@\"\"];\n        tMenuItem.submenu=tHopperMenu;\n        \n        [tMenu addItem:tMenuItem];\n    }\n    \n    return tMenu;\n}\n\n#pragma mark -\n\n- (void)setUpSourceFileCellView:(CUISourceFileTableCellView *)inTableCellView withSymbolicationData:(CUISymbolicationData *)inSymbolicationData\n{\n    NSString * tSourceFilePath=inSymbolicationData.sourceFilePath;\n    \n    NSTextField * tLabel=inTableCellView.textField;\n    \n    tLabel.stringValue=[self.lineColumnFormatter stringForObjectValue:inSymbolicationData];\n    tLabel.toolTip=tSourceFilePath;\n    \n    BOOL tHidesOpenButton=YES;\n    \n    NSURL * tURL=[NSURL fileURLWithPath:tSourceFilePath];\n    \n    if (tURL.isFileURL==YES)\n    {\n        NSFileManager * tFileManager=[NSFileManager defaultManager];\n        \n        if ([tFileManager fileExistsAtPath:tURL.path]==YES)\n        {\n            tHidesOpenButton=NO;\n        }\n    }\n    \n    inTableCellView.openButton.hidden=tHidesOpenButton;\n    \n    NSRect tFrame=tLabel.frame;\n    \n    if (tHidesOpenButton==YES)\n    {\n        tFrame.size.width=NSMaxX(inTableCellView.frame)-NSMinX(tFrame)-4;\n        \n        tLabel.frame=tFrame;\n    }\n    else\n    {\n        CGFloat tWidth=[tLabel.attributedStringValue size].width;\n        NSRect tButtonFrame=inTableCellView.openButton.frame;\n        \n        switch(inTableCellView.userInterfaceLayoutDirection)\n        {\n            case NSUserInterfaceLayoutDirectionLeftToRight:\n                tFrame.size.width=tWidth+5;\n                \n                tLabel.frame=tFrame;\n                \n                tButtonFrame.origin.x=NSMaxX(tLabel.frame)+2;\n                \n                break;\n            \n            case NSUserInterfaceLayoutDirectionRightToLeft:\n                \n                tFrame.size.width=tWidth+5;\n                \n                tLabel.frame=tFrame;\n                \n                tButtonFrame.origin.x=NSMinX(tLabel.frame)-15;\n                \n                break;\n        }\n        \n        inTableCellView.openButton.frame=tButtonFrame;\n    }\n}\n\n#pragma mark -\n\n- (BOOL)validateMenuItem:(NSMenuItem *)inMenuItem\n{\n    SEL tAction=inMenuItem.action;\n    \n    NSUInteger tCount=self.numberOfSelectedStackFrames;\n    \n    if (tAction==@selector(copy:) ||\n        tAction==@selector(copyMachineInstructionAddress:) ||\n        tAction==@selector(copyBinaryImageOffset:))\n    {\n        return (tCount>0);\n    }\n    \n    if (tAction==@selector(openWithHopperDisassembler:))\n    {\n        if (tCount!=1)\n            return NO;\n        \n        NSArray<CUIStackFrame *> * tCalls=self.selectedStackFrames;\n        \n        NSFileManager * tFileManager=[NSFileManager defaultManager];\n        \n        for(CUIStackFrame * tStackFrame in tCalls)\n        {\n            NSString * tBinaryImageIdentifier=tStackFrame.binaryImageIdentifier;\n            \n            CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n            \n            if (tBinaryImage==nil)\n            {\n                NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n                \n                if (tAlternateIdentifier!=nil)\n                    tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n            }\n            \n            NSString * tPath=[self.crashLog stringByResolvingUSERInPath:tBinaryImage.path];\n            \n            if (tPath.length==0)\n                return NO;\n            \n            if ([tFileManager fileExistsAtPath:tPath]==NO)\n                return NO;\n        }\n    }\n    \n    return YES;\n}\n\n- (IBAction)copy:(id)sender\n{\n    NSArray<CUIStackFrame *> * tCalls=self.selectedStackFrames;\n    \n    // A VOIR : Ideally I would like to put ... between 2 non sequential calls if multiple row selection is allowed\n    \n    NSArray * tLines=[tCalls WB_arrayByMappingObjectsUsingBlock:^id(CUIStackFrame * bStackFrame, NSUInteger bIndex) {\n        \n        NSString * tLine=[bStackFrame pasteboardRepresentationWithComponents:self.visibleStackFrameComponents];\n        \n        return tLine;\n    }];\n    \n    NSString * tPasteboardString=[tLines componentsJoinedByString:@\"\\n\"];\n    \n    NSPasteboard * tPasteboard=[NSPasteboard  generalPasteboard];\n    \n    [tPasteboard declareTypes:@[WBPasteboardTypeString] owner:nil];\n    [tPasteboard setString:tPasteboardString forType:WBPasteboardTypeString];\n}\n\n- (IBAction)copyMachineInstructionAddress:(id)sender\n{\n    NSArray<CUIStackFrame *> * tCalls=self.selectedStackFrames;\n    \n    NSArray * tAddresses=[tCalls WB_arrayByMappingObjectsUsingBlock:^id(CUIStackFrame * bStackFrame, NSUInteger bIndex) {\n        \n        NSString * tLine=[NSString stringWithFormat:@\"0x%lx\",bStackFrame.machineInstructionAddress];\n        \n        return tLine;\n    }];\n    \n    NSString * tPasteboardString=[tAddresses componentsJoinedByString:@\" \"];    // Uses spaces so that the output can paste for atos(1) command line tool\n    \n    NSPasteboard * tPasteboard=[NSPasteboard  generalPasteboard];\n    \n    [tPasteboard declareTypes:@[WBPasteboardTypeString] owner:nil];\n    [tPasteboard setString:tPasteboardString forType:WBPasteboardTypeString];\n    \n}\n\n- (IBAction)copyBinaryImageOffset:(id)sender\n{\n    NSArray<CUIStackFrame *> * tCalls=self.selectedStackFrames;\n    \n    NSArray * tAddresses=[tCalls WB_arrayByMappingObjectsUsingBlock:^id(CUIStackFrame * bCall, NSUInteger bIndex) {\n        \n        NSString * tBinaryImageIdentifier=bCall.binaryImageIdentifier;\n        \n        CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n        \n        if (tBinaryImage==nil)\n        {\n            NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n            \n            if (tAlternateIdentifier!=nil)\n                tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n        }\n        \n        NSUInteger tAddress=bCall.machineInstructionAddress-tBinaryImage.binaryImageOffset;\n        \n        NSString * tLine=[NSString stringWithFormat:@\"0x%lx\",tAddress];\n        \n        return tLine;\n    }];\n    \n    NSString * tPasteboardString=[tAddresses componentsJoinedByString:@\" \"];\n    \n    NSPasteboard * tPasteboard=[NSPasteboard  generalPasteboard];\n    \n    [tPasteboard declareTypes:@[WBPasteboardTypeString] owner:nil];\n    [tPasteboard setString:tPasteboardString forType:WBPasteboardTypeString];\n}\n\n- (IBAction)openWithHopperDisassembler:(NSMenuItem *)sender\n{\n    CUIApplicationItemAttributes * tApplicationItemAttributes=sender.representedObject;\n    \n    NSArray<CUIStackFrame *> * tCalls=self.selectedStackFrames;\n    \n    [tCalls enumerateObjectsUsingBlock:^(CUIStackFrame * bCall, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        NSString * tBinaryImageIdentifier=bCall.binaryImageIdentifier;\n        \n        CUIBinaryImage * tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tBinaryImageIdentifier];\n        \n        if (tBinaryImage==nil)\n        {\n            NSString * tAlternateIdentifier=[self.crashLog.binaryImages binaryImageIdentifierForName:tBinaryImageIdentifier];\n            \n            if (tAlternateIdentifier!=nil)\n                tBinaryImage=[self.crashLog.binaryImages binaryImageWithIdentifier:tAlternateIdentifier];\n        }\n        \n        NSUInteger tAddress=bCall.machineInstructionAddress-tBinaryImage.binaryImageOffset;\n        \n        [[CUIHopperDisassemblerManager sharedManager] openBinaryImage:[self.crashLog stringByResolvingUSERInPath:tBinaryImage.path]\n                                            withApplicationAttributes:tApplicationItemAttributes\n                                                             codeType:self.crashLog.header.codeType\n                                                           fileOffSet:(void *)tAddress];\n    }];\n}\n\n- (IBAction)openSourceFile:(id)sender\n{\n}\n\n#pragma mark - Notifications\n\n- (void)dSYMBundlesManagerDidAddBundles:(NSNotification *)inNotification\n{\n}\n\n- (void)stackFrameSymbolicationDidSucceed:(NSNotification *)inNotification\n{\n}\n\n- (void)symbolicateAutomaticallyDidChange:(NSNotification *)inNotification\n{\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIdSYMBundlesManager.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUIdSYMBundle.h\"\n\nextern NSString * const CUIdSYMBundlesManagerDidAddBundlesNotification;\n\nextern NSString * const CUIdSYMBundlesManagerDidRemoveBundlesNotification;\n\n@interface CUIdSYMBundlesManager : NSObject\n\n+ (CUIdSYMBundlesManager *)sharedManager;\n\n- (BOOL)addBundle:(CUIdSYMBundle *)inBundle;\n\n- (BOOL)addBundles:(NSArray *)inBundles;\n\n- (void)removeBundle:(CUIdSYMBundle *)inBundle;\n\n- (void)removeBundles:(NSArray *)inBundles;\n\n- (CUIdSYMBundle *)bundleForBinaryUUID:(NSString *)inBinaryUUID;\n\n    @property (nonatomic,readonly) NSSet * bundlesSet;\n\n- (BOOL)containsBundle:(CUIdSYMBundle *)inBundle;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIdSYMBundlesManager.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIdSYMBundlesManager.h\"\n\nNSString * const CUIdSYMBundlesManagerDidAddBundlesNotification=@\"CUIdSYMBundlesManagerDidAddBundlesNotification\";\n\nNSString * const CUIdSYMBundlesManagerDidRemoveBundlesNotification=@\"CUIdSYMBundlesManagerDidRemoveBundlesNotification\";\n\nNSString * const CUIdSYMBundlesManagerContentsKey=@\"dSYMLibrary.contents\";\n\n@interface CUIdSYMBundlesManager ()\n{\n    NSMutableSet * _bundlesSet;\n    \n    NSMutableDictionary * _bundlesRegistry;\n}\n\n- (BOOL)_addBundles:(NSArray *)inBundles andNotify:(BOOL)inNotify;\n\n- (void)_synchronizeDefaults;\n\n@end\n\n@implementation CUIdSYMBundlesManager\n\n+ (CUIdSYMBundlesManager *)sharedManager\n{\n    static CUIdSYMBundlesManager * sdSYMBundlesManager=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sdSYMBundlesManager=[CUIdSYMBundlesManager new];\n        \n    });\n    \n    return sdSYMBundlesManager;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _bundlesRegistry=[NSMutableDictionary dictionary];\n        \n        _bundlesSet=[NSMutableSet set];\n        \n        NSUserDefaults * tDefaults=[NSUserDefaults standardUserDefaults];\n        \n        NSArray * tArray=[tDefaults arrayForKey:CUIdSYMBundlesManagerContentsKey];\n        \n        if (tArray.count>0)\n        {\n            NSArray * tBundles=[tArray WB_arrayByMappingObjectsLenientlyUsingBlock:^CUIdSYMBundle *(NSString * bBundlePath, NSUInteger bIndex) {\n                \n                return [[CUIdSYMBundle alloc] initWithPath:bBundlePath];\n            }];\n            \n            [self _addBundles:tBundles andNotify:NO];\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSSet *)bundlesSet\n{\n    return _bundlesSet;\n}\n\n#pragma mark -\n\n- (void)_synchronizeDefaults\n{\n    NSUserDefaults * tDefaults=[NSUserDefaults standardUserDefaults];\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    [_bundlesSet enumerateObjectsUsingBlock:^(CUIdSYMBundle * bBundle, BOOL * bOutStop) {\n        \n        [tMutableArray addObject:bBundle.bundlePath];\n    }];\n    \n    [tDefaults setValue:tMutableArray forKey:CUIdSYMBundlesManagerContentsKey];\n}\n\n#pragma mark -\n\n- (BOOL)containsBundle:(CUIdSYMBundle *)inBundle\n{\n    if (inBundle==nil)\n        return NO;\n    \n    for(CUIdSYMBundle * tBundle in _bundlesSet)\n    {\n        if ([tBundle.bundlePath caseInsensitiveCompare:inBundle.bundlePath]==NSOrderedSame)\n            return YES;\n    }\n    \n    return NO;\n}\n\n- (BOOL)addBundle:(CUIdSYMBundle *)inBundle\n{\n    if (inBundle==nil)\n        return NO;\n\n    return [self addBundles:@[inBundle]];\n}\n\n- (BOOL)addBundles:(NSArray *)inBundles\n{\n    return [self _addBundles:inBundles andNotify:YES];\n}\n\n- (BOOL)_addBundles:(NSArray *)inBundles andNotify:(BOOL)inNotify\n{\n    if (inBundles.count==0)\n        return NO;\n    \n    NSMutableArray * tAllBinaryUUIDs=[NSMutableArray array];\n    \n    for(CUIdSYMBundle * tBundle in inBundles)\n    {\n        NSArray * tBinaryUUIDs=[tBundle binaryUUIDs];\n        \n        if (tBinaryUUIDs.count==0)\n            return NO;\n        \n        \n        \n        NSMutableArray * tAddedBinaryUUIds=[NSMutableArray array];\n        \n        for(NSString * tBinaryUUID in tBinaryUUIDs)\n        {\n            if (_bundlesRegistry[tBinaryUUID]!=nil)\n                continue;\n            \n            _bundlesRegistry[tBinaryUUID]=tBundle;\n            \n            [tAddedBinaryUUIds addObject:tBinaryUUID];\n        }\n        \n        if (tAddedBinaryUUIds.count>0)\n        {\n            [tAllBinaryUUIDs addObjectsFromArray:tAddedBinaryUUIds];\n            \n            [_bundlesSet addObject:tBundle];\n        }\n    }\n    \n    // Post Notification?\n        \n    if (inNotify==YES)\n        [NSNotificationCenter.defaultCenter postNotificationName:CUIdSYMBundlesManagerDidAddBundlesNotification object:tAllBinaryUUIDs];\n    \n    [self _synchronizeDefaults];\n    \n    return YES;\n}\n\n- (void)removeBundle:(CUIdSYMBundle *)inBundle\n{\n    if (inBundle==nil)\n        return;\n    \n    [self removeBundles:@[inBundle]];\n}\n\n- (void)removeBundles:(NSArray *)inBundles\n{\n    if (inBundles.count==0)\n        return;\n    \n    NSMutableArray * tAllBinaryUUIDs=[NSMutableArray array];\n    \n    for(CUIdSYMBundle * tBundle in inBundles)\n    {\n        NSArray * tBinaryUUIDs=tBundle.binaryUUIDs;\n        \n        [tAllBinaryUUIDs addObjectsFromArray:tBinaryUUIDs];\n    }\n    \n    [_bundlesRegistry removeObjectsForKeys:tAllBinaryUUIDs];\n    \n    [_bundlesSet minusSet:[NSSet setWithArray:inBundles]];\n    \n    // Post Notification\n    \n    [NSNotificationCenter.defaultCenter postNotificationName:CUIdSYMBundlesManagerDidRemoveBundlesNotification object:tAllBinaryUUIDs];\n    \n    [self _synchronizeDefaults];\n}\n\n#pragma mark -\n\n- (CUIdSYMBundle *)bundleForBinaryUUID:(NSString *)inBinaryUUID\n{\n    if (inBinaryUUID==nil)\n        return nil;\n    \n    return _bundlesRegistry[inBinaryUUID];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIdSYMDropView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIFileDeadDropView.h\"\n\n@interface CUIdSYMDropView : CUIFileDeadDropView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIdSYMDropView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIdSYMDropView.h\"\n\n@implementation CUIdSYMDropView\n\n- (void)drawRect:(NSRect)inRect\n{\n    if (self.isHighlighted==YES)\n    {\n        NSRect tRect=NSInsetRect(self.bounds,300.0,4.0);\n        \n        NSBezierPath * tPath=[NSBezierPath bezierPath];\n        \n        [tPath moveToPoint:NSMakePoint(NSMinX(tRect), NSMinY(tRect))];\n        [tPath lineToPoint:NSMakePoint(NSMaxX(tRect), NSMinY(tRect))];\n        \n        tPath.lineWidth=3.0;\n        \n        if (@available(*, macOS 10.14))\n        {\n            [[NSColor selectedContentBackgroundColor] setStroke];\n        }\n        else\n        {\n            [[NSColor alternateSelectedControlColor] setStroke];\n        }\n        \n        [tPath stroke];\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIdSYMHunter.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\nextern NSString * const CUIdSYMHunterHuntDidFinishNotification;\n\n@interface CUIdSYMHunter : NSObject\n\n    @property (nonatomic,readonly) NSSet * huntingBundleUUIDs;\n\n+ (CUIdSYMHunter *)sharedHunter;\n\n- (void)huntBundleWithUUIDs:(NSSet *)inBundleUUIDs;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CUIdSYMHunter.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIdSYMHunter.h\"\n\n#import \"CUIdSYMBundlesManager.h\"\n\nNSString * const CUIdSYMHunterHuntDidFinishNotification=@\"CUIdSYMHunterHuntDidFinishNotification\";\n\n@interface  CUIdSYMHunter ()\n{\n    NSMutableSet * _runningQueries;\n    \n    NSMutableSet * _huntingBundleUUIDs;\n    \n    NSMutableDictionary * _registry;\n    \n    NSLock * _lock;\n}\n\n// Notifications\n\n- (void)metadataQueryDidFinishGathering:(NSNotification *)inNotification;\n\n@end\n\n@implementation CUIdSYMHunter\n\n+ (CUIdSYMHunter *)sharedHunter\n{\n    static CUIdSYMHunter * sHunter=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sHunter=[CUIdSYMHunter new];\n        \n    });\n    \n    return sHunter;\n}\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _runningQueries=[NSMutableSet set];\n        \n        _huntingBundleUUIDs=[NSMutableSet set];\n        \n        _registry=[NSMutableDictionary dictionary];\n        \n        _lock=[NSLock new];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSSet *)huntingBundleUUIDs\n{\n    NSSet * tSet=nil;\n    \n    [_lock lock];\n    \n    tSet=[_huntingBundleUUIDs copy];\n    \n    [_lock unlock];\n    \n    return tSet;\n}\n\n#pragma mark -\n\n- (void)huntBundleWithUUIDs:(NSSet *)inBundleUUIDs\n{\n    // Avoid looking for the same dSYM UUID multiple times at once\n    \n    NSMutableSet * tMutableSet=[inBundleUUIDs mutableCopy];\n\n    [_lock lock];\n    \n    [tMutableSet minusSet:_huntingBundleUUIDs];\n    \n    [_lock unlock];\n    \n    if (tMutableSet.count==0)\n        return;\n\n    NSMetadataQuery * tMetadataQuery=[NSMetadataQuery new];\n    \n    [NSNotificationCenter.defaultCenter addObserver:self\n                                           selector:@selector(metadataQueryDidFinishGathering:)\n                                               name:NSMetadataQueryDidFinishGatheringNotification\n                                             object:tMetadataQuery];\n    \n    // Look for dSYM with filtered UUIDs\n    \n    NSArray * tArray=[tMutableSet.allObjects WB_arrayByMappingObjectsUsingBlock:^NSString *(NSString * bUUID, NSUInteger bIndex) {\n        \n        return [NSString stringWithFormat:@\"(com_apple_xcode_dsym_uuids == '%@')\",bUUID];\n        \n    }];\n    \n    NSString * tPredicateString=[tArray componentsJoinedByString:@\" OR \"];\n    \n    tMetadataQuery.predicate=[NSPredicate predicateWithFormat:tPredicateString];\n    tMetadataQuery.searchScopes=@[NSMetadataQueryLocalComputerScope];\n    \n    [_lock lock];\n    \n    [_runningQueries addObject:tMetadataQuery];\n    \n    [_huntingBundleUUIDs unionSet:tMutableSet];\n    \n    _registry[[NSValue valueWithNonretainedObject:tMetadataQuery]]=tMutableSet;\n    \n    [_lock unlock];\n    \n    [tMetadataQuery startQuery];\n}\n\n#pragma mark - Notifications\n\n- (void)metadataQueryDidFinishGathering:(NSNotification *)inNotification\n{\n    NSMetadataQuery * tMetadataQuery=(NSMetadataQuery *)inNotification.object;\n    \n    [tMetadataQuery stopQuery];\n    \n    NSValue * tKey=[NSValue valueWithNonretainedObject:tMetadataQuery];\n    \n    [_lock lock];\n    \n    NSSet * tSet=_registry[tKey];\n    \n    [_huntingBundleUUIDs minusSet:tSet];\n    \n    [_registry removeObjectForKey:tKey];\n    \n    [_runningQueries removeObject:tMetadataQuery];\n    \n    [_lock unlock];\n    \n    dispatch_async(dispatch_get_main_queue(), ^{\n        \n        [tMetadataQuery enumerateResultsUsingBlock:^(id bResult, NSUInteger idx, BOOL * _Nonnull stop) {\n            \n            if ([bResult isKindOfClass:NSMetadataItem.class]==YES)\n            {\n                NSMetadataItem * tMetaDataItem=(NSMetadataItem *)bResult;\n                \n                //NSLog(@\"%@\",[tMetaDataItem valuesForAttributes:@[NSMetadataItemPathKey,@\"com_apple_xcode_dsym_uuids\",@\"com_apple_xcode_dsym_paths\",@\"kMDItemFSName\"]]);\n                \n                NSString * tdSYMPath=[tMetaDataItem valueForAttribute:NSMetadataItemPathKey];\n                \n                if (tdSYMPath!=nil)\n                {\n                    CUIdSYMBundlesManager * tBundlesManager=[CUIdSYMBundlesManager sharedManager];\n                    \n                    CUIdSYMBundle * tBundle=[[CUIdSYMBundle alloc] initWithPath:tdSYMPath];\n                    \n                    if (tBundle.isDSYMBundle==NO)\n                        return;\n                    \n                    if ([tBundlesManager containsBundle:tBundle]==YES)\n                        return;\n                    \n                    [tBundlesManager addBundles:@[tBundle]];\n                }\n            }\n        }];\n        \n        // Post Notification\n        \n        [NSNotificationCenter.defaultCenter postNotificationName:CUIdSYMHunterHuntDidFinishNotification object:nil];\n    });\n}\n\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/CodeSigningFlags.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>Host</key>\n\t<integer>1</integer>\n\t<key>Ad-hoc Signed</key>\n\t<integer>2</integer>\n\t<key>Get Task Allow</key>\n\t<integer>4</integer>\n\t<key>Installer</key>\n\t<integer>8</integer>\n\t<key>Forced Library Validation</key>\n\t<integer>16</integer>\n\t<key>Invalid Allowed</key>\n\t<integer>32</integer>\n\t<key>Force Hard</key>\n\t<integer>256</integer>\n\t<key>Force Kill</key>\n\t<integer>512</integer>\n\t<key>Force Expiration</key>\n\t<integer>1024</integer>\n\t<key>Restrict</key>\n\t<integer>2048</integer>\n\t<key>Enforcement</key>\n\t<integer>4096</integer>\n\t<key>Library Validation</key>\n\t<integer>8192</integer>\n\t<key>Runtime</key>\n\t<integer>65536</integer>\n\t<key>Linker Signed</key>\n\t<integer>131072</integer>\n\t<key>Platform Signed</key>\n\t<integer>67108864</integer>\n\t<key>Debugged</key>\n\t<integer>268435456</integer>\n\t<key>Signed</key>\n\t<integer>536870912</integer>\n</dict>\n</plist>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFEnums.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\ntypedef NS_ENUM(NSUInteger, DWRFVersion)\n{\n    DWRFVersion4=4,\n    DWRFVersion5=5\n};\n\ntypedef NS_ENUM(uint16_t,DW_LANG)\n{\n    DW_LANG_C89 = 0x0001,\n    DW_LANG_C = 0x0002,\n    DW_LANG_Ada83 = 0x0003,\n    DW_LANG_C_plus_plus = 0x0004,\n    DW_LANG_Cobol74 = 0x0005,\n    DW_LANG_Cobol85 = 0x0006,\n    DW_LANG_Fortran77 = 0x0007,\n    DW_LANG_Fortran90 = 0x0008,\n    DW_LANG_Pascal83 = 0x0009,\n    DW_LANG_Modula2 = 0x000a,\n    DW_LANG_Java = 0x000b,\n    DW_LANG_C99 = 0x000c,\n    DW_LANG_Ada95 = 0x000d,\n    DW_LANG_Fortran95 = 0x000e,\n    DW_LANG_PLI = 0x000f,\n    DW_LANG_ObjC = 0x0010,\n    DW_LANG_ObjC_plus_plus = 0x0011,\n    DW_LANG_UPC = 0x0012,\n    DW_LANG_D = 0x0013,\n    DW_LANG_Python = 0x0014,\n    DW_LANG_OpenCL = 0x0015,\n    DW_LANG_Go = 0x0016,\n    DW_LANG_Modula3 = 0x0017,\n    DW_LANG_Haskell = 0x0018,\n    DW_LANG_C_plus_plus_03 = 0x0019,\n    DW_LANG_C_plus_plus_11 = 0x001a,\n    DW_LANG_OCaml = 0x001b,\n    DW_LANG_Rust = 0x001c,\n    DW_LANG_C11 = 0x001d,\n    DW_LANG_Swift = 0x001e,\n    DW_LANG_Julia = 0x001f,\n    DW_LANG_Dylan = 0x0020,\n    DW_LANG_C_plus_plus_14 = 0x0021,\n    DW_LANG_Fortran03 = 0x0022,\n    DW_LANG_Fortran08 = 0x0023,\n    DW_LANG_RenderScript = 0x0024,\n    DW_LANG_BLISS = 0x0025,\n    \n    DW_LANG_lo_user = 0x8000,\n    DW_LANG_hi_user = 0xffff,\n    \n    DW_LANG_Mips_Assembler = 0x8001,\n    DW_LANG_GOOGLE_RenderScript = 0x8e57,\n    DW_LANG_SUN_Assembler = 0x9001,\n    DW_LANG_ALTIUM_Assembler = 0x9101,\n    DW_LANG_BORLAND_Delphi = 0xb000,\n};\n\ntypedef NS_ENUM(uint16_t, DW_TAG)\n{\n    DW_TAG_array_type = 0x01,\n    DW_TAG_class_type = 0x02,\n    DW_TAG_entry_point = 0x03,\n    DW_TAG_enumeration_type = 0x04,\n    DW_TAG_formal_parameter = 0x05,\n    DW_TAG_imported_declaration = 0x08,\n    DW_TAG_label = 0x0a,\n    DW_TAG_lexical_block = 0x0b,\n    DW_TAG_member = 0x0d,\n    DW_TAG_pointer_type = 0x0f,\n    DW_TAG_reference_type = 0x10,\n    DW_TAG_compile_unit = 0x11,\n    DW_TAG_string_type = 0x12,\n    DW_TAG_structure_type = 0x13,\n    DW_TAG_subroutine_type = 0x15,\n    DW_TAG_typedef = 0x16,\n    DW_TAG_union_type = 0x17,\n    DW_TAG_unspecified_parameters = 0x18,\n    DW_TAG_variant = 0x19,\n    DW_TAG_common_block = 0x1a,\n    DW_TAG_common_inclusion = 0x1b,\n    DW_TAG_inheritance = 0x1c,\n    DW_TAG_inlined_subroutine = 0x1d,\n    DW_TAG_module = 0x1e,\n    DW_TAG_ptr_to_member_type = 0x1f,\n    DW_TAG_set_type = 0x20,\n    DW_TAG_subrange_type = 0x21,\n    DW_TAG_with_stmt = 0x22,\n    DW_TAG_access_declaration = 0x23,\n    DW_TAG_base_type = 0x24,\n    DW_TAG_catch_block = 0x25,\n    DW_TAG_const_type = 0x26,\n    DW_TAG_constant = 0x27,\n    DW_TAG_enumerator = 0x28,\n    DW_TAG_file_type = 0x29,\n    DW_TAG_friend = 0x2a,\n    DW_TAG_namelist = 0x2b,\n    DW_TAG_namelist_item = 0x2c,\n    DW_TAG_packed_type = 0x2d,\n    DW_TAG_subprogram = 0x2e,\n    DW_TAG_template_type_parameter = 0x2f,\n    DW_TAG_template_value_parameter = 0x30,\n    DW_TAG_thrown_type = 0x31,\n    DW_TAG_try_block = 0x32,\n    DW_TAG_variant_part = 0x33,\n    DW_TAG_variable = 0x34,\n    DW_TAG_volatile_type = 0x35,\n    DW_TAG_dwarf_procedure = 0x36,\n    DW_TAG_restrict_type = 0x37,\n    DW_TAG_interface_type = 0x38,\n    DW_TAG_namespace = 0x39,\n    DW_TAG_imported_module = 0x3a,\n    DW_TAG_unspecified_type = 0x3b,\n    DW_TAG_partial_unit = 0x3c,\n    DW_TAG_imported_unit = 0x3d,\n    DW_TAG_condition = 0x3f,\n    DW_TAG_shared_type = 0x40,\n    DW_TAG_rvalue_reference_type = 0x41,\n    \n    DW_TAG_lo_user = 0x4080,\n    DW_TAG_hi_user = 0xffff\n};\n\ntypedef NS_ENUM(uint16_t, DW_AT)\n{\n    DW_AT_null = 0x00,\n    \n    DW_AT_sibling = 0x01,\n    DW_AT_location = 0x02,\n    DW_AT_name = 0x03,\n    DW_AT_ordering = 0x09,\n    DW_AT_byte_size = 0x0b,\n    DW_AT_bit_offset = 0x0c,\n    DW_AT_bit_size = 0x0d,\n    DW_AT_stmt_list = 0x10,\n    DW_AT_low_pc = 0x11,\n    DW_AT_high_pc = 0x12,\n    DW_AT_language = 0x13,\n    DW_AT_discr = 0x15,\n    DW_AT_discr_value = 0x16,\n    DW_AT_visibility = 0x17,\n    DW_AT_import = 0x18,\n    DW_AT_string_length = 0x19,\n    DW_AT_common_reference = 0x1a,\n    DW_AT_comp_dir = 0x1b,\n    DW_AT_const_value = 0x1c,\n    DW_AT_containing_type = 0x1d,\n    DW_AT_default_value = 0x1e,\n    DW_AT_inline = 0x20,\n    DW_AT_is_optional = 0x21,\n    DW_AT_lower_bound = 0x22,\n    DW_AT_producer = 0x25,\n    DW_AT_prototyped = 0x27,\n    DW_AT_return_addr = 0x2a,\n    DW_AT_start_scope = 0x2c,\n    DW_AT_bit_stride = 0x2e,\n    DW_AT_upper_bound = 0x2f,\n    DW_AT_abstract_origin = 0x31,\n    DW_AT_accessibility = 0x32,\n    DW_AT_address_class = 0x33,\n    DW_AT_artificial = 0x34,\n    DW_AT_base_types = 0x35,\n    DW_AT_calling_convention = 0x36,\n    DW_AT_count = 0x37,\n    DW_AT_data_member_location = 0x38,\n    DW_AT_decl_column = 0x39,\n    DW_AT_decl_file = 0x3a,\n    DW_AT_decl_line = 0x3b,\n    DW_AT_declaration = 0x3c,\n    DW_AT_discr_list = 0x3d,\n    DW_AT_encoding = 0x3e,\n    DW_AT_external = 0x3f,\n    DW_AT_frame_base = 0x40,\n    DW_AT_friend = 0x41,\n    DW_AT_identifier_case = 0x42,\n    DW_AT_macro_info = 0x43,\n    DW_AT_namelist_item = 0x44,\n    DW_AT_priority = 0x45,\n    DW_AT_segment = 0x46,\n    DW_AT_specification = 0x47,\n    DW_AT_static_link = 0x48,\n    DW_AT_type = 0x49,\n    DW_AT_use_location = 0x4a,\n    DW_AT_variable_parameter = 0x4b,\n    DW_AT_virtuality = 0x4c,\n    DW_AT_vtable_elem_location = 0x4d,\n    \n    // DWARF 3\n    \n    DW_AT_allocated = 0x4e,\n    DW_AT_associated = 0x4f,\n    DW_AT_data_location = 0x50,\n    DW_AT_byte_stride = 0x51,\n    DW_AT_entry_pc = 0x52,\n    DW_AT_use_UTF8 = 0x53,\n    DW_AT_extension = 0x54,\n    DW_AT_ranges = 0x55,\n    DW_AT_trampoline = 0x56,\n    DW_AT_call_column = 0x57,\n    DW_AT_call_file = 0x58,\n    DW_AT_call_line = 0x59,\n    DW_AT_description = 0x5a,\n    DW_AT_binary_scale = 0x5b,\n    DW_AT_decimal_scale = 0x5c,\n    DW_AT_small = 0x5d,\n    DW_AT_decimal_sign = 0x5e,\n    DW_AT_digit_count = 0x5f,\n    DW_AT_picture_string = 0x60,\n    DW_AT_mutable = 0x61,\n    DW_AT_threads_scaled = 0x62,\n    DW_AT_explicit = 0x63,\n    DW_AT_object_pointer = 0x64,\n    DW_AT_endianity = 0x65,\n    DW_AT_elemental = 0x66,\n    DW_AT_pure = 0x67,\n    DW_AT_recursive = 0x68,\n    \n    // DWARF 4\n    \n    DW_AT_signature = 0x69,\n    DW_AT_main_subprogram = 0x6a,\n    DW_AT_data_bit_offset = 0x6b,\n    DW_AT_const_expr = 0x6c,\n    DW_AT_enum_class = 0x6d,\n    DW_AT_linkage_name = 0x6e,\n    \n    DW_AT_str_offsets_base = 0x72,  // DWARF 5\n    DW_AT_addr_base = 0x73,  // DWARF 5\n    \n    DW_AT_call_all_calls = 0x7a,\n    \n    DW_AT_lo_user = 0x2000,\n    DW_AT_hi_user = 0x3fff,\n    \n    DW_AT_MIPS_linkage_name = 0x2007,\n    \n    \n    /* GNU extensions.  */\n    \n    DW_AT_sf_names = 0x2101,\n    DW_AT_src_info = 0x2102,\n    DW_AT_mac_info = 0x2103,\n    DW_AT_src_coords = 0x2104,\n    DW_AT_body_begin = 0x2105,\n    DW_AT_body_end = 0x2106,\n    DW_AT_GNU_vector = 0x2107,\n    \n    DW_AT_GNU_guarded_by = 0x2108,\n    DW_AT_GNU_pt_guarded_by = 0x2109,\n    DW_AT_GNU_guarded = 0x210a,\n    DW_AT_GNU_pt_guarded = 0x210b,\n    DW_AT_GNU_locks_excluded = 0x210c,\n    DW_AT_GNU_exclusive_locks_required = 0x210d,\n    DW_AT_GNU_shared_locks_required = 0x210e,\n    DW_AT_GNU_odr_signature = 0x210f,\n    DW_AT_GNU_template_name = 0x2110,\n    \n    DW_AT_GNU_call_site_value = 0x2111,\n    DW_AT_GNU_call_site_data_value = 0x2112,\n    DW_AT_GNU_call_site_target = 0x2113,\n    DW_AT_GNU_call_site_target_clobbered = 0x2114,\n    DW_AT_GNU_tail_call = 0x2115,\n    DW_AT_GNU_all_tail_call_sites = 0x2116,\n    DW_AT_GNU_all_call_sites = 0x2117,\n    DW_AT_GNU_all_source_call_sites = 0x2118,\n    \n    DW_AT_GNU_macros = 0x2119,\n    \n    DW_AT_GNU_deleted = 0x211a,\n    \n    DW_AT_GNU_dwo_name = 0x2130,\n    DW_AT_GNU_dwo_id = 0x2131,\n    DW_AT_GNU_ranges_base = 0x2132,\n    DW_AT_GNU_addr_base = 0x2133,\n    DW_AT_GNU_pubnames = 0x2134,\n    DW_AT_GNU_pubtypes = 0x2135,\n    \n    DW_AT_GNU_discriminator = 0x2136,\n    DW_AT_GNU_locviews = 0x2137,\n    DW_AT_GNU_entry_view = 0x2138,\n    \n    // LLVM project extensions\n    \n    DW_AT_LLVM_include_path = 0x3e00,\n    DW_AT_LLVM_config_macros = 0x3e01,\n    DW_AT_LLVM_isysroot = 0x3e02,\n    \n    // Apple extensions\n    \n    DW_AT_APPLE_optimized = 0x3fe1,\n    DW_AT_APPLE_flags = 0x3fe2,\n    DW_AT_APPLE_isa = 0x3fe3,\n    DW_AT_APPLE_block = 0x3fe4,\n    DW_AT_APPLE_major_runtime_vers = 0x3fe5,\n    DW_AT_APPLE_runtime_class = 0x3fe6,\n    DW_AT_APPLE_omit_frame_ptr = 0x3fe7,\n    DW_AT_APPLE_property_name = 0x3fe8,\n    DW_AT_APPLE_property_getter = 0x3fe9,\n    DW_AT_APPLE_property_setter = 0x3fea,\n    DW_AT_APPLE_property_attribute = 0x3feb,\n    DW_AT_APPLE_objc_complete_type = 0x3fec,\n    DW_AT_APPLE_property = 0x3fed\n};\n\ntypedef NS_ENUM(NSUInteger, DW_FORM)\n{\n    DW_FORM_addr = 0x01,\n    DW_FORM_block2 = 0x03,\n    DW_FORM_block4 = 0x04,\n    DW_FORM_data2 = 0x05,\n    DW_FORM_data4 = 0x06,\n    DW_FORM_data8 = 0x07,\n    DW_FORM_string = 0x08,\n    DW_FORM_block = 0x09,\n    DW_FORM_block1 = 0x0a,\n    DW_FORM_data1 = 0x0b,\n    DW_FORM_flag = 0x0c,\n    DW_FORM_sdata = 0x0d,\n    DW_FORM_strp = 0x0e,\n    DW_FORM_udata = 0x0f,\n    DW_FORM_ref_addr = 0x10,\n    DW_FORM_ref1 = 0x11,\n    DW_FORM_ref2 = 0x12,\n    DW_FORM_ref4 = 0x13,\n    DW_FORM_ref8 = 0x14,\n    DW_FORM_ref_udata = 0x15,\n    DW_FORM_indirect = 0x16,\n    DW_FORM_sec_offset = 0x17,\n    DW_FORM_exprloc = 0x18,\n    DW_FORM_flag_present = 0x19,\n    DW_FORM_reg_sig8 = 0x20,\n    \n    // DWARF v5\n    \n    DW_FORM_strx = 0x1a,\n    DW_FORM_addrx = 0x1b,\n    \n    DW_FORM_data16 = 0x1e,\n    \n    DW_FORM_implicit_const=0x21,\n    \n    DW_FORM_strx1 = 0x25,\n    DW_FORM_strx2 = 0x26,\n    DW_FORM_strx3 = 0x27,\n    DW_FORM_strx4 = 0x28,\n    DW_FORM_addrx1 = 0x29,\n    DW_FORM_addrx2 = 0x2a,\n    DW_FORM_addrx3 = 0x2b,\n    DW_FORM_addrx4 = 0x2c\n};\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFFileObject.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"MCHObjectFile.h\"\n\n#import \"CUISymbolicationData.h\"\n\n#import \"DWRFSection_debug_addr.h\"\n\n#import \"DWRFSection_debug_str.h\"\n\n#import \"DWRFSection_debug_str_offsets.h\"\n\n#import \"DWRFSection_debug_abbrev.h\"\n\n#import \"DWRFSection_debug_line.h\"\n\n#import \"DWRFSection_debug_info.h\"\n\n#import \"DWRFSection_debug_aranges.h\"\n\n@interface DWRFFileObject : NSObject\n\n    @property (readonly) DWRFSection_debug_addr * section_debug_addr;\n\n    @property (readonly) DWRFSection_debug_str * section_debug_str;\n\n    @property (readonly) DWRFSection_debug_str_offsets * section_debug_str_offsets;\n\n    @property (readonly) DWRFSection_debug_abbrev * section_debug_abbrev;\n\n    @property (readonly) DWRFSection_debug_line * section_debug_line;\n\n    @property (readonly) DWRFSection_debug_info * section_debug_info;\n\n    @property (readonly) DWRFSection_debug_aranges * section_debug_aranges;\n\n\n- (instancetype)initWithMachObjectFile:(MCHObjectFile *)inObjectFile;\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(uint64_t)inAddress completionHandler:(void (^)(BOOL bFound,CUISymbolicationData * bSymbolicationData))handler;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFFileObject.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFFileObject.h\"\n\n#import \"MCHSegmentLoadCommand.h\"\n\n#include <mach-o/loader.h>\n#include <mach-o/fat.h>\n\n@interface DWRFFileObject ()\n{\n    MCHObjectFile * _cachedObjectFile;\n}\n\n    @property DWRFSection_debug_addr * section_debug_addr;\n\n    @property DWRFSection_debug_str * section_debug_str;\n\n    @property DWRFSection_debug_str_offsets * section_debug_str_offsets;\n\n    @property DWRFSection_debug_abbrev * section_debug_abbrev;\n\n    @property DWRFSection_debug_line * section_debug_line;\n\n    @property DWRFSection_debug_info * section_debug_info;\n\n    @property DWRFSection_debug_aranges * section_debug_aranges;\n\n@end\n\n@implementation DWRFFileObject\n\n- (instancetype)initWithMachObjectFile:(MCHObjectFile *)inObjectFile\n{\n    if (inObjectFile==nil)\n        return nil;\n    \n    if (inObjectFile.fileType!=MH_DSYM)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cachedObjectFile=inObjectFile;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (BOOL)analyze\n{\n    NSArray * tSegment64LoadCommands=[_cachedObjectFile loadCommandsOfType:LC_SEGMENT_64];\n    \n    for(MCHSegmentLoadCommand * tLoadCommand in tSegment64LoadCommands)\n    {\n        if ([tLoadCommand.segment.name isEqualToString:@\"__DWARF\"])\n        {\n            MCHSection * tSection=[tLoadCommand.segment sectionNamed:@\"__debug_addr\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_addr=[[DWRFSection_debug_addr alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO]];\n                \n                if (_section_debug_addr==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            tSection=[tLoadCommand.segment sectionNamed:@\"__debug_str\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_str=[[DWRFSection_debug_str alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO]];\n                \n                if (_section_debug_str==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            tSection=[tLoadCommand.segment sectionNamed:@\"__debug_str_offsets\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_str_offsets=[[DWRFSection_debug_str_offsets alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO]];\n                \n                if (_section_debug_str_offsets==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            tSection=[tLoadCommand.segment sectionNamed:@\"__debug_abbrev\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_abbrev=[[DWRFSection_debug_abbrev alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO]];\n                \n                if (_section_debug_abbrev==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            tSection=[tLoadCommand.segment sectionNamed:@\"__debug_line\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_line=[[DWRFSection_debug_line alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO]];\n                \n                if (_section_debug_line==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            tSection=[tLoadCommand.segment sectionNamed:@\"__debug_info\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_info=[[DWRFSection_debug_info alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO] fileObject:self];\n                \n                if (_section_debug_info==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            tSection=[tLoadCommand.segment sectionNamed:@\"__debug_aranges\"];\n            \n            if (tSection!=nil)\n            {\n                _section_debug_aranges=[[DWRFSection_debug_aranges alloc] initWithData:[NSData dataWithBytesNoCopy:(void *)tSection.buffer length:tSection.bufferSize freeWhenDone:NO]];\n                \n                if (_section_debug_aranges==nil)\n                {\n                    // A COMPLETER\n                    \n                    return NO;\n                }\n            }\n            \n            return YES;\n        }\n    }\n    \n    return NO;\n}\n\n#pragma mark -\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(uint64_t)inAddress completionHandler:(void (^)(BOOL bFound,CUISymbolicationData * bSymbolicationData))handler\n{\n    if (self.section_debug_info==nil)\n    {\n        if ([self analyze]==NO)\n        {\n            if (handler!=nil)\n                handler(NO,nil);\n            \n            return;\n        }\n    }\n    \n    uint64_t tDebugInfoOffset=[self.section_debug_aranges debugInfoOffsetForAddress:inAddress];\n    \n    if (tDebugInfoOffset==UINT64_MAX)\n    {\n        if (handler!=nil)\n            handler(NO,nil);\n        \n        return;\n    }\n    \n    DWRFDebuggingInformationCompilationUnit * tCompilationUnit=[self.section_debug_info compilationUnitAtOffset:tDebugInfoOffset];\n    \n    if (tCompilationUnit==nil)\n    {\n        if (handler!=nil)\n            handler(NO,nil);\n        \n        return;\n    }\n    \n    // Look for the sub_program with inAddress for its AT_low_pc attribute\n    \n    DWRFSubProgramEntry * tSubProgramEntry=[tCompilationUnit subProgramForMachineInstructionAddress:inAddress];\n    \n    if (tSubProgramEntry==nil)\n    {\n        if (handler!=nil)\n            handler(NO,nil);\n        \n        return;\n    }\n    \n    DWRFLineNumberProgramLocation * tLocation=[tCompilationUnit.lineNumberProgram locationForMachineInstructionAddress:inAddress];\n    \n    if (tLocation!=nil)\n    {\n        CUISymbolicationData * tSymbolicationData=[CUISymbolicationData new];\n        \n        tSymbolicationData.stackFrameSymbol=[tSubProgramEntry stackFrameSymbolWithLanguage:tCompilationUnit.language];\n        tSymbolicationData.byteOffset=inAddress-tSubProgramEntry.machineInstructionAddress;\n        \n        NSUInteger tFileIndex=tSubProgramEntry.sourcePathIndex;\n        \n        if (tFileIndex!=0)\n        {\n            // A AMELIORER (path absolu à trouver)\n        }\n        \n        NSString * tFilePath=tLocation.fileName;\n        \n        if (tFilePath.length>0 && [tFilePath characterAtIndex:0]!='/')\n        {\n            NSString * tCompilationDirectory=tCompilationUnit.compilationDirectory;\n            \n            if (tCompilationDirectory.length>0)\n                tFilePath=[tCompilationDirectory stringByAppendingPathComponent:tFilePath];\n        }\n        \n        tSymbolicationData.sourceFilePath=tFilePath;\n        \n        tSymbolicationData.lineNumber=tLocation.lineNumber;\n        tSymbolicationData.columnNumber=tLocation.columnNumber;\n        \n        handler(YES,tSymbolicationData);\n        \n        return;\n    }\n    \n    // Not found, use less accurate data\n    \n        NSLog(@\"0x%llX -> %@ %@ - %llu %llu\",inAddress,tSubProgramEntry.name,tLocation.fileName,tLocation.lineNumber,tLocation.columnNumber);\n    \n    \n    NSString * tSourceFilePath=@\"-\";\n    \n    NSUInteger tFileIndex=tSubProgramEntry.sourcePathIndex;\n    \n    if (tFileIndex!=0)\n    {\n        DWRFLineNumberProgram * tLineNumberProgram=[tCompilationUnit lineNumberProgram];\n    \n        if (tLineNumberProgram!=nil)\n        {\n            tSourceFilePath=[tLineNumberProgram fileNameAtIndex:tFileIndex];\n            \n            if (tSourceFilePath==nil)\n            {\n                tSourceFilePath=@\"-\";\n            }\n        }\n    }\n    \n    NSLog(@\"0x%llX -> %@ %@ - %llu\",inAddress,tSubProgramEntry.name,tSourceFilePath,tSubProgramEntry.line);\n    \n    if (handler!=nil)\n    {\n        CUISymbolicationData * tSymbolicationData=[CUISymbolicationData new];\n        \n        tSymbolicationData.stackFrameSymbol=tSubProgramEntry.name;\n        tSymbolicationData.byteOffset=inAddress-tSubProgramEntry.machineInstructionAddress;\n        tSymbolicationData.sourceFilePath=tSourceFilePath;\n        tSymbolicationData.lineNumber=tSubProgramEntry.line;\n        \n        handler(YES,tSymbolicationData);\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFObject.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\ntypedef NS_ENUM(NSUInteger, DWRFFormat)\n{\n    DWRFUnknownFormat,\n    DWRF32Format,\n    DWRF64Format\n};\n\n@interface DWRFObject : NSObject\n\n    @property DWRFFormat  dwarfFormat;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFObject.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFObject.h\"\n\n@implementation DWRFObject\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _dwarfFormat=DWRFUnknownFormat;\n    }\n    \n    return self;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_abbrev.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"DWRFEnums.h\"\n\n@interface DWRFAttributeSpecification : NSObject\n\n    @property (readonly) DW_AT name;\n    @property (readonly) DW_FORM form;\n\n@end\n\n@interface DWRFAbbreviationDeclaration : NSObject\n\n    @property (readonly) uint64_t code;\n\n    @property (readonly) DW_TAG tag;\n\n    @property (readonly) BOOL hasChildren;\n\n    @property (nonatomic,readonly) NSArray<DWRFAttributeSpecification *> * allAttributesSpecifications;\n\n@end\n\n\n\n@interface DWRFAbbreviationDeclarationsSet : NSObject\n\n    @property (nonatomic,readonly) NSArray<DWRFAbbreviationDeclaration *> * allAbbreviationDeclarations;\n\n- (DWRFAbbreviationDeclaration *)abbreviationDeclarationForCode:(uint64_t)inCode;\n\n@end\n\n\n\n@interface DWRFSection_debug_abbrev : NSObject\n\n- (instancetype)initWithData:(NSData *)inData;\n\n- (instancetype)initWithBytes:(uint8_t *)inBytes length:(NSUInteger)inLength;\n\n- (DWRFAbbreviationDeclarationsSet *)abbreviationDeclarationsSetAtOffset:(uint64_t)inOffset;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_abbrev.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_abbrev.h\"\n\n#include \"LEB128.h\"\n\ntypedef NS_ENUM(uint8_t, DW_CHILDREN)\n{\n    DW_CHILDREN_no = 0x00,\n    DW_CHILDREN_yes = 0x01\n};\n\n\n@interface DWRFAttributeSpecification ()\n\n    @property DW_AT name;\n    @property DW_FORM form;\n\n- (instancetype)initWithName:(DW_AT)inName form:(DW_FORM)inForm;\n\n@end\n\n@implementation DWRFAttributeSpecification\n\n- (instancetype)initWithName:(DW_AT)inName form:(DW_FORM)inForm\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _name=inName;\n        _form=inForm;\n    }\n    \n    return self;\n}\n\n@end\n\n\n@interface DWRFAbbreviationDeclaration ()\n{\n    NSMutableArray<DWRFAttributeSpecification *> * _attributesSpecifications;\n}\n\n    @property uint64_t code;\n\n    @property DW_TAG tag;\n\n    @property BOOL hasChildren;\n\n+ (DWRFAbbreviationDeclaration *)nilDeclaration;\n\n@end\n\n@implementation DWRFAbbreviationDeclaration\n\n+ (DWRFAbbreviationDeclaration *)nilDeclaration\n{\n    static DWRFAbbreviationDeclaration * sNilAbbreviationDeclaration=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sNilAbbreviationDeclaration=[DWRFAbbreviationDeclaration new];\n        \n        sNilAbbreviationDeclaration.code=0;\n        sNilAbbreviationDeclaration.tag=0;\n        \n    });\n    \n    return sNilAbbreviationDeclaration;\n}\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        uint8_t * tBuffer=inBuffer;\n        \n        _code=DWRF_readULEB128(tBuffer, &tBuffer);\n        \n        if (_code==0)\n            return [DWRFAbbreviationDeclaration nilDeclaration];\n        \n        _tag=DWRF_readULEB128(tBuffer, &tBuffer);\n        \n        _hasChildren=((*((uint8_t *)tBuffer))==DW_CHILDREN_yes);\n        tBuffer+=sizeof(uint8_t);\n        \n        _attributesSpecifications=[NSMutableArray array];\n        \n        while (1)\n        {\n            DW_AT tName=DWRF_readULEB128(tBuffer, &tBuffer);\n            DW_FORM tForm=DWRF_readULEB128(tBuffer, &tBuffer);\n            \n            if (tName==0 && tForm==0)\n                break;\n            \n            DWRFAttributeSpecification * tAttributeSpecification=[[DWRFAttributeSpecification alloc] initWithName:tName form:tForm];\n            \n            if (tAttributeSpecification!=nil)\n                [_attributesSpecifications addObject:tAttributeSpecification];\n        }\n        \n        if (outBuffer!=NULL)\n            *outBuffer=tBuffer;\n    }\n    \n    \n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSArray<DWRFAttributeSpecification *> *)allAttributesSpecifications\n{\n    return _attributesSpecifications;\n}\n\n@end\n\n\n@interface DWRFAbbreviationDeclarationsSet ()\n{\n    NSMutableArray<DWRFAbbreviationDeclaration *> * _abbreviationDeclarations;\n}\n\n\n@end\n\n@implementation DWRFAbbreviationDeclarationsSet\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        uint8_t *tBuffer=inBuffer;\n        \n        _abbreviationDeclarations=[NSMutableArray array];\n        \n        while (1)\n        {\n            DWRFAbbreviationDeclaration * tAbreviationDeclaration=[[DWRFAbbreviationDeclaration alloc] initWithBuffer:tBuffer outBuffer:&tBuffer];\n            \n            if (tAbreviationDeclaration==nil)\n            {\n                NSLog(@\"Error when unarchiving abbreviation declaration\");\n                \n                return nil;\n            }\n            \n            if (tAbreviationDeclaration.code==0)\n                break;\n            \n            [_abbreviationDeclarations addObject:tAbreviationDeclaration];\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n - (NSArray<DWRFAbbreviationDeclaration *> *)allAbbreviationDeclarations\n{\n    return _abbreviationDeclarations;\n}\n\n- (DWRFAbbreviationDeclaration *)abbreviationDeclarationForCode:(uint64_t)inCode\n{\n    if (inCode>_abbreviationDeclarations.count)\n        return nil;\n    \n    return _abbreviationDeclarations[inCode];\n}\n\n@end\n\n\n@interface DWRFSection_debug_abbrev ()\n{\n    NSData * _cachedData;\n    \n    NSMutableDictionary<NSNumber *,DWRFAbbreviationDeclarationsSet *> * _cachedAbbreviationDeclarationsSets;\n}\n\n@end\n\n@implementation DWRFSection_debug_abbrev\n\n- (instancetype)initWithData:(NSData *)inData\n{\n    if (inData==nil || [inData isKindOfClass:NSData.class]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cachedData=inData;\n        \n        _cachedAbbreviationDeclarationsSets=[NSMutableDictionary dictionary];\n    }\n    \n    return self;\n}\n\n- (instancetype)initWithBytes:(uint8_t *)inBytes length:(NSUInteger)inLength\n{\n    if (inBytes==NULL)\n        return nil;\n    \n    return [self initWithData:[NSData dataWithBytesNoCopy:inBytes length:inLength]];\n}\n\n#pragma mark -\n\n- (DWRFAbbreviationDeclarationsSet *)abbreviationDeclarationsSetAtOffset:(uint64_t)inOffset\n{\n    DWRFAbbreviationDeclarationsSet * tDeclaration=_cachedAbbreviationDeclarationsSets[@(inOffset)];\n    \n    if (tDeclaration!=nil)\n        return tDeclaration;\n    \n    uint8_t * tBufferPtr=(uint8_t *)_cachedData.bytes;\n    \n    tDeclaration=[[DWRFAbbreviationDeclarationsSet alloc] initWithBuffer:tBufferPtr+inOffset];\n    \n    if (tDeclaration!=nil)\n        _cachedAbbreviationDeclarationsSets[@(inOffset)]=tDeclaration;\n    \n    return tDeclaration;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_addr.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"DWRFObject.h\"\n\n@interface DWRFSection_debug_addr : NSObject\n\n- (instancetype)initWithData:(NSData *)inData;\n\n- (uint64_t)addressAtIndex:(uint64_t)inIndex base:(uint64_t)inBase format:(DWRFFormat)inFormat;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_addr.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_addr.h\"\n\n@interface DWRFSection_debug_addr ()\n{\n    NSData * _cachedData;\n}\n\n@end\n\n\n@implementation DWRFSection_debug_addr\n\n- (instancetype)initWithData:(NSData *)inData\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cachedData=inData;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (uint64_t)addressAtIndex:(uint64_t)inIndex base:(uint64_t)inBase format:(DWRFFormat)inFormat\n{\n    uint8_t * tBytes=(uint8_t *)_cachedData.bytes;\n    \n    tBytes+=inBase;\n    \n    uint64_t tAddress=0;\n    \n    if (inFormat==DWRF64Format)\n    {\n        tBytes+=(inIndex*sizeof(uint64_t));\n        \n        tAddress=*((uint64_t *)tBytes);\n    }\n    else\n    {\n        tBytes+=(inIndex*sizeof(uint32_t));\n        \n        tAddress=*((uint32_t *)tBytes);\n    }\n    \n    return tAddress;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_aranges.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface DWRFCompilationUnitAddressSpace : NSObject\n\n    @property (nonatomic,readonly) uint64_t debugInfoOffset;\n\n- (BOOL)containsAddress:(uint64_t)inAddress;\n\n@end\n\n@interface DWRFSection_debug_aranges : NSObject\n\n- (instancetype)initWithData:(NSData *)inData;\n\n    @property (readonly) NSArray<DWRFCompilationUnitAddressSpace *> * allCompilationUnitsAddressSpaces;\n\n- (DWRFCompilationUnitAddressSpace *)compilationUnitAddressSpaceForAddress:(uint64_t)inAddress;\n\n- (uint64_t)debugInfoOffsetForAddress:(uint64_t)inAddress;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_aranges.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_aranges.h\"\n\n#import \"DWRFObject.h\"\n\n\n@interface DWRFCompilationUnitAddressSpaceHeader : DWRFObject\n\n    @property uint64_t unitLength;\n\n    @property uint16_t version;\n\n    @property uint64_t debugInfoOffset;\n\n    @property uint8_t addressSize;\n    @property uint8_t segmentSize;\n\n    @property (nonatomic,readonly) size_t headerSize;\n\n    @property (nonatomic,readonly) size_t addressRangeDescriptorSize;\n\n    @property (nonatomic,readonly) size_t paddingSize;\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer;\n\n@end\n\n@implementation DWRFCompilationUnitAddressSpaceHeader\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n                        \n    if (self!=nil)\n    {\n        uint8_t * tBufferPtr=inBuffer;\n        \n        uint32_t tUnsignedInteger=*((uint32_t *)tBufferPtr);\n        \n        tBufferPtr+=sizeof(uint32_t);\n        \n        if (tUnsignedInteger==0xffffffff)\n        {\n            self.dwarfFormat=DWRF64Format;\n            \n            _unitLength=*((uint64_t *)tBufferPtr);\n            \n            tBufferPtr+=sizeof(uint64_t);\n        }\n        else\n        {\n            self.dwarfFormat=DWRF32Format;\n            \n            _unitLength=tUnsignedInteger;\n        }\n        \n        _version=*((uint16_t *)tBufferPtr);\n        tBufferPtr+=sizeof(uint16_t);\n        \n        if (self.dwarfFormat==DWRF64Format)\n        {\n            _debugInfoOffset=*((uint64_t *)tBufferPtr);\n            tBufferPtr+=sizeof(uint64_t);\n        }\n        else\n        {\n            _debugInfoOffset=*((uint32_t *)tBufferPtr);\n            tBufferPtr+=sizeof(uint32_t);\n        }\n        \n        _addressSize=*((uint8_t *)tBufferPtr);\n        tBufferPtr+=sizeof(uint8_t);\n        \n        _segmentSize=*((uint8_t *)tBufferPtr);\n        tBufferPtr+=sizeof(uint8_t);\n        \n        if (outBuffer!=NULL)\n            *outBuffer=tBufferPtr;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (size_t)headerSize\n{\n    switch(self.dwarfFormat)\n    {\n        case DWRF32Format:\n            \n            return 12*sizeof(uint8_t);\n            \n        case DWRF64Format:\n            \n            return 24*sizeof(uint8_t);\n            \n        default:\n            \n            return -1;\n    }\n}\n\n- (size_t)addressRangeDescriptorSize\n{\n    return _segmentSize+2*_addressSize;\n}\n\n- (size_t)paddingSize\n{\n    size_t tDescriptorSize=self.addressRangeDescriptorSize;\n    size_t tHeaderSize=self.headerSize;\n    \n    while (tHeaderSize>tDescriptorSize)\n        tHeaderSize-=tDescriptorSize;\n    \n    return (tDescriptorSize-tHeaderSize);\n}\n\n@end\n\n@interface DWRFAddressRangeDescriptor : NSObject\n{\n    uint64_t _segmentSelector;\n}\n\n    @property uint64_t location;\n    @property uint64_t length;\n\n+ (DWRFAddressRangeDescriptor *)addressRangeDescriptionWithLocation:(uint64_t)inLocation length:(uint64_t)inLength;\n\n- (instancetype)initWithLocation:(uint64_t)inLocation length:(uint64_t)inLength;\n\n- (BOOL)containsAddress:(uint64_t)inAddress;\n\n@end\n\n@implementation DWRFAddressRangeDescriptor\n\n+ (DWRFAddressRangeDescriptor *)addressRangeDescriptionWithLocation:(uint64_t)inLocation length:(uint64_t)inLength\n{\n    return [[DWRFAddressRangeDescriptor alloc] initWithLocation:inLocation length:inLength];\n}\n\n- (instancetype)initWithLocation:(uint64_t)inLocation length:(uint64_t)inLength\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _location=inLocation;\n        _length=inLength;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSUInteger)hash\n{\n    return self.location;\n}\n\n#pragma mark -\n\n- (BOOL)containsAddress:(uint64_t)inAddress\n{\n    return (inAddress>=self.location && inAddress<(self.location+self.length));\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n    return [NSString stringWithFormat:@\"0x%lx - 0x%lx\",(long)self.location,(long)(self.location+self.length-1)];\n}\n\n@end\n\n\n@interface DWRFCompilationUnitAddressSpace ()\n{\n    DWRFCompilationUnitAddressSpaceHeader * _header;\n    \n    NSMutableArray<DWRFAddressRangeDescriptor *> * _addressRangeDescriptors;\n}\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer;\n\n@end\n\n@implementation DWRFCompilationUnitAddressSpace\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n    \n    if (self==nil)\n        return nil;\n    \n    uint8_t * tBufferPtr=inBuffer;\n    \n    _header=[[DWRFCompilationUnitAddressSpaceHeader alloc] initWithBuffer:tBufferPtr outBuffer:NULL];\n    \n    _addressRangeDescriptors=[NSMutableArray array];\n    \n    tBufferPtr+=_header.addressRangeDescriptorSize*sizeof(uint8_t);\n    \n    while(1)\n    {\n        uint64_t tSegmentSelector=0;\n        \n        if (_header.segmentSize!=0)\n        {\n            // A COMPLETER\n        }\n        \n        uint64_t tLocation;\n        uint64_t tLength;\n        \n        if (_header.addressSize==4)\n        {\n            tLocation=*((uint32_t *)tBufferPtr);\n            tBufferPtr+=sizeof(uint32_t);\n            \n            tLength=*((uint32_t *)tBufferPtr);\n            tBufferPtr+=sizeof(uint32_t);\n        }\n        else\n        {\n            tLocation=*((uint64_t *)tBufferPtr);\n            tBufferPtr+=sizeof(uint64_t);\n            \n            tLength=*((uint64_t *)tBufferPtr);\n            tBufferPtr+=sizeof(uint64_t);\n        }\n        \n        if (tSegmentSelector==0 && tLocation==0 && tLength==0)\n            break;\n        \n        DWRFAddressRangeDescriptor * tDescription=[DWRFAddressRangeDescriptor addressRangeDescriptionWithLocation:tLocation length:tLength];\n        \n        [_addressRangeDescriptors addObject:tDescription];\n        \n        //printf(\"0x%llX-0x%llX\\n\",tLocation,tLocation+tLength-1);\n    }\n    \n    if (outBuffer!=NULL)\n        *outBuffer=tBufferPtr;\n    \n    return self;\n}\n\n#pragma mark -\n\n- (uint64_t)debugInfoOffset\n{\n    return _header.debugInfoOffset;\n}\n\n- (BOOL)containsAddress:(uint64_t)inAddress\n{\n    for(DWRFAddressRangeDescriptor * tAddressRangeDescription in _addressRangeDescriptors)\n    {\n        if ([tAddressRangeDescription containsAddress:inAddress]==YES)\n            return YES;\n    }\n    \n    return NO;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n    NSMutableString * tMutableString=[NSMutableString string];\n    \n    [tMutableString appendFormat:@\"unit_length: %llu\\n\",_header.unitLength];\n    [tMutableString appendFormat:@\"version: %hu\\n\",_header.version];\n    [tMutableString appendFormat:@\"debug_info_offset: %llu\\n\",_header.debugInfoOffset];\n    \n    for(DWRFAddressRangeDescriptor * tDescriptor in _addressRangeDescriptors)\n        [tMutableString appendFormat:@\"%@\\n\",[tDescriptor description]];\n    \n    return tMutableString;\n}\n\n@end\n\n\n@interface DWRFSection_debug_aranges ()\n{\n    NSMutableArray * _compilationUnitsAddressSpaces;\n    \n}\n\n@end\n\n@implementation DWRFSection_debug_aranges\n\n- (instancetype)initWithData:(NSData *)inData\n{\n    if (inData==nil || [inData isKindOfClass:NSData.class]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _compilationUnitsAddressSpaces=[NSMutableArray array];\n        \n        uint8_t * tBufferPtr=(uint8_t *)inData.bytes;\n        uint8_t * tEndBufferPtr=tBufferPtr+inData.length;\n        \n        while(tBufferPtr<tEndBufferPtr)\n        {\n            DWRFCompilationUnitAddressSpace * tAddressSpace=[[DWRFCompilationUnitAddressSpace alloc] initWithBuffer:tBufferPtr outBuffer:&tBufferPtr];\n            \n            if (tAddressSpace!=nil)\n                [_compilationUnitsAddressSpaces addObject:tAddressSpace];\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSArray<DWRFCompilationUnitAddressSpace *> *)allCompilationUnitsAddressSpaces\n{\n    return _compilationUnitsAddressSpaces;\n}\n\n- (DWRFCompilationUnitAddressSpace *)compilationUnitAddressSpaceForAddress:(uint64_t)inAddress\n{\n    for(DWRFCompilationUnitAddressSpace * tAddressSpace in _compilationUnitsAddressSpaces)\n    {\n        if ([tAddressSpace containsAddress:inAddress]==YES)\n            return tAddressSpace;\n    }\n    \n    return nil;\n}\n\n- (uint64_t)debugInfoOffsetForAddress:(uint64_t)inAddress\n{\n    for(DWRFCompilationUnitAddressSpace * tAddressSpace in _compilationUnitsAddressSpaces)\n    {\n        if ([tAddressSpace containsAddress:inAddress]==YES)\n        {\n            return tAddressSpace.debugInfoOffset;\n        }\n    }\n\n    return UINT64_MAX;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_info.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"DWRFEnums.h\"\n\n#import \"DWRFSection_debug_line.h\"\n\n#import \"DWRFObject.h\"\n\n@class DWRFFileObject;\n\n@interface DWRFDIEAttribute : NSObject\n\n    @property DW_FORM form;\n\n    @property id object;\n\n    @property (nonatomic,readonly) BOOL isAddress;\n\n    @property (nonatomic,readonly) BOOL isConstant;\n\n    @property (nonatomic,readonly) BOOL isString;\n\n@end\n\n@interface DWRFDebuggingInformationEntry : NSObject\n\n    @property (readonly) uint64_t abbreviationCode;\n\n    @property (readonly) DW_TAG tag;\n\n    @property (readonly) NSDictionary<NSNumber *,DWRFDIEAttribute *> * attributes;\n\n    @property (readonly) DWRFDebuggingInformationEntry * parent;\n\n    @property (readonly) DWRFDebuggingInformationEntry * next;\n\n    @property (readonly) NSArray * children;\n\n    @property (readonly) DWRFDebuggingInformationEntry * referencedEntry;\n\n\n    @property (nonatomic,readonly,copy) NSString * name;        // attributes[@(DW_AT_name)]\n\n+ (DWRFDebuggingInformationEntry *)nilEntry;\n\n- (id)objectForAttribute:(DW_AT)inAttribute;\n\n- (DWRFDebuggingInformationEntry *)entryAtAddress:(uint8_t *)inAddress;\n\n- (BOOL)pcRangeContainsMachineInstructionAddress:(uint64_t)inMachineInstructionAddress;\n\n@end\n\n@interface DWRFCompileUnitEntry : DWRFDebuggingInformationEntry\n\n    @property (nonatomic,readonly) uint64_t lineNumberProgramOffset;\n\n    @property (nonatomic,readonly,copy) NSString * compiler;\n\n    @property (nonatomic,readonly) DW_LANG language;\n\n    @property (nonatomic,readonly,copy) NSString * compilationDirectory;\n\n@end\n\n@interface DWRFLexicalBlockEntry : DWRFDebuggingInformationEntry\n\n@end\n\n\n@interface DWRFSubProgramEntry : DWRFDebuggingInformationEntry\n\n@property (nonatomic,readonly) uint64_t machineInstructionAddress;\n\n    @property (readonly) NSUInteger sourcePathIndex;\n\n    @property (nonatomic,readonly) uint64_t line;\n\n- (NSString *)stackFrameSymbolWithLanguage:(DW_LANG)inLanguage;\n\n@end\n\n@interface DWRFDebuggingInformationCompilationUnit : DWRFObject\n\n    @property (nonatomic,readonly) DWRFLineNumberProgram * lineNumberProgram;\n\n    @property (nonatomic,readonly) DW_LANG language;\n\n    @property (nonatomic,readonly) NSString * compilationDirectory;\n\n- (DWRFDebuggingInformationEntry *)entryAtAddress:(uint8_t *)inAddress;\n\n- (DWRFSubProgramEntry *)subProgramForMachineInstructionAddress:(uint64_t)inAddress;\n\n@end\n\n\n@interface DWRFSection_debug_info : NSObject\n\n    @property (readonly) DWRFFileObject * fileObject;\n\n- (instancetype)initWithData:(NSData *)inData fileObject:(DWRFFileObject *)inFileObject;\n\n- (DWRFDebuggingInformationCompilationUnit *)compilationUnitAtOffset:(uint64_t)inOffset;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_info.m",
    "content": "/*\n Copyright (c) 2020-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_info.h\"\n\n#import \"DWRFFileObject.h\"\n\n#include \"LEB128.h\"\n\n#import \"CUICXXDemangler.h\"\n#import \"CUISwiftDemangler.h\"\n\n@implementation DWRFDIEAttribute\n\n- (BOOL)isAddress\n{\n    switch(self.form)\n    {\n        case DW_FORM_addr:\n        case DW_FORM_addrx:\n        case DW_FORM_addrx1:\n        case DW_FORM_addrx2:\n        case DW_FORM_addrx3:\n        case DW_FORM_addrx4:\n            \n            return YES;\n        \n        default:\n            \n            break;\n    }\n    \n    return NO;\n}\n\n- (BOOL)isConstant\n{\n    switch(self.form)\n    {\n        case DW_FORM_data1:\n        case DW_FORM_data2:\n        case DW_FORM_data4:\n        case DW_FORM_data8:\n        case DW_FORM_data16:\n            \n        case DW_FORM_sdata:\n        case DW_FORM_udata:\n            \n        case DW_FORM_implicit_const:\n            \n            return YES;\n            \n            \n        default:\n            \n            break;\n    }\n    \n    return NO;\n}\n\n- (BOOL)iString\n{\n    switch(self.form)\n    {\n        case DW_FORM_strp:\n        case DW_FORM_strx1:\n        case DW_FORM_strx2:\n        case DW_FORM_strx3:\n        case DW_FORM_strx4:\n            \n        case DW_FORM_strx:\n            \n            return YES;\n            \n            \n        default:\n            \n            break;\n    }\n    \n    return NO;\n}\n\n- (NSString *)description\n{\n    if (self.isAddress==YES)\n    {\n        NSNumber * tNumber=self.object;\n        \n        return [NSString stringWithFormat:@\"0x%016lx\",[tNumber unsignedIntegerValue]];\n    }\n    \n    return [self.object description];\n}\n\n@end\n\n@interface DWRFDebuggingInformationEntry ()\n\n    @property uint8_t * address;\n\n    @property uint64_t abbreviationCode;\n\n    @property DW_TAG tag;\n\n    @property NSDictionary<NSNumber *,DWRFDIEAttribute *> * attributes;\n\n    @property DWRFDebuggingInformationEntry * parent;\n\n    @property DWRFDebuggingInformationEntry * next;\n\n    @property NSArray * children;\n\n    @property DWRFDebuggingInformationEntry * referencedEntry;\n\n@end\n\n@implementation DWRFDebuggingInformationEntry\n\n+ (DWRFDebuggingInformationEntry *)nilEntry\n{\n    static DWRFDebuggingInformationEntry * sNilEntry=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sNilEntry=[DWRFDebuggingInformationEntry new];\n        \n        sNilEntry.abbreviationCode=0;\n        sNilEntry.tag=0;\n        \n    });\n    \n    return sNilEntry;\n}\n\n#pragma mark -\n\n- (NSString *)name\n{\n    NSString * tName=self.referencedEntry.attributes[@(DW_AT_name)].object;\n    \n    if (tName==nil)\n        tName=self.attributes[@(DW_AT_name)].object;\n    \n    return [tName copy];\n}\n\n#pragma mark -\n\n- (id)objectForAttribute:(DW_AT)inAttribute\n{\n    return self.attributes[@(inAttribute)].object;\n}\n\n- (DWRFDebuggingInformationEntry *)entryAtAddress:(uint8_t *)inAddress\n{\n    if (self.address==inAddress)\n        return self;\n    \n    for(DWRFDebuggingInformationEntry * tChild in self.children)\n    {\n        DWRFDebuggingInformationEntry * tEntry=[tChild entryAtAddress:inAddress];\n        \n        if (tEntry!=nil)\n            return tEntry;\n    }\n    \n    return nil;\n}\n\n- (BOOL)pcRangeContainsMachineInstructionAddress:(uint64_t)inMachineInstructionAddress\n{\n    NSNumber * tNumber=[self objectForAttribute:DW_AT_low_pc];\n    \n    if (tNumber==nil)\n        return NO;\n    \n    uint64_t tLowPC=[tNumber unsignedLongLongValue];\n    \n    if (inMachineInstructionAddress<tLowPC)\n        return NO;\n    \n    DWRFDIEAttribute * tHighPCAttribute=self.attributes[@(DW_AT_high_pc)];\n    \n    tNumber=tHighPCAttribute.object;\n    \n    if (tNumber==nil)\n        return NO;\n    \n    uint64_t tHighPC=[tNumber unsignedLongLongValue];\n    \n    if (tHighPCAttribute.isAddress==YES)    // HighPC is an address\n    {\n        return (inMachineInstructionAddress<tHighPC);\n    }\n    \n    // HighPC is an offset from LowPC\n    \n    return (inMachineInstructionAddress<(tLowPC+tHighPC));\n}\n\n\n- (NSString *)nameForAttribute:(DW_AT)inAttribute\n{\n    static NSDictionary * sRegistry=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sRegistry=@{\n                    @(0x01):@\"DW_AT_sibling\",\n                    @(0x02):@\"DW_AT_location\",\n                    @(0x03):@\"DW_AT_name\",\n                    @(0x09):@\"DW_AT_ordering\",\n                    @(0x0b):@\"DW_AT_byte_size\",\n                    \n                    @(0x10):@\"DW_AT_stmt_list\",\n                    @(0x11):@\"DW_AT_low_pc\",\n                    @(0x12):@\"DW_AT_high_pc\",\n                    @(0x13):@\"DW_AT_language\",\n                    \n                    @(0x1b):@\"DW_AT_comp_dir\",\n                    \n                    @(0x20):@\"DW_AT_inline\",\n                    \n                    @(0x25):@\"DW_AT_producer\",\n                    \n                    @(0x27):@\"DW_AT_prototyped\",\n                    \n                    @(0x31):@\"DW_AT_abstract_origin\",\n                    @(0x34):@\"DW_AT_artificial\",\n                    \n                    @(0x38):@\"DW_AT_data_member_location\",\n                    \n                    @(0x3a):@\"DW_AT_decl_file\",\n                    @(0x3b):@\"DW_AT_decl_line\",\n                    \n                    @(0x3f):@\"DW_AT_external\",\n                    \n                    @(0x40):@\"DW_AT_frame_base\",\n                    \n                    @(0x47):@\"DW_AT_specification\",\n                    \n                    @(0x49):@\"DW_AT_type\",\n                    \n                    @(0x58):@\"DW_AT_call_file\",\n                    @(0x59):@\"DW_AT_call_line\",\n                    \n                    @(0x64):@\"DW_AT_object_pointer\",\n                    \n                    @(0x6e):@\"DW_AT_linkage_name\",\n                    \n                    @(0x3e00):@\"DW_AT_LLVM_include_path\",\n                    \n                    @(0x3fe1):@\"DW_AT_APPLE_optimized\",\n                    @(0x3fe2):@\"DW_AT_APPLE_flags\",\n                    @(0x3fe5):@\"DW_AT_APPLE_major_runtime_vers\",\n                    @(0x3fe6):@\"DW_AT_APPLE_runtime_class\",\n                    };\n        \n    });\n    \n    NSString * tName=sRegistry[@(inAttribute)];\n    \n    if (tName!=nil)\n        return tName;\n    \n    return [NSString stringWithFormat:@\"%hu\",inAttribute];\n}\n\n- (NSString *)nameForTag:(DW_TAG)inTag\n{\n    static NSDictionary * sRegistry=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sRegistry=@{\n                    @(0x01):@\"DW_TAG_array_type\",\n                    @(0x02):@\"DW_TAG_class_type\",\n                    @(0x03):@\"DW_TAG_entry_point\",\n                    @(0x04):@\"DW_TAG_enumeration_type\",\n                    @(0x05):@\"DW_TAG_formal_parameter\",\n                    @(0x08):@\"DW_TAG_imported_declaration\",\n                    @(0x0a):@\"DW_TAG_label\",\n                    @(0x0b):@\"DW_TAG_lexical_block\",\n                    @(0x0d):@\"DW_TAG_member\",\n                    @(0x0f):@\"DW_TAG_pointer_type\",\n                    @(0x10):@\"DW_TAG_reference_type\",\n                    @(0x11):@\"DW_TAG_compile_unit\",\n                    @(0x12):@\"DW_TAG_string_type\",\n                    \n                    @(0x1d):@\"DW_TAG_inlined_subroutine\",\n                    \n                    @(0x24):@\"DW_TAG_base_type\",\n                    \n                    @(0x2e):@\"DW_TAG_subprogram\",\n                    \n                    @(0x3a):@\"DW_TAG_imported_module\",\n                    };\n        \n    });\n    \n    NSString * tName=sRegistry[@(inTag)];\n    \n    if (tName!=nil)\n        return tName;\n    \n    return [NSString stringWithFormat:@\"%hu\",inTag];\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n    NSMutableString * tMutableString=[NSMutableString string];\n    \n    [tMutableString appendFormat:@\"<%@:0x%llX> (%llu)\\n\",NSStringFromClass(self.class),(unsigned long long)self,self.abbreviationCode];\n    \n    [tMutableString appendFormat:@\"Tag: %@\\n\",[self nameForTag:self.tag]];\n    \n    [tMutableString appendFormat:@\"Attributes:\\n\"];\n    \n    [self.attributes enumerateKeysAndObjectsUsingBlock:^(NSNumber * bKey, DWRFDIEAttribute * bAttribute, BOOL * bOutStop) {\n        \n        [tMutableString appendFormat:@\"\\t %@ : %@\\n\",[self nameForAttribute:[bKey unsignedShortValue]],bAttribute];\n        \n        \n    }];\n    \n    return tMutableString;\n}\n\n@end\n\n@implementation DWRFCompileUnitEntry\n\n- (uint64_t)lineNumberProgramOffset\n{\n    return [[self objectForAttribute:DW_AT_stmt_list] unsignedIntegerValue];\n}\n\n- (NSString *)compiler\n{\n    return [self objectForAttribute:DW_AT_producer];\n}\n\n- (DW_LANG)language\n{\n    return [[self objectForAttribute:DW_AT_language] unsignedShortValue];\n}\n\n- (NSString *)compilationDirectory\n{\n    return [self objectForAttribute:DW_AT_comp_dir];\n}\n\n@end\n\n@implementation DWRFLexicalBlockEntry\n\n@end\n\n\n@implementation DWRFSubProgramEntry\n\n- (uint64_t)machineInstructionAddress\n{\n    NSNumber * tNumber=[self.referencedEntry objectForAttribute:DW_AT_low_pc];\n    \n    if (tNumber==nil)\n        tNumber=[self objectForAttribute:DW_AT_low_pc];\n    \n    return [tNumber unsignedIntegerValue];\n}\n\n\n\n- (NSUInteger)sourcePathIndex\n{\n    NSNumber * tNumber=[self.referencedEntry objectForAttribute:DW_AT_decl_file];\n    \n    if (tNumber==nil)\n        tNumber=[self objectForAttribute:DW_AT_decl_file];\n    \n    return [tNumber unsignedIntegerValue];\n}\n\n- (uint64_t)line\n{\n    NSNumber * tNumber=[self.referencedEntry objectForAttribute:DW_AT_decl_line];\n    \n    if (tNumber==nil)\n        tNumber=[self objectForAttribute:DW_AT_decl_line];\n    \n    return [tNumber unsignedIntegerValue];\n}\n\n- (NSString *)stackFrameSymbolWithLanguage:(DW_LANG)inLanguage\n{\n    switch(inLanguage)\n    {\n        case DW_LANG_Swift:\n        {\n            NSString * tName=nil;\n            \n            NSString * tLinkageName=[self objectForAttribute:DW_AT_linkage_name];\n            \n            if (tLinkageName!=nil)\n            {\n                tName=[CUISwiftDemangler demangle:tLinkageName];\n                \n                if (tName!=nil)\n                    return tName;\n            }\n            \n            tName=self.name;\n            \n            DWRFDebuggingInformationEntry * tParentEntry=self;\n            \n            BOOL tNeedsParenthesis=NO;\n            \n            do\n            {\n                tParentEntry=tParentEntry.parent;\n                \n                DW_TAG tTag=tParentEntry.tag;\n                \n                if (tParentEntry==nil || tTag==DW_TAG_module || tTag==DW_TAG_compile_unit)\n                    break;\n                \n                NSString * tComponentName=tParentEntry.name;\n                \n                if (tComponentName==nil)\n                    break;\n                \n                tName=[NSString stringWithFormat:@\"%@.%@\",tComponentName,tName];\n                \n                tNeedsParenthesis=YES;\n                \n            } while (1);\n            \n            if (tNeedsParenthesis==YES)\n                tName=[tName stringByAppendingString:@\"()\"];\n            \n            return tName;\n        }\n        \n        case DW_LANG_C_plus_plus:\n        {\n            DWRFDebuggingInformationEntry * tParentEntry=self;\n            NSString * tLinkageName=[self objectForAttribute:DW_AT_linkage_name];\n            NSString * tName=nil;\n            \n            if (tLinkageName==nil && self.referencedEntry!=nil)\n            {\n                tLinkageName=[self.referencedEntry objectForAttribute:DW_AT_linkage_name];\n            }\n            \n            if (tLinkageName!=nil)\n            {\n                tName=[CUICXXDemangler demangle:tLinkageName];\n                \n                if (tName!=nil)\n                    return tName;\n            }\n            \n            tName=tParentEntry.name;\n            \n            if (tName==nil && self.referencedEntry!=nil)\n            {\n                tParentEntry=self.referencedEntry;\n                tName=tParentEntry.name;\n            }\n            \n            BOOL tNeedsParenthesis=NO;\n            \n            do\n            {\n                tParentEntry=tParentEntry.parent;\n                \n                DW_TAG tTag=tParentEntry.tag;\n                \n                if (tParentEntry==nil || tTag==DW_TAG_module || tTag==DW_TAG_compile_unit)\n                    break;\n                \n                NSString * tComponentName=tParentEntry.name;\n                \n                if (tComponentName==nil)\n                    break;\n                \n                tName=[NSString stringWithFormat:@\"%@::%@\",tComponentName,tName];\n                \n                tNeedsParenthesis=YES;\n            } while (1);\n            \n            // Parameters (A COMPLETER)\n            \n            if (tNeedsParenthesis==YES)\n                tName=[tName stringByAppendingString:@\"()\"];\n            \n            return tName;\n        }\n            \n        default:\n            \n            break;\n    }\n    \n    return self.name;\n}\n\n@end\n\n\n\n@interface DWRFDebuggingInformationCompilationUnitHeader : DWRFObject\n\n    @property uint64_t unit_length;\n\n    @property uint16_t version;\n\n    @property uint8_t unit_type;\n\n    @property uint64_t debug_abbrev_offset;\n\n    @property uint8_t address_size;\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer;\n\n@end\n\n@implementation DWRFDebuggingInformationCompilationUnitHeader\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        uint32_t tUnsignedInteger=*((uint32_t *)inBuffer);\n        inBuffer+=sizeof(uint32_t);\n        \n        if (tUnsignedInteger==0xffffffff)\n        {\n            self.dwarfFormat=DWRF64Format;\n            \n            _unit_length=*((uint64_t *)inBuffer);\n            inBuffer+=sizeof(uint64_t);\n        }\n        else\n        {\n            self.dwarfFormat=DWRF32Format;\n            _unit_length=tUnsignedInteger;\n            \n        }\n        \n        _version=*((uint16_t *)inBuffer);\n        inBuffer+=sizeof(uint16_t);\n        \n        if (_version>=5)\n        {\n            _unit_type=*((uint8_t *)inBuffer);\n            inBuffer+=sizeof(uint8_t);\n            \n            _address_size=*((uint8_t *)inBuffer);\n            inBuffer+=sizeof(uint8_t);\n            \n            if (self.dwarfFormat==DWRF64Format)\n            {\n                _debug_abbrev_offset=*((uint64_t *)inBuffer);\n                inBuffer+=sizeof(uint64_t);\n            }\n            else\n            {\n                _debug_abbrev_offset=*((uint32_t *)inBuffer);\n                inBuffer+=sizeof(uint32_t);\n            }\n        }\n        else\n        {\n            if (self.dwarfFormat==DWRF64Format)\n            {\n                _debug_abbrev_offset=*((uint64_t *)inBuffer);\n                inBuffer+=sizeof(uint64_t);\n            }\n            else\n            {\n                _debug_abbrev_offset=*((uint32_t *)inBuffer);\n                inBuffer+=sizeof(uint32_t);\n            }\n        \n            _address_size=*((uint8_t *)inBuffer);\n            inBuffer+=sizeof(uint8_t);\n        }\n    }\n    \n    if (outBuffer!=NULL)\n        *outBuffer=inBuffer;\n    \n    return self;\n}\n\n@end\n\n@interface DWRFDebuggingInformationCompilationUnit ()\n{\n    uint8_t * _address;\n    \n    DWRFFileObject *_fileObject;\n    \n    NSArray * _abbreviationDeclarations;\n    \n    DWRFCompileUnitEntry * _compileUnitEntry;\n    \n    NSMutableArray<DWRFSubProgramEntry *> * _allSubProgramEntities;\n}\n\n@property DWRFDebuggingInformationCompilationUnitHeader * header;\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer fileObject:(DWRFFileObject *)inFileObject outBuffer:(uint8_t **)outBuffer;\n\n- (DWRFDebuggingInformationEntry *)entryWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer;\n\n@end\n\n@implementation DWRFDebuggingInformationCompilationUnit\n\n- (DWRFDebuggingInformationEntry *)entryWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==nil)\n        return nil;\n    \n    uint8_t * tAddress=inBuffer;\n    \n    DWRFDebuggingInformationEntry * tEntry=nil;\n    \n    uint64_t tAbbreviationCode=DWRF_readULEB128(inBuffer, &inBuffer);\n    \n    if (tAbbreviationCode==0)\n    {\n        if (outBuffer!=NULL)\n            *outBuffer=inBuffer;\n        \n        return [DWRFDebuggingInformationEntry nilEntry];\n    }\n    \n    \n    \n    DWRFAbbreviationDeclaration * tAbbreviationDeclaration=_abbreviationDeclarations[tAbbreviationCode-1];\n    \n    // Tag\n    \n    DW_TAG tTag=tAbbreviationDeclaration.tag;\n    \n    switch(tTag)\n    {\n        case DW_TAG_lexical_block:\n            \n            tEntry=[DWRFLexicalBlockEntry new];\n            \n            break;\n            \n        case DW_TAG_compile_unit:\n            \n            tEntry=[DWRFCompileUnitEntry new];\n            \n            break;\n            \n        case DW_TAG_subprogram:\n            \n            tEntry=[DWRFSubProgramEntry new];\n            \n            break;\n        \n        default:\n            \n            tEntry=[DWRFDebuggingInformationEntry new];\n            \n            break;\n            \n    }\n\n    if (tEntry!=nil)\n    {\n        tEntry.address=tAddress;\n        \n        tEntry.abbreviationCode=tAbbreviationCode;\n        \n        tEntry.tag=tAbbreviationDeclaration.tag;\n        \n        // Code\n        \n        tEntry.abbreviationCode=tAbbreviationCode;\n        \n        NSMutableDictionary * tAttributesDictionary=[NSMutableDictionary dictionary];\n        \n        \n        \n        // Attributes\n        \n        for(DWRFAttributeSpecification * tSpecification in tAbbreviationDeclaration.allAttributesSpecifications)\n        {\n            NSNumber * tKey=@(tSpecification.name);\n            id tObject=nil;\n            \n            switch(tSpecification.form)\n            {\n                case DW_FORM_addr:\n                {\n                    uint64_t tAddress;\n                    \n                    memcpy(&tAddress,inBuffer,_header.address_size*sizeof(uint8_t));\n                    inBuffer+=_header.address_size*sizeof(uint8_t);\n                    \n                    tObject=@(tAddress);\n                \n                    break;\n                }\n                    \n                case DW_FORM_block:\n                {\n                    uint64_t tBlockLength=DWRF_readULEB128(inBuffer, &inBuffer);\n                    \n                    NSData * tData=[NSData dataWithBytes:inBuffer length:tBlockLength];\n                    \n                    inBuffer+=tBlockLength;\n                    \n                    tObject=tData;\n                \n                    break;\n                }\n                    \n                case DW_FORM_block1:\n                {\n                    uint8_t tBlockLength=*((uint8_t *)inBuffer);\n                    inBuffer+=sizeof(uint8_t);\n                    \n                    NSData * tData=[NSData dataWithBytes:inBuffer length:tBlockLength];\n                    \n                    inBuffer+=tBlockLength;\n                    \n                    tObject=tData;\n                    \n                    break;\n                }\n                \n                case DW_FORM_block2:\n                {\n                    uint16_t tLength=*((uint16_t *)inBuffer);\n                    inBuffer+=sizeof(uint16_t);\n                    \n                    tObject=[NSData dataWithBytes:inBuffer length:tLength];\n                    \n                    inBuffer+=tLength*sizeof(uint8_t);\n                \n                    break;\n                }\n                    \n                case DW_FORM_block4:\n                {\n                    uint32_t tLength=*((uint32_t *)inBuffer);\n                    inBuffer+=sizeof(uint32_t);\n                    \n                    tObject=[NSData dataWithBytes:inBuffer length:tLength];\n                    \n                    inBuffer+=tLength*sizeof(uint8_t);\n                    \n                    break;\n                }\n                \n                case DW_FORM_data1:\n                {\n                    uint8_t tConstant=*((uint8_t *)inBuffer);\n                    inBuffer+=sizeof(uint8_t);\n                    \n                    tObject=@(tConstant);\n                \n                    break;\n                }\n                    \n                case DW_FORM_data2:\n                {\n                    uint16_t tConstant=*((uint16_t *)inBuffer);\n                    inBuffer+=sizeof(uint16_t);\n                    \n                    tObject=@(tConstant);\n                    \n                    break;\n                }\n                    \n                case DW_FORM_data4:\n                {\n                    uint32_t tConstant=*((uint32_t *)inBuffer);\n                    inBuffer+=sizeof(uint32_t);\n                    \n                    tObject=@(tConstant);\n                \n                    break;\n                }\n                    \n                case DW_FORM_data8:\n                {\n                    uint64_t tConstant=*((uint64_t *)inBuffer);\n                    inBuffer+=sizeof(uint64_t);\n                    \n                    tObject=@(tConstant);\n\n                    break;\n                }\n                \n                case DW_FORM_data16:\n                {\n                    tObject=[NSData dataWithBytes:inBuffer length:16*sizeof(uint8_t)];\n                    inBuffer+=16*sizeof(uint8_t);\n                \n                    break;\n                }\n                \n                case DW_FORM_implicit_const:\n                {\n                    // A COMPLETER\n                \n                    break;\n                }\n                    \n                    \n                /*case DW_FORM_string:\n                {\n                }\n                    \n                    break;\n                */\n\n                    \n                case DW_FORM_flag:\n                {\n                    uint8_t tPresent=*((uint8_t *)inBuffer);\n                    inBuffer+=sizeof(uint8_t);\n                    \n                    tObject=[NSNumber numberWithBool:(tPresent!=0)];\n                    \n                    break;\n                }\n                    \n                case DW_FORM_sdata:\n                {\n                    int64_t tConstant=DWRF_readLEB128(inBuffer, &inBuffer);\n                    \n                    tObject=@(tConstant);\n                    \n                    break;\n                }\n                    \n                case DW_FORM_strp:\n                {\n                    uint64_t tOffset=0;\n                    \n                    if (self.dwarfFormat==DWRF64Format)\n                    {\n                        tOffset=*((uint64_t *)inBuffer);\n                        inBuffer+=sizeof(uint64_t);\n                    }\n                    else\n                    {\n                        tOffset=*((uint32_t *)inBuffer);\n                        inBuffer+=sizeof(uint32_t);\n                    }\n                    \n                    tObject=[_fileObject.section_debug_str stringAtOffset:tOffset];\n                    \n                    break;\n                }\n                    \n                case DW_FORM_udata:\n                {\n                    uint64_t tConstant=DWRF_readULEB128(inBuffer, &inBuffer);\n                    \n                    tObject=@(tConstant);\n                    \n                    break;\n                }\n                    \n                case DW_FORM_ref_addr:\n                {\n                    uint64_t tAddress=0;\n                    \n                    if (self.header.version>=3)\n                    {\n                        if (self.dwarfFormat==DWRF64Format)\n                        {\n                            tAddress=*((uint64_t *)inBuffer);\n                            inBuffer+=sizeof(uint64_t);\n                        }\n                        else\n                        {\n                            tAddress=*((uint32_t *)inBuffer);\n                            inBuffer+=sizeof(uint32_t);\n                        }\n                    }\n                    else\n                    {\n                        switch(self.header.address_size)\n                        {\n                            case 4:\n                                \n                                tAddress=*((uint32_t *)inBuffer);\n                                inBuffer+=sizeof(uint32_t);\n                                \n                                break;\n                                \n                            case 8:\n                                \n                                tAddress=*((uint64_t *)inBuffer);\n                                inBuffer+=sizeof(uint64_t);\n                                \n                                break;\n                        }\n                    }\n                    \n                    tObject=@(tAddress);\n                    \n                    break;\n                }\n                    \n                /*case DW_FORM_ref1:\n                {\n                }\n                    \n                    break;\n                    \n                case DW_FORM_ref2:\n                {\n                }\n                    \n                    break;*/\n                    \n                case DW_FORM_ref4:\n                {\n                    uint32_t tReference=*((uint32_t *)inBuffer);\n                    inBuffer+=sizeof(uint32_t);\n                    \n                    tObject=@(tReference);\n                    \n                    break;\n                }\n                    \n                /*case DW_FORM_ref8:\n                {\n                }\n                    \n                    break;\n                    \n                case DW_FORM_ref_udata:\n                {\n                }\n                    \n                    break;\n                    \n                case DW_FORM_indirect:\n                {\n                }\n                    \n                    break;*/\n                    \n                case DW_FORM_sec_offset:\n                {\n                    uint64_t tOffset=0;\n                    \n                    if (self.dwarfFormat==DWRF64Format)\n                    {\n                        tOffset=*((uint64_t *)inBuffer);\n                        inBuffer+=sizeof(uint64_t);\n                    }\n                    else\n                    {\n                        tOffset=*((uint32_t *)inBuffer);\n                        inBuffer+=sizeof(uint32_t);\n                    }\n                    \n                    tObject=@(tOffset);\n                    \n                    break;\n                }\n                    \n                case DW_FORM_exprloc:\n                {\n                    uint64_t tLength=DWRF_readULEB128(inBuffer, &inBuffer);\n                    \n                    inBuffer+=tLength*sizeof(uint8_t);\n                    \n                    // A COMPLETER\n                    \n                    break;\n                }\n                    \n                case DW_FORM_flag_present:\n                {\n                    // Implicitly indicated as present\n                    \n                    tObject=@(YES);\n                    \n                    break;\n                }\n                    \n                /*case DW_FORM_reg_sig8:\n                {\n                }\n                    \n                    break;*/\n                \n                case DW_FORM_strx:\n                {\n                    uint64_t tIndex=DWRF_readULEB128(inBuffer,&inBuffer);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_str_offsets_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_str_offsets_base\");\n                    }\n                    \n                    uint64_t tOffset=[_fileObject.section_debug_str_offsets offsetAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=[_fileObject.section_debug_str stringAtOffset:tOffset];\n\n                    break;\n                }\n                    \n                case DW_FORM_addrx:\n                {\n                    uint64_t tIndex=DWRF_readULEB128(inBuffer,&inBuffer);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_addr_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_addr_base\");\n                    }\n                    \n                    uint64_t tAddress=[_fileObject.section_debug_addr addressAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=@(tAddress);\n\n                    break;\n                }\n                    \n                    \n                case DW_FORM_strx1:\n                {\n                    uint8_t tIndex=*((uint8_t *)inBuffer);\n                    inBuffer+=sizeof(uint8_t);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_str_offsets_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_str_offsets_base\");\n                    }\n                    \n                    uint64_t tOffset=[_fileObject.section_debug_str_offsets offsetAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=[_fileObject.section_debug_str stringAtOffset:tOffset];\n\n                    break;\n                }\n                    \n                case DW_FORM_strx2:\n                {\n                    uint16_t tIndex=*((uint16_t *)inBuffer);\n                    inBuffer+=sizeof(uint16_t);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_str_offsets_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_str_offsets_base\");\n                    }\n                    \n                    uint64_t tOffset=[_fileObject.section_debug_str_offsets offsetAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=[_fileObject.section_debug_str stringAtOffset:tOffset];\n\n                    break;\n                }\n                    \n                case DW_FORM_strx3:\n                {\n                    uint16_t tIndex=*((uint32_t *)inBuffer);\n                    inBuffer+=3*sizeof(uint8_t);\n                    \n                    tIndex=(tIndex>>8);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_str_offsets_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_str_offsets_base\");\n                    }\n                    \n                    uint64_t tOffset=[_fileObject.section_debug_str_offsets offsetAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=[_fileObject.section_debug_str stringAtOffset:tOffset];\n\n                    break;\n                }\n                    \n                case DW_FORM_strx4:\n                {\n                    uint32_t tIndex=*((uint32_t *)inBuffer);\n                    inBuffer+=sizeof(uint32_t);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_str_offsets_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_str_offsets_base\");\n                    }\n                    \n                    uint64_t tOffset=[_fileObject.section_debug_str_offsets offsetAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=[_fileObject.section_debug_str stringAtOffset:tOffset];\n\n                    break;\n                }\n                    \n                case DW_FORM_addrx1:\n                {\n                    uint8_t tIndex=*((uint8_t *)inBuffer);\n                    inBuffer+=sizeof(uint8_t);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_addr_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_addr_base\");\n                    }\n                    \n                    uint64_t tAddress=[_fileObject.section_debug_addr addressAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=@(tAddress);\n\n                    break;\n                }\n                    \n                case DW_FORM_addrx2:\n                {\n                    uint16_t tIndex=*((uint16_t *)inBuffer);\n                    inBuffer+=sizeof(uint16_t);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_addr_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_addr_base\");\n                    }\n                    \n                    uint64_t tAddress=[_fileObject.section_debug_addr addressAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=@(tAddress);\n\n                    break;\n                }\n                    \n                case DW_FORM_addrx3:\n                {\n                    uint16_t tIndex=*((uint32_t *)inBuffer);\n                    inBuffer+=3*sizeof(uint8_t);\n                    \n                    tIndex=(tIndex>>8);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_addr_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_addr_base\");\n                    }\n                    \n                    uint64_t tAddress=[_fileObject.section_debug_addr addressAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=@(tAddress);\n                    \n                    break;\n                }\n                    \n                case DW_FORM_addrx4:\n                {\n                    uint32_t tIndex=*((uint32_t *)inBuffer);\n                    inBuffer+=sizeof(uint32_t);\n                    \n                    NSNumber * tNumber=tAttributesDictionary[@(DW_AT_addr_base)];\n                    \n                    if (tNumber==nil)\n                    {\n                        NSLog(@\"Missing DW_AT_addr_base\");\n                    }\n                    \n                    uint64_t tAddress=[_fileObject.section_debug_addr addressAtIndex:tIndex base:[tNumber unsignedIntegerValue] format:self.dwarfFormat];\n                    \n                    tObject=@(tAddress);\n\n                    break;\n                }\n                    \n                default:\n                    \n                    NSLog(@\"FORM not handled: %lX\",(unsigned long)tSpecification.form);\n                    \n                    break;\n            }\n            \n            if (tObject!=nil)\n            {\n                DWRFDIEAttribute * tNewAttribute=[DWRFDIEAttribute new];\n                \n                tNewAttribute.form=tSpecification.form;\n                tNewAttribute.object=tObject;\n                \n                tAttributesDictionary[tKey]=tNewAttribute;\n            }\n        }\n        \n        tEntry.attributes=tAttributesDictionary;\n        \n        \n        if (tAbbreviationDeclaration.hasChildren)\n        {\n            NSMutableArray * tEntries=[NSMutableArray array];\n            \n            while (1)\n            {\n                DWRFDebuggingInformationEntry * tChildEntry=[self entryWithBuffer:inBuffer outBuffer:&inBuffer];\n                \n                if (tChildEntry==nil)\n                {\n                    NSLog(@\"Error when unarchiving Debugging Information Entry\");\n                    \n                    return nil;\n                }\n                \n                if (tChildEntry.abbreviationCode==0)\n                    break;\n                \n                tChildEntry.parent=tEntry;\n                \n                [tEntries addObject:tChildEntry];\n            }\n            \n            tEntry.children=[tEntries copy];\n        }\n        \n        if (outBuffer!=NULL)\n            *outBuffer=inBuffer;\n    }\n    \n    return tEntry;\n}\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer fileObject:(DWRFFileObject *)inFileObject outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==nil)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _address=inBuffer;\n        \n        _fileObject=inFileObject;\n        \n        _header=[[DWRFDebuggingInformationCompilationUnitHeader alloc] initWithBuffer:inBuffer outBuffer:&inBuffer];\n        \n        self.dwarfFormat=_header.dwarfFormat;\n        \n        DWRFAbbreviationDeclarationsSet * tDeclarationsSet=[_fileObject.section_debug_abbrev abbreviationDeclarationsSetAtOffset:_header.debug_abbrev_offset];\n        \n        if (tDeclarationsSet==nil)\n        {\n            // Aie aie aie\n            \n            return nil;\n        }\n        \n        _abbreviationDeclarations=tDeclarationsSet.allAbbreviationDeclarations;\n        \n        // Retrieve Compile Unit entry and its children\n        \n        _compileUnitEntry=(DWRFCompileUnitEntry *)[self entryWithBuffer:inBuffer outBuffer:&inBuffer];\n            \n        if (_compileUnitEntry==nil)\n        {\n            NSLog(@\"Error when unarchiving Compile Unit Entry\");\n            \n            return nil;\n        }\n        \n        if (_compileUnitEntry.abbreviationCode==0)\n        {\n            NSLog(@\"Error when unarchiving Compile Unit Entry\");\n            \n            return nil;\n        }\n    }\n    \n    if (outBuffer!=NULL)\n        *outBuffer=inBuffer;\n    \n    return self;\n}\n\n#pragma mark -\n\n-(DW_LANG)language\n{\n    return _compileUnitEntry.language;\n}\n\n-(NSString *)compilationDirectory\n{\n    return _compileUnitEntry.compilationDirectory;\n}\n\n- (DWRFDebuggingInformationEntry *)entryAtAddress:(uint8_t *)inAddress\n{\n    return [_compileUnitEntry entryAtAddress:inAddress];\n}\n\n- (DWRFLineNumberProgram *)lineNumberProgram\n{\n    return [_fileObject.section_debug_line lineNumberProgramAtOffset:_compileUnitEntry.lineNumberProgramOffset];\n}\n\n- (DWRFSubProgramEntry *)subProgramForMachineInstructionAddress:(uint64_t)inMachineInstructionAddress\n{\n    if (_allSubProgramEntities==nil)\n    {\n        _allSubProgramEntities=[NSMutableArray array];\n        \n        __block __weak void (^_weakEnumerateNodesRecursively)(DWRFDebuggingInformationEntry *,NSMutableArray *);\n        __block void(^_enumerateNodesRecursively)(DWRFDebuggingInformationEntry *,NSMutableArray *);\n        \n        _enumerateNodesRecursively = ^void(DWRFDebuggingInformationEntry * bEntry,NSMutableArray * bMutableArray)\n        {\n            if (bEntry.tag==DW_TAG_subprogram && [bEntry isKindOfClass:[DWRFSubProgramEntry class]]==YES)\n            {\n                [bMutableArray addObject:(DWRFSubProgramEntry *)bEntry];\n            }\n            \n            for(DWRFDebuggingInformationEntry * bChildEntry in bEntry.children)\n            {\n                _weakEnumerateNodesRecursively(bChildEntry,bMutableArray);\n            }\n        };\n        \n        _weakEnumerateNodesRecursively = _enumerateNodesRecursively;\n        \n        _enumerateNodesRecursively(_compileUnitEntry,_allSubProgramEntities);\n    }\n    \n    for(DWRFSubProgramEntry * tEntry in _allSubProgramEntities)\n    {\n        if (tEntry.tag==DW_TAG_subprogram)\n        {\n            if ([tEntry isKindOfClass:[DWRFSubProgramEntry class]]==YES)\n            {\n                DWRFSubProgramEntry * tSubProgramEntry=(DWRFSubProgramEntry *)tEntry;\n                \n                if ([tSubProgramEntry pcRangeContainsMachineInstructionAddress:inMachineInstructionAddress]==NO)\n                    continue;\n                \n                // Look for inlined subroutines\n                        \n                for(DWRFDebuggingInformationEntry * tChild in tSubProgramEntry.children)\n                {\n                    if (tChild.tag==DW_TAG_inlined_subroutine)\n                    {\n                        if ([tChild pcRangeContainsMachineInstructionAddress:inMachineInstructionAddress]==YES)\n                        {\n                            NSNumber * tNumber=[tChild objectForAttribute:DW_AT_abstract_origin];\n                            \n                            if (tNumber!=nil)\n                            {\n                                uint64_t tOffset=[tNumber unsignedIntegerValue];\n                                \n                                DWRFDebuggingInformationEntry * tEntry=[_compileUnitEntry entryAtAddress:_address+tOffset];\n                                \n                                if ([tEntry isKindOfClass:[DWRFSubProgramEntry class]]==YES)\n                                {\n                                    tSubProgramEntry=(DWRFSubProgramEntry *)tEntry;\n                                }\n                            }\n                            \n                            break;\n                        }\n                    }\n                }\n                \n                if (tSubProgramEntry.name==nil)\n                {\n                    NSNumber * tReference=[tSubProgramEntry objectForAttribute:DW_AT_specification];\n                    \n                    if (tReference!=nil)\n                    {\n                        DWRFDebuggingInformationEntry * tReferencedEntry=[self entryAtAddress:_address+[tReference unsignedIntegerValue]];\n                        \n                        if ([tReferencedEntry isKindOfClass:[DWRFSubProgramEntry class]]==YES)\n                        {\n                            tSubProgramEntry.referencedEntry=tReferencedEntry;\n                        }\n                        \n                        \n                    }\n                }\n                \n                return tSubProgramEntry;\n            }\n        }\n    }\n    \n    return nil;\n}\n\n@end\n\n@interface DWRFSection_debug_info ()\n{\n    NSData * _cachedData;\n    \n    NSMutableDictionary<NSNumber *,DWRFDebuggingInformationCompilationUnit *> * _compilationUnits;\n}\n\n    @property DWRFFileObject * fileObject;\n\n@end\n\n@implementation DWRFSection_debug_info\n\n- (instancetype)initWithData:(NSData *)inData fileObject:(DWRFFileObject *)inFileObject\n{\n    if (inData==nil || [inData isKindOfClass:[NSData class]]==NO)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _fileObject=inFileObject;\n        \n        _cachedData=inData;\n        \n        _compilationUnits=[NSMutableDictionary dictionary];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (DWRFDebuggingInformationCompilationUnit *)compilationUnitAtOffset:(uint64_t)inOffset\n{\n    DWRFDebuggingInformationCompilationUnit * tCompilationUnit=_compilationUnits[@(inOffset)];\n    \n    if (tCompilationUnit!=nil)\n        return tCompilationUnit;\n    \n    uint8_t * tBufferPtr=(uint8_t *)_cachedData.bytes;\n    \n    tBufferPtr=tBufferPtr+inOffset;\n    \n    tCompilationUnit=[[DWRFDebuggingInformationCompilationUnit alloc] initWithBuffer:tBufferPtr fileObject:self.fileObject outBuffer:&tBufferPtr];\n    \n    if (tCompilationUnit!=nil)\n        _compilationUnits[@(inOffset)]=tCompilationUnit;\n    \n    \n    return tCompilationUnit;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_line.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface DWRFLineNumberProgramLocation : NSObject\n\n    @property (readonly) uint64_t machineInstructionAddress;\n\n    @property (readonly,copy) NSString * fileName;\n\n    @property (readonly) uint64_t lineNumber;\n\n    @property (readonly) uint64_t columnNumber;\n\n@end\n\n@interface DWRFLineNumberProgram : NSObject\n\n- (NSString *)fileNameAtIndex:(NSUInteger)inIndex;\n\n- (DWRFLineNumberProgramLocation *)locationForMachineInstructionAddress:(uint64_t)inMachineInstructionAddress;\n\n@end\n\n@interface DWRFSection_debug_line : NSObject\n\n- (instancetype)initWithData:(NSData *)inData;\n\n- (DWRFLineNumberProgram *)lineNumberProgramAtOffset:(uint64_t)inOffset;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_line.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_line.h\"\n\n#include \"LEB128.h\"\n\n#import \"DWRFObject.h\"\n\ntypedef NS_ENUM(uint8_t, DW_LNS)\n{\n    DW_LNS_extended_op = 0x00,\n    \n    DW_LNS_copy = 0x01,\n    DW_LNS_advance_pc = 0x02,\n    DW_LNS_advance_line = 0x03,\n    DW_LNS_set_file = 0x04,\n    DW_LNS_set_column = 0x05,\n    DW_LNS_negate_stmt = 0x06,\n    DW_LNS_set_basic_block = 0x07,\n    DW_LNS_const_add_pc = 0x08,\n    DW_LNS_fixed_advance_pc = 0x09,\n    DW_LNS_set_prologue_end = 0x0a,\n    DW_LNS_set_epilogue_begin = 0x0b,\n    DW_LNS_set_isa = 0x0c\n};\n\ntypedef NS_ENUM(NSUInteger, DW_LNE)\n{\n    DW_LNE_end_sequence = 0x01,\n    DW_LNE_set_address = 0x02,\n    DW_LNE_define_file = 0x03,\n    DW_LNE_set_discriminator = 0x04,\n    DW_LNE_lo_user = 0x80,\n    DW_LNE_hi_user = 0xff\n};\n\n@interface DWRFLineNumberProgramLocation ()\n\n    @property uint64_t machineInstructionAddress;\n\n    @property (copy) NSString * fileName;\n\n    @property uint64_t lineNumber;\n\n    @property uint64_t columnNumber;\n\n@end\n\n@implementation DWRFLineNumberProgramLocation\n\n@end\n\n@interface DWRFLineNumberProgramStateMachine : NSObject\n\n    @property uint64_t address;\n\n    @property uint64_t op_index;\n\n    @property uint64_t file;\n\n    @property uint64_t line;\n\n    @property uint64_t column;\n\n    @property BOOL is_stmt;\n\n    @property BOOL basic_block;\n\n    @property BOOL end_sequence;\n\n    @property BOOL prologue_end;\n\n    @property BOOL epilogue_begin;\n\n    @property uint64_t xisa;\n\n    @property uint64_t discriminator;\n\n@end\n\n@implementation DWRFLineNumberProgramStateMachine\n\n- (instancetype)initWithStmt:(BOOL)inStmt;\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _address=0;\n        \n        _op_index=0;\n        \n        _file=1;\n        \n        _line=1;\n        \n        _column=0;\n        \n        _is_stmt=inStmt;\n        \n        _basic_block=NO;\n        \n        _end_sequence=NO;\n        \n        _prologue_end=NO;\n        \n        _epilogue_begin=NO;\n        \n        _xisa=0;\n        \n        _discriminator=0;\n    }\n    \n    return self;\n}\n\n@end\n\n@interface DWRFLineNumberProgramHeaderFileNameEntry : NSObject\n\n    @property NSString * filePath;\n\n    @property uint64_t directoryIndex;\n\n    @property uint64_t lastModificationDate;\n\n    @property uint64_t fileSize;\n\n@end\n\n\n@implementation DWRFLineNumberProgramHeaderFileNameEntry\n\n@end\n\n\n\n\n@interface DWRFLineNumberProgramHeader : DWRFObject\n\n    @property uint64_t unitLength;    // 4 bytes DWARF-32 / 12 bytes DWARF-64\n    @property uint16_t version;\n\n    @property uint64_t headerLength;  // 4 bytes DWARF-32 / 8 bytes DWARF-64\n\n    @property uint8_t minimumInstructionLength;\n\n    @property uint8_t maximumOperationsPerInstruction;\n\n    @property uint8_t defaultIsStmt;\n\n    @property int8_t lineBase;\n\n    @property uint8_t lineRange;\n\n    @property int8_t opcodeBase;\n\n    @property uint8_t * standardOpcodeLengths;    // opcodeBase count\n\n    @property NSMutableArray * includeDirectories;\n\n    @property NSMutableArray * fileEntries;\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer;\n\n@end\n\n@implementation DWRFLineNumberProgramHeader\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer outBuffer:(uint8_t **)outBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        uint32_t tUnsignedInteger;\n        \n        tUnsignedInteger=*((uint32_t *)inBuffer);\n        inBuffer+=sizeof(uint32_t);\n        \n        if (tUnsignedInteger==0xffffffff)\n        {\n            self.dwarfFormat=DWRF64Format;\n            \n            _unitLength=*((uint64_t *)inBuffer);\n            inBuffer+=sizeof(uint64_t);\n        }\n        else\n        {\n            _unitLength=tUnsignedInteger;\n        }\n        \n        _version=*((uint16_t *)inBuffer);\n        inBuffer+=sizeof(uint16_t);\n        \n        if (self.dwarfFormat==DWRF64Format)\n        {\n            _headerLength=*((uint64_t *)inBuffer);\n            inBuffer+=sizeof(uint64_t);\n            \n            _headerLength+=18;\n        }\n        else\n        {\n            _headerLength=*((uint32_t *)inBuffer);\n            inBuffer+=sizeof(uint32_t);\n            \n            _headerLength+=10;\n        }\n        \n        \n        \n        _minimumInstructionLength=*((uint8_t *)inBuffer);\n        inBuffer+=sizeof(uint8_t);\n        \n        \n        if (_version>=4)\n        {\n            _maximumOperationsPerInstruction=*((uint8_t *)inBuffer);\n            inBuffer+=sizeof(uint8_t);\n        }\n        else\n        {\n            _maximumOperationsPerInstruction=1;\n        }\n        \n        _defaultIsStmt=*((uint8_t *)inBuffer);\n        inBuffer+=sizeof(uint8_t);\n        \n        _lineBase=*((int8_t *)inBuffer);\n        inBuffer+=sizeof(int8_t);\n        \n        _lineRange=*((uint8_t *)inBuffer);\n        inBuffer+=sizeof(uint8_t);\n        \n        _opcodeBase=*((int8_t *)inBuffer);\n        inBuffer+=sizeof(int8_t);\n        \n        \n        _standardOpcodeLengths=malloc(_opcodeBase*sizeof(uint8_t));\n        \n        for(size_t tIndex=0;tIndex<(_opcodeBase-1);tIndex++)\n            _standardOpcodeLengths[tIndex]=DWRF_readLEB128(inBuffer, &inBuffer);\n        \n        _includeDirectories=[NSMutableArray array];\n        \n        while((*inBuffer)!=0)\n        {\n            size_t tLength=strlen((char *)inBuffer);\n            \n            NSString * tString=[NSString stringWithCString:(char *)inBuffer encoding:NSUTF8StringEncoding];\n            \n            if (tString!=nil)\n                [_includeDirectories addObject:tString];\n            \n            inBuffer+=(tLength+1);\n        }\n        \n        inBuffer++;\n        \n        \n        \n        _fileEntries=[NSMutableArray array];\n        \n        while((*inBuffer)!=0)\n        {\n            DWRFLineNumberProgramHeaderFileNameEntry * tEntry=[DWRFLineNumberProgramHeaderFileNameEntry new];\n            \n            size_t tLength=strlen((char *)inBuffer);\n            \n            NSString * tString=[NSString stringWithCString:(char *)inBuffer encoding:NSUTF8StringEncoding];\n            \n            if (tString==nil)\n                return nil;\n            \n            inBuffer+=(tLength+1);\n            \n            tEntry.filePath=tString;\n            tEntry.directoryIndex=DWRF_readULEB128(inBuffer, &inBuffer);\n            tEntry.lastModificationDate=DWRF_readULEB128(inBuffer, &inBuffer);\n            tEntry.fileSize=DWRF_readULEB128(inBuffer, &inBuffer);\n            \n            [_fileEntries addObject:tEntry];\n        }\n        \n        inBuffer++;\n    }\n    \n    if (outBuffer!=NULL)\n        *outBuffer=inBuffer;\n    \n    return self;\n}\n\n@end\n\n\n@interface DWRFLineNumberProgram ()\n{\n    DWRFLineNumberProgramHeader * _header;\n    \n    uint8_t * _programBufferStart;\n    uint8_t * _programBufferEnd;\n    \n    NSMutableArray * _locationsAddresses;\n    \n    NSMutableDictionary<NSNumber *,DWRFLineNumberProgramLocation *> * _locationsRegistry;\n}\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer;\n\n- (DWRFLineNumberProgramLocation *)locationFromStateMachine:(DWRFLineNumberProgramStateMachine *)inStateMachine;\n\n@end\n\n@implementation DWRFLineNumberProgram\n\n- (instancetype)initWithBuffer:(uint8_t *)inBuffer\n{\n    if (inBuffer==NULL)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        uint8_t * tBuffer=inBuffer;\n        \n        _header=[[DWRFLineNumberProgramHeader alloc] initWithBuffer:tBuffer outBuffer:&tBuffer];\n        \n        if (_header==nil)\n        {\n            NSLog(@\"Error unarchiving Line Number Program Header\");\n            \n            return nil;\n        }\n        \n        _programBufferStart=inBuffer+_header.headerLength;\n        _programBufferEnd=inBuffer+_header.unitLength;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)fileNameAtIndex:(NSUInteger)inIndex\n{\n    if (inIndex>_header.fileEntries.count)\n        return nil;\n    \n    DWRFLineNumberProgramHeaderFileNameEntry * tEntry=_header.fileEntries[inIndex-1];\n    \n    return tEntry.filePath;\n}\n\n- (BOOL)runProgram\n{\n    _locationsAddresses=[NSMutableArray array];\n    _locationsRegistry=[NSMutableDictionary dictionary];\n    \n    DWRFLineNumberProgramStateMachine * tStateMachine=[[DWRFLineNumberProgramStateMachine alloc] initWithStmt:_header.defaultIsStmt];\n    \n    BOOL tDone=NO;\n    \n    uint8_t * tBuffer=_programBufferStart;\n    \n    while (tBuffer<_programBufferEnd && tDone==NO)\n    {\n        uint8_t tOpcode=*tBuffer;\n        tBuffer+=sizeof(uint8_t);\n        \n        if (tOpcode>=_header.opcodeBase)\n        {\n            // Special Opcode\n            \n            tOpcode-=_header.opcodeBase;\n            \n            uint8_t tOperationAdvance=tOpcode/_header.lineRange;\n            \n            tStateMachine.line+=_header.lineBase+ (tOpcode % _header.lineRange);\n            \n            tStateMachine.address+=_header.minimumInstructionLength*((tStateMachine.op_index+tOperationAdvance)/_header.maximumOperationsPerInstruction);\n            \n            tStateMachine.op_index=(tStateMachine.op_index+tOperationAdvance)%_header.maximumOperationsPerInstruction;\n            \n            tStateMachine.basic_block=NO;\n            tStateMachine.prologue_end=NO;\n            tStateMachine.epilogue_begin=NO;\n            \n            tStateMachine.discriminator=0;\n            \n            // Add a row to the matrix\n            \n            DWRFLineNumberProgramLocation * tLocation=[self locationFromStateMachine:tStateMachine];\n            \n            NSNumber * tKey=@(tStateMachine.address);\n            \n            [_locationsAddresses addObject:tKey];\n            \n            _locationsRegistry[tKey]=tLocation;\n\n            continue;\n        }\n        \n        if (tOpcode!=DW_LNS_extended_op)\n        {\n            // Standard Opcode\n            \n            switch(tOpcode)\n            {\n                case DW_LNS_copy:\n                {\n                    DWRFLineNumberProgramLocation * tLocation=[self locationFromStateMachine:tStateMachine];\n                    \n                    NSNumber * tKey=@(tStateMachine.address);\n                    \n                    [_locationsAddresses addObject:tKey];\n                    \n                    _locationsRegistry[tKey]=tLocation;\n                    \n                    tStateMachine.discriminator=0;\n                    \n                    tStateMachine.basic_block=NO;\n                    tStateMachine.prologue_end=NO;\n                    tStateMachine.epilogue_begin=NO;\n                    \n                    break;\n                }\n                case DW_LNS_advance_pc:\n                {\n                    uint64_t tOperationAdvance=DWRF_readULEB128(tBuffer, &tBuffer);\n                    \n                    tStateMachine.address+=_header.minimumInstructionLength*((tStateMachine.op_index+tOperationAdvance)/_header.maximumOperationsPerInstruction);\n                    \n                    tStateMachine.op_index=(tStateMachine.op_index+tOperationAdvance)%_header.maximumOperationsPerInstruction;\n                    \n                    break;\n                    \n                }\n                    \n                case DW_LNS_advance_line:\n                    \n                    tStateMachine.line+=DWRF_readLEB128(tBuffer, &tBuffer);\n                    \n                    break;\n                    \n                    \n                case DW_LNS_set_file:\n                    \n                    tStateMachine.file=DWRF_readULEB128(tBuffer, &tBuffer);\n                    \n                    break;\n                    \n                case DW_LNS_set_column:\n                    \n                    tStateMachine.column=DWRF_readULEB128(tBuffer, &tBuffer);\n                    \n                    break;\n                    \n                case DW_LNS_negate_stmt:\n                    \n                    tStateMachine.is_stmt=!tStateMachine.is_stmt;\n                    \n                    break;\n                    \n                case DW_LNS_set_basic_block:\n                    \n                    tStateMachine.basic_block=YES;\n                    \n                    break;\n                    \n                case DW_LNS_const_add_pc:\n                {\n                    uint64_t tOperationAdvance=(255 - _header.opcodeBase) / _header.lineRange;\n                    \n                    tStateMachine.address+=_header.minimumInstructionLength*((tStateMachine.op_index+tOperationAdvance)/_header.maximumOperationsPerInstruction);\n                    \n                    tStateMachine.op_index=(tStateMachine.op_index+tOperationAdvance)%_header.maximumOperationsPerInstruction;\n                    \n                    break;\n                }\n                case DW_LNS_fixed_advance_pc:\n                {\n                    uint16_t tAdvance=*((uint16_t *)tBuffer);\n                    tBuffer+=sizeof(uint16_t);\n                    \n                    \n                    tStateMachine.address+=tAdvance;\n                    \n                    tStateMachine.op_index=0;\n                    \n                    break;\n                }\n                case DW_LNS_set_prologue_end:\n                    \n                    tStateMachine.prologue_end=YES;\n                    \n                    break;\n                    \n                case DW_LNS_set_epilogue_begin:\n                    \n                    tStateMachine.epilogue_begin=YES;\n                    \n                    break;\n                    \n                    \n                case DW_LNS_set_isa:\n                    \n                    tStateMachine.xisa=DWRF_readULEB128(tBuffer, &tBuffer);\n                    \n                    break;\n                    \n                default:\n                {\n                    // Unsupported standard opcode\n                    \n                    uint8_t tArgumentsCount=_header.standardOpcodeLengths[tOpcode-1];\n                    \n                    while(tArgumentsCount>0)\n                    {\n                        DWRF_readULEB128(tBuffer, &tBuffer);\n                        \n                        tArgumentsCount--;\n                    }\n                    \n                    break;\n                }\n            }\n            \n            continue;\n            \n        }\n        \n        // Extended Opcode\n        \n        uint64_t tLength=DWRF_readULEB128(tBuffer, &tBuffer);\n        \n        if (tLength==0)\n        {\n            NSLog(@\"Unexpected 0 value for extended opcode length\");\n        }\n        \n        uint8_t tExtendedOpcode=*tBuffer;\n        tBuffer+=sizeof(uint8_t);\n        \n        tLength-=1;\n        \n        switch(tExtendedOpcode)\n        {\n            case DW_LNE_end_sequence:\n            {\n                tStateMachine.end_sequence=YES;\n                \n                // Add a row to the matrix\n                \n                DWRFLineNumberProgramLocation * tLocation=[self locationFromStateMachine:tStateMachine];\n                \n                NSNumber * tKey=@(tStateMachine.address);\n                \n                [_locationsAddresses addObject:tKey];\n                \n                _locationsRegistry[tKey]=tLocation;\n                \n                tStateMachine=[[DWRFLineNumberProgramStateMachine alloc] initWithStmt:_header.defaultIsStmt];\n                \n                break;\n            }\n                \n            case DW_LNE_set_address:\n            {\n                if (tLength==4) // 32 bits\n                {\n                    tStateMachine.address=*((uint32_t *)tBuffer);\n                    tBuffer+=sizeof(uint32_t);\n                }\n                else    // 64 bits\n                {\n                    tStateMachine.address=*((uint64_t *)tBuffer);\n                    tBuffer+=sizeof(uint64_t);\n                }\n                \n                tStateMachine.op_index=0;\n                \n                break;\n            }\n            case DW_LNE_define_file:\n            {\n                DWRFLineNumberProgramHeaderFileNameEntry * tFileNameEntry=[DWRFLineNumberProgramHeaderFileNameEntry new];\n                \n                tFileNameEntry.filePath=[NSString stringWithUTF8String:(const char *)tBuffer];\n                \n                tFileNameEntry.directoryIndex=DWRF_readULEB128(tBuffer, &tBuffer);\n                \n                tFileNameEntry.lastModificationDate=DWRF_readULEB128(tBuffer, &tBuffer);\n                \n                tFileNameEntry.fileSize=DWRF_readULEB128(tBuffer, &tBuffer);\n                \n                \n                [_header.fileEntries addObject:tFileNameEntry];\n                \n                break;\n            }\n            case DW_LNE_set_discriminator:\n                \n                tStateMachine.discriminator=DWRF_readULEB128(tBuffer, &tBuffer);\n                \n                break;\n                \n            default:\n                \n                // Unsupported Extended opcode\n                \n                tBuffer+=tLength;\n                \n                break;\n        }\n    }\n    \n    return YES;\n}\n\n- (DWRFLineNumberProgramLocation *)locationForMachineInstructionAddress:(uint64_t)inMachineInstructionAddress\n{\n    if (_locationsAddresses==nil)\n    {\n        // We need to build the list of addresses first\n        \n        if ([self runProgram]==NO)\n            return nil;\n    }\n    \n    if (_locationsAddresses.count==0)\n        return nil;\n    \n    NSNumber * tKey=_locationsAddresses.firstObject;\n    \n    if (inMachineInstructionAddress<[tKey unsignedLongValue])\n        return nil;\n    \n    for(NSNumber * tLocationAddressNumber in _locationsAddresses)\n    {\n        uint64_t tLocationAddress=[tLocationAddressNumber unsignedLongValue];\n        \n        if (inMachineInstructionAddress<tLocationAddress)\n            break;\n        \n        tKey=tLocationAddressNumber;\n        \n        if (inMachineInstructionAddress==tLocationAddress)\n            break;\n    }\n    \n    \n    DWRFLineNumberProgramLocation * tLocation=_locationsRegistry[tKey];\n    \n    return tLocation;\n}\n\n\n\n- (DWRFLineNumberProgramLocation *)locationFromStateMachine:(DWRFLineNumberProgramStateMachine *)inStateMachine\n{\n    DWRFLineNumberProgramLocation * tLocation=[DWRFLineNumberProgramLocation new];\n    \n    tLocation.machineInstructionAddress=inStateMachine.address;\n    \n    DWRFLineNumberProgramHeaderFileNameEntry * tEntry=_header.fileEntries[inStateMachine.file-1];\n    \n    NSString * tFileName=tEntry.filePath;\n    \n    if (tEntry.directoryIndex==0)\n    {\n    }\n    else\n    {\n        NSString * tDirectoryPath=_header.includeDirectories[tEntry.directoryIndex-1];\n        \n        tFileName=[tDirectoryPath stringByAppendingPathComponent:tFileName];\n    }\n    \n    tLocation.fileName=[tFileName copy];\n    tLocation.lineNumber=inStateMachine.line;\n    tLocation.columnNumber=inStateMachine.column;\n    \n    return tLocation;\n}\n\n@end\n\n@interface DWRFSection_debug_line ()\n{\n    NSData * _cachedData;\n    \n    NSMutableDictionary<NSNumber *,DWRFLineNumberProgram *> * _cachedLineNumberPrograms;\n}\n\n@end\n\n@implementation DWRFSection_debug_line\n\n- (instancetype)initWithData:(NSData *)inData\n{\n    if (inData==nil)\n        return nil;\n    \n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cachedData=inData;\n        \n        _cachedLineNumberPrograms=[NSMutableDictionary dictionary];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (DWRFLineNumberProgram *)lineNumberProgramAtOffset:(uint64_t)inOffset\n{\n    DWRFLineNumberProgram * tLineNumberProgram=_cachedLineNumberPrograms[@(inOffset)];\n    \n    if (tLineNumberProgram!=nil)\n        return tLineNumberProgram;\n    \n    uint8_t * tBufferPtr=(uint8_t *)_cachedData.bytes;\n    \n    tLineNumberProgram=[[DWRFLineNumberProgram alloc] initWithBuffer:tBufferPtr+inOffset /*fileObject:self.fileObject outBuffer:&tBufferPtr*/];\n    \n    if (tLineNumberProgram!=nil)\n        _cachedLineNumberPrograms[@(inOffset)]=tLineNumberProgram;\n    \n    return tLineNumberProgram;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_str.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface DWRFSection_debug_str : NSObject\n\n- (instancetype)initWithData:(NSData *)inData;\n\n- (NSString *)stringAtOffset:(uint64_t)inOffset;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_str.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_str.h\"\n\n@interface DWRFSection_debug_str ()\n{\n    NSMutableDictionary * _cachedStrings;\n    \n    NSData * _cachedData;\n}\n\n@end\n\n\n@implementation DWRFSection_debug_str\n\n- (instancetype)initWithData:(NSData *)inData\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cachedData=inData;\n        \n        _cachedStrings=[NSMutableDictionary dictionary];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)stringAtOffset:(uint64_t)inOffset\n{\n    NSString * tString=_cachedStrings[@(inOffset)];\n    \n    if (tString!=nil)\n        return tString;\n    \n    uint8_t * tBufferPtr=(uint8_t *)_cachedData.bytes;\n    \n    tString=[NSString stringWithCString:(const char *)tBufferPtr+inOffset encoding:NSASCIIStringEncoding];\n    \n    if (tString!=nil)\n        _cachedStrings[@(inOffset)]=tString;\n    \n    return tString;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_str_offsets.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"DWRFObject.h\"\n\n@interface DWRFSection_debug_str_offsets : NSObject\n\n- (instancetype)initWithData:(NSData *)inData;\n\n- (uint64_t)offsetAtIndex:(uint64_t)inIndex base:(uint64_t)inBase format:(DWRFFormat)inFormat;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/DWRFSection_debug_str_offsets.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"DWRFSection_debug_str_offsets.h\"\n\n@interface DWRFSection_debug_str_offsets ()\n{\n    NSData * _cachedData;\n}\n\n@end\n\n@implementation DWRFSection_debug_str_offsets\n\n- (instancetype)initWithData:(NSData *)inData\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _cachedData=inData;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (uint64_t)offsetAtIndex:(uint64_t)inIndex base:(uint64_t)inBase format:(DWRFFormat)inFormat\n{\n    uint8_t * tBytes=(uint8_t *)_cachedData.bytes;\n    \n    tBytes+=inBase;\n    \n    uint64_t tOffset=0;\n    \n    if (inFormat==DWRF64Format)\n    {\n        tBytes+=(inIndex*sizeof(uint64_t));\n        \n        tOffset=*((uint64_t *)tBytes);\n    }\n    else\n    {\n        tBytes+=(inIndex*sizeof(uint32_t));\n        \n         tOffset=*((uint32_t *)tBytes);\n    }\n    \n    return tOffset;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/LEB128.c",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#include \"LEB128.h\"\n\nuint64_t DWRF_readULEB128(uint8_t * inBufferPtr,uint8_t ** outBufferPtr)\n{\n    uint64_t tResult=0;\n    int64_t tShift=0;\n    \n    while(1)\n    {\n        uint8_t tByte=*inBufferPtr;\n        inBufferPtr++;\n        \n        if (tByte < 0x80)\n        {\n            tResult += (uint64_t)tByte << tShift;\n            break;\n        }\n        \n        tResult += (tByte & 0x7f) << tShift;\n        tShift += 7;\n    }\n    \n    if (outBufferPtr!=NULL)\n        *outBufferPtr=inBufferPtr;\n    \n    return tResult;\n}\n\nint64_t DWRF_readLEB128(uint8_t * inBufferPtr,uint8_t ** outBufferPtr)\n{\n    int64_t tResult=0;\n    int64_t tShift=0;\n    \n    while(1)\n    {\n        uint8_t tByte=*inBufferPtr;\n        inBufferPtr++;\n        \n        if (tByte < 0x80)\n        {\n            if (tByte & 0x40)\n                tResult -= (0x80 - tByte) << tShift;\n            else\n                tResult += (tByte & 0x3f) << tShift;\n\n            break;\n        }\n    \n        tResult += (tByte & 0x7f) << tShift;\n        tShift += 7;\n    }\n    \n    if (outBufferPtr!=NULL)\n        *outBufferPtr=inBufferPtr;\n    \n    return tResult;\n}\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/DWARF/LEB128.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#ifndef LEB128_h\n#define LEB128_h\n\n#include <stdint.h>\n#include <stdio.h>\n\nuint64_t DWRF_readULEB128(uint8_t * inBufferPtr,uint8_t ** outBufferPtr);\n\nint64_t DWRF_readLEB128(uint8_t * inBufferPtr,uint8_t ** outBufferPtr);\n\n#endif\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Demangling/CUICXXDemangler.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface CUICXXDemangler : NSObject\n\n+ (NSString *)demangle:(NSString *)inMangledName;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Demangling/CUICXXDemangler.mm",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUICXXDemangler.h\"\n\n#include <cxxabi.h>\n\n@implementation CUICXXDemangler\n\n+ (NSString *)demangle:(NSString *)inMangledName\n{\n    if (inMangledName==nil)\n        return nil;\n    \n    int tStatus=0;\n    \n    char * tBuffer=abi::__cxa_demangle(inMangledName.UTF8String,NULL,0,&tStatus);\n    \n    if (tBuffer==NULL)\n        return nil;\n    \n    NSString * tDemangledName=[NSString stringWithUTF8String:tBuffer];\n    \n    free(tBuffer);\n    \n    return tDemangledName;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Demangling/CUISwiftDemangler.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface CUISwiftDemangler : NSObject\n\n+ (NSString *)demangle:(NSString *)inMangledName;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Demangling/CUISwiftDemangler.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUISwiftDemangler.h\"\n\n#include <dlfcn.h>\n\n/*size_t (*swift_demangle_getDemangledName)(const char *MangledName,\n                                       char *OutputBuffer, size_t Length);*/\n\nsize_t (*swift_demangle_getSimplifiedDemangledName)(const char *MangledName,\n                                                 char *OutputBuffer,\n                                                 size_t Length);\n\n/*size_t (*swift_demangle_getModuleName)(const char *MangledName,\n                                    char *OutputBuffer,\n                                    size_t Length);*/\n\n/*int (*swift_demangle_hasSwiftCallingConvention)(const char *MangledName);*/\n\n@implementation CUISwiftDemangler\n\n+ (NSString *)demangle:(NSString *)inMangledName\n{\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        void * tFileHandle= dlopen(\"/usr/lib/swift/libswiftDemangle.dylib\", RTLD_LAZY);\n        \n        if (tFileHandle==NULL)\n        {\n            tFileHandle= dlopen(\"/System/Library/PrivateFrameworks/Swift/libswiftDemangle.dylib\", RTLD_LAZY);\n            \n            if (tFileHandle==NULL)\n            {\n            }\n        }\n        \n        swift_demangle_getSimplifiedDemangledName=dlsym(tFileHandle,\"swift_demangle_getSimplifiedDemangledName\");\n    });\n    \n    char tBuffer[2048];\n    \n    if (swift_demangle_getSimplifiedDemangledName(inMangledName.UTF8String,tBuffer,2048)==0)\n        return nil;\n    \n    NSString * tDemangledName=[NSString stringWithUTF8String:tBuffer];\n    \n    return tDemangledName;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Controller.h",
    "content": "//\n//  Controller.h\n//  Line View Test\n//\n//  Created by Paul Kim on 9/28/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n#import <Cocoa/Cocoa.h>\n\n@class NoodleLineNumberView;\n\n@interface Controller : NSObject\n{\n    IBOutlet NSScrollView   *scrollView;\n    IBOutlet NSTextView     *scriptView;\n\tNoodleLineNumberView\t*lineNumberView;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Controller.m",
    "content": "//\n//  Controller.m\n//  Line View Test\n//\n//  Created by Paul Kim on 9/28/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n#import \"Controller.h\"\n#import \"NoodleLineNumberView.h\"\n#import \"NoodleLineNumberMarker.h\"\n#import \"MarkerLineNumberView.h\"\n\n@implementation Controller\n\n\n- (void)awakeFromNib\n{\n    lineNumberView = [[MarkerLineNumberView alloc] initWithScrollView:scrollView];\n    [scrollView setVerticalRulerView:lineNumberView];\n    [scrollView setHasHorizontalRuler:NO];\n    [scrollView setHasVerticalRuler:YES];\n    [scrollView setRulersVisible:YES];\n\t\n    [scriptView setFont:[NSFont userFixedPitchFontOfSize:[NSFont smallSystemFontSize]]];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/English.lproj/MainMenu.nib/designable.nib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment version=\"1040\" identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSApplication\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\"/>\n        <menu title=\"AMainMenu\" systemMenu=\"main\" id=\"29\" userLabel=\"MainMenu\">\n            <items>\n                <menuItem title=\"Line View Test\" id=\"56\">\n                    <menu key=\"submenu\" title=\"Line View Test\" systemMenu=\"apple\" id=\"57\">\n                        <items>\n                            <menuItem title=\"About Line View Test\" id=\"58\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"orderFrontStandardAboutPanel:\" target=\"-2\" id=\"142\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"236\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Preferences…\" keyEquivalent=\",\" id=\"129\" userLabel=\"121\"/>\n                            <menuItem isSeparatorItem=\"YES\" id=\"143\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Services\" id=\"131\">\n                                <menu key=\"submenu\" title=\"Services\" systemMenu=\"services\" id=\"130\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"144\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Hide Line View Test\" keyEquivalent=\"h\" id=\"134\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"367\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Hide Others\" keyEquivalent=\"h\" id=\"145\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"368\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Show All\" id=\"150\">\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"370\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"149\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Quit Line View Test\" keyEquivalent=\"q\" id=\"136\" userLabel=\"1111\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-1\" id=\"369\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"File\" id=\"83\">\n                    <menu key=\"submenu\" title=\"File\" id=\"81\">\n                        <items>\n                            <menuItem title=\"New\" keyEquivalent=\"n\" id=\"82\" userLabel=\"9\">\n                                <connections>\n                                    <action selector=\"newDocument:\" target=\"-1\" id=\"373\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Open…\" keyEquivalent=\"o\" id=\"72\">\n                                <connections>\n                                    <action selector=\"openDocument:\" target=\"-1\" id=\"374\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Open Recent\" id=\"124\">\n                                <menu key=\"submenu\" title=\"Open Recent\" systemMenu=\"recentDocuments\" id=\"125\">\n                                    <items>\n                                        <menuItem title=\"Clear Menu\" id=\"126\">\n                                            <connections>\n                                                <action selector=\"clearRecentDocuments:\" target=\"-1\" id=\"127\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"79\" userLabel=\"7\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Close\" keyEquivalent=\"w\" id=\"73\" userLabel=\"1\">\n                                <connections>\n                                    <action selector=\"performClose:\" target=\"-1\" id=\"193\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Save\" keyEquivalent=\"s\" id=\"75\" userLabel=\"3\">\n                                <connections>\n                                    <action selector=\"saveDocument:\" target=\"-1\" id=\"362\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Save As…\" keyEquivalent=\"S\" id=\"80\" userLabel=\"8\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"saveDocumentAs:\" target=\"-1\" id=\"363\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Revert to Saved\" id=\"112\" userLabel=\"10\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"revertDocumentToSaved:\" target=\"-1\" id=\"364\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"74\" userLabel=\"2\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Page Setup...\" keyEquivalent=\"P\" id=\"77\" userLabel=\"5\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"runPageLayout:\" target=\"-1\" id=\"87\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Print…\" keyEquivalent=\"p\" id=\"78\" userLabel=\"6\">\n                                <connections>\n                                    <action selector=\"print:\" target=\"-1\" id=\"86\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Edit\" id=\"217\">\n                    <menu key=\"submenu\" title=\"Edit\" id=\"205\">\n                        <items>\n                            <menuItem title=\"Undo\" keyEquivalent=\"z\" id=\"207\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"223\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Redo\" keyEquivalent=\"Z\" id=\"215\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"231\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"206\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Cut\" keyEquivalent=\"x\" id=\"199\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"228\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Copy\" keyEquivalent=\"c\" id=\"197\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"224\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Paste\" keyEquivalent=\"v\" id=\"203\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"226\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Delete\" id=\"202\">\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"235\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Select All\" keyEquivalent=\"a\" id=\"198\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"232\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"214\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Find\" id=\"218\">\n                                <menu key=\"submenu\" title=\"Find\" id=\"220\">\n                                    <items>\n                                        <menuItem title=\"Find…\" tag=\"1\" keyEquivalent=\"f\" id=\"209\">\n                                            <connections>\n                                                <action selector=\"performFindPanelAction:\" target=\"-1\" id=\"241\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Find Next\" tag=\"2\" keyEquivalent=\"g\" id=\"208\"/>\n                                        <menuItem title=\"Find Previous\" tag=\"3\" keyEquivalent=\"G\" id=\"213\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Use Selection for Find\" tag=\"7\" keyEquivalent=\"e\" id=\"221\"/>\n                                        <menuItem title=\"Jump to Selection\" keyEquivalent=\"j\" id=\"210\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"245\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Spelling and Grammar\" id=\"216\">\n                                <menu key=\"submenu\" title=\"Spelling and Grammar\" id=\"200\">\n                                    <items>\n                                        <menuItem title=\"Show Spelling…\" keyEquivalent=\":\" id=\"204\">\n                                            <connections>\n                                                <action selector=\"showGuessPanel:\" target=\"-1\" id=\"230\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Check Spelling\" keyEquivalent=\";\" id=\"201\">\n                                            <connections>\n                                                <action selector=\"checkSpelling:\" target=\"-1\" id=\"225\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Check Spelling While Typing\" id=\"219\">\n                                            <connections>\n                                                <action selector=\"toggleContinuousSpellChecking:\" target=\"-1\" id=\"222\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Check Grammar With Spelling\" id=\"346\">\n                                            <connections>\n                                                <action selector=\"toggleGrammarChecking:\" target=\"-1\" id=\"347\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Substitutions\" id=\"348\">\n                                <menu key=\"submenu\" title=\"Substitutions\" id=\"349\">\n                                    <items>\n                                        <menuItem title=\"Smart Copy/Paste\" tag=\"1\" keyEquivalent=\"f\" id=\"350\">\n                                            <connections>\n                                                <action selector=\"toggleSmartInsertDelete:\" target=\"-1\" id=\"355\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Smart Quotes\" tag=\"2\" keyEquivalent=\"g\" id=\"351\">\n                                            <connections>\n                                                <action selector=\"toggleAutomaticQuoteSubstitution:\" target=\"-1\" id=\"356\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Smart Links\" tag=\"3\" keyEquivalent=\"G\" id=\"354\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                            <connections>\n                                                <action selector=\"toggleAutomaticLinkDetection:\" target=\"-1\" id=\"357\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Speech\" id=\"211\">\n                                <menu key=\"submenu\" title=\"Speech\" id=\"212\">\n                                    <items>\n                                        <menuItem title=\"Start Speaking\" id=\"196\">\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"233\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Stop Speaking\" id=\"195\">\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"227\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"View\" id=\"295\">\n                    <menu key=\"submenu\" title=\"View\" id=\"296\">\n                        <items>\n                            <menuItem title=\"Show Toolbar\" keyEquivalent=\"t\" id=\"297\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"toggleToolbarShown:\" target=\"-1\" id=\"366\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Customize Toolbar…\" id=\"298\">\n                                <connections>\n                                    <action selector=\"runToolbarCustomizationPalette:\" target=\"-1\" id=\"365\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Window\" id=\"19\">\n                    <menu key=\"submenu\" title=\"Window\" systemMenu=\"window\" id=\"24\">\n                        <items>\n                            <menuItem title=\"Minimize\" keyEquivalent=\"m\" id=\"23\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"37\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Zoom\" id=\"239\">\n                                <connections>\n                                    <action selector=\"performZoom:\" target=\"-1\" id=\"240\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"92\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Bring All to Front\" id=\"5\">\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"39\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Help\" id=\"103\" userLabel=\"1\">\n                    <menu key=\"submenu\" title=\"Help\" id=\"106\" userLabel=\"2\">\n                        <items>\n                            <menuItem title=\"NewApplication Help\" keyEquivalent=\"?\" id=\"111\">\n                                <connections>\n                                    <action selector=\"showHelp:\" target=\"-1\" id=\"360\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n        </menu>\n        <window title=\"Window\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" releasedWhenClosed=\"NO\" animationBehavior=\"default\" id=\"371\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"335\" y=\"495\" width=\"338\" height=\"255\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"1024\" height=\"746\"/>\n            <view key=\"contentView\" id=\"372\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"338\" height=\"255\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" id=\"375\">\n                        <rect key=\"frame\" x=\"20\" y=\"20\" width=\"298\" height=\"215\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"dwm-5b-0lh\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"296\" height=\"213\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textView importsGraphics=\"NO\" verticallyResizable=\"YES\" usesFontPanel=\"YES\" findStyle=\"panel\" spellingCorrection=\"YES\" id=\"378\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"296\" height=\"213\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <size key=\"minSize\" width=\"296\" height=\"213\"/>\n                                    <size key=\"maxSize\" width=\"594\" height=\"10000000\"/>\n                                    <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textView>\n                            </subviews>\n                            <color key=\"backgroundColor\" white=\"1\" alpha=\"1\" colorSpace=\"calibratedWhite\"/>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" horizontal=\"YES\" id=\"377\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"87\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"376\">\n                            <rect key=\"frame\" x=\"282\" y=\"1\" width=\"15\" height=\"188\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                    </scrollView>\n                </subviews>\n            </view>\n            <connections>\n                <outlet property=\"initialFirstResponder\" destination=\"378\" id=\"385\"/>\n            </connections>\n        </window>\n        <customObject id=\"379\" customClass=\"Controller\">\n            <connections>\n                <outlet property=\"scriptView\" destination=\"378\" id=\"406\"/>\n                <outlet property=\"scrollView\" destination=\"375\" id=\"405\"/>\n            </connections>\n        </customObject>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>English</string>\n\t<key>CFBundleExecutable</key>\n\t<string>${EXECUTABLE_NAME}</string>\n\t<key>CFBundleIconFile</key>\n\t<string></string>\n\t<key>CFBundleIdentifier</key>\n\t<string>com.yourcompany.${PRODUCT_NAME:identifier}</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>${PRODUCT_NAME}</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleVersion</key>\n\t<string>0.4.1</string>\n\t<key>NSMainNibFile</key>\n\t<string>MainMenu</string>\n\t<key>NSPrincipalClass</key>\n\t<string>NSApplication</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2008, Noodlesoft, LLC. All rights reserved.</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Line View Test.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 44;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\t324EF09D0E996FBC00E81846 /* Controller.m in Sources */ = {isa = PBXBuildFile; fileRef = 324EF0950E996FBC00E81846 /* Controller.m */; };\n\t\t324EF09E0E996FBC00E81846 /* MarkerLineNumberView.m in Sources */ = {isa = PBXBuildFile; fileRef = 324EF0980E996FBC00E81846 /* MarkerLineNumberView.m */; };\n\t\t324EF09F0E996FBC00E81846 /* NoodleLineNumberMarker.m in Sources */ = {isa = PBXBuildFile; fileRef = 324EF09A0E996FBC00E81846 /* NoodleLineNumberMarker.m */; };\n\t\t324EF0A00E996FBC00E81846 /* NoodleLineNumberView.m in Sources */ = {isa = PBXBuildFile; fileRef = 324EF09C0E996FBC00E81846 /* NoodleLineNumberView.m */; };\n\t\t324EF0A30E996FD100E81846 /* MainMenu.nib in Resources */ = {isa = PBXBuildFile; fileRef = 324EF0A10E996FD100E81846 /* MainMenu.nib */; };\n\t\t324EF0AA0E99700D00E81846 /* Credits.rtf in Resources */ = {isa = PBXBuildFile; fileRef = 324EF0A90E99700D00E81846 /* Credits.rtf */; };\n\t\t8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };\n\t\t8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };\n\t\t8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\t089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\t1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = \"<absolute>\"; };\n\t\t13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = \"<absolute>\"; };\n\t\t29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\t29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = \"<absolute>\"; };\n\t\t29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = \"<absolute>\"; };\n\t\t324EF0950E996FBC00E81846 /* Controller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Controller.m; sourceTree = \"<group>\"; };\n\t\t324EF0960E996FBC00E81846 /* Controller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Controller.h; sourceTree = \"<group>\"; };\n\t\t324EF0970E996FBC00E81846 /* MarkerLineNumberView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MarkerLineNumberView.h; sourceTree = \"<group>\"; };\n\t\t324EF0980E996FBC00E81846 /* MarkerLineNumberView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MarkerLineNumberView.m; sourceTree = \"<group>\"; };\n\t\t324EF0990E996FBC00E81846 /* NoodleLineNumberMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoodleLineNumberMarker.h; sourceTree = \"<group>\"; };\n\t\t324EF09A0E996FBC00E81846 /* NoodleLineNumberMarker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NoodleLineNumberMarker.m; sourceTree = \"<group>\"; };\n\t\t324EF09B0E996FBC00E81846 /* NoodleLineNumberView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoodleLineNumberView.h; sourceTree = \"<group>\"; };\n\t\t324EF09C0E996FBC00E81846 /* NoodleLineNumberView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NoodleLineNumberView.m; sourceTree = \"<group>\"; };\n\t\t324EF0A20E996FD100E81846 /* English */ = {isa = PBXFileReference; lastKnownFileType = wrapper.nib; name = English; path = English.lproj/MainMenu.nib; sourceTree = \"<group>\"; };\n\t\t324EF0A90E99700D00E81846 /* Credits.rtf */ = {isa = PBXFileReference; lastKnownFileType = text.rtf; path = Credits.rtf; sourceTree = \"<group>\"; };\n\t\t32CA4F630368D1EE00C91783 /* Line View Test_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"Line View Test_Prefix.pch\"; sourceTree = \"<group>\"; };\n\t\t8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\t8D1107320486CEB800E47090 /* Line View Test.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = \"Line View Test.app\"; sourceTree = BUILT_PRODUCTS_DIR; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\t8D11072E0486CEB800E47090 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\t080E96DDFE201D6D7F000001 /* Classes */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t324EF0960E996FBC00E81846 /* Controller.h */,\n\t\t\t\t324EF0950E996FBC00E81846 /* Controller.m */,\n\t\t\t\t324EF0970E996FBC00E81846 /* MarkerLineNumberView.h */,\n\t\t\t\t324EF0980E996FBC00E81846 /* MarkerLineNumberView.m */,\n\t\t\t\t324EF0990E996FBC00E81846 /* NoodleLineNumberMarker.h */,\n\t\t\t\t324EF09A0E996FBC00E81846 /* NoodleLineNumberMarker.m */,\n\t\t\t\t324EF09B0E996FBC00E81846 /* NoodleLineNumberView.h */,\n\t\t\t\t324EF09C0E996FBC00E81846 /* NoodleLineNumberView.m */,\n\t\t\t);\n\t\t\tname = Classes;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,\n\t\t\t);\n\t\t\tname = \"Linked Frameworks\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t29B97324FDCFA39411CA2CEA /* AppKit.framework */,\n\t\t\t\t13E42FB307B3F0F600E4EEF1 /* CoreData.framework */,\n\t\t\t\t29B97325FDCFA39411CA2CEA /* Foundation.framework */,\n\t\t\t);\n\t\t\tname = \"Other Frameworks\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t19C28FACFE9D520D11CA2CBB /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t8D1107320486CEB800E47090 /* Line View Test.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t29B97314FDCFA39411CA2CEA /* Line View Test */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t080E96DDFE201D6D7F000001 /* Classes */,\n\t\t\t\t29B97315FDCFA39411CA2CEA /* Other Sources */,\n\t\t\t\t29B97317FDCFA39411CA2CEA /* Resources */,\n\t\t\t\t29B97323FDCFA39411CA2CEA /* Frameworks */,\n\t\t\t\t19C28FACFE9D520D11CA2CBB /* Products */,\n\t\t\t);\n\t\t\tname = \"Line View Test\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t29B97315FDCFA39411CA2CEA /* Other Sources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t32CA4F630368D1EE00C91783 /* Line View Test_Prefix.pch */,\n\t\t\t\t29B97316FDCFA39411CA2CEA /* main.m */,\n\t\t\t);\n\t\t\tname = \"Other Sources\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t29B97317FDCFA39411CA2CEA /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t324EF0A90E99700D00E81846 /* Credits.rtf */,\n\t\t\t\t8D1107310486CEB800E47090 /* Info.plist */,\n\t\t\t\t089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,\n\t\t\t\t324EF0A10E996FD100E81846 /* MainMenu.nib */,\n\t\t\t);\n\t\t\tname = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t29B97323FDCFA39411CA2CEA /* Frameworks */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\t1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,\n\t\t\t\t1058C7A2FEA54F0111CA2CBB /* Other Frameworks */,\n\t\t\t);\n\t\t\tname = Frameworks;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\t8D1107260486CEB800E47090 /* Line View Test */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget \"Line View Test\" */;\n\t\t\tbuildPhases = (\n\t\t\t\t8D1107290486CEB800E47090 /* Resources */,\n\t\t\t\t8D11072C0486CEB800E47090 /* Sources */,\n\t\t\t\t8D11072E0486CEB800E47090 /* Frameworks */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = \"Line View Test\";\n\t\t\tproductInstallPath = \"$(HOME)/Applications\";\n\t\t\tproductName = \"Line View Test\";\n\t\t\tproductReference = 8D1107320486CEB800E47090 /* Line View Test.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\t29B97313FDCFA39411CA2CEA /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t};\n\t\t\tbuildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject \"Line View Test\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.0\";\n\t\t\tdevelopmentRegion = en;\n\t\t\thasScannedForEncodings = 1;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = 29B97314FDCFA39411CA2CEA /* Line View Test */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\t8D1107260486CEB800E47090 /* Line View Test */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\t8D1107290486CEB800E47090 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,\n\t\t\t\t324EF0A30E996FD100E81846 /* MainMenu.nib in Resources */,\n\t\t\t\t324EF0AA0E99700D00E81846 /* Credits.rtf in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\t8D11072C0486CEB800E47090 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\t8D11072D0486CEB800E47090 /* main.m in Sources */,\n\t\t\t\t324EF09D0E996FBC00E81846 /* Controller.m in Sources */,\n\t\t\t\t324EF09E0E996FBC00E81846 /* MarkerLineNumberView.m in Sources */,\n\t\t\t\t324EF09F0E996FBC00E81846 /* NoodleLineNumberMarker.m in Sources */,\n\t\t\t\t324EF0A00E996FBC00E81846 /* NoodleLineNumberView.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXVariantGroup section */\n\t\t089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t089C165DFE840E0CC02AAC07 /* English */,\n\t\t\t);\n\t\t\tname = InfoPlist.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\t324EF0A10E996FD100E81846 /* MainMenu.nib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\t324EF0A20E996FD100E81846 /* English */,\n\t\t\t);\n\t\t\tname = MainMenu.nib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\tC01FCF4B08A954540054247B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_ENABLE_FIX_AND_CONTINUE = YES;\n\t\t\t\tGCC_MODEL_TUNING = G5;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = \"Line View Test_Prefix.pch\";\n\t\t\t\tINFOPLIST_FILE = Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(HOME)/Applications\";\n\t\t\t\tPRODUCT_NAME = \"Line View Test\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tC01FCF4C08A954540054247B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tGCC_MODEL_TUNING = G5;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = \"Line View Test_Prefix.pch\";\n\t\t\t\tINFOPLIST_FILE = Info.plist;\n\t\t\t\tINSTALL_PATH = \"$(HOME)/Applications\";\n\t\t\t\tPRODUCT_NAME = \"Line View Test\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tC01FCF4F08A954540054247B /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tARCHS = \"$(NATIVE_ARCH_ACTUAL)\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = c99;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.8;\n\t\t\t\tONLY_ACTIVE_ARCH = YES;\n\t\t\t\tPREBINDING = NO;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tWARNING_CFLAGS = \"-Wall\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tC01FCF5008A954540054247B /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tARCHS = \"$(NATIVE_ARCH_ACTUAL)\";\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = c99;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tMACOSX_DEPLOYMENT_TARGET = 10.8;\n\t\t\t\tPREBINDING = NO;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t\tWARNING_CFLAGS = \"-Wall\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\tC01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget \"Line View Test\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tC01FCF4B08A954540054247B /* Debug */,\n\t\t\t\tC01FCF4C08A954540054247B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tC01FCF4E08A954540054247B /* Build configuration list for PBXProject \"Line View Test\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tC01FCF4F08A954540054247B /* Debug */,\n\t\t\t\tC01FCF5008A954540054247B /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = 29B97313FDCFA39411CA2CEA /* Project object */;\n}\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Line View Test.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Line View Test.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDEDidComputeMac32BitWarning</key>\n\t<true/>\n</dict>\n</plist>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Line View Test_Prefix.pch",
    "content": "//\n// Prefix header for all source files of the 'Line View Test' target in the 'Line View Test' project\n//\n\n#ifdef __OBJC__\n    #import <Cocoa/Cocoa.h>\n#endif\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/MarkerLineNumberView.h",
    "content": "//\n//  MarkerTextView.h\n//  Line View Test\n//\n//  Created by Paul Kim on 10/4/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n#import <Cocoa/Cocoa.h>\n#import \"NoodleLineNumberView.h\"\n\n@interface MarkerLineNumberView : NoodleLineNumberView\n{\n\tNSImage\t\t\t\t*markerImage;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/MarkerLineNumberView.m",
    "content": "//\n//  MarkerTextView.m\n//  Line View Test\n//\n//  Created by Paul Kim on 10/4/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n#import \"MarkerLineNumberView.h\"\n#import \"NoodleLineNumberMarker.h\"\n\n#define CORNER_RADIUS\t3.0\n#define MARKER_HEIGHT\t13.0\n\n@implementation MarkerLineNumberView\n\n- (void)dealloc\n{\n\t[markerImage release];\n\t\n\t[super dealloc];\n}\n\n- (void)setRuleThickness:(float)thickness\n{\n\t[super setRuleThickness:thickness];\n\t\n\t// Overridden to reset the size of the marker image forcing it to redraw with the new width.\n\t// If doing this in a non-subclass of NoodleLineNumberView, you can set it to post frame \n\t// notifications and listen for them.\n\t[markerImage setSize:NSMakeSize(thickness, MARKER_HEIGHT)];\t\n}\n\n- (void)drawMarkerImageIntoRep:(id)rep\n{\n\tNSBezierPath\t*path;\n\tNSRect\t\t\trect;\n\t\n\trect = NSMakeRect(1.0, 2.0, [rep size].width - 2.0, [rep size].height - 3.0);\n\t\n\tpath = [NSBezierPath bezierPath];\n\t[path moveToPoint:NSMakePoint(NSMaxX(rect), NSMinY(rect) + NSHeight(rect) / 2)];\n\t[path lineToPoint:NSMakePoint(NSMaxX(rect) - 5.0, NSMaxY(rect))];\n\t\n\t[path appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(rect) + CORNER_RADIUS, NSMaxY(rect) - CORNER_RADIUS) radius:CORNER_RADIUS startAngle:90 endAngle:180];\n\t\n\t[path appendBezierPathWithArcWithCenter:NSMakePoint(NSMinX(rect) + CORNER_RADIUS, NSMinY(rect) + CORNER_RADIUS) radius:CORNER_RADIUS startAngle:180 endAngle:270];\n\t[path lineToPoint:NSMakePoint(NSMaxX(rect) - 5.0, NSMinY(rect))];\n\t[path closePath];\n\t\n\t[[NSColor colorWithCalibratedRed:0.003 green:0.56 blue:0.85 alpha:1.0] set];\n\t[path fill];\n\t\n\t[[NSColor colorWithCalibratedRed:0 green:0.44 blue:0.8 alpha:1.0] set];\n\t\n\t[path setLineWidth:2.0];\n\t[path stroke];\n}\n\n- (NSImage *)markerImageWithSize:(NSSize)size\n{\n\tif (markerImage == nil)\n\t{\n\t\tNSCustomImageRep\t*rep;\n\t\t\n\t\tmarkerImage = [[NSImage alloc] initWithSize:size];\n\t\trep = [[NSCustomImageRep alloc] initWithDrawSelector:@selector(drawMarkerImageIntoRep:) delegate:self];\n\t\t[rep setSize:size];\n\t\t[markerImage addRepresentation:rep];\n\t\t[rep release];\n\t}\n\treturn markerImage;\n}\n\n- (void)mouseDown:(NSEvent *)theEvent\n{\n\tNSPoint\t\t\t\t\tlocation;\n\tunsigned\t\t\t\tline;\n\t\n\tlocation = [self convertPoint:[theEvent locationInWindow] fromView:nil];\n\tline = [self lineNumberForLocation:location.y];\n\t\n\tif (line != NSNotFound)\n\t{\n\t\tNoodleLineNumberMarker\t\t*marker;\n\t\t\n\t\tmarker = [self markerAtLine:line];\n\t\t\n\t\tif (marker != nil)\n\t\t{\n\t\t\t[self removeMarker:marker];\n\t\t}\n\t\telse\n\t\t{\n\t\t\tmarker = [[NoodleLineNumberMarker alloc] initWithRulerView:self\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t lineNumber:line\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  image:[self markerImageWithSize:NSMakeSize([self ruleThickness], MARKER_HEIGHT)]\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t   imageOrigin:NSMakePoint(0, MARKER_HEIGHT / 2)];\n\t\t\t[self addMarker:marker];\n\t\t\t[marker release];\n\t\t}\n\t\t[self setNeedsDisplay:YES];\n\t}\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/NoodleLineNumberMarker.h",
    "content": "//\n//  NoodleLineNumberMarker.h\n//  Line View Test\n//\n//  Created by Paul Kim on 9/30/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n// Converted to Objective-C 2.x by Stephane Sudre\n\n#import <Cocoa/Cocoa.h>\n\n@interface NoodleLineNumberMarker : NSRulerMarker\n\n    @property NSUInteger lineNumber;\n\n- (instancetype)initWithRulerView:(NSRulerView *)inRulerView lineNumber:(NSUInteger)inLineNumber image:(NSImage *)inImage imageOrigin:(NSPoint)inImageOrigin;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/NoodleLineNumberMarker.m",
    "content": "//\n//  NoodleLineNumberMarker.m\n//  Line View Test\n//\n//  Created by Paul Kim on 9/30/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n// Converted to Objective-C 2.x by Stephane Sudre\n\n#import \"NoodleLineNumberMarker.h\"\n\nNSString * const NOODLE_LINE_CODING_KEY=@\"line\";\n\n@implementation NoodleLineNumberMarker\n\n- (instancetype)initWithRulerView:(NSRulerView *)inRulerView lineNumber:(NSUInteger)inLineNumber image:(NSImage *)inImage imageOrigin:(NSPoint)inImageOrigin\n{\n    self = [super initWithRulerView:inRulerView markerLocation:0.0 image:inImage imageOrigin:inImageOrigin];\n    \n\tif (self != nil)\n\t{\n\t\t_lineNumber = inLineNumber;\n\t}\n    \n\treturn self;\n}\n\n#pragma mark - NSCoding\n\n- (id)initWithCoder:(NSCoder *)decoder\n{\n    self = [super initWithCoder:decoder];\n    \n    if (self != nil)\n\t{\n\t\tif ([decoder allowsKeyedCoding]==YES)\n\t\t{\n\t\t\t_lineNumber = [[decoder decodeObjectForKey:NOODLE_LINE_CODING_KEY] unsignedIntegerValue];\n\t\t}\n\t\telse\n\t\t{\n\t\t\t_lineNumber = [[decoder decodeObject] unsignedIntegerValue];\n\t\t}\n\t}\n\treturn self;\n}\n\n- (void)encodeWithCoder:(NSCoder *)encoder\n{\n\t[super encodeWithCoder:encoder];\n\t\n\tif ([encoder allowsKeyedCoding]==YES)\n\t{\n\t\t[encoder encodeObject:@(self.lineNumber) forKey:NOODLE_LINE_CODING_KEY];\n\t}\n\telse\n\t{\n\t\t[encoder encodeObject:@(self.lineNumber)];\n\t}\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(NSZone *)zone\n{\n\tNoodleLineNumberMarker * nMarker=[super copyWithZone:zone];\n\t\n    nMarker.lineNumber=self.lineNumber;\n    \n    return nMarker;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/NoodleLineNumberView.h",
    "content": "//\n//  NoodleLineNumberView.h\n//  Line View Test\n//\n//  Created by Paul Kim on 9/28/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n// \n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n// Converted to Objective-C 2.x by Stephane Sudre\n\n#import <Cocoa/Cocoa.h>\n\n@class NoodleLineNumberMarker;\n\n@interface NoodleLineNumberView : NSRulerView\n\n    @property (nonatomic) CGFloat fontSizeDelta;\n\n    @property (nonatomic) NSFont * font;\n\n    @property (nonatomic) NSColor * textColor;\n\n    @property (nonatomic) NSColor * alternateTextColor;\n\n    @property (nonatomic) NSColor * backgroundColor;\n\n\n- (instancetype)initWithScrollView:(NSScrollView *)inScrollView;\n\n- (NSUInteger)lineNumberForLocation:(CGFloat)inLocation;\n\n- (NoodleLineNumberMarker *)markerAtLine:(NSUInteger)inLineNumber;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/NoodleLineNumberView.m",
    "content": "//\n//  NoodleLineNumberView.m\n//  Line View Test\n//\n//  Created by Paul Kim on 9/28/08.\n//  Copyright (c) 2008 Noodlesoft, LLC. All rights reserved.\n//\n// Permission is hereby granted, free of charge, to any person\n// obtaining a copy of this software and associated documentation\n// files (the \"Software\"), to deal in the Software without\n// restriction, including without limitation the rights to use,\n// copy, modify, merge, publish, distribute, sublicense, and/or sell\n// copies of the Software, and to permit persons to whom the\n// Software is furnished to do so, subject to the following\n// conditions:\n//\n// The above copyright notice and this permission notice shall be\n// included in all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\n// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\n// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\n// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\n// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\n// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\n// OTHER DEALINGS IN THE SOFTWARE.\n//\n\n// Converted to Objective-C 2.x by Stephane Sudre\n\n#import \"NoodleLineNumberView.h\"\n#import \"NoodleLineNumberMarker.h\"\n\n#define DEFAULT_THICKNESS    22.0\n#define RULER_MARGIN        5.0\n\n@interface NoodleLineNumberView ()\n{\n    NSMutableArray * lineIndices;   // Array of character indices for the beginning of each line\n    \n    NSMutableDictionary * _linesToMarkers;     // Maps line numbers to markers\n}\n\n- (NSMutableArray *)lineIndices;\n- (void)invalidateLineIndices;\n- (void)calculateLines;\n- (NSUInteger)lineNumberForCharacterIndex:(NSUInteger)index inText:(NSString *)text;\n- (NSDictionary *)textAttributes;\n- (NSDictionary *)markerTextAttributes;\n\n@end\n\n@implementation NoodleLineNumberView\n\n- (id)initWithScrollView:(NSScrollView *)inScrollView\n{\n    self = [super initWithScrollView:inScrollView orientation:NSVerticalRuler];\n    \n    if (self != nil)\n    {\n        _linesToMarkers = [NSMutableDictionary dictionary];\n        \n        [self setClientView:inScrollView.documentView];\n    }\n    \n    return self;\n}\n\n- (void)awakeFromNib\n{\n    _linesToMarkers = [NSMutableDictionary dictionary];\n    \n    [self setClientView:self.scrollView.documentView];\n}\n\n- (void)dealloc\n{\n    [NSNotificationCenter.defaultCenter removeObserver:self];\n}\n\n#pragma mark -\n\n- (void)setFontSizeDelta:(CGFloat)inFontSizeDelta\n{\n    if (inFontSizeDelta>0)\n    {\n        _fontSizeDelta=0;\n    }\n    else\n    {\n        if (_fontSizeDelta>-5)\n        {\n            _fontSizeDelta=inFontSizeDelta;\n        }\n    }\n}\n\n- (NSFont *)font\n{\n    if (_font == nil)\n        return [NSFont labelFontOfSize:[NSFont systemFontSizeForControlSize:NSControlSizeMini]];\n    \n    return _font;\n}\n\n- (NSColor *)textColor\n{\n    if (_textColor == nil)\n        return [NSColor colorWithCalibratedWhite:0.42 alpha:1.0];\n\n    return _textColor;\n}\n\n- (NSColor *)alternateTextColor\n{\n    if (_alternateTextColor == nil)\n        return [NSColor whiteColor];\n    \n    return _alternateTextColor;\n}\n\n\n- (BOOL)clipsToBounds\n{\n\treturn YES;\n}\n\n- (BOOL)isOpaque\n{\n\treturn YES;\n}\n\n#pragma mark -\n\n- (void)setClientView:(NSView *)inClientView\n{\n    NSNotificationCenter *tNotificationCenter = NSNotificationCenter.defaultCenter;\n    \n    [tNotificationCenter removeObserver:self name:NSTextStorageDidProcessEditingNotification object:nil];\n    \n    super.clientView = inClientView;\n    \n    if ([inClientView isKindOfClass:[NSTextView class]]==YES)\n    {\n        NSTextStorage *textStorage = ((NSTextView *)inClientView).textStorage;\n        \n        [tNotificationCenter addObserver:self selector:@selector(clientTextStorageDidProcessEditing:) name:NSTextStorageDidProcessEditingNotification object:textStorage];\n        \n        [self invalidateLineIndices];\n    }\n}\n\n- (NSMutableArray *)lineIndices\n{\n    if (lineIndices == nil)\n        [self calculateLines];\n\n    return lineIndices;\n}\n\n- (void)invalidateLineIndices\n{\n    lineIndices = nil;\n}\n\n- (NSUInteger)lineNumberForLocation:(CGFloat)inLocation\n{\n    NSTextView * tTextView = (NSTextView *)self.clientView;\n    \n    if ([tTextView isKindOfClass:[NSTextView class]]==NO)\n    \n        return NSNotFound;\n    \n    NSRect tVisibleRect = [self scrollView].contentView.bounds;\n    \n    inLocation += NSMinY(tVisibleRect);\n    \n    NSRange nullRange = NSMakeRange(NSNotFound, 0);\n    NSLayoutManager * tLayoutManager = tTextView.layoutManager;\n    NSTextContainer * tTextContainter = tTextView.textContainer;\n    \n    NSMutableArray * tLineIndices = [self lineIndices];\n    NSUInteger tCount = tLineIndices.count;\n    \n    for (NSUInteger tLine = 0; tLine < tCount; tLine++)\n    {\n        NSUInteger index = [tLineIndices[tLine] unsignedIntValue];\n        \n        NSUInteger tRectCount;\n        NSRectArray tRects = [tLayoutManager rectArrayForCharacterRange:NSMakeRange(index, 0)\n                                           withinSelectedCharacterRange:nullRange\n                                                        inTextContainer:tTextContainter\n                                                              rectCount:&tRectCount];\n        \n        for (NSUInteger tIndex = 0; tIndex < tRectCount; tIndex++)\n        {\n            NSRect tRect=tRects[tIndex];\n            \n            if ((inLocation >= NSMinY(tRect)) && (inLocation < NSMaxY(tRect)))\n                return tLine + 1;\n        }\n    }\n    \n    return NSNotFound;\n}\n\n- (NoodleLineNumberMarker *)markerAtLine:(NSUInteger)inLine\n{\n    return _linesToMarkers[@(inLine - 1)];\n}\n\n- (void)calculateLines\n{\n    NSTextView * tTextView=(NSTextView *)[self clientView];\n    \n    if ([tTextView isKindOfClass:[NSTextView class]]==NO)\n        return;\n    \n    NSUInteger lineEnd, contentEnd;\n    \n    NSString *text = tTextView.string;\n    NSUInteger stringLength = text.length;\n    \n    lineIndices = [NSMutableArray array];\n    \n    NSUInteger index = 0;\n    NSUInteger numberOfLines = 0;\n    \n    do\n    {\n        [lineIndices addObject:@(index)];\n        \n        index = NSMaxRange([text lineRangeForRange:NSMakeRange(index, 0)]);\n        numberOfLines++;\n    }\n    while (index < stringLength);\n    \n    // Check if text ends with a new line.\n    [text getLineStart:NULL end:&lineEnd contentsEnd:&contentEnd forRange:NSMakeRange([lineIndices.lastObject unsignedIntValue], 0)];\n    if (contentEnd < lineEnd)\n    {\n        [lineIndices addObject:@(index)];\n    }\n    \n    CGFloat oldThickness = self.ruleThickness;\n    CGFloat newThickness = self.requiredThickness;\n    if (fabs(oldThickness - newThickness) > 1)\n    {\n        /*// Not a good idea to resize the view during calculations (which can happen during\n        // display). Do a delayed perform (using NSInvocation since arg is a float).\n        \n        dispatch_async(dispatch_get_main_queue(), ^{*/\n            \n            self.ruleThickness=newThickness;\n        /*});*/\n    }\n}\n\n- (NSUInteger)lineNumberForCharacterIndex:(NSUInteger)index inText:(NSString *)text\n{\n    NSMutableArray * tLineIndices = [self lineIndices];\n    \n    // Binary search\n    NSUInteger left = 0;\n    NSUInteger right =  tLineIndices.count;\n    \n    while ((right - left) > 1)\n    {\n        NSUInteger mid = (right + left) / 2;\n        NSUInteger lineStart = [tLineIndices[mid] unsignedIntValue];\n        \n        if (index < lineStart)\n        {\n            right = mid;\n        }\n        else if (index > lineStart)\n        {\n            left = mid;\n        }\n        else\n        {\n            return mid;\n        }\n    }\n    \n    return left;\n}\n\n- (NSDictionary *)textAttributes\n{\n    NSFont * tFont=self.font;\n    \n    NSFont * tAdjustedFont=nil;\n    \n    if (_fontSizeDelta<0)\n    {\n        tAdjustedFont=[[NSFontManager sharedFontManager] convertFont:tFont toSize:tFont.pointSize + _fontSizeDelta];\n    }\n    \n    if (tAdjustedFont==nil)\n        tAdjustedFont=tFont;\n    \n    static NSParagraphStyle * sLeftAlignedStyle=nil;\n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        NSMutableParagraphStyle *mutableStyle=[[NSParagraphStyle defaultParagraphStyle] mutableCopy];\n        mutableStyle.alignment=NSTextAlignmentLeft;\n        \n        sLeftAlignedStyle = [mutableStyle copy];\n    });\n    \n    return @{\n             NSFontAttributeName:tAdjustedFont,\n             NSForegroundColorAttributeName:self.textColor,\n             NSWritingDirectionAttributeName:@[@(NSWritingDirectionLeftToRight)],\n             NSParagraphStyleAttributeName:sLeftAlignedStyle\n             };\n}\n\n- (NSDictionary *)markerTextAttributes\n{\n    return @{\n             NSFontAttributeName:self.font,\n             NSForegroundColorAttributeName:self.alternateTextColor\n             };\n}\n\n- (CGFloat)requiredThickness\n{\n    NSUInteger lineCount = [self lineIndices].count;\n    NSUInteger digits = (NSUInteger)log10(lineCount) + 1;\n    \n    if (digits<4)\n        digits=4;\n    \n    NSMutableString * sampleString = [NSMutableString string];\n    for (NSUInteger i = 0; i < digits; i++)\n    {\n        // Use \"8\" since it is one of the fatter numbers. Anything but \"1\"\n        // will probably be ok here. I could be pedantic and actually find the fattest\n        // number for the current font but nah.\n        [sampleString appendString:@\"8\"];\n    }\n    \n    NSDictionary * tAttributes=@{NSFontAttributeName:self.font};\n    \n    NSSize stringSize = [sampleString sizeWithAttributes:tAttributes];\n    \n    // Round up the value. There is a bug on 10.4 where the display gets all wonky when scrolling if you don't\n    // return an integral value here.\n    return ceilf(MAX(DEFAULT_THICKNESS, stringSize.width + RULER_MARGIN * 2));\n}\n\n#pragma mark - Drawing\n\n- (void)viewWillDraw\n{\n    [super viewWillDraw];\n    \n    if (lineIndices == nil)\n        [self calculateLines];\n}\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n\t[super drawRect:dirtyRect];\n}\n\n- (void)drawSeparatorInRect:(NSRect)inRect\n{\n}\n\n- (void)drawHashMarksAndLabelsInRect:(NSRect)aRect\n{\n    NSRect bounds = [self bounds];\n    \n    if (self.backgroundColor != nil)\n    {\n        [self.backgroundColor set];\n        NSRectFill(aRect);\n    }\n    \n    NSTextView * tTextView =(NSTextView *) self.clientView;\n    \n    if ([tTextView isKindOfClass:[NSTextView class]]==NO)\n        return;\n    \n    NSRect                    markerRect;\n    NSString                *labelText;\n    NSUInteger                line;\n    CGFloat                    ypos;\n    NSDictionary           *currentTextAttributes;\n    \n    NSLayoutManager *layoutManager = tTextView.layoutManager;\n    NSTextContainer *container = tTextView.textContainer;\n    NSString * text = tTextView.string;\n    NSRange nullRange = NSMakeRange(NSNotFound, 0);\n    \n    CGFloat yinset = 6;//[tTextView textContainerInset].height;\n    NSRect visibleRect = [self scrollView].contentView.bounds;\n    \n    NSDictionary * textAttributes = [self textAttributes];\n    \n    NSMutableArray * lines = [self lineIndices];\n    \n    // Find the characters that are currently visible\n    NSRange glyphRange = [layoutManager glyphRangeForBoundingRect:visibleRect inTextContainer:container];\n    NSRange range = [layoutManager characterRangeForGlyphRange:glyphRange actualGlyphRange:NULL];\n    \n    // Fudge the range a tad in case there is an extra new line at end.\n    // It doesn't show up in the glyphs so would not be accounted for.\n    range.length++;\n    \n    NSUInteger count = lines.count;\n    NSUInteger index = 0;\n    \n    for (line = [self lineNumberForCharacterIndex:range.location inText:text]; line < count; line++)\n    {\n        index = [lines[line] unsignedIntValue];\n        \n        if (NSLocationInRange(index, range))\n        {\n            NSUInteger rectCount;\n            \n            NSRectArray rects = [layoutManager rectArrayForCharacterRange:NSMakeRange(index, 0)\n                                             withinSelectedCharacterRange:nullRange\n                                                          inTextContainer:container\n                                                                rectCount:&rectCount];\n            \n            if (rectCount > 0)\n            {\n                // Note that the ruler view is only as tall as the visible\n                // portion. Need to compensate for the clipview's coordinates.\n                ypos = yinset + NSMinY(rects[0]) - NSMinY(visibleRect);\n                \n                NoodleLineNumberMarker * tMarker = _linesToMarkers[@(line)];\n                \n                if (tMarker != nil)\n                {\n                    NSImage * markerImage = tMarker.image;\n                    NSSize markerSize = markerImage.size;\n                    markerRect = NSMakeRect(0.0, 0.0, markerSize.width, markerSize.height);\n                    \n                    // Marker is flush right and centered vertically within the line.\n                    markerRect.origin.x = NSWidth(bounds) - markerSize.width - 1.0;\n                    markerRect.origin.y = ypos + NSHeight(rects[0]) / 2.0 - tMarker.imageOrigin.y;\n                    \n                    [markerImage drawInRect:markerRect fromRect:NSMakeRect(0, 0, markerSize.width, markerSize.height) operation:NSCompositingOperationSourceOver fraction:1.0];\n                }\n                \n                // Line numbers are internally stored starting at 0\n                labelText = [NSString stringWithFormat:@\"%lu\", line + 1];\n                \n                NSSize stringSize = [labelText sizeWithAttributes:textAttributes];\n                \n                if (tMarker == nil)\n                {\n                    currentTextAttributes = textAttributes;\n                }\n                else\n                {\n                    currentTextAttributes = [self markerTextAttributes];\n                }\n                \n                // Draw string flush right, centered vertically within the line\n                [labelText drawInRect:NSMakeRect(NSWidth(bounds) - stringSize.width - RULER_MARGIN,ypos + (NSHeight(rects[0]) - stringSize.height) / 2.0,NSWidth(bounds) - RULER_MARGIN * 2.0, NSHeight(rects[0]))\n                       withAttributes:currentTextAttributes];\n            }\n        }\n        \n        if (index > NSMaxRange(range))\n            break;\n    }\n}\n\n#pragma mark - Markers\n\n- (void)setMarkers:(NSArray *)inMarkers\n{\n    [_linesToMarkers removeAllObjects];\n    \n    [super setMarkers:nil];\n    \n    for(NSRulerMarker * tMarker in inMarkers)\n        [self addMarker:tMarker];\n}\n\n- (void)addMarker:(NSRulerMarker *)inMarker\n{\n    if ([inMarker isKindOfClass:[NoodleLineNumberMarker class]]==YES)\n    {\n        _linesToMarkers[@([(NoodleLineNumberMarker *)inMarker lineNumber] - 1)]=inMarker;\n    }\n    else\n    {\n        [super addMarker:inMarker];\n    }\n}\n\n- (void)removeMarker:(NSRulerMarker *)aMarker\n{\n    if ([aMarker isKindOfClass:[NoodleLineNumberMarker class]])\n    {\n        [_linesToMarkers removeObjectForKey:@([(NoodleLineNumberMarker *)aMarker lineNumber] - 1)];\n    }\n    else\n    {\n        [super removeMarker:aMarker];\n    }\n}\n\n#pragma mark - NSCoding\n\n#define NOODLE_FONT_CODING_KEY                @\"font\"\n#define NOODLE_TEXT_COLOR_CODING_KEY        @\"textColor\"\n#define NOODLE_ALT_TEXT_COLOR_CODING_KEY    @\"alternateTextColor\"\n#define NOODLE_BACKGROUND_COLOR_CODING_KEY    @\"backgroundColor\"\n\n- (id)initWithCoder:(NSCoder *)decoder\n{\n    if ((self = [super initWithCoder:decoder]) != nil)\n    {\n        if ([decoder allowsKeyedCoding])\n        {\n            self.font = [decoder decodeObjectForKey:NOODLE_FONT_CODING_KEY];\n            self.textColor = [decoder decodeObjectForKey:NOODLE_TEXT_COLOR_CODING_KEY];\n            self.alternateTextColor = [decoder decodeObjectForKey:NOODLE_ALT_TEXT_COLOR_CODING_KEY];\n            _backgroundColor = [decoder decodeObjectForKey:NOODLE_BACKGROUND_COLOR_CODING_KEY];\n        }\n        else\n        {\n            self.font = [decoder decodeObject];\n            self.textColor = [decoder decodeObject];\n            self.alternateTextColor = [decoder decodeObject];\n            _backgroundColor = [decoder decodeObject];\n        }\n        \n        _linesToMarkers = [NSMutableDictionary dictionary];\n    }\n    return self;\n}\n\n- (void)encodeWithCoder:(NSCoder *)encoder\n{\n    [super encodeWithCoder:encoder];\n    \n    if ([encoder allowsKeyedCoding])\n    {\n        [encoder encodeObject:self.font forKey:NOODLE_FONT_CODING_KEY];\n        [encoder encodeObject:self.textColor forKey:NOODLE_TEXT_COLOR_CODING_KEY];\n        [encoder encodeObject:self.alternateTextColor forKey:NOODLE_ALT_TEXT_COLOR_CODING_KEY];\n        [encoder encodeObject:self.backgroundColor forKey:NOODLE_BACKGROUND_COLOR_CODING_KEY];\n    }\n    else\n    {\n        [encoder encodeObject:self.font];\n        [encoder encodeObject:self.textColor];\n        [encoder encodeObject:self.alternateTextColor];\n        [encoder encodeObject:self.backgroundColor];\n    }\n}\n\n#pragma mark - Notifications\n\n- (void)clientTextStorageDidProcessEditing:(NSNotification *)notification\n{\n    // Invalidate the line indices. They will be recalculated and recached on demand.\n    [self invalidateLineIndices];\n    \n    [self setNeedsDisplay:YES];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/Read Me.rtf",
    "content": "{\\rtf1\\ansi\\ansicpg1252\\cocoartf949\\cocoasubrtf350\n{\\fonttbl\\f0\\fswiss\\fcharset0 Helvetica;\\f1\\fnil\\fcharset0 Monaco;}\n{\\colortbl;\\red255\\green255\\blue255;}\n{\\*\\listtable{\\list\\listtemplateid1\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid1}\n{\\list\\listtemplateid2\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid2}\n{\\list\\listtemplateid3\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid3}\n{\\list\\listtemplateid4\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid4}\n{\\list\\listtemplateid5\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid5}\n{\\list\\listtemplateid6\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid6}\n{\\list\\listtemplateid7\\listhybrid{\\listlevel\\levelnfc23\\levelnfcn23\\leveljc2\\leveljcn2\\levelfollow0\\levelstartat1\\levelspace360\\levelindent0{\\*\\levelmarker \\{disc\\}}{\\leveltext\\leveltemplateid0\\'02\\'05.;}{\\levelnumbers\\'01;}}{\\listname ;}\\listid7}}\n{\\*\\listoverridetable{\\listoverride\\listid1\\listoverridecount0\\ls1}{\\listoverride\\listid2\\listoverridecount0\\ls2}{\\listoverride\\listid3\\listoverridecount0\\ls3}{\\listoverride\\listid4\\listoverridecount0\\ls4}{\\listoverride\\listid5\\listoverridecount0\\ls5}{\\listoverride\\listid6\\listoverridecount0\\ls6}{\\listoverride\\listid7\\listoverridecount0\\ls7}}\n\\vieww16040\\viewh15820\\viewkind0\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\qc\\pardirnatural\n\n\\f0\\b\\fs24 \\cf0 Line View Test\n\\b0 \\\nversion 0.4.1\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\nThis is a sample project and test harness for NoodleLineNumberView.\\\n\\\nNoodleLineNumberView is an NSRulerView subclass that will show line numbers when the document view of the scrollview is an NSTextView. It numbers logical lines, not visual ones. NoodleLineNumberMarker works in tandem with NoodleLineNumberView to display markers at specific lines.\\\n\\\nA discussion of this project can be found at: {\\field{\\*\\fldinst{HYPERLINK \"http://www.noodlesoft.com/blog/2008/10/05/displaying-line-numbers-with-nstextview/\"}}{\\fldrslt http://www.noodlesoft.com/blog/2008/10/05/displaying-line-numbers-with-nstextview/}}\\\n\\\nNotes:\\\n\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls1\\ilvl0\\cf0 {\\listtext\t\\'95\t}The view will expand it's width to accommodate the widths of the labels as needed.\\\n{\\listtext\t\\'95\t}The included subclass (MarkerLineNumberView) shows how to deal with markers. It also shows how to use an NSCustomImageRep to do the drawing. This allows you to reset the size of the image and have the drawing adjust as needed (this happens if the line number view changes width because the line numbers gained  or lost a digit). If you decide to implement most of this stuff in an external class (not a subclass), you can set the line number view to post frame changed notifications and listen for them.\\\n{\\listtext\t\\'95\t}Note that markers are tied to numerical lines, not semantic ones. So, if you have a marker at line 50 and insert a new line at line 49, the marker will not shift to line 51 to point at the same line of text but will stay at line 50 pointing at whatever text is there now. Contrast with XCode where the markers move with insertions and deletions of lines (at least as best as it can). This is logic that you'll have to supply yourself.\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\nTo integrate NoodleLineNumberView, just create one and set it as the vertical ruler of the scrollview. Depending on the order of operations, you may need to set the client view of the NoodleLineNumberView to the NSTextView manually.\\\n\\\nThis project actually uses a subclass of NoodleLineNumberView called MarkerLineNumberView. This class shows how one can integrate adding markers. Just click in the line number view to toggle a marker. It's more of an example than a reusable class since your markers may look different and you may have a different UI for adding them. Nonetheless, it shows the basics of how to do it.\\\n\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\n\\b \\cf0 Possible Performance Improvements\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\n\\b0 \\cf0 \\\nFor performance, NoodleLineView keeps an array of the character indices for the start of each line. This gets recalculated whenever the text changes but at least it's cached for redisplays (such as scrolling around). It also only redraw the labels for the lines that are showing.\\\n\\\nIt seems peppy enough for me, testing on a Powerbook 12\" (G4) on Leopard. If you feel the need to optimize it further (I advise you Shark it first instead of making assumptions, though), here are some areas that could be improved:\\\n\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls2\\ilvl0\\cf0 {\\listtext\t\\'95\t}Right now, the character indices are recalculated every time the text changes. I only listen for a \n\\f1 NSTextDidChangeNotification\n\\f0  which is pretty coarse as there's no notion of what changed. You need to hook in deeper to get finer grained details of what characters were affected and see if the line indices need to be recalculated at all (check for whether a line ending was added or removed) or what particular lines should be recalculated (if a line was changed, only recalculate the lines after it).\\\n{\\listtext\t\\'95\t}The layout coordinates of each line can also be cached. If you tie into NSLayoutManager's delegate methods, you can find out when the layout has been invalidated. This would be helpful for cases where the view is scrolled or otherwise redisplayed without having the layout changed. Invalidations would happen in cases like when the view is resized in which case, you recalculate and recache. I have my doubts about whether this will save much but Shark it and find out.\\\n{\\listtext\t\\'95\t}It is a tad pokey on Tiger. It seems like NSString's drawing methods are much improved in Leopard. On Tiger, you can experiment with using the field editor or a cell to draw the labels.\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\nThe first two were not done because I wanted this subclass to be self-contained and not interfere with any delegates that may already be in place.\\\n\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\n\\b \\cf0 Contact\n\\b0 \\\n\\\nJust go {\\field{\\*\\fldinst{HYPERLINK \"http://www.noodlesoft.com/about.php\"}}{\\fldrslt www.noodlesoft.com}} and shoot me an email. Or visit the blog article linked above and leave a comment. Bugs, suggestions and other feedback appreciated.\\\n\\\n\\\n\n\\b License\n\\b0 \\\n\\\nI am releasing this under the MIT license.\\\n\\\n____________________________________\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\n\\f1 \\cf0 Copyright (c) 2008 Noodlesoft, LLC. All Rights Reserved.\\\n\\\nPermission is hereby granted, free of charge, to any person\\\nobtaining a copy of this software and associated documentation\\\nfiles (the \"Software\"), to deal in the Software without\\\nrestriction, including without limitation the rights to use,\\\ncopy, modify, merge, publish, distribute, sublicense, and/or sell\\\ncopies of the Software, and to permit persons to whom the\\\nSoftware is furnished to do so, subject to the following\\\nconditions:\\\n\\\nThe above copyright notice and this permission notice shall be\\\nincluded in all copies or substantial portions of the Software.\\\n\\\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\\\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\\\nOF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\\\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\\\nHOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\\\nWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\\\nFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\\\nOTHER DEALINGS IN THE SOFTWARE.\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls3\\ilvl0\n\\f0\\b \\cf0 \\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\nChangelog\n\\b0 \\\n\\\n0.4.1:\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls4\\ilvl0\\cf0 {\\listtext\t\\'95\t}Fixed display glitch when scrolling after the line number view resizes when linked against/running on 10.4. Apparently, NSRulerView's \n\\f1 setRuleThickness:\n\\f0  does not like non-integral values.\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\n0.4:\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls5\\ilvl0\\cf0 {\\listtext\t\\'95\t}Changed default font to use label font. Not sure if semantically, that's what XCode uses but it matches for the time being.\\\n{\\listtext\t\\'95\t}Fixed display bugs introduced in 0.3 when line number view resizes itself.\\\n{\\listtext\t\\'95\t}Added methods for setting various colors. The alternate text color is the color used by the line number label when a marker is drawn under it.\\\n{\\listtext\t\\'95\t}Miscellaneous tweaks.\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\n0.3:\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls6\\ilvl0\\cf0 {\\listtext\t\\'95\t}Now listens for NSTextStorage's NSTextStorageDidProcessEditingNotification instead of NSTextDidChangeNotification. The former includes programmatic changes to the text.\\\n{\\listtext\t\\'95\t}Was not taking text storage's inset into account when lining up labels. OSAScriptView, for one, had a non-zero inset. Should be fixed now.\\\n{\\listtext\t\\'95\t}Calculates lines lazily allowing multiple programmatic text changes to be batched up.\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\n0.2:\\\n\\pard\\tx220\\tx720\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\li720\\fi-720\\ql\\qnatural\\pardirnatural\n\\ls7\\ilvl0\\cf0 {\\listtext\t\\'95\t}Initial public release\\\n\\pard\\tx560\\tx1120\\tx1680\\tx2240\\tx2800\\tx3360\\tx3920\\tx4480\\tx5040\\tx5600\\tx6160\\tx6720\\ql\\qnatural\\pardirnatural\n\\cf0 \\\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Extemal/Line View Test/main.m",
    "content": "//\n//  main.m\n//  Line View Test\n//\n//  Created by Paul Kim on 10/5/08.\n//  Copyright Noodlesoft, LLC 2008. All rights reserved.\n//\n\n#import <Cocoa/Cocoa.h>\n\nint main(int argc, char *argv[])\n{\n    return NSApplicationMain(argc,  (const char **) argv);\n}\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/ENDPOINTSECURITY_2.html",
    "content": "<html>\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"./known_termination_reasons.css\">\n</head>\n\n<body>\n<b>Summary</b>\n<p>An ENDPOINTSECURITY termination reason with code 2 indicates that an Endpoint Security client took too long to respond to an event.</p>\n\n<b>Discussion</b>\n<p>An Endpoint Security client can be killed if it fails to respond to an authorization event before the deadline defined in the message for that event.</p>\n    \n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_BAD_ACCESS_SIGBUS.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_BAD_ACCESS (SIGBUS) type indicates a process uses memory in an unexpected way.</p>\n\n<b>Discussion</b>\n<p>The exception can happen when the process tries to access unmapped memory (KERN_INVALID_ADDRESS), misaligned memory (EXC_ARM_DA_ALIGN) or unavailable memory (KERN_MEMORY_ERROR). This can also happen when the process tries to write on read-only or protected memory (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigbus\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_BAD_ACCESS_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_BAD_ACCESS (SIGSEGV) type indicates a process uses memory in an unexpected way.</p>\n\n<b>Discussion</b>\n<p>The exception can happen when the process tries to access unmapped memory (KERN_INVALID_ADDRESS), misaligned memory (EXC_ARM_DA_ALIGN) or unavailable memory (KERN_MEMORY_ERROR). This can also happen when the process tries to write on read-only or protected memory (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigsegv\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_BAD_INSTRUCTION_SIGILL.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_BAD_INSTRUCTION (SIGILL) type indicates the process executed an illegal instruction (usually inserted by the compiler).</p>\n\n<b>Discussion</b>\n<p>The execution of this illegal instruction usually means that one of the compiler’s safety checks failed (e.g. when your code unwraps a nil optional in Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_BREAKPOINT_SIGTRAP.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_BREAKPOINT (SIGTRAP) type indicates the process executed an illegal instruction (usually inserted by the compiler).</p>\n\n<b>Discussion</b>\n<p>The execution of this illegal instruction usually means that one of the compiler’s safety checks failed (e.g. when your code unwraps a nil optional in Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_CRASH_Code Signature Invalid.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_CRASH (Code Signature Invalid) type indicates the operating system terminated the process because of problems related to code signing.</p>\n\n<b>Discussion</b>\n<p>The crash could have occurred because the application is using invalid entitlements or the code signing identity is incompatible with the running environment.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_CRASH_SIGABRT.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_CRASH (SIGABRT) type indicates the process terminated because it received the SIGABRT signal.</p>\n\n<b>Discussion</b>\n<p>Typically, this signal is sent because a function in the process called <code>abort()</code>, such as when an app encounters an uncaught Objective-C or C++ exception.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigabrt\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_CRASH_SIGKILL.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_CRASH (SIGKILL) type indicates the operating system terminated the process.</p>\n\n<b>Discussion</b>\n<p>The crash report contains a Termination Reason field with a code that explains the reason for the crash.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigkill\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_CRASH_SIGQUIT.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_CRASH (SIGQUIT) type indicates the process terminated at the request of another process with privileges to manage its lifetime.</p>\n\n<b>Discussion</b>\n<p>This does not mean that the process crashed, but it likely misbehaved in a detectable manner.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigquit\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_CRASH_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_CRASH (SIGSEGV) type indicates a process uses memory in an unexpected way.</p>\n\n<b>Discussion</b>\n<p>The exception can happen when the process tries to access unmapped memory, misaligned memory or unavailable memory. This can also happen when the process tries to write on read-only or protected memory.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/EXC_GUARD.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Summary</b>\n<p>The EXC_GUARD type indicates the process violated a system-enforced rule while using a guarded resource.</p>\n\n<b>Discussion</b>\n<p>Typically, this exception is raised when a process tries to use normal file descriptor APIs on guarded file descriptors.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/exc_guard\" target=\"_blank\">Open on Apple's Developer Site</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/unknown_exception_type.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>No Quick Help</center></p>\n<br/>\n<center><a class=\"search_button\" href=\"https://developer.apple.com/documentation/xcode/understanding-the-exception-types-in-a-crash-report\" target=\"_blank\">Search Documentation</a></center>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/en.lproj/unknown_termination_reason.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>No Quick Help</center></p>\n<br/>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/ENDPOINTSECURITY_2.html",
    "content": "<html>\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"./known_termination_reasons.css\">\n</head>\n    \n<body>\n<b>Resumen</b>\n<p>Un motivo de terminación ENDPOINTSECURITY con el código 2 indica que un cliente de Endpoint Security tardó demasiado en responder a un evento.</p>\n\n<b>Discusi&oacute;n</b>\n<p>Un cliente de Endpoint Security puede terminarse si no responde a un evento de autorización antes de la fecha límite definida en el mensaje para ese evento.</p>\n    \n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_BAD_ACCESS_SIGBUS.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>El tipo EXC_BAD_ACCESS (SIGBUS) indica que un proceso utiliza la memoria de forma inesperada.</p>\n\n<b>Discusi&oacute;n</b>\n<p>La excepción puede ocurrir cuando el proceso intenta acceder a memoria no asignada (KERN_INVALID_ADDRESS), memoria desalineada (EXC_ARM_DA_ALIGN) o memoria no disponible (KERN_MEMORY_ERROR). Esto también puede ocurrir cuando el proceso intenta escribir en una memoria protegida o de solo lectura (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigbus\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_BAD_ACCESS_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>El tipo EXC_BAD_ACCESS (SIGSEGV) indica que un proceso utiliza la memoria de forma inesperada.</p>\n\n<b>Discusi&oacute;n</b>\n<p>La excepción puede ocurrir cuando el proceso intenta acceder a memoria no asignada (KERN_INVALID_ADDRESS), memoria desalineada (EXC_ARM_DA_ALIGN) o memoria no disponible (KERN_MEMORY_ERROR). Esto también puede ocurrir cuando el proceso intenta escribir en una memoria protegida o de solo lectura (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigsegv\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_BAD_INSTRUCTION_SIGILL.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>The EXC_BAD_INSTRUCTION (SIGILL) type indicates the process executed an illegal instruction (usually inserted by the compiler).</p>\n\n<b>Discusi&oacute;n</b>\n<p>La ejecución de esta instrucción ilegal generalmente significa que una de las comprobaciones de seguridad del compilador falló (por ejemplo, cuando su código desenvuelve un nil opcional en Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_BREAKPOINT_SIGTRAP.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>El tipo EXC_BREAKPOINT (SIGTRAP) indica que el proceso ejecutó una instrucción ilegal (generalmente insertada por el compilador).</p>\n\n<b>Discusi&oacute;n</b>\n<p>La ejecución de esta instrucción ilegal generalmente significa que una de las comprobaciones de seguridad del compilador falló (por ejemplo, cuando su código desenvuelve un nil opcional en Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_CRASH_Code Signature Invalid.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>EXC_CRASH (Code Signature Invalid) indica que el sistema operativo terminó el proceso debido a problemas relacionados con la firma del código.</p>\n\n<b>Discusi&oacute;n</b>\n<p>El bloqueo podría haber ocurrido porque la aplicación utiliza derechos no válidos o la identidad de firma de código es incompatible con el entorno en ejecución.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_CRASH_SIGABRT.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>EXC_CRASH (SIGABRT) indica que el proceso terminó porque recibió la señal SIGABRT.</p>\n\n<b>Discusi&oacute;n</b>\n<p>Por lo general, esta señal se envía debido a una función en el proceso llamada <code>abort()</code>, como cuando una aplicación encuentra una excepción de Objective-C o C ++ no detectada.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigabrt\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_CRASH_SIGKILL.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>EXC_CRASH (SIGKILL) indica que el sistema operativo terminó el proceso.</p>\n\n<b>Discusi&oacute;n</b>\n<p>El informe contiene un campo Termination Reason con un código que explica la razón de la falla.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigkill\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_CRASH_SIGQUIT.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>EXC_CRASH (SIGQUIT) indicates the process terminated at the request of another process with privileges to manage its lifetime.</p>\n\n<b>Discusi&oacute;n</b>\n<p>Esto no significa que el proceso haya fallado, pero probablemente se haya comportado mal de una manera detectable.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigquit\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_CRASH_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>El tipo EXC_CRASH (SIGSEGV) indica que un proceso utiliza la memoria de forma inesperada.</p>\n\n<b>Discusi&oacute;n</b>\n<p>La excepción puede ocurrir cuando el proceso intenta acceder a memoria no asignada, memoria desalineada o memoria no disponible. Esto también puede ocurrir cuando el proceso intenta escribir en una memoria protegida o de solo lectura.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/EXC_GUARD.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Resumen</b>\n<p>El tipo EXC_GUARD indica que el proceso violó una regla impuesta por el sistema mientras usaba un recurso protegido.</p>\n\n<b>Discusi&oacute;n</b>\n<p>Normalmente, esta excepción se genera cuando un proceso intenta utilizar las API de descriptores de archivos normales en descriptores de archivos protegidos.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/exc_guard\" target=\"_blank\">Abrir en el sitio Developer de Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/unknown_exception_type.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>Ayuda rápida no disponible</center></p>\n<br/>\n<center><a class=\"search_button\" href=\"https://developer.apple.com/documentation/xcode/understanding-the-exception-types-in-a-crash-report\" target=\"_blank\">Buscar documentación</a></center>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/es.lproj/unknown_termination_reason.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>Ayuda rápida no disponible</center></p>\n<br/>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/ENDPOINTSECURITY_2.html",
    "content": "<html>\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"./known_termination_reasons.css\">\n</head>\n\n<body>\n<b>Résumé</b>\n<p>Une raison de terminaison ENDPOINTSECURITY avec un code 2 indique qu'un client Endpoint Security a mis trop de temps à répondre à un événement.</p>\n\n<b>Discussion</b>\n<p>Un client Endpoint Security peut être tué s'il échoue à répondre à un événement d'autorisation avant l'échéance définie dans le message pour cet événement.</p>\n\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_BAD_ACCESS_SIGBUS.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_BAD_ACCESS (SIGBUS) indique que le processus a utilisé la mémoire d'une façon inattendue.</p>\n\n<b>Discussion</b>\n<p>Cette exception peut survenir lorsque le processus essaye d'accèder à de la mémoire non mappée (KERN_INVALID_ADDRESS), de la mémoire non alignée (EXC_ARM_DA_ALIGN) ou de la mémoire non disponible (KERN_MEMORY_ERROR). Cela peut aussi survenir lorsque le processus tente d'écrire sur de la mémoire protégée ou en lecture seule (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigbus\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_BAD_ACCESS_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_BAD_ACCESS (SIGSEGV) indique que le processus a utilisé la mémoire d'une façon inattendue.</p>\n\n<b>Discussion</b>\n<p>Cette exception peut survenir lorsque le processus essaye d'accèder à de la mémoire non mappée (KERN_INVALID_ADDRESS), de la mémoire non alignée (EXC_ARM_DA_ALIGN) ou de la mémoire non disponible (KERN_MEMORY_ERROR). Cela peut aussi survenir lorsque le processus tente d'écrire sur de la mémoire protégée ou en lecture seule  (KERN_PROTECTION_FAILURE).</p>\n\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigsegv\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_BAD_INSTRUCTION_SIGILL.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_BAD_INSTRUCTION (SIGILL) indique qu'une instruction illégale (probablement insérée par le compilateur) a interrompu l'opération.</p>\n\n<b>Discussion</b>\n<p>L'exécution d'une telle instruction indique généralement qu'une des procédures de vérifications insérées par le compilateur a détecté une erreur (e.g. quand votre code déballe un nil optionnel en Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_BREAKPOINT_SIGTRAP.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_BREAKPOINT (SIGTRAP) indice qu'une instruction illégale (probablement insérée par le compilateur) a interrompu le processus.</p>\n\n<b>Discussion</b>\n<p>L'exécution d'une telle instruction indique généralement qu'une des procédures de vérifications insérées par le compilateur a détecté une erreur (e.g. quand votre code déballe un nil optionnel en Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_CRASH_Code Signature Invalid.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_CRASH (Code Signature Invalid) indique que le système d'exploitation a interrompu le processus en raison de problèmes liés à la signature du code.</p>\n\n<b>Discussion</b>\n<p>Le crash peut être survenu parce que l'application utilise des droits invalides ou que l'identité de la signature du code est incompatible avec l'environnement d'exécution.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_CRASH_SIGABRT.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_CRASH (SIGABRT) indique que le processus s'est interrompu parce qu'il a reçu le signal SIGABRT.</p>\n\n<b>Discussion</b>\n<p>Typiquement, ce signal est envoyé parce qu'une fonction du processus a appelé <code>abort()</code>, comme lorsqu'une application est confrontée à une exception Objective-C ou C++ non interceptée.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigabrt\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_CRASH_SIGKILL.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_CRASH (SIGKILL) indique que le système d'exploitation a interrompu le processus.</p>\n\n<b>Discussion</b>\n<p>Le rapport de crash contient un champ \"Termination Reason\" (Raison de l'interruption) avec un code qui explique la raison du crash.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigkill\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_CRASH_SIGQUIT.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_CRASH (SIGQUIT) indique que le processus a été arrêté par un autre processus disposant de droits sur la durée de vie du processus.</p>\n\n<b>Discussion</b>\n<p>Cela ne signifie pas que le processus a planté mais plutôt qu'il a été repéré qu'il se comportait de manière incorrecte.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigquit\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_CRASH_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_CRASH (SIGSEGV) indique que le processus a utilisé la mémoire d'une façon inattendue.</p>\n\n<b>Discussion</b>\n<p>Cette exception peut survenir lorsque le processus essaye d'accèder à de la mémoire non mappée, de la mémoire non alignée ou de la mémoire non disponible. Cela peut aussi survenir lorsque le processus tente d'écrire sur de la mémoire protégée ou en lecture seule.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/EXC_GUARD.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>Résumé</b>\n<p>Le type d'exception EXC_GUARD indique que le processus a enfreint une règle imposée par le système lors de l’utilisation d’une ressource protégée.</p>\n\n<b>Discussion</b>\n<p>En général, cette exception est soulevée lorsqu’un processus tente d’utiliser les API classiques de descripteurs de fichiers sur des descripteurs protégés.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/exc_guard\" target=\"_blank\">Ouvrir sur le site Developer d'Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/unknown_exception_type.html",
    "content": "<html>\n    <head>\n        <meta charset=\"utf-8\"/>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>Aide rapide indisponible</center></p>\n<br/>\n<center><a class=\"search_button\" href=\"https://developer.apple.com/documentation/xcode/understanding-the-exception-types-in-a-crash-report\" target=\"_blank\">Rechercher dans la documentation</a></center>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/fr.lproj/unknown_termination_reason.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>Aide rapide indisponible</center></p>\n<br/>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/ENDPOINTSECURITY_2.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"./known_termination_reasons.css\">\n</head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>סיבת סיום שלסיבת סיום של ENDPOINTSECURITY עם קוד 2 מציינת שלקוח Endpoint Security לקח זמן רב מדי להגיב לאירוע.</p>\n\n<b>דיון</b>\n<p>לקוח Endpoint Security עלול להיסגר אם הוא לא מגיב לאירוע אישור לפני המועד האחרון שהוגדר בהודעה עבור אירוע זה.</p>\n    \n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_BAD_ACCESS_SIGBUS.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_BAD_ACCESS (SIGBUS) מציין שתהליך משתמש בזיכרון באופן בלתי צפוי.</p>\n\n<b>דיון</b>\n<p>החריג יכול להתרחש כאשר התהליך מנסה לגשת לזיכרון לא ממופה (KERN_INVALID_ADDRESS), לזיכרון לא מיושר (EXC_ARM_DA_ALIGN) או לזיכרון לא זמין (KERN_MEMORY_ERROR). זה יכול לקרות גם כאשר התהליך מנסה לכתוב על זיכרון לקריאה בלבד או מוגן (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigbus\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_BAD_ACCESS_SIGSEGV.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_BAD_ACCESS (SIGSEGV) מציין שתהליך משתמש בזיכרון בצורה בלתי צפויה.</p>\n\n<b>דיון</b>\n<p>החריג יכול להתרחש כאשר התהליך מנסה לגשת לזיכרון לא ממופה (KERN_INVALID_ADDRESS), לזיכרון לא מיושר (EXC_ARM_DA_ALIGN) או לזיכרון לא זמין (KERN_MEMORY_ERROR). זה יכול לקרות גם כאשר התהליך מנסה לכתוב על זיכרון לקריאה בלבד או מוגן (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigsegv\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_BAD_INSTRUCTION_SIGILL.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_BAD_INSTRUCTION (SIGILL) מציין שהתהליך ביצע הוראה לא חוקית (בדרך כלל מוכנסת על ידי המהדר).</p>\n\n<b>דיון</b>\n<p>ביצוע הוראה לא חוקית זו בדרך כלל פירושו שאחת מבדיקות הבטיחות של המהדר נכשלה (למשל, כאשר הקוד שלך פותח ערך nil אופציונלי ב-Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_BREAKPOINT_SIGTRAP.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_BREAKPOINT (SIGTRAP) מציין שהתהליך ביצע הוראה לא חוקית (שבדרך כלל הוכנסה על ידי המהדר).</p>\n\n<b>דיון</b>\n<p>ביצוע הוראה לא חוקית זו בדרך כלל פירושו שאחת מבדיקות הבטיחות של המהדר נכשלה (למשל, כאשר הקוד שלך פותח ערך nil אופציונלי ב-Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_CRASH_Code Signature Invalid.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_CRASH (Code Signature Invalid) מציין שמערכת ההפעלה סיימה את התהליך עקב בעיות הקשורות לחתימת קוד.</p>\n\n<b>דיון</b>\n<p>ייתכן שהקריסה התרחשה מכיוון שהיישום משתמש בהרשאות לא חוקיות או שזהות חתימת הקוד אינה תואמת לסביבת ההפעלה.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_CRASH_SIGABRT.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_CRASH (SIGABRT) מציין שהתהליך הסתיים משום שקיבל את אות SIGABRT.</p>\n\n<b>דיון</b>\n<p>בדרך כלל, אות זה נשלח עקב פונקציה בתהליך הנקראת <code>abort()</code>, כגון כאשר אפליקציה נתקלת בחריג שלא נתפס ב-Objective-C או C++.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigabrt\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_CRASH_SIGKILL.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_CRASH (SIGKILL) מציין שמערכת ההפעלה סיימה את התהליך.</p>\n\n<b>דיון</b>\n<p>דוח הקריסה מכיל שדה Termination Reason עם קוד המסביר את סיבת הקריסה.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigkill\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_CRASH_SIGQUIT.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_CRASH (SIGQUIT) מציין שהתהליך הסתיים לבקשת תהליך אחר בעל הרשאות לניהול חייו.</p>\n\n<b>דיון</b>\n<p>זה לא אומר שהתהליך קרס, אבל סביר להניח שהוא התנהג בצורה לא תקינה באופן שניתן לזיהוי.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigquit\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_CRASH_SIGSEGV.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_CRASH (SIGSEGV) מציין שתהליך משתמש בזיכרון בצורה בלתי צפויה.</p>\n\n<b>דיון</b>\n<p>החריג יכול להתרחש כאשר התהליך מנסה לגשת לזיכרון לא ממופה, זיכרון לא מיושר או זיכרון לא זמין. זה יכול לקרות גם כאשר התהליך מנסה לכתוב על זיכרון לקריאה בלבד או זיכרון מוגן.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/EXC_GUARD.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>תַקצִיר</b>\n<p>הסוג EXC_GUARD מציין שהתהליך הפר כלל שנאכף על ידי המערכת בעת שימוש במשאב מוגן.</p>\n\n<b>דיון</b>\n<p>בדרך כלל, חריג זה מופעל כאשר תהליך מנסה להשתמש בממשקי API רגילים של תיאורי קבצים על גבי תיאורי קבצים מוגנים.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/exc_guard\" target=\"_blank\">פתח באתר המפתחים של Apple</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/unknown_exception_type.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>אין עזרה מהירה</center></p>\n<br/>\n<center><a class=\"search_button\" href=\"https://developer.apple.com/documentation/xcode/understanding-the-exception-types-in-a-crash-report\" target=\"_blank\">Search Documentation</a></center>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/he.lproj/unknown_termination_reason.html",
    "content": "<html dir=\"rtl\" lang=\"he\">\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>אין עזרה מהירה</center></p>\n<br/>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/ENDPOINTSECURITY_2.html",
    "content": "<html>\n<head>\n<link rel=\"stylesheet\" type=\"text/css\" href=\"./known_termination_reasons.css\">\n</head>\n    \n<body>\n<b>要旨</b>\n<p>An ENDPOINTSECURITY termination reason with code 2 indicates that an Endpoint Security client took too long to respond to an event.</p>\n\n<b>討論</b>\n<p>An Endpoint Security client can be killed if it fails to respond to an authorization event before the deadline defined in the message for that event.</p>\n    \n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_BAD_ACCESS_SIGBUS.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>The EXC_BAD_ACCESS (SIGBUS) type indicates a process uses memory in an unexpected way.</p>\n\n<b>討論</b>\n<p>The exception can happen when the process tries to access unmapped memory (KERN_INVALID_ADDRESS), misaligned memory (EXC_ARM_DA_ALIGN) or unavailable memory (KERN_MEMORY_ERROR). This can also happen when the process tries to write on read-only or protected memory (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigbus\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_BAD_ACCESS_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>The EXC_BAD_ACCESS (SIGSEGV) type indicates a process uses memory in an unexpected way.</p>\n\n<b>討論</b>\n<p>The exception can happen when the process tries to access unmapped memory (KERN_INVALID_ADDRESS), misaligned memory (EXC_ARM_DA_ALIGN) or unavailable memory (KERN_MEMORY_ERROR). This can also happen when the process tries to write on read-only or protected memory (KERN_PROTECTION_FAILURE).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigsegv\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_BAD_INSTRUCTION_SIGILL.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>The EXC_BAD_INSTRUCTION (SIGILL) type indicates the process executed an illegal instruction (usually inserted by the compiler).</p>\n\n<b>討論</b>\n<p>The execution of this illegal instruction usually means that one of the compiler’s safety checks failed (e.g. when your code unwraps a nil optional in Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_BREAKPOINT_SIGTRAP.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>The EXC_BREAKPOINT (SIGTRAP) type indicates the process executed an illegal instruction (usually inserted by the compiler).</p>\n\n<b>討論</b>\n<p>The execution of this illegal instruction usually means that one of the compiler’s safety checks failed (e.g. when your code unwraps a nil optional in Swift).</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigtrap_sigill\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_CRASH_Code Signature Invalid.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>EXC_CRASH (Code Signature Invalid) indicates the operating system terminated the process because of problems related to code signing.</p>\n\n<b>討論</b>\n<p>The crash could have occurred because the application is using invalid entitlements or the code signing identity is incompatible with the running environment.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_CRASH_SIGABRT.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>EXC_CRASH (SIGABRT) indicates the process terminated because it received the SIGABRT signal.</p>\n\n<b>討論</b>\n<p>Typically, this signal is sent because a function in the process called <code>abort()</code>, such as when an app encounters an uncaught Objective-C or C++ exception.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigabrt\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_CRASH_SIGKILL.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>EXC_CRASH (SIGKILL) indicates the operating system terminated the process.</p>\n\n<b>討論</b>\n<p>The crash report contains a Termination Reason field with a code that explains the reason for the crash.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigkill\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_CRASH_SIGQUIT.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>EXC_CRASH (SIGQUIT) indicates the process terminated at the request of another process with privileges to manage its lifetime.</p>\n\n<b>討論</b>\n<p>This does not mean that the process crashed, but it likely misbehaved in a detectable manner.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/sigquit\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_CRASH_SIGSEGV.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>The EXC_CRASH (SIGSEGV) type indicates a process uses memory in an unexpected way.</p>\n\n<b>討論</b>\n<p>The exception can happen when the process tries to access unmapped memory, misaligned memory or unavailable memory. This can also happen when the process tries to write on read-only or protected memory.</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/understanding_the_exception_types_in_a_crash_report?language=objc#3582412\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/EXC_GUARD.html",
    "content": "<html>\n    <head>\n        <link rel=\"stylesheet\" type=\"text/css\" href=\"./known_exceptions.css\">\n    </head>\n    \n<body>\n<b>要旨</b>\n<p>EXC_GUARD タイプは、保護されたリソースを使用しているときにプロセスがシステムによって強制されたルールに違反したことを示します。</p>\n\n<b>討論</b>\n<p>通常、この例外は、プロセスが保護されたファイル記述子で通常のファイル記述子 API を使用しようとしたときに発生します。</p>\n\n<div class=\"external_link\">\n<a href=\"https://developer.apple.com/documentation/xcode/exc_guard\" target=\"_blank\">Appleの開発者サイトで開く</a>\n</div>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/unknown_exception_type.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>No Quick Help</center></p>\n<br/>\n<center><a class=\"search_button\" href=\"https://developer.apple.com/documentation/xcode/understanding-the-exception-types-in-a-crash-report\" target=\"_blank\">ドキュメントを検索する</a></center>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/ja.lproj/unknown_termination_reason.html",
    "content": "<html>\n    <head>\n        <style>\n    \n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:16;\n        color: #666666;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #666666;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: none;\n        }\n        \n        a:active {\n            text-decoration: none;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #ddd;\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: none;\n            }\n            \n            a:active {\n                text-decoration: none;\n            }\n        }\n        \n        .search_button {\n            \n            background: transparent;\n            border: 1px solid;\n            border-color:#cccccc;\n            border-radius: 5px;\n            \n            padding: 4px 8px;\n            \n            text-align: center;\n            text-decoration: none;\n            \n            font-family: -apple-system, Helvetica;\n            font-size:11;\n        }\n        \n        </style>\n    </head>\n    \n<body>\n<p><center>No Quick Help</center></p>\n<br/>\n<br/>\n</body>\n</html>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/known_exceptions.css",
    "content": "\n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:11;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #0055FF;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: underline;\n        }\n        \n        a:active {\n            text-decoration: underline;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #3f87d6\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: underline;\n            }\n            \n            a:active {\n                text-decoration: underline;\n            }\n        }\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Help/known_termination_reasons.css",
    "content": "\n    body {\n        margin-left: 16px;\n        margin-right: 16px;\n        margin-top: 12px;\n        margin-bottom: 10px;\n        \n        font-family: -apple-system, Helvetica;\n        font-size:11;\n        \n    }\n        \n        a:link {\n            text-decoration: none;\n            color: #0055FF;\n        }\n        \n        a:visited {\n            text-decoration: none;\n        }\n        \n        a:hover {\n            text-decoration: underline;\n        }\n        \n        a:active {\n            text-decoration: underline;\n        }\n        \n        div.external_link {\n            text-align: right;\n        }\n        \n        @media (prefers-color-scheme: dark) {\n            body\n            {\n                margin-left: 16px;\n                margin-right: 16px;\n                margin-top: 12px;\n                margin-bottom: 10px;\n                \n                font-family: -apple-system, Helvetica;\n                font-size:11;\n                \n                color: #ddd;\n                background: #262626;\n            }\n            \n            a:link {\n                text-decoration: none;\n                color: #3f87d6\n            }\n            \n            a:visited {\n                text-decoration: none;\n            }\n            \n            a:hover {\n                text-decoration: underline;\n            }\n            \n            a:active {\n                text-decoration: underline;\n            }\n        }\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/AppIcon.appiconset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"size\" : \"16x16\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_16.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"16x16\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_32-1.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"32x32\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_32.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"32x32\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_64.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"128x128\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_128.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"128x128\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_256-1.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"256x256\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_256.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"256x256\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_512-1.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"size\" : \"512x512\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_512.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"size\" : \"512x512\",\n      \"idiom\" : \"mac\",\n      \"filename\" : \"applicationIcon_1024.png\",\n      \"scale\" : \"2x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/Contents.json",
    "content": "{\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/FontPanelButton.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"FontPanelButton.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"FontPanelButton@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/TextMode.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"TextMode.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"TextMode@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/binaryImage_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"binary.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"binary@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/bottom_disclose_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"bottom_disclose_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"bottom_disclose@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/bottom_hide_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"bottom_hide_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"bottom_hide@2x copy.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/bytesOffset_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"bytesOffset.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"bytesOffset@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-appkit.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-appkit.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-appkit@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-audiospeech.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-audiospeech.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-audiospeech@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-database.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-database.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-database@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-foundation.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-foundation.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-foundation@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-framework.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-framework.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-framework@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-generic.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-generic.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-generic@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-graphics.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-graphics.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-graphics@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-languages.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-languages.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-languages@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-network.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-network.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-network@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-security.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-security.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-security@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-system.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-system.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-system@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-usercode.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-usercode.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-usercode@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/call-webinternet.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-webinternet.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"call-webinternet@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/crashedThread_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"crashedThread_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"crashedThread_Template@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/crashreporter.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"crashreporter.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"crashreporter@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/filter_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"filter.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"filter@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/left_switch_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"left_switch.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"left_switch@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuBacktraces.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuBacktraces.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuBacktraces@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuBinaryImage.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuBinaryImage.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuBinaryImage@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuDiagnostic.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuDiagnostic.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuDiagnostic@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuException.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuException.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuException@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuHeader.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuHeader.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuHeader@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuThread.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuThread.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuThread@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuThreadCrashed.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuThreadCrashed.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuThreadCrashed@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/menuThreadState.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuThreadState.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"menuThreadState@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/middle_switch_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"middle_switch.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"middle_switch@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/presentation_structured_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"presentation_structured.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"presentation_structured@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/presentation_text_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"presentation_text.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"presentation_text@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/quote_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"quote.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"quote@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/right_switch_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"right_switch.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"right_switch@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/sidebar_recents_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"recents.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"recents@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/smallColumn_RTL_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallColumn_RTL_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallColumn_RTL_Template@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/smallColumn_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallColumn_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallColumn_Template@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/smallCrashedThread_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallCrashedThread_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallCrashedThread_Template@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/smallLightTable_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"smallLightTable_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/symbolication_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"symbolication.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"symbolication@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/templateBlue.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"templateBlue.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"templateBlue@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Images.xcassets/thread_Template.imageset/Contents.json",
    "content": "{\n  \"images\" : [\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"thread_Template.png\",\n      \"scale\" : \"1x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"filename\" : \"thread_Template@2x.png\",\n      \"scale\" : \"2x\"\n    },\n    {\n      \"idiom\" : \"universal\",\n      \"scale\" : \"3x\"\n    }\n  ],\n  \"info\" : {\n    \"version\" : 1,\n    \"author\" : \"xcode\"\n  }\n}"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>en</string>\n\t<key>UIDesignRequiresCompatibility</key>\n\t<true/>\n\t<key>CFBundleDocumentTypes</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeIconFile</key>\n\t\t\t<string>UnexpectedlyTheme</string>\n\t\t\t<key>CFBundleTypeName</key>\n\t\t\t<string>Unexpectedly Theme Name</string>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Editor</string>\n\t\t\t<key>LSItemContentTypes</key>\n\t\t\t<array>\n\t\t\t\t<string>fr.whitebox.unexpectedly.theme</string>\n\t\t\t</array>\n\t\t\t<key>LSTypeIsPackage</key>\n\t\t\t<false/>\n\t\t\t<key>NSPersistentStoreTypeKey</key>\n\t\t\t<string>XML</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>smartsource</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeIconFile</key>\n\t\t\t<string>UnexpectedlySmartSource</string>\n\t\t\t<key>CFBundleTypeName</key>\n\t\t\t<string>Unexpectedly Smart Source</string>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Editor</string>\n\t\t\t<key>LSItemContentTypes</key>\n\t\t\t<array>\n\t\t\t\t<string>fr.whitebox.unexpectedly.smartSource</string>\n\t\t\t</array>\n\t\t\t<key>LSTypeIsPackage</key>\n\t\t\t<false/>\n\t\t\t<key>NSPersistentStoreTypeKey</key>\n\t\t\t<string>XML</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>crash</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeIconFile</key>\n\t\t\t<string></string>\n\t\t\t<key>CFBundleTypeMIMETypes</key>\n\t\t\t<array>\n\t\t\t\t<string>text/plain</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeName</key>\n\t\t\t<string>Crash Report</string>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Viewer</string>\n\t\t\t<key>LSItemContentTypes</key>\n\t\t\t<array>\n\t\t\t\t<string>com.apple.crashreport</string>\n\t\t\t</array>\n\t\t\t<key>LSTypeIsPackage</key>\n\t\t\t<false/>\n\t\t\t<key>NSPersistentStoreTypeKey</key>\n\t\t\t<string>Binary</string>\n\t\t\t<key>LSHandlerRank</key>\n\t\t\t<string>Alternate</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>ips</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeIconFile</key>\n\t\t\t<string></string>\n\t\t\t<key>CFBundleTypeMIMETypes</key>\n\t\t\t<array>\n\t\t\t\t<string>text/plain</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeName</key>\n\t\t\t<string>Analytics Report</string>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Viewer</string>\n\t\t\t<key>LSItemContentTypes</key>\n\t\t\t<array>\n\t\t\t\t<string>com.apple.ips</string>\n\t\t\t</array>\n\t\t\t<key>LSTypeIsPackage</key>\n\t\t\t<false/>\n\t\t\t<key>NSPersistentStoreTypeKey</key>\n\t\t\t<string>Binary</string>\n\t\t\t<key>LSHandlerRank</key>\n\t\t\t<string>Alternate</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>dsym</string>\n\t\t\t\t<string>dSYM</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeIconFile</key>\n\t\t\t<string></string>\n\t\t\t<key>CFBundleTypeName</key>\n\t\t\t<string>Archived Debug Symbols</string>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Viewer</string>\n\t\t\t<key>LSItemContentTypes</key>\n\t\t\t<array>\n\t\t\t\t<string>com.apple.xcode.dsym</string>\n\t\t\t</array>\n\t\t\t<key>LSTypeIsPackage</key>\n\t\t\t<true/>\n\t\t</dict>\n\t</array>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIconFile</key>\n\t<string>AppIcon.icns</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundlePackageType</key>\n\t<string>APPL</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleSignature</key>\n\t<string>????</string>\n\t<key>CFBundleURLTypes</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>dsym</string>\n\t\t\t\t<string>dSYM</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Viewer</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>crash</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Viewer</string>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeExtensions</key>\n\t\t\t<array>\n\t\t\t\t<string>ips</string>\n\t\t\t</array>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>Viewer</string>\n\t\t</dict>\n\t</array>\n\t<key>CFBundleVersion</key>\n\t<string>78</string>\n\t<key>LSApplicationCategoryType</key>\n\t<string>public.app-category.developer-tools</string>\n\t<key>LSMinimumSystemVersion</key>\n\t<string>$(MACOSX_DEPLOYMENT_TARGET)</string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2020-2026 Stéphane Sudre. All rights reserved.</string>\n\t<key>NSMainNibFile</key>\n\t<string>MainMenu</string>\n\t<key>NSPrincipalClass</key>\n\t<string>NSApplication</string>\n\t<key>NSAppleEventsUsageDescription</key>\n\t<string>To interact with other applications, Unexpectedly needs to be able to send Apple Events.</string>\n\t<key>UTExportedTypeDeclarations</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>UTTypeConformsTo</key>\n\t\t\t<array>\n\t\t\t\t<string>public.xml</string>\n\t\t\t</array>\n\t\t\t<key>UTTypeDescription</key>\n\t\t\t<string>Unexpectedly Theme File</string>\n\t\t\t<key>UTTypeIconName</key>\n\t\t\t<string>UnexpectedlyTheme</string>\n\t\t\t<key>UTTypeIdentifier</key>\n\t\t\t<string>fr.whitebox.unexpectedly.theme</string>\n\t\t\t<key>UTTypeTagSpecification</key>\n\t\t\t<dict>\n\t\t\t\t<key>public.filename-extension</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>unexpectedly-theme</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</dict>\n\t\t<dict>\n\t\t\t<key>UTTypeConformsTo</key>\n\t\t\t<array>\n\t\t\t\t<string>public.xml</string>\n\t\t\t</array>\n\t\t\t<key>UTTypeDescription</key>\n\t\t\t<string>Unexpectedly Smart Source File</string>\n\t\t\t<key>UTTypeIconName</key>\n\t\t\t<string>UnexpectedlySmartSource</string>\n\t\t\t<key>UTTypeIdentifier</key>\n\t\t\t<string>fr.whitebox.unexpectedly.smartSource</string>\n\t\t\t<key>UTTypeTagSpecification</key>\n\t\t\t<dict>\n\t\t\t\t<key>public.filename-extension</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>smartsource</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</dict>\n\t</array>\n\t<key>NSAppTransportSecurity</key>\n\t<dict>\n\t\t<key>NSExceptionDomains</key>\n\t\t<dict>\n\t\t\t<key>s.sudre.free.fr</key>\n\t\t\t<dict>\n\t\t\t\t<key>NSExceptionAllowsInsecureHTTPLoads</key>\n\t\t\t\t<true/>\n\t\t\t</dict>\n\t\t</dict>\n\t</dict>\n\t<key>WBVersionCheckURL</key>\n\t<string>http://s.sudre.free.fr/Software/Unexpectedly/RemoteVersion.plist</string>\n</dict>\n</plist>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHLoadCommand.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHMemoryBufferWrapper.h\"\n\n@class MCHObjectFile;\n\n@interface MCHLoadCommand : MCHMemoryBufferWrapper\n\n@property (readonly) uint32_t type;\n\n+ (uint32_t)typeFromLoadCommandBuffer:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap;\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture objectFile:(MCHObjectFile *)inObjectFile;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHLoadCommand.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHLoadCommand.h\"\n\n#import \"MCHObjectFile.h\"\n\n#import \"MCHUUIDLoadCommand.h\"\n#import \"MCHSegmentLoadCommand.h\"\n\n/*#import \"MTBCRpathLoadCommand.h\"\n#import \"MTBCLinkEditDataLoadCommand.h\"\n#import \"MTBCMinimumVersionLoadCommand.h\"\n#import \"MTBCSourceVersionLoadCommand.h\"\n#import \"MTBCEncryptionLoadCommand.h\"\n\n#import \"MTBCDynamicLinkerLoadCommand.h\"\n#import \"MTBCDynamicLinkedSharedLibraryLoadCommand.h\"\n#import \"MTBCPreboundDynamicLibraryCommand.h\"*/\n\n#include <mach-o/loader.h>\n\n@interface MCHLoadCommand ()\n\n@property uint32_t type;\n\n@end\n\n@implementation MCHLoadCommand\n\n+ (uint32_t)typeFromLoadCommandBuffer:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap\n{\n\tif (inBytes==NULL || inLength<(sizeof(uint32_t)))\n        return 0;\n    \n    uint32_t tCommandType=*((uint32_t *) inBytes);\n    \n    if (inSwap==YES)\n        tCommandType=OSSwapBigToHostInt32(tCommandType);\n\n    return tCommandType;\n}\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture objectFile:(MCHObjectFile *)inObjectFile\n{\n\tif (inBytes==NULL || inLength<=(sizeof(uint32_t)))\n        return nil;\n    \n    uint32_t tCommandType=[MCHLoadCommand typeFromLoadCommandBuffer:inBytes length:inLength swap:inSwap];\n    \n    uint32_t tCommandSize=*(((uint32_t *) inBytes)+1);\n    \n    if (inSwap==YES)\n        tCommandSize=OSSwapBigToHostInt32(tCommandSize);\n    \n    switch(tCommandType)\n    {\n        case LC_SEGMENT:\n            \n            self=[[MCHSegmentLoadCommand alloc] initWithBytes:inBytes length:tCommandSize swap:inSwap architecture:MCHArchitecture32 objectFile:inObjectFile];\n            break;\n            \n        case LC_SEGMENT_64:\n            \n            self=[[MCHSegmentLoadCommand alloc] initWithBytes:inBytes length:tCommandSize swap:inSwap architecture:MCHArchitecture64 objectFile:inObjectFile];\n            break;\n            \n        case LC_SYMTAB:\n            \n            // A COMPLETER\n            \n            break;\n        \n        case LC_DYSYMTAB:\n            \n            // A COMPLETER\n            \n            break;\n            \n        case LC_ID_DYLIB:\n        case LC_LOAD_DYLIB:\n        case LC_LOAD_WEAK_DYLIB:\n        case LC_REEXPORT_DYLIB:\n            \n            break;\n            \n        case LC_LOAD_DYLINKER:\n            \n            break;\n            \n        case LC_PREBOUND_DYLIB:\n            \n            break;\n            \n        case LC_UUID:\n            \n            self=[[MCHUUIDLoadCommand alloc] initWithBytes:inBytes length:tCommandSize swap:inSwap architecture:inArchitecture objectFile:inObjectFile];\n            \n            break;\n        \n        case LC_RPATH:\n            \n            break;\n            \n        case LC_CODE_SIGNATURE:\n        case LC_SEGMENT_SPLIT_INFO:\n        case LC_FUNCTION_STARTS:\n        case LC_DATA_IN_CODE:\n        case LC_DYLIB_CODE_SIGN_DRS:\n        case LC_LINKER_OPTIMIZATION_HINT:\n            \n            break;\n            \n        case LC_VERSION_MIN_MACOSX:\n        case LC_VERSION_MIN_IPHONEOS:\n            \n            break;\n        \n        case LC_SOURCE_VERSION:\n            \n            break;\n            \n        case LC_ENCRYPTION_INFO:\n            \n            break;\n            \n        case LC_ENCRYPTION_INFO_64:\n            \n            break;\n        \n        case LC_DYLD_INFO:\n        case LC_DYLD_INFO_ONLY:\n            \n            break;\n        \n        case LC_BUILD_VERSION:\n            \n            break;\n            \n        default:\n            \n            NSLog(@\"Unknow load command type: %d\",tCommandType);\n            \n            return nil;\n    }\n    \n    if (self!=nil)\n    {\n        _type=tCommandType;\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\tNSMutableString * tMutableString=[NSMutableString string];\n\t\n\t[tMutableString appendFormat:@\"0x%04x command:\\n\",self.type];\n\t[tMutableString appendFormat:@\"  size: %u\\n\",(uint32_t)self.bufferSize];\n\t\n\treturn [tMutableString copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHMachBinary.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHMemoryBufferWrapper.h\"\n\n#import \"MCHObjectFile.h\"\n\n@interface MCHMachBinary : MCHMemoryBufferWrapper\n\n- (instancetype)initWithContentsOfFile:(NSString *)inPath;\n- (instancetype)initWithContentsOfURL:(NSURL *)inURL;\n\n@property (readonly,nonatomic,getter=isFatBinary) BOOL fatBinary;\n\n@property (readonly,nonatomic) NSArray * allObjectFiles;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHMachBinary.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHMachBinary.h\"\n\n#include <mach-o/loader.h>\n#include <mach-o/fat.h>\n\n@interface MCHMachBinary ()\n{\n\tNSMutableArray * _objectFilesArray;\n\t\n    NSData * _cachedData;\n    \n\tNSUInteger bufferSize;\n\tconst char * buffer;\n}\n\n@end\n\n@implementation MCHMachBinary\n\n- (instancetype)initWithContentsOfFile:(NSString *)inPath\n{\n\tif (inPath!=nil)\n\t{\n\t\t_cachedData=[NSData dataWithContentsOfFile:inPath];\n\t\n\t\tif (_cachedData!=nil)\n\t\t\treturn [self initWithBytes:_cachedData.bytes length:_cachedData.length swap:NO];\n\t}\n\t\n\treturn nil;\n}\n\n- (instancetype)initWithContentsOfURL:(NSURL *)inURL\n{\n\tif (inURL!=nil)\n\t{\n\t\tNSData * _cachedData=[NSData dataWithContentsOfURL:inURL];\n\t\t\n\t\tif (_cachedData!=nil)\n\t\t\treturn [self initWithBytes:_cachedData.bytes length:_cachedData.length swap:NO];\n\t}\n\t\n\treturn nil;\n}\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap\n{\n\tself=[super initWithBytes:inBytes length:inLength swap:inSwap];\n\t\n\tif (self!=nil)\n\t{\n\t\tNSUInteger tFutureBufferOffset=0;\n\t\n\t\ttFutureBufferOffset+=sizeof(uint32_t);\n\t\t\t\n\t\tif (tFutureBufferOffset>=self.bufferSize)\n\t\t{\n\t\t\t// Buffer too small\n\t\t\t\n\t\t\t// A COMPLETER\n\t\t\t\n\t\t\tgoto init_bail;\n\t\t}\n\t\t\t\n\t\t// Determine the architecture\n\t\t\n\t\tuint32_t tMagicNumber=*((uint32_t *)self.buffer);\n\t\t\n\t\tBOOL tSwap=YES;\n\t\t\n\t\tswitch(tMagicNumber)\n\t\t{\n\t\t\tcase MH_MAGIC:\n\t\t\tcase MH_CIGAM:\n\t\t\tcase MH_MAGIC_64:\n\t\t\tcase MH_CIGAM_64:\n\t\t\t{\n\t\t\t\tMCHObjectFile * tObjectFile=[[MCHObjectFile alloc] initWithBytes:self.buffer\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlength:self.bufferSize];\n\t\t\t\t\n\t\t\t\tif (tObjectFile==nil)\n\t\t\t\t{\n\t\t\t\t\tgoto init_bail;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t_objectFilesArray=[NSMutableArray arrayWithObject:tObjectFile];\n\t\t\t\t\n\t\t\t\tbreak;\n\t\t\t}\n            \n            case FAT_MAGIC_64:\n                \n                tSwap=NO;\n                \n            case FAT_CIGAM_64:        // FAT\n            {\n                tFutureBufferOffset+=sizeof(uint32_t);\n                \n                if (tFutureBufferOffset>=self.bufferSize)\n                {\n                    // A COMPLETER\n                    \n                    goto init_bail;\n                }\n                \n                _objectFilesArray=[NSMutableArray array];\n                \n                struct fat_header * tFatHeaderPtr=(struct fat_header *)self.buffer;\n                uint32_t tArchitecturesCount=tFatHeaderPtr->nfat_arch;\n                \n                if (tSwap==YES)\n                    tArchitecturesCount=OSSwapBigToHostInt32(tArchitecturesCount);\n                \n                const char * tReadBuffer=self.buffer+tFutureBufferOffset;\n                \n                for(uint32_t tIndex=0;tIndex<tArchitecturesCount;tIndex++)\n                {\n                    tFutureBufferOffset+=sizeof(struct fat_arch_64);\n                    \n                    if (tFutureBufferOffset>=self.bufferSize)\n                    {\n                        // A COMPLETER\n                        \n                        goto init_bail;\n                    }\n                    \n                    struct fat_arch_64 * tFatArchPtr=(struct fat_arch_64 *)tReadBuffer;\n                    \n                    MCHObjectFile * tObjectFile;\n                    \n                    if (tSwap==YES)\n                        tObjectFile=[[MCHObjectFile alloc] initWithBytes:self.buffer+OSSwapBigToHostInt64(tFatArchPtr->offset)\n                                                                  length:OSSwapBigToHostInt64(tFatArchPtr->size)];\n                    else\n                        tObjectFile=[[MCHObjectFile alloc] initWithBytes:self.buffer+tFatArchPtr->offset\n                                                                  length:tFatArchPtr->size];\n                    \n                    if (tObjectFile==nil)\n                    {\n                        goto init_bail;\n                    }\n                    \n                    [_objectFilesArray addObject:tObjectFile];\n                    \n                    tReadBuffer+=sizeof(struct fat_arch_64);\n                }\n                \n                break;\n            }\n                \n\t\t\tcase FAT_MAGIC:\n\t\t\t\t\n\t\t\t\ttSwap=NO;\n\t\t\t\t\n\t\t\tcase FAT_CIGAM:\t\t// FAT\n\t\t\t{\n\t\t\t\ttFutureBufferOffset+=sizeof(uint32_t);\n\t\t\t\t\n\t\t\t\tif (tFutureBufferOffset>=self.bufferSize)\n\t\t\t\t{\n\t\t\t\t\t// A COMPLETER\n\t\t\t\t\t\n\t\t\t\t\tgoto init_bail;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t_objectFilesArray=[NSMutableArray array];\n\t\t\t\t\n\t\t\t\tstruct fat_header * tFatHeaderPtr=(struct fat_header *)self.buffer;\n\t\t\t\tuint32_t tArchitecturesCount=tFatHeaderPtr->nfat_arch;\n\t\t\t\t\n\t\t\t\tif (tSwap==YES)\n\t\t\t\t\ttArchitecturesCount=OSSwapBigToHostInt32(tArchitecturesCount);\n\t\t\t\t\n\t\t\t\tconst char * tReadBuffer=self.buffer+tFutureBufferOffset;\n\t\t\t\t\n\t\t\t\tfor(uint32_t tIndex=0;tIndex<tArchitecturesCount;tIndex++)\n\t\t\t\t{\n\t\t\t\t\ttFutureBufferOffset+=sizeof(struct fat_arch);\n\t\t\t\t\t\n\t\t\t\t\tif (tFutureBufferOffset>=self.bufferSize)\n\t\t\t\t\t{\n\t\t\t\t\t\t// A COMPLETER\n\t\t\t\t\t\t\n\t\t\t\t\t\tgoto init_bail;\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tstruct fat_arch * tFatArchPtr=(struct fat_arch *)tReadBuffer;\n\t\t\t\t\t\n\t\t\t\t\tMCHObjectFile * tObjectFile;\n\t\t\t\t\t\n\t\t\t\t\tif (tSwap==YES)\n\t\t\t\t\t\ttObjectFile=[[MCHObjectFile alloc] initWithBytes:self.buffer+OSSwapBigToHostInt32(tFatArchPtr->offset)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   length:OSSwapBigToHostInt32(tFatArchPtr->size)];\n\t\t\t\t\telse\n\t\t\t\t\t\ttObjectFile=[[MCHObjectFile alloc] initWithBytes:self.buffer+tFatArchPtr->offset\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   length:tFatArchPtr->size];\n\t\t\t\t\t\t\n\t\t\t\t\tif (tObjectFile==nil)\n\t\t\t\t\t{\n\t\t\t\t\t\tgoto init_bail;\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\t[_objectFilesArray addObject:tObjectFile];\n\t\t\t\t\t\n\t\t\t\t\ttReadBuffer+=sizeof(struct fat_arch);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tdefault:\n\t\t\t\t\n\t\t\t\tNSLog(@\"Unknown Mach Binary format\");\n\t\t\t\t\n\t\t\t\t// A COMPLETER\n\t\t\t\t\n\t\t\t\tgoto init_bail;\n\t\t}\n\t\t\n\t\treturn self;\n\t}\n\ninit_bail:\n\t\n\treturn nil;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\tNSMutableString * tMutableString=[NSMutableString string];\n\t\n\tif (self.isFatBinary==YES)\n\t\t[tMutableString appendFormat:@\"FAT binary (%d object files)\\n\",(int)[self allObjectFiles].count];\n\t\n\t[[self allObjectFiles] enumerateObjectsUsingBlock:^(MCHObjectFile * bObjectFile,NSUInteger bIndex,BOOL * bOutStop){\n\t\t\n\t\t[tMutableString appendString:[bObjectFile description]];\n\t}];\n\t\n\treturn [tMutableString copy];\n}\n\n#pragma mark -\n\n- (BOOL)isFatBinary\n{\n\treturn (_objectFilesArray.count>1);\n}\n\n#pragma mark -\n\n- (NSArray *)allObjectFiles\n{\n\treturn _objectFilesArray;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHMemoryBufferWrapper.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import <Foundation/Foundation.h>\n\ntypedef NS_ENUM(NSUInteger, MCHArchitecture)\n{\n\tMCHArchitectureUnknown=0,\n\tMCHArchitecture32,\n\tMCHArchitecture64\n};\n\n@interface MCHMemoryBufferWrapper : NSObject\n\n@property (readonly) const char * buffer;\n@property (readonly) NSUInteger bufferSize;\n@property (readonly, getter=shouldSwap) BOOL swap;\n@property (readonly) MCHArchitecture architecture;\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture;\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap;\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHMemoryBufferWrapper.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n\n#import \"MCHMemoryBufferWrapper.h\"\n\n@implementation MCHMemoryBufferWrapper\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture;\n{\n\tif (inBytes!=nil)\n\t{\n\t\tself=[super init];\n\t\t\n\t\tif (self!=nil)\n\t\t{\n\t\t\t_buffer=inBytes;\n\t\t\t_bufferSize=inLength;\n\t\t\t_swap=inSwap;\n\t\t\t_architecture=inArchitecture;\n\t\t\t\n\t\t\treturn self;\n\t\t}\n\t}\n\n\treturn nil;\n}\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap\n{\n\treturn [self initWithBytes:inBytes length:inLength swap:inSwap architecture:MCHArchitectureUnknown];\n}\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength\n{\n\treturn [self initWithBytes:inBytes length:inLength swap:NO];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHObjectFile.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHMemoryBufferWrapper.h\"\n\n#import \"MCHLoadCommand.h\"\n#import \"MCHSegment.h\"\n\n#include <mach-o/loader.h>\n\n@interface MCHObjectFile : MCHMemoryBufferWrapper\n\n@property (readonly) cpu_type_t cpuType;\n@property (readonly) cpu_subtype_t cpuSubType;\n@property (readonly) uint32_t fileType;\n@property (readonly) uint32_t flags;\n\n@property (nonatomic,readonly) NSArray<MCHLoadCommand *> * allLoadCommands;\n\n- (NSArray<MCHLoadCommand *> *)loadCommandsOfType:(uint32_t)inType;\n\n@property (nonatomic,readonly) NSArray * allSegments;\n\n- (MCHSegment *)segmentNamed:(NSString *)inName;\n//- (MTBCSegment *)segmentAtAddress:(uint64_t)inAddress;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHObjectFile.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHObjectFile.h\"\n\n#import \"MCHSegmentLoadCommand.h\"\n\n@interface MCHObjectFile ()\n{\n\tNSMutableArray *_loadCommandsArray;\n\t\n\tNSMutableArray *_segmentsArray;\n\tNSMutableDictionary * _segmentsIndex;\n}\n\n@property cpu_type_t cpuType;\n@property cpu_subtype_t cpuSubType;\n@property uint32_t fileType;\n@property uint32_t flags;\n\n@end\n\n@implementation MCHObjectFile\n\n- (instancetype)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture\n{\n\tself=[super initWithBytes:inBytes length:inLength swap:inSwap architecture:inArchitecture];\n\t\n\tif (self!=nil)\n\t{\n\t\tNSUInteger tFutureBufferOffset=0;\n\t\t\n\t\tuint32_t tLoadCommandsNumber;\n\t\t//uint32_t tLoadCommandsTotalSize;\n\t\t\n\t\tif (inArchitecture==MCHArchitecture32)\n\t\t{\n\t\t\tif (self.bufferSize<sizeof(struct mach_header))\n\t\t\t{\n\t\t\t\t// Buffer not big enough\n\t\t\t\t\n\t\t\t\treturn nil;\n\t\t\t}\n\t\t\t\n\t\t\tstruct mach_header * tMach32HeaderPtr=(struct mach_header *)self.buffer;\n\t\t\t\n\t\t\t_cpuType=tMach32HeaderPtr->cputype;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_cpuType=OSSwapBigToHostInt32(_cpuType);\n\t\t\t\n\t\t\t_cpuSubType=tMach32HeaderPtr->cpusubtype;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_cpuSubType=OSSwapBigToHostInt32(_cpuSubType);\n\t\t\t\n\t\t\t_fileType=tMach32HeaderPtr->filetype;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_fileType=OSSwapBigToHostInt32(_fileType);\n\t\t\t\n\t\t\t_flags=tMach32HeaderPtr->flags;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_flags=OSSwapBigToHostInt32(_flags);\n\t\t\t\n\t\t\ttLoadCommandsNumber=tMach32HeaderPtr->ncmds;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\ttLoadCommandsNumber=OSSwapBigToHostInt32(tLoadCommandsNumber);\n\t\t\t\n\t\t\t/*tLoadCommandsTotalSize=tMach32HeaderPtr->sizeofcmds;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\ttLoadCommandsTotalSize=OSSwapBigToHostInt32(tLoadCommandsTotalSize);*/\n\t\t\t\n\t\t\ttFutureBufferOffset=sizeof(struct mach_header);\n\t\t}\n\t\telse if (inArchitecture==MCHArchitecture64)\n\t\t{\n\t\t\tif (self.bufferSize<sizeof(struct mach_header_64))\n\t\t\t{\n\t\t\t\t// Buffer not big enough\n\t\t\t\t\n\t\t\t\treturn nil;\n\t\t\t}\n\t\t\t\n\t\t\tstruct mach_header_64 * tMach64HeaderPtr=(struct mach_header_64 *)self.buffer;\n\t\t\t\n\t\t\t_cpuType=tMach64HeaderPtr->cputype;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_cpuType=OSSwapBigToHostInt32(_cpuType);\n\t\t\t\n\t\t\t_cpuSubType=tMach64HeaderPtr->cpusubtype;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_cpuSubType=OSSwapBigToHostInt32(_cpuSubType);\n\t\t\t\n\t\t\t_fileType=tMach64HeaderPtr->filetype;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_fileType=OSSwapBigToHostInt32(_fileType);\n\t\t\t\n\t\t\t_flags=tMach64HeaderPtr->flags;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t_flags=OSSwapBigToHostInt32(_flags);\n\t\t\t\n\t\t\ttLoadCommandsNumber=tMach64HeaderPtr->ncmds;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\ttLoadCommandsNumber=OSSwapBigToHostInt32(tLoadCommandsNumber);\n\t\t\t\n\t\t\t/*tLoadCommandsTotalSize=tMach64HeaderPtr->sizeofcmds;\n\t\t\t\n\t\t\tif (self.shouldSwap==YES)\n\t\t\t\ttLoadCommandsTotalSize=OSSwapBigToHostInt32(tLoadCommandsTotalSize);*/\n\t\t\t\n\t\t\ttFutureBufferOffset=sizeof(struct mach_header_64);\n\t\t}\n\t\telse\n\t\t{\n\t\t\t// Unknow architecture\n\t\t\t\n\t\t\treturn nil;\n\t\t}\n\t\t\n\t\tif (tLoadCommandsNumber>0)\n\t\t{\n\t\t\t_loadCommandsArray=[NSMutableArray array];\n\t\t\t\n\t\t\t_segmentsArray=[NSMutableArray array];\n\t\t\t\n\t\t\t_segmentsIndex=[NSMutableDictionary dictionary];\n\t\t\t\n\t\t\tfor(uint32_t tLoadCommandIndex=0;tLoadCommandIndex<tLoadCommandsNumber;tLoadCommandIndex++)\n\t\t\t{\n\t\t\t\ttFutureBufferOffset+=sizeof(struct load_command);\n\t\t\t\t\n\t\t\t\tif (tFutureBufferOffset>=self.bufferSize)\n\t\t\t\t{\n\t\t\t\t\t// Buffer too small\n\t\t\t\t\t\n\t\t\t\t\treturn nil;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\ttFutureBufferOffset-=sizeof(struct load_command);\n\t\t\t\t\n\t\t\t\tstruct load_command * tLoadCommandPtr=(struct load_command *)(self.buffer+tFutureBufferOffset);\n\t\t\t\t\n\t\t\t\tuint32_t tLoadCommandType=tLoadCommandPtr->cmd;\n\t\t\t\t\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttLoadCommandType=OSSwapBigToHostInt32(tLoadCommandType);\n\t\t\t\t\n\t\t\t\tuint32_t tLoadCommandSize=tLoadCommandPtr->cmdsize;\n\t\t\t\t\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttLoadCommandSize=OSSwapBigToHostInt32(tLoadCommandSize);\n\t\t\t\t\n\t\t\t\tswitch(tLoadCommandType)\n\t\t\t\t{\n\t\t\t\t\tcase LC_SEGMENT:\n\t\t\t\t\tcase LC_SYMTAB:\n\t\t\t\t\tcase LC_SYMSEG:\n\t\t\t\t\tcase LC_THREAD:\n\t\t\t\t\tcase LC_UNIXTHREAD:\n\t\t\t\t\tcase LC_LOADFVMLIB:\n\t\t\t\t\tcase LC_IDFVMLIB:\n\t\t\t\t\tcase LC_IDENT:\n\t\t\t\t\tcase LC_FVMFILE:\n\t\t\t\t\tcase LC_PREPAGE:\n\t\t\t\t\tcase LC_DYSYMTAB:\n\t\t\t\t\tcase LC_LOAD_DYLIB:\n\t\t\t\t\tcase LC_ID_DYLIB:\n\t\t\t\t\tcase LC_LOAD_DYLINKER:\n\t\t\t\t\tcase LC_ID_DYLINKER:\n\t\t\t\t\tcase LC_PREBOUND_DYLIB:\n\t\t\t\t\tcase LC_ROUTINES:\n\t\t\t\t\tcase LC_SUB_FRAMEWORK:\n\t\t\t\t\tcase LC_SUB_UMBRELLA:\n\t\t\t\t\tcase LC_SUB_CLIENT:\n\t\t\t\t\tcase LC_SUB_LIBRARY:\n\t\t\t\t\tcase LC_TWOLEVEL_HINTS:\n\t\t\t\t\tcase LC_PREBIND_CKSUM:\n\t\t\t\t\tcase LC_LOAD_WEAK_DYLIB:\n\t\t\t\t\t\t\n\t\t\t\t\tcase LC_SEGMENT_64:\n\t\t\t\t\tcase LC_ROUTINES_64:\n\t\t\t\t\tcase LC_UUID:\n\t\t\t\t\tcase LC_RPATH:\n\t\t\t\t\tcase LC_CODE_SIGNATURE:\n\t\t\t\t\tcase LC_SEGMENT_SPLIT_INFO:\n\t\t\t\t\tcase LC_REEXPORT_DYLIB:\n\t\t\t\t\tcase LC_LAZY_LOAD_DYLIB:\n\t\t\t\t\tcase LC_ENCRYPTION_INFO:\n\t\t\t\t\tcase LC_DYLD_INFO:\n\t\t\t\t\tcase LC_DYLD_INFO_ONLY:\n\t\t\t\t\tcase LC_LOAD_UPWARD_DYLIB:\n\t\t\t\t\tcase LC_VERSION_MIN_MACOSX:\n\t\t\t\t\tcase LC_VERSION_MIN_IPHONEOS:\n\t\t\t\t\tcase LC_FUNCTION_STARTS:\n\t\t\t\t\tcase LC_DYLD_ENVIRONMENT:\n\t\t\t\t\tcase LC_MAIN:\n\t\t\t\t\tcase LC_DATA_IN_CODE:\n\t\t\t\t\tcase LC_SOURCE_VERSION:\n\t\t\t\t\tcase LC_DYLIB_CODE_SIGN_DRS:\n\t\t\t\t\tcase LC_ENCRYPTION_INFO_64:\n\t\t\t\t\tcase LC_LINKER_OPTION:\n\t\t\t\t\tcase LC_LINKER_OPTIMIZATION_HINT:\n                    case LC_BUILD_VERSION:\n\t\t\t\t\t{\n\t\t\t\t\t\tMCHLoadCommand * tLoadCommand=[[MCHLoadCommand alloc] initWithBytes:self.buffer+tFutureBufferOffset\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   length:tLoadCommandSize\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t swap:self.shouldSwap\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t architecture:self.architecture\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t   objectFile:self];\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (tLoadCommand!=nil)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\t[_loadCommandsArray addObject:tLoadCommand];\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif (tLoadCommandType==LC_SEGMENT || tLoadCommandType==LC_SEGMENT_64)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tMCHSegmentLoadCommand * tSegmentLoadCommand=(MCHSegmentLoadCommand *)tLoadCommand;\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tMCHSegment * tSegment=tSegmentLoadCommand.segment;\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tif (tSegment!=nil)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t[_segmentsArray addObject:tSegment];\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tif (tSegment.name!=nil)\n\t\t\t\t\t\t\t\t\t\t[_segmentsIndex setObject:tSegment forKey:tSegment.name];\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tNSLog(@\"Error initialization load command 0x%04x (0x%08x,%u)\",tLoadCommandType,(uint32_t)tFutureBufferOffset,(uint32_t)tLoadCommandSize);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\ttFutureBufferOffset+=tLoadCommandSize;\n\t\t\t\t\t\t\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\tdefault:\n\t\t\t\t\t\t\n\t\t\t\t\t\t// Unknown load command\n\t\t\t\t\t\t\n\t\t\t\t\t\tNSLog(@\"Unknow load command: %d\",tLoadCommandType);\n\t\t\t\t\t\t\n\t\t\t\t\t\ttFutureBufferOffset+=tLoadCommandSize;\n\t\t\t\t\t\t\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t\n\treturn self;\n}\n\n- (instancetype)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength\n{\n\tif (inBytes!=nil && inLength>sizeof(uint32_t))\n\t{\n\t\tuint32_t tMagicNumber=*((uint32_t *)inBytes);\n\t\t\n\t\tswitch(tMagicNumber)\n\t\t{\n\t\t\tcase MH_MAGIC:\n\t\t\t\t\n\t\t\t\treturn [self initWithBytes:inBytes length:inLength swap:NO architecture:MCHArchitecture32];\n\t\t\t\t\n\t\t\tcase MH_CIGAM:\n\t\t\t\t\n\t\t\t\treturn [self initWithBytes:inBytes length:inLength swap:YES architecture:MCHArchitecture32];\n\t\t\t\t\n\t\t\tcase MH_MAGIC_64:\n\t\t\t\t\n\t\t\t\treturn [self initWithBytes:inBytes length:inLength swap:NO architecture:MCHArchitecture64];\n\t\t\t\t\n\t\t\tcase MH_CIGAM_64:\n\t\t\t\t\n\t\t\t\treturn [self initWithBytes:inBytes length:inLength swap:NO architecture:MCHArchitecture64];\n\t\t\t\t\n\t\t\tdefault:\n\t\t\n\t\t\t\t// Unknown architecture\n\t\t\t\t\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t\n\treturn nil;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\tNSMutableString * tMutableString=[NSMutableString string];\n\t\n\t[tMutableString appendFormat:@\"mach-o file (%@)\\n\",(self.architecture==MCHArchitecture32)? @\"32-bit\" : @\"64-bit\"];\n\t\n\tNSString * tFileType=nil;\n\t\n\tswitch(self.fileType)\n\t{\n\t\tcase MH_OBJECT:\n\t\t\ttFileType=@\"Object File\";\n\t\t\tbreak;\n\t\tcase MH_EXECUTE:\n\t\t\ttFileType=@\"Executable\";\n\t\t\tbreak;\n\t\tcase MH_FVMLIB:\n\t\t\ttFileType=@\"VM Shared Library File\";\n\t\t\tbreak;\n\t\tcase MH_CORE:\n\t\t\ttFileType=@\"Core File\";\n\t\t\tbreak;\n\t\tcase MH_PRELOAD:\n\t\t\ttFileType=@\"Preloaded Executable\";\n\t\t\tbreak;\n\t\tcase MH_DYLIB:\n\t\t\ttFileType=@\"Dynamic Shared Library\";\n\t\t\tbreak;\n\t\tcase MH_BUNDLE:\n\t\t\ttFileType=@\"Dynamically Bound Bundle File\";\n\t\t\tbreak;\n            \n        case MH_DSYM:\n            \n            tFileType=@\"Companion file with only debug sections\";\n            break;\n            \n\t\tdefault:\n\t\t\t\n\t\t\ttFileType=@\"Description forthcoming\";\n\t\t\tbreak;\n\t}\n\t\n\t[tMutableString appendFormat:@\"type: %@\\n\",tFileType];\n\t\n\tNSString * tCPUType=nil;\n\t\n\tswitch(self.cpuType)\n\t{\n\t\tcase CPU_TYPE_I386:\n\t\t\ttCPUType=@\"i386\";\n\t\t\tbreak;\n\t\tcase CPU_TYPE_X86_64:\n\t\t\ttCPUType=@\"x86_64\";\n\t\t\tbreak;\n\t\tcase CPU_TYPE_POWERPC:\n\t\t\ttCPUType=@\"ppc\";\n\t\t\tbreak;\n\t\tcase CPU_TYPE_POWERPC64:\n\t\t\ttCPUType=@\"ppc64\";\n\t\t\tbreak;\n\t\tcase CPU_TYPE_ARM:\n\t\t\ttCPUType=@\"arm\";\n\t\t\tbreak;\n\t\tcase CPU_TYPE_ARM64:\n\t\t\ttCPUType=@\"arm64\";\n\t\t\tbreak;\n\t\tdefault:\n\t\t\t\n\t\t\ttCPUType=@\"Unknown\";\n\t\t\tbreak;\n\t}\n\t\n\t[tMutableString appendFormat:@\"CPU: %@\\n\",tCPUType];\n\t\n\t[tMutableString appendFormat:@\"%d load commands:\\n\",(int) self.allLoadCommands.count];\n\t\n\t[self.allLoadCommands enumerateObjectsUsingBlock:^(MCHLoadCommand * bLoadCommand, NSUInteger bIndex, BOOL * bOutStop){\n\t\n\t\t[tMutableString appendString:[bLoadCommand description]];\n\t\t[tMutableString appendString:@\"\\n\"];\n\t}];\n\t\n\t[tMutableString appendString:@\"\\n\"];\n\t\n\treturn [tMutableString copy];\n}\n\n#pragma mark -\n\n- (NSArray *)allLoadCommands\n{\n\treturn _loadCommandsArray;\n}\n\n- (NSArray *)loadCommandsOfType:(uint32_t)inType\n{\n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    for( MCHLoadCommand * tLoadCommand in self.allLoadCommands)\n    {\n        if (tLoadCommand.type==inType)\n            [tMutableArray addObject:tLoadCommand];\n    }\n    \n\treturn [tMutableArray copy];\n}\n\n#pragma mark -\n\n- (NSArray *)allSegments\n{\n\treturn _segmentsArray;\n}\n\n- (MCHSegment *)segmentNamed:(NSString *)inName\n{\n\tif (inName!=nil)\n\t\treturn [_segmentsIndex objectForKey:inName];\n\n\treturn nil;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHSection.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHMemoryBufferWrapper.h\"\n\n@class MCHObjectFile;\n\n@interface MCHSection : MCHMemoryBufferWrapper\n\n@property (readonly) MCHObjectFile * objectFile;\n@property (readonly) NSString *name;\n@property (readonly) NSString *segmentName;\n@property (readonly) uint64_t address;\n\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture objectFile:(MCHObjectFile *)inObjectFile;\n\n- (const char *)bytesAtAddress:(uint64_t)inAddress;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHSection.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHSection.h\"\n\n#import \"MCHObjectFile.h\"\n\n#include <mach-o/loader.h>\n\n@implementation MCHSection\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture objectFile:( MCHObjectFile *)inObjectFile;\n{\n\tif (inBytes==NULL)\n        return nil;\n\n    NSString * tSectionName=nil;\n    NSString * tSegmentName=nil;\n    uint32_t tOffset=0;\n    uint64_t tSize=0;\n    uint32_t tFlags=0;\n    uint64_t tAddress=0;\n    \n    if (inArchitecture==MCHArchitecture32)\n    {\n        struct section * tSection32Ptr=(struct section *)inBytes;\n        char cStringBuffer[17];\n        \n        memset(cStringBuffer,0,17);\n        memcpy(cStringBuffer,tSection32Ptr->sectname,16);\n        \n        tSectionName=[[NSString alloc] initWithCString:cStringBuffer\n                                              encoding:NSASCIIStringEncoding];\n        \n        memset(cStringBuffer,0,17);\n        memcpy(cStringBuffer,tSection32Ptr->segname,16);\n        \n        tSegmentName=[[NSString alloc] initWithCString:cStringBuffer\n                                            encoding:NSASCIIStringEncoding];\n        \n        uint32_t tAddress32=tSection32Ptr->addr;\n        \n        if (inSwap==YES)\n            tAddress32=OSSwapBigToHostInt32(tAddress32);\n        \n        tAddress=tAddress32;\n        \n        uint32_t tSize32=tSection32Ptr->size;\n        \n        if (inSwap==YES)\n            tSize32=OSSwapBigToHostInt32(tSize32);\n        \n        tSize=tSize32;\n        \n        tOffset=tSection32Ptr->offset;\n        \n        if (inSwap==YES)\n            tOffset=OSSwapBigToHostInt32(tOffset);\n        \n        tFlags=tSection32Ptr->flags;\n        \n        if (inSwap==YES)\n            tFlags=OSSwapBigToHostInt32(tFlags);\n    }\n    else if (inArchitecture==MCHArchitecture64)\n    {\n        struct section_64 * tSection64Ptr=(struct section_64 *)inBytes;\n        \n        char cStringBuffer[17];\n        \n        memset(cStringBuffer,0,17);\n        memcpy(cStringBuffer,tSection64Ptr->sectname,16);\n        \n        tSectionName=[[NSString alloc] initWithCString:cStringBuffer\n                                              encoding:NSASCIIStringEncoding];\n        \n        memset(cStringBuffer,0,17);\n        memcpy(cStringBuffer,tSection64Ptr->segname,16);\n        \n        tSegmentName=[[NSString alloc] initWithCString:cStringBuffer\n                                              encoding:NSASCIIStringEncoding];\n        \n        uint64_t tAddress64=tSection64Ptr->addr;\n        \n        if (inSwap==YES)\n            tAddress64=OSSwapBigToHostInt64(tAddress64);\n        \n        tAddress=tAddress64;\n        \n        uint64_t tSize64=tSection64Ptr->size;\n        \n        if (inSwap==YES)\n            tSize64=OSSwapBigToHostInt64(tSize64);\n        \n        tSize=tSize64;\n        \n        tOffset=tSection64Ptr->offset;\n        \n        if (inSwap==YES)\n            tOffset=OSSwapBigToHostInt32(tOffset);\n        \n        tFlags=tSection64Ptr->flags;\n        \n        if (inSwap==YES)\n            tFlags=OSSwapBigToHostInt32(tFlags);\n    }\n    else\n    {\n        // Unknown architecture\n        \n        return nil;\n    }\n    \n    uint32_t tType=tFlags&SECTION_TYPE;\n    \n    id tSection=nil;\n    \n    switch (tType)\n    {\n        case S_CSTRING_LITERALS:\n            \n            break;\n            \n        case S_ZEROFILL:\n            \n            break;\n    \n        default:\n            \n            if (tSection==nil)\n                tSection=[super initWithBytes:inObjectFile.buffer+tOffset length:(NSUInteger)tSize swap:inSwap architecture:inArchitecture];\n            \n            break;\n    }\n    \n    self=tSection;\n    \n    if (self!=nil)\n    {\n        _objectFile=inObjectFile;\n        \n        _name=tSectionName;\n        _segmentName=tSegmentName;\n        _address=tAddress;\n    }\n    \n    return self;\n}\n\n- (void)dealloc\n{\n\t_objectFile=nil;\n}\n\n#pragma mark -\n\n- (NSUInteger)hash\n{\n    return self.name.hash;\n}\n\n- (NSString *)description\n{\n\treturn [NSString stringWithFormat:@\"    <0x%08llx> (%@,%@)\\n\",_address,_segmentName,_name];\n}\n\n#pragma mark -\n\n- (const char *)bytesAtAddress:(uint64_t)inAddress\n{\n\treturn self.buffer+(inAddress-self.address);\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHSegment.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHMemoryBufferWrapper.h\"\n\n#import \"MCHSection.h\"\n\n@interface MCHSegment : MCHMemoryBufferWrapper\n\n@property (readonly) NSString * name;\n\n- (id)initWithName:(NSString *)inName sections:(NSArray *)inSections memoryBufferWrapper:(MCHMemoryBufferWrapper *)inMemoryBufferWrapper;\n\n@property (nonatomic,readonly) NSArray * allSections;\n\n- (MCHSection *)sectionNamed:(NSString *)inName;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHSegment.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHSegment.h\"\n\n@interface MCHSegment ()\n{\n\tNSArray * _sections;\n\tNSDictionary *_sectionsIndex;\n}\n\n@end\n\n@implementation MCHSegment\n\n- (id)initWithName:(NSString *)inName sections:(NSArray *)inSections memoryBufferWrapper:(MCHMemoryBufferWrapper *)inMemoryBufferWrapper\n{\n\tself=[super initWithBytes:inMemoryBufferWrapper.buffer length:inMemoryBufferWrapper.bufferSize swap:inMemoryBufferWrapper.shouldSwap architecture:inMemoryBufferWrapper.architecture];\n\t\n\tif (self!=nil)\n\t{\n\t\t_name=inName;\n\t\t\n\t\t_sections=inSections;\n\t\t\n\t\tNSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n\t\t\n\t\t[_sections enumerateObjectsUsingBlock:^(MCHSection * bSection, NSUInteger bIndex, BOOL * bOutStop){\n\t\t\n\t\t\tif (bSection.name!=nil)\n\t\t\t\ttMutableDictionary[bSection.name]=bSection;\n\t\t\n\t\t}];\n\t\t\n\t\t_sectionsIndex=[tMutableDictionary copy];\n\t}\n\t\n\treturn self;\n}\n\n#pragma mark -\n\n- (NSUInteger)hash\n{\n    return self.name.hash;\n}\n\n- (NSString *)description\n{\n\treturn @\"Description forthcoming\";\n}\n\n#pragma mark -\n\n- (NSArray *)allSections\n{\n\treturn _sections;\n}\n\n- (MCHSection *)sectionNamed:(NSString *)inName\n{\n\treturn _sectionsIndex[inName];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHSegmentLoadCommand.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHLoadCommand.h\"\n\n#import \"MCHSegment.h\"\n\n@interface MCHSegmentLoadCommand : MCHLoadCommand\n\n@property (readonly) MCHSegment * segment;\n\n@property (readonly) uint32_t flags;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHSegmentLoadCommand.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n#import \"MCHSegmentLoadCommand.h\"\n\n#include <mach-o/loader.h>\n\n#import \"MCHObjectFile.h\"\n\n@interface MCHSegmentLoadCommand ()\n{\n\tNSMutableArray *_sectionsArray;\n}\n\n@end\n\n@implementation MCHSegmentLoadCommand\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture objectFile:(MCHObjectFile *)inObjectFile\n{\n\tif (inLength>=sizeof(struct segment_command))\n\t{\n\t\tself=[super initWithBytes:inBytes length:inLength swap:inSwap architecture:inArchitecture];\n\t\t\n\t\tif (self!=nil)\n\t\t{\n\t\t\tNSString * tSegmentName=nil;\n\t\t\tMCHMemoryBufferWrapper * tMemoryBufferWrapper=nil;\n\t\t\tuint32_t tFlags=0;\n\t\t\tuint32_t tNumberOfSections=0;\n\t\t\tconst char * tReadBuffer=NULL;\n\t\t\n\t\t\tif (inArchitecture==MCHArchitecture32)\n\t\t\t{\n\t\t\t\tstruct segment_command * tSegmentCommand32Ptr=(struct segment_command *)inBytes;\n\t\t\t\t\n\t\t\t\ttSegmentName=[[NSString alloc] initWithCString:tSegmentCommand32Ptr->segname\n\t\t\t\t\t\t\t\t\t\t\t\t\t  encoding:NSASCIIStringEncoding];\n\t\t\t\t\n\t\t\t\tuint32_t tOffset=tSegmentCommand32Ptr->fileoff;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttOffset=OSSwapBigToHostInt32(tOffset);\n\t\t\t\t\n\t\t\t\tuint32_t tSize=tSegmentCommand32Ptr->filesize;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttSize=OSSwapBigToHostInt32(tSize);\n\t\t\t\t\n\t\t\t\ttFlags=tSegmentCommand32Ptr->flags;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttFlags=OSSwapBigToHostInt32(tFlags);\n\t\t\t\t\n\t\t\t\ttNumberOfSections=tSegmentCommand32Ptr->nsects;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttNumberOfSections=OSSwapBigToHostInt32(tNumberOfSections);\n\t\t\t\t\n\t\t\t\ttReadBuffer=inBytes+sizeof(struct segment_command);\n\t\t\t\t\n\t\t\t\ttMemoryBufferWrapper=[[MCHMemoryBufferWrapper alloc] initWithBytes:inObjectFile.buffer+tOffset length:tSize swap:inSwap architecture:inArchitecture];\n\t\t\t}\n\t\t\telse if (inArchitecture==MCHArchitecture64)\n\t\t\t{\n\t\t\t\tstruct segment_command_64 * tSegmentCommand64Ptr=(struct segment_command_64 *)inBytes;\n\t\t\t\t\n\t\t\t\ttSegmentName=[[NSString alloc] initWithCString:tSegmentCommand64Ptr->segname\n\t\t\t\t\t\t\t\t\t\t\t\t\t  encoding:NSASCIIStringEncoding];\n\t\t\t\t\n\t\t\t\tuint64_t tOffset=tSegmentCommand64Ptr->fileoff;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttOffset=OSSwapBigToHostInt64(tOffset);\n\t\t\t\t\n\t\t\t\tuint64_t tSize=tSegmentCommand64Ptr->filesize;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttSize=OSSwapBigToHostInt64(tSize);\n\t\t\t\t\n\t\t\t\ttFlags=tSegmentCommand64Ptr->flags;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttFlags=OSSwapBigToHostInt32(tFlags);\n\t\t\t\t\n\t\t\t\ttNumberOfSections=tSegmentCommand64Ptr->nsects;\n\t\t\t\tif (self.shouldSwap==YES)\n\t\t\t\t\ttNumberOfSections=OSSwapBigToHostInt32(tNumberOfSections);\n\t\t\t\t\n\t\t\t\ttMemoryBufferWrapper=[[MCHMemoryBufferWrapper alloc] initWithBytes:inObjectFile.buffer+tOffset length:tSize swap:inSwap architecture:inArchitecture];\n\t\t\t\t\n\t\t\t\ttReadBuffer=inBytes+sizeof(struct segment_command_64);\n\t\t\t}\n\t\t\telse\n\t\t\t{\n\t\t\t\t// Unknown architecture\n\t\t\t\t\n\t\t\t\treturn nil;\n\t\t\t}\n\t\t\t\n\t\t\t_flags=tFlags;\n\t\t\t\n\t\t\tNSMutableArray * tMutableArray=[NSMutableArray array];\n\t\t\t\n\t\t\tif (tNumberOfSections>0)\n\t\t\t{\n\t\t\t\tfor(uint32_t tSectionIndex=0;tSectionIndex<tNumberOfSections;tSectionIndex++)\n\t\t\t\t{\n\t\t\t\t\tid tSegmentSection;\n\t\t\t\t\t\n\t\t\t\t\tif (inArchitecture==MCHArchitecture32)\n\t\t\t\t\t{\n\t\t\t\t\t\ttSegmentSection=[[MCHSection alloc] initWithBytes:tReadBuffer\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlength:sizeof(struct section)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t  swap:self.shouldSwap\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t architecture:inArchitecture\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tobjectFile:(MCHObjectFile *)inObjectFile];\n\t\t\t\t\t\t\n\t\t\t\t\t\ttReadBuffer+=sizeof(struct section);\n\t\t\t\t\t}\n\t\t\t\t\telse if (inArchitecture==MCHArchitecture64)\n\t\t\t\t\t{\n\t\t\t\t\t\ttSegmentSection=[[MCHSection alloc] initWithBytes:tReadBuffer\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tlength:sizeof(struct section_64)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t swap:self.shouldSwap\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t architecture:inArchitecture\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tobjectFile:(MCHObjectFile *)inObjectFile];\n\t\t\t\t\t\t\n\t\t\t\t\t\ttReadBuffer+=sizeof(struct section_64);\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tif (tSegmentSection!=nil)\n\t\t\t\t\t\t[tMutableArray addObject:tSegmentSection];\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t_segment=[[MCHSegment alloc] initWithName:tSegmentName sections:[tMutableArray copy] memoryBufferWrapper:tMemoryBufferWrapper];\n\t\t\t\n\t\t\treturn self;\n\t\t}\n\t}\n\t\n\treturn nil;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\tNSMutableString * tMutableString=[NSMutableString string];\n\t\n\tNSString * tCmdName=@\"unknown\";\n\t\n\tswitch(self.type)\n\t{\n\t\tcase LC_SEGMENT:\n\t\t\t\n\t\t\ttCmdName=@\"LC_SEGMENT\";\n\t\t\tbreak;\n\t\t\t\n\t\tcase LC_SEGMENT_64:\n\t\t\t\n\t\t\ttCmdName=@\"LC_SEGMENT_64\";\n\t\t\tbreak;\n\t}\n\t\n\t[tMutableString appendFormat:@\"%@ command:\\n\",tCmdName];\n\t[tMutableString appendFormat:@\"  flags: 0x%08x\\n\",self.flags];\n\t[tMutableString appendFormat:@\"  segment name: %@\\n\",_segment.name];\n\t[tMutableString appendFormat:@\"  number of sections: %u\\n\",(uint32_t)_segment.allSections.count];\n\t\n\t[[_segment allSections] enumerateObjectsUsingBlock:^(MCHSection * bSegmentSection, NSUInteger bIndex, BOOL * bOutStop){\n\t\t\n\t\t[tMutableString appendString:[bSegmentSection description]];\n\t\t[tMutableString appendString:@\"\\n\"];\n\t}];\n\t\n\treturn [tMutableString copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHUUIDLoadCommand.h",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHLoadCommand.h\"\n\n@interface MCHUUIDLoadCommand:MCHLoadCommand\n\n    @property (readonly) NSUUID * uuid;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/Mach-o/MCHUUIDLoadCommand.m",
    "content": "/*\n Copyright (c) 2020-2023, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"MCHUUIDLoadCommand.h\"\n\n#include <mach-o/loader.h>\n\n@implementation MCHUUIDLoadCommand\n\n- (id)initWithBytes:(const char *)inBytes length:(NSUInteger)inLength swap:(BOOL)inSwap architecture:(MCHArchitecture)inArchitecture objectFile:(MCHObjectFile *)inObjectFile\n{\n\tif (inLength<sizeof(struct uuid_command))\n        return nil;\n    \n    self=[super initWithBytes:inBytes length:inLength swap:inSwap architecture:inArchitecture];\n    \n    if (self!=nil)\n    {\n        struct uuid_command * tUUIDCommandPtr=(struct uuid_command *)inBytes;\n        \n        _uuid=[[NSUUID alloc] initWithUUIDBytes:tUUIDCommandPtr->uuid];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSString *)description\n{\n\tNSMutableString * tMutableString=[NSMutableString string];\n\t\n\t[tMutableString appendString:@\"LC_UUID command:\\n\"];\n\t[tMutableString appendFormat:@\"  uuid: %@\\n\",_uuid.UUIDString];\n\t\n\treturn [tMutableString copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/NSBundle+dSYM.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSBundle (dSYM)\n\n    @property (readonly,getter=isDSYMBundle) BOOL dSYMBundle;\n\n    @property (readonly) NSArray * binaryUUIDs;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/NSBundle+dSYM.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSBundle+dSYM.h\"\n\n#import \"MCHMachBinary.h\"\n\n#import \"MCHUUIDLoadCommand.h\"\n\n#import \"MCHSegmentLoadCommand.h\"\n\n#include <mach-o/loader.h>\n#include <mach-o/fat.h>\n\n\n\n@interface NSBundle (dSYM_Private)\n\n- (NSString *)symbolsFilePath;\n\n@end\n\n@implementation NSBundle (dSYM)\n\n- (NSString *)symbolsFilePath\n{\n    NSString * tDWARFFolderPath=[self pathForResource:@\"DWARF\" ofType:nil];\n    \n    if (tDWARFFolderPath==nil)\n        return nil;\n    \n    NSArray * tArray=[[NSFileManager defaultManager] contentsOfDirectoryAtPath:tDWARFFolderPath error:NULL];\n    \n    if (tArray.count!=1)\n        return nil;\n    \n    return [tDWARFFolderPath stringByAppendingPathComponent:tArray.firstObject];\n}\n\n#pragma mark -\n\n- (BOOL)isDSYMBundle\n{\n    NSString * tPath=self.bundlePath;\n    \n    if ([tPath.pathExtension isEqualToString:@\"dSYM\"]==NO)\n        return NO;\n    \n    NSString * tPackageType=[self objectForInfoDictionaryKey:@\"CFBundlePackageType\"];\n    \n    if ([tPackageType isKindOfClass:NSString.class]==NO)\n        return NO;\n    \n    if ([tPackageType isEqualToString:@\"dSYM\"]==NO)\n        return NO;\n    \n    NSString * tDWARFFilePath=[self symbolsFilePath];\n    \n    if (tDWARFFilePath==nil)\n        return NO;\n    \n    // Check that this is a mach-o file\n    \n    NSFileHandle * tFileHandle= [NSFileHandle fileHandleForReadingAtPath:tDWARFFilePath];\n    NSData * tData = [tFileHandle readDataOfLength:sizeof(uint32_t)];\n    [tFileHandle closeFile];\n    \n    uint32_t tMagicHeader=0;\n    \n    [tData getBytes:&tMagicHeader length:sizeof(uint32_t)];\n    \n    switch(tMagicHeader)\n    {\n        case MH_MAGIC:\n        case MH_CIGAM:\n        case MH_MAGIC_64:\n        case MH_CIGAM_64:\n            \n            return YES;\n        \n        case FAT_MAGIC:\n        case FAT_CIGAM:\n            \n            return YES;\n            \n        default:\n            \n            break;\n    }\n    \n    return NO;\n}\n\n- (NSArray *)binaryUUIDs\n{\n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    \n    NSString * tPath=[self symbolsFilePath];\n    \n    MCHMachBinary * tMachBinary=[[MCHMachBinary alloc] initWithContentsOfFile:tPath];\n    \n    //NSLog(@\"%@\",[tMachBinary description]);\n    \n    [[tMachBinary allObjectFiles] enumerateObjectsUsingBlock:^(MCHObjectFile * bObjectFile, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if (bObjectFile.fileType!=MH_DSYM)\n            return;\n        \n        NSArray * tUUIDLoadCommands=[bObjectFile loadCommandsOfType:LC_UUID];\n        \n        MCHUUIDLoadCommand * tUUIDLoadCommand=tUUIDLoadCommands.firstObject;\n        \n        NSString * tUUIDString=tUUIDLoadCommand.uuid.UUIDString;\n        \n        if (tUUIDString!=nil)\n            [tMutableArray addObject:tUUIDString];\n    }];\n    \n    \n    return [tMutableArray copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/NSCrashLogTextScrollView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface NSCrashLogTextScrollView : NSScrollView\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/NSCrashLogTextScrollView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSCrashLogTextScrollView.h\"\n\n@implementation NSCrashLogTextScrollView\n\n- (void)tile\n{\n    [super tile];\n    \n    if (self.rulersVisible==YES)\n    {\n        NSRect tBounds=self.bounds;\n        \n        NSScroller * tHorizontalScroller=self.horizontalScroller;\n        \n        NSRect tScrollerFrame=tHorizontalScroller.frame;\n        \n        if (tHorizontalScroller.hidden==NO && self.scrollerStyle==NSScrollerStyleLegacy)\n        {\n            NSRulerView * tRulerView=self.verticalRulerView;\n            \n            NSRect tRulerFrame=tRulerView.frame;\n            \n            tRulerFrame.origin.y=0;\n            tRulerFrame.size.height=NSMaxY(tBounds)-NSHeight(tScrollerFrame);\n            \n            tRulerView.frame=tRulerFrame;\n            \n            self.scrollerInsets=NSEdgeInsetsMake(0,-NSWidth(tRulerView.frame), 0, 0);\n        }\n    }\n    else\n    {\n        if (fabs(self.scrollerInsets.left)>1)\n            self.scrollerInsets=NSEdgeInsetsMake(0,0,0,0);\n    }\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/NSFileManager+ExtendedAttributes.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSFileManager (ExtendedAttributes)\n\n- (NSDictionary *)WB_extendedAttributesOfItemAtURL:(NSURL *)inURL error:(NSError *__autoreleasing *)outError;\n\n- (NSDictionary *)WB_extendedAttributesOfItemAtPath:(NSString *)inPath error:(NSError *__autoreleasing *)outError;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/NSFileManager+ExtendedAttributes.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"NSFileManager+ExtendedAttributes.h\"\n\n//#include <fts.h>\n//#include <sys/stat.h>\n#include <sys/xattr.h>\n\n@implementation NSFileManager (ExtendedAttributes)\n\n+ (id)WB_objectFromData:(NSData *)inData extendedAttributeName:(NSString *)inAttributeName\n{\n    // A COMPLETER\n    \n    return inData;\n}\n\n- (NSDictionary *)WB_extendedAttributesOfItemAtURL:(NSURL *)inURL error:(NSError *__autoreleasing *)outError\n{\n    if (inURL==nil || inURL.isFileURL==NO)\n        return nil;\n    \n    return [self WB_extendedAttributesOfItemAtPath:inURL.path error:outError];\n}\n\n- (NSDictionary *)WB_extendedAttributesOfItemAtPath:(NSString *)inPath error:(NSError *__autoreleasing *)outError\n{\n    if (inPath==nil)\n        return nil;\n    \n    const char * tCPath=[inPath fileSystemRepresentation];\n    \n    if (tCPath==NULL)\n    {\n        NSLog(@\"Unable to get file system representation for path: %@\",inPath);\n        \n        return nil;\n    }\n    \n    int tFileDescriptor=open(tCPath,O_RDONLY|O_NOFOLLOW);\n    \n    if (tFileDescriptor==-1)\n    {\n        if (errno==ELOOP)    // Symbolic link\n            return [NSDictionary dictionary];\n        \n        if (outError!=NULL)\n        {\n            NSError * tUnderlyingError;\n            \n            switch(errno)\n            {\n                case EACCES:\n                    \n                    *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadNoPermissionError userInfo:nil];\n                    return nil;\n                    \n                case ENOENT:\n                    \n                    tUnderlyingError=[NSError errorWithDomain:NSPOSIXErrorDomain code:ENOENT userInfo:nil];\n                    *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadNoSuchFileError userInfo:@{NSFilePathErrorKey:inPath,\n                                                                                                                    NSUnderlyingErrorKey:tUnderlyingError}];\n                    return nil;\n                    \n                default:\n                    \n                    *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadUnknownError userInfo:nil];\n                    return nil;\n            }\n        }\n        \n        return nil;\n    }\n    \n    ssize_t tBufferSize=flistxattr(tFileDescriptor,NULL,0,0);\n    \n    if (tBufferSize==-1)\n    {\n        if (errno==ENOTSUP)\n            return [NSDictionary dictionary];\n        \n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadUnknownError userInfo:nil];\n        \n        close(tFileDescriptor);\n        \n        return nil;\n    }\n    \n    if (tBufferSize==0)\n        return [NSDictionary dictionary];\n    \n    char * tBuffer=(char *)malloc(tBufferSize*sizeof(char));\n    \n    if (tBuffer==NULL)\n    {\n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:ENOMEM userInfo:nil];\n        \n        close(tFileDescriptor);\n        \n        return nil;\n    }\n    \n    ssize_t tReadBufferSize=flistxattr(tFileDescriptor, tBuffer, tBufferSize, 0);\n    \n    if (tReadBufferSize==-1)\n    {\n        if (errno==ENOTSUP)\n        {\n            free(tBuffer);\n            close(tFileDescriptor);\n            return [NSDictionary dictionary];\n        }\n        \n        if (outError!=NULL)\n            *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadUnknownError userInfo:nil];\n        \n        free(tBuffer);\n        \n        close(tFileDescriptor);\n        \n        return nil;\n    }\n    \n    char * tBufferEnd=tBuffer+tReadBufferSize;\n    \n    NSMutableDictionary * tExtendedAttributes=[NSMutableDictionary dictionary];\n    \n    for(char * tAttributeNamePtr=tBuffer;tAttributeNamePtr<tBufferEnd;tAttributeNamePtr+=strlen(tAttributeNamePtr)+1)\n    {\n        NSString * tAttributeName=[NSString stringWithUTF8String:tAttributeNamePtr];\n        \n        if (tAttributeName==nil)\n        {\n            // A COMPLETER\n            \n            tExtendedAttributes=nil;\n            goto extended_attributes_bail;\n        }\n        \n        ssize_t tAttributeBufferSize=fgetxattr(tFileDescriptor,tAttributeNamePtr, NULL, 0, 0, 0);\n        \n        if (tAttributeBufferSize==-1)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadUnknownError userInfo:nil];\n            \n            tExtendedAttributes=nil;\n            goto extended_attributes_bail;\n        }\n        \n        void * tAttributeBuffer=malloc(tAttributeBufferSize*sizeof(uint8_t));\n        \n        if (tAttributeBuffer==NULL)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:ENOMEM userInfo:nil];\n            \n            tExtendedAttributes=nil;\n            goto extended_attributes_bail;\n        }\n        \n        ssize_t tReadAttributeBufferSize=fgetxattr(tFileDescriptor,tAttributeNamePtr, tAttributeBuffer,tAttributeBufferSize, 0, 0);\n        \n        if (tReadAttributeBufferSize==-1)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:NSCocoaErrorDomain code:NSFileReadUnknownError userInfo:nil];\n            \n            free(tAttributeBuffer);\n            tExtendedAttributes=nil;\n            goto extended_attributes_bail;\n        }\n        \n        NSData * tData=[NSData dataWithBytesNoCopy:tAttributeBuffer length:tReadAttributeBufferSize];\n        \n        if (tData==nil)\n        {\n            // A COMPLETER\n            \n            free(tAttributeBuffer);\n            tExtendedAttributes=nil;\n            goto extended_attributes_bail;\n        }\n        \n        id tObject=[NSFileManager WB_objectFromData:tData extendedAttributeName:tAttributeName];\n        \n        if (tObject==nil)\n        {\n            if (outError!=NULL)\n                *outError=[NSError errorWithDomain:NSPOSIXErrorDomain code:EINVAL userInfo:nil];\n            \n            tExtendedAttributes=nil;\n            goto extended_attributes_bail;\n        }\n        \n        tExtendedAttributes[tAttributeName]=tObject;\n    }\n    \nextended_attributes_bail:\n    \n    free(tBuffer);\n    \n    close(tFileDescriptor);\n    \n    return [tExtendedAttributes copy];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/WBRemoteVersionChecker.h",
    "content": "/*\n Copyright (c) 2012-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@interface WBRemoteVersionChecker : NSObject\n\n\t@property (nonatomic,getter=isCheckEnabled) BOOL checkEnabled;\n\n+ (WBRemoteVersionChecker *)sharedChecker;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/WBRemoteVersionChecker.m",
    "content": "/*\n Copyright (c) 2012-2024 Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"WBRemoteVersionChecker.h\"\n\n#define WBREMOTEVERSIONREMINDER_PERIOD\t(24*3600)\t\t// Every day\n#define WBREMOTEVERSIONCHECK_PERIOD\t\t(3*24*3600)\t\t// Every 3 days\n\nNSString * const WBRemoteCheckEnabledKey=@\"WBRemoteCheckEnabled\";\nNSString * const WBRemoteLastCheckDateKey=@\"WBRemoteLastCheckDate\";\nNSString * const WBLastReminderDateKey=@\"WBLastReminderDate\";\nNSString * const WBRemoteAvailableVersionKey=@\"WBRemoteAvailableVersion\";\nNSString * const WBRemoteAvailableVersionURLKey=@\"WBRemoteAvailableVersionURL\";\n\n\nNSString * const WBSkipRemoteAvailableVersionKey=@\"WBSkipRemoteAvailableVersion\";\n\nNSString * const WBVersionCheckURL=@\"WBVersionCheckURL\";\n\n@interface WBRemoteVersionChecker ()\n{\n\tNSString * _productName;\n\tNSString * _productLocalVersion;\n\tNSString * _productCheckURL;\n\t\n\tNSUserDefaults * _defaults;\n}\n\n@end\n\n@implementation WBRemoteVersionChecker\n\n+ (void)initialize\n{\n    [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                              WBRemoteCheckEnabledKey:@(YES),\n                                                              }];\n}\n\n+ (WBRemoteVersionChecker *)sharedChecker\n{\n\tstatic dispatch_once_t onceToken;\n\tstatic WBRemoteVersionChecker * sRemoteVersionChecker=nil;\n\t\n\tdispatch_once(&onceToken, ^{\n\t\t\n\t\tsRemoteVersionChecker=[WBRemoteVersionChecker new];\n\t});\n\t\n\treturn sRemoteVersionChecker;\n}\n\n#pragma mark -\n\n- (instancetype)init\n{\n\tself=[super init];\n\t\n\tif (self!=nil)\n\t{\n\t\tNSBundle * tBundle=[NSBundle mainBundle];\n\t\t\n\t\t_productName=[tBundle objectForInfoDictionaryKey:@\"CFBundleName\"];\n\t\t_productLocalVersion=[tBundle objectForInfoDictionaryKey:@\"CFBundleShortVersionString\"];\n\t\t_productCheckURL=[tBundle objectForInfoDictionaryKey:WBVersionCheckURL];\n\t\t\n\t\t_defaults=[NSUserDefaults standardUserDefaults];\n\t\t\n\t\tif (_productLocalVersion.length>0)\n\t\t{\n\t\t\tNSDate * tCurrentDate=[NSDate date];\n\t\t\t\n\t\t\tif ([_defaults boolForKey:WBSkipRemoteAvailableVersionKey]==NO)\n\t\t\t{\n\t\t\t\tNSString * tRemoteVersion=[_defaults objectForKey:WBRemoteAvailableVersionKey];\n\t\t\t\t\n\t\t\t\tif (tRemoteVersion!=nil)\n\t\t\t\t{\n\t\t\t\t\tif ([tRemoteVersion compare:_productLocalVersion options:NSNumericSearch]==NSOrderedDescending)\n\t\t\t\t\t{\n\t\t\t\t\t\tNSDate * tLastReminderDate=[_defaults objectForKey:WBLastReminderDateKey];\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (tLastReminderDate==nil || [tCurrentDate timeIntervalSinceDate:tLastReminderDate]>WBREMOTEVERSIONREMINDER_PERIOD)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tNSString * tDownloadURL=[_defaults objectForKey:WBRemoteAvailableVersionURLKey];\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif (tDownloadURL!=nil)\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t// Display dialog\n\t\t\t\t\t\t\t\t\n                                NSAlert * tAlert=[NSAlert new];\n                                tAlert.messageText=[NSString stringWithFormat:NSLocalizedStringFromTable(@\"A new version of %@ is available.\",@\"RemoteCheck\",@\"\"),_productName];\n                                tAlert.informativeText=[NSString stringWithFormat:NSLocalizedStringFromTable(@\"%@ %@ is now available - you have %@. Would you like to download it now?\",@\"RemoteCheck\",@\"\"),_productName,tRemoteVersion,_productLocalVersion];\n                                \n                                [tAlert addButtonWithTitle:NSLocalizedStringFromTable(@\"Download\",@\"RemoteCheck\",@\"\")];\n                                [tAlert addButtonWithTitle:NSLocalizedStringFromTable(@\"Skip This Version\",@\"RemoteCheck\",@\"\")];\n                                [tAlert addButtonWithTitle:NSLocalizedStringFromTable(@\"Remind Me Later\",@\"RemoteCheck\",@\"\")];\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tNSModalResponse tResponse=[tAlert runModal];\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tswitch(tResponse)\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tcase NSAlertFirstButtonReturn:\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t// Download\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t[[NSWorkspace sharedWorkspace] openURL:[NSURL URLWithString:tDownloadURL]];\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t[_defaults setObject:[NSDate date] forKey:WBLastReminderDateKey];\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tcase NSAlertSecondButtonReturn:\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t// Skip\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t[_defaults setBool:YES forKey:WBSkipRemoteAvailableVersionKey];\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tcase NSAlertThirdButtonReturn:\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t// Remind me later\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t[_defaults setObject:[NSDate date] forKey:WBLastReminderDateKey];\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\n\t\t\tif (_productCheckURL.length>0)\n\t\t\t{\n\t\t\t\tNSUserDefaults *defaults = _defaults;\n                \n                // Check whether it's time to check for a newer version\n\t\t\t\t\n\t\t\t\tBOOL tCheckEnabled=[defaults boolForKey:WBRemoteCheckEnabledKey];\n\t\t\t\t\n\t\t\t\tif (tCheckEnabled==YES)\n\t\t\t\t{\n\t\t\t\t\tNSDate * tLastCheckDate=[defaults objectForKey:WBRemoteLastCheckDateKey];\n\t\t\t\t\t\n                    if (tLastCheckDate!=nil && ([tCurrentDate timeIntervalSinceDate:tLastCheckDate]<=WBREMOTEVERSIONCHECK_PERIOD))\n                        return self;\n                    \n                    // Perform Remote Check\n                    \n                    NSURLSessionConfiguration * tURLSessionConfiguration = [NSURLSessionConfiguration ephemeralSessionConfiguration];\n                    NSURLSession * tURLSession = [NSURLSession sessionWithConfiguration:tURLSessionConfiguration];\n                    \n                    NSURLSessionDataTask * tDataTask = [tURLSession dataTaskWithURL:[NSURL URLWithString:_productCheckURL] completionHandler:^(NSData *bData, NSURLResponse *bResponse, NSError *bError) {\n                        \n                        if (bData==nil)\n                        {\n                            NSLog(@\"Unable to retrieve last available remove version: %@.\", bError);\n                            \n                            return;\n                        }\n                        \n                        if (bResponse!=nil)\n                        {\n                            NSHTTPURLResponse * tHTTPResponse=(NSHTTPURLResponse *)bResponse;\n                            \n                            switch (tHTTPResponse.statusCode)\n                            {\n                                case 200:\n                                    break;\n                                default:\n                                    NSLog(@\"HTTP Response status: %ld\", tHTTPResponse.statusCode);\n                                    break;\n                            }\n                        }\n                        \n                        [defaults setObject:[NSDate date] forKey:WBRemoteLastCheckDateKey];\n                        \n                        NSPropertyListFormat tPropertyListFormat;\n                        NSDictionary * tDictionary=[NSPropertyListSerialization propertyListWithData:bData options:NSPropertyListImmutable format:&tPropertyListFormat error:NULL];\n                        \n                        if (tDictionary==nil)\n                        {\n                            NSLog(@\"Unable to deserialize downloaded data into a property list.\");\n                            return;\n                        }\n                        \n                        NSString * tRemoteVersion=tDictionary[WBRemoteAvailableVersionKey];\n                        \n                        NSString * tLocalRemoteVersion=[defaults objectForKey:WBRemoteAvailableVersionKey];\n                        \n                        if (tLocalRemoteVersion!=nil && [tRemoteVersion compare:tLocalRemoteVersion options:NSNumericSearch]!=NSOrderedDescending)\n                        {\n                            return;\n                        }\n                        \n                        if (self->_productLocalVersion!=nil)\n                        {\n                            if ([tRemoteVersion compare:self->_productLocalVersion options:NSNumericSearch]==NSOrderedDescending)\n                            {\n                                NSString * tRemoteURL=[tDictionary objectForKey:WBRemoteAvailableVersionURLKey];\n                                \n                                if (tRemoteURL!=nil)\n                                {\n                                    [defaults setObject:tRemoteURL forKey:WBRemoteAvailableVersionURLKey];\n                                    [defaults setObject:tRemoteVersion forKey:WBRemoteAvailableVersionKey];\n                                    [defaults setBool:NO forKey:WBSkipRemoteAvailableVersionKey];\n                                }\n                            }\n                        }\n                    }];\n                    \n                    if (tDataTask==nil)\n                    {\n                        NSLog(@\"Could not allocate NSURLSessionDataTask\");\n                    }\n                    else\n                    {\n                        [tDataTask resume];\n                    }\n                }\n\t\t\t}\n\t\t}\n\t}\n\t\n\treturn self;\n}\n\n#pragma mark -\n\n- (BOOL)isCheckEnabled\n{\n\tid tObject=[_defaults objectForKey:WBRemoteCheckEnabledKey];\n\t\n\tif (tObject==nil || [_defaults boolForKey:WBRemoteCheckEnabledKey]==YES)\n\t\treturn YES;\n\t\n\treturn NO;\n}\n\n- (void)setCheckEnabled:(BOOL)inBool\n{\n\t[_defaults setBool:inBool forKey:WBRemoteCheckEnabledKey];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/app_unexpectedly_Prefix.pch",
    "content": "/*\n Copyright (c) 2020-2024, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#ifdef __OBJC__\n\n    #import <Cocoa/Cocoa.h>\n\n    #define CUIAppkitMinimumPushButtonWidth    82.0\n\n    // Foundation Extensions\n\n    #import \"NSArray+WBExtensions.h\"\n\n    // AppKit Extensions\n\n    #import \"NSResponder+Appearance.h\"\n\n    #import \"NSColor+LabelColor.h\"\n\n\n#if __MAC_OS_X_VERSION_MAX_ALLOWED >= 101400\n\n    #define WBControlStateValueOn NSControlStateValueOn\n    #define WBControlStateValueOff NSControlStateValueOff\n\n    #define WBPasteboardTypeString NSPasteboardTypeString\n#else\n\n    #define WBControlStateValueOn NSOnState\n    #define WBControlStateValueOff NSOffState\n\n    #define WBPasteboardTypeString NSStringPboardType\n\n    @protocol NSFontChanging <NSObject>\n    @end\n\n    @protocol NSMenuItemValidation <NSObject>\n    @end\n#endif\n\n#endif\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIApplicationIconView.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#import \"CUIWatchPart.h\"\n\n@interface CUIApplicationIconView : NSView\n\n@property (nonatomic) CUIWatchRenderingMode renderingMode;\n\n- (NSData *)PNGData;\n\n@end\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIApplicationIconView.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIApplicationIconView.h\"\n\n#import \"CUIWatchGear.h\"\n#import \"CUIWatchBridge.h\"\n#import \"CUIWatchJewel.h\"\n#import \"CUIWatchScrew.h\"\n#import \"CUIWatchAxis.h\"\n\nstatic void CGPathToBezierPathApplierFunction(void *info, const CGPathElement *element) {\n    NSBezierPath *bezierPath = (__bridge NSBezierPath *)info;\n    CGPoint *points = element->points;\n    switch(element->type) {\n        case kCGPathElementMoveToPoint: [bezierPath moveToPoint:points[0]]; break;\n        case kCGPathElementAddLineToPoint: [bezierPath lineToPoint:points[0]]; break;\n        case kCGPathElementAddQuadCurveToPoint: {\n            NSPoint qp0 = bezierPath.currentPoint, qp1 = points[0], qp2 = points[1], cp1, cp2;\n            CGFloat m = (2.0 / 3.0);\n            cp1.x = (qp0.x + ((qp1.x - qp0.x) * m));\n            cp1.y = (qp0.y + ((qp1.y - qp0.y) * m));\n            cp2.x = (qp2.x + ((qp1.x - qp2.x) * m));\n            cp2.y = (qp2.y + ((qp1.y - qp2.y) * m));\n            [bezierPath curveToPoint:qp2 controlPoint1:cp1 controlPoint2:cp2];\n            break;\n        }\n        case kCGPathElementAddCurveToPoint: [bezierPath curveToPoint:points[2] controlPoint1:points[0] controlPoint2:points[1]]; break;\n        case kCGPathElementCloseSubpath: [bezierPath closePath]; break;\n    }\n}\n\n@interface NSBezierPath (BezierPathWithCGPath)\n+ (NSBezierPath *)JNS_bezierPathWithCGPath:(CGPathRef)cgPath; //prefixed as Apple may add bezierPathWithCGPath: method someday\n@end\n\n@implementation NSBezierPath (BezierPathWithCGPath)\n+ (NSBezierPath *)JNS_bezierPathWithCGPath:(CGPathRef)cgPath {\n    NSBezierPath *bezierPath = [NSBezierPath bezierPath];\n    CGPathApply(cgPath, (__bridge void *)bezierPath, CGPathToBezierPathApplierFunction);\n    return bezierPath;\n}\n@end\n\n@interface CUIApplicationIconView ()\n{\n    CGFloat _ratio;\n    \n    NSTimer * _timer;\n    \n    CGFloat _rotation;\n    \n    NSMutableArray<CUIWatchPart *> * _parts;\n}\n\n@end\n\n@implementation CUIApplicationIconView\n\n- (void)awakeFromNib\n{\n    \n    \n}\n\n#pragma mark -\n\n\n- (NSBezierPath *)centerBridgePath\n{\n    NSRect tBounds=self.bounds;\n    \n    NSPoint tCenter=NSMakePoint(NSMidX(tBounds),(0.6*NSHeight(tBounds)));\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*102, tCenter.y-_ratio*8)\n                                            radius:_ratio*90\n                                        startAngle:10\n                                          endAngle:65\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*57, tCenter.y+_ratio*98)\n                                            radius:_ratio*25\n                                        startAngle:250\n                                          endAngle:200\n                                         clockwise:YES];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*95, tCenter.y+_ratio*85)\n                                            radius:_ratio*15\n                                        startAngle:12\n                                          endAngle:246\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*105, tCenter.y+_ratio*56)\n                                            radius:_ratio*15\n                                        startAngle:70\n                                          endAngle:-43\n                                         clockwise:YES];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*62, tCenter.y+_ratio*25)\n                                            radius:_ratio*38\n                                        startAngle:149\n                                          endAngle:180\n                                         clockwise:NO];\n    \n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*136, tCenter.y+_ratio*25)\n                                            radius:_ratio*36\n                                        startAngle:0\n                                          endAngle:-120\n                                         clockwise:YES];\n    \n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x-_ratio*166, tCenter.y-_ratio*30)];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*156, tCenter.y-_ratio*75)\n                                            radius:_ratio*36\n                                        startAngle:65\n                                          endAngle:-20\n                                         clockwise:YES];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*144, tCenter.y+_ratio*20)\n                                            radius:_ratio*120\n                                        startAngle:-70\n                                          endAngle:-20\n                                         clockwise:NO];\n    \n    \n    \n    \n    [tBezierPath closePath];\n    \n    NSBezierPath * tHolePath=[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(tCenter.x-_ratio*86, tCenter.y-_ratio*30,_ratio*60,_ratio*80)];\n    \n    [tBezierPath appendBezierPath:tHolePath];\n    \n    tBezierPath.windingRule=NSWindingRuleEvenOdd;\n    \n    return tBezierPath;\n}\n\n- (NSBezierPath *)leftBridge\n{\n    NSRect tBounds=self.bounds;\n    \n    NSPoint tCenter=NSMakePoint(NSMidX(tBounds),(0.6*NSHeight(tBounds)));\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(tCenter.x-_ratio*320,tCenter.y-_ratio*230)];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*53, tCenter.y-_ratio*96)\n                                            radius:_ratio*210\n                                        startAngle:220\n                                          endAngle:150\n                                         clockwise:YES];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*136, tCenter.y+_ratio*25)\n                                            radius:_ratio*15\n                                        startAngle:320\n                                          endAngle:160\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*237, tCenter.y+_ratio*80)\n                                            radius:_ratio*100\n                                        startAngle:-30\n                                          endAngle:180\n                                         clockwise:YES];\n    \n    \n    \n    [tBezierPath closePath];\n    \n    \n    return tBezierPath;\n}\n\n- (NSBezierPath *)topBridgePath\n{\n    NSRect tBounds=self.bounds;\n    \n    NSPoint tCenter=NSMakePoint(NSMidX(tBounds),(0.6*NSHeight(tBounds)));\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(tCenter.x+_ratio*170,tCenter.y+_ratio*80)];\n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*155,tCenter.y+_ratio*45)];\n    \n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*40, tCenter.y+_ratio*55)\n                                            radius:_ratio*70\n                                        startAngle:20\n                                          endAngle:65\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x, tCenter.y+_ratio*120)\n                                            radius:_ratio*70\n                                        startAngle:0\n                                          endAngle:120\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*78, tCenter.y+_ratio*126)\n                                            radius:_ratio*70\n                                        startAngle:55\n                                          endAngle:120\n                                         clockwise:NO];\n    \n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x-_ratio*40,tCenter.y+_ratio*310)];\n    \n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*40,tCenter.y+_ratio*310)];\n    \n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*180,tCenter.y+_ratio*85)];\n    \n    [tBezierPath closePath];\n    \n    return tBezierPath;\n}\n\n- (NSBezierPath *)rightBridgePath\n{\n    NSRect tBounds=self.bounds;\n    \n    NSPoint tCenter=NSMakePoint(NSMidX(tBounds),(0.6*NSHeight(tBounds)));\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(tCenter.x+_ratio*230,tCenter.y-_ratio*50)];\n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*180,tCenter.y+_ratio*100)];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*165,tCenter.y)\n                                          radius:_ratio*124\n                                      startAngle:90\n                                        endAngle:166\n                                       clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*28,tCenter.y+_ratio*38)\n                                            radius:_ratio*18\n                                        startAngle:340\n                                          endAngle:240\n                                         clockwise:YES];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x,tCenter.y)\n                                            radius:_ratio*29\n                                        startAngle:50\n                                          endAngle:170\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*126, tCenter.y+_ratio*25)\n                                            radius:_ratio*100\n                                        startAngle:350\n                                          endAngle:268\n                                         clockwise:YES];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*137, tCenter.y-_ratio*86)\n                                            radius:_ratio*10\n                                        startAngle:90\n                                          endAngle:180\n                                         clockwise:NO];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*53, tCenter.y-_ratio*86)\n                                            radius:_ratio*200\n                                        startAngle:180\n                                          endAngle:280\n                                         clockwise:NO];\n    \n    [tBezierPath closePath];\n    \n    \n    NSBezierPath * tHolePath=[NSBezierPath bezierPath];\n    \n   \n    \n    [tHolePath moveToPoint:NSMakePoint(tCenter.x+_ratio*168,tCenter.y+_ratio*30)];\n    \n    [tHolePath lineToPoint:NSMakePoint(tCenter.x+_ratio*158,tCenter.y+_ratio*30)];\n    \n    [tHolePath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*112,tCenter.y)\n                                            radius:_ratio*51\n                                        startAngle:60\n                                          endAngle:194\n                                         clockwise:NO];\n    \n    [tHolePath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*38, tCenter.y-_ratio*110)\n                                            radius:_ratio*100\n                                        startAngle:77\n                                          endAngle:35\n                                         clockwise:NO];\n    \n    [tHolePath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x+_ratio*112,tCenter.y)\n                                            radius:_ratio*51\n                                        startAngle:278\n                                          endAngle:330\n                                         clockwise:NO];\n    \n    [tHolePath lineToPoint:NSMakePoint(tCenter.x+_ratio*168,tCenter.y-_ratio*25)];\n    \n    [tHolePath closePath];\n    \n    [tHolePath appendBezierPathWithOvalInRect:NSMakeRect(tCenter.x-_ratio*9,tCenter.y-_ratio*8,_ratio*18.0,_ratio*18.0)];\n    \n    [tBezierPath appendBezierPath:tHolePath];\n    \n    tBezierPath.windingRule=NSWindingRuleEvenOdd;\n    \n    return tBezierPath;\n}\n\n- (void)viewDidMoveToWindow\n{\n    if (self.window==nil)\n    {\n        [_timer invalidate];\n        _timer=nil;\n        \n        return;\n    }\n    \n    NSRect tBounds=self.bounds;\n    \n    CGFloat tIconSize=NSWidth(tBounds);\n    \n    _ratio=NSWidth(tBounds)/1024.0;\n    \n    NSPoint tCenter=NSMakePoint(NSMidX(tBounds),(0.6*NSHeight(tBounds)));\n    \n    \n    _parts=[NSMutableArray array];\n    \n    \n    \n    CUIWatchGear * tGear5_60_Template=[CUIWatchGear new];\n    \n    // 5 branches / 60 teeth\n    \n    tGear5_60_Template.outsideRadius=_ratio*59;\n    tGear5_60_Template.axisRadius=_ratio*3;\n    tGear5_60_Template.innerRadius=_ratio*20;\n    tGear5_60_Template.innerBranchesCount=5;\n    tGear5_60_Template.innerBranchThickness=_ratio*7.0;\n    \n    tGear5_60_Template.bezelRadius=_ratio*50;\n    \n    tGear5_60_Template.numberOfTeeth=60;\n    \n    tGear5_60_Template.wholeDepth=_ratio*6;\n    tGear5_60_Template.addendum=_ratio*2;\n    \n    tGear5_60_Template.circularToothThickness=_ratio*4;\n    tGear5_60_Template.toothTop=_ratio*2;\n    \n    tGear5_60_Template.rotation=10.0;\n    \n    tGear5_60_Template.gradient=[[NSGradient alloc] initWithColors:@[[NSColor colorWithDeviceRed:255/255.0 green:249/255.0 blue:231/255.0 alpha:1.0],\n                                                                     [NSColor colorWithDeviceRed:245/255.0 green:242/255.0 blue:217/255.0 alpha:1.0],\n                                                                     ]];\n    \n    tGear5_60_Template.borderColor=[NSColor colorWithDeviceWhite:0.0 alpha:0.25];\n    \n    // 3 branches / 0 teeth\n    \n    CUIWatchGear * tGear3_0=[CUIWatchGear new];\n    \n    tGear3_0.outsideRadius=_ratio*95;\n    tGear3_0.axisRadius=_ratio*8;\n    tGear3_0.innerRadius=_ratio*20;\n    tGear3_0.innerBranchesCount=3;\n    \n    if (tIconSize>64.0)\n    {\n        tGear3_0.innerBranchThickness=_ratio*10.0;\n    }\n    else\n    {\n        tGear3_0.innerBranchThickness=_ratio*30.0;\n    }\n    \n    tGear3_0.gradient=[[NSGradient alloc] initWithColors:@[[NSColor colorWithDeviceRed:227/255.0 green:173/255.0 blue:102/255.0 alpha:1.0],\n                                                                     [NSColor colorWithDeviceRed:246/255.0 green:187/255.0 blue:59/255.0 alpha:1.0],\n                                                                     ]];\n    \n    // 0 branches / 8 teeth\n    \n    CUIWatchGear * tGear0_8=[CUIWatchGear new];\n    \n    tGear0_8.outsideRadius=_ratio*10;\n    tGear0_8.axisRadius=_ratio*2;\n    tGear0_8.innerBranchesCount=0;\n    \n    tGear0_8.numberOfTeeth=8;\n    \n    tGear0_8.wholeDepth=_ratio*5;\n    \n    tGear0_8.circularToothThickness=_ratio*3;\n    tGear0_8.toothTop=_ratio*2;\n    \n    tGear0_8.addendum=_ratio*4;\n    \n    tGear0_8.gradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.8 alpha:1.0]\n                                                    endingColor:[NSColor colorWithDeviceWhite:0.5 alpha:1.0]];\n    \n    \n    tGear0_8.borderColor=[NSColor colorWithDeviceWhite:0.6 alpha:0.5];\n    \n    // 0 branches / 30 teeth\n    \n    CUIWatchGear * tGear0_30=[CUIWatchGear new];\n    \n    tGear0_30.outsideRadius=_ratio*46;\n    tGear0_30.axisRadius=_ratio*13;\n    tGear0_30.innerBranchesCount=0;\n    \n    if (tIconSize>128.0)\n    {\n        tGear0_30.bezelRadius=_ratio*32;\n        tGear0_30.numberOfTeeth=30;\n    }\n    \n    tGear0_30.wholeDepth=_ratio*9.0;\n    tGear0_30.addendum=_ratio*5.0;\n    tGear0_30.toothTop=_ratio*3;\n    tGear0_30.circularToothThickness=_ratio*5.0;\n    \n    tGear0_30.gradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.8 alpha:1.0]\n                                                    endingColor:[NSColor colorWithDeviceWhite:0.5 alpha:1.0]];\n    \n    // 0 branches / 60 teeth\n    \n    CUIWatchGear * tGear0_60=[CUIWatchGear new];\n    \n    tGear0_60.outsideRadius=_ratio*94;\n    tGear0_60.axisRadius=_ratio*13;\n    tGear0_60.innerBranchesCount=0;\n    \n    if (tIconSize>128.0)\n    {\n        tGear0_60.numberOfTeeth=60;\n    }\n    \n    tGear0_60.circularToothThickness=_ratio*5;\n    tGear0_60.wholeDepth=_ratio*10;\n    tGear0_60.addendum=_ratio*4;\n    tGear0_60.toothTop=_ratio*3;\n    \n    tGear0_60.gradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.8 alpha:1.0]\n                                                     endingColor:[NSColor colorWithDeviceWhite:0.3 alpha:1.0]];\n    \n    // 4 branches / 0 teeth\n    \n    CUIWatchGear * tGear4_0=[CUIWatchGear new];\n    \n    tGear4_0.outsideRadius=_ratio*45;\n    tGear4_0.axisRadius=_ratio*3;\n    tGear4_0.innerRadius=_ratio*10;\n    tGear4_0.innerBranchesCount=4;\n    \n    \n    if (tIconSize>128.0)\n    {\n        tGear4_0.innerBranchThickness=7*_ratio;\n    }\n    else\n    {\n        tGear4_0.innerBranchThickness=14*_ratio;\n    }\n    \n    tGear4_0.numberOfTeeth=0;\n    \n    tGear4_0.gradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.8 alpha:1.0]\n                                                     endingColor:[NSColor colorWithDeviceWhite:0.3 alpha:1.0]];\n    \n    \n    // Screw\n    \n    CUIWatchScrew * tWatchScrew_Template=[CUIWatchScrew new];\n    tWatchScrew_Template.radius=_ratio*14;\n    \n    // Place gears\n    \n    if (tIconSize>32.0)\n    {\n        tGear4_0.center=NSMakePoint(tCenter.x-_ratio*75, tCenter.y+_ratio*140);\n    \n        [_parts addObject:tGear4_0];\n    }\n    \n    CUIWatchAxis * tAxis1=[CUIWatchAxis new];\n    tAxis1.center=NSMakePoint(tCenter.x-_ratio*75, tCenter.y+_ratio*140);\n    tAxis1.radius=_ratio*6.0;\n    \n    [_parts addObject:tAxis1];\n    \n    // Center bridge\n    \n    if (tIconSize>64)\n    {\n        CUIWatchBridge * tCenterBridge=[CUIWatchBridge new];\n    \n        tCenterBridge.bezierPath=[self centerBridgePath];\n    \n        [_parts addObject:tCenterBridge];\n    \n        CUIWatchScrew * tCenterBridgeScrew1=[tWatchScrew_Template copy];\n        tCenterBridgeScrew1.radius=_ratio*10;\n        tCenterBridgeScrew1.rotation=-40;\n        tCenterBridgeScrew1.center=NSMakePoint(tCenter.x-_ratio*105, tCenter.y-_ratio*30);\n    \n        [_parts addObject:tCenterBridgeScrew1];\n    }\n    \n    if (tIconSize>128.0)\n    {\n        CUIWatchJewel * tCenterJewel=[CUIWatchJewel new];\n        tCenterJewel.center=NSMakePoint(tCenter.x-_ratio*95, tCenter.y+_ratio*85);\n        tCenterJewel.radius=_ratio*4.0;\n    \n        [_parts addObject:tCenterJewel];\n    }\n    \n    if (tIconSize>64.0)\n    {\n        CUIWatchGear * tGearYellow1=[tGear5_60_Template copy];\n    \n        tGearYellow1.center=NSMakePoint(tCenter.x+_ratio*28, tCenter.y+_ratio*60);\n        tGearYellow1.ticker = ^CGFloat{\n        \n            return 1.0/60;\n        \n        };\n    \n        [_parts addObject:tGearYellow1];\n    }\n    \n    tGear0_8.center=NSMakePoint(tCenter.x+_ratio*28, tCenter.y+_ratio*60);\n    tGear0_8.ticker = ^CGFloat{\n        \n        return 1.0/60;\n        \n    };\n    \n    [_parts addObject:tGear0_8];\n    \n    \n    CUIWatchGear * tGearOrange=tGear3_0;\n    \n    tGearOrange.center=NSMakePoint(tCenter.x-_ratio*136, tCenter.y+_ratio*25);\n    tGearOrange.ticker = ^CGFloat{\n        \n        return 0.1;\n    };\n    \n    [_parts addObject:tGearOrange];\n    \n    \n    CUIWatchGear * tGearYellow2=[tGear5_60_Template copy];\n    \n    tGearYellow2.center=NSMakePoint(tCenter.x, tCenter.y);\n    tGearYellow2.ticker = ^CGFloat{\n        \n        return -1.0/3600;\n        \n    };\n    \n    [_parts addObject:tGearYellow2];\n    \n    \n    CUIWatchGear * tGearYellow3=[tGear5_60_Template copy];\n    \n    tGearYellow3.center=NSMakePoint(tCenter.x, tCenter.y+_ratio*120);\n    tGearYellow3.ticker = ^CGFloat{\n        \n        return -1.0/3600;\n        \n    };\n    \n    [_parts addObject:tGearYellow3];\n    \n    CUIWatchAxis * tAxix3=[CUIWatchAxis new];\n    tAxix3.center=NSMakePoint(tCenter.x, tCenter.y+_ratio*120);\n    tAxix3.radius=_ratio*4.0;\n    \n    [_parts addObject:tAxix3];\n    \n    tGear0_8.center=NSMakePoint(tCenter.x+_ratio*28, tCenter.y+_ratio*60);\n    \n    [_parts addObject:tGear0_8];\n    \n    // Top Bridge\n    \n    CUIWatchBridge * tTopBridge=[CUIWatchBridge new];\n    \n    tTopBridge.bezierPath=[self topBridgePath];\n    \n    [_parts addObject:tTopBridge];\n    \n    CUIWatchScrew * tTopBridgeScrew1=[tWatchScrew_Template copy];\n    tTopBridgeScrew1.center=NSMakePoint(tCenter.x+_ratio, tCenter.y+_ratio*230);\n    tTopBridgeScrew1.rotation=12.0;\n    \n    [_parts addObject:tTopBridgeScrew1];\n    \n    // Left Bridge\n    \n    \n    CUIWatchBridge * tLeftBridge=[CUIWatchBridge new];\n    \n    tLeftBridge.bezierPath=[self leftBridge];\n    \n    [_parts addObject:tLeftBridge];\n    \n    CUIWatchScrew * tLeftBridgeScrew1=[tWatchScrew_Template copy];\n    tLeftBridgeScrew1.center=NSMakePoint(tCenter.x-_ratio*210, tCenter.y-_ratio*80);\n    \n    [_parts addObject:tLeftBridgeScrew1];\n    \n    \n    if (tIconSize>128.0)\n    {\n        CUIWatchJewel * tLeftJewel=[CUIWatchJewel new];\n        tLeftJewel.center=NSMakePoint(tCenter.x-_ratio*136, tCenter.y+_ratio*25);\n        tLeftJewel.radius=_ratio*5.0;\n        \n        [_parts addObject:tLeftJewel];\n    }\n    \n    // Right bridge\n    \n    CUIWatchBridge * tRightBridge=[CUIWatchBridge new];\n    \n    tRightBridge.bezierPath=[self rightBridgePath];\n    \n    [_parts addObject:tRightBridge];\n    \n    \n    CUIWatchScrew * tRightBridgeScrew1=[tWatchScrew_Template copy];\n    tRightBridgeScrew1.center=NSMakePoint(tCenter.x+_ratio*140, tCenter.y+_ratio*80);\n    tRightBridgeScrew1.rotation=95;\n    \n    [_parts addObject:tRightBridgeScrew1];\n    \n    CUIWatchScrew * tRightBridgeScrew2=[tWatchScrew_Template copy];\n    tRightBridgeScrew2.center=NSMakePoint(tCenter.x-_ratio*115, tCenter.y-_ratio*105);\n    tRightBridgeScrew2.rotation=15;\n    \n    [_parts addObject:tRightBridgeScrew2];\n    \n    CUIWatchGear * tGearGray60=tGear0_60;\n    \n    tGearGray60.center=NSMakePoint(tCenter.x+_ratio*38, tCenter.y-_ratio*110);\n    tGearGray60.ticker = ^CGFloat{\n        \n        return 0.25;\n    };\n    \n    [_parts addObject:tGearGray60];\n    \n    \n    CUIWatchScrew * tRightBridgeScrew3=[tWatchScrew_Template copy];\n    tRightBridgeScrew3.center=NSMakePoint(tCenter.x+_ratio*38, tCenter.y-_ratio*110);\n    tRightBridgeScrew3.rotation=-35;\n    \n    [_parts addObject:tRightBridgeScrew3];\n    \n    \n    CUIWatchGear * tGearGray30=tGear0_30;\n    \n    tGearGray30.center=NSMakePoint(tCenter.x+_ratio*112, tCenter.y);\n    tGearGray30.rotation=6;\n    tGearGray30.ticker = ^CGFloat{\n        \n        return -0.5;\n    };\n    \n    [_parts addObject:tGearGray30];\n    \n    CUIWatchScrew * tRightBridgeScrew4=[tWatchScrew_Template copy];\n    tRightBridgeScrew4.center=NSMakePoint(tCenter.x+_ratio*112, tCenter.y);\n    tRightBridgeScrew4.rotation=-35;\n    \n    [_parts addObject:tRightBridgeScrew4];\n    \n    \n    CUIWatchAxis * tAxix2=[CUIWatchAxis new];\n    tAxix2.center=NSMakePoint(tCenter.x, tCenter.y);\n    tAxix2.radius=_ratio*6.0;\n    \n    [_parts addObject:tAxix2];\n    \n    \n    \n    \n    \n    \n    \n    \n    \n    _timer=[NSTimer scheduledTimerWithTimeInterval:0.05 repeats:YES block:^(NSTimer * _Nonnull timer) {\n       \n        /*_rotation+=2.0;\n        \n        if (_rotation>360.0)\n            _rotation-=360.0;\n        */\n        [self setNeedsDisplay:YES];\n        \n    }];\n    \n    //self.renderingMode=CUIWatchRenderingModeWireframe;\n    \n}\n\n- (NSBezierPath *)roundedTrianglePathCenteredAt:(NSPoint)inCenter withBaseLength:(CGFloat)inLength radius:(CGFloat)inRadius\n{\n    CGFloat width=inLength,height=0.866025*inLength;\n    CGFloat tThirdOfHeight=height/3;\n    \n    CGPoint point1=CGPointMake(inCenter.x-width / 2, inCenter.y-tThirdOfHeight);\n    CGPoint point2=CGPointMake(inCenter.x, inCenter.y+2*tThirdOfHeight);\n    CGPoint point3=CGPointMake(inCenter.x+width / 2, inCenter.y-tThirdOfHeight);\n    \n    CGMutablePathRef tMutablePathRef=CGPathCreateMutable();\n    \n    CGPathMoveToPoint(tMutablePathRef, NULL, inCenter.x, inCenter.y-tThirdOfHeight);\n    CGPathAddArcToPoint(tMutablePathRef,NULL, point1.x,point1.y,point2.x,point2.y,inRadius);\n    CGPathAddArcToPoint(tMutablePathRef,NULL, point2.x,point2.y,point3.x,point3.y,inRadius);\n    CGPathAddArcToPoint(tMutablePathRef,NULL, point3.x,point3.y,point1.x,point1.y,inRadius);\n    \n    CGPathCloseSubpath(tMutablePathRef);\n    \n    return [NSBezierPath JNS_bezierPathWithCGPath:tMutablePathRef];\n}\n\n#pragma mark -\n\n- (void)setRenderingMode:(CUIWatchRenderingMode)inRenderingMode\n{\n    _renderingMode=inRenderingMode;\n    \n    for(CUIWatchPart * tPart in _parts)\n        tPart.renderingMode=inRenderingMode;\n    \n    [self setNeedsDisplay:YES];\n}\n\n- (void)drawRect:(NSRect)dirtyRect\n{\n    NSRect tBounds=self.bounds;\n    \n    CGFloat tIconSize=NSWidth(tBounds);\n    \n    /*[[NSColor windowBackgroundColor] set];\n    \n    NSRectFill(tBounds);\n    \n    [[NSColor lightGrayColor] set];\n    \n    NSFrameRect(tBounds);*/\n    \n    NSShadow *shadow=nil;\n    \n    NSPoint tCenter=NSMakePoint(NSMidX(tBounds),(0.41*NSHeight(tBounds)));\n    \n    NSBezierPath * tBezierPath=[self roundedTrianglePathCenteredAt:tCenter withBaseLength:_ratio*1096 radius:_ratio*100];\n    tBezierPath.lineWidth=1.0;\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        [tBezierPath stroke];\n    }\n    else\n    {\n        shadow = [NSShadow new];\n        shadow.shadowOffset = NSMakeSize(0, -10*_ratio);\n        shadow.shadowBlurRadius = _ratio*20;\n        shadow.shadowColor = [NSColor colorWithWhite:0 alpha:0.2];\n        \n        [NSGraphicsContext saveGraphicsState];\n        \n        [shadow set];\n        [[NSColor whiteColor] set];\n        \n        [tBezierPath fill];\n        \n        [NSGraphicsContext restoreGraphicsState];\n    \n        [[NSColor colorWithWhite:0.0 alpha:0.1] set];\n    \n        [tBezierPath stroke];\n    }\n    \n    tBezierPath=[self roundedTrianglePathCenteredAt:tCenter withBaseLength:_ratio*940 radius:_ratio*54];\n    \n    \n    NSGradient * tGradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.35 alpha:1.0]\n                                                         endingColor:[NSColor colorWithDeviceWhite:0.30 alpha:1.0]];\n    \n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        [tBezierPath stroke];\n    }\n    else\n    {\n        [tGradient drawInBezierPath:tBezierPath angle:90];\n    }\n    \n    /*[[NSColor blackColor] set];\n    \n    [tBezierPath fill];*/\n    \n    /*tBezierPath.lineWidth=_ratio*12.0;\n    \n    [[NSColor colorWithWhite:0.35 alpha:0.9] set];\n    \n    [tBezierPath stroke];*/\n    \n    \n    \n    //[tBezierPath fill];\n    \n    /*shadow = [NSShadow new];\n    shadow.shadowOffset = NSMakeSize(0, 10);\n    shadow.shadowBlurRadius =40;\n    shadow.shadowColor = [NSColor redColor];\n    \n    [NSGraphicsContext saveGraphicsState];\n    \n    [shadow set];\n    \n    */\n    \n    [NSGraphicsContext saveGraphicsState];\n    \n    tBezierPath=[self roundedTrianglePathCenteredAt:tCenter withBaseLength:_ratio*920 radius:_ratio*54];\n    \n    [tBezierPath setClip];\n    \n    for(CUIWatchPart * tPart in _parts)\n    {\n        if ([tPart isKindOfClass:CUIWatchGear.class]==YES)\n        {\n            [(CUIWatchGear *)tPart tick];\n        }\n        \n        [tPart draw];\n    }\n    \n    [NSGraphicsContext restoreGraphicsState];\n    \n    NSBezierPath * tClipPath=[NSBezierPath bezierPath];\n    \n    [tClipPath moveToPoint:NSMakePoint(NSMinX(tBounds),NSMinY(tBounds))];\n    [tClipPath lineToPoint:NSMakePoint(NSMaxX(tBounds),NSMinY(tBounds))];\n    [tClipPath lineToPoint:NSMakePoint(NSMaxX(tBounds),0.65*NSMaxY(tBounds))];\n    [tClipPath lineToPoint:NSMakePoint(NSMinX(tBounds),0.35*NSMaxY(tBounds))];\n    [tClipPath closePath];\n                                       \n    \n    [NSGraphicsContext saveGraphicsState];\n    \n    [tClipPath addClip];\n    \n    tBezierPath=[self roundedTrianglePathCenteredAt:tCenter withBaseLength:_ratio*940 radius:_ratio*54];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [NSGraphicsContext restoreGraphicsState];\n        \n        tBezierPath.lineWidth=_ratio*12.0;\n        \n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n        \n        tBezierPath.lineWidth=_ratio*1.0;\n        \n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n    }\n    else\n    {\n        tGradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceRed:254/255.0 green:227.0/255.0 blue:101.0/255.0 alpha:1.0]\n                                                         endingColor:[NSColor colorWithDeviceRed:255.0/255.0 green:212.0/255.0 blue:59.0/255.0 alpha:1.0]];\n\n    \n        [tGradient drawInBezierPath:tBezierPath angle:270];\n\n        [NSGraphicsContext restoreGraphicsState];\n        \n        \n        tBezierPath.lineWidth=_ratio*12.0;\n        \n        [[NSColor colorWithWhite:0.35 alpha:0.9] setStroke];\n        \n        [tBezierPath stroke];\n        \n        tBezierPath.lineWidth=_ratio*1.0;\n        \n        [[NSColor colorWithWhite:0.0 alpha:0.1] setStroke];\n        \n        [tBezierPath stroke];\n    }\n    \n    // !\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(tCenter.x-_ratio*29,tCenter.y+_ratio*83)];\n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x-_ratio*15,tCenter.y-_ratio*21)];\n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x,tCenter.y-_ratio*20)\n                                            radius:_ratio*15\n                                        startAngle:192\n                                          endAngle:348\n                                         clockwise:NO];\n    \n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*31,tCenter.y+_ratio*101)];\n    \n    [tBezierPath closePath];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n    }\n    else\n    {\n        shadow = [NSShadow new];\n        shadow.shadowOffset = NSMakeSize(0, -5*_ratio);\n        shadow.shadowBlurRadius =_ratio*5;\n        shadow.shadowColor = [NSColor colorWithDeviceWhite:0.2 alpha:0.6];\n        \n        [NSGraphicsContext saveGraphicsState];\n        \n        [shadow set];\n        \n        [[NSColor colorWithDeviceWhite:0.35 alpha:1.0] setFill];\n        \n        [tBezierPath fill];\n        \n        [NSGraphicsContext restoreGraphicsState];\n        \n        [[NSColor blackColor] set];\n        \n        [tBezierPath stroke];\n        \n        tGradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.40 alpha:1.0]\n                                                endingColor:[NSColor colorWithDeviceWhite:0.20 alpha:1.0]];\n        \n        \n        [tGradient drawInBezierPath:tBezierPath angle:270];\n    }\n    \n    CGFloat tDiskRadius=_ratio*51.0;\n    \n    \n    \n    tBezierPath=[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(tCenter.x-tDiskRadius,tCenter.y-tDiskRadius-_ratio*130,2*tDiskRadius,2*tDiskRadius)];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n    }\n    else\n    {\n        [NSGraphicsContext saveGraphicsState];\n        \n        [shadow set];\n        \n        [[NSColor colorWithDeviceWhite:0.35 alpha:1.0] setFill];\n        \n        [tBezierPath fill];\n        \n        [NSGraphicsContext restoreGraphicsState];\n        \n        tGradient=[[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.35 alpha:1.0]\n                                                endingColor:[NSColor colorWithDeviceWhite:0.15 alpha:1.0]];\n        \n        \n        [tGradient drawInBezierPath:tBezierPath angle:270];\n        \n        [[NSColor colorWithDeviceWhite:0.2 alpha:0.8] setFill];\n        \n        [tBezierPath fill];\n    }\n    \n    // Universal Key\n    \n    if (tIconSize>16.0)\n    {\n        NSBezierPath * tHandlePath=[NSBezierPath bezierPath];\n        \n        [tHandlePath moveToPoint:NSMakePoint(0, 20)];\n        [tHandlePath lineToPoint:NSMakePoint(711,20)];\n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(711, 0)\n                                                radius:20\n                                            startAngle:90 endAngle:0 clockwise:YES];\n        \n        [tHandlePath lineToPoint:NSMakePoint(731,-120)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(736, -120)\n                                                radius:5\n                                            startAngle:180 endAngle:270 clockwise:NO];\n        \n        [tHandlePath lineToPoint:NSMakePoint(786,-125)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(786, -120)\n                                                radius:5\n                                            startAngle:270 endAngle:0 clockwise:NO];\n        \n        [tHandlePath lineToPoint:NSMakePoint(791,135)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(786, 135)\n                                                radius:5\n                                            startAngle:0 endAngle:90 clockwise:NO];\n        \n        [tHandlePath lineToPoint:NSMakePoint(736,140)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(736, 135)\n                                                radius:5\n                                            startAngle:90 endAngle:180 clockwise:NO];\n        \n        \n        [tHandlePath lineToPoint:NSMakePoint(731,30)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(728, 30)\n                                                radius:3\n                                            startAngle:0 endAngle:225 clockwise:YES];\n        \n        [tHandlePath lineToPoint:NSMakePoint(711,40)];\n        \n        [tHandlePath lineToPoint:NSMakePoint(711,140)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(731, 140)\n                                                radius:20\n                                            startAngle:180 endAngle:90 clockwise:YES];\n        \n        [tHandlePath lineToPoint:NSMakePoint(791,160)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(791, 140)\n                                                radius:20\n                                            startAngle:90 endAngle:0 clockwise:YES];\n        \n        [tHandlePath lineToPoint:NSMakePoint(811,-125)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(791, -125)\n                                                radius:20\n                                            startAngle:0 endAngle:270 clockwise:YES];\n        \n        [tHandlePath lineToPoint:NSMakePoint(731,-145)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(731, -125)\n                                                radius:20\n                                            startAngle:270 endAngle:180 clockwise:YES];\n        \n        [tHandlePath lineToPoint:NSMakePoint(711,-5)];\n        \n        [tHandlePath appendBezierPathWithArcWithCenter:NSMakePoint(706, -5)\n                                                radius:5\n                                            startAngle:0 endAngle:90 clockwise:NO];\n        \n        [tHandlePath lineToPoint:NSMakePoint(0,0)];\n        \n        [tHandlePath closePath];\n        \n        NSAffineTransform * tAffineTransform=[NSAffineTransform transform];\n        \n        \n        \n        \n        [tAffineTransform scaleBy:_ratio];\n        [tAffineTransform translateXBy:180 yBy:352];\n        [tAffineTransform rotateByDegrees:17.0];\n        \n        [tHandlePath transformUsingAffineTransform:tAffineTransform];\n        \n        if (self.renderingMode==CUIWatchRenderingModeWireframe)\n        {\n            [[NSColor textColor] set];\n            \n            [tHandlePath stroke];\n        }\n        else\n        {\n        \n            shadow = [NSShadow new];\n            shadow.shadowOffset = NSMakeSize(0, -8*_ratio);\n            shadow.shadowBlurRadius =_ratio*10;\n            shadow.shadowColor = [NSColor colorWithDeviceWhite:0.3 alpha:0.65];\n            \n            [NSGraphicsContext saveGraphicsState];\n            \n            [shadow set];\n            \n            [[NSColor colorWithDeviceWhite:0.5 alpha:1.0] set];\n            \n            [tHandlePath fill];\n            \n            [NSGraphicsContext restoreGraphicsState];\n            \n            /*tGradient=[[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceWhite:0.55 alpha:0.5],0.0,\n                       [NSColor colorWithDeviceWhite:0.6 alpha:1.0],0.45,\n                       [NSColor colorWithDeviceWhite:0.90 alpha:1.0],0.5,\n                       [NSColor colorWithDeviceWhite:0.6 alpha:1.0],0.55,\n                       [NSColor colorWithDeviceWhite:0.75 alpha:1.0],1.0,nil];*/\n            \n            tHandlePath.lineWidth=1.0;\n            [[NSColor colorWithDeviceWhite:0.40 alpha:1.0] set];\n            \n            [tHandlePath stroke];\n            \n            \n             //[[NSColor colorWithDeviceWhite:0.4 alpha:1.0] setFill];\n            \n             //[tHandlePath fill];\n            \n            \n            \n            //[tGradient drawInBezierPath:tHandlePath angle:286.5];\n        }\n        \n            // Metal effect\n        \n        if (self.renderingMode!=CUIWatchRenderingModeWireframe)\n        {\n            [NSGraphicsContext saveGraphicsState];\n            \n            [tHandlePath addClip];\n            \n            NSBezierPath * tWhiteGlare=[NSBezierPath bezierPath];\n            \n            [tWhiteGlare moveToPoint:NSMakePoint(2, 10)];\n            [tWhiteGlare lineToPoint:NSMakePoint(711,10)];\n            [tWhiteGlare appendBezierPathWithArcWithCenter:NSMakePoint(711, 0)\n                                                    radius:10\n                                                startAngle:90 endAngle:0 clockwise:YES];\n            \n            [tWhiteGlare lineToPoint:NSMakePoint(721,-125)];\n            \n            [tWhiteGlare appendBezierPathWithArcWithCenter:NSMakePoint(731, -125)\n                                                    radius:10\n                                                startAngle:180 endAngle:270 clockwise:NO];\n            \n            [tWhiteGlare lineToPoint:NSMakePoint(791,-135)];\n            \n            [tWhiteGlare appendBezierPathWithArcWithCenter:NSMakePoint(791, -125)\n                                                    radius:10\n                                                startAngle:270 endAngle:0 clockwise:NO];\n            \n            [tWhiteGlare lineToPoint:NSMakePoint(801,140)];\n            \n            [tWhiteGlare appendBezierPathWithArcWithCenter:NSMakePoint(791, 140)\n                                                    radius:10\n                                                startAngle:0 endAngle:90 clockwise:NO];\n            \n            [tWhiteGlare lineToPoint:NSMakePoint(731,150)];\n            \n            [tWhiteGlare appendBezierPathWithArcWithCenter:NSMakePoint(731, 140)\n                                                    radius:10\n                                                startAngle:90 endAngle:180 clockwise:NO];\n            \n            \n            [tWhiteGlare lineToPoint:NSMakePoint(721,25)];\n            \n            \n            [tWhiteGlare transformUsingAffineTransform:tAffineTransform];\n            \n            [tWhiteGlare setLineWidth:18*_ratio];\n            \n            [[NSColor colorWithDeviceWhite:0.56 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [tWhiteGlare setLineWidth:16*_ratio];\n            \n            [[NSColor colorWithDeviceWhite:0.60 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [tWhiteGlare setLineWidth:14*_ratio];\n            \n            [[NSColor colorWithDeviceWhite:0.65 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [tWhiteGlare setLineWidth:11*_ratio];\n            \n            [[NSColor colorWithDeviceWhite:0.72 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [tWhiteGlare setLineWidth:5*_ratio];\n            \n            [[NSColor colorWithDeviceWhite:0.81 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [tWhiteGlare setLineWidth:3*_ratio];\n            \n            [[NSColor colorWithDeviceWhite:0.9 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [tWhiteGlare setLineWidth:1];\n            \n            [[NSColor colorWithDeviceWhite:1.0 alpha:1.0] set];\n            \n            [tWhiteGlare stroke];\n            \n            [NSGraphicsContext restoreGraphicsState];\n            \n                // Encoche\n            \n            tBezierPath=[NSBezierPath bezierPath];\n            \n            [tBezierPath moveToPoint:NSMakePoint(0+_ratio*590,10)];\n            \n            [tBezierPath lineToPoint:NSMakePoint(0+_ratio*605,10)];\n            \n            [tBezierPath transformUsingAffineTransform:tAffineTransform];\n            \n            tBezierPath.lineWidth=4.0*_ratio;\n            \n            [[NSColor colorWithDeviceWhite:0.0 alpha:0.55] setStroke];\n            \n            [tBezierPath stroke];\n        }\n            \n    }\n    \n    // Curl\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(tCenter.x-_ratio*310,tCenter.y+_ratio*1)];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*455,tCenter.y-_ratio*204)\n                                            radius:250*_ratio\n                                        startAngle:55\n                                          endAngle:30.5\n                                         clockwise:YES];\n    \n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*240,tCenter.y+_ratio*65)];\n    [tBezierPath lineToPoint:NSMakePoint(tCenter.x+_ratio*220,tCenter.y+_ratio*160)];\n    [tBezierPath closePath];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        [tBezierPath stroke];\n    }\n    else\n    {\n        shadow = [NSShadow new];\n        shadow.shadowOffset = NSMakeSize(0, 0);\n        shadow.shadowBlurRadius =_ratio*10;\n        shadow.shadowColor = [NSColor colorWithDeviceWhite:0.2 alpha:1.0];\n        \n        [NSGraphicsContext saveGraphicsState];\n        \n        [shadow set];\n        \n        \n        \n        \n        \n        [[NSColor colorWithDeviceWhite:0.5 alpha:1.0] setFill];\n        \n        [tBezierPath fill];\n        \n        [NSGraphicsContext restoreGraphicsState];\n        \n        tGradient=[[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithDeviceWhite:0.25 alpha:1.0],0.0,\n                   [NSColor colorWithDeviceWhite:0.5 alpha:1.0],0.25,\n                   [NSColor colorWithDeviceWhite:0.90 alpha:1.0],0.5,\n                   [NSColor colorWithDeviceWhite:0.5 alpha:1.0],0.75,\n                   [NSColor colorWithDeviceRed:67/255.0 green:66.0/255.0 blue:11.0/255.0 alpha:1.0],1.0,nil];\n        \n        \n        \n        [tGradient drawInBezierPath:tBezierPath angle:287];\n        \n        [[NSColor colorWithDeviceWhite:0.0 alpha:0.2] setStroke];\n        \n        [tBezierPath stroke];\n        \n        \n        [[NSColor colorWithDeviceWhite:0.2 alpha:0.08] setStroke];\n    }\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:NSMakePoint(tCenter.x-_ratio*450,tCenter.y-_ratio*202)\n                                            radius:250*_ratio\n                                        startAngle:54\n                                          endAngle:30.5\n                                         clockwise:YES];\n    \n    [tBezierPath stroke];\n    \n    if (tIconSize>128.0)\n    {\n        [NSBezierPath strokeLineFromPoint:NSMakePoint(tCenter.x-_ratio*28,tCenter.y+_ratio*85) toPoint:NSMakePoint(tCenter.x-_ratio*3,tCenter.y-_ratio*8)];\n    \n        [NSBezierPath strokeLineFromPoint:NSMakePoint(tCenter.x+_ratio*28,tCenter.y+_ratio*101) toPoint:NSMakePoint(tCenter.x+_ratio*62,tCenter.y+_ratio*12)];\n    \n        [NSBezierPath strokeLineFromPoint:NSMakePoint(tCenter.x+_ratio*233,tCenter.y+_ratio*64) toPoint:NSMakePoint(tCenter.x+_ratio*215,tCenter.y+_ratio*157)];\n    }\n}\n\n- (NSData *)PNGData\n{\n    NSBitmapImageRep * tBitmapImageRep=[self bitmapImageRepForCachingDisplayInRect:self.bounds];\n    \n    [self cacheDisplayInRect:self.bounds toBitmapImageRep:tBitmapImageRep];\n    \n    NSData * tData = [tBitmapImageRep representationUsingType:NSBitmapImageFileTypePNG\n                                                   properties:@{}];\n    \n    return tData;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchAxis.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchPart.h\"\n\n@interface CUIWatchAxis : CUIWatchPart\n\n    @property NSPoint center;\n\n    @property CGFloat radius;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchAxis.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchAxis.h\"\n\n@implementation CUIWatchAxis\n\n- (NSGradient *)gradient\n{\n    return [[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:1.0 alpha:1.0]\n                                         endingColor:[NSColor colorWithDeviceWhite:0.2 alpha:1.0]];\n}\n\n- (void)draw\n{\n    NSBezierPath * tBezierPath=[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(self.center.x-self.radius, self.center.y-self.radius, self.radius*2.0, self.radius*2.0)];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n        \n        return;\n    }\n    \n    [self.gradient drawInBezierPath:tBezierPath relativeCenterPosition:NSMakePoint(0.0,0.75)];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchBridge.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchPart.h\"\n\n@interface CUIWatchBridge : CUIWatchPart\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchBridge.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchBridge.h\"\n\n@implementation CUIWatchBridge\n\n- (NSGradient *)gradient\n{\n    return [[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.60 alpha:1.0]\n                                         endingColor:[NSColor colorWithDeviceWhite:0.50 alpha:1.0]];\n    \n    return [[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.75 alpha:1.0]\n                                         endingColor:[NSColor colorWithDeviceWhite:0.65 alpha:1.0]];\n}\n\n+ (NSImage *)brushedMetalTransparentTexture\n{\n    return [NSImage imageNamed:@\"brushed-alum\"];\n}\n\n\n- (void)draw\n{\n    NSBezierPath * tBezierPath=self.bezierPath;\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n        \n        return;\n    }\n    \n    NSShadow * tShadow = [NSShadow new];\n    tShadow.shadowOffset = NSMakeSize(0, 2);\n    tShadow.shadowBlurRadius = 20;\n    tShadow.shadowColor = [NSColor colorWithDeviceWhite:0.1 alpha:0.75];\n    \n    [NSGraphicsContext saveGraphicsState];\n    \n    [tShadow set];\n    \n    [[NSColor blackColor] set];\n    \n    [tBezierPath fill];\n    \n    [NSGraphicsContext restoreGraphicsState];\n    \n    [self.gradient drawInBezierPath:tBezierPath angle:270];\n    \n    [NSGraphicsContext saveGraphicsState];\n    \n    NSImage * tImage=[CUIWatchBridge brushedMetalTransparentTexture];\n    \n    \n    [tBezierPath addClip];\n    \n    [tImage drawAtPoint:tBezierPath.bounds.origin fromRect:NSZeroRect operation:NSCompositingOperationSourceOver fraction:1.0];\n    \n    [NSGraphicsContext restoreGraphicsState];\n    \n    \n    tBezierPath.lineWidth=1.0;\n    \n    [[NSColor colorWithDeviceWhite:0.0 alpha:0.3] setStroke];\n    \n    [tBezierPath stroke];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchDrawablePart.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n@protocol CUIWatchDrawablePart <NSObject>\n\n- (NSBezierPath *)bezierPath;\n\n- (NSGradient *)gradient;\n\n@optional\n\n- (void)draw;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchGear.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchPart.h\"\n\n@interface CUIWatchGear : CUIWatchPart <NSCopying>\n\n    @property NSPoint center;\n\n    @property CGFloat outsideRadius;\n\n    @property (nonatomic,readonly) CGFloat rootRadius;\n\n\n    @property NSUInteger numberOfTeeth;\n\n    @property CGFloat circularToothThickness;\n\n    @property CGFloat wholeDepth;\n\n    @property CGFloat addendum;\n\n    @property (nonatomic,readonly) CGFloat dedendum;\n\n    @property CGFloat toothTop;\n\n\n\n\n    @property CGFloat axisRadius;\n\n    @property CGFloat innerRadius;\n\n    @property CGFloat bezelRadius;\n\n\n    @property NSUInteger innerBranchesCount;\n\n    @property CGFloat innerBranchThickness;\n\n\n    @property CGFloat rotation;\n\n    @property (nonatomic, copy) CGFloat (^ticker)(void);\n\n- (void)tick;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchGear.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchGear.h\"\n\n\n@implementation CUIWatchGear\n\n- (CGFloat)rootRadius\n{\n    return self.outsideRadius-self.wholeDepth;\n}\n\n- (CGFloat)dedendum\n{\n    return self.wholeDepth-self.addendum;\n}\n\n- (NSBezierPath *)bezierPath\n{\n#define RADTODEG(a) (((a)*180.0)/M_PI)\n#define DEGTORAD(a) (((a)*M_PI)/180.0)\n    \n    CGFloat tNumberOfTeeth=self.numberOfTeeth;\n    CGFloat tRotationRad=DEGTORAD(self.rotation);\n    CGFloat tOutsideRadius=self.outsideRadius;\n    CGFloat tToothWidth=self.circularToothThickness;\n    CGFloat tWholeDepth=self.wholeDepth;\n    \n    NSRect tOuterRect=NSMakeRect(self.center.x-tOutsideRadius,self.center.y-tOutsideRadius,2*tOutsideRadius,2*tOutsideRadius);\n    \n    NSBezierPath * tBezierPath=nil;\n    \n    if (self.numberOfTeeth==0)\n    {\n        tBezierPath=[NSBezierPath bezierPathWithOvalInRect:tOuterRect];\n    }\n    else\n    {\n        if (self.toothTop>self.circularToothThickness)\n            self.toothTop=self.circularToothThickness;\n        \n        if (self.toothTop<0)\n            self.toothTop=0;\n        \n        CGFloat tRootRadius=self.rootRadius;\n        \n        CGFloat tBottomToothAngle=2.0*asin(tToothWidth*0.5/(tOutsideRadius-tWholeDepth));\n        \n        CGFloat tTopToothAngle=2.0*asin((tToothWidth*0.5-self.toothTop*0.5)/(tOutsideRadius));\n        \n        CGFloat tTopInterTeethAngle=(2.0*M_PI-tNumberOfTeeth*tTopToothAngle)/tNumberOfTeeth;\n        \n        CGFloat tBottomInterTeethAngle=(2.0*M_PI-tNumberOfTeeth*tBottomToothAngle)/tNumberOfTeeth;\n        \n        \n        \n        CGFloat tInvoluteAngle=atan(tToothWidth*0.5/(tOutsideRadius-self.addendum));\n        \n        CGFloat tInvoluteInterTeethAngle=(2.0*M_PI-tNumberOfTeeth*2.0*tInvoluteAngle)/tNumberOfTeeth;\n        \n        CGFloat tInvoluteRadius=sqrt((tOutsideRadius-self.addendum)*(tOutsideRadius-self.addendum)-(tToothWidth*tToothWidth*0.25));\n        \n        tBezierPath=[NSBezierPath bezierPath];\n        \n        \n        \n        \n        \n        [tBezierPath moveToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad-tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad-tTopToothAngle*0.5))];\n        \n        for(NSUInteger tIndex=0;tIndex<tNumberOfTeeth;tIndex++)\n        {\n            [tBezierPath lineToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad+tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad+tTopToothAngle*0.5))];\n            \n            [tBezierPath lineToPoint:NSMakePoint(self.center.x+tInvoluteRadius*cos(tRotationRad+tInvoluteAngle),self.center.y+tInvoluteRadius*sin(tRotationRad+tInvoluteAngle))];\n            \n            //break;\n            //[tBezierPath lineToPoint:NSMakePoint(self.center.x+tRootRadius*cos(tRotationRad+tBottomToothAngle*0.5),self.center.y+tRootRadius*sin(tRotationRad+tBottomToothAngle*0.5))];\n            \n            [tBezierPath appendBezierPathWithArcWithCenter:self.center\n                                                    radius:tRootRadius\n                                                startAngle:RADTODEG(tRotationRad+tBottomToothAngle*0.5)\n                                                  endAngle:RADTODEG(tRotationRad+tBottomToothAngle*0.5+tBottomInterTeethAngle)];\n            \n            \n            [tBezierPath lineToPoint:NSMakePoint(self.center.x+tInvoluteRadius*cos(tRotationRad+tInvoluteAngle+tInvoluteInterTeethAngle),self.center.y+tInvoluteRadius*sin(tRotationRad+tInvoluteAngle+tInvoluteInterTeethAngle))];\n            \n            \n            [tBezierPath lineToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad+tTopInterTeethAngle+tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad+tTopInterTeethAngle+tTopToothAngle*0.5))];\n            \n            tRotationRad+=(tTopToothAngle+tTopInterTeethAngle);\n        }\n        \n        \n        \n        /**/\n        \n        \n    }\n    \n    /*[tBezierPath moveToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad-tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad-tTopToothAngle*0.5))];\n     \n     for(NSUInteger tIndex=0;tIndex<tNumberOfTeeth;tIndex++)\n     {\n     //[tBezierPath lineToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad-tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad-tTopToothAngle*0.5))];\n     \n     [tBezierPath lineToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad+tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad+tTopToothAngle*0.5))];\n     \n     [tBezierPath lineToPoint:NSMakePoint(self.center.x+tRootRadius*cos(tRotationRad+tBottomToothAngle*0.5),self.center.y+tRootRadius*sin(tRotationRad+tBottomToothAngle*0.5))];\n     \n     [tBezierPath appendBezierPathWithArcWithCenter:self.center\n     radius:tRootRadius\n     startAngle:RADTODEG(tRotationRad+tBottomToothAngle*0.5)\n     endAngle:RADTODEG(tRotationRad+tBottomToothAngle*0.5+tBottomInterTeethAngle)];\n     \n     [tBezierPath lineToPoint:NSMakePoint(self.center.x+tOutsideRadius*cos(tRotationRad+tTopInterTeethAngle+tTopToothAngle*0.5),self.center.y+tOutsideRadius*sin(tRotationRad+tTopInterTeethAngle+tTopToothAngle*0.5))];\n     \n     tRotationRad+=(tTopToothAngle+tTopInterTeethAngle);\n     }*/\n    \n    /*[[NSColor redColor] set];\n     \n     [tBezierPath fill];\n     \n     return nil;*/\n    \n    [tBezierPath closePath];\n    \n    NSRect tInnerRect=NSMakeRect(self.center.x-self.axisRadius,self.center.y-self.axisRadius,2*self.axisRadius,2*self.axisRadius);\n    \n    NSBezierPath * tBezierPath2=[NSBezierPath bezierPathWithOvalInRect:tInnerRect];\n    \n    \n    NSUInteger tNumberOfHoles=self.innerBranchesCount;\n    CGFloat tBranchWidth=self.innerBranchThickness;\n    \n    CGFloat tRadius1=self.innerRadius;\n    CGFloat tRadius2=tOutsideRadius-(((tNumberOfTeeth==0) ? 0.0 : tWholeDepth)+tBranchWidth);\n    \n    CGFloat tAngle1=asin(tBranchWidth/(2.0*tRadius1));\n    CGFloat tAngle2=asin(tBranchWidth/(2.0*tRadius2));\n    \n    CGFloat tHoleAngle1=(2*M_PI-2.0*tNumberOfHoles*tAngle1)/tNumberOfHoles;\n    CGFloat tHoleAngle2=(2*M_PI-2.0*tNumberOfHoles*tAngle2)/tNumberOfHoles;\n    \n    for(NSUInteger tIndex=0;tIndex<tNumberOfHoles;tIndex++)\n    {\n        NSBezierPath * tHolePath=[NSBezierPath bezierPath];\n        \n        [tHolePath moveToPoint:NSMakePoint(self.center.x+tRadius1*cos(tRotationRad+tAngle1),self.center.y+tRadius1*sin(tRotationRad+tAngle1))];\n        [tHolePath lineToPoint:NSMakePoint(self.center.x+tRadius2*cos(tRotationRad+tAngle2),self.center.y+tRadius2*sin(tRotationRad+tAngle2))];\n        \n        [tHolePath appendBezierPathWithArcWithCenter:self.center\n                                              radius:tRadius2\n                                          startAngle:RADTODEG(tRotationRad+tAngle2)\n                                            endAngle:RADTODEG(tRotationRad+tAngle2+tHoleAngle2)];\n        \n        [tHolePath lineToPoint:NSMakePoint(self.center.x+tRadius1*cos(tRotationRad+tAngle1+tHoleAngle1),self.center.y+tRadius1*sin(tRotationRad+tAngle1+tHoleAngle1))];\n        [tHolePath appendBezierPathWithArcWithCenter:self.center\n                                              radius:tRadius1\n                                          startAngle:RADTODEG(tRotationRad+tAngle1+tHoleAngle1)\n                                            endAngle:RADTODEG(tRotationRad+tAngle1)\n                                           clockwise:YES];\n        \n        [tHolePath closePath];\n        \n        tRotationRad+=(2*M_PI)/tNumberOfHoles;\n        \n        \n        [tBezierPath2 appendBezierPath:tHolePath];\n    }\n    \n    [tBezierPath appendBezierPath:tBezierPath2];\n    \n    //[tBezierPath addClip];\n    tBezierPath.windingRule=NSWindingRuleEvenOdd;\n    \n    \n    return tBezierPath;\n}\n\n#pragma mark -\n\n- (void)draw\n{\n    NSBezierPath * tBezierPath=self.bezierPath;\n    \n    if (tBezierPath==nil)\n        return;\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n        \n        if (self.bezelRadius>0.1)\n        {\n            tBezierPath=[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(self.center.x-self.bezelRadius,self.center.y-self.bezelRadius,2.0*self.bezelRadius,2.0*self.bezelRadius)];\n        \n            [tBezierPath stroke];\n        }\n        \n        return;\n    }\n    \n    [self.gradient drawInBezierPath:tBezierPath angle:270];\n    \n    tBezierPath.lineWidth=1.0;\n    \n    if (self.borderColor!=nil)\n    {\n        [self.borderColor setStroke];\n        \n        [tBezierPath stroke];\n    }\n    \n    if (self.bezelRadius>0.1)\n    {\n        [[NSColor colorWithDeviceWhite:0.1 alpha:0.2] setStroke];\n        \n        tBezierPath=[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(self.center.x-self.bezelRadius,self.center.y-self.bezelRadius,2.0*self.bezelRadius,2.0*self.bezelRadius)];\n    \n        [tBezierPath stroke];\n    }\n}\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUIWatchGear * nGear=[CUIWatchGear new];\n    \n    nGear.center=self.center;\n    \n    nGear.outsideRadius=self.outsideRadius;\n    \n    nGear.axisRadius=self.axisRadius;\n    \n    nGear.innerRadius=self.innerRadius;\n    \n    nGear.bezelRadius=self.bezelRadius;\n    \n    nGear.innerBranchesCount=self.innerBranchesCount;\n    \n    nGear.innerBranchThickness=self.innerBranchThickness;\n    \n    nGear.numberOfTeeth=self.numberOfTeeth;\n    \n    nGear.circularToothThickness=self.circularToothThickness;\n    nGear.toothTop=self.toothTop;\n    \n    nGear.wholeDepth=self.wholeDepth;\n    nGear.addendum=self.addendum;\n    \n    \n    \n    nGear.rotation=self.rotation;\n    \n    nGear.borderColor=self.borderColor;\n    \n    nGear.gradient=self.gradient;\n    \n    nGear.ticker=self.ticker;\n    \n    return nGear;\n}\n\n#pragma mark -\n\n- (void)tick\n{\n    if (self.ticker==nil)\n    {\n        self.rotation+=1.0;\n        return;\n    }\n    \n    self.rotation+=self.ticker();\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchJewel.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchPart.h\"\n\n@interface CUIWatchJewel : CUIWatchPart\n\n    @property NSPoint center;\n\n    @property CGFloat radius;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchJewel.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchJewel.h\"\n\n@implementation CUIWatchJewel\n\n- (NSGradient *)gradient\n{\n    return [[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceRed:49.0/255.0 green:28.0/255.0 blue:44.0/255.0 alpha:1.0]\n                                         endingColor:[NSColor colorWithDeviceRed:49.0/255.0 green:28.0/255.0 blue:44.0/255.0 alpha:1.0]];\n}\n\n- (void)draw\n{\n    NSBezierPath * tBezierPath=[NSBezierPath bezierPathWithOvalInRect:NSMakeRect(self.center.x-self.radius, self.center.y-self.radius, self.radius*2.0, self.radius*2.0)];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n        \n        return;\n    }\n    \n    [self.gradient drawInBezierPath:tBezierPath relativeCenterPosition:NSMakePoint(0.0,-1.0)];\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath appendBezierPathWithArcWithCenter:self.center\n                                            radius:self.radius\n                                        startAngle:180.0 endAngle:0.0 clockwise:NO];\n    \n    [[NSColor colorWithDeviceRed:253.0/255.0 green:56.0/255.0 blue:212.0/255.0 alpha:0.8] setStroke];\n    \n    [tBezierPath stroke];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchPart.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\ntypedef NS_ENUM(NSUInteger, CUIWatchRenderingMode)\n{\n    CUIWatchRenderingModeFull=0,    // default\n    CUIWatchRenderingModeWireframe\n};\n\n@interface CUIWatchPart : NSObject\n\n@property CUIWatchRenderingMode renderingMode;\n\n@property NSBezierPath * bezierPath;\n\n@property NSColor * borderColor;\n\n@property NSGradient * gradient;\n\n- (void)draw;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchPart.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchPart.h\"\n\n@implementation CUIWatchPart\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        _borderColor=[NSColor colorWithDeviceWhite:0.0 alpha:0.5];\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (void)draw\n{\n    NSBezierPath * tBezierPath=self.bezierPath;\n    \n    if (tBezierPath==nil)\n        return;\n    \n    [self.gradient drawInBezierPath:tBezierPath angle:270];\n    \n    tBezierPath.lineWidth=1.0;\n    \n    //[[NSColor redColor] set];\n     \n     /*if ([tPart isKindOfClass:CUIWatchGear.class]==NO)\n     {\n     [[NSColor greenColor] set];\n     }*/\n    \n    if (self.borderColor!=nil)\n    {\n        [self.borderColor setStroke];\n        \n        [tBezierPath stroke];\n    }\n}\n\n#pragma mark -\n\n\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchScrew.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchPart.h\"\n\n@interface CUIWatchScrew : CUIWatchPart <NSCopying>\n\n    @property NSPoint center;\n\n    @property CGFloat radius;\n\n    @property CGFloat rotation;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/clock/CUIWatchScrew.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIWatchScrew.h\"\n\n@implementation CUIWatchScrew\n\n- (NSBezierPath *)bezierPath\n{\n    NSRect tRect=NSMakeRect(self.center.x-self.radius,self.center.y-self.radius,2*self.radius,2*self.radius);\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPathWithOvalInRect:tRect];\n    \n    return tBezierPath;\n}\n\n#pragma mark -\n\n- (NSGradient *)gradient\n{\n    return [[NSGradient alloc] initWithStartingColor:[NSColor colorWithDeviceWhite:0.8 alpha:1.0]\n                                         endingColor:[NSColor colorWithDeviceWhite:0.7 alpha:1.0]];\n}\n\n#pragma mark -\n\n- (void)draw\n{\n    NSAffineTransform * tAffineTransform=[NSAffineTransform transform];\n    \n    [tAffineTransform translateXBy:self.center.x yBy:self.center.y];\n    \n    \n    NSRect tRect=NSMakeRect(-self.radius,-self.radius,2*self.radius,2*self.radius);\n    \n    NSBezierPath * tBezierPath=[NSBezierPath bezierPathWithOvalInRect:tRect];\n    \n    [tBezierPath transformUsingAffineTransform:tAffineTransform];\n    \n    if (self.renderingMode==CUIWatchRenderingModeWireframe)\n    {\n        [[NSColor textColor] setStroke];\n        \n        [tBezierPath stroke];\n        \n        \n        [tAffineTransform rotateByDegrees:self.rotation];\n        \n        tBezierPath=[NSBezierPath bezierPath];\n        \n        tBezierPath.lineWidth=1.5;\n        [tBezierPath moveToPoint:NSMakePoint(-self.radius+1,0)];\n        \n        [tBezierPath lineToPoint:NSMakePoint(self.radius,0)];\n        \n        [tBezierPath transformUsingAffineTransform:tAffineTransform];\n        \n        [tBezierPath stroke];\n        \n        return;\n    }\n    \n    \n    [self.gradient drawInBezierPath:tBezierPath angle:270];\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(-self.radius,0)];\n    [tBezierPath appendBezierPathWithArcWithCenter:NSZeroPoint\n                                            radius:self.radius-1\n                                        startAngle:180\n                                          endAngle:360\n                                         clockwise:NO];\n    \n    tBezierPath.lineWidth=1.0;\n    \n    [[NSColor colorWithWhite:1.0 alpha:0.4] setStroke];\n    \n    [tBezierPath transformUsingAffineTransform:tAffineTransform];\n    \n    [tBezierPath stroke];\n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    [tBezierPath moveToPoint:NSMakePoint(self.radius,0)];\n    [tBezierPath appendBezierPathWithArcWithCenter:NSZeroPoint\n                                            radius:self.radius\n                                        startAngle:0\n                                          endAngle:180\n                                         clockwise:NO];\n    \n    \n    \n    tBezierPath.lineWidth=1.0;\n    \n    [[NSColor colorWithWhite:0.3 alpha:0.4] setStroke];\n    \n    //[[NSColor redColor] set];\n    \n    [tBezierPath transformUsingAffineTransform:tAffineTransform];\n    \n    [tBezierPath stroke];\n    \n    [tAffineTransform rotateByDegrees:self.rotation];\n    \n    \n    tBezierPath=[NSBezierPath bezierPath];\n    \n    tBezierPath.lineWidth=1.5;\n    [tBezierPath moveToPoint:NSMakePoint(-self.radius+1,0)];\n    \n    [tBezierPath lineToPoint:NSMakePoint(self.radius,0)];\n    \n    [tBezierPath transformUsingAffineTransform:tAffineTransform];\n    \n    [tBezierPath stroke];\n}\n\n\n#pragma mark - NSCopying\n\n- (id)copyWithZone:(nullable NSZone *)zone\n{\n    CUIWatchScrew * nScrew=[CUIWatchScrew new];\n    \n    nScrew.center=self.center;\n    \n    nScrew.radius=self.radius;\n    \n    return nScrew;\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/dSYM/CUIdSYMBundle+UI.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIdSYMBundle.h\"\n\n@interface CUIdSYMBundle (UI)\n\n- (NSComparisonResult)compareNameAndVersion:(CUIdSYMBundle *)inOtherBundle;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/dSYM/CUIdSYMBundle+UI.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIdSYMBundle+UI.h\"\n\n@implementation CUIdSYMBundle (UI)\n\n- (NSComparisonResult)compareNameAndVersion:(CUIdSYMBundle *)inOtherBundle\n{\n    NSComparisonResult tResult=[self.displayName compare:inOtherBundle.displayName];\n    \n    if (tResult!=NSOrderedSame)\n        return tResult;\n    \n    return [self.displayVersion compare:inOtherBundle.displayVersion options:NSNumericSearch];\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/dSYM/CUIdSYMBundle.h",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n#import \"CUISymbolicationData.h\"\n\n@interface CUIdSYMBundle : NSBundle\n\n    @property (nonatomic,readonly) NSString * displayName;\n\n    @property (nonatomic,readonly) NSString * displayVersion;\n\n    @property (readonly,getter=isDSYMBundle) BOOL dSYMBundle;\n\n    @property (nonatomic,readonly) NSArray * binaryUUIDs;\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(NSUInteger)inAddress binaryUUID:(NSString *)inBinaryUUID completionHandler:(void (^)(CUISymbolicationDataLookUpResult bLookUpResult,CUISymbolicationData * bSymbolicationData))handler;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/dSYM/CUIdSYMBundle.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUIdSYMBundle.h\"\n\n#import \"MCHMachBinary.h\"\n\n#import \"MCHUUIDLoadCommand.h\"\n\n#import \"MCHSegmentLoadCommand.h\"\n\n#include <mach-o/loader.h>\n#include <mach-o/fat.h>\n\n#import \"DWRFFileObject.h\"\n\n#import \"CUISymbolicationDataCache.h\"\n\n\n\n@interface CUIdSYMBundle ()\n{\n    NSArray * _cachedBinaryUUIDs;\n    \n    NSDictionary<NSString *,MCHObjectFile *> * _machObjectFilesRegistry;\n    \n    NSMutableDictionary<NSString *,DWRFFileObject *> * _cachedWARFFileObjectsRegistry;\n}\n\n@property (nonatomic) NSString * displayName;\n\n@property (nonatomic) NSString * displayVersion;\n\n@property (nonatomic) MCHMachBinary * machBinary;\n\n@property (nonatomic,copy) NSString * symbolsFilePath;\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(NSUInteger)inAddress binaryUUID:(NSString *)inBinaryUUID queue:(dispatch_queue_t)inQueue completionHandler:(void (^)(CUISymbolicationDataLookUpResult bLookUpResult,CUISymbolicationData * bSymbolicationData))handler;\n\n@end\n\n@implementation CUIdSYMBundle\n\n- (NSString *)displayName\n{\n    if (_displayName==nil)\n    {\n        _displayName=self.bundlePath.lastPathComponent;\n    }\n    \n    return _displayName;\n}\n\n- (NSString *)displayVersion\n{\n    if (_displayVersion==nil)\n    {\n        NSString * tBundleShortVersionString=[self objectForInfoDictionaryKey:@\"CFBundleShortVersionString\"];\n        \n        if (tBundleShortVersionString==nil)\n            tBundleShortVersionString=@\"-\";\n        \n        NSString * tBundleVersionString=[self objectForInfoDictionaryKey:@\"CFBundleVersion\"];\n        if (tBundleVersionString==nil)\n            tBundleVersionString=@\"-\";\n        \n         _displayVersion=[NSString stringWithFormat:NSLocalizedString(@\"%@ (%@)\",@\"\"), tBundleShortVersionString, tBundleVersionString ];\n    }\n    \n    return _displayVersion;\n}\n\n#pragma mark -\n\n- (NSString *)symbolsFilePath\n{\n    NSString * tDWARFFolderPath=[self pathForResource:@\"DWARF\" ofType:nil];\n    \n    if (tDWARFFolderPath==nil)\n        return nil;\n    \n    NSArray * tArray=[[NSFileManager defaultManager] contentsOfDirectoryAtPath:tDWARFFolderPath error:NULL];\n    \n    if (tArray.count!=1)\n        return nil;\n    \n    return [tDWARFFolderPath stringByAppendingPathComponent:tArray.firstObject];\n}\n\n#pragma mark -\n\n- (MCHMachBinary *)machBinary\n{\n    if (_machBinary==nil)\n    {\n        NSString * tPath=[self symbolsFilePath];\n        \n        _machBinary=[[MCHMachBinary alloc] initWithContentsOfFile:tPath];\n        \n        if (_machBinary==nil)\n        {\n            NSLog(@\"Error unarchiving mach-o file at path: %@\",tPath);\n        }\n    }\n    \n    return _machBinary;\n}\n\n- (BOOL)isDSYMBundle\n{\n    NSString * tPath=self.bundlePath;\n    \n    if ([tPath.pathExtension isEqualToString:@\"dSYM\"]==NO)\n        return NO;\n    \n    NSString * tPackageType=[self objectForInfoDictionaryKey:@\"CFBundlePackageType\"];\n    \n    if ([tPackageType isKindOfClass:NSString.class]==NO)\n        return NO;\n    \n    if ([tPackageType isEqualToString:@\"dSYM\"]==NO)\n        return NO;\n    \n    NSString * tDWARFFilePath=[self symbolsFilePath];\n    \n    if (tDWARFFilePath==nil)\n        return NO;\n    \n    // Check that this is a mach-o file\n    \n    NSFileHandle * tFileHandle= [NSFileHandle fileHandleForReadingAtPath:tDWARFFilePath];\n    NSData * tData = [tFileHandle readDataOfLength:sizeof(uint32_t)];\n    [tFileHandle closeFile];\n    \n    uint32_t tMagicHeader=0;\n    \n    [tData getBytes:&tMagicHeader length:sizeof(uint32_t)];\n    \n    switch(tMagicHeader)\n    {\n        case MH_MAGIC:\n        case MH_CIGAM:\n        case MH_MAGIC_64:\n        case MH_CIGAM_64:\n            \n            return YES;\n            \n        case FAT_MAGIC:\n        case FAT_CIGAM:\n            \n            return YES;\n            \n        default:\n            \n            break;\n    }\n    \n    return NO;\n}\n\n- (NSArray *)binaryUUIDs\n{\n    if (_cachedBinaryUUIDs!=nil)\n        return _cachedBinaryUUIDs;\n    \n    NSMutableArray * tMutableArray=[NSMutableArray array];\n    NSMutableDictionary * tMutableDictionary=[NSMutableDictionary dictionary];\n    \n    MCHMachBinary * tBinary=self.machBinary;\n    \n    if (tBinary==nil)\n        return nil;\n    \n    [[tBinary allObjectFiles] enumerateObjectsUsingBlock:^(MCHObjectFile * bObjectFile, NSUInteger bIndex, BOOL * bOutStop) {\n        \n        if (bObjectFile.fileType!=MH_DSYM)\n            return;\n        \n        NSArray * tUUIDLoadCommands=[bObjectFile loadCommandsOfType:LC_UUID];\n        \n        MCHUUIDLoadCommand * tUUIDLoadCommand=tUUIDLoadCommands.firstObject;\n        \n        NSString * tUUIDString=tUUIDLoadCommand.uuid.UUIDString;\n        \n        if (tUUIDString!=nil)\n        {\n            [tMutableArray addObject:tUUIDString];\n            \n            tMutableDictionary[tUUIDString]=bObjectFile;\n        }\n    }];\n    \n    _cachedBinaryUUIDs=[tMutableArray copy];\n    \n    _machObjectFilesRegistry=[tMutableDictionary copy];\n    \n    return _cachedBinaryUUIDs;\n}\n\n#pragma mark -\n\n\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(NSUInteger)inAddress binaryUUID:(NSString *)inBinaryUUID completionHandler:(void (^)(CUISymbolicationDataLookUpResult bLookUpResult,CUISymbolicationData * bSymbolicationData))handler;\n{\n    [self lookUpSymbolicationDataForMachineInstructionAddress:inAddress binaryUUID:inBinaryUUID queue:dispatch_get_main_queue() completionHandler:handler];\n}\n\n- (void)lookUpSymbolicationDataForMachineInstructionAddress:(NSUInteger)inAddress binaryUUID:(NSString *)inBinaryUUID queue:(dispatch_queue_t)inQueue completionHandler:(void (^)(CUISymbolicationDataLookUpResult bLookUpResult,CUISymbolicationData * bSymbolicationData))handler;\n{\n    if (handler==nil)\n    {\n        // A COMPLETER\n        \n        return;\n    }\n    \n    if (inBinaryUUID==nil)\n    {\n        handler(CUISymbolicationDataLookUpResultError,nil);\n        \n        return;\n    }\n\n    // Try to find it as it was the first time\n    \n    if (_machObjectFilesRegistry==nil)\n    {\n        [self binaryUUIDs];\n        \n        if (_machObjectFilesRegistry.count==0)\n        {\n            handler(CUISymbolicationDataLookUpResultError,nil);\n            \n            return;\n        }\n    }\n    \n    DWRFFileObject * tFileObject=_cachedWARFFileObjectsRegistry[inBinaryUUID];\n    \n    if (tFileObject==nil)\n    {\n        MCHObjectFile * tMachObjectFile=_machObjectFilesRegistry[inBinaryUUID];\n        \n        if (tMachObjectFile==nil)\n        {\n            handler(CUISymbolicationDataLookUpResultError,nil);\n            \n            return;\n        }\n        \n        if (_cachedWARFFileObjectsRegistry==nil)\n            _cachedWARFFileObjectsRegistry=[NSMutableDictionary dictionary];\n        \n        tFileObject=[[DWRFFileObject alloc] initWithMachObjectFile:tMachObjectFile];\n        \n        if (tFileObject==nil)\n        {\n            handler(CUISymbolicationDataLookUpResultError,nil);\n            \n            return;\n        }\n        \n        _cachedWARFFileObjectsRegistry[inBinaryUUID]=tFileObject;\n    }\n    \n    static dispatch_queue_t sSearchSerialQueue=nil;\n    \n    static dispatch_once_t onceToken;\n    dispatch_once(&onceToken, ^{\n        \n        sSearchSerialQueue=dispatch_queue_create(\"fr.whitebox.unexpectedly.searchqueue\", DISPATCH_QUEUE_SERIAL);\n        \n    });\n    \n    dispatch_async(sSearchSerialQueue, ^{\n        \n        [tFileObject lookUpSymbolicationDataForMachineInstructionAddress:inAddress completionHandler:^(BOOL bFound, CUISymbolicationData * bSymbolicationData) {\n            \n            dispatch_async(inQueue, ^{\n                \n                if (bFound==NO)\n                {\n                    handler(CUISymbolicationDataLookUpResultNotFound,nil);\n                    \n                    return;\n                }\n                \n                // Update Cache\n                \n                [[CUISymbolicationDataCache sharedCache] setSymbolicationData:bSymbolicationData forAddress:inAddress binary:inBinaryUUID];\n                \n                handler(CUISymbolicationDataLookUpResultFound,bSymbolicationData);\n            });\n        }];\n    });\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/default_themes.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<array>\n\t<dict>\n\t\t<key>UUID</key>\n\t\t<string>UUID2</string>\n\t\t<key>groups</key>\n\t\t<array>\n\t\t\t<dict>\n\t\t\t\t<key>attributes</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>OSCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.700000|0.700000|0.700000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.121569|0.119910|0.140239</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>crashedThreadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.989539|0.441258|0.1867240</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Bold::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>executableCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Bold::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>key</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.900000|0.900000|0.900000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>lineNumber</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.42|0.42|0.42</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>memoryAddress</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.589786|0.767791|0.999091</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>path</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.991982|0.636635|0.991244</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>plaintext</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>registerValue</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.997655|0.882916|0.443044</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.171197|0.532568|0.998515</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-text</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>threadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.668288|1.000000|0.433854</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>uuid</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.400000|0.400000|0.400000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>version</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.848609|0.555776|0.191952</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t</dict>\n\t\t\t\t<key>identifier</key>\n\t\t\t\t<string>Text</string>\n\t\t\t\t<key>items</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>background</string>\n\t\t\t\t\t<string>selection-background</string>\n\t\t\t\t\t<string>selection-text</string>\n\t\t\t\t\t<string>plaintext</string>\n\t\t\t\t\t<string>key</string>\n\t\t\t\t\t<string>threadLabel</string>\n\t\t\t\t\t<string>crashedThreadLabel</string>\n\t\t\t\t\t<string>executableCode</string>\n\t\t\t\t\t<string>OSCode</string>\n\t\t\t\t\t<string>memoryAddress</string>\n\t\t\t\t\t<string>registerValue</string>\n\t\t\t\t\t<string>path</string>\n\t\t\t\t\t<string>version</string>\n\t\t\t\t\t<string>uuid</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</array>\n\t\t<key>name</key>\n\t\t<string>Default (Dark)</string>\n\t</dict>\n\t<dict>\n\t\t<key>UUID</key>\n\t\t<string>UUID1</string>\n\t\t<key>groups</key>\n\t\t<array>\n\t\t\t<dict>\n\t\t\t\t<key>attributes</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>OSCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.300000|0.300000|0.300000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>crashedThreadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.957716|0.059633|0.075242</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Bold::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>executableCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Bold::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>key</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.157741|0.157741|0.157741</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>lineNumber</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.42|0.42|0.42</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>memoryAddress</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.137678|0.193874|0.694335</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>path</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.595377|0.057079|0.998607</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>plaintext</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>registerValue</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.817178|0.979453|0.999665</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-text</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>threadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Bold::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>uuid</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.500000|0.500000|0.500000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>version</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.756722|0.413476|0.180156</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t</dict>\n\t\t\t\t<key>identifier</key>\n\t\t\t\t<string>Text</string>\n\t\t\t\t<key>items</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>background</string>\n\t\t\t\t\t<string>selection-background</string>\n\t\t\t\t\t<string>selection-text</string>\n\t\t\t\t\t<string>plaintext</string>\n\t\t\t\t\t<string>key</string>\n\t\t\t\t\t<string>threadLabel</string>\n\t\t\t\t\t<string>crashedThreadLabel</string>\n\t\t\t\t\t<string>executableCode</string>\n\t\t\t\t\t<string>OSCode</string>\n\t\t\t\t\t<string>memoryAddress</string>\n\t\t\t\t\t<string>registerValue</string>\n\t\t\t\t\t<string>path</string>\n\t\t\t\t\t<string>version</string>\n\t\t\t\t\t<string>uuid</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</array>\n\t\t<key>name</key>\n\t\t<string>Default (Light)</string>\n\t</dict>\n\t<dict>\n\t\t<key>UUID</key>\n\t\t<string>93CC4486-C80B-43A0-BDB2-C05006230798</string>\n\t\t<key>groups</key>\n\t\t<array>\n\t\t\t<dict>\n\t\t\t\t<key>attributes</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>OSCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.121569|0.119910|0.140239</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>crashedThreadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>executableCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>key</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>lineNumber</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.42|0.42|0.42</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>memoryAddress</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>path</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>plaintext</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>registerValue</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.949198|0.949198|0.949198</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-text</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.052241|0.052241|0.052241</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>threadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>uuid</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>version</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t</dict>\n\t\t\t\t<key>identifier</key>\n\t\t\t\t<string>Text</string>\n\t\t\t\t<key>items</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>background</string>\n\t\t\t\t\t<string>selection-background</string>\n\t\t\t\t\t<string>selection-text</string>\n\t\t\t\t\t<string>plaintext</string>\n\t\t\t\t\t<string>key</string>\n\t\t\t\t\t<string>threadLabel</string>\n\t\t\t\t\t<string>crashedThreadLabel</string>\n\t\t\t\t\t<string>executableCode</string>\n\t\t\t\t\t<string>OSCode</string>\n\t\t\t\t\t<string>memoryAddress</string>\n\t\t\t\t\t<string>registerValue</string>\n\t\t\t\t\t<string>path</string>\n\t\t\t\t\t<string>version</string>\n\t\t\t\t\t<string>uuid</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</array>\n\t\t<key>name</key>\n\t\t<string>Monochrome (Dark)</string>\n\t\t<key>monochrome</key>\n\t\t<true/>\n\t</dict>\n\t<dict>\n\t\t<key>UUID</key>\n\t\t<string>DEA1A282-4860-4CBD-85F5-70CAC95742CB</string>\n\t\t<key>groups</key>\n\t\t<array>\n\t\t\t<dict>\n\t\t\t\t<key>attributes</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>OSCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.994426|0.994426|0.994426</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>crashedThreadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>executableCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>key</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.047095|0.047095|0.047095</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>lineNumber</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.42|0.42|0.42</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>memoryAddress</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>path</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>plaintext</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.054302|0.054302|0.054302</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>registerValue</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.884986|0.884986|0.884986</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-text</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>threadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>uuid</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>version</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.048801|0.048801|0.048801</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t</dict>\n\t\t\t\t<key>identifier</key>\n\t\t\t\t<string>Text</string>\n\t\t\t\t<key>items</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>background</string>\n\t\t\t\t\t<string>selection-background</string>\n\t\t\t\t\t<string>selection-text</string>\n\t\t\t\t\t<string>plaintext</string>\n\t\t\t\t\t<string>key</string>\n\t\t\t\t\t<string>threadLabel</string>\n\t\t\t\t\t<string>crashedThreadLabel</string>\n\t\t\t\t\t<string>executableCode</string>\n\t\t\t\t\t<string>OSCode</string>\n\t\t\t\t\t<string>memoryAddress</string>\n\t\t\t\t\t<string>registerValue</string>\n\t\t\t\t\t<string>path</string>\n\t\t\t\t\t<string>version</string>\n\t\t\t\t\t<string>uuid</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</array>\n\t\t<key>monochrome</key>\n\t\t<true/>\n\t\t<key>name</key>\n\t\t<string>Monochrome (Light)</string>\n\t</dict>\n\t<dict>\n\t\t<key>UUID</key>\n\t\t<string>59DEA3E4-BF17-4C09-84D3-B97E531574EF</string>\n\t\t<key>groups</key>\n\t\t<array>\n\t\t\t<dict>\n\t\t\t\t<key>attributes</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>OSCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.700000|0.700000|0.700000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.121569|0.119910|0.140239</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>crashedThreadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>executableCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>key</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.900000|0.900000|0.900000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>lineNumber</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.42|0.42|0.42</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>memoryAddress</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.589786|0.767791|0.999091</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>path</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.991982|0.636635|0.991244</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>plaintext</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>registerValue</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.997655|0.882916|0.443044</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.171197|0.532568|0.998515</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-text</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>threadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.668288|1.000000|0.433854</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>uuid</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.400000|0.400000|0.400000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>version</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.848609|0.555776|0.191952</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Italic::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t</dict>\n\t\t\t\t<key>identifier</key>\n\t\t\t\t<string>Text</string>\n\t\t\t\t<key>items</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>background</string>\n\t\t\t\t\t<string>selection-background</string>\n\t\t\t\t\t<string>selection-text</string>\n\t\t\t\t\t<string>plaintext</string>\n\t\t\t\t\t<string>key</string>\n\t\t\t\t\t<string>threadLabel</string>\n\t\t\t\t\t<string>crashedThreadLabel</string>\n\t\t\t\t\t<string>executableCode</string>\n\t\t\t\t\t<string>OSCode</string>\n\t\t\t\t\t<string>memoryAddress</string>\n\t\t\t\t\t<string>registerValue</string>\n\t\t\t\t\t<string>path</string>\n\t\t\t\t\t<string>version</string>\n\t\t\t\t\t<string>uuid</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</array>\n\t\t<key>name</key>\n\t\t<string>Presentation (Dark)</string>\n\t</dict>\n\t<dict>\n\t\t<key>UUID</key>\n\t\t<string>EAB59E67-4070-4A69-A7BB-08DA065918C9</string>\n\t\t<key>groups</key>\n\t\t<array>\n\t\t\t<dict>\n\t\t\t\t<key>attributes</key>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>OSCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.300000|0.300000|0.300000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>1.000000|1.000000|1.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>crashedThreadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.957716|0.059633|0.075242</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>executableCode</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>key</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.157741|0.157741|0.157741</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>lineNumber</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.42|0.42|0.42</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>memoryAddress</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.137678|0.193874|0.694335</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>path</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.595377|0.057079|0.998607</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>plaintext</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>registerValue</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-background</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.817178|0.979453|0.999665</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>selection-text</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>.AppleSystemUIFont::11.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>threadLabel</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.000000|0.000000|0.000000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>uuid</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.500000|0.500000|0.500000</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<key>version</key>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>color</key>\n\t\t\t\t\t\t<string>0.756722|0.413476|0.180156</string>\n\t\t\t\t\t\t<key>font</key>\n\t\t\t\t\t\t<string>Menlo-Regular::14.0</string>\n\t\t\t\t\t</dict>\n\t\t\t\t</dict>\n\t\t\t\t<key>identifier</key>\n\t\t\t\t<string>Text</string>\n\t\t\t\t<key>items</key>\n\t\t\t\t<array>\n\t\t\t\t\t<string>background</string>\n\t\t\t\t\t<string>selection-background</string>\n\t\t\t\t\t<string>selection-text</string>\n\t\t\t\t\t<string>plaintext</string>\n\t\t\t\t\t<string>key</string>\n\t\t\t\t\t<string>threadLabel</string>\n\t\t\t\t\t<string>crashedThreadLabel</string>\n\t\t\t\t\t<string>executableCode</string>\n\t\t\t\t\t<string>OSCode</string>\n\t\t\t\t\t<string>memoryAddress</string>\n\t\t\t\t\t<string>registerValue</string>\n\t\t\t\t\t<string>path</string>\n\t\t\t\t\t<string>version</string>\n\t\t\t\t\t<string>uuid</string>\n\t\t\t\t</array>\n\t\t\t</dict>\n\t\t</array>\n\t\t<key>name</key>\n\t\t<string>Presentation (Light)</string>\n\t</dict>\n</array>\n</plist>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIAboutBoxWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIAboutBoxWindowController\">\n            <connections>\n                <outlet property=\"_applicationIconView\" destination=\"tcA-WF-uA0\" id=\"MLS-Td-B8a\"/>\n                <outlet property=\"_versionLabel\" destination=\"ttD-QV-oac\" id=\"Dvu-Z7-kin\"/>\n                <outlet property=\"window\" destination=\"Bdk-2N-UfM\" id=\"lij-6E-9Ij\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" id=\"Bdk-2N-UfM\" userLabel=\"About Window\" customClass=\"CUIAboutBoxWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"1076\" y=\"858\" width=\"580\" height=\"340\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"213\" height=\"107\"/>\n            <view key=\"contentView\" id=\"M7a-oa-Rve\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"none\" title=\"Box\" id=\"oOh-j5-H4F\" customClass=\"CUIContentBox\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <view key=\"contentView\" id=\"wo7-V5-OLy\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textField verticalHuggingPriority=\"750\" id=\"99t-xE-l89\">\n                                    <rect key=\"frame\" x=\"297\" y=\"237\" width=\"244\" height=\"33\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Unexpectedly\" id=\"T3S-Ay-pmi\">\n                                        <font key=\"font\" metaFont=\"systemBold\" size=\"27\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ttD-QV-oac\">\n                                    <rect key=\"frame\" x=\"302\" y=\"216\" width=\"163\" height=\"17\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" sendsActionOnEndEditing=\"YES\" title=\"version xxx (xxxx)\" id=\"zzd-sb-nLW\">\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField verticalHuggingPriority=\"750\" id=\"1i6-Ud-XKB\">\n                                    <rect key=\"frame\" x=\"297\" y=\"121\" width=\"257\" height=\"13\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"© 2020-2026 Stéphane Sudre. All rights reserved.\" id=\"Xdh-fz-kMR\">\n                                        <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <customView id=\"ph8-bY-NfI\" customClass=\"CUIAboutBoxFooterView\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"581\" height=\"48\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <subviews>\n                                        <button verticalHuggingPriority=\"750\" id=\"BFt-hQ-gMS\">\n                                            <rect key=\"frame\" x=\"411\" y=\"11\" width=\"150\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"License Agreement\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"Pec-zi-7OB\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showLicenseAgreement:\" target=\"-2\" id=\"a9e-i5-Dsu\"/>\n                                            </connections>\n                                        </button>\n                                        <button verticalHuggingPriority=\"750\" id=\"GUS-e1-oXY\">\n                                            <rect key=\"frame\" x=\"253\" y=\"11\" width=\"150\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"Acknowledgments\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"tds-hN-Zey\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showAcknowledgments:\" target=\"-2\" id=\"vyh-yi-H1N\"/>\n                                            </connections>\n                                        </button>\n                                    </subviews>\n                                </customView>\n                                <customView id=\"tcA-WF-uA0\" customClass=\"CUIApplicationIconView\">\n                                    <rect key=\"frame\" x=\"20\" y=\"64\" width=\"256\" height=\"256\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </view>\n                        <color key=\"borderColor\" white=\"0.0\" alpha=\"0.41999999999999998\" colorSpace=\"calibratedWhite\"/>\n                        <color key=\"fillColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"calibratedWhite\"/>\n                    </box>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"71\" y=\"93\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIBinaryImagesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIBinaryImagesViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"JbX-mT-2UH\" id=\"02i-kF-XTY\"/>\n                <outlet property=\"_openWithMenuItem\" destination=\"YLm-YP-LL9\" id=\"Oa6-K5-zJI\"/>\n                <outlet property=\"_tableView\" destination=\"H2N-iz-CG5\" id=\"8vi-YE-vnm\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"127\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"JbX-mT-2UH\">\n                    <rect key=\"frame\" x=\"638\" y=\"2\" width=\"180\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filter\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"CXs-CW-3At\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"qzT-e2-esd\"/>\n                    </connections>\n                </searchField>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"18\" horizontalPageScroll=\"10\" verticalLineScroll=\"18\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jng-RN-KVx\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"826\" height=\"104\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"iHp-Bk-LJN\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"824\" height=\"103\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"16\" headerView=\"szd-pN-V9C\" viewBased=\"YES\" id=\"H2N-iz-CG5\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"78\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"identifier\" editable=\"NO\" width=\"243\" minWidth=\"40\" maxWidth=\"1000\" id=\"zsB-hX-miE\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Binary Image\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"HaL-8m-7CV\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"identifier\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"BPG-vx-EaY\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"243\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"g8Y-8I-L6J\">\n                                                        <rect key=\"frame\" x=\"22\" y=\"1\" width=\"220\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sWv-h4-EIw\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"r0f-ia-207\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"14\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"oyO-Zo-2yb\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"r0f-ia-207\" id=\"SJ2-ej-0Cg\"/>\n                                                    <outlet property=\"textField\" destination=\"g8Y-8I-L6J\" id=\"3Mm-h4-ddI\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"120\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"JQI-XJ-VTL\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"Version\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"U1f-H1-9m0\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"version\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"8FH-01-0os\">\n                                                <rect key=\"frame\" x=\"247\" y=\"1\" width=\"120\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"plL-Vk-xaA\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"120\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"obt-PL-Lbo\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"plL-Vk-xaA\" id=\"mg4-BY-bi3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"addresses\" editable=\"NO\" width=\"212\" minWidth=\"40\" maxWidth=\"1000\" id=\"oFL-bf-gGU\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Addresses\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"ZW2-8X-PGp\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"addressesRange\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g9U-vA-jTF\">\n                                                <rect key=\"frame\" x=\"370\" y=\"1\" width=\"212\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"3kh-At-cKc\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"211\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"justified\" title=\"Table View Cell\" id=\"CMI-V5-ciE\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"3kh-At-cKc\" id=\"UdM-cM-BOp\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"path\" editable=\"NO\" width=\"230\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"HcW-EK-wr3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"Path\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"S91-cj-D84\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"path\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"sf0-hA-RmY\">\n                                                <rect key=\"frame\" x=\"585\" y=\"1\" width=\"230\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"lmB-oe-CyW\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"230\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Table View Cell\" id=\"qWc-Kx-SEP\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"lmB-oe-CyW\" id=\"kFS-VU-Y4h\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VlW-ud-6Hf\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Xcc-up-ema\"/>\n                                    <outlet property=\"menu\" destination=\"lWX-qP-xpp\" id=\"Pw9-3z-saj\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" horizontal=\"YES\" id=\"OBi-Bk-c7r\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"822\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Od4-Ga-F2a\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"szd-pN-V9C\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"160\" y=\"10.5\"/>\n        </customView>\n        <menu id=\"lWX-qP-xpp\">\n            <items>\n                <menuItem title=\"Show in Finder\" id=\"taY-h1-kV9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"C8h-FR-DuE\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Open With\" id=\"YLm-YP-LL9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Open With\" id=\"SGI-Dm-tOB\">\n                        <items>\n                            <menuItem title=\"-\" id=\"9Ch-Xx-Yu3\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICodeSigningInformationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICodeSigningInformationViewController\">\n            <connections>\n                <outlet property=\"_flagsRichTextField\" destination=\"chR-7J-O6v\" id=\"iY2-tW-M8Z\"/>\n                <outlet property=\"_identifierTextField\" destination=\"pzr-oV-4Ja\" id=\"pxc-Tm-LdQ\"/>\n                <outlet property=\"_teamIdentifierTextField\" destination=\"3fa-Ku-EUN\" id=\"mQk-Vc-AhS\"/>\n                <outlet property=\"_trustLevelTextField\" destination=\"fce-70-gVD\" id=\"X7D-tf-hgw\"/>\n                <outlet property=\"_validationCategoryTextField\" destination=\"Ibg-QL-cVb\" id=\"WUN-SW-oav\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"393\" height=\"428\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9yS-4w-XmX\">\n                    <rect key=\"frame\" x=\"83\" y=\"391\" width=\"62\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Identifier:\" id=\"bCV-Ef-nKj\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"pzr-oV-4Ja\">\n                    <rect key=\"frame\" x=\"149\" y=\"391\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"left\" title=\"-\" id=\"IAr-nB-TqD\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"3fa-Ku-EUN\">\n                    <rect key=\"frame\" x=\"149\" y=\"367\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" alignment=\"left\" title=\"-\" id=\"jlF-oN-6jR\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ibg-QL-cVb\">\n                    <rect key=\"frame\" x=\"149\" y=\"343\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"bg4-im-sfc\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MYG-4N-N6i\">\n                    <rect key=\"frame\" x=\"47\" y=\"367\" width=\"98\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Team Identifier:\" id=\"0cZ-kI-PnJ\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qyY-nO-4Jd\">\n                    <rect key=\"frame\" x=\"18\" y=\"343\" width=\"127\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Validation Category:\" id=\"0wh-en-a3v\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dVx-X7-9rC\">\n                    <rect key=\"frame\" x=\"25\" y=\"319\" width=\"120\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Codesigning Flags:\" id=\"B6T-7b-zGQ\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"fce-70-gVD\">\n                    <rect key=\"frame\" x=\"149\" y=\"21\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"VDD-jV-8zV\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scW-9F-TpJ\">\n                    <rect key=\"frame\" x=\"71\" y=\"21\" width=\"74\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Trust Level:\" id=\"Gmq-jb-2Tt\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"chR-7J-O6v\">\n                    <rect key=\"frame\" x=\"149\" y=\"45\" width=\"226\" height=\"290\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" allowsUndo=\"NO\" allowsEditingTextAttributes=\"YES\" id=\"erf-qu-9hj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"99.5\" y=\"274\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICollectionViewRegisterItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSView\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"180\" height=\"23\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"49v-rz-P77\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"5\" width=\"28\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"r15:\" id=\"moe-Uv-cgf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"jaL-7X-k26\" customClass=\"CUIRegisterLabel\">\n                    <rect key=\"frame\" x=\"30\" y=\"1\" width=\"149\" height=\"20\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <subviews>\n                        <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qEF-At-YGV\">\n                            <rect key=\"frame\" x=\"4\" y=\"3\" width=\"127\" height=\"17\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"right\" title=\"0x0000000000000000\" id=\"3Ws-AL-pDW\">\n                                <font key=\"font\" size=\"11\" name=\"Menlo-Regular\"/>\n                                <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" red=\"0.0\" green=\"0.0\" blue=\"0.0\" alpha=\"0.051054180475006906\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n                            </textFieldCell>\n                        </textField>\n                        <popUpButton id=\"fAd-pL-hD3\">\n                            <rect key=\"frame\" x=\"130\" y=\"1\" width=\"16\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"Binary\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"arrowAtCenter\" selectedItem=\"Ql8-Yj-GNF\" id=\"jsY-zd-eaC\">\n                                <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                <menu key=\"menu\" id=\"W6L-9s-vAV\">\n                                    <items>\n                                        <menuItem title=\"Binary\" state=\"on\" hidden=\"YES\" id=\"Ql8-Yj-GNF\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Boolean\" tag=\"1\" id=\"VoA-fE-sxQ\"/>\n                                        <menuItem title=\"Decimal\" tag=\"3\" id=\"Hab-wq-jWg\"/>\n                                        <menuItem title=\"Float\" tag=\"2\" id=\"2IG-5I-rJY\"/>\n                                        <menuItem title=\"Hex\" tag=\"4\" id=\"SoX-XB-pNK\"/>\n                                        <menuItem title=\"Octal\" tag=\"5\" id=\"5Ci-Jw-A07\"/>\n                                        <menuItem title=\"Unsigned Decimal\" tag=\"6\" id=\"QOY-jj-Mna\"/>\n                                    </items>\n                                </menu>\n                            </popUpButtonCell>\n                            <connections>\n                                <action selector=\"switchDisplayFormat:\" target=\"jaL-7X-k26\" id=\"VTy-Z7-Jxf\"/>\n                            </connections>\n                        </popUpButton>\n                    </subviews>\n                    <connections>\n                        <outlet property=\"_popUpButton\" destination=\"fAd-pL-hD3\" id=\"tc3-Wy-sGM\"/>\n                        <outlet property=\"_textField\" destination=\"qEF-At-YGV\" id=\"dOS-N9-mnK\"/>\n                    </connections>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-21\" y=\"-184\"/>\n        </customView>\n        <collectionViewItem id=\"faJ-j9-dhQ\" customClass=\"CUICollectionViewRegisterItem\">\n            <connections>\n                <outlet property=\"_registerNameLabel\" destination=\"49v-rz-P77\" id=\"BR4-Vr-dVK\"/>\n                <outlet property=\"_registerValueDisplayFormatPopUpButton\" destination=\"fAd-pL-hD3\" id=\"9NM-Ax-cVM\"/>\n                <outlet property=\"_registerValueLabel\" destination=\"jaL-7X-k26\" id=\"IU3-mu-U3V\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"6gV-UU-WJg\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICrashLogPresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_bottomView\" destination=\"16n-m5-v72\" id=\"M96-Rj-3vP\"/>\n                <outlet property=\"_columnModeButton\" destination=\"0Gc-7g-Ass\" id=\"XI8-35-JsW\"/>\n                <outlet property=\"_diagnosticMessageTextView\" destination=\"IwT-LV-4u1\" id=\"ygu-AN-tpy\"/>\n                <outlet property=\"_exceptionTypeMoreInfoButton\" destination=\"oyw-Du-OMN\" id=\"82e-p8-W3R\"/>\n                <outlet property=\"_exceptionTypeValue\" destination=\"UjR-qo-T8o\" id=\"orF-Ig-CDt\"/>\n                <outlet property=\"_lightTableModeButton\" destination=\"txw-BM-Naa\" id=\"pWp-8l-uF0\"/>\n                <outlet property=\"_listModeButton\" destination=\"4H4-2A-3rH\" id=\"TPP-Pc-27m\"/>\n                <outlet property=\"_middleView\" destination=\"3jW-NO-y2r\" id=\"tdb-iF-AuV\"/>\n                <outlet property=\"_showBinaryImagesButton\" destination=\"mXS-EH-zAu\" id=\"YMP-3f-zjX\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"STs-S6-lOY\" id=\"7jf-g3-CT7\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"tXx-uN-2vh\" id=\"SBE-d0-8OJ\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"2vU-ne-pQu\" id=\"sEh-95-6Lh\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"QRs-W6-mBT\" id=\"KOn-Jl-aus\"/>\n                <outlet property=\"_splitView\" destination=\"xQ0-xe-5sR\" id=\"I9n-V8-sWN\"/>\n                <outlet property=\"_threadsContainerView\" destination=\"tzS-vU-NLb\" id=\"tuG-n2-KAA\"/>\n                <outlet property=\"_topView\" destination=\"fcj-Y3-D2P\" id=\"otl-zr-mtC\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"447\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gdJ-dt-1kl\">\n                    <rect key=\"frame\" x=\"13\" y=\"421\" width=\"101\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"Exception Type:\" id=\"ayc-kQ-Slx\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"Sxy-MF-gHB\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"409\" width=\"869\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UjR-qo-T8o\">\n                    <rect key=\"frame\" x=\"118\" y=\"421\" width=\"361\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" id=\"s2X-DC-xIe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"oyw-Du-OMN\">\n                    <rect key=\"frame\" x=\"747\" y=\"412\" width=\"108\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"More Info…\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Upz-9K-gHp\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showMoreExceptionInfo:\" target=\"-2\" id=\"A1K-iE-4RQ\"/>\n                    </connections>\n                </button>\n                <splitView arrangesAllSubviews=\"NO\" dividerStyle=\"thin\" id=\"xQ0-xe-5sR\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"411\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView id=\"fcj-Y3-D2P\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"92\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                            <subviews>\n                                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"xta-0h-6ql\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"871\" height=\"73\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <clipView key=\"contentView\" copiesOnScroll=\"NO\" id=\"d4p-1Y-po0\">\n                                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"869\" height=\"71\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                        <subviews>\n                                            <textView editable=\"NO\" drawsBackground=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" id=\"IwT-LV-4u1\">\n                                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"71\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <size key=\"minSize\" width=\"869\" height=\"71\"/>\n                                                <size key=\"maxSize\" width=\"871\" height=\"10000000\"/>\n                                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textView>\n                                        </subviews>\n                                    </clipView>\n                                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"RY3-Qx-cWa\">\n                                        <rect key=\"frame\" x=\"-14\" y=\"1\" width=\"15\" height=\"0.0\"/>\n                                        <autoresizingMask key=\"autoresizingMask\"/>\n                                    </scroller>\n                                </scrollView>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TL4-gi-udl\">\n                                    <rect key=\"frame\" x=\"13\" y=\"2\" width=\"68\" height=\"16\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"Backtraces\" id=\"Dtf-ev-i4n\">\n                                        <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                            </subviews>\n                        </customView>\n                        <customView id=\"3jW-NO-y2r\" userLabel=\"Middle View\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"93\" width=\"869\" height=\"177\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                            <subviews>\n                                <button toolTip=\"Show backtraces in columns\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"0Gc-7g-Ass\">\n                                    <rect key=\"frame\" x=\"65\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallColumn_Template\" imagePosition=\"only\" alignment=\"center\" inset=\"2\" id=\"X5W-Qe-nKe\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"e7v-G7-W7s\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Show only crashed thread\" verticalHuggingPriority=\"750\" id=\"QRs-W6-mBT\">\n                                    <rect key=\"frame\" x=\"751\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"con-zk-L9l\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"fgj-Js-Ah7\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Hide or show the machine instruction address\" verticalHuggingPriority=\"750\" id=\"2vU-ne-pQu\">\n                                    <rect key=\"frame\" x=\"809\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"w28-Ax-j2K\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"gJR-EI-GwW\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Hide or show the binary name\" verticalHuggingPriority=\"750\" id=\"STs-S6-lOY\">\n                                    <rect key=\"frame\" x=\"780\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Aan-op-skH\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"sVI-Dr-72U\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Hide or show the byte offset\" verticalHuggingPriority=\"750\" id=\"tXx-uN-2vh\">\n                                    <rect key=\"frame\" x=\"838\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"GRj-N7-F4j\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"MdF-Tl-Xtk\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Hide or show the binary images\" verticalHuggingPriority=\"750\" id=\"mXS-EH-zAu\">\n                                    <rect key=\"frame\" x=\"1\" y=\"-1\" width=\"27\" height=\"22\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"bottom_disclose_Template\" imagePosition=\"only\" alignment=\"center\" alternateImage=\"bottom_hide_Template\" inset=\"2\" id=\"Awy-Hl-TgF\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"showHideBottomView:\" target=\"-2\" id=\"udq-fk-pc4\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Show backtraces in a list \" verticalHuggingPriority=\"750\" tag=\"1\" id=\"4H4-2A-3rH\">\n                                    <rect key=\"frame\" x=\"42\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSListViewTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"i1d-5C-VGM\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"mrq-dw-3ek\"/>\n                                    </connections>\n                                </button>\n                                <button hidden=\"YES\" toolTip=\"Show backtraces in a caroussel\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"txw-BM-Naa\">\n                                    <rect key=\"frame\" x=\"88\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallLightTable_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"EhU-bz-HLR\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"ABc-ah-Ysu\"/>\n                                    </connections>\n                                </button>\n                                <customView id=\"tzS-vU-NLb\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"22\" width=\"871\" height=\"156\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </customView>\n                        <customView id=\"16n-m5-v72\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"271\" width=\"869\" height=\"140\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"jmb-1Q-H0m\"/>\n                    </connections>\n                </splitView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"306.5\" y=\"-139.5\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSListViewTemplate\" width=\"14\" height=\"10\"/>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bottom_disclose_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bottom_hide_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallColumn_Template\" width=\"14\" height=\"10\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n        <image name=\"smallLightTable_Template\" width=\"14\" height=\"10\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICrashLogPresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationTextViewController\">\n            <connections>\n                <outlet property=\"_sectionsVisibilityPopUpButton\" destination=\"o3T-bg-7a6\" id=\"vRD-qm-Pyp\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"Ytt-64-lj2\" id=\"6lh-Tf-i9B\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"gHh-U9-6ts\" id=\"w5b-4r-VB4\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"V1i-87-jZk\" id=\"tAE-2I-lj8\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"hZe-Mo-RWl\" id=\"pSn-XW-qF6\"/>\n                <outlet property=\"_textView\" destination=\"Gtc-Yk-xtd\" id=\"s9U-Yv-TsI\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"612\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <popUpButton toolTip=\"Filter visible sections\" id=\"o3T-bg-7a6\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"31\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"hR3-DY-z5t\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"e8c-hg-WG7\">\n                            <items>\n                                <menuItem state=\"on\" image=\"quote_Template\" hidden=\"YES\" id=\"ggI-rC-fEt\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Header\" id=\"zdn-EI-sae\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-2\" id=\"QIM-JJ-4Lh\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"fZC-QV-uXY\"/>\n                                <menuItem title=\"Exception Information\" id=\"LpK-Zx-Gla\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-2\" id=\"2VZ-w6-6FZ\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Diagnostic Messages\" id=\"M4h-Oa-aq3\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-2\" id=\"hQt-R4-vLH\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"3Wr-0I-wum\"/>\n                                <menuItem title=\"Backtraces\" id=\"kXZ-qs-DxU\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-2\" id=\"B8j-HN-qA3\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Thread State\" id=\"d7k-xL-Hbq\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-2\" id=\"c9g-bt-Ect\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Binary Images\" id=\"FHu-OU-dEn\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-2\" id=\"E7Q-0s-gFI\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <button toolTip=\"Show only crashed thread\" verticalHuggingPriority=\"750\" id=\"hZe-Mo-RWl\">\n                    <rect key=\"frame\" x=\"574\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"cgk-bN-rIw\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"hSj-AL-N38\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Hide or show byte offset\" verticalHuggingPriority=\"750\" id=\"gHh-U9-6ts\">\n                    <rect key=\"frame\" x=\"661\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"O1c-Fy-oRt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"s9c-GQ-gYk\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Hide or show machine instruction address\" verticalHuggingPriority=\"750\" id=\"V1i-87-jZk\">\n                    <rect key=\"frame\" x=\"632\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"N9g-4y-bag\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"muF-oq-Yyp\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Hide or show binary name\" verticalHuggingPriority=\"750\" id=\"Ytt-64-lj2\">\n                    <rect key=\"frame\" x=\"603\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"feE-rv-jxh\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"pin-0C-OOg\"/>\n                    </connections>\n                </button>\n                <scrollView borderType=\"none\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"ekh-hq-gUp\" customClass=\"NSCrashLogTextScrollView\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"692\" height=\"589\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" copiesOnScroll=\"NO\" id=\"5MQ-yl-x1z\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <textView editable=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" smartInsertDelete=\"YES\" id=\"Gtc-Yk-xtd\" customClass=\"CUICrashLogTextView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <size key=\"minSize\" width=\"692\" height=\"589\"/>\n                                <size key=\"maxSize\" width=\"692\" height=\"10000000\"/>\n                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </textView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ilc-Nf-Ue4\">\n                        <rect key=\"frame\" x=\"677\" y=\"0.0\" width=\"15\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"327\" y=\"99\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"quote_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICrashLogsListViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsListViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"kV4-Gy-Y5g\" id=\"mab-gb-mLb\"/>\n                <outlet property=\"_shareMenu\" destination=\"fYp-Jl-UVV\" id=\"UDn-zl-y3K\"/>\n                <outlet property=\"_sortPopUpButton\" destination=\"vD3-8d-OAL\" id=\"bxh-ry-Anh\"/>\n                <outlet property=\"_tableView\" destination=\"up6-IV-9dX\" id=\"qr9-ho-AXW\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"356\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"38\" horizontalPageScroll=\"10\" verticalLineScroll=\"38\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"3HT-Gz-85z\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"242\" height=\"333\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"pIU-n9-gmy\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"240\" height=\"331\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" typeSelect=\"NO\" rowHeight=\"36\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"up6-IV-9dX\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"331\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"crashlog\" width=\"237\" minWidth=\"40\" maxWidth=\"3000\" id=\"mvk-6t-fLR\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"mYa-rl-emi\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"crashlog cell\" id=\"Xca-mC-mWV\" customClass=\"CUICrashLogTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"237\" height=\"36\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"mVA-Z6-k5O\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"17\" width=\"130\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"x97-bl-W1B\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"PbV-Y5-NBE\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"6\" width=\"24\" height=\"24\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"CAj-gG-wBu\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"JiO-a5-b11\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"5\" width=\"132\" height=\"11\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"JeG-Im-RXs\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"miniSystem\"/>\n                                                            <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"BBl-CI-Lfa\">\n                                                        <rect key=\"frame\" x=\"165\" y=\"11\" width=\"71\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"zKb-T5-FgR\">\n                                                            <font key=\"font\" metaFont=\"miniSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dateLabel\" destination=\"JiO-a5-b11\" id=\"HbY-n5-YwU\"/>\n                                                    <outlet property=\"exceptionTypeLabel\" destination=\"BBl-CI-Lfa\" id=\"oYd-S0-W7S\"/>\n                                                    <outlet property=\"imageView\" destination=\"PbV-Y5-NBE\" id=\"MnJ-Rq-ILZ\"/>\n                                                    <outlet property=\"textField\" destination=\"mVA-Z6-k5O\" id=\"36v-QD-EVB\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"cwW-Ck-seH\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"9Oi-EP-GeV\"/>\n                                    <outlet property=\"menu\" destination=\"K9J-Sc-Re6\" id=\"I8m-OA-9dB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"9gf-HZ-0gE\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"fDS-AZ-p9b\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <connections>\n                        <outlet property=\"nextKeyView\" destination=\"kV4-Gy-Y5g\" id=\"1ku-o3-h60\"/>\n                    </connections>\n                </scrollView>\n                <popUpButton id=\"vD3-8d-OAL\">\n                    <rect key=\"frame\" x=\"207\" y=\"4\" width=\"29\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" imagePosition=\"only\" alignment=\"left\" lineBreakMode=\"truncatingTail\" tag=\"-1\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"GL8-00-Vd6\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"9d9-ef-5mD\">\n                            <items>\n                                <menuItem image=\"NSActionTemplate\" tag=\"-1\" hidden=\"YES\" id=\"29W-Zg-HYo\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Show\" tag=\"-1\" enabled=\"NO\" id=\"JK6-HP-t2c\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"83X-bU-gU8\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Process Name\" id=\"Knq-mU-Xyu\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"4jX-xR-Vde\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Report File Name\" tag=\"1\" id=\"ymb-51-zC8\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"9Yt-ZP-CXj\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"W3g-2P-JBj\"/>\n                                <menuItem title=\"Sort by\" tag=\"-1\" enabled=\"NO\" id=\"Rfq-Kx-kub\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"xWq-oW-cf1\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Date\" id=\"Vew-KO-SYM\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"PWf-yF-FXe\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Name\" tag=\"1\" id=\"ONn-2g-Z6J\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"NP0-Rw-xCJ\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"kV4-Gy-Y5g\">\n                    <rect key=\"frame\" x=\"5\" y=\"2\" width=\"201\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filter\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"vf8-7z-IX2\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"AbZ-G7-C3w\"/>\n                        <outlet property=\"nextKeyView\" destination=\"up6-IV-9dX\" id=\"fro-eH-HkL\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-70\" y=\"-115\"/>\n        </customView>\n        <menu id=\"K9J-Sc-Re6\">\n            <items>\n                <menuItem title=\"Share\" id=\"Z85-YC-iqx\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Share\" id=\"fYp-Jl-UVV\">\n                        <items>\n                            <menuItem title=\"Item\" id=\"mcY-bs-XBY\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"77W-Wm-C8z\"/>\n                <menuItem title=\"Show in Finder\" id=\"1tQ-M6-BhY\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"VM3-SG-pFL\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"wYO-OM-Zfy\"/>\n                <menuItem title=\"Move to Trash\" id=\"H9t-ba-DIj\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-2\" id=\"5Yv-gc-anj\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"bpu-1P-Sum\">\n                    <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-2\" id=\"jz9-Pm-lkY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"265\" y=\"167\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICrashLogsSourceSmartEditorWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourceSmartEditorWindowController\">\n            <connections>\n                <outlet property=\"_defaultButton\" destination=\"Vz1-eq-Bkn\" id=\"5aX-ze-jQK\"/>\n                <outlet property=\"_descriptionTextField\" destination=\"ZDo-yP-EKy\" id=\"4xH-ud-SgF\"/>\n                <outlet property=\"_nameTextField\" destination=\"xBE-Xe-jfR\" id=\"MHn-8t-z8e\"/>\n                <outlet property=\"_predicatorEditor\" destination=\"jDY-Qj-m2x\" id=\"FoF-WG-5OS\"/>\n                <outlet property=\"window\" destination=\"6Nx-tZ-z08\" id=\"xRR-dz-5L0\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"\" animationBehavior=\"default\" id=\"6Nx-tZ-z08\" customClass=\"CUICrashLogsSourceSmartEditorPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"272\" y=\"172\" width=\"770\" height=\"425\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"500\" height=\"300\"/>\n            <view key=\"contentView\" id=\"faP-Uk-3iG\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"770\" height=\"425\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"gOj-hZ-3PD\">\n                        <rect key=\"frame\" x=\"20\" y=\"61\" width=\"730\" height=\"253\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"hPl-qb-BPf\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"728\" height=\"251\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <predicateEditor verticalHuggingPriority=\"750\" nestingMode=\"compound\" formattingStringsFilename=\"Predicates\" rowHeight=\"32\" id=\"jDY-Qj-m2x\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"728\" height=\"251\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <rowTemplates/>\n                                </predicateEditor>\n                            </subviews>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"qAm-Sw-0Kh\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"360\" height=\"15\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"7TB-Eg-mtV\">\n                            <rect key=\"frame\" x=\"336\" y=\"1\" width=\"15\" height=\"84\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"xBE-Xe-jfR\" id=\"VQF-PC-qyE\"/>\n                        </connections>\n                    </scrollView>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"l74-1V-jTB\">\n                        <rect key=\"frame\" x=\"18\" y=\"386\" width=\"78\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Name:\" id=\"reH-vX-GUc\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"xBE-Xe-jfR\">\n                        <rect key=\"frame\" x=\"102\" y=\"383\" width=\"648\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"vms-yZ-h6X\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"ZDo-yP-EKy\" id=\"KLi-H6-FaN\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scv-qL-eIO\">\n                        <rect key=\"frame\" x=\"11\" y=\"356\" width=\"85\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Description:\" id=\"zQj-c9-rhZ\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gZy-Gi-lVS\">\n                        <rect key=\"frame\" x=\"18\" y=\"322\" width=\"154\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"List all reports matching:\" id=\"yeg-vI-i3G\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"ZDo-yP-EKy\">\n                        <rect key=\"frame\" x=\"102\" y=\"354\" width=\"648\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"NHO-Tg-DVY\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"jDY-Qj-m2x\" id=\"7GQ-Ig-FpW\"/>\n                        </connections>\n                    </textField>\n                    <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"Vz1-eq-Bkn\">\n                        <rect key=\"frame\" x=\"674\" y=\"13\" width=\"82\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"OK\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"XBD-qh-UfL\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nDQ\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"WvP-6v-END\"/>\n                        </connections>\n                    </button>\n                    <button verticalHuggingPriority=\"750\" id=\"V1T-Ch-XmL\">\n                        <rect key=\"frame\" x=\"592\" y=\"13\" width=\"82\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"Cancel\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"wdm-Py-Aj7\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nGw\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"Bzy-Dz-sSF\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"101\" y=\"-846\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUICrashLogsSourcesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourcesViewController\">\n            <connections>\n                <outlet property=\"_actionPopUpButton\" destination=\"sKM-ic-Jtc\" id=\"iwb-q5-Ljf\"/>\n                <outlet property=\"_removeButton\" destination=\"FnB-m4-Sew\" id=\"wN7-Xv-wbV\"/>\n                <outlet property=\"_tableView\" destination=\"qaX-hd-IQc\" id=\"7TK-LI-fbH\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"204\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"26\" horizontalPageScroll=\"10\" verticalLineScroll=\"26\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jOq-q2-5j4\">\n                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"294\" height=\"185\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"V1I-rp-JOe\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"292\" height=\"183\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"firstColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"24\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"qaX-hd-IQc\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"183\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"288\" minWidth=\"40\" maxWidth=\"3000\" id=\"8eI-mT-cek\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"6Aq-8j-jza\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"regular\" id=\"V1Z-VM-OSw\" customClass=\"CUICrashLogsSourceTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"288\" height=\"24\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"CHR-0u-IlO\">\n                                                        <rect key=\"frame\" x=\"28\" y=\"4\" width=\"211\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"nc6-Rz-iCi\">\n                                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeSourceNameFrom:\" target=\"-2\" id=\"mWi-p6-3aT\"/>\n                                                        </connections>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"oo6-n4-B90\">\n                                                        <rect key=\"frame\" x=\"6\" y=\"4\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"4kJ-0G-1fI\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"FRn-Dx-rid\" customClass=\"CUICaptionView\">\n                                                        <rect key=\"frame\" x=\"241\" y=\"4\" width=\"45\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"gba-xW-dcj\">\n                                                            <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"countTextField\" destination=\"FRn-Dx-rid\" id=\"Ifb-AG-5YH\"/>\n                                                    <outlet property=\"imageView\" destination=\"oo6-n4-B90\" id=\"Oxn-bE-uRy\"/>\n                                                    <outlet property=\"textField\" destination=\"CHR-0u-IlO\" id=\"X4V-af-tuu\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"separator\" id=\"HDp-BB-XMC\">\n                                                <rect key=\"frame\" x=\"1\" y=\"27\" width=\"288\" height=\"12\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"LMg-V2-t05\">\n                                                        <rect key=\"frame\" x=\"12\" y=\"4\" width=\"264\" height=\"4\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                    </box>\n                                                </subviews>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Rbs-pr-q0d\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"zhS-3Z-X2w\"/>\n                                    <outlet property=\"menu\" destination=\"HyN-lT-5sn\" id=\"71y-43-qQ2\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                        <nil key=\"backgroundColor\"/>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"T63-2m-Wdk\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"QtW-2T-sMx\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <button toolTip=\"Remove file, folder or smart source\" verticalHuggingPriority=\"750\" id=\"FnB-m4-Sew\">\n                    <rect key=\"frame\" x=\"26\" y=\"-2\" width=\"25\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSRemoveTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"ocB-wp-jcr\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"removeSources:\" target=\"-2\" id=\"I1p-xT-TZx\"/>\n                    </connections>\n                </button>\n                <popUpButton id=\"sKM-ic-Jtc\">\n                    <rect key=\"frame\" x=\"262\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"MSJ-wy-0Je\" id=\"lEb-Ag-E8W\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"LzV-Lh-Udh\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSActionTemplate\" hidden=\"YES\" id=\"MSJ-wy-0Je\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Edit…\" id=\"9dK-mu-DL0\">\n                                    <connections>\n                                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"PmO-aB-nyF\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"2ub-md-RCd\"/>\n                                <menuItem title=\"Show in Finder\" id=\"pSl-d5-liK\">\n                                    <connections>\n                                        <action selector=\"showInFinder:\" target=\"-2\" id=\"wFv-E8-fC9\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <popUpButton toolTip=\"Add file, folder or smart source\" id=\"Fjw-36-xHZ\">\n                    <rect key=\"frame\" x=\"-4\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"DJQ-Va-eqw\" id=\"w3m-zi-K88\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"vOh-MW-SiJ\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSAddTemplate\" hidden=\"YES\" id=\"DJQ-Va-eqw\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"New Smart Source…\" id=\"HSw-t4-mnl\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-2\" id=\"mMA-Im-5Li\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"FFc-YN-a1b\"/>\n                                <menuItem title=\"Add File or Folder…\" id=\"r1o-zR-BIu\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSource:\" target=\"-2\" id=\"1HN-pX-hYb\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"118\" y=\"-406\"/>\n        </customView>\n        <menu id=\"HyN-lT-5sn\">\n            <items>\n                <menuItem title=\"Edit…\" id=\"Twv-NI-xzw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"KCD-e6-KYn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"qHD-mG-1OK\"/>\n                <menuItem title=\"Export…\" id=\"WOP-2L-vqA\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-2\" id=\"VBk-ZW-3Ao\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"lae-j9-hK9\"/>\n                <menuItem title=\"Show in Finder\" id=\"teN-5F-Oei\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"Lf6-Pc-sdu\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"b4u-wr-KQQ\"/>\n                <menuItem title=\"Sort by Name\" id=\"QXy-jw-g6a\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"sortByName:\" target=\"-2\" id=\"yf0-Rb-nOY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-266\" y=\"-716\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIExportAccessoryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIExportAccessoryViewController\">\n            <connections>\n                <outlet property=\"_allContentsRadioButton\" destination=\"lQT-bg-eZT\" id=\"Mpw-Xc-7kK\"/>\n                <outlet property=\"_formatPopUpButton\" destination=\"1u4-74-6Q1\" id=\"Nog-Ao-3bb\"/>\n                <outlet property=\"_obfuscateContentsRadioButton\" destination=\"Sah-MT-0mU\" id=\"6tk-6f-82q\"/>\n                <outlet property=\"_obfuscateDescriptionLabel\" destination=\"hAW-cU-fmj\" id=\"J6U-yP-9ZY\"/>\n                <outlet property=\"_selectionOnlyRadioButton\" destination=\"yCi-24-cSg\" id=\"hjW-mF-lCx\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"608\" height=\"188\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"1u4-74-6Q1\">\n                    <rect key=\"frame\" x=\"306\" y=\"144\" width=\"81\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"HTML\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"lK1-XA-eFw\" id=\"3tZ-5v-KqQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"NIf-x2-QG2\">\n                            <items>\n                                <menuItem title=\"HTML\" state=\"on\" id=\"lK1-XA-eFw\"/>\n                                <menuItem title=\"RTF\" tag=\"1\" id=\"OPJ-uJ-ymt\"/>\n                                <menuItem title=\"PDF\" tag=\"2\" id=\"Hq6-BX-2O0\"/>\n                                <menuItem title=\"Text\" tag=\"3\" id=\"P5V-Km-rMe\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchExportFormat:\" target=\"-2\" id=\"J2A-b6-fHB\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ra9-fZ-6EK\">\n                    <rect key=\"frame\" x=\"251\" y=\"149\" width=\"51\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Format:\" id=\"kgo-g3-HQW\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"lQT-bg-eZT\">\n                    <rect key=\"frame\" x=\"306\" y=\"112\" width=\"137\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"Full report\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"pba-yN-6P5\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"uaB-9C-u9X\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"yCi-24-cSg\">\n                    <rect key=\"frame\" x=\"306\" y=\"91\" width=\"137\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"Selected text only\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"kfb-cJ-elR\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"GTa-iX-bQ5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cJJ-vN-i8N\">\n                    <rect key=\"frame\" x=\"180\" y=\"113\" width=\"122\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Exported Contents:\" id=\"buk-Aw-yVe\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Sah-MT-0mU\">\n                    <rect key=\"frame\" x=\"305\" y=\"56\" width=\"148\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Obfuscate contents\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"q4d-rg-bxC\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchObfuscateContents:\" target=\"-2\" id=\"KP6-NQ-Lhn\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"hAW-cU-fmj\">\n                    <rect key=\"frame\" x=\"324\" y=\"20\" width=\"272\" height=\"28\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"left\" title=\"The names, paths and symbols of the executable and non-system binary images will be obfuscated.\" id=\"Zju-hf-3Ou\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-22\" y=\"-148\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIInspectorExecutableViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorExecutableViewController\">\n            <connections>\n                <outlet property=\"_codeSigningButton\" destination=\"t1b-WY-R33\" id=\"N91-6Q-1r8\"/>\n                <outlet property=\"_executableArchitectureValue\" destination=\"FHg-iH-xDN\" id=\"gZP-1i-Ula\"/>\n                <outlet property=\"_executableIconView\" destination=\"Sae-Ke-hDq\" id=\"ypT-Mj-Zdm\"/>\n                <outlet property=\"_executableNameValue\" destination=\"Lro-Zd-nK3\" id=\"TjT-bg-eaE\"/>\n                <outlet property=\"_executablePathShowButton\" destination=\"HUC-Md-GwA\" id=\"XhF-6S-OEB\"/>\n                <outlet property=\"_executablePathValue\" destination=\"vJ5-dm-szr\" id=\"r17-Kq-oCv\"/>\n                <outlet property=\"_executableVersionValue\" destination=\"gDy-ag-3pH\" id=\"Yag-xh-PfZ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"180\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gDy-ag-3pH\">\n                    <rect key=\"frame\" x=\"88\" y=\"108\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" title=\"-\" id=\"IMe-4e-a2n\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ycX-86-LPH\">\n                    <rect key=\"frame\" x=\"31\" y=\"43\" width=\"53\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Location:\" id=\"SZn-tV-fDm\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3RL-Kg-wqv\">\n                    <rect key=\"frame\" x=\"11\" y=\"71\" width=\"73\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Architecture:\" id=\"gXy-9k-Kye\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"vJ5-dm-szr\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" selectable=\"YES\" title=\"-\" id=\"wdP-NI-1D3\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Lro-Zd-nK3\">\n                    <rect key=\"frame\" x=\"88\" y=\"125\" width=\"277\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" title=\"-\" id=\"jis-EI-eF4\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"Sae-Ke-hDq\">\n                    <rect key=\"frame\" x=\"34\" y=\"101\" width=\"48\" height=\"48\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"ctr-8J-DUa\"/>\n                </imageView>\n                <button verticalHuggingPriority=\"750\" id=\"HUC-Md-GwA\">\n                    <rect key=\"frame\" x=\"366\" y=\"15\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"R8w-To-3V9\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showExecutableInFinder:\" target=\"-2\" id=\"tyZ-In-ieS\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"t1b-WY-R33\">\n                    <rect key=\"frame\" x=\"366\" y=\"161\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSLockLockedTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"xKl-nT-2wK\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showCodeSigningInformation:\" target=\"-2\" id=\"6VI-iK-rJ8\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"FHg-iH-xDN\">\n                    <rect key=\"frame\" x=\"88\" y=\"71\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" title=\"-\" id=\"sgJ-ZE-akF\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"JP3-16-pwL\">\n                    <rect key=\"frame\" x=\"4\" y=\"160\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Executable\" id=\"hb6-Qr-SQw\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-51.5\" y=\"-186\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSLockLockedTemplate\" width=\"10\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIInspectorGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorGeneralViewController\">\n            <connections>\n                <outlet property=\"_bridgeOSVersionValue\" destination=\"BfS-1Q-avM\" id=\"Aih-cE-fUa\"/>\n                <outlet property=\"_crashDateValue\" destination=\"aeZ-E8-L6d\" id=\"N7P-8g-o9B\"/>\n                <outlet property=\"_operatingSystemVersionLabel\" destination=\"TdJ-MQ-6CN\" id=\"On3-gp-MLA\"/>\n                <outlet property=\"_operatingSystemVersionValue\" destination=\"SgG-rE-gjS\" id=\"6hk-jF-Az8\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"s8b-in-hjv\">\n                    <rect key=\"frame\" x=\"41\" y=\"59\" width=\"43\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Date:\" id=\"f0C-O7-hfc\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aeZ-E8-L6d\">\n                    <rect key=\"frame\" x=\"88\" y=\"59\" width=\"283\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"4oA-j1-qqu\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                    <connections>\n                        <outlet property=\"formatter\" destination=\"CAS-2z-CXR\" id=\"o5J-Fr-jq7\"/>\n                    </connections>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"SgG-rE-gjS\">\n                    <rect key=\"frame\" x=\"88\" y=\"37\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"IoO-4Y-BLi\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TdJ-MQ-6CN\">\n                    <rect key=\"frame\" x=\"18\" y=\"37\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"macOS:\" id=\"B2h-K8-1XC\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ai6-kr-ddH\">\n                    <rect key=\"frame\" x=\"23\" y=\"15\" width=\"61\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Bridge OS:\" id=\"hKB-kb-Fu1\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Eku-en-ffA\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"48\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"General\" id=\"Slr-R1-4oS\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"BfS-1Q-avM\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" title=\"-\" id=\"JiY-vk-jYf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"69.5\"/>\n        </customView>\n        <dateFormatter dateStyle=\"long\" timeStyle=\"medium\" id=\"CAS-2z-CXR\"/>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIInspectorProcessesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorProcessesViewController\">\n            <connections>\n                <outlet property=\"_parentProcessNameValue\" destination=\"sdS-1T-5A6\" id=\"YdX-gO-EHR\"/>\n                <outlet property=\"_processNameValue\" destination=\"dWY-e9-8s7\" id=\"kaZ-i4-xhx\"/>\n                <outlet property=\"_responsibleProcessNameValue\" destination=\"UYO-VY-Dyh\" id=\"hqs-KJ-tM6\"/>\n                <outlet property=\"view\" destination=\"rFj-qp-YPZ\" id=\"SDI-BY-k6p\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"rFj-qp-YPZ\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"4uB-ml-0Ol\">\n                    <rect key=\"frame\" x=\"12\" y=\"15\" width=\"72\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Responsible:\" id=\"jqz-4F-VO7\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UYO-VY-Dyh\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"pZF-sh-MrA\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hLm-Sv-QmR\">\n                    <rect key=\"frame\" x=\"11\" y=\"37\" width=\"73\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Par. Process:\" id=\"LQg-a2-eTx\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"S5n-dU-r4J\">\n                    <rect key=\"frame\" x=\"34\" y=\"59\" width=\"50\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Process:\" id=\"cvR-Mj-EZK\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dWY-e9-8s7\">\n                    <rect key=\"frame\" x=\"88\" y=\"59\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"Oa8-vR-6jZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hD5-0s-riR\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"62\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Processes\" id=\"Peb-bL-MXn\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"sdS-1T-5A6\">\n                    <rect key=\"frame\" x=\"88\" y=\"37\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"2qk-DS-kXk\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-1.5\" y=\"-239.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIInspectorUserViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorUserViewController\">\n            <connections>\n                <outlet property=\"_userIDValue\" destination=\"bZr-jf-89d\" id=\"3zx-IQ-gXi\"/>\n                <outlet property=\"view\" destination=\"3rg-3s-egq\" id=\"NYa-HK-UvG\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"3rg-3s-egq\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"52\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Hlm-9j-k55\">\n                    <rect key=\"frame\" x=\"4\" y=\"34\" width=\"31\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"User\" id=\"SsR-D5-bkx\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"peF-fl-SHq\">\n                    <rect key=\"frame\" x=\"23\" y=\"15\" width=\"61\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"User ID:\" id=\"qra-Pb-I2W\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"bZr-jf-89d\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"cqQ-PI-zPB\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"158\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUILineJumperWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUILineJumperWindowController\">\n            <connections>\n                <outlet property=\"_lineNumberField\" destination=\"Hsy-sF-ru8\" id=\"Szf-Gn-kjq\"/>\n                <outlet property=\"_resetButton\" destination=\"dIW-wv-LKd\" id=\"vVJ-Nt-akO\"/>\n                <outlet property=\"window\" destination=\"mSG-cx-fbW\" id=\"fe5-gS-1Ha\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" hidesOnDeactivate=\"YES\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.lineNumber\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titlebarAppearsTransparent=\"YES\" id=\"mSG-cx-fbW\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" fullSizeContentView=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenNone=\"YES\" fullScreenDisallowsTiling=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"384\" height=\"49\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"Xph-p4-B8X\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"384\" height=\"49\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" id=\"Hsy-sF-ru8\">\n                        <rect key=\"frame\" x=\"45\" y=\"11\" width=\"147\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" focusRingType=\"none\" placeholderString=\"Line Number\" usesSingleLineMode=\"YES\" id=\"Ju2-zH-bhG\">\n                            <font key=\"font\" metaFont=\"system\" size=\"21\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <action selector=\"takeLineNumberFrom:\" target=\"-2\" id=\"d6v-mK-cXL\"/>\n                            <outlet property=\"delegate\" destination=\"-2\" id=\"X5a-vS-Tae\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dpK-Gf-az3\">\n                        <rect key=\"frame\" x=\"9\" y=\"10\" width=\"32\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"center\" title=\"#\" id=\"x4t-M3-5dd\">\n                            <font key=\"font\" metaFont=\"system\" size=\"30\"/>\n                            <color key=\"textColor\" name=\"tertiaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <button hidden=\"YES\" verticalHuggingPriority=\"750\" id=\"dIW-wv-LKd\">\n                        <rect key=\"frame\" x=\"345\" y=\"14\" width=\"20\" height=\"20\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"NSStopProgressFreestandingTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"AFZ-Xq-Pjf\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"reset:\" target=\"-2\" id=\"XzM-AA-Vzv\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"awR-rx-pPU\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"Hsy-sF-ru8\" id=\"j6W-l3-TNl\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"177\" y=\"-15\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSStopProgressFreestandingTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIMainWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIMainWindowController\">\n            <connections>\n                <outlet property=\"_mainLayoutSegmentedControl\" destination=\"WIY-fY-uf6\" id=\"gGf-x3-UnW\"/>\n                <outlet property=\"_presentationModeSegmentedControl\" destination=\"FpB-c3-RI5\" id=\"7TU-rc-fDv\"/>\n                <outlet property=\"_registersWindowButton\" destination=\"tOu-D2-Ept\" id=\"pD9-s6-b6U\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Unexpectedly\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.main\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titleVisibility=\"hidden\" id=\"F0z-JX-Cv5\" customClass=\"CUIMainWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" topStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"701\" y=\"761\" width=\"1210\" height=\"576\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1577\"/>\n            <value key=\"minSize\" type=\"size\" width=\"1210\" height=\"576\"/>\n            <view key=\"contentView\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1210\" height=\"576\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"E5E3FE75-B923-4050-8328-E8DBF77270DA\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"qok-Nh-ZqX\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"4BB16A90-DFB3-4B72-BC1E-0501635805D9\" label=\"Registers\" paletteLabel=\"Registers\" toolTip=\"Show or hide registers window\" id=\"odd-p2-xXV\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"tOu-D2-Ept\">\n                            <rect key=\"frame\" x=\"14\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"R\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"pn6-k3-IBk\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"systemBold\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-2\" id=\"zOP-ux-zx8\"/>\n                            </connections>\n                        </button>\n                        <connections>\n                            <action selector=\"showRegisters:\" target=\"-1\" id=\"Q3j-xK-Hru\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FE3CBB7D-3C62-4B2B-84C4-A0F949E6FC9B\" label=\"Symbolicate\" paletteLabel=\"Symbolicate\" toolTip=\"Symbolicate\" id=\"NBt-t6-6de\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"zGe-P2-PLz\">\n                            <rect key=\"frame\" x=\"22\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"✭\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"bkf-LP-EE1\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                        </button>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_champollion:\" target=\"-1\" id=\"YYP-Ms-rO2\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"CEEABC9B-6A22-4363-9CEF-97F246735D7F\" explicitItemIdentifier=\"presentation.mode\" label=\"Presentation Mode\" paletteLabel=\"Presentation Mode\" sizingBehavior=\"auto\" id=\"lTL-ew-HB0\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"FpB-c3-RI5\">\n                            <rect key=\"frame\" x=\"18\" y=\"14\" width=\"71\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectOne\" id=\"esc-Se-3Gu\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"Text\" image=\"presentation_text_Template\" width=\"32\"/>\n                                    <segment toolTip=\"Outline\" image=\"presentation_structured_Template\" width=\"32\" selected=\"YES\" tag=\"1\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"8Dc-fR-ko8\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"651A8C40-7DF7-49AE-B98F-F204C20338E7\" label=\"Areas\" paletteLabel=\"Areas\" sizingBehavior=\"auto\" id=\"dDG-Jy-kkI\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"WIY-fY-uf6\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"14\" width=\"104\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectAny\" id=\"IFc-bQ-yuq\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"Hide or show the side bar\" image=\"left_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                    <segment toolTip=\"Hide or show the binary images\" image=\"middle_switch_Template\" width=\"32\" enabled=\"NO\" tag=\"1\"/>\n                                    <segment toolTip=\"Hide or show the inspector\" image=\"right_switch_Template\" width=\"32\" selected=\"YES\" tag=\"2\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"showHideViews:\" target=\"-1\" id=\"q9p-Cx-Zfc\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowColorsItem\" id=\"Ll5-CG-7p5\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowFontsItem\" id=\"5Ai-UD-BMY\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarPrintItem\" id=\"OVf-DI-Wek\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarSpaceItem\" id=\"1s5-E7-9Hl\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarFlexibleSpaceItem\" id=\"QhD-Oy-cTl\"/>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"QhD-Oy-cTl\"/>\n                    <toolbarItem reference=\"odd-p2-xXV\"/>\n                    <toolbarItem reference=\"1s5-E7-9Hl\"/>\n                    <toolbarItem reference=\"lTL-ew-HB0\"/>\n                    <toolbarItem reference=\"dDG-Jy-kkI\"/>\n                </defaultToolbarItems>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"se5-gp-TjO\" id=\"Ndk-U6-g06\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"279\" y=\"-1395\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"left_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"middle_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"presentation_structured_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"presentation_text_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"right_switch_Template\" width=\"18\" height=\"16\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePaneAdvancedViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneAdvancedViewController\">\n            <connections>\n                <outlet property=\"_remoteVersionCheckerCheckbox\" destination=\"90R-sA-w2P\" id=\"ZPS-qK-ptZ\"/>\n                <outlet property=\"_showDebugMenuCheckbox\" destination=\"ysx-uw-uYe\" id=\"ASL-W1-sIo\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"116\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"90R-sA-w2P\">\n                    <rect key=\"frame\" x=\"329\" y=\"78\" width=\"218\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Check automatically for updates\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"xZp-NR-s8v\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchRemoteVersionCheck:\" target=\"-2\" id=\"vQo-sV-T4X\"/>\n                    </connections>\n                </button>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cfR-UU-mmm\">\n                    <rect key=\"frame\" x=\"208\" y=\"79\" width=\"117\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Software Updates:\" id=\"gEo-19-sz4\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" fixedFrame=\"YES\" boxType=\"separator\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"7cp-2p-HDv\">\n                    <rect key=\"frame\" x=\"30\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ysx-uw-uYe\">\n                    <rect key=\"frame\" x=\"329\" y=\"18\" width=\"211\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Show Debug menu in menu bar\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Aq-aa-8q1\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDebugMenu:\" target=\"-2\" id=\"JpC-OR-CwY\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"140\" y=\"65\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePaneCrashreporterViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneCrashreporterViewController\">\n            <connections>\n                <outlet property=\"_dialogTypeGroup\" destination=\"G3J-O5-TdF\" id=\"ZfW-ac-1tR\"/>\n                <outlet property=\"_notificationModeGroup\" destination=\"7ak-aK-Hz3\" id=\"2VA-sI-h8f\"/>\n                <outlet property=\"_reportUncaughtExceptionsCheckbox\" destination=\"k0s-Jp-SYV\" id=\"GO5-qu-ZEq\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"222\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"wjm-1k-GIP\">\n                    <rect key=\"frame\" x=\"211\" y=\"76\" width=\"116\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Notification Mode:\" id=\"Ipc-sm-G5f\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"G3J-O5-TdF\">\n                    <rect key=\"frame\" x=\"331\" y=\"107\" width=\"189\" height=\"60\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button toolTip=\"The Unexpectedly Quit dialog is displayed for all processes run by the user.\" tag=\"1\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"q4r-Gy-3Z5\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"84\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Developer\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"Tjt-95-3Z2\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"hvp-pX-cgQ\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"The Unexpectedly Quit dialog is never displayed.\" tag=\"2\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"i8F-ge-i9c\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"62\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Server\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"l5e-xv-Kdo\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"eST-mh-Dhc\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"The Unexpectedly Quit dialog is only displayed for application crashes.\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"KDV-3D-Zmr\">\n                            <rect key=\"frame\" x=\"-1\" y=\"43\" width=\"55\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Basic\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"8un-EB-HxH\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"K5B-SF-Gng\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"7ak-aK-Hz3\">\n                    <rect key=\"frame\" x=\"331\" y=\"54\" width=\"189\" height=\"38\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button tag=\"1\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"AhZ-xe-s0x\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"139\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"System notification\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"1LC-JU-zMZ\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"Zpu-SM-Vup\"/>\n                            </connections>\n                        </button>\n                        <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"nMG-po-tCI\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"92\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Alert dialog\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"2af-hi-y4e\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"M91-HQ-GhJ\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"k0s-Jp-SYV\">\n                    <rect key=\"frame\" x=\"329\" y=\"18\" width=\"193\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Report uncaught exceptions\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"b1K-o7-rhS\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchReportUncaughtException:\" target=\"-2\" id=\"eNP-mM-U1S\"/>\n                    </connections>\n                </button>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"X5h-y9-eMQ\">\n                    <rect key=\"frame\" x=\"221\" y=\"151\" width=\"106\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Operation Mode:\" id=\"NM5-WZ-kg0\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"3C8-jD-0F8\">\n                    <rect key=\"frame\" x=\"-2\" y=\"188\" width=\"734\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"center\" title=\"When an application quits unexpectedly on macOS, the crash report is generated by Apple's Crash Reporter service. \" id=\"XPU-ts-yFW\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"27\" y=\"15\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePaneFontscolorsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneFontscolorsViewController\">\n            <connections>\n                <outlet property=\"_backgroundColorWell\" destination=\"ojb-CW-adm\" id=\"6Dn-ei-MgC\"/>\n                <outlet property=\"_categoriesClipView\" destination=\"KId-Hv-0z4\" id=\"8eQ-tz-4oA\"/>\n                <outlet property=\"_categoriesTableView\" destination=\"Guq-9s-MSe\" id=\"dF2-aT-AVo\"/>\n                <outlet property=\"_duplicateThemeButton\" destination=\"wrW-a0-5bb\" id=\"JXl-nQ-lNe\"/>\n                <outlet property=\"_fontLabel\" destination=\"Gpc-y1-LVL\" id=\"vcf-Hl-1cN\"/>\n                <outlet property=\"_fontPanelButton\" destination=\"VXB-fG-DZO\" id=\"mWq-3d-jcw\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"ECK-8n-jgQ\" id=\"KJN-cp-7TP\"/>\n                <outlet property=\"_removeThemeButton\" destination=\"BeX-wG-c8S\" id=\"P2N-JL-pTj\"/>\n                <outlet property=\"_selectedTextColorWell\" destination=\"smi-ou-IW9\" id=\"SYJ-hQ-CeL\"/>\n                <outlet property=\"_textColorWell\" destination=\"d1A-uU-J9j\" id=\"GSq-6Z-18d\"/>\n                <outlet property=\"_textSelectionBackgroundColorWell\" destination=\"tI7-g9-Ub1\" id=\"Tqn-nk-Zpu\"/>\n                <outlet property=\"_themesTableView\" destination=\"RzM-ng-eMk\" id=\"a50-ng-EZi\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"M45-au-HoK\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"488\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" fixedFrame=\"YES\" boxType=\"custom\" borderType=\"line\" title=\"Box\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"x9E-yq-Bgj\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"197\" y=\"53\" width=\"513\" height=\"415\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"oxm-RF-gwN\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"413\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ECK-8n-jgQ\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"389\" width=\"511\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"UoY-kV-fnd\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"210\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Text\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"yUb-rK-XWX\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"tKJ-wP-cns\"/>\n                                        </connections>\n                                    </button>\n                                    <button hidden=\"YES\" tag=\"1\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"PFb-pf-cDg\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"273\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Outline\" bezelStyle=\"regularSquare\" alignment=\"center\" enabled=\"NO\" tag=\"1\" inset=\"2\" id=\"0bp-JB-hgi\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"CaH-UR-hXI\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <colorWell fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ojb-CW-adm\">\n                                <rect key=\"frame\" x=\"105\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeBackgroundColor:\" target=\"-2\" id=\"5mu-v3-HFf\"/>\n                                </connections>\n                            </colorWell>\n                            <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"0qd-wx-JZe\">\n                                <rect key=\"frame\" x=\"18\" y=\"16\" width=\"81\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Background:\" id=\"tXe-F9-mz7\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"x6u-0C-glq\">\n                                <rect key=\"frame\" x=\"195\" y=\"16\" width=\"65\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Selection:\" id=\"5b7-64-CqX\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"skb-ts-Qkm\" customClass=\"CUIFontAndColorsFramedView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"56\" width=\"511\" height=\"38\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                <subviews>\n                                    <colorWell fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"d1A-uU-J9j\">\n                                        <rect key=\"frame\" x=\"270\" y=\"6\" width=\"23\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                        <connections>\n                                            <action selector=\"takeTextColor:\" target=\"-2\" id=\"gBS-3n-BGc\"/>\n                                        </connections>\n                                    </colorWell>\n                                    <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cxK-bc-95I\" customClass=\"CUIFontBoxView\">\n                                        <rect key=\"frame\" x=\"11\" y=\"7\" width=\"251\" height=\"22\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                        <subviews>\n                                            <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Gpc-y1-LVL\">\n                                                <rect key=\"frame\" x=\"6\" y=\"3\" width=\"216\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" title=\"Label\" id=\"NnJ-xy-baM\">\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                </textFieldCell>\n                                            </textField>\n                                            <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"VXB-fG-DZO\">\n                                                <rect key=\"frame\" x=\"228\" y=\"2\" width=\"18\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <buttonCell key=\"cell\" type=\"bevel\" title=\"Button\" bezelStyle=\"rounded\" image=\"FontPanelButton\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"PCX-V4-Ul7\">\n                                                    <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                </buttonCell>\n                                                <connections>\n                                                    <action selector=\"showFontPanel:\" target=\"-2\" id=\"TXC-Hh-5Tn\"/>\n                                                </connections>\n                                            </button>\n                                        </subviews>\n                                    </customView>\n                                </subviews>\n                            </customView>\n                            <colorWell fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"tI7-g9-Ub1\">\n                                <rect key=\"frame\" x=\"266\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeTextSelectionBackgroundColor:\" target=\"-2\" id=\"3Lx-04-mDx\"/>\n                                </connections>\n                            </colorWell>\n                            <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"kKc-J1-3fa\">\n                                <rect key=\"frame\" x=\"-1\" y=\"92\" width=\"513\" height=\"298\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"KId-Hv-0z4\" customClass=\"CUICategoriesClipView\">\n                                    <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"296\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <subviews>\n                                        <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"Guq-9s-MSe\">\n                                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"511\" height=\"296\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                            <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <tableColumns>\n                                                <tableColumn width=\"499\" minWidth=\"40\" maxWidth=\"1000\" id=\"3xQ-tZ-j4q\">\n                                                    <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                                        <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </tableHeaderCell>\n                                                    <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"tik-bw-vkv\">\n                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </textFieldCell>\n                                                    <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                                    <prototypeCellViews>\n                                                        <tableCellView id=\"qJj-ED-VEr\">\n                                                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"508\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                            <subviews>\n                                                                <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"S4j-JX-cuc\">\n                                                                    <rect key=\"frame\" x=\"5\" y=\"0.0\" width=\"502\" height=\"17\"/>\n                                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QoQ-Ln-Apy\" customClass=\"CUIAATextFieldCell\">\n                                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                    </textFieldCell>\n                                                                </textField>\n                                                            </subviews>\n                                                            <connections>\n                                                                <outlet property=\"textField\" destination=\"S4j-JX-cuc\" id=\"bvA-qp-OES\"/>\n                                                            </connections>\n                                                        </tableCellView>\n                                                    </prototypeCellViews>\n                                                </tableColumn>\n                                            </tableColumns>\n                                            <connections>\n                                                <outlet property=\"dataSource\" destination=\"-2\" id=\"0Vt-up-xeZ\"/>\n                                                <outlet property=\"delegate\" destination=\"-2\" id=\"peW-tT-8ce\"/>\n                                            </connections>\n                                        </tableView>\n                                    </subviews>\n                                    <nil key=\"backgroundColor\"/>\n                                </clipView>\n                                <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"Osb-Lx-voN\">\n                                    <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                                <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Yh8-lV-Sht\">\n                                    <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                            </scrollView>\n                            <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"E3D-RK-YW7\">\n                                <rect key=\"frame\" x=\"332\" y=\"16\" width=\"90\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Selected Text:\" id=\"hlx-fO-U4G\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <colorWell fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"smi-ou-IW9\">\n                                <rect key=\"frame\" x=\"428\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeSelectedTextColor:\" target=\"-2\" id=\"St4-Kf-cho\"/>\n                                </connections>\n                            </colorWell>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"28\" horizontalPageScroll=\"10\" verticalLineScroll=\"28\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"WFH-OC-tjY\">\n                    <rect key=\"frame\" x=\"20\" y=\"71\" width=\"167\" height=\"397\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"Jk0-k7-FSA\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"165\" height=\"395\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"26\" rowSizeStyle=\"automatic\" headerView=\"CBt-FS-rdj\" viewBased=\"YES\" id=\"RzM-ng-eMk\" customClass=\"CUIThemesTableView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"370\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"153\" minWidth=\"40\" maxWidth=\"1000\" id=\"8z8-zq-M80\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"center\" title=\"Theme\">\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"LIW-YF-0qh\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g8I-5G-l02\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"162\" height=\"26\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"tDm-Ft-Jnv\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"6\" width=\"162\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tXJ-2u-YI1\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeThemeName:\" target=\"-2\" id=\"X61-RY-efm\"/>\n                                                        </connections>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"tDm-Ft-Jnv\" id=\"kHG-t9-3y3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VVl-X3-gEs\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"qGO-er-Uo0\"/>\n                                    <outlet property=\"menu\" destination=\"eAx-eb-TeX\" id=\"6hE-7d-DjH\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"sWy-II-SrD\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"160\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Ivf-sc-bjn\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" wantsLayer=\"YES\" id=\"CBt-FS-rdj\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"wrW-a0-5bb\">\n                    <rect key=\"frame\" x=\"20\" y=\"52\" width=\"78\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Duplicate\" bezelStyle=\"smallSquare\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"qIb-6V-bKQ\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Xri-vW-CH4\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"BeX-wG-c8S\">\n                    <rect key=\"frame\" x=\"97\" y=\"52\" width=\"24\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"c5I-q7-mxk\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"DD1-V1-TBJ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"umy-j0-XLf\">\n                    <rect key=\"frame\" x=\"575\" y=\"13\" width=\"141\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"Restore Defaults\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"CuZ-Pa-zjm\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"restoreDefaults:\" target=\"-2\" id=\"Gab-8f-vLB\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"QTP-jj-Yu7\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"120\" y=\"52\" width=\"67\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"7UN-KC-FeU\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"54\" y=\"-910\"/>\n        </customView>\n        <menu id=\"eAx-eb-TeX\">\n            <items>\n                <menuItem title=\"Duplicate\" id=\"RpP-Yq-5CH\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Afi-lx-Njn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Delete…\" id=\"pgM-Ek-dMO\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"Rjs-es-rtG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"Zf1-4a-jgB\"/>\n                <menuItem title=\"Import Theme…\" id=\"5HI-nQ-F9G\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"importTheme:\" target=\"-2\" id=\"cy6-qV-ueG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Export Theme…\" id=\"9mp-BZ-63A\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"exportTheme:\" target=\"-2\" id=\"6h3-pb-u8c\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-298\" y=\"-640\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"FontPanelButton\" width=\"18\" height=\"18\"/>\n        <image name=\"NSRemoveTemplate\" width=\"18\" height=\"5\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePaneGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneGeneralViewController\">\n            <connections>\n                <outlet property=\"_reportViewersPopUpButton\" destination=\"Ytb-pg-OA0\" id=\"1lY-Op-uq4\"/>\n                <outlet property=\"_showsRegistersWindowAtLaunchCheckbox\" destination=\"c18-Y4-l7a\" id=\"9YA-wO-PX5\"/>\n                <outlet property=\"_sourceEditorsPopUpButton\" destination=\"INA-cz-CFq\" id=\"ewg-BF-pgR\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"152\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Tow-sZ-5fR\">\n                    <rect key=\"frame\" x=\"186\" y=\"79\" width=\"143\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Open source files with:\" id=\"v8S-NF-Ptc\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"c18-Y4-l7a\">\n                    <rect key=\"frame\" x=\"333\" y=\"116\" width=\"165\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Show Registers window\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Qp-I2-soX\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsRegisterWindowAtLaunch:\" target=\"-2\" id=\"chH-Vd-P2e\"/>\n                    </connections>\n                </button>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"INA-cz-CFq\">\n                    <rect key=\"frame\" x=\"333\" y=\"74\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"Xah-p3-3bg\" id=\"iEv-K7-faP\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"message\"/>\n                        <menu key=\"menu\" id=\"8Pi-eD-O8F\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"Xah-p3-3bg\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchPreferedSourceCodeEditor:\" target=\"-2\" id=\"3B4-sh-5hm\"/>\n                    </connections>\n                </popUpButton>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"aiR-yu-zGz\">\n                    <rect key=\"frame\" x=\"193\" y=\"20\" width=\"136\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Default report viewer:\" id=\"OlA-pr-NqK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ytb-pg-OA0\">\n                    <rect key=\"frame\" x=\"333\" y=\"15\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"jkl-MJ-epa\" id=\"KXn-Rz-1qQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"message\"/>\n                        <menu key=\"menu\" id=\"F6M-WY-ruS\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"jkl-MJ-epa\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchDefaultReportsViewer:\" target=\"-2\" id=\"A16-7i-Lxf\"/>\n                    </connections>\n                </popUpButton>\n                <box verticalHuggingPriority=\"750\" fixedFrame=\"YES\" boxType=\"separator\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"bWX-Os-IMd\">\n                    <rect key=\"frame\" x=\"20\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"WI8-fU-dkC\">\n                    <rect key=\"frame\" x=\"264\" y=\"117\" width=\"65\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"At launch:\" id=\"RtP-AJ-XN5\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"248\" y=\"-36\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePanePresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"ZYd-5r-yQv\" id=\"i9c-kL-7HJ\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"r6r-RI-kcs\" id=\"Ror-u4-rou\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"8Nm-R3-fGu\" id=\"3g3-DD-9IJ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"98p-UU-gFL\">\n                    <rect key=\"frame\" x=\"68\" y=\"284\" width=\"257\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Default visible stack frame components:\" id=\"9hi-bS-vgU\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ZYd-5r-yQv\">\n                    <rect key=\"frame\" x=\"329\" y=\"283\" width=\"108\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Binary name\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" state=\"on\" inset=\"2\" id=\"Gp3-2V-rzt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"WHi-RH-9MD\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"8Nm-R3-fGu\">\n                    <rect key=\"frame\" x=\"329\" y=\"262\" width=\"203\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Machine instruction address\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" state=\"on\" inset=\"2\" id=\"TVT-Ex-NJf\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jH7-tG-qIn\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"r6r-RI-kcs\">\n                    <rect key=\"frame\" x=\"329\" y=\"241\" width=\"164\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Byte offset and source\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" state=\"on\" inset=\"2\" id=\"DAf-CC-sze\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"GhR-oX-eh8\"/>\n                    </connections>\n                </button>\n            </subviews>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePanePresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationTextViewController\">\n            <connections>\n                <outlet property=\"_lineWrappingCheckbox\" destination=\"ANa-W0-TnO\" id=\"0X3-XK-fry\"/>\n                <outlet property=\"_showBacktracesCheckbox\" destination=\"vj7-9l-wu4\" id=\"KSi-Nm-wqp\"/>\n                <outlet property=\"_showBinaryImagesCheckbox\" destination=\"ayi-wa-Elc\" id=\"mYB-oN-qAA\"/>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"rRX-kg-J1V\" id=\"qyO-wp-PBr\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"Kfz-pY-oUd\" id=\"6mW-ja-r8I\"/>\n                <outlet property=\"_showDiagnosticMessagesCheckbox\" destination=\"iNz-Qb-2d2\" id=\"nDi-1K-iro\"/>\n                <outlet property=\"_showExceptionInformationCheckbox\" destination=\"Qt3-ro-d2D\" id=\"IXu-xm-lli\"/>\n                <outlet property=\"_showHeaderCheckbox\" destination=\"Pvu-81-w7l\" id=\"Pqb-oU-xKL\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"2LX-nh-3AM\" id=\"WZp-Xx-mLd\"/>\n                <outlet property=\"_showThreadStateCheckbox\" destination=\"cir-zS-0pp\" id=\"rgi-7S-ybj\"/>\n                <outlet property=\"_showsLineNumbersCheckbox\" destination=\"n6c-lM-SZM\" id=\"s1h-L4-v2d\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Pvu-81-w7l\">\n                    <rect key=\"frame\" x=\"329\" y=\"205\" width=\"77\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Header\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zEG-Wx-Nn2\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowHeader:\" target=\"-2\" id=\"r82-eB-Q1G\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Qt3-ro-d2D\">\n                    <rect key=\"frame\" x=\"329\" y=\"184\" width=\"164\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Exception Information\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"F76-W3-yAd\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowExceptionInformation:\" target=\"-2\" id=\"cUe-nn-bRr\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"iNz-Qb-2d2\">\n                    <rect key=\"frame\" x=\"329\" y=\"163\" width=\"154\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Diagnostic Messages\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"EEv-JV-T5b\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDiagnosticMessages:\" target=\"-2\" id=\"wy4-KN-LXQ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"vj7-9l-wu4\">\n                    <rect key=\"frame\" x=\"329\" y=\"142\" width=\"101\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Backtraces\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ZOK-Ny-hlt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBacktraces:\" target=\"-2\" id=\"M7z-KY-6jd\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cir-zS-0pp\">\n                    <rect key=\"frame\" x=\"329\" y=\"120\" width=\"108\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Thread State\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ysb-qv-8M9\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowThreadState:\" target=\"-2\" id=\"5aJ-mY-Zn1\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ayi-wa-Elc\">\n                    <rect key=\"frame\" x=\"329\" y=\"99\" width=\"120\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Binary Images\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Kr8-SF-wcL\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryImages:\" target=\"-2\" id=\"r9d-Iu-XGO\"/>\n                    </connections>\n                </button>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"MNF-5K-RaR\">\n                    <rect key=\"frame\" x=\"68\" y=\"61\" width=\"257\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Default visible stack frame components:\" id=\"2et-oL-bun\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"rRX-kg-J1V\">\n                    <rect key=\"frame\" x=\"329\" y=\"60\" width=\"108\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Binary name\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"vWD-FK-a4a\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"1JN-45-hUv\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"2LX-nh-3AM\">\n                    <rect key=\"frame\" x=\"329\" y=\"39\" width=\"203\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Machine instruction address\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"XDv-jS-TfO\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jZT-K0-Oql\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Kfz-pY-oUd\">\n                    <rect key=\"frame\" x=\"329\" y=\"18\" width=\"164\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Byte offset and source\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zE5-mb-UZb\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"TPQ-k5-sP5\"/>\n                    </connections>\n                </button>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"eDV-BF-Pu1\">\n                    <rect key=\"frame\" x=\"226\" y=\"245\" width=\"99\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Line wrapping:\" id=\"nm4-Se-bRD\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ANa-W0-TnO\">\n                    <rect key=\"frame\" x=\"329\" y=\"244\" width=\"189\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Wrap lines to viewer width\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"1PO-2B-RhF\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchLineWrapping:\" target=\"-2\" id=\"BfM-Sn-zvX\"/>\n                    </connections>\n                </button>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"1vN-WD-7S5\">\n                    <rect key=\"frame\" x=\"171\" y=\"206\" width=\"154\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Default visible sections:\" id=\"LKq-kF-sWQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"9bL-sk-EjC\">\n                    <rect key=\"frame\" x=\"273\" y=\"284\" width=\"52\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Show:\" id=\"gBx-bb-vVK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"n6c-lM-SZM\">\n                    <rect key=\"frame\" x=\"329\" y=\"283\" width=\"120\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Line numbers\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"8bP-wa-KPh\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsLineNumbers:\" target=\"-2\" id=\"evn-zL-ZnP\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-63\" y=\"-1862.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePanePresentationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationViewController\">\n            <connections>\n                <outlet property=\"_contentsView\" destination=\"3Hi-kO-8Wu\" id=\"fmJ-yr-83D\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"8YE-EY-01p\" id=\"SPW-EQ-qbE\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"387\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" fixedFrame=\"YES\" boxType=\"custom\" borderType=\"line\" title=\"Box\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"wmc-fZ-hP3\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"347\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"ArU-KV-0n7\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"688\" height=\"345\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"8YE-EY-01p\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"321\" width=\"688\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"OdN-hf-Q5a\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"280\" y=\"1\" width=\"48\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Text\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"ARO-B4-zFG\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"ClQ-Fr-Q9W\"/>\n                                        </connections>\n                                    </button>\n                                    <button tag=\"1\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"mm7-bt-sqK\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"344\" y=\"1\" width=\"65\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Outline\" bezelStyle=\"regularSquare\" alignment=\"center\" tag=\"1\" inset=\"2\" id=\"K3H-7g-Y6W\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"9nl-0S-hxW\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"3Hi-kO-8Wu\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            </customView>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-138\" y=\"-142.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencePaneSymbolicationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneSymbolicationViewController\">\n            <connections>\n                <outlet property=\"_dSYMLibraryPlaceHolderView\" destination=\"vVc-MA-1G3\" id=\"0ly-sp-1WZ\"/>\n                <outlet property=\"_searchForSymbolsFilesButton\" destination=\"Yst-no-gF6\" id=\"9n7-Ui-eWv\"/>\n                <outlet property=\"_symbolicateButton\" destination=\"Tdl-XE-pSN\" id=\"nFP-cN-cbv\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"434\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"E67-yJ-rtd\">\n                    <rect key=\"frame\" x=\"105\" y=\"366\" width=\"94\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Symbols Files:\" id=\"kzW-xF-tfP\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Tdl-XE-pSN\">\n                    <rect key=\"frame\" x=\"203\" y=\"396\" width=\"427\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Convert machine instruction addresses to symbols when possible\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"mnW-sM-t65\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSymbolicate:\" target=\"-2\" id=\"mac-a1-z7L\"/>\n                    </connections>\n                </button>\n                <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"vVc-MA-1G3\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"306\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                </customView>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Vva-gy-N3U\">\n                    <rect key=\"frame\" x=\"100\" y=\"397\" width=\"99\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Symbolication:\" id=\"oNL-xZ-Za8\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Yst-no-gF6\">\n                    <rect key=\"frame\" x=\"203\" y=\"365\" width=\"246\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Look for symbols files automatically\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"M5T-BJ-hV4\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSearchForSymbolFiles:\" target=\"-2\" id=\"G2h-en-QtA\"/>\n                    </connections>\n                </button>\n                <box verticalHuggingPriority=\"750\" fixedFrame=\"YES\" boxType=\"separator\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ino-yQ-Dwr\">\n                    <rect key=\"frame\" x=\"20\" y=\"344\" width=\"690\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-623\" y=\"-437\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUIPreferencesWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencesWindowController\">\n            <connections>\n                <outlet property=\"_toolBar\" destination=\"6zI-aR-fpa\" id=\"CHz-Ac-uHu\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Window\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" tabbingMode=\"disallowed\" id=\"F0z-JX-Cv5\" customClass=\"CUIPreferencesWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenDisallowsTiling=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"730\" height=\"400\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"730\" height=\"350\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"730\" height=\"800\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"400\"/>\n                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"D61E4849-961C-442A-8B58-7CA007F20812\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"6zI-aR-fpa\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"05DB9B5F-BC7F-4CCA-BF32-731C932EA360\" explicitItemIdentifier=\"toolbarItem.general\" label=\"General\" paletteLabel=\"General\" image=\"NSPreferencesGeneral\" selectable=\"YES\" id=\"UQU-Ps-228\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JfQ-pF-Hff\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"4277C753-007B-43DA-A729-FE8AC69931C5\" explicitItemIdentifier=\"toolbarItem.fontscolors\" label=\"Fonts &amp; Colors\" paletteLabel=\"Fonts &amp; Colors\" selectable=\"YES\" id=\"SAh-Qi-gC4\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JJk-NZ-vjn\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FB786CBB-BCFC-44B7-8C12-288ADA8E21C6\" explicitItemIdentifier=\"toolbarItem.presentation\" label=\"Presentation\" paletteLabel=\"Presentation\" image=\"TextMode\" selectable=\"YES\" id=\"eCa-Vk-UOp\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"4IV-xn-tOM\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"633F5F14-F73C-4AF6-8F67-BED9A917A783\" explicitItemIdentifier=\"toolbarItem.symbolication\" label=\"Symbolication\" paletteLabel=\"Symbolication\" image=\"symbolication_Template\" selectable=\"YES\" id=\"Q5n-xT-GUE\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"w6D-Ku-xhR\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"791DB978-2878-4D73-AAA6-621004CCA3A6\" explicitItemIdentifier=\"toolbarItem.crashReporter\" label=\"Crash Reporter\" paletteLabel=\"Crash Reporter\" image=\"crashreporter\" selectable=\"YES\" id=\"1VP-qg-tbw\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"HhP-9G-ZBT\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"25D1A26D-75F7-4BD1-998A-405AE7D65842\" explicitItemIdentifier=\"toolbarItem.advanced\" label=\"Advanced\" paletteLabel=\"Advanced\" image=\"NSAdvanced\" selectable=\"YES\" id=\"vqd-1P-vnH\">\n                        <size key=\"minSize\" width=\"32\" height=\"32\"/>\n                        <size key=\"maxSize\" width=\"32\" height=\"32\"/>\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"bs9-H8-G59\"/>\n                        </connections>\n                    </toolbarItem>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"UQU-Ps-228\"/>\n                    <toolbarItem reference=\"eCa-Vk-UOp\"/>\n                    <toolbarItem reference=\"SAh-Qi-gC4\"/>\n                    <toolbarItem reference=\"Q5n-xT-GUE\"/>\n                    <toolbarItem reference=\"1VP-qg-tbw\"/>\n                    <toolbarItem reference=\"vqd-1P-vnH\"/>\n                </defaultToolbarItems>\n                <connections>\n                    <outlet property=\"delegate\" destination=\"-2\" id=\"qsE-xQ-pGw\"/>\n                </connections>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"-2\" y=\"-706\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSAdvanced\" width=\"32\" height=\"32\"/>\n        <image name=\"NSPreferencesGeneral\" width=\"32\" height=\"32\"/>\n        <image name=\"TextMode\" width=\"32\" height=\"32\"/>\n        <image name=\"crashreporter\" width=\"32\" height=\"32\"/>\n        <image name=\"symbolication_Template\" width=\"32\" height=\"32\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CUISymbolsFilesLibraryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUISymbolsFilesLibraryViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"F9U-gJ-Z2L\" id=\"dH5-UP-Qqs\"/>\n                <outlet property=\"_removeButton\" destination=\"ehE-Ow-SS2\" id=\"m8U-R6-wqt\"/>\n                <outlet property=\"_tableView\" destination=\"AY0-dP-DvX\" id=\"lpv-VE-ccc\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"592\" height=\"349\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" id=\"Rhh-WD-hIX\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"592\" height=\"326\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"mCs-2R-TXV\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"590\" height=\"325\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView identifier=\"uuids\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" columnSelection=\"YES\" autosaveName=\"ui.symbolfiles.list\" rowSizeStyle=\"automatic\" headerView=\"l7j-fB-FoE\" viewBased=\"YES\" id=\"AY0-dP-DvX\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"300\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"220\" minWidth=\"40\" maxWidth=\"1000\" id=\"Vcp-pq-sB3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Name\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"wd0-bU-zBR\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compareNameAndVersion:\" sortKey=\"self\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"02c-Nn-HO4\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"220\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1cT-cq-rEF\">\n                                                        <rect key=\"frame\" x=\"23\" y=\"2\" width=\"195\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Thg-bW-Hdn\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"jEv-gl-BBo\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"17w-qR-br7\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"jEv-gl-BBo\" id=\"b3d-u1-YFD\"/>\n                                                    <outlet property=\"textField\" destination=\"1cT-cq-rEF\" id=\"Vzs-Wm-QJ0\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"110\" minWidth=\"110\" maxWidth=\"110\" id=\"a9F-wr-DSz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Version\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"2QA-U7-Hh5\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CAF-d6-J6h\">\n                                                <rect key=\"frame\" x=\"224\" y=\"1\" width=\"110\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1k1-EI-O6e\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"109\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"lB8-oP-fWV\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"1k1-EI-O6e\" id=\"kIm-93-QIk\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"uuids\" width=\"251\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"xFs-nC-pHw\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"UUIDs\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"QfV-t1-g8t\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"wmr-c9-khj\">\n                                                <rect key=\"frame\" x=\"337\" y=\"1\" width=\"251\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"qAo-VI-VaT\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"245\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"vH5-Rz-jfx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"qAo-VI-VaT\" id=\"KNV-Dt-SB5\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"DKi-0C-xiC\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Asj-Ja-ycJ\"/>\n                                    <outlet property=\"menu\" destination=\"GF9-kL-5e2\" id=\"AJL-Bv-fVg\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"fgB-BL-7Fh\">\n                        <rect key=\"frame\" x=\"1\" y=\"533\" width=\"724\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"T5m-cm-koD\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"l7j-fB-FoE\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"P6v-Ex-GO9\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"-1\" width=\"35\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSAddTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"NS9-6o-ey8\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"addDebuggingSymbolsFile:\" target=\"-2\" id=\"2We-No-BJ5\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ehE-Ow-SS2\">\n                    <rect key=\"frame\" x=\"34\" y=\"-1\" width=\"31\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" enabled=\"NO\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"bH8-IA-FZM\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"u5K-Fv-rkO\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"JKx-dR-M6r\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"64\" y=\"-1\" width=\"528\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"6R2-VQ-GCt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"JIV-ic-LZf\"/>\n                    </connections>\n                </button>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"F9U-gJ-Z2L\">\n                    <rect key=\"frame\" x=\"337\" y=\"3\" width=\"248\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filter\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"tN8-2f-IVZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"Hmq-IQ-880\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-624\" y=\"-817.5\"/>\n        </customView>\n        <menu id=\"GF9-kL-5e2\">\n            <items>\n                <menuItem title=\"Show in Finder\" id=\"mla-Lw-0ux\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"qpt-X3-Bo6\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-301\" y=\"-467\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/CodeSigning.strings",
    "content": "\"TestFlight\" = \"TestFlight\";\n\n\"Development\" = \"Development\";\n\n\"AppStore\" = \"AppStore\";\n\n\"Enterprise\" = \"Enterprise\";\n\n\"Developer ID\" = \"Developer ID\";\n\n\"None\" = \"None\";\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSApplication\">\n            <connections>\n                <outlet property=\"delegate\" destination=\"Voe-Tx-rLC\" id=\"GzC-gU-4Uq\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customObject id=\"Voe-Tx-rLC\" customClass=\"AppDelegate\">\n            <connections>\n                <outlet property=\"_debugMenuBarItem\" destination=\"cNb-At-Imu\" id=\"UE7-n3-l3I\"/>\n                <outlet property=\"_themesMenu\" destination=\"abx-GW-6TZ\" id=\"EEG-6i-WdC\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"YLy-65-1bz\" customClass=\"NSFontManager\"/>\n        <menu title=\"Main Menu\" systemMenu=\"main\" id=\"AYu-sK-qS6\">\n            <items>\n                <menuItem title=\"Unexpectedly\" id=\"1Xt-HY-uBw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Unexpectedly\" systemMenu=\"apple\" id=\"uQy-DD-JDr\">\n                        <items>\n                            <menuItem title=\"About Unexpectedly\" id=\"5kV-Vb-QxS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showAboutBox:\" target=\"-1\" id=\"8cM-F7-dKT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"VOq-y0-SEH\"/>\n                            <menuItem title=\"Preferences…\" keyEquivalent=\",\" id=\"BOF-NM-1cW\">\n                                <connections>\n                                    <action selector=\"showPreferences:\" target=\"-1\" id=\"Jal-0e-r2i\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"wFC-TO-SCJ\"/>\n                            <menuItem title=\"Services\" id=\"NMo-om-nkz\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Services\" systemMenu=\"services\" id=\"hz9-B4-Xy5\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"4je-JR-u6R\"/>\n                            <menuItem title=\"Hide Unexpectedly\" keyEquivalent=\"h\" id=\"Olw-nP-bQN\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"PnN-Uc-m68\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Hide Others\" keyEquivalent=\"h\" id=\"Vdr-fp-XzO\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"VT4-aY-XCT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Show All\" id=\"Kd2-mp-pUS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"Dhg-Le-xox\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kCx-OE-vgT\"/>\n                            <menuItem title=\"Quit Unexpectedly\" keyEquivalent=\"q\" id=\"4sb-4s-VLi\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-1\" id=\"Te7-pn-YzF\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"File\" id=\"dMs-cI-mzQ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"File\" id=\"bib-Uj-vzu\">\n                        <items>\n                            <menuItem title=\"New Smart Source…\" keyEquivalent=\"N\" id=\"Was-JA-tGl\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-1\" id=\"bHg-uP-Kty\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"Mx6-UK-5B4\"/>\n                            <menuItem title=\"Add File or Folder…\" keyEquivalent=\"a\" id=\"3wG-3v-uZk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSource:\" target=\"-1\" id=\"b1Q-ed-4lm\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"m54-Is-iLE\"/>\n                            <menuItem title=\"Close\" keyEquivalent=\"w\" id=\"DVo-aG-piG\">\n                                <connections>\n                                    <action selector=\"performClose:\" target=\"-1\" id=\"HmO-Ls-i7Q\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"56E-C3-0cD\"/>\n                            <menuItem title=\"Import Smart Source…\" id=\"lvA-aa-UmE\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_importSmartSource:\" target=\"-1\" id=\"slK-ne-mc7\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Export\" id=\"Pho-kH-aIP\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Export\" id=\"3tw-V4-ayi\">\n                                    <items>\n                                        <menuItem title=\"Report…\" id=\"9tt-1M-ra5\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportCrashLog:\" target=\"-1\" id=\"yYt-Vu-UUP\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Smart Source…\" id=\"tTJ-63-TIi\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-1\" id=\"gbF-DM-FHr\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"aJh-i4-bef\"/>\n                            <menuItem title=\"Show in Finder\" id=\"OqK-Vd-hWC\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showInFinder:\" target=\"-1\" id=\"0gW-ak-pFy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Move to Trash\" id=\"GVk-MU-gOy\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-1\" id=\"9KY-Gr-Skj\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"BHd-Dv-6Wl\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-1\" id=\"DLv-Uy-cDS\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eeq-nE-Puw\"/>\n                            <menuItem title=\"Page Setup…\" keyEquivalent=\"P\" id=\"qIS-W8-SiK\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"runPageLayout:\" target=\"-1\" id=\"Din-rz-gC5\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Print…\" keyEquivalent=\"p\" id=\"aTl-1u-JFS\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_print:\" target=\"-1\" id=\"a83-u9-Pl5\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Edit\" id=\"5QF-Oa-p0T\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Edit\" id=\"W48-6f-4Dl\">\n                        <items>\n                            <menuItem title=\"Undo\" keyEquivalent=\"z\" id=\"dRJ-4n-Yzg\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"M6e-cu-g7V\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Redo\" keyEquivalent=\"Z\" id=\"6dh-zS-Vam\">\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"oIA-Rs-6OD\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"WRV-NI-Exz\"/>\n                            <menuItem title=\"Cut\" keyEquivalent=\"x\" id=\"uRl-iY-unG\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"YJe-68-I9s\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Copy\" keyEquivalent=\"c\" id=\"x3v-GG-iWU\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"G1f-GL-Joy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Paste\" keyEquivalent=\"v\" id=\"gVA-U4-sdL\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"UvS-8e-Qdg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Paste and Match Style\" keyEquivalent=\"V\" id=\"WeT-3V-zwk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"pasteAsPlainText:\" target=\"-1\" id=\"cEh-KX-wJQ\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Delete\" id=\"pa3-QI-u2k\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"0Mk-Ml-PaM\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Select All\" keyEquivalent=\"a\" id=\"Ruw-6m-B2m\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"VNm-Mi-diN\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"uyl-h8-XO2\"/>\n                            <menuItem title=\"Find\" id=\"4EN-yA-p0u\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Find\" id=\"1b7-l0-nxx\">\n                                    <items>\n                                        <menuItem title=\"Find…\" tag=\"1\" keyEquivalent=\"f\" id=\"Xz5-n4-O0W\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"QsK-9e-uGa\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Find Next\" tag=\"2\" keyEquivalent=\"g\" id=\"q09-fT-Sye\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"49u-4Y-NRM\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Find Previous\" tag=\"3\" keyEquivalent=\"G\" id=\"OwM-mh-QMV\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"siD-LN-Db0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Use Selection for Find\" tag=\"7\" keyEquivalent=\"e\" id=\"buJ-ug-pKt\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"M3c-NN-csD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Jump to Selection\" keyEquivalent=\"j\" id=\"S0p-oC-mLd\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"IOG-6D-g5B\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Speech\" id=\"xrE-MZ-jX0\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Speech\" id=\"3rS-ZA-NoH\">\n                                    <items>\n                                        <menuItem title=\"Start Speaking\" id=\"Ynk-f8-cLZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"654-Ng-kyl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Stop Speaking\" id=\"Oyz-dy-DGm\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"dX8-6p-jy9\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"View\" id=\"H8h-7b-M4v\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"View\" id=\"HyV-fh-RgO\">\n                        <items>\n                            <menuItem title=\"Show Sidebar\" keyEquivalent=\"1\" id=\"fzY-Ht-27G\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"kra-FC-RZC\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Show Binary Images\" tag=\"1\" keyEquivalent=\"2\" id=\"2z5-3m-6dw\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"s1k-G0-TLi\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Show Inspector\" tag=\"2\" keyEquivalent=\"3\" id=\"lQa-tq-Wi7\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"qR9-QJ-Q4R\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kEv-nO-mPM\"/>\n                            <menuItem title=\"Text\" keyEquivalent=\"1\" id=\"qIT-0d-e67\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"eRM-Kc-O5r\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Outline\" tag=\"1\" keyEquivalent=\"2\" id=\"Nr3-m8-qOB\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"TDI-d2-Yku\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"tGi-CI-t3Z\"/>\n                            <menuItem title=\"Show Toolbar\" keyEquivalent=\"t\" id=\"snW-S8-Cw5\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"toggleToolbarShown:\" target=\"-1\" id=\"BXY-wc-z0C\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Report Viewer\" id=\"Wlf-Q9-x4u\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Report Viewer\" id=\"nLy-c6-ILM\">\n                        <items>\n                            <menuItem title=\"Font Size\" id=\"hLb-MS-G2f\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Font Size\" id=\"TBb-40-aCS\">\n                                    <items>\n                                        <menuItem title=\"Increase\" keyEquivalent=\"+\" id=\"EXj-Y3-9fM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_increaseFontSize:\" target=\"-1\" id=\"qW5-4J-akR\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Decrease\" keyEquivalent=\"-\" id=\"7i3-Bb-CWM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_decreaseFontSize:\" target=\"-1\" id=\"B2V-VK-bcD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"P4p-p3-w1I\"/>\n                                        <menuItem title=\"Reset\" keyEquivalent=\"0\" id=\"kfY-hu-eJP\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_resetFontSize:\" target=\"-1\" id=\"nz0-xy-rD7\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Themes\" id=\"yjG-UV-U5C\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Themes\" id=\"abx-GW-6TZ\">\n                                    <items>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"NUX-KR-gxh\"/>\n                                        <menuItem title=\"Edit Themes…\" id=\"csr-ry-NgM\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"editThemes:\" target=\"-1\" id=\"F5p-1i-EUu\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"2Cq-5I-dEU\"/>\n                            <menuItem title=\"Visible Sections\" id=\"wAR-FX-MEm\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Visible Sections\" id=\"WFL-Rm-rhq\">\n                                    <items>\n                                        <menuItem title=\"Header\" id=\"HIC-nM-hNN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-1\" id=\"WUc-lV-ghf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"1r5-yC-AUQ\"/>\n                                        <menuItem title=\"Exception Information\" id=\"lvl-an-zWN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-1\" id=\"fLf-3S-OlT\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Diagnostic Messages\" id=\"iKL-gn-vYN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-1\" id=\"N8e-k9-P27\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"z5a-l7-tQ4\"/>\n                                        <menuItem title=\"Backtraces\" id=\"DbA-sZ-kG6\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-1\" id=\"eUz-AU-LoI\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Thread State\" id=\"RBY-FQ-bMy\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-1\" id=\"XYE-gq-GnF\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Binary Images\" id=\"rnV-QR-Tam\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-1\" id=\"qnf-0L-mBO\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Navigate\" id=\"aG2-MW-iKZ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Navigate\" id=\"YUZ-OQ-Qfb\">\n                        <items>\n                            <menuItem title=\"Jump to Line…\" keyEquivalent=\"l\" id=\"JtL-ON-s7d\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToLine:\" target=\"-1\" id=\"hAa-kF-BVg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"qbu-Eo-jRw\"/>\n                            <menuItem title=\"Jump to Section\" id=\"2Ip-qq-DKf\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Jump to Section\" id=\"AcZ-wd-kkj\">\n                                    <items>\n                                        <menuItem title=\"Header\" id=\"Bmg-Jh-vql\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToHeader:\" target=\"-1\" id=\"0VQ-jO-VrD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"5Cd-ay-my5\"/>\n                                        <menuItem title=\"Exception Information\" id=\"SzQ-gm-Wkt\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToExceptionInformation:\" target=\"-1\" id=\"079-pD-HEp\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Diagnostic Messages\" id=\"Wiv-Qz-fMq\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToDiagnosticMessages:\" target=\"-1\" id=\"hTl-rJ-Q5a\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"Szz-TX-hIO\"/>\n                                        <menuItem title=\"Backtraces\" id=\"a2B-9S-c4g\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBacktraces:\" target=\"-1\" id=\"Sfi-Ce-HQ0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Thread State\" id=\"hfS-oi-1cT\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToThreadState:\" target=\"-1\" id=\"Lbe-gO-nw1\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Binary Images\" id=\"ON2-La-JSh\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBinaryImages:\" target=\"-1\" id=\"hF5-h4-Mqo\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Jump to Crashed Thread\" keyEquivalent=\"c\" id=\"XPO-uf-5Ox\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToCrashedThread:\" target=\"-1\" id=\"ymM-Im-3Fw\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Window\" id=\"aUF-d1-5bR\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Window\" systemMenu=\"window\" id=\"Td7-aD-5lo\">\n                        <items>\n                            <menuItem title=\"Minimize\" keyEquivalent=\"m\" id=\"OY7-WF-poV\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"VwT-WD-YPe\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Zoom\" id=\"R4o-n2-Eq4\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"performZoom:\" target=\"-1\" id=\"DIl-cC-cCs\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"V2l-48-H4C\"/>\n                            <menuItem title=\"Registers\" keyEquivalent=\"r\" id=\"e57-vP-OAA\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-1\" id=\"4GI-98-jKW\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eu3-7i-yIM\"/>\n                            <menuItem title=\"Bring All to Front\" id=\"LE2-aR-0XJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"DRN-fu-gQh\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Help\" id=\"wpr-3q-Mcd\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Help\" systemMenu=\"help\" id=\"F2S-fz-NVQ\">\n                        <items>\n                            <menuItem title=\"Unexpectedly Help\" keyEquivalent=\"?\" id=\"FKE-Sm-Kum\">\n                                <connections>\n                                    <action selector=\"showUserGuide:\" target=\"Voe-Tx-rLC\" id=\"Xxx-bM-bpn\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"NhV-yu-WbQ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Send Feedback\" id=\"Agb-QS-hQl\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"sendFeedback:\" target=\"Voe-Tx-rLC\" id=\"GdC-FT-8s8\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Unexpectedly on the web\" id=\"FUb-BV-YgJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showUnexpectedlyWebSite:\" target=\"Voe-Tx-rLC\" id=\"Zhd-rv-Pi9\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Debug\" hidden=\"YES\" id=\"cNb-At-Imu\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Debug\" id=\"OCR-9P-Ipy\">\n                        <items>\n                            <menuItem title=\"Crash Reporter\" id=\"QbD-vw-FaL\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Crash Reporter\" id=\"90M-1A-X88\">\n                                    <items>\n                                        <menuItem title=\"Operation Mode\" enabled=\"NO\" id=\"rSJ-Ir-6Ad\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Basic\" id=\"cZ2-Me-tJE\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"1pr-Nb-cUn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Developer\" tag=\"1\" id=\"Taa-D1-VLv\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"Sze-b6-Qb4\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Server\" tag=\"2\" id=\"oZt-M9-dpo\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"t2d-3r-nsn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"riH-1J-NUS\"/>\n                                        <menuItem title=\"Notification Mode\" enabled=\"NO\" id=\"BLJ-R5-6HZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Alert dialog\" id=\"EDw-Kd-564\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"pfK-8S-sWf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"System notification\" tag=\"1\" id=\"zLw-vY-Ttl\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"yUA-00-NUV\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"isO-68-Tw7\"/>\n                                        <menuItem title=\"Report uncaught exceptions\" id=\"eLO-Pu-jRW\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchReportUncaughtException:\" target=\"Voe-Tx-rLC\" id=\"3Tb-Lg-qE2\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-353\" y=\"-1121\"/>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/en.lproj/Predicates.strings",
    "content": "/* Predicate Editor */\n\n\"%[All]@ of the following are true\" = \"%1$[All]@ of the following are true\";\n\"%[Any]@ of the following are true\" = \"%1$[Any]@ of the following are true\";\n\n\"%[processName]@ %[is]@ %@\" = \"%1$[Process Name]@ %2$[is]@ %3$@\";\n\"%[processName]@ %[is not]@ %@\" = \"%1$[Process Name]@ %2$[is not]@ %3$@\";\n\"%[processName]@ %[begins with]@ %@\" = \"%1$[Process Name]@ %2$[begins with]@ %3$@\";\n\"%[processName]@ %[ends with]@ %@\" = \"%1$[Process Name]@ %2$[ends with]@ %3$@\";\n\"%[processName]@ %[contains]@ %@\" = \"%1$[Process Name]@ %2$[contains]@ %3$@\";\n\n\"%[header.bundleIdentifier]@ %[is]@ %@\" = \"%1$[Identifier]@ %2$[is]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[is not]@ %@\" = \"%1$[Identifier]@ %2$[is not]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[begins with]@ %@\" = \"%1$[Identifier]@ %2$[begins with]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[ends with]@ %@\" = \"%1$[Identifier]@ %2$[ends with]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[contains]@ %@\" = \"%1$[Identifier]@ %2$[contains]@ %3$@\";\n\n\"%[header.executablePath]@ %[is]@ %@\" = \"%1$[Executable Path]@ %2$[is]@ %3$@\";\n\"%[header.executablePath]@ %[is not]@ %@\" = \"%1$[Executable Path]@ %2$[is not]@ %3$@\";\n\"%[header.executablePath]@ %[begins with]@ %@\" = \"%1$[Executable Path]@ %2$[begins with]@ %3$@\";\n\"%[header.executablePath]@ %[ends with]@ %@\" = \"%1$[Executable Path]@ %2$[ends with]@ %3$@\";\n\"%[header.executablePath]@ %[contains]@ %@\" = \"%1$[Executable Path]@ %2$[contains]@ %3$@\";\n\n\"%[header.executableVersion]@ %[is]@ %@\" = \"%1$[Executable Version]@ %2$[is]@ %3$@\";\n\"%[header.executableVersion]@ %[is not]@ %@\" = \"%1$[Executable Version]@ %2$[is not]@ %3$@\";\n\"%[header.executableVersion]@ %[begins with]@ %@\" = \"%1$[Executable Version]@ %2$[begins with]@ %3$@\";\n\"%[header.executableVersion]@ %[ends with]@ %@\" = \"%1$[Executable Version]@ %2$[ends with]@ %3$@\";\n\"%[header.executableVersion]@ %[contains]@ %@\" = \"%1$[Executable Version]@ %2$[contains]@ %3$@\";\n\n\"%[exceptionInformation.crashedThreadName]@ %[is]@ %@\" = \"%1$[Crashed Thread Name]@ %2$[is]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[is not]@ %@\" = \"%1$[Crashed Thread Name]@ %2$[is not]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[begins with]@ %@\" = \"%1$[Crashed Thread Name]@ %2$[begins with]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[ends with]@ %@\" = \"%1$[Crashed Thread Name]@ %2$[ends with]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[contains]@ %@\" = \"%1$[Crashed Thread Name]@ %2$[contains]@ %3$@\";\n\n\"%[header.operatingSystemVersion.stringValue]@ %[is]@ %@\" = \"%1$[Operating System Version]@ %2$[is]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[is not]@ %@\" = \"%1$[Operating System Version]@ %2$[is not]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[begins with]@ %@\" = \"%1$[Operating System Version]@ %2$[begins with]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[ends with]@ %@\" = \"%1$[Operating System Version]@ %2$[ends with]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[contains]@ %@\" = \"%1$[Operating System Version]@ %2$[contains]@ %3$@\";\n\n\"%[dateTime]@ %[is less than or equal to]@ %@\" = \"%1$[Date]@ %2$[is before or the same as]@ %3$@\";\n\"%[dateTime]@ %[is greater than or equal to]@ %@\" = \"%1$[Date]@ %2$[is on or after]@ %3$@\";\n\n\"%[exceptionType]@ is %[EXC_ARITHMETIC]@\" = \"%1$[Exception Type]@ is %2$[EXC_ARITHMETIC]@\";\n\"%[exceptionType]@ is %[EXC_BAD_ACCESS]@\" = \"%1$[Exception Type]@ is %2$[EXC_BAD_ACCESS]@\";\n\"%[exceptionType]@ is %[EXC_BAD_INSTRUCTION]@\" = \"%1$[Exception Type]@ is %2$[EXC_BAD_INSTRUCTION]@\";\n\"%[exceptionType]@ is %[EXC_BREAKPOINT]@\" = \"%1$[Exception Type]@ is %2$[EXC_BREAKPOINT]@\";\n\"%[exceptionType]@ is %[EXC_CORPSE_NOTIFY]@\" = \"%1$[Exception Type]@ is %2$[EXC_CORPSE_NOTIFY]@\";\n\"%[exceptionType]@ is %[EXC_CRASH]@\" = \"%1$[Exception Type]@ is %2$[EXC_CRASH]@\";\n\"%[exceptionType]@ is %[EXC_EMULATION]@\" = \"%1$[Exception Type]@ is %2$[EXC_EMULATION]@\";\n\"%[exceptionType]@ is %[EXC_GUARD]@\" = \"%1$[Exception Type]@ is %2$[EXC_GUARD]@\";\n\"%[exceptionType]@ is %[EXC_MACH_SYSCALL]@\" = \"%1$[Exception Type]@ is %2$[EXC_MACH_SYSCALL]@\";\n\"%[exceptionType]@ is %[EXC_RESOURCE]@\" = \"%1$[Exception Type]@ is %2$[EXC_RESOURCE]@\";\n\"%[exceptionType]@ is %[EXC_RPC_ALERT]@\" = \"%1$[Exception Type]@ is %2$[EXC_RPC_ALERT]@\";\n\"%[exceptionType]@ is %[EXC_SOFTWARE]@\" = \"%1$[Exception Type]@ is %2$[EXC_SOFTWARE]@\";\n\"%[exceptionType]@ is %[EXC_SYSCALL]@\" = \"%1$[Exception Type]@ is %2$[EXC_SYSCALL]@\";\n\n\"%[exceptionSignal]@ is %[SIGABRT]@\" = \"%1$[Exception Signal]@ is %2$[SIGABRT]@\";\n\"%[exceptionSignal]@ is %[SIGBUS]@\" = \"%1$[Exception Signal]@ is %2$[SIGBUS]@\";\n\"%[exceptionSignal]@ is %[SIGILL]@\" = \"%1$[Exception Signal]@ is %2$[SIGILL]@\";\n\"%[exceptionSignal]@ is %[SIGKILL]@\" = \"%1$[Exception Signal]@ is %2$[SIGKILL]@\";\n\"%[exceptionSignal]@ is %[SIGQUIT]@\" = \"%1$[Exception Signal]@ is %2$[SIGQUIT]@\";\n\"%[exceptionSignal]@ is %[SIGSEGV]@\" = \"%1$[Exception Signal]@ is %2$[SIGSEGV]@\";\n\"%[exceptionSignal]@ is %[SIGTRAP]@\" = \"%1$[Exception Signal]@ is %2$[SIGTRAP]@\";\n\"%[exceptionSignal]@ is %[Code Signature Invalid]@\" = \"%1$[Exception Signal]@ is %2$[Code Signature Invalid]@\";\n\n\"%[crashLogFileName]@ %[is]@ %@\" = \"%1$[Report File Name]@ %2$[is]@ %3$@\";\n\"%[crashLogFileName]@ %[is not]@ %@\" = \"%1$[Report File Name]@ %2$[is not]@ %3$@\";\n\"%[crashLogFileName]@ %[begins with]@ %@\" = \"%1$[Report File Name]@ %2$[begins with]@ %3$@\";\n\"%[crashLogFileName]@ %[ends with]@ %@\" = \"%1$[Report File Name]@ %2$[ends with]@ %3$@\";\n\"%[crashLogFileName]@ %[contains]@ %@\" = \"%1$[Report File Name]@ %2$[contains]@ %3$@\";\n\n\"%[reportSourceTypeNumber]@ is %[0]@\" = \"%1$[Source]@ is %2$[System Reports]@\";\n\"%[reportSourceTypeNumber]@ is %[1]@\" = \"%1$[Source]@ is %2$[User Reports]@\";\n\"%[reportSourceTypeNumber]@ is %[2]@\" = \"%1$[Source]@ is %2$[Another Source]@\";\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIAboutBoxWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIAboutBoxWindowController\">\n            <connections>\n                <outlet property=\"_applicationIconView\" destination=\"tcA-WF-uA0\" id=\"MLS-Td-B8a\"/>\n                <outlet property=\"_versionLabel\" destination=\"ttD-QV-oac\" id=\"Dvu-Z7-kin\"/>\n                <outlet property=\"window\" destination=\"Bdk-2N-UfM\" id=\"lij-6E-9Ij\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" id=\"Bdk-2N-UfM\" userLabel=\"About Window\" customClass=\"CUIAboutBoxWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"1076\" y=\"858\" width=\"580\" height=\"340\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"213\" height=\"107\"/>\n            <view key=\"contentView\" id=\"M7a-oa-Rve\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"none\" title=\"Box\" id=\"oOh-j5-H4F\" customClass=\"CUIContentBox\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <view key=\"contentView\" id=\"wo7-V5-OLy\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textField verticalHuggingPriority=\"750\" id=\"99t-xE-l89\">\n                                    <rect key=\"frame\" x=\"297\" y=\"237\" width=\"244\" height=\"33\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Unexpectedly\" id=\"T3S-Ay-pmi\">\n                                        <font key=\"font\" metaFont=\"systemBold\" size=\"27\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ttD-QV-oac\">\n                                    <rect key=\"frame\" x=\"302\" y=\"216\" width=\"163\" height=\"17\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" sendsActionOnEndEditing=\"YES\" title=\"version xxx (xxxx)\" id=\"zzd-sb-nLW\">\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField verticalHuggingPriority=\"750\" id=\"1i6-Ud-XKB\">\n                                    <rect key=\"frame\" x=\"297\" y=\"121\" width=\"257\" height=\"26\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"© 2020-2026 Stéphane Sudre. Todos los derechos reservados.\" id=\"Xdh-fz-kMR\">\n                                        <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <customView id=\"ph8-bY-NfI\" customClass=\"CUIAboutBoxFooterView\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"581\" height=\"48\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <subviews>\n                                        <button verticalHuggingPriority=\"750\" id=\"BFt-hQ-gMS\">\n                                            <rect key=\"frame\" x=\"411\" y=\"11\" width=\"150\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"Contrato de licencia\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"Pec-zi-7OB\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showLicenseAgreement:\" target=\"-2\" id=\"a9e-i5-Dsu\"/>\n                                            </connections>\n                                        </button>\n                                        <button verticalHuggingPriority=\"750\" id=\"GUS-e1-oXY\">\n                                            <rect key=\"frame\" x=\"253\" y=\"11\" width=\"150\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"Agradecimientos\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"tds-hN-Zey\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showAcknowledgments:\" target=\"-2\" id=\"vyh-yi-H1N\"/>\n                                            </connections>\n                                        </button>\n                                    </subviews>\n                                </customView>\n                                <customView id=\"tcA-WF-uA0\" customClass=\"CUIApplicationIconView\">\n                                    <rect key=\"frame\" x=\"20\" y=\"64\" width=\"256\" height=\"256\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </view>\n                        <color key=\"borderColor\" white=\"0.0\" alpha=\"0.41999999999999998\" colorSpace=\"calibratedWhite\"/>\n                        <color key=\"fillColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"calibratedWhite\"/>\n                    </box>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"71\" y=\"93\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIBinaryImagesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIBinaryImagesViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"JbX-mT-2UH\" id=\"02i-kF-XTY\"/>\n                <outlet property=\"_openWithMenuItem\" destination=\"YLm-YP-LL9\" id=\"Oa6-K5-zJI\"/>\n                <outlet property=\"_tableView\" destination=\"H2N-iz-CG5\" id=\"8vi-YE-vnm\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"127\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"JbX-mT-2UH\">\n                    <rect key=\"frame\" x=\"638\" y=\"2\" width=\"180\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filtrar\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"CXs-CW-3At\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"qzT-e2-esd\"/>\n                    </connections>\n                </searchField>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"18\" horizontalPageScroll=\"10\" verticalLineScroll=\"18\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jng-RN-KVx\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"826\" height=\"104\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"iHp-Bk-LJN\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"824\" height=\"103\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"16\" headerView=\"szd-pN-V9C\" viewBased=\"YES\" id=\"H2N-iz-CG5\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"78\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"identifier\" editable=\"NO\" width=\"243\" minWidth=\"40\" maxWidth=\"1000\" id=\"zsB-hX-miE\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Imaginen del binario\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"HaL-8m-7CV\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"identifier\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"BPG-vx-EaY\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"243\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"g8Y-8I-L6J\">\n                                                        <rect key=\"frame\" x=\"22\" y=\"1\" width=\"220\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sWv-h4-EIw\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"r0f-ia-207\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"14\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"oyO-Zo-2yb\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"r0f-ia-207\" id=\"SJ2-ej-0Cg\"/>\n                                                    <outlet property=\"textField\" destination=\"g8Y-8I-L6J\" id=\"3Mm-h4-ddI\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"122\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"JQI-XJ-VTL\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"Versión\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"U1f-H1-9m0\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"version\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"8FH-01-0os\">\n                                                <rect key=\"frame\" x=\"247\" y=\"1\" width=\"122\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"plL-Vk-xaA\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"122\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"obt-PL-Lbo\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"plL-Vk-xaA\" id=\"mg4-BY-bi3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"addresses\" editable=\"NO\" width=\"213\" minWidth=\"40\" maxWidth=\"1000\" id=\"oFL-bf-gGU\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Direcciones\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"ZW2-8X-PGp\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"addressesRange\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g9U-vA-jTF\">\n                                                <rect key=\"frame\" x=\"372\" y=\"1\" width=\"213\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"3kh-At-cKc\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"212\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"justified\" title=\"Table View Cell\" id=\"CMI-V5-ciE\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"3kh-At-cKc\" id=\"UdM-cM-BOp\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"path\" editable=\"NO\" width=\"232\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"HcW-EK-wr3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"Ruta\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"S91-cj-D84\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"path\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"sf0-hA-RmY\">\n                                                <rect key=\"frame\" x=\"588\" y=\"1\" width=\"232\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"lmB-oe-CyW\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"232\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Table View Cell\" id=\"qWc-Kx-SEP\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"lmB-oe-CyW\" id=\"kFS-VU-Y4h\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VlW-ud-6Hf\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Xcc-up-ema\"/>\n                                    <outlet property=\"menu\" destination=\"lWX-qP-xpp\" id=\"Pw9-3z-saj\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" horizontal=\"YES\" id=\"OBi-Bk-c7r\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"822\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Od4-Ga-F2a\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"szd-pN-V9C\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"160\" y=\"10.5\"/>\n        </customView>\n        <menu id=\"lWX-qP-xpp\">\n            <items>\n                <menuItem title=\"Mostrar en el Finder\" id=\"taY-h1-kV9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"C8h-FR-DuE\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Abrir con\" id=\"YLm-YP-LL9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Abrir con\" id=\"SGI-Dm-tOB\">\n                        <items>\n                            <menuItem title=\"-\" id=\"9Ch-Xx-Yu3\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICodeSigningInformationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICodeSigningInformationViewController\">\n            <connections>\n                <outlet property=\"_flagsRichTextField\" destination=\"chR-7J-O6v\" id=\"iY2-tW-M8Z\"/>\n                <outlet property=\"_identifierTextField\" destination=\"pzr-oV-4Ja\" id=\"pxc-Tm-LdQ\"/>\n                <outlet property=\"_teamIdentifierTextField\" destination=\"3fa-Ku-EUN\" id=\"mQk-Vc-AhS\"/>\n                <outlet property=\"_trustLevelTextField\" destination=\"fce-70-gVD\" id=\"X7D-tf-hgw\"/>\n                <outlet property=\"_validationCategoryTextField\" destination=\"Ibg-QL-cVb\" id=\"WUN-SW-oav\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"449\" height=\"428\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9yS-4w-XmX\">\n                    <rect key=\"frame\" x=\"116\" y=\"391\" width=\"85\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Identificador:\" id=\"bCV-Ef-nKj\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"pzr-oV-4Ja\">\n                    <rect key=\"frame\" x=\"205\" y=\"391\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"left\" title=\"-\" id=\"IAr-nB-TqD\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"3fa-Ku-EUN\">\n                    <rect key=\"frame\" x=\"205\" y=\"367\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" alignment=\"left\" title=\"-\" id=\"jlF-oN-6jR\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ibg-QL-cVb\">\n                    <rect key=\"frame\" x=\"205\" y=\"343\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"bg4-im-sfc\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MYG-4N-N6i\">\n                    <rect key=\"frame\" x=\"49\" y=\"367\" width=\"152\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Identificador del equipo:\" id=\"0cZ-kI-PnJ\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qyY-nO-4Jd\">\n                    <rect key=\"frame\" x=\"51\" y=\"343\" width=\"150\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Categoría de validación:\" id=\"0wh-en-a3v\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dVx-X7-9rC\">\n                    <rect key=\"frame\" x=\"18\" y=\"319\" width=\"183\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Opciones de firma de código:\" id=\"B6T-7b-zGQ\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"fce-70-gVD\">\n                    <rect key=\"frame\" x=\"205\" y=\"21\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"VDD-jV-8zV\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scW-9F-TpJ\">\n                    <rect key=\"frame\" x=\"82\" y=\"21\" width=\"119\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Nivel de confianza:\" id=\"Gmq-jb-2Tt\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"chR-7J-O6v\">\n                    <rect key=\"frame\" x=\"205\" y=\"45\" width=\"226\" height=\"290\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" allowsUndo=\"NO\" allowsEditingTextAttributes=\"YES\" id=\"erf-qu-9hj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"71.5\" y=\"274\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICollectionViewRegisterItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSView\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"180\" height=\"23\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"49v-rz-P77\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"5\" width=\"28\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"r15:\" id=\"moe-Uv-cgf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"jaL-7X-k26\" customClass=\"CUIRegisterLabel\">\n                    <rect key=\"frame\" x=\"30\" y=\"1\" width=\"149\" height=\"20\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <subviews>\n                        <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qEF-At-YGV\">\n                            <rect key=\"frame\" x=\"4\" y=\"3\" width=\"127\" height=\"17\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"right\" title=\"0x0000000000000000\" id=\"3Ws-AL-pDW\">\n                                <font key=\"font\" size=\"11\" name=\"Menlo-Regular\"/>\n                                <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" red=\"0.0\" green=\"0.0\" blue=\"0.0\" alpha=\"0.051054180475006906\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n                            </textFieldCell>\n                        </textField>\n                        <popUpButton id=\"fAd-pL-hD3\">\n                            <rect key=\"frame\" x=\"130\" y=\"1\" width=\"16\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"Binario\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"arrowAtCenter\" selectedItem=\"Ql8-Yj-GNF\" id=\"jsY-zd-eaC\">\n                                <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                <menu key=\"menu\" id=\"W6L-9s-vAV\">\n                                    <items>\n                                        <menuItem title=\"Binario\" state=\"on\" hidden=\"YES\" id=\"Ql8-Yj-GNF\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Booleano\" tag=\"1\" id=\"VoA-fE-sxQ\"/>\n                                        <menuItem title=\"Decimal\" tag=\"3\" id=\"Hab-wq-jWg\"/>\n                                        <menuItem title=\"Decimal sin signo\" tag=\"6\" id=\"QOY-jj-Mna\"/>\n                                        <menuItem title=\"Hex\" tag=\"4\" id=\"SoX-XB-pNK\"/>\n                                        <menuItem title=\"Octal\" tag=\"5\" id=\"5Ci-Jw-A07\"/>\n                                        <menuItem title=\"Real\" tag=\"2\" id=\"2IG-5I-rJY\"/>\n                                    </items>\n                                </menu>\n                            </popUpButtonCell>\n                            <connections>\n                                <action selector=\"switchDisplayFormat:\" target=\"jaL-7X-k26\" id=\"VTy-Z7-Jxf\"/>\n                            </connections>\n                        </popUpButton>\n                    </subviews>\n                    <connections>\n                        <outlet property=\"_popUpButton\" destination=\"fAd-pL-hD3\" id=\"tc3-Wy-sGM\"/>\n                        <outlet property=\"_textField\" destination=\"qEF-At-YGV\" id=\"dOS-N9-mnK\"/>\n                    </connections>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-21\" y=\"-184\"/>\n        </customView>\n        <collectionViewItem id=\"faJ-j9-dhQ\" customClass=\"CUICollectionViewRegisterItem\">\n            <connections>\n                <outlet property=\"_registerNameLabel\" destination=\"49v-rz-P77\" id=\"BR4-Vr-dVK\"/>\n                <outlet property=\"_registerValueDisplayFormatPopUpButton\" destination=\"fAd-pL-hD3\" id=\"UaJ-9Q-HVg\"/>\n                <outlet property=\"_registerValueLabel\" destination=\"jaL-7X-k26\" id=\"IU3-mu-U3V\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"6gV-UU-WJg\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICrashLogPresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_bottomView\" destination=\"16n-m5-v72\" id=\"M96-Rj-3vP\"/>\n                <outlet property=\"_columnModeButton\" destination=\"0Gc-7g-Ass\" id=\"XI8-35-JsW\"/>\n                <outlet property=\"_diagnosticMessageTextView\" destination=\"IwT-LV-4u1\" id=\"ygu-AN-tpy\"/>\n                <outlet property=\"_exceptionTypeMoreInfoButton\" destination=\"oyw-Du-OMN\" id=\"82e-p8-W3R\"/>\n                <outlet property=\"_exceptionTypeValue\" destination=\"UjR-qo-T8o\" id=\"orF-Ig-CDt\"/>\n                <outlet property=\"_lightTableModeButton\" destination=\"txw-BM-Naa\" id=\"pWp-8l-uF0\"/>\n                <outlet property=\"_listModeButton\" destination=\"4H4-2A-3rH\" id=\"TPP-Pc-27m\"/>\n                <outlet property=\"_middleView\" destination=\"3jW-NO-y2r\" id=\"tdb-iF-AuV\"/>\n                <outlet property=\"_showBinaryImagesButton\" destination=\"mXS-EH-zAu\" id=\"YMP-3f-zjX\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"STs-S6-lOY\" id=\"7jf-g3-CT7\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"tXx-uN-2vh\" id=\"SBE-d0-8OJ\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"2vU-ne-pQu\" id=\"sEh-95-6Lh\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"QRs-W6-mBT\" id=\"KOn-Jl-aus\"/>\n                <outlet property=\"_splitView\" destination=\"xQ0-xe-5sR\" id=\"I9n-V8-sWN\"/>\n                <outlet property=\"_threadsContainerView\" destination=\"tzS-vU-NLb\" id=\"tuG-n2-KAA\"/>\n                <outlet property=\"_topView\" destination=\"fcj-Y3-D2P\" id=\"otl-zr-mtC\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"447\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gdJ-dt-1kl\">\n                    <rect key=\"frame\" x=\"13\" y=\"421\" width=\"119\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"Tipo de excepción:\" id=\"ayc-kQ-Slx\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"Sxy-MF-gHB\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"409\" width=\"869\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UjR-qo-T8o\">\n                    <rect key=\"frame\" x=\"136\" y=\"421\" width=\"343\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" id=\"s2X-DC-xIe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"oyw-Du-OMN\">\n                    <rect key=\"frame\" x=\"704\" y=\"412\" width=\"151\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"Más información…\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Upz-9K-gHp\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showMoreExceptionInfo:\" target=\"-2\" id=\"A1K-iE-4RQ\"/>\n                    </connections>\n                </button>\n                <splitView arrangesAllSubviews=\"NO\" dividerStyle=\"thin\" id=\"xQ0-xe-5sR\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"411\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView id=\"fcj-Y3-D2P\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"92\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                            <subviews>\n                                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"xta-0h-6ql\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"871\" height=\"73\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <clipView key=\"contentView\" copiesOnScroll=\"NO\" id=\"d4p-1Y-po0\">\n                                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"869\" height=\"71\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                        <subviews>\n                                            <textView editable=\"NO\" drawsBackground=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" id=\"IwT-LV-4u1\">\n                                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"71\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <size key=\"minSize\" width=\"869\" height=\"71\"/>\n                                                <size key=\"maxSize\" width=\"871\" height=\"10000000\"/>\n                                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textView>\n                                        </subviews>\n                                    </clipView>\n                                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"RY3-Qx-cWa\">\n                                        <rect key=\"frame\" x=\"-14\" y=\"1\" width=\"15\" height=\"0.0\"/>\n                                        <autoresizingMask key=\"autoresizingMask\"/>\n                                    </scroller>\n                                </scrollView>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TL4-gi-udl\">\n                                    <rect key=\"frame\" x=\"13\" y=\"2\" width=\"96\" height=\"16\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"Pila de llamadas\" id=\"Dtf-ev-i4n\">\n                                        <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                            </subviews>\n                        </customView>\n                        <customView id=\"3jW-NO-y2r\" userLabel=\"Middle View\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"93\" width=\"869\" height=\"177\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                            <subviews>\n                                <button toolTip=\"Mostrar la pila de llamadas como columnas\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"0Gc-7g-Ass\">\n                                    <rect key=\"frame\" x=\"65\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallColumn_Template\" imagePosition=\"only\" alignment=\"center\" inset=\"2\" id=\"X5W-Qe-nKe\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"e7v-G7-W7s\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Mostrar solo el thread fallado\" verticalHuggingPriority=\"750\" id=\"QRs-W6-mBT\">\n                                    <rect key=\"frame\" x=\"751\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"con-zk-L9l\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"fgj-Js-Ah7\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Ocultar o mostrar la dirección de la instrucción de la máquina\" verticalHuggingPriority=\"750\" id=\"2vU-ne-pQu\">\n                                    <rect key=\"frame\" x=\"809\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"w28-Ax-j2K\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"gJR-EI-GwW\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Ocultar o mostrar la imagen del binario\" verticalHuggingPriority=\"750\" id=\"STs-S6-lOY\">\n                                    <rect key=\"frame\" x=\"780\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Aan-op-skH\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"sVI-Dr-72U\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Ocultar o mostra byte offset\" verticalHuggingPriority=\"750\" id=\"tXx-uN-2vh\">\n                                    <rect key=\"frame\" x=\"838\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"GRj-N7-F4j\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"MdF-Tl-Xtk\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Ocultar o mostrar las imagenes de los binarios\" verticalHuggingPriority=\"750\" id=\"mXS-EH-zAu\">\n                                    <rect key=\"frame\" x=\"1\" y=\"-1\" width=\"27\" height=\"22\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"bottom_disclose_Template\" imagePosition=\"only\" alignment=\"center\" alternateImage=\"bottom_hide_Template\" inset=\"2\" id=\"Awy-Hl-TgF\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"showHideBottomView:\" target=\"-2\" id=\"udq-fk-pc4\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Mostrar la pila de llamadas como lista\" verticalHuggingPriority=\"750\" tag=\"1\" id=\"4H4-2A-3rH\">\n                                    <rect key=\"frame\" x=\"42\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSListViewTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"i1d-5C-VGM\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"mrq-dw-3ek\"/>\n                                    </connections>\n                                </button>\n                                <button hidden=\"YES\" toolTip=\"Show backtraces in a caroussel\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"txw-BM-Naa\">\n                                    <rect key=\"frame\" x=\"88\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallLightTable_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"EhU-bz-HLR\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"ABc-ah-Ysu\"/>\n                                    </connections>\n                                </button>\n                                <customView id=\"tzS-vU-NLb\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"22\" width=\"871\" height=\"156\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </customView>\n                        <customView id=\"16n-m5-v72\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"271\" width=\"869\" height=\"140\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"jmb-1Q-H0m\"/>\n                    </connections>\n                </splitView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"122\" y=\"-210\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSListViewTemplate\" width=\"14\" height=\"10\"/>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bottom_disclose_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bottom_hide_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallColumn_Template\" width=\"14\" height=\"10\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n        <image name=\"smallLightTable_Template\" width=\"14\" height=\"10\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICrashLogPresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationTextViewController\">\n            <connections>\n                <outlet property=\"_sectionsVisibilityPopUpButton\" destination=\"o3T-bg-7a6\" id=\"vRD-qm-Pyp\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"Ytt-64-lj2\" id=\"6lh-Tf-i9B\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"gHh-U9-6ts\" id=\"w5b-4r-VB4\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"V1i-87-jZk\" id=\"tAE-2I-lj8\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"hZe-Mo-RWl\" id=\"pSn-XW-qF6\"/>\n                <outlet property=\"_textView\" destination=\"Gtc-Yk-xtd\" id=\"s9U-Yv-TsI\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"612\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <popUpButton toolTip=\"Filtrar las secciones visibles\" id=\"o3T-bg-7a6\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"31\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"hR3-DY-z5t\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"e8c-hg-WG7\">\n                            <items>\n                                <menuItem state=\"on\" image=\"quote_Template\" hidden=\"YES\" id=\"ggI-rC-fEt\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Encabezado\" id=\"zdn-EI-sae\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-2\" id=\"QIM-JJ-4Lh\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"fZC-QV-uXY\"/>\n                                <menuItem title=\"Información de excepción\" id=\"LpK-Zx-Gla\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-2\" id=\"2VZ-w6-6FZ\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Mensajes de diagnóstico\" id=\"M4h-Oa-aq3\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-2\" id=\"hQt-R4-vLH\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"3Wr-0I-wum\"/>\n                                <menuItem title=\"Pila de llamadas\" id=\"kXZ-qs-DxU\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-2\" id=\"B8j-HN-qA3\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Estado del thread\" id=\"d7k-xL-Hbq\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-2\" id=\"c9g-bt-Ect\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Imagenes de los binarios\" id=\"FHu-OU-dEn\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-2\" id=\"E7Q-0s-gFI\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <button toolTip=\"Mostrar solo el thread fallado\" verticalHuggingPriority=\"750\" id=\"hZe-Mo-RWl\">\n                    <rect key=\"frame\" x=\"574\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"cgk-bN-rIw\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"hSj-AL-N38\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Ocultar o mostra byte offset\" verticalHuggingPriority=\"750\" id=\"gHh-U9-6ts\">\n                    <rect key=\"frame\" x=\"661\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"O1c-Fy-oRt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"s9c-GQ-gYk\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Ocultar o mostrar la dirección de la instrucción de la máquina\" verticalHuggingPriority=\"750\" id=\"V1i-87-jZk\">\n                    <rect key=\"frame\" x=\"632\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"N9g-4y-bag\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"muF-oq-Yyp\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Ocultar o mostrar la imagen del binario\" verticalHuggingPriority=\"750\" id=\"Ytt-64-lj2\">\n                    <rect key=\"frame\" x=\"603\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"feE-rv-jxh\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"pin-0C-OOg\"/>\n                    </connections>\n                </button>\n                <scrollView borderType=\"none\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"ekh-hq-gUp\" customClass=\"NSCrashLogTextScrollView\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"692\" height=\"589\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" copiesOnScroll=\"NO\" id=\"5MQ-yl-x1z\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <textView editable=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" smartInsertDelete=\"YES\" id=\"Gtc-Yk-xtd\" customClass=\"CUICrashLogTextView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <size key=\"minSize\" width=\"692\" height=\"589\"/>\n                                <size key=\"maxSize\" width=\"692\" height=\"10000000\"/>\n                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </textView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ilc-Nf-Ue4\">\n                        <rect key=\"frame\" x=\"677\" y=\"0.0\" width=\"15\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"327\" y=\"99\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"quote_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICrashLogsListViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsListViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"kV4-Gy-Y5g\" id=\"mab-gb-mLb\"/>\n                <outlet property=\"_shareMenu\" destination=\"fYp-Jl-UVV\" id=\"UDn-zl-y3K\"/>\n                <outlet property=\"_sortPopUpButton\" destination=\"vD3-8d-OAL\" id=\"bxh-ry-Anh\"/>\n                <outlet property=\"_tableView\" destination=\"up6-IV-9dX\" id=\"qr9-ho-AXW\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"356\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"38\" horizontalPageScroll=\"10\" verticalLineScroll=\"38\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"3HT-Gz-85z\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"242\" height=\"333\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"pIU-n9-gmy\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"240\" height=\"331\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" typeSelect=\"NO\" rowHeight=\"36\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"up6-IV-9dX\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"331\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"crashlog\" width=\"237\" minWidth=\"40\" maxWidth=\"3000\" id=\"mvk-6t-fLR\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"mYa-rl-emi\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"crashlog cell\" id=\"Xca-mC-mWV\" customClass=\"CUICrashLogTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"237\" height=\"36\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"mVA-Z6-k5O\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"17\" width=\"130\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"x97-bl-W1B\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"PbV-Y5-NBE\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"6\" width=\"24\" height=\"24\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"CAj-gG-wBu\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"JiO-a5-b11\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"5\" width=\"132\" height=\"11\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"JeG-Im-RXs\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"miniSystem\"/>\n                                                            <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"BBl-CI-Lfa\">\n                                                        <rect key=\"frame\" x=\"165\" y=\"11\" width=\"71\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"zKb-T5-FgR\">\n                                                            <font key=\"font\" metaFont=\"miniSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dateLabel\" destination=\"JiO-a5-b11\" id=\"HbY-n5-YwU\"/>\n                                                    <outlet property=\"exceptionTypeLabel\" destination=\"BBl-CI-Lfa\" id=\"oYd-S0-W7S\"/>\n                                                    <outlet property=\"imageView\" destination=\"PbV-Y5-NBE\" id=\"MnJ-Rq-ILZ\"/>\n                                                    <outlet property=\"textField\" destination=\"mVA-Z6-k5O\" id=\"36v-QD-EVB\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"cwW-Ck-seH\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"9Oi-EP-GeV\"/>\n                                    <outlet property=\"menu\" destination=\"K9J-Sc-Re6\" id=\"I8m-OA-9dB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"9gf-HZ-0gE\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"fDS-AZ-p9b\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <connections>\n                        <outlet property=\"nextKeyView\" destination=\"kV4-Gy-Y5g\" id=\"1ku-o3-h60\"/>\n                    </connections>\n                </scrollView>\n                <popUpButton id=\"vD3-8d-OAL\">\n                    <rect key=\"frame\" x=\"207\" y=\"4\" width=\"29\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" imagePosition=\"only\" alignment=\"left\" lineBreakMode=\"truncatingTail\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"GL8-00-Vd6\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"9d9-ef-5mD\">\n                            <items>\n                                <menuItem image=\"NSActionTemplate\" hidden=\"YES\" id=\"29W-Zg-HYo\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Mostrar\" tag=\"-1\" enabled=\"NO\" id=\"OyG-pb-y0y\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"1qG-Wh-Rb5\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Nombre del proceso\" id=\"CZj-bS-oal\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"VcS-iL-cpE\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Nombre de archivo del informe\" tag=\"1\" id=\"lVx-Sr-DHa\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"AT3-n6-CaH\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"Gq5-P9-Mmc\"/>\n                                <menuItem title=\"Ordenar por\" tag=\"-1\" enabled=\"NO\" id=\"AL8-Kn-KK9\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"RYn-IS-MwG\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Fecha\" id=\"JK6-HP-t2c\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"LbE-RM-9Ds\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Nombre\" tag=\"1\" id=\"ONn-2g-Z6J\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"a8T-QO-ra1\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"kV4-Gy-Y5g\">\n                    <rect key=\"frame\" x=\"5\" y=\"2\" width=\"201\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filtrar\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"vf8-7z-IX2\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"AbZ-G7-C3w\"/>\n                        <outlet property=\"nextKeyView\" destination=\"up6-IV-9dX\" id=\"fro-eH-HkL\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-70\" y=\"-115\"/>\n        </customView>\n        <menu id=\"K9J-Sc-Re6\">\n            <items>\n                <menuItem title=\"Compartir\" id=\"Z85-YC-iqx\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Compartir\" id=\"fYp-Jl-UVV\">\n                        <items>\n                            <menuItem title=\"Item\" id=\"mcY-bs-XBY\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"77W-Wm-C8z\"/>\n                <menuItem title=\"Mostrar en el Finder\" id=\"1tQ-M6-BhY\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"VM3-SG-pFL\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"wYO-OM-Zfy\"/>\n                <menuItem title=\"Trasladar a la Papelera\" id=\"H9t-ba-DIj\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-2\" id=\"5Yv-gc-anj\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"bpu-1P-Sum\">\n                    <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-2\" id=\"jz9-Pm-lkY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"265\" y=\"167\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICrashLogsSourceSmartEditorWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourceSmartEditorWindowController\">\n            <connections>\n                <outlet property=\"_defaultButton\" destination=\"Vz1-eq-Bkn\" id=\"5aX-ze-jQK\"/>\n                <outlet property=\"_descriptionTextField\" destination=\"ZDo-yP-EKy\" id=\"4xH-ud-SgF\"/>\n                <outlet property=\"_nameTextField\" destination=\"xBE-Xe-jfR\" id=\"MHn-8t-z8e\"/>\n                <outlet property=\"_predicatorEditor\" destination=\"jDY-Qj-m2x\" id=\"FoF-WG-5OS\"/>\n                <outlet property=\"window\" destination=\"6Nx-tZ-z08\" id=\"xRR-dz-5L0\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"\" animationBehavior=\"default\" id=\"6Nx-tZ-z08\" customClass=\"CUICrashLogsSourceSmartEditorPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"272\" y=\"172\" width=\"770\" height=\"425\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"500\" height=\"300\"/>\n            <view key=\"contentView\" id=\"faP-Uk-3iG\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"770\" height=\"425\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"gOj-hZ-3PD\">\n                        <rect key=\"frame\" x=\"20\" y=\"61\" width=\"730\" height=\"253\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"hPl-qb-BPf\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"728\" height=\"251\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <predicateEditor verticalHuggingPriority=\"750\" nestingMode=\"compound\" formattingStringsFilename=\"Predicates\" rowHeight=\"32\" id=\"jDY-Qj-m2x\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"728\" height=\"251\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <rowTemplates/>\n                                </predicateEditor>\n                            </subviews>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"qAm-Sw-0Kh\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"360\" height=\"15\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"7TB-Eg-mtV\">\n                            <rect key=\"frame\" x=\"336\" y=\"1\" width=\"15\" height=\"84\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"xBE-Xe-jfR\" id=\"VQF-PC-qyE\"/>\n                        </connections>\n                    </scrollView>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"l74-1V-jTB\">\n                        <rect key=\"frame\" x=\"20\" y=\"386\" width=\"78\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Nombre:\" id=\"reH-vX-GUc\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"xBE-Xe-jfR\">\n                        <rect key=\"frame\" x=\"104\" y=\"383\" width=\"646\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"vms-yZ-h6X\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"ZDo-yP-EKy\" id=\"KLi-H6-FaN\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scv-qL-eIO\">\n                        <rect key=\"frame\" x=\"8\" y=\"356\" width=\"90\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Descripción:\" id=\"zQj-c9-rhZ\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gZy-Gi-lVS\">\n                        <rect key=\"frame\" x=\"18\" y=\"322\" width=\"270\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Enumerar todos los informes que coinciden:\" id=\"yeg-vI-i3G\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"ZDo-yP-EKy\">\n                        <rect key=\"frame\" x=\"104\" y=\"354\" width=\"646\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"NHO-Tg-DVY\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"jDY-Qj-m2x\" id=\"7GQ-Ig-FpW\"/>\n                        </connections>\n                    </textField>\n                    <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"Vz1-eq-Bkn\">\n                        <rect key=\"frame\" x=\"674\" y=\"13\" width=\"82\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"OK\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"XBD-qh-UfL\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nDQ\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"WvP-6v-END\"/>\n                        </connections>\n                    </button>\n                    <button verticalHuggingPriority=\"750\" id=\"V1T-Ch-XmL\">\n                        <rect key=\"frame\" x=\"580\" y=\"13\" width=\"94\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"Cancelar\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"wdm-Py-Aj7\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nGw\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"Bzy-Dz-sSF\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"101\" y=\"-846.5\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUICrashLogsSourcesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourcesViewController\">\n            <connections>\n                <outlet property=\"_actionPopUpButton\" destination=\"sKM-ic-Jtc\" id=\"iwb-q5-Ljf\"/>\n                <outlet property=\"_removeButton\" destination=\"FnB-m4-Sew\" id=\"wN7-Xv-wbV\"/>\n                <outlet property=\"_tableView\" destination=\"qaX-hd-IQc\" id=\"7TK-LI-fbH\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"204\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"26\" horizontalPageScroll=\"10\" verticalLineScroll=\"26\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jOq-q2-5j4\">\n                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"294\" height=\"185\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"V1I-rp-JOe\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"292\" height=\"183\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"firstColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"24\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"qaX-hd-IQc\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"183\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"288\" minWidth=\"40\" maxWidth=\"3000\" id=\"8eI-mT-cek\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"6Aq-8j-jza\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"regular\" id=\"V1Z-VM-OSw\" customClass=\"CUICrashLogsSourceTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"288\" height=\"24\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"CHR-0u-IlO\">\n                                                        <rect key=\"frame\" x=\"28\" y=\"4\" width=\"211\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"nc6-Rz-iCi\">\n                                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeSourceNameFrom:\" target=\"-2\" id=\"mWi-p6-3aT\"/>\n                                                        </connections>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"oo6-n4-B90\">\n                                                        <rect key=\"frame\" x=\"6\" y=\"4\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"4kJ-0G-1fI\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"FRn-Dx-rid\" customClass=\"CUICaptionView\">\n                                                        <rect key=\"frame\" x=\"241\" y=\"4\" width=\"45\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"gba-xW-dcj\">\n                                                            <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"countTextField\" destination=\"FRn-Dx-rid\" id=\"Ifb-AG-5YH\"/>\n                                                    <outlet property=\"imageView\" destination=\"oo6-n4-B90\" id=\"Oxn-bE-uRy\"/>\n                                                    <outlet property=\"textField\" destination=\"CHR-0u-IlO\" id=\"X4V-af-tuu\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"separator\" id=\"HDp-BB-XMC\">\n                                                <rect key=\"frame\" x=\"1\" y=\"27\" width=\"288\" height=\"12\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"LMg-V2-t05\">\n                                                        <rect key=\"frame\" x=\"12\" y=\"4\" width=\"264\" height=\"4\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                    </box>\n                                                </subviews>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Rbs-pr-q0d\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"zhS-3Z-X2w\"/>\n                                    <outlet property=\"menu\" destination=\"HyN-lT-5sn\" id=\"71y-43-qQ2\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                        <nil key=\"backgroundColor\"/>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"T63-2m-Wdk\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"QtW-2T-sMx\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <button toolTip=\"Eliminar archivo, carpeta o fuente inteligente\" verticalHuggingPriority=\"750\" id=\"FnB-m4-Sew\">\n                    <rect key=\"frame\" x=\"26\" y=\"-2\" width=\"25\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSRemoveTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"ocB-wp-jcr\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"removeSources:\" target=\"-2\" id=\"I1p-xT-TZx\"/>\n                    </connections>\n                </button>\n                <popUpButton id=\"sKM-ic-Jtc\">\n                    <rect key=\"frame\" x=\"262\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"MSJ-wy-0Je\" id=\"lEb-Ag-E8W\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"LzV-Lh-Udh\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSActionTemplate\" hidden=\"YES\" id=\"MSJ-wy-0Je\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Editar…\" id=\"9dK-mu-DL0\">\n                                    <connections>\n                                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"PmO-aB-nyF\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"2ub-md-RCd\"/>\n                                <menuItem title=\"Mostrar en el Finder\" id=\"pSl-d5-liK\">\n                                    <connections>\n                                        <action selector=\"showInFinder:\" target=\"-2\" id=\"wFv-E8-fC9\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <popUpButton toolTip=\"Añadir archivo, carpeta o fuente inteligente\" id=\"Fjw-36-xHZ\">\n                    <rect key=\"frame\" x=\"-4\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"DJQ-Va-eqw\" id=\"w3m-zi-K88\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"vOh-MW-SiJ\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSAddTemplate\" hidden=\"YES\" id=\"DJQ-Va-eqw\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Nueva fuente inteligente…\" id=\"HSw-t4-mnl\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-2\" id=\"mMA-Im-5Li\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"FFc-YN-a1b\"/>\n                                <menuItem title=\"Añadir archivo or carpeta…\" id=\"r1o-zR-BIu\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSource:\" target=\"-2\" id=\"1HN-pX-hYb\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-581\" y=\"-963\"/>\n        </customView>\n        <menu id=\"HyN-lT-5sn\">\n            <items>\n                <menuItem title=\"Editar…\" id=\"Twv-NI-xzw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"KCD-e6-KYn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"qHD-mG-1OK\"/>\n                <menuItem title=\"Exportar…\" id=\"WOP-2L-vqA\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-2\" id=\"VBk-ZW-3Ao\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"lae-j9-hK9\"/>\n                <menuItem title=\"Mostrar en el Finder\" id=\"teN-5F-Oei\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"Lf6-Pc-sdu\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"SL1-L3-taV\"/>\n                <menuItem title=\"Ordenar por nombre\" id=\"dmU-Jn-V8L\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"sortByName:\" target=\"-2\" id=\"Bij-2K-sHc\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-266\" y=\"-716\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIExportAccessoryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIExportAccessoryViewController\">\n            <connections>\n                <outlet property=\"_allContentsRadioButton\" destination=\"lQT-bg-eZT\" id=\"Mpw-Xc-7kK\"/>\n                <outlet property=\"_formatPopUpButton\" destination=\"1u4-74-6Q1\" id=\"Nog-Ao-3bb\"/>\n                <outlet property=\"_obfuscateContentsRadioButton\" destination=\"Gjk-ju-5jp\" id=\"MQR-gV-GHg\"/>\n                <outlet property=\"_selectionOnlyRadioButton\" destination=\"yCi-24-cSg\" id=\"hjW-mF-lCx\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"608\" height=\"202\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"1u4-74-6Q1\">\n                    <rect key=\"frame\" x=\"306\" y=\"158\" width=\"81\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"HTML\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"lK1-XA-eFw\" id=\"3tZ-5v-KqQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"NIf-x2-QG2\">\n                            <items>\n                                <menuItem title=\"HTML\" state=\"on\" id=\"lK1-XA-eFw\"/>\n                                <menuItem title=\"RTF\" tag=\"1\" id=\"OPJ-uJ-ymt\"/>\n                                <menuItem title=\"PDF\" tag=\"2\" id=\"Hq6-BX-2O0\"/>\n                                <menuItem title=\"Texto\" tag=\"3\" id=\"mXG-Qn-Pew\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchExportFormat:\" target=\"-2\" id=\"J2A-b6-fHB\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ra9-fZ-6EK\">\n                    <rect key=\"frame\" x=\"243\" y=\"163\" width=\"59\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Formato:\" id=\"kgo-g3-HQW\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"lQT-bg-eZT\">\n                    <rect key=\"frame\" x=\"306\" y=\"126\" width=\"131\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"Informe completo\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"pba-yN-6P5\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"uaB-9C-u9X\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"yCi-24-cSg\">\n                    <rect key=\"frame\" x=\"306\" y=\"105\" width=\"167\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"Solo texto seleccionado\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"kfb-cJ-elR\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"GTa-iX-bQ5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cJJ-vN-i8N\">\n                    <rect key=\"frame\" x=\"152\" y=\"127\" width=\"150\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Contenidos exportados:\" id=\"buk-Aw-yVe\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Gjk-ju-5jp\">\n                    <rect key=\"frame\" x=\"305\" y=\"70\" width=\"148\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Ofuscar contenidos\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"T7n-Bz-EMj\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchObfuscateContents:\" target=\"-2\" id=\"fTC-VT-Wfl\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"w7Q-Hx-FPr\">\n                    <rect key=\"frame\" x=\"324\" y=\"20\" width=\"266\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"left\" title=\"Los nombres, las rutas y los símbolos del ejecutable y las imágenes binarias que no pertenecen al sistema se ofuscarán.\" id=\"bC1-j2-ArG\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-67\" y=\"-179\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIInspectorExecutableViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorExecutableViewController\">\n            <connections>\n                <outlet property=\"_codeSigningButton\" destination=\"s4h-eD-ItN\" id=\"To8-h6-Yko\"/>\n                <outlet property=\"_executableArchitectureValue\" destination=\"FHg-iH-xDN\" id=\"gZP-1i-Ula\"/>\n                <outlet property=\"_executableIconView\" destination=\"Sae-Ke-hDq\" id=\"ypT-Mj-Zdm\"/>\n                <outlet property=\"_executableNameValue\" destination=\"Lro-Zd-nK3\" id=\"TjT-bg-eaE\"/>\n                <outlet property=\"_executablePathShowButton\" destination=\"HUC-Md-GwA\" id=\"XhF-6S-OEB\"/>\n                <outlet property=\"_executablePathValue\" destination=\"vJ5-dm-szr\" id=\"r17-Kq-oCv\"/>\n                <outlet property=\"_executableVersionValue\" destination=\"gDy-ag-3pH\" id=\"Yag-xh-PfZ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"180\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gDy-ag-3pH\">\n                    <rect key=\"frame\" x=\"99\" y=\"108\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" title=\"-\" id=\"IMe-4e-a2n\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ycX-86-LPH\">\n                    <rect key=\"frame\" x=\"35\" y=\"43\" width=\"60\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Ubicación:\" id=\"SZn-tV-fDm\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3RL-Kg-wqv\">\n                    <rect key=\"frame\" x=\"16\" y=\"71\" width=\"79\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Arquitecturas:\" id=\"gXy-9k-Kye\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"vJ5-dm-szr\">\n                    <rect key=\"frame\" x=\"99\" y=\"15\" width=\"266\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" selectable=\"YES\" title=\"-\" id=\"wdP-NI-1D3\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Lro-Zd-nK3\">\n                    <rect key=\"frame\" x=\"99\" y=\"125\" width=\"266\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" title=\"-\" id=\"jis-EI-eF4\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"Sae-Ke-hDq\">\n                    <rect key=\"frame\" x=\"45\" y=\"101\" width=\"48\" height=\"48\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"ctr-8J-DUa\"/>\n                </imageView>\n                <button verticalHuggingPriority=\"750\" id=\"HUC-Md-GwA\">\n                    <rect key=\"frame\" x=\"366\" y=\"15\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"R8w-To-3V9\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showExecutableInFinder:\" target=\"-2\" id=\"tyZ-In-ieS\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"FHg-iH-xDN\">\n                    <rect key=\"frame\" x=\"99\" y=\"71\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" title=\"-\" id=\"sgJ-ZE-akF\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"JP3-16-pwL\">\n                    <rect key=\"frame\" x=\"4\" y=\"160\" width=\"63\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Ejecutable\" id=\"hb6-Qr-SQw\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"s4h-eD-ItN\">\n                    <rect key=\"frame\" x=\"366\" y=\"161\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSLockLockedTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Wz4-rQ-pgV\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showCodeSigningInformation:\" target=\"-2\" id=\"m9b-V9-6GE\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-51.5\" y=\"-186\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSLockLockedTemplate\" width=\"10\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIInspectorGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorGeneralViewController\">\n            <connections>\n                <outlet property=\"_bridgeOSVersionValue\" destination=\"BfS-1Q-avM\" id=\"Aih-cE-fUa\"/>\n                <outlet property=\"_crashDateValue\" destination=\"aeZ-E8-L6d\" id=\"N7P-8g-o9B\"/>\n                <outlet property=\"_operatingSystemVersionLabel\" destination=\"TdJ-MQ-6CN\" id=\"On3-gp-MLA\"/>\n                <outlet property=\"_operatingSystemVersionValue\" destination=\"SgG-rE-gjS\" id=\"6hk-jF-Az8\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"s8b-in-hjv\">\n                    <rect key=\"frame\" x=\"52\" y=\"59\" width=\"43\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Fecha:\" id=\"f0C-O7-hfc\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aeZ-E8-L6d\">\n                    <rect key=\"frame\" x=\"99\" y=\"59\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"4oA-j1-qqu\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                    <connections>\n                        <outlet property=\"formatter\" destination=\"CAS-2z-CXR\" id=\"o5J-Fr-jq7\"/>\n                    </connections>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"SgG-rE-gjS\">\n                    <rect key=\"frame\" x=\"99\" y=\"37\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"IoO-4Y-BLi\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TdJ-MQ-6CN\">\n                    <rect key=\"frame\" x=\"24\" y=\"37\" width=\"71\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"macOS:\" id=\"B2h-K8-1XC\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ai6-kr-ddH\">\n                    <rect key=\"frame\" x=\"34\" y=\"15\" width=\"61\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Bridge OS:\" id=\"hKB-kb-Fu1\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Eku-en-ffA\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"48\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"General\" id=\"Slr-R1-4oS\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"BfS-1Q-avM\">\n                    <rect key=\"frame\" x=\"99\" y=\"15\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" title=\"-\" id=\"JiY-vk-jYf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"69.5\"/>\n        </customView>\n        <dateFormatter dateStyle=\"long\" timeStyle=\"medium\" id=\"CAS-2z-CXR\"/>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIInspectorProcessesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorProcessesViewController\">\n            <connections>\n                <outlet property=\"_parentProcessNameValue\" destination=\"sdS-1T-5A6\" id=\"YdX-gO-EHR\"/>\n                <outlet property=\"_processNameValue\" destination=\"dWY-e9-8s7\" id=\"kaZ-i4-xhx\"/>\n                <outlet property=\"_responsibleProcessNameValue\" destination=\"UYO-VY-Dyh\" id=\"hqs-KJ-tM6\"/>\n                <outlet property=\"view\" destination=\"rFj-qp-YPZ\" id=\"SDI-BY-k6p\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"rFj-qp-YPZ\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"4uB-ml-0Ol\">\n                    <rect key=\"frame\" x=\"23\" y=\"15\" width=\"72\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Responsible:\" id=\"jqz-4F-VO7\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UYO-VY-Dyh\">\n                    <rect key=\"frame\" x=\"99\" y=\"15\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"pZF-sh-MrA\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hLm-Sv-QmR\">\n                    <rect key=\"frame\" x=\"11\" y=\"37\" width=\"84\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Proceso padre:\" id=\"LQg-a2-eTx\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"S5n-dU-r4J\">\n                    <rect key=\"frame\" x=\"45\" y=\"59\" width=\"50\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Proceso:\" id=\"cvR-Mj-EZK\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dWY-e9-8s7\">\n                    <rect key=\"frame\" x=\"99\" y=\"59\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"Oa8-vR-6jZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hD5-0s-riR\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"56\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Procesos\" id=\"Peb-bL-MXn\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"sdS-1T-5A6\">\n                    <rect key=\"frame\" x=\"99\" y=\"37\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"2qk-DS-kXk\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-1.5\" y=\"-239.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIInspectorUserViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorUserViewController\">\n            <connections>\n                <outlet property=\"_userIDValue\" destination=\"bZr-jf-89d\" id=\"3zx-IQ-gXi\"/>\n                <outlet property=\"view\" destination=\"3rg-3s-egq\" id=\"NYa-HK-UvG\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"3rg-3s-egq\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"52\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Hlm-9j-k55\">\n                    <rect key=\"frame\" x=\"4\" y=\"34\" width=\"48\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Usuario\" id=\"SsR-D5-bkx\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"peF-fl-SHq\">\n                    <rect key=\"frame\" x=\"18\" y=\"15\" width=\"77\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"ID de usuario:\" id=\"qra-Pb-I2W\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"bZr-jf-89d\">\n                    <rect key=\"frame\" x=\"99\" y=\"15\" width=\"266\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"cqQ-PI-zPB\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"158\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUILineJumperWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUILineJumperWindowController\">\n            <connections>\n                <outlet property=\"_lineNumberField\" destination=\"Hsy-sF-ru8\" id=\"Szf-Gn-kjq\"/>\n                <outlet property=\"_resetButton\" destination=\"dIW-wv-LKd\" id=\"vVJ-Nt-akO\"/>\n                <outlet property=\"window\" destination=\"mSG-cx-fbW\" id=\"fe5-gS-1Ha\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" hidesOnDeactivate=\"YES\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.lineNumber\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titlebarAppearsTransparent=\"YES\" id=\"mSG-cx-fbW\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" fullSizeContentView=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenNone=\"YES\" fullScreenDisallowsTiling=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"384\" height=\"49\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"Xph-p4-B8X\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"384\" height=\"49\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" id=\"Hsy-sF-ru8\">\n                        <rect key=\"frame\" x=\"45\" y=\"11\" width=\"157\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" focusRingType=\"none\" placeholderString=\"Número de línea\" usesSingleLineMode=\"YES\" id=\"Ju2-zH-bhG\">\n                            <font key=\"font\" metaFont=\"system\" size=\"21\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <action selector=\"takeLineNumberFrom:\" target=\"-2\" id=\"d6v-mK-cXL\"/>\n                            <outlet property=\"delegate\" destination=\"-2\" id=\"X5a-vS-Tae\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dpK-Gf-az3\">\n                        <rect key=\"frame\" x=\"9\" y=\"10\" width=\"32\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"center\" title=\"#\" id=\"x4t-M3-5dd\">\n                            <font key=\"font\" metaFont=\"system\" size=\"30\"/>\n                            <color key=\"textColor\" name=\"tertiaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <button hidden=\"YES\" verticalHuggingPriority=\"750\" id=\"dIW-wv-LKd\">\n                        <rect key=\"frame\" x=\"345\" y=\"14\" width=\"20\" height=\"20\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"NSStopProgressFreestandingTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"AFZ-Xq-Pjf\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"reset:\" target=\"-2\" id=\"XzM-AA-Vzv\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"awR-rx-pPU\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"Hsy-sF-ru8\" id=\"j6W-l3-TNl\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"177\" y=\"-15.5\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSStopProgressFreestandingTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIMainWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIMainWindowController\">\n            <connections>\n                <outlet property=\"_mainLayoutSegmentedControl\" destination=\"WIY-fY-uf6\" id=\"gGf-x3-UnW\"/>\n                <outlet property=\"_presentationModeSegmentedControl\" destination=\"FpB-c3-RI5\" id=\"7TU-rc-fDv\"/>\n                <outlet property=\"_registersWindowButton\" destination=\"tOu-D2-Ept\" id=\"pD9-s6-b6U\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Unexpectedly\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.main\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titleVisibility=\"hidden\" id=\"F0z-JX-Cv5\" customClass=\"CUIMainWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" topStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"701\" y=\"761\" width=\"1210\" height=\"576\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1577\"/>\n            <value key=\"minSize\" type=\"size\" width=\"1210\" height=\"576\"/>\n            <view key=\"contentView\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1210\" height=\"576\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"E5E3FE75-B923-4050-8328-E8DBF77270DA\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"qok-Nh-ZqX\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"4BB16A90-DFB3-4B72-BC1E-0501635805D9\" label=\"Registers\" paletteLabel=\"Registers\" toolTip=\"Mostrar o ocultar la ventana de registros\" id=\"odd-p2-xXV\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"tOu-D2-Ept\">\n                            <rect key=\"frame\" x=\"14\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"R\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"pn6-k3-IBk\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"systemBold\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-2\" id=\"zOP-ux-zx8\"/>\n                            </connections>\n                        </button>\n                        <connections>\n                            <action selector=\"showRegisters:\" target=\"-1\" id=\"Q3j-xK-Hru\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FE3CBB7D-3C62-4B2B-84C4-A0F949E6FC9B\" label=\"Symbolicate\" paletteLabel=\"Symbolicate\" toolTip=\"Simbolizar \" id=\"NBt-t6-6de\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"zGe-P2-PLz\">\n                            <rect key=\"frame\" x=\"22\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"✭\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"bkf-LP-EE1\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                        </button>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_champollion:\" target=\"-1\" id=\"YYP-Ms-rO2\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"CEEABC9B-6A22-4363-9CEF-97F246735D7F\" explicitItemIdentifier=\"presentation.mode\" label=\"Presentation Mode\" paletteLabel=\"Presentation Mode\" sizingBehavior=\"auto\" id=\"lTL-ew-HB0\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"FpB-c3-RI5\">\n                            <rect key=\"frame\" x=\"18\" y=\"14\" width=\"71\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectOne\" id=\"esc-Se-3Gu\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"Texto\" image=\"presentation_text_Template\" width=\"32\"/>\n                                    <segment toolTip=\"Esquema\" image=\"presentation_structured_Template\" width=\"32\" selected=\"YES\" tag=\"1\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"8Dc-fR-ko8\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"651A8C40-7DF7-49AE-B98F-F204C20338E7\" label=\"Areas\" paletteLabel=\"Areas\" sizingBehavior=\"auto\" id=\"dDG-Jy-kkI\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"WIY-fY-uf6\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"14\" width=\"104\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectAny\" id=\"IFc-bQ-yuq\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"Ocultar o mostrar la barra lateral\" image=\"left_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                    <segment toolTip=\"Ocultar o mostrar las imagenes de los binarios\" image=\"middle_switch_Template\" width=\"32\" enabled=\"NO\" tag=\"1\"/>\n                                    <segment toolTip=\"Ocultar o mostrar el inspector\" image=\"right_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"showHideViews:\" target=\"-1\" id=\"q9p-Cx-Zfc\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowColorsItem\" id=\"Ll5-CG-7p5\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowFontsItem\" id=\"5Ai-UD-BMY\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarPrintItem\" id=\"OVf-DI-Wek\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarSpaceItem\" id=\"1s5-E7-9Hl\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarFlexibleSpaceItem\" id=\"QhD-Oy-cTl\"/>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"QhD-Oy-cTl\"/>\n                    <toolbarItem reference=\"odd-p2-xXV\"/>\n                    <toolbarItem reference=\"1s5-E7-9Hl\"/>\n                    <toolbarItem reference=\"lTL-ew-HB0\"/>\n                    <toolbarItem reference=\"dDG-Jy-kkI\"/>\n                </defaultToolbarItems>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"se5-gp-TjO\" id=\"Ndk-U6-g06\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"279\" y=\"-1395\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"left_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"middle_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"presentation_structured_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"presentation_text_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"right_switch_Template\" width=\"18\" height=\"16\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePaneAdvancedViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneAdvancedViewController\">\n            <connections>\n                <outlet property=\"_remoteVersionCheckerCheckbox\" destination=\"90R-sA-w2P\" id=\"ZPS-qK-ptZ\"/>\n                <outlet property=\"_showDebugMenuCheckbox\" destination=\"ysx-uw-uYe\" id=\"ASL-W1-sIo\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"116\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"90R-sA-w2P\">\n                    <rect key=\"frame\" x=\"333\" y=\"78\" width=\"270\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Buscar actualizaciones automáticamente\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"xZp-NR-s8v\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchRemoteVersionCheck:\" target=\"-2\" id=\"vQo-sV-T4X\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"cfR-UU-mmm\">\n                    <rect key=\"frame\" x=\"164\" y=\"79\" width=\"165\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Actualización de Software:\" id=\"gEo-19-sz4\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"7cp-2p-HDv\">\n                    <rect key=\"frame\" x=\"30\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <button verticalHuggingPriority=\"750\" id=\"ysx-uw-uYe\">\n                    <rect key=\"frame\" x=\"333\" y=\"18\" width=\"304\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Mostrar el menú Depurar en la barra de menús\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Aq-aa-8q1\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDebugMenu:\" target=\"-2\" id=\"JpC-OR-CwY\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"140\" y=\"65\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePaneCrashreporterViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneCrashreporterViewController\">\n            <connections>\n                <outlet property=\"_dialogTypeGroup\" destination=\"G3J-O5-TdF\" id=\"ZfW-ac-1tR\"/>\n                <outlet property=\"_notificationModeGroup\" destination=\"7ak-aK-Hz3\" id=\"2VA-sI-h8f\"/>\n                <outlet property=\"_reportUncaughtExceptionsCheckbox\" destination=\"k0s-Jp-SYV\" id=\"GO5-qu-ZEq\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"759\" height=\"222\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"wjm-1k-GIP\">\n                    <rect key=\"frame\" x=\"233\" y=\"76\" width=\"135\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Modo de notificación:\" id=\"Ipc-sm-G5f\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"G3J-O5-TdF\">\n                    <rect key=\"frame\" x=\"372\" y=\"107\" width=\"189\" height=\"60\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button toolTip=\"El diálogo &quot;Se ha cerrado inesperadamente&quot; se muestra para todos los procesos ejecutados por el usuario.\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" tag=\"1\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"q4r-Gy-3Z5\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"104\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Desarrollador\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"Tjt-95-3Z2\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"hvp-pX-cgQ\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"El diálogo &quot;Se ha cerrado inesperadamente&quot; nunca se muestra.\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" tag=\"2\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"i8F-ge-i9c\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"73\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Servidor\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"l5e-xv-Kdo\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"eST-mh-Dhc\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"El diálogo &quot;Se has cerrado inesperadamente&quot; solo se muestra cuando la aplicación se bloquea.\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"KDV-3D-Zmr\">\n                            <rect key=\"frame\" x=\"-1\" y=\"43\" width=\"63\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Básico\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"8un-EB-HxH\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"K5B-SF-Gng\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"7ak-aK-Hz3\">\n                    <rect key=\"frame\" x=\"372\" y=\"54\" width=\"189\" height=\"38\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" tag=\"1\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"AhZ-xe-s0x\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"167\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Notificación del sistema\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"1LC-JU-zMZ\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"Zpu-SM-Vup\"/>\n                            </connections>\n                        </button>\n                        <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"nMG-po-tCI\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"125\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Diálogo de alerta\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"2af-hi-y4e\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"M91-HQ-GhJ\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"k0s-Jp-SYV\">\n                    <rect key=\"frame\" x=\"370\" y=\"18\" width=\"243\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Informar excepciones no capturadas\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"b1K-o7-rhS\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchReportUncaughtException:\" target=\"-2\" id=\"eNP-mM-U1S\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"X5h-y9-eMQ\">\n                    <rect key=\"frame\" x=\"233\" y=\"151\" width=\"135\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Modo de operación:\" id=\"NM5-WZ-kg0\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"3C8-jD-0F8\">\n                    <rect key=\"frame\" x=\"-2\" y=\"188\" width=\"763\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"center\" title=\"Cuando una aplicación se cierra inesperadamente en macOS, el servicio Crash Reporter de Apple genera el informe de fallas.\" id=\"XPU-ts-yFW\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"41.5\" y=\"15\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePaneFontscolorsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneFontscolorsViewController\">\n            <connections>\n                <outlet property=\"_backgroundColorWell\" destination=\"ojb-CW-adm\" id=\"6Dn-ei-MgC\"/>\n                <outlet property=\"_categoriesClipView\" destination=\"KId-Hv-0z4\" id=\"8eQ-tz-4oA\"/>\n                <outlet property=\"_categoriesTableView\" destination=\"Guq-9s-MSe\" id=\"dF2-aT-AVo\"/>\n                <outlet property=\"_duplicateThemeButton\" destination=\"wrW-a0-5bb\" id=\"JXl-nQ-lNe\"/>\n                <outlet property=\"_fontLabel\" destination=\"Gpc-y1-LVL\" id=\"vcf-Hl-1cN\"/>\n                <outlet property=\"_fontPanelButton\" destination=\"VXB-fG-DZO\" id=\"mWq-3d-jcw\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"ECK-8n-jgQ\" id=\"KJN-cp-7TP\"/>\n                <outlet property=\"_removeThemeButton\" destination=\"BeX-wG-c8S\" id=\"P2N-JL-pTj\"/>\n                <outlet property=\"_selectedTextColorWell\" destination=\"smi-ou-IW9\" id=\"SYJ-hQ-CeL\"/>\n                <outlet property=\"_textColorWell\" destination=\"d1A-uU-J9j\" id=\"GSq-6Z-18d\"/>\n                <outlet property=\"_textSelectionBackgroundColorWell\" destination=\"tI7-g9-Ub1\" id=\"Tqn-nk-Zpu\"/>\n                <outlet property=\"_themesTableView\" destination=\"RzM-ng-eMk\" id=\"a50-ng-EZi\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"M45-au-HoK\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"759\" height=\"488\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"x9E-yq-Bgj\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"197\" y=\"53\" width=\"542\" height=\"415\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"oxm-RF-gwN\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"540\" height=\"413\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"ECK-8n-jgQ\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"389\" width=\"540\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"UoY-kV-fnd\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"224\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Texto\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"yUb-rK-XWX\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"tKJ-wP-cns\"/>\n                                        </connections>\n                                    </button>\n                                    <button hidden=\"YES\" tag=\"1\" id=\"PFb-pf-cDg\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"273\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Esquema\" bezelStyle=\"regularSquare\" alignment=\"center\" enabled=\"NO\" tag=\"1\" inset=\"2\" id=\"0bp-JB-hgi\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"CaH-UR-hXI\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"ojb-CW-adm\">\n                                <rect key=\"frame\" x=\"89\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeBackgroundColor:\" target=\"-2\" id=\"5mu-v3-HFf\"/>\n                                </connections>\n                            </colorWell>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"0qd-wx-JZe\">\n                                <rect key=\"frame\" x=\"37\" y=\"16\" width=\"46\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Fondo:\" id=\"tXe-F9-mz7\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"x6u-0C-glq\">\n                                <rect key=\"frame\" x=\"171\" y=\"16\" width=\"67\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Selección:\" id=\"5b7-64-CqX\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <customView id=\"skb-ts-Qkm\" customClass=\"CUIFontAndColorsFramedView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"56\" width=\"540\" height=\"38\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                <subviews>\n                                    <colorWell id=\"d1A-uU-J9j\">\n                                        <rect key=\"frame\" x=\"270\" y=\"6\" width=\"23\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                        <connections>\n                                            <action selector=\"takeTextColor:\" target=\"-2\" id=\"gBS-3n-BGc\"/>\n                                        </connections>\n                                    </colorWell>\n                                    <customView id=\"cxK-bc-95I\" customClass=\"CUIFontBoxView\">\n                                        <rect key=\"frame\" x=\"11\" y=\"7\" width=\"251\" height=\"22\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                        <subviews>\n                                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Gpc-y1-LVL\">\n                                                <rect key=\"frame\" x=\"6\" y=\"3\" width=\"216\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" title=\"Label\" id=\"NnJ-xy-baM\">\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                </textFieldCell>\n                                            </textField>\n                                            <button verticalHuggingPriority=\"750\" id=\"VXB-fG-DZO\">\n                                                <rect key=\"frame\" x=\"228\" y=\"2\" width=\"18\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <buttonCell key=\"cell\" type=\"bevel\" title=\"Button\" bezelStyle=\"rounded\" image=\"FontPanelButton\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"PCX-V4-Ul7\">\n                                                    <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                </buttonCell>\n                                                <connections>\n                                                    <action selector=\"showFontPanel:\" target=\"-2\" id=\"TXC-Hh-5Tn\"/>\n                                                </connections>\n                                            </button>\n                                        </subviews>\n                                    </customView>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"tI7-g9-Ub1\">\n                                <rect key=\"frame\" x=\"244\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeTextSelectionBackgroundColor:\" target=\"-2\" id=\"3Lx-04-mDx\"/>\n                                </connections>\n                            </colorWell>\n                            <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"kKc-J1-3fa\">\n                                <rect key=\"frame\" x=\"-1\" y=\"92\" width=\"542\" height=\"298\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"KId-Hv-0z4\" customClass=\"CUICategoriesClipView\">\n                                    <rect key=\"frame\" x=\"1\" y=\"1\" width=\"540\" height=\"296\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <subviews>\n                                        <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"Guq-9s-MSe\">\n                                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"540\" height=\"296\"/>\n                                            <autoresizingMask key=\"autoresizingMask\"/>\n                                            <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <tableColumns>\n                                                <tableColumn width=\"537\" minWidth=\"40\" maxWidth=\"1000\" id=\"3xQ-tZ-j4q\">\n                                                    <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                        <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </tableHeaderCell>\n                                                    <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"tik-bw-vkv\">\n                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </textFieldCell>\n                                                    <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                                    <prototypeCellViews>\n                                                        <tableCellView id=\"qJj-ED-VEr\">\n                                                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"537\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                            <subviews>\n                                                                <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"S4j-JX-cuc\">\n                                                                    <rect key=\"frame\" x=\"5\" y=\"0.0\" width=\"531\" height=\"17\"/>\n                                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QoQ-Ln-Apy\" customClass=\"CUIAATextFieldCell\">\n                                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                    </textFieldCell>\n                                                                </textField>\n                                                            </subviews>\n                                                            <connections>\n                                                                <outlet property=\"textField\" destination=\"S4j-JX-cuc\" id=\"bvA-qp-OES\"/>\n                                                            </connections>\n                                                        </tableCellView>\n                                                    </prototypeCellViews>\n                                                </tableColumn>\n                                            </tableColumns>\n                                            <connections>\n                                                <outlet property=\"dataSource\" destination=\"-2\" id=\"0Vt-up-xeZ\"/>\n                                                <outlet property=\"delegate\" destination=\"-2\" id=\"peW-tT-8ce\"/>\n                                            </connections>\n                                        </tableView>\n                                    </subviews>\n                                    <nil key=\"backgroundColor\"/>\n                                </clipView>\n                                <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"Osb-Lx-voN\">\n                                    <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                                <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Yh8-lV-Sht\">\n                                    <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                            </scrollView>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E3D-RK-YW7\">\n                                <rect key=\"frame\" x=\"326\" y=\"16\" width=\"125\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Texto seleccionado:\" id=\"hlx-fO-U4G\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <colorWell id=\"smi-ou-IW9\">\n                                <rect key=\"frame\" x=\"457\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeSelectedTextColor:\" target=\"-2\" id=\"St4-Kf-cho\"/>\n                                </connections>\n                            </colorWell>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"28\" horizontalPageScroll=\"10\" verticalLineScroll=\"28\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"WFH-OC-tjY\">\n                    <rect key=\"frame\" x=\"20\" y=\"71\" width=\"167\" height=\"397\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"Jk0-k7-FSA\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"165\" height=\"396\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"26\" rowSizeStyle=\"automatic\" headerView=\"CBt-FS-rdj\" viewBased=\"YES\" id=\"RzM-ng-eMk\" customClass=\"CUIThemesTableView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"371\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"162\" minWidth=\"40\" maxWidth=\"1000\" id=\"8z8-zq-M80\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"center\" title=\"Tema\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"LIW-YF-0qh\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g8I-5G-l02\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"162\" height=\"26\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"tDm-Ft-Jnv\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"6\" width=\"162\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tXJ-2u-YI1\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeThemeName:\" target=\"-2\" id=\"X61-RY-efm\"/>\n                                                        </connections>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"tDm-Ft-Jnv\" id=\"kHG-t9-3y3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VVl-X3-gEs\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"qGO-er-Uo0\"/>\n                                    <outlet property=\"menu\" destination=\"eAx-eb-TeX\" id=\"6hE-7d-DjH\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"sWy-II-SrD\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"160\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Ivf-sc-bjn\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"CBt-FS-rdj\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"wrW-a0-5bb\">\n                    <rect key=\"frame\" x=\"20\" y=\"52\" width=\"78\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Duplicar\" bezelStyle=\"smallSquare\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"qIb-6V-bKQ\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Xri-vW-CH4\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"BeX-wG-c8S\">\n                    <rect key=\"frame\" x=\"97\" y=\"52\" width=\"24\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"c5I-q7-mxk\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"DD1-V1-TBJ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"umy-j0-XLf\">\n                    <rect key=\"frame\" x=\"531\" y=\"13\" width=\"214\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"Restaurar temas por omisión\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"CuZ-Pa-zjm\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"restoreDefaults:\" target=\"-2\" id=\"Gab-8f-vLB\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"QTP-jj-Yu7\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"120\" y=\"52\" width=\"67\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"7UN-KC-FeU\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-293.5\" y=\"-969\"/>\n        </customView>\n        <menu id=\"eAx-eb-TeX\">\n            <items>\n                <menuItem title=\"Duplicar\" id=\"RpP-Yq-5CH\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Afi-lx-Njn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Eliminar…\" id=\"pgM-Ek-dMO\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"Rjs-es-rtG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"Zf1-4a-jgB\"/>\n                <menuItem title=\"Importar tema…\" id=\"5HI-nQ-F9G\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"importTheme:\" target=\"-2\" id=\"cy6-qV-ueG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Exportar tema…\" id=\"9mp-BZ-63A\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"exportTheme:\" target=\"-2\" id=\"6h3-pb-u8c\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-298\" y=\"-640\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"FontPanelButton\" width=\"18\" height=\"18\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePaneGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneGeneralViewController\">\n            <connections>\n                <outlet property=\"_reportViewersPopUpButton\" destination=\"Ytb-pg-OA0\" id=\"1lY-Op-uq4\"/>\n                <outlet property=\"_showsRegistersWindowAtLaunchCheckbox\" destination=\"c18-Y4-l7a\" id=\"9YA-wO-PX5\"/>\n                <outlet property=\"_sourceEditorsPopUpButton\" destination=\"INA-cz-CFq\" id=\"ewg-BF-pgR\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"759\" height=\"152\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Tow-sZ-5fR\">\n                    <rect key=\"frame\" x=\"185\" y=\"79\" width=\"182\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Abrir archivos de código con:\" id=\"v8S-NF-Ptc\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"c18-Y4-l7a\">\n                    <rect key=\"frame\" x=\"371\" y=\"116\" width=\"211\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Mostrar la ventana de registros\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Qp-I2-soX\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsRegisterWindowAtLaunch:\" target=\"-2\" id=\"chH-Vd-P2e\"/>\n                    </connections>\n                </button>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"INA-cz-CFq\">\n                    <rect key=\"frame\" x=\"371\" y=\"74\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"Xah-p3-3bg\" id=\"iEv-K7-faP\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"8Pi-eD-O8F\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"Xah-p3-3bg\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchPreferedSourceCodeEditor:\" target=\"-2\" id=\"3B4-sh-5hm\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aiR-yu-zGz\">\n                    <rect key=\"frame\" x=\"178\" y=\"20\" width=\"189\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Visor de informes por omisión:\" id=\"OlA-pr-NqK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"Ytb-pg-OA0\">\n                    <rect key=\"frame\" x=\"371\" y=\"15\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"jkl-MJ-epa\" id=\"KXn-Rz-1qQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"F6M-WY-ruS\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"jkl-MJ-epa\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchDefaultReportsViewer:\" target=\"-2\" id=\"A16-7i-Lxf\"/>\n                    </connections>\n                </popUpButton>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"bWX-Os-IMd\">\n                    <rect key=\"frame\" x=\"20\" y=\"55\" width=\"719\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"WI8-fU-dkC\">\n                    <rect key=\"frame\" x=\"253\" y=\"117\" width=\"114\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"En el lanzamiento:\" id=\"RtP-AJ-XN5\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"262.5\" y=\"-36\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePanePresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"ZYd-5r-yQv\" id=\"i9c-kL-7HJ\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"r6r-RI-kcs\" id=\"Ror-u4-rou\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"8Nm-R3-fGu\" id=\"3g3-DD-9IJ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"716\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"98p-UU-gFL\">\n                    <rect key=\"frame\" x=\"26\" y=\"284\" width=\"320\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Componentes de marco de pila visibles por omisión:\" id=\"9hi-bS-vgU\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ZYd-5r-yQv\">\n                    <rect key=\"frame\" x=\"350\" y=\"283\" width=\"138\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Nombre del binario\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Gp3-2V-rzt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"WHi-RH-9MD\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"8Nm-R3-fGu\">\n                    <rect key=\"frame\" x=\"350\" y=\"262\" width=\"271\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Dirección de la instrucción de la máquina\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"TVT-Ex-NJf\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jH7-tG-qIn\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"r6r-RI-kcs\">\n                    <rect key=\"frame\" x=\"350\" y=\"241\" width=\"149\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Byte offset y fuente\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"DAf-CC-sze\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"GhR-oX-eh8\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"40\" y=\"-28.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePanePresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationTextViewController\">\n            <connections>\n                <outlet property=\"_lineWrappingCheckbox\" destination=\"ANa-W0-TnO\" id=\"0X3-XK-fry\"/>\n                <outlet property=\"_showBacktracesCheckbox\" destination=\"vj7-9l-wu4\" id=\"KSi-Nm-wqp\"/>\n                <outlet property=\"_showBinaryImagesCheckbox\" destination=\"ayi-wa-Elc\" id=\"mYB-oN-qAA\"/>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"rRX-kg-J1V\" id=\"qyO-wp-PBr\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"Kfz-pY-oUd\" id=\"6mW-ja-r8I\"/>\n                <outlet property=\"_showDiagnosticMessagesCheckbox\" destination=\"iNz-Qb-2d2\" id=\"nDi-1K-iro\"/>\n                <outlet property=\"_showExceptionInformationCheckbox\" destination=\"Qt3-ro-d2D\" id=\"IXu-xm-lli\"/>\n                <outlet property=\"_showHeaderCheckbox\" destination=\"Pvu-81-w7l\" id=\"Pqb-oU-xKL\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"2LX-nh-3AM\" id=\"WZp-Xx-mLd\"/>\n                <outlet property=\"_showThreadStateCheckbox\" destination=\"cir-zS-0pp\" id=\"rgi-7S-ybj\"/>\n                <outlet property=\"_showsLineNumbersCheckbox\" destination=\"n6c-lM-SZM\" id=\"s1h-L4-v2d\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"716\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"Pvu-81-w7l\">\n                    <rect key=\"frame\" x=\"350\" y=\"205\" width=\"97\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Encabezado\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zEG-Wx-Nn2\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowHeader:\" target=\"-2\" id=\"r82-eB-Q1G\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Qt3-ro-d2D\">\n                    <rect key=\"frame\" x=\"350\" y=\"184\" width=\"178\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Información de excepción\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"F76-W3-yAd\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowExceptionInformation:\" target=\"-2\" id=\"cUe-nn-bRr\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"iNz-Qb-2d2\">\n                    <rect key=\"frame\" x=\"350\" y=\"163\" width=\"172\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Mensajes de diagnóstico\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"EEv-JV-T5b\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDiagnosticMessages:\" target=\"-2\" id=\"wy4-KN-LXQ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"vj7-9l-wu4\">\n                    <rect key=\"frame\" x=\"350\" y=\"142\" width=\"120\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Pila de llamadas\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ZOK-Ny-hlt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBacktraces:\" target=\"-2\" id=\"M7z-KY-6jd\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"cir-zS-0pp\">\n                    <rect key=\"frame\" x=\"350\" y=\"120\" width=\"129\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Estado del thread\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ysb-qv-8M9\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowThreadState:\" target=\"-2\" id=\"5aJ-mY-Zn1\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ayi-wa-Elc\">\n                    <rect key=\"frame\" x=\"350\" y=\"99\" width=\"173\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Imagenes de los binarios\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Kr8-SF-wcL\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryImages:\" target=\"-2\" id=\"r9d-Iu-XGO\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MNF-5K-RaR\">\n                    <rect key=\"frame\" x=\"26\" y=\"61\" width=\"320\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Componentes de marco de pila visibles por omisión:\" id=\"2et-oL-bun\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"rRX-kg-J1V\">\n                    <rect key=\"frame\" x=\"350\" y=\"60\" width=\"138\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Nombre del binario\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"vWD-FK-a4a\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"1JN-45-hUv\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"2LX-nh-3AM\">\n                    <rect key=\"frame\" x=\"350\" y=\"39\" width=\"271\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Dirección de la instrucción de la máquina\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"XDv-jS-TfO\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jZT-K0-Oql\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Kfz-pY-oUd\">\n                    <rect key=\"frame\" x=\"350\" y=\"18\" width=\"148\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Byte offset y fuente\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zE5-mb-UZb\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"TPQ-k5-sP5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"eDV-BF-Pu1\">\n                    <rect key=\"frame\" x=\"242\" y=\"245\" width=\"104\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Ajuste de líneas:\" id=\"nm4-Se-bRD\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ANa-W0-TnO\">\n                    <rect key=\"frame\" x=\"350\" y=\"244\" width=\"236\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Ajustar líneas a la anchura del visor\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"1PO-2B-RhF\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchLineWrapping:\" target=\"-2\" id=\"BfM-Sn-zvX\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"1vN-WD-7S5\">\n                    <rect key=\"frame\" x=\"152\" y=\"206\" width=\"194\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Secciones visibles por omisión:\" id=\"LKq-kF-sWQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9bL-sk-EjC\">\n                    <rect key=\"frame\" x=\"291\" y=\"284\" width=\"55\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Mostrar:\" id=\"gBx-bb-vVK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"n6c-lM-SZM\">\n                    <rect key=\"frame\" x=\"350\" y=\"283\" width=\"128\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Números de línea\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"8bP-wa-KPh\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsLineNumbers:\" target=\"-2\" id=\"evn-zL-ZnP\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-49\" y=\"-1862.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePanePresentationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationViewController\">\n            <connections>\n                <outlet property=\"_contentsView\" destination=\"3Hi-kO-8Wu\" id=\"fmJ-yr-83D\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"8YE-EY-01p\" id=\"SPW-EQ-qbE\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"758\" height=\"387\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"wmc-fZ-hP3\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"718\" height=\"347\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"ArU-KV-0n7\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"716\" height=\"345\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"8YE-EY-01p\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"321\" width=\"716\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"OdN-hf-Q5a\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"294\" y=\"1\" width=\"48\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Texto\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"ARO-B4-zFG\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"ClQ-Fr-Q9W\"/>\n                                        </connections>\n                                    </button>\n                                    <button tag=\"1\" id=\"mm7-bt-sqK\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"358\" y=\"1\" width=\"65\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Esquema\" bezelStyle=\"regularSquare\" alignment=\"center\" tag=\"1\" inset=\"2\" id=\"K3H-7g-Y6W\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"9nl-0S-hxW\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <customView id=\"3Hi-kO-8Wu\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"716\" height=\"321\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            </customView>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-124\" y=\"-142.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencePaneSymbolicationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneSymbolicationViewController\">\n            <connections>\n                <outlet property=\"_dSYMLibraryPlaceHolderView\" destination=\"vVc-MA-1G3\" id=\"0ly-sp-1WZ\"/>\n                <outlet property=\"_searchForSymbolsFilesButton\" destination=\"Yst-no-gF6\" id=\"9n7-Ui-eWv\"/>\n                <outlet property=\"_symbolicateButton\" destination=\"Tdl-XE-pSN\" id=\"nFP-cN-cbv\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"759\" height=\"434\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E67-yJ-rtd\">\n                    <rect key=\"frame\" x=\"19\" y=\"366\" width=\"137\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Archivos de símbolos:\" id=\"kzW-xF-tfP\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Tdl-XE-pSN\">\n                    <rect key=\"frame\" x=\"160\" y=\"396\" width=\"581\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Convertir las direcciones de las instrucciones de la máquina en símbolos cuando sea posible\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"mnW-sM-t65\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSymbolicate:\" target=\"-2\" id=\"mac-a1-z7L\"/>\n                    </connections>\n                </button>\n                <customView id=\"vVc-MA-1G3\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"719\" height=\"306\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                </customView>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Vva-gy-N3U\">\n                    <rect key=\"frame\" x=\"57\" y=\"397\" width=\"99\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Simbolización:\" id=\"oNL-xZ-Za8\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Yst-no-gF6\">\n                    <rect key=\"frame\" x=\"160\" y=\"365\" width=\"304\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Buscar archivos de símbolos automáticamente\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"M5T-BJ-hV4\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSearchForSymbolFiles:\" target=\"-2\" id=\"G2h-en-QtA\"/>\n                    </connections>\n                </button>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"ino-yQ-Dwr\">\n                    <rect key=\"frame\" x=\"20\" y=\"344\" width=\"719\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-608.5\" y=\"-437\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUIPreferencesWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencesWindowController\">\n            <connections>\n                <outlet property=\"_toolBar\" destination=\"6zI-aR-fpa\" id=\"CHz-Ac-uHu\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Window\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" tabbingMode=\"disallowed\" id=\"F0z-JX-Cv5\" customClass=\"CUIPreferencesWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenDisallowsTiling=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"759\" height=\"400\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"759\" height=\"350\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"759\" height=\"800\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"759\" height=\"400\"/>\n                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"D61E4849-961C-442A-8B58-7CA007F20812\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"6zI-aR-fpa\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"05DB9B5F-BC7F-4CCA-BF32-731C932EA360\" explicitItemIdentifier=\"toolbarItem.general\" label=\"General\" paletteLabel=\"General\" image=\"NSPreferencesGeneral\" selectable=\"YES\" id=\"UQU-Ps-228\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JfQ-pF-Hff\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"4277C753-007B-43DA-A729-FE8AC69931C5\" explicitItemIdentifier=\"toolbarItem.fontscolors\" label=\"Tipos y colores\" paletteLabel=\"Tipos y colores\" selectable=\"YES\" id=\"SAh-Qi-gC4\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JJk-NZ-vjn\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FB786CBB-BCFC-44B7-8C12-288ADA8E21C6\" explicitItemIdentifier=\"toolbarItem.presentation\" label=\"Presentación\" paletteLabel=\"Presentación\" image=\"TextMode\" selectable=\"YES\" id=\"eCa-Vk-UOp\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"4IV-xn-tOM\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"633F5F14-F73C-4AF6-8F67-BED9A917A783\" explicitItemIdentifier=\"toolbarItem.symbolication\" label=\"Simbolización\" paletteLabel=\"Simbolización\" image=\"symbolication_Template\" selectable=\"YES\" id=\"Q5n-xT-GUE\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"w6D-Ku-xhR\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"791DB978-2878-4D73-AAA6-621004CCA3A6\" explicitItemIdentifier=\"toolbarItem.crashReporter\" label=\"Crash Reporter\" paletteLabel=\"Crash Reporter\" image=\"crashreporter\" selectable=\"YES\" id=\"1VP-qg-tbw\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"HhP-9G-ZBT\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"85DCA16C-A73A-49E5-8942-7D304F59DD9B\" explicitItemIdentifier=\"toolbarItem.advanced\" label=\"Avanzado\" paletteLabel=\"Avanzado\" image=\"NSAdvanced\" selectable=\"YES\" id=\"X3E-l0-Gn2\">\n                        <size key=\"minSize\" width=\"32\" height=\"32\"/>\n                        <size key=\"maxSize\" width=\"32\" height=\"32\"/>\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"fmd-lt-HqO\"/>\n                        </connections>\n                    </toolbarItem>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"UQU-Ps-228\"/>\n                    <toolbarItem reference=\"eCa-Vk-UOp\"/>\n                    <toolbarItem reference=\"SAh-Qi-gC4\"/>\n                    <toolbarItem reference=\"Q5n-xT-GUE\"/>\n                    <toolbarItem reference=\"1VP-qg-tbw\"/>\n                    <toolbarItem reference=\"X3E-l0-Gn2\"/>\n                </defaultToolbarItems>\n                <connections>\n                    <outlet property=\"delegate\" destination=\"-2\" id=\"qsE-xQ-pGw\"/>\n                </connections>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"12.5\" y=\"-706\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSAdvanced\" width=\"32\" height=\"32\"/>\n        <image name=\"NSPreferencesGeneral\" width=\"32\" height=\"32\"/>\n        <image name=\"TextMode\" width=\"32\" height=\"32\"/>\n        <image name=\"crashreporter\" width=\"32\" height=\"32\"/>\n        <image name=\"symbolication_Template\" width=\"32\" height=\"32\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CUISymbolsFilesLibraryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUISymbolsFilesLibraryViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"F9U-gJ-Z2L\" id=\"dH5-UP-Qqs\"/>\n                <outlet property=\"_removeButton\" destination=\"ehE-Ow-SS2\" id=\"m8U-R6-wqt\"/>\n                <outlet property=\"_tableView\" destination=\"AY0-dP-DvX\" id=\"lpv-VE-ccc\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"592\" height=\"349\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" id=\"Rhh-WD-hIX\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"592\" height=\"326\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"mCs-2R-TXV\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"590\" height=\"325\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView identifier=\"uuids\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" columnSelection=\"YES\" autosaveName=\"ui.symbolfiles.list\" rowSizeStyle=\"automatic\" headerView=\"l7j-fB-FoE\" viewBased=\"YES\" id=\"AY0-dP-DvX\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"300\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"220\" minWidth=\"40\" maxWidth=\"1000\" id=\"Vcp-pq-sB3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Nombre\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"wd0-bU-zBR\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compareNameAndVersion:\" sortKey=\"self\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"02c-Nn-HO4\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"220\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1cT-cq-rEF\">\n                                                        <rect key=\"frame\" x=\"23\" y=\"2\" width=\"195\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Thg-bW-Hdn\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"jEv-gl-BBo\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"17w-qR-br7\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"jEv-gl-BBo\" id=\"b3d-u1-YFD\"/>\n                                                    <outlet property=\"textField\" destination=\"1cT-cq-rEF\" id=\"Vzs-Wm-QJ0\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"110\" minWidth=\"110\" maxWidth=\"110\" id=\"a9F-wr-DSz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Versión\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"2QA-U7-Hh5\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CAF-d6-J6h\">\n                                                <rect key=\"frame\" x=\"224\" y=\"1\" width=\"110\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1k1-EI-O6e\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"109\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"lB8-oP-fWV\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"1k1-EI-O6e\" id=\"kIm-93-QIk\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"uuids\" width=\"251\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"xFs-nC-pHw\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"UUIDs\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"QfV-t1-g8t\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"wmr-c9-khj\">\n                                                <rect key=\"frame\" x=\"337\" y=\"1\" width=\"251\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"qAo-VI-VaT\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"245\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"vH5-Rz-jfx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"qAo-VI-VaT\" id=\"KNV-Dt-SB5\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"DKi-0C-xiC\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Asj-Ja-ycJ\"/>\n                                    <outlet property=\"menu\" destination=\"GF9-kL-5e2\" id=\"AJL-Bv-fVg\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"fgB-BL-7Fh\">\n                        <rect key=\"frame\" x=\"1\" y=\"533\" width=\"724\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"T5m-cm-koD\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"l7j-fB-FoE\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"P6v-Ex-GO9\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"-1\" width=\"35\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSAddTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"NS9-6o-ey8\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"addDebuggingSymbolsFile:\" target=\"-2\" id=\"2We-No-BJ5\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ehE-Ow-SS2\">\n                    <rect key=\"frame\" x=\"34\" y=\"-1\" width=\"31\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" enabled=\"NO\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"bH8-IA-FZM\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"u5K-Fv-rkO\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"JKx-dR-M6r\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"64\" y=\"-1\" width=\"528\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"6R2-VQ-GCt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"JIV-ic-LZf\"/>\n                    </connections>\n                </button>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"F9U-gJ-Z2L\">\n                    <rect key=\"frame\" x=\"337\" y=\"3\" width=\"248\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filtrar\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"tN8-2f-IVZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"Hmq-IQ-880\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-624\" y=\"-817.5\"/>\n        </customView>\n        <menu id=\"GF9-kL-5e2\">\n            <items>\n                <menuItem title=\"Mostrar en el Finder\" id=\"mla-Lw-0ux\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"qpt-X3-Bo6\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-301\" y=\"-467\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/CodeSigning.strings",
    "content": "\"TestFlight\" = \"TestFlight\";\n\n\"Development\" = \"Desarrollo\";\n\n\"AppStore\" = \"AppStore\";\n\n\"Enterprise\" = \"Empresa\";\n\n\"Developer ID\" = \"Developer ID\";\n\n\"None\" = \"Ninguna\";\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSApplication\">\n            <connections>\n                <outlet property=\"delegate\" destination=\"Voe-Tx-rLC\" id=\"GzC-gU-4Uq\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customObject id=\"Voe-Tx-rLC\" customClass=\"AppDelegate\">\n            <connections>\n                <outlet property=\"_debugMenuBarItem\" destination=\"cNb-At-Imu\" id=\"UE7-n3-l3I\"/>\n                <outlet property=\"_themesMenu\" destination=\"abx-GW-6TZ\" id=\"EEG-6i-WdC\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"YLy-65-1bz\" customClass=\"NSFontManager\"/>\n        <menu title=\"Main Menu\" systemMenu=\"main\" id=\"AYu-sK-qS6\">\n            <items>\n                <menuItem title=\"Unexpectedly\" id=\"1Xt-HY-uBw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Unexpectedly\" systemMenu=\"apple\" id=\"uQy-DD-JDr\">\n                        <items>\n                            <menuItem title=\"Acerca de Unexpectedly\" id=\"5kV-Vb-QxS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showAboutBox:\" target=\"-1\" id=\"8cM-F7-dKT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"VOq-y0-SEH\"/>\n                            <menuItem title=\"Preferencias…\" keyEquivalent=\",\" id=\"BOF-NM-1cW\">\n                                <connections>\n                                    <action selector=\"showPreferences:\" target=\"-1\" id=\"Jal-0e-r2i\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"wFC-TO-SCJ\"/>\n                            <menuItem title=\"Servicios\" id=\"NMo-om-nkz\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Servicios\" systemMenu=\"services\" id=\"hz9-B4-Xy5\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"4je-JR-u6R\"/>\n                            <menuItem title=\"Ocultar Unexpectedly\" keyEquivalent=\"h\" id=\"Olw-nP-bQN\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"PnN-Uc-m68\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Ocultar otros\" keyEquivalent=\"h\" id=\"Vdr-fp-XzO\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"VT4-aY-XCT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Mostrar todo\" id=\"Kd2-mp-pUS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"Dhg-Le-xox\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kCx-OE-vgT\"/>\n                            <menuItem title=\"Salir de Unexpectedly\" keyEquivalent=\"q\" id=\"4sb-4s-VLi\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-1\" id=\"Te7-pn-YzF\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Archivo\" id=\"dMs-cI-mzQ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Archivo\" id=\"bib-Uj-vzu\">\n                        <items>\n                            <menuItem title=\"Nueva fuente inteligente…\" keyEquivalent=\"N\" id=\"Was-JA-tGl\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-1\" id=\"bHg-uP-Kty\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"Mx6-UK-5B4\"/>\n                            <menuItem title=\"Añadir archivo o carpeta…\" keyEquivalent=\"a\" id=\"3wG-3v-uZk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSource:\" target=\"-1\" id=\"b1Q-ed-4lm\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"m54-Is-iLE\"/>\n                            <menuItem title=\"Cerrar\" keyEquivalent=\"w\" id=\"DVo-aG-piG\">\n                                <connections>\n                                    <action selector=\"performClose:\" target=\"-1\" id=\"HmO-Ls-i7Q\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"56E-C3-0cD\"/>\n                            <menuItem title=\"Importar fuente inteligente…\" id=\"lvA-aa-UmE\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_importSmartSource:\" target=\"-1\" id=\"slK-ne-mc7\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Exportar\" id=\"Pho-kH-aIP\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Exportar\" id=\"3tw-V4-ayi\">\n                                    <items>\n                                        <menuItem title=\"Informe…\" id=\"9tt-1M-ra5\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportCrashLog:\" target=\"-1\" id=\"yYt-Vu-UUP\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Fuente inteligente…\" id=\"tTJ-63-TIi\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-1\" id=\"gbF-DM-FHr\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"aJh-i4-bef\"/>\n                            <menuItem title=\"Mostrar en el Finder\" id=\"OqK-Vd-hWC\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showInFinder:\" target=\"-1\" id=\"0gW-ak-pFy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Trasladar a la Papelera\" id=\"GVk-MU-gOy\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-1\" id=\"9KY-Gr-Skj\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"BHd-Dv-6Wl\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-1\" id=\"DLv-Uy-cDS\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eeq-nE-Puw\"/>\n                            <menuItem title=\"Ajustar página…\" keyEquivalent=\"P\" id=\"qIS-W8-SiK\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"runPageLayout:\" target=\"-1\" id=\"Din-rz-gC5\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Imprimir…\" keyEquivalent=\"p\" id=\"aTl-1u-JFS\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_print:\" target=\"-1\" id=\"a83-u9-Pl5\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Edición\" id=\"5QF-Oa-p0T\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Edición\" id=\"W48-6f-4Dl\">\n                        <items>\n                            <menuItem title=\"Deshacer\" keyEquivalent=\"z\" id=\"dRJ-4n-Yzg\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"M6e-cu-g7V\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Rehacer\" keyEquivalent=\"Z\" id=\"6dh-zS-Vam\">\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"oIA-Rs-6OD\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"WRV-NI-Exz\"/>\n                            <menuItem title=\"Cortar\" keyEquivalent=\"x\" id=\"uRl-iY-unG\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"YJe-68-I9s\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Copiar\" keyEquivalent=\"c\" id=\"x3v-GG-iWU\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"G1f-GL-Joy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Pegar\" keyEquivalent=\"v\" id=\"gVA-U4-sdL\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"UvS-8e-Qdg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Pegar con el mismo estilo\" keyEquivalent=\"V\" id=\"WeT-3V-zwk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"pasteAsPlainText:\" target=\"-1\" id=\"cEh-KX-wJQ\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Eliminar\" id=\"pa3-QI-u2k\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"0Mk-Ml-PaM\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Seleccionar todo\" keyEquivalent=\"a\" id=\"Ruw-6m-B2m\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"VNm-Mi-diN\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"uyl-h8-XO2\"/>\n                            <menuItem title=\"Buscar\" id=\"4EN-yA-p0u\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Buscar\" id=\"1b7-l0-nxx\">\n                                    <items>\n                                        <menuItem title=\"Buscar…\" tag=\"1\" keyEquivalent=\"f\" id=\"Xz5-n4-O0W\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"QsK-9e-uGa\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Buscar siguiente\" tag=\"2\" keyEquivalent=\"g\" id=\"q09-fT-Sye\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"49u-4Y-NRM\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Buscar anterior\" tag=\"3\" keyEquivalent=\"G\" id=\"OwM-mh-QMV\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"siD-LN-Db0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Usar selección para buscar\" tag=\"7\" keyEquivalent=\"e\" id=\"buJ-ug-pKt\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"M3c-NN-csD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Ir a la selección\" keyEquivalent=\"j\" id=\"S0p-oC-mLd\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"IOG-6D-g5B\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Habla\" id=\"xrE-MZ-jX0\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Habla\" id=\"3rS-ZA-NoH\">\n                                    <items>\n                                        <menuItem title=\"Iniciar locución\" id=\"Ynk-f8-cLZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"654-Ng-kyl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Detener locución\" id=\"Oyz-dy-DGm\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"dX8-6p-jy9\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Visualización\" id=\"H8h-7b-M4v\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Visualización\" id=\"HyV-fh-RgO\">\n                        <items>\n                            <menuItem title=\"Mostrar barra lateral\" keyEquivalent=\"1\" id=\"fzY-Ht-27G\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"kra-FC-RZC\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Mostrar imagenes de los binarios\" tag=\"1\" keyEquivalent=\"2\" id=\"2z5-3m-6dw\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"s1k-G0-TLi\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Mostrar inspector\" tag=\"2\" keyEquivalent=\"3\" id=\"lQa-tq-Wi7\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"qR9-QJ-Q4R\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kEv-nO-mPM\"/>\n                            <menuItem title=\"Texto\" keyEquivalent=\"1\" id=\"qIT-0d-e67\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"eRM-Kc-O5r\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Esquema\" tag=\"1\" keyEquivalent=\"2\" id=\"Nr3-m8-qOB\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"TDI-d2-Yku\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"tGi-CI-t3Z\"/>\n                            <menuItem title=\"Mostrar barra de herramientas\" keyEquivalent=\"t\" id=\"snW-S8-Cw5\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"toggleToolbarShown:\" target=\"-1\" id=\"BXY-wc-z0C\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Visor del informe\" id=\"Wlf-Q9-x4u\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Visor del informe\" id=\"nLy-c6-ILM\">\n                        <items>\n                            <menuItem title=\"Tamaño de la letra\" id=\"hLb-MS-G2f\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Tamaño de la letra\" id=\"TBb-40-aCS\">\n                                    <items>\n                                        <menuItem title=\"Ampliar\" keyEquivalent=\"+\" id=\"EXj-Y3-9fM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_increaseFontSize:\" target=\"-1\" id=\"qW5-4J-akR\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Reducir\" keyEquivalent=\"-\" id=\"7i3-Bb-CWM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_decreaseFontSize:\" target=\"-1\" id=\"B2V-VK-bcD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"P4p-p3-w1I\"/>\n                                        <menuItem title=\"Reinicializar\" keyEquivalent=\"0\" id=\"kfY-hu-eJP\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_resetFontSize:\" target=\"-1\" id=\"nz0-xy-rD7\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Temas\" id=\"yjG-UV-U5C\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Temas\" id=\"abx-GW-6TZ\">\n                                    <items>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"NUX-KR-gxh\"/>\n                                        <menuItem title=\"Editar temas…\" id=\"csr-ry-NgM\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"editThemes:\" target=\"-1\" id=\"F5p-1i-EUu\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"2Cq-5I-dEU\"/>\n                            <menuItem title=\"Secciones visibles\" id=\"wAR-FX-MEm\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Secciones visibles\" id=\"WFL-Rm-rhq\">\n                                    <items>\n                                        <menuItem title=\"Encabezado\" id=\"HIC-nM-hNN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-1\" id=\"WUc-lV-ghf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"1r5-yC-AUQ\"/>\n                                        <menuItem title=\"Información de excepción\" id=\"lvl-an-zWN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-1\" id=\"fLf-3S-OlT\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Mensajes de diagnóstico\" id=\"iKL-gn-vYN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-1\" id=\"N8e-k9-P27\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"z5a-l7-tQ4\"/>\n                                        <menuItem title=\"Pila de llamadas\" id=\"DbA-sZ-kG6\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-1\" id=\"eUz-AU-LoI\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Estado del thread\" id=\"RBY-FQ-bMy\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-1\" id=\"XYE-gq-GnF\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Imagenes de los binarios\" id=\"rnV-QR-Tam\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-1\" id=\"qnf-0L-mBO\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Navegar\" id=\"aG2-MW-iKZ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Navegar\" id=\"YUZ-OQ-Qfb\">\n                        <items>\n                            <menuItem title=\"Ir a la línea…\" keyEquivalent=\"l\" id=\"JtL-ON-s7d\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToLine:\" target=\"-1\" id=\"hAa-kF-BVg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"qbu-Eo-jRw\"/>\n                            <menuItem title=\"Ir a la sección\" id=\"2Ip-qq-DKf\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Ir a la sección\" id=\"AcZ-wd-kkj\">\n                                    <items>\n                                        <menuItem title=\"Encabezado\" id=\"Bmg-Jh-vql\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToHeader:\" target=\"-1\" id=\"0VQ-jO-VrD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"5Cd-ay-my5\"/>\n                                        <menuItem title=\"Información de excepción\" id=\"SzQ-gm-Wkt\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToExceptionInformation:\" target=\"-1\" id=\"079-pD-HEp\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Mensajes de diagnóstico\" id=\"Wiv-Qz-fMq\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToDiagnosticMessages:\" target=\"-1\" id=\"hTl-rJ-Q5a\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"Szz-TX-hIO\"/>\n                                        <menuItem title=\"Pila de llamadas\" id=\"a2B-9S-c4g\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBacktraces:\" target=\"-1\" id=\"Sfi-Ce-HQ0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Estado del thread\" id=\"hfS-oi-1cT\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToThreadState:\" target=\"-1\" id=\"Lbe-gO-nw1\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Imagenes de los binarios\" id=\"ON2-La-JSh\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBinaryImages:\" target=\"-1\" id=\"hF5-h4-Mqo\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Ir al thread fallado\" keyEquivalent=\"c\" id=\"XPO-uf-5Ox\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToCrashedThread:\" target=\"-1\" id=\"ymM-Im-3Fw\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Ventana\" id=\"aUF-d1-5bR\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Ventana\" systemMenu=\"window\" id=\"Td7-aD-5lo\">\n                        <items>\n                            <menuItem title=\"Minimizar\" keyEquivalent=\"m\" id=\"OY7-WF-poV\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"VwT-WD-YPe\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Zoom\" id=\"R4o-n2-Eq4\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"performZoom:\" target=\"-1\" id=\"DIl-cC-cCs\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"V2l-48-H4C\"/>\n                            <menuItem title=\"Registros\" keyEquivalent=\"r\" id=\"e57-vP-OAA\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-1\" id=\"4GI-98-jKW\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eu3-7i-yIM\"/>\n                            <menuItem title=\"Traer todo al frente\" id=\"LE2-aR-0XJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"DRN-fu-gQh\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Ayuda\" id=\"wpr-3q-Mcd\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Ayuda\" systemMenu=\"help\" id=\"F2S-fz-NVQ\">\n                        <items>\n                            <menuItem title=\"Ayuda de Unexpectedly\" keyEquivalent=\"?\" id=\"FKE-Sm-Kum\">\n                                <connections>\n                                    <action selector=\"showUserGuide:\" target=\"Voe-Tx-rLC\" id=\"Xxx-bM-bpn\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"NhV-yu-WbQ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Enviar opinión\" id=\"Agb-QS-hQl\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"sendFeedback:\" target=\"Voe-Tx-rLC\" id=\"GdC-FT-8s8\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Unexpectedly en Internet\" id=\"FUb-BV-YgJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showUnexpectedlyWebSite:\" target=\"Voe-Tx-rLC\" id=\"Zhd-rv-Pi9\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Depurar\" hidden=\"YES\" id=\"cNb-At-Imu\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Depurar\" id=\"OCR-9P-Ipy\">\n                        <items>\n                            <menuItem title=\"Crash Reporter\" id=\"QbD-vw-FaL\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Crash Reporter\" id=\"90M-1A-X88\">\n                                    <items>\n                                        <menuItem title=\"Modo de operación\" enabled=\"NO\" id=\"rSJ-Ir-6Ad\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Básico\" id=\"cZ2-Me-tJE\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"1pr-Nb-cUn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Desarrollador\" tag=\"1\" id=\"Taa-D1-VLv\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"Sze-b6-Qb4\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Servidor\" tag=\"2\" id=\"oZt-M9-dpo\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"t2d-3r-nsn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"riH-1J-NUS\"/>\n                                        <menuItem title=\"Modo de notificación\" enabled=\"NO\" id=\"BLJ-R5-6HZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Diálogo de alerta\" id=\"EDw-Kd-564\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"pfK-8S-sWf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Notificación del sistema\" tag=\"1\" id=\"zLw-vY-Ttl\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"yUA-00-NUV\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"isO-68-Tw7\"/>\n                                        <menuItem title=\"Informar excepciones no capturadas\" id=\"eLO-Pu-jRW\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchReportUncaughtException:\" target=\"Voe-Tx-rLC\" id=\"3Tb-Lg-qE2\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-353\" y=\"-1121\"/>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/es.lproj/Predicates.strings",
    "content": "/* Predicate Editor */\n\n\"%[All]@ of the following are true\" = \"%1$[Todas]@ las siguientes son verdaderas\";\n\"%[Any]@ of the following are true\" = \"%1$[Alguna]@ de las siguientes es verdadera\";\n\n\"%[processName]@ %[is]@ %@\" = \"%1$[Nombre del proceso]@ %2$[es]@ %3$@\";\n\"%[processName]@ %[is not]@ %@\" = \"%1$[Nombre del proceso]@ %2$[no es]@ %3$@\";\n\"%[processName]@ %[begins with]@ %@\" = \"%1$[Nombre del proceso]@ %2$[empieza por]@ %3$@\";\n\"%[processName]@ %[ends with]@ %@\" = \"%1$[Nombre del proceso]@ %2$[acaba en]@ %3$@\";\n\"%[processName]@ %[contains]@ %@\" = \"%1$[Nombre del proceso]@ %2$[contiene]@ %3$@\";\n\n\"%[header.bundleIdentifier]@ %[is]@ %@\" = \"%1$[Identifier]@ %2$[es]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[is not]@ %@\" = \"%1$[Identifier]@ %2$[no es]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[begins with]@ %@\" = \"%1$[Identifier]@ %2$[empieza por]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[ends with]@ %@\" = \"%1$[Identifier]@ %2$[ends with]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[contains]@ %@\" = \"%1$[Identifier]@ %2$[contiene]@ %3$@\";\n\n\"%[header.executablePath]@ %[is]@ %@\" = \"%1$[Ruta del ejecutable]@ %2$[es]@ %3$@\";\n\"%[header.executablePath]@ %[is not]@ %@\" = \"%1$[Ruta del ejecutable]@ %2$[no es]@ %3$@\";\n\"%[header.executablePath]@ %[begins with]@ %@\" = \"%1$[Ruta del ejecutable]@ %2$[empieza por]@ %3$@\";\n\"%[header.executablePath]@ %[ends with]@ %@\" = \"%1$[Ruta del ejecutable]@ %2$[acaba en]@ %3$@\";\n\"%[header.executablePath]@ %[contains]@ %@\" = \"%1$[Ruta del ejecutable]@ %2$[contiene]@ %3$@\";\n\n\"%[header.executableVersion]@ %[is]@ %@\" = \"%1$[Versión del ejectuable]@ %2$[es]@ %3$@\";\n\"%[header.executableVersion]@ %[is not]@ %@\" = \"%1$[Versión del ejectuable]@ %2$[no es]@ %3$@\";\n\"%[header.executableVersion]@ %[begins with]@ %@\" = \"%1$[Versión del ejectuable]@ %2$[empieza por]@ %3$@\";\n\"%[header.executableVersion]@ %[ends with]@ %@\" = \"%1$[Versión del ejectuable]@ %2$[acaba en]@ %3$@\";\n\"%[header.executableVersion]@ %[contains]@ %@\" = \"%1$[Versión del ejectuable]@ %2$[contiene]@ %3$@\";\n\n\"%[exceptionInformation.crashedThreadName]@ %[is]@ %@\" = \"%1$[Nombre del thread fallado]@ %2$[es]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[is not]@ %@\" = \"%1$[Nombre del thread fallado]@ %2$[no es]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[begins with]@ %@\" = \"%1$[Nombre del thread fallado]@ %2$[empieza por]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[ends with]@ %@\" = \"%1$[Nombre del thread fallado]@ %2$[acaba en]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[contains]@ %@\" = \"%1$[Nombre del thread fallado]@ %2$[contiene]@ %3$@\";\n\n\"%[header.operatingSystemVersion.stringValue]@ %[is]@ %@\" = \"%1$[Versión del sistema operativo]@ %2$[es]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[is not]@ %@\" = \"%1$[Versión del sistema operativo]@ %2$[no es]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[begins with]@ %@\" = \"%1$[Versión del sistema operativo]@ %2$[empieza por]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[ends with]@ %@\" = \"%1$[Versión del sistema operativo]@ %2$[acaba en]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[contains]@ %@\" = \"%1$[Versión del sistema operativo]@ %2$[contiene]@ %3$@\";\n\n\"%[dateTime]@ %[is less than or equal to]@ %@\" = \"%1$[Fecha]@ %2$[es anterior a]@ %3$@\";\n\"%[dateTime]@ %[is greater than or equal to]@ %@\" = \"%1$[Fecha]@ %2$[es posterior a]@ %3$@\";\n\n\"%[exceptionType]@ is %[EXC_ARITHMETIC]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_ARITHMETIC]@\";\n\"%[exceptionType]@ is %[EXC_BAD_ACCESS]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_BAD_ACCESS]@\";\n\"%[exceptionType]@ is %[EXC_BAD_INSTRUCTION]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_BAD_INSTRUCTION]@\";\n\"%[exceptionType]@ is %[EXC_BREAKPOINT]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_BREAKPOINT]@\";\n\"%[exceptionType]@ is %[EXC_CORPSE_NOTIFY]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_CORPSE_NOTIFY]@\";\n\"%[exceptionType]@ is %[EXC_CRASH]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_CRASH]@\";\n\"%[exceptionType]@ is %[EXC_EMULATION]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_EMULATION]@\";\n\"%[exceptionType]@ is %[EXC_GUARD]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_GUARD]@\";\n\"%[exceptionType]@ is %[EXC_MACH_SYSCALL]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_MACH_SYSCALL]@\";\n\"%[exceptionType]@ is %[EXC_RESOURCE]@\" = \"%1$[Tipo de excepción]@ is %2$[EXC_RESOURCE]@\";\n\"%[exceptionType]@ is %[EXC_RPC_ALERT]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_RPC_ALERT]@\";\n\"%[exceptionType]@ is %[EXC_SOFTWARE]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_SOFTWARE]@\";\n\"%[exceptionType]@ is %[EXC_SYSCALL]@\" = \"%1$[Tipo de excepción]@ es %2$[EXC_SYSCALL]@\";\n\n\"%[exceptionSignal]@ is %[SIGABRT]@\" = \"%1$[Señal de excepción]@ es %2$[SIGABRT]@\";\n\"%[exceptionSignal]@ is %[SIGBUS]@\" = \"%1$[Señal de excepción]@ es %2$[SIGBUS]@\";\n\"%[exceptionSignal]@ is %[SIGILL]@\" = \"%1$[Señal de excepción]@ es %2$[SIGILL]@\";\n\"%[exceptionSignal]@ is %[SIGKILL]@\" = \"%1$[Señal de excepción]@ es %2$[SIGKILL]@\";\n\"%[exceptionSignal]@ is %[SIGQUIT]@\" = \"%1$[Señal de excepción]@ es %2$[SIGQUIT]@\";\n\"%[exceptionSignal]@ is %[SIGSEGV]@\" = \"%1$[Señal de excepción]@ es %2$[SIGSEGV]@\";\n\"%[exceptionSignal]@ is %[SIGTRAP]@\" = \"%1$[Señal de excepción]@ es %2$[SIGTRAP]@\";\n\"%[exceptionSignal]@ is %[Code Signature Invalid]@\" = \"%1$[Señal de excepción]@ es %2$[Code Signature Invalid]@\";\n\n\"%[crashLogFileName]@ %[is]@ %@\" = \"%1$[Nombre de archivo de informe]@ %2$[es]@ %3$@\";\n\"%[crashLogFileName]@ %[is not]@ %@\" = \"%1$[Nombre de archivo de informe]@ %2$[no es]@ %3$@\";\n\"%[crashLogFileName]@ %[begins with]@ %@\" = \"%1$[Nombre de archivo de informe]@ %2$[empieza por]@ %3$@\";\n\"%[crashLogFileName]@ %[ends with]@ %@\" = \"%1$[Nombre de archivo de informe]@ %2$[acaba en]@ %3$@\";\n\"%[crashLogFileName]@ %[contains]@ %@\" = \"%1$[Nombre de archivo de informe]@ %2$[contiene]@ %3$@\";\n\n\"%[reportSourceTypeNumber]@ is %[0]@\" = \"%1$[Fuente]@ es %2$[Informes del sistema]@\";\n\"%[reportSourceTypeNumber]@ is %[1]@\" = \"%1$[Fuente]@ es %2$[Informes del usuario]@\";\n\"%[reportSourceTypeNumber]@ is %[2]@\" = \"%1$[Fuente]@ es %2$[Otra fuente]@\";\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIAboutBoxWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIAboutBoxWindowController\">\n            <connections>\n                <outlet property=\"_applicationIconView\" destination=\"RC4-BC-n9a\" id=\"vVu-1A-ANB\"/>\n                <outlet property=\"_versionLabel\" destination=\"ttD-QV-oac\" id=\"Dvu-Z7-kin\"/>\n                <outlet property=\"window\" destination=\"Bdk-2N-UfM\" id=\"lij-6E-9Ij\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" id=\"Bdk-2N-UfM\" userLabel=\"About Window\" customClass=\"CUIAboutBoxWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"1076\" y=\"858\" width=\"580\" height=\"340\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"213\" height=\"107\"/>\n            <view key=\"contentView\" id=\"M7a-oa-Rve\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"none\" title=\"Box\" id=\"oOh-j5-H4F\" customClass=\"CUIContentBox\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <view key=\"contentView\" id=\"wo7-V5-OLy\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textField verticalHuggingPriority=\"750\" id=\"99t-xE-l89\">\n                                    <rect key=\"frame\" x=\"297\" y=\"237\" width=\"244\" height=\"33\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Unexpectedly\" id=\"T3S-Ay-pmi\">\n                                        <font key=\"font\" metaFont=\"systemBold\" size=\"27\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ttD-QV-oac\">\n                                    <rect key=\"frame\" x=\"302\" y=\"216\" width=\"163\" height=\"17\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" sendsActionOnEndEditing=\"YES\" title=\"version xxx (xxxx)\" id=\"zzd-sb-nLW\">\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField verticalHuggingPriority=\"750\" id=\"1i6-Ud-XKB\">\n                                    <rect key=\"frame\" x=\"297\" y=\"121\" width=\"265\" height=\"13\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"© 2020-2026 Stéphane Sudre. Tous droits réservés.\" id=\"Xdh-fz-kMR\">\n                                        <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <customView id=\"ph8-bY-NfI\" customClass=\"CUIAboutBoxFooterView\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"581\" height=\"48\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <subviews>\n                                        <button verticalHuggingPriority=\"750\" id=\"BFt-hQ-gMS\">\n                                            <rect key=\"frame\" x=\"411\" y=\"11\" width=\"150\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"Contrat de licence\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"Pec-zi-7OB\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showLicenseAgreement:\" target=\"-2\" id=\"a9e-i5-Dsu\"/>\n                                            </connections>\n                                        </button>\n                                        <button verticalHuggingPriority=\"750\" id=\"GUS-e1-oXY\">\n                                            <rect key=\"frame\" x=\"253\" y=\"11\" width=\"150\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"Remerciements\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"tds-hN-Zey\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showAcknowledgments:\" target=\"-2\" id=\"vyh-yi-H1N\"/>\n                                            </connections>\n                                        </button>\n                                    </subviews>\n                                </customView>\n                                <customView id=\"RC4-BC-n9a\" customClass=\"CUIApplicationIconView\">\n                                    <rect key=\"frame\" x=\"20\" y=\"64\" width=\"256\" height=\"256\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </view>\n                        <color key=\"borderColor\" white=\"0.0\" alpha=\"0.41999999999999998\" colorSpace=\"calibratedWhite\"/>\n                        <color key=\"fillColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"calibratedWhite\"/>\n                    </box>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"71\" y=\"93\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIBinaryImagesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIBinaryImagesViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"JbX-mT-2UH\" id=\"02i-kF-XTY\"/>\n                <outlet property=\"_tableView\" destination=\"H2N-iz-CG5\" id=\"8vi-YE-vnm\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"127\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"JbX-mT-2UH\">\n                    <rect key=\"frame\" x=\"638\" y=\"2\" width=\"180\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filtrer\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"CXs-CW-3At\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"qzT-e2-esd\"/>\n                    </connections>\n                </searchField>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"18\" horizontalPageScroll=\"10\" verticalLineScroll=\"18\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jng-RN-KVx\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"826\" height=\"104\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"iHp-Bk-LJN\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"824\" height=\"103\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"16\" headerView=\"szd-pN-V9C\" viewBased=\"YES\" id=\"H2N-iz-CG5\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"78\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"identifier\" editable=\"NO\" width=\"243\" minWidth=\"40\" maxWidth=\"1000\" id=\"zsB-hX-miE\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Image du binaire\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"HaL-8m-7CV\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"identifier\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"BPG-vx-EaY\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"243\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"g8Y-8I-L6J\">\n                                                        <rect key=\"frame\" x=\"22\" y=\"1\" width=\"220\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sWv-h4-EIw\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"r0f-ia-207\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"14\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"oyO-Zo-2yb\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"r0f-ia-207\" id=\"SJ2-ej-0Cg\"/>\n                                                    <outlet property=\"textField\" destination=\"g8Y-8I-L6J\" id=\"3Mm-h4-ddI\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"120\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"JQI-XJ-VTL\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"Version\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"U1f-H1-9m0\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"version\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"8FH-01-0os\">\n                                                <rect key=\"frame\" x=\"247\" y=\"1\" width=\"120\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"plL-Vk-xaA\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"120\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"obt-PL-Lbo\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"plL-Vk-xaA\" id=\"mg4-BY-bi3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"addresses\" editable=\"NO\" width=\"213\" minWidth=\"40\" maxWidth=\"1000\" id=\"oFL-bf-gGU\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Adresses\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"ZW2-8X-PGp\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"addressesRange\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g9U-vA-jTF\">\n                                                <rect key=\"frame\" x=\"370\" y=\"1\" width=\"213\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"3kh-At-cKc\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"212\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"justified\" title=\"Table View Cell\" id=\"CMI-V5-ciE\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"3kh-At-cKc\" id=\"UdM-cM-BOp\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"path\" editable=\"NO\" width=\"232\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"HcW-EK-wr3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"Chemin\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"S91-cj-D84\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"path\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"sf0-hA-RmY\">\n                                                <rect key=\"frame\" x=\"586\" y=\"1\" width=\"232\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"lmB-oe-CyW\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"232\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Table View Cell\" id=\"qWc-Kx-SEP\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"lmB-oe-CyW\" id=\"kFS-VU-Y4h\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VlW-ud-6Hf\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Xcc-up-ema\"/>\n                                    <outlet property=\"menu\" destination=\"lWX-qP-xpp\" id=\"Pw9-3z-saj\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" horizontal=\"YES\" id=\"OBi-Bk-c7r\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"822\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Od4-Ga-F2a\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"szd-pN-V9C\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"160\" y=\"10.5\"/>\n        </customView>\n        <menu id=\"lWX-qP-xpp\">\n            <items>\n                <menuItem title=\"Afficher dans le Finder\" id=\"taY-h1-kV9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"C8h-FR-DuE\"/>\n                    </connections>\n                </menuItem>\n            </items>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICodeSigningInformationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICodeSigningInformationViewController\">\n            <connections>\n                <outlet property=\"_flagsRichTextField\" destination=\"chR-7J-O6v\" id=\"iY2-tW-M8Z\"/>\n                <outlet property=\"_identifierTextField\" destination=\"pzr-oV-4Ja\" id=\"pxc-Tm-LdQ\"/>\n                <outlet property=\"_teamIdentifierTextField\" destination=\"3fa-Ku-EUN\" id=\"mQk-Vc-AhS\"/>\n                <outlet property=\"_trustLevelTextField\" destination=\"fce-70-gVD\" id=\"X7D-tf-hgw\"/>\n                <outlet property=\"_validationCategoryTextField\" destination=\"Ibg-QL-cVb\" id=\"WUN-SW-oav\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"457\" height=\"428\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9yS-4w-XmX\">\n                    <rect key=\"frame\" x=\"136\" y=\"391\" width=\"73\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Identifiant :\" id=\"bCV-Ef-nKj\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"pzr-oV-4Ja\">\n                    <rect key=\"frame\" x=\"213\" y=\"391\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"left\" title=\"-\" id=\"IAr-nB-TqD\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"3fa-Ku-EUN\">\n                    <rect key=\"frame\" x=\"213\" y=\"367\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" alignment=\"left\" title=\"-\" id=\"jlF-oN-6jR\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ibg-QL-cVb\">\n                    <rect key=\"frame\" x=\"213\" y=\"343\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"bg4-im-sfc\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MYG-4N-N6i\">\n                    <rect key=\"frame\" x=\"80\" y=\"367\" width=\"129\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Identifiant d'équipe :\" id=\"0cZ-kI-PnJ\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qyY-nO-4Jd\">\n                    <rect key=\"frame\" x=\"58\" y=\"343\" width=\"151\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Catégorie de validation :\" id=\"0wh-en-a3v\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dVx-X7-9rC\">\n                    <rect key=\"frame\" x=\"18\" y=\"319\" width=\"191\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Options de signature de code :\" id=\"B6T-7b-zGQ\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"fce-70-gVD\">\n                    <rect key=\"frame\" x=\"213\" y=\"21\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"VDD-jV-8zV\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scW-9F-TpJ\">\n                    <rect key=\"frame\" x=\"74\" y=\"21\" width=\"135\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Niveau de confiance :\" id=\"Gmq-jb-2Tt\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"chR-7J-O6v\">\n                    <rect key=\"frame\" x=\"213\" y=\"45\" width=\"226\" height=\"290\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" allowsUndo=\"NO\" allowsEditingTextAttributes=\"YES\" id=\"erf-qu-9hj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"67.5\" y=\"274\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICollectionViewRegisterItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSView\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"180\" height=\"23\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"49v-rz-P77\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"5\" width=\"28\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"r15:\" id=\"moe-Uv-cgf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"jaL-7X-k26\" customClass=\"CUIRegisterLabel\">\n                    <rect key=\"frame\" x=\"30\" y=\"1\" width=\"149\" height=\"20\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <subviews>\n                        <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qEF-At-YGV\">\n                            <rect key=\"frame\" x=\"4\" y=\"3\" width=\"127\" height=\"17\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"right\" title=\"0x0000000000000000\" id=\"3Ws-AL-pDW\">\n                                <font key=\"font\" size=\"11\" name=\"Menlo-Regular\"/>\n                                <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" red=\"0.0\" green=\"0.0\" blue=\"0.0\" alpha=\"0.051054180475006906\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n                            </textFieldCell>\n                        </textField>\n                        <popUpButton id=\"fAd-pL-hD3\">\n                            <rect key=\"frame\" x=\"130\" y=\"1\" width=\"16\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"Binaire\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"arrowAtCenter\" selectedItem=\"Ql8-Yj-GNF\" id=\"jsY-zd-eaC\">\n                                <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                <menu key=\"menu\" id=\"W6L-9s-vAV\">\n                                    <items>\n                                        <menuItem title=\"Binaire\" state=\"on\" hidden=\"YES\" id=\"Ql8-Yj-GNF\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Booléen\" tag=\"1\" id=\"VoA-fE-sxQ\"/>\n                                        <menuItem title=\"Décimal\" tag=\"3\" id=\"Hab-wq-jWg\"/>\n                                        <menuItem title=\"Décimal non signé\" tag=\"6\" id=\"QOY-jj-Mna\"/>\n                                        <menuItem title=\"Flottant\" tag=\"2\" id=\"2IG-5I-rJY\"/>\n                                        <menuItem title=\"Hexadécimal\" tag=\"4\" id=\"SoX-XB-pNK\"/>\n                                        <menuItem title=\"Octal\" tag=\"5\" id=\"5Ci-Jw-A07\"/>\n                                    </items>\n                                </menu>\n                            </popUpButtonCell>\n                            <connections>\n                                <action selector=\"switchDisplayFormat:\" target=\"jaL-7X-k26\" id=\"VTy-Z7-Jxf\"/>\n                            </connections>\n                        </popUpButton>\n                    </subviews>\n                    <connections>\n                        <outlet property=\"_popUpButton\" destination=\"fAd-pL-hD3\" id=\"tc3-Wy-sGM\"/>\n                        <outlet property=\"_textField\" destination=\"qEF-At-YGV\" id=\"dOS-N9-mnK\"/>\n                    </connections>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-97\" y=\"-180\"/>\n        </customView>\n        <collectionViewItem id=\"faJ-j9-dhQ\" customClass=\"CUICollectionViewRegisterItem\">\n            <connections>\n                <outlet property=\"_registerNameLabel\" destination=\"49v-rz-P77\" id=\"BR4-Vr-dVK\"/>\n                <outlet property=\"_registerValueDisplayFormatPopUpButton\" destination=\"fAd-pL-hD3\" id=\"4vP-5v-fc2\"/>\n                <outlet property=\"_registerValueLabel\" destination=\"jaL-7X-k26\" id=\"IU3-mu-U3V\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"6gV-UU-WJg\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICrashLogPresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_bottomView\" destination=\"16n-m5-v72\" id=\"M96-Rj-3vP\"/>\n                <outlet property=\"_columnModeButton\" destination=\"0Gc-7g-Ass\" id=\"XI8-35-JsW\"/>\n                <outlet property=\"_diagnosticMessageTextView\" destination=\"IwT-LV-4u1\" id=\"ygu-AN-tpy\"/>\n                <outlet property=\"_exceptionTypeMoreInfoButton\" destination=\"oyw-Du-OMN\" id=\"82e-p8-W3R\"/>\n                <outlet property=\"_exceptionTypeValue\" destination=\"UjR-qo-T8o\" id=\"orF-Ig-CDt\"/>\n                <outlet property=\"_lightTableModeButton\" destination=\"txw-BM-Naa\" id=\"pWp-8l-uF0\"/>\n                <outlet property=\"_listModeButton\" destination=\"4H4-2A-3rH\" id=\"TPP-Pc-27m\"/>\n                <outlet property=\"_middleView\" destination=\"3jW-NO-y2r\" id=\"tdb-iF-AuV\"/>\n                <outlet property=\"_showBinaryImagesButton\" destination=\"mXS-EH-zAu\" id=\"YMP-3f-zjX\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"STs-S6-lOY\" id=\"7jf-g3-CT7\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"tXx-uN-2vh\" id=\"SBE-d0-8OJ\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"2vU-ne-pQu\" id=\"sEh-95-6Lh\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"QRs-W6-mBT\" id=\"KOn-Jl-aus\"/>\n                <outlet property=\"_splitView\" destination=\"xQ0-xe-5sR\" id=\"I9n-V8-sWN\"/>\n                <outlet property=\"_threadsContainerView\" destination=\"tzS-vU-NLb\" id=\"tuG-n2-KAA\"/>\n                <outlet property=\"_topView\" destination=\"fcj-Y3-D2P\" id=\"otl-zr-mtC\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"447\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gdJ-dt-1kl\">\n                    <rect key=\"frame\" x=\"13\" y=\"421\" width=\"115\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"Type d'exception :\" id=\"ayc-kQ-Slx\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"Sxy-MF-gHB\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"409\" width=\"869\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UjR-qo-T8o\">\n                    <rect key=\"frame\" x=\"132\" y=\"421\" width=\"347\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" id=\"s2X-DC-xIe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"oyw-Du-OMN\">\n                    <rect key=\"frame\" x=\"721\" y=\"412\" width=\"134\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"En savoir plus…\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Upz-9K-gHp\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showMoreExceptionInfo:\" target=\"-2\" id=\"A1K-iE-4RQ\"/>\n                    </connections>\n                </button>\n                <splitView arrangesAllSubviews=\"NO\" dividerStyle=\"thin\" id=\"xQ0-xe-5sR\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"411\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView id=\"fcj-Y3-D2P\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"92\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                            <subviews>\n                                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"xta-0h-6ql\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"871\" height=\"73\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <clipView key=\"contentView\" copiesOnScroll=\"NO\" id=\"d4p-1Y-po0\">\n                                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"869\" height=\"71\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                        <subviews>\n                                            <textView editable=\"NO\" drawsBackground=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" id=\"IwT-LV-4u1\">\n                                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"71\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <size key=\"minSize\" width=\"869\" height=\"71\"/>\n                                                <size key=\"maxSize\" width=\"871\" height=\"10000000\"/>\n                                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textView>\n                                        </subviews>\n                                    </clipView>\n                                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"RY3-Qx-cWa\">\n                                        <rect key=\"frame\" x=\"-14\" y=\"1\" width=\"15\" height=\"0.0\"/>\n                                        <autoresizingMask key=\"autoresizingMask\"/>\n                                    </scroller>\n                                </scrollView>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TL4-gi-udl\">\n                                    <rect key=\"frame\" x=\"13\" y=\"2\" width=\"101\" height=\"16\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"Trace des appels\" id=\"Dtf-ev-i4n\">\n                                        <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                            </subviews>\n                        </customView>\n                        <customView id=\"3jW-NO-y2r\" userLabel=\"Middle View\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"93\" width=\"869\" height=\"177\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                            <subviews>\n                                <button toolTip=\"Afficher la trace des appels sous forme de colonnes\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"0Gc-7g-Ass\">\n                                    <rect key=\"frame\" x=\"65\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallColumn_Template\" imagePosition=\"only\" alignment=\"center\" inset=\"2\" id=\"X5W-Qe-nKe\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"e7v-G7-W7s\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Afficher uniquement le thread planté\" verticalHuggingPriority=\"750\" id=\"QRs-W6-mBT\">\n                                    <rect key=\"frame\" x=\"751\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"con-zk-L9l\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"fgj-Js-Ah7\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Masquer ou afficher l'adresse de l'instruction machine\" verticalHuggingPriority=\"750\" id=\"2vU-ne-pQu\">\n                                    <rect key=\"frame\" x=\"809\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"w28-Ax-j2K\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"gJR-EI-GwW\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Masquer ou afficher le nom du binaire\" verticalHuggingPriority=\"750\" id=\"STs-S6-lOY\">\n                                    <rect key=\"frame\" x=\"780\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Aan-op-skH\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"sVI-Dr-72U\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Masquer ou afficher le décalage d'octet\" verticalHuggingPriority=\"750\" id=\"tXx-uN-2vh\">\n                                    <rect key=\"frame\" x=\"838\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"GRj-N7-F4j\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"MdF-Tl-Xtk\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Masquer ou afficher les images des binaires\" verticalHuggingPriority=\"750\" id=\"mXS-EH-zAu\">\n                                    <rect key=\"frame\" x=\"1\" y=\"-1\" width=\"27\" height=\"22\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"bottom_disclose_Template\" imagePosition=\"only\" alignment=\"center\" alternateImage=\"bottom_hide_Template\" inset=\"2\" id=\"Awy-Hl-TgF\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"showHideBottomView:\" target=\"-2\" id=\"udq-fk-pc4\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Afficher la trace des appels sous forme de liste\" verticalHuggingPriority=\"750\" tag=\"1\" id=\"4H4-2A-3rH\">\n                                    <rect key=\"frame\" x=\"42\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSListViewTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"i1d-5C-VGM\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"mrq-dw-3ek\"/>\n                                    </connections>\n                                </button>\n                                <button hidden=\"YES\" toolTip=\"Show backtraces in a caroussel\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"txw-BM-Naa\">\n                                    <rect key=\"frame\" x=\"88\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallLightTable_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"EhU-bz-HLR\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"ABc-ah-Ysu\"/>\n                                    </connections>\n                                </button>\n                                <customView id=\"tzS-vU-NLb\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"22\" width=\"871\" height=\"156\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </customView>\n                        <customView id=\"16n-m5-v72\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"271\" width=\"869\" height=\"140\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"jmb-1Q-H0m\"/>\n                    </connections>\n                </splitView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"67\" y=\"-306\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSListViewTemplate\" width=\"14\" height=\"10\"/>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bottom_disclose_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bottom_hide_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallColumn_Template\" width=\"14\" height=\"10\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n        <image name=\"smallLightTable_Template\" width=\"14\" height=\"10\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICrashLogPresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationTextViewController\">\n            <connections>\n                <outlet property=\"_sectionsVisibilityPopUpButton\" destination=\"o3T-bg-7a6\" id=\"vRD-qm-Pyp\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"Ytt-64-lj2\" id=\"6lh-Tf-i9B\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"gHh-U9-6ts\" id=\"w5b-4r-VB4\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"V1i-87-jZk\" id=\"tAE-2I-lj8\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"hZe-Mo-RWl\" id=\"pSn-XW-qF6\"/>\n                <outlet property=\"_textView\" destination=\"Gtc-Yk-xtd\" id=\"s9U-Yv-TsI\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"612\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <popUpButton toolTip=\"Filtrer les sections visibles\" id=\"o3T-bg-7a6\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"31\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"hR3-DY-z5t\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"e8c-hg-WG7\">\n                            <items>\n                                <menuItem state=\"on\" image=\"quote_Template\" hidden=\"YES\" id=\"ggI-rC-fEt\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"En-tête\" id=\"zdn-EI-sae\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-2\" id=\"QIM-JJ-4Lh\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"fZC-QV-uXY\"/>\n                                <menuItem title=\"Information sur l'exception\" id=\"LpK-Zx-Gla\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-2\" id=\"2VZ-w6-6FZ\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Messages de diagnostic\" id=\"M4h-Oa-aq3\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-2\" id=\"hQt-R4-vLH\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"3Wr-0I-wum\"/>\n                                <menuItem title=\"Trace des appels\" id=\"kXZ-qs-DxU\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-2\" id=\"B8j-HN-qA3\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"État du thread\" id=\"d7k-xL-Hbq\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-2\" id=\"c9g-bt-Ect\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Images des binaires\" id=\"FHu-OU-dEn\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-2\" id=\"E7Q-0s-gFI\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <button toolTip=\"Afficher uniquement le thread planté\" verticalHuggingPriority=\"750\" id=\"hZe-Mo-RWl\">\n                    <rect key=\"frame\" x=\"574\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"cgk-bN-rIw\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"hSj-AL-N38\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Masquer ou afficher le décalage d'octet\" verticalHuggingPriority=\"750\" id=\"gHh-U9-6ts\">\n                    <rect key=\"frame\" x=\"661\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"O1c-Fy-oRt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"s9c-GQ-gYk\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Masquer ou afficher l'adresse de l'instruction machine\" verticalHuggingPriority=\"750\" id=\"V1i-87-jZk\">\n                    <rect key=\"frame\" x=\"632\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"N9g-4y-bag\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"muF-oq-Yyp\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"Masquer ou afficher le nom du binaire\" verticalHuggingPriority=\"750\" id=\"Ytt-64-lj2\">\n                    <rect key=\"frame\" x=\"603\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"feE-rv-jxh\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"pin-0C-OOg\"/>\n                    </connections>\n                </button>\n                <scrollView borderType=\"none\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"ekh-hq-gUp\" customClass=\"NSCrashLogTextScrollView\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"692\" height=\"589\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" copiesOnScroll=\"NO\" id=\"5MQ-yl-x1z\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <textView editable=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" smartInsertDelete=\"YES\" id=\"Gtc-Yk-xtd\" customClass=\"CUICrashLogTextView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <size key=\"minSize\" width=\"692\" height=\"589\"/>\n                                <size key=\"maxSize\" width=\"692\" height=\"10000000\"/>\n                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </textView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ilc-Nf-Ue4\">\n                        <rect key=\"frame\" x=\"677\" y=\"0.0\" width=\"15\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"327\" y=\"99\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"quote_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICrashLogsListViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsListViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"kV4-Gy-Y5g\" id=\"ayX-rw-DHI\"/>\n                <outlet property=\"_shareMenu\" destination=\"fYp-Jl-UVV\" id=\"UDn-zl-y3K\"/>\n                <outlet property=\"_sortPopUpButton\" destination=\"vD3-8d-OAL\" id=\"bxh-ry-Anh\"/>\n                <outlet property=\"_tableView\" destination=\"up6-IV-9dX\" id=\"qr9-ho-AXW\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"356\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"38\" horizontalPageScroll=\"10\" verticalLineScroll=\"38\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"3HT-Gz-85z\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"242\" height=\"333\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"pIU-n9-gmy\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"240\" height=\"331\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" typeSelect=\"NO\" rowHeight=\"36\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"up6-IV-9dX\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"331\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"crashlog\" width=\"237\" minWidth=\"40\" maxWidth=\"3000\" id=\"mvk-6t-fLR\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"mYa-rl-emi\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"crashlog cell\" id=\"Xca-mC-mWV\" customClass=\"CUICrashLogTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"237\" height=\"36\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"mVA-Z6-k5O\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"17\" width=\"130\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"x97-bl-W1B\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"PbV-Y5-NBE\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"6\" width=\"24\" height=\"24\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"CAj-gG-wBu\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"JiO-a5-b11\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"5\" width=\"132\" height=\"11\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"JeG-Im-RXs\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"miniSystem\"/>\n                                                            <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"BBl-CI-Lfa\">\n                                                        <rect key=\"frame\" x=\"165\" y=\"11\" width=\"71\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"zKb-T5-FgR\">\n                                                            <font key=\"font\" metaFont=\"miniSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dateLabel\" destination=\"JiO-a5-b11\" id=\"HbY-n5-YwU\"/>\n                                                    <outlet property=\"exceptionTypeLabel\" destination=\"BBl-CI-Lfa\" id=\"oYd-S0-W7S\"/>\n                                                    <outlet property=\"imageView\" destination=\"PbV-Y5-NBE\" id=\"MnJ-Rq-ILZ\"/>\n                                                    <outlet property=\"textField\" destination=\"mVA-Z6-k5O\" id=\"36v-QD-EVB\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"cwW-Ck-seH\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"9Oi-EP-GeV\"/>\n                                    <outlet property=\"menu\" destination=\"K9J-Sc-Re6\" id=\"I8m-OA-9dB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"9gf-HZ-0gE\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"fDS-AZ-p9b\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <connections>\n                        <outlet property=\"nextKeyView\" destination=\"kV4-Gy-Y5g\" id=\"dIO-cW-LKE\"/>\n                    </connections>\n                </scrollView>\n                <popUpButton id=\"vD3-8d-OAL\">\n                    <rect key=\"frame\" x=\"207\" y=\"4\" width=\"29\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" imagePosition=\"only\" alignment=\"left\" lineBreakMode=\"truncatingTail\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"GL8-00-Vd6\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"9d9-ef-5mD\">\n                            <items>\n                                <menuItem image=\"NSActionTemplate\" hidden=\"YES\" id=\"29W-Zg-HYo\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Afficher\" tag=\"-1\" enabled=\"NO\" id=\"l65-q1-DfU\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"08w-nT-V4h\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Nom du processus\" id=\"o9N-Dn-WFa\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"8wR-xX-lzG\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Nom du fichier du rapport\" tag=\"1\" id=\"KRQ-jb-CU6\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"rpa-3L-z5G\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"wbs-Jh-7Jc\"/>\n                                <menuItem title=\"Trier par\" tag=\"-1\" enabled=\"NO\" id=\"eN5-H5-Opd\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"XXu-Yk-Crd\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Date\" id=\"JK6-HP-t2c\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"YQd-Ev-ebM\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"Nom\" tag=\"1\" id=\"ONn-2g-Z6J\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"nCT-wo-Cya\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"kV4-Gy-Y5g\">\n                    <rect key=\"frame\" x=\"5\" y=\"2\" width=\"201\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filtrer\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"vf8-7z-IX2\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"AbZ-G7-C3w\"/>\n                        <outlet property=\"nextKeyView\" destination=\"up6-IV-9dX\" id=\"fro-eH-HkL\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-70\" y=\"-115\"/>\n        </customView>\n        <menu id=\"K9J-Sc-Re6\">\n            <items>\n                <menuItem title=\"Partager\" id=\"Z85-YC-iqx\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Partager\" id=\"fYp-Jl-UVV\">\n                        <items>\n                            <menuItem title=\"Item\" id=\"mcY-bs-XBY\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"77W-Wm-C8z\"/>\n                <menuItem title=\"Afficher dans le Finder\" id=\"1tQ-M6-BhY\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"VM3-SG-pFL\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"wYO-OM-Zfy\"/>\n                <menuItem title=\"Placer dans la corbeille\" id=\"H9t-ba-DIj\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-2\" id=\"5Yv-gc-anj\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"bpu-1P-Sum\">\n                    <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-2\" id=\"jz9-Pm-lkY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"265\" y=\"167\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICrashLogsSourceSmartEditorWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourceSmartEditorWindowController\">\n            <connections>\n                <outlet property=\"_defaultButton\" destination=\"Vz1-eq-Bkn\" id=\"5aX-ze-jQK\"/>\n                <outlet property=\"_descriptionTextField\" destination=\"ZDo-yP-EKy\" id=\"4xH-ud-SgF\"/>\n                <outlet property=\"_nameTextField\" destination=\"xBE-Xe-jfR\" id=\"MHn-8t-z8e\"/>\n                <outlet property=\"_predicatorEditor\" destination=\"jDY-Qj-m2x\" id=\"FoF-WG-5OS\"/>\n                <outlet property=\"window\" destination=\"6Nx-tZ-z08\" id=\"xRR-dz-5L0\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"\" animationBehavior=\"default\" id=\"6Nx-tZ-z08\" customClass=\"CUICrashLogsSourceSmartEditorPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"272\" y=\"172\" width=\"770\" height=\"425\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"500\" height=\"300\"/>\n            <view key=\"contentView\" id=\"faP-Uk-3iG\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"770\" height=\"425\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"gOj-hZ-3PD\">\n                        <rect key=\"frame\" x=\"20\" y=\"61\" width=\"730\" height=\"253\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"hPl-qb-BPf\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"728\" height=\"251\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <predicateEditor verticalHuggingPriority=\"750\" nestingMode=\"compound\" formattingStringsFilename=\"Predicates\" rowHeight=\"32\" id=\"jDY-Qj-m2x\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"728\" height=\"251\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <rowTemplates/>\n                                </predicateEditor>\n                            </subviews>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"qAm-Sw-0Kh\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"360\" height=\"15\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"7TB-Eg-mtV\">\n                            <rect key=\"frame\" x=\"336\" y=\"1\" width=\"15\" height=\"84\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"xBE-Xe-jfR\" id=\"VQF-PC-qyE\"/>\n                        </connections>\n                    </scrollView>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"l74-1V-jTB\">\n                        <rect key=\"frame\" x=\"18\" y=\"386\" width=\"81\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Nom :\" id=\"reH-vX-GUc\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"xBE-Xe-jfR\">\n                        <rect key=\"frame\" x=\"105\" y=\"383\" width=\"645\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"vms-yZ-h6X\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"ZDo-yP-EKy\" id=\"KLi-H6-FaN\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scv-qL-eIO\">\n                        <rect key=\"frame\" x=\"11\" y=\"356\" width=\"88\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Description :\" id=\"zQj-c9-rhZ\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gZy-Gi-lVS\">\n                        <rect key=\"frame\" x=\"18\" y=\"322\" width=\"379\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Lister tous les rapports qui remplissent les critères suivants :\" id=\"yeg-vI-i3G\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"ZDo-yP-EKy\">\n                        <rect key=\"frame\" x=\"105\" y=\"354\" width=\"645\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"NHO-Tg-DVY\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"jDY-Qj-m2x\" id=\"7GQ-Ig-FpW\"/>\n                        </connections>\n                    </textField>\n                    <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"Vz1-eq-Bkn\">\n                        <rect key=\"frame\" x=\"674\" y=\"13\" width=\"82\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"OK\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"XBD-qh-UfL\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nDQ\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"WvP-6v-END\"/>\n                        </connections>\n                    </button>\n                    <button verticalHuggingPriority=\"750\" id=\"V1T-Ch-XmL\">\n                        <rect key=\"frame\" x=\"587\" y=\"13\" width=\"87\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"Annuler\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"wdm-Py-Aj7\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nGw\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"Bzy-Dz-sSF\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"101\" y=\"-846.5\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUICrashLogsSourcesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourcesViewController\">\n            <connections>\n                <outlet property=\"_actionPopUpButton\" destination=\"sKM-ic-Jtc\" id=\"iwb-q5-Ljf\"/>\n                <outlet property=\"_removeButton\" destination=\"FnB-m4-Sew\" id=\"wN7-Xv-wbV\"/>\n                <outlet property=\"_tableView\" destination=\"qaX-hd-IQc\" id=\"7TK-LI-fbH\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"204\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"26\" horizontalPageScroll=\"10\" verticalLineScroll=\"26\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jOq-q2-5j4\">\n                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"294\" height=\"185\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"V1I-rp-JOe\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"292\" height=\"183\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"firstColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"24\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"qaX-hd-IQc\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"183\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"288\" minWidth=\"40\" maxWidth=\"3000\" id=\"8eI-mT-cek\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"6Aq-8j-jza\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"regular\" id=\"V1Z-VM-OSw\" customClass=\"CUICrashLogsSourceTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"288\" height=\"24\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"CHR-0u-IlO\">\n                                                        <rect key=\"frame\" x=\"28\" y=\"4\" width=\"211\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"nc6-Rz-iCi\">\n                                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeSourceNameFrom:\" target=\"-2\" id=\"mWi-p6-3aT\"/>\n                                                        </connections>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"oo6-n4-B90\">\n                                                        <rect key=\"frame\" x=\"6\" y=\"4\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"4kJ-0G-1fI\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"FRn-Dx-rid\" customClass=\"CUICaptionView\">\n                                                        <rect key=\"frame\" x=\"241\" y=\"4\" width=\"45\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"gba-xW-dcj\">\n                                                            <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"countTextField\" destination=\"FRn-Dx-rid\" id=\"Ifb-AG-5YH\"/>\n                                                    <outlet property=\"imageView\" destination=\"oo6-n4-B90\" id=\"Oxn-bE-uRy\"/>\n                                                    <outlet property=\"textField\" destination=\"CHR-0u-IlO\" id=\"X4V-af-tuu\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"separator\" id=\"HDp-BB-XMC\">\n                                                <rect key=\"frame\" x=\"1\" y=\"27\" width=\"288\" height=\"12\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"LMg-V2-t05\">\n                                                        <rect key=\"frame\" x=\"12\" y=\"4\" width=\"264\" height=\"4\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                    </box>\n                                                </subviews>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Rbs-pr-q0d\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"zhS-3Z-X2w\"/>\n                                    <outlet property=\"menu\" destination=\"HyN-lT-5sn\" id=\"71y-43-qQ2\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                        <nil key=\"backgroundColor\"/>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"T63-2m-Wdk\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"QtW-2T-sMx\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <button toolTip=\"Supprimer un fichier, un dossier ou une source intelligente\" verticalHuggingPriority=\"750\" id=\"FnB-m4-Sew\">\n                    <rect key=\"frame\" x=\"26\" y=\"-2\" width=\"25\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSRemoveTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"ocB-wp-jcr\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"removeSources:\" target=\"-2\" id=\"I1p-xT-TZx\"/>\n                    </connections>\n                </button>\n                <popUpButton id=\"sKM-ic-Jtc\">\n                    <rect key=\"frame\" x=\"262\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"MSJ-wy-0Je\" id=\"lEb-Ag-E8W\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"LzV-Lh-Udh\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSActionTemplate\" hidden=\"YES\" id=\"MSJ-wy-0Je\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Éditer…\" id=\"9dK-mu-DL0\">\n                                    <connections>\n                                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"PmO-aB-nyF\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"2ub-md-RCd\"/>\n                                <menuItem title=\"Afficher dans le Finder\" id=\"pSl-d5-liK\">\n                                    <connections>\n                                        <action selector=\"showInFinder:\" target=\"-2\" id=\"wFv-E8-fC9\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <popUpButton toolTip=\"Ajouter un fichier, un dossier ou une source intelligente\" id=\"Fjw-36-xHZ\">\n                    <rect key=\"frame\" x=\"-4\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"DJQ-Va-eqw\" id=\"w3m-zi-K88\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"vOh-MW-SiJ\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSAddTemplate\" hidden=\"YES\" id=\"DJQ-Va-eqw\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"Nouvelle source intelligente…\" id=\"HSw-t4-mnl\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-2\" id=\"mMA-Im-5Li\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"FFc-YN-a1b\"/>\n                                <menuItem title=\"Ajouter un fichier ou un dossier…\" id=\"r1o-zR-BIu\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSource:\" target=\"-2\" id=\"1HN-pX-hYb\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"118\" y=\"-406\"/>\n        </customView>\n        <menu id=\"HyN-lT-5sn\">\n            <items>\n                <menuItem title=\"Éditer…\" id=\"Twv-NI-xzw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"KCD-e6-KYn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"qHD-mG-1OK\"/>\n                <menuItem title=\"Exporter…\" id=\"WOP-2L-vqA\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-2\" id=\"VBk-ZW-3Ao\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"lae-j9-hK9\"/>\n                <menuItem title=\"Afficher dans le Finder\" id=\"teN-5F-Oei\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"Lf6-Pc-sdu\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"8gM-jX-t83\"/>\n                <menuItem title=\"Trier par nom\" id=\"YSN-pa-SoD\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"sortByName:\" target=\"-2\" id=\"hTy-bH-95r\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-266\" y=\"-716\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIExportAccessoryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIExportAccessoryViewController\">\n            <connections>\n                <outlet property=\"_allContentsRadioButton\" destination=\"lQT-bg-eZT\" id=\"Mpw-Xc-7kK\"/>\n                <outlet property=\"_formatPopUpButton\" destination=\"1u4-74-6Q1\" id=\"Nog-Ao-3bb\"/>\n                <outlet property=\"_obfuscateContentsRadioButton\" destination=\"43t-jz-ydI\" id=\"SJe-F4-VSs\"/>\n                <outlet property=\"_selectionOnlyRadioButton\" destination=\"yCi-24-cSg\" id=\"hjW-mF-lCx\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"608\" height=\"188\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"1u4-74-6Q1\">\n                    <rect key=\"frame\" x=\"306\" y=\"144\" width=\"81\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"HTML\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"lK1-XA-eFw\" id=\"3tZ-5v-KqQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"NIf-x2-QG2\">\n                            <items>\n                                <menuItem title=\"HTML\" state=\"on\" id=\"lK1-XA-eFw\"/>\n                                <menuItem title=\"RTF\" tag=\"1\" id=\"OPJ-uJ-ymt\"/>\n                                <menuItem title=\"PDF\" tag=\"2\" id=\"Hq6-BX-2O0\"/>\n                                <menuItem title=\"Texte\" tag=\"3\" id=\"lIW-Hg-lKi\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchExportFormat:\" target=\"-2\" id=\"J2A-b6-fHB\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ra9-fZ-6EK\">\n                    <rect key=\"frame\" x=\"247\" y=\"149\" width=\"55\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Format :\" id=\"kgo-g3-HQW\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"lQT-bg-eZT\">\n                    <rect key=\"frame\" x=\"306\" y=\"112\" width=\"127\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"Rapport complé\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"pba-yN-6P5\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"uaB-9C-u9X\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"yCi-24-cSg\">\n                    <rect key=\"frame\" x=\"306\" y=\"91\" width=\"213\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"Texte sélectionné uniquement\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"kfb-cJ-elR\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"GTa-iX-bQ5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cJJ-vN-i8N\">\n                    <rect key=\"frame\" x=\"189\" y=\"113\" width=\"113\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Contenu exporté :\" id=\"buk-Aw-yVe\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"43t-jz-ydI\">\n                    <rect key=\"frame\" x=\"305\" y=\"56\" width=\"148\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Brouiller le contenu\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"44Z-hW-e4b\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchObfuscateContents:\" target=\"-2\" id=\"Pmy-lZ-93R\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"aV3-B4-V9P\">\n                    <rect key=\"frame\" x=\"324\" y=\"20\" width=\"270\" height=\"28\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"left\" title=\"Les noms, chemins et symboles de l'exécutable et des images binaires utilisarteurs seront brouillés.\" id=\"Th9-RR-Qav\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-22\" y=\"-148\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIInspectorExecutableViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorExecutableViewController\">\n            <connections>\n                <outlet property=\"_codeSigningButton\" destination=\"KqJ-Up-xqo\" id=\"hot-TL-0gi\"/>\n                <outlet property=\"_executableArchitectureValue\" destination=\"FHg-iH-xDN\" id=\"gZP-1i-Ula\"/>\n                <outlet property=\"_executableIconView\" destination=\"Sae-Ke-hDq\" id=\"ypT-Mj-Zdm\"/>\n                <outlet property=\"_executableNameValue\" destination=\"Lro-Zd-nK3\" id=\"TjT-bg-eaE\"/>\n                <outlet property=\"_executablePathShowButton\" destination=\"HUC-Md-GwA\" id=\"XhF-6S-OEB\"/>\n                <outlet property=\"_executablePathValue\" destination=\"vJ5-dm-szr\" id=\"r17-Kq-oCv\"/>\n                <outlet property=\"_executableVersionValue\" destination=\"gDy-ag-3pH\" id=\"Yag-xh-PfZ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"180\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gDy-ag-3pH\">\n                    <rect key=\"frame\" x=\"104\" y=\"108\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" title=\"-\" id=\"IMe-4e-a2n\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ycX-86-LPH\">\n                    <rect key=\"frame\" x=\"18\" y=\"43\" width=\"82\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Emplacement :\" id=\"SZn-tV-fDm\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3RL-Kg-wqv\">\n                    <rect key=\"frame\" x=\"24\" y=\"71\" width=\"76\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Architecture :\" id=\"gXy-9k-Kye\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"vJ5-dm-szr\">\n                    <rect key=\"frame\" x=\"104\" y=\"15\" width=\"261\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" selectable=\"YES\" title=\"-\" id=\"wdP-NI-1D3\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Lro-Zd-nK3\">\n                    <rect key=\"frame\" x=\"104\" y=\"125\" width=\"261\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" title=\"-\" id=\"jis-EI-eF4\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"Sae-Ke-hDq\">\n                    <rect key=\"frame\" x=\"50\" y=\"101\" width=\"48\" height=\"48\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"ctr-8J-DUa\"/>\n                </imageView>\n                <button verticalHuggingPriority=\"750\" id=\"HUC-Md-GwA\">\n                    <rect key=\"frame\" x=\"366\" y=\"15\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"R8w-To-3V9\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showExecutableInFinder:\" target=\"-2\" id=\"tyZ-In-ieS\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"FHg-iH-xDN\">\n                    <rect key=\"frame\" x=\"104\" y=\"71\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" title=\"-\" id=\"sgJ-ZE-akF\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"JP3-16-pwL\">\n                    <rect key=\"frame\" x=\"4\" y=\"160\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Exécutable\" id=\"hb6-Qr-SQw\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"KqJ-Up-xqo\">\n                    <rect key=\"frame\" x=\"366\" y=\"161\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSLockLockedTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"YQB-0q-Vn5\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showCodeSigningInformation:\" target=\"-2\" id=\"ufC-DW-0Fe\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-51.5\" y=\"-186\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSLockLockedTemplate\" width=\"10\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIInspectorGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorGeneralViewController\">\n            <connections>\n                <outlet property=\"_bridgeOSVersionValue\" destination=\"BfS-1Q-avM\" id=\"Aih-cE-fUa\"/>\n                <outlet property=\"_crashDateValue\" destination=\"aeZ-E8-L6d\" id=\"N7P-8g-o9B\"/>\n                <outlet property=\"_operatingSystemVersionLabel\" destination=\"TdJ-MQ-6CN\" id=\"On3-gp-MLA\"/>\n                <outlet property=\"_operatingSystemVersionValue\" destination=\"SgG-rE-gjS\" id=\"6hk-jF-Az8\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"s8b-in-hjv\">\n                    <rect key=\"frame\" x=\"57\" y=\"59\" width=\"43\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Date :\" id=\"f0C-O7-hfc\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aeZ-E8-L6d\">\n                    <rect key=\"frame\" x=\"104\" y=\"59\" width=\"260\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"4oA-j1-qqu\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                    <connections>\n                        <outlet property=\"formatter\" destination=\"CAS-2z-CXR\" id=\"o5J-Fr-jq7\"/>\n                    </connections>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"SgG-rE-gjS\">\n                    <rect key=\"frame\" x=\"104\" y=\"37\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"IoO-4Y-BLi\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TdJ-MQ-6CN\">\n                    <rect key=\"frame\" x=\"29\" y=\"37\" width=\"71\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"macOS :\" id=\"B2h-K8-1XC\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Eku-en-ffA\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"48\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Général\" id=\"Slr-R1-4oS\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"BfS-1Q-avM\">\n                    <rect key=\"frame\" x=\"104\" y=\"15\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" title=\"-\" id=\"JiY-vk-jYf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ai6-kr-ddH\">\n                    <rect key=\"frame\" x=\"36\" y=\"15\" width=\"64\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Bridge OS :\" id=\"hKB-kb-Fu1\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"69.5\"/>\n        </customView>\n        <dateFormatter dateStyle=\"long\" timeStyle=\"medium\" id=\"CAS-2z-CXR\"/>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIInspectorProcessesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorProcessesViewController\">\n            <connections>\n                <outlet property=\"_parentProcessNameValue\" destination=\"sdS-1T-5A6\" id=\"YdX-gO-EHR\"/>\n                <outlet property=\"_processNameValue\" destination=\"dWY-e9-8s7\" id=\"kaZ-i4-xhx\"/>\n                <outlet property=\"_responsibleProcessNameValue\" destination=\"UYO-VY-Dyh\" id=\"hqs-KJ-tM6\"/>\n                <outlet property=\"view\" destination=\"rFj-qp-YPZ\" id=\"SDI-BY-k6p\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"rFj-qp-YPZ\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"4uB-ml-0Ol\">\n                    <rect key=\"frame\" x=\"22\" y=\"15\" width=\"78\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Responsable :\" id=\"jqz-4F-VO7\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UYO-VY-Dyh\">\n                    <rect key=\"frame\" x=\"104\" y=\"15\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"pZF-sh-MrA\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hLm-Sv-QmR\">\n                    <rect key=\"frame\" x=\"27\" y=\"37\" width=\"73\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Op. parente :\" id=\"LQg-a2-eTx\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"S5n-dU-r4J\">\n                    <rect key=\"frame\" x=\"37\" y=\"59\" width=\"63\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Opération :\" id=\"cvR-Mj-EZK\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dWY-e9-8s7\">\n                    <rect key=\"frame\" x=\"104\" y=\"59\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"Oa8-vR-6jZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hD5-0s-riR\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Opérations\" id=\"Peb-bL-MXn\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"sdS-1T-5A6\">\n                    <rect key=\"frame\" x=\"104\" y=\"37\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"2qk-DS-kXk\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-1.5\" y=\"-239.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIInspectorUserViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorUserViewController\">\n            <connections>\n                <outlet property=\"_userIDValue\" destination=\"bZr-jf-89d\" id=\"3zx-IQ-gXi\"/>\n                <outlet property=\"view\" destination=\"3rg-3s-egq\" id=\"NYa-HK-UvG\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"3rg-3s-egq\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"52\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Hlm-9j-k55\">\n                    <rect key=\"frame\" x=\"4\" y=\"34\" width=\"63\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"Utilisateur\" id=\"SsR-D5-bkx\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"peF-fl-SHq\">\n                    <rect key=\"frame\" x=\"13\" y=\"15\" width=\"87\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"ID d'utilisateur :\" id=\"qra-Pb-I2W\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"bZr-jf-89d\">\n                    <rect key=\"frame\" x=\"104\" y=\"15\" width=\"261\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"cqQ-PI-zPB\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"158\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUILineJumperWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUILineJumperWindowController\">\n            <connections>\n                <outlet property=\"_lineNumberField\" destination=\"Hsy-sF-ru8\" id=\"Szf-Gn-kjq\"/>\n                <outlet property=\"_resetButton\" destination=\"dIW-wv-LKd\" id=\"vVJ-Nt-akO\"/>\n                <outlet property=\"window\" destination=\"mSG-cx-fbW\" id=\"fe5-gS-1Ha\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" hidesOnDeactivate=\"YES\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.lineNumber\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titlebarAppearsTransparent=\"YES\" id=\"mSG-cx-fbW\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" fullSizeContentView=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenNone=\"YES\" fullScreenDisallowsTiling=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"384\" height=\"49\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"Xph-p4-B8X\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"384\" height=\"49\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" id=\"Hsy-sF-ru8\">\n                        <rect key=\"frame\" x=\"45\" y=\"11\" width=\"176\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" focusRingType=\"none\" placeholderString=\"Numéro de la ligne\" usesSingleLineMode=\"YES\" id=\"Ju2-zH-bhG\">\n                            <font key=\"font\" metaFont=\"system\" size=\"21\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <action selector=\"takeLineNumberFrom:\" target=\"-2\" id=\"d6v-mK-cXL\"/>\n                            <outlet property=\"delegate\" destination=\"-2\" id=\"X5a-vS-Tae\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dpK-Gf-az3\">\n                        <rect key=\"frame\" x=\"9\" y=\"10\" width=\"32\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"center\" title=\"#\" id=\"x4t-M3-5dd\">\n                            <font key=\"font\" metaFont=\"system\" size=\"30\"/>\n                            <color key=\"textColor\" name=\"tertiaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <button hidden=\"YES\" verticalHuggingPriority=\"750\" id=\"dIW-wv-LKd\">\n                        <rect key=\"frame\" x=\"345\" y=\"14\" width=\"20\" height=\"20\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"NSStopProgressFreestandingTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"AFZ-Xq-Pjf\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"reset:\" target=\"-2\" id=\"XzM-AA-Vzv\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"awR-rx-pPU\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"Hsy-sF-ru8\" id=\"j6W-l3-TNl\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"177\" y=\"-15.5\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSStopProgressFreestandingTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIMainWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIMainWindowController\">\n            <connections>\n                <outlet property=\"_mainLayoutSegmentedControl\" destination=\"WIY-fY-uf6\" id=\"gGf-x3-UnW\"/>\n                <outlet property=\"_presentationModeSegmentedControl\" destination=\"FpB-c3-RI5\" id=\"7TU-rc-fDv\"/>\n                <outlet property=\"_registersWindowButton\" destination=\"tOu-D2-Ept\" id=\"pD9-s6-b6U\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Unexpectedly\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.main\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titleVisibility=\"hidden\" id=\"F0z-JX-Cv5\" customClass=\"CUIMainWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" topStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"701\" y=\"761\" width=\"1210\" height=\"576\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1577\"/>\n            <value key=\"minSize\" type=\"size\" width=\"1210\" height=\"576\"/>\n            <view key=\"contentView\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1210\" height=\"576\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"E5E3FE75-B923-4050-8328-E8DBF77270DA\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"qok-Nh-ZqX\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"4BB16A90-DFB3-4B72-BC1E-0501635805D9\" label=\"Registers\" paletteLabel=\"Registers\" toolTip=\"Afficher ou masquer la fenêtre des registres\" id=\"odd-p2-xXV\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"tOu-D2-Ept\">\n                            <rect key=\"frame\" x=\"14\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"R\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"pn6-k3-IBk\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"systemBold\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-2\" id=\"zOP-ux-zx8\"/>\n                            </connections>\n                        </button>\n                        <connections>\n                            <action selector=\"showRegisters:\" target=\"-1\" id=\"Q3j-xK-Hru\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FE3CBB7D-3C62-4B2B-84C4-A0F949E6FC9B\" label=\"Symbolicate\" paletteLabel=\"Symbolicate\" toolTip=\"Symbolicate\" id=\"NBt-t6-6de\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"zGe-P2-PLz\">\n                            <rect key=\"frame\" x=\"22\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"✭\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"bkf-LP-EE1\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                        </button>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_champollion:\" target=\"-1\" id=\"YYP-Ms-rO2\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"CEEABC9B-6A22-4363-9CEF-97F246735D7F\" explicitItemIdentifier=\"presentation.mode\" label=\"Presentation Mode\" paletteLabel=\"Presentation Mode\" sizingBehavior=\"auto\" id=\"lTL-ew-HB0\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"FpB-c3-RI5\">\n                            <rect key=\"frame\" x=\"18\" y=\"14\" width=\"71\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectOne\" id=\"esc-Se-3Gu\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"Texte\" image=\"presentation_text_Template\" width=\"32\"/>\n                                    <segment toolTip=\"Schéma\" image=\"presentation_structured_Template\" width=\"32\" selected=\"YES\" tag=\"1\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"8Dc-fR-ko8\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"651A8C40-7DF7-49AE-B98F-F204C20338E7\" label=\"Areas\" paletteLabel=\"Areas\" sizingBehavior=\"auto\" id=\"dDG-Jy-kkI\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"WIY-fY-uf6\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"14\" width=\"104\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectAny\" id=\"IFc-bQ-yuq\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"Masquer ou afficher la barre latérale\" image=\"left_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                    <segment toolTip=\"Masquer ou afficher les images des binaires\" image=\"middle_switch_Template\" width=\"32\" enabled=\"NO\" tag=\"1\"/>\n                                    <segment toolTip=\"Masquer ou afficher l'inspecteur\" image=\"right_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"showHideViews:\" target=\"-1\" id=\"q9p-Cx-Zfc\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarSpaceItem\" id=\"1s5-E7-9Hl\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarFlexibleSpaceItem\" id=\"QhD-Oy-cTl\"/>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"QhD-Oy-cTl\"/>\n                    <toolbarItem reference=\"odd-p2-xXV\"/>\n                    <toolbarItem reference=\"1s5-E7-9Hl\"/>\n                    <toolbarItem reference=\"lTL-ew-HB0\"/>\n                    <toolbarItem reference=\"dDG-Jy-kkI\"/>\n                </defaultToolbarItems>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"se5-gp-TjO\" id=\"Ndk-U6-g06\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"59\" y=\"-1332\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"left_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"middle_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"presentation_structured_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"presentation_text_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"right_switch_Template\" width=\"18\" height=\"16\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePaneAdvancedViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneAdvancedViewController\">\n            <connections>\n                <outlet property=\"_remoteVersionCheckerCheckbox\" destination=\"90R-sA-w2P\" id=\"ZPS-qK-ptZ\"/>\n                <outlet property=\"_showDebugMenuCheckbox\" destination=\"ysx-uw-uYe\" id=\"ASL-W1-sIo\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"116\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"90R-sA-w2P\">\n                    <rect key=\"frame\" x=\"333\" y=\"78\" width=\"304\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Rechercher automatiquement des mises à jour\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"xZp-NR-s8v\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchRemoteVersionCheck:\" target=\"-2\" id=\"vQo-sV-T4X\"/>\n                    </connections>\n                </button>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"7cp-2p-HDv\">\n                    <rect key=\"frame\" x=\"30\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <button verticalHuggingPriority=\"750\" id=\"ysx-uw-uYe\">\n                    <rect key=\"frame\" x=\"333\" y=\"18\" width=\"340\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Afficher le menu Débogage dans la barre des menus\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Aq-aa-8q1\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDebugMenu:\" target=\"-2\" id=\"JpC-OR-CwY\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"cfR-UU-mmm\">\n                    <rect key=\"frame\" x=\"179\" y=\"79\" width=\"150\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Mises à jour du logiciel :\" id=\"gEo-19-sz4\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"140\" y=\"65\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePaneCrashreporterViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneCrashreporterViewController\">\n            <connections>\n                <outlet property=\"_dialogTypeGroup\" destination=\"G3J-O5-TdF\" id=\"ZfW-ac-1tR\"/>\n                <outlet property=\"_notificationModeGroup\" destination=\"7ak-aK-Hz3\" id=\"2VA-sI-h8f\"/>\n                <outlet property=\"_reportUncaughtExceptionsCheckbox\" destination=\"k0s-Jp-SYV\" id=\"GO5-qu-ZEq\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"222\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"wjm-1k-GIP\">\n                    <rect key=\"frame\" x=\"217\" y=\"76\" width=\"136\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Mode de notification :\" id=\"Ipc-sm-G5f\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"G3J-O5-TdF\">\n                    <rect key=\"frame\" x=\"357\" y=\"107\" width=\"189\" height=\"60\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button toolTip=\"Le dialogue « a quitté de manière imprévue » est affiché pour toutes les opérations exécutées par l'utilisateur.\" verticalHuggingPriority=\"750\" tag=\"1\" id=\"q4r-Gy-3Z5\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"100\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Développeur\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"Tjt-95-3Z2\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"hvp-pX-cgQ\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"Le dialogue « a quitté de manière imprévue » n'est jamais affiché.\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"i8F-ge-i9c\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"69\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Serveur\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"l5e-xv-Kdo\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"eST-mh-Dhc\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"Le dialogue « a quitté de manière imprévue » n'est affiché que pour les plantages d'applications.\" verticalHuggingPriority=\"750\" id=\"KDV-3D-Zmr\">\n                            <rect key=\"frame\" x=\"-1\" y=\"43\" width=\"71\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Basique\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"8un-EB-HxH\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"K5B-SF-Gng\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <customView id=\"7ak-aK-Hz3\">\n                    <rect key=\"frame\" x=\"357\" y=\"54\" width=\"189\" height=\"38\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"AhZ-xe-s0x\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"146\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Notification système\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"1LC-JU-zMZ\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"Zpu-SM-Vup\"/>\n                            </connections>\n                        </button>\n                        <button verticalHuggingPriority=\"750\" id=\"nMG-po-tCI\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"125\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"Dialogue d'alerte\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"2af-hi-y4e\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"M91-HQ-GhJ\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <button verticalHuggingPriority=\"750\" id=\"k0s-Jp-SYV\">\n                    <rect key=\"frame\" x=\"355\" y=\"18\" width=\"279\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Rapporter les exceptions non interceptées\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"b1K-o7-rhS\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchReportUncaughtException:\" target=\"-2\" id=\"eNP-mM-U1S\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"X5h-y9-eMQ\">\n                    <rect key=\"frame\" x=\"241\" y=\"151\" width=\"112\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Mode opératoire :\" id=\"NM5-WZ-kg0\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3C8-jD-0F8\">\n                    <rect key=\"frame\" x=\"-2\" y=\"188\" width=\"734\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"center\" title=\"Quand une application quitte de manière imprévue, la rapport de plantage est généré par le service Crash Reporter d'Apple.\" id=\"XPU-ts-yFW\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"27\" y=\"15\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePaneFontscolorsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneFontscolorsViewController\">\n            <connections>\n                <outlet property=\"_backgroundColorWell\" destination=\"ojb-CW-adm\" id=\"6Dn-ei-MgC\"/>\n                <outlet property=\"_categoriesClipView\" destination=\"KId-Hv-0z4\" id=\"8eQ-tz-4oA\"/>\n                <outlet property=\"_categoriesTableView\" destination=\"Guq-9s-MSe\" id=\"dF2-aT-AVo\"/>\n                <outlet property=\"_duplicateThemeButton\" destination=\"wrW-a0-5bb\" id=\"JXl-nQ-lNe\"/>\n                <outlet property=\"_fontLabel\" destination=\"Gpc-y1-LVL\" id=\"vcf-Hl-1cN\"/>\n                <outlet property=\"_fontPanelButton\" destination=\"VXB-fG-DZO\" id=\"mWq-3d-jcw\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"ECK-8n-jgQ\" id=\"KJN-cp-7TP\"/>\n                <outlet property=\"_removeThemeButton\" destination=\"BeX-wG-c8S\" id=\"P2N-JL-pTj\"/>\n                <outlet property=\"_selectedTextColorWell\" destination=\"smi-ou-IW9\" id=\"SYJ-hQ-CeL\"/>\n                <outlet property=\"_textColorWell\" destination=\"d1A-uU-J9j\" id=\"GSq-6Z-18d\"/>\n                <outlet property=\"_textSelectionBackgroundColorWell\" destination=\"tI7-g9-Ub1\" id=\"Tqn-nk-Zpu\"/>\n                <outlet property=\"_themesTableView\" destination=\"RzM-ng-eMk\" id=\"a50-ng-EZi\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"M45-au-HoK\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"488\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"x9E-yq-Bgj\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"197\" y=\"53\" width=\"513\" height=\"415\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"oxm-RF-gwN\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"413\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"ECK-8n-jgQ\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"389\" width=\"511\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"UoY-kV-fnd\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"210\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Texte\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"yUb-rK-XWX\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"tKJ-wP-cns\"/>\n                                        </connections>\n                                    </button>\n                                    <button hidden=\"YES\" tag=\"1\" id=\"PFb-pf-cDg\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"273\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Outline\" bezelStyle=\"regularSquare\" alignment=\"center\" enabled=\"NO\" tag=\"1\" inset=\"2\" id=\"0bp-JB-hgi\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"CaH-UR-hXI\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"ojb-CW-adm\">\n                                <rect key=\"frame\" x=\"109\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeBackgroundColor:\" target=\"-2\" id=\"5mu-v3-HFf\"/>\n                                </connections>\n                            </colorWell>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"0qd-wx-JZe\">\n                                <rect key=\"frame\" x=\"18\" y=\"16\" width=\"85\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Arrière-plan :\" id=\"tXe-F9-mz7\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"x6u-0C-glq\">\n                                <rect key=\"frame\" x=\"179\" y=\"16\" width=\"68\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Sélection :\" id=\"5b7-64-CqX\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <customView id=\"skb-ts-Qkm\" customClass=\"CUIFontAndColorsFramedView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"56\" width=\"511\" height=\"38\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                <subviews>\n                                    <colorWell id=\"d1A-uU-J9j\">\n                                        <rect key=\"frame\" x=\"270\" y=\"6\" width=\"23\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                        <connections>\n                                            <action selector=\"takeTextColor:\" target=\"-2\" id=\"gBS-3n-BGc\"/>\n                                        </connections>\n                                    </colorWell>\n                                    <customView id=\"cxK-bc-95I\" customClass=\"CUIFontBoxView\">\n                                        <rect key=\"frame\" x=\"11\" y=\"7\" width=\"251\" height=\"22\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                        <subviews>\n                                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Gpc-y1-LVL\">\n                                                <rect key=\"frame\" x=\"6\" y=\"3\" width=\"216\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" title=\"Label\" id=\"NnJ-xy-baM\">\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                </textFieldCell>\n                                            </textField>\n                                            <button verticalHuggingPriority=\"750\" id=\"VXB-fG-DZO\">\n                                                <rect key=\"frame\" x=\"228\" y=\"2\" width=\"18\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <buttonCell key=\"cell\" type=\"bevel\" title=\"Button\" bezelStyle=\"rounded\" image=\"FontPanelButton\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"PCX-V4-Ul7\">\n                                                    <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                </buttonCell>\n                                                <connections>\n                                                    <action selector=\"showFontPanel:\" target=\"-2\" id=\"TXC-Hh-5Tn\"/>\n                                                </connections>\n                                            </button>\n                                        </subviews>\n                                    </customView>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"tI7-g9-Ub1\">\n                                <rect key=\"frame\" x=\"253\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeTextSelectionBackgroundColor:\" target=\"-2\" id=\"3Lx-04-mDx\"/>\n                                </connections>\n                            </colorWell>\n                            <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"kKc-J1-3fa\">\n                                <rect key=\"frame\" x=\"-1\" y=\"92\" width=\"513\" height=\"298\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"KId-Hv-0z4\" customClass=\"CUICategoriesClipView\">\n                                    <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"296\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <subviews>\n                                        <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"Guq-9s-MSe\">\n                                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"511\" height=\"296\"/>\n                                            <autoresizingMask key=\"autoresizingMask\"/>\n                                            <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <tableColumns>\n                                                <tableColumn width=\"508\" minWidth=\"40\" maxWidth=\"1000\" id=\"3xQ-tZ-j4q\">\n                                                    <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                        <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </tableHeaderCell>\n                                                    <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"tik-bw-vkv\">\n                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </textFieldCell>\n                                                    <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                                    <prototypeCellViews>\n                                                        <tableCellView id=\"qJj-ED-VEr\">\n                                                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"508\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                            <subviews>\n                                                                <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"S4j-JX-cuc\">\n                                                                    <rect key=\"frame\" x=\"5\" y=\"0.0\" width=\"502\" height=\"17\"/>\n                                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QoQ-Ln-Apy\" customClass=\"CUIAATextFieldCell\">\n                                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                    </textFieldCell>\n                                                                </textField>\n                                                            </subviews>\n                                                            <connections>\n                                                                <outlet property=\"textField\" destination=\"S4j-JX-cuc\" id=\"bvA-qp-OES\"/>\n                                                            </connections>\n                                                        </tableCellView>\n                                                    </prototypeCellViews>\n                                                </tableColumn>\n                                            </tableColumns>\n                                            <connections>\n                                                <outlet property=\"dataSource\" destination=\"-2\" id=\"0Vt-up-xeZ\"/>\n                                                <outlet property=\"delegate\" destination=\"-2\" id=\"peW-tT-8ce\"/>\n                                            </connections>\n                                        </tableView>\n                                    </subviews>\n                                    <nil key=\"backgroundColor\"/>\n                                </clipView>\n                                <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"Osb-Lx-voN\">\n                                    <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                                <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Yh8-lV-Sht\">\n                                    <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                            </scrollView>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E3D-RK-YW7\">\n                                <rect key=\"frame\" x=\"323\" y=\"16\" width=\"118\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Texte sélectionné :\" id=\"hlx-fO-U4G\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <colorWell id=\"smi-ou-IW9\">\n                                <rect key=\"frame\" x=\"447\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeSelectedTextColor:\" target=\"-2\" id=\"St4-Kf-cho\"/>\n                                </connections>\n                            </colorWell>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"28\" horizontalPageScroll=\"10\" verticalLineScroll=\"28\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"WFH-OC-tjY\">\n                    <rect key=\"frame\" x=\"20\" y=\"71\" width=\"167\" height=\"397\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"Jk0-k7-FSA\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"165\" height=\"396\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"26\" rowSizeStyle=\"automatic\" headerView=\"CBt-FS-rdj\" viewBased=\"YES\" id=\"RzM-ng-eMk\" customClass=\"CUIThemesTableView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"169\" height=\"371\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"166\" minWidth=\"40\" maxWidth=\"1000\" id=\"8z8-zq-M80\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"center\" title=\"Thème\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"LIW-YF-0qh\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g8I-5G-l02\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"166\" height=\"26\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"tDm-Ft-Jnv\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"6\" width=\"166\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tXJ-2u-YI1\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeThemeName:\" target=\"-2\" id=\"X61-RY-efm\"/>\n                                                        </connections>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"tDm-Ft-Jnv\" id=\"kHG-t9-3y3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VVl-X3-gEs\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"qGO-er-Uo0\"/>\n                                    <outlet property=\"menu\" destination=\"eAx-eb-TeX\" id=\"6hE-7d-DjH\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"sWy-II-SrD\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"160\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Ivf-sc-bjn\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"CBt-FS-rdj\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"169\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"wrW-a0-5bb\">\n                    <rect key=\"frame\" x=\"20\" y=\"52\" width=\"78\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Dupliquer\" bezelStyle=\"smallSquare\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"qIb-6V-bKQ\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Xri-vW-CH4\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"BeX-wG-c8S\">\n                    <rect key=\"frame\" x=\"97\" y=\"52\" width=\"24\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"c5I-q7-mxk\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"DD1-V1-TBJ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"umy-j0-XLf\">\n                    <rect key=\"frame\" x=\"454\" y=\"13\" width=\"262\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"Restaurer les préférences par défaut\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"CuZ-Pa-zjm\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"restoreDefaults:\" target=\"-2\" id=\"Gab-8f-vLB\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"QTP-jj-Yu7\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"120\" y=\"52\" width=\"67\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"7UN-KC-FeU\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"54\" y=\"-910\"/>\n        </customView>\n        <menu id=\"eAx-eb-TeX\">\n            <items>\n                <menuItem title=\"Dupliquer\" id=\"RpP-Yq-5CH\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Afi-lx-Njn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Supprimer…\" id=\"pgM-Ek-dMO\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"Rjs-es-rtG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"Zf1-4a-jgB\"/>\n                <menuItem title=\"Importer un thème…\" id=\"5HI-nQ-F9G\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"importTheme:\" target=\"-2\" id=\"cy6-qV-ueG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Exporter le thème…\" id=\"9mp-BZ-63A\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"exportTheme:\" target=\"-2\" id=\"6h3-pb-u8c\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-298\" y=\"-640\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"FontPanelButton\" width=\"18\" height=\"18\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePaneGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneGeneralViewController\">\n            <connections>\n                <outlet property=\"_reportViewersPopUpButton\" destination=\"2FU-fj-7sV\" id=\"rfO-cS-QKN\"/>\n                <outlet property=\"_showsRegistersWindowAtLaunchCheckbox\" destination=\"c18-Y4-l7a\" id=\"0na-a4-j7E\"/>\n                <outlet property=\"_sourceEditorsPopUpButton\" destination=\"INA-cz-CFq\" id=\"ewg-BF-pgR\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"152\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Tow-sZ-5fR\">\n                    <rect key=\"frame\" x=\"145\" y=\"79\" width=\"208\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Ouvrir les fichiers sources avec :\" id=\"v8S-NF-Ptc\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"c18-Y4-l7a\">\n                    <rect key=\"frame\" x=\"357\" y=\"116\" width=\"213\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Afficher la fenêtre des registres\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Qp-I2-soX\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsRegisterWindowAtLaunch:\" target=\"-2\" id=\"chH-Vd-P2e\"/>\n                    </connections>\n                </button>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"INA-cz-CFq\">\n                    <rect key=\"frame\" x=\"357\" y=\"74\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"Xah-p3-3bg\" id=\"iEv-K7-faP\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"8Pi-eD-O8F\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"Xah-p3-3bg\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchPreferedSourceCodeEditor:\" target=\"-2\" id=\"3B4-sh-5hm\"/>\n                    </connections>\n                </popUpButton>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"2FU-fj-7sV\">\n                    <rect key=\"frame\" x=\"357\" y=\"15\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"HkN-Au-xJt\" id=\"1pN-mO-zIT\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"n2m-BI-7nZ\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"HkN-Au-xJt\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchDefaultReportsViewer:\" target=\"-2\" id=\"OFK-RV-Gma\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"rVU-gu-nBJ\">\n                    <rect key=\"frame\" x=\"155\" y=\"20\" width=\"198\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Lecteur de rapports par défaut :\" id=\"m0Y-Eq-BQi\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"Hus-SW-nAg\">\n                    <rect key=\"frame\" x=\"20\" y=\"57\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"8uV-kA-G5G\">\n                    <rect key=\"frame\" x=\"256\" y=\"117\" width=\"97\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Au démarrage :\" id=\"xLb-2U-Vwg\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"192\" y=\"-53\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePanePresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"ZYd-5r-yQv\" id=\"i9c-kL-7HJ\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"r6r-RI-kcs\" id=\"Ror-u4-rou\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"8Nm-R3-fGu\" id=\"3g3-DD-9IJ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"98p-UU-gFL\">\n                    <rect key=\"frame\" x=\"63\" y=\"284\" width=\"269\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Composants d'un appel visibles par défaut :\" id=\"9hi-bS-vgU\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ZYd-5r-yQv\">\n                    <rect key=\"frame\" x=\"336\" y=\"283\" width=\"114\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Nom du binaire\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Gp3-2V-rzt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"WHi-RH-9MD\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"8Nm-R3-fGu\">\n                    <rect key=\"frame\" x=\"336\" y=\"262\" width=\"220\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Adresse de l'instruction machine\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"TVT-Ex-NJf\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jH7-tG-qIn\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"r6r-RI-kcs\">\n                    <rect key=\"frame\" x=\"336\" y=\"241\" width=\"185\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Décalage d'octet et source\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"DAf-CC-sze\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"GhR-oX-eh8\"/>\n                    </connections>\n                </button>\n            </subviews>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePanePresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationTextViewController\">\n            <connections>\n                <outlet property=\"_lineWrappingCheckbox\" destination=\"ANa-W0-TnO\" id=\"0X3-XK-fry\"/>\n                <outlet property=\"_showBacktracesCheckbox\" destination=\"vj7-9l-wu4\" id=\"KSi-Nm-wqp\"/>\n                <outlet property=\"_showBinaryImagesCheckbox\" destination=\"ayi-wa-Elc\" id=\"mYB-oN-qAA\"/>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"rRX-kg-J1V\" id=\"qyO-wp-PBr\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"Kfz-pY-oUd\" id=\"6mW-ja-r8I\"/>\n                <outlet property=\"_showDiagnosticMessagesCheckbox\" destination=\"iNz-Qb-2d2\" id=\"nDi-1K-iro\"/>\n                <outlet property=\"_showExceptionInformationCheckbox\" destination=\"Qt3-ro-d2D\" id=\"IXu-xm-lli\"/>\n                <outlet property=\"_showHeaderCheckbox\" destination=\"Pvu-81-w7l\" id=\"Pqb-oU-xKL\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"2LX-nh-3AM\" id=\"WZp-Xx-mLd\"/>\n                <outlet property=\"_showThreadStateCheckbox\" destination=\"cir-zS-0pp\" id=\"rgi-7S-ybj\"/>\n                <outlet property=\"_showsLineNumbersCheckbox\" destination=\"n6c-lM-SZM\" id=\"s1h-L4-v2d\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"Pvu-81-w7l\">\n                    <rect key=\"frame\" x=\"336\" y=\"205\" width=\"77\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"En-tête\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zEG-Wx-Nn2\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowHeader:\" target=\"-2\" id=\"r82-eB-Q1G\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Qt3-ro-d2D\">\n                    <rect key=\"frame\" x=\"336\" y=\"184\" width=\"183\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Information sur l'exception\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"F76-W3-yAd\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowExceptionInformation:\" target=\"-2\" id=\"cUe-nn-bRr\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"iNz-Qb-2d2\">\n                    <rect key=\"frame\" x=\"336\" y=\"163\" width=\"169\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Messages de diagnostic\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"EEv-JV-T5b\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDiagnosticMessages:\" target=\"-2\" id=\"wy4-KN-LXQ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"vj7-9l-wu4\">\n                    <rect key=\"frame\" x=\"336\" y=\"142\" width=\"125\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Trace des appels\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ZOK-Ny-hlt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBacktraces:\" target=\"-2\" id=\"M7z-KY-6jd\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"cir-zS-0pp\">\n                    <rect key=\"frame\" x=\"336\" y=\"120\" width=\"108\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"État du thread\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ysb-qv-8M9\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowThreadState:\" target=\"-2\" id=\"5aJ-mY-Zn1\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ayi-wa-Elc\">\n                    <rect key=\"frame\" x=\"336\" y=\"99\" width=\"143\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Images des binaires\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Kr8-SF-wcL\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryImages:\" target=\"-2\" id=\"r9d-Iu-XGO\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MNF-5K-RaR\">\n                    <rect key=\"frame\" x=\"63\" y=\"61\" width=\"269\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Composants d'un appel visibles par défaut :\" id=\"2et-oL-bun\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"rRX-kg-J1V\">\n                    <rect key=\"frame\" x=\"336\" y=\"60\" width=\"114\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Nom du binaire\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"vWD-FK-a4a\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"1JN-45-hUv\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"2LX-nh-3AM\">\n                    <rect key=\"frame\" x=\"336\" y=\"39\" width=\"220\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Adresse de l'instruction machine\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"XDv-jS-TfO\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jZT-K0-Oql\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Kfz-pY-oUd\">\n                    <rect key=\"frame\" x=\"336\" y=\"18\" width=\"185\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Décalage d'octet et source\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zE5-mb-UZb\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"TPQ-k5-sP5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"eDV-BF-Pu1\">\n                    <rect key=\"frame\" x=\"223\" y=\"245\" width=\"109\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Renvoi à la ligne :\" id=\"nm4-Se-bRD\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ANa-W0-TnO\">\n                    <rect key=\"frame\" x=\"336\" y=\"244\" width=\"245\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Renvoyer automatiquement à la ligne\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"1PO-2B-RhF\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchLineWrapping:\" target=\"-2\" id=\"BfM-Sn-zvX\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"1vN-WD-7S5\">\n                    <rect key=\"frame\" x=\"153\" y=\"206\" width=\"179\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Sections visibles par défaut :\" id=\"LKq-kF-sWQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9bL-sk-EjC\">\n                    <rect key=\"frame\" x=\"272\" y=\"284\" width=\"60\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Afficher :\" id=\"gBx-bb-vVK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"n6c-lM-SZM\">\n                    <rect key=\"frame\" x=\"336\" y=\"283\" width=\"135\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Numéros de lignes\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"8bP-wa-KPh\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsLineNumbers:\" target=\"-2\" id=\"evn-zL-ZnP\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-382\" y=\"-1882\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePanePresentationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23727\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23727\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationViewController\">\n            <connections>\n                <outlet property=\"_contentsView\" destination=\"3Hi-kO-8Wu\" id=\"fmJ-yr-83D\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"8YE-EY-01p\" id=\"SPW-EQ-qbE\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"387\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" fixedFrame=\"YES\" boxType=\"custom\" borderType=\"line\" title=\"Box\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"wmc-fZ-hP3\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"347\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"ArU-KV-0n7\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"688\" height=\"345\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"8YE-EY-01p\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"321\" width=\"688\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"OdN-hf-Q5a\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"279\" y=\"1\" width=\"50\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Texte\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"ARO-B4-zFG\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"ClQ-Fr-Q9W\"/>\n                                        </connections>\n                                    </button>\n                                    <button tag=\"1\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"mm7-bt-sqK\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"345\" y=\"1\" width=\"65\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"Liste\" bezelStyle=\"regularSquare\" alignment=\"center\" tag=\"1\" inset=\"2\" id=\"K3H-7g-Y6W\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"9nl-0S-hxW\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"3Hi-kO-8Wu\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            </customView>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-138\" y=\"-142.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencePaneSymbolicationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneSymbolicationViewController\">\n            <connections>\n                <outlet property=\"_dSYMLibraryPlaceHolderView\" destination=\"vVc-MA-1G3\" id=\"0ly-sp-1WZ\"/>\n                <outlet property=\"_searchForSymbolsFilesButton\" destination=\"Yst-no-gF6\" id=\"9n7-Ui-eWv\"/>\n                <outlet property=\"_symbolicateButton\" destination=\"Tdl-XE-pSN\" id=\"nFP-cN-cbv\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"477\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E67-yJ-rtd\">\n                    <rect key=\"frame\" x=\"37\" y=\"409\" width=\"139\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Fichiers de symboles :\" id=\"kzW-xF-tfP\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Tdl-XE-pSN\">\n                    <rect key=\"frame\" x=\"180\" y=\"439\" width=\"513\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Convertir les adresses d'instructions machines en symboles quand c'est possible\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"mnW-sM-t65\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSymbolicate:\" target=\"-2\" id=\"mac-a1-z7L\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Vva-gy-N3U\">\n                    <rect key=\"frame\" x=\"77\" y=\"440\" width=\"99\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Symbolisation :\" id=\"oNL-xZ-Za8\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Yst-no-gF6\">\n                    <rect key=\"frame\" x=\"180\" y=\"408\" width=\"351\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"Rechercher automatiquement les fichiers de symboles\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"M5T-BJ-hV4\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSearchForSymbolFiles:\" target=\"-2\" id=\"G2h-en-QtA\"/>\n                    </connections>\n                </button>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"hi1-OF-uDj\">\n                    <rect key=\"frame\" x=\"20\" y=\"387\" width=\"690\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <customView id=\"vVc-MA-1G3\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"349\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-623\" y=\"-415.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUIPreferencesWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencesWindowController\">\n            <connections>\n                <outlet property=\"_toolBar\" destination=\"6zI-aR-fpa\" id=\"CHz-Ac-uHu\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Window\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" tabbingMode=\"disallowed\" id=\"F0z-JX-Cv5\" customClass=\"CUIPreferencesWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenDisallowsTiling=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"730\" height=\"400\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"730\" height=\"350\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"730\" height=\"800\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"400\"/>\n                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"D61E4849-961C-442A-8B58-7CA007F20812\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"6zI-aR-fpa\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"05DB9B5F-BC7F-4CCA-BF32-731C932EA360\" explicitItemIdentifier=\"toolbarItem.general\" label=\"Général\" paletteLabel=\"Général\" image=\"NSPreferencesGeneral\" selectable=\"YES\" id=\"UQU-Ps-228\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JfQ-pF-Hff\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"4277C753-007B-43DA-A729-FE8AC69931C5\" explicitItemIdentifier=\"toolbarItem.fontscolors\" label=\"Polices et couleurs\" paletteLabel=\"Polices et couleurs\" selectable=\"YES\" id=\"SAh-Qi-gC4\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JJk-NZ-vjn\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FB786CBB-BCFC-44B7-8C12-288ADA8E21C6\" explicitItemIdentifier=\"toolbarItem.presentation\" label=\"Présentation\" paletteLabel=\"Présentation\" image=\"TextMode\" selectable=\"YES\" id=\"eCa-Vk-UOp\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"4IV-xn-tOM\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"633F5F14-F73C-4AF6-8F67-BED9A917A783\" explicitItemIdentifier=\"toolbarItem.symbolication\" label=\"Symbolisation\" paletteLabel=\"Symbolisation\" image=\"symbolication_Template\" selectable=\"YES\" id=\"Q5n-xT-GUE\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"w6D-Ku-xhR\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"791DB978-2878-4D73-AAA6-621004CCA3A6\" explicitItemIdentifier=\"toolbarItem.crashReporter\" label=\"Crash Reporter\" paletteLabel=\"Crash Reporter\" image=\"crashreporter\" selectable=\"YES\" id=\"1VP-qg-tbw\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"HhP-9G-ZBT\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"F4FBC886-C696-4070-8CFE-0D178484D264\" explicitItemIdentifier=\"toolbarItem.advanced\" label=\"Avancé\" paletteLabel=\"Avancé\" image=\"NSAdvanced\" selectable=\"YES\" id=\"2eR-ed-bjv\">\n                        <size key=\"minSize\" width=\"32\" height=\"32\"/>\n                        <size key=\"maxSize\" width=\"32\" height=\"32\"/>\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"N8j-Zz-weH\"/>\n                        </connections>\n                    </toolbarItem>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"UQU-Ps-228\"/>\n                    <toolbarItem reference=\"eCa-Vk-UOp\"/>\n                    <toolbarItem reference=\"SAh-Qi-gC4\"/>\n                    <toolbarItem reference=\"Q5n-xT-GUE\"/>\n                    <toolbarItem reference=\"1VP-qg-tbw\"/>\n                    <toolbarItem reference=\"2eR-ed-bjv\"/>\n                </defaultToolbarItems>\n                <connections>\n                    <outlet property=\"delegate\" destination=\"-2\" id=\"qsE-xQ-pGw\"/>\n                </connections>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"-2\" y=\"-706\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSAdvanced\" width=\"32\" height=\"32\"/>\n        <image name=\"NSPreferencesGeneral\" width=\"32\" height=\"32\"/>\n        <image name=\"TextMode\" width=\"32\" height=\"32\"/>\n        <image name=\"crashreporter\" width=\"32\" height=\"32\"/>\n        <image name=\"symbolication_Template\" width=\"32\" height=\"32\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CUISymbolsFilesLibraryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUISymbolsFilesLibraryViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"F9U-gJ-Z2L\" id=\"dH5-UP-Qqs\"/>\n                <outlet property=\"_removeButton\" destination=\"ehE-Ow-SS2\" id=\"m8U-R6-wqt\"/>\n                <outlet property=\"_tableView\" destination=\"AY0-dP-DvX\" id=\"lpv-VE-ccc\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"592\" height=\"349\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" id=\"Rhh-WD-hIX\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"592\" height=\"326\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"mCs-2R-TXV\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"590\" height=\"325\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView identifier=\"uuids\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" columnSelection=\"YES\" autosaveName=\"ui.symbolfiles.list\" rowSizeStyle=\"automatic\" headerView=\"l7j-fB-FoE\" viewBased=\"YES\" id=\"AY0-dP-DvX\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"300\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"220\" minWidth=\"40\" maxWidth=\"1000\" id=\"Vcp-pq-sB3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Nom\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"wd0-bU-zBR\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compareNameAndVersion:\" sortKey=\"self\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"02c-Nn-HO4\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"220\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1cT-cq-rEF\">\n                                                        <rect key=\"frame\" x=\"23\" y=\"2\" width=\"195\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Thg-bW-Hdn\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"jEv-gl-BBo\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"17w-qR-br7\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"jEv-gl-BBo\" id=\"b3d-u1-YFD\"/>\n                                                    <outlet property=\"textField\" destination=\"1cT-cq-rEF\" id=\"Vzs-Wm-QJ0\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"110\" minWidth=\"110\" maxWidth=\"110\" id=\"a9F-wr-DSz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"Version\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"2QA-U7-Hh5\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CAF-d6-J6h\">\n                                                <rect key=\"frame\" x=\"224\" y=\"1\" width=\"110\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1k1-EI-O6e\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"109\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"lB8-oP-fWV\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"1k1-EI-O6e\" id=\"kIm-93-QIk\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"uuids\" width=\"251\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"xFs-nC-pHw\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"UUIDs\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"QfV-t1-g8t\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"wmr-c9-khj\">\n                                                <rect key=\"frame\" x=\"337\" y=\"1\" width=\"251\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"qAo-VI-VaT\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"245\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"justified\" title=\"Table View Cell\" id=\"vH5-Rz-jfx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"qAo-VI-VaT\" id=\"KNV-Dt-SB5\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"DKi-0C-xiC\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Asj-Ja-ycJ\"/>\n                                    <outlet property=\"menu\" destination=\"GF9-kL-5e2\" id=\"AJL-Bv-fVg\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"fgB-BL-7Fh\">\n                        <rect key=\"frame\" x=\"1\" y=\"533\" width=\"724\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"T5m-cm-koD\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"l7j-fB-FoE\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"P6v-Ex-GO9\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"-1\" width=\"35\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSAddTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"NS9-6o-ey8\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"addDebuggingSymbolsFile:\" target=\"-2\" id=\"2We-No-BJ5\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ehE-Ow-SS2\">\n                    <rect key=\"frame\" x=\"34\" y=\"-1\" width=\"31\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" enabled=\"NO\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"bH8-IA-FZM\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"u5K-Fv-rkO\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"JKx-dR-M6r\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"64\" y=\"-1\" width=\"528\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"6R2-VQ-GCt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"JIV-ic-LZf\"/>\n                    </connections>\n                </button>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"F9U-gJ-Z2L\">\n                    <rect key=\"frame\" x=\"337\" y=\"3\" width=\"248\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"Filtrer\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"tN8-2f-IVZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"Hmq-IQ-880\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-624\" y=\"-817.5\"/>\n        </customView>\n        <menu id=\"GF9-kL-5e2\">\n            <items>\n                <menuItem title=\"Afficher dans le Finder\" id=\"mla-Lw-0ux\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"qpt-X3-Bo6\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-301\" y=\"-467\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/CodeSigning.strings",
    "content": "\"TestFlight\" = \"TestFlight\";\n\n\"Development\" = \"Developpement\";\n\n\"AppStore\" = \"AppStore\";\n\n\"Enterprise\" = \"Enterprise\";\n\n\"Developer ID\" = \"Developer ID\";\n\n\"None\" = \"Aucune\";\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23727\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23727\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSApplication\">\n            <connections>\n                <outlet property=\"delegate\" destination=\"Voe-Tx-rLC\" id=\"GzC-gU-4Uq\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customObject id=\"Voe-Tx-rLC\" customClass=\"AppDelegate\">\n            <connections>\n                <outlet property=\"_debugMenuBarItem\" destination=\"cNb-At-Imu\" id=\"UE7-n3-l3I\"/>\n                <outlet property=\"_themesMenu\" destination=\"abx-GW-6TZ\" id=\"EEG-6i-WdC\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"YLy-65-1bz\" customClass=\"NSFontManager\"/>\n        <menu title=\"Main Menu\" systemMenu=\"main\" id=\"AYu-sK-qS6\">\n            <items>\n                <menuItem title=\"Unexpectedly\" id=\"1Xt-HY-uBw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Unexpectedly\" systemMenu=\"apple\" id=\"uQy-DD-JDr\">\n                        <items>\n                            <menuItem title=\"À propos de Unexpectedly\" id=\"5kV-Vb-QxS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showAboutBox:\" target=\"-1\" id=\"8cM-F7-dKT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"VOq-y0-SEH\"/>\n                            <menuItem title=\"Préférences…\" keyEquivalent=\",\" id=\"BOF-NM-1cW\">\n                                <connections>\n                                    <action selector=\"showPreferences:\" target=\"-1\" id=\"Jal-0e-r2i\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"wFC-TO-SCJ\"/>\n                            <menuItem title=\"Services\" id=\"NMo-om-nkz\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Services\" systemMenu=\"services\" id=\"hz9-B4-Xy5\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"4je-JR-u6R\"/>\n                            <menuItem title=\"Masquer Unexpectedly\" keyEquivalent=\"h\" id=\"Olw-nP-bQN\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"PnN-Uc-m68\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Masquer les autres\" keyEquivalent=\"h\" id=\"Vdr-fp-XzO\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"VT4-aY-XCT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Tout afficher\" id=\"Kd2-mp-pUS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"Dhg-Le-xox\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kCx-OE-vgT\"/>\n                            <menuItem title=\"Quitter Unexpectedly\" keyEquivalent=\"q\" id=\"4sb-4s-VLi\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-1\" id=\"Te7-pn-YzF\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Fichier\" id=\"dMs-cI-mzQ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Fichier\" id=\"bib-Uj-vzu\">\n                        <items>\n                            <menuItem title=\"Nouvelle source intelligente…\" keyEquivalent=\"N\" id=\"Was-JA-tGl\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-1\" id=\"bHg-uP-Kty\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"Mx6-UK-5B4\"/>\n                            <menuItem title=\"Ajouter un fichier ou un dossier…\" keyEquivalent=\"a\" id=\"3wG-3v-uZk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSource:\" target=\"-1\" id=\"b1Q-ed-4lm\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"m54-Is-iLE\"/>\n                            <menuItem title=\"Fermer\" keyEquivalent=\"w\" id=\"DVo-aG-piG\">\n                                <connections>\n                                    <action selector=\"performClose:\" target=\"-1\" id=\"HmO-Ls-i7Q\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"56E-C3-0cD\"/>\n                            <menuItem title=\"Importer une source intelligente…\" id=\"lvA-aa-UmE\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_importSmartSource:\" target=\"-1\" id=\"slK-ne-mc7\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Exporter\" id=\"Pho-kH-aIP\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Exporter\" id=\"3tw-V4-ayi\">\n                                    <items>\n                                        <menuItem title=\"Rapport…\" id=\"9tt-1M-ra5\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportCrashLog:\" target=\"-1\" id=\"yYt-Vu-UUP\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Source intelligente\" id=\"tTJ-63-TIi\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-1\" id=\"gbF-DM-FHr\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"aJh-i4-bef\"/>\n                            <menuItem title=\"Afficher dans le Finder\" id=\"OqK-Vd-hWC\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showInFinder:\" target=\"-1\" id=\"0gW-ak-pFy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Placer dans la corbeille\" id=\"GVk-MU-gOy\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-1\" id=\"9KY-Gr-Skj\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"BHd-Dv-6Wl\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-1\" id=\"DLv-Uy-cDS\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eeq-nE-Puw\"/>\n                            <menuItem title=\"Format d'impression…\" keyEquivalent=\"P\" id=\"qIS-W8-SiK\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"runPageLayout:\" target=\"-1\" id=\"Din-rz-gC5\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Imprimer…\" keyEquivalent=\"p\" id=\"aTl-1u-JFS\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_print:\" target=\"-1\" id=\"a83-u9-Pl5\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Édition\" id=\"5QF-Oa-p0T\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Édition\" id=\"W48-6f-4Dl\">\n                        <items>\n                            <menuItem title=\"Annuler\" keyEquivalent=\"z\" id=\"dRJ-4n-Yzg\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"M6e-cu-g7V\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Rétablir\" keyEquivalent=\"Z\" id=\"6dh-zS-Vam\">\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"oIA-Rs-6OD\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"WRV-NI-Exz\"/>\n                            <menuItem title=\"Couper\" keyEquivalent=\"x\" id=\"uRl-iY-unG\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"YJe-68-I9s\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Copier\" keyEquivalent=\"c\" id=\"x3v-GG-iWU\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"G1f-GL-Joy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Coller\" keyEquivalent=\"v\" id=\"gVA-U4-sdL\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"UvS-8e-Qdg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Coller et adapter le style\" keyEquivalent=\"V\" id=\"WeT-3V-zwk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"pasteAsPlainText:\" target=\"-1\" id=\"cEh-KX-wJQ\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Supprimer\" id=\"pa3-QI-u2k\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"0Mk-Ml-PaM\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Tout sélectionner\" keyEquivalent=\"a\" id=\"Ruw-6m-B2m\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"VNm-Mi-diN\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"uyl-h8-XO2\"/>\n                            <menuItem title=\"Rechercher\" id=\"4EN-yA-p0u\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Rechercher\" id=\"1b7-l0-nxx\">\n                                    <items>\n                                        <menuItem title=\"Rechercher…\" tag=\"1\" keyEquivalent=\"f\" id=\"Xz5-n4-O0W\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"QsK-9e-uGa\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Rechercher le suivant\" tag=\"2\" keyEquivalent=\"g\" id=\"q09-fT-Sye\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"49u-4Y-NRM\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Rechercher le précédent\" tag=\"3\" keyEquivalent=\"G\" id=\"OwM-mh-QMV\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"siD-LN-Db0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Rechercher la sélection\" tag=\"7\" keyEquivalent=\"e\" id=\"buJ-ug-pKt\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"M3c-NN-csD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Aller à la sélection\" keyEquivalent=\"j\" id=\"S0p-oC-mLd\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"IOG-6D-g5B\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Parole\" id=\"xrE-MZ-jX0\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Parole\" id=\"3rS-ZA-NoH\">\n                                    <items>\n                                        <menuItem title=\"Commencer la lecture\" id=\"Ynk-f8-cLZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"654-Ng-kyl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Arrêter la lecture\" id=\"Oyz-dy-DGm\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"dX8-6p-jy9\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Présentation\" id=\"H8h-7b-M4v\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Présentation\" id=\"HyV-fh-RgO\">\n                        <items>\n                            <menuItem title=\"Afficher la barre latérale\" keyEquivalent=\"1\" id=\"fzY-Ht-27G\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"kra-FC-RZC\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Afficher les images des binaires\" tag=\"1\" keyEquivalent=\"2\" id=\"2z5-3m-6dw\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"s1k-G0-TLi\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Afficher l'inspecteur\" tag=\"2\" keyEquivalent=\"3\" id=\"lQa-tq-Wi7\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"qR9-QJ-Q4R\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kEv-nO-mPM\"/>\n                            <menuItem title=\"Texte\" keyEquivalent=\"1\" id=\"qIT-0d-e67\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"eRM-Kc-O5r\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Liste\" tag=\"1\" keyEquivalent=\"2\" id=\"Nr3-m8-qOB\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"TDI-d2-Yku\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"tGi-CI-t3Z\"/>\n                            <menuItem title=\"Afficher la barre d'outils\" keyEquivalent=\"t\" id=\"snW-S8-Cw5\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"toggleToolbarShown:\" target=\"-1\" id=\"BXY-wc-z0C\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Visionneuse de rapports\" id=\"Wlf-Q9-x4u\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Visionneuse de rapports\" id=\"nLy-c6-ILM\">\n                        <items>\n                            <menuItem title=\"Taille de la police\" id=\"hLb-MS-G2f\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Taille de la police\" id=\"TBb-40-aCS\">\n                                    <items>\n                                        <menuItem title=\"Plus grand\" keyEquivalent=\"+\" id=\"EXj-Y3-9fM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_increaseFontSize:\" target=\"-1\" id=\"qW5-4J-akR\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Plus petit\" keyEquivalent=\"-\" id=\"7i3-Bb-CWM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_decreaseFontSize:\" target=\"-1\" id=\"B2V-VK-bcD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"P4p-p3-w1I\"/>\n                                        <menuItem title=\"Réinitialiser\" keyEquivalent=\"0\" id=\"kfY-hu-eJP\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_resetFontSize:\" target=\"-1\" id=\"nz0-xy-rD7\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Thèmes\" id=\"yjG-UV-U5C\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Thèmes\" id=\"abx-GW-6TZ\">\n                                    <items>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"NUX-KR-gxh\"/>\n                                        <menuItem title=\"Éditer les thèmes…\" id=\"csr-ry-NgM\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"editThemes:\" target=\"-1\" id=\"F5p-1i-EUu\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"2Cq-5I-dEU\"/>\n                            <menuItem title=\"Sections visibles\" id=\"wAR-FX-MEm\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Sections visibles\" id=\"WFL-Rm-rhq\">\n                                    <items>\n                                        <menuItem title=\"En tête\" id=\"HIC-nM-hNN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-1\" id=\"WUc-lV-ghf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"1r5-yC-AUQ\"/>\n                                        <menuItem title=\"Information sur l'exception\" id=\"lvl-an-zWN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-1\" id=\"fLf-3S-OlT\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Messages de diagnostic\" id=\"iKL-gn-vYN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-1\" id=\"N8e-k9-P27\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"z5a-l7-tQ4\"/>\n                                        <menuItem title=\"Trace des appels\" id=\"DbA-sZ-kG6\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-1\" id=\"eUz-AU-LoI\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"État du thread\" id=\"RBY-FQ-bMy\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-1\" id=\"XYE-gq-GnF\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Images de binaires\" id=\"rnV-QR-Tam\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-1\" id=\"qnf-0L-mBO\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Navigation\" id=\"aG2-MW-iKZ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Navigation\" id=\"YUZ-OQ-Qfb\">\n                        <items>\n                            <menuItem title=\"Aller à la ligne…\" keyEquivalent=\"l\" id=\"JtL-ON-s7d\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToLine:\" target=\"-1\" id=\"hAa-kF-BVg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"qbu-Eo-jRw\"/>\n                            <menuItem title=\"Aller à la section\" id=\"2Ip-qq-DKf\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Aller à la section\" id=\"AcZ-wd-kkj\">\n                                    <items>\n                                        <menuItem title=\"En-tête\" id=\"Bmg-Jh-vql\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToHeader:\" target=\"-1\" id=\"0VQ-jO-VrD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"ZwI-1h-pND\"/>\n                                        <menuItem title=\"Information sur l'exception\" id=\"SzQ-gm-Wkt\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToExceptionInformation:\" target=\"-1\" id=\"079-pD-HEp\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Messages de diagnostic\" id=\"Wiv-Qz-fMq\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToDiagnosticMessages:\" target=\"-1\" id=\"hTl-rJ-Q5a\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"ayq-Jo-qJv\"/>\n                                        <menuItem title=\"Trace des appels\" id=\"a2B-9S-c4g\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBacktraces:\" target=\"-1\" id=\"Sfi-Ce-HQ0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"État du thread\" id=\"hfS-oi-1cT\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToThreadState:\" target=\"-1\" id=\"Lbe-gO-nw1\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Images des binaires\" id=\"ON2-La-JSh\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBinaryImages:\" target=\"-1\" id=\"hF5-h4-Mqo\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"Aller au thread planté\" keyEquivalent=\"c\" id=\"XPO-uf-5Ox\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToCrashedThread:\" target=\"-1\" id=\"ymM-Im-3Fw\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Fenêtre\" id=\"aUF-d1-5bR\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Fenêtre\" systemMenu=\"window\" id=\"Td7-aD-5lo\">\n                        <items>\n                            <menuItem title=\"Placer dans le Dock\" keyEquivalent=\"m\" id=\"OY7-WF-poV\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"VwT-WD-YPe\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Réduire/agrandir\" id=\"R4o-n2-Eq4\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"performZoom:\" target=\"-1\" id=\"DIl-cC-cCs\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"V2l-48-H4C\"/>\n                            <menuItem title=\"Registres\" keyEquivalent=\"r\" id=\"e57-vP-OAA\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-1\" id=\"4GI-98-jKW\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eu3-7i-yIM\"/>\n                            <menuItem title=\"Tout ramener au premier plan\" id=\"LE2-aR-0XJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"DRN-fu-gQh\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Aide\" id=\"wpr-3q-Mcd\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Aide\" systemMenu=\"help\" id=\"F2S-fz-NVQ\">\n                        <items>\n                            <menuItem title=\"Aide Unexpectedly\" keyEquivalent=\"?\" id=\"FKE-Sm-Kum\">\n                                <connections>\n                                    <action selector=\"showUserGuide:\" target=\"Voe-Tx-rLC\" id=\"Xxx-bM-bpn\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"NhV-yu-WbQ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"Émettre un commentaire\" id=\"Agb-QS-hQl\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"sendFeedback:\" target=\"Voe-Tx-rLC\" id=\"GdC-FT-8s8\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Unexpectedly sur le Web\" id=\"FUb-BV-YgJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showUnexpectedlyWebSite:\" target=\"Voe-Tx-rLC\" id=\"Zhd-rv-Pi9\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Débogage\" hidden=\"YES\" id=\"cNb-At-Imu\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Débogage\" id=\"OCR-9P-Ipy\">\n                        <items>\n                            <menuItem title=\"Crash Reporter\" id=\"QbD-vw-FaL\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Crash Reporter\" id=\"90M-1A-X88\">\n                                    <items>\n                                        <menuItem title=\"Mode opératoire\" enabled=\"NO\" id=\"rSJ-Ir-6Ad\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Basique\" id=\"cZ2-Me-tJE\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"1pr-Nb-cUn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Développeur\" tag=\"1\" id=\"Taa-D1-VLv\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"Sze-b6-Qb4\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Serveur\" tag=\"2\" id=\"oZt-M9-dpo\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"t2d-3r-nsn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"riH-1J-NUS\"/>\n                                        <menuItem title=\"Mode de notification\" enabled=\"NO\" id=\"BLJ-R5-6HZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"Dialogue d'alerte\" id=\"EDw-Kd-564\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"pfK-8S-sWf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"Notification système\" tag=\"1\" id=\"zLw-vY-Ttl\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"yUA-00-NUV\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"isO-68-Tw7\"/>\n                                        <menuItem title=\"Rapporter les exceptions non interceptées\" id=\"eLO-Pu-jRW\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchReportUncaughtException:\" target=\"Voe-Tx-rLC\" id=\"3Tb-Lg-qE2\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-1574\" y=\"-1552\"/>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/fr.lproj/Predicates.strings",
    "content": "/* Predicate Editor */\n\n\"%[All]@ of the following are true\" = \"%1$[Toutes les]@ conditions suivantes sont vraies\";\n\"%[Any]@ of the following are true\" = \"%1$[Certaines des]@ conditions suivantes sont vraies\";\n\n\"%[processName]@ %[is]@ %@\" = \"%1$[Le nom de l'opération]@ %2$[est]@ %3$@\";\n\"%[processName]@ %[is not]@ %@\" = \"%1$[Le nom de l'opération]@ %2$[n'est pas]@ %3$@\";\n\"%[processName]@ %[begins with]@ %@\" = \"%1$[Le nom de l'opération]@ %2$[commence par]@ %3$@\";\n\"%[processName]@ %[ends with]@ %@\" = \"%1$[Le nom de l'opération]@ %2$[se termine par]@ %3$@\";\n\"%[processName]@ %[contains]@ %@\" = \"%1$[Le nom de l'opération]@ %2$[contient]@ %3$@\";\n\n\"%[header.bundleIdentifier]@ %[is]@ %@\" = \"%1$[L'identifiant]@ %2$[est]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[is not]@ %@\" = \"%1$[L'identifiant]@ %2$[n'est pas]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[begins with]@ %@\" = \"%1$[L'identifiant]@ %2$[commence par]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[ends with]@ %@\" = \"%1$[L'identifiant]@ %2$[se termine par]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[contains]@ %@\" = \"%1$[L'identifiant]@ %2$[contient]@ %3$@\";\n\n\"%[header.executablePath]@ %[is]@ %@\" = \"%1$[Le chemin de l'exécutable]@ %2$[est]@ %3$@\";\n\"%[header.executablePath]@ %[is not]@ %@\" = \"%1$[Le chemin de l'exécutable]@ %2$[n'est pas]@ %3$@\";\n\"%[header.executablePath]@ %[begins with]@ %@\" = \"%1$[Le chemin de l'exécutable]@ %2$[commence par]@ %3$@\";\n\"%[header.executablePath]@ %[ends with]@ %@\" = \"%1$[Le chemin de l'exécutable]@ %2$[se termine par]@ %3$@\";\n\"%[header.executablePath]@ %[contains]@ %@\" = \"%1$[Le chemin de l'exécutable]@ %2$[contient]@ %3$@\";\n\n\"%[header.executableVersion]@ %[is]@ %@\" = \"%1$[La version de l'exécutable]@ %2$[est]@ %3$@\";\n\"%[header.executableVersion]@ %[is not]@ %@\" = \"%1$[La version de l'exécutable]@ %2$[n'est pas]@ %3$@\";\n\"%[header.executableVersion]@ %[begins with]@ %@\" = \"%1$[La version de l'exécutable]@ %2$[commence par]@ %3$@\";\n\"%[header.executableVersion]@ %[ends with]@ %@\" = \"%1$[La version de l'exécutable]@ %2$[se termine par]@ %3$@\";\n\"%[header.executableVersion]@ %[contains]@ %@\" = \"%1$[La version de l'exécutable]@ %2$[contient]@ %3$@\";\n\n\"%[exceptionInformation.crashedThreadName]@ %[is]@ %@\" = \"%1$[Le nom du thread planté]@ %2$[est]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[is not]@ %@\" = \"%1$[Le nom du thread planté]@ %2$[n'est pas]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[begins with]@ %@\" = \"%1$[Le nom du thread planté]@ %2$[commence par]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[ends with]@ %@\" = \"%1$[Le nom du thread planté]@ %2$[se termine par]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[contains]@ %@\" = \"%1$[Le nom du thread planté]@ %2$[contient]@ %3$@\";\n\n\"%[header.operatingSystemVersion.stringValue]@ %[is]@ %@\" = \"%1$[La version de l'OS]@ %2$[est]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[is not]@ %@\" = \"%1$[La version de l'OS]@ %2$[n'est pas]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[begins with]@ %@\" = \"%1$[La version de l'OS]@ %2$[commence par]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[ends with]@ %@\" = \"%1$[La version de l'OS]@ %2$[se termine par]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[contains]@ %@\" = \"%1$[La version de l'OS]@ %2$[contient]@ %3$@\";\n\n\"%[dateTime]@ %[is less than or equal to]@ %@\" = \"%1$[La date]@ %2$[est antérieure ou égale à]@ %3$@\";\n\"%[dateTime]@ %[is greater than or equal to]@ %@\" = \"%1$[La date]@ %2$[est postérieure ou égale à]@ %3$@\";\n\n\"%[exceptionType]@ is %[EXC_ARITHMETIC]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_ARITHMETIC]@\";\n\"%[exceptionType]@ is %[EXC_BAD_ACCESS]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_BAD_ACCESS]@\";\n\"%[exceptionType]@ is %[EXC_BAD_INSTRUCTION]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_BAD_INSTRUCTION]@\";\n\"%[exceptionType]@ is %[EXC_BREAKPOINT]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_BREAKPOINT]@\";\n\"%[exceptionType]@ is %[EXC_CORPSE_NOTIFY]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_CORPSE_NOTIFY]@\";\n\"%[exceptionType]@ is %[EXC_CRASH]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_CRASH]@\";\n\"%[exceptionType]@ is %[EXC_EMULATION]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_EMULATION]@\";\n\"%[exceptionType]@ is %[EXC_GUARD]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_GUARD]@\";\n\"%[exceptionType]@ is %[EXC_MACH_SYSCALL]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_MACH_SYSCALL]@\";\n\"%[exceptionType]@ is %[EXC_RESOURCE]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_RESOURCE]@\";\n\"%[exceptionType]@ is %[EXC_RPC_ALERT]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_RPC_ALERT]@\";\n\"%[exceptionType]@ is %[EXC_SOFTWARE]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_SOFTWARE]@\";\n\"%[exceptionType]@ is %[EXC_SYSCALL]@\" = \"%1$[Le type de l'exception]@ est %2$[EXC_SYSCALL]@\";\n\n\"%[exceptionSignal]@ is %[SIGABRT]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGABRT]@\";\n\"%[exceptionSignal]@ is %[SIGBUS]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGBUS]@\";\n\"%[exceptionSignal]@ is %[SIGILL]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGILL]@\";\n\"%[exceptionSignal]@ is %[SIGKILL]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGKILL]@\";\n\"%[exceptionSignal]@ is %[SIGQUIT]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGQUIT]@\";\n\"%[exceptionSignal]@ is %[SIGSEGV]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGSEGV]@\";\n\"%[exceptionSignal]@ is %[SIGTRAP]@\" = \"%1$[Le signal de l'exception]@ est %2$[SIGTRAP]@\";\n\"%[exceptionSignal]@ is %[Code Signature Invalid]@\" = \"%1$[Le signal de l'exception]@ est %2$[Code Signature Invalid]@\";\n\n\"%[crashLogFileName]@ %[is]@ %@\" = \"%1$[Le nom du fichier du rapport]@ %2$[est]@ %3$@\";\n\"%[crashLogFileName]@ %[is not]@ %@\" = \"%1$[Le nom du fichier du rapport]@ %2$[n'est pas]@ %3$@\";\n\"%[crashLogFileName]@ %[begins with]@ %@\" = \"%1$[Le nom du fichier du rapport]@ %2$[commence par]@ %3$@\";\n\"%[crashLogFileName]@ %[ends with]@ %@\" = \"%1$[Le nom du fichier du rapport]@ %2$[se termine par]@ %3$@\";\n\"%[crashLogFileName]@ %[contains]@ %@\" = \"%1$[Le nom du fichier du rapport]@ %2$[contient]@ %3$@\";\n\n\"%[reportSourceTypeNumber]@ is %[0]@\" = \"%1$[La source]@ est %2$[les rapports système]@\";\n\"%[reportSourceTypeNumber]@ is %[1]@\" = \"%1$[La source]@ est %2$[les rapports utilisateurs]@\";\n\"%[reportSourceTypeNumber]@ is %[2]@\" = \"%1$[La source]@ est %2$[une autre source]@\";\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIAboutBoxWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIAboutBoxWindowController\">\n            <connections>\n                <outlet property=\"_applicationIconView\" destination=\"tcA-WF-uA0\" id=\"MLS-Td-B8a\"/>\n                <outlet property=\"_versionLabel\" destination=\"ttD-QV-oac\" id=\"Dvu-Z7-kin\"/>\n                <outlet property=\"window\" destination=\"Bdk-2N-UfM\" id=\"lij-6E-9Ij\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" id=\"Bdk-2N-UfM\" userLabel=\"About Window\" customClass=\"CUIAboutBoxWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"1076\" y=\"858\" width=\"580\" height=\"340\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"213\" height=\"107\"/>\n            <view key=\"contentView\" id=\"M7a-oa-Rve\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"none\" title=\"Box\" id=\"oOh-j5-H4F\" customClass=\"CUIContentBox\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <view key=\"contentView\" id=\"wo7-V5-OLy\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textField verticalHuggingPriority=\"750\" id=\"99t-xE-l89\">\n                                    <rect key=\"frame\" x=\"39\" y=\"237\" width=\"244\" height=\"33\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"Unexpectedly\" id=\"T3S-Ay-pmi\">\n                                        <font key=\"font\" metaFont=\"systemBold\" size=\"27\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ttD-QV-oac\">\n                                    <rect key=\"frame\" x=\"44\" y=\"216\" width=\"234\" height=\"17\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" sendsActionOnEndEditing=\"YES\" title=\"version xxx (xxxx)\" id=\"zzd-sb-nLW\">\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField verticalHuggingPriority=\"750\" id=\"1i6-Ud-XKB\">\n                                    <rect key=\"frame\" x=\"18\" y=\"121\" width=\"265\" height=\"13\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"© 2020–2026‏ Stéphane Sudre כל הזכויות שמורות.\" id=\"Xdh-fz-kMR\">\n                                        <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <customView id=\"ph8-bY-NfI\" customClass=\"CUIAboutBoxFooterView\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"581\" height=\"48\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <subviews>\n                                        <button verticalHuggingPriority=\"750\" id=\"BFt-hQ-gMS\">\n                                            <rect key=\"frame\" x=\"20\" y=\"11\" width=\"108\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"הסכם רישיון\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"Pec-zi-7OB\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showLicenseAgreement:\" target=\"-2\" id=\"a9e-i5-Dsu\"/>\n                                            </connections>\n                                        </button>\n                                        <button verticalHuggingPriority=\"750\" id=\"GUS-e1-oXY\">\n                                            <rect key=\"frame\" x=\"134\" y=\"11\" width=\"108\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"תודות\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"tds-hN-Zey\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showAcknowledgments:\" target=\"-2\" id=\"vyh-yi-H1N\"/>\n                                            </connections>\n                                        </button>\n                                    </subviews>\n                                </customView>\n                                <customView id=\"tcA-WF-uA0\" customClass=\"CUIApplicationIconView\">\n                                    <rect key=\"frame\" x=\"304\" y=\"64\" width=\"256\" height=\"256\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </view>\n                        <color key=\"borderColor\" white=\"0.0\" alpha=\"0.41999999999999998\" colorSpace=\"calibratedWhite\"/>\n                        <color key=\"fillColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"calibratedWhite\"/>\n                    </box>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"71\" y=\"93\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIBinaryImagesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIBinaryImagesViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"JbX-mT-2UH\" id=\"02i-kF-XTY\"/>\n                <outlet property=\"_openWithMenuItem\" destination=\"YLm-YP-LL9\" id=\"Oa6-K5-zJI\"/>\n                <outlet property=\"_tableView\" destination=\"H2N-iz-CG5\" id=\"8vi-YE-vnm\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"127\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"JbX-mT-2UH\">\n                    <rect key=\"frame\" x=\"6\" y=\"2\" width=\"180\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" userInterfaceLayoutDirection=\"rightToLeft\" placeholderString=\"סנן\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"CXs-CW-3At\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"qzT-e2-esd\"/>\n                    </connections>\n                </searchField>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"18\" horizontalPageScroll=\"10\" verticalLineScroll=\"18\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jng-RN-KVx\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"826\" height=\"104\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"iHp-Bk-LJN\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"824\" height=\"103\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"16\" headerView=\"szd-pN-V9C\" viewBased=\"YES\" id=\"H2N-iz-CG5\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"78\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"identifier\" editable=\"NO\" width=\"243\" minWidth=\"40\" maxWidth=\"1000\" id=\"zsB-hX-miE\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"קובץ בינארי\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"HaL-8m-7CV\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"identifier\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"BPG-vx-EaY\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"243\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"g8Y-8I-L6J\">\n                                                        <rect key=\"frame\" x=\"2\" y=\"1\" width=\"220\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sWv-h4-EIw\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"r0f-ia-207\">\n                                                        <rect key=\"frame\" x=\"226\" y=\"1\" width=\"14\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"oyO-Zo-2yb\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"r0f-ia-207\" id=\"SJ2-ej-0Cg\"/>\n                                                    <outlet property=\"textField\" destination=\"g8Y-8I-L6J\" id=\"3Mm-h4-ddI\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"122\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"JQI-XJ-VTL\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"גירסה\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"U1f-H1-9m0\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"version\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"8FH-01-0os\">\n                                                <rect key=\"frame\" x=\"247\" y=\"1\" width=\"122\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"plL-Vk-xaA\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"122\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingHead\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"obt-PL-Lbo\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"plL-Vk-xaA\" id=\"mg4-BY-bi3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"addresses\" editable=\"NO\" width=\"213\" minWidth=\"40\" maxWidth=\"1000\" id=\"oFL-bf-gGU\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"כתובתים\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"ZW2-8X-PGp\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"addressesRange\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g9U-vA-jTF\">\n                                                <rect key=\"frame\" x=\"372\" y=\"1\" width=\"213\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"3kh-At-cKc\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"212\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"justified\" title=\"Table View Cell\" id=\"CMI-V5-ciE\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"3kh-At-cKc\" id=\"UdM-cM-BOp\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"path\" editable=\"NO\" width=\"232\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"HcW-EK-wr3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"נתיב\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"S91-cj-D84\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"path\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"sf0-hA-RmY\">\n                                                <rect key=\"frame\" x=\"588\" y=\"1\" width=\"232\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"lmB-oe-CyW\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"232\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"qWc-Kx-SEP\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"lmB-oe-CyW\" id=\"kFS-VU-Y4h\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VlW-ud-6Hf\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Xcc-up-ema\"/>\n                                    <outlet property=\"menu\" destination=\"lWX-qP-xpp\" id=\"Pw9-3z-saj\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" horizontal=\"YES\" id=\"OBi-Bk-c7r\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"822\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Od4-Ga-F2a\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"szd-pN-V9C\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"160\" y=\"10.5\"/>\n        </customView>\n        <menu id=\"lWX-qP-xpp\">\n            <items>\n                <menuItem title=\"הצג ב-Finder\" id=\"taY-h1-kV9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"C8h-FR-DuE\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"פתח באמצעות\" id=\"YLm-YP-LL9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"פתח באמצעות\" id=\"SGI-Dm-tOB\">\n                        <items>\n                            <menuItem title=\"-\" id=\"9Ch-Xx-Yu3\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICodeSigningInformationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICodeSigningInformationViewController\">\n            <connections>\n                <outlet property=\"_flagsRichTextField\" destination=\"chR-7J-O6v\" id=\"iY2-tW-M8Z\"/>\n                <outlet property=\"_identifierTextField\" destination=\"pzr-oV-4Ja\" id=\"pxc-Tm-LdQ\"/>\n                <outlet property=\"_teamIdentifierTextField\" destination=\"3fa-Ku-EUN\" id=\"mQk-Vc-AhS\"/>\n                <outlet property=\"_trustLevelTextField\" destination=\"fce-70-gVD\" id=\"X7D-tf-hgw\"/>\n                <outlet property=\"_validationCategoryTextField\" destination=\"Ibg-QL-cVb\" id=\"WUN-SW-oav\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"407\" height=\"426\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9yS-4w-XmX\">\n                    <rect key=\"frame\" x=\"248\" y=\"391\" width=\"41\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"מזהה:\" id=\"bCV-Ef-nKj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"pzr-oV-4Ja\">\n                    <rect key=\"frame\" x=\"18\" y=\"391\" width=\"226\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"right\" title=\"-\" id=\"IAr-nB-TqD\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"3fa-Ku-EUN\">\n                    <rect key=\"frame\" x=\"18\" y=\"367\" width=\"226\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" alignment=\"right\" title=\"-\" id=\"jlF-oN-6jR\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ibg-QL-cVb\">\n                    <rect key=\"frame\" x=\"18\" y=\"343\" width=\"226\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"-\" id=\"bg4-im-sfc\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MYG-4N-N6i\">\n                    <rect key=\"frame\" x=\"248\" y=\"367\" width=\"77\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"מזהה הצוות:\" id=\"0cZ-kI-PnJ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qyY-nO-4Jd\">\n                    <rect key=\"frame\" x=\"248\" y=\"343\" width=\"106\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"קטגוריית האימות:\" id=\"0wh-en-a3v\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dVx-X7-9rC\">\n                    <rect key=\"frame\" x=\"248\" y=\"319\" width=\"141\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"אפשרויות עיצוב משותף:\" id=\"B6T-7b-zGQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"fce-70-gVD\">\n                    <rect key=\"frame\" x=\"18\" y=\"21\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"-\" id=\"VDD-jV-8zV\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"chR-7J-O6v\">\n                    <rect key=\"frame\" x=\"18\" y=\"45\" width=\"226\" height=\"291\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" allowsUndo=\"NO\" alignment=\"right\" title=\"Label\" allowsEditingTextAttributes=\"YES\" id=\"erf-qu-9hj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scW-9F-TpJ\">\n                    <rect key=\"frame\" x=\"248\" y=\"21\" width=\"71\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"רמת האמון:\" id=\"Gmq-jb-2Tt\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-50.5\" y=\"339\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICollectionViewRegisterItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSView\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"180\" height=\"23\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"49v-rz-P77\">\n                    <rect key=\"frame\" x=\"152\" y=\"5\" width=\"28\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\":r15\" id=\"moe-Uv-cgf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"jaL-7X-k26\" customClass=\"CUIRegisterLabel\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"149\" height=\"20\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <subviews>\n                        <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qEF-At-YGV\">\n                            <rect key=\"frame\" x=\"19\" y=\"3\" width=\"127\" height=\"17\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                            <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" title=\"0x0000000000000000\" id=\"3Ws-AL-pDW\">\n                                <font key=\"font\" size=\"11\" name=\"Menlo-Regular\"/>\n                                <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" red=\"0.0\" green=\"0.0\" blue=\"0.0\" alpha=\"0.051054180475006906\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n                            </textFieldCell>\n                        </textField>\n                        <popUpButton id=\"fAd-pL-hD3\">\n                            <rect key=\"frame\" x=\"3\" y=\"1\" width=\"16\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                            <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"בינארי\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"arrowAtCenter\" selectedItem=\"Ql8-Yj-GNF\" id=\"jsY-zd-eaC\">\n                                <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                <menu key=\"menu\" id=\"W6L-9s-vAV\">\n                                    <items>\n                                        <menuItem title=\"בינארי\" state=\"on\" hidden=\"YES\" id=\"Ql8-Yj-GNF\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"בוליאני\" tag=\"1\" id=\"VoA-fE-sxQ\"/>\n                                        <menuItem title=\"עשרוני\" tag=\"3\" id=\"Hab-wq-jWg\"/>\n                                        <menuItem title=\"צפה\" tag=\"2\" id=\"2IG-5I-rJY\"/>\n                                        <menuItem title=\"הקסדצימלי\" tag=\"4\" id=\"SoX-XB-pNK\"/>\n                                        <menuItem title=\"אוקטלי\" tag=\"5\" id=\"5Ci-Jw-A07\"/>\n                                        <menuItem title=\"עשרוני ללא סימן\" tag=\"6\" id=\"QOY-jj-Mna\"/>\n                                    </items>\n                                </menu>\n                            </popUpButtonCell>\n                            <connections>\n                                <action selector=\"switchDisplayFormat:\" target=\"jaL-7X-k26\" id=\"VTy-Z7-Jxf\"/>\n                            </connections>\n                        </popUpButton>\n                    </subviews>\n                    <connections>\n                        <outlet property=\"_popUpButton\" destination=\"fAd-pL-hD3\" id=\"tc3-Wy-sGM\"/>\n                        <outlet property=\"_textField\" destination=\"qEF-At-YGV\" id=\"dOS-N9-mnK\"/>\n                    </connections>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-21\" y=\"-184\"/>\n        </customView>\n        <collectionViewItem id=\"faJ-j9-dhQ\" customClass=\"CUICollectionViewRegisterItem\">\n            <connections>\n                <outlet property=\"_registerNameLabel\" destination=\"49v-rz-P77\" id=\"BR4-Vr-dVK\"/>\n                <outlet property=\"_registerValueDisplayFormatPopUpButton\" destination=\"fAd-pL-hD3\" id=\"9NM-Ax-cVM\"/>\n                <outlet property=\"_registerValueLabel\" destination=\"jaL-7X-k26\" id=\"IU3-mu-U3V\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"6gV-UU-WJg\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICrashLogPresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_bottomView\" destination=\"16n-m5-v72\" id=\"M96-Rj-3vP\"/>\n                <outlet property=\"_columnModeButton\" destination=\"0Gc-7g-Ass\" id=\"XI8-35-JsW\"/>\n                <outlet property=\"_diagnosticMessageTextView\" destination=\"IwT-LV-4u1\" id=\"ygu-AN-tpy\"/>\n                <outlet property=\"_exceptionTypeMoreInfoButton\" destination=\"oyw-Du-OMN\" id=\"82e-p8-W3R\"/>\n                <outlet property=\"_exceptionTypeValue\" destination=\"UjR-qo-T8o\" id=\"orF-Ig-CDt\"/>\n                <outlet property=\"_lightTableModeButton\" destination=\"txw-BM-Naa\" id=\"pWp-8l-uF0\"/>\n                <outlet property=\"_listModeButton\" destination=\"4H4-2A-3rH\" id=\"TPP-Pc-27m\"/>\n                <outlet property=\"_middleView\" destination=\"3jW-NO-y2r\" id=\"tdb-iF-AuV\"/>\n                <outlet property=\"_showBinaryImagesButton\" destination=\"mXS-EH-zAu\" id=\"YMP-3f-zjX\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"STs-S6-lOY\" id=\"7jf-g3-CT7\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"tXx-uN-2vh\" id=\"SBE-d0-8OJ\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"2vU-ne-pQu\" id=\"sEh-95-6Lh\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"QRs-W6-mBT\" id=\"KOn-Jl-aus\"/>\n                <outlet property=\"_splitView\" destination=\"xQ0-xe-5sR\" id=\"I9n-V8-sWN\"/>\n                <outlet property=\"_threadsContainerView\" destination=\"tzS-vU-NLb\" id=\"tuG-n2-KAA\"/>\n                <outlet property=\"_topView\" destination=\"fcj-Y3-D2P\" id=\"otl-zr-mtC\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"447\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <box verticalHuggingPriority=\"750\" fixedFrame=\"YES\" boxType=\"separator\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Sxy-MF-gHB\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"409\" width=\"869\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"UjR-qo-T8o\">\n                    <rect key=\"frame\" x=\"383\" y=\"420\" width=\"385\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" alignment=\"right\" id=\"s2X-DC-xIe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"oyw-Du-OMN\">\n                    <rect key=\"frame\" x=\"14\" y=\"412\" width=\"108\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"מידע נוסף…\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Upz-9K-gHp\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showMoreExceptionInfo:\" target=\"-2\" id=\"A1K-iE-4RQ\"/>\n                    </connections>\n                </button>\n                <splitView fixedFrame=\"YES\" arrangesAllSubviews=\"NO\" dividerStyle=\"thin\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"xQ0-xe-5sR\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"411\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView fixedFrame=\"YES\" id=\"fcj-Y3-D2P\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"92\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                            <subviews>\n                                <scrollView fixedFrame=\"YES\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"xta-0h-6ql\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"871\" height=\"73\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <clipView key=\"contentView\" ambiguous=\"YES\" copiesOnScroll=\"NO\" id=\"d4p-1Y-po0\">\n                                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"869\" height=\"71\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                        <subviews>\n                                            <textView ambiguous=\"YES\" editable=\"NO\" drawsBackground=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" baseWritingDirection=\"leftToRight\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" id=\"IwT-LV-4u1\">\n                                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"71\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <size key=\"minSize\" width=\"869\" height=\"71\"/>\n                                                <size key=\"maxSize\" width=\"871\" height=\"10000000\"/>\n                                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textView>\n                                        </subviews>\n                                    </clipView>\n                                    <scroller key=\"horizontalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"QYa-zj-ofv\">\n                                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"100\" height=\"0.0\"/>\n                                        <autoresizingMask key=\"autoresizingMask\"/>\n                                    </scroller>\n                                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"RY3-Qx-cWa\">\n                                        <rect key=\"frame\" x=\"-14\" y=\"1\" width=\"15\" height=\"0.0\"/>\n                                        <autoresizingMask key=\"autoresizingMask\"/>\n                                    </scroller>\n                                </scrollView>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"TL4-gi-udl\">\n                                    <rect key=\"frame\" x=\"787\" y=\"2\" width=\"69\" height=\"16\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"עקבות חזרה\" id=\"Dtf-ev-i4n\">\n                                        <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                            </subviews>\n                        </customView>\n                        <customView fixedFrame=\"YES\" id=\"3jW-NO-y2r\" userLabel=\"Middle View\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"93\" width=\"869\" height=\"177\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                            <subviews>\n                                <button toolTip=\"Show backtraces in columns\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" tag=\"2\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"0Gc-7g-Ass\">\n                                    <rect key=\"frame\" x=\"780\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallColumn_RTL_Template\" imagePosition=\"only\" alignment=\"center\" inset=\"2\" id=\"X5W-Qe-nKe\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"e7v-G7-W7s\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"הצג רק את השרשור שקרס\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"QRs-W6-mBT\">\n                                    <rect key=\"frame\" x=\"87\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"con-zk-L9l\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"fgj-Js-Ah7\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"הסתר או הצג את כתובת של פקודת מכונה\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"2vU-ne-pQu\">\n                                    <rect key=\"frame\" x=\"29\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"w28-Ax-j2K\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"gJR-EI-GwW\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"הסתר או הצג את שם הבינארי\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"STs-S6-lOY\">\n                                    <rect key=\"frame\" x=\"58\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Aan-op-skH\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"sVI-Dr-72U\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"הסתר או הצג את היסט של בתים\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"tXx-uN-2vh\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"GRj-N7-F4j\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"MdF-Tl-Xtk\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"הסתר או הצג את קבצים בינאריים\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"mXS-EH-zAu\">\n                                    <rect key=\"frame\" x=\"841\" y=\"-1\" width=\"27\" height=\"22\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"bottom_disclose_Template\" imagePosition=\"only\" alignment=\"center\" alternateImage=\"bottom_hide_Template\" inset=\"2\" id=\"Awy-Hl-TgF\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"showHideBottomView:\" target=\"-2\" id=\"udq-fk-pc4\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"Show backtraces in a list \" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" tag=\"1\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"4H4-2A-3rH\">\n                                    <rect key=\"frame\" x=\"803\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSListViewTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"i1d-5C-VGM\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"mrq-dw-3ek\"/>\n                                    </connections>\n                                </button>\n                                <button hidden=\"YES\" toolTip=\"Show backtraces in a caroussel\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" tag=\"2\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"txw-BM-Naa\">\n                                    <rect key=\"frame\" x=\"757\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallLightTable_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"EhU-bz-HLR\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"ABc-ah-Ysu\"/>\n                                    </connections>\n                                </button>\n                                <customView fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"tzS-vU-NLb\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"22\" width=\"871\" height=\"156\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </customView>\n                        <customView fixedFrame=\"YES\" id=\"16n-m5-v72\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"271\" width=\"869\" height=\"140\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"jmb-1Q-H0m\"/>\n                    </connections>\n                </splitView>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gdJ-dt-1kl\">\n                    <rect key=\"frame\" x=\"772\" y=\"420\" width=\"84\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"שגיאה חריגה:\" id=\"ayc-kQ-Slx\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"56.5\" y=\"-86.5\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSListViewTemplate\" width=\"14\" height=\"10\"/>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bottom_disclose_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bottom_hide_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallColumn_RTL_Template\" width=\"14\" height=\"10\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n        <image name=\"smallLightTable_Template\" width=\"14\" height=\"10\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICrashLogPresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationTextViewController\">\n            <connections>\n                <outlet property=\"_sectionsVisibilityPopUpButton\" destination=\"o3T-bg-7a6\" id=\"vRD-qm-Pyp\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"Ytt-64-lj2\" id=\"6lh-Tf-i9B\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"gHh-U9-6ts\" id=\"w5b-4r-VB4\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"V1i-87-jZk\" id=\"tAE-2I-lj8\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"hZe-Mo-RWl\" id=\"pSn-XW-qF6\"/>\n                <outlet property=\"_textView\" destination=\"Gtc-Yk-xtd\" id=\"s9U-Yv-TsI\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"612\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <popUpButton toolTip=\"Filter visible sections\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"o3T-bg-7a6\">\n                    <rect key=\"frame\" x=\"661\" y=\"1\" width=\"31\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"hR3-DY-z5t\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"e8c-hg-WG7\">\n                            <items>\n                                <menuItem state=\"on\" image=\"quote_Template\" hidden=\"YES\" id=\"ggI-rC-fEt\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"כותרת\" id=\"zdn-EI-sae\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-2\" id=\"QIM-JJ-4Lh\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"fZC-QV-uXY\"/>\n                                <menuItem title=\"מידע על חריג\" id=\"LpK-Zx-Gla\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-2\" id=\"2VZ-w6-6FZ\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"הודעות אבחון\" id=\"M4h-Oa-aq3\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-2\" id=\"hQt-R4-vLH\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"3Wr-0I-wum\"/>\n                                <menuItem title=\"עקבות חזרה\" id=\"kXZ-qs-DxU\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-2\" id=\"B8j-HN-qA3\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"מצב השרשור\" id=\"d7k-xL-Hbq\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-2\" id=\"c9g-bt-Ect\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"קבצים בינאריים\" id=\"FHu-OU-dEn\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-2\" id=\"E7Q-0s-gFI\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <button toolTip=\"הצג רק את השרשור שקרס\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"hZe-Mo-RWl\">\n                    <rect key=\"frame\" x=\"87\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"cgk-bN-rIw\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"hSj-AL-N38\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"הסתר או הצג את היסט של בתים\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"gHh-U9-6ts\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"O1c-Fy-oRt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"s9c-GQ-gYk\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"הסתר או הצג את כתובת של פקודת מכונה\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"V1i-87-jZk\">\n                    <rect key=\"frame\" x=\"29\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"N9g-4y-bag\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"muF-oq-Yyp\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"הסתר או הצג את שם הבינארי\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ytt-64-lj2\">\n                    <rect key=\"frame\" x=\"58\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"feE-rv-jxh\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"pin-0C-OOg\"/>\n                    </connections>\n                </button>\n                <scrollView fixedFrame=\"YES\" borderType=\"line\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ekh-hq-gUp\" customClass=\"NSCrashLogTextScrollView\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"694\" height=\"590\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" ambiguous=\"YES\" drawsBackground=\"NO\" copiesOnScroll=\"NO\" id=\"5MQ-yl-x1z\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"692\" height=\"588\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <textView identifier=\"CUIAlwaysWrap\" ambiguous=\"YES\" editable=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" baseWritingDirection=\"leftToRight\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" smartInsertDelete=\"YES\" id=\"Gtc-Yk-xtd\" customClass=\"CUICrashLogTextView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"588\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <size key=\"minSize\" width=\"692\" height=\"588\"/>\n                                <size key=\"maxSize\" width=\"694\" height=\"10000000\"/>\n                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </textView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"M5I-BV-SOJ\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"100\" height=\"0.0\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ilc-Nf-Ue4\">\n                        <rect key=\"frame\" x=\"677\" y=\"0.0\" width=\"15\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"228\" y=\"-447\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"quote_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICrashLogsListViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsListViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"kV4-Gy-Y5g\" id=\"mab-gb-mLb\"/>\n                <outlet property=\"_shareMenu\" destination=\"fYp-Jl-UVV\" id=\"UDn-zl-y3K\"/>\n                <outlet property=\"_sortPopUpButton\" destination=\"vD3-8d-OAL\" id=\"bxh-ry-Anh\"/>\n                <outlet property=\"_tableView\" destination=\"up6-IV-9dX\" id=\"qr9-ho-AXW\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"356\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"38\" horizontalPageScroll=\"10\" verticalLineScroll=\"38\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"3HT-Gz-85z\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"242\" height=\"333\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"pIU-n9-gmy\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"240\" height=\"331\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" typeSelect=\"NO\" rowHeight=\"36\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"up6-IV-9dX\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"331\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"crashlog\" width=\"237\" minWidth=\"40\" maxWidth=\"3000\" id=\"mvk-6t-fLR\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"mYa-rl-emi\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"crashlog cell\" id=\"Xca-mC-mWV\" customClass=\"CUICrashLogTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"237\" height=\"36\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"mVA-Z6-k5O\">\n                                                        <rect key=\"frame\" x=\"76\" y=\"17\" width=\"130\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"x97-bl-W1B\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"PbV-Y5-NBE\">\n                                                        <rect key=\"frame\" x=\"210\" y=\"6\" width=\"24\" height=\"24\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"CAj-gG-wBu\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"JiO-a5-b11\">\n                                                        <rect key=\"frame\" x=\"74\" y=\"5\" width=\"132\" height=\"11\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"JeG-Im-RXs\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"miniSystem\"/>\n                                                            <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"BBl-CI-Lfa\">\n                                                        <rect key=\"frame\" x=\"1\" y=\"11\" width=\"71\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"zKb-T5-FgR\">\n                                                            <font key=\"font\" metaFont=\"miniSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dateLabel\" destination=\"JiO-a5-b11\" id=\"HbY-n5-YwU\"/>\n                                                    <outlet property=\"exceptionTypeLabel\" destination=\"BBl-CI-Lfa\" id=\"oYd-S0-W7S\"/>\n                                                    <outlet property=\"imageView\" destination=\"PbV-Y5-NBE\" id=\"MnJ-Rq-ILZ\"/>\n                                                    <outlet property=\"textField\" destination=\"mVA-Z6-k5O\" id=\"36v-QD-EVB\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"cwW-Ck-seH\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"9Oi-EP-GeV\"/>\n                                    <outlet property=\"menu\" destination=\"K9J-Sc-Re6\" id=\"I8m-OA-9dB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"9gf-HZ-0gE\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"fDS-AZ-p9b\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <connections>\n                        <outlet property=\"nextKeyView\" destination=\"kV4-Gy-Y5g\" id=\"1ku-o3-h60\"/>\n                    </connections>\n                </scrollView>\n                <popUpButton id=\"vD3-8d-OAL\">\n                    <rect key=\"frame\" x=\"1\" y=\"4\" width=\"29\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" imagePosition=\"only\" alignment=\"left\" lineBreakMode=\"truncatingTail\" tag=\"-1\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"GL8-00-Vd6\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"9d9-ef-5mD\">\n                            <items>\n                                <menuItem image=\"NSActionTemplate\" tag=\"-1\" hidden=\"YES\" id=\"29W-Zg-HYo\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"הצג\" tag=\"-1\" enabled=\"NO\" id=\"JK6-HP-t2c\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"83X-bU-gU8\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"שם תהליך\" id=\"Knq-mU-Xyu\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"4jX-xR-Vde\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"שם הדוח\" tag=\"1\" id=\"ymb-51-zC8\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"9Yt-ZP-CXj\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"W3g-2P-JBj\"/>\n                                <menuItem title=\"מיין לפי\" tag=\"-1\" enabled=\"NO\" id=\"Rfq-Kx-kub\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"xWq-oW-cf1\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"תאריכ\" id=\"Vew-KO-SYM\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"PWf-yF-FXe\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"שם\" tag=\"1\" id=\"ONn-2g-Z6J\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"NP0-Rw-xCJ\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"kV4-Gy-Y5g\">\n                    <rect key=\"frame\" x=\"34\" y=\"2\" width=\"201\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" userInterfaceLayoutDirection=\"rightToLeft\" placeholderString=\"סנן\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"vf8-7z-IX2\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"AbZ-G7-C3w\"/>\n                        <outlet property=\"nextKeyView\" destination=\"up6-IV-9dX\" id=\"fro-eH-HkL\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-55\" y=\"-538\"/>\n        </customView>\n        <menu id=\"K9J-Sc-Re6\">\n            <items>\n                <menuItem title=\"שתף\" id=\"Z85-YC-iqx\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"שתף\" id=\"fYp-Jl-UVV\">\n                        <items>\n                            <menuItem title=\"Item\" id=\"mcY-bs-XBY\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"77W-Wm-C8z\"/>\n                <menuItem title=\"הצג ב-Finder\" id=\"1tQ-M6-BhY\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"VM3-SG-pFL\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"wYO-OM-Zfy\"/>\n                <menuItem title=\"העבר לפח\" id=\"H9t-ba-DIj\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-2\" id=\"5Yv-gc-anj\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"העבר את כל הדוחות של \\XXXX&quot; לפח\" alternate=\"YES\" id=\"bpu-1P-Sum\">\n                    <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-2\" id=\"jz9-Pm-lkY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"265\" y=\"167\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICrashLogsSourceSmartEditorWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourceSmartEditorWindowController\">\n            <connections>\n                <outlet property=\"_defaultButton\" destination=\"Vz1-eq-Bkn\" id=\"5aX-ze-jQK\"/>\n                <outlet property=\"_descriptionTextField\" destination=\"ZDo-yP-EKy\" id=\"4xH-ud-SgF\"/>\n                <outlet property=\"_nameTextField\" destination=\"xBE-Xe-jfR\" id=\"MHn-8t-z8e\"/>\n                <outlet property=\"_predicatorEditor\" destination=\"jDY-Qj-m2x\" id=\"FoF-WG-5OS\"/>\n                <outlet property=\"window\" destination=\"6Nx-tZ-z08\" id=\"xRR-dz-5L0\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"\" animationBehavior=\"default\" id=\"6Nx-tZ-z08\" customClass=\"CUICrashLogsSourceSmartEditorPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"272\" y=\"172\" width=\"770\" height=\"425\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"500\" height=\"300\"/>\n            <view key=\"contentView\" id=\"faP-Uk-3iG\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"770\" height=\"425\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"gOj-hZ-3PD\">\n                        <rect key=\"frame\" x=\"20\" y=\"61\" width=\"730\" height=\"253\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"hPl-qb-BPf\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"728\" height=\"251\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <predicateEditor verticalHuggingPriority=\"750\" nestingMode=\"compound\" formattingStringsFilename=\"Predicates\" rowHeight=\"32\" id=\"jDY-Qj-m2x\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"728\" height=\"251\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <rowTemplates/>\n                                </predicateEditor>\n                            </subviews>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"qAm-Sw-0Kh\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"360\" height=\"15\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"7TB-Eg-mtV\">\n                            <rect key=\"frame\" x=\"336\" y=\"1\" width=\"15\" height=\"84\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"xBE-Xe-jfR\" id=\"VQF-PC-qyE\"/>\n                        </connections>\n                    </scrollView>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"l74-1V-jTB\">\n                        <rect key=\"frame\" x=\"711\" y=\"386\" width=\"27\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"right\" title=\"שׁם:\" id=\"reH-vX-GUc\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"xBE-Xe-jfR\">\n                        <rect key=\"frame\" x=\"20\" y=\"383\" width=\"685\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"vms-yZ-h6X\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"ZDo-yP-EKy\" id=\"KLi-H6-FaN\"/>\n                        </connections>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"ZDo-yP-EKy\">\n                        <rect key=\"frame\" x=\"20\" y=\"354\" width=\"685\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"NHO-Tg-DVY\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"jDY-Qj-m2x\" id=\"7GQ-Ig-FpW\"/>\n                        </connections>\n                    </textField>\n                    <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"Vz1-eq-Bkn\">\n                        <rect key=\"frame\" x=\"14\" y=\"13\" width=\"82\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"אישור\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"XBD-qh-UfL\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nDQ\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"WvP-6v-END\"/>\n                        </connections>\n                    </button>\n                    <button verticalHuggingPriority=\"750\" id=\"V1T-Ch-XmL\">\n                        <rect key=\"frame\" x=\"103\" y=\"13\" width=\"71\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"ביטול\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"wdm-Py-Aj7\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nGw\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"Bzy-Dz-sSF\"/>\n                        </connections>\n                    </button>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scv-qL-eIO\">\n                        <rect key=\"frame\" x=\"711\" y=\"357\" width=\"41\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"right\" title=\"תיאור:\" id=\"zQj-c9-rhZ\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gZy-Gi-lVS\">\n                        <rect key=\"frame\" x=\"574\" y=\"322\" width=\"178\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" title=\"רשום את כל הדוחות התואמים:\" id=\"yeg-vI-i3G\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"101\" y=\"-846.5\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUICrashLogsSourcesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourcesViewController\">\n            <connections>\n                <outlet property=\"_actionPopUpButton\" destination=\"sKM-ic-Jtc\" id=\"iwb-q5-Ljf\"/>\n                <outlet property=\"_removeButton\" destination=\"FnB-m4-Sew\" id=\"wN7-Xv-wbV\"/>\n                <outlet property=\"_tableView\" destination=\"qaX-hd-IQc\" id=\"7TK-LI-fbH\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"204\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"26\" horizontalPageScroll=\"10\" verticalLineScroll=\"26\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jOq-q2-5j4\">\n                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"294\" height=\"185\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"V1I-rp-JOe\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"292\" height=\"183\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"firstColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"24\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"qaX-hd-IQc\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"183\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"288\" minWidth=\"40\" maxWidth=\"3000\" id=\"8eI-mT-cek\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"6Aq-8j-jza\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"regular\" id=\"V1Z-VM-OSw\" customClass=\"CUICrashLogsSourceTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"288\" height=\"24\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"CHR-0u-IlO\">\n                                                        <rect key=\"frame\" x=\"53\" y=\"4\" width=\"211\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"nc6-Rz-iCi\">\n                                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeSourceNameFrom:\" target=\"-2\" id=\"mWi-p6-3aT\"/>\n                                                        </connections>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"oo6-n4-B90\">\n                                                        <rect key=\"frame\" x=\"269\" y=\"4\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"4kJ-0G-1fI\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"FRn-Dx-rid\" customClass=\"CUICaptionView\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"4\" width=\"45\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"gba-xW-dcj\">\n                                                            <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"countTextField\" destination=\"FRn-Dx-rid\" id=\"Ifb-AG-5YH\"/>\n                                                    <outlet property=\"imageView\" destination=\"oo6-n4-B90\" id=\"Oxn-bE-uRy\"/>\n                                                    <outlet property=\"textField\" destination=\"CHR-0u-IlO\" id=\"X4V-af-tuu\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"separator\" id=\"HDp-BB-XMC\">\n                                                <rect key=\"frame\" x=\"1\" y=\"27\" width=\"288\" height=\"12\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"LMg-V2-t05\">\n                                                        <rect key=\"frame\" x=\"12\" y=\"4\" width=\"264\" height=\"4\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                    </box>\n                                                </subviews>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Rbs-pr-q0d\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"zhS-3Z-X2w\"/>\n                                    <outlet property=\"menu\" destination=\"HyN-lT-5sn\" id=\"71y-43-qQ2\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                        <nil key=\"backgroundColor\"/>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"T63-2m-Wdk\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"QtW-2T-sMx\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <button toolTip=\"Remove file, folder or smart source\" verticalHuggingPriority=\"750\" id=\"FnB-m4-Sew\">\n                    <rect key=\"frame\" x=\"236\" y=\"-2\" width=\"25\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSRemoveTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"ocB-wp-jcr\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"removeSources:\" target=\"-2\" id=\"I1p-xT-TZx\"/>\n                    </connections>\n                </button>\n                <popUpButton id=\"sKM-ic-Jtc\">\n                    <rect key=\"frame\" x=\"-2\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"MSJ-wy-0Je\" id=\"lEb-Ag-E8W\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"LzV-Lh-Udh\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSActionTemplate\" hidden=\"YES\" id=\"MSJ-wy-0Je\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"ייצא…\" id=\"9dK-mu-DL0\">\n                                    <connections>\n                                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"PmO-aB-nyF\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"2ub-md-RCd\"/>\n                                <menuItem title=\"הצג ב-Finder\" id=\"pSl-d5-liK\">\n                                    <connections>\n                                        <action selector=\"showInFinder:\" target=\"-2\" id=\"wFv-E8-fC9\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <popUpButton toolTip=\"Add file, folder or smart source\" id=\"Fjw-36-xHZ\">\n                    <rect key=\"frame\" x=\"261\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"DJQ-Va-eqw\" id=\"w3m-zi-K88\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"vOh-MW-SiJ\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSAddTemplate\" hidden=\"YES\" id=\"DJQ-Va-eqw\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"מקור חכם חדש…\" id=\"HSw-t4-mnl\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-2\" id=\"mMA-Im-5Li\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"FFc-YN-a1b\"/>\n                                <menuItem title=\"הוסף קובץ או תיקיה…\" id=\"r1o-zR-BIu\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSource:\" target=\"-2\" id=\"1HN-pX-hYb\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"118\" y=\"-406\"/>\n        </customView>\n        <menu id=\"HyN-lT-5sn\">\n            <items>\n                <menuItem title=\"ערוך…\" id=\"Twv-NI-xzw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"KCD-e6-KYn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"qHD-mG-1OK\"/>\n                <menuItem title=\"ייצא…\" id=\"WOP-2L-vqA\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-2\" id=\"VBk-ZW-3Ao\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"lae-j9-hK9\"/>\n                <menuItem title=\"הצג ב-Finder\" id=\"teN-5F-Oei\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"Lf6-Pc-sdu\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"b4u-wr-KQQ\"/>\n                <menuItem title=\"מיין לפי שם\" id=\"QXy-jw-g6a\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"sortByName:\" target=\"-2\" id=\"yf0-Rb-nOY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-266\" y=\"-716\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIExportAccessoryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIExportAccessoryViewController\">\n            <connections>\n                <outlet property=\"_allContentsRadioButton\" destination=\"lQT-bg-eZT\" id=\"Mpw-Xc-7kK\"/>\n                <outlet property=\"_formatPopUpButton\" destination=\"1u4-74-6Q1\" id=\"Nog-Ao-3bb\"/>\n                <outlet property=\"_obfuscateContentsRadioButton\" destination=\"Sah-MT-0mU\" id=\"6tk-6f-82q\"/>\n                <outlet property=\"_obfuscateDescriptionLabel\" destination=\"hAW-cU-fmj\" id=\"J6U-yP-9ZY\"/>\n                <outlet property=\"_selectionOnlyRadioButton\" destination=\"yCi-24-cSg\" id=\"hjW-mF-lCx\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"608\" height=\"199\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"1u4-74-6Q1\">\n                    <rect key=\"frame\" x=\"222\" y=\"155\" width=\"81\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"HTML\" bezelStyle=\"rounded\" alignment=\"right\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" userInterfaceLayoutDirection=\"rightToLeft\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"lK1-XA-eFw\" id=\"3tZ-5v-KqQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"NIf-x2-QG2\">\n                            <items>\n                                <menuItem title=\"HTML\" state=\"on\" id=\"lK1-XA-eFw\"/>\n                                <menuItem title=\"RTF\" tag=\"1\" id=\"OPJ-uJ-ymt\"/>\n                                <menuItem title=\"PDF\" tag=\"2\" id=\"Hq6-BX-2O0\"/>\n                                <menuItem title=\"מלל\" tag=\"3\" id=\"P5V-Km-rMe\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchExportFormat:\" target=\"-2\" id=\"J2A-b6-fHB\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ra9-fZ-6EK\">\n                    <rect key=\"frame\" x=\"305\" y=\"160\" width=\"53\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"פורמט:\" id=\"kgo-g3-HQW\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"lQT-bg-eZT\">\n                    <rect key=\"frame\" x=\"185\" y=\"123\" width=\"117\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"דו&quot;ח מלא\" bezelStyle=\"regularSquare\" imagePosition=\"right\" alignment=\"right\" inset=\"2\" id=\"pba-yN-6P5\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"uaB-9C-u9X\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"yCi-24-cSg\">\n                    <rect key=\"frame\" x=\"185\" y=\"102\" width=\"117\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"רק טקסט נבחר\" bezelStyle=\"regularSquare\" imagePosition=\"right\" alignment=\"right\" inset=\"2\" id=\"kfb-cJ-elR\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"GTa-iX-bQ5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"cJJ-vN-i8N\">\n                    <rect key=\"frame\" x=\"305\" y=\"124\" width=\"73\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"תוכן מיוצא:\" id=\"buk-Aw-yVe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Sah-MT-0mU\">\n                    <rect key=\"frame\" x=\"184\" y=\"67\" width=\"118\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"ערפל את התוכן\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"q4d-rg-bxC\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchObfuscateContents:\" target=\"-2\" id=\"KP6-NQ-Lhn\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"hAW-cU-fmj\">\n                    <rect key=\"frame\" x=\"12\" y=\"20\" width=\"272\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" userInterfaceLayoutDirection=\"rightToLeft\" alignment=\"right\" title=\"השמות, הנתיבים והסמלים של התמונות הבינאריות הניתנות להפעלה ושל התמונות הבינאריות שאינן מערכתיות יהיו מעורפלים.\" id=\"Zju-hf-3Ou\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-22\" y=\"-142.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIInspectorExecutableViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorExecutableViewController\">\n            <connections>\n                <outlet property=\"_codeSigningButton\" destination=\"qo2-XU-d0U\" id=\"CJF-Hf-ZLA\"/>\n                <outlet property=\"_executableArchitectureValue\" destination=\"FHg-iH-xDN\" id=\"gZP-1i-Ula\"/>\n                <outlet property=\"_executableIconView\" destination=\"Sae-Ke-hDq\" id=\"ypT-Mj-Zdm\"/>\n                <outlet property=\"_executableNameValue\" destination=\"Lro-Zd-nK3\" id=\"TjT-bg-eaE\"/>\n                <outlet property=\"_executablePathShowButton\" destination=\"HUC-Md-GwA\" id=\"XhF-6S-OEB\"/>\n                <outlet property=\"_executablePathValue\" destination=\"vJ5-dm-szr\" id=\"r17-Kq-oCv\"/>\n                <outlet property=\"_executableVersionValue\" destination=\"gDy-ag-3pH\" id=\"Yag-xh-PfZ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"180\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gDy-ag-3pH\">\n                    <rect key=\"frame\" x=\"18\" y=\"108\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" alignment=\"right\" title=\"-\" id=\"IMe-4e-a2n\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ycX-86-LPH\">\n                    <rect key=\"frame\" x=\"299\" y=\"43\" width=\"33\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"מָקוֹם:\" id=\"SZn-tV-fDm\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3RL-Kg-wqv\">\n                    <rect key=\"frame\" x=\"299\" y=\"71\" width=\"69\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"ארכיטקטורת:\" id=\"gXy-9k-Kye\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"vJ5-dm-szr\">\n                    <rect key=\"frame\" x=\"18\" y=\"15\" width=\"277\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" selectable=\"YES\" title=\"-\" id=\"wdP-NI-1D3\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Lro-Zd-nK3\">\n                    <rect key=\"frame\" x=\"18\" y=\"125\" width=\"277\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" alignment=\"right\" title=\"-\" id=\"jis-EI-eF4\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"Sae-Ke-hDq\">\n                    <rect key=\"frame\" x=\"301\" y=\"101\" width=\"48\" height=\"48\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"ctr-8J-DUa\"/>\n                </imageView>\n                <button verticalHuggingPriority=\"750\" mirrorLayoutDirectionWhenInternationalizing=\"never\" id=\"HUC-Md-GwA\">\n                    <rect key=\"frame\" x=\"3\" y=\"15\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" baseWritingDirection=\"rightToLeft\" userInterfaceLayoutDirection=\"rightToLeft\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"R8w-To-3V9\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showExecutableInFinder:\" target=\"-2\" id=\"tyZ-In-ieS\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"FHg-iH-xDN\">\n                    <rect key=\"frame\" x=\"18\" y=\"71\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"-\" id=\"sgJ-ZE-akF\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"JP3-16-pwL\">\n                    <rect key=\"frame\" x=\"313\" y=\"160\" width=\"61\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"קובץ הרצה\" id=\"hb6-Qr-SQw\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"qo2-XU-d0U\">\n                    <rect key=\"frame\" x=\"3\" y=\"161\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSLockLockedTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"ybD-8s-3Bp\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showCodeSigningInformation:\" target=\"-2\" id=\"HbC-HJ-FnG\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-51.5\" y=\"-186\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSLockLockedTemplate\" width=\"10\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIInspectorGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorGeneralViewController\">\n            <connections>\n                <outlet property=\"_bridgeOSVersionValue\" destination=\"BfS-1Q-avM\" id=\"Aih-cE-fUa\"/>\n                <outlet property=\"_crashDateValue\" destination=\"aeZ-E8-L6d\" id=\"N7P-8g-o9B\"/>\n                <outlet property=\"_operatingSystemVersionLabel\" destination=\"TdJ-MQ-6CN\" id=\"On3-gp-MLA\"/>\n                <outlet property=\"_operatingSystemVersionValue\" destination=\"SgG-rE-gjS\" id=\"6hk-jF-Az8\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"s8b-in-hjv\">\n                    <rect key=\"frame\" x=\"299\" y=\"59\" width=\"38\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"תאריכ:\" id=\"f0C-O7-hfc\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aeZ-E8-L6d\">\n                    <rect key=\"frame\" x=\"12\" y=\"59\" width=\"283\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" id=\"4oA-j1-qqu\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                    <connections>\n                        <outlet property=\"formatter\" destination=\"CAS-2z-CXR\" id=\"o5J-Fr-jq7\"/>\n                    </connections>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"SgG-rE-gjS\">\n                    <rect key=\"frame\" x=\"18\" y=\"37\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" id=\"IoO-4Y-BLi\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TdJ-MQ-6CN\">\n                    <rect key=\"frame\" x=\"299\" y=\"37\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\":macOS\" id=\"B2h-K8-1XC\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ai6-kr-ddH\">\n                    <rect key=\"frame\" x=\"299\" y=\"15\" width=\"61\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\":Bridge OS\" id=\"hKB-kb-Fu1\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Eku-en-ffA\">\n                    <rect key=\"frame\" x=\"345\" y=\"83\" width=\"34\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" title=\"כללי\" id=\"Slr-R1-4oS\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"BfS-1Q-avM\">\n                    <rect key=\"frame\" x=\"18\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" title=\"-\" id=\"JiY-vk-jYf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"69.5\"/>\n        </customView>\n        <dateFormatter dateStyle=\"long\" timeStyle=\"medium\" id=\"CAS-2z-CXR\"/>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIInspectorProcessesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorProcessesViewController\">\n            <connections>\n                <outlet property=\"_parentProcessNameValue\" destination=\"sdS-1T-5A6\" id=\"YdX-gO-EHR\"/>\n                <outlet property=\"_processNameValue\" destination=\"dWY-e9-8s7\" id=\"kaZ-i4-xhx\"/>\n                <outlet property=\"_responsibleProcessNameValue\" destination=\"UYO-VY-Dyh\" id=\"hqs-KJ-tM6\"/>\n                <outlet property=\"view\" destination=\"rFj-qp-YPZ\" id=\"SDI-BY-k6p\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"rFj-qp-YPZ\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"4uB-ml-0Ol\">\n                    <rect key=\"frame\" x=\"299\" y=\"15\" width=\"39\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"אחראי:\" id=\"jqz-4F-VO7\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UYO-VY-Dyh\">\n                    <rect key=\"frame\" x=\"18\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" alignment=\"right\" title=\"-\" id=\"pZF-sh-MrA\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hLm-Sv-QmR\">\n                    <rect key=\"frame\" x=\"298\" y=\"37\" width=\"56\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"תהליך אב:\" id=\"LQg-a2-eTx\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"S5n-dU-r4J\">\n                    <rect key=\"frame\" x=\"299\" y=\"59\" width=\"39\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"תהליך:\" id=\"cvR-Mj-EZK\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dWY-e9-8s7\">\n                    <rect key=\"frame\" x=\"18\" y=\"59\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" alignment=\"right\" title=\"-\" id=\"Oa8-vR-6jZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hD5-0s-riR\">\n                    <rect key=\"frame\" x=\"331\" y=\"83\" width=\"48\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" title=\"תהליכים\" id=\"Peb-bL-MXn\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"sdS-1T-5A6\">\n                    <rect key=\"frame\" x=\"18\" y=\"37\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" alignment=\"right\" title=\"-\" id=\"2qk-DS-kXk\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-1.5\" y=\"-239.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIInspectorUserViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorUserViewController\">\n            <connections>\n                <outlet property=\"_userIDValue\" destination=\"bZr-jf-89d\" id=\"3zx-IQ-gXi\"/>\n                <outlet property=\"view\" destination=\"3rg-3s-egq\" id=\"NYa-HK-UvG\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"3rg-3s-egq\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"52\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Hlm-9j-k55\">\n                    <rect key=\"frame\" x=\"332\" y=\"34\" width=\"47\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"משתמש\" id=\"SsR-D5-bkx\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"peF-fl-SHq\">\n                    <rect key=\"frame\" x=\"299\" y=\"15\" width=\"79\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"מזהה משתמש:\" id=\"qra-Pb-I2W\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"bZr-jf-89d\">\n                    <rect key=\"frame\" x=\"18\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"right\" id=\"cqQ-PI-zPB\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"158\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUILineJumperWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUILineJumperWindowController\">\n            <connections>\n                <outlet property=\"_lineNumberField\" destination=\"Hsy-sF-ru8\" id=\"Szf-Gn-kjq\"/>\n                <outlet property=\"_resetButton\" destination=\"dIW-wv-LKd\" id=\"vVJ-Nt-akO\"/>\n                <outlet property=\"window\" destination=\"mSG-cx-fbW\" id=\"fe5-gS-1Ha\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" hidesOnDeactivate=\"YES\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.lineNumber\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titlebarAppearsTransparent=\"YES\" id=\"mSG-cx-fbW\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" fullSizeContentView=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenNone=\"YES\" fullScreenDisallowsTiling=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"384\" height=\"49\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"Xph-p4-B8X\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"384\" height=\"49\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" id=\"Hsy-sF-ru8\">\n                        <rect key=\"frame\" x=\"192\" y=\"11\" width=\"147\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" focusRingType=\"none\" alignment=\"right\" placeholderString=\"מספר שורה\" usesSingleLineMode=\"YES\" id=\"Ju2-zH-bhG\">\n                            <font key=\"font\" metaFont=\"system\" size=\"21\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <action selector=\"takeLineNumberFrom:\" target=\"-2\" id=\"d6v-mK-cXL\"/>\n                            <outlet property=\"delegate\" destination=\"-2\" id=\"X5a-vS-Tae\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dpK-Gf-az3\">\n                        <rect key=\"frame\" x=\"343\" y=\"10\" width=\"32\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"center\" title=\"#\" id=\"x4t-M3-5dd\">\n                            <font key=\"font\" metaFont=\"system\" size=\"30\"/>\n                            <color key=\"textColor\" name=\"tertiaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <button hidden=\"YES\" verticalHuggingPriority=\"750\" id=\"dIW-wv-LKd\">\n                        <rect key=\"frame\" x=\"19\" y=\"14\" width=\"20\" height=\"20\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"NSStopProgressFreestandingTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"AFZ-Xq-Pjf\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"reset:\" target=\"-2\" id=\"XzM-AA-Vzv\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"awR-rx-pPU\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"Hsy-sF-ru8\" id=\"j6W-l3-TNl\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"177\" y=\"-15\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSStopProgressFreestandingTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIMainWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIMainWindowController\">\n            <connections>\n                <outlet property=\"_mainLayoutSegmentedControl\" destination=\"WIY-fY-uf6\" id=\"gGf-x3-UnW\"/>\n                <outlet property=\"_presentationModeSegmentedControl\" destination=\"FpB-c3-RI5\" id=\"7TU-rc-fDv\"/>\n                <outlet property=\"_registersWindowButton\" destination=\"tOu-D2-Ept\" id=\"pD9-s6-b6U\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Unexpectedly\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.main\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titleVisibility=\"hidden\" id=\"F0z-JX-Cv5\" customClass=\"CUIMainWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" topStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"701\" y=\"761\" width=\"1210\" height=\"576\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1577\"/>\n            <value key=\"minSize\" type=\"size\" width=\"1210\" height=\"576\"/>\n            <view key=\"contentView\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1210\" height=\"576\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"E5E3FE75-B923-4050-8328-E8DBF77270DA\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"qok-Nh-ZqX\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"4BB16A90-DFB3-4B72-BC1E-0501635805D9\" label=\"אוגרים\" paletteLabel=\"אוגרים\" toolTip=\"הצג או הסתר את חלון של אוגרים\" id=\"odd-p2-xXV\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"tOu-D2-Ept\">\n                            <rect key=\"frame\" x=\"6\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"א\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"pn6-k3-IBk\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"systemBold\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-2\" id=\"zOP-ux-zx8\"/>\n                            </connections>\n                        </button>\n                        <connections>\n                            <action selector=\"showRegisters:\" target=\"-1\" id=\"Q3j-xK-Hru\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FE3CBB7D-3C62-4B2B-84C4-A0F949E6FC9B\" label=\"Symbolicate\" paletteLabel=\"Symbolicate\" toolTip=\"Symbolicate\" id=\"NBt-t6-6de\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"zGe-P2-PLz\">\n                            <rect key=\"frame\" x=\"22\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"✭\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"bkf-LP-EE1\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                        </button>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_champollion:\" target=\"-1\" id=\"YYP-Ms-rO2\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"CEEABC9B-6A22-4363-9CEF-97F246735D7F\" explicitItemIdentifier=\"presentation.mode\" label=\"Presentation Mode\" paletteLabel=\"Presentation Mode\" sizingBehavior=\"auto\" id=\"lTL-ew-HB0\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"FpB-c3-RI5\">\n                            <rect key=\"frame\" x=\"18\" y=\"14\" width=\"71\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectOne\" id=\"esc-Se-3Gu\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"מתווה\" image=\"presentation_structured_Template\" width=\"32\" tag=\"1\"/>\n                                    <segment toolTip=\"מלל\" image=\"presentation_text_Template\" width=\"32\" selected=\"YES\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"8Dc-fR-ko8\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"651A8C40-7DF7-49AE-B98F-F204C20338E7\" label=\"Areas\" paletteLabel=\"Areas\" sizingBehavior=\"auto\" id=\"dDG-Jy-kkI\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"WIY-fY-uf6\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"14\" width=\"104\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectAny\" id=\"IFc-bQ-yuq\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"הסתר או הצג את סרגל הצד\" image=\"left_switch_Template\" width=\"32\" selected=\"YES\" tag=\"2\"/>\n                                    <segment toolTip=\"הסתר או הצג את קבצים בינאריים\" image=\"middle_switch_Template\" width=\"32\" enabled=\"NO\" tag=\"1\"/>\n                                    <segment toolTip=\"הסתר או הצג את הסוקר\" image=\"right_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"showHideViews:\" target=\"-1\" id=\"q9p-Cx-Zfc\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowColorsItem\" id=\"Ll5-CG-7p5\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowFontsItem\" id=\"5Ai-UD-BMY\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarPrintItem\" id=\"OVf-DI-Wek\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarSpaceItem\" id=\"1s5-E7-9Hl\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarFlexibleSpaceItem\" id=\"QhD-Oy-cTl\"/>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"QhD-Oy-cTl\"/>\n                    <toolbarItem reference=\"odd-p2-xXV\"/>\n                    <toolbarItem reference=\"1s5-E7-9Hl\"/>\n                    <toolbarItem reference=\"lTL-ew-HB0\"/>\n                    <toolbarItem reference=\"dDG-Jy-kkI\"/>\n                </defaultToolbarItems>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"se5-gp-TjO\" id=\"Ndk-U6-g06\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"279\" y=\"-1395\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"left_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"middle_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"presentation_structured_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"presentation_text_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"right_switch_Template\" width=\"18\" height=\"16\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePaneAdvancedViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneAdvancedViewController\">\n            <connections>\n                <outlet property=\"_remoteVersionCheckerCheckbox\" destination=\"90R-sA-w2P\" id=\"ZPS-qK-ptZ\"/>\n                <outlet property=\"_showDebugMenuCheckbox\" destination=\"ysx-uw-uYe\" id=\"ASL-W1-sIo\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"116\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"90R-sA-w2P\">\n                    <rect key=\"frame\" x=\"190\" y=\"78\" width=\"194\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"חפש אוטומטית אם יש עדכונים\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"xZp-NR-s8v\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchRemoteVersionCheck:\" target=\"-2\" id=\"vQo-sV-T4X\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"cfR-UU-mmm\">\n                    <rect key=\"frame\" x=\"388\" y=\"79\" width=\"79\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"right\" title=\"עדכוני תוכנה:\" id=\"gEo-19-sz4\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"7cp-2p-HDv\">\n                    <rect key=\"frame\" x=\"30\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <button verticalHuggingPriority=\"750\" id=\"ysx-uw-uYe\">\n                    <rect key=\"frame\" x=\"123\" y=\"18\" width=\"261\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"הצג את תפריט ״לנפות״ בשורת התפריטים\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"7Aq-aa-8q1\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDebugMenu:\" target=\"-2\" id=\"JpC-OR-CwY\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"140\" y=\"65\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePaneCrashreporterViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneCrashreporterViewController\">\n            <connections>\n                <outlet property=\"_dialogTypeGroup\" destination=\"G3J-O5-TdF\" id=\"ZfW-ac-1tR\"/>\n                <outlet property=\"_notificationModeGroup\" destination=\"7ak-aK-Hz3\" id=\"2VA-sI-h8f\"/>\n                <outlet property=\"_reportUncaughtExceptionsCheckbox\" destination=\"k0s-Jp-SYV\" id=\"GO5-qu-ZEq\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"222\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"wjm-1k-GIP\">\n                    <rect key=\"frame\" x=\"384\" y=\"76\" width=\"94\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"אופן ההתראה:\" id=\"Ipc-sm-G5f\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"G3J-O5-TdF\">\n                    <rect key=\"frame\" x=\"191\" y=\"107\" width=\"189\" height=\"60\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button toolTip=\"The Unexpectedly Quit dialog is displayed for all processes run by the user.\" verticalHuggingPriority=\"750\" tag=\"1\" id=\"q4r-Gy-3Z5\">\n                            <rect key=\"frame\" x=\"132\" y=\"21\" width=\"58\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"מפתח\" bezelStyle=\"regularSquare\" imagePosition=\"right\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"Tjt-95-3Z2\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"hvp-pX-cgQ\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"The Unexpectedly Quit dialog is never displayed.\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"i8F-ge-i9c\">\n                            <rect key=\"frame\" x=\"139\" y=\"-1\" width=\"50\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"שרת\" bezelStyle=\"regularSquare\" imagePosition=\"right\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"l5e-xv-Kdo\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"eST-mh-Dhc\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"The Unexpectedly Quit dialog is only displayed for application crashes.\" verticalHuggingPriority=\"750\" id=\"KDV-3D-Zmr\">\n                            <rect key=\"frame\" x=\"134\" y=\"43\" width=\"55\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"בסיסי\" bezelStyle=\"regularSquare\" imagePosition=\"right\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"8un-EB-HxH\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"K5B-SF-Gng\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <customView id=\"7ak-aK-Hz3\">\n                    <rect key=\"frame\" x=\"191\" y=\"54\" width=\"189\" height=\"38\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"AhZ-xe-s0x\">\n                            <rect key=\"frame\" x=\"137\" y=\"-1\" width=\"52\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"עדכון\" bezelStyle=\"regularSquare\" imagePosition=\"right\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"1LC-JU-zMZ\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"Zpu-SM-Vup\"/>\n                            </connections>\n                        </button>\n                        <button verticalHuggingPriority=\"750\" id=\"nMG-po-tCI\">\n                            <rect key=\"frame\" x=\"92\" y=\"21\" width=\"97\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"תיבת דו-שיח\" bezelStyle=\"regularSquare\" imagePosition=\"right\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"2af-hi-y4e\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"M91-HQ-GhJ\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <button verticalHuggingPriority=\"750\" id=\"k0s-Jp-SYV\">\n                    <rect key=\"frame\" x=\"206\" y=\"18\" width=\"174\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"דווח על חריגים שלא נתפסו\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" inset=\"2\" id=\"b1K-o7-rhS\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchReportUncaughtException:\" target=\"-2\" id=\"eNP-mM-U1S\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3C8-jD-0F8\">\n                    <rect key=\"frame\" x=\"-2\" y=\"188\" width=\"734\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"center\" title=\".כאשר אפליקציה נסגרת באופן בלתי צפוי ב-macOS, דוח הקריסה מופק על ידי שירות Crash Reporter של Apple\" id=\"XPU-ts-yFW\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"X5h-y9-eMQ\">\n                    <rect key=\"frame\" x=\"384\" y=\"151\" width=\"77\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"אופן פעולה:\" id=\"NM5-WZ-kg0\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"27\" y=\"15\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePaneFontscolorsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneFontscolorsViewController\">\n            <connections>\n                <outlet property=\"_backgroundColorWell\" destination=\"ojb-CW-adm\" id=\"6Dn-ei-MgC\"/>\n                <outlet property=\"_categoriesClipView\" destination=\"KId-Hv-0z4\" id=\"8eQ-tz-4oA\"/>\n                <outlet property=\"_categoriesTableView\" destination=\"Guq-9s-MSe\" id=\"dF2-aT-AVo\"/>\n                <outlet property=\"_duplicateThemeButton\" destination=\"wrW-a0-5bb\" id=\"JXl-nQ-lNe\"/>\n                <outlet property=\"_fontLabel\" destination=\"Gpc-y1-LVL\" id=\"vcf-Hl-1cN\"/>\n                <outlet property=\"_fontPanelButton\" destination=\"VXB-fG-DZO\" id=\"mWq-3d-jcw\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"ECK-8n-jgQ\" id=\"KJN-cp-7TP\"/>\n                <outlet property=\"_removeThemeButton\" destination=\"BeX-wG-c8S\" id=\"P2N-JL-pTj\"/>\n                <outlet property=\"_selectedTextColorWell\" destination=\"smi-ou-IW9\" id=\"SYJ-hQ-CeL\"/>\n                <outlet property=\"_textColorWell\" destination=\"d1A-uU-J9j\" id=\"GSq-6Z-18d\"/>\n                <outlet property=\"_textSelectionBackgroundColorWell\" destination=\"tI7-g9-Ub1\" id=\"Tqn-nk-Zpu\"/>\n                <outlet property=\"_themesTableView\" destination=\"RzM-ng-eMk\" id=\"a50-ng-EZi\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"M45-au-HoK\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"488\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"x9E-yq-Bgj\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"20\" y=\"53\" width=\"513\" height=\"415\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"oxm-RF-gwN\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"413\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"ECK-8n-jgQ\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"389\" width=\"511\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"UoY-kV-fnd\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"210\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"מלל\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"yUb-rK-XWX\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"tKJ-wP-cns\"/>\n                                        </connections>\n                                    </button>\n                                    <button hidden=\"YES\" tag=\"1\" id=\"PFb-pf-cDg\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"273\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"מתווה\" bezelStyle=\"regularSquare\" alignment=\"center\" enabled=\"NO\" tag=\"1\" inset=\"2\" id=\"0bp-JB-hgi\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"CaH-UR-hXI\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"ojb-CW-adm\">\n                                <rect key=\"frame\" x=\"412\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeBackgroundColor:\" target=\"-2\" id=\"5mu-v3-HFf\"/>\n                                </connections>\n                            </colorWell>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"0qd-wx-JZe\">\n                                <rect key=\"frame\" x=\"461\" y=\"16\" width=\"32\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"רקע:\" id=\"tXe-F9-mz7\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"x6u-0C-glq\">\n                                <rect key=\"frame\" x=\"267\" y=\"16\" width=\"51\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"בחירה:\" id=\"5b7-64-CqX\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <customView id=\"skb-ts-Qkm\" customClass=\"CUIFontAndColorsFramedView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"56\" width=\"511\" height=\"38\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                <subviews>\n                                    <colorWell id=\"d1A-uU-J9j\">\n                                        <rect key=\"frame\" x=\"218\" y=\"6\" width=\"23\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                        <connections>\n                                            <action selector=\"takeTextColor:\" target=\"-2\" id=\"gBS-3n-BGc\"/>\n                                        </connections>\n                                    </colorWell>\n                                    <customView id=\"cxK-bc-95I\" customClass=\"CUIFontBoxView\">\n                                        <rect key=\"frame\" x=\"249\" y=\"7\" width=\"251\" height=\"22\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                        <subviews>\n                                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Gpc-y1-LVL\">\n                                                <rect key=\"frame\" x=\"29\" y=\"3\" width=\"216\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" title=\"Label\" id=\"NnJ-xy-baM\">\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                </textFieldCell>\n                                            </textField>\n                                            <button verticalHuggingPriority=\"750\" id=\"VXB-fG-DZO\">\n                                                <rect key=\"frame\" x=\"5\" y=\"2\" width=\"18\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <buttonCell key=\"cell\" type=\"bevel\" title=\"Button\" bezelStyle=\"rounded\" image=\"FontPanelButton\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"PCX-V4-Ul7\">\n                                                    <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                </buttonCell>\n                                                <connections>\n                                                    <action selector=\"showFontPanel:\" target=\"-2\" id=\"TXC-Hh-5Tn\"/>\n                                                </connections>\n                                            </button>\n                                        </subviews>\n                                    </customView>\n                                </subviews>\n                            </customView>\n                            <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"kKc-J1-3fa\">\n                                <rect key=\"frame\" x=\"-1\" y=\"92\" width=\"513\" height=\"298\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"KId-Hv-0z4\" customClass=\"CUICategoriesClipView\">\n                                    <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"296\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <subviews>\n                                        <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"Guq-9s-MSe\">\n                                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"511\" height=\"296\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                            <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <tableColumns>\n                                                <tableColumn width=\"508\" minWidth=\"40\" maxWidth=\"1000\" id=\"3xQ-tZ-j4q\">\n                                                    <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                                        <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </tableHeaderCell>\n                                                    <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"tik-bw-vkv\">\n                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </textFieldCell>\n                                                    <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                                    <prototypeCellViews>\n                                                        <tableCellView id=\"qJj-ED-VEr\">\n                                                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"508\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                            <subviews>\n                                                                <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"S4j-JX-cuc\">\n                                                                    <rect key=\"frame\" x=\"5\" y=\"0.0\" width=\"502\" height=\"17\"/>\n                                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QoQ-Ln-Apy\" customClass=\"CUIAATextFieldCell\">\n                                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                    </textFieldCell>\n                                                                </textField>\n                                                            </subviews>\n                                                            <connections>\n                                                                <outlet property=\"textField\" destination=\"S4j-JX-cuc\" id=\"bvA-qp-OES\"/>\n                                                            </connections>\n                                                        </tableCellView>\n                                                    </prototypeCellViews>\n                                                </tableColumn>\n                                            </tableColumns>\n                                            <connections>\n                                                <outlet property=\"dataSource\" destination=\"-2\" id=\"0Vt-up-xeZ\"/>\n                                                <outlet property=\"delegate\" destination=\"-2\" id=\"peW-tT-8ce\"/>\n                                            </connections>\n                                        </tableView>\n                                    </subviews>\n                                    <nil key=\"backgroundColor\"/>\n                                </clipView>\n                                <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"Osb-Lx-voN\">\n                                    <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                                <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Yh8-lV-Sht\">\n                                    <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                            </scrollView>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E3D-RK-YW7\">\n                                <rect key=\"frame\" x=\"70\" y=\"16\" width=\"83\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"טקסט נבחר:\" id=\"hlx-fO-U4G\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <colorWell id=\"smi-ou-IW9\">\n                                <rect key=\"frame\" x=\"20\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeSelectedTextColor:\" target=\"-2\" id=\"St4-Kf-cho\"/>\n                                </connections>\n                            </colorWell>\n                            <colorWell id=\"tI7-g9-Ub1\">\n                                <rect key=\"frame\" x=\"217\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeTextSelectionBackgroundColor:\" target=\"-2\" id=\"3Lx-04-mDx\"/>\n                                </connections>\n                            </colorWell>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"28\" horizontalPageScroll=\"10\" verticalLineScroll=\"28\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"WFH-OC-tjY\">\n                    <rect key=\"frame\" x=\"543\" y=\"71\" width=\"167\" height=\"397\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"Jk0-k7-FSA\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"165\" height=\"396\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"26\" rowSizeStyle=\"automatic\" headerView=\"CBt-FS-rdj\" viewBased=\"YES\" id=\"RzM-ng-eMk\" customClass=\"CUIThemesTableView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"371\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"153\" minWidth=\"40\" maxWidth=\"1000\" id=\"8z8-zq-M80\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"center\" title=\"ערכת נושא\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"LIW-YF-0qh\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g8I-5G-l02\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"153\" height=\"26\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"tDm-Ft-Jnv\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"6\" width=\"153\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tXJ-2u-YI1\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeThemeName:\" target=\"-2\" id=\"X61-RY-efm\"/>\n                                                        </connections>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"tDm-Ft-Jnv\" id=\"kHG-t9-3y3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VVl-X3-gEs\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"qGO-er-Uo0\"/>\n                                    <outlet property=\"menu\" destination=\"eAx-eb-TeX\" id=\"6hE-7d-DjH\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"sWy-II-SrD\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"160\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Ivf-sc-bjn\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" wantsLayer=\"YES\" id=\"CBt-FS-rdj\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"BeX-wG-c8S\">\n                    <rect key=\"frame\" x=\"609\" y=\"52\" width=\"24\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"c5I-q7-mxk\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"DD1-V1-TBJ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"umy-j0-XLf\">\n                    <rect key=\"frame\" x=\"14\" y=\"13\" width=\"163\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"שחזר ברירות-המחדל\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"CuZ-Pa-zjm\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"restoreDefaults:\" target=\"-2\" id=\"Gab-8f-vLB\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"QTP-jj-Yu7\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"543\" y=\"52\" width=\"67\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"7UN-KC-FeU\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"wrW-a0-5bb\">\n                    <rect key=\"frame\" x=\"632\" y=\"52\" width=\"78\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"שכפל\" bezelStyle=\"smallSquare\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"qIb-6V-bKQ\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Xri-vW-CH4\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"54\" y=\"-910\"/>\n        </customView>\n        <menu id=\"eAx-eb-TeX\">\n            <items>\n                <menuItem title=\"שכפל\" id=\"RpP-Yq-5CH\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Afi-lx-Njn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"מחק…\" id=\"pgM-Ek-dMO\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"Rjs-es-rtG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"Zf1-4a-jgB\"/>\n                <menuItem title=\"ייבא ערכת נושא…\" id=\"5HI-nQ-F9G\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"importTheme:\" target=\"-2\" id=\"cy6-qV-ueG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"ייצא ערכת נושא…\" id=\"9mp-BZ-63A\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"exportTheme:\" target=\"-2\" id=\"6h3-pb-u8c\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-298\" y=\"-640\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"FontPanelButton\" width=\"18\" height=\"18\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePaneGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneGeneralViewController\">\n            <connections>\n                <outlet property=\"_reportViewersPopUpButton\" destination=\"Ytb-pg-OA0\" id=\"1lY-Op-uq4\"/>\n                <outlet property=\"_showsRegistersWindowAtLaunchCheckbox\" destination=\"c18-Y4-l7a\" id=\"9YA-wO-PX5\"/>\n                <outlet property=\"_sourceEditorsPopUpButton\" destination=\"INA-cz-CFq\" id=\"ewg-BF-pgR\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"152\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Tow-sZ-5fR\">\n                    <rect key=\"frame\" x=\"388\" y=\"79\" width=\"167\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"פתח הת קבצי קוד באמצעות:\" id=\"v8S-NF-Ptc\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"c18-Y4-l7a\">\n                    <rect key=\"frame\" x=\"241\" y=\"116\" width=\"143\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"הצג את החלון אוגרים\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"7Qp-I2-soX\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsRegisterWindowAtLaunch:\" target=\"-2\" id=\"chH-Vd-P2e\"/>\n                    </connections>\n                </button>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"INA-cz-CFq\">\n                    <rect key=\"frame\" x=\"173\" y=\"74\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"right\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" baseWritingDirection=\"rightToLeft\" userInterfaceLayoutDirection=\"rightToLeft\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"Xah-p3-3bg\" id=\"iEv-K7-faP\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"message\"/>\n                        <menu key=\"menu\" id=\"8Pi-eD-O8F\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"Xah-p3-3bg\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchPreferedSourceCodeEditor:\" target=\"-2\" id=\"3B4-sh-5hm\"/>\n                    </connections>\n                </popUpButton>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"aiR-yu-zGz\">\n                    <rect key=\"frame\" x=\"388\" y=\"20\" width=\"167\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"מציג דוחות ברירת–המחדל:\" id=\"OlA-pr-NqK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <popUpButton verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"Ytb-pg-OA0\">\n                    <rect key=\"frame\" x=\"173\" y=\"15\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"right\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" baseWritingDirection=\"rightToLeft\" userInterfaceLayoutDirection=\"rightToLeft\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"jkl-MJ-epa\" id=\"KXn-Rz-1qQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"message\"/>\n                        <menu key=\"menu\" id=\"F6M-WY-ruS\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"jkl-MJ-epa\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchDefaultReportsViewer:\" target=\"-2\" id=\"A16-7i-Lxf\"/>\n                    </connections>\n                </popUpButton>\n                <box verticalHuggingPriority=\"750\" fixedFrame=\"YES\" boxType=\"separator\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"bWX-Os-IMd\">\n                    <rect key=\"frame\" x=\"20\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"WI8-fU-dkC\">\n                    <rect key=\"frame\" x=\"388\" y=\"117\" width=\"53\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"בהשקה:\" id=\"RtP-AJ-XN5\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"248\" y=\"-36\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePanePresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"ZYd-5r-yQv\" id=\"i9c-kL-7HJ\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"r6r-RI-kcs\" id=\"Ror-u4-rou\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"8Nm-R3-fGu\" id=\"3g3-DD-9IJ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField focusRingType=\"none\" horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"98p-UU-gFL\">\n                    <rect key=\"frame\" x=\"367\" y=\"284\" width=\"248\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"רכיבי מסגרת הערימה הגלויים כברירת מחדל:\" id=\"9hi-bS-vgU\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"ZYd-5r-yQv\">\n                    <rect key=\"frame\" x=\"275\" y=\"283\" width=\"88\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"שם בינארי\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"Gp3-2V-rzt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"WHi-RH-9MD\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"8Nm-R3-fGu\">\n                    <rect key=\"frame\" x=\"205\" y=\"262\" width=\"158\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"כתובת של פקודת מכונה\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"TVT-Ex-NJf\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jH7-tG-qIn\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" fixedFrame=\"YES\" translatesAutoresizingMaskIntoConstraints=\"NO\" id=\"r6r-RI-kcs\">\n                    <rect key=\"frame\" x=\"199\" y=\"241\" width=\"164\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"היסט של בתים ומקור\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"DAf-CC-sze\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"GhR-oX-eh8\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141\" y=\"153.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePanePresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationTextViewController\">\n            <connections>\n                <outlet property=\"_showBacktracesCheckbox\" destination=\"vj7-9l-wu4\" id=\"KSi-Nm-wqp\"/>\n                <outlet property=\"_showBinaryImagesCheckbox\" destination=\"ayi-wa-Elc\" id=\"mYB-oN-qAA\"/>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"rRX-kg-J1V\" id=\"qyO-wp-PBr\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"Kfz-pY-oUd\" id=\"6mW-ja-r8I\"/>\n                <outlet property=\"_showDiagnosticMessagesCheckbox\" destination=\"iNz-Qb-2d2\" id=\"nDi-1K-iro\"/>\n                <outlet property=\"_showExceptionInformationCheckbox\" destination=\"Qt3-ro-d2D\" id=\"IXu-xm-lli\"/>\n                <outlet property=\"_showHeaderCheckbox\" destination=\"Pvu-81-w7l\" id=\"Pqb-oU-xKL\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"2LX-nh-3AM\" id=\"WZp-Xx-mLd\"/>\n                <outlet property=\"_showThreadStateCheckbox\" destination=\"cir-zS-0pp\" id=\"rgi-7S-ybj\"/>\n                <outlet property=\"_showsLineNumbersCheckbox\" destination=\"n6c-lM-SZM\" id=\"s1h-L4-v2d\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"Pvu-81-w7l\">\n                    <rect key=\"frame\" x=\"302\" y=\"204\" width=\"60\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"כותרת\" bezelStyle=\"regularSquare\" imagePosition=\"trailing\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"zEG-Wx-Nn2\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowHeader:\" target=\"-2\" id=\"r82-eB-Q1G\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Qt3-ro-d2D\">\n                    <rect key=\"frame\" x=\"262\" y=\"184\" width=\"100\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"מידע על חריג\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"F76-W3-yAd\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowExceptionInformation:\" target=\"-2\" id=\"cUe-nn-bRr\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"iNz-Qb-2d2\">\n                    <rect key=\"frame\" x=\"261\" y=\"163\" width=\"101\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"הודעות אבחון\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"EEv-JV-T5b\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDiagnosticMessages:\" target=\"-2\" id=\"wy4-KN-LXQ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"vj7-9l-wu4\">\n                    <rect key=\"frame\" x=\"267\" y=\"142\" width=\"95\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"עקבות חזרה\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"ZOK-Ny-hlt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBacktraces:\" target=\"-2\" id=\"M7z-KY-6jd\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ayi-wa-Elc\">\n                    <rect key=\"frame\" x=\"243\" y=\"99\" width=\"120\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"קבצים בינאריים\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"Kr8-SF-wcL\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryImages:\" target=\"-2\" id=\"r9d-Iu-XGO\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MNF-5K-RaR\">\n                    <rect key=\"frame\" x=\"367\" y=\"61\" width=\"248\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"רכיבי מסגרת הערימה הגלויים כברירת מחדל:\" id=\"2et-oL-bun\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"rRX-kg-J1V\">\n                    <rect key=\"frame\" x=\"255\" y=\"60\" width=\"108\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"שם בינארי\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"vWD-FK-a4a\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"1JN-45-hUv\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"2LX-nh-3AM\">\n                    <rect key=\"frame\" x=\"199\" y=\"39\" width=\"164\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"כתובת של פקודת מכונה\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"XDv-jS-TfO\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jZT-K0-Oql\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Kfz-pY-oUd\">\n                    <rect key=\"frame\" x=\"199\" y=\"18\" width=\"164\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"היסט של בתים ומקור\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"zE5-mb-UZb\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"TPQ-k5-sP5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"eDV-BF-Pu1\">\n                    <rect key=\"frame\" x=\"366\" y=\"245\" width=\"77\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"גלישת מלל:\" id=\"nm4-Se-bRD\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"n6c-lM-SZM\">\n                    <rect key=\"frame\" x=\"255\" y=\"283\" width=\"107\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"מספרי שורות\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"8bP-wa-KPh\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsLineNumbers:\" target=\"-2\" id=\"evn-zL-ZnP\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9bL-sk-EjC\">\n                    <rect key=\"frame\" x=\"366\" y=\"284\" width=\"30\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"הצג:\" id=\"gBx-bb-vVK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"cir-zS-0pp\">\n                    <rect key=\"frame\" x=\"243\" y=\"120\" width=\"120\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"מצב השרשור\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"ysb-qv-8M9\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowThreadState:\" target=\"-2\" id=\"5aJ-mY-Zn1\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ANa-W0-TnO\">\n                    <rect key=\"frame\" x=\"162\" y=\"244\" width=\"200\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"גלישת טקסט אלי רוחב המסמך \" bezelStyle=\"regularSquare\" imagePosition=\"right\" enabled=\"NO\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"1PO-2B-RhF\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"1vN-WD-7S5\">\n                    <rect key=\"frame\" x=\"366\" y=\"205\" width=\"184\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"הקטעים שמוצגים כברירת מחדל:\" id=\"LKq-kF-sWQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-63\" y=\"-1862.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePanePresentationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationViewController\">\n            <connections>\n                <outlet property=\"_contentsView\" destination=\"3Hi-kO-8Wu\" id=\"fmJ-yr-83D\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"8YE-EY-01p\" id=\"SPW-EQ-qbE\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"387\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"wmc-fZ-hP3\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"347\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"ArU-KV-0n7\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"688\" height=\"345\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"8YE-EY-01p\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"321\" width=\"688\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"OdN-hf-Q5a\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"361\" y=\"1\" width=\"48\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"מלל\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"ARO-B4-zFG\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"ClQ-Fr-Q9W\"/>\n                                        </connections>\n                                    </button>\n                                    <button tag=\"1\" id=\"mm7-bt-sqK\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"280\" y=\"1\" width=\"65\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"מתווה\" bezelStyle=\"regularSquare\" alignment=\"center\" tag=\"1\" inset=\"2\" id=\"K3H-7g-Y6W\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"9nl-0S-hxW\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <customView id=\"3Hi-kO-8Wu\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            </customView>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"315\" y=\"-44\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencePaneSymbolicationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneSymbolicationViewController\">\n            <connections>\n                <outlet property=\"_dSYMLibraryPlaceHolderView\" destination=\"vVc-MA-1G3\" id=\"0ly-sp-1WZ\"/>\n                <outlet property=\"_searchForSymbolsFilesButton\" destination=\"Yst-no-gF6\" id=\"9n7-Ui-eWv\"/>\n                <outlet property=\"_symbolicateButton\" destination=\"Tdl-XE-pSN\" id=\"nFP-cN-cbv\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"434\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E67-yJ-rtd\">\n                    <rect key=\"frame\" x=\"536\" y=\"366\" width=\"120\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" baseWritingDirection=\"rightToLeft\" alignment=\"left\" title=\"קבצים של סימבולים:\" id=\"kzW-xF-tfP\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Tdl-XE-pSN\">\n                    <rect key=\"frame\" x=\"227\" y=\"396\" width=\"305\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"המר כתובות הוראות למספרים סימבוליים כשאפשר\" bezelStyle=\"regularSquare\" imagePosition=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"mnW-sM-t65\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSymbolicate:\" target=\"-2\" id=\"mac-a1-z7L\"/>\n                    </connections>\n                </button>\n                <customView id=\"vVc-MA-1G3\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"306\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                </customView>\n                <button verticalHuggingPriority=\"750\" id=\"Yst-no-gF6\">\n                    <rect key=\"frame\" x=\"301\" y=\"365\" width=\"231\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"חפש אוטומטית קבצים של סימבולים\" bezelStyle=\"regularSquare\" imagePosition=\"right\" alignment=\"right\" state=\"on\" baseWritingDirection=\"rightToLeft\" inset=\"2\" id=\"M5T-BJ-hV4\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSearchForSymbolFiles:\" target=\"-2\" id=\"G2h-en-QtA\"/>\n                    </connections>\n                </button>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"ino-yQ-Dwr\">\n                    <rect key=\"frame\" x=\"20\" y=\"344\" width=\"690\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Vva-gy-N3U\">\n                    <rect key=\"frame\" x=\"536\" y=\"397\" width=\"74\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"סימבוליזציה:\" id=\"oNL-xZ-Za8\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-25\" y=\"-236\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUIPreferencesWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencesWindowController\">\n            <connections>\n                <outlet property=\"_toolBar\" destination=\"6zI-aR-fpa\" id=\"CHz-Ac-uHu\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Window\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" tabbingMode=\"disallowed\" id=\"F0z-JX-Cv5\" customClass=\"CUIPreferencesWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenDisallowsTiling=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"730\" height=\"400\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"730\" height=\"350\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"730\" height=\"800\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"400\"/>\n                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"D61E4849-961C-442A-8B58-7CA007F20812\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"6zI-aR-fpa\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"05DB9B5F-BC7F-4CCA-BF32-731C932EA360\" explicitItemIdentifier=\"toolbarItem.general\" label=\"כללי\" paletteLabel=\"כללי\" image=\"NSPreferencesGeneral\" selectable=\"YES\" id=\"UQU-Ps-228\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JfQ-pF-Hff\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"4277C753-007B-43DA-A729-FE8AC69931C5\" explicitItemIdentifier=\"toolbarItem.fontscolors\" label=\"גופנים וצבעים\" paletteLabel=\"גופנים וצבעים\" selectable=\"YES\" id=\"SAh-Qi-gC4\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JJk-NZ-vjn\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FB786CBB-BCFC-44B7-8C12-288ADA8E21C6\" explicitItemIdentifier=\"toolbarItem.presentation\" label=\"מצג\" paletteLabel=\"מצג\" image=\"TextMode\" selectable=\"YES\" id=\"eCa-Vk-UOp\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"4IV-xn-tOM\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"633F5F14-F73C-4AF6-8F67-BED9A917A783\" explicitItemIdentifier=\"toolbarItem.symbolication\" label=\"Symbolication\" paletteLabel=\"Symbolication\" image=\"symbolication_Template\" selectable=\"YES\" id=\"Q5n-xT-GUE\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"w6D-Ku-xhR\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"791DB978-2878-4D73-AAA6-621004CCA3A6\" explicitItemIdentifier=\"toolbarItem.crashReporter\" label=\"Crash Reporter\" paletteLabel=\"Crash Reporter\" image=\"crashreporter\" selectable=\"YES\" id=\"1VP-qg-tbw\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"HhP-9G-ZBT\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"25D1A26D-75F7-4BD1-998A-405AE7D65842\" explicitItemIdentifier=\"toolbarItem.advanced\" label=\"מתקדם\" paletteLabel=\"מתקדם\" image=\"NSAdvanced\" selectable=\"YES\" id=\"vqd-1P-vnH\">\n                        <size key=\"minSize\" width=\"32\" height=\"32\"/>\n                        <size key=\"maxSize\" width=\"32\" height=\"32\"/>\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"bs9-H8-G59\"/>\n                        </connections>\n                    </toolbarItem>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"UQU-Ps-228\"/>\n                    <toolbarItem reference=\"eCa-Vk-UOp\"/>\n                    <toolbarItem reference=\"SAh-Qi-gC4\"/>\n                    <toolbarItem reference=\"Q5n-xT-GUE\"/>\n                    <toolbarItem reference=\"1VP-qg-tbw\"/>\n                    <toolbarItem reference=\"vqd-1P-vnH\"/>\n                </defaultToolbarItems>\n                <connections>\n                    <outlet property=\"delegate\" destination=\"-2\" id=\"qsE-xQ-pGw\"/>\n                </connections>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"-2\" y=\"-706\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSAdvanced\" width=\"32\" height=\"32\"/>\n        <image name=\"NSPreferencesGeneral\" width=\"32\" height=\"32\"/>\n        <image name=\"TextMode\" width=\"32\" height=\"32\"/>\n        <image name=\"crashreporter\" width=\"32\" height=\"32\"/>\n        <image name=\"symbolication_Template\" width=\"32\" height=\"32\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CUISymbolsFilesLibraryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUISymbolsFilesLibraryViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"F9U-gJ-Z2L\" id=\"dH5-UP-Qqs\"/>\n                <outlet property=\"_removeButton\" destination=\"ehE-Ow-SS2\" id=\"m8U-R6-wqt\"/>\n                <outlet property=\"_tableView\" destination=\"AY0-dP-DvX\" id=\"lpv-VE-ccc\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"592\" height=\"349\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" id=\"Rhh-WD-hIX\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"592\" height=\"326\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"mCs-2R-TXV\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"590\" height=\"325\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView identifier=\"uuids\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" columnSelection=\"YES\" autosaveName=\"ui.symbolfiles.list\" rowSizeStyle=\"automatic\" headerView=\"l7j-fB-FoE\" viewBased=\"YES\" id=\"AY0-dP-DvX\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"300\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"220\" minWidth=\"40\" maxWidth=\"1000\" id=\"Vcp-pq-sB3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"שם\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"wd0-bU-zBR\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compareNameAndVersion:\" sortKey=\"self\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"02c-Nn-HO4\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"220\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1cT-cq-rEF\">\n                                                        <rect key=\"frame\" x=\"2\" y=\"2\" width=\"195\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Thg-bW-Hdn\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"jEv-gl-BBo\">\n                                                        <rect key=\"frame\" x=\"200\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"17w-qR-br7\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"jEv-gl-BBo\" id=\"b3d-u1-YFD\"/>\n                                                    <outlet property=\"textField\" destination=\"1cT-cq-rEF\" id=\"Vzs-Wm-QJ0\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"110\" minWidth=\"110\" maxWidth=\"110\" id=\"a9F-wr-DSz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"גירסה\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"2QA-U7-Hh5\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CAF-d6-J6h\">\n                                                <rect key=\"frame\" x=\"224\" y=\"1\" width=\"110\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1k1-EI-O6e\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"109\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"lB8-oP-fWV\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"1k1-EI-O6e\" id=\"kIm-93-QIk\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"uuids\" width=\"242\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"xFs-nC-pHw\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"UUIDs\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"QfV-t1-g8t\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"wmr-c9-khj\">\n                                                <rect key=\"frame\" x=\"337\" y=\"1\" width=\"242\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"qAo-VI-VaT\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"236\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"vH5-Rz-jfx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"qAo-VI-VaT\" id=\"KNV-Dt-SB5\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"DKi-0C-xiC\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Asj-Ja-ycJ\"/>\n                                    <outlet property=\"menu\" destination=\"GF9-kL-5e2\" id=\"AJL-Bv-fVg\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"fgB-BL-7Fh\">\n                        <rect key=\"frame\" x=\"1\" y=\"533\" width=\"724\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"T5m-cm-koD\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" wantsLayer=\"YES\" id=\"l7j-fB-FoE\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"JKx-dR-M6r\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"-1\" width=\"528\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"6R2-VQ-GCt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"JIV-ic-LZf\"/>\n                    </connections>\n                </button>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"F9U-gJ-Z2L\">\n                    <rect key=\"frame\" x=\"7\" y=\"3\" width=\"248\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" userInterfaceLayoutDirection=\"rightToLeft\" placeholderString=\"סנן\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"tN8-2f-IVZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"Hmq-IQ-880\"/>\n                    </connections>\n                </searchField>\n                <button verticalHuggingPriority=\"750\" id=\"P6v-Ex-GO9\">\n                    <rect key=\"frame\" x=\"557\" y=\"-1\" width=\"35\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSAddTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"NS9-6o-ey8\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"addDebuggingSymbolsFile:\" target=\"-2\" id=\"2We-No-BJ5\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ehE-Ow-SS2\">\n                    <rect key=\"frame\" x=\"527\" y=\"-1\" width=\"31\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" enabled=\"NO\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"bH8-IA-FZM\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"u5K-Fv-rkO\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-624\" y=\"-817.5\"/>\n        </customView>\n        <menu id=\"GF9-kL-5e2\">\n            <items>\n                <menuItem title=\"הצג ב-Finder\" id=\"mla-Lw-0ux\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"qpt-X3-Bo6\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-301\" y=\"-467\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/CodeSigning.strings",
    "content": "\"TestFlight\" = \"TestFlight\";\n\n\"Development\" = \"הִתפַּתְחוּת\";\n\n\"AppStore\" = \"AppStore\";\n\n\"Enterprise\" = \"מִפְעָל\";\n\n\"Developer ID\" = \"Developer ID\";\n\n\"None\" = \"אַף לֹא אֶחָד\";\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"23504\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" useAutolayout=\"YES\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"23504\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSApplication\">\n            <connections>\n                <outlet property=\"delegate\" destination=\"Voe-Tx-rLC\" id=\"GzC-gU-4Uq\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customObject id=\"Voe-Tx-rLC\" customClass=\"AppDelegate\">\n            <connections>\n                <outlet property=\"_debugMenuBarItem\" destination=\"cNb-At-Imu\" id=\"UE7-n3-l3I\"/>\n                <outlet property=\"_themesMenu\" destination=\"abx-GW-6TZ\" id=\"EEG-6i-WdC\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"YLy-65-1bz\" customClass=\"NSFontManager\"/>\n        <menu title=\"Main Menu\" systemMenu=\"main\" id=\"AYu-sK-qS6\">\n            <items>\n                <menuItem title=\"Unexpectedly\" id=\"1Xt-HY-uBw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Unexpectedly\" systemMenu=\"apple\" id=\"uQy-DD-JDr\">\n                        <items>\n                            <menuItem title=\"Unexpectedly אודות\" id=\"5kV-Vb-QxS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showAboutBox:\" target=\"-1\" id=\"8cM-F7-dKT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"VOq-y0-SEH\"/>\n                            <menuItem title=\"העדפות…\" keyEquivalent=\",\" id=\"BOF-NM-1cW\">\n                                <connections>\n                                    <action selector=\"showPreferences:\" target=\"-1\" id=\"Jal-0e-r2i\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"wFC-TO-SCJ\"/>\n                            <menuItem title=\"שירותים\" id=\"NMo-om-nkz\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"שירותים\" systemMenu=\"services\" id=\"hz9-B4-Xy5\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"4je-JR-u6R\"/>\n                            <menuItem title=\"Unexpectedly הסותר את\" keyEquivalent=\"h\" id=\"Olw-nP-bQN\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"PnN-Uc-m68\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הסותר אחרים\" keyEquivalent=\"h\" id=\"Vdr-fp-XzO\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"VT4-aY-XCT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הצג אכול\" id=\"Kd2-mp-pUS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"Dhg-Le-xox\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kCx-OE-vgT\"/>\n                            <menuItem title=\"Unexpectedly סיים את\" keyEquivalent=\"q\" id=\"4sb-4s-VLi\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-1\" id=\"Te7-pn-YzF\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"קבוז\" id=\"dMs-cI-mzQ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"קבוז\" id=\"bib-Uj-vzu\">\n                        <items>\n                            <menuItem title=\"מקור חכם חדש…\" keyEquivalent=\"N\" id=\"Was-JA-tGl\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-1\" id=\"bHg-uP-Kty\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"Mx6-UK-5B4\"/>\n                            <menuItem title=\"הוסף קובץ או תיקיה…\" keyEquivalent=\"a\" id=\"3wG-3v-uZk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSource:\" target=\"-1\" id=\"b1Q-ed-4lm\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"m54-Is-iLE\"/>\n                            <menuItem title=\"סגור\" keyEquivalent=\"w\" id=\"DVo-aG-piG\">\n                                <connections>\n                                    <action selector=\"performClose:\" target=\"-1\" id=\"HmO-Ls-i7Q\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"56E-C3-0cD\"/>\n                            <menuItem title=\"ייבא מקור חכם…\" id=\"lvA-aa-UmE\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_importSmartSource:\" target=\"-1\" id=\"slK-ne-mc7\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"ייצא\" id=\"Pho-kH-aIP\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"ייצא\" id=\"3tw-V4-ayi\">\n                                    <items>\n                                        <menuItem title=\"דוח…\" id=\"9tt-1M-ra5\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportCrashLog:\" target=\"-1\" id=\"yYt-Vu-UUP\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"מקור חכם…\" id=\"tTJ-63-TIi\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-1\" id=\"gbF-DM-FHr\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"aJh-i4-bef\"/>\n                            <menuItem title=\"הצג ב-Finder\" id=\"OqK-Vd-hWC\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showInFinder:\" target=\"-1\" id=\"0gW-ak-pFy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"העבר לפח\" id=\"GVk-MU-gOy\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-1\" id=\"9KY-Gr-Skj\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"העבר את כל הדוחות של \\XXXX&quot; לפח\" alternate=\"YES\" id=\"BHd-Dv-6Wl\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-1\" id=\"DLv-Uy-cDS\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eeq-nE-Puw\"/>\n                            <menuItem title=\"הגדרות דף…\" keyEquivalent=\"P\" id=\"qIS-W8-SiK\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"runPageLayout:\" target=\"-1\" id=\"Din-rz-gC5\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הדפס…\" keyEquivalent=\"p\" id=\"aTl-1u-JFS\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_print:\" target=\"-1\" id=\"a83-u9-Pl5\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"עריכה\" id=\"5QF-Oa-p0T\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"עריכה\" id=\"W48-6f-4Dl\">\n                        <items>\n                            <menuItem title=\"בטל\" keyEquivalent=\"z\" id=\"dRJ-4n-Yzg\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"M6e-cu-g7V\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הפעולה האחרונ\" keyEquivalent=\"Z\" id=\"6dh-zS-Vam\">\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"oIA-Rs-6OD\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"WRV-NI-Exz\"/>\n                            <menuItem title=\"גזו\" keyEquivalent=\"x\" id=\"uRl-iY-unG\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"YJe-68-I9s\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"העתק\" keyEquivalent=\"c\" id=\"x3v-GG-iWU\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"G1f-GL-Joy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הדבק\" keyEquivalent=\"v\" id=\"gVA-U4-sdL\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"UvS-8e-Qdg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הדבק והתאם לסגנון\" keyEquivalent=\"V\" id=\"WeT-3V-zwk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"pasteAsPlainText:\" target=\"-1\" id=\"cEh-KX-wJQ\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"מחק\" id=\"pa3-QI-u2k\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"0Mk-Ml-PaM\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"חר הכ\" keyEquivalent=\"a\" id=\"Ruw-6m-B2m\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"VNm-Mi-diN\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"uyl-h8-XO2\"/>\n                            <menuItem title=\"חפש\" id=\"4EN-yA-p0u\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"חפש\" id=\"1b7-l0-nxx\">\n                                    <items>\n                                        <menuItem title=\"חיפוש…\" tag=\"1\" keyEquivalent=\"f\" id=\"Xz5-n4-O0W\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"QsK-9e-uGa\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"חפש את הבא\" tag=\"2\" keyEquivalent=\"g\" id=\"q09-fT-Sye\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"49u-4Y-NRM\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"חפש את הקודם\" tag=\"3\" keyEquivalent=\"G\" id=\"OwM-mh-QMV\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"siD-LN-Db0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"השתמש בקטע הנבחר לצורך חיפוש\" tag=\"7\" keyEquivalent=\"e\" id=\"buJ-ug-pKt\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"M3c-NN-csD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"עבור לבחירה\" keyEquivalent=\"j\" id=\"S0p-oC-mLd\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"IOG-6D-g5B\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"הקראה\" id=\"xrE-MZ-jX0\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"הקראה\" id=\"3rS-ZA-NoH\">\n                                    <items>\n                                        <menuItem title=\"התחל הקראה\" id=\"Ynk-f8-cLZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"654-Ng-kyl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"הפסק הקראה\" id=\"Oyz-dy-DGm\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"dX8-6p-jy9\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"תצוגה\" id=\"H8h-7b-M4v\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"תצוגה\" id=\"HyV-fh-RgO\">\n                        <items>\n                            <menuItem title=\"הצג את סרגל הצד\" tag=\"2\" keyEquivalent=\"1\" id=\"fzY-Ht-27G\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"kra-FC-RZC\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הצג את קבצים בינאריים\" tag=\"1\" keyEquivalent=\"2\" id=\"2z5-3m-6dw\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"s1k-G0-TLi\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הצג את הסוקר\" keyEquivalent=\"3\" id=\"lQa-tq-Wi7\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"qR9-QJ-Q4R\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kEv-nO-mPM\"/>\n                            <menuItem title=\"מלל\" keyEquivalent=\"1\" id=\"qIT-0d-e67\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"eRM-Kc-O5r\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"מתווה\" tag=\"1\" keyEquivalent=\"2\" id=\"Nr3-m8-qOB\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"TDI-d2-Yku\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"tGi-CI-t3Z\"/>\n                            <menuItem title=\"הצג את סרגל הכלים\" keyEquivalent=\"t\" id=\"snW-S8-Cw5\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"toggleToolbarShown:\" target=\"-1\" id=\"BXY-wc-z0C\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"Report Viewer\" id=\"Wlf-Q9-x4u\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Report Viewer\" id=\"nLy-c6-ILM\">\n                        <items>\n                            <menuItem title=\"גודל גופן\" id=\"hLb-MS-G2f\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"גודל גופן\" id=\"TBb-40-aCS\">\n                                    <items>\n                                        <menuItem title=\"הגדל\" keyEquivalent=\"+\" id=\"EXj-Y3-9fM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_increaseFontSize:\" target=\"-1\" id=\"qW5-4J-akR\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"הקטן\" keyEquivalent=\"-\" id=\"7i3-Bb-CWM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_decreaseFontSize:\" target=\"-1\" id=\"B2V-VK-bcD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"P4p-p3-w1I\"/>\n                                        <menuItem title=\"איפוס\" keyEquivalent=\"0\" id=\"kfY-hu-eJP\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_resetFontSize:\" target=\"-1\" id=\"nz0-xy-rD7\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"ערכת נושא\" id=\"yjG-UV-U5C\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"ערכת נושא\" id=\"abx-GW-6TZ\">\n                                    <items>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"NUX-KR-gxh\"/>\n                                        <menuItem title=\"ערוך ערכות נושא…\" id=\"csr-ry-NgM\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"editThemes:\" target=\"-1\" id=\"F5p-1i-EUu\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"2Cq-5I-dEU\"/>\n                            <menuItem title=\"חלקים גלויים\" id=\"wAR-FX-MEm\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"חלקים גלויים\" id=\"WFL-Rm-rhq\">\n                                    <items>\n                                        <menuItem title=\"כותרת\" id=\"HIC-nM-hNN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-1\" id=\"WUc-lV-ghf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"1r5-yC-AUQ\"/>\n                                        <menuItem title=\"מידע על חריג\" id=\"lvl-an-zWN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-1\" id=\"fLf-3S-OlT\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"הודעות אבחון\" id=\"iKL-gn-vYN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-1\" id=\"N8e-k9-P27\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"z5a-l7-tQ4\"/>\n                                        <menuItem title=\"עקבות חזרה\" id=\"DbA-sZ-kG6\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-1\" id=\"eUz-AU-LoI\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"מצב השרשור\" id=\"RBY-FQ-bMy\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-1\" id=\"XYE-gq-GnF\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"קבצים בינאריים\" id=\"rnV-QR-Tam\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-1\" id=\"qnf-0L-mBO\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"נווט\" id=\"aG2-MW-iKZ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"נווט\" id=\"YUZ-OQ-Qfb\">\n                        <items>\n                            <menuItem title=\"בחר שורה…\" keyEquivalent=\"l\" id=\"JtL-ON-s7d\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToLine:\" target=\"-1\" id=\"hAa-kF-BVg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"qbu-Eo-jRw\"/>\n                            <menuItem title=\"עבור אל הקטע\" id=\"2Ip-qq-DKf\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"עבור אל הקטע\" id=\"AcZ-wd-kkj\">\n                                    <items>\n                                        <menuItem title=\"כותרת\" id=\"Bmg-Jh-vql\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToHeader:\" target=\"-1\" id=\"0VQ-jO-VrD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"5Cd-ay-my5\"/>\n                                        <menuItem title=\"מידע על חריג\" id=\"SzQ-gm-Wkt\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToExceptionInformation:\" target=\"-1\" id=\"079-pD-HEp\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"הודעות אבחון\" id=\"Wiv-Qz-fMq\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToDiagnosticMessages:\" target=\"-1\" id=\"hTl-rJ-Q5a\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"Szz-TX-hIO\"/>\n                                        <menuItem title=\"עקבות חזרה\" id=\"a2B-9S-c4g\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBacktraces:\" target=\"-1\" id=\"Sfi-Ce-HQ0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"מצב השרשור\" id=\"hfS-oi-1cT\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToThreadState:\" target=\"-1\" id=\"Lbe-gO-nw1\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"קבצים בינאריים\" id=\"ON2-La-JSh\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBinaryImages:\" target=\"-1\" id=\"hF5-h4-Mqo\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"בחר השרשור שקרס\" keyEquivalent=\"c\" id=\"XPO-uf-5Ox\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToCrashedThread:\" target=\"-1\" id=\"ymM-Im-3Fw\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"חלון\" id=\"aUF-d1-5bR\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"חלון\" systemMenu=\"window\" id=\"Td7-aD-5lo\">\n                        <items>\n                            <menuItem title=\"מזע\" keyEquivalent=\"m\" id=\"OY7-WF-poV\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"VwT-WD-YPe\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"הגדל/הקט\" id=\"R4o-n2-Eq4\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"performZoom:\" target=\"-1\" id=\"DIl-cC-cCs\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"V2l-48-H4C\"/>\n                            <menuItem title=\"אוגרים\" keyEquivalent=\"r\" id=\"e57-vP-OAA\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-1\" id=\"4GI-98-jKW\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eu3-7i-yIM\"/>\n                            <menuItem title=\"ג הכ\" id=\"LE2-aR-0XJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"DRN-fu-gQh\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"עזרה\" id=\"wpr-3q-Mcd\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"עזרה\" systemMenu=\"help\" id=\"F2S-fz-NVQ\">\n                        <items>\n                            <menuItem title=\"עזרה עבור Unexpectedly\" keyEquivalent=\"?\" id=\"FKE-Sm-Kum\">\n                                <connections>\n                                    <action selector=\"showUserGuide:\" target=\"Voe-Tx-rLC\" id=\"Xxx-bM-bpn\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"NhV-yu-WbQ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"שלח משוב\" id=\"Agb-QS-hQl\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"sendFeedback:\" target=\"Voe-Tx-rLC\" id=\"GdC-FT-8s8\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"אתר אינטרנט של Unexpectedly\" id=\"FUb-BV-YgJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showUnexpectedlyWebSite:\" target=\"Voe-Tx-rLC\" id=\"Zhd-rv-Pi9\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"לנפות\" hidden=\"YES\" id=\"cNb-At-Imu\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"לנפות\" id=\"OCR-9P-Ipy\">\n                        <items>\n                            <menuItem title=\"Crash Reporter\" id=\"QbD-vw-FaL\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"Crash Reporter\" id=\"90M-1A-X88\">\n                                    <items>\n                                        <menuItem title=\"אופן פעולה\" enabled=\"NO\" id=\"rSJ-Ir-6Ad\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"בסיסי\" id=\"cZ2-Me-tJE\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"1pr-Nb-cUn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"מפתח\" tag=\"1\" id=\"Taa-D1-VLv\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"Sze-b6-Qb4\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"שרת\" tag=\"2\" id=\"oZt-M9-dpo\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"t2d-3r-nsn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"riH-1J-NUS\"/>\n                                        <menuItem title=\"אופן ההתראה\" enabled=\"NO\" id=\"BLJ-R5-6HZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"תיבת דו-שיח\" id=\"EDw-Kd-564\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"pfK-8S-sWf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"עדכון\" tag=\"1\" id=\"zLw-vY-Ttl\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"yUA-00-NUV\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"isO-68-Tw7\"/>\n                                        <menuItem title=\"דווח על חריגים שלא נתפסו\" id=\"eLO-Pu-jRW\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchReportUncaughtException:\" target=\"Voe-Tx-rLC\" id=\"3Tb-Lg-qE2\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-669\" y=\"-1125\"/>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/he.lproj/Predicates.strings",
    "content": "/* Predicate Editor */\n\n\"%[All]@ of the following are true\" = \"%1$[כל]@ התנאים הבאים נכונים\";\n\"%[Any]@ of the following are true\" = \"%1$[כל אחד]@ מהתנאים הבאים הוא נכון\";\n\n\"%[processName]@ %[is]@ %@\" = \"%1$[השם תהליך]@ %2$[הוא]@ %3$@\";\n\"%[processName]@ %[is not]@ %@\" = \"%1$[השם תהליך]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[processName]@ %[begins with]@ %@\" = \"%1$[השם תהליך]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[processName]@ %[ends with]@ %@\" = \"%1$[השם תהליך]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[processName]@ %[contains]@ %@\" = \"%1$[השם תהליך]@ %2$[מכיל]@ %3$@\";\n\n\"%[header.bundleIdentifier]@ %[is]@ %@\" = \"%1$[המזהה]@ %2$[הוא]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[is not]@ %@\" = \"%1$[המזהה]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[begins with]@ %@\" = \"%1$[המזהה]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[ends with]@ %@\" = \"%1$[המזהה]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[header.bundleIdentifier]@ %[contains]@ %@\" = \"%1$[המזהה]@ %2$[מכיל]@ %3$@\";\n\n\"%[header.executablePath]@ %[is]@ %@\" = \"%1$[הנתיב של קובץ הרצה]@ %2$[הוא]@ %3$@\";\n\"%[header.executablePath]@ %[is not]@ %@\" = \"%1$[הנתיב של קובץ הרצה]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[header.executablePath]@ %[begins with]@ %@\" = \"%1$[הנתיב של קובץ הרצה]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[header.executablePath]@ %[ends with]@ %@\" = \"%1$[הנתיב של קובץ הרצה]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[header.executablePath]@ %[contains]@ %@\" = \"%1$[הנתיב של קובץ הרצה]@ %2$[מכיל]@ %3$@\";\n\n\"%[header.executableVersion]@ %[is]@ %@\" = \"%1$[גירסה של קובץ הרצה]@ %2$[היא]@ %3$@\";\n\"%[header.executableVersion]@ %[is not]@ %@\" = \"%1$[גירסה של קובץ הרצה]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[header.executableVersion]@ %[begins with]@ %@\" = \"%1$[גירסה של קובץ הרצה]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[header.executableVersion]@ %[ends with]@ %@\" = \"%1$[גירסה של קובץ הרצה]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[header.executableVersion]@ %[contains]@ %@\" = \"%1$[גירסה של קובץ הרצה]@ %2$[מכיל]@ %3$@\";\n\n\"%[exceptionInformation.crashedThreadName]@ %[is]@ %@\" = \"%1$[שם שרשור שקרס]@ %2$[הוא]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[is not]@ %@\" = \"%1$[שם שרשור שקרס]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[begins with]@ %@\" = \"%1$[שם שרשור שקרס]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[ends with]@ %@\" = \"%1$[שם שרשור שקרס]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[exceptionInformation.crashedThreadName]@ %[contains]@ %@\" = \"%1$[שם שרשור שקרס]@ %2$[מכיל]@ %3$@\";\n\n\"%[header.operatingSystemVersion.stringValue]@ %[is]@ %@\" = \"%1$[גירסה של מַעֲרֶכֶת הַפעָלָה]@ %2$[היא]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[is not]@ %@\" = \"%1$[גירסה של מַעֲרֶכֶת הַפעָלָה]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[begins with]@ %@\" = \"%1$[גירסה של מַעֲרֶכֶת הַפעָלָה]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[ends with]@ %@\" = \"%1$[גירסה של מַעֲרֶכֶת הַפעָלָה]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[contains]@ %@\" = \"%1$[גירסה של מַעֲרֶכֶת הַפעָלָה]@ %2$[מכיל]@ %3$@\";\n\n\"%[dateTime]@ %[is less than or equal to]@ %@\" = \"%1$[תאריך]@ %2$[חל לפני]@ %3$@\";\n\"%[dateTime]@ %[is greater than or equal to]@ %@\" = \"%1$[תאריך]@ %2$[חל לאחר]@ %3$@\";\n\n\"%[exceptionType]@ is %[EXC_ARITHMETIC]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_ARITHMETIC]@\";\n\"%[exceptionType]@ is %[EXC_BAD_ACCESS]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_BAD_ACCESS]@\";\n\"%[exceptionType]@ is %[EXC_BAD_INSTRUCTION]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_BAD_INSTRUCTION]@\";\n\"%[exceptionType]@ is %[EXC_BREAKPOINT]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_BREAKPOINT]@\";\n\"%[exceptionType]@ is %[EXC_CORPSE_NOTIFY]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_CORPSE_NOTIFY]@\";\n\"%[exceptionType]@ is %[EXC_CRASH]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_CRASH]@\";\n\"%[exceptionType]@ is %[EXC_EMULATION]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_EMULATION]@\";\n\"%[exceptionType]@ is %[EXC_GUARD]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_GUARD]@\";\n\"%[exceptionType]@ is %[EXC_MACH_SYSCALL]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_MACH_SYSCALL]@\";\n\"%[exceptionType]@ is %[EXC_RESOURCE]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_RESOURCE]@\";\n\"%[exceptionType]@ is %[EXC_RPC_ALERT]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_RPC_ALERT]@\";\n\"%[exceptionType]@ is %[EXC_SOFTWARE]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_SOFTWARE]@\";\n\"%[exceptionType]@ is %[EXC_SYSCALL]@\" = \"‏%1$[Exception Type]@ הוא %2$[EXC_SYSCALL]@\";\n\n\"%[exceptionSignal]@ is %[SIGABRT]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGABRT]@\";\n\"%[exceptionSignal]@ is %[SIGBUS]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGBUS]@\";\n\"%[exceptionSignal]@ is %[SIGILL]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGILL]@\";\n\"%[exceptionSignal]@ is %[SIGKILL]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGKILL]@\";\n\"%[exceptionSignal]@ is %[SIGQUIT]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGQUIT]@\";\n\"%[exceptionSignal]@ is %[SIGSEGV]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGSEGV]@\";\n\"%[exceptionSignal]@ is %[SIGTRAP]@\" = \"‏%1$[Exception Signal]@ הוא %2$[SIGTRAP]@\";\n\"%[exceptionSignal]@ is %[Code Signature Invalid]@\" = \"‏%1$[Exception Signal]@ הוא %2$[Code Signature Invalid]@\";\n\n\"%[crashLogFileName]@ %[is]@ %@\" = \"%1$[שם קובץ הדוח]@ %2$[הוא]@ %3$@\";\n\"%[crashLogFileName]@ %[is not]@ %@\" = \"%1$[שם קובץ הדוח]@ %2$[אינו שווה ל-]@ %3$@\";\n\"%[crashLogFileName]@ %[begins with]@ %@\" = \"%1$[שם קובץ הדוח]@ %2$[מתחיל ב-]@ %3$@\";\n\"%[crashLogFileName]@ %[ends with]@ %@\" = \"%1$[שם קובץ הדוח]@ %2$[מסתיים ב-]@ %3$@\";\n\"%[crashLogFileName]@ %[contains]@ %@\" = \"%1$[שם קובץ הדוח]@ %2$[מכיל]@ %3$@\";\n\n\"%[reportSourceTypeNumber]@ is %[0]@\" = \"‏%1$[מקור]@ הוא %2$[דוחות המשתמש]@\";\n\"%[reportSourceTypeNumber]@ is %[1]@\" = \"%1$[מקור]@ הוא %2$[דוחות המשתמש]@\";\n\"%[reportSourceTypeNumber]@ is %[2]@\" = \"‏%1$[מקור]@ הוא %2$[מקור אחר]@\";\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ips + Extensions/IPSImage+Offset.h",
    "content": "//\n//  IPSImage+Offset.h\n//  crashreport\n//\n//  Created by stephane on 21/02/2022.\n//  Copyright © 2022 Whitebox. All rights reserved.\n//\n\n#import \"IPSImage.h\"\n\n@interface IPSImage (Offset)\n\n@property (nonatomic,readonly) NSUInteger binaryImageOffset;\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ips + Extensions/IPSImage+Offset.m",
    "content": "//\n//  IPSImage+Offset.m\n//  crashreport\n//\n//  Created by stephane on 21/02/2022.\n//  Copyright © 2022 Whitebox. All rights reserved.\n//\n\n#import \"IPSImage+Offset.h\"\n\n@implementation IPSImage (Offset)\n\n- (NSUInteger)binaryImageOffset\n{\n    NSUInteger tLoadAddress=self.loadAddress;\n    \n    if (tLoadAddress>0x7fff00000000)    // Won't happen on ARM-64\n        return tLoadAddress;\n    \n    if (tLoadAddress>=0x100000000)\n        return (tLoadAddress-0x100000000);\n    \n    return tLoadAddress;    // 32-bit\n}\n\n@end\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIAboutBoxWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIAboutBoxWindowController\">\n            <connections>\n                <outlet property=\"_applicationIconView\" destination=\"tcA-WF-uA0\" id=\"MLS-Td-B8a\"/>\n                <outlet property=\"_versionLabel\" destination=\"ttD-QV-oac\" id=\"Dvu-Z7-kin\"/>\n                <outlet property=\"window\" destination=\"Bdk-2N-UfM\" id=\"lij-6E-9Ij\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" id=\"Bdk-2N-UfM\" userLabel=\"About Window\" customClass=\"CUIAboutBoxWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"1076\" y=\"858\" width=\"580\" height=\"340\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"213\" height=\"107\"/>\n            <view key=\"contentView\" id=\"M7a-oa-Rve\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"none\" title=\"Box\" id=\"oOh-j5-H4F\" customClass=\"CUIContentBox\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <view key=\"contentView\" id=\"wo7-V5-OLy\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"580\" height=\"340\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <textField verticalHuggingPriority=\"750\" id=\"99t-xE-l89\">\n                                    <rect key=\"frame\" x=\"297\" y=\"237\" width=\"244\" height=\"33\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Unexpectedly\" id=\"T3S-Ay-pmi\">\n                                        <font key=\"font\" metaFont=\"systemBold\" size=\"27\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ttD-QV-oac\">\n                                    <rect key=\"frame\" x=\"302\" y=\"216\" width=\"163\" height=\"17\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" sendsActionOnEndEditing=\"YES\" title=\"バージョン xxx (xxxx)\" id=\"zzd-sb-nLW\">\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <textField verticalHuggingPriority=\"750\" id=\"1i6-Ud-XKB\">\n                                    <rect key=\"frame\" x=\"297\" y=\"121\" width=\"257\" height=\"13\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" sendsActionOnEndEditing=\"YES\" title=\"© 2020-2026 Stéphane Sudre. All rights reserved.\" id=\"Xdh-fz-kMR\">\n                                        <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                        <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                                <customView id=\"ph8-bY-NfI\" customClass=\"CUIAboutBoxFooterView\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"581\" height=\"48\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <subviews>\n                                        <button verticalHuggingPriority=\"750\" id=\"BFt-hQ-gMS\">\n                                            <rect key=\"frame\" x=\"454\" y=\"11\" width=\"107\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"使用許諾契約\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"Pec-zi-7OB\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showLicenseAgreement:\" target=\"-2\" id=\"a9e-i5-Dsu\"/>\n                                            </connections>\n                                        </button>\n                                        <button verticalHuggingPriority=\"750\" id=\"GUS-e1-oXY\">\n                                            <rect key=\"frame\" x=\"339\" y=\"11\" width=\"107\" height=\"25\"/>\n                                            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                            <buttonCell key=\"cell\" type=\"squareTextured\" title=\"謝辞\" bezelStyle=\"texturedSquare\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"tds-hN-Zey\">\n                                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                <font key=\"font\" metaFont=\"system\"/>\n                                            </buttonCell>\n                                            <connections>\n                                                <action selector=\"showAcknowledgments:\" target=\"-2\" id=\"vyh-yi-H1N\"/>\n                                            </connections>\n                                        </button>\n                                    </subviews>\n                                </customView>\n                                <customView id=\"tcA-WF-uA0\" customClass=\"CUIApplicationIconView\">\n                                    <rect key=\"frame\" x=\"20\" y=\"64\" width=\"256\" height=\"256\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </view>\n                        <color key=\"borderColor\" white=\"0.0\" alpha=\"0.41999999999999998\" colorSpace=\"calibratedWhite\"/>\n                        <color key=\"fillColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"calibratedWhite\"/>\n                    </box>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"71\" y=\"93\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIBinaryImagesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIBinaryImagesViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"JbX-mT-2UH\" id=\"02i-kF-XTY\"/>\n                <outlet property=\"_openWithMenuItem\" destination=\"YLm-YP-LL9\" id=\"Oa6-K5-zJI\"/>\n                <outlet property=\"_tableView\" destination=\"H2N-iz-CG5\" id=\"8vi-YE-vnm\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"127\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"JbX-mT-2UH\">\n                    <rect key=\"frame\" x=\"638\" y=\"2\" width=\"180\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"フィルタ\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"CXs-CW-3At\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"qzT-e2-esd\"/>\n                    </connections>\n                </searchField>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"18\" horizontalPageScroll=\"10\" verticalLineScroll=\"18\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jng-RN-KVx\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"826\" height=\"104\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"iHp-Bk-LJN\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"824\" height=\"103\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"16\" headerView=\"szd-pN-V9C\" viewBased=\"YES\" id=\"H2N-iz-CG5\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"78\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"identifier\" editable=\"NO\" width=\"243\" minWidth=\"40\" maxWidth=\"1000\" id=\"zsB-hX-miE\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"バイナリのイメージ\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"HaL-8m-7CV\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"identifier\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"BPG-vx-EaY\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"243\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"g8Y-8I-L6J\">\n                                                        <rect key=\"frame\" x=\"22\" y=\"1\" width=\"220\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"sWv-h4-EIw\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"r0f-ia-207\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"14\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"oyO-Zo-2yb\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"r0f-ia-207\" id=\"SJ2-ej-0Cg\"/>\n                                                    <outlet property=\"textField\" destination=\"g8Y-8I-L6J\" id=\"3Mm-h4-ddI\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"122\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"JQI-XJ-VTL\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"バージョン\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"U1f-H1-9m0\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"version\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"8FH-01-0os\">\n                                                <rect key=\"frame\" x=\"247\" y=\"1\" width=\"122\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"plL-Vk-xaA\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"122\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"obt-PL-Lbo\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"plL-Vk-xaA\" id=\"mg4-BY-bi3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"addresses\" editable=\"NO\" width=\"213\" minWidth=\"40\" maxWidth=\"1000\" id=\"oFL-bf-gGU\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"メモリアドレス\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"ZW2-8X-PGp\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"addressesRange\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g9U-vA-jTF\">\n                                                <rect key=\"frame\" x=\"372\" y=\"1\" width=\"213\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"3kh-At-cKc\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"212\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"justified\" title=\"Table View Cell\" id=\"CMI-V5-ciE\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"3kh-At-cKc\" id=\"UdM-cM-BOp\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"path\" editable=\"NO\" width=\"232\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"HcW-EK-wr3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"パス\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"S91-cj-D84\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compare:\" sortKey=\"path\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"sf0-hA-RmY\">\n                                                <rect key=\"frame\" x=\"588\" y=\"1\" width=\"232\" height=\"16\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"lmB-oe-CyW\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"232\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"left\" title=\"Table View Cell\" id=\"qWc-Kx-SEP\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"lmB-oe-CyW\" id=\"kFS-VU-Y4h\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VlW-ud-6Hf\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Xcc-up-ema\"/>\n                                    <outlet property=\"menu\" destination=\"lWX-qP-xpp\" id=\"Pw9-3z-saj\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" doubleValue=\"1\" horizontal=\"YES\" id=\"OBi-Bk-c7r\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"822\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Od4-Ga-F2a\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"szd-pN-V9C\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"824\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"160\" y=\"10.5\"/>\n        </customView>\n        <menu id=\"lWX-qP-xpp\">\n            <items>\n                <menuItem title=\"Finderで表示\" id=\"taY-h1-kV9\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"C8h-FR-DuE\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"このアプリケーションで開\" id=\"YLm-YP-LL9\">\n                    <menu key=\"submenu\" title=\"このアプリケーションで開\" id=\"SGI-Dm-tOB\">\n                        <items>\n                            <menuItem title=\"-\" id=\"9Ch-Xx-Yu3\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICodeSigningInformationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICodeSigningInformationViewController\">\n            <connections>\n                <outlet property=\"_flagsRichTextField\" destination=\"chR-7J-O6v\" id=\"iY2-tW-M8Z\"/>\n                <outlet property=\"_identifierTextField\" destination=\"pzr-oV-4Ja\" id=\"pxc-Tm-LdQ\"/>\n                <outlet property=\"_teamIdentifierTextField\" destination=\"3fa-Ku-EUN\" id=\"mQk-Vc-AhS\"/>\n                <outlet property=\"_trustLevelTextField\" destination=\"fce-70-gVD\" id=\"X7D-tf-hgw\"/>\n                <outlet property=\"_validationCategoryTextField\" destination=\"Ibg-QL-cVb\" id=\"WUN-SW-oav\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"394\" height=\"428\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9yS-4w-XmX\">\n                    <rect key=\"frame\" x=\"84\" y=\"391\" width=\"62\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"識別子：\" id=\"bCV-Ef-nKj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"pzr-oV-4Ja\">\n                    <rect key=\"frame\" x=\"150\" y=\"391\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingMiddle\" alignment=\"left\" title=\"-\" id=\"IAr-nB-TqD\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" id=\"3fa-Ku-EUN\">\n                    <rect key=\"frame\" x=\"150\" y=\"367\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" alignment=\"left\" title=\"-\" id=\"jlF-oN-6jR\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ibg-QL-cVb\">\n                    <rect key=\"frame\" x=\"150\" y=\"343\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"bg4-im-sfc\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MYG-4N-N6i\">\n                    <rect key=\"frame\" x=\"55\" y=\"367\" width=\"91\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"チーム識別子:\" id=\"0cZ-kI-PnJ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qyY-nO-4Jd\">\n                    <rect key=\"frame\" x=\"55\" y=\"343\" width=\"91\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"検証カテゴリ:\" id=\"0wh-en-a3v\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dVx-X7-9rC\">\n                    <rect key=\"frame\" x=\"18\" y=\"319\" width=\"128\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"コード署名オプション:\" id=\"B6T-7b-zGQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"fce-70-gVD\">\n                    <rect key=\"frame\" x=\"150\" y=\"21\" width=\"226\" height=\"16\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"-\" id=\"VDD-jV-8zV\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scW-9F-TpJ\">\n                    <rect key=\"frame\" x=\"72\" y=\"21\" width=\"74\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"信頼レベル:\" id=\"Gmq-jb-2Tt\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"chR-7J-O6v\">\n                    <rect key=\"frame\" x=\"150\" y=\"45\" width=\"226\" height=\"290\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" allowsUndo=\"NO\" allowsEditingTextAttributes=\"YES\" id=\"erf-qu-9hj\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"99\" y=\"274\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICollectionViewRegisterItem.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSView\"/>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"180\" height=\"23\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"49v-rz-P77\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"5\" width=\"28\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"r15:\" id=\"moe-Uv-cgf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"jaL-7X-k26\" customClass=\"CUIRegisterLabel\">\n                    <rect key=\"frame\" x=\"30\" y=\"1\" width=\"149\" height=\"20\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <subviews>\n                        <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"qEF-At-YGV\">\n                            <rect key=\"frame\" x=\"4\" y=\"3\" width=\"127\" height=\"17\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"right\" title=\"0x0000000000000000\" id=\"3Ws-AL-pDW\">\n                                <font key=\"font\" size=\"11\" name=\"Menlo-Regular\"/>\n                                <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" red=\"0.0\" green=\"0.0\" blue=\"0.0\" alpha=\"0.051054180475006906\" colorSpace=\"custom\" customColorSpace=\"sRGB\"/>\n                            </textFieldCell>\n                        </textField>\n                        <popUpButton id=\"fAd-pL-hD3\">\n                            <rect key=\"frame\" x=\"130\" y=\"1\" width=\"16\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <popUpButtonCell key=\"cell\" type=\"bevel\" title=\"2 進\" bezelStyle=\"rounded\" alignment=\"left\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" arrowPosition=\"arrowAtCenter\" selectedItem=\"Ql8-Yj-GNF\" id=\"jsY-zd-eaC\">\n                                <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"smallSystem\"/>\n                                <menu key=\"menu\" id=\"W6L-9s-vAV\">\n                                    <items>\n                                        <menuItem title=\"2 進\" state=\"on\" hidden=\"YES\" id=\"Ql8-Yj-GNF\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"ブール値\" tag=\"1\" id=\"VoA-fE-sxQ\"/>\n                                        <menuItem title=\"10 進\" tag=\"3\" id=\"Hab-wq-jWg\"/>\n                                        <menuItem title=\"浮動小数点数\" tag=\"2\" id=\"2IG-5I-rJY\"/>\n                                        <menuItem title=\"16 進\" tag=\"4\" id=\"SoX-XB-pNK\"/>\n                                        <menuItem title=\"8 進\" tag=\"5\" id=\"5Ci-Jw-A07\"/>\n                                        <menuItem title=\"符号なし 10 進\" tag=\"6\" id=\"QOY-jj-Mna\"/>\n                                    </items>\n                                </menu>\n                            </popUpButtonCell>\n                            <connections>\n                                <action selector=\"switchDisplayFormat:\" target=\"jaL-7X-k26\" id=\"VTy-Z7-Jxf\"/>\n                            </connections>\n                        </popUpButton>\n                    </subviews>\n                    <connections>\n                        <outlet property=\"_popUpButton\" destination=\"fAd-pL-hD3\" id=\"tc3-Wy-sGM\"/>\n                        <outlet property=\"_textField\" destination=\"qEF-At-YGV\" id=\"dOS-N9-mnK\"/>\n                    </connections>\n                </customView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-21\" y=\"-184\"/>\n        </customView>\n        <collectionViewItem id=\"faJ-j9-dhQ\" customClass=\"CUICollectionViewRegisterItem\">\n            <connections>\n                <outlet property=\"_registerNameLabel\" destination=\"49v-rz-P77\" id=\"BR4-Vr-dVK\"/>\n                <outlet property=\"_registerValueDisplayFormatPopUpButton\" destination=\"fAd-pL-hD3\" id=\"9NM-Ax-cVM\"/>\n                <outlet property=\"_registerValueLabel\" destination=\"jaL-7X-k26\" id=\"IU3-mu-U3V\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"6gV-UU-WJg\"/>\n            </connections>\n        </collectionViewItem>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICrashLogPresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_bottomView\" destination=\"16n-m5-v72\" id=\"M96-Rj-3vP\"/>\n                <outlet property=\"_columnModeButton\" destination=\"0Gc-7g-Ass\" id=\"XI8-35-JsW\"/>\n                <outlet property=\"_diagnosticMessageTextView\" destination=\"IwT-LV-4u1\" id=\"ygu-AN-tpy\"/>\n                <outlet property=\"_exceptionTypeMoreInfoButton\" destination=\"oyw-Du-OMN\" id=\"82e-p8-W3R\"/>\n                <outlet property=\"_exceptionTypeValue\" destination=\"UjR-qo-T8o\" id=\"orF-Ig-CDt\"/>\n                <outlet property=\"_lightTableModeButton\" destination=\"txw-BM-Naa\" id=\"pWp-8l-uF0\"/>\n                <outlet property=\"_listModeButton\" destination=\"4H4-2A-3rH\" id=\"TPP-Pc-27m\"/>\n                <outlet property=\"_middleView\" destination=\"3jW-NO-y2r\" id=\"tdb-iF-AuV\"/>\n                <outlet property=\"_showBinaryImagesButton\" destination=\"mXS-EH-zAu\" id=\"YMP-3f-zjX\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"STs-S6-lOY\" id=\"7jf-g3-CT7\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"tXx-uN-2vh\" id=\"SBE-d0-8OJ\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"2vU-ne-pQu\" id=\"sEh-95-6Lh\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"QRs-W6-mBT\" id=\"KOn-Jl-aus\"/>\n                <outlet property=\"_splitView\" destination=\"xQ0-xe-5sR\" id=\"I9n-V8-sWN\"/>\n                <outlet property=\"_threadsContainerView\" destination=\"tzS-vU-NLb\" id=\"tuG-n2-KAA\"/>\n                <outlet property=\"_topView\" destination=\"fcj-Y3-D2P\" id=\"otl-zr-mtC\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"447\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gdJ-dt-1kl\">\n                    <rect key=\"frame\" x=\"6\" y=\"421\" width=\"75\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" alignment=\"right\" title=\"例外の種類:\" id=\"ayc-kQ-Slx\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"Sxy-MF-gHB\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"409\" width=\"869\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UjR-qo-T8o\">\n                    <rect key=\"frame\" x=\"84\" y=\"421\" width=\"395\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" id=\"s2X-DC-xIe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"oyw-Du-OMN\">\n                    <rect key=\"frame\" x=\"743\" y=\"412\" width=\"112\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"詳しい情報...\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Upz-9K-gHp\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showMoreExceptionInfo:\" target=\"-2\" id=\"A1K-iE-4RQ\"/>\n                    </connections>\n                </button>\n                <splitView arrangesAllSubviews=\"NO\" dividerStyle=\"thin\" id=\"xQ0-xe-5sR\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"411\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <subviews>\n                        <customView id=\"fcj-Y3-D2P\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"92\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                            <subviews>\n                                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"xta-0h-6ql\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"871\" height=\"73\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <clipView key=\"contentView\" copiesOnScroll=\"NO\" id=\"d4p-1Y-po0\">\n                                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"869\" height=\"71\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                        <subviews>\n                                            <textView editable=\"NO\" drawsBackground=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" id=\"IwT-LV-4u1\">\n                                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"869\" height=\"71\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                <size key=\"minSize\" width=\"869\" height=\"71\"/>\n                                                <size key=\"maxSize\" width=\"871\" height=\"10000000\"/>\n                                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            </textView>\n                                        </subviews>\n                                    </clipView>\n                                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"RY3-Qx-cWa\">\n                                        <rect key=\"frame\" x=\"-14\" y=\"1\" width=\"15\" height=\"0.0\"/>\n                                        <autoresizingMask key=\"autoresizingMask\"/>\n                                    </scroller>\n                                </scrollView>\n                                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TL4-gi-udl\">\n                                    <rect key=\"frame\" x=\"13\" y=\"3\" width=\"89\" height=\"16\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" sendsActionOnEndEditing=\"YES\" title=\"バックトレース\" id=\"Dtf-ev-i4n\">\n                                        <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    </textFieldCell>\n                                </textField>\n                            </subviews>\n                        </customView>\n                        <customView id=\"3jW-NO-y2r\" userLabel=\"Middle View\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"93\" width=\"869\" height=\"177\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                            <subviews>\n                                <button toolTip=\"列にバックトレースを表示す\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"0Gc-7g-Ass\">\n                                    <rect key=\"frame\" x=\"65\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallColumn_Template\" imagePosition=\"only\" alignment=\"center\" inset=\"2\" id=\"X5W-Qe-nKe\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"e7v-G7-W7s\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"クラッシュしたスレッドのみを表示す\" verticalHuggingPriority=\"750\" id=\"QRs-W6-mBT\">\n                                    <rect key=\"frame\" x=\"751\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"con-zk-L9l\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"fgj-Js-Ah7\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"機械命令アドレスを表示または非表示にします\" verticalHuggingPriority=\"750\" id=\"2vU-ne-pQu\">\n                                    <rect key=\"frame\" x=\"809\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"w28-Ax-j2K\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"gJR-EI-GwW\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"バイナリ名を表示または非表示にします\" verticalHuggingPriority=\"750\" id=\"STs-S6-lOY\">\n                                    <rect key=\"frame\" x=\"780\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"Aan-op-skH\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"sVI-Dr-72U\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"バイトオフセットを表示または非表示にします\" verticalHuggingPriority=\"750\" id=\"tXx-uN-2vh\">\n                                    <rect key=\"frame\" x=\"838\" y=\"-1\" width=\"30\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"GRj-N7-F4j\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"MdF-Tl-Xtk\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"バイナリのイメージを表示または非表示にす\" verticalHuggingPriority=\"750\" id=\"mXS-EH-zAu\">\n                                    <rect key=\"frame\" x=\"1\" y=\"-1\" width=\"27\" height=\"22\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"bottom_disclose_Template\" imagePosition=\"only\" alignment=\"center\" alternateImage=\"bottom_hide_Template\" inset=\"2\" id=\"Awy-Hl-TgF\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"showHideBottomView:\" target=\"-2\" id=\"udq-fk-pc4\"/>\n                                    </connections>\n                                </button>\n                                <button toolTip=\"バックトレースをリストに表示します\" verticalHuggingPriority=\"750\" tag=\"1\" id=\"4H4-2A-3rH\">\n                                    <rect key=\"frame\" x=\"42\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSListViewTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"i1d-5C-VGM\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"mrq-dw-3ek\"/>\n                                    </connections>\n                                </button>\n                                <button hidden=\"YES\" toolTip=\"Show backtraces in a caroussel\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"txw-BM-Naa\">\n                                    <rect key=\"frame\" x=\"88\" y=\"-1\" width=\"24\" height=\"23\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallLightTable_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"EhU-bz-HLR\">\n                                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                        <font key=\"font\" metaFont=\"system\"/>\n                                    </buttonCell>\n                                    <connections>\n                                        <action selector=\"switchViewMode:\" target=\"-2\" id=\"ABc-ah-Ysu\"/>\n                                    </connections>\n                                </button>\n                                <customView id=\"tzS-vU-NLb\">\n                                    <rect key=\"frame\" x=\"-1\" y=\"22\" width=\"871\" height=\"156\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                </customView>\n                            </subviews>\n                        </customView>\n                        <customView id=\"16n-m5-v72\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"271\" width=\"869\" height=\"140\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </customView>\n                    </subviews>\n                    <holdingPriorities>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                        <real value=\"250\"/>\n                    </holdingPriorities>\n                    <connections>\n                        <outlet property=\"delegate\" destination=\"-2\" id=\"jmb-1Q-H0m\"/>\n                    </connections>\n                </splitView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"145.5\" y=\"103.5\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSListViewTemplate\" width=\"14\" height=\"10\"/>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bottom_disclose_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bottom_hide_Template\" width=\"17\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallColumn_Template\" width=\"14\" height=\"10\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n        <image name=\"smallLightTable_Template\" width=\"14\" height=\"10\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICrashLogPresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogPresentationTextViewController\">\n            <connections>\n                <outlet property=\"_sectionsVisibilityPopUpButton\" destination=\"o3T-bg-7a6\" id=\"vRD-qm-Pyp\"/>\n                <outlet property=\"_showBinaryNameButton\" destination=\"Ytt-64-lj2\" id=\"6lh-Tf-i9B\"/>\n                <outlet property=\"_showByteOffsetButton\" destination=\"gHh-U9-6ts\" id=\"w5b-4r-VB4\"/>\n                <outlet property=\"_showMachineInstructionAddressButton\" destination=\"V1i-87-jZk\" id=\"tAE-2I-lj8\"/>\n                <outlet property=\"_showOnlyCrashedThreadButton\" destination=\"hZe-Mo-RWl\" id=\"pSn-XW-qF6\"/>\n                <outlet property=\"_textView\" destination=\"Gtc-Yk-xtd\" id=\"s9U-Yv-TsI\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"612\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <popUpButton toolTip=\"表示されたセクションをフィルタリングする\" id=\"o3T-bg-7a6\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"1\" width=\"31\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"hR3-DY-z5t\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"e8c-hg-WG7\">\n                            <items>\n                                <menuItem image=\"quote_Template\" hidden=\"YES\" id=\"ggI-rC-fEt\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"ヘッダ\" id=\"zdn-EI-sae\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-2\" id=\"QIM-JJ-4Lh\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"fZC-QV-uXY\"/>\n                                <menuItem title=\"例外情報\" id=\"LpK-Zx-Gla\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-2\" id=\"2VZ-w6-6FZ\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"診断メッセージ\" id=\"M4h-Oa-aq3\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-2\" id=\"hQt-R4-vLH\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"3Wr-0I-wum\"/>\n                                <menuItem title=\"バックトレース\" id=\"kXZ-qs-DxU\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-2\" id=\"B8j-HN-qA3\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"スレッドの状態\" id=\"d7k-xL-Hbq\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-2\" id=\"c9g-bt-Ect\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"バイナリのイメージ\" id=\"FHu-OU-dEn\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-2\" id=\"E7Q-0s-gFI\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <button toolTip=\"クラッシュしたスレッドのみを表示す\" verticalHuggingPriority=\"750\" id=\"hZe-Mo-RWl\">\n                    <rect key=\"frame\" x=\"574\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"smallCrashedThread_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"cgk-bN-rIw\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOnlyCrashedThread:\" target=\"-2\" id=\"hSj-AL-N38\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"バイトオフセットを表示または非表示にします\" verticalHuggingPriority=\"750\" id=\"gHh-U9-6ts\">\n                    <rect key=\"frame\" x=\"661\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"bytesOffset_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"O1c-Fy-oRt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowOffset:\" target=\"-2\" id=\"s9c-GQ-gYk\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"機械命令アドレスを表示または非表示にします\" verticalHuggingPriority=\"750\" id=\"V1i-87-jZk\">\n                    <rect key=\"frame\" x=\"632\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" title=\"0x\" bezelStyle=\"texturedRounded\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"N9g-4y-bag\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" size=\"11\" name=\"Monaco\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowMemoryAddress:\" target=\"-2\" id=\"muF-oq-Yyp\"/>\n                    </connections>\n                </button>\n                <button toolTip=\"バイナリ名を表示または非表示にします\" verticalHuggingPriority=\"750\" id=\"Ytt-64-lj2\">\n                    <rect key=\"frame\" x=\"603\" y=\"1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"binaryImage_Template\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"feE-rv-jxh\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_switchShowBinaryImageIdentifier:\" target=\"-2\" id=\"pin-0C-OOg\"/>\n                    </connections>\n                </button>\n                <scrollView borderType=\"none\" autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" id=\"ekh-hq-gUp\" customClass=\"NSCrashLogTextScrollView\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"692\" height=\"589\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" copiesOnScroll=\"NO\" id=\"5MQ-yl-x1z\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <textView editable=\"NO\" importsGraphics=\"NO\" richText=\"NO\" verticallyResizable=\"YES\" findStyle=\"bar\" allowsCharacterPickerTouchBarItem=\"NO\" textCompletion=\"NO\" smartInsertDelete=\"YES\" id=\"Gtc-Yk-xtd\" customClass=\"CUICrashLogTextView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"692\" height=\"589\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <color key=\"textColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <size key=\"minSize\" width=\"692\" height=\"589\"/>\n                                <size key=\"maxSize\" width=\"692\" height=\"10000000\"/>\n                                <color key=\"insertionPointColor\" name=\"textColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            </textView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"ilc-Nf-Ue4\">\n                        <rect key=\"frame\" x=\"677\" y=\"0.0\" width=\"15\" height=\"589\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"134\" y=\"93\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"binaryImage_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"bytesOffset_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"quote_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"smallCrashedThread_Template\" width=\"16\" height=\"15\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICrashLogsListViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsListViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"kV4-Gy-Y5g\" id=\"mab-gb-mLb\"/>\n                <outlet property=\"_shareMenu\" destination=\"fYp-Jl-UVV\" id=\"UDn-zl-y3K\"/>\n                <outlet property=\"_sortPopUpButton\" destination=\"vD3-8d-OAL\" id=\"bxh-ry-Anh\"/>\n                <outlet property=\"_tableView\" destination=\"up6-IV-9dX\" id=\"qr9-ho-AXW\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"356\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"38\" horizontalPageScroll=\"10\" verticalLineScroll=\"38\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"3HT-Gz-85z\">\n                    <rect key=\"frame\" x=\"-1\" y=\"23\" width=\"242\" height=\"333\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"pIU-n9-gmy\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"240\" height=\"331\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" typeSelect=\"NO\" rowHeight=\"36\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"up6-IV-9dX\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"240\" height=\"331\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"crashlog\" width=\"237\" minWidth=\"40\" maxWidth=\"3000\" id=\"mvk-6t-fLR\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"mYa-rl-emi\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"crashlog cell\" id=\"Xca-mC-mWV\" customClass=\"CUICrashLogTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"237\" height=\"36\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"mVA-Z6-k5O\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"17\" width=\"130\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"x97-bl-W1B\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"PbV-Y5-NBE\">\n                                                        <rect key=\"frame\" x=\"3\" y=\"6\" width=\"24\" height=\"24\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"CAj-gG-wBu\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"JiO-a5-b11\">\n                                                        <rect key=\"frame\" x=\"31\" y=\"5\" width=\"132\" height=\"11\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"JeG-Im-RXs\" customClass=\"CUISelectedWhiteTextFieldCell\">\n                                                            <font key=\"font\" metaFont=\"miniSystem\"/>\n                                                            <color key=\"textColor\" name=\"secondaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"BBl-CI-Lfa\">\n                                                        <rect key=\"frame\" x=\"165\" y=\"11\" width=\"71\" height=\"12\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" controlSize=\"mini\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"zKb-T5-FgR\">\n                                                            <font key=\"font\" metaFont=\"miniSystemBold\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"dateLabel\" destination=\"JiO-a5-b11\" id=\"HbY-n5-YwU\"/>\n                                                    <outlet property=\"exceptionTypeLabel\" destination=\"BBl-CI-Lfa\" id=\"oYd-S0-W7S\"/>\n                                                    <outlet property=\"imageView\" destination=\"PbV-Y5-NBE\" id=\"MnJ-Rq-ILZ\"/>\n                                                    <outlet property=\"textField\" destination=\"mVA-Z6-k5O\" id=\"36v-QD-EVB\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"cwW-Ck-seH\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"9Oi-EP-GeV\"/>\n                                    <outlet property=\"menu\" destination=\"K9J-Sc-Re6\" id=\"I8m-OA-9dB\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"9gf-HZ-0gE\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"fDS-AZ-p9b\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <connections>\n                        <outlet property=\"nextKeyView\" destination=\"kV4-Gy-Y5g\" id=\"1ku-o3-h60\"/>\n                    </connections>\n                </scrollView>\n                <popUpButton id=\"vD3-8d-OAL\">\n                    <rect key=\"frame\" x=\"207\" y=\"4\" width=\"29\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" imagePosition=\"only\" alignment=\"left\" lineBreakMode=\"truncatingTail\" tag=\"-1\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" id=\"GL8-00-Vd6\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"9d9-ef-5mD\">\n                            <items>\n                                <menuItem image=\"NSActionTemplate\" tag=\"-1\" hidden=\"YES\" id=\"29W-Zg-HYo\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"表示\" tag=\"-1\" enabled=\"NO\" id=\"JK6-HP-t2c\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"83X-bU-gU8\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"プロセス名\" id=\"Knq-mU-Xyu\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"4jX-xR-Vde\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"レポートのファイル名\" tag=\"1\" id=\"ymb-51-zC8\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchDisplayedName:\" target=\"-2\" id=\"9Yt-ZP-CXj\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"W3g-2P-JBj\"/>\n                                <menuItem title=\"表示順序\" tag=\"-1\" enabled=\"NO\" id=\"Rfq-Kx-kub\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"xWq-oW-cf1\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"日付\" id=\"Vew-KO-SYM\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"PWf-yF-FXe\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem title=\"名前\" tag=\"1\" id=\"ONn-2g-Z6J\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                    <connections>\n                                        <action selector=\"switchSortType:\" target=\"-2\" id=\"NP0-Rw-xCJ\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"kV4-Gy-Y5g\">\n                    <rect key=\"frame\" x=\"5\" y=\"2\" width=\"201\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"フィルタ\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"vf8-7z-IX2\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"AbZ-G7-C3w\"/>\n                        <outlet property=\"nextKeyView\" destination=\"up6-IV-9dX\" id=\"fro-eH-HkL\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-70\" y=\"-115\"/>\n        </customView>\n        <menu id=\"K9J-Sc-Re6\">\n            <items>\n                <menuItem title=\"共有\" id=\"Z85-YC-iqx\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"共有\" id=\"fYp-Jl-UVV\">\n                        <items>\n                            <menuItem title=\"Item\" id=\"mcY-bs-XBY\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"77W-Wm-C8z\"/>\n                <menuItem title=\"Finderで表示\" id=\"1tQ-M6-BhY\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"VM3-SG-pFL\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"wYO-OM-Zfy\"/>\n                <menuItem title=\"ゴミ箱に入れる\" id=\"H9t-ba-DIj\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-2\" id=\"5Yv-gc-anj\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"bpu-1P-Sum\">\n                    <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-2\" id=\"jz9-Pm-lkY\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"391\" y=\"200\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICrashLogsSourceSmartEditorWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourceSmartEditorWindowController\">\n            <connections>\n                <outlet property=\"_defaultButton\" destination=\"Vz1-eq-Bkn\" id=\"5aX-ze-jQK\"/>\n                <outlet property=\"_descriptionTextField\" destination=\"ZDo-yP-EKy\" id=\"4xH-ud-SgF\"/>\n                <outlet property=\"_nameTextField\" destination=\"xBE-Xe-jfR\" id=\"MHn-8t-z8e\"/>\n                <outlet property=\"_predicatorEditor\" destination=\"jDY-Qj-m2x\" id=\"FoF-WG-5OS\"/>\n                <outlet property=\"window\" destination=\"6Nx-tZ-z08\" id=\"xRR-dz-5L0\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"\" animationBehavior=\"default\" id=\"6Nx-tZ-z08\" customClass=\"CUICrashLogsSourceSmartEditorPanel\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"272\" y=\"172\" width=\"770\" height=\"425\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"500\" height=\"300\"/>\n            <view key=\"contentView\" id=\"faP-Uk-3iG\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"770\" height=\"425\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"10\" horizontalPageScroll=\"10\" verticalLineScroll=\"10\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"gOj-hZ-3PD\">\n                        <rect key=\"frame\" x=\"20\" y=\"61\" width=\"730\" height=\"253\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <clipView key=\"contentView\" id=\"hPl-qb-BPf\">\n                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"728\" height=\"251\"/>\n                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            <subviews>\n                                <predicateEditor verticalHuggingPriority=\"750\" nestingMode=\"compound\" formattingStringsFilename=\"Predicates\" rowHeight=\"32\" id=\"jDY-Qj-m2x\">\n                                    <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"728\" height=\"251\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                    <rowTemplates/>\n                                </predicateEditor>\n                            </subviews>\n                        </clipView>\n                        <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"qAm-Sw-0Kh\">\n                            <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"360\" height=\"15\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"7TB-Eg-mtV\">\n                            <rect key=\"frame\" x=\"336\" y=\"1\" width=\"15\" height=\"84\"/>\n                            <autoresizingMask key=\"autoresizingMask\"/>\n                        </scroller>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"xBE-Xe-jfR\" id=\"VQF-PC-qyE\"/>\n                        </connections>\n                    </scrollView>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"l74-1V-jTB\">\n                        <rect key=\"frame\" x=\"18\" y=\"386\" width=\"44\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"名前:\" id=\"reH-vX-GUc\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"xBE-Xe-jfR\">\n                        <rect key=\"frame\" x=\"68\" y=\"383\" width=\"682\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"vms-yZ-h6X\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"ZDo-yP-EKy\" id=\"KLi-H6-FaN\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"scv-qL-eIO\">\n                        <rect key=\"frame\" x=\"18\" y=\"357\" width=\"44\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"説明:\" id=\"zQj-c9-rhZ\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gZy-Gi-lVS\">\n                        <rect key=\"frame\" x=\"18\" y=\"322\" width=\"255\" height=\"17\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"一致するすべてのレポートを一覧表示します:\" id=\"yeg-vI-i3G\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <textField verticalHuggingPriority=\"750\" id=\"ZDo-yP-EKy\">\n                        <rect key=\"frame\" x=\"68\" y=\"354\" width=\"682\" height=\"22\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" sendsActionOnEndEditing=\"YES\" borderStyle=\"bezel\" drawsBackground=\"YES\" id=\"NHO-Tg-DVY\">\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <outlet property=\"nextKeyView\" destination=\"jDY-Qj-m2x\" id=\"7GQ-Ig-FpW\"/>\n                        </connections>\n                    </textField>\n                    <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"Vz1-eq-Bkn\">\n                        <rect key=\"frame\" x=\"674\" y=\"13\" width=\"82\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"OK\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"XBD-qh-UfL\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nDQ\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"WvP-6v-END\"/>\n                        </connections>\n                    </button>\n                    <button verticalHuggingPriority=\"750\" id=\"V1T-Ch-XmL\">\n                        <rect key=\"frame\" x=\"573\" y=\"12\" width=\"101\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"push\" title=\"キャンセル\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"wdm-Py-Aj7\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                            <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nGw\n</string>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"endDialog:\" target=\"-2\" id=\"Bzy-Dz-sSF\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <point key=\"canvasLocation\" x=\"101\" y=\"-846.5\"/>\n        </window>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUICrashLogsSourcesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUICrashLogsSourcesViewController\">\n            <connections>\n                <outlet property=\"_actionPopUpButton\" destination=\"sKM-ic-Jtc\" id=\"iwb-q5-Ljf\"/>\n                <outlet property=\"_removeButton\" destination=\"FnB-m4-Sew\" id=\"wN7-Xv-wbV\"/>\n                <outlet property=\"_tableView\" destination=\"qaX-hd-IQc\" id=\"7TK-LI-fbH\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"204\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"26\" horizontalPageScroll=\"10\" verticalLineScroll=\"26\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"jOq-q2-5j4\">\n                    <rect key=\"frame\" x=\"-1\" y=\"20\" width=\"294\" height=\"185\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"V1I-rp-JOe\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"292\" height=\"183\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"firstColumnOnly\" columnReordering=\"NO\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"24\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"qaX-hd-IQc\" customClass=\"CUITableViewNoSpace\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"292\" height=\"183\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"288\" minWidth=\"40\" maxWidth=\"3000\" id=\"8eI-mT-cek\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"6Aq-8j-jza\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView identifier=\"regular\" id=\"V1Z-VM-OSw\" customClass=\"CUICrashLogsSourceTableCellView\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"288\" height=\"24\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"CHR-0u-IlO\">\n                                                        <rect key=\"frame\" x=\"28\" y=\"4\" width=\"211\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"nc6-Rz-iCi\">\n                                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeSourceNameFrom:\" target=\"-2\" id=\"mWi-p6-3aT\"/>\n                                                        </connections>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"oo6-n4-B90\">\n                                                        <rect key=\"frame\" x=\"6\" y=\"4\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"4kJ-0G-1fI\"/>\n                                                    </imageView>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"FRn-Dx-rid\" customClass=\"CUICaptionView\">\n                                                        <rect key=\"frame\" x=\"241\" y=\"4\" width=\"45\" height=\"17\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" alignment=\"center\" id=\"gba-xW-dcj\">\n                                                            <font key=\"font\" metaFont=\"system\" size=\"10\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"countTextField\" destination=\"FRn-Dx-rid\" id=\"Ifb-AG-5YH\"/>\n                                                    <outlet property=\"imageView\" destination=\"oo6-n4-B90\" id=\"Oxn-bE-uRy\"/>\n                                                    <outlet property=\"textField\" destination=\"CHR-0u-IlO\" id=\"X4V-af-tuu\"/>\n                                                </connections>\n                                            </tableCellView>\n                                            <tableCellView identifier=\"separator\" id=\"HDp-BB-XMC\">\n                                                <rect key=\"frame\" x=\"1\" y=\"27\" width=\"288\" height=\"12\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"LMg-V2-t05\">\n                                                        <rect key=\"frame\" x=\"12\" y=\"4\" width=\"264\" height=\"4\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                    </box>\n                                                </subviews>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"Rbs-pr-q0d\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"zhS-3Z-X2w\"/>\n                                    <outlet property=\"menu\" destination=\"HyN-lT-5sn\" id=\"71y-43-qQ2\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                        <nil key=\"backgroundColor\"/>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"T63-2m-Wdk\">\n                        <rect key=\"frame\" x=\"1\" y=\"119\" width=\"223\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"QtW-2T-sMx\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                </scrollView>\n                <button toolTip=\"ファイル、フォルダー、またはスマートソースを追加します\" verticalHuggingPriority=\"750\" id=\"FnB-m4-Sew\">\n                    <rect key=\"frame\" x=\"26\" y=\"-2\" width=\"25\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" image=\"NSRemoveTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"ocB-wp-jcr\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"removeSources:\" target=\"-2\" id=\"I1p-xT-TZx\"/>\n                    </connections>\n                </button>\n                <popUpButton id=\"sKM-ic-Jtc\">\n                    <rect key=\"frame\" x=\"262\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"MSJ-wy-0Je\" id=\"lEb-Ag-E8W\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"LzV-Lh-Udh\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSActionTemplate\" hidden=\"YES\" id=\"MSJ-wy-0Je\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"編集...\" id=\"9dK-mu-DL0\">\n                                    <connections>\n                                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"PmO-aB-nyF\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"2ub-md-RCd\"/>\n                                <menuItem title=\"Finderで表示\" id=\"pSl-d5-liK\">\n                                    <connections>\n                                        <action selector=\"showInFinder:\" target=\"-2\" id=\"wFv-E8-fC9\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n                <popUpButton toolTip=\"ファイル、フォルダー、またはスマートソースを追加します\" id=\"Fjw-36-xHZ\">\n                    <rect key=\"frame\" x=\"-4\" y=\"-1\" width=\"30\" height=\"23\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"roundTextured\" bezelStyle=\"texturedRounded\" imagePosition=\"only\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" imageScaling=\"proportionallyDown\" inset=\"2\" pullsDown=\"YES\" arrowPosition=\"noArrow\" selectedItem=\"DJQ-Va-eqw\" id=\"w3m-zi-K88\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"vOh-MW-SiJ\">\n                            <items>\n                                <menuItem state=\"on\" image=\"NSAddTemplate\" hidden=\"YES\" id=\"DJQ-Va-eqw\">\n                                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                </menuItem>\n                                <menuItem title=\"新しいスマートソース...\" id=\"HSw-t4-mnl\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-2\" id=\"mMA-Im-5Li\"/>\n                                    </connections>\n                                </menuItem>\n                                <menuItem isSeparatorItem=\"YES\" id=\"FFc-YN-a1b\"/>\n                                <menuItem title=\"ファイルまたはフォルダを追加,,,\" id=\"r1o-zR-BIu\">\n                                    <connections>\n                                        <action selector=\"CUI_MENUACTION_addSource:\" target=\"-2\" id=\"1HN-pX-hYb\"/>\n                                    </connections>\n                                </menuItem>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                </popUpButton>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-704\" y=\"-847\"/>\n        </customView>\n        <menu id=\"HyN-lT-5sn\">\n            <items>\n                <menuItem title=\"編集...\" id=\"Twv-NI-xzw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"editSmartSource:\" target=\"-2\" id=\"KCD-e6-KYn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"qHD-mG-1OK\"/>\n                <menuItem title=\"書き出す...\" id=\"WOP-2L-vqA\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-2\" id=\"VBk-ZW-3Ao\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"lae-j9-hK9\"/>\n                <menuItem title=\"Finderで表示\" id=\"teN-5F-Oei\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"Lf6-Pc-sdu\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"1yX-c0-au5\"/>\n                <menuItem title=\"名前の順に並べる\" id=\"kQZ-We-jop\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"sortByName:\" target=\"-2\" id=\"VpQ-ph-eP1\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-266\" y=\"-716\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSActionTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIExportAccessoryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIExportAccessoryViewController\">\n            <connections>\n                <outlet property=\"_allContentsRadioButton\" destination=\"lQT-bg-eZT\" id=\"Mpw-Xc-7kK\"/>\n                <outlet property=\"_formatPopUpButton\" destination=\"1u4-74-6Q1\" id=\"Nog-Ao-3bb\"/>\n                <outlet property=\"_selectionOnlyRadioButton\" destination=\"yCi-24-cSg\" id=\"hjW-mF-lCx\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"608\" height=\"188\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n            <subviews>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"1u4-74-6Q1\">\n                    <rect key=\"frame\" x=\"306\" y=\"144\" width=\"81\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"HTML\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"lK1-XA-eFw\" id=\"3tZ-5v-KqQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"NIf-x2-QG2\">\n                            <items>\n                                <menuItem title=\"HTML\" state=\"on\" id=\"lK1-XA-eFw\"/>\n                                <menuItem title=\"RTF\" tag=\"1\" id=\"OPJ-uJ-ymt\"/>\n                                <menuItem title=\"PDF\" tag=\"2\" id=\"Hq6-BX-2O0\"/>\n                                <menuItem title=\"テキスト\" tag=\"3\" id=\"U96-pL-0X0\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchExportFormat:\" target=\"-2\" id=\"J2A-b6-fHB\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ra9-fZ-6EK\">\n                    <rect key=\"frame\" x=\"222\" y=\"149\" width=\"80\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"フォーマット:\" id=\"kgo-g3-HQW\">\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"lQT-bg-eZT\">\n                    <rect key=\"frame\" x=\"306\" y=\"112\" width=\"118\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"完全なレポート\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"pba-yN-6P5\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"uaB-9C-u9X\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"yCi-24-cSg\">\n                    <rect key=\"frame\" x=\"306\" y=\"91\" width=\"153\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"radio\" title=\"選択したテキストのみ\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"kfb-cJ-elR\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" usesAppearanceFont=\"YES\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchExportedContents:\" target=\"-2\" id=\"GTa-iX-bQ5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"cJJ-vN-i8N\">\n                    <rect key=\"frame\" x=\"126\" y=\"112\" width=\"176\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"エクスポートされたコンテンツ:\" id=\"buk-Aw-yVe\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"zqB-NN-lWr\">\n                    <rect key=\"frame\" x=\"306\" y=\"56\" width=\"128\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"内容を難読化\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"0GA-Z9-IuK\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" size=\"13\" name=\".HiraKakuInterface-W3\"/>\n                    </buttonCell>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hB6-Pk-5P0\">\n                    <rect key=\"frame\" x=\"325\" y=\"20\" width=\"272\" height=\"28\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"left\" title=\"実行可能ファイルと非システムバイナリイメージの名前、パス、およびシンボルは難読化されます。\" id=\"oMg-qJ-dsJ\">\n                        <font key=\"font\" size=\"11\" name=\".HiraKakuInterface-W3\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-35\" y=\"-24\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIInspectorExecutableViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorExecutableViewController\">\n            <connections>\n                <outlet property=\"_codeSigningButton\" destination=\"S19-tz-doW\" id=\"YIj-Ra-uaQ\"/>\n                <outlet property=\"_executableArchitectureValue\" destination=\"FHg-iH-xDN\" id=\"gZP-1i-Ula\"/>\n                <outlet property=\"_executableIconView\" destination=\"Sae-Ke-hDq\" id=\"ypT-Mj-Zdm\"/>\n                <outlet property=\"_executableNameValue\" destination=\"Lro-Zd-nK3\" id=\"TjT-bg-eaE\"/>\n                <outlet property=\"_executablePathShowButton\" destination=\"HUC-Md-GwA\" id=\"XhF-6S-OEB\"/>\n                <outlet property=\"_executablePathValue\" destination=\"vJ5-dm-szr\" id=\"r17-Kq-oCv\"/>\n                <outlet property=\"_executableVersionValue\" destination=\"gDy-ag-3pH\" id=\"Yag-xh-PfZ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"180\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"gDy-ag-3pH\">\n                    <rect key=\"frame\" x=\"88\" y=\"108\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingTail\" title=\"-\" id=\"IMe-4e-a2n\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"ycX-86-LPH\">\n                    <rect key=\"frame\" x=\"56\" y=\"43\" width=\"28\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"場所:\" id=\"SZn-tV-fDm\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3RL-Kg-wqv\">\n                    <rect key=\"frame\" x=\"5\" y=\"71\" width=\"79\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"アーキテクチャ:\" id=\"gXy-9k-Kye\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"vJ5-dm-szr\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"42\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" selectable=\"YES\" title=\"-\" id=\"wdP-NI-1D3\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Lro-Zd-nK3\">\n                    <rect key=\"frame\" x=\"88\" y=\"125\" width=\"277\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" title=\"-\" id=\"jis-EI-eF4\">\n                        <font key=\"font\" metaFont=\"systemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"Sae-Ke-hDq\">\n                    <rect key=\"frame\" x=\"34\" y=\"101\" width=\"48\" height=\"48\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyUpOrDown\" id=\"ctr-8J-DUa\"/>\n                </imageView>\n                <button verticalHuggingPriority=\"750\" id=\"HUC-Md-GwA\">\n                    <rect key=\"frame\" x=\"366\" y=\"15\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSFollowLinkFreestandingTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"R8w-To-3V9\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showExecutableInFinder:\" target=\"-2\" id=\"tyZ-In-ieS\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"FHg-iH-xDN\">\n                    <rect key=\"frame\" x=\"88\" y=\"71\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" title=\"-\" id=\"sgJ-ZE-akF\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"JP3-16-pwL\">\n                    <rect key=\"frame\" x=\"4\" y=\"160\" width=\"51\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"実行可能\" id=\"hb6-Qr-SQw\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"S19-tz-doW\">\n                    <rect key=\"frame\" x=\"366\" y=\"161\" width=\"14\" height=\"15\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSLockLockedTemplate\" imagePosition=\"overlaps\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"q3s-6z-c4l\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"showCodeSigningInformation:\" target=\"-2\" id=\"2U6-EK-y6N\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-51.5\" y=\"-186\"/>\n        </customView>\n    </objects>\n    <resources>\n        <image name=\"NSFollowLinkFreestandingTemplate\" width=\"14\" height=\"14\"/>\n        <image name=\"NSLockLockedTemplate\" width=\"10\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIInspectorGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorGeneralViewController\">\n            <connections>\n                <outlet property=\"_bridgeOSVersionValue\" destination=\"BfS-1Q-avM\" id=\"Aih-cE-fUa\"/>\n                <outlet property=\"_crashDateValue\" destination=\"aeZ-E8-L6d\" id=\"N7P-8g-o9B\"/>\n                <outlet property=\"_operatingSystemVersionLabel\" destination=\"TdJ-MQ-6CN\" id=\"On3-gp-MLA\"/>\n                <outlet property=\"_operatingSystemVersionValue\" destination=\"SgG-rE-gjS\" id=\"6hk-jF-Az8\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"s8b-in-hjv\">\n                    <rect key=\"frame\" x=\"50\" y=\"59\" width=\"34\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"日付:\" id=\"f0C-O7-hfc\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aeZ-E8-L6d\">\n                    <rect key=\"frame\" x=\"88\" y=\"59\" width=\"283\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"4oA-j1-qqu\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                    <connections>\n                        <outlet property=\"formatter\" destination=\"CAS-2z-CXR\" id=\"o5J-Fr-jq7\"/>\n                    </connections>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"SgG-rE-gjS\">\n                    <rect key=\"frame\" x=\"88\" y=\"37\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"IoO-4Y-BLi\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"TdJ-MQ-6CN\">\n                    <rect key=\"frame\" x=\"18\" y=\"37\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"macOS:\" id=\"B2h-K8-1XC\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Ai6-kr-ddH\">\n                    <rect key=\"frame\" x=\"18\" y=\"15\" width=\"66\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"Bridge OS:\" id=\"hKB-kb-Fu1\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Eku-en-ffA\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"31\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"一般\" id=\"Slr-R1-4oS\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"BfS-1Q-avM\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" title=\"-\" id=\"JiY-vk-jYf\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"69.5\"/>\n        </customView>\n        <dateFormatter dateStyle=\"long\" timeStyle=\"medium\" id=\"CAS-2z-CXR\"/>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIInspectorProcessesViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorProcessesViewController\">\n            <connections>\n                <outlet property=\"_parentProcessNameValue\" destination=\"sdS-1T-5A6\" id=\"YdX-gO-EHR\"/>\n                <outlet property=\"_processNameValue\" destination=\"dWY-e9-8s7\" id=\"kaZ-i4-xhx\"/>\n                <outlet property=\"_responsibleProcessNameValue\" destination=\"UYO-VY-Dyh\" id=\"hqs-KJ-tM6\"/>\n                <outlet property=\"view\" destination=\"rFj-qp-YPZ\" id=\"SDI-BY-k6p\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"rFj-qp-YPZ\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"103\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"4uB-ml-0Ol\">\n                    <rect key=\"frame\" x=\"44\" y=\"15\" width=\"40\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"責任:\" id=\"jqz-4F-VO7\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"UYO-VY-Dyh\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"pZF-sh-MrA\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hLm-Sv-QmR\">\n                    <rect key=\"frame\" x=\"4\" y=\"37\" width=\"80\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"上位プロセス:\" id=\"LQg-a2-eTx\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"S5n-dU-r4J\">\n                    <rect key=\"frame\" x=\"26\" y=\"59\" width=\"58\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"プロセス:\" id=\"cvR-Mj-EZK\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dWY-e9-8s7\">\n                    <rect key=\"frame\" x=\"88\" y=\"59\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"Oa8-vR-6jZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"hD5-0s-riR\">\n                    <rect key=\"frame\" x=\"4\" y=\"83\" width=\"50\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"プロセス\" id=\"Peb-bL-MXn\">\n                        <font key=\"font\" metaFont=\"systemBold\" size=\"11\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"sdS-1T-5A6\">\n                    <rect key=\"frame\" x=\"88\" y=\"37\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"truncatingMiddle\" title=\"-\" id=\"2qk-DS-kXk\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-1.5\" y=\"-239.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIInspectorUserViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIInspectorUserViewController\">\n            <connections>\n                <outlet property=\"_userIDValue\" destination=\"bZr-jf-89d\" id=\"3zx-IQ-gXi\"/>\n                <outlet property=\"view\" destination=\"3rg-3s-egq\" id=\"NYa-HK-UvG\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"3rg-3s-egq\" customClass=\"CUIInspectorAlternateBackgroundView\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"383\" height=\"52\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Hlm-9j-k55\">\n                    <rect key=\"frame\" x=\"4\" y=\"34\" width=\"45\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"left\" title=\"ユーザ\" id=\"SsR-D5-bkx\">\n                        <font key=\"font\" metaFont=\"smallSystemBold\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"bZr-jf-89d\">\n                    <rect key=\"frame\" x=\"88\" y=\"15\" width=\"277\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" selectable=\"YES\" alignment=\"left\" id=\"cqQ-PI-zPB\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"peF-fl-SHq\">\n                    <rect key=\"frame\" x=\"29\" y=\"15\" width=\"55\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"ユーザID:\" id=\"qra-Pb-I2W\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141.5\" y=\"158\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUILineJumperWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUILineJumperWindowController\">\n            <connections>\n                <outlet property=\"_lineNumberField\" destination=\"Hsy-sF-ru8\" id=\"Szf-Gn-kjq\"/>\n                <outlet property=\"_resetButton\" destination=\"dIW-wv-LKd\" id=\"vVJ-Nt-akO\"/>\n                <outlet property=\"window\" destination=\"mSG-cx-fbW\" id=\"fe5-gS-1Ha\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" hidesOnDeactivate=\"YES\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.lineNumber\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titlebarAppearsTransparent=\"YES\" id=\"mSG-cx-fbW\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" fullSizeContentView=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenNone=\"YES\" fullScreenDisallowsTiling=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"384\" height=\"49\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"384\" height=\"49\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"Xph-p4-B8X\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"384\" height=\"49\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n                <subviews>\n                    <textField focusRingType=\"none\" verticalHuggingPriority=\"750\" id=\"Hsy-sF-ru8\">\n                        <rect key=\"frame\" x=\"45\" y=\"11\" width=\"147\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" focusRingType=\"none\" placeholderString=\"行番号\" usesSingleLineMode=\"YES\" id=\"Ju2-zH-bhG\">\n                            <font key=\"font\" metaFont=\"system\" size=\"21\"/>\n                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                        <connections>\n                            <action selector=\"takeLineNumberFrom:\" target=\"-2\" id=\"d6v-mK-cXL\"/>\n                            <outlet property=\"delegate\" destination=\"-2\" id=\"X5a-vS-Tae\"/>\n                        </connections>\n                    </textField>\n                    <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"dpK-Gf-az3\">\n                        <rect key=\"frame\" x=\"9\" y=\"10\" width=\"32\" height=\"32\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                        <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"center\" title=\"#\" id=\"x4t-M3-5dd\">\n                            <font key=\"font\" metaFont=\"system\" size=\"30\"/>\n                            <color key=\"textColor\" name=\"tertiaryLabelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                            <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        </textFieldCell>\n                    </textField>\n                    <button hidden=\"YES\" verticalHuggingPriority=\"750\" id=\"dIW-wv-LKd\">\n                        <rect key=\"frame\" x=\"345\" y=\"14\" width=\"20\" height=\"20\"/>\n                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                        <buttonCell key=\"cell\" type=\"smallSquare\" title=\"Button\" bezelStyle=\"smallSquare\" image=\"NSStopProgressFreestandingTemplate\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyUpOrDown\" inset=\"2\" id=\"AFZ-Xq-Pjf\">\n                            <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                            <font key=\"font\" metaFont=\"system\"/>\n                        </buttonCell>\n                        <connections>\n                            <action selector=\"reset:\" target=\"-2\" id=\"XzM-AA-Vzv\"/>\n                        </connections>\n                    </button>\n                </subviews>\n            </view>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"awR-rx-pPU\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"Hsy-sF-ru8\" id=\"j6W-l3-TNl\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"177\" y=\"-15\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSStopProgressFreestandingTemplate\" width=\"14\" height=\"14\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIMainWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIMainWindowController\">\n            <connections>\n                <outlet property=\"_mainLayoutSegmentedControl\" destination=\"WIY-fY-uf6\" id=\"gGf-x3-UnW\"/>\n                <outlet property=\"_presentationModeSegmentedControl\" destination=\"FpB-c3-RI5\" id=\"7TU-rc-fDv\"/>\n                <outlet property=\"_registersWindowButton\" destination=\"tOu-D2-Ept\" id=\"pD9-s6-b6U\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Unexpectedly\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" frameAutosaveName=\"window.main\" animationBehavior=\"default\" tabbingMode=\"disallowed\" titleVisibility=\"hidden\" id=\"F0z-JX-Cv5\" customClass=\"CUIMainWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" topStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"701\" y=\"761\" width=\"1210\" height=\"576\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1577\"/>\n            <value key=\"minSize\" type=\"size\" width=\"1210\" height=\"576\"/>\n            <view key=\"contentView\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"1210\" height=\"576\"/>\n                <autoresizingMask key=\"autoresizingMask\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"E5E3FE75-B923-4050-8328-E8DBF77270DA\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"qok-Nh-ZqX\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"4BB16A90-DFB3-4B72-BC1E-0501635805D9\" label=\"Registers\" paletteLabel=\"Registers\" toolTip=\"レジスタウィンドウを表示または非表示にします\" id=\"odd-p2-xXV\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"tOu-D2-Ept\">\n                            <rect key=\"frame\" x=\"14\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"タ\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"pn6-k3-IBk\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" changeContents=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"systemBold\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-2\" id=\"zOP-ux-zx8\"/>\n                            </connections>\n                        </button>\n                        <connections>\n                            <action selector=\"showRegisters:\" target=\"-1\" id=\"Q3j-xK-Hru\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FE3CBB7D-3C62-4B2B-84C4-A0F949E6FC9B\" label=\"Symbolicate\" paletteLabel=\"Symbolicate\" toolTip=\"Symbolicate\" id=\"NBt-t6-6de\">\n                        <size key=\"minSize\" width=\"29\" height=\"23\"/>\n                        <size key=\"maxSize\" width=\"29\" height=\"23\"/>\n                        <button key=\"view\" verticalHuggingPriority=\"750\" id=\"zGe-P2-PLz\">\n                            <rect key=\"frame\" x=\"22\" y=\"14\" width=\"29\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"roundTextured\" title=\"✭\" bezelStyle=\"texturedRounded\" imagePosition=\"overlaps\" alignment=\"center\" borderStyle=\"border\" inset=\"2\" id=\"bkf-LP-EE1\">\n                                <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                        </button>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_champollion:\" target=\"-1\" id=\"YYP-Ms-rO2\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"CEEABC9B-6A22-4363-9CEF-97F246735D7F\" explicitItemIdentifier=\"presentation.mode\" label=\"Presentation Mode\" paletteLabel=\"Presentation Mode\" sizingBehavior=\"auto\" id=\"lTL-ew-HB0\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"FpB-c3-RI5\">\n                            <rect key=\"frame\" x=\"18\" y=\"14\" width=\"71\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectOne\" id=\"esc-Se-3Gu\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"テキスト\" image=\"presentation_text_Template\" width=\"32\"/>\n                                    <segment toolTip=\"概要\" image=\"presentation_structured_Template\" width=\"32\" selected=\"YES\" tag=\"1\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"8Dc-fR-ko8\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"651A8C40-7DF7-49AE-B98F-F204C20338E7\" label=\"Areas\" paletteLabel=\"Areas\" sizingBehavior=\"auto\" id=\"dDG-Jy-kkI\">\n                        <nil key=\"toolTip\"/>\n                        <segmentedControl key=\"view\" verticalHuggingPriority=\"750\" id=\"WIY-fY-uf6\">\n                            <rect key=\"frame\" x=\"0.0\" y=\"14\" width=\"104\" height=\"23\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <segmentedCell key=\"cell\" borderStyle=\"border\" alignment=\"left\" style=\"texturedSquare\" trackingMode=\"selectAny\" id=\"IFc-bQ-yuq\">\n                                <font key=\"font\" metaFont=\"system\"/>\n                                <segments>\n                                    <segment toolTip=\"サイドバーを表示または非表示にします\" image=\"left_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                    <segment toolTip=\"バイナリのイメージを表示または非表示にす\" image=\"middle_switch_Template\" width=\"32\" enabled=\"NO\" tag=\"1\"/>\n                                    <segment toolTip=\"インスペクターを表示または非表示にす\" image=\"right_switch_Template\" width=\"32\" selected=\"YES\"/>\n                                </segments>\n                            </segmentedCell>\n                        </segmentedControl>\n                        <connections>\n                            <action selector=\"showHideViews:\" target=\"-1\" id=\"q9p-Cx-Zfc\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowColorsItem\" id=\"Ll5-CG-7p5\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarShowFontsItem\" id=\"5Ai-UD-BMY\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarPrintItem\" id=\"OVf-DI-Wek\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarSpaceItem\" id=\"1s5-E7-9Hl\"/>\n                    <toolbarItem implicitItemIdentifier=\"NSToolbarFlexibleSpaceItem\" id=\"QhD-Oy-cTl\"/>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"QhD-Oy-cTl\"/>\n                    <toolbarItem reference=\"odd-p2-xXV\"/>\n                    <toolbarItem reference=\"1s5-E7-9Hl\"/>\n                    <toolbarItem reference=\"lTL-ew-HB0\"/>\n                    <toolbarItem reference=\"dDG-Jy-kkI\"/>\n                </defaultToolbarItems>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n                <outlet property=\"initialFirstResponder\" destination=\"se5-gp-TjO\" id=\"Ndk-U6-g06\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"279\" y=\"-1395\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"left_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"middle_switch_Template\" width=\"18\" height=\"16\"/>\n        <image name=\"presentation_structured_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"presentation_text_Template\" width=\"16\" height=\"16\"/>\n        <image name=\"right_switch_Template\" width=\"18\" height=\"16\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePaneAdvancedViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneAdvancedViewController\">\n            <connections>\n                <outlet property=\"_remoteVersionCheckerCheckbox\" destination=\"90R-sA-w2P\" id=\"ZPS-qK-ptZ\"/>\n                <outlet property=\"_showDebugMenuCheckbox\" destination=\"ysx-uw-uYe\" id=\"ASL-W1-sIo\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"116\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"90R-sA-w2P\">\n                    <rect key=\"frame\" x=\"333\" y=\"78\" width=\"193\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"自動的にアップデートを確認\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"xZp-NR-s8v\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchRemoteVersionCheck:\" target=\"-2\" id=\"vQo-sV-T4X\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"cfR-UU-mmm\">\n                    <rect key=\"frame\" x=\"154\" y=\"79\" width=\"175\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"ソフトウェア・アップデート:\" id=\"gEo-19-sz4\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"7cp-2p-HDv\">\n                    <rect key=\"frame\" x=\"30\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <button verticalHuggingPriority=\"750\" id=\"ysx-uw-uYe\">\n                    <rect key=\"frame\" x=\"333\" y=\"18\" width=\"262\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"メニューバーに“デバッグ”メニューを表示\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Aq-aa-8q1\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDebugMenu:\" target=\"-2\" id=\"JpC-OR-CwY\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"140\" y=\"65\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePaneCrashreporterViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneCrashreporterViewController\">\n            <connections>\n                <outlet property=\"_dialogTypeGroup\" destination=\"G3J-O5-TdF\" id=\"ZfW-ac-1tR\"/>\n                <outlet property=\"_notificationModeGroup\" destination=\"7ak-aK-Hz3\" id=\"2VA-sI-h8f\"/>\n                <outlet property=\"_reportUncaughtExceptionsCheckbox\" destination=\"k0s-Jp-SYV\" id=\"GO5-qu-ZEq\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"222\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"wjm-1k-GIP\">\n                    <rect key=\"frame\" x=\"249\" y=\"76\" width=\"76\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"通知モード:\" id=\"Ipc-sm-G5f\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <customView id=\"G3J-O5-TdF\">\n                    <rect key=\"frame\" x=\"329\" y=\"107\" width=\"189\" height=\"60\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button toolTip=\"「予期せず終了」ダイアログは、ユーザーが実行するすべてのプロセスに対して表示されます。\" verticalHuggingPriority=\"750\" tag=\"1\" id=\"q4r-Gy-3Z5\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"67\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"開発者\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"Tjt-95-3Z2\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"hvp-pX-cgQ\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"「予期せず終了」ダイアログが表示されることはありません。\" verticalHuggingPriority=\"750\" tag=\"2\" id=\"i8F-ge-i9c\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"67\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"サーバ\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"l5e-xv-Kdo\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"eST-mh-Dhc\"/>\n                            </connections>\n                        </button>\n                        <button toolTip=\"「予期せず終了」ダイアログは、アプリケーションがクラッシュした場合にのみ表示されます。\" verticalHuggingPriority=\"750\" id=\"KDV-3D-Zmr\">\n                            <rect key=\"frame\" x=\"-1\" y=\"43\" width=\"67\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"基本\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"8un-EB-HxH\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterDialogType:\" target=\"-2\" id=\"K5B-SF-Gng\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <customView id=\"7ak-aK-Hz3\">\n                    <rect key=\"frame\" x=\"329\" y=\"54\" width=\"189\" height=\"38\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <subviews>\n                        <button verticalHuggingPriority=\"750\" tag=\"1\" id=\"AhZ-xe-s0x\">\n                            <rect key=\"frame\" x=\"-1\" y=\"-1\" width=\"115\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"システム通知\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"1LC-JU-zMZ\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"Zpu-SM-Vup\"/>\n                            </connections>\n                        </button>\n                        <button verticalHuggingPriority=\"750\" id=\"nMG-po-tCI\">\n                            <rect key=\"frame\" x=\"-1\" y=\"21\" width=\"115\" height=\"18\"/>\n                            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                            <buttonCell key=\"cell\" type=\"radio\" title=\"警告ダイアログ\" bezelStyle=\"regularSquare\" imagePosition=\"left\" alignment=\"left\" inset=\"2\" id=\"2af-hi-y4e\">\n                                <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                <font key=\"font\" metaFont=\"system\"/>\n                            </buttonCell>\n                            <connections>\n                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"-2\" id=\"M91-HQ-GhJ\"/>\n                            </connections>\n                        </button>\n                    </subviews>\n                </customView>\n                <button verticalHuggingPriority=\"750\" id=\"k0s-Jp-SYV\">\n                    <rect key=\"frame\" x=\"327\" y=\"18\" width=\"235\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"キャッチされなかった例外を報告する\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"b1K-o7-rhS\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchReportUncaughtException:\" target=\"-2\" id=\"eNP-mM-U1S\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"X5h-y9-eMQ\">\n                    <rect key=\"frame\" x=\"249\" y=\"151\" width=\"76\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"動作モード:\" id=\"NM5-WZ-kg0\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"3C8-jD-0F8\">\n                    <rect key=\"frame\" x=\"-2\" y=\"188\" width=\"734\" height=\"14\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" controlSize=\"small\" alignment=\"center\" title=\"macOSでアプリケーションが予期せず終了すると、クラッシュレポートはAppleのCrashReporterサービスによって生成されます。\" id=\"XPU-ts-yFW\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"27\" y=\"15\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePaneFontscolorsViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneFontscolorsViewController\">\n            <connections>\n                <outlet property=\"_backgroundColorWell\" destination=\"ojb-CW-adm\" id=\"6Dn-ei-MgC\"/>\n                <outlet property=\"_categoriesClipView\" destination=\"KId-Hv-0z4\" id=\"8eQ-tz-4oA\"/>\n                <outlet property=\"_categoriesTableView\" destination=\"Guq-9s-MSe\" id=\"dF2-aT-AVo\"/>\n                <outlet property=\"_duplicateThemeButton\" destination=\"wrW-a0-5bb\" id=\"JXl-nQ-lNe\"/>\n                <outlet property=\"_fontLabel\" destination=\"Gpc-y1-LVL\" id=\"vcf-Hl-1cN\"/>\n                <outlet property=\"_fontPanelButton\" destination=\"VXB-fG-DZO\" id=\"mWq-3d-jcw\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"ECK-8n-jgQ\" id=\"KJN-cp-7TP\"/>\n                <outlet property=\"_removeThemeButton\" destination=\"BeX-wG-c8S\" id=\"P2N-JL-pTj\"/>\n                <outlet property=\"_selectedTextColorWell\" destination=\"smi-ou-IW9\" id=\"SYJ-hQ-CeL\"/>\n                <outlet property=\"_textColorWell\" destination=\"d1A-uU-J9j\" id=\"GSq-6Z-18d\"/>\n                <outlet property=\"_textSelectionBackgroundColorWell\" destination=\"tI7-g9-Ub1\" id=\"Tqn-nk-Zpu\"/>\n                <outlet property=\"_themesTableView\" destination=\"RzM-ng-eMk\" id=\"a50-ng-EZi\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"M45-au-HoK\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"488\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"x9E-yq-Bgj\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"197\" y=\"53\" width=\"513\" height=\"415\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"oxm-RF-gwN\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"413\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"ECK-8n-jgQ\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"389\" width=\"511\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"UoY-kV-fnd\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"210\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"テキスト\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"yUb-rK-XWX\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"cellTitle\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"tKJ-wP-cns\"/>\n                                        </connections>\n                                    </button>\n                                    <button hidden=\"YES\" tag=\"1\" id=\"PFb-pf-cDg\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"273\" y=\"1\" width=\"93\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"概要\" bezelStyle=\"regularSquare\" alignment=\"center\" enabled=\"NO\" tag=\"1\" inset=\"2\" id=\"0bp-JB-hgi\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" size=\"12\" name=\".HiraKakuInterface-W3\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"switchSelectedPresentationMode:\" target=\"-2\" id=\"CaH-UR-hXI\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"ojb-CW-adm\">\n                                <rect key=\"frame\" x=\"99\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeBackgroundColor:\" target=\"-2\" id=\"5mu-v3-HFf\"/>\n                                </connections>\n                            </colorWell>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"0qd-wx-JZe\">\n                                <rect key=\"frame\" x=\"56\" y=\"15\" width=\"37\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"背景:\" id=\"tXe-F9-mz7\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"x6u-0C-glq\">\n                                <rect key=\"frame\" x=\"190\" y=\"15\" width=\"65\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"選択部分:\" id=\"5b7-64-CqX\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <customView id=\"skb-ts-Qkm\" customClass=\"CUIFontAndColorsFramedView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"56\" width=\"511\" height=\"38\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                                <subviews>\n                                    <colorWell id=\"d1A-uU-J9j\">\n                                        <rect key=\"frame\" x=\"270\" y=\"6\" width=\"23\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                        <connections>\n                                            <action selector=\"takeTextColor:\" target=\"-2\" id=\"gBS-3n-BGc\"/>\n                                        </connections>\n                                    </colorWell>\n                                    <customView id=\"cxK-bc-95I\" customClass=\"CUIFontBoxView\">\n                                        <rect key=\"frame\" x=\"11\" y=\"7\" width=\"251\" height=\"22\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                        <subviews>\n                                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Gpc-y1-LVL\">\n                                                <rect key=\"frame\" x=\"6\" y=\"3\" width=\"216\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" title=\"Label\" id=\"NnJ-xy-baM\">\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                </textFieldCell>\n                                            </textField>\n                                            <button verticalHuggingPriority=\"750\" id=\"VXB-fG-DZO\">\n                                                <rect key=\"frame\" x=\"228\" y=\"2\" width=\"18\" height=\"18\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMinY=\"YES\" flexibleMaxY=\"YES\"/>\n                                                <buttonCell key=\"cell\" type=\"bevel\" title=\"Button\" bezelStyle=\"rounded\" image=\"FontPanelButton\" imagePosition=\"only\" alignment=\"center\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"PCX-V4-Ul7\">\n                                                    <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                                                    <font key=\"font\" metaFont=\"system\"/>\n                                                </buttonCell>\n                                                <connections>\n                                                    <action selector=\"showFontPanel:\" target=\"-2\" id=\"TXC-Hh-5Tn\"/>\n                                                </connections>\n                                            </button>\n                                        </subviews>\n                                    </customView>\n                                </subviews>\n                            </customView>\n                            <colorWell id=\"tI7-g9-Ub1\">\n                                <rect key=\"frame\" x=\"261\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeTextSelectionBackgroundColor:\" target=\"-2\" id=\"3Lx-04-mDx\"/>\n                                </connections>\n                            </colorWell>\n                            <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"kKc-J1-3fa\">\n                                <rect key=\"frame\" x=\"-1\" y=\"92\" width=\"513\" height=\"298\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                <clipView key=\"contentView\" drawsBackground=\"NO\" id=\"KId-Hv-0z4\" customClass=\"CUICategoriesClipView\">\n                                    <rect key=\"frame\" x=\"1\" y=\"1\" width=\"511\" height=\"296\"/>\n                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                    <subviews>\n                                        <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowSizeStyle=\"automatic\" viewBased=\"YES\" id=\"Guq-9s-MSe\">\n                                            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"511\" height=\"296\"/>\n                                            <autoresizingMask key=\"autoresizingMask\"/>\n                                            <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <tableColumns>\n                                                <tableColumn width=\"508\" minWidth=\"40\" maxWidth=\"1000\" id=\"3xQ-tZ-j4q\">\n                                                    <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\">\n                                                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                        <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </tableHeaderCell>\n                                                    <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"tik-bw-vkv\">\n                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                    </textFieldCell>\n                                                    <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                                    <prototypeCellViews>\n                                                        <tableCellView id=\"qJj-ED-VEr\">\n                                                            <rect key=\"frame\" x=\"1\" y=\"1\" width=\"508\" height=\"17\"/>\n                                                            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                            <subviews>\n                                                                <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"S4j-JX-cuc\">\n                                                                    <rect key=\"frame\" x=\"5\" y=\"0.0\" width=\"502\" height=\"17\"/>\n                                                                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                                    <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"QoQ-Ln-Apy\" customClass=\"CUIAATextFieldCell\">\n                                                                        <font key=\"font\" metaFont=\"system\"/>\n                                                                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                        <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                                    </textFieldCell>\n                                                                </textField>\n                                                            </subviews>\n                                                            <connections>\n                                                                <outlet property=\"textField\" destination=\"S4j-JX-cuc\" id=\"bvA-qp-OES\"/>\n                                                            </connections>\n                                                        </tableCellView>\n                                                    </prototypeCellViews>\n                                                </tableColumn>\n                                            </tableColumns>\n                                            <connections>\n                                                <outlet property=\"dataSource\" destination=\"-2\" id=\"0Vt-up-xeZ\"/>\n                                                <outlet property=\"delegate\" destination=\"-2\" id=\"peW-tT-8ce\"/>\n                                            </connections>\n                                        </tableView>\n                                    </subviews>\n                                    <nil key=\"backgroundColor\"/>\n                                </clipView>\n                                <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"Osb-Lx-voN\">\n                                    <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"223\" height=\"15\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                                <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Yh8-lV-Sht\">\n                                    <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                                    <autoresizingMask key=\"autoresizingMask\"/>\n                                </scroller>\n                            </scrollView>\n                            <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E3D-RK-YW7\">\n                                <rect key=\"frame\" x=\"311\" y=\"15\" width=\"111\" height=\"17\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"選択したテキスト:\" id=\"hlx-fO-U4G\">\n                                    <font key=\"font\" metaFont=\"system\"/>\n                                    <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                    <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                </textFieldCell>\n                            </textField>\n                            <colorWell id=\"smi-ou-IW9\">\n                                <rect key=\"frame\" x=\"428\" y=\"12\" width=\"44\" height=\"23\"/>\n                                <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                                <color key=\"color\" red=\"0.05813049898\" green=\"0.055541899059999997\" blue=\"1\" alpha=\"1\" colorSpace=\"calibratedRGB\"/>\n                                <connections>\n                                    <action selector=\"takeSelectedTextColor:\" target=\"-2\" id=\"St4-Kf-cho\"/>\n                                </connections>\n                            </colorWell>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"28\" horizontalPageScroll=\"10\" verticalLineScroll=\"28\" verticalPageScroll=\"10\" hasHorizontalScroller=\"NO\" usesPredominantAxisScrolling=\"NO\" horizontalScrollElasticity=\"none\" id=\"WFH-OC-tjY\">\n                    <rect key=\"frame\" x=\"20\" y=\"71\" width=\"167\" height=\"397\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"Jk0-k7-FSA\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"165\" height=\"396\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" multipleSelection=\"NO\" emptySelection=\"NO\" autosaveColumns=\"NO\" rowHeight=\"26\" rowSizeStyle=\"automatic\" headerView=\"CBt-FS-rdj\" viewBased=\"YES\" id=\"RzM-ng-eMk\" customClass=\"CUIThemesTableView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"371\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn width=\"162\" minWidth=\"40\" maxWidth=\"1000\" id=\"8z8-zq-M80\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"center\" title=\"テーマ\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"LIW-YF-0qh\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"g8I-5G-l02\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"162\" height=\"26\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"tDm-Ft-Jnv\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"6\" width=\"162\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"tXJ-2u-YI1\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                        <connections>\n                                                            <action selector=\"takeThemeName:\" target=\"-2\" id=\"X61-RY-efm\"/>\n                                                        </connections>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"tDm-Ft-Jnv\" id=\"kHG-t9-3y3\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"VVl-X3-gEs\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"qGO-er-Uo0\"/>\n                                    <outlet property=\"menu\" destination=\"eAx-eb-TeX\" id=\"6hE-7d-DjH\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"sWy-II-SrD\">\n                        <rect key=\"frame\" x=\"-100\" y=\"-100\" width=\"160\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"Ivf-sc-bjn\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"CBt-FS-rdj\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"165\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"wrW-a0-5bb\">\n                    <rect key=\"frame\" x=\"20\" y=\"52\" width=\"78\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" title=\"複製\" bezelStyle=\"smallSquare\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"qIb-6V-bKQ\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Xri-vW-CH4\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"BeX-wG-c8S\">\n                    <rect key=\"frame\" x=\"97\" y=\"52\" width=\"24\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"c5I-q7-mxk\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"DD1-V1-TBJ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"umy-j0-XLf\">\n                    <rect key=\"frame\" x=\"578\" y=\"13\" width=\"137\" height=\"32\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"push\" title=\"デフォルトに戻す\" bezelStyle=\"rounded\" alignment=\"center\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"CuZ-Pa-zjm\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"restoreDefaults:\" target=\"-2\" id=\"Gab-8f-vLB\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"QTP-jj-Yu7\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"120\" y=\"52\" width=\"67\" height=\"21\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"7UN-KC-FeU\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"54\" y=\"-910\"/>\n        </customView>\n        <menu id=\"eAx-eb-TeX\">\n            <items>\n                <menuItem title=\"複製\" id=\"RpP-Yq-5CH\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"duplicate:\" target=\"-2\" id=\"Afi-lx-Njn\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"削除...\" id=\"pgM-Ek-dMO\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"Rjs-es-rtG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem isSeparatorItem=\"YES\" id=\"Zf1-4a-jgB\"/>\n                <menuItem title=\"テーマのインポート...\" id=\"5HI-nQ-F9G\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"importTheme:\" target=\"-2\" id=\"cy6-qV-ueG\"/>\n                    </connections>\n                </menuItem>\n                <menuItem title=\"テーマのエクスポート...\" id=\"9mp-BZ-63A\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"exportTheme:\" target=\"-2\" id=\"6h3-pb-u8c\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-320\" y=\"-564\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"FontPanelButton\" width=\"18\" height=\"18\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePaneGeneralViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneGeneralViewController\">\n            <connections>\n                <outlet property=\"_reportViewersPopUpButton\" destination=\"Ytb-pg-OA0\" id=\"1lY-Op-uq4\"/>\n                <outlet property=\"_showsRegistersWindowAtLaunchCheckbox\" destination=\"c18-Y4-l7a\" id=\"9YA-wO-PX5\"/>\n                <outlet property=\"_sourceEditorsPopUpButton\" destination=\"INA-cz-CFq\" id=\"ewg-BF-pgR\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"152\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Tow-sZ-5fR\">\n                    <rect key=\"frame\" x=\"181\" y=\"79\" width=\"148\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"でソースファイルを開く:\" id=\"v8S-NF-Ptc\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"c18-Y4-l7a\">\n                    <rect key=\"frame\" x=\"333\" y=\"116\" width=\"211\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"レジスタウインドウを表示します\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"7Qp-I2-soX\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsRegisterWindowAtLaunch:\" target=\"-2\" id=\"chH-Vd-P2e\"/>\n                    </connections>\n                </button>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"INA-cz-CFq\">\n                    <rect key=\"frame\" x=\"333\" y=\"74\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"Xah-p3-3bg\" id=\"iEv-K7-faP\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"8Pi-eD-O8F\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"Xah-p3-3bg\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchPreferedSourceCodeEditor:\" target=\"-2\" id=\"3B4-sh-5hm\"/>\n                    </connections>\n                </popUpButton>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"aiR-yu-zGz\">\n                    <rect key=\"frame\" x=\"142\" y=\"20\" width=\"187\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"デフォルトのレポートビューア:\" id=\"OlA-pr-NqK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <popUpButton verticalHuggingPriority=\"750\" id=\"Ytb-pg-OA0\">\n                    <rect key=\"frame\" x=\"333\" y=\"15\" width=\"212\" height=\"25\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <popUpButtonCell key=\"cell\" type=\"push\" title=\"-\" bezelStyle=\"rounded\" alignment=\"left\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"borderAndBezel\" imageScaling=\"proportionallyDown\" inset=\"2\" selectedItem=\"jkl-MJ-epa\" id=\"KXn-Rz-1qQ\">\n                        <behavior key=\"behavior\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"menu\"/>\n                        <menu key=\"menu\" id=\"F6M-WY-ruS\">\n                            <items>\n                                <menuItem title=\"-\" state=\"on\" id=\"jkl-MJ-epa\"/>\n                            </items>\n                        </menu>\n                    </popUpButtonCell>\n                    <connections>\n                        <action selector=\"switchDefaultReportsViewer:\" target=\"-2\" id=\"A16-7i-Lxf\"/>\n                    </connections>\n                </popUpButton>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"bWX-Os-IMd\">\n                    <rect key=\"frame\" x=\"20\" y=\"55\" width=\"690\" height=\"4\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"WI8-fU-dkC\">\n                    <rect key=\"frame\" x=\"169\" y=\"117\" width=\"160\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"アプリケーションの開始時:\" id=\"RtP-AJ-XN5\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"248\" y=\"-36\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePanePresentationOutlineViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationOutlineViewController\">\n            <connections>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"ZYd-5r-yQv\" id=\"i9c-kL-7HJ\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"r6r-RI-kcs\" id=\"Ror-u4-rou\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"8Nm-R3-fGu\" id=\"3g3-DD-9IJ\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"98p-UU-gFL\">\n                    <rect key=\"frame\" x=\"23\" y=\"284\" width=\"302\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"スタックフレームのデフォルトの表示コンポーネント:\" id=\"9hi-bS-vgU\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ZYd-5r-yQv\">\n                    <rect key=\"frame\" x=\"329\" y=\"283\" width=\"101\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"バイナリの名\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Gp3-2V-rzt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"WHi-RH-9MD\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"8Nm-R3-fGu\">\n                    <rect key=\"frame\" x=\"329\" y=\"262\" width=\"131\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"機械命令アドレス\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"TVT-Ex-NJf\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jH7-tG-qIn\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"r6r-RI-kcs\">\n                    <rect key=\"frame\" x=\"329\" y=\"241\" width=\"174\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"バイトオフセットとソース\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"DAf-CC-sze\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"GhR-oX-eh8\"/>\n                    </connections>\n                </button>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"141\" y=\"154.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePanePresentationTextViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationTextViewController\">\n            <connections>\n                <outlet property=\"_lineWrappingCheckbox\" destination=\"ANa-W0-TnO\" id=\"0X3-XK-fry\"/>\n                <outlet property=\"_showBacktracesCheckbox\" destination=\"vj7-9l-wu4\" id=\"KSi-Nm-wqp\"/>\n                <outlet property=\"_showBinaryImagesCheckbox\" destination=\"ayi-wa-Elc\" id=\"mYB-oN-qAA\"/>\n                <outlet property=\"_showBinaryNameCheckbox\" destination=\"rRX-kg-J1V\" id=\"qyO-wp-PBr\"/>\n                <outlet property=\"_showByteOffsetCheckbox\" destination=\"Kfz-pY-oUd\" id=\"6mW-ja-r8I\"/>\n                <outlet property=\"_showDiagnosticMessagesCheckbox\" destination=\"iNz-Qb-2d2\" id=\"nDi-1K-iro\"/>\n                <outlet property=\"_showExceptionInformationCheckbox\" destination=\"Qt3-ro-d2D\" id=\"IXu-xm-lli\"/>\n                <outlet property=\"_showHeaderCheckbox\" destination=\"Pvu-81-w7l\" id=\"Pqb-oU-xKL\"/>\n                <outlet property=\"_showMachineInstructionAddressCheckbox\" destination=\"2LX-nh-3AM\" id=\"WZp-Xx-mLd\"/>\n                <outlet property=\"_showThreadStateCheckbox\" destination=\"cir-zS-0pp\" id=\"rgi-7S-ybj\"/>\n                <outlet property=\"_showsLineNumbersCheckbox\" destination=\"n6c-lM-SZM\" id=\"s1h-L4-v2d\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n            <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <button verticalHuggingPriority=\"750\" id=\"Pvu-81-w7l\">\n                    <rect key=\"frame\" x=\"329\" y=\"205\" width=\"77\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"ヘッダ\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zEG-Wx-Nn2\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowHeader:\" target=\"-2\" id=\"r82-eB-Q1G\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Qt3-ro-d2D\">\n                    <rect key=\"frame\" x=\"329\" y=\"184\" width=\"77\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"例外情報\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"F76-W3-yAd\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowExceptionInformation:\" target=\"-2\" id=\"cUe-nn-bRr\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"iNz-Qb-2d2\">\n                    <rect key=\"frame\" x=\"329\" y=\"163\" width=\"114\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"診断メッセージ\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"EEv-JV-T5b\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowDiagnosticMessages:\" target=\"-2\" id=\"wy4-KN-LXQ\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"vj7-9l-wu4\">\n                    <rect key=\"frame\" x=\"329\" y=\"142\" width=\"114\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"バックトレース\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ZOK-Ny-hlt\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBacktraces:\" target=\"-2\" id=\"M7z-KY-6jd\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"cir-zS-0pp\">\n                    <rect key=\"frame\" x=\"329\" y=\"120\" width=\"114\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"スレッドの状態\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"ysb-qv-8M9\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowThreadState:\" target=\"-2\" id=\"5aJ-mY-Zn1\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ayi-wa-Elc\">\n                    <rect key=\"frame\" x=\"329\" y=\"99\" width=\"138\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"バイナリのイメージ\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"Kr8-SF-wcL\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryImages:\" target=\"-2\" id=\"r9d-Iu-XGO\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"MNF-5K-RaR\">\n                    <rect key=\"frame\" x=\"24\" y=\"61\" width=\"301\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"スタックフレームのデフォルトの表示コンポーネント:\" id=\"2et-oL-bun\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"rRX-kg-J1V\">\n                    <rect key=\"frame\" x=\"329\" y=\"60\" width=\"103\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"バイナリの名\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"vWD-FK-a4a\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowBinaryName:\" target=\"-2\" id=\"1JN-45-hUv\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"2LX-nh-3AM\">\n                    <rect key=\"frame\" x=\"329\" y=\"39\" width=\"130\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"機械命令アドレス\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"XDv-jS-TfO\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowMachineInstructionAddress:\" target=\"-2\" id=\"jZT-K0-Oql\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"Kfz-pY-oUd\">\n                    <rect key=\"frame\" x=\"329\" y=\"18\" width=\"172\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"バイトオフセットとソース\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"zE5-mb-UZb\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowByteOffset:\" target=\"-2\" id=\"TPQ-k5-sP5\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"eDV-BF-Pu1\">\n                    <rect key=\"frame\" x=\"236\" y=\"245\" width=\"89\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"行の折り返し:\" id=\"nm4-Se-bRD\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"ANa-W0-TnO\">\n                    <rect key=\"frame\" x=\"329\" y=\"244\" width=\"234\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"ビューアの幅に合わせて行を折り返す\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"1PO-2B-RhF\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchLineWrapping:\" target=\"-2\" id=\"BfM-Sn-zvX\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"1vN-WD-7S5\">\n                    <rect key=\"frame\" x=\"119\" y=\"206\" width=\"206\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"デフォルトで表示されるセクション:\" id=\"LKq-kF-sWQ\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"n6c-lM-SZM\">\n                    <rect key=\"frame\" x=\"329\" y=\"283\" width=\"59\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"行番号\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"8bP-wa-KPh\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchShowsLineNumbers:\" target=\"-2\" id=\"evn-zL-ZnP\"/>\n                    </connections>\n                </button>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"9bL-sk-EjC\">\n                    <rect key=\"frame\" x=\"257\" y=\"284\" width=\"68\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"時間表示:\" id=\"gBx-bb-vVK\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-63\" y=\"-1862.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePanePresentationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePanePresentationViewController\">\n            <connections>\n                <outlet property=\"_contentsView\" destination=\"3Hi-kO-8Wu\" id=\"fmJ-yr-83D\"/>\n                <outlet property=\"_presentationModeTabHeaderView\" destination=\"8YE-EY-01p\" id=\"SPW-EQ-qbE\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"387\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n            <subviews>\n                <box autoresizesSubviews=\"NO\" boxType=\"custom\" borderType=\"line\" title=\"Box\" id=\"wmc-fZ-hP3\" customClass=\"CUIPreferencesTabBox\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"347\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <view key=\"contentView\" id=\"ArU-KV-0n7\">\n                        <rect key=\"frame\" x=\"1\" y=\"1\" width=\"688\" height=\"345\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <customView id=\"8YE-EY-01p\" customClass=\"CUIPreferencesTabHeaderView\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"321\" width=\"688\" height=\"25\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                <subviews>\n                                    <button id=\"OdN-hf-Q5a\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"270\" y=\"1\" width=\"59\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"テキスト\" bezelStyle=\"regularSquare\" alignment=\"center\" inset=\"2\" id=\"ARO-B4-zFG\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"system\" size=\"12\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"ClQ-Fr-Q9W\"/>\n                                        </connections>\n                                    </button>\n                                    <button tag=\"1\" id=\"mm7-bt-sqK\" customClass=\"CUIPreferencesTabButton\">\n                                        <rect key=\"frame\" x=\"344\" y=\"1\" width=\"65\" height=\"23\"/>\n                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                        <buttonCell key=\"cell\" type=\"radio\" title=\"概要\" bezelStyle=\"regularSquare\" alignment=\"center\" tag=\"1\" inset=\"2\" id=\"K3H-7g-Y6W\">\n                                            <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                                            <font key=\"font\" metaFont=\"system\" size=\"12\"/>\n                                        </buttonCell>\n                                        <connections>\n                                            <action selector=\"showPresentationOptions:\" target=\"-2\" id=\"9nl-0S-hxW\"/>\n                                        </connections>\n                                    </button>\n                                </subviews>\n                            </customView>\n                            <customView id=\"3Hi-kO-8Wu\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"688\" height=\"321\"/>\n                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                            </customView>\n                        </subviews>\n                    </view>\n                    <color key=\"fillColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-138\" y=\"-142.5\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencePaneSymbolicationViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencePaneSymbolicationViewController\">\n            <connections>\n                <outlet property=\"_dSYMLibraryPlaceHolderView\" destination=\"vVc-MA-1G3\" id=\"0ly-sp-1WZ\"/>\n                <outlet property=\"_searchForSymbolsFilesButton\" destination=\"Yst-no-gF6\" id=\"9n7-Ui-eWv\"/>\n                <outlet property=\"_symbolicateButton\" destination=\"Tdl-XE-pSN\" id=\"nFP-cN-cbv\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"434\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"E67-yJ-rtd\">\n                    <rect key=\"frame\" x=\"81\" y=\"365\" width=\"118\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"シンボル ファイル:\" id=\"kzW-xF-tfP\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Tdl-XE-pSN\">\n                    <rect key=\"frame\" x=\"203\" y=\"396\" width=\"356\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"可能であれば、マシン命令アドレスをシンボルに変換します\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"mnW-sM-t65\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSymbolicate:\" target=\"-2\" id=\"mac-a1-z7L\"/>\n                    </connections>\n                </button>\n                <customView id=\"vVc-MA-1G3\">\n                    <rect key=\"frame\" x=\"20\" y=\"20\" width=\"690\" height=\"306\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                </customView>\n                <textField horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"750\" id=\"Vva-gy-N3U\">\n                    <rect key=\"frame\" x=\"105\" y=\"397\" width=\"94\" height=\"17\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <textFieldCell key=\"cell\" lineBreakMode=\"clipping\" alignment=\"right\" title=\"シンボル解決:\" id=\"oNL-xZ-Za8\">\n                        <font key=\"font\" metaFont=\"system\"/>\n                        <color key=\"textColor\" name=\"labelColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </textFieldCell>\n                </textField>\n                <button verticalHuggingPriority=\"750\" id=\"Yst-no-gF6\">\n                    <rect key=\"frame\" x=\"203\" y=\"364\" width=\"212\" height=\"18\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"check\" title=\"シンボルファイルを自動的に探す\" bezelStyle=\"regularSquare\" imagePosition=\"left\" state=\"on\" inset=\"2\" id=\"M5T-BJ-hV4\">\n                        <behavior key=\"behavior\" changeContents=\"YES\" doesNotDimImage=\"YES\" lightByContents=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"switchSearchForSymbolFiles:\" target=\"-2\" id=\"G2h-en-QtA\"/>\n                    </connections>\n                </button>\n                <box verticalHuggingPriority=\"750\" boxType=\"separator\" id=\"ino-yQ-Dwr\">\n                    <rect key=\"frame\" x=\"20\" y=\"344\" width=\"690\" height=\"5\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                </box>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-623\" y=\"-437\"/>\n        </customView>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUIPreferencesWindowController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUIPreferencesWindowController\">\n            <connections>\n                <outlet property=\"_toolBar\" destination=\"6zI-aR-fpa\" id=\"CHz-Ac-uHu\"/>\n                <outlet property=\"window\" destination=\"F0z-JX-Cv5\" id=\"gIp-Ho-8D9\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <window title=\"Window\" allowsToolTipsWhenApplicationIsInactive=\"NO\" autorecalculatesKeyViewLoop=\"NO\" restorable=\"NO\" releasedWhenClosed=\"NO\" visibleAtLaunch=\"NO\" animationBehavior=\"default\" tabbingMode=\"disallowed\" id=\"F0z-JX-Cv5\" customClass=\"CUIPreferencesWindow\">\n            <windowStyleMask key=\"styleMask\" titled=\"YES\" closable=\"YES\" miniaturizable=\"YES\" resizable=\"YES\"/>\n            <windowCollectionBehavior key=\"collectionBehavior\" fullScreenDisallowsTiling=\"YES\"/>\n            <windowPositionMask key=\"initialPositionMask\" leftStrut=\"YES\" rightStrut=\"YES\" topStrut=\"YES\" bottomStrut=\"YES\"/>\n            <rect key=\"contentRect\" x=\"196\" y=\"240\" width=\"730\" height=\"400\"/>\n            <rect key=\"screenRect\" x=\"0.0\" y=\"0.0\" width=\"2560\" height=\"1417\"/>\n            <value key=\"minSize\" type=\"size\" width=\"730\" height=\"350\"/>\n            <value key=\"maxSize\" type=\"size\" width=\"730\" height=\"800\"/>\n            <view key=\"contentView\" wantsLayer=\"YES\" id=\"se5-gp-TjO\">\n                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"730\" height=\"400\"/>\n                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            </view>\n            <toolbar key=\"toolbar\" implicitIdentifier=\"D61E4849-961C-442A-8B58-7CA007F20812\" autosavesConfiguration=\"NO\" allowsUserCustomization=\"NO\" displayMode=\"iconAndLabel\" sizeMode=\"regular\" id=\"6zI-aR-fpa\">\n                <allowedToolbarItems>\n                    <toolbarItem implicitItemIdentifier=\"05DB9B5F-BC7F-4CCA-BF32-731C932EA360\" explicitItemIdentifier=\"toolbarItem.general\" label=\"一般\" paletteLabel=\"一般\" image=\"NSPreferencesGeneral\" selectable=\"YES\" id=\"UQU-Ps-228\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JfQ-pF-Hff\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"4277C753-007B-43DA-A729-FE8AC69931C5\" explicitItemIdentifier=\"toolbarItem.fontscolors\" label=\"フォントとカラー\" paletteLabel=\"フォントとカラー\" selectable=\"YES\" id=\"SAh-Qi-gC4\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"JJk-NZ-vjn\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"FB786CBB-BCFC-44B7-8C12-288ADA8E21C6\" explicitItemIdentifier=\"toolbarItem.presentation\" label=\"プレゼンテーション\" paletteLabel=\"プレゼンテーション\" image=\"TextMode\" selectable=\"YES\" id=\"eCa-Vk-UOp\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"4IV-xn-tOM\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"633F5F14-F73C-4AF6-8F67-BED9A917A783\" explicitItemIdentifier=\"toolbarItem.symbolication\" label=\"シンボル解決\" paletteLabel=\"シンボル解決\" image=\"symbolication_Template\" selectable=\"YES\" id=\"Q5n-xT-GUE\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"w6D-Ku-xhR\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"791DB978-2878-4D73-AAA6-621004CCA3A6\" explicitItemIdentifier=\"toolbarItem.crashReporter\" label=\"クラッシュレポーター\" paletteLabel=\"クラッシュレポーター\" image=\"crashreporter\" selectable=\"YES\" id=\"1VP-qg-tbw\">\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"HhP-9G-ZBT\"/>\n                        </connections>\n                    </toolbarItem>\n                    <toolbarItem implicitItemIdentifier=\"25D1A26D-75F7-4BD1-998A-405AE7D65842\" explicitItemIdentifier=\"toolbarItem.advanced\" label=\"詳細\" paletteLabel=\"詳細\" image=\"NSAdvanced\" selectable=\"YES\" id=\"vqd-1P-vnH\">\n                        <size key=\"minSize\" width=\"32\" height=\"32\"/>\n                        <size key=\"maxSize\" width=\"32\" height=\"32\"/>\n                        <connections>\n                            <action selector=\"showPane:\" target=\"-2\" id=\"bs9-H8-G59\"/>\n                        </connections>\n                    </toolbarItem>\n                </allowedToolbarItems>\n                <defaultToolbarItems>\n                    <toolbarItem reference=\"UQU-Ps-228\"/>\n                    <toolbarItem reference=\"eCa-Vk-UOp\"/>\n                    <toolbarItem reference=\"SAh-Qi-gC4\"/>\n                    <toolbarItem reference=\"Q5n-xT-GUE\"/>\n                    <toolbarItem reference=\"1VP-qg-tbw\"/>\n                    <toolbarItem reference=\"vqd-1P-vnH\"/>\n                </defaultToolbarItems>\n                <connections>\n                    <outlet property=\"delegate\" destination=\"-2\" id=\"qsE-xQ-pGw\"/>\n                </connections>\n            </toolbar>\n            <connections>\n                <outlet property=\"delegate\" destination=\"-2\" id=\"0bl-1N-AYu\"/>\n            </connections>\n            <point key=\"canvasLocation\" x=\"-2\" y=\"-706\"/>\n        </window>\n    </objects>\n    <resources>\n        <image name=\"NSAdvanced\" width=\"32\" height=\"32\"/>\n        <image name=\"NSPreferencesGeneral\" width=\"32\" height=\"32\"/>\n        <image name=\"TextMode\" width=\"32\" height=\"32\"/>\n        <image name=\"crashreporter\" width=\"32\" height=\"32\"/>\n        <image name=\"symbolication_Template\" width=\"32\" height=\"32\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CUISymbolsFilesLibraryViewController.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n        <capability name=\"documents saved in the Xcode 8 format\" minToolsVersion=\"8.0\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"CUISymbolsFilesLibraryViewController\">\n            <connections>\n                <outlet property=\"_filterField\" destination=\"F9U-gJ-Z2L\" id=\"dH5-UP-Qqs\"/>\n                <outlet property=\"_removeButton\" destination=\"ehE-Ow-SS2\" id=\"m8U-R6-wqt\"/>\n                <outlet property=\"_tableView\" destination=\"AY0-dP-DvX\" id=\"lpv-VE-ccc\"/>\n                <outlet property=\"view\" destination=\"Hz6-mo-xeY\" id=\"0bl-1N-x8E\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customView id=\"Hz6-mo-xeY\">\n            <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"592\" height=\"349\"/>\n            <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n            <subviews>\n                <scrollView autohidesScrollers=\"YES\" horizontalLineScroll=\"19\" horizontalPageScroll=\"10\" verticalLineScroll=\"19\" verticalPageScroll=\"10\" usesPredominantAxisScrolling=\"NO\" id=\"Rhh-WD-hIX\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"23\" width=\"592\" height=\"326\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                    <clipView key=\"contentView\" id=\"mCs-2R-TXV\">\n                        <rect key=\"frame\" x=\"1\" y=\"0.0\" width=\"590\" height=\"325\"/>\n                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                        <subviews>\n                            <tableView identifier=\"uuids\" verticalHuggingPriority=\"750\" allowsExpansionToolTips=\"YES\" columnAutoresizingStyle=\"lastColumnOnly\" alternatingRowBackgroundColors=\"YES\" columnSelection=\"YES\" autosaveName=\"ui.symbolfiles.list\" rowSizeStyle=\"automatic\" headerView=\"l7j-fB-FoE\" viewBased=\"YES\" id=\"AY0-dP-DvX\">\n                                <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"300\"/>\n                                <autoresizingMask key=\"autoresizingMask\"/>\n                                <size key=\"intercellSpacing\" width=\"3\" height=\"2\"/>\n                                <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <color key=\"gridColor\" name=\"gridColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                <tableColumns>\n                                    <tableColumn identifier=\"name\" width=\"220\" minWidth=\"40\" maxWidth=\"1000\" id=\"Vcp-pq-sB3\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"名前\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"wd0-bU-zBR\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <sortDescriptor key=\"sortDescriptorPrototype\" selector=\"compareNameAndVersion:\" sortKey=\"self\"/>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"02c-Nn-HO4\">\n                                                <rect key=\"frame\" x=\"1\" y=\"1\" width=\"220\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1cT-cq-rEF\">\n                                                        <rect key=\"frame\" x=\"23\" y=\"2\" width=\"195\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"Thg-bW-Hdn\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                    <imageView horizontalHuggingPriority=\"251\" verticalHuggingPriority=\"251\" id=\"jEv-gl-BBo\">\n                                                        <rect key=\"frame\" x=\"4\" y=\"1\" width=\"16\" height=\"16\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <imageCell key=\"cell\" refusesFirstResponder=\"YES\" alignment=\"left\" imageScaling=\"proportionallyDown\" id=\"17w-qR-br7\"/>\n                                                    </imageView>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"imageView\" destination=\"jEv-gl-BBo\" id=\"b3d-u1-YFD\"/>\n                                                    <outlet property=\"textField\" destination=\"1cT-cq-rEF\" id=\"Vzs-Wm-QJ0\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"version\" editable=\"NO\" width=\"110\" minWidth=\"110\" maxWidth=\"110\" id=\"a9F-wr-DSz\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" title=\"バージョン\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"headerColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" title=\"Text Cell\" id=\"2QA-U7-Hh5\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"CAF-d6-J6h\">\n                                                <rect key=\"frame\" x=\"224\" y=\"1\" width=\"110\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"1k1-EI-O6e\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"109\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"lB8-oP-fWV\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"1k1-EI-O6e\" id=\"kIm-93-QIk\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                    <tableColumn identifier=\"uuids\" width=\"251\" minWidth=\"10\" maxWidth=\"3.4028234663852886e+38\" id=\"xFs-nC-pHw\">\n                                        <tableHeaderCell key=\"headerCell\" lineBreakMode=\"truncatingTail\" borderStyle=\"border\" alignment=\"left\" title=\"UUIDs\">\n                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                            <color key=\"textColor\" name=\"headerTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" white=\"0.0\" alpha=\"0.0\" colorSpace=\"custom\" customColorSpace=\"genericGamma22GrayColorSpace\"/>\n                                        </tableHeaderCell>\n                                        <textFieldCell key=\"dataCell\" lineBreakMode=\"truncatingTail\" selectable=\"YES\" editable=\"YES\" alignment=\"left\" title=\"Text Cell\" id=\"QfV-t1-g8t\">\n                                            <font key=\"font\" metaFont=\"system\"/>\n                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                            <color key=\"backgroundColor\" name=\"controlBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                        </textFieldCell>\n                                        <tableColumnResizingMask key=\"resizingMask\" resizeWithTable=\"YES\" userResizable=\"YES\"/>\n                                        <prototypeCellViews>\n                                            <tableCellView id=\"wmr-c9-khj\">\n                                                <rect key=\"frame\" x=\"337\" y=\"1\" width=\"251\" height=\"17\"/>\n                                                <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" heightSizable=\"YES\"/>\n                                                <subviews>\n                                                    <textField verticalHuggingPriority=\"750\" horizontalCompressionResistancePriority=\"250\" id=\"qAo-VI-VaT\">\n                                                        <rect key=\"frame\" x=\"0.0\" y=\"2\" width=\"245\" height=\"14\"/>\n                                                        <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMinY=\"YES\"/>\n                                                        <textFieldCell key=\"cell\" lineBreakMode=\"truncatingTail\" sendsActionOnEndEditing=\"YES\" title=\"Table View Cell\" id=\"vH5-Rz-jfx\">\n                                                            <font key=\"font\" metaFont=\"smallSystem\"/>\n                                                            <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                            <color key=\"backgroundColor\" name=\"controlColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                                                        </textFieldCell>\n                                                    </textField>\n                                                </subviews>\n                                                <connections>\n                                                    <outlet property=\"textField\" destination=\"qAo-VI-VaT\" id=\"KNV-Dt-SB5\"/>\n                                                </connections>\n                                            </tableCellView>\n                                        </prototypeCellViews>\n                                    </tableColumn>\n                                </tableColumns>\n                                <connections>\n                                    <outlet property=\"dataSource\" destination=\"-2\" id=\"DKi-0C-xiC\"/>\n                                    <outlet property=\"delegate\" destination=\"-2\" id=\"Asj-Ja-ycJ\"/>\n                                    <outlet property=\"menu\" destination=\"GF9-kL-5e2\" id=\"AJL-Bv-fVg\"/>\n                                </connections>\n                            </tableView>\n                        </subviews>\n                    </clipView>\n                    <scroller key=\"horizontalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"YES\" id=\"fgB-BL-7Fh\">\n                        <rect key=\"frame\" x=\"1\" y=\"533\" width=\"724\" height=\"15\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <scroller key=\"verticalScroller\" hidden=\"YES\" wantsLayer=\"YES\" verticalHuggingPriority=\"750\" horizontal=\"NO\" id=\"T5m-cm-koD\">\n                        <rect key=\"frame\" x=\"224\" y=\"17\" width=\"15\" height=\"102\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </scroller>\n                    <tableHeaderView key=\"headerView\" id=\"l7j-fB-FoE\">\n                        <rect key=\"frame\" x=\"0.0\" y=\"0.0\" width=\"590\" height=\"25\"/>\n                        <autoresizingMask key=\"autoresizingMask\"/>\n                    </tableHeaderView>\n                </scrollView>\n                <button verticalHuggingPriority=\"750\" id=\"P6v-Ex-GO9\">\n                    <rect key=\"frame\" x=\"0.0\" y=\"-1\" width=\"35\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSAddTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"NS9-6o-ey8\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"addDebuggingSymbolsFile:\" target=\"-2\" id=\"2We-No-BJ5\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"ehE-Ow-SS2\">\n                    <rect key=\"frame\" x=\"34\" y=\"-1\" width=\"31\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMaxX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" imagePosition=\"overlaps\" alignment=\"center\" lineBreakMode=\"truncatingTail\" enabled=\"NO\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"bH8-IA-FZM\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"u5K-Fv-rkO\"/>\n                    </connections>\n                </button>\n                <button verticalHuggingPriority=\"750\" id=\"JKx-dR-M6r\" customClass=\"CUIInactiveButton\">\n                    <rect key=\"frame\" x=\"64\" y=\"-1\" width=\"528\" height=\"26\"/>\n                    <autoresizingMask key=\"autoresizingMask\" widthSizable=\"YES\" flexibleMaxY=\"YES\"/>\n                    <buttonCell key=\"cell\" type=\"smallSquare\" bezelStyle=\"smallSquare\" image=\"NSRemoveTemplate\" alignment=\"center\" lineBreakMode=\"truncatingTail\" state=\"on\" borderStyle=\"border\" imageScaling=\"proportionallyDown\" inset=\"2\" id=\"6R2-VQ-GCt\">\n                        <behavior key=\"behavior\" pushIn=\"YES\" lightByBackground=\"YES\" lightByGray=\"YES\"/>\n                        <font key=\"font\" metaFont=\"system\"/>\n                    </buttonCell>\n                    <connections>\n                        <action selector=\"delete:\" target=\"-2\" id=\"JIV-ic-LZf\"/>\n                    </connections>\n                </button>\n                <searchField wantsLayer=\"YES\" focusRingType=\"none\" verticalHuggingPriority=\"750\" textCompletion=\"NO\" id=\"F9U-gJ-Z2L\">\n                    <rect key=\"frame\" x=\"337\" y=\"3\" width=\"248\" height=\"19\"/>\n                    <autoresizingMask key=\"autoresizingMask\" flexibleMinX=\"YES\" flexibleMaxY=\"YES\"/>\n                    <searchFieldCell key=\"cell\" controlSize=\"small\" scrollable=\"YES\" lineBreakMode=\"clipping\" selectable=\"YES\" editable=\"YES\" borderStyle=\"bezel\" focusRingType=\"none\" alignment=\"left\" placeholderString=\"フィルタ\" usesSingleLineMode=\"YES\" bezelStyle=\"round\" sendsSearchStringImmediately=\"YES\" id=\"tN8-2f-IVZ\">\n                        <font key=\"font\" metaFont=\"smallSystem\"/>\n                        <color key=\"textColor\" name=\"controlTextColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                        <color key=\"backgroundColor\" name=\"textBackgroundColor\" catalog=\"System\" colorSpace=\"catalog\"/>\n                    </searchFieldCell>\n                    <connections>\n                        <action selector=\"takeFilterPatternFrom:\" target=\"-2\" id=\"Hmq-IQ-880\"/>\n                    </connections>\n                </searchField>\n            </subviews>\n            <point key=\"canvasLocation\" x=\"-624\" y=\"-817.5\"/>\n        </customView>\n        <menu id=\"GF9-kL-5e2\">\n            <items>\n                <menuItem title=\"Finderで表示\" id=\"mla-Lw-0ux\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <connections>\n                        <action selector=\"showInFinder:\" target=\"-2\" id=\"qpt-X3-Bo6\"/>\n                    </connections>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-301\" y=\"-467\"/>\n        </menu>\n    </objects>\n    <resources>\n        <image name=\"NSAddTemplate\" width=\"11\" height=\"11\"/>\n        <image name=\"NSRemoveTemplate\" width=\"11\" height=\"11\"/>\n    </resources>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/CodeSigning.strings",
    "content": "\"TestFlight\" = \"TestFlight\";\n\n\"Development\" = \"発達\";\n\n\"AppStore\" = \"AppStore\";\n\n\"Enterprise\" = \"企業\";\n\n\"Developer ID\" = \"Developer ID\";\n\n\"None\" = \"なし\";\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/MainMenu.xib",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<document type=\"com.apple.InterfaceBuilder3.Cocoa.XIB\" version=\"3.0\" toolsVersion=\"14460.31\" targetRuntime=\"MacOSX.Cocoa\" propertyAccessControl=\"none\" customObjectInstantitationMethod=\"direct\">\n    <dependencies>\n        <deployment identifier=\"macosx\"/>\n        <plugIn identifier=\"com.apple.InterfaceBuilder.CocoaPlugin\" version=\"14460.31\"/>\n    </dependencies>\n    <objects>\n        <customObject id=\"-2\" userLabel=\"File's Owner\" customClass=\"NSApplication\">\n            <connections>\n                <outlet property=\"delegate\" destination=\"Voe-Tx-rLC\" id=\"GzC-gU-4Uq\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"-1\" userLabel=\"First Responder\" customClass=\"FirstResponder\"/>\n        <customObject id=\"-3\" userLabel=\"Application\" customClass=\"NSObject\"/>\n        <customObject id=\"Voe-Tx-rLC\" customClass=\"AppDelegate\">\n            <connections>\n                <outlet property=\"_debugMenuBarItem\" destination=\"cNb-At-Imu\" id=\"UE7-n3-l3I\"/>\n                <outlet property=\"_themesMenu\" destination=\"abx-GW-6TZ\" id=\"EEG-6i-WdC\"/>\n            </connections>\n        </customObject>\n        <customObject id=\"YLy-65-1bz\" customClass=\"NSFontManager\"/>\n        <menu title=\"Main Menu\" systemMenu=\"main\" id=\"AYu-sK-qS6\">\n            <items>\n                <menuItem title=\"Unexpectedly\" id=\"1Xt-HY-uBw\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"Unexpectedly\" systemMenu=\"apple\" id=\"uQy-DD-JDr\">\n                        <items>\n                            <menuItem title=\"Unexpectedlyについて\" id=\"5kV-Vb-QxS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showAboutBox:\" target=\"-1\" id=\"8cM-F7-dKT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"VOq-y0-SEH\"/>\n                            <menuItem title=\"環境設定...\" keyEquivalent=\",\" id=\"BOF-NM-1cW\">\n                                <connections>\n                                    <action selector=\"showPreferences:\" target=\"-1\" id=\"Jal-0e-r2i\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"wFC-TO-SCJ\"/>\n                            <menuItem title=\"サービス\" id=\"NMo-om-nkz\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"サービス\" systemMenu=\"services\" id=\"hz9-B4-Xy5\"/>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"4je-JR-u6R\"/>\n                            <menuItem title=\"Unexpectedlyを隠す\" keyEquivalent=\"h\" id=\"Olw-nP-bQN\">\n                                <connections>\n                                    <action selector=\"hide:\" target=\"-1\" id=\"PnN-Uc-m68\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"ほかを隠す\" keyEquivalent=\"h\" id=\"Vdr-fp-XzO\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"hideOtherApplications:\" target=\"-1\" id=\"VT4-aY-XCT\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"すべてを表示\" id=\"Kd2-mp-pUS\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"unhideAllApplications:\" target=\"-1\" id=\"Dhg-Le-xox\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kCx-OE-vgT\"/>\n                            <menuItem title=\"Unexpectedlyを終了\" keyEquivalent=\"q\" id=\"4sb-4s-VLi\">\n                                <connections>\n                                    <action selector=\"terminate:\" target=\"-1\" id=\"Te7-pn-YzF\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"ファイル\" id=\"dMs-cI-mzQ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"ファイル\" id=\"bib-Uj-vzu\">\n                        <items>\n                            <menuItem title=\"新しいスマートソース...\" keyEquivalent=\"N\" id=\"Was-JA-tGl\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSmartSource:\" target=\"-1\" id=\"bHg-uP-Kty\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"Mx6-UK-5B4\"/>\n                            <menuItem title=\"ファイルまたはフォルダを追加...\" keyEquivalent=\"a\" id=\"3wG-3v-uZk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_addSource:\" target=\"-1\" id=\"b1Q-ed-4lm\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"m54-Is-iLE\"/>\n                            <menuItem title=\"閉じる\" keyEquivalent=\"w\" id=\"DVo-aG-piG\">\n                                <connections>\n                                    <action selector=\"performClose:\" target=\"-1\" id=\"HmO-Ls-i7Q\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"56E-C3-0cD\"/>\n                            <menuItem title=\"スマートソースのインポート...\" id=\"lvA-aa-UmE\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_importSmartSource:\" target=\"-1\" id=\"slK-ne-mc7\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"書き出す\" id=\"Pho-kH-aIP\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"書き出す\" id=\"3tw-V4-ayi\">\n                                    <items>\n                                        <menuItem title=\"レポート...\" id=\"9tt-1M-ra5\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportCrashLog:\" target=\"-1\" id=\"yYt-Vu-UUP\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"スマートソース...\" id=\"tTJ-63-TIi\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_exportSmartSource:\" target=\"-1\" id=\"gbF-DM-FHr\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"aJh-i4-bef\"/>\n                            <menuItem title=\"Finderで表示\" id=\"OqK-Vd-hWC\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showInFinder:\" target=\"-1\" id=\"0gW-ak-pFy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"ゴミ箱に入れる\" id=\"GVk-MU-gOy\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveToTrash:\" target=\"-1\" id=\"9KY-Gr-Skj\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Move All xxxxx to Trash\" alternate=\"YES\" id=\"BHd-Dv-6Wl\">\n                                <string key=\"keyEquivalent\" base64-UTF8=\"YES\">\nCA\n</string>\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_moveAllToTrash:\" target=\"-1\" id=\"DLv-Uy-cDS\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eeq-nE-Puw\"/>\n                            <menuItem title=\"ページ設定...\" keyEquivalent=\"P\" id=\"qIS-W8-SiK\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" shift=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"runPageLayout:\" target=\"-1\" id=\"Din-rz-gC5\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"プリント...\" keyEquivalent=\"p\" id=\"aTl-1u-JFS\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_print:\" target=\"-1\" id=\"a83-u9-Pl5\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"編集\" id=\"5QF-Oa-p0T\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"編集\" id=\"W48-6f-4Dl\">\n                        <items>\n                            <menuItem title=\"取り消す\" keyEquivalent=\"z\" id=\"dRJ-4n-Yzg\">\n                                <connections>\n                                    <action selector=\"undo:\" target=\"-1\" id=\"M6e-cu-g7V\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"やり直す\" keyEquivalent=\"Z\" id=\"6dh-zS-Vam\">\n                                <connections>\n                                    <action selector=\"redo:\" target=\"-1\" id=\"oIA-Rs-6OD\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"WRV-NI-Exz\"/>\n                            <menuItem title=\"カット\" keyEquivalent=\"x\" id=\"uRl-iY-unG\">\n                                <connections>\n                                    <action selector=\"cut:\" target=\"-1\" id=\"YJe-68-I9s\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"コピー\" keyEquivalent=\"c\" id=\"x3v-GG-iWU\">\n                                <connections>\n                                    <action selector=\"copy:\" target=\"-1\" id=\"G1f-GL-Joy\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"ペースト\" keyEquivalent=\"v\" id=\"gVA-U4-sdL\">\n                                <connections>\n                                    <action selector=\"paste:\" target=\"-1\" id=\"UvS-8e-Qdg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"ペーストしてスタイルを合わせる\" keyEquivalent=\"V\" id=\"WeT-3V-zwk\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"pasteAsPlainText:\" target=\"-1\" id=\"cEh-KX-wJQ\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"削除\" id=\"pa3-QI-u2k\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"delete:\" target=\"-1\" id=\"0Mk-Ml-PaM\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"すべてを選択\" keyEquivalent=\"a\" id=\"Ruw-6m-B2m\">\n                                <connections>\n                                    <action selector=\"selectAll:\" target=\"-1\" id=\"VNm-Mi-diN\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"uyl-h8-XO2\"/>\n                            <menuItem title=\"検索\" id=\"4EN-yA-p0u\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"検索\" id=\"1b7-l0-nxx\">\n                                    <items>\n                                        <menuItem title=\"検索...\" tag=\"1\" keyEquivalent=\"f\" id=\"Xz5-n4-O0W\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"QsK-9e-uGa\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"次を検索\" tag=\"2\" keyEquivalent=\"g\" id=\"q09-fT-Sye\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"49u-4Y-NRM\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"前を検索\" tag=\"3\" keyEquivalent=\"G\" id=\"OwM-mh-QMV\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"siD-LN-Db0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"選択部分を検索に使用\" tag=\"7\" keyEquivalent=\"e\" id=\"buJ-ug-pKt\">\n                                            <connections>\n                                                <action selector=\"performTextFinderAction:\" target=\"-1\" id=\"M3c-NN-csD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"選択部分へジャンプ\" keyEquivalent=\"j\" id=\"S0p-oC-mLd\">\n                                            <connections>\n                                                <action selector=\"centerSelectionInVisibleArea:\" target=\"-1\" id=\"IOG-6D-g5B\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"スピーチ\" id=\"xrE-MZ-jX0\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"スピーチ\" id=\"3rS-ZA-NoH\">\n                                    <items>\n                                        <menuItem title=\"読み上げを開始\" id=\"Ynk-f8-cLZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"startSpeaking:\" target=\"-1\" id=\"654-Ng-kyl\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"読み上げを停止\" id=\"Oyz-dy-DGm\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"stopSpeaking:\" target=\"-1\" id=\"dX8-6p-jy9\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"表示\" id=\"H8h-7b-M4v\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"表示\" id=\"HyV-fh-RgO\">\n                        <items>\n                            <menuItem title=\"サイドバーを表示\" keyEquivalent=\"1\" id=\"fzY-Ht-27G\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"kra-FC-RZC\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"バイナリのイメージを表示\" tag=\"1\" keyEquivalent=\"2\" id=\"2z5-3m-6dw\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"s1k-G0-TLi\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"インスペクタを表示\" tag=\"2\" keyEquivalent=\"3\" id=\"lQa-tq-Wi7\">\n                                <connections>\n                                    <action selector=\"showHideViews:\" target=\"-1\" id=\"qR9-QJ-Q4R\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"kEv-nO-mPM\"/>\n                            <menuItem title=\"テキスト\" keyEquivalent=\"1\" id=\"qIT-0d-e67\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"eRM-Kc-O5r\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"概要\" tag=\"1\" keyEquivalent=\"2\" id=\"Nr3-m8-qOB\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_switchPresentationMode:\" target=\"-1\" id=\"TDI-d2-Yku\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"tGi-CI-t3Z\"/>\n                            <menuItem title=\"ツールバーを表示\" keyEquivalent=\"t\" id=\"snW-S8-Cw5\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" option=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"toggleToolbarShown:\" target=\"-1\" id=\"BXY-wc-z0C\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"レポートビューア\" id=\"Wlf-Q9-x4u\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"レポートビューア\" id=\"nLy-c6-ILM\">\n                        <items>\n                            <menuItem title=\"フォントサイズ\" id=\"hLb-MS-G2f\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"フォントサイズ\" id=\"TBb-40-aCS\">\n                                    <items>\n                                        <menuItem title=\"増やす\" keyEquivalent=\"+\" id=\"EXj-Y3-9fM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_increaseFontSize:\" target=\"-1\" id=\"qW5-4J-akR\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"減らす\" keyEquivalent=\"-\" id=\"7i3-Bb-CWM\">\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_decreaseFontSize:\" target=\"-1\" id=\"B2V-VK-bcD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"P4p-p3-w1I\"/>\n                                        <menuItem title=\"リセット\" keyEquivalent=\"0\" id=\"kfY-hu-eJP\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_resetFontSize:\" target=\"-1\" id=\"nz0-xy-rD7\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"テーマ\" id=\"yjG-UV-U5C\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"テーマ\" id=\"abx-GW-6TZ\">\n                                    <items>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"NUX-KR-gxh\"/>\n                                        <menuItem title=\"テーマを編集...\" id=\"csr-ry-NgM\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"editThemes:\" target=\"-1\" id=\"F5p-1i-EUu\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"2Cq-5I-dEU\"/>\n                            <menuItem title=\"目に見えるセクション\" id=\"wAR-FX-MEm\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"目に見えるセクション\" id=\"WFL-Rm-rhq\">\n                                    <items>\n                                        <menuItem title=\"ヘッダ\" id=\"HIC-nM-hNN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchHeaderVisibility:\" target=\"-1\" id=\"WUc-lV-ghf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"1r5-yC-AUQ\"/>\n                                        <menuItem title=\"例外情報\" id=\"lvl-an-zWN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchExceptionInformationVisibility:\" target=\"-1\" id=\"fLf-3S-OlT\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"診断メッセージ\" id=\"iKL-gn-vYN\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchDiagnosticMessagesVisibility:\" target=\"-1\" id=\"N8e-k9-P27\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"z5a-l7-tQ4\"/>\n                                        <menuItem title=\"バックトレース\" id=\"DbA-sZ-kG6\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBacktracesVisibility:\" target=\"-1\" id=\"eUz-AU-LoI\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"スレッドの状態\" id=\"RBY-FQ-bMy\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchThreadStateVisibility:\" target=\"-1\" id=\"XYE-gq-GnF\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"バイナリのイメージ\" id=\"rnV-QR-Tam\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_switchBinaryImagesVisibility:\" target=\"-1\" id=\"qnf-0L-mBO\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"移動\" id=\"aG2-MW-iKZ\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"移動\" id=\"YUZ-OQ-Qfb\">\n                        <items>\n                            <menuItem title=\"指定の行に移動...\" keyEquivalent=\"l\" id=\"JtL-ON-s7d\">\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToLine:\" target=\"-1\" id=\"hAa-kF-BVg\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"qbu-Eo-jRw\"/>\n                            <menuItem title=\"セクションへジャンプ\" id=\"2Ip-qq-DKf\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"セクションへジャンプ\" id=\"AcZ-wd-kkj\">\n                                    <items>\n                                        <menuItem title=\"ヘッダ\" id=\"Bmg-Jh-vql\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToHeader:\" target=\"-1\" id=\"0VQ-jO-VrD\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"5Cd-ay-my5\"/>\n                                        <menuItem title=\"例外情報\" id=\"SzQ-gm-Wkt\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToExceptionInformation:\" target=\"-1\" id=\"079-pD-HEp\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"診断メッセージ\" id=\"Wiv-Qz-fMq\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToDiagnosticMessages:\" target=\"-1\" id=\"hTl-rJ-Q5a\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"Szz-TX-hIO\"/>\n                                        <menuItem title=\"バックトレース\" id=\"a2B-9S-c4g\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBacktraces:\" target=\"-1\" id=\"Sfi-Ce-HQ0\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"スレッドの状態\" id=\"hfS-oi-1cT\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToThreadState:\" target=\"-1\" id=\"Lbe-gO-nw1\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"バイナリのイメージ\" id=\"ON2-La-JSh\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"CUI_MENUACTION_jumpToBinaryImages:\" target=\"-1\" id=\"hF5-h4-Mqo\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                            <menuItem title=\"クラッシュしたスレッドへジャンプ\" keyEquivalent=\"c\" id=\"XPO-uf-5Ox\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUI_MENUACTION_jumpToCrashedThread:\" target=\"-1\" id=\"ymM-Im-3Fw\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"ウインドウ\" id=\"aUF-d1-5bR\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"ウインドウ\" systemMenu=\"window\" id=\"Td7-aD-5lo\">\n                        <items>\n                            <menuItem title=\"しまう\" keyEquivalent=\"m\" id=\"OY7-WF-poV\">\n                                <connections>\n                                    <action selector=\"performMiniaturize:\" target=\"-1\" id=\"VwT-WD-YPe\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"拡大／縮小\" id=\"R4o-n2-Eq4\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"performZoom:\" target=\"-1\" id=\"DIl-cC-cCs\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"V2l-48-H4C\"/>\n                            <menuItem title=\"レジスタ\" keyEquivalent=\"r\" id=\"e57-vP-OAA\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" control=\"YES\" command=\"YES\"/>\n                                <connections>\n                                    <action selector=\"CUIMENUACTION_showHideRegisters:\" target=\"-1\" id=\"4GI-98-jKW\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"eu3-7i-yIM\"/>\n                            <menuItem title=\"すべてを手前に移動\" id=\"LE2-aR-0XJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"arrangeInFront:\" target=\"-1\" id=\"DRN-fu-gQh\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"ヘルプ\" id=\"wpr-3q-Mcd\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"ヘルプ\" systemMenu=\"help\" id=\"F2S-fz-NVQ\">\n                        <items>\n                            <menuItem title=\"Unexpectedlyヘルプ\" keyEquivalent=\"?\" id=\"FKE-Sm-Kum\">\n                                <connections>\n                                    <action selector=\"showUserGuide:\" target=\"Voe-Tx-rLC\" id=\"Xxx-bM-bpn\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem isSeparatorItem=\"YES\" id=\"NhV-yu-WbQ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\" command=\"YES\"/>\n                            </menuItem>\n                            <menuItem title=\"フィードバックを送信する\" id=\"Agb-QS-hQl\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"sendFeedback:\" target=\"Voe-Tx-rLC\" id=\"GdC-FT-8s8\"/>\n                                </connections>\n                            </menuItem>\n                            <menuItem title=\"Unexpectedly の Web ページ\" id=\"FUb-BV-YgJ\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <connections>\n                                    <action selector=\"showUnexpectedlyWebSite:\" target=\"Voe-Tx-rLC\" id=\"Zhd-rv-Pi9\"/>\n                                </connections>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n                <menuItem title=\"デバッグ\" hidden=\"YES\" id=\"cNb-At-Imu\">\n                    <modifierMask key=\"keyEquivalentModifierMask\"/>\n                    <menu key=\"submenu\" title=\"デバッグ\" id=\"OCR-9P-Ipy\">\n                        <items>\n                            <menuItem title=\"クラッシュレポーター\" id=\"QbD-vw-FaL\">\n                                <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                <menu key=\"submenu\" title=\"クラッシュレポーター\" id=\"90M-1A-X88\">\n                                    <items>\n                                        <menuItem title=\"動作モード\" enabled=\"NO\" id=\"rSJ-Ir-6Ad\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"基本\" id=\"cZ2-Me-tJE\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"1pr-Nb-cUn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"開発者\" tag=\"1\" id=\"Taa-D1-VLv\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"Sze-b6-Qb4\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"サーバ\" tag=\"2\" id=\"oZt-M9-dpo\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterDialogType:\" target=\"Voe-Tx-rLC\" id=\"t2d-3r-nsn\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"riH-1J-NUS\"/>\n                                        <menuItem title=\"通知モード\" enabled=\"NO\" id=\"BLJ-R5-6HZ\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                        </menuItem>\n                                        <menuItem title=\"警告ダイアログ\" id=\"EDw-Kd-564\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"pfK-8S-sWf\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem title=\"システム通知\" tag=\"1\" id=\"zLw-vY-Ttl\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchCrashReporterNotificationMode:\" target=\"Voe-Tx-rLC\" id=\"yUA-00-NUV\"/>\n                                            </connections>\n                                        </menuItem>\n                                        <menuItem isSeparatorItem=\"YES\" id=\"isO-68-Tw7\"/>\n                                        <menuItem title=\"キャッチされなかった例外を報告する\" id=\"eLO-Pu-jRW\">\n                                            <modifierMask key=\"keyEquivalentModifierMask\"/>\n                                            <connections>\n                                                <action selector=\"switchReportUncaughtException:\" target=\"Voe-Tx-rLC\" id=\"3Tb-Lg-qE2\"/>\n                                            </connections>\n                                        </menuItem>\n                                    </items>\n                                </menu>\n                            </menuItem>\n                        </items>\n                    </menu>\n                </menuItem>\n            </items>\n            <point key=\"canvasLocation\" x=\"-391\" y=\"-1289\"/>\n        </menu>\n    </objects>\n</document>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/ja.lproj/Predicates.strings",
    "content": "/* Predicate Editor */\n\n\"%[All]@ of the following are true\" = \"以下の条件の%1$[すべてを満たす]@\";\n\"%[Any]@ of the following are true\" = \"以下の条件の%1$[いずれかを満たす]@\";\n\n\"%[processName]@ %[is]@ %@\" = \"%1$[プロセス名]@が%3$@%2$[である]@\";\n\"%[processName]@ %[is not]@ %@\" = \"%1$[プロセス名]@が%3$@%2$[ではない]@\";\n\"%[processName]@ %[begins with]@ %@\" = \"%1$[プロセス名]@が%3$@%2$[で始まる]@\";\n\"%[processName]@ %[ends with]@ %@\" = \"%1$[プロセス名]@@が%3$@%2$[で終わる]@\";\n\"%[processName]@ %[contains]@ %@\" = \"%1$[プロセス名]@が%3$@%2$[を含む]@\";\n\n\"%[header.bundleIdentifier]@ %[is]@ %@\" = \"%1$[Identifier]@が%3$@%2$[である]@\";\n\"%[header.bundleIdentifier]@ %[is not]@ %@\" = \"%1$[Identifier]@が%3$@%2$[ではない]@\";\n\"%[header.bundleIdentifier]@ %[begins with]@ %@\" = \"%1$[Identifier]@が%3$@%2$[で始まる]@\";\n\"%[header.bundleIdentifier]@ %[ends with]@ %@\" = \"%1$[Identifier]@@が%3$@%2$[で終わる]@\";\n\"%[header.bundleIdentifier]@ %[contains]@ %@\" = \"%1$[Identifier]@が%3$@%2$[を含む]@\";\n\n\"%[header.executablePath]@ %[is]@ %@\" = \"%1$[実行可能ファイルのパス]@が%3$@%2$[である]@\";\n\"%[header.executablePath]@ %[is not]@ %@\" = \"%1$[実行可能ファイルのパス]@が%3$@%2$[ではない]@\";\n\"%[header.executablePath]@ %[begins with]@ %@\" = \"%1$[実行可能ファイルのパス]@が%3$@%2$[で始まる]@\";\n\"%[header.executablePath]@ %[ends with]@ %@\" = \"%1$[実行可能ファイルのパス]@@が%3$@%2$[で終わる]@\";\n\"%[header.executablePath]@ %[contains]@ %@\" = \"%1$[実行可能ファイルのパス]@が%3$@%2$[を含む]@\";\n\n\"%[header.executableVersion]@ %[is]@ %@\" = \"%1$[実行可能ファイルのバージョン]@が%3$@%2$[である]@\";\n\"%[header.executableVersion]@ %[is not]@ %@\" = \"%1$[実行可能ファイルのバージョン]@が%3$@%2$[ではない]@\";\n\"%[header.executableVersion]@ %[begins with]@ %@\" = \"%1$[実行可能ファイルのバージョン]@が%3$@%2$[で始まる]@\";\n\"%[header.executableVersion]@ %[ends with]@ %@\" = \"%1$[実行可能ファイルのバージョン]@@が%3$@%2$[で終わる]@\";\n\"%[header.executableVersion]@ %[contains]@ %@\" = \"%1$[実行可能ファイルのバージョン]@が%3$@%2$[を含む]@\";\n\n\"%[exceptionInformation.crashedThreadName]@ %[is]@ %@\" = \"%1$[クラッシュしたスレッド名]@が%3$@%2$[である]@\";\n\"%[exceptionInformation.crashedThreadName]@ %[is not]@ %@\" = \"%1$[クラッシュしたスレッド名]@が%3$@%2$[ではない]@\";\n\"%[exceptionInformation.crashedThreadName]@ %[begins with]@ %@\" = \"%1$[クラッシュしたスレッド名]@が%3$@%2$[で始まる]@\";\n\"%[exceptionInformation.crashedThreadName]@ %[ends with]@ %@\" = \"%1$[クラッシュしたスレッド名]@@が%3$@%2$[で終わる]@\";\n\"%[exceptionInformation.crashedThreadName]@ %[contains]@ %@\" = \"%1$[クラッシュしたスレッド名]@が%3$@%2$[を含む]@\";\n\n\"%[header.operatingSystemVersion.stringValue]@ %[is]@ %@\" = \"%1$[オペレーティング・システムのバージョン]@が%3$@%2$[である]@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[is not]@ %@\" = \"%1$[オペレーティング・システムのバージョン]@が%3$@%2$[ではない]@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[begins with]@ %@\" = \"%1$[オペレーティング・システムのバージョン]@が%3$@%2$[で始まる]@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[ends with]@ %@\" = \"%1$[オペレーティング・システムのバージョン]@@が%3$@%2$[で終わる]@\";\n\"%[header.operatingSystemVersion.stringValue]@ %[contains]@ %@\" = \"%1$[オペレーティング・システムのバージョン]@が%3$@%2$[を含む]@\";\n\n\"%[dateTime]@ %[is less than or equal to]@ %@\" = \"%1$[日付]@が%3$@%2$[より前]@\";\n\"%[dateTime]@ %[is greater than or equal to]@ %@\" = \"%1$[日付]@が%3$@%2$[より後]@\";\n\n\"%[exceptionType]@ is %[EXC_ARITHMETIC]@\" = \"%1$[例外の種類]@が%2$[EXC_ARITHMETIC]@である\";\n\"%[exceptionType]@ is %[EXC_BAD_ACCESS]@\" = \"%1$[例外の種類]@が%2$[EXC_BAD_ACCESS]@である\";\n\"%[exceptionType]@ is %[EXC_BAD_INSTRUCTION]@\" = \"%1$[例外の種類]@が%2$[EXC_BAD_INSTRUCTION]@である\";\n\"%[exceptionType]@ is %[EXC_BREAKPOINT]@\" = \"%1$[例外の種類]@が%2$[EXC_BREAKPOINT]@である\";\n\"%[exceptionType]@ is %[EXC_CORPSE_NOTIFY]@\" = \"%1$[例外の種類]@が%2$[EXC_CORPSE_NOTIFY]@である\";\n\"%[exceptionType]@ is %[EXC_CRASH]@\" = \"%1$[例外の種類]@が%2$[EXC_CRASH]@である\";\n\"%[exceptionType]@ is %[EXC_EMULATION]@\" = \"%1$[例外の種類]@が%2$[EXC_EMULATION]@である\";\n\"%[exceptionType]@ is %[EXC_GUARD]@\" = \"%1$[例外の種類]@が%2$[EXC_GUARD]@である\";\n\"%[exceptionType]@ is %[EXC_MACH_SYSCALL]@\" = \"%1$[例外の種類]@が%2$[EXC_MACH_SYSCALL]@である\";\n\"%[exceptionType]@ is %[EXC_RESOURCE]@\" = \"%1$[例外の種類]@が%2$[EXC_RESOURCE]@である\";\n\"%[exceptionType]@ is %[EXC_RPC_ALERT]@\" = \"%1$[例外の種類]@が%2$[EXC_RPC_ALERT]@である\";\n\"%[exceptionType]@ is %[EXC_SOFTWARE]@\" = \"%1$[例外の種類]@が%2$[EXC_SOFTWARE]@である\";\n\"%[exceptionType]@ is %[EXC_SYSCALL]@\" = \"%1$[例外の種類]@が%2$[EXC_SYSCALL]@である\";\n\n\"%[exceptionSignal]@ is %[SIGABRT]@\" = \"%1$[例外信号]@が%2$[SIGABRT]@である\";\n\"%[exceptionSignal]@ is %[SIGBUS]@\" = \"%1$[例外信号]@が%2$[SIGBUS]@である\";\n\"%[exceptionSignal]@ is %[SIGILL]@\" = \"%1$[例外信号]@が%2$[SIGILL]@である\";\n\"%[exceptionSignal]@ is %[SIGKILL]@\" = \"%1$[例外信号]@が%2$[SIGKILL]@である\";\n\"%[exceptionSignal]@ is %[SIGQUIT]@\" = \"%1$[例外信号]@が%2$[SIGQUIT]@である\";\n\"%[exceptionSignal]@ is %[SIGSEGV]@\" = \"%1$[例外信号]@が%2$[SIGSEGV]@である\";\n\"%[exceptionSignal]@ is %[SIGTRAP]@\" = \"%1$[例外信号]@が%2$[SIGTRAP]@である\";\n\"%[exceptionSignal]@ is %[Code Signature Invalid]@\" = \"%1$[例外信号]@が%2$[Code Signature Invalid]@である\";\n\n\"%[crashLogFileName]@ %[is]@ %@\" = \"%1$[レポートのファイル名]@が%3$@%2$[である]@\";\n\"%[crashLogFileName]@ %[is not]@ %@\" = \"%1$[レポートのファイル名]@が%3$@%2$[ではない]@\";\n\"%[crashLogFileName]@ %[begins with]@ %@\" = \"%1$[レポートのファイル名]@が%3$@%2$[で始まる]@\";\n\"%[crashLogFileName]@ %[ends with]@ %@\" = \"%1$[レポートのファイル名]@@が%3$@%2$[で終わる]@\";\n\"%[crashLogFileName]@ %[contains]@ %@\" = \"%1$[レポートのファイル名]@が%3$@%2$[を含む]@\";\n\n\"%[reportSourceTypeNumber]@ is %[0]@\" = \"%1$[ソース]@%2$[システムレポート]@である\";\n\"%[reportSourceTypeNumber]@ is %[1]@\" = \"%1$[ソース]@%2$[ユーザレポート]@である\";\n\"%[reportSourceTypeNumber]@ is %[2]@\" = \"%1$[ソース]@%2$[別の情報源]@である\";\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/main.m",
    "content": "/*\n Copyright (c) 2020-2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\nint main(int argc, const char * argv[])\n{\n    return NSApplicationMain(argc, argv);\n}\n\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly/template.source",
    "content": "\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 46;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\tD06294382E1DD8150008895D /* CUICodeSigningInformationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D06294362E1DD8150008895D /* CUICodeSigningInformationViewController.m */; };\n\t\tD0790DBD2E00BACF00CD6A72 /* CUIThreadImageView.m in Sources */ = {isa = PBXBuildFile; fileRef = D0790DBC2E00BACF00CD6A72 /* CUIThreadImageView.m */; };\n\t\tD0BA6A462E09FEB50010D630 /* EXC_GUARD.html in Resources */ = {isa = PBXBuildFile; fileRef = D0BA6A442E09FEB50010D630 /* EXC_GUARD.html */; };\n\t\tD0BD223B2F3FC6810052AD8E /* NSMenuItem+RSCore.m in Sources */ = {isa = PBXBuildFile; fileRef = D0BD223A2F3FC6810052AD8E /* NSMenuItem+RSCore.m */; };\n\t\tF4040A7624F5B9CE0072BF65 /* CUINavigationChevronView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4040A7524F5B9CE0072BF65 /* CUINavigationChevronView.m */; };\n\t\tF4040A7924F5BC230072BF65 /* CUINavigationView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4040A7824F5BC230072BF65 /* CUINavigationView.m */; };\n\t\tF4055C8125EEE37400DC6CCA /* CUIMainWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4055C8325EEE37400DC6CCA /* CUIMainWindowController.xib */; };\n\t\tF405A96D255015D800AD2F24 /* CUICXXDemangler.mm in Sources */ = {isa = PBXBuildFile; fileRef = F405A96C255015D800AD2F24 /* CUICXXDemangler.mm */; };\n\t\tF405A97025501A5F00AD2F24 /* CUIParsingErrors.m in Sources */ = {isa = PBXBuildFile; fileRef = F405A96F25501A5F00AD2F24 /* CUIParsingErrors.m */; };\n\t\tF406B4992687AB1400B90C7B /* CUIPreferencePaneAdvancedViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F406B49B2687AB1400B90C7B /* CUIPreferencePaneAdvancedViewController.xib */; };\n\t\tF40ACE2D255697A3006855E5 /* CUICrashLogBrowsingState.m in Sources */ = {isa = PBXBuildFile; fileRef = F40ACE2C255697A3006855E5 /* CUICrashLogBrowsingState.m */; };\n\t\tF40ACE30255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.m in Sources */ = {isa = PBXBuildFile; fileRef = F40ACE2F255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.m */; };\n\t\tF40B0D7E24D3558800663282 /* CUIPreferencesTabBox.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D7824D3558700663282 /* CUIPreferencesTabBox.m */; };\n\t\tF40B0D7F24D3558800663282 /* CUIPreferencesTabHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D7924D3558800663282 /* CUIPreferencesTabHeaderView.m */; };\n\t\tF40B0D8024D3558800663282 /* CUIPreferencesTabButton.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D7B24D3558800663282 /* CUIPreferencesTabButton.m */; };\n\t\tF40B0D8724D3569800663282 /* NSColor+LabelColor.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D8424D3569800663282 /* NSColor+LabelColor.m */; };\n\t\tF40B0D8824D3569800663282 /* NSResponder+Appearance.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D8524D3569800663282 /* NSResponder+Appearance.m */; };\n\t\tF40B0D8D24D356A200663282 /* NSArray+WBExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D8924D356A200663282 /* NSArray+WBExtensions.m */; };\n\t\tF40B0D8E24D356A200663282 /* NSIndexSet+Analysis.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D8B24D356A200663282 /* NSIndexSet+Analysis.m */; };\n\t\tF40B0D9124D356F900663282 /* NSToolbar+Packages.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D9024D356F900663282 /* NSToolbar+Packages.m */; };\n\t\tF40B0D9424D3571B00663282 /* NSTableView+Selection.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D9224D3571A00663282 /* NSTableView+Selection.m */; };\n\t\tF40B0D9724D3572E00663282 /* NSColor+String.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D9524D3572E00663282 /* NSColor+String.m */; };\n\t\tF40B0D9D24D370A200663282 /* NSDictionary+MutableDeepCopy.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B0D9C24D370A200663282 /* NSDictionary+MutableDeepCopy.m */; };\n\t\tF40B124924E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B124824E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.m */; };\n\t\tF40B77D724AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B77D624AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.m */; };\n\t\tF40B77DA24AF1426001A8131 /* CUICrashLogsSourceAll+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F40B77D924AF1426001A8131 /* CUICrashLogsSourceAll+UI.m */; };\n\t\tF40B832625FC0AEC0091D886 /* EXC_CRASH_SIGSEGV.html in Resources */ = {isa = PBXBuildFile; fileRef = F40B832825FC0AEC0091D886 /* EXC_CRASH_SIGSEGV.html */; };\n\t\tF40BEAF124E9F754007A3F60 /* CUIThemeItemAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = F40BEAF024E9F754007A3F60 /* CUIThemeItemAttributes.m */; };\n\t\tF40BEAFC24E9FEF8007A3F60 /* NSDictionary+WBExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = F40BEAFB24E9FEF8007A3F60 /* NSDictionary+WBExtensions.m */; };\n\t\tF40ED76724E72A6E00557BB8 /* CUICategoriesClipView.m in Sources */ = {isa = PBXBuildFile; fileRef = F40ED76624E72A6E00557BB8 /* CUICategoriesClipView.m */; };\n\t\tF40FC81625EAF7B000DB4B27 /* CUISourceFileTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = F40FC81525EAF7B000DB4B27 /* CUISourceFileTableCellView.m */; };\n\t\tF4132C8F24AA19F70086B99C /* CUICrashLogsSource.m in Sources */ = {isa = PBXBuildFile; fileRef = F4132C8E24AA19F70086B99C /* CUICrashLogsSource.m */; };\n\t\tF414068824D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.m in Sources */ = {isa = PBXBuildFile; fileRef = F414068724D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.m */; };\n\t\tF414068B24D6014D0059FF21 /* CUIFontAndColorsFramedView.m in Sources */ = {isa = PBXBuildFile; fileRef = F414068A24D6014D0059FF21 /* CUIFontAndColorsFramedView.m */; };\n\t\tF414D08E24BFB57700A7095C /* CUICrashLogDianosticMessages.m in Sources */ = {isa = PBXBuildFile; fileRef = F414D08D24BFB57700A7095C /* CUICrashLogDianosticMessages.m */; };\n\t\tF414D09124BFBC3A00A7095C /* CUICrashLogBacktraces.m in Sources */ = {isa = PBXBuildFile; fileRef = F414D09024BFBC3A00A7095C /* CUICrashLogBacktraces.m */; };\n\t\tF414D09424BFBC4A00A7095C /* CUICrashLogThreadState.m in Sources */ = {isa = PBXBuildFile; fileRef = F414D09324BFBC4A00A7095C /* CUICrashLogThreadState.m */; };\n\t\tF414D09724BFBC6300A7095C /* CUICrashLogBinaryImages.m in Sources */ = {isa = PBXBuildFile; fileRef = F414D09624BFBC6300A7095C /* CUICrashLogBinaryImages.m */; };\n\t\tF416686F24B0AEE800C2AB89 /* CUIContentsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F416686D24B0AEE800C2AB89 /* CUIContentsViewController.m */; };\n\t\tF416687024B0AEE800C2AB89 /* CUIContentsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F416686E24B0AEE800C2AB89 /* CUIContentsViewController.xib */; };\n\t\tF416687424B0AF4D00C2AB89 /* CUICenteredLabelViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F416687224B0AF4D00C2AB89 /* CUICenteredLabelViewController.m */; };\n\t\tF416687924B0BA5000C2AB89 /* CUICrashLogContentsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F416687724B0BA5000C2AB89 /* CUICrashLogContentsViewController.m */; };\n\t\tF416687A24B0BA5000C2AB89 /* CUICrashLogContentsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F416687824B0BA5000C2AB89 /* CUICrashLogContentsViewController.xib */; };\n\t\tF416687E24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F416687C24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.m */; };\n\t\tF416688224B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F416688124B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.m */; };\n\t\tF416688624B0BF2000C2AB89 /* CUISidebarViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F416688424B0BF2000C2AB89 /* CUISidebarViewController.m */; };\n\t\tF416688724B0BF2000C2AB89 /* CUISidebarViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F416688524B0BF2000C2AB89 /* CUISidebarViewController.xib */; };\n\t\tF419376F2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F419376E2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.m */; };\n\t\tF41D66B025921F3400C0D491 /* CUIPreferencePanePresentationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F41D66AE25921F3400C0D491 /* CUIPreferencePanePresentationViewController.m */; };\n\t\tF41ECA5324AB689B00CE56C7 /* CUIInspectorViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F41ECA5124AB689B00CE56C7 /* CUIInspectorViewController.m */; };\n\t\tF41ECA5424AB689B00CE56C7 /* CUIInspectorViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F41ECA5224AB689B00CE56C7 /* CUIInspectorViewController.xib */; };\n\t\tF420C9B9254F30A100D24249 /* CUIFileDeadDropView.m in Sources */ = {isa = PBXBuildFile; fileRef = F420C9B8254F30A100D24249 /* CUIFileDeadDropView.m */; };\n\t\tF420C9C1254F335000D24249 /* CUIdSYMDropView.m in Sources */ = {isa = PBXBuildFile; fileRef = F420C9C0254F335000D24249 /* CUIdSYMDropView.m */; };\n\t\tF420C9C4254F5F4C00D24249 /* CUIdSYMHunter.m in Sources */ = {isa = PBXBuildFile; fileRef = F420C9C3254F5F4C00D24249 /* CUIdSYMHunter.m */; };\n\t\tF420F35224E95E5F006C82CD /* CUITheme.m in Sources */ = {isa = PBXBuildFile; fileRef = F420F35124E95E5F006C82CD /* CUITheme.m */; };\n\t\tF4214CB524B6534400852DDE /* CUICrashLogsSourcesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F4214CB424B6534400852DDE /* CUICrashLogsSourcesManager.m */; };\n\t\tF423818C267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F423818A267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.m */; };\n\t\tF4238191267D3522003837AC /* WBRemoteVersionChecker.m in Sources */ = {isa = PBXBuildFile; fileRef = F4238190267D3522003837AC /* WBRemoteVersionChecker.m */; };\n\t\tF428C0702724592D00FB8CAC /* IPSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0412724592900FB8CAC /* IPSImage.m */; };\n\t\tF428C0712724592D00FB8CAC /* IPSIncidentHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0422724592900FB8CAC /* IPSIncidentHeader.m */; };\n\t\tF428C0722724592D00FB8CAC /* IPSIncidentExceptionInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0432724592900FB8CAC /* IPSIncidentExceptionInformation.m */; };\n\t\tF428C0732724592D00FB8CAC /* IPSIncidentDiagnosticMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0442724592900FB8CAC /* IPSIncidentDiagnosticMessage.m */; };\n\t\tF428C0742724592D00FB8CAC /* IPSReport.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0452724592900FB8CAC /* IPSReport.m */; };\n\t\tF428C0752724592D00FB8CAC /* IPSThreadInstructionState.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0462724592900FB8CAC /* IPSThreadInstructionState.m */; };\n\t\tF428C0762724592D00FB8CAC /* IPSThreadInstructionStream.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0472724592900FB8CAC /* IPSThreadInstructionStream.m */; };\n\t\tF428C0772724592D00FB8CAC /* IPSRegisterState.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0492724592900FB8CAC /* IPSRegisterState.m */; };\n\t\tF428C0782724592D00FB8CAC /* IPSDateFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C04A2724592A00FB8CAC /* IPSDateFormatter.m */; };\n\t\tF428C0792724592D00FB8CAC /* IPSApplicationSpecificInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C04B2724592A00FB8CAC /* IPSApplicationSpecificInformation.m */; };\n\t\tF428C07A2724592D00FB8CAC /* IPSSummary.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C04C2724592A00FB8CAC /* IPSSummary.m */; };\n\t\tF428C07B2724592D00FB8CAC /* IPSTermination.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C04D2724592A00FB8CAC /* IPSTermination.m */; };\n\t\tF428C07C2724592D00FB8CAC /* IPSExternalModificationSummary.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C04E2724592A00FB8CAC /* IPSExternalModificationSummary.m */; };\n\t\tF428C07D2724592D00FB8CAC /* IPSExternalModificationStatistics.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0502724592A00FB8CAC /* IPSExternalModificationStatistics.m */; };\n\t\tF428C07E2724592D00FB8CAC /* IPSBundleInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0532724592A00FB8CAC /* IPSBundleInfo.m */; };\n\t\tF428C07F2724592D00FB8CAC /* IPSException.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0542724592A00FB8CAC /* IPSException.m */; };\n\t\tF428C0802724592D00FB8CAC /* IPSThread.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0572724592A00FB8CAC /* IPSThread.m */; };\n\t\tF428C0812724592D00FB8CAC /* IPSThreadFrame.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0592724592B00FB8CAC /* IPSThreadFrame.m */; };\n\t\tF428C0822724592D00FB8CAC /* IPSError.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C05B2724592B00FB8CAC /* IPSError.m */; };\n\t\tF428C0832724592D00FB8CAC /* IPSOperatingSystemVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C05E2724592B00FB8CAC /* IPSOperatingSystemVersion.m */; };\n\t\tF428C0842724592D00FB8CAC /* IPSThreadState.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0622724592B00FB8CAC /* IPSThreadState.m */; };\n\t\tF428C0852724592D00FB8CAC /* IPSLegacyInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0682724592C00FB8CAC /* IPSLegacyInfo.m */; };\n\t\tF428C0862724592D00FB8CAC /* IPSIncident.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C06A2724592C00FB8CAC /* IPSIncident.m */; };\n\t\tF42B57E224ABEF6E00F77ED5 /* CUICallsSelection.m in Sources */ = {isa = PBXBuildFile; fileRef = F42B57E124ABEF6E00F77ED5 /* CUICallsSelection.m */; };\n\t\tF42D0BC425514B670021A551 /* template.source in Resources */ = {isa = PBXBuildFile; fileRef = F42D0BC225514B2E0021A551 /* template.source */; };\n\t\tF42E50012724B7550092181A /* CUICrashDataTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F42E50002724B7550092181A /* CUICrashDataTransform.m */; };\n\t\tF4301A6825EF0DE000ACDA3F /* CUIPreferencePanePresentationViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4301A6A25EF0DE000ACDA3F /* CUIPreferencePanePresentationViewController.xib */; };\n\t\tF4306D592577E168007E667F /* CUICrashLogThreadState+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4306D582577E168007E667F /* CUICrashLogThreadState+UI.m */; };\n\t\tF432ACC824A95014000A3E7A /* CUIThreadsListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F432ACC624A95014000A3E7A /* CUIThreadsListViewController.m */; };\n\t\tF432ACCC24A9502A000A3E7A /* CUIThreadsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F432ACCB24A9502A000A3E7A /* CUIThreadsViewController.m */; };\n\t\tF432ACD024A95042000A3E7A /* CUIThreadsColumnViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F432ACCE24A95042000A3E7A /* CUIThreadsColumnViewController.m */; };\n\t\tF43362FE25FCEFBA006E7894 /* CUIRawCrashLog+Path.m in Sources */ = {isa = PBXBuildFile; fileRef = F43362FD25FCEFBA006E7894 /* CUIRawCrashLog+Path.m */; };\n\t\tF4341C6B258EB8FE001A5605 /* CUICrashReporterDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = F4341C6A258EB8FE001A5605 /* CUICrashReporterDefaults.m */; };\n\t\tF4386B0F2849541C00B83525 /* CUICrashLogExceptionInformation+QuickHelp.m in Sources */ = {isa = PBXBuildFile; fileRef = F4386B0D2849541B00B83525 /* CUICrashLogExceptionInformation+QuickHelp.m */; };\n\t\tF43A9A832591260C005AB2AA /* CUIOutlineModeDisplaySettings.m in Sources */ = {isa = PBXBuildFile; fileRef = F43A9A822591260C005AB2AA /* CUIOutlineModeDisplaySettings.m */; };\n\t\tF43AF0D1256FE2AE0066CA1B /* DWRFSection_debug_addr.m in Sources */ = {isa = PBXBuildFile; fileRef = F43AF0D0256FE2AE0066CA1B /* DWRFSection_debug_addr.m */; };\n\t\tF43C828824D892620096F27B /* CUIPreferencePanePresentationTextViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F43C828624D892620096F27B /* CUIPreferencePanePresentationTextViewController.m */; };\n\t\tF43C828C24D8A39B0096F27B /* CUITextModeDisplaySettings.m in Sources */ = {isa = PBXBuildFile; fileRef = F43C828B24D8A39B0096F27B /* CUITextModeDisplaySettings.m */; };\n\t\tF43D8FF724A7FAD2008147F9 /* CUIMainWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = F43D8FF524A7FAD2008147F9 /* CUIMainWindowController.m */; };\n\t\tF440A3E324AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.m in Sources */ = {isa = PBXBuildFile; fileRef = F440A3E224AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.m */; };\n\t\tF440A3E624AA31B500C23DA1 /* CUICrashLogsSourceFile.m in Sources */ = {isa = PBXBuildFile; fileRef = F440A3E524AA31B500C23DA1 /* CUICrashLogsSourceFile.m */; };\n\t\tF440A3E924AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.m in Sources */ = {isa = PBXBuildFile; fileRef = F440A3E824AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.m */; };\n\t\tF440A3EC24AA38E600C23DA1 /* CUICrashLogsSourceAll.m in Sources */ = {isa = PBXBuildFile; fileRef = F440A3EB24AA38E600C23DA1 /* CUICrashLogsSourceAll.m */; };\n\t\tF442FCED24AB855C00E87B69 /* CUIBinaryImagesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F442FCEB24AB855C00E87B69 /* CUIBinaryImagesViewController.m */; };\n\t\tF442FCF124AB8A8B00E87B69 /* CUIBinaryImageUtility.m in Sources */ = {isa = PBXBuildFile; fileRef = F442FCF024AB8A8B00E87B69 /* CUIBinaryImageUtility.m */; };\n\t\tF44356F324A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F44356F124A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.m */; };\n\t\tF44356FF24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = F44356FE24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.m */; };\n\t\tF4440FE0282C4104003C810B /* IPSSummarySerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = F4440FDC282C4103003C810B /* IPSSummarySerialization.m */; };\n\t\tF4440FE1282C4104003C810B /* IPSCrashSummary.m in Sources */ = {isa = PBXBuildFile; fileRef = F4440FDD282C4103003C810B /* IPSCrashSummary.m */; };\n\t\tF44E7B7F255C83D500025C04 /* NoodleLineNumberView.m in Sources */ = {isa = PBXBuildFile; fileRef = F44E7B7C255C83D500025C04 /* NoodleLineNumberView.m */; };\n\t\tF44E7B80255C83D500025C04 /* NoodleLineNumberMarker.m in Sources */ = {isa = PBXBuildFile; fileRef = F44E7B7D255C83D500025C04 /* NoodleLineNumberMarker.m */; };\n\t\tF45015C625FABCAC000C4B8D /* EXC_BAD_ACCESS_SIGSEGV.html in Resources */ = {isa = PBXBuildFile; fileRef = F45015C825FABCAC000C4B8D /* EXC_BAD_ACCESS_SIGSEGV.html */; };\n\t\tF45015CA25FABE00000C4B8D /* EXC_BAD_INSTRUCTION_SIGILL.html in Resources */ = {isa = PBXBuildFile; fileRef = F45015CC25FABE00000C4B8D /* EXC_BAD_INSTRUCTION_SIGILL.html */; };\n\t\tF45015CE25FAD279000C4B8D /* EXC_CRASH_SIGQUIT.html in Resources */ = {isa = PBXBuildFile; fileRef = F45015D025FAD279000C4B8D /* EXC_CRASH_SIGQUIT.html */; };\n\t\tF453AE4925EE706F00B7BEF0 /* CUIExportAccessoryViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F453AE4B25EE706F00B7BEF0 /* CUIExportAccessoryViewController.xib */; };\n\t\tF453AE4D25EE70E800B7BEF0 /* CUICrashLogPresentationTextViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F453AE4F25EE70E800B7BEF0 /* CUICrashLogPresentationTextViewController.xib */; };\n\t\tF45442A924AF355700EE79E4 /* CUICaptionView.m in Sources */ = {isa = PBXBuildFile; fileRef = F45442A824AF355700EE79E4 /* CUICaptionView.m */; };\n\t\tF4545C3C256C1AF900F62A39 /* CUIRegistersWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4545C3A256C1AF900F62A39 /* CUIRegistersWindowController.m */; };\n\t\tF4545C3D256C1AF900F62A39 /* CUIRegistersWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4545C3B256C1AF900F62A39 /* CUIRegistersWindowController.xib */; };\n\t\tF4545C41256C1B2400F62A39 /* CUIRegistersViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4545C3F256C1B2400F62A39 /* CUIRegistersViewController.m */; };\n\t\tF4559F3724AF232800B8EF41 /* CUICrashLogHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = F4559F3624AF232800B8EF41 /* CUICrashLogHeader.m */; };\n\t\tF4577BEA2592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4577BE82592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.m */; };\n\t\tF45854FA25C76591007A3A79 /* Unexpectedly_License.pdf in Resources */ = {isa = PBXBuildFile; fileRef = F45854F825C76590007A3A79 /* Unexpectedly_License.pdf */; };\n\t\tF45854FB25C76591007A3A79 /* Unexpectedly_Acknowledgements.pdf in Resources */ = {isa = PBXBuildFile; fileRef = F45854F925C76591007A3A79 /* Unexpectedly_Acknowledgements.pdf */; };\n\t\tF45A2D5D25EC5CA00007D50E /* CUIPreferencesWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45A2D5F25EC5CA00007D50E /* CUIPreferencesWindowController.xib */; };\n\t\tF45A2D6125EC5D130007D50E /* CUIPreferencePaneFontscolorsViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45A2D6325EC5D130007D50E /* CUIPreferencePaneFontscolorsViewController.xib */; };\n\t\tF45A2D6525EC5F850007D50E /* CUIAboutBoxWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45A2D6725EC5F850007D50E /* CUIAboutBoxWindowController.xib */; };\n\t\tF45A2D6925EC602B0007D50E /* CUIBinaryImagesViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45A2D6B25EC602B0007D50E /* CUIBinaryImagesViewController.xib */; };\n\t\tF45A2D6D25EC60920007D50E /* CUICrashLogsSourcesViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45A2D6F25EC60920007D50E /* CUICrashLogsSourcesViewController.xib */; };\n\t\tF45A2D7125EC60D90007D50E /* CUICrashLogsListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45A2D7325EC60D90007D50E /* CUICrashLogsListViewController.xib */; };\n\t\tF45B518C24AFA04000E97B87 /* CUICrashLogsSelection.m in Sources */ = {isa = PBXBuildFile; fileRef = F45B518B24AFA04000E97B87 /* CUICrashLogsSelection.m */; };\n\t\tF45DED692E350F07008F4CE8 /* CUICodeSigningInformationViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F45DED6B2E350F07008F4CE8 /* CUICodeSigningInformationViewController.xib */; };\n\t\tF45DED6F2E3510D9008F4CE8 /* CodeSigning.strings in Resources */ = {isa = PBXBuildFile; fileRef = F45DED6D2E3510D9008F4CE8 /* CodeSigning.strings */; };\n\t\tF45F2F5B2538EF3F0030A402 /* NSFileManager+ExtendedAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = F45F2F5A2538EF3F0030A402 /* NSFileManager+ExtendedAttributes.m */; };\n\t\tF45F84DC266ABB7600F354F3 /* crashreport.qlgenerator in CopyFiles */ = {isa = PBXBuildFile; fileRef = F45F84D8266ABB5800F354F3 /* crashreport.qlgenerator */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; };\n\t\tF46198E924CA390700FA9717 /* CUICrashLogBacktraces+Utilities.m in Sources */ = {isa = PBXBuildFile; fileRef = F46198E824CA390700FA9717 /* CUICrashLogBacktraces+Utilities.m */; };\n\t\tF46198EE24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = F46198ED24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.m */; };\n\t\tF461CE8A25F6DD75007CFDE7 /* CUIApplicationItemAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = F461CE8925F6DD75007CFDE7 /* CUIApplicationItemAttributes.m */; };\n\t\tF4627F1225704557007E5CD0 /* CUICollectionViewRegisterItem.m in Sources */ = {isa = PBXBuildFile; fileRef = F4627F1025704557007E5CD0 /* CUICollectionViewRegisterItem.m */; };\n\t\tF462DD3124ADC5F900044AB1 /* CUICrashLogsSourceSmart.m in Sources */ = {isa = PBXBuildFile; fileRef = F462DD3024ADC5F900044AB1 /* CUICrashLogsSourceSmart.m */; };\n\t\tF464F20C24ACF9CF007A3A96 /* CUICrashLogsMainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F464F20A24ACF9CF007A3A96 /* CUICrashLogsMainViewController.m */; };\n\t\tF464F20D24ACF9CF007A3A96 /* CUICrashLogsMainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F464F20B24ACF9CF007A3A96 /* CUICrashLogsMainViewController.xib */; };\n\t\tF464F21024ACFBA1007A3A96 /* CUIRegister.m in Sources */ = {isa = PBXBuildFile; fileRef = F464F20F24ACFBA1007A3A96 /* CUIRegister.m */; };\n\t\tF464FA1525D2DA2A00E024A3 /* NSSet+WBExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = F464FA1425D2DA2A00E024A3 /* NSSet+WBExtensions.m */; };\n\t\tF4651F8624B297420090DF10 /* CUIOperatingSystemVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = F4651F8524B297420090DF10 /* CUIOperatingSystemVersion.m */; };\n\t\tF469AB2524B3DDEA0053C824 /* CUICrashLogExceptionInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F469AB2424B3DDEA0053C824 /* CUICrashLogExceptionInformation.m */; };\n\t\tF46BAF59250162C900991970 /* CUIPreferencesWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = F46BAF58250162C900991970 /* CUIPreferencesWindow.m */; };\n\t\tF46D2A2624C33FA200652D50 /* Predicates.strings in Resources */ = {isa = PBXBuildFile; fileRef = F46D2A2824C33FA200652D50 /* Predicates.strings */; };\n\t\tF46D779B25ED8D1800039663 /* CUIInspectorGeneralViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F46D779D25ED8D1800039663 /* CUIInspectorGeneralViewController.xib */; };\n\t\tF46D779F25ED8D3600039663 /* CUIInspectorUserViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F46D77A125ED8D3600039663 /* CUIInspectorUserViewController.xib */; };\n\t\tF46D77A325ED8D5700039663 /* CUIInspectorExecutableViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F46D77A525ED8D5700039663 /* CUIInspectorExecutableViewController.xib */; };\n\t\tF46D77A725ED8E3B00039663 /* CUIInspectorProcessesViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F46D77A925ED8E3B00039663 /* CUIInspectorProcessesViewController.xib */; };\n\t\tF46D77AB25ED9EAE00039663 /* CUICollectionViewRegisterItem.xib in Resources */ = {isa = PBXBuildFile; fileRef = F46D77AD25ED9EAE00039663 /* CUICollectionViewRegisterItem.xib */; };\n\t\tF472CC972550631A003F6338 /* CUISwiftDemangler.m in Sources */ = {isa = PBXBuildFile; fileRef = F472CC962550631A003F6338 /* CUISwiftDemangler.m */; };\n\t\tF4754D7125F5678700B0D48F /* CUICrashLogPresentationOutlineViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4754D7325F5678700B0D48F /* CUICrashLogPresentationOutlineViewController.xib */; };\n\t\tF475FB4026DBAC8200A113D8 /* CUITableViewNoSpace.m in Sources */ = {isa = PBXBuildFile; fileRef = F475FB3F26DBAC8200A113D8 /* CUITableViewNoSpace.m */; };\n\t\tF476EEBE25686DEF00F40F87 /* CUIAboutBoxFooterView.m in Sources */ = {isa = PBXBuildFile; fileRef = F476EEBD25686DEF00F40F87 /* CUIAboutBoxFooterView.m */; };\n\t\tF476EEC125686EC000F40F87 /* CUIContentBox.m in Sources */ = {isa = PBXBuildFile; fileRef = F476EEBF25686EC000F40F87 /* CUIContentBox.m */; };\n\t\tF4775479255B0054006BA662 /* CUIThemesTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4775478255B0054006BA662 /* CUIThemesTableView.m */; };\n\t\tF47AF8C0255DE61E0037E2D8 /* NSCrashLogTextScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = F47AF8BF255DE61E0037E2D8 /* NSCrashLogTextScrollView.m */; };\n\t\tF47C381E2A422E880020D88F /* CUIThreadsListViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F47C381C2A422E880020D88F /* CUIThreadsListViewController.xib */; };\n\t\tF47C381F2A422E880020D88F /* CUIThreadsListViewController_RTL.xib in Resources */ = {isa = PBXBuildFile; fileRef = F47C381D2A422E880020D88F /* CUIThreadsListViewController_RTL.xib */; };\n\t\tF47C38222A4230370020D88F /* CUIThreadsColumnViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F47C38202A4230370020D88F /* CUIThreadsColumnViewController.xib */; };\n\t\tF47C38232A4230370020D88F /* CUIThreadsColumnViewController_RTL.xib in Resources */ = {isa = PBXBuildFile; fileRef = F47C38212A4230370020D88F /* CUIThreadsColumnViewController_RTL.xib */; };\n\t\tF47F76622673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F47F76612673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.m */; };\n\t\tF47F76652673548600A74905 /* CUICrashLogsOpenErrorRecord.m in Sources */ = {isa = PBXBuildFile; fileRef = F47F76642673548600A74905 /* CUICrashLogsOpenErrorRecord.m */; };\n\t\tF47F7668267355EA00A74905 /* CUICrashLogErrors.m in Sources */ = {isa = PBXBuildFile; fileRef = F47F7667267355EA00A74905 /* CUICrashLogErrors.m */; };\n\t\tF480692E24AF7D83009665F2 /* CUICrashLogsListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F480692C24AF7D83009665F2 /* CUICrashLogsListViewController.m */; };\n\t\tF483845124EB041B00FAEF5D /* CUIThemeItemsGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = F483845024EB041B00FAEF5D /* CUIThemeItemsGroup.m */; };\n\t\tF483845324EB11F700FAEF5D /* default_themes.plist in Resources */ = {isa = PBXBuildFile; fileRef = F483845224EB11F700FAEF5D /* default_themes.plist */; };\n\t\tF483845624EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.m in Sources */ = {isa = PBXBuildFile; fileRef = F483845524EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.m */; };\n\t\tF483845924EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F483845824EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.m */; };\n\t\tF4871DC02543566E00580562 /* CUIdSYMBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871DBF2543566E00580562 /* CUIdSYMBundle.m */; };\n\t\tF4871E0325435AF400580562 /* DWRFSection_debug_info.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871DF225435AF300580562 /* DWRFSection_debug_info.m */; };\n\t\tF4871E0425435AF400580562 /* DWRFSection_debug_str.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871DF325435AF300580562 /* DWRFSection_debug_str.m */; };\n\t\tF4871E0525435AF400580562 /* DWRFSection_debug_line.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871DF725435AF300580562 /* DWRFSection_debug_line.m */; };\n\t\tF4871E0625435AF400580562 /* DWRFSection_debug_abbrev.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871DF925435AF300580562 /* DWRFSection_debug_abbrev.m */; };\n\t\tF4871E0725435AF400580562 /* DWRFFileObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871DFB25435AF300580562 /* DWRFFileObject.m */; };\n\t\tF4871E0825435AF400580562 /* LEB128.c in Sources */ = {isa = PBXBuildFile; fileRef = F4871DFE25435AF400580562 /* LEB128.c */; };\n\t\tF4871E0925435AF400580562 /* DWRFObject.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871E0125435AF400580562 /* DWRFObject.m */; };\n\t\tF4871E0A25435AF400580562 /* DWRFSection_debug_aranges.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871E0225435AF400580562 /* DWRFSection_debug_aranges.m */; };\n\t\tF4871E0D25437A6A00580562 /* CUISymbolicationDataCache.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871E0C25437A6A00580562 /* CUISymbolicationDataCache.m */; };\n\t\tF4871E10254384E100580562 /* CUIdSYMBundlesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F4871E0F254384E100580562 /* CUIdSYMBundlesManager.m */; };\n\t\tF48906AE25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F48906AD25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.m */; };\n\t\tF48944222545836F00E3E360 /* CUISymbolsFilesLibraryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F48944202545836F00E3E360 /* CUISymbolsFilesLibraryViewController.m */; };\n\t\tF4895F5727A72D1000D75369 /* CUILineJumperWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4895F5927A72D1000D75369 /* CUILineJumperWindowController.xib */; };\n\t\tF48BAB3625D9D4140005F3E5 /* CUIThreadImageCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F48BAB3525D9D4140005F3E5 /* CUIThreadImageCell.m */; };\n\t\tF48CF5FF24A96992002AD214 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4CC570B24A79EDA00150EC4 /* MainMenu.xib */; };\n\t\tF49227C824A8D45000772411 /* CUIStackFrame+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F49227C724A8D45000772411 /* CUIStackFrame+UI.m */; };\n\t\tF49282C325696BF900D255D8 /* known_exceptions.css in Resources */ = {isa = PBXBuildFile; fileRef = F49282C225696BF900D255D8 /* known_exceptions.css */; };\n\t\tF493DB1C24F1CF30001AA8C0 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = F493DB1A24F1CF2F001AA8C0 /* Localizable.strings */; };\n\t\tF495AEBC25F029C2000D92E1 /* CUIPreferencePanePresentationTextViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F495AEBE25F029C2000D92E1 /* CUIPreferencePanePresentationTextViewController.xib */; };\n\t\tF495AEC025F02F74000D92E1 /* CUIPreferencePanePresentationOutlineViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F495AEC225F02F74000D92E1 /* CUIPreferencePanePresentationOutlineViewController.xib */; };\n\t\tF495AEC425F03141000D92E1 /* unknown_exception_type.html in Resources */ = {isa = PBXBuildFile; fileRef = F495AEC625F03141000D92E1 /* unknown_exception_type.html */; };\n\t\tF495AEC825F0320D000D92E1 /* EXC_CRASH_SIGABRT.html in Resources */ = {isa = PBXBuildFile; fileRef = F495AECA25F0320D000D92E1 /* EXC_CRASH_SIGABRT.html */; };\n\t\tF495AECC25F033CC000D92E1 /* EXC_CRASH_SIGKILL.html in Resources */ = {isa = PBXBuildFile; fileRef = F495AECE25F033CC000D92E1 /* EXC_CRASH_SIGKILL.html */; };\n\t\tF495AED025F034C0000D92E1 /* EXC_BREAKPOINT_SIGTRAP.html in Resources */ = {isa = PBXBuildFile; fileRef = F495AED225F034C0000D92E1 /* EXC_BREAKPOINT_SIGTRAP.html */; };\n\t\tF495AED425F03820000D92E1 /* EXC_CRASH_Code Signature Invalid.html in Resources */ = {isa = PBXBuildFile; fileRef = F495AED625F03820000D92E1 /* EXC_CRASH_Code Signature Invalid.html */; };\n\t\tF49673FE24D0CF6400716289 /* CUIPreferencesWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = F49673FC24D0CF6400716289 /* CUIPreferencesWindowController.m */; };\n\t\tF496740324D0D05800716289 /* CUIPreferencePaneViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F496740224D0D05800716289 /* CUIPreferencePaneViewController.m */; };\n\t\tF496740A24D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F496740824D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.m */; };\n\t\tF496740E24D0D74A00716289 /* CUIApplicationPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = F496740D24D0D74A00716289 /* CUIApplicationPreferences.m */; };\n\t\tF497303A25F796E6001D01FE /* CUIHopperDisassemblerManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F497303925F796E6001D01FE /* CUIHopperDisassemblerManager.m */; };\n\t\tF497303E25F7F74C001D01FE /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = F497303C25F7F74B001D01FE /* InfoPlist.strings */; };\n\t\tF497AD5524B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = F497AD5424B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.m */; };\n\t\tF497F0162576E1A100BD1970 /* CUIRoundedRectBezelView.m in Sources */ = {isa = PBXBuildFile; fileRef = F497F0152576E1A100BD1970 /* CUIRoundedRectBezelView.m */; };\n\t\tF49A55DE24C7A7F900D249DE /* CUICallTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = F49A55DD24C7A7F900D249DE /* CUICallTableCellView.m */; };\n\t\tF49A6D7E25474F6E00466D15 /* CUIInactiveButton.m in Sources */ = {isa = PBXBuildFile; fileRef = F49A6D7D25474F6E00466D15 /* CUIInactiveButton.m */; };\n\t\tF49A6D8125476F7B00466D15 /* CUISymbolicationDataFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F49A6D8025476F7B00466D15 /* CUISymbolicationDataFormatter.m */; };\n\t\tF49C47CA24E9B48B003FC65C /* CUIThemesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F49C47C924E9B48B003FC65C /* CUIThemesManager.m */; };\n\t\tF4A0BEF1261BC39700BADEED /* CUIWatchGear.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A0BEE2261BC39600BADEED /* CUIWatchGear.m */; };\n\t\tF4A0BEF2261BC39700BADEED /* CUIWatchJewel.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A0BEE3261BC39600BADEED /* CUIWatchJewel.m */; };\n\t\tF4A0BEF3261BC39700BADEED /* brushed-alum.png in Resources */ = {isa = PBXBuildFile; fileRef = F4A0BEE5261BC39600BADEED /* brushed-alum.png */; };\n\t\tF4A0BEF4261BC39700BADEED /* CUIWatchAxis.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A0BEE6261BC39600BADEED /* CUIWatchAxis.m */; };\n\t\tF4A0BEF6261BC39700BADEED /* CUIWatchPart.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A0BEEB261BC39700BADEED /* CUIWatchPart.m */; };\n\t\tF4A0BEF7261BC39700BADEED /* CUIWatchBridge.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A0BEED261BC39700BADEED /* CUIWatchBridge.m */; };\n\t\tF4A0BEF8261BC39700BADEED /* CUIWatchScrew.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A0BEEF261BC39700BADEED /* CUIWatchScrew.m */; };\n\t\tF4A3A6DF25ED7F450018053E /* CUICrashLogsSourceSmartEditorWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4A3A6E125ED7F450018053E /* CUICrashLogsSourceSmartEditorWindowController.xib */; };\n\t\tF4A3A6E325ED81260018053E /* CUIPreferencePaneGeneralViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4A3A6E525ED81260018053E /* CUIPreferencePaneGeneralViewController.xib */; };\n\t\tF4A3A6E725ED817E0018053E /* CUIPreferencePaneCrashreporterViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4A3A6E925ED817E0018053E /* CUIPreferencePaneCrashreporterViewController.xib */; };\n\t\tF4A3A6EB25ED82F10018053E /* EXC_BAD_ACCESS_SIGBUS.html in Resources */ = {isa = PBXBuildFile; fileRef = F4A3A6ED25ED82F10018053E /* EXC_BAD_ACCESS_SIGBUS.html */; };\n\t\tF4A58D1B24CA4B1500D98FDB /* CUICrashedThreadRowView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A58D1A24CA4B1500D98FDB /* CUICrashedThreadRowView.m */; };\n\t\tF4A58D1E24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A58D1D24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.m */; };\n\t\tF4A7696A2555D9DE00F9D9D3 /* CUIRawCrashLog+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4A769692555D9DD00F9D9D3 /* CUIRawCrashLog+UI.m */; };\n\t\tF4A9967C2675078B0001B40E /* CUICrashLogsOpenErrorWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4A9967B2675078A0001B40E /* CUICrashLogsOpenErrorWindowController.xib */; };\n\t\tF4AA22B72561A233001A1315 /* CUIAboutBoxWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4AA22B52561A233001A1315 /* CUIAboutBoxWindowController.m */; };\n\t\tF4AC864A2558A03B004F2637 /* CUIExportAccessoryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4AC86482558A03B004F2637 /* CUIExportAccessoryViewController.m */; };\n\t\tF4B018372620FEC7009727F1 /* CUIApplicationIconView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B018352620FEC7009727F1 /* CUIApplicationIconView.m */; };\n\t\tF4B138572522948700D9DE2F /* NSBundle+dSYM.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B138562522948700D9DE2F /* NSBundle+dSYM.m */; };\n\t\tF4B52E212548B8B4007593FD /* CUIdSYMBundle+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B52E202548B8B4007593FD /* CUIdSYMBundle+UI.m */; };\n\t\tF4B57C0C24AF5607000851FF /* CUICrashLogsSourceToday.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B57C0B24AF5607000851FF /* CUICrashLogsSourceToday.m */; };\n\t\tF4B57C0F24AF5655000851FF /* CUICrashLogsSourceToday+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B57C0E24AF5655000851FF /* CUICrashLogsSourceToday+UI.m */; };\n\t\tF4B5BE6E2848277400C33F6F /* CUIExceptionTypePopUpViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B5BE6D2848277400C33F6F /* CUIExceptionTypePopUpViewController.m */; };\n\t\tF4B5BE7128482A4300C33F6F /* CUITerminationReasonPopUpViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B5BE7028482A4300C33F6F /* CUITerminationReasonPopUpViewController.m */; };\n\t\tF4B649D324EDCD2300008C47 /* CUIInspectorExecutableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B649D124EDCD2300008C47 /* CUIInspectorExecutableViewController.m */; };\n\t\tF4B649D724EDD09A00008C47 /* CUIInspectorStackableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B649D624EDD09A00008C47 /* CUIInspectorStackableViewController.m */; };\n\t\tF4B649DB24EDD64900008C47 /* CUIInspectorProcessesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B649D924EDD64900008C47 /* CUIInspectorProcessesViewController.m */; };\n\t\tF4B67838258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B67836258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.m */; };\n\t\tF4B74C1924B233C900CD1E60 /* CUIRightViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B74C1724B233C900CD1E60 /* CUIRightViewController.m */; };\n\t\tF4B74C1A24B233C900CD1E60 /* CUIRightViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4B74C1824B233C900CD1E60 /* CUIRightViewController.xib */; };\n\t\tF4B9AD3225319A410083FA6C /* MCHMemoryBufferWrapper.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD2425319A400083FA6C /* MCHMemoryBufferWrapper.m */; };\n\t\tF4B9AD3325319A410083FA6C /* MCHSegment.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD2625319A400083FA6C /* MCHSegment.m */; };\n\t\tF4B9AD3425319A410083FA6C /* MCHObjectFile.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD2825319A400083FA6C /* MCHObjectFile.m */; };\n\t\tF4B9AD3525319A410083FA6C /* MCHUUIDLoadCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD2B25319A400083FA6C /* MCHUUIDLoadCommand.m */; };\n\t\tF4B9AD3625319A410083FA6C /* MCHLoadCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD2D25319A410083FA6C /* MCHLoadCommand.m */; };\n\t\tF4B9AD3725319A410083FA6C /* MCHSection.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD2E25319A410083FA6C /* MCHSection.m */; };\n\t\tF4B9AD3825319A410083FA6C /* MCHMachBinary.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD3025319A410083FA6C /* MCHMachBinary.m */; };\n\t\tF4B9AD3B25319D7C0083FA6C /* MCHSegmentLoadCommand.m in Sources */ = {isa = PBXBuildFile; fileRef = F4B9AD3925319D7B0083FA6C /* MCHSegmentLoadCommand.m */; };\n\t\tF4BBAC5D24AA7D37000511BE /* CUIBinaryImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F4BBAC5C24AA7D37000511BE /* CUIBinaryImage.m */; };\n\t\tF4BC577124DF426200063545 /* CUIAATextFieldCell.m in Sources */ = {isa = PBXBuildFile; fileRef = F4BC577024DF426200063545 /* CUIAATextFieldCell.m */; };\n\t\tF4BD6A0025553E9000F98F3E /* CUICrashLogSectionsDetector.m in Sources */ = {isa = PBXBuildFile; fileRef = F4BD69FF25553E9000F98F3E /* CUICrashLogSectionsDetector.m */; };\n\t\tF4BD8C6A2DF4DDCB00BD61A8 /* IPSExceptionReason.m in Sources */ = {isa = PBXBuildFile; fileRef = F4BD8C692DF4DDCA00BD61A8 /* IPSExceptionReason.m */; };\n\t\tF4C269CD2503BCC100C8F3B3 /* CUISymbolicationManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F4C269CC2503BCC100C8F3B3 /* CUISymbolicationManager.m */; };\n\t\tF4C269D02503BE6500C8F3B3 /* CUISymbolicationData.m in Sources */ = {isa = PBXBuildFile; fileRef = F4C269CF2503BE6500C8F3B3 /* CUISymbolicationData.m */; };\n\t\tF4C7498E24F84689004F38C0 /* CUIQuickHelpPopUpViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4C7498C24F84689004F38C0 /* CUIQuickHelpPopUpViewController.m */; };\n\t\tF4C7498F24F84689004F38C0 /* CUIQuickHelpPopUpViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4C7498D24F84689004F38C0 /* CUIQuickHelpPopUpViewController.xib */; };\n\t\tF4CC570624A79EDA00150EC4 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC570524A79EDA00150EC4 /* AppDelegate.m */; };\n\t\tF4CC570824A79EDA00150EC4 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC570724A79EDA00150EC4 /* main.m */; };\n\t\tF4CC570A24A79EDA00150EC4 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F4CC570924A79EDA00150EC4 /* Images.xcassets */; };\n\t\tF4CC572424A7A1D100150EC4 /* CUICrashLogsProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC572324A7A1D100150EC4 /* CUICrashLogsProvider.m */; };\n\t\tF4CC572724A7A2B200150EC4 /* CUICrashLog.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC572624A7A2B200150EC4 /* CUICrashLog.m */; };\n\t\tF4CC572D24A7A5F000150EC4 /* CUICrashLog+Transform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC572C24A7A5F000150EC4 /* CUICrashLog+Transform.m */; };\n\t\tF4CC573024A7A95A00150EC4 /* CUIThread.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC572F24A7A95A00150EC4 /* CUIThread.m */; };\n\t\tF4CC573324A7ABAF00150EC4 /* CUICallStackBacktrace.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CC573224A7ABAF00150EC4 /* CUICallStackBacktrace.m */; };\n\t\tF4CCCC6124AE76780031BC27 /* CUICrashLogsSourcesViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CCCC5F24AE76780031BC27 /* CUICrashLogsSourcesViewController.m */; };\n\t\tF4CCCC6524AE810E0031BC27 /* CUICrashLogsSourcesSelection.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CCCC6424AE810E0031BC27 /* CUICrashLogsSourcesSelection.m */; };\n\t\tF4CCCC6B24AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CCCC6A24AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.m */; };\n\t\tF4CCCC6E24AE9EDA0031BC27 /* CUICrashLogsSource+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CCCC6D24AE9EDA0031BC27 /* CUICrashLogsSource+UI.m */; };\n\t\tF4CD32B6257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CD32B4257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.m */; };\n\t\tF4CE83DE2554B97400A8BD87 /* CUICenteredLabelViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4CE83DD2554B97300A8BD87 /* CUICenteredLabelViewController.xib */; };\n\t\tF4CF6CF62DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CF6CF42DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.m */; };\n\t\tF4D0EE95273DB8CD00CC9737 /* IPSThreadState+RegisterDisplayName.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D0EE93273DB8CC00CC9737 /* IPSThreadState+RegisterDisplayName.m */; };\n\t\tF4D14D682745C0A9003698AD /* IPSImage+UserCode.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D14D662745C0A9003698AD /* IPSImage+UserCode.m */; };\n\t\tF4D5C77C2571AF900029B051 /* CUIRegisterLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D5C77B2571AF900029B051 /* CUIRegisterLabel.m */; };\n\t\tF4D6C56D2680028A00B78B3D /* RemoteCheck.strings in Resources */ = {isa = PBXBuildFile; fileRef = F4D6C56B2680028A00B78B3D /* RemoteCheck.strings */; };\n\t\tF4D7F15B25F04A620024E9A5 /* CUISymbolsFilesLibraryViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4D7F15D25F04A620024E9A5 /* CUISymbolsFilesLibraryViewController.xib */; };\n\t\tF4D7F15F25F04A9D0024E9A5 /* CUIPreferencePaneSymbolicationViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4D7F16125F04A9D0024E9A5 /* CUIPreferencePaneSymbolicationViewController.xib */; };\n\t\tF4DAF0B327C44AA800256EA4 /* IPSImage+Offset.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DAF0B227C44AA700256EA4 /* IPSImage+Offset.m */; };\n\t\tF4DAFBEE2736B7B200FB50A6 /* CUIIPSTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DAFBED2736B7B200FB50A6 /* CUIIPSTransform.m */; };\n\t\tF4DAFBF12736B7D500FB50A6 /* CUIDataTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DAFBF02736B7D500FB50A6 /* CUIDataTransform.m */; };\n\t\tF4DF815A2893463E008EF1B3 /* IPSThreadState+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF813C2893463B008EF1B3 /* IPSThreadState+Obfuscating.m */; };\n\t\tF4DF815B2893463E008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF813D2893463B008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.m */; };\n\t\tF4DF815C2893463E008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81402893463B008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.m */; };\n\t\tF4DF815D2893463E008EF1B3 /* IPSIncidentHeader+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81432893463C008EF1B3 /* IPSIncidentHeader+Obfuscating.m */; };\n\t\tF4DF815E2893463E008EF1B3 /* IPSObfuscator.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81462893463C008EF1B3 /* IPSObfuscator.m */; };\n\t\tF4DF815F2893463E008EF1B3 /* IPSCrashSummary+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81472893463C008EF1B3 /* IPSCrashSummary+Obfuscating.m */; };\n\t\tF4DF81602893463E008EF1B3 /* IPSThread+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81492893463C008EF1B3 /* IPSThread+Obfuscating.m */; };\n\t\tF4DF81612893463E008EF1B3 /* IPSThreadFrame+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF814A2893463C008EF1B3 /* IPSThreadFrame+Obfuscating.m */; };\n\t\tF4DF81622893463E008EF1B3 /* IPSRegisterState+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF814B2893463C008EF1B3 /* IPSRegisterState+Obfuscating.m */; };\n\t\tF4DF81632893463E008EF1B3 /* IPSImage+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF814F2893463D008EF1B3 /* IPSImage+Obfuscating.m */; };\n\t\tF4DF81642893463E008EF1B3 /* IPSLegacyInfo+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81502893463D008EF1B3 /* IPSLegacyInfo+Obfuscating.m */; };\n\t\tF4DF81652893463E008EF1B3 /* IPSReport+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81522893463D008EF1B3 /* IPSReport+Obfuscating.m */; };\n\t\tF4DF81662893463E008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81552893463D008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.m */; };\n\t\tF4DF81672893463E008EF1B3 /* IPSBundleInfo+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81562893463D008EF1B3 /* IPSBundleInfo+Obfuscating.m */; };\n\t\tF4DF81682893463E008EF1B3 /* IPSIncident+Obfuscating.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DF81572893463D008EF1B3 /* IPSIncident+Obfuscating.m */; };\n\t\tF4E0BD25262078220048647C /* CUIAboutBoxWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E0BD24262078220048647C /* CUIAboutBoxWindow.m */; };\n\t\tF4E671922E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E671912E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.m */; };\n\t\tF4E671952E2C405F00E5A064 /* CodeSigningFlags.plist in Resources */ = {isa = PBXBuildFile; fileRef = F4E671942E2C405F00E5A064 /* CodeSigningFlags.plist */; };\n\t\tF4E6ED9C2849695200766F9A /* unknown_termination_reason.html in Resources */ = {isa = PBXBuildFile; fileRef = F4E6ED9A2849695100766F9A /* unknown_termination_reason.html */; };\n\t\tF4E6EDA1284969DD00766F9A /* known_termination_reasons.css in Resources */ = {isa = PBXBuildFile; fileRef = F4E6EDA0284969DD00766F9A /* known_termination_reasons.css */; };\n\t\tF4E6EDA4284969E500766F9A /* ENDPOINTSECURITY_2.html in Resources */ = {isa = PBXBuildFile; fileRef = F4E6EDA2284969E500766F9A /* ENDPOINTSECURITY_2.html */; };\n\t\tF4E861BA255496310061E203 /* CUIRawCrashLog.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E861B9255496310061E203 /* CUIRawCrashLog.m */; };\n\t\tF4E91ADD256A98050017C3EE /* CUIFontBoxView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E91ADC256A98050017C3EE /* CUIFontBoxView.m */; };\n\t\tF4EAFA2C24FA6CD100C0B729 /* CUICrashLogTextView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4EAFA2B24FA6CD100C0B729 /* CUICrashLogTextView.m */; };\n\t\tF4EBADB424A8F04F00DF4271 /* CUICrashLog+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4EBADB324A8F04F00DF4271 /* CUICrashLog+UI.m */; };\n\t\tF4EBADB724A8F10000DF4271 /* CUICrashLogTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4EBADB624A8F10000DF4271 /* CUICrashLogTableCellView.m */; };\n\t\tF4EBD24B24E01556007F0252 /* CUITableCustomSelectionColorRowView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4EBD24A24E01556007F0252 /* CUITableCustomSelectionColorRowView.m */; };\n\t\tF4ED18A324EC77A300ED7EF2 /* NSArray+UniqueName.m in Sources */ = {isa = PBXBuildFile; fileRef = F4ED18A124EC77A300ED7EF2 /* NSArray+UniqueName.m */; };\n\t\tF4ED758A2501A29700316E73 /* CUIStackFrame.m in Sources */ = {isa = PBXBuildFile; fileRef = F4ED75892501A29700316E73 /* CUIStackFrame.m */; };\n\t\tF4EFE75224BA48F500DB97AC /* CUIMainWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = F4EFE75124BA48F500DB97AC /* CUIMainWindow.m */; };\n\t\tF4F2A9D024BB7E3600F912D4 /* CUICrashLogsSourceSeparator.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F2A9CF24BB7E3600F912D4 /* CUICrashLogsSourceSeparator.m */; };\n\t\tF4F2A9D324BB809200F912D4 /* CUICrashLogsSourceTableCellView.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F2A9D224BB809200F912D4 /* CUICrashLogsSourceTableCellView.m */; };\n\t\tF4F5395924D21DB800D537BC /* CUIPreferencePaneGeneralViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F5395724D21DB800D537BC /* CUIPreferencePaneGeneralViewController.m */; };\n\t\tF4F5821C256FC7B90032FC53 /* DWRFSection_debug_str_offsets.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F5821B256FC7B90032FC53 /* DWRFSection_debug_str_offsets.m */; };\n\t\tF4F892F92575A6DC00BE4CE0 /* CUIRegistersViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4F892F82575A6DC00BE4CE0 /* CUIRegistersViewController.xib */; };\n\t\tF4F892FD2575A70800BE4CE0 /* CUIRegistersMainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F892FB2575A70800BE4CE0 /* CUIRegistersMainViewController.m */; };\n\t\tF4F892FE2575A70800BE4CE0 /* CUIRegistersMainViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4F892FC2575A70800BE4CE0 /* CUIRegistersMainViewController.xib */; };\n\t\tF4F8D26924F29624007661D6 /* CUIPresentationTextNavigationViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F8D26724F29624007661D6 /* CUIPresentationTextNavigationViewController.m */; };\n\t\tF4F8D26A24F29624007661D6 /* CUIPresentationTextNavigationViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F4F8D26824F29624007661D6 /* CUIPresentationTextNavigationViewController.xib */; };\n\t\tF4F9BAF224EF060E00D08FBD /* CUIInspectorUserViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F9BAF024EF060E00D08FBD /* CUIInspectorUserViewController.m */; };\n\t\tF4F9BAF724EF06BC00D08FBD /* CUIInspectorGeneralViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F9BAF524EF06BC00D08FBD /* CUIInspectorGeneralViewController.m */; };\n\t\tF4F9D3362556C7DB00D28E6E /* CUILineJumperWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = F4F9D3342556C7DB00D28E6E /* CUILineJumperWindowController.m */; };\n\t\tF4FA4323273EF2F30068EDB8 /* NSString+CPU.m in Sources */ = {isa = PBXBuildFile; fileRef = F4FA4322273EF2F30068EDB8 /* NSString+CPU.m */; };\n\t\tF4FC8EA727C1A6EE00291875 /* CUIReportThemedTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4FC8EA627C1A6EE00291875 /* CUIReportThemedTransform.m */; };\n\t\tF4FE2DEA25615CA800C1774A /* CUICrashLogExceptionInformation+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4FE2DE925615CA800C1774A /* CUICrashLogExceptionInformation+UI.m */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXContainerItemProxy section */\n\t\tF45F84D7266ABB5800F354F3 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = F45F84D3266ABB5800F354F3 /* crashreport.xcodeproj */;\n\t\t\tproxyType = 2;\n\t\t\tremoteGlobalIDString = F48DAE252661207800C93D40;\n\t\t\tremoteInfo = crashreport;\n\t\t};\n\t\tF45F84D9266ABB6300F354F3 /* PBXContainerItemProxy */ = {\n\t\t\tisa = PBXContainerItemProxy;\n\t\t\tcontainerPortal = F45F84D3266ABB5800F354F3 /* crashreport.xcodeproj */;\n\t\t\tproxyType = 1;\n\t\t\tremoteGlobalIDString = F48DAE242661207700C93D40;\n\t\t\tremoteInfo = crashreport;\n\t\t};\n/* End PBXContainerItemProxy section */\n\n/* Begin PBXCopyFilesBuildPhase section */\n\t\tF45F84DB266ABB7000F354F3 /* CopyFiles */ = {\n\t\t\tisa = PBXCopyFilesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tdstPath = Contents/Library/QuickLook;\n\t\t\tdstSubfolderSpec = 1;\n\t\t\tfiles = (\n\t\t\t\tF45F84DC266ABB7600F354F3 /* crashreport.qlgenerator in CopyFiles */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXCopyFilesBuildPhase section */\n\n/* Begin PBXFileReference section */\n\t\tD000743B2E11F30900CC5121 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = Help/ja.lproj/EXC_GUARD.html; sourceTree = \"<group>\"; };\n\t\tD000743C2E11F30B00CC5121 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = Help/es.lproj/EXC_GUARD.html; sourceTree = \"<group>\"; };\n\t\tD00B152C2E0B52740098456B /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = Help/fr.lproj/EXC_GUARD.html; sourceTree = \"<group>\"; };\n\t\tD06294352E1DD8150008895D /* CUICodeSigningInformationViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICodeSigningInformationViewController.h; sourceTree = \"<group>\"; };\n\t\tD06294362E1DD8150008895D /* CUICodeSigningInformationViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICodeSigningInformationViewController.m; sourceTree = \"<group>\"; };\n\t\tD0790DBB2E00BACF00CD6A72 /* CUIThreadImageView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIThreadImageView.h; sourceTree = \"<group>\"; };\n\t\tD0790DBC2E00BACF00CD6A72 /* CUIThreadImageView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIThreadImageView.m; sourceTree = \"<group>\"; };\n\t\tD0AECAE42E0F34830028246E /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = Help/he.lproj/EXC_GUARD.html; sourceTree = \"<group>\"; };\n\t\tD0BA6A452E09FEB50010D630 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = Help/en.lproj/EXC_GUARD.html; sourceTree = \"<group>\"; };\n\t\tD0BD22392F3FC6810052AD8E /* NSMenuItem+RSCore.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = \"NSMenuItem+RSCore.h\"; path = \"RSCore/NSMenuItem+RSCore.h\"; sourceTree = \"<group>\"; };\n\t\tD0BD223A2F3FC6810052AD8E /* NSMenuItem+RSCore.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = \"NSMenuItem+RSCore.m\"; path = \"RSCore/NSMenuItem+RSCore.m\"; sourceTree = \"<group>\"; };\n\t\tF4040A7424F5B9CE0072BF65 /* CUINavigationChevronView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUINavigationChevronView.h; sourceTree = \"<group>\"; };\n\t\tF4040A7524F5B9CE0072BF65 /* CUINavigationChevronView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUINavigationChevronView.m; sourceTree = \"<group>\"; };\n\t\tF4040A7724F5BC230072BF65 /* CUINavigationView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUINavigationView.h; sourceTree = \"<group>\"; };\n\t\tF4040A7824F5BC230072BF65 /* CUINavigationView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUINavigationView.m; sourceTree = \"<group>\"; };\n\t\tF4055C8225EEE37400DC6CCA /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIMainWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4055C8425EEE37600DC6CCA /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIMainWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF405A96B255015D800AD2F24 /* CUICXXDemangler.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = CUICXXDemangler.h; path = app_unexpectedly/Demangling/CUICXXDemangler.h; sourceTree = \"<group>\"; };\n\t\tF405A96C255015D800AD2F24 /* CUICXXDemangler.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; name = CUICXXDemangler.mm; path = app_unexpectedly/Demangling/CUICXXDemangler.mm; sourceTree = \"<group>\"; };\n\t\tF405A96E25501A5F00AD2F24 /* CUIParsingErrors.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIParsingErrors.h; sourceTree = \"<group>\"; };\n\t\tF405A96F25501A5F00AD2F24 /* CUIParsingErrors.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIParsingErrors.m; sourceTree = \"<group>\"; };\n\t\tF406B49A2687AB1400B90C7B /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePaneAdvancedViewController.xib; sourceTree = \"<group>\"; };\n\t\tF406B49C2687AB1800B90C7B /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePaneAdvancedViewController.xib; sourceTree = \"<group>\"; };\n\t\tF406B49D2687AC1900B90C7B /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePaneAdvancedViewController.xib; sourceTree = \"<group>\"; };\n\t\tF40ACE2B255697A3006855E5 /* CUICrashLogBrowsingState.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogBrowsingState.h; sourceTree = \"<group>\"; };\n\t\tF40ACE2C255697A3006855E5 /* CUICrashLogBrowsingState.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogBrowsingState.m; sourceTree = \"<group>\"; };\n\t\tF40ACE2E255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogBrowsingStateRegistry.h; sourceTree = \"<group>\"; };\n\t\tF40ACE2F255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogBrowsingStateRegistry.m; sourceTree = \"<group>\"; };\n\t\tF40B0D7824D3558700663282 /* CUIPreferencesTabBox.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencesTabBox.m; sourceTree = \"<group>\"; };\n\t\tF40B0D7924D3558800663282 /* CUIPreferencesTabHeaderView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencesTabHeaderView.m; sourceTree = \"<group>\"; };\n\t\tF40B0D7A24D3558800663282 /* CUIPreferencesTabBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIPreferencesTabBox.h; sourceTree = \"<group>\"; };\n\t\tF40B0D7B24D3558800663282 /* CUIPreferencesTabButton.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencesTabButton.m; sourceTree = \"<group>\"; };\n\t\tF40B0D7C24D3558800663282 /* CUIPreferencesTabButton.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIPreferencesTabButton.h; sourceTree = \"<group>\"; };\n\t\tF40B0D7D24D3558800663282 /* CUIPreferencesTabHeaderView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIPreferencesTabHeaderView.h; sourceTree = \"<group>\"; };\n\t\tF40B0D8324D3569800663282 /* NSColor+LabelColor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSColor+LabelColor.h\"; path = \"AppKit + Extensions/NSColor+LabelColor.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8424D3569800663282 /* NSColor+LabelColor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSColor+LabelColor.m\"; path = \"AppKit + Extensions/NSColor+LabelColor.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8524D3569800663282 /* NSResponder+Appearance.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSResponder+Appearance.m\"; path = \"AppKit + Extensions/NSResponder+Appearance.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8624D3569800663282 /* NSResponder+Appearance.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSResponder+Appearance.h\"; path = \"AppKit + Extensions/NSResponder+Appearance.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8924D356A200663282 /* NSArray+WBExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSArray+WBExtensions.m\"; path = \"Foundation + Extensions/NSArray+WBExtensions.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8A24D356A200663282 /* NSIndexSet+Analysis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSIndexSet+Analysis.h\"; path = \"Foundation + Extensions/NSIndexSet+Analysis.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8B24D356A200663282 /* NSIndexSet+Analysis.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSIndexSet+Analysis.m\"; path = \"Foundation + Extensions/NSIndexSet+Analysis.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8C24D356A200663282 /* NSArray+WBExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSArray+WBExtensions.h\"; path = \"Foundation + Extensions/NSArray+WBExtensions.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D8F24D356F900663282 /* NSToolbar+Packages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSToolbar+Packages.h\"; path = \"AppKit + Extensions/NSToolbar+Packages.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9024D356F900663282 /* NSToolbar+Packages.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSToolbar+Packages.m\"; path = \"AppKit + Extensions/NSToolbar+Packages.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9224D3571A00663282 /* NSTableView+Selection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSTableView+Selection.m\"; path = \"AppKit + Extensions/NSTableView+Selection.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9324D3571B00663282 /* NSTableView+Selection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSTableView+Selection.h\"; path = \"AppKit + Extensions/NSTableView+Selection.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9524D3572E00663282 /* NSColor+String.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSColor+String.m\"; path = \"AppKit + Extensions/NSColor+String.m\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9624D3572E00663282 /* NSColor+String.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSColor+String.h\"; path = \"AppKit + Extensions/NSColor+String.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9B24D370A200663282 /* NSDictionary+MutableDeepCopy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSDictionary+MutableDeepCopy.h\"; path = \"Foundation + Extensions/NSDictionary+MutableDeepCopy.h\"; sourceTree = \"<group>\"; };\n\t\tF40B0D9C24D370A200663282 /* NSDictionary+MutableDeepCopy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSDictionary+MutableDeepCopy.m\"; path = \"Foundation + Extensions/NSDictionary+MutableDeepCopy.m\"; sourceTree = \"<group>\"; };\n\t\tF40B124724E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUIPreferencesWindowController+Convenience.h\"; sourceTree = \"<group>\"; };\n\t\tF40B124824E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUIPreferencesWindowController+Convenience.m\"; sourceTree = \"<group>\"; };\n\t\tF40B77D524AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogsSourceStandardDirectory+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF40B77D624AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogsSourceStandardDirectory+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF40B77D824AF1426001A8131 /* CUICrashLogsSourceAll+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogsSourceAll+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF40B77D924AF1426001A8131 /* CUICrashLogsSourceAll+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogsSourceAll+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF40B832725FC0AEC0091D886 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_CRASH_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF40B832925FC0AEE0091D886 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_CRASH_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF40BEAEF24E9F754007A3F60 /* CUIThemeItemAttributes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIThemeItemAttributes.h; sourceTree = \"<group>\"; };\n\t\tF40BEAF024E9F754007A3F60 /* CUIThemeItemAttributes.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIThemeItemAttributes.m; sourceTree = \"<group>\"; };\n\t\tF40BEAFA24E9FEF8007A3F60 /* NSDictionary+WBExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSDictionary+WBExtensions.h\"; path = \"Foundation + Extensions/NSDictionary+WBExtensions.h\"; sourceTree = \"<group>\"; };\n\t\tF40BEAFB24E9FEF8007A3F60 /* NSDictionary+WBExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSDictionary+WBExtensions.m\"; path = \"Foundation + Extensions/NSDictionary+WBExtensions.m\"; sourceTree = \"<group>\"; };\n\t\tF40ED76524E72A6E00557BB8 /* CUICategoriesClipView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICategoriesClipView.h; sourceTree = \"<group>\"; };\n\t\tF40ED76624E72A6E00557BB8 /* CUICategoriesClipView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICategoriesClipView.m; sourceTree = \"<group>\"; };\n\t\tF40FC81425EAF7B000DB4B27 /* CUISourceFileTableCellView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISourceFileTableCellView.h; sourceTree = \"<group>\"; };\n\t\tF40FC81525EAF7B000DB4B27 /* CUISourceFileTableCellView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISourceFileTableCellView.m; sourceTree = \"<group>\"; };\n\t\tF4111AC4265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIAboutBoxWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AC5265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePaneGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AC6265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePanePresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AC7265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePanePresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AC8265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePanePresentationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AC9265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePaneFontscolorsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111ACA265EE92200FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUISymbolsFilesLibraryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111ACB265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePaneSymbolicationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111ACC265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencePaneCrashreporterViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111ACD265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIPreferencesWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4111ACE265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICrashLogsSourceSmartEditorWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4111ACF265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICrashLogsSourcesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AD0265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICrashLogsListViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AD1265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIInspectorGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AD2265EE92300FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIInspectorUserViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AD3265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIInspectorExecutableViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AD4265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIInspectorProcessesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AD5265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/unknown_exception_type.html; sourceTree = \"<group>\"; };\n\t\tF4111AD6265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_BAD_ACCESS_SIGBUS.html; sourceTree = \"<group>\"; };\n\t\tF4111AD7265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_BAD_ACCESS_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF4111AD8265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_BAD_INSTRUCTION_SIGILL.html; sourceTree = \"<group>\"; };\n\t\tF4111AD9265EE92400FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_BREAKPOINT_SIGTRAP.html; sourceTree = \"<group>\"; };\n\t\tF4111ADA265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_CRASH_SIGABRT.html; sourceTree = \"<group>\"; };\n\t\tF4111ADB265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_CRASH_SIGKILL.html; sourceTree = \"<group>\"; };\n\t\tF4111ADC265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_CRASH_SIGQUIT.html; sourceTree = \"<group>\"; };\n\t\tF4111ADD265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = es.lproj/EXC_CRASH_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF4111ADE265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = \"es.lproj/EXC_CRASH_Code Signature Invalid.html\"; sourceTree = \"<group>\"; };\n\t\tF4111ADF265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIExportAccessoryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE0265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICrashLogPresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE1265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICrashLogPresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE2265EE92500FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICollectionViewRegisterItem.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE3265EE92600FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIBinaryImagesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE4265EE92600FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUIMainWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE5265EE92600FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = \"<group>\"; };\n\t\tF4111AE6265EE92600FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Predicates.strings; sourceTree = \"<group>\"; };\n\t\tF4111AE7265EE92600FD8950 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/MainMenu.xib; sourceTree = \"<group>\"; };\n\t\tF4111AE8265EE92600FD8950 /* es */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\tF4132C8D24AA19F70086B99C /* CUICrashLogsSource.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSource.h; sourceTree = \"<group>\"; };\n\t\tF4132C8E24AA19F70086B99C /* CUICrashLogsSource.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSource.m; sourceTree = \"<group>\"; };\n\t\tF414068624D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIApplicationSpecificBacktraceRowView.h; sourceTree = \"<group>\"; };\n\t\tF414068724D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIApplicationSpecificBacktraceRowView.m; sourceTree = \"<group>\"; };\n\t\tF414068924D6014D0059FF21 /* CUIFontAndColorsFramedView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIFontAndColorsFramedView.h; sourceTree = \"<group>\"; };\n\t\tF414068A24D6014D0059FF21 /* CUIFontAndColorsFramedView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIFontAndColorsFramedView.m; sourceTree = \"<group>\"; };\n\t\tF414D08C24BFB57700A7095C /* CUICrashLogDianosticMessages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogDianosticMessages.h; sourceTree = \"<group>\"; };\n\t\tF414D08D24BFB57700A7095C /* CUICrashLogDianosticMessages.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogDianosticMessages.m; sourceTree = \"<group>\"; };\n\t\tF414D08F24BFBC3A00A7095C /* CUICrashLogBacktraces.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogBacktraces.h; sourceTree = \"<group>\"; };\n\t\tF414D09024BFBC3A00A7095C /* CUICrashLogBacktraces.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogBacktraces.m; sourceTree = \"<group>\"; };\n\t\tF414D09224BFBC4A00A7095C /* CUICrashLogThreadState.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogThreadState.h; sourceTree = \"<group>\"; };\n\t\tF414D09324BFBC4A00A7095C /* CUICrashLogThreadState.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogThreadState.m; sourceTree = \"<group>\"; };\n\t\tF414D09524BFBC6300A7095C /* CUICrashLogBinaryImages.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogBinaryImages.h; sourceTree = \"<group>\"; };\n\t\tF414D09624BFBC6300A7095C /* CUICrashLogBinaryImages.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogBinaryImages.m; sourceTree = \"<group>\"; };\n\t\tF416686C24B0AEE800C2AB89 /* CUIContentsViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIContentsViewController.h; sourceTree = \"<group>\"; };\n\t\tF416686D24B0AEE800C2AB89 /* CUIContentsViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIContentsViewController.m; sourceTree = \"<group>\"; };\n\t\tF416686E24B0AEE800C2AB89 /* CUIContentsViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIContentsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF416687124B0AF4D00C2AB89 /* CUICenteredLabelViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICenteredLabelViewController.h; sourceTree = \"<group>\"; };\n\t\tF416687224B0AF4D00C2AB89 /* CUICenteredLabelViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICenteredLabelViewController.m; sourceTree = \"<group>\"; };\n\t\tF416687624B0BA5000C2AB89 /* CUICrashLogContentsViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogContentsViewController.h; sourceTree = \"<group>\"; };\n\t\tF416687724B0BA5000C2AB89 /* CUICrashLogContentsViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogContentsViewController.m; sourceTree = \"<group>\"; };\n\t\tF416687824B0BA5000C2AB89 /* CUICrashLogContentsViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUICrashLogContentsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF416687B24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogPresentationTextViewController.h; sourceTree = \"<group>\"; };\n\t\tF416687C24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogPresentationTextViewController.m; sourceTree = \"<group>\"; };\n\t\tF416688024B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogPresentationViewController.h; sourceTree = \"<group>\"; };\n\t\tF416688124B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogPresentationViewController.m; sourceTree = \"<group>\"; };\n\t\tF416688324B0BF2000C2AB89 /* CUISidebarViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISidebarViewController.h; sourceTree = \"<group>\"; };\n\t\tF416688424B0BF2000C2AB89 /* CUISidebarViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISidebarViewController.m; sourceTree = \"<group>\"; };\n\t\tF416688524B0BF2000C2AB89 /* CUISidebarViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUISidebarViewController.xib; sourceTree = \"<group>\"; };\n\t\tF419376D2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsOpenErrorPanel.h; sourceTree = \"<group>\"; };\n\t\tF419376E2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsOpenErrorPanel.m; sourceTree = \"<group>\"; };\n\t\tF41D66AD25921F3400C0D491 /* CUIPreferencePanePresentationViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePanePresentationViewController.h; sourceTree = \"<group>\"; };\n\t\tF41D66AE25921F3400C0D491 /* CUIPreferencePanePresentationViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePanePresentationViewController.m; sourceTree = \"<group>\"; };\n\t\tF41ECA5024AB689B00CE56C7 /* CUIInspectorViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorViewController.h; sourceTree = \"<group>\"; };\n\t\tF41ECA5124AB689B00CE56C7 /* CUIInspectorViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorViewController.m; sourceTree = \"<group>\"; };\n\t\tF41ECA5224AB689B00CE56C7 /* CUIInspectorViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIInspectorViewController.xib; sourceTree = \"<group>\"; };\n\t\tF420C9B7254F30A100D24249 /* CUIFileDeadDropView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIFileDeadDropView.h; sourceTree = \"<group>\"; };\n\t\tF420C9B8254F30A100D24249 /* CUIFileDeadDropView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIFileDeadDropView.m; sourceTree = \"<group>\"; };\n\t\tF420C9BF254F335000D24249 /* CUIdSYMDropView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIdSYMDropView.h; sourceTree = \"<group>\"; };\n\t\tF420C9C0254F335000D24249 /* CUIdSYMDropView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIdSYMDropView.m; sourceTree = \"<group>\"; };\n\t\tF420C9C2254F5F4C00D24249 /* CUIdSYMHunter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIdSYMHunter.h; sourceTree = \"<group>\"; };\n\t\tF420C9C3254F5F4C00D24249 /* CUIdSYMHunter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIdSYMHunter.m; sourceTree = \"<group>\"; };\n\t\tF420F35024E95E5F006C82CD /* CUITheme.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUITheme.h; sourceTree = \"<group>\"; };\n\t\tF420F35124E95E5F006C82CD /* CUITheme.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUITheme.m; sourceTree = \"<group>\"; };\n\t\tF4214CB324B6534400852DDE /* CUICrashLogsSourcesManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourcesManager.h; sourceTree = \"<group>\"; };\n\t\tF4214CB424B6534400852DDE /* CUICrashLogsSourcesManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourcesManager.m; sourceTree = \"<group>\"; };\n\t\tF4238189267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePaneAdvancedViewController.h; sourceTree = \"<group>\"; };\n\t\tF423818A267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePaneAdvancedViewController.m; sourceTree = \"<group>\"; };\n\t\tF423818F267D3521003837AC /* WBRemoteVersionChecker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WBRemoteVersionChecker.h; sourceTree = \"<group>\"; };\n\t\tF4238190267D3522003837AC /* WBRemoteVersionChecker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WBRemoteVersionChecker.m; sourceTree = \"<group>\"; };\n\t\tF428C0412724592900FB8CAC /* IPSImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSImage.m; path = ../submodules/ips2crash/Model/IPSImage.m; sourceTree = \"<group>\"; };\n\t\tF428C0422724592900FB8CAC /* IPSIncidentHeader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncidentHeader.m; path = ../submodules/ips2crash/Model/IPSIncidentHeader.m; sourceTree = \"<group>\"; };\n\t\tF428C0432724592900FB8CAC /* IPSIncidentExceptionInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncidentExceptionInformation.m; path = ../submodules/ips2crash/Model/IPSIncidentExceptionInformation.m; sourceTree = \"<group>\"; };\n\t\tF428C0442724592900FB8CAC /* IPSIncidentDiagnosticMessage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncidentDiagnosticMessage.m; path = ../submodules/ips2crash/Model/IPSIncidentDiagnosticMessage.m; sourceTree = \"<group>\"; };\n\t\tF428C0452724592900FB8CAC /* IPSReport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSReport.m; path = ../submodules/ips2crash/Model/IPSReport.m; sourceTree = \"<group>\"; };\n\t\tF428C0462724592900FB8CAC /* IPSThreadInstructionState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadInstructionState.m; path = ../submodules/ips2crash/Model/IPSThreadInstructionState.m; sourceTree = \"<group>\"; };\n\t\tF428C0472724592900FB8CAC /* IPSThreadInstructionStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadInstructionStream.m; path = ../submodules/ips2crash/Model/IPSThreadInstructionStream.m; sourceTree = \"<group>\"; };\n\t\tF428C0482724592900FB8CAC /* IPSIncident.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncident.h; path = ../submodules/ips2crash/Model/IPSIncident.h; sourceTree = \"<group>\"; };\n\t\tF428C0492724592900FB8CAC /* IPSRegisterState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSRegisterState.m; path = ../submodules/ips2crash/Model/IPSRegisterState.m; sourceTree = \"<group>\"; };\n\t\tF428C04A2724592A00FB8CAC /* IPSDateFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSDateFormatter.m; path = ../submodules/ips2crash/Model/IPSDateFormatter.m; sourceTree = \"<group>\"; };\n\t\tF428C04B2724592A00FB8CAC /* IPSApplicationSpecificInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSApplicationSpecificInformation.m; path = ../submodules/ips2crash/Model/IPSApplicationSpecificInformation.m; sourceTree = \"<group>\"; };\n\t\tF428C04C2724592A00FB8CAC /* IPSSummary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSSummary.m; path = ../submodules/ips2crash/Model/IPSSummary.m; sourceTree = \"<group>\"; };\n\t\tF428C04D2724592A00FB8CAC /* IPSTermination.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSTermination.m; path = ../submodules/ips2crash/Model/IPSTermination.m; sourceTree = \"<group>\"; };\n\t\tF428C04E2724592A00FB8CAC /* IPSExternalModificationSummary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExternalModificationSummary.m; path = ../submodules/ips2crash/Model/IPSExternalModificationSummary.m; sourceTree = \"<group>\"; };\n\t\tF428C04F2724592A00FB8CAC /* IPSError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSError.h; path = ../submodules/ips2crash/Model/IPSError.h; sourceTree = \"<group>\"; };\n\t\tF428C0502724592A00FB8CAC /* IPSExternalModificationStatistics.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExternalModificationStatistics.m; path = ../submodules/ips2crash/Model/IPSExternalModificationStatistics.m; sourceTree = \"<group>\"; };\n\t\tF428C0512724592A00FB8CAC /* IPSReport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSReport.h; path = ../submodules/ips2crash/Model/IPSReport.h; sourceTree = \"<group>\"; };\n\t\tF428C0522724592A00FB8CAC /* IPSTermination.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSTermination.h; path = ../submodules/ips2crash/Model/IPSTermination.h; sourceTree = \"<group>\"; };\n\t\tF428C0532724592A00FB8CAC /* IPSBundleInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSBundleInfo.m; path = ../submodules/ips2crash/Model/IPSBundleInfo.m; sourceTree = \"<group>\"; };\n\t\tF428C0542724592A00FB8CAC /* IPSException.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSException.m; path = ../submodules/ips2crash/Model/IPSException.m; sourceTree = \"<group>\"; };\n\t\tF428C0552724592A00FB8CAC /* IPSObjectProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSObjectProtocol.h; path = ../submodules/ips2crash/Model/IPSObjectProtocol.h; sourceTree = \"<group>\"; };\n\t\tF428C0562724592A00FB8CAC /* IPSSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSSummary.h; path = ../submodules/ips2crash/Model/IPSSummary.h; sourceTree = \"<group>\"; };\n\t\tF428C0572724592A00FB8CAC /* IPSThread.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThread.m; path = ../submodules/ips2crash/Model/IPSThread.m; sourceTree = \"<group>\"; };\n\t\tF428C0582724592B00FB8CAC /* IPSIncidentExceptionInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncidentExceptionInformation.h; path = ../submodules/ips2crash/Model/IPSIncidentExceptionInformation.h; sourceTree = \"<group>\"; };\n\t\tF428C0592724592B00FB8CAC /* IPSThreadFrame.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadFrame.m; path = ../submodules/ips2crash/Model/IPSThreadFrame.m; sourceTree = \"<group>\"; };\n\t\tF428C05A2724592B00FB8CAC /* IPSExternalModificationSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExternalModificationSummary.h; path = ../submodules/ips2crash/Model/IPSExternalModificationSummary.h; sourceTree = \"<group>\"; };\n\t\tF428C05B2724592B00FB8CAC /* IPSError.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSError.m; path = ../submodules/ips2crash/Model/IPSError.m; sourceTree = \"<group>\"; };\n\t\tF428C05C2724592B00FB8CAC /* IPSDateFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSDateFormatter.h; path = ../submodules/ips2crash/Model/IPSDateFormatter.h; sourceTree = \"<group>\"; };\n\t\tF428C05D2724592B00FB8CAC /* IPSThreadFrame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadFrame.h; path = ../submodules/ips2crash/Model/IPSThreadFrame.h; sourceTree = \"<group>\"; };\n\t\tF428C05E2724592B00FB8CAC /* IPSOperatingSystemVersion.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSOperatingSystemVersion.m; path = ../submodules/ips2crash/Model/IPSOperatingSystemVersion.m; sourceTree = \"<group>\"; };\n\t\tF428C05F2724592B00FB8CAC /* IPSThreadInstructionState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadInstructionState.h; path = ../submodules/ips2crash/Model/IPSThreadInstructionState.h; sourceTree = \"<group>\"; };\n\t\tF428C0602724592B00FB8CAC /* IPSThreadInstructionStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadInstructionStream.h; path = ../submodules/ips2crash/Model/IPSThreadInstructionStream.h; sourceTree = \"<group>\"; };\n\t\tF428C0612724592B00FB8CAC /* IPSThreadState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadState.h; path = ../submodules/ips2crash/Model/IPSThreadState.h; sourceTree = \"<group>\"; };\n\t\tF428C0622724592B00FB8CAC /* IPSThreadState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadState.m; path = ../submodules/ips2crash/Model/IPSThreadState.m; sourceTree = \"<group>\"; };\n\t\tF428C0632724592B00FB8CAC /* IPSImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSImage.h; path = ../submodules/ips2crash/Model/IPSImage.h; sourceTree = \"<group>\"; };\n\t\tF428C0642724592C00FB8CAC /* IPSExternalModificationStatistics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExternalModificationStatistics.h; path = ../submodules/ips2crash/Model/IPSExternalModificationStatistics.h; sourceTree = \"<group>\"; };\n\t\tF428C0652724592C00FB8CAC /* IPSApplicationSpecificInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSApplicationSpecificInformation.h; path = ../submodules/ips2crash/Model/IPSApplicationSpecificInformation.h; sourceTree = \"<group>\"; };\n\t\tF428C0662724592C00FB8CAC /* IPSLegacyInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSLegacyInfo.h; path = ../submodules/ips2crash/Model/IPSLegacyInfo.h; sourceTree = \"<group>\"; };\n\t\tF428C0672724592C00FB8CAC /* IPSBundleInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSBundleInfo.h; path = ../submodules/ips2crash/Model/IPSBundleInfo.h; sourceTree = \"<group>\"; };\n\t\tF428C0682724592C00FB8CAC /* IPSLegacyInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSLegacyInfo.m; path = ../submodules/ips2crash/Model/IPSLegacyInfo.m; sourceTree = \"<group>\"; };\n\t\tF428C0692724592C00FB8CAC /* IPSThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThread.h; path = ../submodules/ips2crash/Model/IPSThread.h; sourceTree = \"<group>\"; };\n\t\tF428C06A2724592C00FB8CAC /* IPSIncident.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncident.m; path = ../submodules/ips2crash/Model/IPSIncident.m; sourceTree = \"<group>\"; };\n\t\tF428C06B2724592C00FB8CAC /* IPSIncidentDiagnosticMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncidentDiagnosticMessage.h; path = ../submodules/ips2crash/Model/IPSIncidentDiagnosticMessage.h; sourceTree = \"<group>\"; };\n\t\tF428C06C2724592C00FB8CAC /* IPSRegisterState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSRegisterState.h; path = ../submodules/ips2crash/Model/IPSRegisterState.h; sourceTree = \"<group>\"; };\n\t\tF428C06D2724592C00FB8CAC /* IPSIncidentHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncidentHeader.h; path = ../submodules/ips2crash/Model/IPSIncidentHeader.h; sourceTree = \"<group>\"; };\n\t\tF428C06E2724592D00FB8CAC /* IPSOperatingSystemVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSOperatingSystemVersion.h; path = ../submodules/ips2crash/Model/IPSOperatingSystemVersion.h; sourceTree = \"<group>\"; };\n\t\tF428C06F2724592D00FB8CAC /* IPSException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSException.h; path = ../submodules/ips2crash/Model/IPSException.h; sourceTree = \"<group>\"; };\n\t\tF42B57E024ABEF6E00F77ED5 /* CUICallsSelection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICallsSelection.h; sourceTree = \"<group>\"; };\n\t\tF42B57E124ABEF6E00F77ED5 /* CUICallsSelection.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICallsSelection.m; sourceTree = \"<group>\"; };\n\t\tF42D0BC225514B2E0021A551 /* template.source */ = {isa = PBXFileReference; lastKnownFileType = text; path = template.source; sourceTree = \"<group>\"; };\n\t\tF42E4FFF2724B7550092181A /* CUICrashDataTransform.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashDataTransform.h; sourceTree = \"<group>\"; };\n\t\tF42E50002724B7550092181A /* CUICrashDataTransform.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashDataTransform.m; sourceTree = \"<group>\"; };\n\t\tF4301A6925EF0DE000ACDA3F /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePanePresentationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4301A6B25EF0DE200ACDA3F /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePanePresentationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066C52A12EDE4002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/RemoteCheck.strings; sourceTree = \"<group>\"; };\n\t\tF43066C62A12EDE4002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIAboutBoxWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF43066C72A12EDE5002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePaneGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066C82A12EDE5002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePanePresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066C92A12EDE5002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePanePresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066CA2A12EDE5002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePanePresentationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066CB2A12EDE5002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePaneFontscolorsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066CC2A12EDE5002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUISymbolsFilesLibraryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066CD2A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePaneSymbolicationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066CE2A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePaneCrashreporterViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066CF2A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencePaneAdvancedViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D02A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIPreferencesWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D12A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICrashLogsSourceSmartEditorWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D22A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICrashLogsSourcesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D32A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICrashLogsListViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D42A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIInspectorGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D52A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIInspectorUserViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D62A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIInspectorExecutableViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D72A12EDE6002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIInspectorProcessesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066D82A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/unknown_exception_type.html; sourceTree = \"<group>\"; };\n\t\tF43066D92A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_BAD_ACCESS_SIGBUS.html; sourceTree = \"<group>\"; };\n\t\tF43066DA2A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_BAD_ACCESS_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF43066DB2A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_BAD_INSTRUCTION_SIGILL.html; sourceTree = \"<group>\"; };\n\t\tF43066DC2A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_BREAKPOINT_SIGTRAP.html; sourceTree = \"<group>\"; };\n\t\tF43066DD2A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_CRASH_SIGABRT.html; sourceTree = \"<group>\"; };\n\t\tF43066DE2A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_CRASH_SIGKILL.html; sourceTree = \"<group>\"; };\n\t\tF43066DF2A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_CRASH_SIGQUIT.html; sourceTree = \"<group>\"; };\n\t\tF43066E02A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = he.lproj/EXC_CRASH_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF43066E12A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = \"he.lproj/EXC_CRASH_Code Signature Invalid.html\"; sourceTree = \"<group>\"; };\n\t\tF43066E22A12EDE7002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = Help/he.lproj/unknown_termination_reason.html; sourceTree = \"<group>\"; };\n\t\tF43066E32A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = he; path = Help/he.lproj/ENDPOINTSECURITY_2.html; sourceTree = \"<group>\"; };\n\t\tF43066E42A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUILineJumperWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF43066E52A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIExportAccessoryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066E62A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICrashLogPresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066E72A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICrashLogPresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066E82A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICollectionViewRegisterItem.xib; sourceTree = \"<group>\"; };\n\t\tF43066E92A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIBinaryImagesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF43066EA2A12EDE8002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUIMainWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF43066EB2A12EDE8002AB430 /* he */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Localizable.strings; sourceTree = \"<group>\"; };\n\t\tF43066EC2A12EDE9002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Predicates.strings; sourceTree = \"<group>\"; };\n\t\tF43066ED2A12EDE9002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/MainMenu.xib; sourceTree = \"<group>\"; };\n\t\tF43066EE2A12EDE9002AB430 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\tF4306D572577E168007E667F /* CUICrashLogThreadState+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogThreadState+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4306D582577E168007E667F /* CUICrashLogThreadState+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogThreadState+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF432ACC524A95014000A3E7A /* CUIThreadsListViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIThreadsListViewController.h; sourceTree = \"<group>\"; };\n\t\tF432ACC624A95014000A3E7A /* CUIThreadsListViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIThreadsListViewController.m; sourceTree = \"<group>\"; };\n\t\tF432ACCA24A9502A000A3E7A /* CUIThreadsViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIThreadsViewController.h; sourceTree = \"<group>\"; };\n\t\tF432ACCB24A9502A000A3E7A /* CUIThreadsViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIThreadsViewController.m; sourceTree = \"<group>\"; };\n\t\tF432ACCD24A95042000A3E7A /* CUIThreadsColumnViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIThreadsColumnViewController.h; sourceTree = \"<group>\"; };\n\t\tF432ACCE24A95042000A3E7A /* CUIThreadsColumnViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIThreadsColumnViewController.m; sourceTree = \"<group>\"; };\n\t\tF43362FC25FCEFBA006E7894 /* CUIRawCrashLog+Path.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUIRawCrashLog+Path.h\"; sourceTree = \"<group>\"; };\n\t\tF43362FD25FCEFBA006E7894 /* CUIRawCrashLog+Path.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUIRawCrashLog+Path.m\"; sourceTree = \"<group>\"; };\n\t\tF4341C69258EB8FE001A5605 /* CUICrashReporterDefaults.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashReporterDefaults.h; sourceTree = \"<group>\"; };\n\t\tF4341C6A258EB8FE001A5605 /* CUICrashReporterDefaults.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashReporterDefaults.m; sourceTree = \"<group>\"; };\n\t\tF4386B0D2849541B00B83525 /* CUICrashLogExceptionInformation+QuickHelp.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogExceptionInformation+QuickHelp.m\"; sourceTree = \"<group>\"; };\n\t\tF4386B0E2849541B00B83525 /* CUICrashLogExceptionInformation+QuickHelp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogExceptionInformation+QuickHelp.h\"; sourceTree = \"<group>\"; };\n\t\tF43A9A812591260C005AB2AA /* CUIOutlineModeDisplaySettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIOutlineModeDisplaySettings.h; sourceTree = \"<group>\"; };\n\t\tF43A9A822591260C005AB2AA /* CUIOutlineModeDisplaySettings.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIOutlineModeDisplaySettings.m; sourceTree = \"<group>\"; };\n\t\tF43AF0CF256FE2AE0066CA1B /* DWRFSection_debug_addr.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_addr.h; path = app_unexpectedly/DWARF/DWRFSection_debug_addr.h; sourceTree = \"<group>\"; };\n\t\tF43AF0D0256FE2AE0066CA1B /* DWRFSection_debug_addr.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_addr.m; path = app_unexpectedly/DWARF/DWRFSection_debug_addr.m; sourceTree = \"<group>\"; };\n\t\tF43BA4E425F2674100D8D68A /* SharedConfigurationSettings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = SharedConfigurationSettings.xcconfig; path = ../Configs/SharedConfigurationSettings.xcconfig; sourceTree = \"<group>\"; };\n\t\tF43C828524D892620096F27B /* CUIPreferencePanePresentationTextViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePanePresentationTextViewController.h; sourceTree = \"<group>\"; };\n\t\tF43C828624D892620096F27B /* CUIPreferencePanePresentationTextViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePanePresentationTextViewController.m; sourceTree = \"<group>\"; };\n\t\tF43C828A24D8A39B0096F27B /* CUITextModeDisplaySettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUITextModeDisplaySettings.h; sourceTree = \"<group>\"; };\n\t\tF43C828B24D8A39B0096F27B /* CUITextModeDisplaySettings.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUITextModeDisplaySettings.m; sourceTree = \"<group>\"; };\n\t\tF43C828D24D8AD850096F27B /* CUIStackFrameComponents.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = CUIStackFrameComponents.h; path = app_unexpectedly/CUIStackFrameComponents.h; sourceTree = \"<group>\"; };\n\t\tF43D8FF424A7FAD2008147F9 /* CUIMainWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIMainWindowController.h; sourceTree = \"<group>\"; };\n\t\tF43D8FF524A7FAD2008147F9 /* CUIMainWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIMainWindowController.m; sourceTree = \"<group>\"; };\n\t\tF440A3E124AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceStandardDirectory.h; sourceTree = \"<group>\"; };\n\t\tF440A3E224AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceStandardDirectory.m; sourceTree = \"<group>\"; };\n\t\tF440A3E424AA31B500C23DA1 /* CUICrashLogsSourceFile.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceFile.h; sourceTree = \"<group>\"; };\n\t\tF440A3E524AA31B500C23DA1 /* CUICrashLogsSourceFile.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceFile.m; sourceTree = \"<group>\"; };\n\t\tF440A3E724AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceDirectory.h; sourceTree = \"<group>\"; };\n\t\tF440A3E824AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceDirectory.m; sourceTree = \"<group>\"; };\n\t\tF440A3EA24AA38E600C23DA1 /* CUICrashLogsSourceAll.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceAll.h; sourceTree = \"<group>\"; };\n\t\tF440A3EB24AA38E600C23DA1 /* CUICrashLogsSourceAll.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceAll.m; sourceTree = \"<group>\"; };\n\t\tF442FCEA24AB855C00E87B69 /* CUIBinaryImagesViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIBinaryImagesViewController.h; sourceTree = \"<group>\"; };\n\t\tF442FCEB24AB855C00E87B69 /* CUIBinaryImagesViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIBinaryImagesViewController.m; sourceTree = \"<group>\"; };\n\t\tF442FCEF24AB8A8B00E87B69 /* CUIBinaryImageUtility.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIBinaryImageUtility.h; sourceTree = \"<group>\"; };\n\t\tF442FCF024AB8A8B00E87B69 /* CUIBinaryImageUtility.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIBinaryImageUtility.m; sourceTree = \"<group>\"; };\n\t\tF44356F024A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUICrashLogPresentationOutlineViewController.h; sourceTree = \"<group>\"; };\n\t\tF44356F124A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogPresentationOutlineViewController.m; sourceTree = \"<group>\"; };\n\t\tF44356FD24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIThreadNamedTableCellView.h; sourceTree = \"<group>\"; };\n\t\tF44356FE24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIThreadNamedTableCellView.m; sourceTree = \"<group>\"; };\n\t\tF4440FDC282C4103003C810B /* IPSSummarySerialization.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSSummarySerialization.m; path = ../submodules/ips2crash/Model/IPSSummarySerialization.m; sourceTree = \"<group>\"; };\n\t\tF4440FDD282C4103003C810B /* IPSCrashSummary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSCrashSummary.m; path = ../submodules/ips2crash/Model/IPSCrashSummary.m; sourceTree = \"<group>\"; };\n\t\tF4440FDE282C4103003C810B /* IPSSummarySerialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSSummarySerialization.h; path = ../submodules/ips2crash/Model/IPSSummarySerialization.h; sourceTree = \"<group>\"; };\n\t\tF4440FDF282C4103003C810B /* IPSCrashSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSCrashSummary.h; path = ../submodules/ips2crash/Model/IPSCrashSummary.h; sourceTree = \"<group>\"; };\n\t\tF44A5F2D24CCDCB1006B59B8 /* CUICollectionViewDockedThreadItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICollectionViewDockedThreadItem.h; sourceTree = \"<group>\"; };\n\t\tF44A5F2E24CCDCB1006B59B8 /* CUICollectionViewDockedThreadItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICollectionViewDockedThreadItem.m; sourceTree = \"<group>\"; };\n\t\tF44A5F2F24CCDCB1006B59B8 /* CUICollectionViewDockedThreadItem.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUICollectionViewDockedThreadItem.xib; sourceTree = \"<group>\"; };\n\t\tF44A5F3224CCDD00006B59B8 /* CUICollectionViewThreadItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICollectionViewThreadItem.h; sourceTree = \"<group>\"; };\n\t\tF44A5F3324CCDD00006B59B8 /* CUICollectionViewThreadItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICollectionViewThreadItem.m; sourceTree = \"<group>\"; };\n\t\tF44A5F3524CCDFD9006B59B8 /* CUICollectionViewDockedThreadsLayout.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICollectionViewDockedThreadsLayout.h; sourceTree = \"<group>\"; };\n\t\tF44A5F3624CCDFD9006B59B8 /* CUICollectionViewDockedThreadsLayout.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICollectionViewDockedThreadsLayout.m; sourceTree = \"<group>\"; };\n\t\tF44A5F3924CCE2B6006B59B8 /* CUILightTableDockedThreadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUILightTableDockedThreadView.h; sourceTree = \"<group>\"; };\n\t\tF44A5F3A24CCE2B6006B59B8 /* CUILightTableDockedThreadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUILightTableDockedThreadView.m; sourceTree = \"<group>\"; };\n\t\tF44A5F3C24CCE2D6006B59B8 /* CUILightTableThreadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUILightTableThreadView.h; sourceTree = \"<group>\"; };\n\t\tF44A5F3D24CCE2D6006B59B8 /* CUILightTableThreadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUILightTableThreadView.m; sourceTree = \"<group>\"; };\n\t\tF44E7B7B255C83D500025C04 /* NoodleLineNumberMarker.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NoodleLineNumberMarker.h; path = \"Extemal/Line View Test/NoodleLineNumberMarker.h\"; sourceTree = \"<group>\"; };\n\t\tF44E7B7C255C83D500025C04 /* NoodleLineNumberView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NoodleLineNumberView.m; path = \"Extemal/Line View Test/NoodleLineNumberView.m\"; sourceTree = \"<group>\"; };\n\t\tF44E7B7D255C83D500025C04 /* NoodleLineNumberMarker.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = NoodleLineNumberMarker.m; path = \"Extemal/Line View Test/NoodleLineNumberMarker.m\"; sourceTree = \"<group>\"; };\n\t\tF44E7B7E255C83D500025C04 /* NoodleLineNumberView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = NoodleLineNumberView.h; path = \"Extemal/Line View Test/NoodleLineNumberView.h\"; sourceTree = \"<group>\"; };\n\t\tF45015C725FABCAC000C4B8D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_BAD_ACCESS_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF45015C925FABCAF000C4B8D /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_BAD_ACCESS_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF45015CB25FABE00000C4B8D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_BAD_INSTRUCTION_SIGILL.html; sourceTree = \"<group>\"; };\n\t\tF45015CD25FABE02000C4B8D /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_BAD_INSTRUCTION_SIGILL.html; sourceTree = \"<group>\"; };\n\t\tF45015CF25FAD279000C4B8D /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_CRASH_SIGQUIT.html; sourceTree = \"<group>\"; };\n\t\tF45015D125FAD27B000C4B8D /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_CRASH_SIGQUIT.html; sourceTree = \"<group>\"; };\n\t\tF453AE4A25EE706F00B7BEF0 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIExportAccessoryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF453AE4C25EE707000B7BEF0 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIExportAccessoryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF453AE4E25EE70E800B7BEF0 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICrashLogPresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF453AE5025EE70E900B7BEF0 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICrashLogPresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45442A724AF355700EE79E4 /* CUICaptionView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICaptionView.h; sourceTree = \"<group>\"; };\n\t\tF45442A824AF355700EE79E4 /* CUICaptionView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICaptionView.m; sourceTree = \"<group>\"; };\n\t\tF4545C39256C1AF900F62A39 /* CUIRegistersWindowController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRegistersWindowController.h; sourceTree = \"<group>\"; };\n\t\tF4545C3A256C1AF900F62A39 /* CUIRegistersWindowController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRegistersWindowController.m; sourceTree = \"<group>\"; };\n\t\tF4545C3B256C1AF900F62A39 /* CUIRegistersWindowController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIRegistersWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4545C3E256C1B2400F62A39 /* CUIRegistersViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRegistersViewController.h; sourceTree = \"<group>\"; };\n\t\tF4545C3F256C1B2400F62A39 /* CUIRegistersViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRegistersViewController.m; sourceTree = \"<group>\"; };\n\t\tF4559F3524AF232800B8EF41 /* CUICrashLogHeader.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogHeader.h; sourceTree = \"<group>\"; };\n\t\tF4559F3624AF232800B8EF41 /* CUICrashLogHeader.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogHeader.m; sourceTree = \"<group>\"; };\n\t\tF4577BE72592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePanePresentationOutlineViewController.h; sourceTree = \"<group>\"; };\n\t\tF4577BE82592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePanePresentationOutlineViewController.m; sourceTree = \"<group>\"; };\n\t\tF45854F825C76590007A3A79 /* Unexpectedly_License.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; name = Unexpectedly_License.pdf; path = \"../../Documents Pages/Unexpectedly_License.pdf\"; sourceTree = \"<group>\"; };\n\t\tF45854F925C76591007A3A79 /* Unexpectedly_Acknowledgements.pdf */ = {isa = PBXFileReference; lastKnownFileType = image.pdf; name = Unexpectedly_Acknowledgements.pdf; path = \"../../Documents Pages/Unexpectedly_Acknowledgements.pdf\"; sourceTree = \"<group>\"; };\n\t\tF45A2D5525EC50960007D50E /* fr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = \"<group>\"; };\n\t\tF45A2D5625EC50960007D50E /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Predicates.strings; sourceTree = \"<group>\"; };\n\t\tF45A2D5725EC50960007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/MainMenu.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D5E25EC5CA00007D50E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencesWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6025EC5CA30007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencesWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6225EC5D130007D50E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePaneFontscolorsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6425EC5D140007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePaneFontscolorsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6625EC5F850007D50E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIAboutBoxWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6825EC5F870007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIAboutBoxWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6A25EC602B0007D50E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIBinaryImagesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6C25EC60310007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIBinaryImagesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D6E25EC60920007D50E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICrashLogsSourcesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D7025EC60930007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICrashLogsSourcesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D7225EC60D90007D50E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICrashLogsListViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45A2D7425EC60DB0007D50E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICrashLogsListViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45B518A24AFA04000E97B87 /* CUICrashLogsSelection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSelection.h; sourceTree = \"<group>\"; };\n\t\tF45B518B24AFA04000E97B87 /* CUICrashLogsSelection.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSelection.m; sourceTree = \"<group>\"; };\n\t\tF45DED6A2E350F07008F4CE8 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICodeSigningInformationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45DED6C2E350F0D008F4CE8 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICodeSigningInformationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45DED6E2E3510D9008F4CE8 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/CodeSigning.strings; sourceTree = \"<group>\"; };\n\t\tF45DED702E351134008F4CE8 /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/CodeSigning.strings; sourceTree = \"<group>\"; };\n\t\tF45DED712E3511B8008F4CE8 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/CodeSigning.strings; sourceTree = \"<group>\"; };\n\t\tF45DED722E3511BB008F4CE8 /* ja */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/CodeSigning.strings; sourceTree = \"<group>\"; };\n\t\tF45DED732E3511BC008F4CE8 /* he */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/CodeSigning.strings; sourceTree = \"<group>\"; };\n\t\tF45DED742E351277008F4CE8 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUICodeSigningInformationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45DED752E351279008F4CE8 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICodeSigningInformationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45DED762E35127A008F4CE8 /* he */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = he; path = he.lproj/CUICodeSigningInformationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF45F2F592538EF3F0030A402 /* NSFileManager+ExtendedAttributes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = \"NSFileManager+ExtendedAttributes.h\"; path = \"app_unexpectedly/NSFileManager+ExtendedAttributes.h\"; sourceTree = \"<group>\"; };\n\t\tF45F2F5A2538EF3F0030A402 /* NSFileManager+ExtendedAttributes.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = \"NSFileManager+ExtendedAttributes.m\"; path = \"app_unexpectedly/NSFileManager+ExtendedAttributes.m\"; sourceTree = \"<group>\"; };\n\t\tF45F84D3266ABB5800F354F3 /* crashreport.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = \"wrapper.pb-project\"; name = crashreport.xcodeproj; path = ../plugin_quicklook/crashreport.xcodeproj; sourceTree = \"<group>\"; };\n\t\tF46198E724CA390700FA9717 /* CUICrashLogBacktraces+Utilities.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogBacktraces+Utilities.h\"; sourceTree = \"<group>\"; };\n\t\tF46198E824CA390700FA9717 /* CUICrashLogBacktraces+Utilities.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogBacktraces+Utilities.m\"; sourceTree = \"<group>\"; };\n\t\tF46198EC24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorAlternateBackgroundView.h; sourceTree = \"<group>\"; };\n\t\tF46198ED24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorAlternateBackgroundView.m; sourceTree = \"<group>\"; };\n\t\tF461CE8825F6DD75007CFDE7 /* CUIApplicationItemAttributes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIApplicationItemAttributes.h; sourceTree = \"<group>\"; };\n\t\tF461CE8925F6DD75007CFDE7 /* CUIApplicationItemAttributes.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIApplicationItemAttributes.m; sourceTree = \"<group>\"; };\n\t\tF4627F0F25704557007E5CD0 /* CUICollectionViewRegisterItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICollectionViewRegisterItem.h; sourceTree = \"<group>\"; };\n\t\tF4627F1025704557007E5CD0 /* CUICollectionViewRegisterItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICollectionViewRegisterItem.m; sourceTree = \"<group>\"; };\n\t\tF462DD2F24ADC5F900044AB1 /* CUICrashLogsSourceSmart.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceSmart.h; sourceTree = \"<group>\"; };\n\t\tF462DD3024ADC5F900044AB1 /* CUICrashLogsSourceSmart.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceSmart.m; sourceTree = \"<group>\"; };\n\t\tF464F20924ACF9CF007A3A96 /* CUICrashLogsMainViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsMainViewController.h; sourceTree = \"<group>\"; };\n\t\tF464F20A24ACF9CF007A3A96 /* CUICrashLogsMainViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsMainViewController.m; sourceTree = \"<group>\"; };\n\t\tF464F20B24ACF9CF007A3A96 /* CUICrashLogsMainViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUICrashLogsMainViewController.xib; sourceTree = \"<group>\"; };\n\t\tF464F20E24ACFBA1007A3A96 /* CUIRegister.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRegister.h; sourceTree = \"<group>\"; };\n\t\tF464F20F24ACFBA1007A3A96 /* CUIRegister.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRegister.m; sourceTree = \"<group>\"; };\n\t\tF464FA1325D2DA2A00E024A3 /* NSSet+WBExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSSet+WBExtensions.h\"; path = \"Foundation + Extensions/NSSet+WBExtensions.h\"; sourceTree = \"<group>\"; };\n\t\tF464FA1425D2DA2A00E024A3 /* NSSet+WBExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSSet+WBExtensions.m\"; path = \"Foundation + Extensions/NSSet+WBExtensions.m\"; sourceTree = \"<group>\"; };\n\t\tF4651F8424B297420090DF10 /* CUIOperatingSystemVersion.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIOperatingSystemVersion.h; sourceTree = \"<group>\"; };\n\t\tF4651F8524B297420090DF10 /* CUIOperatingSystemVersion.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIOperatingSystemVersion.m; sourceTree = \"<group>\"; };\n\t\tF469AB2324B3DDEA0053C824 /* CUICrashLogExceptionInformation.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogExceptionInformation.h; sourceTree = \"<group>\"; };\n\t\tF469AB2424B3DDEA0053C824 /* CUICrashLogExceptionInformation.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogExceptionInformation.m; sourceTree = \"<group>\"; };\n\t\tF46BAF57250162C900991970 /* CUIPreferencesWindow.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencesWindow.h; sourceTree = \"<group>\"; };\n\t\tF46BAF58250162C900991970 /* CUIPreferencesWindow.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencesWindow.m; sourceTree = \"<group>\"; };\n\t\tF46D2A2724C33FA200652D50 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Predicates.strings; sourceTree = \"<group>\"; };\n\t\tF46D779C25ED8D1800039663 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIInspectorGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D779E25ED8D1900039663 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIInspectorGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77A025ED8D3600039663 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIInspectorUserViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77A225ED8D3900039663 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIInspectorUserViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77A425ED8D5700039663 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIInspectorExecutableViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77A625ED8D5900039663 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIInspectorExecutableViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77A825ED8E3B00039663 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIInspectorProcessesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77AA25ED8E3E00039663 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIInspectorProcessesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF46D77AC25ED9EAE00039663 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICollectionViewRegisterItem.xib; sourceTree = \"<group>\"; };\n\t\tF46D77AE25ED9EAF00039663 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICollectionViewRegisterItem.xib; sourceTree = \"<group>\"; };\n\t\tF472CC952550631A003F6338 /* CUISwiftDemangler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUISwiftDemangler.h; path = app_unexpectedly/Demangling/CUISwiftDemangler.h; sourceTree = \"<group>\"; };\n\t\tF472CC962550631A003F6338 /* CUISwiftDemangler.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUISwiftDemangler.m; path = app_unexpectedly/Demangling/CUISwiftDemangler.m; sourceTree = \"<group>\"; };\n\t\tF4754D7225F5678700B0D48F /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICrashLogPresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4754D7425F5678A00B0D48F /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICrashLogPresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF475FB3E26DBAC8200A113D8 /* CUITableViewNoSpace.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUITableViewNoSpace.h; sourceTree = \"<group>\"; };\n\t\tF475FB3F26DBAC8200A113D8 /* CUITableViewNoSpace.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUITableViewNoSpace.m; sourceTree = \"<group>\"; };\n\t\tF476EEBC25686DEF00F40F87 /* CUIAboutBoxFooterView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIAboutBoxFooterView.h; sourceTree = \"<group>\"; };\n\t\tF476EEBD25686DEF00F40F87 /* CUIAboutBoxFooterView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIAboutBoxFooterView.m; sourceTree = \"<group>\"; };\n\t\tF476EEBF25686EC000F40F87 /* CUIContentBox.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIContentBox.m; sourceTree = \"<group>\"; };\n\t\tF476EEC025686EC000F40F87 /* CUIContentBox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIContentBox.h; sourceTree = \"<group>\"; };\n\t\tF4775477255B0054006BA662 /* CUIThemesTableView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIThemesTableView.h; sourceTree = \"<group>\"; };\n\t\tF4775478255B0054006BA662 /* CUIThemesTableView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIThemesTableView.m; sourceTree = \"<group>\"; };\n\t\tF47AF8BE255DE61E0037E2D8 /* NSCrashLogTextScrollView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = NSCrashLogTextScrollView.h; sourceTree = \"<group>\"; };\n\t\tF47AF8BF255DE61E0037E2D8 /* NSCrashLogTextScrollView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = NSCrashLogTextScrollView.m; sourceTree = \"<group>\"; };\n\t\tF47C381C2A422E880020D88F /* CUIThreadsListViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUIThreadsListViewController.xib; sourceTree = \"<group>\"; };\n\t\tF47C381D2A422E880020D88F /* CUIThreadsListViewController_RTL.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUIThreadsListViewController_RTL.xib; sourceTree = \"<group>\"; };\n\t\tF47C38202A4230370020D88F /* CUIThreadsColumnViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUIThreadsColumnViewController.xib; sourceTree = \"<group>\"; };\n\t\tF47C38212A4230370020D88F /* CUIThreadsColumnViewController_RTL.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUIThreadsColumnViewController_RTL.xib; sourceTree = \"<group>\"; };\n\t\tF47F76602673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogsOpenErrorRecord+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF47F76612673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogsOpenErrorRecord+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF47F76632673548600A74905 /* CUICrashLogsOpenErrorRecord.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsOpenErrorRecord.h; sourceTree = \"<group>\"; };\n\t\tF47F76642673548600A74905 /* CUICrashLogsOpenErrorRecord.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsOpenErrorRecord.m; sourceTree = \"<group>\"; };\n\t\tF47F7666267355EA00A74905 /* CUICrashLogErrors.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogErrors.h; sourceTree = \"<group>\"; };\n\t\tF47F7667267355EA00A74905 /* CUICrashLogErrors.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogErrors.m; sourceTree = \"<group>\"; };\n\t\tF480692B24AF7D83009665F2 /* CUICrashLogsListViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsListViewController.h; sourceTree = \"<group>\"; };\n\t\tF480692C24AF7D83009665F2 /* CUICrashLogsListViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsListViewController.m; sourceTree = \"<group>\"; };\n\t\tF483844F24EB041B00FAEF5D /* CUIThemeItemsGroup.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIThemeItemsGroup.h; sourceTree = \"<group>\"; };\n\t\tF483845024EB041B00FAEF5D /* CUIThemeItemsGroup.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIThemeItemsGroup.m; sourceTree = \"<group>\"; };\n\t\tF483845224EB11F700FAEF5D /* default_themes.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = default_themes.plist; sourceTree = \"<group>\"; };\n\t\tF483845424EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUIApplicationPreferences+Themes.h\"; sourceTree = \"<group>\"; };\n\t\tF483845524EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUIApplicationPreferences+Themes.m\"; sourceTree = \"<group>\"; };\n\t\tF483845724EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUIThemeItemsGroup+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF483845824EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUIThemeItemsGroup+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4871DBE2543566E00580562 /* CUIdSYMBundle.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = CUIdSYMBundle.h; path = dSYM/CUIdSYMBundle.h; sourceTree = \"<group>\"; };\n\t\tF4871DBF2543566E00580562 /* CUIdSYMBundle.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = CUIdSYMBundle.m; path = dSYM/CUIdSYMBundle.m; sourceTree = \"<group>\"; };\n\t\tF4871DF225435AF300580562 /* DWRFSection_debug_info.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_info.m; path = app_unexpectedly/DWARF/DWRFSection_debug_info.m; sourceTree = \"<group>\"; };\n\t\tF4871DF325435AF300580562 /* DWRFSection_debug_str.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_str.m; path = app_unexpectedly/DWARF/DWRFSection_debug_str.m; sourceTree = \"<group>\"; };\n\t\tF4871DF425435AF300580562 /* DWRFFileObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFFileObject.h; path = app_unexpectedly/DWARF/DWRFFileObject.h; sourceTree = \"<group>\"; };\n\t\tF4871DF525435AF300580562 /* DWRFSection_debug_line.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_line.h; path = app_unexpectedly/DWARF/DWRFSection_debug_line.h; sourceTree = \"<group>\"; };\n\t\tF4871DF625435AF300580562 /* LEB128.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LEB128.h; path = app_unexpectedly/DWARF/LEB128.h; sourceTree = \"<group>\"; };\n\t\tF4871DF725435AF300580562 /* DWRFSection_debug_line.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_line.m; path = app_unexpectedly/DWARF/DWRFSection_debug_line.m; sourceTree = \"<group>\"; };\n\t\tF4871DF825435AF300580562 /* DWRFSection_debug_info.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_info.h; path = app_unexpectedly/DWARF/DWRFSection_debug_info.h; sourceTree = \"<group>\"; };\n\t\tF4871DF925435AF300580562 /* DWRFSection_debug_abbrev.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_abbrev.m; path = app_unexpectedly/DWARF/DWRFSection_debug_abbrev.m; sourceTree = \"<group>\"; };\n\t\tF4871DFA25435AF300580562 /* DWRFSection_debug_str.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_str.h; path = app_unexpectedly/DWARF/DWRFSection_debug_str.h; sourceTree = \"<group>\"; };\n\t\tF4871DFB25435AF300580562 /* DWRFFileObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFFileObject.m; path = app_unexpectedly/DWARF/DWRFFileObject.m; sourceTree = \"<group>\"; };\n\t\tF4871DFC25435AF300580562 /* DWRFEnums.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFEnums.h; path = app_unexpectedly/DWARF/DWRFEnums.h; sourceTree = \"<group>\"; };\n\t\tF4871DFD25435AF300580562 /* DWRFSection_debug_aranges.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_aranges.h; path = app_unexpectedly/DWARF/DWRFSection_debug_aranges.h; sourceTree = \"<group>\"; };\n\t\tF4871DFE25435AF400580562 /* LEB128.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = LEB128.c; path = app_unexpectedly/DWARF/LEB128.c; sourceTree = \"<group>\"; };\n\t\tF4871DFF25435AF400580562 /* DWRFSection_debug_abbrev.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_abbrev.h; path = app_unexpectedly/DWARF/DWRFSection_debug_abbrev.h; sourceTree = \"<group>\"; };\n\t\tF4871E0025435AF400580562 /* DWRFObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DWRFObject.h; path = app_unexpectedly/DWARF/DWRFObject.h; sourceTree = \"<group>\"; };\n\t\tF4871E0125435AF400580562 /* DWRFObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFObject.m; path = app_unexpectedly/DWARF/DWRFObject.m; sourceTree = \"<group>\"; };\n\t\tF4871E0225435AF400580562 /* DWRFSection_debug_aranges.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_aranges.m; path = app_unexpectedly/DWARF/DWRFSection_debug_aranges.m; sourceTree = \"<group>\"; };\n\t\tF4871E0B25437A6A00580562 /* CUISymbolicationDataCache.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISymbolicationDataCache.h; sourceTree = \"<group>\"; };\n\t\tF4871E0C25437A6A00580562 /* CUISymbolicationDataCache.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISymbolicationDataCache.m; sourceTree = \"<group>\"; };\n\t\tF4871E0E254384E100580562 /* CUIdSYMBundlesManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIdSYMBundlesManager.h; sourceTree = \"<group>\"; };\n\t\tF4871E0F254384E100580562 /* CUIdSYMBundlesManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIdSYMBundlesManager.m; sourceTree = \"<group>\"; };\n\t\tF48906AC25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISelectedWhiteTextFieldCell.h; sourceTree = \"<group>\"; };\n\t\tF48906AD25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISelectedWhiteTextFieldCell.m; sourceTree = \"<group>\"; };\n\t\tF489441F2545836F00E3E360 /* CUISymbolsFilesLibraryViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISymbolsFilesLibraryViewController.h; sourceTree = \"<group>\"; };\n\t\tF48944202545836F00E3E360 /* CUISymbolsFilesLibraryViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISymbolsFilesLibraryViewController.m; sourceTree = \"<group>\"; };\n\t\tF4895F5827A72D1000D75369 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUILineJumperWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4895F5A27A72D1300D75369 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUILineJumperWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4895F5B27A72D3300D75369 /* es */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = es; path = es.lproj/CUILineJumperWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4895F5C27A72D6300D75369 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUILineJumperWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF48BAB3425D9D4140005F3E5 /* CUIThreadImageCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIThreadImageCell.h; sourceTree = \"<group>\"; };\n\t\tF48BAB3525D9D4140005F3E5 /* CUIThreadImageCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIThreadImageCell.m; sourceTree = \"<group>\"; };\n\t\tF48CF60024A969B5002AD214 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/MainMenu.xib; sourceTree = \"<group>\"; };\n\t\tF49227C624A8D45000772411 /* CUIStackFrame+UI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"CUIStackFrame+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF49227C724A8D45000772411 /* CUIStackFrame+UI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"CUIStackFrame+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF49282C225696BF900D255D8 /* known_exceptions.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.css; name = known_exceptions.css; path = Help/known_exceptions.css; sourceTree = \"<group>\"; wrapsLines = 1; };\n\t\tF493DB1B24F1CF2F001AA8C0 /* en */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = \"<group>\"; };\n\t\tF495AEBD25F029C2000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePanePresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF495AEBF25F029CD000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePanePresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF495AEC125F02F74000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePanePresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF495AEC325F02F76000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePanePresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF495AEC525F03141000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/unknown_exception_type.html; sourceTree = \"<group>\"; };\n\t\tF495AEC725F0314A000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/unknown_exception_type.html; sourceTree = \"<group>\"; };\n\t\tF495AEC925F0320D000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_CRASH_SIGABRT.html; sourceTree = \"<group>\"; };\n\t\tF495AECB25F03213000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_CRASH_SIGABRT.html; sourceTree = \"<group>\"; };\n\t\tF495AECD25F033CC000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_CRASH_SIGKILL.html; sourceTree = \"<group>\"; };\n\t\tF495AECF25F033D0000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_CRASH_SIGKILL.html; sourceTree = \"<group>\"; };\n\t\tF495AED125F034C0000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_BREAKPOINT_SIGTRAP.html; sourceTree = \"<group>\"; };\n\t\tF495AED325F034C4000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_BREAKPOINT_SIGTRAP.html; sourceTree = \"<group>\"; };\n\t\tF495AED525F03820000D92E1 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = \"en.lproj/EXC_CRASH_Code Signature Invalid.html\"; sourceTree = \"<group>\"; };\n\t\tF495AED725F03825000D92E1 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = \"fr.lproj/EXC_CRASH_Code Signature Invalid.html\"; sourceTree = \"<group>\"; };\n\t\tF49673FB24D0CF6400716289 /* CUIPreferencesWindowController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencesWindowController.h; sourceTree = \"<group>\"; };\n\t\tF49673FC24D0CF6400716289 /* CUIPreferencesWindowController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencesWindowController.m; sourceTree = \"<group>\"; };\n\t\tF496740124D0D05800716289 /* CUIPreferencePaneViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePaneViewController.h; sourceTree = \"<group>\"; };\n\t\tF496740224D0D05800716289 /* CUIPreferencePaneViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePaneViewController.m; sourceTree = \"<group>\"; };\n\t\tF496740724D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePaneFontscolorsViewController.h; sourceTree = \"<group>\"; };\n\t\tF496740824D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePaneFontscolorsViewController.m; sourceTree = \"<group>\"; };\n\t\tF496740C24D0D74A00716289 /* CUIApplicationPreferences.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIApplicationPreferences.h; sourceTree = \"<group>\"; };\n\t\tF496740D24D0D74A00716289 /* CUIApplicationPreferences.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIApplicationPreferences.m; sourceTree = \"<group>\"; };\n\t\tF497303825F796E6001D01FE /* CUIHopperDisassemblerManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIHopperDisassemblerManager.h; sourceTree = \"<group>\"; };\n\t\tF497303925F796E6001D01FE /* CUIHopperDisassemblerManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIHopperDisassemblerManager.m; sourceTree = \"<group>\"; };\n\t\tF497303B25F7A121001D01FE /* CUICodeType.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICodeType.h; sourceTree = \"<group>\"; };\n\t\tF497303D25F7F74B001D01FE /* en */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\tF497303F25F7F7A6001D01FE /* fr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\tF497AD5324B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceSmartEditorPanel.h; sourceTree = \"<group>\"; };\n\t\tF497AD5424B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceSmartEditorPanel.m; sourceTree = \"<group>\"; };\n\t\tF497AD5B24B90481008517B7 /* app_unexpectedly_Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = app_unexpectedly_Prefix.pch; sourceTree = \"<group>\"; };\n\t\tF497F0142576E1A100BD1970 /* CUIRoundedRectBezelView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRoundedRectBezelView.h; sourceTree = \"<group>\"; };\n\t\tF497F0152576E1A100BD1970 /* CUIRoundedRectBezelView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRoundedRectBezelView.m; sourceTree = \"<group>\"; };\n\t\tF49A55DC24C7A7F900D249DE /* CUICallTableCellView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICallTableCellView.h; sourceTree = \"<group>\"; };\n\t\tF49A55DD24C7A7F900D249DE /* CUICallTableCellView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICallTableCellView.m; sourceTree = \"<group>\"; };\n\t\tF49A6D7C25474F6E00466D15 /* CUIInactiveButton.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInactiveButton.h; sourceTree = \"<group>\"; };\n\t\tF49A6D7D25474F6E00466D15 /* CUIInactiveButton.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInactiveButton.m; sourceTree = \"<group>\"; };\n\t\tF49A6D7F25476F7B00466D15 /* CUISymbolicationDataFormatter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISymbolicationDataFormatter.h; sourceTree = \"<group>\"; };\n\t\tF49A6D8025476F7B00466D15 /* CUISymbolicationDataFormatter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISymbolicationDataFormatter.m; sourceTree = \"<group>\"; };\n\t\tF49C47C824E9B48B003FC65C /* CUIThemesManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIThemesManager.h; sourceTree = \"<group>\"; };\n\t\tF49C47C924E9B48B003FC65C /* CUIThemesManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIThemesManager.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEE1261BC39600BADEED /* CUIWatchScrew.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchScrew.h; path = clock/CUIWatchScrew.h; sourceTree = \"<group>\"; };\n\t\tF4A0BEE2261BC39600BADEED /* CUIWatchGear.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIWatchGear.m; path = clock/CUIWatchGear.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEE3261BC39600BADEED /* CUIWatchJewel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIWatchJewel.m; path = clock/CUIWatchJewel.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEE4261BC39600BADEED /* CUIWatchGear.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchGear.h; path = clock/CUIWatchGear.h; sourceTree = \"<group>\"; };\n\t\tF4A0BEE5261BC39600BADEED /* brushed-alum.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = \"brushed-alum.png\"; path = \"clock/brushed-alum.png\"; sourceTree = \"<group>\"; };\n\t\tF4A0BEE6261BC39600BADEED /* CUIWatchAxis.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIWatchAxis.m; path = clock/CUIWatchAxis.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEE8261BC39600BADEED /* CUIWatchPart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchPart.h; path = clock/CUIWatchPart.h; sourceTree = \"<group>\"; };\n\t\tF4A0BEE9261BC39700BADEED /* CUIWatchDrawablePart.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchDrawablePart.h; path = clock/CUIWatchDrawablePart.h; sourceTree = \"<group>\"; };\n\t\tF4A0BEEB261BC39700BADEED /* CUIWatchPart.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIWatchPart.m; path = clock/CUIWatchPart.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEEC261BC39700BADEED /* CUIWatchAxis.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchAxis.h; path = clock/CUIWatchAxis.h; sourceTree = \"<group>\"; };\n\t\tF4A0BEED261BC39700BADEED /* CUIWatchBridge.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIWatchBridge.m; path = clock/CUIWatchBridge.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEEE261BC39700BADEED /* CUIWatchBridge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchBridge.h; path = clock/CUIWatchBridge.h; sourceTree = \"<group>\"; };\n\t\tF4A0BEEF261BC39700BADEED /* CUIWatchScrew.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIWatchScrew.m; path = clock/CUIWatchScrew.m; sourceTree = \"<group>\"; };\n\t\tF4A0BEF0261BC39700BADEED /* CUIWatchJewel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIWatchJewel.h; path = clock/CUIWatchJewel.h; sourceTree = \"<group>\"; };\n\t\tF4A3A6E025ED7F450018053E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUICrashLogsSourceSmartEditorWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4A3A6E225ED7F460018053E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUICrashLogsSourceSmartEditorWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4A3A6E425ED81260018053E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePaneGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4A3A6E625ED81290018053E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePaneGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4A3A6E825ED817E0018053E /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePaneCrashreporterViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4A3A6EA25ED81800018053E /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePaneCrashreporterViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4A3A6EC25ED82F10018053E /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = en.lproj/EXC_BAD_ACCESS_SIGBUS.html; sourceTree = \"<group>\"; };\n\t\tF4A3A6EE25ED82F20018053E /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = fr.lproj/EXC_BAD_ACCESS_SIGBUS.html; sourceTree = \"<group>\"; };\n\t\tF4A58D1924CA4B1500D98FDB /* CUICrashedThreadRowView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashedThreadRowView.h; sourceTree = \"<group>\"; };\n\t\tF4A58D1A24CA4B1500D98FDB /* CUICrashedThreadRowView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashedThreadRowView.m; sourceTree = \"<group>\"; };\n\t\tF4A58D1C24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashedThreadCallRowView.h; sourceTree = \"<group>\"; };\n\t\tF4A58D1D24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashedThreadCallRowView.m; sourceTree = \"<group>\"; };\n\t\tF4A769682555D9DD00F9D9D3 /* CUIRawCrashLog+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUIRawCrashLog+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4A769692555D9DD00F9D9D3 /* CUIRawCrashLog+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUIRawCrashLog+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4A9967B2675078A0001B40E /* CUICrashLogsOpenErrorWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUICrashLogsOpenErrorWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4AA22B42561A233001A1315 /* CUIAboutBoxWindowController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIAboutBoxWindowController.h; sourceTree = \"<group>\"; };\n\t\tF4AA22B52561A233001A1315 /* CUIAboutBoxWindowController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIAboutBoxWindowController.m; sourceTree = \"<group>\"; };\n\t\tF4AC86472558A03B004F2637 /* CUIExportAccessoryViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIExportAccessoryViewController.h; sourceTree = \"<group>\"; };\n\t\tF4AC86482558A03B004F2637 /* CUIExportAccessoryViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIExportAccessoryViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B018352620FEC7009727F1 /* CUIApplicationIconView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIApplicationIconView.m; path = clock/CUIApplicationIconView.m; sourceTree = \"<group>\"; };\n\t\tF4B018362620FEC7009727F1 /* CUIApplicationIconView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIApplicationIconView.h; path = clock/CUIApplicationIconView.h; sourceTree = \"<group>\"; };\n\t\tF4B138552522948700D9DE2F /* NSBundle+dSYM.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"NSBundle+dSYM.h\"; sourceTree = \"<group>\"; };\n\t\tF4B138562522948700D9DE2F /* NSBundle+dSYM.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"NSBundle+dSYM.m\"; sourceTree = \"<group>\"; };\n\t\tF4B52E1F2548B8B4007593FD /* CUIdSYMBundle+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = \"CUIdSYMBundle+UI.h\"; path = \"dSYM/CUIdSYMBundle+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4B52E202548B8B4007593FD /* CUIdSYMBundle+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = \"CUIdSYMBundle+UI.m\"; path = \"dSYM/CUIdSYMBundle+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4B57C0A24AF5607000851FF /* CUICrashLogsSourceToday.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceToday.h; sourceTree = \"<group>\"; };\n\t\tF4B57C0B24AF5607000851FF /* CUICrashLogsSourceToday.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceToday.m; sourceTree = \"<group>\"; };\n\t\tF4B57C0D24AF5655000851FF /* CUICrashLogsSourceToday+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogsSourceToday+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4B57C0E24AF5655000851FF /* CUICrashLogsSourceToday+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogsSourceToday+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4B5BE6C2848277400C33F6F /* CUIExceptionTypePopUpViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIExceptionTypePopUpViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B5BE6D2848277400C33F6F /* CUIExceptionTypePopUpViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIExceptionTypePopUpViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B5BE6F28482A4300C33F6F /* CUITerminationReasonPopUpViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUITerminationReasonPopUpViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B5BE7028482A4300C33F6F /* CUITerminationReasonPopUpViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUITerminationReasonPopUpViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B649D024EDCD2300008C47 /* CUIInspectorExecutableViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorExecutableViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B649D124EDCD2300008C47 /* CUIInspectorExecutableViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorExecutableViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B649D524EDD09A00008C47 /* CUIInspectorStackableViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorStackableViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B649D624EDD09A00008C47 /* CUIInspectorStackableViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorStackableViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B649D824EDD64900008C47 /* CUIInspectorProcessesViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorProcessesViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B649D924EDD64900008C47 /* CUIInspectorProcessesViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorProcessesViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B67835258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePaneCrashreporterViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B67836258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePaneCrashreporterViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B74C1624B233C900CD1E60 /* CUIRightViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRightViewController.h; sourceTree = \"<group>\"; };\n\t\tF4B74C1724B233C900CD1E60 /* CUIRightViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRightViewController.m; sourceTree = \"<group>\"; };\n\t\tF4B74C1824B233C900CD1E60 /* CUIRightViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIRightViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4B9AD2425319A400083FA6C /* MCHMemoryBufferWrapper.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHMemoryBufferWrapper.m; path = \"app_unexpectedly/Mach-o/MCHMemoryBufferWrapper.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2525319A400083FA6C /* MCHObjectFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHObjectFile.h; path = \"app_unexpectedly/Mach-o/MCHObjectFile.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2625319A400083FA6C /* MCHSegment.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHSegment.m; path = \"app_unexpectedly/Mach-o/MCHSegment.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2725319A400083FA6C /* MCHMachBinary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHMachBinary.h; path = \"app_unexpectedly/Mach-o/MCHMachBinary.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2825319A400083FA6C /* MCHObjectFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHObjectFile.m; path = \"app_unexpectedly/Mach-o/MCHObjectFile.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2925319A400083FA6C /* MCHLoadCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHLoadCommand.h; path = \"app_unexpectedly/Mach-o/MCHLoadCommand.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2A25319A400083FA6C /* MCHMemoryBufferWrapper.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHMemoryBufferWrapper.h; path = \"app_unexpectedly/Mach-o/MCHMemoryBufferWrapper.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2B25319A400083FA6C /* MCHUUIDLoadCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHUUIDLoadCommand.m; path = \"app_unexpectedly/Mach-o/MCHUUIDLoadCommand.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2C25319A410083FA6C /* MCHSegment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHSegment.h; path = \"app_unexpectedly/Mach-o/MCHSegment.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2D25319A410083FA6C /* MCHLoadCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHLoadCommand.m; path = \"app_unexpectedly/Mach-o/MCHLoadCommand.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2E25319A410083FA6C /* MCHSection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHSection.m; path = \"app_unexpectedly/Mach-o/MCHSection.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD2F25319A410083FA6C /* MCHUUIDLoadCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHUUIDLoadCommand.h; path = \"app_unexpectedly/Mach-o/MCHUUIDLoadCommand.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD3025319A410083FA6C /* MCHMachBinary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHMachBinary.m; path = \"app_unexpectedly/Mach-o/MCHMachBinary.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD3125319A410083FA6C /* MCHSection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHSection.h; path = \"app_unexpectedly/Mach-o/MCHSection.h\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD3925319D7B0083FA6C /* MCHSegmentLoadCommand.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MCHSegmentLoadCommand.m; path = \"app_unexpectedly/Mach-o/MCHSegmentLoadCommand.m\"; sourceTree = \"<group>\"; };\n\t\tF4B9AD3A25319D7C0083FA6C /* MCHSegmentLoadCommand.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MCHSegmentLoadCommand.h; path = \"app_unexpectedly/Mach-o/MCHSegmentLoadCommand.h\"; sourceTree = \"<group>\"; };\n\t\tF4BBAC5B24AA7D37000511BE /* CUIBinaryImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIBinaryImage.h; sourceTree = \"<group>\"; };\n\t\tF4BBAC5C24AA7D37000511BE /* CUIBinaryImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIBinaryImage.m; sourceTree = \"<group>\"; };\n\t\tF4BC576F24DF426200063545 /* CUIAATextFieldCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIAATextFieldCell.h; sourceTree = \"<group>\"; };\n\t\tF4BC577024DF426200063545 /* CUIAATextFieldCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIAATextFieldCell.m; sourceTree = \"<group>\"; };\n\t\tF4BD69FE25553E8F00F98F3E /* CUICrashLogSectionsDetector.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogSectionsDetector.h; sourceTree = \"<group>\"; };\n\t\tF4BD69FF25553E9000F98F3E /* CUICrashLogSectionsDetector.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogSectionsDetector.m; sourceTree = \"<group>\"; };\n\t\tF4BD8C682DF4DDCA00BD61A8 /* IPSExceptionReason.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExceptionReason.h; path = ../submodules/ips2crash/Model/IPSExceptionReason.h; sourceTree = \"<group>\"; };\n\t\tF4BD8C692DF4DDCA00BD61A8 /* IPSExceptionReason.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExceptionReason.m; path = ../submodules/ips2crash/Model/IPSExceptionReason.m; sourceTree = \"<group>\"; };\n\t\tF4C269CB2503BCC100C8F3B3 /* CUISymbolicationManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISymbolicationManager.h; sourceTree = \"<group>\"; };\n\t\tF4C269CC2503BCC100C8F3B3 /* CUISymbolicationManager.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISymbolicationManager.m; sourceTree = \"<group>\"; };\n\t\tF4C269CE2503BE6500C8F3B3 /* CUISymbolicationData.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUISymbolicationData.h; sourceTree = \"<group>\"; };\n\t\tF4C269CF2503BE6500C8F3B3 /* CUISymbolicationData.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUISymbolicationData.m; sourceTree = \"<group>\"; };\n\t\tF4C7498B24F84689004F38C0 /* CUIQuickHelpPopUpViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIQuickHelpPopUpViewController.h; sourceTree = \"<group>\"; };\n\t\tF4C7498C24F84689004F38C0 /* CUIQuickHelpPopUpViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIQuickHelpPopUpViewController.m; sourceTree = \"<group>\"; };\n\t\tF4C7498D24F84689004F38C0 /* CUIQuickHelpPopUpViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIQuickHelpPopUpViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4CC56FF24A79EDA00150EC4 /* Unexpectedly.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Unexpectedly.app; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF4CC570324A79EDA00150EC4 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tF4CC570424A79EDA00150EC4 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = \"<group>\"; };\n\t\tF4CC570524A79EDA00150EC4 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = \"<group>\"; };\n\t\tF4CC570724A79EDA00150EC4 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = \"<group>\"; };\n\t\tF4CC570924A79EDA00150EC4 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = \"<group>\"; };\n\t\tF4CC572224A7A1D100150EC4 /* CUICrashLogsProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsProvider.h; sourceTree = \"<group>\"; };\n\t\tF4CC572324A7A1D100150EC4 /* CUICrashLogsProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsProvider.m; sourceTree = \"<group>\"; };\n\t\tF4CC572524A7A2B200150EC4 /* CUICrashLog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUICrashLog.h; sourceTree = \"<group>\"; };\n\t\tF4CC572624A7A2B200150EC4 /* CUICrashLog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUICrashLog.m; sourceTree = \"<group>\"; };\n\t\tF4CC572B24A7A5F000150EC4 /* CUICrashLog+Transform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLog+Transform.h\"; sourceTree = \"<group>\"; };\n\t\tF4CC572C24A7A5F000150EC4 /* CUICrashLog+Transform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLog+Transform.m\"; sourceTree = \"<group>\"; };\n\t\tF4CC572E24A7A95A00150EC4 /* CUIThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUIThread.h; sourceTree = \"<group>\"; };\n\t\tF4CC572F24A7A95A00150EC4 /* CUIThread.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUIThread.m; sourceTree = \"<group>\"; };\n\t\tF4CC573124A7ABAF00150EC4 /* CUICallStackBacktrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUICallStackBacktrace.h; sourceTree = \"<group>\"; };\n\t\tF4CC573224A7ABAF00150EC4 /* CUICallStackBacktrace.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUICallStackBacktrace.m; sourceTree = \"<group>\"; };\n\t\tF4CCCC5E24AE76780031BC27 /* CUICrashLogsSourcesViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourcesViewController.h; sourceTree = \"<group>\"; };\n\t\tF4CCCC5F24AE76780031BC27 /* CUICrashLogsSourcesViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourcesViewController.m; sourceTree = \"<group>\"; };\n\t\tF4CCCC6324AE810E0031BC27 /* CUICrashLogsSourcesSelection.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourcesSelection.h; sourceTree = \"<group>\"; };\n\t\tF4CCCC6424AE810E0031BC27 /* CUICrashLogsSourcesSelection.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourcesSelection.m; sourceTree = \"<group>\"; };\n\t\tF4CCCC6924AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceFileSystemItem.h; sourceTree = \"<group>\"; };\n\t\tF4CCCC6A24AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceFileSystemItem.m; sourceTree = \"<group>\"; };\n\t\tF4CCCC6C24AE9EDA0031BC27 /* CUICrashLogsSource+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogsSource+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4CCCC6D24AE9EDA0031BC27 /* CUICrashLogsSource+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogsSource+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4CD32B3257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePaneSymbolicationViewController.h; sourceTree = \"<group>\"; };\n\t\tF4CD32B4257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePaneSymbolicationViewController.m; sourceTree = \"<group>\"; };\n\t\tF4CE09A42A76E43300BACB71 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = Help/es.lproj/ENDPOINTSECURITY_2.html; sourceTree = \"<group>\"; };\n\t\tF4CE09A52A76E44D00BACB71 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = Help/ja.lproj/ENDPOINTSECURITY_2.html; sourceTree = \"<group>\"; };\n\t\tF4CE83DD2554B97300A8BD87 /* CUICenteredLabelViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUICenteredLabelViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4CF6CF42DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSIncident+ApplicationSpecificInformation.m\"; path = \"../submodules/ips2crash/tool_ips2crash/ips2crash/IPSIncident+ApplicationSpecificInformation.m\"; sourceTree = \"<group>\"; };\n\t\tF4CF6CF52DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSIncident+ApplicationSpecificInformation.h\"; path = \"../submodules/ips2crash/tool_ips2crash/ips2crash/IPSIncident+ApplicationSpecificInformation.h\"; sourceTree = \"<group>\"; };\n\t\tF4D0EE93273DB8CC00CC9737 /* IPSThreadState+RegisterDisplayName.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSThreadState+RegisterDisplayName.m\"; path = \"../submodules/ips2crash/tool_ips2crash/ips2crash/IPSThreadState+RegisterDisplayName.m\"; sourceTree = \"<group>\"; };\n\t\tF4D0EE94273DB8CC00CC9737 /* IPSThreadState+RegisterDisplayName.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSThreadState+RegisterDisplayName.h\"; path = \"../submodules/ips2crash/tool_ips2crash/ips2crash/IPSThreadState+RegisterDisplayName.h\"; sourceTree = \"<group>\"; };\n\t\tF4D14D662745C0A9003698AD /* IPSImage+UserCode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSImage+UserCode.m\"; path = \"../submodules/ips2crash/tool_ips2crash/ips2crash/IPSImage+UserCode.m\"; sourceTree = \"<group>\"; };\n\t\tF4D14D672745C0A9003698AD /* IPSImage+UserCode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSImage+UserCode.h\"; path = \"../submodules/ips2crash/tool_ips2crash/ips2crash/IPSImage+UserCode.h\"; sourceTree = \"<group>\"; };\n\t\tF4D5C77A2571AF900029B051 /* CUIRegisterLabel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRegisterLabel.h; sourceTree = \"<group>\"; };\n\t\tF4D5C77B2571AF900029B051 /* CUIRegisterLabel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRegisterLabel.m; sourceTree = \"<group>\"; };\n\t\tF4D6C56C2680028A00B78B3D /* en */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/RemoteCheck.strings; sourceTree = \"<group>\"; };\n\t\tF4D6C56E268002DE00B78B3D /* fr */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/RemoteCheck.strings; sourceTree = \"<group>\"; };\n\t\tF4D6C56F2680031E00B78B3D /* es */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/RemoteCheck.strings; sourceTree = \"<group>\"; };\n\t\tF4D7F15C25F04A620024E9A5 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUISymbolsFilesLibraryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4D7F15E25F04A630024E9A5 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUISymbolsFilesLibraryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4D7F16025F04A9D0024E9A5 /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/CUIPreferencePaneSymbolicationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4D7F16225F04A9E0024E9A5 /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = fr.lproj/CUIPreferencePaneSymbolicationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4DAF0B127C44AA700256EA4 /* IPSImage+Offset.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSImage+Offset.h\"; path = \"app_unexpectedly/ips + Extensions/IPSImage+Offset.h\"; sourceTree = \"<group>\"; };\n\t\tF4DAF0B227C44AA700256EA4 /* IPSImage+Offset.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSImage+Offset.m\"; path = \"app_unexpectedly/ips + Extensions/IPSImage+Offset.m\"; sourceTree = \"<group>\"; };\n\t\tF4DAFBEC2736B7B200FB50A6 /* CUIIPSTransform.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIIPSTransform.h; sourceTree = \"<group>\"; };\n\t\tF4DAFBED2736B7B200FB50A6 /* CUIIPSTransform.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIIPSTransform.m; sourceTree = \"<group>\"; };\n\t\tF4DAFBEF2736B7D500FB50A6 /* CUIDataTransform.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIDataTransform.h; sourceTree = \"<group>\"; };\n\t\tF4DAFBF02736B7D500FB50A6 /* CUIDataTransform.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIDataTransform.m; sourceTree = \"<group>\"; };\n\t\tF4DF813B2893463B008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSIncidentDiagnosticMessage+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncidentDiagnosticMessage+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF813C2893463B008EF1B3 /* IPSThreadState+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSThreadState+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSThreadState+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF813D2893463B008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSIncidentDiagnosticMessage+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncidentDiagnosticMessage+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF813E2893463B008EF1B3 /* IPSObfuscator+Extended.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSObfuscator+Extended.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSObfuscator+Extended.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF813F2893463B008EF1B3 /* IPSThreadState+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSThreadState+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSThreadState+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81402893463B008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSApplicationSpecificInformation+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSApplicationSpecificInformation+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81412893463B008EF1B3 /* IPSObfuscator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSObfuscator.h; path = \"../submodules/ips2crash/Model + Obfuscating/IPSObfuscator.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81422893463C008EF1B3 /* IPSBundleInfo+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSBundleInfo+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSBundleInfo+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81432893463C008EF1B3 /* IPSIncidentHeader+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSIncidentHeader+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncidentHeader+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81442893463C008EF1B3 /* IPSLegacyInfo+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSLegacyInfo+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSLegacyInfo+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81452893463C008EF1B3 /* IPSIncident+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSIncident+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncident+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81462893463C008EF1B3 /* IPSObfuscator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSObfuscator.m; path = \"../submodules/ips2crash/Model + Obfuscating/IPSObfuscator.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81472893463C008EF1B3 /* IPSCrashSummary+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSCrashSummary+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSCrashSummary+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81482893463C008EF1B3 /* IPSImage+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSImage+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSImage+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81492893463C008EF1B3 /* IPSThread+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSThread+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSThread+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF814A2893463C008EF1B3 /* IPSThreadFrame+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSThreadFrame+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSThreadFrame+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF814B2893463C008EF1B3 /* IPSRegisterState+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSRegisterState+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSRegisterState+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF814C2893463C008EF1B3 /* IPSReport+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSReport+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSReport+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF814D2893463C008EF1B3 /* IPSIncidentHeader+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSIncidentHeader+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncidentHeader+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF814E2893463D008EF1B3 /* IPSCrashSummary+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSCrashSummary+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSCrashSummary+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF814F2893463D008EF1B3 /* IPSImage+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSImage+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSImage+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81502893463D008EF1B3 /* IPSLegacyInfo+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSLegacyInfo+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSLegacyInfo+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81512893463D008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSApplicationSpecificInformation+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSApplicationSpecificInformation+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81522893463D008EF1B3 /* IPSReport+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSReport+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSReport+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81532893463D008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSIncidentExceptionInformation+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncidentExceptionInformation+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81542893463D008EF1B3 /* IPSThreadFrame+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSThreadFrame+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSThreadFrame+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81552893463D008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSIncidentExceptionInformation+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncidentExceptionInformation+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81562893463D008EF1B3 /* IPSBundleInfo+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSBundleInfo+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSBundleInfo+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81572893463D008EF1B3 /* IPSIncident+Obfuscating.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSIncident+Obfuscating.m\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSIncident+Obfuscating.m\"; sourceTree = \"<group>\"; };\n\t\tF4DF81582893463D008EF1B3 /* IPSThread+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSThread+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSThread+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4DF81592893463E008EF1B3 /* IPSRegisterState+Obfuscating.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSRegisterState+Obfuscating.h\"; path = \"../submodules/ips2crash/Model + Obfuscating/IPSRegisterState+Obfuscating.h\"; sourceTree = \"<group>\"; };\n\t\tF4E0BD23262078220048647C /* CUIAboutBoxWindow.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIAboutBoxWindow.h; sourceTree = \"<group>\"; };\n\t\tF4E0BD24262078220048647C /* CUIAboutBoxWindow.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIAboutBoxWindow.m; sourceTree = \"<group>\"; };\n\t\tF4E1C11124C22CF5000F5C0F /* CUILightTableViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUILightTableViewController.h; sourceTree = \"<group>\"; };\n\t\tF4E1C11224C22CF5000F5C0F /* CUILightTableViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUILightTableViewController.m; sourceTree = \"<group>\"; };\n\t\tF4E1C11324C22CF5000F5C0F /* CUILightTableViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUILightTableViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4E1C11624C22F02000F5C0F /* CUICollectionViewVisibleThreadsLayout.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICollectionViewVisibleThreadsLayout.h; sourceTree = \"<group>\"; };\n\t\tF4E1C11724C22F02000F5C0F /* CUICollectionViewVisibleThreadsLayout.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICollectionViewVisibleThreadsLayout.m; sourceTree = \"<group>\"; };\n\t\tF4E1C11924C22F54000F5C0F /* CUICollectionViewVisibleThreadItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICollectionViewVisibleThreadItem.h; sourceTree = \"<group>\"; };\n\t\tF4E1C11A24C22F54000F5C0F /* CUICollectionViewVisibleThreadItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICollectionViewVisibleThreadItem.m; sourceTree = \"<group>\"; };\n\t\tF4E1C11B24C22F54000F5C0F /* CUICollectionViewVisibleThreadItem.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUICollectionViewVisibleThreadItem.xib; sourceTree = \"<group>\"; };\n\t\tF4E1C11E24C22FB5000F5C0F /* CUILightTableVisibleThreadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUILightTableVisibleThreadView.h; sourceTree = \"<group>\"; };\n\t\tF4E1C11F24C22FB5000F5C0F /* CUILightTableVisibleThreadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUILightTableVisibleThreadView.m; sourceTree = \"<group>\"; };\n\t\tF4E1C12124C22FEE000F5C0F /* CUILightTableVisibleInterGapView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUILightTableVisibleInterGapView.h; sourceTree = \"<group>\"; };\n\t\tF4E1C12224C22FEE000F5C0F /* CUILightTableVisibleInterGapView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUILightTableVisibleInterGapView.m; sourceTree = \"<group>\"; };\n\t\tF4E671902E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICodeSigningFlagsTableView.h; sourceTree = \"<group>\"; };\n\t\tF4E671912E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICodeSigningFlagsTableView.m; sourceTree = \"<group>\"; };\n\t\tF4E671942E2C405F00E5A064 /* CodeSigningFlags.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = CodeSigningFlags.plist; sourceTree = \"<group>\"; };\n\t\tF4E6ED9B2849695100766F9A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = Help/en.lproj/unknown_termination_reason.html; sourceTree = \"<group>\"; };\n\t\tF4E6ED9D2849696000766F9A /* es */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = es; path = Help/es.lproj/unknown_termination_reason.html; sourceTree = \"<group>\"; };\n\t\tF4E6ED9E2849696600766F9A /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = Help/fr.lproj/unknown_termination_reason.html; sourceTree = \"<group>\"; };\n\t\tF4E6ED9F2849696C00766F9A /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = Help/ja.lproj/unknown_termination_reason.html; sourceTree = \"<group>\"; };\n\t\tF4E6EDA0284969DD00766F9A /* known_termination_reasons.css */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.css; name = known_termination_reasons.css; path = Help/known_termination_reasons.css; sourceTree = \"<group>\"; };\n\t\tF4E6EDA3284969E500766F9A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = en; path = Help/en.lproj/ENDPOINTSECURITY_2.html; sourceTree = \"<group>\"; };\n\t\tF4E6EDA528496E2A00766F9A /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = fr; path = Help/fr.lproj/ENDPOINTSECURITY_2.html; sourceTree = \"<group>\"; };\n\t\tF4E861B8255496310061E203 /* CUIRawCrashLog.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRawCrashLog.h; sourceTree = \"<group>\"; };\n\t\tF4E861B9255496310061E203 /* CUIRawCrashLog.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRawCrashLog.m; sourceTree = \"<group>\"; };\n\t\tF4E91ADB256A98050017C3EE /* CUIFontBoxView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIFontBoxView.h; sourceTree = \"<group>\"; };\n\t\tF4E91ADC256A98050017C3EE /* CUIFontBoxView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIFontBoxView.m; sourceTree = \"<group>\"; };\n\t\tF4EAFA2A24FA6CD100C0B729 /* CUICrashLogTextView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogTextView.h; sourceTree = \"<group>\"; };\n\t\tF4EAFA2B24FA6CD100C0B729 /* CUICrashLogTextView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogTextView.m; sourceTree = \"<group>\"; };\n\t\tF4EBADB224A8F04F00DF4271 /* CUICrashLog+UI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLog+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4EBADB324A8F04F00DF4271 /* CUICrashLog+UI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLog+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4EBADB524A8F10000DF4271 /* CUICrashLogTableCellView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CUICrashLogTableCellView.h; sourceTree = \"<group>\"; };\n\t\tF4EBADB624A8F10000DF4271 /* CUICrashLogTableCellView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogTableCellView.m; sourceTree = \"<group>\"; };\n\t\tF4EBD24924E01556007F0252 /* CUITableCustomSelectionColorRowView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUITableCustomSelectionColorRowView.h; sourceTree = \"<group>\"; };\n\t\tF4EBD24A24E01556007F0252 /* CUITableCustomSelectionColorRowView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUITableCustomSelectionColorRowView.m; sourceTree = \"<group>\"; };\n\t\tF4ED18A124EC77A300ED7EF2 /* NSArray+UniqueName.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSArray+UniqueName.m\"; path = \"Foundation + Extensions/NSArray+UniqueName.m\"; sourceTree = \"<group>\"; };\n\t\tF4ED18A224EC77A300ED7EF2 /* NSArray+UniqueName.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSArray+UniqueName.h\"; path = \"Foundation + Extensions/NSArray+UniqueName.h\"; sourceTree = \"<group>\"; };\n\t\tF4ED75882501A29700316E73 /* CUIStackFrame.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIStackFrame.h; sourceTree = \"<group>\"; };\n\t\tF4ED75892501A29700316E73 /* CUIStackFrame.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIStackFrame.m; sourceTree = \"<group>\"; };\n\t\tF4EFE75024BA48F500DB97AC /* CUIMainWindow.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIMainWindow.h; sourceTree = \"<group>\"; };\n\t\tF4EFE75124BA48F500DB97AC /* CUIMainWindow.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIMainWindow.m; sourceTree = \"<group>\"; };\n\t\tF4F2A9CE24BB7E3600F912D4 /* CUICrashLogsSourceSeparator.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceSeparator.h; sourceTree = \"<group>\"; };\n\t\tF4F2A9CF24BB7E3600F912D4 /* CUICrashLogsSourceSeparator.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceSeparator.m; sourceTree = \"<group>\"; };\n\t\tF4F2A9D124BB809200F912D4 /* CUICrashLogsSourceTableCellView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUICrashLogsSourceTableCellView.h; sourceTree = \"<group>\"; };\n\t\tF4F2A9D224BB809200F912D4 /* CUICrashLogsSourceTableCellView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUICrashLogsSourceTableCellView.m; sourceTree = \"<group>\"; };\n\t\tF4F5395624D21DB800D537BC /* CUIPreferencePaneGeneralViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPreferencePaneGeneralViewController.h; sourceTree = \"<group>\"; };\n\t\tF4F5395724D21DB800D537BC /* CUIPreferencePaneGeneralViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPreferencePaneGeneralViewController.m; sourceTree = \"<group>\"; };\n\t\tF4F5821A256FC7B90032FC53 /* DWRFSection_debug_str_offsets.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = DWRFSection_debug_str_offsets.h; path = app_unexpectedly/DWARF/DWRFSection_debug_str_offsets.h; sourceTree = \"<group>\"; };\n\t\tF4F5821B256FC7B90032FC53 /* DWRFSection_debug_str_offsets.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = DWRFSection_debug_str_offsets.m; path = app_unexpectedly/DWARF/DWRFSection_debug_str_offsets.m; sourceTree = \"<group>\"; };\n\t\tF4F892F82575A6DC00BE4CE0 /* CUIRegistersViewController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CUIRegistersViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4F892FA2575A70800BE4CE0 /* CUIRegistersMainViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIRegistersMainViewController.h; sourceTree = \"<group>\"; };\n\t\tF4F892FB2575A70800BE4CE0 /* CUIRegistersMainViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIRegistersMainViewController.m; sourceTree = \"<group>\"; };\n\t\tF4F892FC2575A70800BE4CE0 /* CUIRegistersMainViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIRegistersMainViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4F8D26624F29624007661D6 /* CUIPresentationTextNavigationViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIPresentationTextNavigationViewController.h; sourceTree = \"<group>\"; };\n\t\tF4F8D26724F29624007661D6 /* CUIPresentationTextNavigationViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIPresentationTextNavigationViewController.m; sourceTree = \"<group>\"; };\n\t\tF4F8D26824F29624007661D6 /* CUIPresentationTextNavigationViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CUIPresentationTextNavigationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4F9BAEF24EF060E00D08FBD /* CUIInspectorUserViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorUserViewController.h; sourceTree = \"<group>\"; };\n\t\tF4F9BAF024EF060E00D08FBD /* CUIInspectorUserViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorUserViewController.m; sourceTree = \"<group>\"; };\n\t\tF4F9BAF424EF06BC00D08FBD /* CUIInspectorGeneralViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIInspectorGeneralViewController.h; sourceTree = \"<group>\"; };\n\t\tF4F9BAF524EF06BC00D08FBD /* CUIInspectorGeneralViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIInspectorGeneralViewController.m; sourceTree = \"<group>\"; };\n\t\tF4F9D3332556C7DB00D28E6E /* CUILineJumperWindowController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUILineJumperWindowController.h; sourceTree = \"<group>\"; };\n\t\tF4F9D3342556C7DB00D28E6E /* CUILineJumperWindowController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUILineJumperWindowController.m; sourceTree = \"<group>\"; };\n\t\tF4FA4321273EF2F30068EDB8 /* NSString+CPU.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = \"NSString+CPU.h\"; path = \"Foundation + Extensions/NSString+CPU.h\"; sourceTree = \"<group>\"; };\n\t\tF4FA4322273EF2F30068EDB8 /* NSString+CPU.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = \"NSString+CPU.m\"; path = \"Foundation + Extensions/NSString+CPU.m\"; sourceTree = \"<group>\"; };\n\t\tF4FC3629278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/RemoteCheck.strings; sourceTree = \"<group>\"; };\n\t\tF4FC362A278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIAboutBoxWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC362B278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePaneGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC362C278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePanePresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC362D278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePanePresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC362E278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePanePresentationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC362F278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePaneFontscolorsViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3630278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUISymbolsFilesLibraryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3631278F914200669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePaneSymbolicationViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3632278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePaneCrashreporterViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3633278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencePaneAdvancedViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3634278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIPreferencesWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3635278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICrashLogsSourceSmartEditorWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3636278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICrashLogsSourcesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3637278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICrashLogsListViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3638278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIInspectorGeneralViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3639278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIInspectorUserViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC363A278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIInspectorExecutableViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC363B278F914300669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIInspectorProcessesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC363C278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/unknown_exception_type.html; sourceTree = \"<group>\"; };\n\t\tF4FC363D278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_BAD_ACCESS_SIGBUS.html; sourceTree = \"<group>\"; };\n\t\tF4FC363E278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_BAD_ACCESS_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF4FC363F278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_BAD_INSTRUCTION_SIGILL.html; sourceTree = \"<group>\"; };\n\t\tF4FC3640278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_BREAKPOINT_SIGTRAP.html; sourceTree = \"<group>\"; };\n\t\tF4FC3641278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_CRASH_SIGABRT.html; sourceTree = \"<group>\"; };\n\t\tF4FC3642278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_CRASH_SIGKILL.html; sourceTree = \"<group>\"; };\n\t\tF4FC3643278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_CRASH_SIGQUIT.html; sourceTree = \"<group>\"; };\n\t\tF4FC3644278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = ja.lproj/EXC_CRASH_SIGSEGV.html; sourceTree = \"<group>\"; };\n\t\tF4FC3645278F914400669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.html; name = ja; path = \"ja.lproj/EXC_CRASH_Code Signature Invalid.html\"; sourceTree = \"<group>\"; };\n\t\tF4FC3646278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIExportAccessoryViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3647278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICrashLogPresentationTextViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3648278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICrashLogPresentationOutlineViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC3649278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUICollectionViewRegisterItem.xib; sourceTree = \"<group>\"; };\n\t\tF4FC364A278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIBinaryImagesViewController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC364B278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/CUIMainWindowController.xib; sourceTree = \"<group>\"; };\n\t\tF4FC364C278F914500669B32 /* ja */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/Localizable.strings; sourceTree = \"<group>\"; };\n\t\tF4FC364D278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/Predicates.strings; sourceTree = \"<group>\"; };\n\t\tF4FC364E278F914500669B32 /* ja */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = ja; path = ja.lproj/MainMenu.xib; sourceTree = \"<group>\"; };\n\t\tF4FC364F278F914500669B32 /* ja */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = \"<group>\"; };\n\t\tF4FC8EA527C1A6EE00291875 /* CUIReportThemedTransform.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIReportThemedTransform.h; sourceTree = \"<group>\"; };\n\t\tF4FC8EA627C1A6EE00291875 /* CUIReportThemedTransform.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CUIReportThemedTransform.m; sourceTree = \"<group>\"; };\n\t\tF4FE2DE525613B5400C1774A /* CUIKeyViews.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CUIKeyViews.h; sourceTree = \"<group>\"; };\n\t\tF4FE2DE825615CA800C1774A /* CUICrashLogExceptionInformation+UI.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"CUICrashLogExceptionInformation+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4FE2DE925615CA800C1774A /* CUICrashLogExceptionInformation+UI.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"CUICrashLogExceptionInformation+UI.m\"; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\tF4CC56FC24A79EDA00150EC4 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tD0BD22382F3FC6430052AD8E /* RSCore */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tD0BD22392F3FC6810052AD8E /* NSMenuItem+RSCore.h */,\n\t\t\t\tD0BD223A2F3FC6810052AD8E /* NSMenuItem+RSCore.m */,\n\t\t\t);\n\t\t\tname = RSCore;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4040A7324F5B9B40072BF65 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF497F0142576E1A100BD1970 /* CUIRoundedRectBezelView.h */,\n\t\t\t\tF497F0152576E1A100BD1970 /* CUIRoundedRectBezelView.m */,\n\t\t\t\tF420C9B7254F30A100D24249 /* CUIFileDeadDropView.h */,\n\t\t\t\tF420C9B8254F30A100D24249 /* CUIFileDeadDropView.m */,\n\t\t\t\tF4040A7424F5B9CE0072BF65 /* CUINavigationChevronView.h */,\n\t\t\t\tF4040A7524F5B9CE0072BF65 /* CUINavigationChevronView.m */,\n\t\t\t\tF4040A7724F5BC230072BF65 /* CUINavigationView.h */,\n\t\t\t\tF4040A7824F5BC230072BF65 /* CUINavigationView.m */,\n\t\t\t\tF420C9BF254F335000D24249 /* CUIdSYMDropView.h */,\n\t\t\t\tF420C9C0254F335000D24249 /* CUIdSYMDropView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF405A96A255015B500AD2F24 /* Demangling */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF405A96B255015D800AD2F24 /* CUICXXDemangler.h */,\n\t\t\t\tF405A96C255015D800AD2F24 /* CUICXXDemangler.mm */,\n\t\t\t\tF472CC952550631A003F6338 /* CUISwiftDemangler.h */,\n\t\t\t\tF472CC962550631A003F6338 /* CUISwiftDemangler.m */,\n\t\t\t);\n\t\t\tname = Demangling;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF40B0D7724D3557F00663282 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF46BAF57250162C900991970 /* CUIPreferencesWindow.h */,\n\t\t\t\tF46BAF58250162C900991970 /* CUIPreferencesWindow.m */,\n\t\t\t\tF40B0D7A24D3558800663282 /* CUIPreferencesTabBox.h */,\n\t\t\t\tF40B0D7824D3558700663282 /* CUIPreferencesTabBox.m */,\n\t\t\t\tF40B0D7C24D3558800663282 /* CUIPreferencesTabButton.h */,\n\t\t\t\tF40B0D7B24D3558800663282 /* CUIPreferencesTabButton.m */,\n\t\t\t\tF40B0D7D24D3558800663282 /* CUIPreferencesTabHeaderView.h */,\n\t\t\t\tF40B0D7924D3558800663282 /* CUIPreferencesTabHeaderView.m */,\n\t\t\t\tF414068924D6014D0059FF21 /* CUIFontAndColorsFramedView.h */,\n\t\t\t\tF414068A24D6014D0059FF21 /* CUIFontAndColorsFramedView.m */,\n\t\t\t\tF4BC576F24DF426200063545 /* CUIAATextFieldCell.h */,\n\t\t\t\tF4BC577024DF426200063545 /* CUIAATextFieldCell.m */,\n\t\t\t\tF40ED76524E72A6E00557BB8 /* CUICategoriesClipView.h */,\n\t\t\t\tF40ED76624E72A6E00557BB8 /* CUICategoriesClipView.m */,\n\t\t\t\tF4EBD24924E01556007F0252 /* CUITableCustomSelectionColorRowView.h */,\n\t\t\t\tF4EBD24A24E01556007F0252 /* CUITableCustomSelectionColorRowView.m */,\n\t\t\t\tF4775477255B0054006BA662 /* CUIThemesTableView.h */,\n\t\t\t\tF4775478255B0054006BA662 /* CUIThemesTableView.m */,\n\t\t\t\tF4E91ADB256A98050017C3EE /* CUIFontBoxView.h */,\n\t\t\t\tF4E91ADC256A98050017C3EE /* CUIFontBoxView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF40B0D8124D3568000663282 /* Foundation + Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4ED18A224EC77A300ED7EF2 /* NSArray+UniqueName.h */,\n\t\t\t\tF4ED18A124EC77A300ED7EF2 /* NSArray+UniqueName.m */,\n\t\t\t\tF40B0D8C24D356A200663282 /* NSArray+WBExtensions.h */,\n\t\t\t\tF40B0D8924D356A200663282 /* NSArray+WBExtensions.m */,\n\t\t\t\tF40BEAFA24E9FEF8007A3F60 /* NSDictionary+WBExtensions.h */,\n\t\t\t\tF40BEAFB24E9FEF8007A3F60 /* NSDictionary+WBExtensions.m */,\n\t\t\t\tF40B0D9B24D370A200663282 /* NSDictionary+MutableDeepCopy.h */,\n\t\t\t\tF40B0D9C24D370A200663282 /* NSDictionary+MutableDeepCopy.m */,\n\t\t\t\tF40B0D8A24D356A200663282 /* NSIndexSet+Analysis.h */,\n\t\t\t\tF40B0D8B24D356A200663282 /* NSIndexSet+Analysis.m */,\n\t\t\t\tF45F2F592538EF3F0030A402 /* NSFileManager+ExtendedAttributes.h */,\n\t\t\t\tF45F2F5A2538EF3F0030A402 /* NSFileManager+ExtendedAttributes.m */,\n\t\t\t\tF464FA1325D2DA2A00E024A3 /* NSSet+WBExtensions.h */,\n\t\t\t\tF464FA1425D2DA2A00E024A3 /* NSSet+WBExtensions.m */,\n\t\t\t\tF4FA4321273EF2F30068EDB8 /* NSString+CPU.h */,\n\t\t\t\tF4FA4322273EF2F30068EDB8 /* NSString+CPU.m */,\n\t\t\t);\n\t\t\tname = \"Foundation + Extensions\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF40B0D8224D3568A00663282 /* AppKit + Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF40B0D8324D3569800663282 /* NSColor+LabelColor.h */,\n\t\t\t\tF40B0D8424D3569800663282 /* NSColor+LabelColor.m */,\n\t\t\t\tF40B0D9624D3572E00663282 /* NSColor+String.h */,\n\t\t\t\tF40B0D9524D3572E00663282 /* NSColor+String.m */,\n\t\t\t\tF40B0D8624D3569800663282 /* NSResponder+Appearance.h */,\n\t\t\t\tF40B0D8524D3569800663282 /* NSResponder+Appearance.m */,\n\t\t\t\tF40B0D9324D3571B00663282 /* NSTableView+Selection.h */,\n\t\t\t\tF40B0D9224D3571A00663282 /* NSTableView+Selection.m */,\n\t\t\t\tF40B0D8F24D356F900663282 /* NSToolbar+Packages.h */,\n\t\t\t\tF40B0D9024D356F900663282 /* NSToolbar+Packages.m */,\n\t\t\t);\n\t\t\tname = \"AppKit + Extensions\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF40B77DB24AF163F001A8131 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF45442A724AF355700EE79E4 /* CUICaptionView.h */,\n\t\t\t\tF45442A824AF355700EE79E4 /* CUICaptionView.m */,\n\t\t\t\tF4F2A9D124BB809200F912D4 /* CUICrashLogsSourceTableCellView.h */,\n\t\t\t\tF4F2A9D224BB809200F912D4 /* CUICrashLogsSourceTableCellView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF423818E267D3511003837AC /* RemoteVersionChecker */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF423818F267D3521003837AC /* WBRemoteVersionChecker.h */,\n\t\t\t\tF4238190267D3522003837AC /* WBRemoteVersionChecker.m */,\n\t\t\t\tF4D6C56A2680028200B78B3D /* Resources */,\n\t\t\t);\n\t\t\tname = RemoteVersionChecker;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF423D8CA2673F5F200E2D31D /* Panels */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF419376D2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.h */,\n\t\t\t\tF419376E2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.m */,\n\t\t\t\tF4A9967B2675078A0001B40E /* CUICrashLogsOpenErrorWindowController.xib */,\n\t\t\t);\n\t\t\tname = Panels;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF428C0402724591300FB8CAC /* ips model */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF428C0652724592C00FB8CAC /* IPSApplicationSpecificInformation.h */,\n\t\t\t\tF428C04B2724592A00FB8CAC /* IPSApplicationSpecificInformation.m */,\n\t\t\t\tF428C0672724592C00FB8CAC /* IPSBundleInfo.h */,\n\t\t\t\tF428C0532724592A00FB8CAC /* IPSBundleInfo.m */,\n\t\t\t\tF428C05C2724592B00FB8CAC /* IPSDateFormatter.h */,\n\t\t\t\tF428C04A2724592A00FB8CAC /* IPSDateFormatter.m */,\n\t\t\t\tF428C04F2724592A00FB8CAC /* IPSError.h */,\n\t\t\t\tF428C05B2724592B00FB8CAC /* IPSError.m */,\n\t\t\t\tF428C06F2724592D00FB8CAC /* IPSException.h */,\n\t\t\t\tF428C0542724592A00FB8CAC /* IPSException.m */,\n\t\t\t\tF4BD8C682DF4DDCA00BD61A8 /* IPSExceptionReason.h */,\n\t\t\t\tF4BD8C692DF4DDCA00BD61A8 /* IPSExceptionReason.m */,\n\t\t\t\tF428C0642724592C00FB8CAC /* IPSExternalModificationStatistics.h */,\n\t\t\t\tF428C0502724592A00FB8CAC /* IPSExternalModificationStatistics.m */,\n\t\t\t\tF428C05A2724592B00FB8CAC /* IPSExternalModificationSummary.h */,\n\t\t\t\tF428C04E2724592A00FB8CAC /* IPSExternalModificationSummary.m */,\n\t\t\t\tF428C0632724592B00FB8CAC /* IPSImage.h */,\n\t\t\t\tF428C0412724592900FB8CAC /* IPSImage.m */,\n\t\t\t\tF428C0482724592900FB8CAC /* IPSIncident.h */,\n\t\t\t\tF428C06A2724592C00FB8CAC /* IPSIncident.m */,\n\t\t\t\tF428C06B2724592C00FB8CAC /* IPSIncidentDiagnosticMessage.h */,\n\t\t\t\tF428C0442724592900FB8CAC /* IPSIncidentDiagnosticMessage.m */,\n\t\t\t\tF428C0582724592B00FB8CAC /* IPSIncidentExceptionInformation.h */,\n\t\t\t\tF428C0432724592900FB8CAC /* IPSIncidentExceptionInformation.m */,\n\t\t\t\tF428C06D2724592C00FB8CAC /* IPSIncidentHeader.h */,\n\t\t\t\tF428C0422724592900FB8CAC /* IPSIncidentHeader.m */,\n\t\t\t\tF428C0662724592C00FB8CAC /* IPSLegacyInfo.h */,\n\t\t\t\tF428C0682724592C00FB8CAC /* IPSLegacyInfo.m */,\n\t\t\t\tF428C0552724592A00FB8CAC /* IPSObjectProtocol.h */,\n\t\t\t\tF428C06E2724592D00FB8CAC /* IPSOperatingSystemVersion.h */,\n\t\t\t\tF428C05E2724592B00FB8CAC /* IPSOperatingSystemVersion.m */,\n\t\t\t\tF428C06C2724592C00FB8CAC /* IPSRegisterState.h */,\n\t\t\t\tF428C0492724592900FB8CAC /* IPSRegisterState.m */,\n\t\t\t\tF428C0512724592A00FB8CAC /* IPSReport.h */,\n\t\t\t\tF428C0452724592900FB8CAC /* IPSReport.m */,\n\t\t\t\tF428C0562724592A00FB8CAC /* IPSSummary.h */,\n\t\t\t\tF428C04C2724592A00FB8CAC /* IPSSummary.m */,\n\t\t\t\tF4440FDF282C4103003C810B /* IPSCrashSummary.h */,\n\t\t\t\tF4440FDD282C4103003C810B /* IPSCrashSummary.m */,\n\t\t\t\tF4440FDE282C4103003C810B /* IPSSummarySerialization.h */,\n\t\t\t\tF4440FDC282C4103003C810B /* IPSSummarySerialization.m */,\n\t\t\t\tF428C0522724592A00FB8CAC /* IPSTermination.h */,\n\t\t\t\tF428C04D2724592A00FB8CAC /* IPSTermination.m */,\n\t\t\t\tF428C0692724592C00FB8CAC /* IPSThread.h */,\n\t\t\t\tF428C0572724592A00FB8CAC /* IPSThread.m */,\n\t\t\t\tF428C05D2724592B00FB8CAC /* IPSThreadFrame.h */,\n\t\t\t\tF428C0592724592B00FB8CAC /* IPSThreadFrame.m */,\n\t\t\t\tF428C05F2724592B00FB8CAC /* IPSThreadInstructionState.h */,\n\t\t\t\tF428C0462724592900FB8CAC /* IPSThreadInstructionState.m */,\n\t\t\t\tF428C0602724592B00FB8CAC /* IPSThreadInstructionStream.h */,\n\t\t\t\tF428C0472724592900FB8CAC /* IPSThreadInstructionStream.m */,\n\t\t\t\tF428C0612724592B00FB8CAC /* IPSThreadState.h */,\n\t\t\t\tF428C0622724592B00FB8CAC /* IPSThreadState.m */,\n\t\t\t);\n\t\t\tname = \"ips model\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF428C08727245BBF00FB8CAC /* ips model + Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4DAF0B127C44AA700256EA4 /* IPSImage+Offset.h */,\n\t\t\t\tF4DAF0B227C44AA700256EA4 /* IPSImage+Offset.m */,\n\t\t\t\tF4D14D672745C0A9003698AD /* IPSImage+UserCode.h */,\n\t\t\t\tF4D14D662745C0A9003698AD /* IPSImage+UserCode.m */,\n\t\t\t\tF4CF6CF52DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.h */,\n\t\t\t\tF4CF6CF42DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.m */,\n\t\t\t\tF4D0EE94273DB8CC00CC9737 /* IPSThreadState+RegisterDisplayName.h */,\n\t\t\t\tF4D0EE93273DB8CC00CC9737 /* IPSThreadState+RegisterDisplayName.m */,\n\t\t\t);\n\t\t\tname = \"ips model + Extensions\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4341C68258EB8B8001A5605 /* CrashReporterPreferences */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4341C69258EB8FE001A5605 /* CUICrashReporterDefaults.h */,\n\t\t\t\tF4341C6A258EB8FE001A5605 /* CUICrashReporterDefaults.m */,\n\t\t\t);\n\t\t\tname = CrashReporterPreferences;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF43D8FF224A7FA97008147F9 /* UI */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF423D8CA2673F5F200E2D31D /* Panels */,\n\t\t\t\tF4040A7324F5B9B40072BF65 /* Views */,\n\t\t\t\tF46198E724CA390700FA9717 /* CUICrashLogBacktraces+Utilities.h */,\n\t\t\t\tF46198E824CA390700FA9717 /* CUICrashLogBacktraces+Utilities.m */,\n\t\t\t\tF416687124B0AF4D00C2AB89 /* CUICenteredLabelViewController.h */,\n\t\t\t\tF416687224B0AF4D00C2AB89 /* CUICenteredLabelViewController.m */,\n\t\t\t\tF4CE83DD2554B97300A8BD87 /* CUICenteredLabelViewController.xib */,\n\t\t\t\tF4B74C1624B233C900CD1E60 /* CUIRightViewController.h */,\n\t\t\t\tF4B74C1724B233C900CD1E60 /* CUIRightViewController.m */,\n\t\t\t\tF4B74C1824B233C900CD1E60 /* CUIRightViewController.xib */,\n\t\t\t\tF42B57E024ABEF6E00F77ED5 /* CUICallsSelection.h */,\n\t\t\t\tF42B57E124ABEF6E00F77ED5 /* CUICallsSelection.m */,\n\t\t\t\tF44356FD24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.h */,\n\t\t\t\tF44356FE24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.m */,\n\t\t\t\tF4F1C31624F950FC00D1A7A0 /* Exception Info Controller */,\n\t\t\t\tF416688024B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.h */,\n\t\t\t\tF416688124B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.m */,\n\t\t\t\tF4E1C10E24C22CA0000F5C0F /* Presentation Text */,\n\t\t\t\tF4E1C10F24C22CB1000F5C0F /* Presentation Outline */,\n\t\t\t\tF4545C38256C1ADB00F62A39 /* Registers Palette */,\n\t\t\t\tF48BAB3425D9D4140005F3E5 /* CUIThreadImageCell.h */,\n\t\t\t\tF48BAB3525D9D4140005F3E5 /* CUIThreadImageCell.m */,\n\t\t\t\tD0790DBB2E00BACF00CD6A72 /* CUIThreadImageView.h */,\n\t\t\t\tD0790DBC2E00BACF00CD6A72 /* CUIThreadImageView.m */,\n\t\t\t\tF48906AC25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.h */,\n\t\t\t\tF48906AD25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.m */,\n\t\t\t\tF442FCEA24AB855C00E87B69 /* CUIBinaryImagesViewController.h */,\n\t\t\t\tF442FCEB24AB855C00E87B69 /* CUIBinaryImagesViewController.m */,\n\t\t\t\tF45A2D6B25EC602B0007D50E /* CUIBinaryImagesViewController.xib */,\n\t\t\t\tF416687624B0BA5000C2AB89 /* CUICrashLogContentsViewController.h */,\n\t\t\t\tF416687724B0BA5000C2AB89 /* CUICrashLogContentsViewController.m */,\n\t\t\t\tF416687824B0BA5000C2AB89 /* CUICrashLogContentsViewController.xib */,\n\t\t\t\tF4F8D26624F29624007661D6 /* CUIPresentationTextNavigationViewController.h */,\n\t\t\t\tF4F8D26724F29624007661D6 /* CUIPresentationTextNavigationViewController.m */,\n\t\t\t\tF4F8D26824F29624007661D6 /* CUIPresentationTextNavigationViewController.xib */,\n\t\t\t\tF416686C24B0AEE800C2AB89 /* CUIContentsViewController.h */,\n\t\t\t\tF416686D24B0AEE800C2AB89 /* CUIContentsViewController.m */,\n\t\t\t\tF416686E24B0AEE800C2AB89 /* CUIContentsViewController.xib */,\n\t\t\t\tF416688324B0BF2000C2AB89 /* CUISidebarViewController.h */,\n\t\t\t\tF416688424B0BF2000C2AB89 /* CUISidebarViewController.m */,\n\t\t\t\tF416688524B0BF2000C2AB89 /* CUISidebarViewController.xib */,\n\t\t\t\tF464F20924ACF9CF007A3A96 /* CUICrashLogsMainViewController.h */,\n\t\t\t\tF464F20A24ACF9CF007A3A96 /* CUICrashLogsMainViewController.m */,\n\t\t\t\tF464F20B24ACF9CF007A3A96 /* CUICrashLogsMainViewController.xib */,\n\t\t\t\tF4EFE75024BA48F500DB97AC /* CUIMainWindow.h */,\n\t\t\t\tF4EFE75124BA48F500DB97AC /* CUIMainWindow.m */,\n\t\t\t\tF4FE2DE525613B5400C1774A /* CUIKeyViews.h */,\n\t\t\t\tF43D8FF424A7FAD2008147F9 /* CUIMainWindowController.h */,\n\t\t\t\tF43D8FF524A7FAD2008147F9 /* CUIMainWindowController.m */,\n\t\t\t\tF4055C8325EEE37400DC6CCA /* CUIMainWindowController.xib */,\n\t\t\t);\n\t\t\tname = UI;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF43D8FF324A7FA9F008147F9 /* Model */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF405A96E25501A5F00AD2F24 /* CUIParsingErrors.h */,\n\t\t\t\tF405A96F25501A5F00AD2F24 /* CUIParsingErrors.m */,\n\t\t\t\tF4651F8424B297420090DF10 /* CUIOperatingSystemVersion.h */,\n\t\t\t\tF4651F8524B297420090DF10 /* CUIOperatingSystemVersion.m */,\n\t\t\t\tF4C269CE2503BE6500C8F3B3 /* CUISymbolicationData.h */,\n\t\t\t\tF4C269CF2503BE6500C8F3B3 /* CUISymbolicationData.m */,\n\t\t\t\tF49A6D7F25476F7B00466D15 /* CUISymbolicationDataFormatter.h */,\n\t\t\t\tF49A6D8025476F7B00466D15 /* CUISymbolicationDataFormatter.m */,\n\t\t\t\tF4871E0B25437A6A00580562 /* CUISymbolicationDataCache.h */,\n\t\t\t\tF4871E0C25437A6A00580562 /* CUISymbolicationDataCache.m */,\n\t\t\t\tF4C269CB2503BCC100C8F3B3 /* CUISymbolicationManager.h */,\n\t\t\t\tF4C269CC2503BCC100C8F3B3 /* CUISymbolicationManager.m */,\n\t\t\t\tF45B518A24AFA04000E97B87 /* CUICrashLogsSelection.h */,\n\t\t\t\tF45B518B24AFA04000E97B87 /* CUICrashLogsSelection.m */,\n\t\t\t\tF4559F3524AF232800B8EF41 /* CUICrashLogHeader.h */,\n\t\t\t\tF4559F3624AF232800B8EF41 /* CUICrashLogHeader.m */,\n\t\t\t\tF469AB2324B3DDEA0053C824 /* CUICrashLogExceptionInformation.h */,\n\t\t\t\tF469AB2424B3DDEA0053C824 /* CUICrashLogExceptionInformation.m */,\n\t\t\t\tF4FE2DE825615CA800C1774A /* CUICrashLogExceptionInformation+UI.h */,\n\t\t\t\tF4FE2DE925615CA800C1774A /* CUICrashLogExceptionInformation+UI.m */,\n\t\t\t\tF414D08C24BFB57700A7095C /* CUICrashLogDianosticMessages.h */,\n\t\t\t\tF414D08D24BFB57700A7095C /* CUICrashLogDianosticMessages.m */,\n\t\t\t\tF414D08F24BFBC3A00A7095C /* CUICrashLogBacktraces.h */,\n\t\t\t\tF414D09024BFBC3A00A7095C /* CUICrashLogBacktraces.m */,\n\t\t\t\tF414D09224BFBC4A00A7095C /* CUICrashLogThreadState.h */,\n\t\t\t\tF414D09324BFBC4A00A7095C /* CUICrashLogThreadState.m */,\n\t\t\t\tF4306D572577E168007E667F /* CUICrashLogThreadState+UI.h */,\n\t\t\t\tF4306D582577E168007E667F /* CUICrashLogThreadState+UI.m */,\n\t\t\t\tF414D09524BFBC6300A7095C /* CUICrashLogBinaryImages.h */,\n\t\t\t\tF414D09624BFBC6300A7095C /* CUICrashLogBinaryImages.m */,\n\t\t\t\tF464F20E24ACFBA1007A3A96 /* CUIRegister.h */,\n\t\t\t\tF464F20F24ACFBA1007A3A96 /* CUIRegister.m */,\n\t\t\t\tF4BBAC5B24AA7D37000511BE /* CUIBinaryImage.h */,\n\t\t\t\tF4BBAC5C24AA7D37000511BE /* CUIBinaryImage.m */,\n\t\t\t\tF4ED75882501A29700316E73 /* CUIStackFrame.h */,\n\t\t\t\tF4ED75892501A29700316E73 /* CUIStackFrame.m */,\n\t\t\t\tF4CC573124A7ABAF00150EC4 /* CUICallStackBacktrace.h */,\n\t\t\t\tF4CC573224A7ABAF00150EC4 /* CUICallStackBacktrace.m */,\n\t\t\t\tF49227C624A8D45000772411 /* CUIStackFrame+UI.h */,\n\t\t\t\tF49227C724A8D45000772411 /* CUIStackFrame+UI.m */,\n\t\t\t\tF4CC572E24A7A95A00150EC4 /* CUIThread.h */,\n\t\t\t\tF4CC572F24A7A95A00150EC4 /* CUIThread.m */,\n\t\t\t\tF4BD69FE25553E8F00F98F3E /* CUICrashLogSectionsDetector.h */,\n\t\t\t\tF4BD69FF25553E9000F98F3E /* CUICrashLogSectionsDetector.m */,\n\t\t\t\tF4E861B8255496310061E203 /* CUIRawCrashLog.h */,\n\t\t\t\tF4E861B9255496310061E203 /* CUIRawCrashLog.m */,\n\t\t\t\tF4A769682555D9DD00F9D9D3 /* CUIRawCrashLog+UI.h */,\n\t\t\t\tF4A769692555D9DD00F9D9D3 /* CUIRawCrashLog+UI.m */,\n\t\t\t\tF43362FC25FCEFBA006E7894 /* CUIRawCrashLog+Path.h */,\n\t\t\t\tF43362FD25FCEFBA006E7894 /* CUIRawCrashLog+Path.m */,\n\t\t\t\tF497303B25F7A121001D01FE /* CUICodeType.h */,\n\t\t\t\tF4CC572524A7A2B200150EC4 /* CUICrashLog.h */,\n\t\t\t\tF4CC572624A7A2B200150EC4 /* CUICrashLog.m */,\n\t\t\t\tF4EBADB224A8F04F00DF4271 /* CUICrashLog+UI.h */,\n\t\t\t\tF4EBADB324A8F04F00DF4271 /* CUICrashLog+UI.m */,\n\t\t\t\tF4CC572B24A7A5F000150EC4 /* CUICrashLog+Transform.h */,\n\t\t\t\tF4CC572C24A7A5F000150EC4 /* CUICrashLog+Transform.m */,\n\t\t\t\tF4CC572224A7A1D100150EC4 /* CUICrashLogsProvider.h */,\n\t\t\t\tF4CC572324A7A1D100150EC4 /* CUICrashLogsProvider.m */,\n\t\t\t\tF47F7666267355EA00A74905 /* CUICrashLogErrors.h */,\n\t\t\t\tF47F7667267355EA00A74905 /* CUICrashLogErrors.m */,\n\t\t\t\tF47F76632673548600A74905 /* CUICrashLogsOpenErrorRecord.h */,\n\t\t\t\tF47F76642673548600A74905 /* CUICrashLogsOpenErrorRecord.m */,\n\t\t\t\tF47F76602673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.h */,\n\t\t\t\tF47F76612673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.m */,\n\t\t\t\tF4386B0E2849541B00B83525 /* CUICrashLogExceptionInformation+QuickHelp.h */,\n\t\t\t\tF4386B0D2849541B00B83525 /* CUICrashLogExceptionInformation+QuickHelp.m */,\n\t\t\t);\n\t\t\tname = Model;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF44A5F3824CCE28F006B59B8 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4E1C12124C22FEE000F5C0F /* CUILightTableVisibleInterGapView.h */,\n\t\t\t\tF4E1C12224C22FEE000F5C0F /* CUILightTableVisibleInterGapView.m */,\n\t\t\t\tF44A5F3C24CCE2D6006B59B8 /* CUILightTableThreadView.h */,\n\t\t\t\tF44A5F3D24CCE2D6006B59B8 /* CUILightTableThreadView.m */,\n\t\t\t\tF4E1C11E24C22FB5000F5C0F /* CUILightTableVisibleThreadView.h */,\n\t\t\t\tF4E1C11F24C22FB5000F5C0F /* CUILightTableVisibleThreadView.m */,\n\t\t\t\tF44A5F3924CCE2B6006B59B8 /* CUILightTableDockedThreadView.h */,\n\t\t\t\tF44A5F3A24CCE2B6006B59B8 /* CUILightTableDockedThreadView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF44E7B7A255C831B00025C04 /* Noodle */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF44E7B7B255C83D500025C04 /* NoodleLineNumberMarker.h */,\n\t\t\t\tF44E7B7D255C83D500025C04 /* NoodleLineNumberMarker.m */,\n\t\t\t\tF44E7B7E255C83D500025C04 /* NoodleLineNumberView.h */,\n\t\t\t\tF44E7B7C255C83D500025C04 /* NoodleLineNumberView.m */,\n\t\t\t);\n\t\t\tname = Noodle;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4545C38256C1ADB00F62A39 /* Registers Palette */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4D5C77D2571AF980029B051 /* Views */,\n\t\t\t\tF4627F0F25704557007E5CD0 /* CUICollectionViewRegisterItem.h */,\n\t\t\t\tF4627F1025704557007E5CD0 /* CUICollectionViewRegisterItem.m */,\n\t\t\t\tF46D77AD25ED9EAE00039663 /* CUICollectionViewRegisterItem.xib */,\n\t\t\t\tF4F892FF2575A77000BE4CE0 /* Controllers */,\n\t\t\t);\n\t\t\tname = \"Registers Palette\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45F84D4266ABB5800F354F3 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF45F84D8266ABB5800F354F3 /* crashreport.qlgenerator */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46198EA24CA41E900FA9717 /* Inspector */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF46198EB24CA457E00FA9717 /* Views */,\n\t\t\t\tF493DB1924F1C19F001AA8C0 /* Controllers */,\n\t\t\t\tF41ECA5024AB689B00CE56C7 /* CUIInspectorViewController.h */,\n\t\t\t\tF41ECA5124AB689B00CE56C7 /* CUIInspectorViewController.m */,\n\t\t\t\tF41ECA5224AB689B00CE56C7 /* CUIInspectorViewController.xib */,\n\t\t\t);\n\t\t\tname = Inspector;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46198EB24CA457E00FA9717 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4E671902E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.h */,\n\t\t\t\tF4E671912E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.m */,\n\t\t\t\tF46198EC24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.h */,\n\t\t\t\tF46198ED24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF480692924AF7D4E009665F2 /* Logs */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4EAFA2924FA538F00C0B729 /* Views */,\n\t\t\t\tF480692A24AF7D5A009665F2 /* Controllers */,\n\t\t\t);\n\t\t\tname = Logs;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF480692A24AF7D5A009665F2 /* Controllers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF480692B24AF7D83009665F2 /* CUICrashLogsListViewController.h */,\n\t\t\t\tF480692C24AF7D83009665F2 /* CUICrashLogsListViewController.m */,\n\t\t\t\tF45A2D7325EC60D90007D50E /* CUICrashLogsListViewController.xib */,\n\t\t\t);\n\t\t\tname = Controllers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4871DF125435AE500580562 /* DWARF */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4871DFC25435AF300580562 /* DWRFEnums.h */,\n\t\t\t\tF4871DF625435AF300580562 /* LEB128.h */,\n\t\t\t\tF4871DFE25435AF400580562 /* LEB128.c */,\n\t\t\t\tF4871E0025435AF400580562 /* DWRFObject.h */,\n\t\t\t\tF4871E0125435AF400580562 /* DWRFObject.m */,\n\t\t\t\tF4871DF425435AF300580562 /* DWRFFileObject.h */,\n\t\t\t\tF4871DFB25435AF300580562 /* DWRFFileObject.m */,\n\t\t\t\tF4871DFF25435AF400580562 /* DWRFSection_debug_abbrev.h */,\n\t\t\t\tF4871DF925435AF300580562 /* DWRFSection_debug_abbrev.m */,\n\t\t\t\tF4871DFD25435AF300580562 /* DWRFSection_debug_aranges.h */,\n\t\t\t\tF4871E0225435AF400580562 /* DWRFSection_debug_aranges.m */,\n\t\t\t\tF4871DF825435AF300580562 /* DWRFSection_debug_info.h */,\n\t\t\t\tF4871DF225435AF300580562 /* DWRFSection_debug_info.m */,\n\t\t\t\tF4871DF525435AF300580562 /* DWRFSection_debug_line.h */,\n\t\t\t\tF4871DF725435AF300580562 /* DWRFSection_debug_line.m */,\n\t\t\t\tF4871DFA25435AF300580562 /* DWRFSection_debug_str.h */,\n\t\t\t\tF4871DF325435AF300580562 /* DWRFSection_debug_str.m */,\n\t\t\t\tF4F5821A256FC7B90032FC53 /* DWRFSection_debug_str_offsets.h */,\n\t\t\t\tF4F5821B256FC7B90032FC53 /* DWRFSection_debug_str_offsets.m */,\n\t\t\t\tF43AF0CF256FE2AE0066CA1B /* DWRFSection_debug_addr.h */,\n\t\t\t\tF43AF0D0256FE2AE0066CA1B /* DWRFSection_debug_addr.m */,\n\t\t\t);\n\t\t\tname = DWARF;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF493DB1924F1C19F001AA8C0 /* Controllers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B649D524EDD09A00008C47 /* CUIInspectorStackableViewController.h */,\n\t\t\t\tF4B649D624EDD09A00008C47 /* CUIInspectorStackableViewController.m */,\n\t\t\t\tF4F9BAF424EF06BC00D08FBD /* CUIInspectorGeneralViewController.h */,\n\t\t\t\tF4F9BAF524EF06BC00D08FBD /* CUIInspectorGeneralViewController.m */,\n\t\t\t\tF46D779D25ED8D1800039663 /* CUIInspectorGeneralViewController.xib */,\n\t\t\t\tF4F9BAEF24EF060E00D08FBD /* CUIInspectorUserViewController.h */,\n\t\t\t\tF4F9BAF024EF060E00D08FBD /* CUIInspectorUserViewController.m */,\n\t\t\t\tF46D77A125ED8D3600039663 /* CUIInspectorUserViewController.xib */,\n\t\t\t\tF4B649D024EDCD2300008C47 /* CUIInspectorExecutableViewController.h */,\n\t\t\t\tF4B649D124EDCD2300008C47 /* CUIInspectorExecutableViewController.m */,\n\t\t\t\tF46D77A525ED8D5700039663 /* CUIInspectorExecutableViewController.xib */,\n\t\t\t\tD06294352E1DD8150008895D /* CUICodeSigningInformationViewController.h */,\n\t\t\t\tD06294362E1DD8150008895D /* CUICodeSigningInformationViewController.m */,\n\t\t\t\tF4E671942E2C405F00E5A064 /* CodeSigningFlags.plist */,\n\t\t\t\tF45DED6B2E350F07008F4CE8 /* CUICodeSigningInformationViewController.xib */,\n\t\t\t\tF4B649D824EDD64900008C47 /* CUIInspectorProcessesViewController.h */,\n\t\t\t\tF4B649D924EDD64900008C47 /* CUIInspectorProcessesViewController.m */,\n\t\t\t\tF46D77A925ED8E3B00039663 /* CUIInspectorProcessesViewController.xib */,\n\t\t\t);\n\t\t\tname = Controllers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF49673F524D0CF3B00716289 /* Preferences */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF40B0D7724D3557F00663282 /* Views */,\n\t\t\t\tF496740024D0D04400716289 /* Controllers */,\n\t\t\t\tF49673FB24D0CF6400716289 /* CUIPreferencesWindowController.h */,\n\t\t\t\tF49673FC24D0CF6400716289 /* CUIPreferencesWindowController.m */,\n\t\t\t\tF40B124724E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.h */,\n\t\t\t\tF40B124824E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.m */,\n\t\t\t\tF45A2D5F25EC5CA00007D50E /* CUIPreferencesWindowController.xib */,\n\t\t\t);\n\t\t\tname = Preferences;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF496740024D0D04400716289 /* Controllers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF496740124D0D05800716289 /* CUIPreferencePaneViewController.h */,\n\t\t\t\tF496740224D0D05800716289 /* CUIPreferencePaneViewController.m */,\n\t\t\t\tF4F5395624D21DB800D537BC /* CUIPreferencePaneGeneralViewController.h */,\n\t\t\t\tF4F5395724D21DB800D537BC /* CUIPreferencePaneGeneralViewController.m */,\n\t\t\t\tF4A3A6E525ED81260018053E /* CUIPreferencePaneGeneralViewController.xib */,\n\t\t\t\tF43C828524D892620096F27B /* CUIPreferencePanePresentationTextViewController.h */,\n\t\t\t\tF43C828624D892620096F27B /* CUIPreferencePanePresentationTextViewController.m */,\n\t\t\t\tF495AEBE25F029C2000D92E1 /* CUIPreferencePanePresentationTextViewController.xib */,\n\t\t\t\tF4577BE72592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.h */,\n\t\t\t\tF4577BE82592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.m */,\n\t\t\t\tF495AEC225F02F74000D92E1 /* CUIPreferencePanePresentationOutlineViewController.xib */,\n\t\t\t\tF41D66AD25921F3400C0D491 /* CUIPreferencePanePresentationViewController.h */,\n\t\t\t\tF41D66AE25921F3400C0D491 /* CUIPreferencePanePresentationViewController.m */,\n\t\t\t\tF4301A6A25EF0DE000ACDA3F /* CUIPreferencePanePresentationViewController.xib */,\n\t\t\t\tF496740724D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.h */,\n\t\t\t\tF496740824D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.m */,\n\t\t\t\tF45A2D6325EC5D130007D50E /* CUIPreferencePaneFontscolorsViewController.xib */,\n\t\t\t\tF489441F2545836F00E3E360 /* CUISymbolsFilesLibraryViewController.h */,\n\t\t\t\tF48944202545836F00E3E360 /* CUISymbolsFilesLibraryViewController.m */,\n\t\t\t\tF4D7F15D25F04A620024E9A5 /* CUISymbolsFilesLibraryViewController.xib */,\n\t\t\t\tF4CD32B3257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.h */,\n\t\t\t\tF4CD32B4257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.m */,\n\t\t\t\tF4D7F16125F04A9D0024E9A5 /* CUIPreferencePaneSymbolicationViewController.xib */,\n\t\t\t\tF4B67835258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.h */,\n\t\t\t\tF4B67836258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.m */,\n\t\t\t\tF4A3A6E925ED817E0018053E /* CUIPreferencePaneCrashreporterViewController.xib */,\n\t\t\t\tF4238189267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.h */,\n\t\t\t\tF423818A267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.m */,\n\t\t\t\tF406B49B2687AB1400B90C7B /* CUIPreferencePaneAdvancedViewController.xib */,\n\t\t\t);\n\t\t\tname = Controllers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF497AD5224B8FE51008517B7 /* Panel */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF497AD5324B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.h */,\n\t\t\t\tF497AD5424B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.m */,\n\t\t\t\tF4A3A6E125ED7F450018053E /* CUICrashLogsSourceSmartEditorWindowController.xib */,\n\t\t\t);\n\t\t\tname = Panel;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A0BEE0261BC38800BADEED /* clock */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B018362620FEC7009727F1 /* CUIApplicationIconView.h */,\n\t\t\t\tF4B018352620FEC7009727F1 /* CUIApplicationIconView.m */,\n\t\t\t\tF4A0BEEC261BC39700BADEED /* CUIWatchAxis.h */,\n\t\t\t\tF4A0BEE6261BC39600BADEED /* CUIWatchAxis.m */,\n\t\t\t\tF4A0BEEE261BC39700BADEED /* CUIWatchBridge.h */,\n\t\t\t\tF4A0BEED261BC39700BADEED /* CUIWatchBridge.m */,\n\t\t\t\tF4A0BEE9261BC39700BADEED /* CUIWatchDrawablePart.h */,\n\t\t\t\tF4A0BEE4261BC39600BADEED /* CUIWatchGear.h */,\n\t\t\t\tF4A0BEE2261BC39600BADEED /* CUIWatchGear.m */,\n\t\t\t\tF4A0BEF0261BC39700BADEED /* CUIWatchJewel.h */,\n\t\t\t\tF4A0BEE3261BC39600BADEED /* CUIWatchJewel.m */,\n\t\t\t\tF4A0BEE8261BC39600BADEED /* CUIWatchPart.h */,\n\t\t\t\tF4A0BEEB261BC39700BADEED /* CUIWatchPart.m */,\n\t\t\t\tF4A0BEE1261BC39600BADEED /* CUIWatchScrew.h */,\n\t\t\t\tF4A0BEEF261BC39700BADEED /* CUIWatchScrew.m */,\n\t\t\t\tF4B018342620FEBB009727F1 /* Resources */,\n\t\t\t);\n\t\t\tname = clock;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A43E80257ECE81005D076C /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF45854F925C76591007A3A79 /* Unexpectedly_Acknowledgements.pdf */,\n\t\t\t\tF45854F825C76590007A3A79 /* Unexpectedly_License.pdf */,\n\t\t\t\tF45A2D6725EC5F850007D50E /* CUIAboutBoxWindowController.xib */,\n\t\t\t);\n\t\t\tname = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A43E81257ECE8A005D076C /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4E0BD23262078220048647C /* CUIAboutBoxWindow.h */,\n\t\t\t\tF4E0BD24262078220048647C /* CUIAboutBoxWindow.m */,\n\t\t\t\tF476EEC025686EC000F40F87 /* CUIContentBox.h */,\n\t\t\t\tF476EEBF25686EC000F40F87 /* CUIContentBox.m */,\n\t\t\t\tF476EEBC25686DEF00F40F87 /* CUIAboutBoxFooterView.h */,\n\t\t\t\tF476EEBD25686DEF00F40F87 /* CUIAboutBoxFooterView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4AA22B32561A206001A1315 /* About Box */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4A0BEE0261BC38800BADEED /* clock */,\n\t\t\t\tF4A43E81257ECE8A005D076C /* Views */,\n\t\t\t\tF4AA22B42561A233001A1315 /* CUIAboutBoxWindowController.h */,\n\t\t\t\tF4AA22B52561A233001A1315 /* CUIAboutBoxWindowController.m */,\n\t\t\t\tF4A43E80257ECE81005D076C /* Resources */,\n\t\t\t);\n\t\t\tname = \"About Box\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4B018342620FEBB009727F1 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4A0BEE5261BC39600BADEED /* brushed-alum.png */,\n\t\t\t);\n\t\t\tname = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4B138542522945E00D9DE2F /* dSYM */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B138552522948700D9DE2F /* NSBundle+dSYM.h */,\n\t\t\t\tF4B138562522948700D9DE2F /* NSBundle+dSYM.m */,\n\t\t\t\tF4871DBE2543566E00580562 /* CUIdSYMBundle.h */,\n\t\t\t\tF4871DBF2543566E00580562 /* CUIdSYMBundle.m */,\n\t\t\t\tF4B52E1F2548B8B4007593FD /* CUIdSYMBundle+UI.h */,\n\t\t\t\tF4B52E202548B8B4007593FD /* CUIdSYMBundle+UI.m */,\n\t\t\t\tF4871E0E254384E100580562 /* CUIdSYMBundlesManager.h */,\n\t\t\t\tF4871E0F254384E100580562 /* CUIdSYMBundlesManager.m */,\n\t\t\t\tF420C9C2254F5F4C00D24249 /* CUIdSYMHunter.h */,\n\t\t\t\tF420C9C3254F5F4C00D24249 /* CUIdSYMHunter.m */,\n\t\t\t);\n\t\t\tname = dSYM;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4B9AD23253199EE0083FA6C /* Mach-o */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4B9AD2A25319A400083FA6C /* MCHMemoryBufferWrapper.h */,\n\t\t\t\tF4B9AD2425319A400083FA6C /* MCHMemoryBufferWrapper.m */,\n\t\t\t\tF4B9AD2725319A400083FA6C /* MCHMachBinary.h */,\n\t\t\t\tF4B9AD3025319A410083FA6C /* MCHMachBinary.m */,\n\t\t\t\tF4B9AD2525319A400083FA6C /* MCHObjectFile.h */,\n\t\t\t\tF4B9AD2825319A400083FA6C /* MCHObjectFile.m */,\n\t\t\t\tF4B9AD2925319A400083FA6C /* MCHLoadCommand.h */,\n\t\t\t\tF4B9AD2D25319A410083FA6C /* MCHLoadCommand.m */,\n\t\t\t\tF4B9AD2F25319A410083FA6C /* MCHUUIDLoadCommand.h */,\n\t\t\t\tF4B9AD2B25319A400083FA6C /* MCHUUIDLoadCommand.m */,\n\t\t\t\tF4B9AD3A25319D7C0083FA6C /* MCHSegmentLoadCommand.h */,\n\t\t\t\tF4B9AD3925319D7B0083FA6C /* MCHSegmentLoadCommand.m */,\n\t\t\t\tF4B9AD3125319A410083FA6C /* MCHSection.h */,\n\t\t\t\tF4B9AD2E25319A410083FA6C /* MCHSection.m */,\n\t\t\t\tF4B9AD2C25319A410083FA6C /* MCHSegment.h */,\n\t\t\t\tF4B9AD2625319A400083FA6C /* MCHSegment.m */,\n\t\t\t);\n\t\t\tname = \"Mach-o\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4BC576E24DF423C00063545 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4EAFA2A24FA6CD100C0B729 /* CUICrashLogTextView.h */,\n\t\t\t\tF4EAFA2B24FA6CD100C0B729 /* CUICrashLogTextView.m */,\n\t\t\t\tF47AF8BE255DE61E0037E2D8 /* NSCrashLogTextScrollView.h */,\n\t\t\t\tF47AF8BF255DE61E0037E2D8 /* NSCrashLogTextScrollView.m */,\n\t\t\t\tF44E7B7A255C831B00025C04 /* Noodle */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CC56F624A79EDA00150EC4 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF45F84D3266ABB5800F354F3 /* crashreport.xcodeproj */,\n\t\t\t\tF43BA4E425F2674100D8D68A /* SharedConfigurationSettings.xcconfig */,\n\t\t\t\tF43C828D24D8AD850096F27B /* CUIStackFrameComponents.h */,\n\t\t\t\tF428C0402724591300FB8CAC /* ips model */,\n\t\t\t\tF428C08727245BBF00FB8CAC /* ips model + Extensions */,\n\t\t\t\tF4DF813A2893460E008EF1B3 /* ips model + Obfuscating */,\n\t\t\t\tF4B9AD23253199EE0083FA6C /* Mach-o */,\n\t\t\t\tF405A96A255015B500AD2F24 /* Demangling */,\n\t\t\t\tF4871DF125435AE500580562 /* DWARF */,\n\t\t\t\tF40B0D8124D3568000663282 /* Foundation + Extensions */,\n\t\t\t\tF40B0D8224D3568A00663282 /* AppKit + Extensions */,\n\t\t\t\tD0BD22382F3FC6430052AD8E /* RSCore */,\n\t\t\t\tF4CC570124A79EDA00150EC4 /* app_unexpectedly */,\n\t\t\t\tF4CC570024A79EDA00150EC4 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CC570024A79EDA00150EC4 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4CC56FF24A79EDA00150EC4 /* Unexpectedly.app */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CC570124A79EDA00150EC4 /* app_unexpectedly */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF423818E267D3511003837AC /* RemoteVersionChecker */,\n\t\t\t\tF4341C68258EB8B8001A5605 /* CrashReporterPreferences */,\n\t\t\t\tF4CDFB50257EE1BC002A73D0 /* Views */,\n\t\t\t\tF4B138542522945E00D9DE2F /* dSYM */,\n\t\t\t\tF4CC570424A79EDA00150EC4 /* AppDelegate.h */,\n\t\t\t\tF4CC570524A79EDA00150EC4 /* AppDelegate.m */,\n\t\t\t\tF4AA22B32561A206001A1315 /* About Box */,\n\t\t\t\tF40ACE2B255697A3006855E5 /* CUICrashLogBrowsingState.h */,\n\t\t\t\tF40ACE2C255697A3006855E5 /* CUICrashLogBrowsingState.m */,\n\t\t\t\tF40ACE2E255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.h */,\n\t\t\t\tF40ACE2F255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.m */,\n\t\t\t\tF43C828A24D8A39B0096F27B /* CUITextModeDisplaySettings.h */,\n\t\t\t\tF43C828B24D8A39B0096F27B /* CUITextModeDisplaySettings.m */,\n\t\t\t\tF461CE8825F6DD75007CFDE7 /* CUIApplicationItemAttributes.h */,\n\t\t\t\tF461CE8925F6DD75007CFDE7 /* CUIApplicationItemAttributes.m */,\n\t\t\t\tF497303825F796E6001D01FE /* CUIHopperDisassemblerManager.h */,\n\t\t\t\tF497303925F796E6001D01FE /* CUIHopperDisassemblerManager.m */,\n\t\t\t\tF483844F24EB041B00FAEF5D /* CUIThemeItemsGroup.h */,\n\t\t\t\tF483845024EB041B00FAEF5D /* CUIThemeItemsGroup.m */,\n\t\t\t\tF483845724EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.h */,\n\t\t\t\tF483845824EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.m */,\n\t\t\t\tF40BEAEF24E9F754007A3F60 /* CUIThemeItemAttributes.h */,\n\t\t\t\tF40BEAF024E9F754007A3F60 /* CUIThemeItemAttributes.m */,\n\t\t\t\tF420F35024E95E5F006C82CD /* CUITheme.h */,\n\t\t\t\tF420F35124E95E5F006C82CD /* CUITheme.m */,\n\t\t\t\tF49C47C824E9B48B003FC65C /* CUIThemesManager.h */,\n\t\t\t\tF49C47C924E9B48B003FC65C /* CUIThemesManager.m */,\n\t\t\t\tF442FCEF24AB8A8B00E87B69 /* CUIBinaryImageUtility.h */,\n\t\t\t\tF442FCF024AB8A8B00E87B69 /* CUIBinaryImageUtility.m */,\n\t\t\t\tF496740C24D0D74A00716289 /* CUIApplicationPreferences.h */,\n\t\t\t\tF496740D24D0D74A00716289 /* CUIApplicationPreferences.m */,\n\t\t\t\tF483845424EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.h */,\n\t\t\t\tF483845524EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.m */,\n\t\t\t\tF49673F524D0CF3B00716289 /* Preferences */,\n\t\t\t\tF43D8FF324A7FA9F008147F9 /* Model */,\n\t\t\t\tF4CCCC6624AE83040031BC27 /* Sources */,\n\t\t\t\tF480692924AF7D4E009665F2 /* Logs */,\n\t\t\t\tF46198EA24CA41E900FA9717 /* Inspector */,\n\t\t\t\tF43D8FF224A7FA97008147F9 /* UI */,\n\t\t\t\tF4CC570924A79EDA00150EC4 /* Images.xcassets */,\n\t\t\t\tF4CC570724A79EDA00150EC4 /* main.m */,\n\t\t\t\tF497AD5B24B90481008517B7 /* app_unexpectedly_Prefix.pch */,\n\t\t\t\tF4CC570224A79EDA00150EC4 /* Supporting Files */,\n\t\t\t);\n\t\t\tpath = app_unexpectedly;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CC570224A79EDA00150EC4 /* Supporting Files */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF493DB1A24F1CF2F001AA8C0 /* Localizable.strings */,\n\t\t\t\tF46D2A2824C33FA200652D50 /* Predicates.strings */,\n\t\t\t\tF45DED6D2E3510D9008F4CE8 /* CodeSigning.strings */,\n\t\t\t\tF4CC570B24A79EDA00150EC4 /* MainMenu.xib */,\n\t\t\t\tF483845224EB11F700FAEF5D /* default_themes.plist */,\n\t\t\t\tF4CC570324A79EDA00150EC4 /* Info.plist */,\n\t\t\t\tF497303C25F7F74B001D01FE /* InfoPlist.strings */,\n\t\t\t\tF42D0BC225514B2E0021A551 /* template.source */,\n\t\t\t);\n\t\t\tname = \"Supporting Files\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CCCC6624AE83040031BC27 /* Sources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF497AD5224B8FE51008517B7 /* Panel */,\n\t\t\t\tF4CCCC6724AE83130031BC27 /* Model */,\n\t\t\t\tF4CCCC6F24AEA09B0031BC27 /* Model + UI */,\n\t\t\t\tF40B77DB24AF163F001A8131 /* Views */,\n\t\t\t\tF4CCCC6824AE831E0031BC27 /* Controllers */,\n\t\t\t);\n\t\t\tname = Sources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CCCC6724AE83130031BC27 /* Model */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4132C8D24AA19F70086B99C /* CUICrashLogsSource.h */,\n\t\t\t\tF4132C8E24AA19F70086B99C /* CUICrashLogsSource.m */,\n\t\t\t\tF4F2A9CE24BB7E3600F912D4 /* CUICrashLogsSourceSeparator.h */,\n\t\t\t\tF4F2A9CF24BB7E3600F912D4 /* CUICrashLogsSourceSeparator.m */,\n\t\t\t\tF440A3EA24AA38E600C23DA1 /* CUICrashLogsSourceAll.h */,\n\t\t\t\tF440A3EB24AA38E600C23DA1 /* CUICrashLogsSourceAll.m */,\n\t\t\t\tF4CCCC6924AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.h */,\n\t\t\t\tF4CCCC6A24AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.m */,\n\t\t\t\tF440A3E124AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.h */,\n\t\t\t\tF440A3E224AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.m */,\n\t\t\t\tF440A3E424AA31B500C23DA1 /* CUICrashLogsSourceFile.h */,\n\t\t\t\tF440A3E524AA31B500C23DA1 /* CUICrashLogsSourceFile.m */,\n\t\t\t\tF440A3E724AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.h */,\n\t\t\t\tF440A3E824AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.m */,\n\t\t\t\tF462DD2F24ADC5F900044AB1 /* CUICrashLogsSourceSmart.h */,\n\t\t\t\tF462DD3024ADC5F900044AB1 /* CUICrashLogsSourceSmart.m */,\n\t\t\t\tF4B57C0A24AF5607000851FF /* CUICrashLogsSourceToday.h */,\n\t\t\t\tF4B57C0B24AF5607000851FF /* CUICrashLogsSourceToday.m */,\n\t\t\t\tF4214CB324B6534400852DDE /* CUICrashLogsSourcesManager.h */,\n\t\t\t\tF4214CB424B6534400852DDE /* CUICrashLogsSourcesManager.m */,\n\t\t\t\tF4CCCC6324AE810E0031BC27 /* CUICrashLogsSourcesSelection.h */,\n\t\t\t\tF4CCCC6424AE810E0031BC27 /* CUICrashLogsSourcesSelection.m */,\n\t\t\t);\n\t\t\tname = Model;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CCCC6824AE831E0031BC27 /* Controllers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4CCCC5E24AE76780031BC27 /* CUICrashLogsSourcesViewController.h */,\n\t\t\t\tF4CCCC5F24AE76780031BC27 /* CUICrashLogsSourcesViewController.m */,\n\t\t\t\tF45A2D6F25EC60920007D50E /* CUICrashLogsSourcesViewController.xib */,\n\t\t\t);\n\t\t\tname = Controllers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CCCC6F24AEA09B0031BC27 /* Model + UI */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF40B77D824AF1426001A8131 /* CUICrashLogsSourceAll+UI.h */,\n\t\t\t\tF40B77D924AF1426001A8131 /* CUICrashLogsSourceAll+UI.m */,\n\t\t\t\tF4CCCC6C24AE9EDA0031BC27 /* CUICrashLogsSource+UI.h */,\n\t\t\t\tF4CCCC6D24AE9EDA0031BC27 /* CUICrashLogsSource+UI.m */,\n\t\t\t\tF4B57C0D24AF5655000851FF /* CUICrashLogsSourceToday+UI.h */,\n\t\t\t\tF4B57C0E24AF5655000851FF /* CUICrashLogsSourceToday+UI.m */,\n\t\t\t\tF40B77D524AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.h */,\n\t\t\t\tF40B77D624AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.m */,\n\t\t\t);\n\t\t\tname = \"Model + UI\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CDFB50257EE1BC002A73D0 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF49A6D7C25474F6E00466D15 /* CUIInactiveButton.h */,\n\t\t\t\tF49A6D7D25474F6E00466D15 /* CUIInactiveButton.m */,\n\t\t\t\tF475FB3E26DBAC8200A113D8 /* CUITableViewNoSpace.h */,\n\t\t\t\tF475FB3F26DBAC8200A113D8 /* CUITableViewNoSpace.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4D5C77D2571AF980029B051 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4D5C77A2571AF900029B051 /* CUIRegisterLabel.h */,\n\t\t\t\tF4D5C77B2571AF900029B051 /* CUIRegisterLabel.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4D6C56A2680028200B78B3D /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4D6C56B2680028A00B78B3D /* RemoteCheck.strings */,\n\t\t\t);\n\t\t\tname = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4DF813A2893460E008EF1B3 /* ips model + Obfuscating */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4DF81412893463B008EF1B3 /* IPSObfuscator.h */,\n\t\t\t\tF4DF81462893463C008EF1B3 /* IPSObfuscator.m */,\n\t\t\t\tF4DF81512893463D008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.h */,\n\t\t\t\tF4DF81402893463B008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.m */,\n\t\t\t\tF4DF81422893463C008EF1B3 /* IPSBundleInfo+Obfuscating.h */,\n\t\t\t\tF4DF81562893463D008EF1B3 /* IPSBundleInfo+Obfuscating.m */,\n\t\t\t\tF4DF814E2893463D008EF1B3 /* IPSCrashSummary+Obfuscating.h */,\n\t\t\t\tF4DF81472893463C008EF1B3 /* IPSCrashSummary+Obfuscating.m */,\n\t\t\t\tF4DF81482893463C008EF1B3 /* IPSImage+Obfuscating.h */,\n\t\t\t\tF4DF814F2893463D008EF1B3 /* IPSImage+Obfuscating.m */,\n\t\t\t\tF4DF81452893463C008EF1B3 /* IPSIncident+Obfuscating.h */,\n\t\t\t\tF4DF81572893463D008EF1B3 /* IPSIncident+Obfuscating.m */,\n\t\t\t\tF4DF813B2893463B008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.h */,\n\t\t\t\tF4DF813D2893463B008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.m */,\n\t\t\t\tF4DF81532893463D008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.h */,\n\t\t\t\tF4DF81552893463D008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.m */,\n\t\t\t\tF4DF814D2893463C008EF1B3 /* IPSIncidentHeader+Obfuscating.h */,\n\t\t\t\tF4DF81432893463C008EF1B3 /* IPSIncidentHeader+Obfuscating.m */,\n\t\t\t\tF4DF81442893463C008EF1B3 /* IPSLegacyInfo+Obfuscating.h */,\n\t\t\t\tF4DF81502893463D008EF1B3 /* IPSLegacyInfo+Obfuscating.m */,\n\t\t\t\tF4DF813E2893463B008EF1B3 /* IPSObfuscator+Extended.h */,\n\t\t\t\tF4DF81592893463E008EF1B3 /* IPSRegisterState+Obfuscating.h */,\n\t\t\t\tF4DF814B2893463C008EF1B3 /* IPSRegisterState+Obfuscating.m */,\n\t\t\t\tF4DF814C2893463C008EF1B3 /* IPSReport+Obfuscating.h */,\n\t\t\t\tF4DF81522893463D008EF1B3 /* IPSReport+Obfuscating.m */,\n\t\t\t\tF4DF81582893463D008EF1B3 /* IPSThread+Obfuscating.h */,\n\t\t\t\tF4DF81492893463C008EF1B3 /* IPSThread+Obfuscating.m */,\n\t\t\t\tF4DF81542893463D008EF1B3 /* IPSThreadFrame+Obfuscating.h */,\n\t\t\t\tF4DF814A2893463C008EF1B3 /* IPSThreadFrame+Obfuscating.m */,\n\t\t\t\tF4DF813F2893463B008EF1B3 /* IPSThreadState+Obfuscating.h */,\n\t\t\t\tF4DF813C2893463B008EF1B3 /* IPSThreadState+Obfuscating.m */,\n\t\t\t);\n\t\t\tname = \"ips model + Obfuscating\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4E1C10E24C22CA0000F5C0F /* Presentation Text */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4BC576E24DF423C00063545 /* Views */,\n\t\t\t\tF4DAFBEF2736B7D500FB50A6 /* CUIDataTransform.h */,\n\t\t\t\tF4DAFBF02736B7D500FB50A6 /* CUIDataTransform.m */,\n\t\t\t\tF4FC8EA527C1A6EE00291875 /* CUIReportThemedTransform.h */,\n\t\t\t\tF4FC8EA627C1A6EE00291875 /* CUIReportThemedTransform.m */,\n\t\t\t\tF42E4FFF2724B7550092181A /* CUICrashDataTransform.h */,\n\t\t\t\tF42E50002724B7550092181A /* CUICrashDataTransform.m */,\n\t\t\t\tF4DAFBEC2736B7B200FB50A6 /* CUIIPSTransform.h */,\n\t\t\t\tF4DAFBED2736B7B200FB50A6 /* CUIIPSTransform.m */,\n\t\t\t\tF4F9D3332556C7DB00D28E6E /* CUILineJumperWindowController.h */,\n\t\t\t\tF4F9D3342556C7DB00D28E6E /* CUILineJumperWindowController.m */,\n\t\t\t\tF4895F5927A72D1000D75369 /* CUILineJumperWindowController.xib */,\n\t\t\t\tF4AC86472558A03B004F2637 /* CUIExportAccessoryViewController.h */,\n\t\t\t\tF4AC86482558A03B004F2637 /* CUIExportAccessoryViewController.m */,\n\t\t\t\tF453AE4B25EE706F00B7BEF0 /* CUIExportAccessoryViewController.xib */,\n\t\t\t\tF416687B24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.h */,\n\t\t\t\tF416687C24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.m */,\n\t\t\t\tF453AE4F25EE70E800B7BEF0 /* CUICrashLogPresentationTextViewController.xib */,\n\t\t\t);\n\t\t\tname = \"Presentation Text\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4E1C10F24C22CB1000F5C0F /* Presentation Outline */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF49A55DC24C7A7F900D249DE /* CUICallTableCellView.h */,\n\t\t\t\tF49A55DD24C7A7F900D249DE /* CUICallTableCellView.m */,\n\t\t\t\tF40FC81425EAF7B000DB4B27 /* CUISourceFileTableCellView.h */,\n\t\t\t\tF40FC81525EAF7B000DB4B27 /* CUISourceFileTableCellView.m */,\n\t\t\t\tF43A9A812591260C005AB2AA /* CUIOutlineModeDisplaySettings.h */,\n\t\t\t\tF43A9A822591260C005AB2AA /* CUIOutlineModeDisplaySettings.m */,\n\t\t\t\tF44356F024A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.h */,\n\t\t\t\tF44356F124A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.m */,\n\t\t\t\tF4754D7325F5678700B0D48F /* CUICrashLogPresentationOutlineViewController.xib */,\n\t\t\t\tF432ACCA24A9502A000A3E7A /* CUIThreadsViewController.h */,\n\t\t\t\tF432ACCB24A9502A000A3E7A /* CUIThreadsViewController.m */,\n\t\t\t\tF4F5395324D2063100D537BC /* View Mode - List */,\n\t\t\t\tF4F5395424D2064600D537BC /* View Mode - Columns */,\n\t\t\t\tF4E1C11024C22CD0000F5C0F /* View Mode - Light Table - Not used */,\n\t\t\t);\n\t\t\tname = \"Presentation Outline\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4E1C11024C22CD0000F5C0F /* View Mode - Light Table - Not used */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF44A5F3824CCE28F006B59B8 /* Views */,\n\t\t\t\tF44A5F3224CCDD00006B59B8 /* CUICollectionViewThreadItem.h */,\n\t\t\t\tF44A5F3324CCDD00006B59B8 /* CUICollectionViewThreadItem.m */,\n\t\t\t\tF4E1C11924C22F54000F5C0F /* CUICollectionViewVisibleThreadItem.h */,\n\t\t\t\tF4E1C11A24C22F54000F5C0F /* CUICollectionViewVisibleThreadItem.m */,\n\t\t\t\tF4E1C11B24C22F54000F5C0F /* CUICollectionViewVisibleThreadItem.xib */,\n\t\t\t\tF4E1C11624C22F02000F5C0F /* CUICollectionViewVisibleThreadsLayout.h */,\n\t\t\t\tF4E1C11724C22F02000F5C0F /* CUICollectionViewVisibleThreadsLayout.m */,\n\t\t\t\tF44A5F2D24CCDCB1006B59B8 /* CUICollectionViewDockedThreadItem.h */,\n\t\t\t\tF44A5F2E24CCDCB1006B59B8 /* CUICollectionViewDockedThreadItem.m */,\n\t\t\t\tF44A5F2F24CCDCB1006B59B8 /* CUICollectionViewDockedThreadItem.xib */,\n\t\t\t\tF44A5F3524CCDFD9006B59B8 /* CUICollectionViewDockedThreadsLayout.h */,\n\t\t\t\tF44A5F3624CCDFD9006B59B8 /* CUICollectionViewDockedThreadsLayout.m */,\n\t\t\t\tF4E1C11124C22CF5000F5C0F /* CUILightTableViewController.h */,\n\t\t\t\tF4E1C11224C22CF5000F5C0F /* CUILightTableViewController.m */,\n\t\t\t\tF4E1C11324C22CF5000F5C0F /* CUILightTableViewController.xib */,\n\t\t\t);\n\t\t\tname = \"View Mode - Light Table - Not used\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4EAFA2924FA538F00C0B729 /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4EBADB524A8F10000DF4271 /* CUICrashLogTableCellView.h */,\n\t\t\t\tF4EBADB624A8F10000DF4271 /* CUICrashLogTableCellView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4F1C31624F950FC00D1A7A0 /* Exception Info Controller */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4C7498B24F84689004F38C0 /* CUIQuickHelpPopUpViewController.h */,\n\t\t\t\tF4C7498C24F84689004F38C0 /* CUIQuickHelpPopUpViewController.m */,\n\t\t\t\tF4C7498D24F84689004F38C0 /* CUIQuickHelpPopUpViewController.xib */,\n\t\t\t\tF4B5BE6C2848277400C33F6F /* CUIExceptionTypePopUpViewController.h */,\n\t\t\t\tF4B5BE6D2848277400C33F6F /* CUIExceptionTypePopUpViewController.m */,\n\t\t\t\tF4B5BE6F28482A4300C33F6F /* CUITerminationReasonPopUpViewController.h */,\n\t\t\t\tF4B5BE7028482A4300C33F6F /* CUITerminationReasonPopUpViewController.m */,\n\t\t\t\tF4F1C31724F9510E00D1A7A0 /* Resources */,\n\t\t\t);\n\t\t\tname = \"Exception Info Controller\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4F1C31724F9510E00D1A7A0 /* Resources */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF49282C225696BF900D255D8 /* known_exceptions.css */,\n\t\t\t\tF495AEC625F03141000D92E1 /* unknown_exception_type.html */,\n\t\t\t\tF4A3A6ED25ED82F10018053E /* EXC_BAD_ACCESS_SIGBUS.html */,\n\t\t\t\tF45015C825FABCAC000C4B8D /* EXC_BAD_ACCESS_SIGSEGV.html */,\n\t\t\t\tF45015CC25FABE00000C4B8D /* EXC_BAD_INSTRUCTION_SIGILL.html */,\n\t\t\t\tF495AED225F034C0000D92E1 /* EXC_BREAKPOINT_SIGTRAP.html */,\n\t\t\t\tF495AECA25F0320D000D92E1 /* EXC_CRASH_SIGABRT.html */,\n\t\t\t\tF495AECE25F033CC000D92E1 /* EXC_CRASH_SIGKILL.html */,\n\t\t\t\tF45015D025FAD279000C4B8D /* EXC_CRASH_SIGQUIT.html */,\n\t\t\t\tF40B832825FC0AEC0091D886 /* EXC_CRASH_SIGSEGV.html */,\n\t\t\t\tF495AED625F03820000D92E1 /* EXC_CRASH_Code Signature Invalid.html */,\n\t\t\t\tD0BA6A442E09FEB50010D630 /* EXC_GUARD.html */,\n\t\t\t\tF4E6EDA0284969DD00766F9A /* known_termination_reasons.css */,\n\t\t\t\tF4E6ED9A2849695100766F9A /* unknown_termination_reason.html */,\n\t\t\t\tF4E6EDA2284969E500766F9A /* ENDPOINTSECURITY_2.html */,\n\t\t\t);\n\t\t\tname = Resources;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4F5395324D2063100D537BC /* View Mode - List */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4F5395524D2066300D537BC /* Views */,\n\t\t\t\tF432ACC524A95014000A3E7A /* CUIThreadsListViewController.h */,\n\t\t\t\tF432ACC624A95014000A3E7A /* CUIThreadsListViewController.m */,\n\t\t\t\tF47C381C2A422E880020D88F /* CUIThreadsListViewController.xib */,\n\t\t\t\tF47C381D2A422E880020D88F /* CUIThreadsListViewController_RTL.xib */,\n\t\t\t);\n\t\t\tname = \"View Mode - List\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4F5395424D2064600D537BC /* View Mode - Columns */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF432ACCD24A95042000A3E7A /* CUIThreadsColumnViewController.h */,\n\t\t\t\tF432ACCE24A95042000A3E7A /* CUIThreadsColumnViewController.m */,\n\t\t\t\tF47C38202A4230370020D88F /* CUIThreadsColumnViewController.xib */,\n\t\t\t\tF47C38212A4230370020D88F /* CUIThreadsColumnViewController_RTL.xib */,\n\t\t\t);\n\t\t\tname = \"View Mode - Columns\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4F5395524D2066300D537BC /* Views */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF414068624D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.h */,\n\t\t\t\tF414068724D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.m */,\n\t\t\t\tF4A58D1924CA4B1500D98FDB /* CUICrashedThreadRowView.h */,\n\t\t\t\tF4A58D1A24CA4B1500D98FDB /* CUICrashedThreadRowView.m */,\n\t\t\t\tF4A58D1C24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.h */,\n\t\t\t\tF4A58D1D24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.m */,\n\t\t\t);\n\t\t\tname = Views;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4F892FF2575A77000BE4CE0 /* Controllers */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4545C3E256C1B2400F62A39 /* CUIRegistersViewController.h */,\n\t\t\t\tF4545C3F256C1B2400F62A39 /* CUIRegistersViewController.m */,\n\t\t\t\tF4F892F82575A6DC00BE4CE0 /* CUIRegistersViewController.xib */,\n\t\t\t\tF4F892FA2575A70800BE4CE0 /* CUIRegistersMainViewController.h */,\n\t\t\t\tF4F892FB2575A70800BE4CE0 /* CUIRegistersMainViewController.m */,\n\t\t\t\tF4F892FC2575A70800BE4CE0 /* CUIRegistersMainViewController.xib */,\n\t\t\t\tF4545C39256C1AF900F62A39 /* CUIRegistersWindowController.h */,\n\t\t\t\tF4545C3A256C1AF900F62A39 /* CUIRegistersWindowController.m */,\n\t\t\t\tF4545C3B256C1AF900F62A39 /* CUIRegistersWindowController.xib */,\n\t\t\t);\n\t\t\tname = Controllers;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXNativeTarget section */\n\t\tF4CC56FE24A79EDA00150EC4 /* Unexpectedly */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F4CC571C24A79EDA00150EC4 /* Build configuration list for PBXNativeTarget \"Unexpectedly\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF4CC56FB24A79EDA00150EC4 /* Sources */,\n\t\t\t\tF4CC56FC24A79EDA00150EC4 /* Frameworks */,\n\t\t\t\tF4CC56FD24A79EDA00150EC4 /* Resources */,\n\t\t\t\tF42D0BC525514CCB0021A551 /* Rename template file */,\n\t\t\t\tF45F84DB266ABB7000F354F3 /* CopyFiles */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t\tF45F84DA266ABB6300F354F3 /* PBXTargetDependency */,\n\t\t\t);\n\t\t\tname = Unexpectedly;\n\t\t\tproductName = Unexpectedly;\n\t\t\tproductReference = F4CC56FF24A79EDA00150EC4 /* Unexpectedly.app */;\n\t\t\tproductType = \"com.apple.product-type.application\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF4CC56F724A79EDA00150EC4 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 1010;\n\t\t\t\tORGANIZATIONNAME = \"Acme, Inc\";\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\tF4CC56FE24A79EDA00150EC4 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 6.4;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = F4CC56FA24A79EDA00150EC4 /* Build configuration list for PBXProject \"app_unexpectedly\" */;\n\t\t\tcompatibilityVersion = \"Xcode 3.2\";\n\t\t\tdevelopmentRegion = en;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t\tfr,\n\t\t\t\tes,\n\t\t\t\tja,\n\t\t\t\the,\n\t\t\t);\n\t\t\tmainGroup = F4CC56F624A79EDA00150EC4;\n\t\t\tproductRefGroup = F4CC570024A79EDA00150EC4 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectReferences = (\n\t\t\t\t{\n\t\t\t\t\tProductGroup = F45F84D4266ABB5800F354F3 /* Products */;\n\t\t\t\t\tProjectRef = F45F84D3266ABB5800F354F3 /* crashreport.xcodeproj */;\n\t\t\t\t},\n\t\t\t);\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF4CC56FE24A79EDA00150EC4 /* Unexpectedly */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXReferenceProxy section */\n\t\tF45F84D8266ABB5800F354F3 /* crashreport.qlgenerator */ = {\n\t\t\tisa = PBXReferenceProxy;\n\t\t\tfileType = wrapper.cfbundle;\n\t\t\tpath = crashreport.qlgenerator;\n\t\t\tremoteRef = F45F84D7266ABB5800F354F3 /* PBXContainerItemProxy */;\n\t\t\tsourceTree = BUILT_PRODUCTS_DIR;\n\t\t};\n/* End PBXReferenceProxy section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\tF4CC56FD24A79EDA00150EC4 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF42D0BC425514B670021A551 /* template.source in Resources */,\n\t\t\t\tF497303E25F7F74C001D01FE /* InfoPlist.strings in Resources */,\n\t\t\t\tF495AEBC25F029C2000D92E1 /* CUIPreferencePanePresentationTextViewController.xib in Resources */,\n\t\t\t\tF416687024B0AEE800C2AB89 /* CUIContentsViewController.xib in Resources */,\n\t\t\t\tF495AED025F034C0000D92E1 /* EXC_BREAKPOINT_SIGTRAP.html in Resources */,\n\t\t\t\tF45015CE25FAD279000C4B8D /* EXC_CRASH_SIGQUIT.html in Resources */,\n\t\t\t\tF45DED6F2E3510D9008F4CE8 /* CodeSigning.strings in Resources */,\n\t\t\t\tF45A2D6D25EC60920007D50E /* CUICrashLogsSourcesViewController.xib in Resources */,\n\t\t\t\tF47C38232A4230370020D88F /* CUIThreadsColumnViewController_RTL.xib in Resources */,\n\t\t\t\tF48CF5FF24A96992002AD214 /* MainMenu.xib in Resources */,\n\t\t\t\tF483845324EB11F700FAEF5D /* default_themes.plist in Resources */,\n\t\t\t\tF4CE83DE2554B97400A8BD87 /* CUICenteredLabelViewController.xib in Resources */,\n\t\t\t\tF4E6ED9C2849695200766F9A /* unknown_termination_reason.html in Resources */,\n\t\t\t\tF4C7498F24F84689004F38C0 /* CUIQuickHelpPopUpViewController.xib in Resources */,\n\t\t\t\tF4F8D26A24F29624007661D6 /* CUIPresentationTextNavigationViewController.xib in Resources */,\n\t\t\t\tF45854FB25C76591007A3A79 /* Unexpectedly_Acknowledgements.pdf in Resources */,\n\t\t\t\tF495AED425F03820000D92E1 /* EXC_CRASH_Code Signature Invalid.html in Resources */,\n\t\t\t\tF45A2D6125EC5D130007D50E /* CUIPreferencePaneFontscolorsViewController.xib in Resources */,\n\t\t\t\tF495AEC425F03141000D92E1 /* unknown_exception_type.html in Resources */,\n\t\t\t\tF4A3A6DF25ED7F450018053E /* CUICrashLogsSourceSmartEditorWindowController.xib in Resources */,\n\t\t\t\tF453AE4925EE706F00B7BEF0 /* CUIExportAccessoryViewController.xib in Resources */,\n\t\t\t\tF41ECA5424AB689B00CE56C7 /* CUIInspectorViewController.xib in Resources */,\n\t\t\t\tF4A3A6EB25ED82F10018053E /* EXC_BAD_ACCESS_SIGBUS.html in Resources */,\n\t\t\t\tF4A9967C2675078B0001B40E /* CUICrashLogsOpenErrorWindowController.xib in Resources */,\n\t\t\t\tF4895F5727A72D1000D75369 /* CUILineJumperWindowController.xib in Resources */,\n\t\t\t\tF416688724B0BF2000C2AB89 /* CUISidebarViewController.xib in Resources */,\n\t\t\t\tF453AE4D25EE70E800B7BEF0 /* CUICrashLogPresentationTextViewController.xib in Resources */,\n\t\t\t\tF4545C3D256C1AF900F62A39 /* CUIRegistersWindowController.xib in Resources */,\n\t\t\t\tF4055C8125EEE37400DC6CCA /* CUIMainWindowController.xib in Resources */,\n\t\t\t\tF4B74C1A24B233C900CD1E60 /* CUIRightViewController.xib in Resources */,\n\t\t\t\tF47C38222A4230370020D88F /* CUIThreadsColumnViewController.xib in Resources */,\n\t\t\t\tF45A2D7125EC60D90007D50E /* CUICrashLogsListViewController.xib in Resources */,\n\t\t\t\tF495AEC025F02F74000D92E1 /* CUIPreferencePanePresentationOutlineViewController.xib in Resources */,\n\t\t\t\tF45854FA25C76591007A3A79 /* Unexpectedly_License.pdf in Resources */,\n\t\t\t\tF4301A6825EF0DE000ACDA3F /* CUIPreferencePanePresentationViewController.xib in Resources */,\n\t\t\t\tF4CC570A24A79EDA00150EC4 /* Images.xcassets in Resources */,\n\t\t\t\tF47C381E2A422E880020D88F /* CUIThreadsListViewController.xib in Resources */,\n\t\t\t\tF40B832625FC0AEC0091D886 /* EXC_CRASH_SIGSEGV.html in Resources */,\n\t\t\t\tF4E6EDA1284969DD00766F9A /* known_termination_reasons.css in Resources */,\n\t\t\t\tF493DB1C24F1CF30001AA8C0 /* Localizable.strings in Resources */,\n\t\t\t\tF45015C625FABCAC000C4B8D /* EXC_BAD_ACCESS_SIGSEGV.html in Resources */,\n\t\t\t\tF45015CA25FABE00000C4B8D /* EXC_BAD_INSTRUCTION_SIGILL.html in Resources */,\n\t\t\t\tF46D77A725ED8E3B00039663 /* CUIInspectorProcessesViewController.xib in Resources */,\n\t\t\t\tF495AECC25F033CC000D92E1 /* EXC_CRASH_SIGKILL.html in Resources */,\n\t\t\t\tF4A0BEF3261BC39700BADEED /* brushed-alum.png in Resources */,\n\t\t\t\tF46D2A2624C33FA200652D50 /* Predicates.strings in Resources */,\n\t\t\t\tF4E671952E2C405F00E5A064 /* CodeSigningFlags.plist in Resources */,\n\t\t\t\tF4E6EDA4284969E500766F9A /* ENDPOINTSECURITY_2.html in Resources */,\n\t\t\t\tF45A2D6525EC5F850007D50E /* CUIAboutBoxWindowController.xib in Resources */,\n\t\t\t\tD0BA6A462E09FEB50010D630 /* EXC_GUARD.html in Resources */,\n\t\t\t\tF45DED692E350F07008F4CE8 /* CUICodeSigningInformationViewController.xib in Resources */,\n\t\t\t\tF49282C325696BF900D255D8 /* known_exceptions.css in Resources */,\n\t\t\t\tF4D7F15F25F04A9D0024E9A5 /* CUIPreferencePaneSymbolicationViewController.xib in Resources */,\n\t\t\t\tF4754D7125F5678700B0D48F /* CUICrashLogPresentationOutlineViewController.xib in Resources */,\n\t\t\t\tF4F892F92575A6DC00BE4CE0 /* CUIRegistersViewController.xib in Resources */,\n\t\t\t\tF4D6C56D2680028A00B78B3D /* RemoteCheck.strings in Resources */,\n\t\t\t\tF46D779F25ED8D3600039663 /* CUIInspectorUserViewController.xib in Resources */,\n\t\t\t\tF464F20D24ACF9CF007A3A96 /* CUICrashLogsMainViewController.xib in Resources */,\n\t\t\t\tF46D77AB25ED9EAE00039663 /* CUICollectionViewRegisterItem.xib in Resources */,\n\t\t\t\tF45A2D5D25EC5CA00007D50E /* CUIPreferencesWindowController.xib in Resources */,\n\t\t\t\tF46D77A325ED8D5700039663 /* CUIInspectorExecutableViewController.xib in Resources */,\n\t\t\t\tF4A3A6E325ED81260018053E /* CUIPreferencePaneGeneralViewController.xib in Resources */,\n\t\t\t\tF4D7F15B25F04A620024E9A5 /* CUISymbolsFilesLibraryViewController.xib in Resources */,\n\t\t\t\tF4F892FE2575A70800BE4CE0 /* CUIRegistersMainViewController.xib in Resources */,\n\t\t\t\tF406B4992687AB1400B90C7B /* CUIPreferencePaneAdvancedViewController.xib in Resources */,\n\t\t\t\tF45A2D6925EC602B0007D50E /* CUIBinaryImagesViewController.xib in Resources */,\n\t\t\t\tF47C381F2A422E880020D88F /* CUIThreadsListViewController_RTL.xib in Resources */,\n\t\t\t\tF4A3A6E725ED817E0018053E /* CUIPreferencePaneCrashreporterViewController.xib in Resources */,\n\t\t\t\tF416687A24B0BA5000C2AB89 /* CUICrashLogContentsViewController.xib in Resources */,\n\t\t\t\tF495AEC825F0320D000D92E1 /* EXC_CRASH_SIGABRT.html in Resources */,\n\t\t\t\tF46D779B25ED8D1800039663 /* CUIInspectorGeneralViewController.xib in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXShellScriptBuildPhase section */\n\t\tF42D0BC525514CCB0021A551 /* Rename template file */ = {\n\t\t\tisa = PBXShellScriptBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\tinputFileListPaths = (\n\t\t\t);\n\t\t\tinputPaths = (\n\t\t\t);\n\t\t\tname = \"Rename template file\";\n\t\t\toutputFileListPaths = (\n\t\t\t);\n\t\t\toutputPaths = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t\tshellPath = /bin/sh;\n\t\t\tshellScript = \"# Rename template.source to template.c\\n\\necho \\\"$TARGET_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH/template.source\\\"\\necho \\\"$TARGET_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH/template.c\\\"\\n\\n/bin/mv \\\"$TARGET_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH/template.source\\\" \\\"$TARGET_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH/template.c\\\"\\n\\nexit 0\\n\";\n\t\t};\n/* End PBXShellScriptBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\tF4CC56FB24A79EDA00150EC4 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF428C07F2724592D00FB8CAC /* IPSException.m in Sources */,\n\t\t\t\tF483845924EB26DF00FAEF5D /* CUIThemeItemsGroup+UI.m in Sources */,\n\t\t\t\tF4DF81622893463E008EF1B3 /* IPSRegisterState+Obfuscating.m in Sources */,\n\t\t\t\tF4D14D682745C0A9003698AD /* IPSImage+UserCode.m in Sources */,\n\t\t\t\tF4871E0625435AF400580562 /* DWRFSection_debug_abbrev.m in Sources */,\n\t\t\t\tF43C828824D892620096F27B /* CUIPreferencePanePresentationTextViewController.m in Sources */,\n\t\t\t\tF40B0D9724D3572E00663282 /* NSColor+String.m in Sources */,\n\t\t\t\tF44E7B80255C83D500025C04 /* NoodleLineNumberMarker.m in Sources */,\n\t\t\t\tF4DF815E2893463E008EF1B3 /* IPSObfuscator.m in Sources */,\n\t\t\t\tF442FCF124AB8A8B00E87B69 /* CUIBinaryImageUtility.m in Sources */,\n\t\t\t\tF4651F8624B297420090DF10 /* CUIOperatingSystemVersion.m in Sources */,\n\t\t\t\tF48944222545836F00E3E360 /* CUISymbolsFilesLibraryViewController.m in Sources */,\n\t\t\t\tF4B9AD3325319A410083FA6C /* MCHSegment.m in Sources */,\n\t\t\t\tF4DF81642893463E008EF1B3 /* IPSLegacyInfo+Obfuscating.m in Sources */,\n\t\t\t\tF43362FE25FCEFBA006E7894 /* CUIRawCrashLog+Path.m in Sources */,\n\t\t\t\tF4FE2DEA25615CA800C1774A /* CUICrashLogExceptionInformation+UI.m in Sources */,\n\t\t\t\tF405A96D255015D800AD2F24 /* CUICXXDemangler.mm in Sources */,\n\t\t\t\tF497AD5524B8FE88008517B7 /* CUICrashLogsSourceSmartEditorPanel.m in Sources */,\n\t\t\t\tF4A0BEF8261BC39700BADEED /* CUIWatchScrew.m in Sources */,\n\t\t\t\tF416686F24B0AEE800C2AB89 /* CUIContentsViewController.m in Sources */,\n\t\t\t\tF40ED76724E72A6E00557BB8 /* CUICategoriesClipView.m in Sources */,\n\t\t\t\tF4B9AD3825319A410083FA6C /* MCHMachBinary.m in Sources */,\n\t\t\t\tF4AA22B72561A233001A1315 /* CUIAboutBoxWindowController.m in Sources */,\n\t\t\t\tF40ACE30255697CE006855E5 /* CUICrashLogBrowsingStateRegistry.m in Sources */,\n\t\t\t\tF428C0792724592D00FB8CAC /* IPSApplicationSpecificInformation.m in Sources */,\n\t\t\t\tF4D0EE95273DB8CD00CC9737 /* IPSThreadState+RegisterDisplayName.m in Sources */,\n\t\t\t\tF49C47CA24E9B48B003FC65C /* CUIThemesManager.m in Sources */,\n\t\t\t\tD0BD223B2F3FC6810052AD8E /* NSMenuItem+RSCore.m in Sources */,\n\t\t\t\tF416688224B0BBFC00C2AB89 /* CUICrashLogPresentationViewController.m in Sources */,\n\t\t\t\tF428C0802724592D00FB8CAC /* IPSThread.m in Sources */,\n\t\t\t\tF4A0BEF4261BC39700BADEED /* CUIWatchAxis.m in Sources */,\n\t\t\t\tF4EFE75224BA48F500DB97AC /* CUIMainWindow.m in Sources */,\n\t\t\t\tF43C828C24D8A39B0096F27B /* CUITextModeDisplaySettings.m in Sources */,\n\t\t\t\tF414D08E24BFB57700A7095C /* CUICrashLogDianosticMessages.m in Sources */,\n\t\t\t\tF4871E0325435AF400580562 /* DWRFSection_debug_info.m in Sources */,\n\t\t\t\tF4CC573024A7A95A00150EC4 /* CUIThread.m in Sources */,\n\t\t\t\tF428C0732724592D00FB8CAC /* IPSIncidentDiagnosticMessage.m in Sources */,\n\t\t\t\tF4BD6A0025553E9000F98F3E /* CUICrashLogSectionsDetector.m in Sources */,\n\t\t\t\tF4F8D26924F29624007661D6 /* CUIPresentationTextNavigationViewController.m in Sources */,\n\t\t\t\tF469AB2524B3DDEA0053C824 /* CUICrashLogExceptionInformation.m in Sources */,\n\t\t\t\tF419376F2672B2BE00B796EB /* CUICrashLogsOpenErrorPanel.m in Sources */,\n\t\t\t\tD06294382E1DD8150008895D /* CUICodeSigningInformationViewController.m in Sources */,\n\t\t\t\tF4F5395924D21DB800D537BC /* CUIPreferencePaneGeneralViewController.m in Sources */,\n\t\t\t\tF4B9AD3425319A410083FA6C /* MCHObjectFile.m in Sources */,\n\t\t\t\tF4B649D324EDCD2300008C47 /* CUIInspectorExecutableViewController.m in Sources */,\n\t\t\t\tF428C0812724592D00FB8CAC /* IPSThreadFrame.m in Sources */,\n\t\t\t\tF476EEC125686EC000F40F87 /* CUIContentBox.m in Sources */,\n\t\t\t\tF4CC572724A7A2B200150EC4 /* CUICrashLog.m in Sources */,\n\t\t\t\tF4DF815D2893463E008EF1B3 /* IPSIncidentHeader+Obfuscating.m in Sources */,\n\t\t\t\tF4FA4323273EF2F30068EDB8 /* NSString+CPU.m in Sources */,\n\t\t\t\tF476EEBE25686DEF00F40F87 /* CUIAboutBoxFooterView.m in Sources */,\n\t\t\t\tF420C9C4254F5F4C00D24249 /* CUIdSYMHunter.m in Sources */,\n\t\t\t\tF4A0BEF1261BC39700BADEED /* CUIWatchGear.m in Sources */,\n\t\t\t\tF4E91ADD256A98050017C3EE /* CUIFontBoxView.m in Sources */,\n\t\t\t\tF4B9AD3B25319D7C0083FA6C /* MCHSegmentLoadCommand.m in Sources */,\n\t\t\t\tF4F5821C256FC7B90032FC53 /* DWRFSection_debug_str_offsets.m in Sources */,\n\t\t\t\tF4559F3724AF232800B8EF41 /* CUICrashLogHeader.m in Sources */,\n\t\t\t\tF428C0762724592D00FB8CAC /* IPSThreadInstructionStream.m in Sources */,\n\t\t\t\tF4545C3C256C1AF900F62A39 /* CUIRegistersWindowController.m in Sources */,\n\t\t\t\tF4A0BEF6261BC39700BADEED /* CUIWatchPart.m in Sources */,\n\t\t\t\tF428C07C2724592D00FB8CAC /* IPSExternalModificationSummary.m in Sources */,\n\t\t\t\tF4B649D724EDD09A00008C47 /* CUIInspectorStackableViewController.m in Sources */,\n\t\t\t\tF4CC572D24A7A5F000150EC4 /* CUICrashLog+Transform.m in Sources */,\n\t\t\t\tF4627F1225704557007E5CD0 /* CUICollectionViewRegisterItem.m in Sources */,\n\t\t\t\tF464FA1525D2DA2A00E024A3 /* NSSet+WBExtensions.m in Sources */,\n\t\t\t\tF4CCCC6124AE76780031BC27 /* CUICrashLogsSourcesViewController.m in Sources */,\n\t\t\t\tF4F9D3362556C7DB00D28E6E /* CUILineJumperWindowController.m in Sources */,\n\t\t\t\tF464F20C24ACF9CF007A3A96 /* CUICrashLogsMainViewController.m in Sources */,\n\t\t\t\tF4C269D02503BE6500C8F3B3 /* CUISymbolicationData.m in Sources */,\n\t\t\t\tF41ECA5324AB689B00CE56C7 /* CUIInspectorViewController.m in Sources */,\n\t\t\t\tF440A3E624AA31B500C23DA1 /* CUICrashLogsSourceFile.m in Sources */,\n\t\t\t\tF472CC972550631A003F6338 /* CUISwiftDemangler.m in Sources */,\n\t\t\t\tF428C07A2724592D00FB8CAC /* IPSSummary.m in Sources */,\n\t\t\t\tF428C0782724592D00FB8CAC /* IPSDateFormatter.m in Sources */,\n\t\t\t\tF4CF6CF62DF6111B0078458E /* IPSIncident+ApplicationSpecificInformation.m in Sources */,\n\t\t\t\tF4040A7924F5BC230072BF65 /* CUINavigationView.m in Sources */,\n\t\t\t\tF4B018372620FEC7009727F1 /* CUIApplicationIconView.m in Sources */,\n\t\t\t\tF4BC577124DF426200063545 /* CUIAATextFieldCell.m in Sources */,\n\t\t\t\tF47F76652673548600A74905 /* CUICrashLogsOpenErrorRecord.m in Sources */,\n\t\t\t\tF428C07E2724592D00FB8CAC /* IPSBundleInfo.m in Sources */,\n\t\t\t\tF428C07D2724592D00FB8CAC /* IPSExternalModificationStatistics.m in Sources */,\n\t\t\t\tF428C0752724592D00FB8CAC /* IPSThreadInstructionState.m in Sources */,\n\t\t\t\tF40B0D8824D3569800663282 /* NSResponder+Appearance.m in Sources */,\n\t\t\t\tF43A9A832591260C005AB2AA /* CUIOutlineModeDisplaySettings.m in Sources */,\n\t\t\t\tF4AC864A2558A03B004F2637 /* CUIExportAccessoryViewController.m in Sources */,\n\t\t\t\tF414068824D5F1D20059FF21 /* CUIApplicationSpecificBacktraceRowView.m in Sources */,\n\t\t\t\tF49A6D7E25474F6E00466D15 /* CUIInactiveButton.m in Sources */,\n\t\t\t\tF4E861BA255496310061E203 /* CUIRawCrashLog.m in Sources */,\n\t\t\t\tF4775479255B0054006BA662 /* CUIThemesTableView.m in Sources */,\n\t\t\t\tF4F892FD2575A70800BE4CE0 /* CUIRegistersMainViewController.m in Sources */,\n\t\t\t\tF461CE8A25F6DD75007CFDE7 /* CUIApplicationItemAttributes.m in Sources */,\n\t\t\t\tF40ACE2D255697A3006855E5 /* CUICrashLogBrowsingState.m in Sources */,\n\t\t\t\tF4871E0925435AF400580562 /* DWRFObject.m in Sources */,\n\t\t\t\tF4214CB524B6534400852DDE /* CUICrashLogsSourcesManager.m in Sources */,\n\t\t\t\tF4871E0D25437A6A00580562 /* CUISymbolicationDataCache.m in Sources */,\n\t\t\t\tF4440FE0282C4104003C810B /* IPSSummarySerialization.m in Sources */,\n\t\t\t\tF428C07B2724592D00FB8CAC /* IPSTermination.m in Sources */,\n\t\t\t\tF440A3E924AA35AC00C23DA1 /* CUICrashLogsSourceDirectory.m in Sources */,\n\t\t\t\tF414D09124BFBC3A00A7095C /* CUICrashLogBacktraces.m in Sources */,\n\t\t\t\tF4A0BEF7261BC39700BADEED /* CUIWatchBridge.m in Sources */,\n\t\t\t\tF4DF81682893463E008EF1B3 /* IPSIncident+Obfuscating.m in Sources */,\n\t\t\t\tF440A3E324AA315800C23DA1 /* CUICrashLogsSourceStandardDirectory.m in Sources */,\n\t\t\t\tF43AF0D1256FE2AE0066CA1B /* DWRFSection_debug_addr.m in Sources */,\n\t\t\t\tF4871E0525435AF400580562 /* DWRFSection_debug_line.m in Sources */,\n\t\t\t\tF4DF81672893463E008EF1B3 /* IPSBundleInfo+Obfuscating.m in Sources */,\n\t\t\t\tF40BEAF124E9F754007A3F60 /* CUIThemeItemAttributes.m in Sources */,\n\t\t\t\tF4B138572522948700D9DE2F /* NSBundle+dSYM.m in Sources */,\n\t\t\t\tF428C0742724592D00FB8CAC /* IPSReport.m in Sources */,\n\t\t\t\tF49A6D8125476F7B00466D15 /* CUISymbolicationDataFormatter.m in Sources */,\n\t\t\t\tF4DF81612893463E008EF1B3 /* IPSThreadFrame+Obfuscating.m in Sources */,\n\t\t\t\tF4DF815C2893463E008EF1B3 /* IPSApplicationSpecificInformation+Obfuscating.m in Sources */,\n\t\t\t\tF416687E24B0BBA300C2AB89 /* CUICrashLogPresentationTextViewController.m in Sources */,\n\t\t\t\tF4EBADB724A8F10000DF4271 /* CUICrashLogTableCellView.m in Sources */,\n\t\t\t\tF45B518C24AFA04000E97B87 /* CUICrashLogsSelection.m in Sources */,\n\t\t\t\tF4BBAC5D24AA7D37000511BE /* CUIBinaryImage.m in Sources */,\n\t\t\t\tF40B0D7F24D3558800663282 /* CUIPreferencesTabHeaderView.m in Sources */,\n\t\t\t\tF4CCCC6B24AE95430031BC27 /* CUICrashLogsSourceFileSystemItem.m in Sources */,\n\t\t\t\tF420F35224E95E5F006C82CD /* CUITheme.m in Sources */,\n\t\t\t\tF497F0162576E1A100BD1970 /* CUIRoundedRectBezelView.m in Sources */,\n\t\t\t\tF44356FF24A8A8B5001D3D35 /* CUIThreadNamedTableCellView.m in Sources */,\n\t\t\t\tF4B9AD3625319A410083FA6C /* MCHLoadCommand.m in Sources */,\n\t\t\t\tF480692E24AF7D83009665F2 /* CUICrashLogsListViewController.m in Sources */,\n\t\t\t\tF4ED18A324EC77A300ED7EF2 /* NSArray+UniqueName.m in Sources */,\n\t\t\t\tF42E50012724B7550092181A /* CUICrashDataTransform.m in Sources */,\n\t\t\t\tF428C0822724592D00FB8CAC /* IPSError.m in Sources */,\n\t\t\t\tF4E0BD25262078220048647C /* CUIAboutBoxWindow.m in Sources */,\n\t\t\t\tF4DF81662893463E008EF1B3 /* IPSIncidentExceptionInformation+Obfuscating.m in Sources */,\n\t\t\t\tF4C269CD2503BCC100C8F3B3 /* CUISymbolicationManager.m in Sources */,\n\t\t\t\tF4DF815F2893463E008EF1B3 /* IPSCrashSummary+Obfuscating.m in Sources */,\n\t\t\t\tF4E671922E2C3B1600E5A064 /* CUICodeSigningFlagsTableView.m in Sources */,\n\t\t\t\tF4DAFBEE2736B7B200FB50A6 /* CUIIPSTransform.m in Sources */,\n\t\t\t\tF47F76622673542600A74905 /* CUICrashLogsOpenErrorRecord+UI.m in Sources */,\n\t\t\t\tF462DD3124ADC5F900044AB1 /* CUICrashLogsSourceSmart.m in Sources */,\n\t\t\t\tF483845624EB1BEB00FAEF5D /* CUIApplicationPreferences+Themes.m in Sources */,\n\t\t\t\tF4306D592577E168007E667F /* CUICrashLogThreadState+UI.m in Sources */,\n\t\t\t\tF4B9AD3725319A410083FA6C /* MCHSection.m in Sources */,\n\t\t\t\tF414D09724BFBC6300A7095C /* CUICrashLogBinaryImages.m in Sources */,\n\t\t\t\tF47AF8C0255DE61E0037E2D8 /* NSCrashLogTextScrollView.m in Sources */,\n\t\t\t\tF40B0D8724D3569800663282 /* NSColor+LabelColor.m in Sources */,\n\t\t\t\tF4238191267D3522003837AC /* WBRemoteVersionChecker.m in Sources */,\n\t\t\t\tF48BAB3625D9D4140005F3E5 /* CUIThreadImageCell.m in Sources */,\n\t\t\t\tF416687924B0BA5000C2AB89 /* CUICrashLogContentsViewController.m in Sources */,\n\t\t\t\tF428C0842724592D00FB8CAC /* IPSThreadState.m in Sources */,\n\t\t\t\tF49673FE24D0CF6400716289 /* CUIPreferencesWindowController.m in Sources */,\n\t\t\t\tF4040A7624F5B9CE0072BF65 /* CUINavigationChevronView.m in Sources */,\n\t\t\t\tF4EAFA2C24FA6CD100C0B729 /* CUICrashLogTextView.m in Sources */,\n\t\t\t\tF4341C6B258EB8FE001A5605 /* CUICrashReporterDefaults.m in Sources */,\n\t\t\t\tF428C0722724592D00FB8CAC /* IPSIncidentExceptionInformation.m in Sources */,\n\t\t\t\tF496740E24D0D74A00716289 /* CUIApplicationPreferences.m in Sources */,\n\t\t\t\tF40B0D9D24D370A200663282 /* NSDictionary+MutableDeepCopy.m in Sources */,\n\t\t\t\tF40B0D9424D3571B00663282 /* NSTableView+Selection.m in Sources */,\n\t\t\t\tF40B0D7E24D3558800663282 /* CUIPreferencesTabBox.m in Sources */,\n\t\t\t\tF4CCCC6E24AE9EDA0031BC27 /* CUICrashLogsSource+UI.m in Sources */,\n\t\t\t\tF4C7498E24F84689004F38C0 /* CUIQuickHelpPopUpViewController.m in Sources */,\n\t\t\t\tF4A58D1E24CA4CDA00D98FDB /* CUICrashedThreadCallRowView.m in Sources */,\n\t\t\t\tF4545C41256C1B2400F62A39 /* CUIRegistersViewController.m in Sources */,\n\t\t\t\tF4386B0F2849541C00B83525 /* CUICrashLogExceptionInformation+QuickHelp.m in Sources */,\n\t\t\t\tF440A3EC24AA38E600C23DA1 /* CUICrashLogsSourceAll.m in Sources */,\n\t\t\t\tF4871E0725435AF400580562 /* DWRFFileObject.m in Sources */,\n\t\t\t\tF4871E10254384E100580562 /* CUIdSYMBundlesManager.m in Sources */,\n\t\t\t\tF4B74C1924B233C900CD1E60 /* CUIRightViewController.m in Sources */,\n\t\t\t\tF428C0712724592D00FB8CAC /* IPSIncidentHeader.m in Sources */,\n\t\t\t\tF428C0772724592D00FB8CAC /* IPSRegisterState.m in Sources */,\n\t\t\t\tF4CD32B6257D17B3008C71AA /* CUIPreferencePaneSymbolicationViewController.m in Sources */,\n\t\t\t\tF41D66B025921F3400C0D491 /* CUIPreferencePanePresentationViewController.m in Sources */,\n\t\t\t\tF49A55DE24C7A7F900D249DE /* CUICallTableCellView.m in Sources */,\n\t\t\t\tF4B649DB24EDD64900008C47 /* CUIInspectorProcessesViewController.m in Sources */,\n\t\t\t\tF40B0D9124D356F900663282 /* NSToolbar+Packages.m in Sources */,\n\t\t\t\tF46198E924CA390700FA9717 /* CUICrashLogBacktraces+Utilities.m in Sources */,\n\t\t\t\tF49227C824A8D45000772411 /* CUIStackFrame+UI.m in Sources */,\n\t\t\t\tF428C0832724592D00FB8CAC /* IPSOperatingSystemVersion.m in Sources */,\n\t\t\t\tF432ACD024A95042000A3E7A /* CUIThreadsColumnViewController.m in Sources */,\n\t\t\t\tF416688624B0BF2000C2AB89 /* CUISidebarViewController.m in Sources */,\n\t\t\t\tF4B57C0C24AF5607000851FF /* CUICrashLogsSourceToday.m in Sources */,\n\t\t\t\tF420C9C1254F335000D24249 /* CUIdSYMDropView.m in Sources */,\n\t\t\t\tF44356F324A8A113001D3D35 /* CUICrashLogPresentationOutlineViewController.m in Sources */,\n\t\t\t\tF40B0D8D24D356A200663282 /* NSArray+WBExtensions.m in Sources */,\n\t\t\t\tD0790DBD2E00BACF00CD6A72 /* CUIThreadImageView.m in Sources */,\n\t\t\t\tF4A58D1B24CA4B1500D98FDB /* CUICrashedThreadRowView.m in Sources */,\n\t\t\t\tF4871E0825435AF400580562 /* LEB128.c in Sources */,\n\t\t\t\tF4EBD24B24E01556007F0252 /* CUITableCustomSelectionColorRowView.m in Sources */,\n\t\t\t\tF4BD8C6A2DF4DDCB00BD61A8 /* IPSExceptionReason.m in Sources */,\n\t\t\t\tF442FCED24AB855C00E87B69 /* CUIBinaryImagesViewController.m in Sources */,\n\t\t\t\tF496740A24D0D2A300716289 /* CUIPreferencePaneFontscolorsViewController.m in Sources */,\n\t\t\t\tF4DF815A2893463E008EF1B3 /* IPSThreadState+Obfuscating.m in Sources */,\n\t\t\t\tF416687424B0AF4D00C2AB89 /* CUICenteredLabelViewController.m in Sources */,\n\t\t\t\tF4DF81632893463E008EF1B3 /* IPSImage+Obfuscating.m in Sources */,\n\t\t\t\tF40B77D724AF0F5C001A8131 /* CUICrashLogsSourceStandardDirectory+UI.m in Sources */,\n\t\t\t\tF4B5BE7128482A4300C33F6F /* CUITerminationReasonPopUpViewController.m in Sources */,\n\t\t\t\tF45442A924AF355700EE79E4 /* CUICaptionView.m in Sources */,\n\t\t\t\tF4DF81602893463E008EF1B3 /* IPSThread+Obfuscating.m in Sources */,\n\t\t\t\tF40FC81625EAF7B000DB4B27 /* CUISourceFileTableCellView.m in Sources */,\n\t\t\t\tF414D09424BFBC4A00A7095C /* CUICrashLogThreadState.m in Sources */,\n\t\t\t\tF4B57C0F24AF5655000851FF /* CUICrashLogsSourceToday+UI.m in Sources */,\n\t\t\t\tF4F9BAF724EF06BC00D08FBD /* CUIInspectorGeneralViewController.m in Sources */,\n\t\t\t\tF4440FE1282C4104003C810B /* IPSCrashSummary.m in Sources */,\n\t\t\t\tF414068B24D6014D0059FF21 /* CUIFontAndColorsFramedView.m in Sources */,\n\t\t\t\tF40B124924E89BBE005E82DD /* CUIPreferencesWindowController+Convenience.m in Sources */,\n\t\t\t\tF4132C8F24AA19F70086B99C /* CUICrashLogsSource.m in Sources */,\n\t\t\t\tF4DAF0B327C44AA800256EA4 /* IPSImage+Offset.m in Sources */,\n\t\t\t\tF4CCCC6524AE810E0031BC27 /* CUICrashLogsSourcesSelection.m in Sources */,\n\t\t\t\tF432ACCC24A9502A000A3E7A /* CUIThreadsViewController.m in Sources */,\n\t\t\t\tF40B0D8E24D356A200663282 /* NSIndexSet+Analysis.m in Sources */,\n\t\t\t\tF4FC8EA727C1A6EE00291875 /* CUIReportThemedTransform.m in Sources */,\n\t\t\t\tF4DAFBF12736B7D500FB50A6 /* CUIDataTransform.m in Sources */,\n\t\t\t\tF4B9AD3225319A410083FA6C /* MCHMemoryBufferWrapper.m in Sources */,\n\t\t\t\tF40B0D8024D3558800663282 /* CUIPreferencesTabButton.m in Sources */,\n\t\t\t\tF464F21024ACFBA1007A3A96 /* CUIRegister.m in Sources */,\n\t\t\t\tF4EBADB424A8F04F00DF4271 /* CUICrashLog+UI.m in Sources */,\n\t\t\t\tF46198EE24CA459700FA9717 /* CUIInspectorAlternateBackgroundView.m in Sources */,\n\t\t\t\tF475FB4026DBAC8200A113D8 /* CUITableViewNoSpace.m in Sources */,\n\t\t\t\tF47F7668267355EA00A74905 /* CUICrashLogErrors.m in Sources */,\n\t\t\t\tF4F9BAF224EF060E00D08FBD /* CUIInspectorUserViewController.m in Sources */,\n\t\t\t\tF4CC570824A79EDA00150EC4 /* main.m in Sources */,\n\t\t\t\tF420C9B9254F30A100D24249 /* CUIFileDeadDropView.m in Sources */,\n\t\t\t\tF42B57E224ABEF6E00F77ED5 /* CUICallsSelection.m in Sources */,\n\t\t\t\tF44E7B7F255C83D500025C04 /* NoodleLineNumberView.m in Sources */,\n\t\t\t\tF4DF81652893463E008EF1B3 /* IPSReport+Obfuscating.m in Sources */,\n\t\t\t\tF483845124EB041B00FAEF5D /* CUIThemeItemsGroup.m in Sources */,\n\t\t\t\tF4F2A9D024BB7E3600F912D4 /* CUICrashLogsSourceSeparator.m in Sources */,\n\t\t\t\tF4DF815B2893463E008EF1B3 /* IPSIncidentDiagnosticMessage+Obfuscating.m in Sources */,\n\t\t\t\tF4D5C77C2571AF900029B051 /* CUIRegisterLabel.m in Sources */,\n\t\t\t\tF45F2F5B2538EF3F0030A402 /* NSFileManager+ExtendedAttributes.m in Sources */,\n\t\t\t\tF4B67838258F702E0047369E /* CUIPreferencePaneCrashreporterViewController.m in Sources */,\n\t\t\t\tF4F2A9D324BB809200F912D4 /* CUICrashLogsSourceTableCellView.m in Sources */,\n\t\t\t\tF4577BEA2592848D009B2AD2 /* CUIPreferencePanePresentationOutlineViewController.m in Sources */,\n\t\t\t\tF4B9AD3525319A410083FA6C /* MCHUUIDLoadCommand.m in Sources */,\n\t\t\t\tF432ACC824A95014000A3E7A /* CUIThreadsListViewController.m in Sources */,\n\t\t\t\tF405A97025501A5F00AD2F24 /* CUIParsingErrors.m in Sources */,\n\t\t\t\tF4CC573324A7ABAF00150EC4 /* CUICallStackBacktrace.m in Sources */,\n\t\t\t\tF4B52E212548B8B4007593FD /* CUIdSYMBundle+UI.m in Sources */,\n\t\t\t\tF496740324D0D05800716289 /* CUIPreferencePaneViewController.m in Sources */,\n\t\t\t\tF4ED758A2501A29700316E73 /* CUIStackFrame.m in Sources */,\n\t\t\t\tF428C0702724592D00FB8CAC /* IPSImage.m in Sources */,\n\t\t\t\tF4871DC02543566E00580562 /* CUIdSYMBundle.m in Sources */,\n\t\t\t\tF4A7696A2555D9DE00F9D9D3 /* CUIRawCrashLog+UI.m in Sources */,\n\t\t\t\tF4871E0425435AF400580562 /* DWRFSection_debug_str.m in Sources */,\n\t\t\t\tF4B5BE6E2848277400C33F6F /* CUIExceptionTypePopUpViewController.m in Sources */,\n\t\t\t\tF48906AE25D2BA0C002D79A9 /* CUISelectedWhiteTextFieldCell.m in Sources */,\n\t\t\t\tF43D8FF724A7FAD2008147F9 /* CUIMainWindowController.m in Sources */,\n\t\t\t\tF40B77DA24AF1426001A8131 /* CUICrashLogsSourceAll+UI.m in Sources */,\n\t\t\t\tF4A0BEF2261BC39700BADEED /* CUIWatchJewel.m in Sources */,\n\t\t\t\tF46BAF59250162C900991970 /* CUIPreferencesWindow.m in Sources */,\n\t\t\t\tF428C0862724592D00FB8CAC /* IPSIncident.m in Sources */,\n\t\t\t\tF4871E0A25435AF400580562 /* DWRFSection_debug_aranges.m in Sources */,\n\t\t\t\tF40BEAFC24E9FEF8007A3F60 /* NSDictionary+WBExtensions.m in Sources */,\n\t\t\t\tF423818C267D1D4A003837AC /* CUIPreferencePaneAdvancedViewController.m in Sources */,\n\t\t\t\tF497303A25F796E6001D01FE /* CUIHopperDisassemblerManager.m in Sources */,\n\t\t\t\tF4CC570624A79EDA00150EC4 /* AppDelegate.m in Sources */,\n\t\t\t\tF4CC572424A7A1D100150EC4 /* CUICrashLogsProvider.m in Sources */,\n\t\t\t\tF428C0852724592D00FB8CAC /* IPSLegacyInfo.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin PBXTargetDependency section */\n\t\tF45F84DA266ABB6300F354F3 /* PBXTargetDependency */ = {\n\t\t\tisa = PBXTargetDependency;\n\t\t\tname = crashreport;\n\t\t\ttargetProxy = F45F84D9266ABB6300F354F3 /* PBXContainerItemProxy */;\n\t\t};\n/* End PBXTargetDependency section */\n\n/* Begin PBXVariantGroup section */\n\t\tD0BA6A442E09FEB50010D630 /* EXC_GUARD.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tD0BA6A452E09FEB50010D630 /* en */,\n\t\t\t\tD00B152C2E0B52740098456B /* fr */,\n\t\t\t\tD0AECAE42E0F34830028246E /* he */,\n\t\t\t\tD000743B2E11F30900CC5121 /* ja */,\n\t\t\t\tD000743C2E11F30B00CC5121 /* es */,\n\t\t\t);\n\t\t\tname = EXC_GUARD.html;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4055C8325EEE37400DC6CCA /* CUIMainWindowController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4055C8225EEE37400DC6CCA /* en */,\n\t\t\t\tF4055C8425EEE37600DC6CCA /* fr */,\n\t\t\t\tF4111AE4265EE92600FD8950 /* es */,\n\t\t\t\tF4FC364B278F914500669B32 /* ja */,\n\t\t\t\tF43066EA2A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIMainWindowController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF406B49B2687AB1400B90C7B /* CUIPreferencePaneAdvancedViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF406B49A2687AB1400B90C7B /* en */,\n\t\t\t\tF406B49C2687AB1800B90C7B /* fr */,\n\t\t\t\tF406B49D2687AC1900B90C7B /* es */,\n\t\t\t\tF4FC3633278F914300669B32 /* ja */,\n\t\t\t\tF43066CF2A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePaneAdvancedViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF40B832825FC0AEC0091D886 /* EXC_CRASH_SIGSEGV.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF40B832725FC0AEC0091D886 /* en */,\n\t\t\t\tF40B832925FC0AEE0091D886 /* fr */,\n\t\t\t\tF4111ADD265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3644278F914400669B32 /* ja */,\n\t\t\t\tF43066E02A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_CRASH_SIGSEGV.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4301A6A25EF0DE000ACDA3F /* CUIPreferencePanePresentationViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4301A6925EF0DE000ACDA3F /* en */,\n\t\t\t\tF4301A6B25EF0DE200ACDA3F /* fr */,\n\t\t\t\tF4111AC8265EE92200FD8950 /* es */,\n\t\t\t\tF4FC362E278F914200669B32 /* ja */,\n\t\t\t\tF43066CA2A12EDE5002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePanePresentationViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45015C825FABCAC000C4B8D /* EXC_BAD_ACCESS_SIGSEGV.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45015C725FABCAC000C4B8D /* en */,\n\t\t\t\tF45015C925FABCAF000C4B8D /* fr */,\n\t\t\t\tF4111AD7265EE92400FD8950 /* es */,\n\t\t\t\tF4FC363E278F914400669B32 /* ja */,\n\t\t\t\tF43066DA2A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_BAD_ACCESS_SIGSEGV.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45015CC25FABE00000C4B8D /* EXC_BAD_INSTRUCTION_SIGILL.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45015CB25FABE00000C4B8D /* en */,\n\t\t\t\tF45015CD25FABE02000C4B8D /* fr */,\n\t\t\t\tF4111AD8265EE92400FD8950 /* es */,\n\t\t\t\tF4FC363F278F914400669B32 /* ja */,\n\t\t\t\tF43066DB2A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_BAD_INSTRUCTION_SIGILL.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45015D025FAD279000C4B8D /* EXC_CRASH_SIGQUIT.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45015CF25FAD279000C4B8D /* en */,\n\t\t\t\tF45015D125FAD27B000C4B8D /* fr */,\n\t\t\t\tF4111ADC265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3643278F914400669B32 /* ja */,\n\t\t\t\tF43066DF2A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_CRASH_SIGQUIT.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF453AE4B25EE706F00B7BEF0 /* CUIExportAccessoryViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF453AE4A25EE706F00B7BEF0 /* en */,\n\t\t\t\tF453AE4C25EE707000B7BEF0 /* fr */,\n\t\t\t\tF4111ADF265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3646278F914500669B32 /* ja */,\n\t\t\t\tF43066E52A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIExportAccessoryViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF453AE4F25EE70E800B7BEF0 /* CUICrashLogPresentationTextViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF453AE4E25EE70E800B7BEF0 /* en */,\n\t\t\t\tF453AE5025EE70E900B7BEF0 /* fr */,\n\t\t\t\tF4111AE0265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3647278F914500669B32 /* ja */,\n\t\t\t\tF43066E62A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUICrashLogPresentationTextViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45A2D5F25EC5CA00007D50E /* CUIPreferencesWindowController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45A2D5E25EC5CA00007D50E /* en */,\n\t\t\t\tF45A2D6025EC5CA30007D50E /* fr */,\n\t\t\t\tF4111ACD265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3634278F914300669B32 /* ja */,\n\t\t\t\tF43066D02A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencesWindowController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45A2D6325EC5D130007D50E /* CUIPreferencePaneFontscolorsViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45A2D6225EC5D130007D50E /* en */,\n\t\t\t\tF45A2D6425EC5D140007D50E /* fr */,\n\t\t\t\tF4111AC9265EE92200FD8950 /* es */,\n\t\t\t\tF4FC362F278F914200669B32 /* ja */,\n\t\t\t\tF43066CB2A12EDE5002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePaneFontscolorsViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45A2D6725EC5F850007D50E /* CUIAboutBoxWindowController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45A2D6625EC5F850007D50E /* en */,\n\t\t\t\tF45A2D6825EC5F870007D50E /* fr */,\n\t\t\t\tF4111AC4265EE92200FD8950 /* es */,\n\t\t\t\tF4FC362A278F914200669B32 /* ja */,\n\t\t\t\tF43066C62A12EDE4002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIAboutBoxWindowController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45A2D6B25EC602B0007D50E /* CUIBinaryImagesViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45A2D6A25EC602B0007D50E /* en */,\n\t\t\t\tF45A2D6C25EC60310007D50E /* fr */,\n\t\t\t\tF4111AE3265EE92600FD8950 /* es */,\n\t\t\t\tF4FC364A278F914500669B32 /* ja */,\n\t\t\t\tF43066E92A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIBinaryImagesViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45A2D6F25EC60920007D50E /* CUICrashLogsSourcesViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45A2D6E25EC60920007D50E /* en */,\n\t\t\t\tF45A2D7025EC60930007D50E /* fr */,\n\t\t\t\tF4111ACF265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3636278F914300669B32 /* ja */,\n\t\t\t\tF43066D22A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUICrashLogsSourcesViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45A2D7325EC60D90007D50E /* CUICrashLogsListViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45A2D7225EC60D90007D50E /* en */,\n\t\t\t\tF45A2D7425EC60DB0007D50E /* fr */,\n\t\t\t\tF4111AD0265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3637278F914300669B32 /* ja */,\n\t\t\t\tF43066D32A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUICrashLogsListViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45DED6B2E350F07008F4CE8 /* CUICodeSigningInformationViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45DED6A2E350F07008F4CE8 /* en */,\n\t\t\t\tF45DED6C2E350F0D008F4CE8 /* fr */,\n\t\t\t\tF45DED742E351277008F4CE8 /* es */,\n\t\t\t\tF45DED752E351279008F4CE8 /* ja */,\n\t\t\t\tF45DED762E35127A008F4CE8 /* he */,\n\t\t\t);\n\t\t\tname = CUICodeSigningInformationViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF45DED6D2E3510D9008F4CE8 /* CodeSigning.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF45DED6E2E3510D9008F4CE8 /* en */,\n\t\t\t\tF45DED702E351134008F4CE8 /* fr */,\n\t\t\t\tF45DED712E3511B8008F4CE8 /* es */,\n\t\t\t\tF45DED722E3511BB008F4CE8 /* ja */,\n\t\t\t\tF45DED732E3511BC008F4CE8 /* he */,\n\t\t\t);\n\t\t\tname = CodeSigning.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46D2A2824C33FA200652D50 /* Predicates.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF46D2A2724C33FA200652D50 /* en */,\n\t\t\t\tF45A2D5625EC50960007D50E /* fr */,\n\t\t\t\tF4111AE6265EE92600FD8950 /* es */,\n\t\t\t\tF4FC364D278F914500669B32 /* ja */,\n\t\t\t\tF43066EC2A12EDE9002AB430 /* he */,\n\t\t\t);\n\t\t\tname = Predicates.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46D779D25ED8D1800039663 /* CUIInspectorGeneralViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF46D779C25ED8D1800039663 /* en */,\n\t\t\t\tF46D779E25ED8D1900039663 /* fr */,\n\t\t\t\tF4111AD1265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3638278F914300669B32 /* ja */,\n\t\t\t\tF43066D42A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIInspectorGeneralViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46D77A125ED8D3600039663 /* CUIInspectorUserViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF46D77A025ED8D3600039663 /* en */,\n\t\t\t\tF46D77A225ED8D3900039663 /* fr */,\n\t\t\t\tF4111AD2265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3639278F914300669B32 /* ja */,\n\t\t\t\tF43066D52A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIInspectorUserViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46D77A525ED8D5700039663 /* CUIInspectorExecutableViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF46D77A425ED8D5700039663 /* en */,\n\t\t\t\tF46D77A625ED8D5900039663 /* fr */,\n\t\t\t\tF4111AD3265EE92400FD8950 /* es */,\n\t\t\t\tF4FC363A278F914300669B32 /* ja */,\n\t\t\t\tF43066D62A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIInspectorExecutableViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46D77A925ED8E3B00039663 /* CUIInspectorProcessesViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF46D77A825ED8E3B00039663 /* en */,\n\t\t\t\tF46D77AA25ED8E3E00039663 /* fr */,\n\t\t\t\tF4111AD4265EE92400FD8950 /* es */,\n\t\t\t\tF4FC363B278F914300669B32 /* ja */,\n\t\t\t\tF43066D72A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIInspectorProcessesViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF46D77AD25ED9EAE00039663 /* CUICollectionViewRegisterItem.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF46D77AC25ED9EAE00039663 /* en */,\n\t\t\t\tF46D77AE25ED9EAF00039663 /* fr */,\n\t\t\t\tF4111AE2265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3649278F914500669B32 /* ja */,\n\t\t\t\tF43066E82A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUICollectionViewRegisterItem.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4754D7325F5678700B0D48F /* CUICrashLogPresentationOutlineViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4754D7225F5678700B0D48F /* en */,\n\t\t\t\tF4754D7425F5678A00B0D48F /* fr */,\n\t\t\t\tF4111AE1265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3648278F914500669B32 /* ja */,\n\t\t\t\tF43066E72A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUICrashLogPresentationOutlineViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4895F5927A72D1000D75369 /* CUILineJumperWindowController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4895F5827A72D1000D75369 /* en */,\n\t\t\t\tF4895F5A27A72D1300D75369 /* fr */,\n\t\t\t\tF4895F5B27A72D3300D75369 /* es */,\n\t\t\t\tF4895F5C27A72D6300D75369 /* ja */,\n\t\t\t\tF43066E42A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUILineJumperWindowController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF493DB1A24F1CF2F001AA8C0 /* Localizable.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF493DB1B24F1CF2F001AA8C0 /* en */,\n\t\t\t\tF45A2D5525EC50960007D50E /* fr */,\n\t\t\t\tF4111AE5265EE92600FD8950 /* es */,\n\t\t\t\tF4FC364C278F914500669B32 /* ja */,\n\t\t\t\tF43066EB2A12EDE8002AB430 /* he */,\n\t\t\t);\n\t\t\tname = Localizable.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AEBE25F029C2000D92E1 /* CUIPreferencePanePresentationTextViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AEBD25F029C2000D92E1 /* en */,\n\t\t\t\tF495AEBF25F029CD000D92E1 /* fr */,\n\t\t\t\tF4111AC6265EE92200FD8950 /* es */,\n\t\t\t\tF4FC362C278F914200669B32 /* ja */,\n\t\t\t\tF43066C82A12EDE5002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePanePresentationTextViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AEC225F02F74000D92E1 /* CUIPreferencePanePresentationOutlineViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AEC125F02F74000D92E1 /* en */,\n\t\t\t\tF495AEC325F02F76000D92E1 /* fr */,\n\t\t\t\tF4111AC7265EE92200FD8950 /* es */,\n\t\t\t\tF4FC362D278F914200669B32 /* ja */,\n\t\t\t\tF43066C92A12EDE5002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePanePresentationOutlineViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AEC625F03141000D92E1 /* unknown_exception_type.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AEC525F03141000D92E1 /* en */,\n\t\t\t\tF495AEC725F0314A000D92E1 /* fr */,\n\t\t\t\tF4111AD5265EE92400FD8950 /* es */,\n\t\t\t\tF4FC363C278F914400669B32 /* ja */,\n\t\t\t\tF43066D82A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = unknown_exception_type.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AECA25F0320D000D92E1 /* EXC_CRASH_SIGABRT.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AEC925F0320D000D92E1 /* en */,\n\t\t\t\tF495AECB25F03213000D92E1 /* fr */,\n\t\t\t\tF4111ADA265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3641278F914400669B32 /* ja */,\n\t\t\t\tF43066DD2A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_CRASH_SIGABRT.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AECE25F033CC000D92E1 /* EXC_CRASH_SIGKILL.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AECD25F033CC000D92E1 /* en */,\n\t\t\t\tF495AECF25F033D0000D92E1 /* fr */,\n\t\t\t\tF4111ADB265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3642278F914400669B32 /* ja */,\n\t\t\t\tF43066DE2A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_CRASH_SIGKILL.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AED225F034C0000D92E1 /* EXC_BREAKPOINT_SIGTRAP.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AED125F034C0000D92E1 /* en */,\n\t\t\t\tF495AED325F034C4000D92E1 /* fr */,\n\t\t\t\tF4111AD9265EE92400FD8950 /* es */,\n\t\t\t\tF4FC3640278F914400669B32 /* ja */,\n\t\t\t\tF43066DC2A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_BREAKPOINT_SIGTRAP.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF495AED625F03820000D92E1 /* EXC_CRASH_Code Signature Invalid.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF495AED525F03820000D92E1 /* en */,\n\t\t\t\tF495AED725F03825000D92E1 /* fr */,\n\t\t\t\tF4111ADE265EE92500FD8950 /* es */,\n\t\t\t\tF4FC3645278F914400669B32 /* ja */,\n\t\t\t\tF43066E12A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = \"EXC_CRASH_Code Signature Invalid.html\";\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF497303C25F7F74B001D01FE /* InfoPlist.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF497303D25F7F74B001D01FE /* en */,\n\t\t\t\tF497303F25F7F7A6001D01FE /* fr */,\n\t\t\t\tF4111AE8265EE92600FD8950 /* es */,\n\t\t\t\tF4FC364F278F914500669B32 /* ja */,\n\t\t\t\tF43066EE2A12EDE9002AB430 /* he */,\n\t\t\t);\n\t\t\tname = InfoPlist.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A3A6E125ED7F450018053E /* CUICrashLogsSourceSmartEditorWindowController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4A3A6E025ED7F450018053E /* en */,\n\t\t\t\tF4A3A6E225ED7F460018053E /* fr */,\n\t\t\t\tF4111ACE265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3635278F914300669B32 /* ja */,\n\t\t\t\tF43066D12A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUICrashLogsSourceSmartEditorWindowController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A3A6E525ED81260018053E /* CUIPreferencePaneGeneralViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4A3A6E425ED81260018053E /* en */,\n\t\t\t\tF4A3A6E625ED81290018053E /* fr */,\n\t\t\t\tF4111AC5265EE92200FD8950 /* es */,\n\t\t\t\tF4FC362B278F914200669B32 /* ja */,\n\t\t\t\tF43066C72A12EDE5002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePaneGeneralViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A3A6E925ED817E0018053E /* CUIPreferencePaneCrashreporterViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4A3A6E825ED817E0018053E /* en */,\n\t\t\t\tF4A3A6EA25ED81800018053E /* fr */,\n\t\t\t\tF4111ACC265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3632278F914300669B32 /* ja */,\n\t\t\t\tF43066CE2A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePaneCrashreporterViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4A3A6ED25ED82F10018053E /* EXC_BAD_ACCESS_SIGBUS.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4A3A6EC25ED82F10018053E /* en */,\n\t\t\t\tF4A3A6EE25ED82F20018053E /* fr */,\n\t\t\t\tF4111AD6265EE92400FD8950 /* es */,\n\t\t\t\tF4FC363D278F914400669B32 /* ja */,\n\t\t\t\tF43066D92A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = EXC_BAD_ACCESS_SIGBUS.html;\n\t\t\tpath = Help;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4CC570B24A79EDA00150EC4 /* MainMenu.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF48CF60024A969B5002AD214 /* en */,\n\t\t\t\tF45A2D5725EC50960007D50E /* fr */,\n\t\t\t\tF4111AE7265EE92600FD8950 /* es */,\n\t\t\t\tF4FC364E278F914500669B32 /* ja */,\n\t\t\t\tF43066ED2A12EDE9002AB430 /* he */,\n\t\t\t);\n\t\t\tname = MainMenu.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4D6C56B2680028A00B78B3D /* RemoteCheck.strings */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4D6C56C2680028A00B78B3D /* en */,\n\t\t\t\tF4D6C56E268002DE00B78B3D /* fr */,\n\t\t\t\tF4D6C56F2680031E00B78B3D /* es */,\n\t\t\t\tF4FC3629278F914200669B32 /* ja */,\n\t\t\t\tF43066C52A12EDE4002AB430 /* he */,\n\t\t\t);\n\t\t\tname = RemoteCheck.strings;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4D7F15D25F04A620024E9A5 /* CUISymbolsFilesLibraryViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4D7F15C25F04A620024E9A5 /* en */,\n\t\t\t\tF4D7F15E25F04A630024E9A5 /* fr */,\n\t\t\t\tF4111ACA265EE92200FD8950 /* es */,\n\t\t\t\tF4FC3630278F914200669B32 /* ja */,\n\t\t\t\tF43066CC2A12EDE5002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUISymbolsFilesLibraryViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4D7F16125F04A9D0024E9A5 /* CUIPreferencePaneSymbolicationViewController.xib */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4D7F16025F04A9D0024E9A5 /* en */,\n\t\t\t\tF4D7F16225F04A9E0024E9A5 /* fr */,\n\t\t\t\tF4111ACB265EE92300FD8950 /* es */,\n\t\t\t\tF4FC3631278F914200669B32 /* ja */,\n\t\t\t\tF43066CD2A12EDE6002AB430 /* he */,\n\t\t\t);\n\t\t\tname = CUIPreferencePaneSymbolicationViewController.xib;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4E6ED9A2849695100766F9A /* unknown_termination_reason.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4E6ED9B2849695100766F9A /* en */,\n\t\t\t\tF4E6ED9D2849696000766F9A /* es */,\n\t\t\t\tF4E6ED9E2849696600766F9A /* fr */,\n\t\t\t\tF4E6ED9F2849696C00766F9A /* ja */,\n\t\t\t\tF43066E22A12EDE7002AB430 /* he */,\n\t\t\t);\n\t\t\tname = unknown_termination_reason.html;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4E6EDA2284969E500766F9A /* ENDPOINTSECURITY_2.html */ = {\n\t\t\tisa = PBXVariantGroup;\n\t\t\tchildren = (\n\t\t\t\tF4E6EDA3284969E500766F9A /* en */,\n\t\t\t\tF4E6EDA528496E2A00766F9A /* fr */,\n\t\t\t\tF43066E32A12EDE8002AB430 /* he */,\n\t\t\t\tF4CE09A42A76E43300BACB71 /* es */,\n\t\t\t\tF4CE09A52A76E44D00BACB71 /* ja */,\n\t\t\t);\n\t\t\tname = ENDPOINTSECURITY_2.html;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXVariantGroup section */\n\n/* Begin XCBuildConfiguration section */\n\t\tF4CC571A24A79EDA00150EC4 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = F43BA4E425F2674100D8D68A /* SharedConfigurationSettings.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tENABLE_HARDENED_RUNTIME = YES;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_SYMBOLS_PRIVATE_EXTERN = NO;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF4CC571B24A79EDA00150EC4 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = F43BA4E425F2674100D8D68A /* SharedConfigurationSettings.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++0x\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_HARDENED_RUNTIME = YES;\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu99;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t\tSDKROOT = macosx;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF4CC571D24A79EDA00150EC4 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES_ERROR;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 78;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tGCC_GENERATE_DEBUGGING_SYMBOLS = YES;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = app_unexpectedly/app_unexpectedly_Prefix.pch;\n\t\t\t\tINFOPLIST_FILE = app_unexpectedly/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = fr.whitebox.unexpectedly;\n\t\t\t\tPRODUCT_NAME = Unexpectedly;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF4CC571E24A79EDA00150EC4 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES_ERROR;\n\t\t\t\tCODE_SIGN_INJECT_BASE_ENTITLEMENTS = NO;\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tCURRENT_PROJECT_VERSION = 78;\n\t\t\t\tGCC_GENERATE_DEBUGGING_SYMBOLS = YES;\n\t\t\t\tGCC_PRECOMPILE_PREFIX_HEADER = YES;\n\t\t\t\tGCC_PREFIX_HEADER = app_unexpectedly/app_unexpectedly_Prefix.pch;\n\t\t\t\tINFOPLIST_FILE = app_unexpectedly/Info.plist;\n\t\t\t\tLD_RUNPATH_SEARCH_PATHS = \"$(inherited) @executable_path/../Frameworks\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = fr.whitebox.unexpectedly;\n\t\t\t\tPRODUCT_NAME = Unexpectedly;\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\tF4CC56FA24A79EDA00150EC4 /* Build configuration list for PBXProject \"app_unexpectedly\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF4CC571A24A79EDA00150EC4 /* Debug */,\n\t\t\t\tF4CC571B24A79EDA00150EC4 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF4CC571C24A79EDA00150EC4 /* Build configuration list for PBXNativeTarget \"Unexpectedly\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF4CC571D24A79EDA00150EC4 /* Debug */,\n\t\t\t\tF4CC571E24A79EDA00150EC4 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F4CC56F724A79EDA00150EC4 /* Project object */;\n}\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly.xcodeproj/project.xcworkspace/contents.xcworkspacedata",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Workspace\n   version = \"1.0\">\n   <FileRef\n      location = \"self:app_unexpectedly.xcodeproj\">\n   </FileRef>\n</Workspace>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDEDidComputeMac32BitWarning</key>\n\t<true/>\n</dict>\n</plist>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly.xcodeproj/xcshareddata/xcschemes/app_unexpectedly.xcscheme",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Scheme\n   LastUpgradeVersion = \"1010\"\n   version = \"1.3\">\n   <BuildAction\n      parallelizeBuildables = \"YES\"\n      buildImplicitDependencies = \"YES\">\n      <BuildActionEntries>\n         <BuildActionEntry\n            buildForTesting = \"YES\"\n            buildForRunning = \"YES\"\n            buildForProfiling = \"YES\"\n            buildForArchiving = \"YES\"\n            buildForAnalyzing = \"YES\">\n            <BuildableReference\n               BuildableIdentifier = \"primary\"\n               BlueprintIdentifier = \"F4CC56FE24A79EDA00150EC4\"\n               BuildableName = \"Unexpectedly.app\"\n               BlueprintName = \"Unexpectedly\"\n               ReferencedContainer = \"container:app_unexpectedly.xcodeproj\">\n            </BuildableReference>\n         </BuildActionEntry>\n      </BuildActionEntries>\n   </BuildAction>\n   <TestAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\">\n      <Testables>\n      </Testables>\n      <MacroExpansion>\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F4CC56FE24A79EDA00150EC4\"\n            BuildableName = \"Unexpectedly.app\"\n            BlueprintName = \"Unexpectedly\"\n            ReferencedContainer = \"container:app_unexpectedly.xcodeproj\">\n         </BuildableReference>\n      </MacroExpansion>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </TestAction>\n   <LaunchAction\n      buildConfiguration = \"Debug\"\n      selectedDebuggerIdentifier = \"Xcode.DebuggerFoundation.Debugger.LLDB\"\n      selectedLauncherIdentifier = \"Xcode.DebuggerFoundation.Launcher.LLDB\"\n      launchStyle = \"0\"\n      useCustomWorkingDirectory = \"NO\"\n      ignoresPersistentStateOnLaunch = \"NO\"\n      debugDocumentVersioning = \"YES\"\n      debugServiceExtension = \"internal\"\n      allowLocationSimulation = \"YES\">\n      <BuildableProductRunnable\n         runnableDebuggingMode = \"0\">\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F4CC56FE24A79EDA00150EC4\"\n            BuildableName = \"Unexpectedly.app\"\n            BlueprintName = \"Unexpectedly\"\n            ReferencedContainer = \"container:app_unexpectedly.xcodeproj\">\n         </BuildableReference>\n      </BuildableProductRunnable>\n      <CommandLineArguments>\n         <CommandLineArgument\n            argument = \"-_NS_4445425547\"\n            isEnabled = \"YES\">\n         </CommandLineArgument>\n         <CommandLineArgument\n            argument = \"YES\"\n            isEnabled = \"YES\">\n         </CommandLineArgument>\n      </CommandLineArguments>\n      <AdditionalOptions>\n      </AdditionalOptions>\n   </LaunchAction>\n   <ProfileAction\n      buildConfiguration = \"Release\"\n      shouldUseLaunchSchemeArgsEnv = \"YES\"\n      savedToolIdentifier = \"\"\n      useCustomWorkingDirectory = \"NO\"\n      debugDocumentVersioning = \"YES\">\n      <BuildableProductRunnable\n         runnableDebuggingMode = \"0\">\n         <BuildableReference\n            BuildableIdentifier = \"primary\"\n            BlueprintIdentifier = \"F4CC56FE24A79EDA00150EC4\"\n            BuildableName = \"Unexpectedly.app\"\n            BlueprintName = \"Unexpectedly\"\n            ReferencedContainer = \"container:app_unexpectedly.xcodeproj\">\n         </BuildableReference>\n      </BuildableProductRunnable>\n   </ProfileAction>\n   <AnalyzeAction\n      buildConfiguration = \"Debug\">\n   </AnalyzeAction>\n   <ArchiveAction\n      buildConfiguration = \"Release\"\n      revealArchiveInOrganizer = \"YES\">\n   </ArchiveAction>\n</Scheme>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly.xcodeproj/xcuserdata/stephane.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Bucket\n   type = \"1\"\n   version = \"2.0\">\n</Bucket>\n"
  },
  {
    "path": "app_unexpectedly/app_unexpectedly.xcodeproj/xcuserdata/stephane.xcuserdatad/xcschemes/xcschememanagement.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>SchemeUserState</key>\n\t<dict>\n\t\t<key>app_unexpectedly.xcscheme_^#shared#^_</key>\n\t\t<dict>\n\t\t\t<key>orderHint</key>\n\t\t\t<integer>0</integer>\n\t\t</dict>\n\t</dict>\n</dict>\n</plist>\n"
  },
  {
    "path": "build.sh",
    "content": "#!/bin/sh\n\nBASEDIR=\"$( dirname \"$0\" )\"\ncd \"$BASEDIR\"\n\nABSOLUTE_FOLDER_PATH=`pwd`\nABSOLUTE_BUILD_PATH=\"$ABSOLUTE_FOLDER_PATH\"/distribution/build\n\necho \"$ABSOLUTE_FOLDER_PATH\"\n\n## Clean and create the build folder\n\n/bin/rm -rf distribution/build\n\n/bin/mkdir -p distribution/build\n\n## Create the artifacts folder if needed\n\n/bin/mkdir -p distribution/artifacts\n\n# Retrieve the version\n\nVERSION=\"1.0\"\n\nif [ -f distribution/Version ];\nthen\n\n\tVERSION=`cat distribution/Version`\n\nfi\n\n## Build the application\n\npushd app_unexpectedly\n\n/usr/bin/xcrun agvtool next-version -all\n\n/usr/bin/xcrun agvtool new-marketing-version $VERSION\n\n/usr/bin/xcodebuild -project \"app_unexpectedly.xcodeproj\" clean build -configuration Release -scheme \"app_unexpectedly\" -derivedDataPath \"$ABSOLUTE_BUILD_PATH\" CONFIGURATION_BUILD_DIR=\"$ABSOLUTE_BUILD_PATH\"\n\npopd\n\n\n## Notarize if supported\n\nif [ -f request_notarization-notarytool.sh ]; then\n\n\t/bin/sh request_notarization-notarytool.sh\n\nfi\n\n## Create the disk image\n\npushd distribution\n\nDISKIMAGE_NAME=\"Unexpectedly\"\n\n## Convert disk image template to read-write disk image\n\nif [ -f build/\"$DISKIMAGE_NAME\"_rw.dmg ]\nthen \n\t/bin/rm build/\"$DISKIMAGE_NAME\"_rw.dmg\nfi\n\n/usr/bin/hdiutil convert Template/Template_ro.dmg -format UDRW -o build/\"$DISKIMAGE_NAME\"_rw.dmg > /dev/null\n\n## Mount the disk image\n\n/usr/bin/hdiutil attach build/\"$DISKIMAGE_NAME\"_rw.dmg -mountpoint build/diskimage_rw > /dev/null\n\n## Rename the disk image\n\nif [ -f Version ];\nthen\n\n\t/usr/sbin/diskutil rename \"$DISKIMAGE_NAME\" \"$DISKIMAGE_NAME $VERSION\" \nfi\n\n## Copy the ReadMe to the disk image and prevent edition\n\nif [ -f \"Documents/ReadMe.rtf\" ]\nthen\n\n\t/usr/bin/sed '2 s/^/\\\\readonlydoc1/' <\"Documents/ReadMe.rtf\" > \"build/diskimage_rw/ReadMe.rtf\"\n\nelse\n\n\techo \"Missing ReadMe.rtf\"\nfi\n\n## Copy the application to the disk image\n\nif [ -d build/Unexpectedly.app ]\nthen\n\n\t/bin/cp -R build/Unexpectedly.app build/diskimage_rw/\n\nelse\n\n\techo \"Missing application\"\n\nfi\n\n## Remove useless files for a disk image\n\n/bin/rm \"build/diskimage_rw/Desktop DB\"\n/bin/rm \"build/diskimage_rw/Desktop DF\"\n/bin/rm -r build/diskimage_rw/.fseventsd\n\n## Unmount the disk image\n\n/usr/bin/hdiutil detach build/diskimage_rw > /dev/null\n\n## Convert disk image to read-only\n\nif [ -f artifacts/\"$DISKIMAGE_NAME\".dmg ]\nthen \n\t/bin/rm artifacts/\"$DISKIMAGE_NAME\".dmg\nfi\n\n/usr/bin/hdiutil convert build/\"$DISKIMAGE_NAME\"_rw.dmg -format UDZO -o artifacts/\"$DISKIMAGE_NAME\".dmg > /dev/null\n\n## Remove the temporary disk image\n\nif [ -f build/\"$DISKIMAGE_NAME\"_rw.dmg ]\nthen \n\t/bin/rm build/\"$DISKIMAGE_NAME\"_rw.dmg\nfi\n\npopd\n\nexit 0\n"
  },
  {
    "path": "distribution/Documents/ReadMe.rtf",
    "content": "{\\rtf1\\ansi\\ansicpg1252\\cocoartf1671\\cocoasubrtf600\n{\\fonttbl\\f0\\fswiss\\fcharset0 Helvetica;\\f1\\fnil\\fcharset0 LucidaGrande;\\f2\\fswiss\\fcharset0 Helvetica-Bold;\n}\n{\\colortbl;\\red255\\green255\\blue255;\\red46\\green111\\blue253;\\red0\\green0\\blue0;\\red255\\green255\\blue255;\n\\red100\\green100\\blue100;\\red59\\green24\\blue255;}\n{\\*\\expandedcolortbl;;\\cssrgb\\c22750\\c53231\\c99501;\\cssrgb\\c0\\c0\\c0;\\cssrgb\\c100000\\c100000\\c100000;\n\\cssrgb\\c46667\\c46667\\c46667;\\csgenericrgb\\c23137\\c9412\\c100000;}\n\\margl1440\\margr1440\\vieww16440\\viewh23220\\viewkind0\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\n\\f0\\fs24 \\cf0 \\\n\n\\fs72 Unexpectedly 1.0 (\n\\fs54 beta 4\n\\fs72 )\n\\fs24 \\\n\\\n\\\n\n\\f1 Unexpectedly is a macOS utility to browse crash reports.\n\\f0 \\\n\\\n\n\\f2\\b\\fs28 \\\nSystem Requirements \\\n\n\\f0\\b0\\fs24 \\\n\n\\f1 \t\\'95  Intel or Apple Silicon based Mac\\\n\t\\'95  macOS 10.13 or later\n\\f0 \\\n\\\n\\\n\n\\f2\\b\\fs28 Installing Unexpectedly\n\\f0\\b0\\fs24 \\\n\\\n\n\\f1 To manually install Unexpectedly on a Mac, follow these instructions: \\\n\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\sl312\\slmult1\\partightenfactor0\n\\cf0 \t\\cf2 1.\\cf0   Double-click the Unexpectedly.dmg disk image file to mount it on the desktop.\\\n\t\\cf2 2.\\cf0   Double-click the Unexpectedly volume.\\\n\t\\cf2 3.\\cf0   Drag and drop the Unexpectedly.app application to the Applications folder of your Mac.\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\n\\f0 \\cf0 \\\n\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\sl312\\slmult1\\partightenfactor0\n\n\\f2\\b\\fs28 \\cf0 First launch of Unexpectedly\n\\f0\\b0\\fs24 \\\n\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\sl312\\slmult1\\partightenfactor0\n\n\\f1 \\cf0 Just double-click the icon of the Unexpectedly application in the Finder as usual.\n\\f0 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\\cf0 \\\n\\\n\n\\f2\\b\\fs28 Legal Stuff\n\\f0\\b0\\fs24 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\\cf0 \\\n\n\\f1 Copyright \\'a9 2021-2026, St\\'e9phane Sudre. All rights reserved.\\\n\\\nRedistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\\\n\\\nRedistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\\\n\\\nRedistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\\\n\\\nNeither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\\\n\\\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\\\n\\\nLicense for the third party code Included in this software: \\\n\\\n\\pard\\tx593\\pardeftab720\\li232\\fi14\\partightenfactor0\n\\cf0 NoodleLineNumberView & NoodleLineNumberMarker\n\\f2\\b\\fs22 \\cf3 \\cb4 \\expnd0\\expndtw0\\kerning0\n\\\n\n\\f0\\b0 \\\n\n\\f1\\fs24 \\cf0 \\cb1 \\kerning1\\expnd0\\expndtw0 Created by Paul Kim on 9/28/08.\\\nCopyright (c) 2008 Noodlesoft, LLC. All rights reserved.\\\n\\\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\\\n\\\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\\\n\\\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\\\n\n\\f0 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\n\\f1 \\cf0 License for the brushed-alum.png file:\n\\f2\\b\\fs26 \\cf5 \\expnd0\\expndtw0\\kerning0\n\\\n\\pard\\pardeftab720\\partightenfactor0\n\\cf5 \\\n\\pard\\tx593\\pardeftab720\\li232\\fi14\\partightenfactor0\n\n\\f1\\b0\\fs24 \\cf0 \\kerning1\\expnd0\\expndtw0 CC BY-SA 3.0 - Subtle Patterns \\'a9 {\\field{\\*\\fldinst{HYPERLINK \"https://www.toptal.com/designers\"}}{\\fldrslt Toptal Designers}}\\\n\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\\cf0 License for the NSMenuItem+RSCore.h/.m files:\\\n\\\n\\pard\\tx593\\pardeftab720\\li232\\fi14\\partightenfactor0\n\n\\f0 \\cf0 Copyright (c) 2002-2025 Brent Simmons\\\n\\\nPermission is hereby granted, free of charge, to any person obtaining a copy\\\nof this software and associated documentation files (the \"Software\"), to deal\\\nin the Software without restriction, including without limitation the rights\\\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\\\ncopies of the Software, and to permit persons to whom the Software is\\\nfurnished to do so, subject to the following conditions:\\\n\\\nThe above copyright notice and this permission notice shall be included in all\\\ncopies or substantial portions of the Software.\\\n\\\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\\\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\\\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\\\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\\\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\\\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\\\nSOFTWARE.\\\n\\\n\\pard\\pardeftab720\\partightenfactor0\n\\cf0 \\\n\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\n\\f2\\b\\fs28 \\cf0 Bug Reports, Suggestions\n\\f0\\b0\\fs24 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\\cf0 \\\n\n\\f1 For bug reports, suggestions and localizations , please send an e-mail to \n\\f0 \\cf6 \\ul \\ulc6 dev.unexpectedly@gmail.com\n\\f1 \\cf0 \\ulnone  .\n\\f0 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\\cf0 \\\n\\\n\n\\f2\\b\\fs28 Price\n\\f0\\b0\\fs24 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\\cf0 \\\n\n\\f1 Unexpectedly is offered free of charge.\n\\f0 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\\cf0 \\\n\\\n\n\\f2\\b\\fs28 Source Code\n\\f0\\b0\\fs24 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\\cf0 \\\n\n\\f1 The source code for Unexpectedly is available at \n\\f0 \\cf6 \\ul https://github.com/packagesdev/unexpectedly\\cf0 \\ulnone \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\\cf0 \\\n\\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\n\\f1\\fs20 \\cf0 Apple, Mac, Mac OS and macOS are trademarks of Apple, Inc. \n\\fs24 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\pardirnatural\\partightenfactor0\n\n\\f0 \\cf0 \\\n\\pard\\tx566\\tx1133\\tx1700\\tx2267\\tx2834\\tx3401\\tx3968\\tx4535\\tx5102\\tx5669\\tx6236\\tx6803\\li139\\fi-4\\partightenfactor0\n\n\\fs18 \\cf0 Disclaimer: It is not possible to guarantee that the crash reports of an application will not look better than the application itself.}"
  },
  {
    "path": "distribution/Unexpectedly.pkgproj",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>PROJECT</key>\n\t<dict>\n\t\t<key>PACKAGE_FILES</key>\n\t\t<dict>\n\t\t\t<key>DEFAULT_INSTALL_LOCATION</key>\n\t\t\t<string>/</string>\n\t\t\t<key>HIERARCHY</key>\n\t\t\t<dict>\n\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t<array>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t<array>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>BUNDLE_CAN_DOWNGRADE</key>\n\t\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t\t<key>BUNDLE_POSTINSTALL_PATH</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>BUNDLE_PREINSTALL_PATH</key>\n\t\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>build/Unexpectedly.app</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>3</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t<integer>80</integer>\n\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t<string>Applications</string>\n\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t<integer>509</integer>\n\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t<array>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>80</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Application Support</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Automator</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Documentation</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Extensions</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Filesystems</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Frameworks</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Input Methods</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Internet Plug-Ins</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>LaunchAgents</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>LaunchDaemons</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>PreferencePanes</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Preferences</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>80</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Printers</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>PrivilegedHelperTools</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>1005</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>QuickLook</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>QuickTime</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Screen Savers</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Scripts</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Services</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Widgets</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t<string>Library</string>\n\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t</dict>\n\t\t\t\t\t<dict>\n\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t<array>\n\t\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t\t<key>CHILDREN</key>\n\t\t\t\t\t\t\t\t<array/>\n\t\t\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t\t\t<string>Shared</string>\n\t\t\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t\t\t<integer>1023</integer>\n\t\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t</array>\n\t\t\t\t\t\t<key>GID</key>\n\t\t\t\t\t\t<integer>80</integer>\n\t\t\t\t\t\t<key>PATH</key>\n\t\t\t\t\t\t<string>Users</string>\n\t\t\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t\t\t<integer>493</integer>\n\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t<key>UID</key>\n\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t</dict>\n\t\t\t\t</array>\n\t\t\t\t<key>GID</key>\n\t\t\t\t<integer>0</integer>\n\t\t\t\t<key>PATH</key>\n\t\t\t\t<string>/</string>\n\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t<integer>0</integer>\n\t\t\t\t<key>PERMISSIONS</key>\n\t\t\t\t<integer>493</integer>\n\t\t\t\t<key>TYPE</key>\n\t\t\t\t<integer>1</integer>\n\t\t\t\t<key>UID</key>\n\t\t\t\t<integer>0</integer>\n\t\t\t</dict>\n\t\t\t<key>PAYLOAD_TYPE</key>\n\t\t\t<integer>0</integer>\n\t\t\t<key>PRESERVE_EXTENDED_ATTRIBUTES</key>\n\t\t\t<false/>\n\t\t\t<key>SHOW_INVISIBLE</key>\n\t\t\t<false/>\n\t\t\t<key>SPLIT_FORKS</key>\n\t\t\t<true/>\n\t\t\t<key>TREAT_MISSING_FILES_AS_WARNING</key>\n\t\t\t<false/>\n\t\t\t<key>VERSION</key>\n\t\t\t<integer>5</integer>\n\t\t</dict>\n\t\t<key>PACKAGE_SCRIPTS</key>\n\t\t<dict>\n\t\t\t<key>POSTINSTALL_PATH</key>\n\t\t\t<dict>\n\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t<integer>0</integer>\n\t\t\t</dict>\n\t\t\t<key>PREINSTALL_PATH</key>\n\t\t\t<dict>\n\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t<integer>0</integer>\n\t\t\t</dict>\n\t\t\t<key>RESOURCES</key>\n\t\t\t<array/>\n\t\t</dict>\n\t\t<key>PACKAGE_SETTINGS</key>\n\t\t<dict>\n\t\t\t<key>AUTHENTICATION</key>\n\t\t\t<integer>1</integer>\n\t\t\t<key>CONCLUSION_ACTION</key>\n\t\t\t<integer>0</integer>\n\t\t\t<key>FOLLOW_SYMBOLIC_LINKS</key>\n\t\t\t<false/>\n\t\t\t<key>IDENTIFIER</key>\n\t\t\t<string>fr.whitebox.pkg.unexpectedly-app</string>\n\t\t\t<key>LOCATION</key>\n\t\t\t<integer>0</integer>\n\t\t\t<key>NAME</key>\n\t\t\t<string></string>\n\t\t\t<key>OVERWRITE_PERMISSIONS</key>\n\t\t\t<false/>\n\t\t\t<key>PAYLOAD_SIZE</key>\n\t\t\t<integer>-1</integer>\n\t\t\t<key>REFERENCE_PATH</key>\n\t\t\t<string></string>\n\t\t\t<key>RELOCATABLE</key>\n\t\t\t<false/>\n\t\t\t<key>USE_HFS+_COMPRESSION</key>\n\t\t\t<false/>\n\t\t\t<key>VERSION</key>\n\t\t\t<string>1.0</string>\n\t\t</dict>\n\t\t<key>PROJECT_COMMENTS</key>\n\t\t<dict>\n\t\t\t<key>NOTES</key>\n\t\t\t<data>\n\t\t\t</data>\n\t\t</dict>\n\t\t<key>PROJECT_SETTINGS</key>\n\t\t<dict>\n\t\t\t<key>BUILD_PATH</key>\n\t\t\t<dict>\n\t\t\t\t<key>PATH</key>\n\t\t\t\t<string>build</string>\n\t\t\t\t<key>PATH_TYPE</key>\n\t\t\t\t<integer>1</integer>\n\t\t\t</dict>\n\t\t\t<key>EXCLUDED_FILES</key>\n\t\t\t<array>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>PATTERNS_ARRAY</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.DS_Store</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t\t<key>PROTECTED</key>\n\t\t\t\t\t<true/>\n\t\t\t\t\t<key>PROXY_NAME</key>\n\t\t\t\t\t<string>Remove .DS_Store files</string>\n\t\t\t\t\t<key>PROXY_TOOLTIP</key>\n\t\t\t\t\t<string>Remove \".DS_Store\" files created by the Finder.</string>\n\t\t\t\t\t<key>STATE</key>\n\t\t\t\t\t<true/>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>PATTERNS_ARRAY</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.pbdevelopment</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t\t<key>PROTECTED</key>\n\t\t\t\t\t<true/>\n\t\t\t\t\t<key>PROXY_NAME</key>\n\t\t\t\t\t<string>Remove .pbdevelopment files</string>\n\t\t\t\t\t<key>PROXY_TOOLTIP</key>\n\t\t\t\t\t<string>Remove \".pbdevelopment\" files created by ProjectBuilder or Xcode.</string>\n\t\t\t\t\t<key>STATE</key>\n\t\t\t\t\t<true/>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>PATTERNS_ARRAY</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>CVS</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.cvsignore</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.cvspass</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.svn</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.git</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>.gitignore</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t\t<key>PROTECTED</key>\n\t\t\t\t\t<true/>\n\t\t\t\t\t<key>PROXY_NAME</key>\n\t\t\t\t\t<string>Remove SCM metadata</string>\n\t\t\t\t\t<key>PROXY_TOOLTIP</key>\n\t\t\t\t\t<string>Remove helper files and folders used by the CVS, SVN or Git Source Code Management systems.</string>\n\t\t\t\t\t<key>STATE</key>\n\t\t\t\t\t<true/>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>PATTERNS_ARRAY</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>classes.nib</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>designable.db</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>info.nib</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>0</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t\t<key>PROTECTED</key>\n\t\t\t\t\t<true/>\n\t\t\t\t\t<key>PROXY_NAME</key>\n\t\t\t\t\t<string>Optimize nib files</string>\n\t\t\t\t\t<key>PROXY_TOOLTIP</key>\n\t\t\t\t\t<string>Remove \"classes.nib\", \"info.nib\" and \"designable.nib\" files within .nib bundles.</string>\n\t\t\t\t\t<key>STATE</key>\n\t\t\t\t\t<true/>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>PATTERNS_ARRAY</key>\n\t\t\t\t\t<array>\n\t\t\t\t\t\t<dict>\n\t\t\t\t\t\t\t<key>REGULAR_EXPRESSION</key>\n\t\t\t\t\t\t\t<false/>\n\t\t\t\t\t\t\t<key>STRING</key>\n\t\t\t\t\t\t\t<string>Resources Disabled</string>\n\t\t\t\t\t\t\t<key>TYPE</key>\n\t\t\t\t\t\t\t<integer>1</integer>\n\t\t\t\t\t\t</dict>\n\t\t\t\t\t</array>\n\t\t\t\t\t<key>PROTECTED</key>\n\t\t\t\t\t<true/>\n\t\t\t\t\t<key>PROXY_NAME</key>\n\t\t\t\t\t<string>Remove Resources Disabled folders</string>\n\t\t\t\t\t<key>PROXY_TOOLTIP</key>\n\t\t\t\t\t<string>Remove \"Resources Disabled\" folders.</string>\n\t\t\t\t\t<key>STATE</key>\n\t\t\t\t\t<true/>\n\t\t\t\t</dict>\n\t\t\t\t<dict>\n\t\t\t\t\t<key>SEPARATOR</key>\n\t\t\t\t\t<true/>\n\t\t\t\t</dict>\n\t\t\t</array>\n\t\t\t<key>NAME</key>\n\t\t\t<string>Unexpectedly</string>\n\t\t\t<key>PAYLOAD_ONLY</key>\n\t\t\t<false/>\n\t\t</dict>\n\t</dict>\n\t<key>TYPE</key>\n\t<integer>1</integer>\n\t<key>VERSION</key>\n\t<integer>2</integer>\n</dict>\n</plist>\n"
  },
  {
    "path": "distribution/Version",
    "content": "1.0\n"
  },
  {
    "path": "plugin_quicklook/crashreport/GeneratePreviewForURL.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#include <CoreServices/CoreServices.h>\n#include <QuickLook/QuickLook.h>\n\n#import \"CUICrashLogsProvider.h\"\n\n#import \"CUIIPSTransform.h\"\n#import \"CUICrashDataTransform.h\"\n\n#import \"CUIThemesManager.h\"\n\n#import \"CUIApplicationPreferences+Themes.h\"\n#import \"CUIThemeItemsGroup+UI.h\"\n\n#import \"QLCUIThemesProvider.h\"\n\nextern NSString * const CUITextModeDisplaySettingsVisibleSectionKey;\n\nextern NSString * const CUITextModeDisplaySettingsVisibleStackFrameComponentsKey;\n\n\nOSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview, CFURLRef url, CFStringRef contentTypeUTI, CFDictionaryRef options);\n\nvoid CancelPreviewGeneration(void *thisInterface, QLPreviewRequestRef preview);\n\n/* -----------------------------------------------------------------------------\n   Generate a preview for file\n\n   This function's job is to create preview for designated file\n   ----------------------------------------------------------------------------- */\n\nOSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview, CFURLRef url, CFStringRef contentTypeUTI, CFDictionaryRef options)\n{\n    @autoreleasepool\n    {\n        CUIRawCrashLog * tCrashLog=[[CUICrashLogsProvider defaultProvider] crashLogWithContentsOfFile:((__bridge NSURL *)url).path error:NULL];\n        \n        if (tCrashLog==nil)\n            return noErr;\n        \n        [tCrashLog finalizeParsing];\n        \n        CUITextModeDisplaySettings * tDisplaySettings=[CUITextModeDisplaySettings new];\n        \n        tDisplaySettings.visibleSections=CUIDocumentAllSections;\n        tDisplaySettings.visibleStackFrameComponents=CUIStackFrameAllComponents;\n        \n        QLCUIThemesProvider * tThemesProvider = [QLCUIThemesProvider new];\n        \n        CUIReportThemedTransform * tReportThemedTransform=nil;\n        \n        if (tCrashLog.ipsReport!=nil)\n        {\n            tReportThemedTransform=[[CUIIPSTransform alloc] initWithThemesProvider:tThemesProvider];\n            tReportThemedTransform.input=tCrashLog.ipsReport;\n        }\n        else\n        {\n            tReportThemedTransform=[[CUICrashDataTransform alloc] initWithThemesProvider:tThemesProvider];\n            tReportThemedTransform.input=tCrashLog;\n        }\n        \n        tReportThemedTransform.displaySettings=tDisplaySettings;\n        tReportThemedTransform.fontSizeDelta=0;\n        tReportThemedTransform.hyperlinksStyle=CUIHyperlinksNone;\n        \n        if ([tReportThemedTransform transform]==NO)\n        {\n            // A COMPLETER\n        }\n        \n        NSAttributedString * tAttributedString=tReportThemedTransform.output;\n        \n        CUIThemeItemsGroup * tGroup=[tThemesProvider.currentTheme itemsGroupWithIdentifier:[CUIApplicationPreferences groupIdentifierForPresentationMode:CUIPresentationModeText]];\n        \n        NSColor * tBackgroundColor=[tGroup attributesForItem:CUIThemeItemBackground].color;\n        \n        NSData *tRTFData = [tAttributedString dataFromRange:NSMakeRange(0, tAttributedString.length)\n                                        documentAttributes:@{\n                                                             NSDocumentTypeDocumentAttribute:NSRTFTextDocumentType,\n                                                             NSBackgroundColorDocumentAttribute:tBackgroundColor\n                                                             }\n                                                     error:NULL];\n        \n        if (tRTFData==nil)\n            return noErr;\n        \n        QLPreviewRequestSetDataRepresentation(preview,\n                                              (__bridge CFDataRef)tRTFData,\n                                              kUTTypeRTF,\n                                              NULL);\n    }\n    \n    return noErr;\n}\n\nvoid CancelPreviewGeneration(void *thisInterface, QLPreviewRequestRef preview)\n{\n    // Implement only if supported\n}\n"
  },
  {
    "path": "plugin_quicklook/crashreport/GenerateThumbnailForURL.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Cocoa/Cocoa.h>\n\n#include <CoreFoundation/CoreFoundation.h>\n#include <CoreServices/CoreServices.h>\n#include <QuickLook/QuickLook.h>\n\n#import \"CUICrashLogsProvider.h\"\n\n#import \"CUIThemesManager.h\"\n\n#import \"CUIApplicationPreferences+Themes.h\"\n#import \"CUIThemeItemsGroup+UI.h\"\n\n#import \"CUIIPSTransform.h\"\n#import \"CUICrashDataTransform.h\"\n\n#import \"QLCUIThemesProvider.h\"\n\nextern const CFStringRef kQLThumbnailPropertyIconFlavorKey;\n\nOSStatus GenerateThumbnailForURL(void *thisInterface, QLThumbnailRequestRef thumbnail, CFURLRef url, CFStringRef contentTypeUTI, CFDictionaryRef options, CGSize maxSize);\nvoid CancelThumbnailGeneration(void *thisInterface, QLThumbnailRequestRef thumbnail);\n\n/* -----------------------------------------------------------------------------\n    Generate a thumbnail for file\n\n   This function's job is to create thumbnail for designated file as fast as possible\n   ----------------------------------------------------------------------------- */\n\nOSStatus GenerateThumbnailForURL(void *thisInterface, QLThumbnailRequestRef thumbnail, CFURLRef url, CFStringRef contentTypeUTI, CFDictionaryRef options, CGSize maxSize)\n{\n    CUIRawCrashLog * tCrashLog=[[CUICrashLogsProvider defaultProvider] crashLogWithContentsOfFile:((__bridge NSURL *)url).path error:NULL];\n    \n    if (tCrashLog==nil)\n        return noErr;\n    \n    [tCrashLog finalizeParsing];\n    \n    CUITextModeDisplaySettings * tDisplaySettings=[CUITextModeDisplaySettings new];\n    \n    tDisplaySettings.visibleSections=CUIDocumentAllSections;\n    tDisplaySettings.visibleStackFrameComponents=CUIStackFrameAllComponents;\n    \n    QLCUIThemesProvider * tThemesProvider = [QLCUIThemesProvider new];\n    \n    CUIReportThemedTransform * tReportThemedTransform=nil;\n    \n    if (tCrashLog.ipsReport!=nil)\n    {\n        tReportThemedTransform=[[CUIIPSTransform alloc] initWithThemesProvider:tThemesProvider];\n        tReportThemedTransform.input=tCrashLog.ipsReport;\n    }\n    else\n    {\n        tReportThemedTransform=[[CUICrashDataTransform alloc] initWithThemesProvider:tThemesProvider];\n        tReportThemedTransform.input=tCrashLog;\n    }\n    \n    tReportThemedTransform.displaySettings=tDisplaySettings;\n    tReportThemedTransform.fontSizeDelta=0;\n    tReportThemedTransform.hyperlinksStyle=CUIHyperlinksNone;\n\n    \n    if ([tReportThemedTransform transform]==NO)\n    {\n        // A COMPLETER\n    }\n    \n    NSAttributedString * tAttributedString=tReportThemedTransform.output;\n    \n    CUIThemeItemsGroup * tGroup=[tThemesProvider.currentTheme itemsGroupWithIdentifier:[CUIApplicationPreferences groupIdentifierForPresentationMode:CUIPresentationModeText]];\n    \n    NSColor * tBackgroundColor=[tGroup attributesForItem:CUIThemeItemBackground].color;\n    \n    NSData *tRTFData = [tAttributedString dataFromRange:NSMakeRange(0, tAttributedString.length)\n                                     documentAttributes:@{\n                                                          NSDocumentTypeDocumentAttribute:NSRTFTextDocumentType,\n                                                          NSBackgroundColorDocumentAttribute:tBackgroundColor\n                                                          }\n                                                  error:NULL];\n    \n    if (tRTFData==nil)\n        return noErr;\n    \n    NSDictionary * tProperties=@{\n                                    (__bridge NSString *)kQLThumbnailPropertyExtensionKey:@\"\",\n                                    (__bridge NSString *)kQLThumbnailPropertyIconFlavorKey:@(9),\n                                 };\n    \n    QLThumbnailRequestSetThumbnailWithDataRepresentation(thumbnail, (__bridge CFDataRef)tRTFData, kUTTypeRTF, NULL,(__bridge CFDictionaryRef)tProperties);\n    \n    return noErr;\n}\n\nvoid CancelThumbnailGeneration(void *thisInterface, QLThumbnailRequestRef thumbnail)\n{\n    // Implement only if supported\n}\n"
  },
  {
    "path": "plugin_quicklook/crashreport/Info.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>CFBundleDevelopmentRegion</key>\n\t<string>$(DEVELOPMENT_LANGUAGE)</string>\n\t<key>CFBundleDocumentTypes</key>\n\t<array>\n\t\t<dict>\n\t\t\t<key>CFBundleTypeRole</key>\n\t\t\t<string>QLGenerator</string>\n\t\t\t<key>LSItemContentTypes</key>\n\t\t\t<array>\n\t\t\t\t<string>com.apple.crashreport</string>\n\t\t\t</array>\n\t\t</dict>\n\t</array>\n\t<key>CFBundleExecutable</key>\n\t<string>$(EXECUTABLE_NAME)</string>\n\t<key>CFBundleIdentifier</key>\n\t<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>\n\t<key>CFBundleInfoDictionaryVersion</key>\n\t<string>6.0</string>\n\t<key>CFBundleName</key>\n\t<string>$(PRODUCT_NAME)</string>\n\t<key>CFBundleShortVersionString</key>\n\t<string>1.0</string>\n\t<key>CFBundleVersion</key>\n\t<string>1</string>\n\t<key>CFPlugInDynamicRegisterFunction</key>\n\t<string></string>\n\t<key>CFPlugInDynamicRegistration</key>\n\t<string>NO</string>\n\t<key>CFPlugInFactories</key>\n\t<dict>\n\t\t<key>411DC9EF-E613-47F4-8F9E-641ACBEC733E</key>\n\t\t<string>QuickLookGeneratorPluginFactory</string>\n\t</dict>\n\t<key>CFPlugInTypes</key>\n\t<dict>\n\t\t<key>5E2D9680-5022-40FA-B806-43349622E5B9</key>\n\t\t<array>\n\t\t\t<string>411DC9EF-E613-47F4-8F9E-641ACBEC733E</string>\n\t\t</array>\n\t</dict>\n\t<key>CFPlugInUnloadFunction</key>\n\t<string></string>\n\t<key>NSHumanReadableCopyright</key>\n\t<string>Copyright © 2021-2022 Stéphane Sudre. All rights reserved.</string>\n\t<key>QLNeedsToBeRunInMainThread</key>\n\t<true/>\n\t<key>QLPreviewHeight</key>\n\t<integer>800</integer>\n\t<key>QLPreviewWidth</key>\n\t<integer>800</integer>\n\t<key>QLSupportsConcurrentRequests</key>\n\t<false/>\n\t<key>QLThumbnailMinimumSize</key>\n\t<integer>129</integer>\n</dict>\n</plist>\n"
  },
  {
    "path": "plugin_quicklook/crashreport/NSUserDefaults+UNXQuickLookGenerator.h",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import <Foundation/Foundation.h>\n\n@interface NSUserDefaults (UNXQuickLookGenerator)\n\n@end\n"
  },
  {
    "path": "plugin_quicklook/crashreport/NSUserDefaults+UNXQuickLookGenerator.m",
    "content": "/*\n Copyright (c) 2021, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n// Category so that the QuickLookGenerator can access the main application preferences as if it was its own.\n\n#import \"NSUserDefaults+UNXQuickLookGenerator.h\"\n\n@implementation NSUserDefaults (UNXQuickLookGenerator)\n\n+ (NSUserDefaults *)standardUserDefaults\n{\n    return [[NSUserDefaults alloc] initWithSuiteName:@\"fr.whitebox.unexpectedly\"];\n}\n\n@end\n"
  },
  {
    "path": "plugin_quicklook/crashreport/QLCUIThemesProvider.h",
    "content": "/*\n Copyright (c) 2021-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n#import \"CUITheme.h\"\n\n@interface QLCUIThemesProvider : NSObject <CUIThemesProvider>\n\n@end\n"
  },
  {
    "path": "plugin_quicklook/crashreport/QLCUIThemesProvider.m",
    "content": "/*\n Copyright (c) 2021-2025, Stephane Sudre\n All rights reserved.\n \n Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:\n \n - Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.\n - Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.\n - Neither the name of the WhiteBox nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.\n \n THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\n// Category to replace the init and currentTheme methods as defined in the main application.\n// For the preview and thumbnail, use the default theme UUID.\n\n#import \"QLCUIThemesProvider.h\"\n\nstatic NSMutableDictionary<NSString *, CUITheme *> * sQLThemeRegistry=nil;\n\nNSString * const QLCUIThemesQuickLookGeneratorThemeUUIDKey=@\"themes.quicklook-generator.UUID\";\n\n@implementation QLCUIThemesProvider\n\n- (instancetype)init\n{\n    self=[super init];\n    \n    if (self!=nil)\n    {\n        [[NSUserDefaults standardUserDefaults] registerDefaults:@{\n                                                                 QLCUIThemesQuickLookGeneratorThemeUUIDKey:@\"UUID2\"\n                                                                  \n                                                                  }];\n        \n        sQLThemeRegistry=[NSMutableDictionary dictionary];\n        \n        NSArray * tThemesArray=[NSArray arrayWithContentsOfURL:[[NSBundle bundleForClass:QLCUIThemesProvider.class] URLForResource:@\"default_themes\" withExtension:@\"plist\"]];\n        \n        for (NSDictionary * tThemeRepresentation in tThemesArray)\n        {\n            CUITheme * tTheme=[[CUITheme alloc] initWithRepresentation:tThemeRepresentation];\n            \n            if (tTheme==nil)\n            {\n                NSLog(@\"Archive representation of theme could not be loaded\");\n                \n                return nil;\n            }\n            \n            sQLThemeRegistry[tTheme.UUID]=tTheme;\n        }\n    }\n    \n    return self;\n}\n\n#pragma mark -\n\n- (NSArray<CUITheme *> *)allThemes\n{\n    return sQLThemeRegistry.allValues;\n}\n\n- (CUITheme *)currentTheme\n{\n    return sQLThemeRegistry[[[NSUserDefaults standardUserDefaults] objectForKey:QLCUIThemesQuickLookGeneratorThemeUUIDKey]];\n}\n\n@end\n"
  },
  {
    "path": "plugin_quicklook/crashreport/main.c",
    "content": "//==============================================================================\n//\n//  DO NO MODIFY THE CONTENT OF THIS FILE\n//\n//  This file contains the generic CFPlug-in code necessary for your generator\n//  To complete your generator implement the function in GenerateThumbnailForURL/GeneratePreviewForURL.c\n//\n//==============================================================================\n\n\n\n\n\n\n#include <CoreFoundation/CoreFoundation.h>\n#include <CoreFoundation/CFPlugInCOM.h>\n#include <CoreServices/CoreServices.h>\n#include <QuickLook/QuickLook.h>\n\n// -----------------------------------------------------------------------------\n//  constants\n// -----------------------------------------------------------------------------\n\n// Don't modify this line\n#define PLUGIN_ID \"921B146B-60AC-4F91-8AFB-EB28AA72E8DC\"\n\n//\n// Below is the generic glue code for all plug-ins.\n//\n// You should not have to modify this code aside from changing\n// names if you decide to change the names defined in the Info.plist\n//\n\n\n// -----------------------------------------------------------------------------\n//  typedefs\n// -----------------------------------------------------------------------------\n\n// The thumbnail generation function to be implemented in GenerateThumbnailForURL.c\nOSStatus GenerateThumbnailForURL(void *thisInterface, QLThumbnailRequestRef thumbnail, CFURLRef url, CFStringRef contentTypeUTI, CFDictionaryRef options, CGSize maxSize);\nvoid CancelThumbnailGeneration(void* thisInterface, QLThumbnailRequestRef thumbnail);\n\n// The preview generation function to be implemented in GeneratePreviewForURL.c\nOSStatus GeneratePreviewForURL(void *thisInterface, QLPreviewRequestRef preview, CFURLRef url, CFStringRef contentTypeUTI, CFDictionaryRef options);\nvoid CancelPreviewGeneration(void *thisInterface, QLPreviewRequestRef preview);\n\n// The layout for an instance of QuickLookGeneratorPlugIn\ntypedef struct __QuickLookGeneratorPluginType\n{\n    void        *conduitInterface;\n    CFUUIDRef    factoryID;\n    UInt32       refCount;\n} QuickLookGeneratorPluginType;\n\n// -----------------------------------------------------------------------------\n//  prototypes\n// -----------------------------------------------------------------------------\n//  Forward declaration for the IUnknown implementation.\n//\n\nQuickLookGeneratorPluginType  *AllocQuickLookGeneratorPluginType(CFUUIDRef inFactoryID);\nvoid                         DeallocQuickLookGeneratorPluginType(QuickLookGeneratorPluginType *thisInstance);\nHRESULT                      QuickLookGeneratorQueryInterface(void *thisInstance,REFIID iid,LPVOID *ppv);\nvoid                        *QuickLookGeneratorPluginFactory(CFAllocatorRef allocator,CFUUIDRef typeID);\nULONG                        QuickLookGeneratorPluginAddRef(void *thisInstance);\nULONG                        QuickLookGeneratorPluginRelease(void *thisInstance);\n\n// -----------------------------------------------------------------------------\n//  myInterfaceFtbl  definition\n// -----------------------------------------------------------------------------\n//  The QLGeneratorInterfaceStruct function table.\n//\nstatic QLGeneratorInterfaceStruct myInterfaceFtbl = {\n    NULL,\n    QuickLookGeneratorQueryInterface,\n    QuickLookGeneratorPluginAddRef,\n    QuickLookGeneratorPluginRelease,\n    NULL,\n    NULL,\n    NULL,\n    NULL\n};\n\n\n// -----------------------------------------------------------------------------\n//  AllocQuickLookGeneratorPluginType\n// -----------------------------------------------------------------------------\n//  Utility function that allocates a new instance.\n//      You can do some initial setup for the generator here if you wish\n//      like allocating globals etc...\n//\nQuickLookGeneratorPluginType *AllocQuickLookGeneratorPluginType(CFUUIDRef inFactoryID)\n{\n    QuickLookGeneratorPluginType *theNewInstance;\n\n    theNewInstance = (QuickLookGeneratorPluginType *)malloc(sizeof(QuickLookGeneratorPluginType));\n    memset(theNewInstance,0,sizeof(QuickLookGeneratorPluginType));\n\n        /* Point to the function table Malloc enough to store the stuff and copy the filler from myInterfaceFtbl over */\n    theNewInstance->conduitInterface = malloc(sizeof(QLGeneratorInterfaceStruct));\n    memcpy(theNewInstance->conduitInterface,&myInterfaceFtbl,sizeof(QLGeneratorInterfaceStruct));\n\n        /*  Retain and keep an open instance refcount for each factory. */\n    theNewInstance->factoryID = CFRetain(inFactoryID);\n    CFPlugInAddInstanceForFactory(inFactoryID);\n\n        /* This function returns the IUnknown interface so set the refCount to one. */\n    theNewInstance->refCount = 1;\n    return theNewInstance;\n}\n\n// -----------------------------------------------------------------------------\n//  DeallocQuickLookGeneratorPluginType\n// -----------------------------------------------------------------------------\n//  Utility function that deallocates the instance when\n//  the refCount goes to zero.\n//      In the current implementation generator interfaces are never deallocated\n//      but implement this as this might change in the future\n//\nvoid DeallocQuickLookGeneratorPluginType(QuickLookGeneratorPluginType *thisInstance)\n{\n    CFUUIDRef theFactoryID;\n\n    theFactoryID = thisInstance->factoryID;\n        /* Free the conduitInterface table up */\n    free(thisInstance->conduitInterface);\n\n        /* Free the instance structure */\n    free(thisInstance);\n    if (theFactoryID){\n        CFPlugInRemoveInstanceForFactory(theFactoryID);\n        CFRelease(theFactoryID);\n    }\n}\n\n// -----------------------------------------------------------------------------\n//  QuickLookGeneratorQueryInterface\n// -----------------------------------------------------------------------------\n//  Implementation of the IUnknown QueryInterface function.\n//\nHRESULT QuickLookGeneratorQueryInterface(void *thisInstance,REFIID iid,LPVOID *ppv)\n{\n    CFUUIDRef interfaceID;\n\n    interfaceID = CFUUIDCreateFromUUIDBytes(kCFAllocatorDefault,iid);\n\n    if (CFEqual(interfaceID,kQLGeneratorCallbacksInterfaceID)){\n            /* If the Right interface was requested, bump the ref count,\n             * set the ppv parameter equal to the instance, and\n             * return good status.\n             */\n        ((QLGeneratorInterfaceStruct *)((QuickLookGeneratorPluginType *)thisInstance)->conduitInterface)->GenerateThumbnailForURL = GenerateThumbnailForURL;\n        ((QLGeneratorInterfaceStruct *)((QuickLookGeneratorPluginType *)thisInstance)->conduitInterface)->CancelThumbnailGeneration = CancelThumbnailGeneration;\n        ((QLGeneratorInterfaceStruct *)((QuickLookGeneratorPluginType *)thisInstance)->conduitInterface)->GeneratePreviewForURL = GeneratePreviewForURL;\n        ((QLGeneratorInterfaceStruct *)((QuickLookGeneratorPluginType *)thisInstance)->conduitInterface)->CancelPreviewGeneration = CancelPreviewGeneration;\n        ((QLGeneratorInterfaceStruct *)((QuickLookGeneratorPluginType*)thisInstance)->conduitInterface)->AddRef(thisInstance);\n        *ppv = thisInstance;\n        CFRelease(interfaceID);\n        return S_OK;\n    }else{\n        /* Requested interface unknown, bail with error. */\n        *ppv = NULL;\n        CFRelease(interfaceID);\n        return E_NOINTERFACE;\n    }\n}\n\n// -----------------------------------------------------------------------------\n// QuickLookGeneratorPluginAddRef\n// -----------------------------------------------------------------------------\n//  Implementation of reference counting for this type. Whenever an interface\n//  is requested, bump the refCount for the instance. NOTE: returning the\n//  refcount is a convention but is not required so don't rely on it.\n//\nULONG QuickLookGeneratorPluginAddRef(void *thisInstance)\n{\n    ((QuickLookGeneratorPluginType *)thisInstance )->refCount += 1;\n    return ((QuickLookGeneratorPluginType*) thisInstance)->refCount;\n}\n\n// -----------------------------------------------------------------------------\n// QuickLookGeneratorPluginRelease\n// -----------------------------------------------------------------------------\n//  When an interface is released, decrement the refCount.\n//  If the refCount goes to zero, deallocate the instance.\n//\nULONG QuickLookGeneratorPluginRelease(void *thisInstance)\n{\n    ((QuickLookGeneratorPluginType*)thisInstance)->refCount -= 1;\n    if (((QuickLookGeneratorPluginType*)thisInstance)->refCount == 0){\n        DeallocQuickLookGeneratorPluginType((QuickLookGeneratorPluginType*)thisInstance );\n        return 0;\n    }else{\n        return ((QuickLookGeneratorPluginType*) thisInstance )->refCount;\n    }\n}\n\n// -----------------------------------------------------------------------------\n//  QuickLookGeneratorPluginFactory\n// -----------------------------------------------------------------------------\nvoid *QuickLookGeneratorPluginFactory(CFAllocatorRef allocator,CFUUIDRef typeID)\n{\n    QuickLookGeneratorPluginType *result;\n    CFUUIDRef                 uuid;\n\n        /* If correct type is being requested, allocate an\n         * instance of kQLGeneratorTypeID and return the IUnknown interface.\n         */\n    if (CFEqual(typeID,kQLGeneratorTypeID)){\n        uuid = CFUUIDCreateFromString(kCFAllocatorDefault,CFSTR(PLUGIN_ID));\n        result = AllocQuickLookGeneratorPluginType(uuid);\n        CFRelease(uuid);\n        return result;\n    }\n        /* If the requested type is incorrect, return NULL. */\n    return NULL;\n}\n\n"
  },
  {
    "path": "plugin_quicklook/crashreport.xcodeproj/project.pbxproj",
    "content": "// !$*UTF8*$!\n{\n\tarchiveVersion = 1;\n\tclasses = {\n\t};\n\tobjectVersion = 50;\n\tobjects = {\n\n/* Begin PBXBuildFile section */\n\t\tF40681CE2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.h in Headers */ = {isa = PBXBuildFile; fileRef = F40681CC2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.h */; };\n\t\tF40681CF2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.m in Sources */ = {isa = PBXBuildFile; fileRef = F40681CD2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.m */; };\n\t\tF4069C5726683CC7002B32F5 /* CUICrashLog.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C5226683CC6002B32F5 /* CUICrashLog.m */; };\n\t\tF4069C5826683CC7002B32F5 /* CUICodeType.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C5326683CC6002B32F5 /* CUICodeType.h */; };\n\t\tF4069C5926683CC7002B32F5 /* CUIRawCrashLog.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C5426683CC6002B32F5 /* CUIRawCrashLog.m */; };\n\t\tF4069C5A26683CC7002B32F5 /* CUICrashLog.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C5526683CC7002B32F5 /* CUICrashLog.h */; };\n\t\tF4069C5B26683CC7002B32F5 /* CUIRawCrashLog.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C5626683CC7002B32F5 /* CUIRawCrashLog.h */; };\n\t\tF4069C7026683CF9002B32F5 /* CUICrashLogBacktraces.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C5C26683CF7002B32F5 /* CUICrashLogBacktraces.m */; };\n\t\tF4069C7126683CF9002B32F5 /* CUIRegister.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C5D26683CF8002B32F5 /* CUIRegister.h */; };\n\t\tF4069C7226683CF9002B32F5 /* CUICrashLogExceptionInformation.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C5E26683CF8002B32F5 /* CUICrashLogExceptionInformation.h */; };\n\t\tF4069C7326683CF9002B32F5 /* CUIBinaryImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C5F26683CF8002B32F5 /* CUIBinaryImage.m */; };\n\t\tF4069C7426683CF9002B32F5 /* CUICrashLogExceptionInformation+UI.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6026683CF8002B32F5 /* CUICrashLogExceptionInformation+UI.h */; };\n\t\tF4069C7526683CF9002B32F5 /* CUICrashLogExceptionInformation+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6126683CF8002B32F5 /* CUICrashLogExceptionInformation+UI.m */; };\n\t\tF4069C7626683CF9002B32F5 /* CUICrashLogHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6226683CF8002B32F5 /* CUICrashLogHeader.m */; };\n\t\tF4069C7726683CF9002B32F5 /* CUICrashLogThreadState.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6326683CF8002B32F5 /* CUICrashLogThreadState.h */; };\n\t\tF4069C7826683CF9002B32F5 /* CUICrashLogThreadState+UI.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6426683CF8002B32F5 /* CUICrashLogThreadState+UI.h */; };\n\t\tF4069C7926683CF9002B32F5 /* CUICrashLogThreadState+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6526683CF8002B32F5 /* CUICrashLogThreadState+UI.m */; };\n\t\tF4069C7A26683CF9002B32F5 /* CUICrashLogBinaryImages.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6626683CF8002B32F5 /* CUICrashLogBinaryImages.h */; };\n\t\tF4069C7B26683CF9002B32F5 /* CUICrashLogHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6726683CF8002B32F5 /* CUICrashLogHeader.h */; };\n\t\tF4069C7C26683CF9002B32F5 /* CUICrashLogExceptionInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6826683CF8002B32F5 /* CUICrashLogExceptionInformation.m */; };\n\t\tF4069C7D26683CF9002B32F5 /* CUIRegister.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6926683CF8002B32F5 /* CUIRegister.m */; };\n\t\tF4069C7E26683CF9002B32F5 /* CUICrashLogDianosticMessages.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6A26683CF9002B32F5 /* CUICrashLogDianosticMessages.h */; };\n\t\tF4069C7F26683CF9002B32F5 /* CUICrashLogBinaryImages.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6B26683CF9002B32F5 /* CUICrashLogBinaryImages.m */; };\n\t\tF4069C8026683CF9002B32F5 /* CUICrashLogDianosticMessages.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6C26683CF9002B32F5 /* CUICrashLogDianosticMessages.m */; };\n\t\tF4069C8126683CF9002B32F5 /* CUICrashLogBacktraces.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6D26683CF9002B32F5 /* CUICrashLogBacktraces.h */; };\n\t\tF4069C8226683CF9002B32F5 /* CUICrashLogThreadState.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C6E26683CF9002B32F5 /* CUICrashLogThreadState.m */; };\n\t\tF4069C8326683CF9002B32F5 /* CUIBinaryImage.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C6F26683CF9002B32F5 /* CUIBinaryImage.h */; };\n\t\tF4069C8A26683D10002B32F5 /* CUICallStackBacktrace.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C8426683D10002B32F5 /* CUICallStackBacktrace.m */; };\n\t\tF4069C8B26683D10002B32F5 /* CUIStackFrame.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C8526683D10002B32F5 /* CUIStackFrame.m */; };\n\t\tF4069C8C26683D10002B32F5 /* CUIThread.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C8626683D10002B32F5 /* CUIThread.m */; };\n\t\tF4069C8D26683D10002B32F5 /* CUICallStackBacktrace.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C8726683D10002B32F5 /* CUICallStackBacktrace.h */; };\n\t\tF4069C8E26683D10002B32F5 /* CUIStackFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C8826683D10002B32F5 /* CUIStackFrame.h */; };\n\t\tF4069C8F26683D10002B32F5 /* CUIThread.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C8926683D10002B32F5 /* CUIThread.h */; };\n\t\tF4069C9326683D2E002B32F5 /* NSArray+WBExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C9126683D2D002B32F5 /* NSArray+WBExtensions.m */; };\n\t\tF4069C9426683D2E002B32F5 /* NSArray+WBExtensions.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C9226683D2D002B32F5 /* NSArray+WBExtensions.h */; };\n\t\tF4069C9726683D88002B32F5 /* CUIParsingErrors.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C9526683D88002B32F5 /* CUIParsingErrors.m */; };\n\t\tF4069C9A26683DA0002B32F5 /* CUICrashLogSectionsDetector.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C9826683DA0002B32F5 /* CUICrashLogSectionsDetector.h */; };\n\t\tF4069C9B26683DA0002B32F5 /* CUICrashLogSectionsDetector.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C9926683DA0002B32F5 /* CUICrashLogSectionsDetector.m */; };\n\t\tF4069C9E26683DFF002B32F5 /* CUIOperatingSystemVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069C9C26683DFE002B32F5 /* CUIOperatingSystemVersion.h */; };\n\t\tF4069C9F26683DFF002B32F5 /* CUIOperatingSystemVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069C9D26683DFF002B32F5 /* CUIOperatingSystemVersion.m */; };\n\t\tF4069CA226683E33002B32F5 /* CUICrashLogsProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CA026683E33002B32F5 /* CUICrashLogsProvider.m */; };\n\t\tF4069CA326683E33002B32F5 /* CUICrashLogsProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CA126683E33002B32F5 /* CUICrashLogsProvider.h */; };\n\t\tF4069CAB26683F49002B32F5 /* CUITextModeDisplaySettings.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CA926683F49002B32F5 /* CUITextModeDisplaySettings.h */; };\n\t\tF4069CAC26683F49002B32F5 /* CUITextModeDisplaySettings.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CAA26683F49002B32F5 /* CUITextModeDisplaySettings.m */; };\n\t\tF4069CB12668409E002B32F5 /* CUIThemeItemsGroup+UI.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CAF2668409D002B32F5 /* CUIThemeItemsGroup+UI.m */; };\n\t\tF4069CB22668409E002B32F5 /* CUIThemeItemsGroup+UI.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CB02668409D002B32F5 /* CUIThemeItemsGroup+UI.h */; };\n\t\tF4069CB5266840D1002B32F5 /* CUIThemeItemsGroup.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CB3266840D1002B32F5 /* CUIThemeItemsGroup.h */; };\n\t\tF4069CB6266840D1002B32F5 /* CUIThemeItemsGroup.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CB4266840D1002B32F5 /* CUIThemeItemsGroup.m */; };\n\t\tF4069CB9266840E2002B32F5 /* NSDictionary+WBExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CB7266840E2002B32F5 /* NSDictionary+WBExtensions.m */; };\n\t\tF4069CBE266840FB002B32F5 /* CUITheme.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CBA266840FA002B32F5 /* CUITheme.h */; };\n\t\tF4069CBF266840FB002B32F5 /* CUIThemeItemAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CBB266840FB002B32F5 /* CUIThemeItemAttributes.h */; };\n\t\tF4069CC0266840FB002B32F5 /* CUITheme.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CBC266840FB002B32F5 /* CUITheme.m */; };\n\t\tF4069CC1266840FB002B32F5 /* CUIThemeItemAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CBD266840FB002B32F5 /* CUIThemeItemAttributes.m */; };\n\t\tF4069CC52668411A002B32F5 /* NSColor+String.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CC32668411A002B32F5 /* NSColor+String.h */; };\n\t\tF4069CC62668411A002B32F5 /* NSColor+String.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CC42668411A002B32F5 /* NSColor+String.m */; };\n\t\tF4069CC926684136002B32F5 /* CUIThemesManager.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CC726684135002B32F5 /* CUIThemesManager.h */; };\n\t\tF4069CCA26684136002B32F5 /* CUIThemesManager.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CC826684135002B32F5 /* CUIThemesManager.m */; };\n\t\tF4069CCD26684143002B32F5 /* NSArray+UniqueName.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CCB26684143002B32F5 /* NSArray+UniqueName.h */; };\n\t\tF4069CCE26684143002B32F5 /* NSArray+UniqueName.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CCC26684143002B32F5 /* NSArray+UniqueName.m */; };\n\t\tF4069CD32668415A002B32F5 /* CUIApplicationPreferences.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CCF2668415A002B32F5 /* CUIApplicationPreferences.h */; };\n\t\tF4069CD42668415A002B32F5 /* CUIApplicationPreferences.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CD02668415A002B32F5 /* CUIApplicationPreferences.m */; };\n\t\tF4069CD52668415A002B32F5 /* CUIApplicationPreferences+Themes.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CD12668415A002B32F5 /* CUIApplicationPreferences+Themes.m */; };\n\t\tF4069CD62668415A002B32F5 /* CUIApplicationPreferences+Themes.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CD22668415A002B32F5 /* CUIApplicationPreferences+Themes.h */; };\n\t\tF4069CD92668416B002B32F5 /* NSDictionary+MutableDeepCopy.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CD72668416B002B32F5 /* NSDictionary+MutableDeepCopy.h */; };\n\t\tF4069CDA2668416B002B32F5 /* NSDictionary+MutableDeepCopy.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CD82668416B002B32F5 /* NSDictionary+MutableDeepCopy.m */; };\n\t\tF4069CDD26684199002B32F5 /* CUIOutlineModeDisplaySettings.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CDB26684199002B32F5 /* CUIOutlineModeDisplaySettings.m */; };\n\t\tF4069CDE26684199002B32F5 /* CUIOutlineModeDisplaySettings.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CDC26684199002B32F5 /* CUIOutlineModeDisplaySettings.h */; };\n\t\tF4069CE1266842E5002B32F5 /* NSFileManager+ExtendedAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = F4069CDF266842E5002B32F5 /* NSFileManager+ExtendedAttributes.h */; };\n\t\tF4069CE2266842E5002B32F5 /* NSFileManager+ExtendedAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = F4069CE0266842E5002B32F5 /* NSFileManager+ExtendedAttributes.m */; };\n\t\tF4069CE42668430B002B32F5 /* default_themes.plist in Resources */ = {isa = PBXBuildFile; fileRef = F4069CE32668430B002B32F5 /* default_themes.plist */; };\n\t\tF41C5D64266988AB00DE5D3A /* CUIStackFrameComponents.h in Headers */ = {isa = PBXBuildFile; fileRef = F41C5D63266988AB00DE5D3A /* CUIStackFrameComponents.h */; };\n\t\tF428C08F27245CF400FB8CAC /* IPSReport+CrashRepresentation.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C08D27245CF400FB8CAC /* IPSReport+CrashRepresentation.h */; };\n\t\tF428C09027245CF400FB8CAC /* IPSReport+CrashRepresentation.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C08E27245CF400FB8CAC /* IPSReport+CrashRepresentation.m */; };\n\t\tF428C0C027245D0800FB8CAC /* IPSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09127245D0500FB8CAC /* IPSImage.m */; };\n\t\tF428C0C127245D0800FB8CAC /* IPSIncidentHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09227245D0500FB8CAC /* IPSIncidentHeader.m */; };\n\t\tF428C0C227245D0800FB8CAC /* IPSIncidentExceptionInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09327245D0500FB8CAC /* IPSIncidentExceptionInformation.m */; };\n\t\tF428C0C327245D0800FB8CAC /* IPSIncidentDiagnosticMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09427245D0500FB8CAC /* IPSIncidentDiagnosticMessage.m */; };\n\t\tF428C0C427245D0800FB8CAC /* IPSReport.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09527245D0500FB8CAC /* IPSReport.m */; };\n\t\tF428C0C527245D0800FB8CAC /* IPSThreadInstructionState.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09627245D0500FB8CAC /* IPSThreadInstructionState.m */; };\n\t\tF428C0C627245D0800FB8CAC /* IPSThreadInstructionStream.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09727245D0500FB8CAC /* IPSThreadInstructionStream.m */; };\n\t\tF428C0C727245D0800FB8CAC /* IPSIncident.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C09827245D0500FB8CAC /* IPSIncident.h */; };\n\t\tF428C0C827245D0800FB8CAC /* IPSRegisterState.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09927245D0500FB8CAC /* IPSRegisterState.m */; };\n\t\tF428C0C927245D0800FB8CAC /* IPSDateFormatter.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09A27245D0500FB8CAC /* IPSDateFormatter.m */; };\n\t\tF428C0CA27245D0800FB8CAC /* IPSApplicationSpecificInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09B27245D0600FB8CAC /* IPSApplicationSpecificInformation.m */; };\n\t\tF428C0CB27245D0800FB8CAC /* IPSSummary.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09C27245D0600FB8CAC /* IPSSummary.m */; };\n\t\tF428C0CC27245D0800FB8CAC /* IPSTermination.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09D27245D0600FB8CAC /* IPSTermination.m */; };\n\t\tF428C0CD27245D0800FB8CAC /* IPSExternalModificationSummary.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C09E27245D0600FB8CAC /* IPSExternalModificationSummary.m */; };\n\t\tF428C0CE27245D0800FB8CAC /* IPSError.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C09F27245D0600FB8CAC /* IPSError.h */; };\n\t\tF428C0CF27245D0800FB8CAC /* IPSExternalModificationStatistics.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0A027245D0600FB8CAC /* IPSExternalModificationStatistics.m */; };\n\t\tF428C0D027245D0800FB8CAC /* IPSReport.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0A127245D0600FB8CAC /* IPSReport.h */; };\n\t\tF428C0D127245D0800FB8CAC /* IPSTermination.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0A227245D0600FB8CAC /* IPSTermination.h */; };\n\t\tF428C0D227245D0800FB8CAC /* IPSBundleInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0A327245D0600FB8CAC /* IPSBundleInfo.m */; };\n\t\tF428C0D327245D0800FB8CAC /* IPSException.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0A427245D0600FB8CAC /* IPSException.m */; };\n\t\tF428C0D427245D0800FB8CAC /* IPSObjectProtocol.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0A527245D0600FB8CAC /* IPSObjectProtocol.h */; };\n\t\tF428C0D527245D0800FB8CAC /* IPSSummary.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0A627245D0600FB8CAC /* IPSSummary.h */; };\n\t\tF428C0D627245D0800FB8CAC /* IPSThread.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0A727245D0600FB8CAC /* IPSThread.m */; };\n\t\tF428C0D727245D0800FB8CAC /* IPSIncidentExceptionInformation.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0A827245D0600FB8CAC /* IPSIncidentExceptionInformation.h */; };\n\t\tF428C0D827245D0800FB8CAC /* IPSThreadFrame.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0A927245D0600FB8CAC /* IPSThreadFrame.m */; };\n\t\tF428C0D927245D0800FB8CAC /* IPSExternalModificationSummary.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0AA27245D0600FB8CAC /* IPSExternalModificationSummary.h */; };\n\t\tF428C0DA27245D0800FB8CAC /* IPSError.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0AB27245D0600FB8CAC /* IPSError.m */; };\n\t\tF428C0DB27245D0800FB8CAC /* IPSDateFormatter.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0AC27245D0600FB8CAC /* IPSDateFormatter.h */; };\n\t\tF428C0DC27245D0800FB8CAC /* IPSThreadFrame.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0AD27245D0600FB8CAC /* IPSThreadFrame.h */; };\n\t\tF428C0DD27245D0800FB8CAC /* IPSOperatingSystemVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0AE27245D0700FB8CAC /* IPSOperatingSystemVersion.m */; };\n\t\tF428C0DE27245D0800FB8CAC /* IPSThreadInstructionState.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0AF27245D0700FB8CAC /* IPSThreadInstructionState.h */; };\n\t\tF428C0DF27245D0800FB8CAC /* IPSThreadInstructionStream.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B027245D0700FB8CAC /* IPSThreadInstructionStream.h */; };\n\t\tF428C0E027245D0800FB8CAC /* IPSThreadState.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B127245D0700FB8CAC /* IPSThreadState.h */; };\n\t\tF428C0E127245D0800FB8CAC /* IPSThreadState.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0B227245D0700FB8CAC /* IPSThreadState.m */; };\n\t\tF428C0E227245D0800FB8CAC /* IPSImage.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B327245D0700FB8CAC /* IPSImage.h */; };\n\t\tF428C0E327245D0800FB8CAC /* IPSExternalModificationStatistics.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B427245D0700FB8CAC /* IPSExternalModificationStatistics.h */; };\n\t\tF428C0E427245D0800FB8CAC /* IPSApplicationSpecificInformation.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B527245D0700FB8CAC /* IPSApplicationSpecificInformation.h */; };\n\t\tF428C0E527245D0800FB8CAC /* IPSLegacyInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B627245D0700FB8CAC /* IPSLegacyInfo.h */; };\n\t\tF428C0E627245D0800FB8CAC /* IPSBundleInfo.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B727245D0700FB8CAC /* IPSBundleInfo.h */; };\n\t\tF428C0E727245D0800FB8CAC /* IPSLegacyInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0B827245D0700FB8CAC /* IPSLegacyInfo.m */; };\n\t\tF428C0E827245D0800FB8CAC /* IPSThread.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0B927245D0700FB8CAC /* IPSThread.h */; };\n\t\tF428C0E927245D0800FB8CAC /* IPSIncident.m in Sources */ = {isa = PBXBuildFile; fileRef = F428C0BA27245D0700FB8CAC /* IPSIncident.m */; };\n\t\tF428C0EA27245D0800FB8CAC /* IPSIncidentDiagnosticMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0BB27245D0800FB8CAC /* IPSIncidentDiagnosticMessage.h */; };\n\t\tF428C0EB27245D0800FB8CAC /* IPSRegisterState.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0BC27245D0800FB8CAC /* IPSRegisterState.h */; };\n\t\tF428C0EC27245D0800FB8CAC /* IPSIncidentHeader.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0BD27245D0800FB8CAC /* IPSIncidentHeader.h */; };\n\t\tF428C0ED27245D0800FB8CAC /* IPSOperatingSystemVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0BE27245D0800FB8CAC /* IPSOperatingSystemVersion.h */; };\n\t\tF428C0EE27245D0800FB8CAC /* IPSException.h in Headers */ = {isa = PBXBuildFile; fileRef = F428C0BF27245D0800FB8CAC /* IPSException.h */; };\n\t\tF4386B0B284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.m in Sources */ = {isa = PBXBuildFile; fileRef = F4386B09284953F500B83525 /* CUICrashLogExceptionInformation+QuickHelp.m */; };\n\t\tF4386B0C284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.h in Headers */ = {isa = PBXBuildFile; fileRef = F4386B0A284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.h */; };\n\t\tF4440FD8282C40F9003C810B /* IPSSummarySerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = F4440FD4282C40F9003C810B /* IPSSummarySerialization.m */; };\n\t\tF4440FD9282C40F9003C810B /* IPSCrashSummary.m in Sources */ = {isa = PBXBuildFile; fileRef = F4440FD5282C40F9003C810B /* IPSCrashSummary.m */; };\n\t\tF4440FDA282C40F9003C810B /* IPSSummarySerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F4440FD6282C40F9003C810B /* IPSSummarySerialization.h */; };\n\t\tF4440FDB282C40F9003C810B /* IPSCrashSummary.h in Headers */ = {isa = PBXBuildFile; fileRef = F4440FD7282C40F9003C810B /* IPSCrashSummary.h */; };\n\t\tF47D66AA2DF6310300E078F8 /* IPSExceptionReason.m in Sources */ = {isa = PBXBuildFile; fileRef = F47D66A82DF6310200E078F8 /* IPSExceptionReason.m */; };\n\t\tF47D66AB2DF6310300E078F8 /* IPSExceptionReason.h in Headers */ = {isa = PBXBuildFile; fileRef = F47D66A92DF6310200E078F8 /* IPSExceptionReason.h */; };\n\t\tF47F766D2673577C00A74905 /* CUICrashLogErrors.h in Headers */ = {isa = PBXBuildFile; fileRef = F47F76692673577C00A74905 /* CUICrashLogErrors.h */; };\n\t\tF47F766E2673577C00A74905 /* CUICrashLogErrors.m in Sources */ = {isa = PBXBuildFile; fileRef = F47F766A2673577C00A74905 /* CUICrashLogErrors.m */; };\n\t\tF47F766F2673577C00A74905 /* CUICrashLogsOpenErrorRecord.m in Sources */ = {isa = PBXBuildFile; fileRef = F47F766B2673577C00A74905 /* CUICrashLogsOpenErrorRecord.m */; };\n\t\tF47F76702673577C00A74905 /* CUICrashLogsOpenErrorRecord.h in Headers */ = {isa = PBXBuildFile; fileRef = F47F766C2673577C00A74905 /* CUICrashLogsOpenErrorRecord.h */; };\n\t\tF480FF76273B01B600905974 /* CUIBinaryImageUtility.m in Sources */ = {isa = PBXBuildFile; fileRef = F480FF74273B01B500905974 /* CUIBinaryImageUtility.m */; };\n\t\tF480FF77273B01B600905974 /* CUIBinaryImageUtility.h in Headers */ = {isa = PBXBuildFile; fileRef = F480FF75273B01B600905974 /* CUIBinaryImageUtility.h */; };\n\t\tF48DAE292661207800C93D40 /* GenerateThumbnailForURL.m in Sources */ = {isa = PBXBuildFile; fileRef = F48DAE282661207800C93D40 /* GenerateThumbnailForURL.m */; };\n\t\tF48DAE2B2661207800C93D40 /* GeneratePreviewForURL.m in Sources */ = {isa = PBXBuildFile; fileRef = F48DAE2A2661207800C93D40 /* GeneratePreviewForURL.m */; };\n\t\tF48DAE2D2661207800C93D40 /* main.c in Sources */ = {isa = PBXBuildFile; fileRef = F48DAE2C2661207800C93D40 /* main.c */; };\n\t\tF4ACF4BD266EC92000272A25 /* QLCUIThemesProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = F4ACF4BB266EC92000272A25 /* QLCUIThemesProvider.h */; };\n\t\tF4ACF4BE266EC92000272A25 /* QLCUIThemesProvider.m in Sources */ = {isa = PBXBuildFile; fileRef = F4ACF4BC266EC92000272A25 /* QLCUIThemesProvider.m */; };\n\t\tF4BD8C6D2DF4DDE900BD61A8 /* IPSExceptionReason.h in Headers */ = {isa = PBXBuildFile; fileRef = F4BD8C6B2DF4DDE900BD61A8 /* IPSExceptionReason.h */; };\n\t\tF4BD8C6E2DF4DDE900BD61A8 /* IPSExceptionReason.m in Sources */ = {isa = PBXBuildFile; fileRef = F4BD8C6C2DF4DDE900BD61A8 /* IPSExceptionReason.m */; };\n\t\tF4CF6CF22DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.m in Sources */ = {isa = PBXBuildFile; fileRef = F4CF6CF02DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.m */; };\n\t\tF4CF6CF32DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.h in Headers */ = {isa = PBXBuildFile; fileRef = F4CF6CF12DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.h */; };\n\t\tF4D0EE98273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D0EE96273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.m */; };\n\t\tF4D0EE99273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.h in Headers */ = {isa = PBXBuildFile; fileRef = F4D0EE97273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.h */; };\n\t\tF4D14D642745BFBC003698AD /* IPSImage+UserCode.m in Sources */ = {isa = PBXBuildFile; fileRef = F4D14D622745BFBB003698AD /* IPSImage+UserCode.m */; };\n\t\tF4D14D652745BFBC003698AD /* IPSImage+UserCode.h in Headers */ = {isa = PBXBuildFile; fileRef = F4D14D632745BFBC003698AD /* IPSImage+UserCode.h */; };\n\t\tF4DAF0AF27C448E600256EA4 /* IPSImage+Offset.h in Headers */ = {isa = PBXBuildFile; fileRef = F4DAF0AD27C448E600256EA4 /* IPSImage+Offset.h */; };\n\t\tF4DAF0B027C448E600256EA4 /* IPSImage+Offset.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DAF0AE27C448E600256EA4 /* IPSImage+Offset.m */; };\n\t\tF4DAFBF42736BA2100FB50A6 /* CUIDataTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = F4DAFBF22736BA2000FB50A6 /* CUIDataTransform.h */; };\n\t\tF4DAFBF52736BA2100FB50A6 /* CUIDataTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DAFBF32736BA2100FB50A6 /* CUIDataTransform.m */; };\n\t\tF4DAFBF82736BA3100FB50A6 /* CUIIPSTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4DAFBF62736BA3100FB50A6 /* CUIIPSTransform.m */; };\n\t\tF4DAFBF92736BA3100FB50A6 /* CUIIPSTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = F4DAFBF72736BA3100FB50A6 /* CUIIPSTransform.h */; };\n\t\tF4E112B02735E6170072D40B /* CUICrashDataTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = F4E112AE2735E6160072D40B /* CUICrashDataTransform.h */; };\n\t\tF4E112B12735E6170072D40B /* CUICrashDataTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4E112AF2735E6170072D40B /* CUICrashDataTransform.m */; };\n\t\tF4FA4326273EF3FE0068EDB8 /* NSString+CPU.m in Sources */ = {isa = PBXBuildFile; fileRef = F4FA4324273EF3FD0068EDB8 /* NSString+CPU.m */; };\n\t\tF4FA4327273EF3FE0068EDB8 /* NSString+CPU.h in Headers */ = {isa = PBXBuildFile; fileRef = F4FA4325273EF3FE0068EDB8 /* NSString+CPU.h */; };\n\t\tF4FC8EAB27C1AA6700291875 /* CUIReportThemedTransform.m in Sources */ = {isa = PBXBuildFile; fileRef = F4FC8EA927C1AA6700291875 /* CUIReportThemedTransform.m */; };\n\t\tF4FC8EAD27C1AA7C00291875 /* CUIReportThemedTransform.h in Headers */ = {isa = PBXBuildFile; fileRef = F4FC8EAC27C1AA7C00291875 /* CUIReportThemedTransform.h */; };\n/* End PBXBuildFile section */\n\n/* Begin PBXFileReference section */\n\t\tF40681CC2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = \"NSUserDefaults+UNXQuickLookGenerator.h\"; sourceTree = \"<group>\"; };\n\t\tF40681CD2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = \"NSUserDefaults+UNXQuickLookGenerator.m\"; sourceTree = \"<group>\"; };\n\t\tF4069C5226683CC6002B32F5 /* CUICrashLog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLog.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLog.m; sourceTree = \"<group>\"; };\n\t\tF4069C5326683CC6002B32F5 /* CUICodeType.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICodeType.h; path = ../../app_unexpectedly/app_unexpectedly/CUICodeType.h; sourceTree = \"<group>\"; };\n\t\tF4069C5426683CC6002B32F5 /* CUIRawCrashLog.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIRawCrashLog.m; path = ../../app_unexpectedly/app_unexpectedly/CUIRawCrashLog.m; sourceTree = \"<group>\"; };\n\t\tF4069C5526683CC7002B32F5 /* CUICrashLog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLog.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLog.h; sourceTree = \"<group>\"; };\n\t\tF4069C5626683CC7002B32F5 /* CUIRawCrashLog.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIRawCrashLog.h; path = ../../app_unexpectedly/app_unexpectedly/CUIRawCrashLog.h; sourceTree = \"<group>\"; };\n\t\tF4069C5C26683CF7002B32F5 /* CUICrashLogBacktraces.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogBacktraces.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogBacktraces.m; sourceTree = \"<group>\"; };\n\t\tF4069C5D26683CF8002B32F5 /* CUIRegister.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIRegister.h; path = ../../app_unexpectedly/app_unexpectedly/CUIRegister.h; sourceTree = \"<group>\"; };\n\t\tF4069C5E26683CF8002B32F5 /* CUICrashLogExceptionInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogExceptionInformation.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation.h; sourceTree = \"<group>\"; };\n\t\tF4069C5F26683CF8002B32F5 /* CUIBinaryImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIBinaryImage.m; path = ../../app_unexpectedly/app_unexpectedly/CUIBinaryImage.m; sourceTree = \"<group>\"; };\n\t\tF4069C6026683CF8002B32F5 /* CUICrashLogExceptionInformation+UI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"CUICrashLogExceptionInformation+UI.h\"; path = \"../../app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4069C6126683CF8002B32F5 /* CUICrashLogExceptionInformation+UI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"CUICrashLogExceptionInformation+UI.m\"; path = \"../../app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4069C6226683CF8002B32F5 /* CUICrashLogHeader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogHeader.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogHeader.m; sourceTree = \"<group>\"; };\n\t\tF4069C6326683CF8002B32F5 /* CUICrashLogThreadState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogThreadState.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogThreadState.h; sourceTree = \"<group>\"; };\n\t\tF4069C6426683CF8002B32F5 /* CUICrashLogThreadState+UI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"CUICrashLogThreadState+UI.h\"; path = \"../../app_unexpectedly/app_unexpectedly/CUICrashLogThreadState+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4069C6526683CF8002B32F5 /* CUICrashLogThreadState+UI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"CUICrashLogThreadState+UI.m\"; path = \"../../app_unexpectedly/app_unexpectedly/CUICrashLogThreadState+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4069C6626683CF8002B32F5 /* CUICrashLogBinaryImages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogBinaryImages.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogBinaryImages.h; sourceTree = \"<group>\"; };\n\t\tF4069C6726683CF8002B32F5 /* CUICrashLogHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogHeader.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogHeader.h; sourceTree = \"<group>\"; };\n\t\tF4069C6826683CF8002B32F5 /* CUICrashLogExceptionInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogExceptionInformation.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation.m; sourceTree = \"<group>\"; };\n\t\tF4069C6926683CF8002B32F5 /* CUIRegister.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIRegister.m; path = ../../app_unexpectedly/app_unexpectedly/CUIRegister.m; sourceTree = \"<group>\"; };\n\t\tF4069C6A26683CF9002B32F5 /* CUICrashLogDianosticMessages.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogDianosticMessages.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogDianosticMessages.h; sourceTree = \"<group>\"; };\n\t\tF4069C6B26683CF9002B32F5 /* CUICrashLogBinaryImages.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogBinaryImages.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogBinaryImages.m; sourceTree = \"<group>\"; };\n\t\tF4069C6C26683CF9002B32F5 /* CUICrashLogDianosticMessages.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogDianosticMessages.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogDianosticMessages.m; sourceTree = \"<group>\"; };\n\t\tF4069C6D26683CF9002B32F5 /* CUICrashLogBacktraces.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogBacktraces.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogBacktraces.h; sourceTree = \"<group>\"; };\n\t\tF4069C6E26683CF9002B32F5 /* CUICrashLogThreadState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogThreadState.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogThreadState.m; sourceTree = \"<group>\"; };\n\t\tF4069C6F26683CF9002B32F5 /* CUIBinaryImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIBinaryImage.h; path = ../../app_unexpectedly/app_unexpectedly/CUIBinaryImage.h; sourceTree = \"<group>\"; };\n\t\tF4069C8426683D10002B32F5 /* CUICallStackBacktrace.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICallStackBacktrace.m; path = ../../app_unexpectedly/app_unexpectedly/CUICallStackBacktrace.m; sourceTree = \"<group>\"; };\n\t\tF4069C8526683D10002B32F5 /* CUIStackFrame.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIStackFrame.m; path = ../../app_unexpectedly/app_unexpectedly/CUIStackFrame.m; sourceTree = \"<group>\"; };\n\t\tF4069C8626683D10002B32F5 /* CUIThread.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIThread.m; path = ../../app_unexpectedly/app_unexpectedly/CUIThread.m; sourceTree = \"<group>\"; };\n\t\tF4069C8726683D10002B32F5 /* CUICallStackBacktrace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICallStackBacktrace.h; path = ../../app_unexpectedly/app_unexpectedly/CUICallStackBacktrace.h; sourceTree = \"<group>\"; };\n\t\tF4069C8826683D10002B32F5 /* CUIStackFrame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIStackFrame.h; path = ../../app_unexpectedly/app_unexpectedly/CUIStackFrame.h; sourceTree = \"<group>\"; };\n\t\tF4069C8926683D10002B32F5 /* CUIThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIThread.h; path = ../../app_unexpectedly/app_unexpectedly/CUIThread.h; sourceTree = \"<group>\"; };\n\t\tF4069C9126683D2D002B32F5 /* NSArray+WBExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSArray+WBExtensions.m\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSArray+WBExtensions.m\"; sourceTree = \"<group>\"; };\n\t\tF4069C9226683D2D002B32F5 /* NSArray+WBExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSArray+WBExtensions.h\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSArray+WBExtensions.h\"; sourceTree = \"<group>\"; };\n\t\tF4069C9526683D88002B32F5 /* CUIParsingErrors.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = CUIParsingErrors.m; path = ../../app_unexpectedly/app_unexpectedly/CUIParsingErrors.m; sourceTree = \"<group>\"; };\n\t\tF4069C9626683D88002B32F5 /* CUIParsingErrors.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = CUIParsingErrors.h; path = ../../app_unexpectedly/app_unexpectedly/CUIParsingErrors.h; sourceTree = \"<group>\"; };\n\t\tF4069C9826683DA0002B32F5 /* CUICrashLogSectionsDetector.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogSectionsDetector.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogSectionsDetector.h; sourceTree = \"<group>\"; };\n\t\tF4069C9926683DA0002B32F5 /* CUICrashLogSectionsDetector.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogSectionsDetector.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogSectionsDetector.m; sourceTree = \"<group>\"; };\n\t\tF4069C9C26683DFE002B32F5 /* CUIOperatingSystemVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIOperatingSystemVersion.h; path = ../../app_unexpectedly/app_unexpectedly/CUIOperatingSystemVersion.h; sourceTree = \"<group>\"; };\n\t\tF4069C9D26683DFF002B32F5 /* CUIOperatingSystemVersion.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIOperatingSystemVersion.m; path = ../../app_unexpectedly/app_unexpectedly/CUIOperatingSystemVersion.m; sourceTree = \"<group>\"; };\n\t\tF4069CA026683E33002B32F5 /* CUICrashLogsProvider.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogsProvider.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogsProvider.m; sourceTree = \"<group>\"; };\n\t\tF4069CA126683E33002B32F5 /* CUICrashLogsProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogsProvider.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogsProvider.h; sourceTree = \"<group>\"; };\n\t\tF4069CA926683F49002B32F5 /* CUITextModeDisplaySettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUITextModeDisplaySettings.h; path = ../../app_unexpectedly/app_unexpectedly/CUITextModeDisplaySettings.h; sourceTree = \"<group>\"; };\n\t\tF4069CAA26683F49002B32F5 /* CUITextModeDisplaySettings.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUITextModeDisplaySettings.m; path = ../../app_unexpectedly/app_unexpectedly/CUITextModeDisplaySettings.m; sourceTree = \"<group>\"; };\n\t\tF4069CAF2668409D002B32F5 /* CUIThemeItemsGroup+UI.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"CUIThemeItemsGroup+UI.m\"; path = \"../../app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup+UI.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CB02668409D002B32F5 /* CUIThemeItemsGroup+UI.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"CUIThemeItemsGroup+UI.h\"; path = \"../../app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup+UI.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CB3266840D1002B32F5 /* CUIThemeItemsGroup.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIThemeItemsGroup.h; path = ../../app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup.h; sourceTree = \"<group>\"; };\n\t\tF4069CB4266840D1002B32F5 /* CUIThemeItemsGroup.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIThemeItemsGroup.m; path = ../../app_unexpectedly/app_unexpectedly/CUIThemeItemsGroup.m; sourceTree = \"<group>\"; };\n\t\tF4069CB7266840E2002B32F5 /* NSDictionary+WBExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSDictionary+WBExtensions.m\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSDictionary+WBExtensions.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CB8266840E2002B32F5 /* NSDictionary+WBExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSDictionary+WBExtensions.h\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSDictionary+WBExtensions.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CBA266840FA002B32F5 /* CUITheme.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUITheme.h; path = ../../app_unexpectedly/app_unexpectedly/CUITheme.h; sourceTree = \"<group>\"; };\n\t\tF4069CBB266840FB002B32F5 /* CUIThemeItemAttributes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIThemeItemAttributes.h; path = ../../app_unexpectedly/app_unexpectedly/CUIThemeItemAttributes.h; sourceTree = \"<group>\"; };\n\t\tF4069CBC266840FB002B32F5 /* CUITheme.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUITheme.m; path = ../../app_unexpectedly/app_unexpectedly/CUITheme.m; sourceTree = \"<group>\"; };\n\t\tF4069CBD266840FB002B32F5 /* CUIThemeItemAttributes.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIThemeItemAttributes.m; path = ../../app_unexpectedly/app_unexpectedly/CUIThemeItemAttributes.m; sourceTree = \"<group>\"; };\n\t\tF4069CC32668411A002B32F5 /* NSColor+String.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSColor+String.h\"; path = \"../../app_unexpectedly/AppKit + Extensions/NSColor+String.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CC42668411A002B32F5 /* NSColor+String.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSColor+String.m\"; path = \"../../app_unexpectedly/AppKit + Extensions/NSColor+String.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CC726684135002B32F5 /* CUIThemesManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIThemesManager.h; path = ../../app_unexpectedly/app_unexpectedly/CUIThemesManager.h; sourceTree = \"<group>\"; };\n\t\tF4069CC826684135002B32F5 /* CUIThemesManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIThemesManager.m; path = ../../app_unexpectedly/app_unexpectedly/CUIThemesManager.m; sourceTree = \"<group>\"; };\n\t\tF4069CCB26684143002B32F5 /* NSArray+UniqueName.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSArray+UniqueName.h\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSArray+UniqueName.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CCC26684143002B32F5 /* NSArray+UniqueName.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSArray+UniqueName.m\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSArray+UniqueName.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CCF2668415A002B32F5 /* CUIApplicationPreferences.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIApplicationPreferences.h; path = ../../app_unexpectedly/app_unexpectedly/CUIApplicationPreferences.h; sourceTree = \"<group>\"; };\n\t\tF4069CD02668415A002B32F5 /* CUIApplicationPreferences.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIApplicationPreferences.m; path = ../../app_unexpectedly/app_unexpectedly/CUIApplicationPreferences.m; sourceTree = \"<group>\"; };\n\t\tF4069CD12668415A002B32F5 /* CUIApplicationPreferences+Themes.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"CUIApplicationPreferences+Themes.m\"; path = \"../../app_unexpectedly/app_unexpectedly/CUIApplicationPreferences+Themes.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CD22668415A002B32F5 /* CUIApplicationPreferences+Themes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"CUIApplicationPreferences+Themes.h\"; path = \"../../app_unexpectedly/app_unexpectedly/CUIApplicationPreferences+Themes.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CD72668416B002B32F5 /* NSDictionary+MutableDeepCopy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSDictionary+MutableDeepCopy.h\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSDictionary+MutableDeepCopy.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CD82668416B002B32F5 /* NSDictionary+MutableDeepCopy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSDictionary+MutableDeepCopy.m\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSDictionary+MutableDeepCopy.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CDB26684199002B32F5 /* CUIOutlineModeDisplaySettings.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIOutlineModeDisplaySettings.m; path = ../../app_unexpectedly/app_unexpectedly/CUIOutlineModeDisplaySettings.m; sourceTree = \"<group>\"; };\n\t\tF4069CDC26684199002B32F5 /* CUIOutlineModeDisplaySettings.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIOutlineModeDisplaySettings.h; path = ../../app_unexpectedly/app_unexpectedly/CUIOutlineModeDisplaySettings.h; sourceTree = \"<group>\"; };\n\t\tF4069CDF266842E5002B32F5 /* NSFileManager+ExtendedAttributes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSFileManager+ExtendedAttributes.h\"; path = \"../../app_unexpectedly/app_unexpectedly/NSFileManager+ExtendedAttributes.h\"; sourceTree = \"<group>\"; };\n\t\tF4069CE0266842E5002B32F5 /* NSFileManager+ExtendedAttributes.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSFileManager+ExtendedAttributes.m\"; path = \"../../app_unexpectedly/app_unexpectedly/NSFileManager+ExtendedAttributes.m\"; sourceTree = \"<group>\"; };\n\t\tF4069CE32668430B002B32F5 /* default_themes.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = default_themes.plist; path = ../../app_unexpectedly/app_unexpectedly/default_themes.plist; sourceTree = \"<group>\"; };\n\t\tF41C5D63266988AB00DE5D3A /* CUIStackFrameComponents.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIStackFrameComponents.h; path = ../../app_unexpectedly/app_unexpectedly/CUIStackFrameComponents.h; sourceTree = \"<group>\"; };\n\t\tF428C08D27245CF400FB8CAC /* IPSReport+CrashRepresentation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSReport+CrashRepresentation.h\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSReport+CrashRepresentation.h\"; sourceTree = \"<group>\"; };\n\t\tF428C08E27245CF400FB8CAC /* IPSReport+CrashRepresentation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSReport+CrashRepresentation.m\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSReport+CrashRepresentation.m\"; sourceTree = \"<group>\"; };\n\t\tF428C09127245D0500FB8CAC /* IPSImage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSImage.m; path = ../../submodules/ips2crash/Model/IPSImage.m; sourceTree = \"<group>\"; };\n\t\tF428C09227245D0500FB8CAC /* IPSIncidentHeader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncidentHeader.m; path = ../../submodules/ips2crash/Model/IPSIncidentHeader.m; sourceTree = \"<group>\"; };\n\t\tF428C09327245D0500FB8CAC /* IPSIncidentExceptionInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncidentExceptionInformation.m; path = ../../submodules/ips2crash/Model/IPSIncidentExceptionInformation.m; sourceTree = \"<group>\"; };\n\t\tF428C09427245D0500FB8CAC /* IPSIncidentDiagnosticMessage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncidentDiagnosticMessage.m; path = ../../submodules/ips2crash/Model/IPSIncidentDiagnosticMessage.m; sourceTree = \"<group>\"; };\n\t\tF428C09527245D0500FB8CAC /* IPSReport.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSReport.m; path = ../../submodules/ips2crash/Model/IPSReport.m; sourceTree = \"<group>\"; };\n\t\tF428C09627245D0500FB8CAC /* IPSThreadInstructionState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadInstructionState.m; path = ../../submodules/ips2crash/Model/IPSThreadInstructionState.m; sourceTree = \"<group>\"; };\n\t\tF428C09727245D0500FB8CAC /* IPSThreadInstructionStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadInstructionStream.m; path = ../../submodules/ips2crash/Model/IPSThreadInstructionStream.m; sourceTree = \"<group>\"; };\n\t\tF428C09827245D0500FB8CAC /* IPSIncident.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncident.h; path = ../../submodules/ips2crash/Model/IPSIncident.h; sourceTree = \"<group>\"; };\n\t\tF428C09927245D0500FB8CAC /* IPSRegisterState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSRegisterState.m; path = ../../submodules/ips2crash/Model/IPSRegisterState.m; sourceTree = \"<group>\"; };\n\t\tF428C09A27245D0500FB8CAC /* IPSDateFormatter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSDateFormatter.m; path = ../../submodules/ips2crash/Model/IPSDateFormatter.m; sourceTree = \"<group>\"; };\n\t\tF428C09B27245D0600FB8CAC /* IPSApplicationSpecificInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSApplicationSpecificInformation.m; path = ../../submodules/ips2crash/Model/IPSApplicationSpecificInformation.m; sourceTree = \"<group>\"; };\n\t\tF428C09C27245D0600FB8CAC /* IPSSummary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSSummary.m; path = ../../submodules/ips2crash/Model/IPSSummary.m; sourceTree = \"<group>\"; };\n\t\tF428C09D27245D0600FB8CAC /* IPSTermination.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSTermination.m; path = ../../submodules/ips2crash/Model/IPSTermination.m; sourceTree = \"<group>\"; };\n\t\tF428C09E27245D0600FB8CAC /* IPSExternalModificationSummary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExternalModificationSummary.m; path = ../../submodules/ips2crash/Model/IPSExternalModificationSummary.m; sourceTree = \"<group>\"; };\n\t\tF428C09F27245D0600FB8CAC /* IPSError.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSError.h; path = ../../submodules/ips2crash/Model/IPSError.h; sourceTree = \"<group>\"; };\n\t\tF428C0A027245D0600FB8CAC /* IPSExternalModificationStatistics.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExternalModificationStatistics.m; path = ../../submodules/ips2crash/Model/IPSExternalModificationStatistics.m; sourceTree = \"<group>\"; };\n\t\tF428C0A127245D0600FB8CAC /* IPSReport.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSReport.h; path = ../../submodules/ips2crash/Model/IPSReport.h; sourceTree = \"<group>\"; };\n\t\tF428C0A227245D0600FB8CAC /* IPSTermination.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSTermination.h; path = ../../submodules/ips2crash/Model/IPSTermination.h; sourceTree = \"<group>\"; };\n\t\tF428C0A327245D0600FB8CAC /* IPSBundleInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSBundleInfo.m; path = ../../submodules/ips2crash/Model/IPSBundleInfo.m; sourceTree = \"<group>\"; };\n\t\tF428C0A427245D0600FB8CAC /* IPSException.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSException.m; path = ../../submodules/ips2crash/Model/IPSException.m; sourceTree = \"<group>\"; };\n\t\tF428C0A527245D0600FB8CAC /* IPSObjectProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSObjectProtocol.h; path = ../../submodules/ips2crash/Model/IPSObjectProtocol.h; sourceTree = \"<group>\"; };\n\t\tF428C0A627245D0600FB8CAC /* IPSSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSSummary.h; path = ../../submodules/ips2crash/Model/IPSSummary.h; sourceTree = \"<group>\"; };\n\t\tF428C0A727245D0600FB8CAC /* IPSThread.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThread.m; path = ../../submodules/ips2crash/Model/IPSThread.m; sourceTree = \"<group>\"; };\n\t\tF428C0A827245D0600FB8CAC /* IPSIncidentExceptionInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncidentExceptionInformation.h; path = ../../submodules/ips2crash/Model/IPSIncidentExceptionInformation.h; sourceTree = \"<group>\"; };\n\t\tF428C0A927245D0600FB8CAC /* IPSThreadFrame.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadFrame.m; path = ../../submodules/ips2crash/Model/IPSThreadFrame.m; sourceTree = \"<group>\"; };\n\t\tF428C0AA27245D0600FB8CAC /* IPSExternalModificationSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExternalModificationSummary.h; path = ../../submodules/ips2crash/Model/IPSExternalModificationSummary.h; sourceTree = \"<group>\"; };\n\t\tF428C0AB27245D0600FB8CAC /* IPSError.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSError.m; path = ../../submodules/ips2crash/Model/IPSError.m; sourceTree = \"<group>\"; };\n\t\tF428C0AC27245D0600FB8CAC /* IPSDateFormatter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSDateFormatter.h; path = ../../submodules/ips2crash/Model/IPSDateFormatter.h; sourceTree = \"<group>\"; };\n\t\tF428C0AD27245D0600FB8CAC /* IPSThreadFrame.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadFrame.h; path = ../../submodules/ips2crash/Model/IPSThreadFrame.h; sourceTree = \"<group>\"; };\n\t\tF428C0AE27245D0700FB8CAC /* IPSOperatingSystemVersion.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSOperatingSystemVersion.m; path = ../../submodules/ips2crash/Model/IPSOperatingSystemVersion.m; sourceTree = \"<group>\"; };\n\t\tF428C0AF27245D0700FB8CAC /* IPSThreadInstructionState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadInstructionState.h; path = ../../submodules/ips2crash/Model/IPSThreadInstructionState.h; sourceTree = \"<group>\"; };\n\t\tF428C0B027245D0700FB8CAC /* IPSThreadInstructionStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadInstructionStream.h; path = ../../submodules/ips2crash/Model/IPSThreadInstructionStream.h; sourceTree = \"<group>\"; };\n\t\tF428C0B127245D0700FB8CAC /* IPSThreadState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThreadState.h; path = ../../submodules/ips2crash/Model/IPSThreadState.h; sourceTree = \"<group>\"; };\n\t\tF428C0B227245D0700FB8CAC /* IPSThreadState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSThreadState.m; path = ../../submodules/ips2crash/Model/IPSThreadState.m; sourceTree = \"<group>\"; };\n\t\tF428C0B327245D0700FB8CAC /* IPSImage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSImage.h; path = ../../submodules/ips2crash/Model/IPSImage.h; sourceTree = \"<group>\"; };\n\t\tF428C0B427245D0700FB8CAC /* IPSExternalModificationStatistics.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExternalModificationStatistics.h; path = ../../submodules/ips2crash/Model/IPSExternalModificationStatistics.h; sourceTree = \"<group>\"; };\n\t\tF428C0B527245D0700FB8CAC /* IPSApplicationSpecificInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSApplicationSpecificInformation.h; path = ../../submodules/ips2crash/Model/IPSApplicationSpecificInformation.h; sourceTree = \"<group>\"; };\n\t\tF428C0B627245D0700FB8CAC /* IPSLegacyInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSLegacyInfo.h; path = ../../submodules/ips2crash/Model/IPSLegacyInfo.h; sourceTree = \"<group>\"; };\n\t\tF428C0B727245D0700FB8CAC /* IPSBundleInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSBundleInfo.h; path = ../../submodules/ips2crash/Model/IPSBundleInfo.h; sourceTree = \"<group>\"; };\n\t\tF428C0B827245D0700FB8CAC /* IPSLegacyInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSLegacyInfo.m; path = ../../submodules/ips2crash/Model/IPSLegacyInfo.m; sourceTree = \"<group>\"; };\n\t\tF428C0B927245D0700FB8CAC /* IPSThread.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSThread.h; path = ../../submodules/ips2crash/Model/IPSThread.h; sourceTree = \"<group>\"; };\n\t\tF428C0BA27245D0700FB8CAC /* IPSIncident.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSIncident.m; path = ../../submodules/ips2crash/Model/IPSIncident.m; sourceTree = \"<group>\"; };\n\t\tF428C0BB27245D0800FB8CAC /* IPSIncidentDiagnosticMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncidentDiagnosticMessage.h; path = ../../submodules/ips2crash/Model/IPSIncidentDiagnosticMessage.h; sourceTree = \"<group>\"; };\n\t\tF428C0BC27245D0800FB8CAC /* IPSRegisterState.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSRegisterState.h; path = ../../submodules/ips2crash/Model/IPSRegisterState.h; sourceTree = \"<group>\"; };\n\t\tF428C0BD27245D0800FB8CAC /* IPSIncidentHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSIncidentHeader.h; path = ../../submodules/ips2crash/Model/IPSIncidentHeader.h; sourceTree = \"<group>\"; };\n\t\tF428C0BE27245D0800FB8CAC /* IPSOperatingSystemVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSOperatingSystemVersion.h; path = ../../submodules/ips2crash/Model/IPSOperatingSystemVersion.h; sourceTree = \"<group>\"; };\n\t\tF428C0BF27245D0800FB8CAC /* IPSException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSException.h; path = ../../submodules/ips2crash/Model/IPSException.h; sourceTree = \"<group>\"; };\n\t\tF4386B09284953F500B83525 /* CUICrashLogExceptionInformation+QuickHelp.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"CUICrashLogExceptionInformation+QuickHelp.m\"; path = \"../../app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+QuickHelp.m\"; sourceTree = \"<group>\"; };\n\t\tF4386B0A284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"CUICrashLogExceptionInformation+QuickHelp.h\"; path = \"../../app_unexpectedly/app_unexpectedly/CUICrashLogExceptionInformation+QuickHelp.h\"; sourceTree = \"<group>\"; };\n\t\tF4440FD4282C40F9003C810B /* IPSSummarySerialization.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSSummarySerialization.m; path = ../../submodules/ips2crash/Model/IPSSummarySerialization.m; sourceTree = \"<group>\"; };\n\t\tF4440FD5282C40F9003C810B /* IPSCrashSummary.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSCrashSummary.m; path = ../../submodules/ips2crash/Model/IPSCrashSummary.m; sourceTree = \"<group>\"; };\n\t\tF4440FD6282C40F9003C810B /* IPSSummarySerialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSSummarySerialization.h; path = ../../submodules/ips2crash/Model/IPSSummarySerialization.h; sourceTree = \"<group>\"; };\n\t\tF4440FD7282C40F9003C810B /* IPSCrashSummary.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSCrashSummary.h; path = ../../submodules/ips2crash/Model/IPSCrashSummary.h; sourceTree = \"<group>\"; };\n\t\tF47D66A82DF6310200E078F8 /* IPSExceptionReason.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExceptionReason.m; path = ../../submodules/ips2crash/Model/IPSExceptionReason.m; sourceTree = \"<group>\"; };\n\t\tF47D66A92DF6310200E078F8 /* IPSExceptionReason.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExceptionReason.h; path = ../../submodules/ips2crash/Model/IPSExceptionReason.h; sourceTree = \"<group>\"; };\n\t\tF47F76692673577C00A74905 /* CUICrashLogErrors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogErrors.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogErrors.h; sourceTree = \"<group>\"; };\n\t\tF47F766A2673577C00A74905 /* CUICrashLogErrors.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogErrors.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogErrors.m; sourceTree = \"<group>\"; };\n\t\tF47F766B2673577C00A74905 /* CUICrashLogsOpenErrorRecord.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashLogsOpenErrorRecord.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorRecord.m; sourceTree = \"<group>\"; };\n\t\tF47F766C2673577C00A74905 /* CUICrashLogsOpenErrorRecord.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashLogsOpenErrorRecord.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashLogsOpenErrorRecord.h; sourceTree = \"<group>\"; };\n\t\tF480FF74273B01B500905974 /* CUIBinaryImageUtility.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIBinaryImageUtility.m; path = ../../app_unexpectedly/app_unexpectedly/CUIBinaryImageUtility.m; sourceTree = \"<group>\"; };\n\t\tF480FF75273B01B600905974 /* CUIBinaryImageUtility.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIBinaryImageUtility.h; path = ../../app_unexpectedly/app_unexpectedly/CUIBinaryImageUtility.h; sourceTree = \"<group>\"; };\n\t\tF48DAE252661207800C93D40 /* crashreport.qlgenerator */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = crashreport.qlgenerator; sourceTree = BUILT_PRODUCTS_DIR; };\n\t\tF48DAE282661207800C93D40 /* GenerateThumbnailForURL.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GenerateThumbnailForURL.m; sourceTree = \"<group>\"; };\n\t\tF48DAE2A2661207800C93D40 /* GeneratePreviewForURL.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GeneratePreviewForURL.m; sourceTree = \"<group>\"; };\n\t\tF48DAE2C2661207800C93D40 /* main.c */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.c; path = main.c; sourceTree = \"<group>\"; };\n\t\tF48DAE2E2661207800C93D40 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = \"<group>\"; };\n\t\tF48DAE3B266123C300C93D40 /* SharedConfigurationSettings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = SharedConfigurationSettings.xcconfig; path = ../Configs/SharedConfigurationSettings.xcconfig; sourceTree = \"<group>\"; };\n\t\tF4ACF4BB266EC92000272A25 /* QLCUIThemesProvider.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = QLCUIThemesProvider.h; sourceTree = \"<group>\"; };\n\t\tF4ACF4BC266EC92000272A25 /* QLCUIThemesProvider.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = QLCUIThemesProvider.m; sourceTree = \"<group>\"; };\n\t\tF4BD8C6B2DF4DDE900BD61A8 /* IPSExceptionReason.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = IPSExceptionReason.h; path = ../../submodules/ips2crash/Model/IPSExceptionReason.h; sourceTree = \"<group>\"; };\n\t\tF4BD8C6C2DF4DDE900BD61A8 /* IPSExceptionReason.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = IPSExceptionReason.m; path = ../../submodules/ips2crash/Model/IPSExceptionReason.m; sourceTree = \"<group>\"; };\n\t\tF4CF6CF02DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSIncident+ApplicationSpecificInformation.m\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSIncident+ApplicationSpecificInformation.m\"; sourceTree = \"<group>\"; };\n\t\tF4CF6CF12DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSIncident+ApplicationSpecificInformation.h\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSIncident+ApplicationSpecificInformation.h\"; sourceTree = \"<group>\"; };\n\t\tF4D0EE96273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSThreadState+RegisterDisplayName.m\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSThreadState+RegisterDisplayName.m\"; sourceTree = \"<group>\"; };\n\t\tF4D0EE97273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSThreadState+RegisterDisplayName.h\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSThreadState+RegisterDisplayName.h\"; sourceTree = \"<group>\"; };\n\t\tF4D14D622745BFBB003698AD /* IPSImage+UserCode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"IPSImage+UserCode.m\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSImage+UserCode.m\"; sourceTree = \"<group>\"; };\n\t\tF4D14D632745BFBC003698AD /* IPSImage+UserCode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"IPSImage+UserCode.h\"; path = \"../../submodules/ips2crash/tool_ips2crash/ips2crash/IPSImage+UserCode.h\"; sourceTree = \"<group>\"; };\n\t\tF4DAF0AD27C448E600256EA4 /* IPSImage+Offset.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = \"IPSImage+Offset.h\"; path = \"../../app_unexpectedly/app_unexpectedly/ips + Extensions/IPSImage+Offset.h\"; sourceTree = \"<group>\"; };\n\t\tF4DAF0AE27C448E600256EA4 /* IPSImage+Offset.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = \"IPSImage+Offset.m\"; path = \"../../app_unexpectedly/app_unexpectedly/ips + Extensions/IPSImage+Offset.m\"; sourceTree = \"<group>\"; };\n\t\tF4DAFBF22736BA2000FB50A6 /* CUIDataTransform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIDataTransform.h; path = ../../app_unexpectedly/app_unexpectedly/CUIDataTransform.h; sourceTree = \"<group>\"; };\n\t\tF4DAFBF32736BA2100FB50A6 /* CUIDataTransform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIDataTransform.m; path = ../../app_unexpectedly/app_unexpectedly/CUIDataTransform.m; sourceTree = \"<group>\"; };\n\t\tF4DAFBF62736BA3100FB50A6 /* CUIIPSTransform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIIPSTransform.m; path = ../../app_unexpectedly/app_unexpectedly/CUIIPSTransform.m; sourceTree = \"<group>\"; };\n\t\tF4DAFBF72736BA3100FB50A6 /* CUIIPSTransform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIIPSTransform.h; path = ../../app_unexpectedly/app_unexpectedly/CUIIPSTransform.h; sourceTree = \"<group>\"; };\n\t\tF4E112AE2735E6160072D40B /* CUICrashDataTransform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUICrashDataTransform.h; path = ../../app_unexpectedly/app_unexpectedly/CUICrashDataTransform.h; sourceTree = \"<group>\"; };\n\t\tF4E112AF2735E6170072D40B /* CUICrashDataTransform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUICrashDataTransform.m; path = ../../app_unexpectedly/app_unexpectedly/CUICrashDataTransform.m; sourceTree = \"<group>\"; };\n\t\tF4FA4324273EF3FD0068EDB8 /* NSString+CPU.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = \"NSString+CPU.m\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSString+CPU.m\"; sourceTree = \"<group>\"; };\n\t\tF4FA4325273EF3FE0068EDB8 /* NSString+CPU.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = \"NSString+CPU.h\"; path = \"../../app_unexpectedly/Foundation + Extensions/NSString+CPU.h\"; sourceTree = \"<group>\"; };\n\t\tF4FC8EA927C1AA6700291875 /* CUIReportThemedTransform.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CUIReportThemedTransform.m; path = ../../app_unexpectedly/app_unexpectedly/CUIReportThemedTransform.m; sourceTree = \"<group>\"; };\n\t\tF4FC8EAC27C1AA7C00291875 /* CUIReportThemedTransform.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CUIReportThemedTransform.h; path = ../../app_unexpectedly/app_unexpectedly/CUIReportThemedTransform.h; sourceTree = \"<group>\"; };\n/* End PBXFileReference section */\n\n/* Begin PBXFrameworksBuildPhase section */\n\t\tF48DAE222661207700C93D40 /* Frameworks */ = {\n\t\t\tisa = PBXFrameworksBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXFrameworksBuildPhase section */\n\n/* Begin PBXGroup section */\n\t\tF40681D0266982B200BE6BEE /* Preferences */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4069CCF2668415A002B32F5 /* CUIApplicationPreferences.h */,\n\t\t\t\tF4069CD02668415A002B32F5 /* CUIApplicationPreferences.m */,\n\t\t\t\tF4069CD22668415A002B32F5 /* CUIApplicationPreferences+Themes.h */,\n\t\t\t\tF4069CD12668415A002B32F5 /* CUIApplicationPreferences+Themes.m */,\n\t\t\t\tF4069CA926683F49002B32F5 /* CUITextModeDisplaySettings.h */,\n\t\t\t\tF4069CAA26683F49002B32F5 /* CUITextModeDisplaySettings.m */,\n\t\t\t\tF4069CDC26684199002B32F5 /* CUIOutlineModeDisplaySettings.h */,\n\t\t\t\tF4069CDB26684199002B32F5 /* CUIOutlineModeDisplaySettings.m */,\n\t\t\t);\n\t\t\tname = Preferences;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF40681D1266982F600BE6BEE /* Themes */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4069CBA266840FA002B32F5 /* CUITheme.h */,\n\t\t\t\tF4069CBC266840FB002B32F5 /* CUITheme.m */,\n\t\t\t\tF4069CBB266840FB002B32F5 /* CUIThemeItemAttributes.h */,\n\t\t\t\tF4069CBD266840FB002B32F5 /* CUIThemeItemAttributes.m */,\n\t\t\t\tF4069CB3266840D1002B32F5 /* CUIThemeItemsGroup.h */,\n\t\t\t\tF4069CB4266840D1002B32F5 /* CUIThemeItemsGroup.m */,\n\t\t\t\tF4069CB02668409D002B32F5 /* CUIThemeItemsGroup+UI.h */,\n\t\t\t\tF4069CAF2668409D002B32F5 /* CUIThemeItemsGroup+UI.m */,\n\t\t\t\tF4069CC726684135002B32F5 /* CUIThemesManager.h */,\n\t\t\t\tF4069CC826684135002B32F5 /* CUIThemesManager.m */,\n\t\t\t);\n\t\t\tname = Themes;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4069C9026683D1F002B32F5 /* Foundation + Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4069CCB26684143002B32F5 /* NSArray+UniqueName.h */,\n\t\t\t\tF4069CCC26684143002B32F5 /* NSArray+UniqueName.m */,\n\t\t\t\tF4069C9226683D2D002B32F5 /* NSArray+WBExtensions.h */,\n\t\t\t\tF4069C9126683D2D002B32F5 /* NSArray+WBExtensions.m */,\n\t\t\t\tF4069CD72668416B002B32F5 /* NSDictionary+MutableDeepCopy.h */,\n\t\t\t\tF4069CD82668416B002B32F5 /* NSDictionary+MutableDeepCopy.m */,\n\t\t\t\tF4069CB8266840E2002B32F5 /* NSDictionary+WBExtensions.h */,\n\t\t\t\tF4069CB7266840E2002B32F5 /* NSDictionary+WBExtensions.m */,\n\t\t\t\tF4069CDF266842E5002B32F5 /* NSFileManager+ExtendedAttributes.h */,\n\t\t\t\tF4069CE0266842E5002B32F5 /* NSFileManager+ExtendedAttributes.m */,\n\t\t\t\tF4FA4325273EF3FE0068EDB8 /* NSString+CPU.h */,\n\t\t\t\tF4FA4324273EF3FD0068EDB8 /* NSString+CPU.m */,\n\t\t\t);\n\t\t\tname = \"Foundation + Extensions\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4069CA426683F04002B32F5 /* Transform */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4DAFBF22736BA2000FB50A6 /* CUIDataTransform.h */,\n\t\t\t\tF4DAFBF32736BA2100FB50A6 /* CUIDataTransform.m */,\n\t\t\t\tF4FC8EAC27C1AA7C00291875 /* CUIReportThemedTransform.h */,\n\t\t\t\tF4FC8EA927C1AA6700291875 /* CUIReportThemedTransform.m */,\n\t\t\t\tF4DAFBF72736BA3100FB50A6 /* CUIIPSTransform.h */,\n\t\t\t\tF4DAFBF62736BA3100FB50A6 /* CUIIPSTransform.m */,\n\t\t\t\tF4E112AE2735E6160072D40B /* CUICrashDataTransform.h */,\n\t\t\t\tF4E112AF2735E6170072D40B /* CUICrashDataTransform.m */,\n\t\t\t);\n\t\t\tname = Transform;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF4069CC22668410A002B32F5 /* AppKit + Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4069CC32668411A002B32F5 /* NSColor+String.h */,\n\t\t\t\tF4069CC42668411A002B32F5 /* NSColor+String.m */,\n\t\t\t);\n\t\t\tname = \"AppKit + Extensions\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF428C08B27245CCD00FB8CAC /* ips model */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF428C0B527245D0700FB8CAC /* IPSApplicationSpecificInformation.h */,\n\t\t\t\tF428C09B27245D0600FB8CAC /* IPSApplicationSpecificInformation.m */,\n\t\t\t\tF428C0B727245D0700FB8CAC /* IPSBundleInfo.h */,\n\t\t\t\tF428C0A327245D0600FB8CAC /* IPSBundleInfo.m */,\n\t\t\t\tF428C0AC27245D0600FB8CAC /* IPSDateFormatter.h */,\n\t\t\t\tF428C09A27245D0500FB8CAC /* IPSDateFormatter.m */,\n\t\t\t\tF428C09F27245D0600FB8CAC /* IPSError.h */,\n\t\t\t\tF428C0AB27245D0600FB8CAC /* IPSError.m */,\n\t\t\t\tF428C0BF27245D0800FB8CAC /* IPSException.h */,\n\t\t\t\tF428C0A427245D0600FB8CAC /* IPSException.m */,\n\t\t\t\tF4BD8C6B2DF4DDE900BD61A8 /* IPSExceptionReason.h */,\n\t\t\t\tF4BD8C6C2DF4DDE900BD61A8 /* IPSExceptionReason.m */,\n\t\t\t\tF428C0B427245D0700FB8CAC /* IPSExternalModificationStatistics.h */,\n\t\t\t\tF428C0A027245D0600FB8CAC /* IPSExternalModificationStatistics.m */,\n\t\t\t\tF428C0AA27245D0600FB8CAC /* IPSExternalModificationSummary.h */,\n\t\t\t\tF428C09E27245D0600FB8CAC /* IPSExternalModificationSummary.m */,\n\t\t\t\tF428C0B327245D0700FB8CAC /* IPSImage.h */,\n\t\t\t\tF428C09127245D0500FB8CAC /* IPSImage.m */,\n\t\t\t\tF428C09827245D0500FB8CAC /* IPSIncident.h */,\n\t\t\t\tF428C0BA27245D0700FB8CAC /* IPSIncident.m */,\n\t\t\t\tF428C0BB27245D0800FB8CAC /* IPSIncidentDiagnosticMessage.h */,\n\t\t\t\tF428C09427245D0500FB8CAC /* IPSIncidentDiagnosticMessage.m */,\n\t\t\t\tF428C0A827245D0600FB8CAC /* IPSIncidentExceptionInformation.h */,\n\t\t\t\tF428C09327245D0500FB8CAC /* IPSIncidentExceptionInformation.m */,\n\t\t\t\tF428C0BD27245D0800FB8CAC /* IPSIncidentHeader.h */,\n\t\t\t\tF428C09227245D0500FB8CAC /* IPSIncidentHeader.m */,\n\t\t\t\tF428C0B627245D0700FB8CAC /* IPSLegacyInfo.h */,\n\t\t\t\tF428C0B827245D0700FB8CAC /* IPSLegacyInfo.m */,\n\t\t\t\tF428C0A527245D0600FB8CAC /* IPSObjectProtocol.h */,\n\t\t\t\tF428C0BE27245D0800FB8CAC /* IPSOperatingSystemVersion.h */,\n\t\t\t\tF428C0AE27245D0700FB8CAC /* IPSOperatingSystemVersion.m */,\n\t\t\t\tF428C0BC27245D0800FB8CAC /* IPSRegisterState.h */,\n\t\t\t\tF428C09927245D0500FB8CAC /* IPSRegisterState.m */,\n\t\t\t\tF428C0A127245D0600FB8CAC /* IPSReport.h */,\n\t\t\t\tF428C09527245D0500FB8CAC /* IPSReport.m */,\n\t\t\t\tF428C0A627245D0600FB8CAC /* IPSSummary.h */,\n\t\t\t\tF428C09C27245D0600FB8CAC /* IPSSummary.m */,\n\t\t\t\tF4440FD7282C40F9003C810B /* IPSCrashSummary.h */,\n\t\t\t\tF4440FD5282C40F9003C810B /* IPSCrashSummary.m */,\n\t\t\t\tF4440FD6282C40F9003C810B /* IPSSummarySerialization.h */,\n\t\t\t\tF4440FD4282C40F9003C810B /* IPSSummarySerialization.m */,\n\t\t\t\tF428C0A227245D0600FB8CAC /* IPSTermination.h */,\n\t\t\t\tF428C09D27245D0600FB8CAC /* IPSTermination.m */,\n\t\t\t\tF428C0B927245D0700FB8CAC /* IPSThread.h */,\n\t\t\t\tF428C0A727245D0600FB8CAC /* IPSThread.m */,\n\t\t\t\tF428C0AD27245D0600FB8CAC /* IPSThreadFrame.h */,\n\t\t\t\tF428C0A927245D0600FB8CAC /* IPSThreadFrame.m */,\n\t\t\t\tF428C0AF27245D0700FB8CAC /* IPSThreadInstructionState.h */,\n\t\t\t\tF428C09627245D0500FB8CAC /* IPSThreadInstructionState.m */,\n\t\t\t\tF428C0B027245D0700FB8CAC /* IPSThreadInstructionStream.h */,\n\t\t\t\tF428C09727245D0500FB8CAC /* IPSThreadInstructionStream.m */,\n\t\t\t\tF428C0B127245D0700FB8CAC /* IPSThreadState.h */,\n\t\t\t\tF428C0B227245D0700FB8CAC /* IPSThreadState.m */,\n\t\t\t);\n\t\t\tname = \"ips model\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF428C08C27245CD500FB8CAC /* ips model + Extensions */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4DAF0AD27C448E600256EA4 /* IPSImage+Offset.h */,\n\t\t\t\tF4DAF0AE27C448E600256EA4 /* IPSImage+Offset.m */,\n\t\t\t\tF4D14D632745BFBC003698AD /* IPSImage+UserCode.h */,\n\t\t\t\tF4D14D622745BFBB003698AD /* IPSImage+UserCode.m */,\n\t\t\t\tF428C08D27245CF400FB8CAC /* IPSReport+CrashRepresentation.h */,\n\t\t\t\tF428C08E27245CF400FB8CAC /* IPSReport+CrashRepresentation.m */,\n\t\t\t\tF4CF6CF12DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.h */,\n\t\t\t\tF4CF6CF02DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.m */,\n\t\t\t\tF4D0EE97273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.h */,\n\t\t\t\tF4D0EE96273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.m */,\n\t\t\t);\n\t\t\tname = \"ips model + Extensions\";\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF48DAE1B2661207700C93D40 = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF48DAE3B266123C300C93D40 /* SharedConfigurationSettings.xcconfig */,\n\t\t\t\tF48DAE272661207800C93D40 /* crashreport */,\n\t\t\t\tF48DAE262661207800C93D40 /* Products */,\n\t\t\t);\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF48DAE262661207800C93D40 /* Products */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF48DAE252661207800C93D40 /* crashreport.qlgenerator */,\n\t\t\t);\n\t\t\tname = Products;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF48DAE272661207800C93D40 /* crashreport */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF41C5D63266988AB00DE5D3A /* CUIStackFrameComponents.h */,\n\t\t\t\tF480FF75273B01B600905974 /* CUIBinaryImageUtility.h */,\n\t\t\t\tF480FF74273B01B500905974 /* CUIBinaryImageUtility.m */,\n\t\t\t\tF428C08B27245CCD00FB8CAC /* ips model */,\n\t\t\t\tF428C08C27245CD500FB8CAC /* ips model + Extensions */,\n\t\t\t\tF4069CC22668410A002B32F5 /* AppKit + Extensions */,\n\t\t\t\tF4069C9026683D1F002B32F5 /* Foundation + Extensions */,\n\t\t\t\tF48DAE342661223300C93D40 /* Model */,\n\t\t\t\tF40681D0266982B200BE6BEE /* Preferences */,\n\t\t\t\tF40681D1266982F600BE6BEE /* Themes */,\n\t\t\t\tF4069CA426683F04002B32F5 /* Transform */,\n\t\t\t\tF40681CC2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.h */,\n\t\t\t\tF40681CD2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.m */,\n\t\t\t\tF4ACF4BB266EC92000272A25 /* QLCUIThemesProvider.h */,\n\t\t\t\tF4ACF4BC266EC92000272A25 /* QLCUIThemesProvider.m */,\n\t\t\t\tF48DAE282661207800C93D40 /* GenerateThumbnailForURL.m */,\n\t\t\t\tF48DAE2A2661207800C93D40 /* GeneratePreviewForURL.m */,\n\t\t\t\tF48DAE2C2661207800C93D40 /* main.c */,\n\t\t\t\tF48DAE2E2661207800C93D40 /* Info.plist */,\n\t\t\t\tF4069CE32668430B002B32F5 /* default_themes.plist */,\n\t\t\t);\n\t\t\tpath = crashreport;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n\t\tF48DAE342661223300C93D40 /* Model */ = {\n\t\t\tisa = PBXGroup;\n\t\t\tchildren = (\n\t\t\t\tF4069C9626683D88002B32F5 /* CUIParsingErrors.h */,\n\t\t\t\tF4069C9526683D88002B32F5 /* CUIParsingErrors.m */,\n\t\t\t\tF4069C9C26683DFE002B32F5 /* CUIOperatingSystemVersion.h */,\n\t\t\t\tF4069C9D26683DFF002B32F5 /* CUIOperatingSystemVersion.m */,\n\t\t\t\tF4069C8726683D10002B32F5 /* CUICallStackBacktrace.h */,\n\t\t\t\tF4069C8426683D10002B32F5 /* CUICallStackBacktrace.m */,\n\t\t\t\tF4069C8826683D10002B32F5 /* CUIStackFrame.h */,\n\t\t\t\tF4069C8526683D10002B32F5 /* CUIStackFrame.m */,\n\t\t\t\tF4069C8926683D10002B32F5 /* CUIThread.h */,\n\t\t\t\tF4069C8626683D10002B32F5 /* CUIThread.m */,\n\t\t\t\tF4069C6F26683CF9002B32F5 /* CUIBinaryImage.h */,\n\t\t\t\tF4069C5F26683CF8002B32F5 /* CUIBinaryImage.m */,\n\t\t\t\tF4069C6D26683CF9002B32F5 /* CUICrashLogBacktraces.h */,\n\t\t\t\tF4069C5C26683CF7002B32F5 /* CUICrashLogBacktraces.m */,\n\t\t\t\tF4069C6626683CF8002B32F5 /* CUICrashLogBinaryImages.h */,\n\t\t\t\tF4069C6B26683CF9002B32F5 /* CUICrashLogBinaryImages.m */,\n\t\t\t\tF4069C6A26683CF9002B32F5 /* CUICrashLogDianosticMessages.h */,\n\t\t\t\tF4069C6C26683CF9002B32F5 /* CUICrashLogDianosticMessages.m */,\n\t\t\t\tF4069C5E26683CF8002B32F5 /* CUICrashLogExceptionInformation.h */,\n\t\t\t\tF4069C6826683CF8002B32F5 /* CUICrashLogExceptionInformation.m */,\n\t\t\t\tF4069C6026683CF8002B32F5 /* CUICrashLogExceptionInformation+UI.h */,\n\t\t\t\tF4069C6126683CF8002B32F5 /* CUICrashLogExceptionInformation+UI.m */,\n\t\t\t\tF4069C6726683CF8002B32F5 /* CUICrashLogHeader.h */,\n\t\t\t\tF4069C6226683CF8002B32F5 /* CUICrashLogHeader.m */,\n\t\t\t\tF4069C6326683CF8002B32F5 /* CUICrashLogThreadState.h */,\n\t\t\t\tF4069C6E26683CF9002B32F5 /* CUICrashLogThreadState.m */,\n\t\t\t\tF4069C6426683CF8002B32F5 /* CUICrashLogThreadState+UI.h */,\n\t\t\t\tF4069C6526683CF8002B32F5 /* CUICrashLogThreadState+UI.m */,\n\t\t\t\tF4069C5D26683CF8002B32F5 /* CUIRegister.h */,\n\t\t\t\tF4069C6926683CF8002B32F5 /* CUIRegister.m */,\n\t\t\t\tF4069C9826683DA0002B32F5 /* CUICrashLogSectionsDetector.h */,\n\t\t\t\tF4069C9926683DA0002B32F5 /* CUICrashLogSectionsDetector.m */,\n\t\t\t\tF4069C5626683CC7002B32F5 /* CUIRawCrashLog.h */,\n\t\t\t\tF4069C5426683CC6002B32F5 /* CUIRawCrashLog.m */,\n\t\t\t\tF4069C5326683CC6002B32F5 /* CUICodeType.h */,\n\t\t\t\tF4069C5526683CC7002B32F5 /* CUICrashLog.h */,\n\t\t\t\tF4069C5226683CC6002B32F5 /* CUICrashLog.m */,\n\t\t\t\tF4069CA126683E33002B32F5 /* CUICrashLogsProvider.h */,\n\t\t\t\tF4069CA026683E33002B32F5 /* CUICrashLogsProvider.m */,\n\t\t\t\tF47F76692673577C00A74905 /* CUICrashLogErrors.h */,\n\t\t\t\tF47F766A2673577C00A74905 /* CUICrashLogErrors.m */,\n\t\t\t\tF47F766C2673577C00A74905 /* CUICrashLogsOpenErrorRecord.h */,\n\t\t\t\tF47F766B2673577C00A74905 /* CUICrashLogsOpenErrorRecord.m */,\n\t\t\t\tF4386B0A284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.h */,\n\t\t\t\tF4386B09284953F500B83525 /* CUICrashLogExceptionInformation+QuickHelp.m */,\n\t\t\t);\n\t\t\tname = Model;\n\t\t\tsourceTree = \"<group>\";\n\t\t};\n/* End PBXGroup section */\n\n/* Begin PBXHeadersBuildPhase section */\n\t\tF48DAE202661207700C93D40 /* Headers */ = {\n\t\t\tisa = PBXHeadersBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF428C0DB27245D0800FB8CAC /* IPSDateFormatter.h in Headers */,\n\t\t\t\tF428C08F27245CF400FB8CAC /* IPSReport+CrashRepresentation.h in Headers */,\n\t\t\t\tF428C0EC27245D0800FB8CAC /* IPSIncidentHeader.h in Headers */,\n\t\t\t\tF4069C8126683CF9002B32F5 /* CUICrashLogBacktraces.h in Headers */,\n\t\t\t\tF4069CB22668409E002B32F5 /* CUIThemeItemsGroup+UI.h in Headers */,\n\t\t\t\tF428C0DE27245D0800FB8CAC /* IPSThreadInstructionState.h in Headers */,\n\t\t\t\tF428C0E227245D0800FB8CAC /* IPSImage.h in Headers */,\n\t\t\t\tF428C0E027245D0800FB8CAC /* IPSThreadState.h in Headers */,\n\t\t\t\tF4069C9A26683DA0002B32F5 /* CUICrashLogSectionsDetector.h in Headers */,\n\t\t\t\tF428C0D427245D0800FB8CAC /* IPSObjectProtocol.h in Headers */,\n\t\t\t\tF428C0E327245D0800FB8CAC /* IPSExternalModificationStatistics.h in Headers */,\n\t\t\t\tF47F766D2673577C00A74905 /* CUICrashLogErrors.h in Headers */,\n\t\t\t\tF4069C9E26683DFF002B32F5 /* CUIOperatingSystemVersion.h in Headers */,\n\t\t\t\tF428C0EB27245D0800FB8CAC /* IPSRegisterState.h in Headers */,\n\t\t\t\tF428C0E527245D0800FB8CAC /* IPSLegacyInfo.h in Headers */,\n\t\t\t\tF4069C7726683CF9002B32F5 /* CUICrashLogThreadState.h in Headers */,\n\t\t\t\tF4ACF4BD266EC92000272A25 /* QLCUIThemesProvider.h in Headers */,\n\t\t\t\tF428C0EA27245D0800FB8CAC /* IPSIncidentDiagnosticMessage.h in Headers */,\n\t\t\t\tF428C0EE27245D0800FB8CAC /* IPSException.h in Headers */,\n\t\t\t\tF428C0DC27245D0800FB8CAC /* IPSThreadFrame.h in Headers */,\n\t\t\t\tF41C5D64266988AB00DE5D3A /* CUIStackFrameComponents.h in Headers */,\n\t\t\t\tF4069C7A26683CF9002B32F5 /* CUICrashLogBinaryImages.h in Headers */,\n\t\t\t\tF4069C7E26683CF9002B32F5 /* CUICrashLogDianosticMessages.h in Headers */,\n\t\t\t\tF4DAFBF42736BA2100FB50A6 /* CUIDataTransform.h in Headers */,\n\t\t\t\tF428C0E627245D0800FB8CAC /* IPSBundleInfo.h in Headers */,\n\t\t\t\tF428C0D927245D0800FB8CAC /* IPSExternalModificationSummary.h in Headers */,\n\t\t\t\tF4069C9426683D2E002B32F5 /* NSArray+WBExtensions.h in Headers */,\n\t\t\t\tF4069C8326683CF9002B32F5 /* CUIBinaryImage.h in Headers */,\n\t\t\t\tF4440FDB282C40F9003C810B /* IPSCrashSummary.h in Headers */,\n\t\t\t\tF428C0D027245D0800FB8CAC /* IPSReport.h in Headers */,\n\t\t\t\tF428C0C727245D0800FB8CAC /* IPSIncident.h in Headers */,\n\t\t\t\tF4069C5826683CC7002B32F5 /* CUICodeType.h in Headers */,\n\t\t\t\tF4069C7126683CF9002B32F5 /* CUIRegister.h in Headers */,\n\t\t\t\tF428C0CE27245D0800FB8CAC /* IPSError.h in Headers */,\n\t\t\t\tF480FF77273B01B600905974 /* CUIBinaryImageUtility.h in Headers */,\n\t\t\t\tF4D0EE99273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.h in Headers */,\n\t\t\t\tF4069CBF266840FB002B32F5 /* CUIThemeItemAttributes.h in Headers */,\n\t\t\t\tF4069CA326683E33002B32F5 /* CUICrashLogsProvider.h in Headers */,\n\t\t\t\tF4069CDE26684199002B32F5 /* CUIOutlineModeDisplaySettings.h in Headers */,\n\t\t\t\tF4069C7426683CF9002B32F5 /* CUICrashLogExceptionInformation+UI.h in Headers */,\n\t\t\t\tF4069CD92668416B002B32F5 /* NSDictionary+MutableDeepCopy.h in Headers */,\n\t\t\t\tF40681CE2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.h in Headers */,\n\t\t\t\tF4069CD32668415A002B32F5 /* CUIApplicationPreferences.h in Headers */,\n\t\t\t\tF4069CD62668415A002B32F5 /* CUIApplicationPreferences+Themes.h in Headers */,\n\t\t\t\tF4D14D652745BFBC003698AD /* IPSImage+UserCode.h in Headers */,\n\t\t\t\tF4069CC926684136002B32F5 /* CUIThemesManager.h in Headers */,\n\t\t\t\tF4440FDA282C40F9003C810B /* IPSSummarySerialization.h in Headers */,\n\t\t\t\tF4069C8D26683D10002B32F5 /* CUICallStackBacktrace.h in Headers */,\n\t\t\t\tF4CF6CF32DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.h in Headers */,\n\t\t\t\tF4069C7226683CF9002B32F5 /* CUICrashLogExceptionInformation.h in Headers */,\n\t\t\t\tF4069C8F26683D10002B32F5 /* CUIThread.h in Headers */,\n\t\t\t\tF4069C8E26683D10002B32F5 /* CUIStackFrame.h in Headers */,\n\t\t\t\tF428C0D727245D0800FB8CAC /* IPSIncidentExceptionInformation.h in Headers */,\n\t\t\t\tF4FA4327273EF3FE0068EDB8 /* NSString+CPU.h in Headers */,\n\t\t\t\tF4BD8C6D2DF4DDE900BD61A8 /* IPSExceptionReason.h in Headers */,\n\t\t\t\tF47F76702673577C00A74905 /* CUICrashLogsOpenErrorRecord.h in Headers */,\n\t\t\t\tF428C0D127245D0800FB8CAC /* IPSTermination.h in Headers */,\n\t\t\t\tF428C0ED27245D0800FB8CAC /* IPSOperatingSystemVersion.h in Headers */,\n\t\t\t\tF4069C7B26683CF9002B32F5 /* CUICrashLogHeader.h in Headers */,\n\t\t\t\tF4069CB5266840D1002B32F5 /* CUIThemeItemsGroup.h in Headers */,\n\t\t\t\tF4DAF0AF27C448E600256EA4 /* IPSImage+Offset.h in Headers */,\n\t\t\t\tF4069CCD26684143002B32F5 /* NSArray+UniqueName.h in Headers */,\n\t\t\t\tF4FC8EAD27C1AA7C00291875 /* CUIReportThemedTransform.h in Headers */,\n\t\t\t\tF4069C5B26683CC7002B32F5 /* CUIRawCrashLog.h in Headers */,\n\t\t\t\tF4DAFBF92736BA3100FB50A6 /* CUIIPSTransform.h in Headers */,\n\t\t\t\tF4069CBE266840FB002B32F5 /* CUITheme.h in Headers */,\n\t\t\t\tF428C0E427245D0800FB8CAC /* IPSApplicationSpecificInformation.h in Headers */,\n\t\t\t\tF4069CC52668411A002B32F5 /* NSColor+String.h in Headers */,\n\t\t\t\tF428C0D527245D0800FB8CAC /* IPSSummary.h in Headers */,\n\t\t\t\tF4386B0C284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.h in Headers */,\n\t\t\t\tF4069C5A26683CC7002B32F5 /* CUICrashLog.h in Headers */,\n\t\t\t\tF428C0DF27245D0800FB8CAC /* IPSThreadInstructionStream.h in Headers */,\n\t\t\t\tF4069CAB26683F49002B32F5 /* CUITextModeDisplaySettings.h in Headers */,\n\t\t\t\tF428C0E827245D0800FB8CAC /* IPSThread.h in Headers */,\n\t\t\t\tF4069CE1266842E5002B32F5 /* NSFileManager+ExtendedAttributes.h in Headers */,\n\t\t\t\tF4069C7826683CF9002B32F5 /* CUICrashLogThreadState+UI.h in Headers */,\n\t\t\t\tF4E112B02735E6170072D40B /* CUICrashDataTransform.h in Headers */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXHeadersBuildPhase section */\n\n/* Begin PBXNativeTarget section */\n\t\tF48DAE242661207700C93D40 /* crashreport */ = {\n\t\t\tisa = PBXNativeTarget;\n\t\t\tbuildConfigurationList = F48DAE312661207800C93D40 /* Build configuration list for PBXNativeTarget \"crashreport\" */;\n\t\t\tbuildPhases = (\n\t\t\t\tF48DAE202661207700C93D40 /* Headers */,\n\t\t\t\tF48DAE212661207700C93D40 /* Sources */,\n\t\t\t\tF48DAE222661207700C93D40 /* Frameworks */,\n\t\t\t\tF48DAE232661207700C93D40 /* Resources */,\n\t\t\t);\n\t\t\tbuildRules = (\n\t\t\t);\n\t\t\tdependencies = (\n\t\t\t);\n\t\t\tname = crashreport;\n\t\t\tproductName = crashreport;\n\t\t\tproductReference = F48DAE252661207800C93D40 /* crashreport.qlgenerator */;\n\t\t\tproductType = \"com.apple.product-type.bundle\";\n\t\t};\n/* End PBXNativeTarget section */\n\n/* Begin PBXProject section */\n\t\tF48DAE1C2661207700C93D40 /* Project object */ = {\n\t\t\tisa = PBXProject;\n\t\t\tattributes = {\n\t\t\t\tLastUpgradeCheck = 1010;\n\t\t\t\tORGANIZATIONNAME = Whitebox;\n\t\t\t\tTargetAttributes = {\n\t\t\t\t\tF48DAE242661207700C93D40 = {\n\t\t\t\t\t\tCreatedOnToolsVersion = 10.1;\n\t\t\t\t\t};\n\t\t\t\t};\n\t\t\t};\n\t\t\tbuildConfigurationList = F48DAE1F2661207700C93D40 /* Build configuration list for PBXProject \"crashreport\" */;\n\t\t\tcompatibilityVersion = \"Xcode 9.3\";\n\t\t\tdevelopmentRegion = en;\n\t\t\thasScannedForEncodings = 0;\n\t\t\tknownRegions = (\n\t\t\t\ten,\n\t\t\t);\n\t\t\tmainGroup = F48DAE1B2661207700C93D40;\n\t\t\tproductRefGroup = F48DAE262661207800C93D40 /* Products */;\n\t\t\tprojectDirPath = \"\";\n\t\t\tprojectRoot = \"\";\n\t\t\ttargets = (\n\t\t\t\tF48DAE242661207700C93D40 /* crashreport */,\n\t\t\t);\n\t\t};\n/* End PBXProject section */\n\n/* Begin PBXResourcesBuildPhase section */\n\t\tF48DAE232661207700C93D40 /* Resources */ = {\n\t\t\tisa = PBXResourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF4069CE42668430B002B32F5 /* default_themes.plist in Resources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXResourcesBuildPhase section */\n\n/* Begin PBXSourcesBuildPhase section */\n\t\tF48DAE212661207700C93D40 /* Sources */ = {\n\t\t\tisa = PBXSourcesBuildPhase;\n\t\t\tbuildActionMask = 2147483647;\n\t\t\tfiles = (\n\t\t\t\tF428C0D627245D0800FB8CAC /* IPSThread.m in Sources */,\n\t\t\t\tF4069CC0266840FB002B32F5 /* CUITheme.m in Sources */,\n\t\t\t\tF4069CC1266840FB002B32F5 /* CUIThemeItemAttributes.m in Sources */,\n\t\t\t\tF4440FD9282C40F9003C810B /* IPSCrashSummary.m in Sources */,\n\t\t\t\tF4069C7926683CF9002B32F5 /* CUICrashLogThreadState+UI.m in Sources */,\n\t\t\t\tF480FF76273B01B600905974 /* CUIBinaryImageUtility.m in Sources */,\n\t\t\t\tF40681CF2669820700BE6BEE /* NSUserDefaults+UNXQuickLookGenerator.m in Sources */,\n\t\t\t\tF4069CD52668415A002B32F5 /* CUIApplicationPreferences+Themes.m in Sources */,\n\t\t\t\tF4E112B12735E6170072D40B /* CUICrashDataTransform.m in Sources */,\n\t\t\t\tF4069C8226683CF9002B32F5 /* CUICrashLogThreadState.m in Sources */,\n\t\t\t\tF4069C5926683CC7002B32F5 /* CUIRawCrashLog.m in Sources */,\n\t\t\t\tF4D14D642745BFBC003698AD /* IPSImage+UserCode.m in Sources */,\n\t\t\t\tF4069CD42668415A002B32F5 /* CUIApplicationPreferences.m in Sources */,\n\t\t\t\tF4ACF4BE266EC92000272A25 /* QLCUIThemesProvider.m in Sources */,\n\t\t\t\tF4BD8C6E2DF4DDE900BD61A8 /* IPSExceptionReason.m in Sources */,\n\t\t\t\tF428C0CC27245D0800FB8CAC /* IPSTermination.m in Sources */,\n\t\t\t\tF4069CC62668411A002B32F5 /* NSColor+String.m in Sources */,\n\t\t\t\tF4069CDD26684199002B32F5 /* CUIOutlineModeDisplaySettings.m in Sources */,\n\t\t\t\tF428C0E727245D0800FB8CAC /* IPSLegacyInfo.m in Sources */,\n\t\t\t\tF428C0CD27245D0800FB8CAC /* IPSExternalModificationSummary.m in Sources */,\n\t\t\t\tF428C0C827245D0800FB8CAC /* IPSRegisterState.m in Sources */,\n\t\t\t\tF4FA4326273EF3FE0068EDB8 /* NSString+CPU.m in Sources */,\n\t\t\t\tF4069C9726683D88002B32F5 /* CUIParsingErrors.m in Sources */,\n\t\t\t\tF4DAF0B027C448E600256EA4 /* IPSImage+Offset.m in Sources */,\n\t\t\t\tF4069CDA2668416B002B32F5 /* NSDictionary+MutableDeepCopy.m in Sources */,\n\t\t\t\tF4069C9B26683DA0002B32F5 /* CUICrashLogSectionsDetector.m in Sources */,\n\t\t\t\tF4386B0B284953F600B83525 /* CUICrashLogExceptionInformation+QuickHelp.m in Sources */,\n\t\t\t\tF4069C8B26683D10002B32F5 /* CUIStackFrame.m in Sources */,\n\t\t\t\tF4CF6CF22DF6110C0078458E /* IPSIncident+ApplicationSpecificInformation.m in Sources */,\n\t\t\t\tF4069CE2266842E5002B32F5 /* NSFileManager+ExtendedAttributes.m in Sources */,\n\t\t\t\tF428C0E127245D0800FB8CAC /* IPSThreadState.m in Sources */,\n\t\t\t\tF428C0DA27245D0800FB8CAC /* IPSError.m in Sources */,\n\t\t\t\tF4DAFBF52736BA2100FB50A6 /* CUIDataTransform.m in Sources */,\n\t\t\t\tF428C0CF27245D0800FB8CAC /* IPSExternalModificationStatistics.m in Sources */,\n\t\t\t\tF428C0D227245D0800FB8CAC /* IPSBundleInfo.m in Sources */,\n\t\t\t\tF428C0C627245D0800FB8CAC /* IPSThreadInstructionStream.m in Sources */,\n\t\t\t\tF4069C7526683CF9002B32F5 /* CUICrashLogExceptionInformation+UI.m in Sources */,\n\t\t\t\tF4069C5726683CC7002B32F5 /* CUICrashLog.m in Sources */,\n\t\t\t\tF428C0D827245D0800FB8CAC /* IPSThreadFrame.m in Sources */,\n\t\t\t\tF428C0C127245D0800FB8CAC /* IPSIncidentHeader.m in Sources */,\n\t\t\t\tF4069CAC26683F49002B32F5 /* CUITextModeDisplaySettings.m in Sources */,\n\t\t\t\tF428C0C027245D0800FB8CAC /* IPSImage.m in Sources */,\n\t\t\t\tF428C0D327245D0800FB8CAC /* IPSException.m in Sources */,\n\t\t\t\tF4069C8A26683D10002B32F5 /* CUICallStackBacktrace.m in Sources */,\n\t\t\t\tF4069CA226683E33002B32F5 /* CUICrashLogsProvider.m in Sources */,\n\t\t\t\tF4069CCA26684136002B32F5 /* CUIThemesManager.m in Sources */,\n\t\t\t\tF4FC8EAB27C1AA6700291875 /* CUIReportThemedTransform.m in Sources */,\n\t\t\t\tF428C0CA27245D0800FB8CAC /* IPSApplicationSpecificInformation.m in Sources */,\n\t\t\t\tF4069C8C26683D10002B32F5 /* CUIThread.m in Sources */,\n\t\t\t\tF428C0CB27245D0800FB8CAC /* IPSSummary.m in Sources */,\n\t\t\t\tF428C09027245CF400FB8CAC /* IPSReport+CrashRepresentation.m in Sources */,\n\t\t\t\tF428C0C927245D0800FB8CAC /* IPSDateFormatter.m in Sources */,\n\t\t\t\tF4069C7326683CF9002B32F5 /* CUIBinaryImage.m in Sources */,\n\t\t\t\tF4069CB12668409E002B32F5 /* CUIThemeItemsGroup+UI.m in Sources */,\n\t\t\t\tF47F766E2673577C00A74905 /* CUICrashLogErrors.m in Sources */,\n\t\t\t\tF4069C8026683CF9002B32F5 /* CUICrashLogDianosticMessages.m in Sources */,\n\t\t\t\tF428C0C227245D0800FB8CAC /* IPSIncidentExceptionInformation.m in Sources */,\n\t\t\t\tF4069C9326683D2E002B32F5 /* NSArray+WBExtensions.m in Sources */,\n\t\t\t\tF4DAFBF82736BA3100FB50A6 /* CUIIPSTransform.m in Sources */,\n\t\t\t\tF4069CB9266840E2002B32F5 /* NSDictionary+WBExtensions.m in Sources */,\n\t\t\t\tF47F766F2673577C00A74905 /* CUICrashLogsOpenErrorRecord.m in Sources */,\n\t\t\t\tF48DAE292661207800C93D40 /* GenerateThumbnailForURL.m in Sources */,\n\t\t\t\tF428C0E927245D0800FB8CAC /* IPSIncident.m in Sources */,\n\t\t\t\tF4069CB6266840D1002B32F5 /* CUIThemeItemsGroup.m in Sources */,\n\t\t\t\tF4069C7D26683CF9002B32F5 /* CUIRegister.m in Sources */,\n\t\t\t\tF4069C7026683CF9002B32F5 /* CUICrashLogBacktraces.m in Sources */,\n\t\t\t\tF4069C7626683CF9002B32F5 /* CUICrashLogHeader.m in Sources */,\n\t\t\t\tF428C0DD27245D0800FB8CAC /* IPSOperatingSystemVersion.m in Sources */,\n\t\t\t\tF4069CCE26684143002B32F5 /* NSArray+UniqueName.m in Sources */,\n\t\t\t\tF4069C7C26683CF9002B32F5 /* CUICrashLogExceptionInformation.m in Sources */,\n\t\t\t\tF48DAE2B2661207800C93D40 /* GeneratePreviewForURL.m in Sources */,\n\t\t\t\tF4069C9F26683DFF002B32F5 /* CUIOperatingSystemVersion.m in Sources */,\n\t\t\t\tF428C0C327245D0800FB8CAC /* IPSIncidentDiagnosticMessage.m in Sources */,\n\t\t\t\tF48DAE2D2661207800C93D40 /* main.c in Sources */,\n\t\t\t\tF4069C7F26683CF9002B32F5 /* CUICrashLogBinaryImages.m in Sources */,\n\t\t\t\tF4D0EE98273DB91600CC9737 /* IPSThreadState+RegisterDisplayName.m in Sources */,\n\t\t\t\tF428C0C427245D0800FB8CAC /* IPSReport.m in Sources */,\n\t\t\t\tF4440FD8282C40F9003C810B /* IPSSummarySerialization.m in Sources */,\n\t\t\t\tF428C0C527245D0800FB8CAC /* IPSThreadInstructionState.m in Sources */,\n\t\t\t);\n\t\t\trunOnlyForDeploymentPostprocessing = 0;\n\t\t};\n/* End PBXSourcesBuildPhase section */\n\n/* Begin XCBuildConfiguration section */\n\t\tF48DAE2F2661207800C93D40 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++14\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_WEAK = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_DOCUMENTATION_COMMENTS = YES;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGN_STYLE = Manual;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = dwarf;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tENABLE_TESTABILITY = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu11;\n\t\t\t\tGCC_DYNAMIC_NO_PIC = NO;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_OPTIMIZATION_LEVEL = 0;\n\t\t\t\tGCC_PREPROCESSOR_DEFINITIONS = (\n\t\t\t\t\t\"DEBUG=1\",\n\t\t\t\t\t\"$(inherited)\",\n\t\t\t\t);\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF48DAE302661207800C93D40 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbuildSettings = {\n\t\t\t\tALWAYS_SEARCH_USER_PATHS = NO;\n\t\t\t\tCLANG_ANALYZER_NONNULL = YES;\n\t\t\t\tCLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;\n\t\t\t\tCLANG_CXX_LANGUAGE_STANDARD = \"gnu++14\";\n\t\t\t\tCLANG_CXX_LIBRARY = \"libc++\";\n\t\t\t\tCLANG_ENABLE_MODULES = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_ARC = YES;\n\t\t\t\tCLANG_ENABLE_OBJC_WEAK = YES;\n\t\t\t\tCLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;\n\t\t\t\tCLANG_WARN_BOOL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_COMMA = YES;\n\t\t\t\tCLANG_WARN_CONSTANT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;\n\t\t\t\tCLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;\n\t\t\t\tCLANG_WARN_DOCUMENTATION_COMMENTS = YES;\n\t\t\t\tCLANG_WARN_EMPTY_BODY = YES;\n\t\t\t\tCLANG_WARN_ENUM_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_INFINITE_RECURSION = YES;\n\t\t\t\tCLANG_WARN_INT_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;\n\t\t\t\tCLANG_WARN_OBJC_LITERAL_CONVERSION = YES;\n\t\t\t\tCLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;\n\t\t\t\tCLANG_WARN_RANGE_LOOP_ANALYSIS = YES;\n\t\t\t\tCLANG_WARN_STRICT_PROTOTYPES = YES;\n\t\t\t\tCLANG_WARN_SUSPICIOUS_MOVE = YES;\n\t\t\t\tCLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;\n\t\t\t\tCLANG_WARN_UNREACHABLE_CODE = YES;\n\t\t\t\tCLANG_WARN__DUPLICATE_METHOD_MATCH = YES;\n\t\t\t\tCODE_SIGN_STYLE = Manual;\n\t\t\t\tCOPY_PHASE_STRIP = NO;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tENABLE_NS_ASSERTIONS = NO;\n\t\t\t\tENABLE_STRICT_OBJC_MSGSEND = YES;\n\t\t\t\tGCC_C_LANGUAGE_STANDARD = gnu11;\n\t\t\t\tGCC_NO_COMMON_BLOCKS = YES;\n\t\t\t\tGCC_WARN_64_TO_32_BIT_CONVERSION = YES;\n\t\t\t\tGCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;\n\t\t\t\tGCC_WARN_UNDECLARED_SELECTOR = YES;\n\t\t\t\tGCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;\n\t\t\t\tGCC_WARN_UNUSED_FUNCTION = YES;\n\t\t\t\tGCC_WARN_UNUSED_VARIABLE = YES;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n\t\tF48DAE322661207800C93D40 /* Debug */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = F48DAE3B266123C300C93D40 /* SharedConfigurationSettings.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tDEBUG_INFORMATION_FORMAT = \"dwarf-with-dsym\";\n\t\t\t\tINFOPLIST_FILE = crashreport/Info.plist;\n\t\t\t\tINSTALL_PATH = /Library/QuickLook;\n\t\t\t\tOTHER_CFLAGS = \"-D__DISABLE_SYMBOLICATION_=1\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = fr.whitebox.unexpectedly.qlgenerator.crashreport;\n\t\t\t\tPRODUCT_MODULE_NAME = crashreport;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tWRAPPER_EXTENSION = qlgenerator;\n\t\t\t};\n\t\t\tname = Debug;\n\t\t};\n\t\tF48DAE332661207800C93D40 /* Release */ = {\n\t\t\tisa = XCBuildConfiguration;\n\t\t\tbaseConfigurationReference = F48DAE3B266123C300C93D40 /* SharedConfigurationSettings.xcconfig */;\n\t\t\tbuildSettings = {\n\t\t\t\tCOMBINE_HIDPI_IMAGES = YES;\n\t\t\t\tINFOPLIST_FILE = crashreport/Info.plist;\n\t\t\t\tINSTALL_PATH = /Library/QuickLook;\n\t\t\t\tOTHER_CFLAGS = \"-D__DISABLE_SYMBOLICATION_=1\";\n\t\t\t\tPRODUCT_BUNDLE_IDENTIFIER = fr.whitebox.unexpectedly.qlgenerator.crashreport;\n\t\t\t\tPRODUCT_MODULE_NAME = crashreport;\n\t\t\t\tPRODUCT_NAME = \"$(TARGET_NAME)\";\n\t\t\t\tVERSIONING_SYSTEM = \"apple-generic\";\n\t\t\t\tWRAPPER_EXTENSION = qlgenerator;\n\t\t\t};\n\t\t\tname = Release;\n\t\t};\n/* End XCBuildConfiguration section */\n\n/* Begin XCConfigurationList section */\n\t\tF48DAE1F2661207700C93D40 /* Build configuration list for PBXProject \"crashreport\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF48DAE2F2661207800C93D40 /* Debug */,\n\t\t\t\tF48DAE302661207800C93D40 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n\t\tF48DAE312661207800C93D40 /* Build configuration list for PBXNativeTarget \"crashreport\" */ = {\n\t\t\tisa = XCConfigurationList;\n\t\t\tbuildConfigurations = (\n\t\t\t\tF48DAE322661207800C93D40 /* Debug */,\n\t\t\t\tF48DAE332661207800C93D40 /* Release */,\n\t\t\t);\n\t\t\tdefaultConfigurationIsVisible = 0;\n\t\t\tdefaultConfigurationName = Release;\n\t\t};\n/* End XCConfigurationList section */\n\t};\n\trootObject = F48DAE1C2661207700C93D40 /* Project object */;\n}\n"
  },
  {
    "path": "plugin_quicklook/crashreport.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>IDEDidComputeMac32BitWarning</key>\n\t<true/>\n</dict>\n</plist>\n"
  },
  {
    "path": "plugin_quicklook/crashreport.xcodeproj/xcuserdata/stephane.xcuserdatad/xcschemes/xcschememanagement.plist",
    "content": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n<plist version=\"1.0\">\n<dict>\n\t<key>SchemeUserState</key>\n\t<dict>\n\t\t<key>crashreport.xcscheme_^#shared#^_</key>\n\t\t<dict>\n\t\t\t<key>orderHint</key>\n\t\t\t<integer>1</integer>\n\t\t</dict>\n\t</dict>\n</dict>\n</plist>\n"
  }
]