
/* Class = "NSButtonCell"; title = "AppleXcpmCfgLock"; ObjectID = "0Ld-KH-eQW"; */
"0Ld-KH-eQW.title" = "AppleXcpmCfgLock";

/* Class = "NSButtonCell"; title = "LapicKernelPanic"; ObjectID = "0Ri-rB-uca"; */
"0Ri-rB-uca.title" = "LapicKernelPanic";

/* Class = "NSButtonCell"; title = "IncreasePciBarSize"; ObjectID = "0X0-8n-a82"; */
"0X0-8n-a82.title" = "IncreasePciBarSize";

/* Class = "NSTableColumn"; headerCell.title = "Comment"; ObjectID = "19Q-wm-aZQ"; */
"19Q-wm-aZQ.headerCell.title" = "코멘트";

/* Class = "NSTableColumn"; headerCell.title = "Identifier"; ObjectID = "4ac-sL-evA"; */
"4ac-sL-evA.headerCell.title" = "구분자";

/* Class = "NSTableColumn"; headerCell.title = "ExecutablePath"; ObjectID = "5Zf-0g-20b"; */
"5Zf-0g-20b.headerCell.title" = "적용위치";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nDefault value: false\nRequirement: 10.8 (not required for older)\nDescription: Disables PKG_CST_CONFIG_CONTROL (0xE2) MSR modification in XNU kernel, commonly causing early kernel panic, when it is locked from writing (XCPM power management).\nNote: This option should be avoided whenever possible. See AppleCpuPmCfgLock description for more details."; ObjectID = "677-hy-Blh"; */
"677-hy-Blh.ibShadowedToolTip" = "Type: plist boolean\nDefault value: false\nRequirement: 10.8 (not required for older)\nDescription: Disables PKG_CST_CONFIG_CONTROL (0xE2) MSR modification in XNU kernel, commonly causing early kernel panic, when it is locked from writing (XCPM power management).\nNote: This option should be avoided whenever possible. See AppleCpuPmCfgLock description for more details.";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.8 (not required for older)\nDescription: Disables IOMapper support in XNU (VT-d), which may conflict with the firmware implementation.\nNote: This option is a preferred alternative to dropping DMAR ACPI table and disabling VT-d in firmware preferences, which does not break VT-d support in other systems in case they need it."; ObjectID = "6Aa-HL-hah"; */
"6Aa-HL-hah.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.8 (not required for older)\nDescription: Disables IOMapper support in XNU (VT-d), which may conflict with the firmware implementation.\nNote: This option is a preferred alternative to dropping DMAR ACPI table and disabling VT-d in firmware preferences, which does not break VT-d support in other systems in case they need it.";

/* Class = "NSTableColumn"; headerCell.title = "ExecutablePath"; ObjectID = "6KC-Ck-oJg"; */
"6KC-Ck-oJg.headerCell.title" = "적용위치";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.15 (not required for older)\nDescription: Disables kernel panic on setPowerState timeout.\nAn additional security measure was added to macOS Catalina (10.15) causing kernel panic on power change timeout for Apple drivers. Sometimes it may cause issues on misconfigured hardware, notably digital audio, which sometimes fails to wake up. For debug kernels setpowerstate_panic=0 boot argument should be used, which is otherwise equivalent to this quirk."; ObjectID = "6Mq-wE-cHt"; */
"6Mq-wE-cHt.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.15 (not required for older)\nDescription: Disables kernel panic on setPowerState timeout.\nAn additional security measure was added to macOS Catalina (10.15) causing kernel panic on power change timeout for Apple drivers. Sometimes it may cause issues on misconfigured hardware, notably digital audio, which sometimes fails to wake up. For debug kernels setpowerstate_panic=0 boot argument should be used, which is otherwise equivalent to this quirk.";

/* Class = "NSTableColumn"; headerCell.title = "MinKernel"; ObjectID = "70E-le-Wpc"; */
"70E-le-Wpc.headerCell.title" = "MinKernel";

/* Class = "NSTextField"; ibShadowedToolTip = "Type: plist data, 16 bytes\nFailsafe: All zero\nDescription: Sequence of EAX, EBX, ECX, EDX values to replace CPUID (1) call in XNU kernel.  Normally it is only the value of EAX that needs to be taken care of, which represents the exact CPUID. And the remainders are to be left as zeroes. For instance, A9 06 03 00 stands for CPUID 0x0306A9 (Ivy Bridge)."; ObjectID = "7Jq-Yr-TQY"; */
"7Jq-Yr-TQY.ibShadowedToolTip" = "Type: plist data, 16 bytes\nFailsafe: All zero\nDescription: Sequence of EAX, EBX, ECX, EDX values to replace CPUID (1) call in XNU kernel.  Normally it is only the value of EAX that needs to be taken care of, which represents the exact CPUID. And the remainders are to be left as zeroes. For instance, A9 06 03 00 stands for CPUID 0x0306A9 (Ivy Bridge).";

/* Class = "NSButtonCell"; title = "PanicNoKextDump"; ObjectID = "7u5-bu-FWR"; */
"7u5-bu-FWR.title" = "PanicNoKextDump";

/* Class = "NSTableColumn"; headerCell.title = "Identifier*"; ObjectID = "838-ax-A45"; */
"838-ax-A45.headerCell.title" = "구분자*";

/* Class = "NSTableColumn"; headerCell.title = "Count"; ObjectID = "8BF-rh-btZ"; */
"8BF-rh-btZ.headerCell.title" = "카운트";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.10\nDescription: Increases 32-bit PCI bar size in IOPCIFamily from 1 to 4 GBs.\nNote: This option should be avoided whenever possible. In general the necessity of this option means misconfigured or broken firmware."; ObjectID = "8Db-Hu-t2R"; */
"8Db-Hu-t2R.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.10\nDescription: Increases 32-bit PCI bar size in IOPCIFamily from 1 to 4 GBs.\nNote: This option should be avoided whenever possible. In general the necessity of this option means misconfigured or broken firmware.";

/* Class = "NSButtonCell"; title = "Download/Update kexts"; ObjectID = "8LM-uC-YZk"; */
"8LM-uC-YZk.title" = "다운로드/켁스트 업데이트";

/* Class = "NSTableColumn"; headerCell.title = "Arch"; ObjectID = "8Qp-io-xPv"; */
"8Qp-io-xPv.headerCell.title" = "Arch";

/* Class = "NSTableView"; ibShadowedToolTip = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext block architecture (Any, i386, x86_64).\n2. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n3. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel driver will not be blocked unless set to true.\n4. Identifier\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle identifier (e.g. com.apple.driver.AppleTyMCEDriver).\n5. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Blocks kernel driver on specified macOS version or older.\n6. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Blocks kernel driver on specified macOS version or newer."; ObjectID = "8UL-f2-RSc"; */
"8UL-f2-RSc.ibShadowedToolTip" = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext block architecture (Any, i386, x86_64).\n2. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n3. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel driver will not be blocked unless set to true.\n4. Identifier\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle identifier (e.g. com.apple.driver.AppleTyMCEDriver).\n5. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Blocks kernel driver on specified macOS version or older.\n6. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Blocks kernel driver on specified macOS version or newer.";

/* Class = "NSTableColumn"; headerCell.title = "Arch"; ObjectID = "8fi-fb-Eq7"; */
"8fi-fb-Eq7.headerCell.title" = "Arch";

/* Class = "NSButtonCell"; title = "DisableIoMapper"; ObjectID = "8qF-5E-PkG"; */
"8qF-5E-PkG.title" = "DisableIoMapper";

/* Class = "NSButtonCell"; title = "XhciPortLimit"; ObjectID = "9Zq-h7-ea8"; */
"9Zq-h7-ea8.title" = "XhciPortLimit";

/* Class = "NSTableView"; ibShadowedToolTip = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext patch architecture (Any, i386, x86_64).\n2. Base\nType: plist string\nFailsafe: Empty string\nDescription: Selects symbol-matched base for patch lookup (or immediate replacement) by obtaining the address of provided symbol name. Can be set to empty string to be ignored.\n3. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n4. Count\nType: plist integer\nFailsafe: 0\nDescription: Number of patch occurrences to apply. 0 applies the patch to all occurrences found.\n5. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel patch will not be used unless set to true.\n6. Find\nType: plist data\nFailsafe: Empty data\nDescription: Data to find. Can be set to empty for immediate replacement at Base. Must equal to Replace in size otherwise.\n7. Identifier\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle identifier (e.g. com.apple.driver.AppleHDA) or kernel for kernel patch.\n8. Limit\nType: plist integer\nFailsafe: 0\nDescription: Maximum number of bytes to search for. Can be set to 0 to look through the whole kext or kernel.\n9. Mask\nType: plist data\nFailsafe: Empty data\nDescription: Data bitwise mask used during find comparison. Allows fuzzy search by ignoring not masked (set to zero) bits. Can be set to empty data to be ignored. Must equal to Replace in size otherwise.\n10. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Patches data on specified macOS version or older.\n\nNote: Refer to Add MaxKernel description for matching logic.\n11. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Patches data on specified macOS version or newer.\nNote: Refer to Add MaxKernel description for matching logic.\n12. Replace\nType: plist data\nFailsafe: Empty data\nDescription: Replacement data of one or more bytes.\n13. ReplaceMask\nType: plist data\nFailsafe: Empty data\nDescription: Data bitwise mask used during replacement. Allows fuzzy replacement by updating masked (set to non-zero) bits. Can be set to empty data to be ignored. Must equal to Replace in size otherwise.\n14. Skip\nType: plist integer\nFailsafe: 0\nDescription: Number of found occurrences to be skipped before replacement is done."; ObjectID = "9hf-l6-OjL"; */
"9hf-l6-OjL.ibShadowedToolTip" = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext patch architecture (Any, i386, x86_64).\n2. Base\nType: plist string\nFailsafe: Empty string\nDescription: Selects symbol-matched base for patch lookup (or immediate replacement) by obtaining the address of provided symbol name. Can be set to empty string to be ignored.\n3. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n4. Count\nType: plist integer\nFailsafe: 0\nDescription: Number of patch occurrences to apply. 0 applies the patch to all occurrences found.\n5. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel patch will not be used unless set to true.\n6. Find\nType: plist data\nFailsafe: Empty data\nDescription: Data to find. Can be set to empty for immediate replacement at Base. Must equal to Replace in size otherwise.\n7. Identifier\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle identifier (e.g. com.apple.driver.AppleHDA) or kernel for kernel patch.\n8. Limit\nType: plist integer\nFailsafe: 0\nDescription: Maximum number of bytes to search for. Can be set to 0 to look through the whole kext or kernel.\n9. Mask\nType: plist data\nFailsafe: Empty data\nDescription: Data bitwise mask used during find comparison. Allows fuzzy search by ignoring not masked (set to zero) bits. Can be set to empty data to be ignored. Must equal to Replace in size otherwise.\n10. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Patches data on specified macOS version or older.\n\nNote: Refer to Add MaxKernel description for matching logic.\n11. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Patches data on specified macOS version or newer.\nNote: Refer to Add MaxKernel description for matching logic.\n12. Replace\nType: plist data\nFailsafe: Empty data\nDescription: Replacement data of one or more bytes.\n13. ReplaceMask\nType: plist data\nFailsafe: Empty data\nDescription: Data bitwise mask used during replacement. Allows fuzzy replacement by updating masked (set to non-zero) bits. Can be set to empty data to be ignored. Must equal to Replace in size otherwise.\n14. Skip\nType: plist integer\nFailsafe: 0\nDescription: Number of found occurrences to be skipped before replacement is done.";

/* Class = "NSTabViewItem"; label = "Patch"; ObjectID = "9tr-6R-vGd"; */
"9tr-6R-vGd.label" = "패치";

/* Class = "NSTabViewItem"; label = "Force"; ObjectID = "Dip-Qx-lAB"; */
"Dip-Qx-lAB.label" = "Force";

/* Class = "NSTextFieldCell"; title = "KernelArch"; ObjectID = "Edd-Fj-thV"; */
"Edd-Fj-thV.title" = "KernelArch";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nDefault value: false\nRequirement: 10.6 (64-bit)\nDescription: Disables PKG_CST_CONFIG_CONTROL (0xE2) MSR modification in AppleIntelCPUPowerManage- ment.kext, commonly causing early kernel panic, when it is locked from writing.\nCertain firmwares lock PKG_CST_CONFIG_CONTROL MSR register. To check its state one can use bundled VerifyMsrE2 tool. Select firmwares have this register locked on some cores only.\nAs modern firmwares provide CFG Lock setting, which allows configuring PKG_CST_CONFIG_CONTROL MSR register lock, this option should be avoided whenever possible. For several APTIO firmwares not displaying CFG Lock setting in the GUI it is possible to access the option directly:\n(a) Download UEFITool and IFR-Extractor.\n(b) Open your firmware image in UEFITool and find CFG Lock unicode string. If it is not present, your firmware may not have this option and you should stop.\n(c) Extract the Setup.bin PE32 Image Section (the one UEFITool found) through Extract Body menu option.\n(d) Run IFR-Extractor on the extracted file (e.g. ./ifrextract Setup.bin Setup.txt).\n(e) Find CFG Lock, VarStoreInfo (VarOffset/VarName): in Setup.txt and remember the offset right after it (e.g. 0x123).\n(f) Download and run Modified GRUB Shell compiled by brainsucker or use a newer version by datasone.\n(g) Enter setup_var 0x123 0x00 command, where 0x123 should be replaced by your actual offset, and reboot.\nWARNING: Variable offsets are unique not only to each motherboard but even to its firmware version. Never ever try to use an offset without checking."; ObjectID = "FUx-RJ-QTK"; */
"FUx-RJ-QTK.ibShadowedToolTip" = "Type: plist boolean\nDefault value: false\nRequirement: 10.6 (64-bit)\nDescription: Disables PKG_CST_CONFIG_CONTROL (0xE2) MSR modification in AppleIntelCPUPowerManage- ment.kext, commonly causing early kernel panic, when it is locked from writing.\nCertain firmwares lock PKG_CST_CONFIG_CONTROL MSR register. To check its state one can use bundled VerifyMsrE2 tool. Select firmwares have this register locked on some cores only.\nAs modern firmwares provide CFG Lock setting, which allows configuring PKG_CST_CONFIG_CONTROL MSR register lock, this option should be avoided whenever possible. For several APTIO firmwares not displaying CFG Lock setting in the GUI it is possible to access the option directly:\n(a) Download UEFITool and IFR-Extractor.\n(b) Open your firmware image in UEFITool and find CFG Lock unicode string. If it is not present, your firmware may not have this option and you should stop.\n(c) Extract the Setup.bin PE32 Image Section (the one UEFITool found) through Extract Body menu option.\n(d) Run IFR-Extractor on the extracted file (e.g. ./ifrextract Setup.bin Setup.txt).\n(e) Find CFG Lock, VarStoreInfo (VarOffset/VarName): in Setup.txt and remember the offset right after it (e.g. 0x123).\n(f) Download and run Modified GRUB Shell compiled by brainsucker or use a newer version by datasone.\n(g) Enter setup_var 0x123 0x00 command, where 0x123 should be replaced by your actual offset, and reboot.\nWARNING: Variable offsets are unique not only to each motherboard but even to its firmware version. Never ever try to use an offset without checking.";

/* Class = "NSTableColumn"; headerCell.title = "Find"; ObjectID = "GcD-Hq-Pnt"; */
"GcD-Hq-Pnt.headerCell.title" = "찾기";

/* Class = "NSButtonCell"; title = "AppleXcpmForceBoost"; ObjectID = "Go8-Jz-vk9"; */
"Go8-Jz-vk9.title" = "AppleXcpmForceBoost";

/* Class = "NSTableColumn"; headerCell.title = "PlistPath"; ObjectID = "H8d-aU-LbU"; */
"H8d-aU-LbU.headerCell.title" = "PlistInfo 위치";

/* Class = "NSButtonCell"; title = "DummyPowerManagement"; ObjectID = "Hru-Nc-CCR"; */
"Hru-Nc-CCR.title" = "DummyPowerManagement";

/* Class = "NSTableColumn"; headerCell.title = "MaxKernel"; ObjectID = "IQk-iw-L5E"; */
"IQk-iw-L5E.headerCell.title" = "MaxKernel";

/* Class = "NSTableColumn"; headerCell.title = "Mask"; ObjectID = "IQu-iO-MYc"; */
"IQu-iO-MYc.headerCell.title" = "Mask";

/* Class = "NSTableColumn"; headerCell.title = "Identifier*"; ObjectID = "IWc-Ff-bdQ"; */
"IWc-Ff-bdQ.headerCell.title" = "구분자*";

/* Class = "NSTableColumn"; headerCell.title = "Enabled"; ObjectID = "K9H-md-xVS"; */
"K9H-md-xVS.headerCell.title" = "활성화";

/* Class = "NSTableColumn"; headerCell.title = "Replace"; ObjectID = "Kyb-jI-0pq"; */
"Kyb-jI-0pq.headerCell.title" = "교체";

/* Class = "NSButtonCell"; title = "PowerTimeoutKernelPanic"; ObjectID = "LI0-Hi-oQo"; */
"LI0-Hi-oQo.title" = "PowerTimeoutKernelPanic";

/* Class = "NSTableColumn"; headerCell.title = "Arch"; ObjectID = "N6C-NB-CMk"; */
"N6C-NB-CMk.headerCell.title" = "Arch";

/* Class = "NSTableColumn"; headerCell.title = "Comment"; ObjectID = "Ntg-7A-K1a"; */
"Ntg-7A-K1a.headerCell.title" = "코멘트";

/* Class = "NSButtonCell"; title = "DisableLinkeditJettison"; ObjectID = "OSa-QT-Lhq"; */
"OSa-QT-Lhq.title" = "DisableLinkeditJettison";

/* Class = "NSTableColumn"; headerCell.title = "BundlePath*"; ObjectID = "Oe6-LD-h7w"; */
"Oe6-LD-h7w.headerCell.title" = "파일위치*";

/* Class = "NSTableColumn"; headerCell.title = "Enabled"; ObjectID = "PdE-OW-Faw"; */
"PdE-OW-Faw.headerCell.title" = "활성화";

/* Class = "NSBox"; title = "Quirks"; ObjectID = "QBz-fY-8R7"; */
"QBz-fY-8R7.title" = "Quirks";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nDefault value: false\nRequirement: 10.11 (not required for older)\nDescription: Patch various kexts (AppleUSBXHCI.kext, AppleUSBXHCIPCI.kext, IOUSBHostFamily.kext) to remove USB port count limit of 15 ports.\nNote: This option should avoided whenever possible. USB port limit is imposed by the amount of used bits in locationID format and there is no possible way to workaround this without heavy OS modification. The only valid solution is to limit the amount of used ports to 15 (discarding some)."; ObjectID = "QzX-0b-2d3"; */
"QzX-0b-2d3.ibShadowedToolTip" = "Type: plist boolean\nDefault value: false\nRequirement: 10.11 (not required for older)\nDescription: Patch various kexts (AppleUSBXHCI.kext, AppleUSBXHCIPCI.kext, IOUSBHostFamily.kext) to remove USB port count limit of 15 ports.\nNote: This option should avoided whenever possible. USB port limit is imposed by the amount of used bits in locationID format and there is no possible way to workaround this without heavy OS modification. The only valid solution is to limit the amount of used ports to 15 (discarding some).";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Disables primary checksum (0x58-0x59) writing in AppleRTC.\n\nNote 1: This option will not protect other areas from being overwritten, see RTCMemoryFixup kernel extension if this is desired.\n\nNote 2: This option will not protect areas from being overwritten at firmware stage (e.g. macOS bootloader), see RTC (FIXME) section if this is desired."; ObjectID = "RA3-U5-VwM"; */
"RA3-U5-VwM.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Disables primary checksum (0x58-0x59) writing in AppleRTC.\n\nNote 1: This option will not protect other areas from being overwritten, see RTCMemoryFixup kernel extension if this is desired.\n\nNote 2: This option will not protect areas from being overwritten at firmware stage (e.g. macOS bootloader), see RTC (FIXME) section if this is desired.";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nDefault value: false\nRequirement: 10.6 (64-bit)\nDescription: Apply icon type patches to IOAHCIPort.kext to force internal disk icons for all AHCI disks.\nNote: This option should be avoided whenever possible. Modern firmwares usually have compatible AHCI controllers."; ObjectID = "SGM-P1-Mz5"; */
"SGM-P1-Mz5.ibShadowedToolTip" = "Type: plist boolean\nDefault value: false\nRequirement: 10.6 (64-bit)\nDescription: Apply icon type patches to IOAHCIPort.kext to force internal disk icons for all AHCI disks.\nNote: This option should be avoided whenever possible. Modern firmwares usually have compatible AHCI controllers.";

/* Class = "NSButtonCell"; title = "ExternalDiskIcons"; ObjectID = "SHQ-fm-Uec"; */
"SHQ-fm-Uec.title" = "ExternalDiskIcons";

/* Class = "NSTableColumn"; headerCell.title = "Enabled"; ObjectID = "TcN-ku-fY2"; */
"TcN-ku-fY2.headerCell.title" = "활성화";

/* Class = "NSButtonCell"; title = "Browse"; ObjectID = "WGU-Ke-n07"; */
"WGU-Ke-n07.title" = "찾아보기";

/* Class = "NSTextField"; ibShadowedToolTip = "Type: plist data, 16 bytes\nFailsafe: All zero\nDescription: Bit mask of active bits in Cpuid1Data. When each Cpuid1Mask is set to 0, the original CPU bit is used, otherwise."; ObjectID = "WQz-t0-GJT"; */
"WQz-t0-GJT.ibShadowedToolTip" = "Type: plist data, 16 bytes\nFailsafe: All zero\nDescription: Bit mask of active bits in Cpuid1Data. When each Cpuid1Mask is set to 0, the original CPU bit is used, otherwise.";

/* Class = "NSPopUpButton"; ibShadowedToolTip = "Type: plist string\nFailsafe: Auto\nDescription: Prefer specified kernel cache type (Auto, Cacheless, Mkext, Prelinked) when available. \nDifferent variants of macOS support different kernel caching variants designed to improve boot performance.\nThis setting allows to prevent using faster kernel caching variants if slower variants are available for debugging and stability reasons. I.e. by specifying Mkext one will disable Prelinked for e.g. 10.6 but not 10.7."; ObjectID = "ZjB-iQ-yjq"; */
"ZjB-iQ-yjq.ibShadowedToolTip" = "Type: plist string\nFailsafe: Auto\nDescription: Prefer specified kernel cache type (Auto, Cacheless, Mkext, Prelinked) when available. \nDifferent variants of macOS support different kernel caching variants designed to improve boot performance.\nThis setting allows to prevent using faster kernel caching variants if slower variants are available for debugging and stability reasons. I.e. by specifying Mkext one will disable Prelinked for e.g. 10.6 but not 10.7.";

/* Class = "NSTableColumn"; headerCell.title = "Skip"; ObjectID = "aAH-qz-ikl"; */
"aAH-qz-ikl.headerCell.title" = "무시";

/* Class = "NSTableColumn"; headerCell.title = "MaxKernel"; ObjectID = "aHq-mU-IMD"; */
"aHq-mU-IMD.headerCell.title" = "MaxKernel";

/* Class = "NSTextFieldCell"; title = "Cpuid1Data"; ObjectID = "aVm-Of-4z9"; */
"aVm-Of-4z9.title" = "Cpuid1Data";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Performs GUID patching for UpdateSMBIOSMode Custom mode. Usually relevant for Dell laptops."; ObjectID = "alh-j7-rix"; */
"alh-j7-rix.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Performs GUID patching for UpdateSMBIOSMode Custom mode. Usually relevant for Dell laptops.";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.13 (not required for older)\nDescription: Prevent kernel from printing kext dump in the panic log preventing from observing panic details. Affects 10.13 and above."; ObjectID = "axF-O3-KF9"; */
"axF-O3-KF9.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.13 (not required for older)\nDescription: Prevent kernel from printing kext dump in the panic log preventing from observing panic details. Affects 10.13 and above.";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean \nFailsafe: false\nRequirement: 10.8 (not required for older)\nDescription: Forces maximum performance in XCPM mode.\nThis patch writes 0xFF00 to MSR_IA32_PERF_CONTROL (0x199), effectively setting maximum multiplier for all the time.\nNote: While this may increase the performance, this patch is strongly discouraged on all systems but those explicitly dedicated to scientific or media calculations. In general only certain Xeon models benefit from the patch."; ObjectID = "cKa-I9-gvM"; */
"cKa-I9-gvM.ibShadowedToolTip" = "Type: plist boolean \nFailsafe: false\nRequirement: 10.8 (not required for older)\nDescription: Forces maximum performance in XCPM mode.\nThis patch writes 0xFF00 to MSR_IA32_PERF_CONTROL (0x199), effectively setting maximum multiplier for all the time.\nNote: While this may increase the performance, this patch is strongly discouraged on all systems but those explicitly dedicated to scientific or media calculations. In general only certain Xeon models benefit from the patch.";

/* Class = "NSTableColumn"; headerCell.title = "Enabled"; ObjectID = "cUJ-Nj-uY7"; */
"cUJ-Nj-uY7.headerCell.title" = "활성화";

/* Class = "NSTableColumn"; headerCell.title = "Base"; ObjectID = "djM-Oe-omR"; */
"djM-Oe-omR.headerCell.title" = "Base";

/* Class = "NSTableColumn"; headerCell.title = "BundlePath*"; ObjectID = "eFP-6O-woi"; */
"eFP-6O-woi.headerCell.title" = "BundlePath*";

/* Class = "NSTableColumn"; headerCell.title = "PlistPath"; ObjectID = "ek6-EY-0uZ"; */
"ek6-EY-0uZ.headerCell.title" = "PlistPath";

/* Class = "NSTextFieldCell"; title = "Loading Resources"; ObjectID = "ewU-gZ-tet"; */
"ewU-gZ-tet.title" = "리소스 불러오는중";

/* Class = "NSBox"; title = "Scheme"; ObjectID = "fHU-xs-V2l"; */
"fHU-xs-V2l.title" = "Scheme";

/* Class = "NSTableColumn"; headerCell.title = "Arch"; ObjectID = "fUC-fp-4l5"; */
"fUC-fp-4l5.headerCell.title" = "Arch";

/* Class = "NSTableColumn"; headerCell.title = "MinKernel"; ObjectID = "fZ7-RW-fxf"; */
"fZ7-RW-fxf.headerCell.title" = "MinKernel";

/* Class = "NSButtonCell"; title = "CustomSMBIOSGuid"; ObjectID = "faf-ix-5sI"; */
"faf-ix-5sI.title" = "CustomSMBIOSGuid";

/* Class = "NSTextFieldCell"; title = "KernelCache"; ObjectID = "g1H-e8-UUH"; */
"g1H-e8-UUH.title" = "KernelCache";

/* Class = "NSTableColumn"; headerCell.title = "MaxKernel"; ObjectID = "gFl-jZ-XPd"; */
"gFl-jZ-XPd.headerCell.title" = "MaxKernel";

/* Class = "NSTabViewItem"; label = "Block"; ObjectID = "gy1-1j-jtJ"; */
"gy1-1j-jtJ.label" = "블럭";

/* Class = "NSButtonCell"; title = "AppleXcpmExtraMsrs"; ObjectID = "jRH-bz-ZFw"; */
"jRH-bz-ZFw.title" = "AppleXcpmExtraMsrs";

/* Class = "NSTextFieldCell"; title = "Loading Resources"; ObjectID = "je9-Z0-9pa"; */
"je9-Z0-9pa.title" = "Loading Resources";

/* Class = "NSButtonCell"; title = "AppleCpuPmCfgLock"; ObjectID = "jfB-nu-ijp"; */
"jfB-nu-ijp.title" = "AppleCpuPmCfgLock";

/* Class = "NSTableColumn"; headerCell.title = "Comment"; ObjectID = "k5V-cd-PJd"; */
"k5V-cd-PJd.headerCell.title" = "코멘트";

/* Class = "NSTableColumn"; headerCell.title = "Comment"; ObjectID = "kGJ-yd-xi8"; */
"kGJ-yd-xi8.headerCell.title" = "코멘트";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 11.0\nDescription: Disables __LINKEDIT jettison code.\n\nThis option lets Lilu.kext and possibly some others function in macOS Big Sur with best performance without keepsyms=1 boot argument."; ObjectID = "koV-S4-Tkn"; */
"koV-S4-Tkn.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 11.0\nDescription: Disables __LINKEDIT jettison code.\n\nThis option lets Lilu.kext and possibly some others function in macOS Big Sur with best performance without keepsyms=1 boot argument.";

/* Class = "NSTableColumn"; headerCell.title = "ReplaceMask"; ObjectID = "lAD-ms-SMV"; */
"lAD-ms-SMV.headerCell.title" = "ReplaceMask";

/* Class = "NSTableColumn"; headerCell.title = "MinKernel"; ObjectID = "lXN-nk-zjA"; */
"lXN-nk-zjA.headerCell.title" = "MinKernel";

/* Class = "NSTabViewItem"; label = "Add"; ObjectID = "mWg-wh-eGt"; */
"mWg-wh-eGt.label" = "추가";

/* Class = "NSButtonCell"; title = "Browse"; ObjectID = "mup-PJ-Q4D"; */
"mup-PJ-Q4D.title" = "찾아보기";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Disables kernel panic on LAPIC interrupts."; ObjectID = "nsg-T6-DJT"; */
"nsg-T6-DJT.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Disables kernel panic on LAPIC interrupts.";

/* Class = "NSTableColumn"; headerCell.title = "Limit"; ObjectID = "nyt-5D-3es"; */
"nyt-5D-3es.headerCell.title" = "Limit";

/* Class = "NSTableView"; ibShadowedToolTip = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext architecture (Any, i386, x86_64). \n2. BundlePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle path (e.g. System\\Library \\Extensions \\IONetworkingFamily.kext).\n3. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n4. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel driver will not be added when not present unless set to true.\n5. ExecutablePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext executable path relative to bundle (e.g. Contents/MacOS/IONetworkingFamily).\n6. Identifier\nType: plist string\nFailsafe: Empty string\nDescription: Kext identifier to perform presence checking before adding (e.g. com.apple.iokit.IONetworkingFamily).\nOnly drivers which identifiers are not be found in the cache will be added.\n7. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or older.\nNote: Refer to Add Add MaxKernel description for matching logic.\n8. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or newer.\nNote: Refer to Add Add MaxKernel description for matching logic.\n9. PlistPath\nType: plist string\nFailsafe: Empty string\nDescription: Kext Info.plist path relative to bundle (e.g. Contents/Info.plist)."; ObjectID = "p2g-8y-f45"; */
"p2g-8y-f45.ibShadowedToolTip" = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext architecture (Any, i386, x86_64). \n2. BundlePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle path (e.g. System\\Library \\Extensions \\IONetworkingFamily.kext).\n3. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n4. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel driver will not be added when not present unless set to true.\n5. ExecutablePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext executable path relative to bundle (e.g. Contents/MacOS/IONetworkingFamily).\n6. Identifier\nType: plist string\nFailsafe: Empty string\nDescription: Kext identifier to perform presence checking before adding (e.g. com.apple.iokit.IONetworkingFamily).\nOnly drivers which identifiers are not be found in the cache will be added.\n7. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or older.\nNote: Refer to Add Add MaxKernel description for matching logic.\n8. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or newer.\nNote: Refer to Add Add MaxKernel description for matching logic.\n9. PlistPath\nType: plist string\nFailsafe: Empty string\nDescription: Kext Info.plist path relative to bundle (e.g. Contents/Info.plist).";

/* Class = "NSTableView"; ibShadowedToolTip = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext architecture (Any, i386, x86_64).\n2. BundlePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle path (e.g. Lilu.kext or MyKext.kext/Contents/PlugIns/MySubKext.kext).\n3. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n4. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel driver will not be added unless set to true.\n5. ExecutablePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext executable path relative to bundle (e.g. Contents/MacOS/Lilu).\n6. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or older.\nKernel version can be obtained with uname -r command, and should look like 3 numbers separated by dots, for example 18.7.0 is the kernel version for 10.14.6.\n7. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or newer.\n\nNote: Refer to Add MaxKernel description for matching logic.\n8. PlistPath\nType: plist string\nFailsafe: Empty string\nDescription: Kext Info.plist path relative to bundle (e.g. Contents/Info.plist)."; ObjectID = "pIA-W6-XA0"; */
"pIA-W6-XA0.ibShadowedToolTip" = "1. Arch\nType: plist string\nFailsafe: Any\nDescription: Kext architecture (Any, i386, x86_64).\n2. BundlePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext bundle path (e.g. Lilu.kext or MyKext.kext/Contents/PlugIns/MySubKext.kext).\n3. Comment\nType: plist string\nFailsafe: Empty string\nDescription: Arbitrary ASCII string used to provide human readable reference for the entry. It is implementation defined whether this value is used.\n4. Enabled\nType: plist boolean\nFailsafe: false\nDescription: This kernel driver will not be added unless set to true.\n5. ExecutablePath\nType: plist string\nFailsafe: Empty string\nDescription: Kext executable path relative to bundle (e.g. Contents/MacOS/Lilu).\n6. MaxKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or older.\nKernel version can be obtained with uname -r command, and should look like 3 numbers separated by dots, for example 18.7.0 is the kernel version for 10.14.6.\n7. MinKernel\nType: plist string\nFailsafe: Empty string\nDescription: Adds kernel driver on specified macOS version or newer.\n\nNote: Refer to Add MaxKernel description for matching logic.\n8. PlistPath\nType: plist string\nFailsafe: Empty string\nDescription: Kext Info.plist path relative to bundle (e.g. Contents/Info.plist).";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean \nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Disables AppleIntelCpuPowerManagement.\nNote: This option is a preferred alternative to NullCpuPowerManagement.kext for CPUs without native power management driver in macOS."; ObjectID = "rXc-DS-H2x"; */
"rXc-DS-H2x.ibShadowedToolTip" = "Type: plist boolean \nFailsafe: false\nRequirement: 10.6 (64-bit)\nDescription: Disables AppleIntelCpuPowerManagement.\nNote: This option is a preferred alternative to NullCpuPowerManagement.kext for CPUs without native power management driver in macOS.";

/* Class = "NSButtonCell"; title = "FuzzyMatch"; ObjectID = "srr-gQ-RrN"; */
"srr-gQ-RrN.title" = "FuzzyMatch";

/* Class = "NSTableColumn"; headerCell.title = "MaxKernel"; ObjectID = "tya-o0-N6w"; */
"tya-o0-N6w.headerCell.title" = "MaxKernel";

/* Class = "NSMenuItem"; title = "List Of Patches"; ObjectID = "urM-4i-kap"; */
"urM-4i-kap.title" = "패치 리스트";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.8 (not required for older)\nDescription: Disables multiple MSR access critical for select CPUs, which have no native XCPM support.\nThis is normally used in conjunction with Emulate section on Haswell-E, Broadwell-E, Skylake-SP, and similar CPUs.\nNote: Additional not provided patches will be required for Ivy Bridge or Pentium CPUs. It is recommended to use AppleIntelCpuPowerManagement.kext for the former."; ObjectID = "v6y-N9-uHT"; */
"v6y-N9-uHT.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.8 (not required for older)\nDescription: Disables multiple MSR access critical for select CPUs, which have no native XCPM support.\nThis is normally used in conjunction with Emulate section on Haswell-E, Broadwell-E, Skylake-SP, and similar CPUs.\nNote: Additional not provided patches will be required for Ivy Bridge or Pentium CPUs. It is recommended to use AppleIntelCpuPowerManagement.kext for the former.";

/* Class = "NSTextFieldCell"; title = "Multiple selection allowed"; ObjectID = "vgG-WU-Sc2"; */
"vgG-WU-Sc2.title" = "다중 선택 허용됨";

/* Class = "NSButtonCell"; title = "ThirdPartyDrives"; ObjectID = "w0k-rY-QSy"; */
"w0k-rY-QSy.title" = "ThirdPartyDrives";

/* Class = "NSTableColumn"; headerCell.title = "MinKernel"; ObjectID = "w5E-ff-NpB"; */
"w5E-ff-NpB.headerCell.title" = "MinKernel";

/* Class = "NSBox"; title = "Emulate"; ObjectID = "wEr-yw-cwt"; */
"wEr-yw-cwt.title" = "Emulate";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean \nFailsafe: false \nDescription: Use kernelcache with different checksums when available.\n\nOn macOS 10.6 and earlier kernelcache filename has a checksum, which essentially is adler32 from SMBIOS product name and EfiBoot device path. On certain firmwares EfiBoot device path differs between UEFI and macOS due to ACPI or hardware specifics, rendering kernelcache checksum as always different.\nThis setting allows matching the latest kernelcache with a suitable architecture when the kernelcache without suffix is unavailable, improving macOS 10.6 boot performance on several platforms."; ObjectID = "wLJ-kT-oLE"; */
"wLJ-kT-oLE.ibShadowedToolTip" = "Type: plist boolean \nFailsafe: false \nDescription: Use kernelcache with different checksums when available.\n\nOn macOS 10.6 and earlier kernelcache filename has a checksum, which essentially is adler32 from SMBIOS product name and EfiBoot device path. On certain firmwares EfiBoot device path differs between UEFI and macOS due to ACPI or hardware specifics, rendering kernelcache checksum as always different.\nThis setting allows matching the latest kernelcache with a suitable architecture when the kernelcache without suffix is unavailable, improving macOS 10.6 boot performance on several platforms.";

/* Class = "NSButtonCell"; title = "DisableRtcChecksum"; ObjectID = "xIA-cT-lWe"; */
"xIA-cT-lWe.title" = "DisableRtcChecksum";

/* Class = "NSTextFieldCell"; title = "Cpuid1Mask"; ObjectID = "xNJ-1G-bdS"; */
"xNJ-1G-bdS.title" = "Cpuid1Mask";

/* Class = "NSButton"; ibShadowedToolTip = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit, not required for older)\nDescription: Apply vendor patches to IOAHCIBlockStorage.kext to enable native features for third-party drives, such as TRIM on SSDs or hibernation support on 10.15 and newer.\nNote: This option may be avoided on user preference. NVMe SSDs are compatible without the change. For AHCI SSDs on modern macOS version there is a dedicated built-in utility called trimforce. Starting from 10.15 this utility creates EnableTRIM variable in APPLE_BOOT_VARIABLE_GUID namespace with 01 00 00 00 value."; ObjectID = "yhV-cY-frg"; */
"yhV-cY-frg.ibShadowedToolTip" = "Type: plist boolean\nFailsafe: false\nRequirement: 10.6 (64-bit, not required for older)\nDescription: Apply vendor patches to IOAHCIBlockStorage.kext to enable native features for third-party drives, such as TRIM on SSDs or hibernation support on 10.15 and newer.\nNote: This option may be avoided on user preference. NVMe SSDs are compatible without the change. For AHCI SSDs on modern macOS version there is a dedicated built-in utility called trimforce. Starting from 10.15 this utility creates EnableTRIM variable in APPLE_BOOT_VARIABLE_GUID namespace with 01 00 00 00 value.";

/* Class = "NSPopUpButton"; ibShadowedToolTip = "Type: plist string\nFailsafe: Auto\nDescription: Prefer specified kernel architecture (Auto, i386, i386-user32, x86_64) when available.\n\nOn macOS 10.7 and earlier XNU kernel can boot with architectures different from the usual x86_64. This setting will use the specified architecture to boot macOS when it is supported by the macOS and the configuration:\n• Auto — Choose the preferred architecture automatically.\n• i386 — Use i386 (32-bit) kernel when available.\n• i386-user32 — Use i386 (32-bit) kernel when available and force the use of 32-bit userspace on 64-bit\ncapable processors. On macOS 64-bit capable processors are assumed to support SSSE3. This is not the case for older 64-bit capable Pentium processors, which cause some applications to crash on macOS 10.6.\nThe behaviour corresponds to -legacy kernel boot argument.\n• x86_64 — Use x86_64 (64-bit) kernel when available.\n\nBelow is the algorithm determining the kernel architecture.\n(a) arch argument in image arguments (e.g. when launched via UEFI Shell) or in boot-args variable overrides any compatibility checks and forces the specified architecture, completing this algorithm.\n(b) OpenCore build architecture restricts capabilities to i386 and i386-user32 mode for the 32-bit firmware variant.\n(c) Determined EfiBoot version restricts architecture choice:\n• 10.4-10.5 — i386 or i386-user32\n• 10.6-10.7 — i386, i386-user32, or x86_64\n• 10.8 or newer — x86_64\n(d) If KernelArch is set to Auto and SSSE3 is not supported by the CPU, capabilities are restricted to i386-user32 if supported by EfiBoot.\n(e) Board identifier (from SMBIOS) based on EfiBoot version disables x86_64 support on an unsupported model if any i386 variant is supported. Auto is not consulted here as the list is not overridable in EfiBoot.\n(f) KernelArch restricts the support to the explicitly specified architecture (when not set to Auto) if the architecture remains present in the capabilities.\n(g) The best supported architecture is chosen in this order: x86_64, i386, i386-user32.\nUnlike macOS 10.7, where select boards identifiers are treated as the i386 only machines, and macOS 10.5 or earlier, where x86_64 is not supported by the macOS kernel, macOS 10.6 is very special. The architecture choice on macOS 10.6 depends on many factors including not only the board identifier, but also macOS product type (client vs server), macOS point release, and RAM amount. The detection of them all is complicated and not practical, because several point releases had genuine bugs and failed to properly perform the server detection in the first place. For this reason OpenCore on macOS 10.6 will fallback to x86_64 architecture whenever it is supported by the board at all, just like on macOS 10.7. As a reference here is the 64-bit Mac model compatibility corresponding to actual EfiBoot behaviour on macOS 10.6.8 and 10.7.5.\n\nNote: 3+2 and 6+4 hotkeys to choose the preferred architecture are unsupported due to being handled by EfiBoot and thus being hard to properly detect."; ObjectID = "zDQ-MU-J9A"; */
"zDQ-MU-J9A.ibShadowedToolTip" = "Type: plist string\nFailsafe: Auto\nDescription: Prefer specified kernel architecture (Auto, i386, i386-user32, x86_64) when available.\n\nOn macOS 10.7 and earlier XNU kernel can boot with architectures different from the usual x86_64. This setting will use the specified architecture to boot macOS when it is supported by the macOS and the configuration:\n• Auto — Choose the preferred architecture automatically.\n• i386 — Use i386 (32-bit) kernel when available.\n• i386-user32 — Use i386 (32-bit) kernel when available and force the use of 32-bit userspace on 64-bit\ncapable processors. On macOS 64-bit capable processors are assumed to support SSSE3. This is not the case for older 64-bit capable Pentium processors, which cause some applications to crash on macOS 10.6.\nThe behaviour corresponds to -legacy kernel boot argument.\n• x86_64 — Use x86_64 (64-bit) kernel when available.\n\nBelow is the algorithm determining the kernel architecture.\n(a) arch argument in image arguments (e.g. when launched via UEFI Shell) or in boot-args variable overrides any compatibility checks and forces the specified architecture, completing this algorithm.\n(b) OpenCore build architecture restricts capabilities to i386 and i386-user32 mode for the 32-bit firmware variant.\n(c) Determined EfiBoot version restricts architecture choice:\n• 10.4-10.5 — i386 or i386-user32\n• 10.6-10.7 — i386, i386-user32, or x86_64\n• 10.8 or newer — x86_64\n(d) If KernelArch is set to Auto and SSSE3 is not supported by the CPU, capabilities are restricted to i386-user32 if supported by EfiBoot.\n(e) Board identifier (from SMBIOS) based on EfiBoot version disables x86_64 support on an unsupported model if any i386 variant is supported. Auto is not consulted here as the list is not overridable in EfiBoot.\n(f) KernelArch restricts the support to the explicitly specified architecture (when not set to Auto) if the architecture remains present in the capabilities.\n(g) The best supported architecture is chosen in this order: x86_64, i386, i386-user32.\nUnlike macOS 10.7, where select boards identifiers are treated as the i386 only machines, and macOS 10.5 or earlier, where x86_64 is not supported by the macOS kernel, macOS 10.6 is very special. The architecture choice on macOS 10.6 depends on many factors including not only the board identifier, but also macOS product type (client vs server), macOS point release, and RAM amount. The detection of them all is complicated and not practical, because several point releases had genuine bugs and failed to properly perform the server detection in the first place. For this reason OpenCore on macOS 10.6 will fallback to x86_64 architecture whenever it is supported by the board at all, just like on macOS 10.7. As a reference here is the 64-bit Mac model compatibility corresponding to actual EfiBoot behaviour on macOS 10.6.8 and 10.7.5.\n\nNote: 3+2 and 6+4 hotkeys to choose the preferred architecture are unsupported due to being handled by EfiBoot and thus being hard to properly detect.";
