Compare commits

...

362 Commits
0.4.8 ... 0.5.3

Author SHA1 Message Date
Mykola Grymalyuk
66e1cbcf1e build: Re-enable AuxKC patch 2022-12-16 21:35:26 -07:00
Mykola Grymalyuk
e1568d9391 build: Temporarily revert AuxKC patch
Current implementation has a reboot bug
2022-12-16 21:12:47 -07:00
Mykola Grymalyuk
89069a85f0 config: Adjust min kernel 2022-12-16 19:47:39 -07:00
Mykola Grymalyuk
5b2917cb03 build: Expand VMM fix for other model 2022-12-16 19:28:23 -07:00
Mykola Grymalyuk
73afdc37c3 os_probe: Add RSR handling 2022-12-16 19:06:07 -07:00
Mykola Grymalyuk
f71fcf6f58 build: Implement KDKlessWorkaround 2022-12-16 18:18:15 -07:00
Mykola Grymalyuk
6169d593c5 build: Ensure vars are properly deleted 2022-12-16 10:07:57 -07:00
Mykola Grymalyuk
f463e505d4 Sync binaries 2022-12-16 09:33:37 -07:00
Mykola Grymalyuk
6c6ae6145d kdk_handler: Fix fallback logic 2022-12-15 20:41:08 -07:00
Mykola Grymalyuk
90310fcaca build: Fix Content Caching argument 2022-12-15 19:57:08 -07:00
Mykola Grymalyuk
27d1ee3b02 build: Set HibernateSkipsPicker 2022-12-14 19:05:47 -07:00
Mykola Grymalyuk
2fba826f80 Sync binaries 2022-12-14 19:04:29 -07:00
Mykola Grymalyuk
1f63dffd3f SIP: Move to py_sip_xnu module 2022-12-12 10:26:40 -07:00
Mykola Grymalyuk
f4f4f3e1f3 sys_patch_auto: Fix KeyError 2022-12-11 22:53:05 -07:00
Mykola Grymalyuk
4ffe6bed9b build: Remove Force Web Drivers 2022-12-11 17:28:37 -07:00
Mykola Grymalyuk
d3878e34a2 build: Only set beta arg with AppleALC usage 2022-12-11 17:01:37 -07:00
Mykola Grymalyuk
501b228b6b Update README with hardware donation credits 2022-12-10 10:01:52 -07:00
Mykola Grymalyuk
c707047530 build: Revert AppleALC update 2022-12-10 09:52:41 -07:00
Mykola Grymalyuk
1c24cfee24 Remove OSBundleRequired in AICPUPM
Resolves Safe Mode panic
2022-12-03 18:02:43 -07:00
Mykola Grymalyuk
ebd605d459 Docs: Adjust Vega comment 2022-12-01 09:20:59 -07:00
Mykola Grymalyuk
f4cb0bed68 build: Add FixPCIeLinkRate.efi 2022-12-01 08:02:46 -07:00
Mykola Grymalyuk
0a395b47ae Increment Build 2022-11-25 08:56:27 -07:00
Mykola Grymalyuk
1627f264a2 gui_main.py: Revert app mover
Further testing required
2022-11-21 08:22:40 -07:00
Mykola Grymalyuk
23c0759d7a GUI: Replace app after checking updates 2022-11-20 18:13:19 -07:00
Mykola Grymalyuk
26154d4fdf gui_main: Check updates when not relocating 2022-11-20 17:06:28 -07:00
Mykola Grymalyuk
c99805bee5 gui_main: Move OCLP app to Support folder 2022-11-20 16:36:57 -07:00
Mykola Grymalyuk
d284dc6248 sys_patch_auto: Clean up class 2022-11-20 16:29:10 -07:00
Mykola Grymalyuk
70402af1d7 Sync binaries 2022-11-19 12:09:40 -07:00
Mykola Grymalyuk
b94a1bf9cf Merge pull request #1018 from dortania/skip-hibernation
build: Skip OC Picker on Hibernation Wake
2022-11-18 15:22:10 -07:00
Mykola Grymalyuk
a0a740de4f build: Avoid writing ShowPicker when unneeded 2022-11-17 19:45:42 -07:00
Mykola Grymalyuk
8876823ae8 Sync ocvalidate 2022-11-17 15:24:03 -07:00
Mykola Grymalyuk
94b91b2918 build: Fix Picker configuration 2022-11-17 15:18:56 -07:00
Mykola Grymalyuk
1bdc3ef5ff build: Skip OC Picker on Hibernation Wake 2022-11-17 14:36:09 -07:00
Mykola Grymalyuk
be7b0e6492 Merge pull request #1017 from ParaDoX1994/main
Add Ventura section to Universal Control guide
2022-11-17 14:15:08 -07:00
neon ball
30e2a4471c Add Ventura UC related images 2022-11-17 23:06:44 +02:00
neon ball
41188edf39 Add Ventura section to Universal Control guide 2022-11-17 23:06:08 +02:00
Mykola Grymalyuk
9296350e58 kdk_handler.py: Adjust to new repository 2022-11-17 10:21:38 -07:00
Mykola Grymalyuk
f06d7f2179 kdk_handler.py: Download KDKs from mirror
Reference: https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1016
2022-11-16 16:26:10 -07:00
Mykola Grymalyuk
d5d2a7fbfe Update README 2022-11-16 16:25:42 -07:00
Mykola Grymalyuk
a672183880 build: Add AMD GOP injection 2022-11-13 20:38:49 -07:00
Mykola Grymalyuk
9b7074bde5 Merge pull request #1015 from dortania/refactor-build
Modularize build library
2022-11-13 20:28:08 -07:00
Mykola Grymalyuk
7543606a1e Nest sys_patch libraries 2022-11-13 19:25:55 -07:00
Mykola Grymalyuk
48de65dd30 graphics_audio: avoid excessive try except usage 2022-11-13 19:12:49 -07:00
Mykola Grymalyuk
e7e2b0dcad graphics_audio.py: Refactor 2022-11-13 18:55:35 -07:00
Mykola Grymalyuk
8b43727b0b Add header to restructured build family files 2022-11-13 18:33:52 -07:00
Mykola Grymalyuk
9c28d77826 build: Adjust save handling 2022-11-13 17:38:39 -07:00
Mykola Grymalyuk
93c1983a3f support.py: Refactor 2022-11-13 17:25:57 -07:00
Mykola Grymalyuk
7fcef65837 storage.py: Refactor 2022-11-13 17:15:11 -07:00
Mykola Grymalyuk
93a1d0fb11 smbios.py: Drop HW_BID rerouting 2022-11-13 17:08:22 -07:00
Mykola Grymalyuk
94b33f6029 firmware.py: Refactor 2022-11-13 16:56:56 -07:00
Mykola Grymalyuk
1d2a7e080b bluetooth.py: Refactor 2022-11-13 16:31:08 -07:00
Mykola Grymalyuk
b448a4b6dd wireless.py: Refactor 2022-11-13 16:21:46 -07:00
Mykola Grymalyuk
235a9985f4 wired.py: Refactor 2022-11-13 15:59:23 -07:00
Mykola Grymalyuk
34aa75422a Merge branch 'main' into refactor-build 2022-11-13 15:35:25 -07:00
Mykola Grymalyuk
3a56f13480 gui: publish version in UI header 2022-11-13 15:35:00 -07:00
Mykola Grymalyuk
50d730b45a build: fix invocation 2022-11-13 15:25:56 -07:00
Mykola Grymalyuk
2e5a61b7fd Adjust function levels 2022-11-13 09:45:36 -07:00
Mykola Grymalyuk
7c43cf0901 Remove unused imports 2022-11-12 20:18:37 -07:00
Mykola Grymalyuk
956d0cffcc Further modularize 2022-11-12 20:15:43 -07:00
Mykola Grymalyuk
f8e91feff4 build: Enable Audio and fix invocation 2022-11-12 17:29:37 -07:00
Mykola Grymalyuk
55061bc86d build.py: Use pythonic class name 2022-11-12 17:14:39 -07:00
Mykola Grymalyuk
21c40277bb Modularize build.py 2022-11-12 17:10:40 -07:00
Mykola Grymalyuk
4b05b12a0a sys_patch_dict: Remove unneeded process
Was previously in-place for early Monterey betas, no longer required since AppleGVA was resolved
2022-11-08 09:35:10 -07:00
Mykola Grymalyuk
168930919e Merge pull request #1014 from dortania/news-widget
Remove unsupported News Widget on Ivy bridge and Haswell iGPUs
2022-11-07 21:27:48 -07:00
Mykola Grymalyuk
423a6bc255 sys_patch_helpers: Print as ASCII 2022-11-07 20:49:48 -07:00
Mykola Grymalyuk
d8f9c60f0c sys_patch: Remove News Widget programatically 2022-11-07 18:37:35 -07:00
Mykola Grymalyuk
0ef84c1751 Sync binaries 2022-11-07 10:12:51 -07:00
Mykola Grymalyuk
286df94c87 Merge pull request #1013 from dortania/disable-mediad
Work-around mediaanalysisd crashing
2022-11-06 08:23:42 -07:00
Mykola Grymalyuk
ca11b2741e Sybc binaries 2022-11-05 21:33:21 -06:00
Mykola Grymalyuk
ed9f9a05b5 build.py: Set arch logic 2022-11-04 14:48:29 -06:00
Mykola Grymalyuk
82b4cc26d5 Sync binaries 2022-11-04 09:27:05 -06:00
Mykola Grymalyuk
003a40a039 Sync binary 2022-11-03 19:19:47 -06:00
Mykola Grymalyuk
a1cc9a399a Adjust EFIDisabler 2022-11-03 15:40:26 -06:00
Mykola Grymalyuk
1659f8c25e Test new RestrictEvents build 2022-11-03 15:24:14 -06:00
Mykola Grymalyuk
8c23ea137b Revert "Work-around Ivy/Haswell idle KP"
This reverts commit 4dc14eb9c0.
2022-11-02 21:30:32 -06:00
Mykola Grymalyuk
4dc14eb9c0 Work-around Ivy/Haswell idle KP 2022-11-02 20:19:41 -06:00
Mykola Grymalyuk
2ea3933720 build.py: Ensure Model/Board ID are set on MacPro6,1 2022-11-02 18:26:06 -06:00
Mykola Grymalyuk
ff5139463e gui_main.py: Fix typo 2022-11-02 13:56:04 -06:00
Mykola Grymalyuk
b0d4dd158f sys_patch.py: Add additional error handling for LE 2022-10-31 07:34:50 -06:00
Mykola Grymalyuk
71439916b6 Merge pull request #1012 from ParaDoX1994/main
Add Ventura warning to Universal Control docs
2022-10-31 07:32:51 -06:00
Mykola Grymalyuk
66a9be5be4 sys_patch.py: Add support for AMD Polaris 2022-10-30 18:26:56 -06:00
Mykola Grymalyuk
55478fd81c Sync FeatureUnlock
With this new build, lowering FeatureUnlock settings on older machines is no longer needed
2022-10-30 16:43:25 -06:00
Mykola Grymalyuk
d2d68fd08f sys_patch.py: Ensure path is empty when moving 2022-10-30 14:02:26 -06:00
Mykola Grymalyuk
2ea982b343 Increment binaries 2022-10-30 14:01:46 -06:00
neon ball
9741ef794e Fix typo and edit slightly 2022-10-30 04:24:53 +02:00
neon ball
eb9531f768 Change warning
Change warning to warn about native models setting and Ventura.
2022-10-30 04:18:15 +02:00
neon ball
45e0d5b155 Small line change 2022-10-30 01:11:11 +03:00
neon ball
47fe853334 Add Ventura warning to UC 2022-10-30 01:01:46 +03:00
Mykola Grymalyuk
cd5ff61138 gui_main: Only prompt updates once per launch 2022-10-29 07:49:27 -06:00
Mykola Grymalyuk
59b473a4ce build.py: Add MBP121 as Force Touch capable model 2022-10-29 07:43:47 -06:00
Mykola Grymalyuk
5a67212bdc Increment build 2022-10-27 09:21:44 -06:00
Mykola Grymalyuk
f0991d2cd0 Sync documentation 2022-10-27 09:21:20 -06:00
Mykola Grymalyuk
72464f3d54 build.py: Add early MacPro6,1 support 2022-10-26 21:17:51 -06:00
Mykola Grymalyuk
406072cbe1 sys_patch: Relocate old kexts instead of nuke 2022-10-26 18:35:46 -06:00
Mykola Grymalyuk
91cb6e4ecf build.py: Add Timeout customization 2022-10-26 17:22:27 -06:00
Mykola Grymalyuk
604fb7e28f sys_patch.py: Handle migrated kexts from old installs 2022-10-26 14:50:04 -06:00
Mykola Grymalyuk
db015ad79c kdk_handler: Lax n-1 logic 2022-10-26 09:31:07 -06:00
Mykola Grymalyuk
2db8cb3a85 install.py: Avoid drive icon confusion with OCLP 2022-10-26 06:56:33 -06:00
Mykola Grymalyuk
4d7f7b9c28 build.py: Fix TS0128F support 2022-10-25 20:32:53 -06:00
Mykola Grymalyuk
5d24b4ca1e Increment build 2022-10-25 10:37:12 -06:00
Mykola Grymalyuk
1d11340051 Merge pull request #1011 from dortania/pullrequests/ParaDoX1994/ventura-docs
Add Ventura documentation - ParaDoX1994 PR
2022-10-25 10:00:25 -06:00
Mykola Grymalyuk
0e270ea473 build.py: Set BUF0 patch to UEFI 1.2 Macs only 2022-10-24 22:53:45 -06:00
Mykola Grymalyuk
0cbfe142be build.py: Disable non-functional UHCI/OHCI drivers 2022-10-24 09:46:24 -06:00
Mykola Grymalyuk
3d04d3d361 Docs: Adjust SIP info 2022-10-24 09:44:04 -06:00
Mykola Grymalyuk
30b163437a Update Post Install info 2022-10-24 09:31:55 -06:00
Mykola Grymalyuk
223e784722 Docs: Update model page 2022-10-24 09:05:32 -06:00
Mykola Grymalyuk
c868aba3d7 constants.py: Sync version 2022-10-23 21:49:15 -06:00
Mykola Grymalyuk
97c9e5b87c Sync CryptexFixup 2022-10-23 20:08:28 -06:00
Mykola Grymalyuk
e8af0a8387 Remove old info 2022-10-23 20:07:53 -06:00
Mykola Grymalyuk
078ec4459c build: Fix Xserve typo
Thanks @jazzzny
2022-10-23 17:31:42 -06:00
neon ball
fb3cc893c5 Merge branch 'dortania:main' into ventura-docs 2022-10-24 01:50:32 +03:00
Mykola Grymalyuk
ebaa1f8176 sys_patch_detect: Add MBP13,3 to GCN patchset
Ensure older framebuffer is correctly used

Credit to @OnesuchDev for original finding
2022-10-22 16:41:33 -06:00
neon ball
c9adbf2b0a Fix typo 2022-10-21 07:36:17 +03:00
neon ball
8b2b6b157c Change wording 2022-10-21 07:33:35 +03:00
neon ball
c4b25f5585 Change stuff 2022-10-21 07:27:42 +03:00
neon ball
296edc19d5 Add MacPro3,1 ethernet note 2022-10-21 07:26:32 +03:00
neon ball
3e2762c798 Merge branch 'dortania:main' into ventura-docs 2022-10-21 07:23:38 +03:00
Mykola Grymalyuk
20b5a55e6d utilities: Drop Nightly validation
Nightly returns 404 regardless of support, we’ll validate the download further along
2022-10-19 09:20:47 -06:00
Mykola Grymalyuk
63c7f6874e Merge pull request #999 from dortania/ventura-alpha
Implement beta Ventura support
2022-10-18 22:21:12 -06:00
Mykola Grymalyuk
094c7ab1d0 kdk_handler: Fix corruption detection 2022-10-18 19:12:54 -06:00
Mykola Grymalyuk
8a43312dcf gui_main: Fix reboot prompt logic 2022-10-18 17:42:54 -06:00
Mykola Grymalyuk
7f62e5918f sys_patch_detect: Use proper term for AMFI warning
Use Library Validation if host is a Mac and doesn’t require AMFI to be completely off
2022-10-18 14:21:14 -06:00
Mykola Grymalyuk
f3918370d0 build: Ensure pikera installed on upgraded iMacs 2022-10-18 14:05:46 -06:00
Mykola Grymalyuk
e38dc48167 kdk_handler: Delete old on downloads only 2022-10-18 07:11:22 -06:00
Mykola Grymalyuk
953d9ec833 Constants: Remove unsupported arg 2022-10-18 06:35:13 -06:00
Mykola Grymalyuk
bb18cdfe44 Sync binaries 2022-10-17 14:54:14 -06:00
Mykola Grymalyuk
2a89a887a3 Add backend option to force output support 2022-10-17 08:58:25 -06:00
Mykola Grymalyuk
7ef7d851c0 Re-export OpenCanopy Icons
Resolve icons not rendering on Haswell and newer Macs
2022-10-16 21:25:03 -06:00
neon ball
19c8c96242 Fix link description 2022-10-17 03:35:55 +03:00
neon ball
dac2315227 Fix link 2022-10-17 03:35:21 +03:00
neon ball
6fd10235c5 Updates 2022-10-17 03:34:40 +03:00
neon ball
ef12c3d09e Update information 2022-10-17 03:24:30 +03:00
Mykola Grymalyuk
9484f18994 Sync changelog 2022-10-16 15:33:41 -06:00
Mykola Grymalyuk
1a262c6acf sys_patch: Drop Metal downgrade for AMD Legacy GCN 2022-10-16 15:29:07 -06:00
Mykola Grymalyuk
f45559a457 kdk_handler: Ensure argument is not empty 2022-10-14 08:05:05 -06:00
Mykola Grymalyuk
7e6f418d23 installer.py: List Beta builds if no release variants available 2022-10-12 21:47:33 -06:00
Mykola Grymalyuk
56e5602394 gui_main.py: Rework Ventura IA prompt 2022-10-12 21:26:35 -06:00
Mykola Grymalyuk
de1107d773 defaults.py: Sync AMFI logic 2022-10-12 20:16:00 -06:00
Mykola Grymalyuk
23bd207774 sys_patch: Drop Metal downgrade on Kepler 2022-10-12 20:11:53 -06:00
Mykola Grymalyuk
2145dd835b SMBIOS: Sync data for Ventura 2022-10-11 11:03:58 -06:00
Mykola Grymalyuk
ec23bc9d53 sys_patch_dict: Remove old GVA work-around 2022-10-11 09:53:49 -06:00
Mykola Grymalyuk
94971fbb76 sys_patch_dict: Remove unneeded OS checks 2022-10-11 09:41:31 -06:00
Mykola Grymalyuk
fbb5558aef sys_patch_helpers: Remove dumplicate checksum check 2022-10-07 18:19:08 -06:00
Mykola Grymalyuk
25952ff9d8 kdk_handler: Verify checksum after downloading 2022-10-07 18:18:24 -06:00
Mykola Grymalyuk
5ee8b16353 Sync binaries 2022-10-07 17:55:45 -06:00
Mykola Grymalyuk
3e54e8ad7e build.py: Adjust AICPUPM comments 2022-10-07 07:12:56 -06:00
neon ball
78e8e9ae33 Remove mention about PM 2022-10-07 15:58:33 +03:00
neon ball
bc7e4b369a Another small update 2022-10-07 15:38:23 +03:00
neon ball
f141b57113 Small update 2022-10-07 15:35:19 +03:00
neon ball
543374a922 Update wording 2022-10-07 15:30:41 +03:00
neon ball
88ceda1c82 Update 2022-10-07 15:18:12 +03:00
neon ball
d5674b342b Update wording 2022-10-07 15:15:49 +03:00
neon ball
d7ec9d7083 Switch issue link 2022-10-07 13:28:23 +03:00
Mykola Grymalyuk
964697a2c1 build.py: Fix PM on Ivy Bridge and older 2022-10-06 21:49:20 -06:00
Mykola Grymalyuk
5a2afa4fa7 sys_patch_dict: Fix OpenCL on non-AVX2 legacy GCN 2022-10-06 19:44:11 -06:00
Mykola Grymalyuk
5aa7ab3b0f example_data: Add Macmini5,2 2022-10-06 19:32:37 -06:00
Mykola Grymalyuk
dca7959052 example_data: Add more units 2022-10-06 13:48:04 -06:00
Mykola Grymalyuk
8d1fc8ca47 device_probe: Fix leafs formatting 2022-10-06 12:30:33 -06:00
neon ball
2bd4097b0c Change order 2022-10-06 21:14:58 +03:00
neon ball
d369a62365 Add pull request link 2022-10-06 21:01:28 +03:00
neon ball
0d4f40cad2 Slight changes 2022-10-06 20:51:09 +03:00
neon ball
0acb6db744 Slight edits 2022-10-06 20:47:44 +03:00
Mykola Grymalyuk
fe356dd843 kdk_handler: Delete corrupted KDKs when found 2022-10-06 11:07:54 -06:00
neon ball
ce6fca3485 Switch sidebar ordering 2022-10-06 20:05:02 +03:00
neon ball
58af2fe8c9 Add files via upload 2022-10-06 19:30:37 +03:00
neon ball
0c57948fa9 Ventura-sidebar 2022-10-06 19:09:28 +03:00
neon ball
2ebf75b2e1 Ventura-drop 2022-10-06 19:08:49 +03:00
neon ball
d108c234c6 Ventura banner 2022-10-06 19:07:48 +03:00
Mykola Grymalyuk
d0c0f41eb6 sys_patch_helpers: Fix index error on .DS_Store files
Thanks @hvds
2022-10-05 08:46:26 -06:00
Mykola Grymalyuk
e919368cd3 sys_patch_helpers: Check KDK.dmg checksum before installing 2022-10-05 08:43:11 -06:00
Mykola Grymalyuk
de46cb79c9 retoute_payloads: Allow multiple instances 2022-10-05 08:42:41 -06:00
Mykola Grymalyuk
12a71c8cbb sys_patch.py: Adjust indentation 2022-10-04 22:11:17 -06:00
Mykola Grymalyuk
00a04c8fce kdk_handler: Adjust print message 2022-10-04 20:20:50 -06:00
Mykola Grymalyuk
f2bedca734 sys_patch.py: Move kdk check higher 2022-10-04 20:08:47 -06:00
Mykola Grymalyuk
bf317e7bea sys_patch: Adjust legacy KDK handling 2022-10-04 20:04:12 -06:00
Mykola Grymalyuk
fde8dc001e sys_patch_helpers: Fix Host detection 2022-10-04 19:47:52 -06:00
Mykola Grymalyuk
79c833a6cc sys_patch: Allow updating installed KDK to root
If installed Beta 8 KDK on Beta 9, can later root patch with Beta 9 KDK available onto root
2022-10-04 19:31:26 -06:00
Mykola Grymalyuk
5ef2f59d7c kdk_handler: Remove redundant sudo invocation 2022-10-04 18:18:08 -06:00
Mykola Grymalyuk
e82c76fedf build.py: Remove unused plugins, validate unused Tools/Drivers 2022-10-04 18:14:46 -06:00
Mykola Grymalyuk
9175c950f8 kdk_handler: Delete unused KDKs after supported is found 2022-10-04 18:13:52 -06:00
Mykola Grymalyuk
85ca3e2d27 sys_patch: Switch to rsync for KDK merging
When using N-1 system, ditto will sometimes refuse to sync when the source is older than the destination
2022-10-04 17:18:48 -06:00
Dhinak G
ca5771b1c9 kdk_handler: Fix parsing of legacy macOS versions 2022-10-04 15:26:09 -04:00
Dhinak G
67c9c4633b kdk_handler: Fix some parsing and logic bugs 2022-10-04 15:21:32 -04:00
Mykola Grymalyuk
1be56542b1 kdk_handler: Fix argument 2022-10-04 12:46:00 -06:00
Mykola Grymalyuk
2e74debefa Increment Binaries 2022-10-04 11:11:36 -06:00
Mykola Grymalyuk
3e25b74ee8 Increment CryptexFixup to release 2022-10-04 10:21:57 -06:00
Mykola Grymalyuk
ab9c93a1da sys_patch_helpers: Write KDK used to patchset plist 2022-10-04 09:53:14 -06:00
Mykola Grymalyuk
faf717dedf utilities.py: Add error handling in check_boot_mode() 2022-10-04 09:47:44 -06:00
Dhinak G
d6daa2f06d Build: update requirements.txt 2022-10-03 18:29:06 -04:00
Dhinak G
4bebe208bc kdk_handler: Clean up unused variables 2022-10-03 16:08:44 -04:00
Dhinak G
fa352fbc0c kdk_handler: Enumerate KDKs from Apple developer portal 2022-10-03 16:00:23 -04:00
Mykola Grymalyuk
41ebf7ce32 sys_patch: Fix typos
Thanks @perez987
2022-10-02 12:15:07 -06:00
Mykola Grymalyuk
3a90cfa3b9 sys_patch_dict: Add GPUSupport patch to Kepler 2022-10-02 11:17:59 -06:00
Mykola Grymalyuk
f60af0446e kdk_handler.py: Adjust logic 2022-10-01 16:22:30 -06:00
Mykola Grymalyuk
e27ca8d160 kdk_handler: Fix accidental tuple return 2022-10-01 16:04:48 -06:00
Mykola Grymalyuk
2c40e9b0a1 sys_patch: Improve N-1 KDK handling 2022-10-01 13:46:19 -06:00
Mykola Grymalyuk
5c43592c46 utilities.py: Verify host space before downloading 2022-10-01 13:00:21 -06:00
Mykola Grymalyuk
9c18b15153 kdk_handler: Verify path before iterating over 2022-09-30 11:18:11 -06:00
Mykola Grymalyuk
7e006e8722 Sync Changelog 2022-09-30 08:36:58 -06:00
Mykola Grymalyuk
012f54c1e1 kdk_handler: Remove unused import 2022-09-30 06:47:18 -06:00
Mykola Grymalyuk
3a2ac7a310 kdk_handler: Add KDK downloader for Ventura 2022-09-30 06:44:34 -06:00
Mykola Grymalyuk
dd7470af98 main.py: Publish OS Version 2022-09-29 21:23:57 -06:00
Mykola Grymalyuk
da86344269 defaults: Skip disabled GPUs 2022-09-28 15:47:51 -06:00
Mykola Grymalyuk
9b1dae312d defaults.py: Fix Vega/Navi logic 2022-09-28 13:26:25 -06:00
Mykola Grymalyuk
bdfd043250 device_probe: Publish Rosetta detection 2022-09-28 12:52:17 -06:00
Mykola Grymalyuk
251bd48920 defaults.py: Refactor Probe Logic 2022-09-28 12:21:24 -06:00
Mykola Grymalyuk
910ab09dbd gui_main.py: Add LV and AMFI patch configuration 2022-09-27 18:53:30 -06:00
Mykola Grymalyuk
fdfe588566 defaults: Disable AMFI on non-Metal 2022-09-27 18:53:07 -06:00
Mykola Grymalyuk
f1af0e1a87 defaults: Disable AMFI on Polaris lacking AVX2.0 2022-09-27 18:38:56 -06:00
Mykola Grymalyuk
1aff7854e0 gui_main: Avoid float usage on wxPoint 2022-09-27 14:28:30 -06:00
Mykola Grymalyuk
20e08d4dff symbios_data.py: Fix GPU data set 2022-09-27 11:50:32 -06:00
Mykola Grymalyuk
162d5e76ee sys_patch_auto: Add error handing for LA pathing
Some users manage to nuke this directory
2022-09-27 10:49:19 -06:00
Mykola Grymalyuk
3d63cb1654 sys_patch_detect: Add Polaris support for pre-AVX2.0 2022-09-27 08:45:37 -06:00
Mykola Grymalyuk
8cc87980d1 device_probe: Add leaf feature detection 2022-09-27 08:43:38 -06:00
Mykola Grymalyuk
1d821b993b build.py: Drop manual Root Hash Patching 2022-09-27 07:20:05 -06:00
Dhinak G
407ed9c4cd Add support for KDK downloads 2022-09-25 00:54:01 -04:00
Mykola Grymalyuk
653692f898 Implement Automatic Rosetta Cryptex installation
Drops need for manual OS.dmg swapping on pre-Haswell
2022-09-24 22:22:34 -06:00
Dhinak G
4ef2c00b45 Merge branch 'main' into ventura-alpha 2022-09-24 20:36:47 -04:00
Dhinak G
d7c66346cb Default catalog to Public 2022-09-24 20:35:44 -04:00
Dhinak G
9dcd42d328 Merge branch 'main' into ventura-alpha 2022-09-24 20:33:04 -04:00
Dhinak G
52f1504f3e Use global shared session 2022-09-24 20:32:57 -04:00
Mykola Grymalyuk
92ff4244ae build.py: Add AVXpel-based NoAVX kext
Resolves Zlib-based instability in Ventura on pre-Sandy Bridge Macs

Credit to @educovas for developing
2022-09-21 18:45:29 -06:00
Mykola Grymalyuk
daf28a62ef AutoPatcher: Add AssociatedBundleIdentifiers 2022-09-21 14:04:59 -06:00
Mykola Grymalyuk
8de92f9f6e AutoPkg: Add warnings to manual invocation 2022-09-20 17:47:40 -06:00
Mykola Grymalyuk
0895fc8415 gui_main.py: Remove Sys Pref prompt for Ventura 2022-09-20 17:01:24 -06:00
Mykola Grymalyuk
3a641d451d Merge branch 'main' into ventura-alpha 2022-09-20 09:36:58 -06:00
Mykola Grymalyuk
d0364d8c91 build.py: Ensure boot-arg is installed for BCM2046/2070 chipsets 2022-09-19 21:07:56 -06:00
Mykola Grymalyuk
46dfbbcfd0 CHANGELOG: Reword Nvidia patch 2022-09-19 10:28:48 -06:00
Mykola Grymalyuk
890be074cb Merge branch 'main' into ventura-alpha 2022-09-19 10:23:21 -06:00
Mykola Grymalyuk
715d8af497 Increment Build 2022-09-19 10:21:19 -06:00
Mykola Grymalyuk
6cec3d0d8c Sync PatcherSupportPkg 2022-09-18 19:03:58 -06:00
Mykola Grymalyuk
71b80a4e50 sys_patch_detect.py: Ensure Monterey patches install before Big Sur
Broadwell and older iGPUs need libCLVMIGILPlugin.dylib downgraded to Monterey, however Ivy Bridge needs the binary downgraded to Big Sur's
2022-09-16 17:50:24 -06:00
Mykola Grymalyuk
c7e8d6ef01 Update CHANGELOG.md 2022-09-15 22:11:39 -06:00
Mykola Grymalyuk
a58f2d060a sys_patch_dict: Rework OpenCL patch set 2022-09-15 21:51:01 -06:00
Mykola Grymalyuk
f631f54475 Merge branch 'main' into ventura-alpha 2022-09-15 21:26:47 -06:00
Mykola Grymalyuk
101f1197bc sys_patch_dict: Fix Safari 16 support for macOS Monterey 2022-09-15 21:18:00 -06:00
Mykola Grymalyuk
0693e345d0 defaults: Add proper AMFI vs LV logic 2022-09-14 18:21:21 -06:00
Mykola Grymalyuk
bf9d6f678e sys_patch: Add Reworked AuxKC logic 2022-09-14 14:58:03 -06:00
Mykola Grymalyuk
b3bc920ce6 amfi_detect.py: Update comment 2022-09-14 12:48:05 -06:00
Mykola Grymalyuk
012a629100 sys_patch_detect: Revise AMFI logic
Currently the AMFI level requirement will be determined by the GPU needed.
- Intel iGPUs: Only Library Validation patch (`_cs_require_lv`)
- Nvidia Kepler and GCN: Full AMFI needs to be disabled (`amfi=0x80`)

If you have a mixed GPU system, the highest patch requirement will be chosen (ie. `amfi=0x80` on iMac15,1)
2022-09-14 07:57:41 -06:00
Mykola Grymalyuk
7fc2d478f2 Adjust AMFI logic for Kepler and GCN 2022-09-13 21:34:37 -06:00
Mykola Grymalyuk
616d812913 Drop reliance on amfi_get_out_of_my_way=0x1 2022-09-13 19:51:28 -06:00
Mykola Grymalyuk
839a37f897 Merge branch 'main' into ventura-alpha 2022-09-13 16:24:16 -06:00
Mykola Grymalyuk
5565a3e67e amfi_data.py: Initial commit 2022-09-13 16:24:03 -06:00
Mykola Grymalyuk
a5e002d68b sys_patch_dict: Remove Metal Downgrade for Intel
Determined stock Metal is functional on Intel metal GPUs, XPC downgrade still required for 3802-based GPUs

Resolves Photos support for Intel GPUs

Requires removal of old patches to properly function
2022-09-12 20:37:23 -06:00
Dhinak G
c064269e88 Merge branch 'main' into ventura-alpha 2022-09-08 19:21:45 -04:00
Dhinak G
8322e270db GUI: work around Python 3.10 + wxPython 4.2.0 bug 2022-09-08 19:18:24 -04:00
Mykola Grymalyuk
c21d3d8de8 Constants: Remove unsupported variable 2022-09-08 08:14:47 -06:00
Mykola Grymalyuk
c59f11fea3 sys_patch_dict: Seperate 3802 patch set files
Ensure XPC service is not downgraded
2022-09-07 21:04:22 -06:00
Mykola Grymalyuk
237bb329f2 sys_patch_dict: Work around downgraded IOSurface
Resolves kmutil linking in 13.0 Beta 4 and newer on IOSurface downgraded root patches
2022-09-05 21:23:11 -06:00
Mykola Grymalyuk
c897ca8c34 Update AutoPkgInstaller binary 2022-09-05 21:22:28 -06:00
Mykola Grymalyuk
b8c27c45f8 sys_patch_dict: Remove 3802 patch set on Broadwell
Unused on Broadwell GPUs
2022-09-05 10:24:24 -06:00
Mykola Grymalyuk
23e939ea72 sys_patch.py: Fix auth logic 2022-09-04 21:38:35 -06:00
Mykola Grymalyuk
9da0b24b30 sys_oatch: Fix prompt logic 2022-09-04 11:42:01 -06:00
Mykola Grymalyuk
9758124b2b sys_patch.py: Move AuxKC auth check to dedicated function 2022-09-03 20:56:48 -06:00
Mykola Grymalyuk
df753299fc sys_patch.py: Ensure patch file has updated pathing
When handling KDK-less installs in Ventura, ensure patchset is adjusted to new path when written to disk
2022-09-03 20:36:30 -06:00
Mykola Grymalyuk
955d147638 sys_patch.py: Don’t prompt for auth if kext already approved 2022-09-03 12:21:13 -06:00
Mykola Grymalyuk
4e9428b8e0 sys_patch.py: Add AuxKC cleaning 2022-09-03 12:05:22 -06:00
Mykola Grymalyuk
879901101d Merge branch 'main' into ventura-alpha 2022-09-02 11:15:20 -06:00
Dhinak G
d00e667caf SOURCE.md: Fix another typo in previous 2022-09-02 12:17:36 -04:00
Dhinak G
01b48f4226 SOURCE.md: Fix typo in previous 2022-09-02 12:16:55 -04:00
Mykola Grymalyuk
c5692b91fb main.py: Fix source logic 2022-09-02 10:12:52 -06:00
Mykola Grymalyuk
1dbb673f73 Merge branch 'main' into ventura-alpha 2022-09-02 10:12:20 -06:00
Mykola Grymalyuk
5179a63766 SOURCE: Sync build requirements 2022-09-02 10:12:03 -06:00
Mykola Grymalyuk
3cfc683ecf gui_main: Avoid prompt if patches already installed 2022-09-02 10:08:25 -06:00
Mykola Grymalyuk
3779cfcaf6 sys_patch_dict: Sync Patch Names 2022-09-02 10:07:45 -06:00
Mykola Grymalyuk
dcd581345a sys_patch_helpers: Add Commit URL to patch file 2022-09-02 09:45:08 -06:00
Mykola Grymalyuk
530c0f49b9 sys_patch_helpers: Remove hard coded test 2022-08-27 16:29:55 -06:00
Mykola Grymalyuk
36dc2c55cf Merge branch 'main' into ventura-alpha 2022-08-27 15:53:05 -06:00
Mykola Grymalyuk
e25843c217 Merge pull request #1007 from dortania/ventura-kdk-less
sys_patch: Allow KDK-less root patching on Intel iGPUs and Nvidia Kepler
2022-08-27 13:33:07 -06:00
Mykola Grymalyuk
45654bce16 build.py: Ensure WEG is installed on Mac Pro configs 2022-08-27 13:00:20 -06:00
Mykola Grymalyuk
237b086e17 sys_patch.py: Avoid prompts if kext has already been accepted 2022-08-27 12:57:45 -06:00
Mykola Grymalyuk
b105a73a10 sys_patch: Add KDK-less support
Only Applicable for Kepler and Intel iGPUs at this time
2022-08-27 09:29:38 -06:00
Mykola Grymalyuk
ef0fe3d4be constants: Update BTFX 2022-08-24 16:52:54 -06:00
Mykola Grymalyuk
0c4c4ff378 Update BlueToolFixup 2022-08-24 16:52:23 -06:00
Mykola Grymalyuk
58425de537 Add remaining External Boot Icons 2022-08-24 15:16:50 -06:00
Mykola Grymalyuk
38e573d886 Merge branch 'main' into ventura-alpha 2022-08-24 12:20:25 -06:00
Mykola Grymalyuk
c1ba7cd6cb installer.py: Parse SharedSupport.dmg 2022-08-24 12:19:52 -06:00
Mykola Grymalyuk
9e28241126 Icon: Add Ventura Boot Picker icons 2022-08-24 11:17:13 -06:00
Mykola Grymalyuk
bf6f20b97e sys_patch_detect: Ensure Rosetta systems are not detected
Rosetta will report itself as a GCN 1 based system, which will confuse the root patcher and provide patches on Ventura
2022-08-23 18:39:22 -06:00
Mykola Grymalyuk
66452b8898 sys_patch_detect: Print KDK error for non-GUI enviroments 2022-08-23 18:35:23 -06:00
Mykola Grymalyuk
06d12f9384 defaults.py: ensure AMFI is disabled on Metal 2022-08-23 17:06:23 -06:00
Mykola Grymalyuk
a546aa1d85 build.py: fix SIP variable 2022-08-23 17:03:39 -06:00
Mykola Grymalyuk
6162e73a9f Raise SIP requirement for root patching 2022-08-23 12:27:46 -06:00
Mykola Grymalyuk
763fe04c21 Add Ventura validation 2022-08-23 11:02:57 -06:00
Mykola Grymalyuk
603b5ee153 sys_patch_dict: Add GVA patches for Ventura 2022-08-23 09:58:27 -06:00
Mykola Grymalyuk
c6dc4c28a3 utitilies.py: Add proper AMFI checks for Ventura 2022-08-22 18:14:11 -06:00
Mykola Grymalyuk
662aa77016 sys_patch_detect.py: Add AMFI check 2022-08-22 18:10:57 -06:00
Mykola Grymalyuk
64e5a05eb2 sys_patch_dict: Don’t instal Kepler’s patch in 13.0 2022-08-22 17:01:06 -06:00
Mykola Grymalyuk
4b5d35f5ff Add preliminary Ventura graphics support 2022-08-22 14:18:43 -06:00
Mykola Grymalyuk
27c24e6d47 Increment to release binaries 2022-08-19 16:24:45 -06:00
Mykola Grymalyuk
643e4cf87a Merge branch 'main' into ventura-alpha
# Conflicts:
#	resources/os_probe.py
2022-08-19 15:43:23 -06:00
Mykola Grymalyuk
14528b904c Merge pull request #1005 from ParaDoX1994/main
Remove TUI mention due to deprecation of TUI
2022-08-19 15:40:22 -06:00
Mykola Grymalyuk
2c35b62b53 installer.py: Remove duplicate builds 2022-08-18 21:55:15 -06:00
Mykola Grymalyuk
0cb2ad1b20 Installer: Check space before starting 2022-08-18 17:21:07 -06:00
Mykola Grymalyuk
08525de489 os_probe.py: Remove new line output 2022-08-17 17:59:33 -06:00
Mykola Grymalyuk
0286b8d64a build.py: rework MCE Disabler logic 2022-08-09 09:49:12 -06:00
Mykola Grymalyuk
4bb2b8bc04 gui_main.py: avoid reboot prompt on off-model building 2022-08-09 09:31:13 -06:00
Mykola Grymalyuk
d85fe3a7fb Resync changelog 2022-08-06 10:15:12 -06:00
Mykola Grymalyuk
a22d53e9e8 Merge branch 'main' into ventura-alpha 2022-08-06 10:13:15 -06:00
Mykola Grymalyuk
7e46b7292a Increment build 2022-08-05 23:21:18 -06:00
Mykola Grymalyuk
f0cf0a7dbe sys_patch_dict.py: Limit MTL patch to 12.5 and newer 2022-08-05 22:56:49 -06:00
Mykola Grymalyuk
cd1276251c Resolve Nvidia Kepler for 12.5
Closes https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1004
2022-08-05 22:10:28 -06:00
Mykola Grymalyuk
d3bf065a8b sys_patch_helpers.py: Add closest KDK match 2022-07-31 11:01:48 -06:00
neon ball
8849896ba3 Remove TUI mention due to deprecation of TUI 2022-07-29 18:00:01 +03:00
Mykola Grymalyuk
2e192bac63 Merge branch 'main' into ventura-alpha 2022-07-27 10:37:08 -06:00
Mykola Grymalyuk
ba1ebebc54 smbios_data.py: Sync max OS support
Ref: https://github.com/dortania/OpenCore-Legacy-Patcher/pull/999
2022-07-27 10:34:50 -06:00
Mykola Grymalyuk
6532634ed5 gui_main.py: Rename reload remote IA button 2022-07-27 09:52:33 -06:00
Mykola Grymalyuk
c96dac7cd4 Add missing IOPlatformPlugin files 2022-07-26 19:34:16 -06:00
Mykola Grymalyuk
b58819f815 gui_main.py: Fix formatting 2022-07-26 18:36:34 -06:00
Mykola Grymalyuk
42bc2638cf Merge branch 'main' into ventura-alpha 2022-07-22 14:15:50 -06:00
Mykola Grymalyuk
31428c24a9 gui_main.py: Set value on greyed out option 2022-07-22 12:23:40 -06:00
Mykola Grymalyuk
33dedfef5d Validation: Add additional XNU minor checks 2022-07-21 12:05:21 -06:00
Mykola Grymalyuk
363d6bc26f Increment Build 2022-07-21 12:04:38 -06:00
Mykola Grymalyuk
ab2c714bf1 sys_patch_dict: Fix versioning 2022-07-20 11:27:10 -06:00
Mykola Grymalyuk
943071c2cd sys_patch_dict.py: split Kepler patchset
Ref: https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1004
2022-07-19 12:07:42 -06:00
Mykola Grymalyuk
a52e762c25 updates.py: allow for unrestricted versioning
Previously limited to x.x.x checks
2022-07-17 22:30:37 -06:00
Mykola Grymalyuk
5208ab0f82 Increment build 2022-07-17 18:05:29 -06:00
Mykola Grymalyuk
59ef2d423a Merge branch 'main' into ventura-alpha 2022-07-16 15:08:29 -06:00
Mykola Grymalyuk
e5740dd34e Fix MouSSE 13.0 B3 support
Replace usage of `__PRELINK_TEXT` with `__TEXT_EXEC`

```
Find:    5F 5F 50 52 45 4C 49 4E 4B 5F 54 45 58 54
Replace: 5F 5F 54 45 58 54 5F 45 58 45 43 00 00 00
```
2022-07-07 15:05:56 -06:00
Mykola Grymalyuk
a7cb63530e build.py: Consolidate plist clean up into single loop 2022-07-07 14:24:07 -06:00
Mykola Grymalyuk
15e3ea06f0 build.py: Add config validation 2022-07-07 12:10:48 -06:00
Mykola Grymalyuk
ccd5109d8e Update binaries 2022-07-07 12:08:52 -06:00
Mykola Grymalyuk
895c9e0603 Merge branch 'main' into ventura-alpha 2022-07-05 17:34:39 -06:00
Mykola Grymalyuk
6a99d8418c Merge branch 'main' into ventura-alpha 2022-07-01 22:34:00 -06:00
Mykola Grymalyuk
5cc0fd3638 Merge branch 'main' into ventura-alpha 2022-06-29 11:56:31 -06:00
Mykola Grymalyuk
e5fcb5f157 sys_patch.py: Move Snapshot to dedicated function 2022-06-27 10:38:28 -06:00
Mykola Grymalyuk
ecf04372b4 Update Lilu and FeatureUnlock 2022-06-22 12:46:50 -06:00
Mykola Grymalyuk
7078ca5699 build.py: Fix on-model Ethernet detection 2022-06-21 13:44:31 -06:00
Mykola Grymalyuk
0c2185a882 build.py: Fix ethernet model assumption 2022-06-21 13:15:32 -06:00
Mykola Grymalyuk
ff849100e0 Ethernet: Set IOProbeScore to outmatch DriverKit 2022-06-21 13:08:48 -06:00
Mykola Grymalyuk
e80454af5a build.py: Fix VMM erroring on build 2022-06-21 12:04:48 -06:00
Mykola Grymalyuk
cf76ed4c4f sys_patch_dict.py: Avoid WebKit patch in Ventura 2022-06-21 10:36:01 -06:00
Mykola Grymalyuk
984e0021d6 Merge branch 'main' into ventura-alpha 2022-06-21 10:35:17 -06:00
Mykola Grymalyuk
6e3ceb0937 sys_patch.py: Add comments to kmutil invocation 2022-06-20 14:54:14 -06:00
Mykola Grymalyuk
1130662e7a build.py: Add USB1.1 injection 2022-06-18 15:12:24 -06:00
Mykola Grymalyuk
3d853e0d07 sys_patch.py: Add extra kmutil handling
Since KDKs are installed in Ventura, development KC would be generated by kmutil. For OCLP users, release builds are ideal
2022-06-17 12:37:08 -06:00
Mykola Grymalyuk
1b6a41f478 Merge branch 'main' into ventura-alpha 2022-06-17 12:34:02 -06:00
Mykola Grymalyuk
e5d9894bbf Merge branch 'main' into ventura-alpha 2022-06-15 12:05:00 -06:00
Mykola Grymalyuk
e3ddcb8cf5 sys_patch.py: Fix typo 2022-06-14 22:04:31 -06:00
Mykola Grymalyuk
85572a2889 Misc Ventura fixes 2022-06-14 21:39:21 -06:00
Mykola Grymalyuk
8aa862e8fb sys_patch_helpers.py: Adjust KDK verification 2022-06-14 19:48:06 -06:00
Mykola Grymalyuk
ca4b13e6af sys_patch_helpers.py: Verify KDK is valid during search 2022-06-14 15:42:28 -06:00
Mykola Grymalyuk
d0dbf8e399 sys_patch.py: Add proper KDK handling during root patching 2022-06-14 15:02:01 -06:00
Mykola Grymalyuk
8285be259c Merge branch 'main' into ventura-alpha 2022-06-11 20:22:50 -06:00
Mykola Grymalyuk
fb3dc4636b CHANGELOG: fix typo 2022-06-11 20:07:12 -06:00
Mykola Grymalyuk
03b8b46550 build.py: Allow dyld sharred cache swapping on pre-Haswell 2022-06-11 20:03:55 -06:00
Mykola Grymalyuk
c63bfae574 build.py: fix typo 2022-06-11 12:08:42 -06:00
Mykola Grymalyuk
c8f582f49d Fix VMM patch set for Ventura 2022-06-11 11:49:55 -06:00
Mykola Grymalyuk
05cff05749 Resolve Ethernet support on MacPro3,1-5,1 2022-06-11 11:11:59 -06:00
Mykola Grymalyuk
084c0cc438 build.py: Add Ventura USB map injection 2022-06-11 10:50:18 -06:00
Mykola Grymalyuk
12ebef03db Merge branch 'main' into ventura-alpha 2022-06-11 10:34:58 -06:00
Mykola Grymalyuk
fe945f9d7d Merge branch 'main' into ventura-alpha 2022-06-10 15:36:08 -06:00
Mykola Grymalyuk
ece5a820dd Resolve CI erroring 2022-06-10 15:31:51 -06:00
Mykola Grymalyuk
657b80795f smbios_data.py: Set Max OS 2022-06-10 15:23:27 -06:00
Mykola Grymalyuk
a2b971735a sys_patch_detect.py: Halt on missing KDK 2022-06-10 14:21:56 -06:00
Mykola Grymalyuk
92d2f0ba23 sys_patch_detect.py: Add KDK check to Ventura root patching 2022-06-10 14:17:50 -06:00
Mykola Grymalyuk
9fb2efee8d Fix Top case bundle pathing 2022-06-09 14:37:01 -06:00
Mykola Grymalyuk
24dae1dc45 installer.py: Add Ventura sucatalog 2022-06-09 13:11:45 -06:00
Mykola Grymalyuk
8eafe33d92 Add Ventura models 2022-06-09 12:32:38 -06:00
Mykola Grymalyuk
a60f898e41 Merge branch 'main' into ventura-alpha 2022-06-09 12:13:11 -06:00
Mykola Grymalyuk
88610ff3de sys_patch.py: work-around kmutil linking in Ventura 2022-06-07 11:33:51 -07:00
208 changed files with 28184 additions and 2294 deletions

2
.gitignore vendored
View File

@@ -30,3 +30,5 @@ __pycache__/
/payloads/OpenCore-Legacy-Patcher
/payloads/InstallAssistant.pkg.integrityDataV1
/payloads.dmg
/payloads/OpenCore-Legacy-Patcher-*.plist
/payloads/KDK.dmg

View File

@@ -117,15 +117,20 @@ class create_binary:
"AutoPkg-Assets.pkg",
"AutoPkg-Assets.pkg.zip",
"InstallAssistant.pkg",
"InstallAssistant.pkg.integrityDataV1",
"KDK.dmg",
]
print("- Deleting extra binaries...")
for file in Path("payloads").glob(pattern="*"):
if file.name in delete_files:
if file.name in delete_files or file.name.startswith("OpenCore-Legacy-Patcher"):
print(f" - Deleting {file.name}")
file.unlink()
elif (Path(file) / Path("Contents/Resources/createinstallmedia")).exists():
print(f" - Deleting {file}")
subprocess.run(["rm", "-rf", file])
elif Path(file).is_dir() and file.name == "Universal-Binaries":
print(f" - Deleting {file}")
subprocess.run(["rm", "-rf", file])
def download_resources(self):
patcher_support_pkg_version = constants.Constants().patcher_support_pkg_version

View File

@@ -1,5 +1,150 @@
# OpenCore Legacy Patcher changelog
## 0.5.3
- Integrate FixPCIeLinkrate.efi v0.1.0
- Fixes link rate for PCIe 3.0 devices on MacPro3,1
- Resolve AppleIntelCPUPowerManagement Panic in Safe Mode
- Applicable for pre-Haswell Macs on Ventura
- Revert AppleALC 1.7.6 update back to 1.6.3
- Resolves audio issues on certain Intel HDEF devices
- Regression currently being investigated within AppleALC
- Remove `Force Web Drivers` option
- Avoids accidental use of non-Metal Web Drivers on Kepler GPUs
- Resolve silent auto patcher crash when new OCLP version is available
- Implement [`py_sip_xnu`](https://github.com/khronokernel/py_sip_xnu) module
- Resolve Content Caching Patch Regression
- Resolve KDK Versioning Fallback crashing when primary KDK site is down
- Resolve AirPlay to Mac support on Ventura with VMM
- Resolve WindowServer crashing on KDK-less with macOS 13.2 and Rapid Security Response updates
- Resolve Host Versioning when RSR is installed
- Resolve iMac7,1-8,1 and MacBookPro4,1 boot support in Ventura
- Increment Binaries:
- OpenCorePkg 0.8.7 - release
- FeatureUnlock 1.1.2 - rolling (94e29ce)
- WhateverGreen 1.6.2 - release
## 0.5.2
- Ventura Specific Updates:
- Resolve AMD Polaris external display output support
- AMD Polaris and legacy GCN cannot be mixed in the same system
- Legacy GCN support will be prioritized when both are present
- AMD Polaris GPU can still be used headless for rendering with legacy GCN (ex. [macOS: Prefer External GPU option](https://support.apple.com/en-ca/HT208544))
- Disables unsupported `mediaanalysisd` on Metal 1 GPUs
- Alleviates kernel panic when on prolonged idle
- Automatically remove unsupported News Widgets on Ivy Bridge and Haswell iGPUs
- Alleviates Notification Centre Crashing
- Implement downloading from Kernel Debug Kit Backup Repository
- Alleviates issues with Apple blocking KDK downloads from OCLP (Ref: [Issue #1016](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1016))
- Work-around MacPro6,1 and Lilu race condition
- Ensure Model and Board ID are set correctly before Lilu loads
- Publish Application Version in UI header
- Allows for easier identification of version when reporting issues
- Drop usage of `HW_BID` rerouting in boot.efi
- Patch out PlatformSupport.plist instead, allows for less maintenance overall
- Add support for AMD GOP injection (AMDGOP.efi)
- For MXM iMacs and Mac Pros with GPU VBIOS lacking GOP support (ie. no UEFI output even after OC loads)
- Hide OpenCore Boot Picker when waking from hibernation
- Increment Binaries:
- AirPortBrcmFixup 2.1.6 - release
- AppleALC 1.7.6 - release
- CryptexFixup 1.0.1 - release
- DebugEnhancer 1.0.7 - release
- FeatureUnlock 1.1.0 - release
- OpenCorePkg 0.8.7 - rolling (fcb4e33)
- RestrictEvents 1.0.9 - release
- WhateverGreen 1.6.1 - release
## 0.5.1
- Add support for `APPLE SSD TS0128F/256F` SSDs in macOS Ventura
- ie. stock SSD found in MacBookAir6,x
- Lax KDK N-1 logic to allow 1 minor version difference
- ex. Allow 13.0 KDK on 13.1
- Clean out `/Library/Extensions` on KDK-less root patches
- Ensures old, incompatible kexts are not linked against
- Old kexts are relocated to `/Library/Relocated Extensions`
- Add OpenCore Picker timeout selection
- Partially resolve MacPro6,1 support
- Allows for install and usage of 2013 Mac Pros on Ventura
- Currently CPU Power Management is not supported
## 0.5.0
- Ventura Specific Updates:
- Switch boot.efi model patch to iMac18,1
- Resolve pre-Force Touch Trackpad support in Ventura
- Add Ventura-dropped Models:
- MacPro6,1
- Macmini7,1
- iMac16,x, iMac17,1
- MacBook9,1
- MacBookAir7,x
- MacBookPro11,4/5, MacBookPro12,1, MacBookPro13,x
- Add Ventura Software Catalog parsing
- Add Kernel Debug Kit checks to Ventura root patching
- Add USB map injection for dropped models
- Resolve Ethernet support on MacPro3,1-5,1
- Fix VMM patch set
- Allow dyld shared cache swapping on pre-Haswell
- Fix MouSSE/SSE4,2 emulation in macOS 13.0 Beta 3 (22A5295h)
- Graphics Acceleration for legacy Metal GPUs
- Intel: Ivy Bridge, Haswell, Broadwell and Skylake
- Nvidia: Kepler
- AMD: GCN 1 through 3
- AMD: Polaris (on pre-AVX2.0 systems)
- Boot in safe mode to avoid stock driver loading
- Raise SIP requirement to 0x803 for root patching
- Add Ventura Boot Picker icons
- Implement KDK-less root patching for Metal Intel and Nvidia GPUs
- AMD GCN will still require a KDK installed for patching
- Resolve OpenCL support for legacy Metal GPUs
- Implement Automatic Rosetta Cryptex installation on OS installs and updates
- Drops need for manual OS.dmg swapping on pre-Haswell
- Implement automatic Kernel Debug Kit downloader for systems requiring Boot/SysKC rebuilding
- ex. AMD GCN
- Relies on N-1 system for when matching KDK is not present
- Delete unused KDKs in `/Library/Developer/KDKs` during root patching
- Resolve Power Management support for Ivy Bridge and older
- Drop AMFI requirement for Nvidia Kepler and AMD GCN 1-3
- Resolve numerous AMD GCN 1-3 issues (ex. Photos.app, Screen Saver, etc.)
- Resolve dGPU support for MacBookPro13,3
- Add work-around to Catalyst Buttons not responding on non-Metal in macOS Monterey
- Re-export OpenCanopy icons to better support Haswell and newer Macs
- Increment Binaries:
- OpenCorePkg 0.8.5 release
- Lilu 1.6.2 - release
- FeatureUnlock 1.0.9 release
- PatcherSupportPkg 0.7.1 - release
- BrcmPatchRAM 2.6.4 - release
- AutoPkgInstaller 1.0.1 - release
- CryptexFixup 1.0.1 - rolling (cf3a1e4)
## 0.4.12
## 0.4.11
- Enable AppleMCEReporterDisabler whenever spoofing affected SMBIOS
- ie. iMacPro1,1, MacPro6,1 and MacPro7,1
- Verify host's disk space before downloading macOS Installers
- Remove duplicate OS builds in macOS downloader
- Avoids Apple's odd bug of publishing 2 different 12.5.1 products
- Implement deeper macOS installer parsing
- Provides better version detection than Apple provides in .app
- Ensure WhateverGreen is always installed on Mac Pro configurations
- Resolve Safari 16 rendering in macOS 12.6
- Increment Binaries:
- PatcherSupportPkg 0.5.4 - release
- Add missing OpenCL resources for Nvidia GPUs
## 0.4.10
- Resolve Nvidia Kepler support in macOS 12.5 Beta 3 and newer
- Increment Binaries:
- PatcherSupportPkg 0.5.2 - release
## 0.4.9
- Split Kepler userspace and kernel space patches
- Only installs kernel space patches on 12.5 and newer
- Avoids lock out of user, however breaks graphics acceleration
- Install 12.4 or older for full graphics acceleration on Kepler
- Reference: [macOS 12.5: Nvidia Kepler and WindowServer crashing #1004](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1004)
## 0.4.8
- Ensure Apple Silicon-specific installers are not listed
- ie. M2 specific build (21F2092)
@@ -42,7 +187,6 @@
- Deprecate TUI support
- Users may still manually run from source for future builds
- Binaries will no longer be provided on future release
- Switch boot.efi model patch to iMac18,1
## 0.4.5
- Fix AutoPatcher.pkg download on releases
@@ -91,11 +235,11 @@
- Unknown whether this is a "bug" or intentional from Apple, affects native Macs with SIP disabled
- Resolved non-Metal issues:
- Catalyst crashing after 1200 seconds on non-Metal
- Automatic Light/Darkmode (credit @moosethegoose2213)
- Automatic Light/Dark mode (credit @moosethegoose2213)
- Rim improvements
- Trackpad swipe between pages
- Cycle between windows
- Improve Display Prefpane Image
- Improve Display Preference pane Image
- Defaults prefix change (`ASB_` -> `MORAEA_`, reopen non-Metal Settings to apply)
- Increment Binaries:
- PatcherSupportPkg 0.3.9 - release
@@ -128,9 +272,9 @@
- Add Disk Highlighting during Build/Install for previously installed disks
- Only list newest installers by default (reload to show older binaries)
- Remove manual root unpatching
- Removed due to reliablity issues
- Removed due to reliability issues
- `bless` based reversion still supported in Big Sur+
- Remove Unoffical Mojave/Catalina Root Patching
- Remove Unofficial Mojave/Catalina Root Patching
- For TeraScale 2-based acceleration on older OSes, use v0.4.3
- Simplify Binary options
- Removes Online Patcher Variants
@@ -150,7 +294,7 @@
- Control Centre Sliders
- Shift/missing icons
- Hardware Cursor
- Note cursor images will be static (ie. beachball)
- Note cursor images will be static (ie. beach ball)
- Quicklook dismiss/expand
- Keyboard Backlight
- Drops reliance on LabTick
@@ -213,7 +357,7 @@
- PatcherSupportPkg 0.2.9 - release
- Re-add Content Caching support for VMM-spoofed systems
- Add wxPython Based GUI
- Superceeds Obj-C Based GUI
- Supersedes Obj-C Based GUI
- Both standard and offline builds provided
- Allow optional spoofing on native Models
- Recommended for systems that cannot update their firmware natively (ie. dead internal drive)
@@ -374,7 +518,7 @@
- Applicable for BRCM2046 and BRCM2070 chipsets
- Disable Library Validation allowing for AMFI usage
- Remove reliance on amfi_get_out_of_my_way=1
- Add Kepler Accleration Patches for Monterey Beta 7 and newer
- Add Kepler Acceleration Patches for Monterey Beta 7 and newer
- Add FirmwareFeature upgrading to all Models
- Fixes Monterey Beta 7 installation issues
- Add iMac7,1 USB map
@@ -438,7 +582,7 @@
- RestrictEvents 1.0.3 rolling (3773ce2 - 06-20-2021)
- SidecarFixup 1.0.2 rolling (2c29166 - 06-21-2021)
- PatcherSupportPkg 0.0.18
- Allow AirPlay to Mac support on Skylake - Coffeelake Macs
- Allow AirPlay to Mac support on Skylake - Coffee Lake Macs
## 0.1.9
@@ -659,7 +803,7 @@
- OpenCore 9cd61bb (0.6.8 rolling - 2021-03-27)
- Add Mavericks and newer .app support
- Refactor USB map building, fixes USB 3.0 displaying as USB 2.0
- Fix blackscreen on MacBookPro9,1
- Fix black screen on MacBookPro9,1
- Update RestrictEvents with custom build (1.0.1)
- Blocks `/usr/libexec/displaypolicyd` on MacBookPro9,1 to ensure smooth GPU switching
- Add custom SD Card icon

View File

@@ -44,8 +44,10 @@ To start using the project, please see our in-depth guide:
## Support
To get aid with the patcher, we recommend joining the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN). We're actively there and is the quickest way to receive help.
This project is offered on an AS-IS basis, we do not guarantee support for any issues that may arise. However, there is a community server with other passionate users and developers that can aid you:
* [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN)
* Keep in mind that the Discord is maintained by the community, so we ask everyone to be respectful.
* Please review our docs on [how to debug with OpenCore](https://dortania.github.io/OpenCore-Legacy-Patcher/DEBUG.html) to gather important information to help others with troubleshooting.
## Running from source
@@ -87,6 +89,16 @@ To run the project from source, see here: [Build and run from source](./SOURCE.m
* Endless hours helping architect and troubleshoot many portions of the project
* [flagers](https://github.com/flagersgit)
* Aid with Nvidia Web Driver research and development
* [joevt](https://github.com/joevt)
* [FixPCIeLinkrate](https://github.com/joevt/joevtApps)
* Amazing users who've graciously donate hardware:
* [JohnD](https://forums.macrumors.com/members/johnd.53633/) - 2013 Mac Pro
* [SpiGAndromeda](https://github.com/SpiGAndromeda) - AMD Vega 64
* [turbomacs](https://github.com/turbomacs) - 2014 5k iMac
* [vinaypundith](https://forums.macrumors.com/members/vinaypundith.1212357/) - MacBook7,1
* zephar - 2008 Mac Pro
* jazo97 - 2011 15" MacBook Pro
* And others (reach out if we forgot you!)
* MacRumors and Unsupported Mac Communities
* Endless testing, reporting issues
* Apple

View File

@@ -26,7 +26,7 @@ cd ~/Developer
git clone https://github.com/dortania/OpenCore-Legacy-Patcher
# Move into Project directory
cd ./OpenCore-Legacy-Patcher
# Install Python dependacies used by the project
# Install Python dependencies used by the project
pip3 install -r requirements.txt
```
@@ -34,10 +34,11 @@ If you have installation error, see following troubleshooting options:
* Use Python 3.9
* Currently our build server uses py3.9 for generating binaries used in releases
* Use .whl snapshots for installing additional dependancies
* Use .whl snapshots for installing additional dependencies
* [wxPython 4.1.1 wheel for py3.9](https://files.pythonhosted.org/packages/2c/a8/7027e8ca3ba20dc2ed2acd556e31941cb44097ab87d6f81d646a79de4eab/wxPython-4.1.1-cp39-cp39-macosx_10_10_x86_64.whl)
* [PyObjc 8.5 wheel for py3](https://files.pythonhosted.org/packages/69/3d/786f379dd669a078cf0c4a686e242c9b643071c23367bfbd3d9a7eb589ec/pyobjc-8.5-py3-none-any.whl)
* [Requests 2.27.1 for py2/py3](https://files.pythonhosted.org/packages/2d/61/08076519c80041bc0ffa1a8af0cbd3bf3e2b62af10435d269a9d0f40564d/requests-2.27.1-py2.py3-none-any.whl)
* [pyinstaller 5.3 for py3](https://files.pythonhosted.org/packages/65/70/625e86e5a45cb975a9c32a10a721394d10771275c69207308b80bc6a758e/pyinstaller-5.3-py3-none-macosx_10_13_universal2.whl)
## Running OpenCore Legacy Patcher
@@ -87,4 +88,4 @@ open ./dist/
Once done, you'll find the application generated at `./dist/OpenCore-Patcher.app`:
![](./images/build-dist.png)
![](./images/build-dist.png)

56
data/amfi_data.py Normal file
View File

@@ -0,0 +1,56 @@
# Copyright (C) 2022, Mykola Grymalyuk
# Within AppleMobileFileIntegrity.kext, Apple has a bitmask-based boot-arg (ex. amfi=128)
# Below information is from reversed values in 13.0 Beta 6's AppleMobileFileIntegrity.kext
# Currently only 'amfi=3' has been used by Apple publicly
# - 0x3 used in 11.0.1 dyld source:
# - https://github.com/apple-oss-distributions/dyld/blob/5c9192436bb195e7a8fe61f22a229ee3d30d8222/testing/test-cases/kernel-hello-world.dtest/main.c#L2
class apple_mobile_file_integrity:
# Names set are solely for readability
# Internal names are unknown
amfi_values = {
"AMFI_ALLOW_TASK_FOR_PID": False, # 0x1 - Allow Task for PID (alt. amfi_unrestrict_task_for_pid=0x1)
"AMFI_ALLOW_INVALID_SIGNATURE": False, # 0x2 - Reduce sig enforcement (alt. amfi_allow_any_signature=0x1)
"AMFI_LV_ENFORCE_THIRD_PARTY": False, # 0x4 - Don't mark external binaries as platform binaries
"AMFI_UNKNOWN_1": False, # 0x8
"AMFI_UNKNOWN_2": False, # 0x10
"AMFI_UNKNOWN_3": False, # 0x20
"AMFI_UNKNOWN_4": False, # 0x40
"AMFI_ALLOW_EVERYTHING": False, # 0x80 - Disable sig enforcement and Library Validation (alt. amfi_get_out_of_my_way=0x1)
},
# Internally within AMFI.kext, Apple references 0x2 and 0x80 as both 'Disable signature enforcement'
# However 0x80 is a higher privilege than 0x2, and breaks TCC support in OS (ex. Camera, Microphone, etc prompts)
# Supported boot-args within AMFI.kext, last compared against 13.0 Beta 6
#
# Within _initializeAppleMobileFileIntegrity():
# - amfi_unrestrict_task_for_pid=0x1
# - amfi_dev_mode_policy=0x1
# - amfi_allow_any_signature=0x1
# - amfi_get_out_of_my_way=0x1
# - amfi_unrestricted_local_signing=0x1
# - pmap_cs_unrestricted_local_signing=0x1
# - amfi_ready_to_roll=0x1
# - cs_enforcement_disable=0x1
#
# Within AMFIInitializeLocalSigningPublicKey():
# - -restore
#
# Within macOSPolicyConfigurationInit():
# - amfi_force_policy=0x1
# - amfi_block_unsigned_code=0x1
# - amfi_force_cs_kill=0x1
# - amfi_hsp_disable=0x1
# - amfi_hsp_logging=0x1
# - amfi_allow_bni_as_platform=0x1
# - amfi_allow_non_platform=0x1
# - amfi_prevent_old_entitled_platform_binaries=0x1
# - amfi_allow_only_tc=0x1
# - amfi_allow_only_tc_override=0x1
#
# Within configurationSettingsInit()
# - amfi_enforce_launch_constraints=0x1
# - amfi_allow_3p_launch_constraints=0x1
# - BATS_TESTPLAN_ID="Custom Team ID"

View File

@@ -21,6 +21,7 @@ class MacBook:
cpu=device_probe.CPU(
name="Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -42,7 +43,8 @@ class MacBookPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -67,7 +69,8 @@ class MacBookPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP03@1c0002/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version='0.4.2',
opencore_version='DBG-077-2022-01-10',
@@ -75,6 +78,48 @@ class MacBookPro:
third_party_sata_ssd=False
)
MacBookPro133_Stock = device_probe.Computer(
real_model='MacBookPro13,3',
real_board_id='Mac-A5C67F76ED83108C',
reported_model='MacBookPro13,3',
reported_board_id='Mac-A5C67F76ED83108C',
build_model='MacBookPro13,3',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=6427, class_code=196608, name='IGPU', model='Intel HD Graphics 530', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
device_probe.AMD(vendor_id=4098, device_id=26607, class_code=196608, name='GFX0', model='AMD Radeon Pro 455', acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG0@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
igpu=device_probe.Intel(vendor_id=32902, device_id=6427, class_code=196608, name='IGPU', model='Intel HD Graphics 530', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=device_probe.AMD(vendor_id=4098, device_id=26607, class_code=196608, name='GFX0', model='AMD Radeon Pro 455', acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG0@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
storage=[
device_probe.NVMeController(vendor_id=5197, device_id=43012, class_code=67586, name='SSD0', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP17@1b0000/SSD0@0', pci_path='PciRoot(0x0)/Pci(0x1b,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False, aspm=258)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=32902, device_id=41263, class_code=787248, name='XHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/XHC1@140000', pci_path='PciRoot(0x0)/Pci(0x14,0x0)', disable_metal=False, force_compatible=False),
device_probe.XHCIController(vendor_id=32902, device_id=5588, class_code=787248, name='XHC3', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG2@10002/UPSB@0/DSB2@20000/XHC3@0', pci_path='PciRoot(0x0)/Pci(0x1,0x2)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
device_probe.XHCIController(vendor_id=32902, device_id=5588, class_code=787248, name='XHC2', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG1@10001/UPSB@0/DSB2@20000/XHC2@0', pci_path='PciRoot(0x0)/Pci(0x1,0x1)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[],
ethernet=[],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17338, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[]
),
oclp_version='0.5.0',
opencore_version=None,
opencore_path=None,
bluetooth_chipset=None,
ambient_light_sensor=False,
third_party_sata_ssd=False,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version=None,
oclp_sys_date=None,
oclp_sys_url=None,
firmware_vendor='Apple'
)
MacBookPro141_SSD_Upgrade = device_probe.Computer(
real_model='MacBookPro14,1',
real_board_id='Mac-B4831CEBD52A0C4C',
@@ -95,7 +140,8 @@ class MacBookPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17315, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP09@1d0000/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
), oclp_version='0.4.1',
opencore_version=None,
bluetooth_chipset=None,
@@ -115,6 +161,7 @@ class MacBookPro:
cpu=device_probe.CPU(
name="Apple M1",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTSE64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "AES", "SEGLIM64"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -122,6 +169,144 @@ class MacBookPro:
class Macmini:
Macmini52_Stock = device_probe.Computer(
real_model='Macmini5,2',
real_board_id='Mac-4BC72D62AD45599E',
reported_model='Macmini5,2',
reported_board_id='Mac-4BC72D62AD45599E',
build_model='Macmini5,2',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=294, class_code=229376, name='IGPU', model='Intel HD Graphics 3000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
device_probe.AMD(vendor_id=4098, device_id=26433, class_code=196608, name='GFX0', model='AMD Radeon HD 6630M', acpi_path='IOACPIPlane:/_SB/PCI0@0/P0P2@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)],
igpu=device_probe.Intel(vendor_id=32902, device_id=294, class_code=229376, name='IGPU', model='Intel HD Graphics 3000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=device_probe.AMD(vendor_id=4098, device_id=26433, class_code=196608, name='GFX0', model='AMD Radeon HD 6630M', acpi_path='IOACPIPlane:/_SB/PCI0@0/P0P2@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
storage=[
device_probe.SATAController(vendor_id=32902, device_id=7171, class_code=67073, name='SATA', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SATA@1f0002', pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False)
],
usb_controllers=[
device_probe.EHCIController(vendor_id=32902, device_id=7213, class_code=787232, name='EHC2', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC2@1a0007', pci_path='PciRoot(0x0)/Pci(0x1a,0x7)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=7206, class_code=787232, name='EHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC1@1d0007', pci_path='PciRoot(0x0)/Pci(0x1d,0x7)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=7212, class_code=787200, name='UHC5', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/UHC5@1a0000', pci_path='PciRoot(0x0)/Pci(0x1a,0x0)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=7207, class_code=787200, name='UHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/UHC1@1d0000', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[
device_probe.SDXCController(vendor_id=5348, device_id=5820, class_code=525569, name='SDXC', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/SDXC@1', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x1)', disable_metal=False, force_compatible=False)
],
ethernet=[
device_probe.BroadcomEthernet(vendor_id=5348, device_id=5812, class_code=131072, name='GIGE', model='Broadcom 57765-B0', acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/GIGE@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP02@1c0001/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0'],
leafs=['']
),
oclp_version='0.5.0',
opencore_version='REL-083-2022-08-01',
opencore_path='PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x0,0x0,0x0)/HD(1,GPT,D011D782-7E9A-459B-905D-9DA8D6494A53,0x28,0x64000)/EFI\\OC\\OpenCore.efi',
bluetooth_chipset='BRCM20702 Hub',
ambient_light_sensor=False,
third_party_sata_ssd=True,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version='v0.4.11',
oclp_sys_date='October 06, 2022 @ 10:06:53',
oclp_sys_url=None,
firmware_vendor='Apple',
rosetta_active=False
)
Macmini61_Stock = device_probe.Computer(
real_model='Macmini6,1',
real_board_id='Mac-031AEE4D24BFF0B1',
reported_model='Macmini6,1',
reported_board_id='Mac-031AEE4D24BFF0B1',
build_model='Macmini6,1',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=358, class_code=196608, name='IGPU', model='Intel HD Graphics 4000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False)
],
igpu=device_probe.Intel(vendor_id=32902, device_id=358, class_code=196608, name='IGPU', model='Intel HD Graphics 4000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=None,
storage=[
device_probe.SATAController(vendor_id=32902, device_id=7683, class_code=67073, name='SATA', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SATA@1f0002', pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=32902, device_id=7729, class_code=787248, name='XHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/XHC1@140000', pci_path='PciRoot(0x0)/Pci(0x14,0x0)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=7725, class_code=787232, name='EHC2', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC2@1a0000', pci_path='PciRoot(0x0)/Pci(0x1a,0x0)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=7718, class_code=787232, name='EHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC1@1d0000', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[
device_probe.SDXCController(vendor_id=5348, device_id=5820, class_code=525569, name='SDXC', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/SDXC@1', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x1)', disable_metal=False, force_compatible=False)
],
ethernet=[
device_probe.BroadcomEthernet(vendor_id=5348, device_id=5766, class_code=131072, name='GIGE', model='Broadcom 57766-A1', acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/GIGE@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP02@1c0001/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False
),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=['RDWRFSGS', 'SMEP', 'ERMS', 'MDCLEAR', 'IBRS', 'STIBP', 'L1DF', 'SSBD']
),
oclp_version='0.5.0',
opencore_version='REL-083-2022-08-01',
opencore_path='PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x0,0x0,0x0)/HD(1,GPT,B46958E3-7EB7-40C2-BB3A-2C88A0856DC7,0x28,0x64000)/EFI\\OC\\OpenCore.efi',
bluetooth_chipset='BRCM20702 Hub',
ambient_light_sensor=False,
third_party_sata_ssd=True,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version='v0.5.0',
oclp_sys_date='October 04, 2022 @ 12:24:50',
oclp_sys_url='',
firmware_vendor='Apple',
rosetta_active=False
)
Macmini71_Stock = device_probe.Computer(
real_model='Macmini7,1',
real_board_id='Mac-35C5E08120C7EEAF',
reported_model='Macmini7,1',
reported_board_id='Mac-35C5E08120C7EEAF',
build_model='Macmini7,1',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=2606, class_code=196608, name='IGPU', model='Intel Iris', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False)
],
igpu=device_probe.Intel(vendor_id=32902, device_id=2606, class_code=196608, name='IGPU', model='Intel Iris', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=None,
storage=[
device_probe.SATAController(vendor_id=32902, device_id=39939, class_code=67073, name='SATA', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SATA@1f0002', pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=32902, device_id=39985, class_code=787248, name='XHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/XHC1@140000', pci_path='PciRoot(0x0)/Pci(0x14,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[
device_probe.SDXCController(vendor_id=5348, device_id=5820, class_code=525569, name='SDXC', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP04@1c0003/SDXC@1', pci_path='PciRoot(0x0)/Pci(0x1c,0x3)/Pci(0x0,0x1)', disable_metal=False, force_compatible=False)
],
ethernet=[
device_probe.BroadcomEthernet(vendor_id=5348, device_id=5766, class_code=131072, name='GIGE', model='Broadcom 57766-A1', acpi_path='IOACPIPlane:/_SB/PCI0@0/RP04@1c0003/GIGE@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x3)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP03@1c0002/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=['RDWRFSGS', 'TSC_THREAD_OFFSET', 'BMI1', 'AVX2', 'SMEP', 'BMI2', 'ERMS', 'INVPCID', 'FPU_CSDS', 'MDCLEAR', 'IBRS', 'STIBP', 'L1DF', 'SSBD']
),
oclp_version='0.5.0',
opencore_version='REL-083-2022-08-01',
opencore_path='PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x0,0x0,0x0)/HD(1,GPT,293E8ABF-B98C-4258-A811-04464BCA90EF,0x28,0x64000)/EFI\\OC\\OpenCore.efi',
bluetooth_chipset='BRCM20702 Hub',
ambient_light_sensor=False,
third_party_sata_ssd=True,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version='v0.5.0',
oclp_sys_date='October 04, 2022 @ 12:04:48',
oclp_sys_url='https://github.com/dortania/OpenCore-Legacy-Patcher/commit/daf28a62effb2ce06a71cb5961c9d0c79d72c16b',
firmware_vendor='Apple',
rosetta_active=False
)
Macmini81_Stock = device_probe.Computer(
real_model="Macmini8,1",
real_board_id="Mac-7BA5B2DFE22DDD8C",
@@ -134,7 +319,8 @@ class Macmini:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17508, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM) i7-8700B CPU @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "FMA", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "x2APIC", "MOVBE", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "SEGLIM64", "TSCTMR", "AVX1.0", "RDRAND", "F16C"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "FMA", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "x2APIC", "MOVBE", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "SEGLIM64", "TSCTMR", "AVX1.0", "RDRAND", "F16C"],
leafs=[],
),
oclp_version=None,
opencore_version=None
@@ -155,7 +341,8 @@ class Macmini:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17445, class_code=163840, name="wlan", model=None, pci_path=""),
cpu=device_probe.CPU(
name="Apple M1",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTSE64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "AES", "SEGLIM64"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTSE64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "AES", "SEGLIM64"],
leafs=[],
),
oclp_version=None,
opencore_version=None
@@ -180,7 +367,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17192, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x4)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM)2 Duo CPU E8135 @ 2.40GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -203,7 +391,8 @@ class iMac:
wifi=device_probe.Atheros(vendor_id=5772, device_id=42, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM) i3 CPU 540 @ 3.07GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "PCID"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "PCID"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -226,7 +415,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17338, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "xAPIC", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "TSCTMR", "AVX1.0"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "xAPIC", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "TSCTMR", "AVX1.0"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -252,7 +442,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP02@1c0001/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0'],
leafs=[],
),
oclp_version='0.3.3',
opencore_version=None,
@@ -278,7 +469,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name='ARPT', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-4690 CPU @ 3.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -305,7 +497,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17508, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-10500 CPU @ 3.10GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -333,6 +526,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -358,6 +552,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -383,6 +578,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -406,6 +602,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -424,7 +621,8 @@ class MacPro:
wifi=device_probe.Atheros(vendor_id=5772, device_id=48, class_code=163840, name="PXS4", model=None, pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU W3520 @ 2.67GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"],
leafs=[],
),
oclp_version=None,
opencore_version=None
@@ -447,7 +645,8 @@ class MacPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU W3520 @ 2.67GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"],
leafs=[],
),
oclp_version="0.2.5",
opencore_version="REL-071-2021-07-02"
@@ -470,7 +669,8 @@ class MacPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name="PXS4", model=None, pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5670 @ 2.93GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "AES", "PCID"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "AES", "PCID"],
leafs=[],
),
oclp_version="0.2.5",
opencore_version="REL-071-2021-07-02"
@@ -508,7 +708,8 @@ class MacPro:
wifi=None,
cpu=device_probe.CPU(
name='Intel(R) Xeon(R) CPU X5670 @ 2.93GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'POPCNT', 'AES', 'PCID']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'POPCNT', 'AES', 'PCID'],
leafs=[],
),
oclp_version='0.4.6',
opencore_version='REL-080-2022-04-18',
@@ -521,4 +722,57 @@ class MacPro:
oclp_sys_version='v0.4.6',
oclp_sys_date='September 03, 2019 @ 23:13:43',
firmware_vendor='Apple'
)
class Hackintosh:
QEMU_Virtual_Machine_GT710 = device_probe.Computer(
real_model='iMac14,4',
real_board_id='Mac-81E3E92DD6088272',
reported_model='iMac14,4',
reported_board_id='Mac-81E3E92DD6088272',
build_model=None,
gpus=[
device_probe.NVIDIA(vendor_id=4318, device_id=4747, class_code=196608, name='GFX0', model='NVIDIA GeForce GT 710', acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
igpu=None,
dgpu=device_probe.NVIDIA(vendor_id=4318, device_id=4747, class_code=196608, name='GFX0', model='NVIDIA GeForce GT 710', acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
storage=[
device_probe.SATAController(vendor_id=32902, device_id=10530, class_code=67073, name='pci8086,2922', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False),
device_probe.SATAController(vendor_id=32902, device_id=10530, class_code=67073, name='pci8086,2922', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1e,0x0)/Pci(0x1,0x0)/Pci(0x7,0x0)', disable_metal=False, force_compatible=False),
device_probe.NVMeController(vendor_id=5197, device_id=43016, class_code=67586, name='pci144d,a808', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False, aspm=0)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=6945, device_id=8514, class_code=787248, name='pci1b21,2142', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=10556, class_code=787232, name='pci8086,293c', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1a,0x7)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=10554, class_code=787232, name='pci8086,293a', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1d,0x7)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10551, class_code=787200, name='SD0', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SD0@1a0000', pci_path='PciRoot(0x0)/Pci(0x1a,0x0)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10552, class_code=787200, name='pci8086,2938', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1a,0x1)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10553, class_code=787200, name='pci8086,2939', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1a,0x2)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10548, class_code=787200, name='SE8', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SE8@1d0000', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10549, class_code=787200, name='pci8086,2935', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1d,0x1)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10550, class_code=787200, name='pci8086,2936', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1d,0x2)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[],
ethernet=[],
wifi=None,
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i9-7920X CPU @ 2.90GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'SSE3', 'PCLMULQDQ', 'VMX', 'SSSE3', 'FMA', 'CX16', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'VMM', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=['RDWRFSGS', 'TSC_THREAD_OFFSET', 'BMI1', 'HLE', 'AVX2', 'SMEP', 'BMI2', 'ERMS', 'INVPCID', 'RTM', 'MPX', 'AVX512F', 'AVX512DQ', 'RDSEED', 'ADX', 'SMAP', 'CLFSOPT', 'CLWB', 'AVX512CD', 'AVX512BW', 'AVX512VL', 'UMIP', 'MDCLEAR', 'IBRS', 'STIBP', 'ACAPMSR', 'SSBD']
),
oclp_version=None,
opencore_version='REL-083-2022-08-01',
opencore_path=None,
bluetooth_chipset=None,
ambient_light_sensor=False,
third_party_sata_ssd=False,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version=None,
oclp_sys_date=None,
oclp_sys_url=None,
firmware_vendor='EDK II',
rosetta_active=False
)

View File

@@ -8,6 +8,7 @@ SupportedSMBIOS = [
"MacBook6,1",
"MacBook7,1",
"MacBook8,1",
"MacBook9,1",
# MacBook Air
"MacBookAir2,1",
"MacBookAir3,1",
@@ -18,6 +19,8 @@ SupportedSMBIOS = [
"MacBookAir5,2",
"MacBookAir6,1",
"MacBookAir6,2",
"MacBookAir7,1",
"MacBookAir7,2",
# MacBook Pro
"MacBookPro4,1",
"MacBookPro5,1",
@@ -38,6 +41,12 @@ SupportedSMBIOS = [
"MacBookPro11,1",
"MacBookPro11,2",
"MacBookPro11,3",
"MacBookPro11,4",
"MacBookPro11,5",
"MacBookPro12,1",
"MacBookPro13,1",
"MacBookPro13,2",
"MacBookPro13,3",
# Mac Mini
"Macmini3,1",
"Macmini4,1",
@@ -46,6 +55,7 @@ SupportedSMBIOS = [
"Macmini5,3",
"Macmini6,1",
"Macmini6,2",
"Macmini7,1",
# iMac
"iMac7,1",
"iMac8,1",
@@ -64,10 +74,14 @@ SupportedSMBIOS = [
"iMac14,3",
"iMac14,4",
"iMac15,1",
"iMac16,1",
"iMac16,2",
"iMac17,1",
# Mac Pro
"MacPro3,1",
"MacPro4,1",
"MacPro5,1",
"MacPro6,1",
# Xserve
"Xserve2,1",
"Xserve3,1",
@@ -119,21 +133,45 @@ LegacyAudio = [
# GPU
ModernGPU = [
"MacBook8,1", # Intel 6000
"MacBook9,1", # Intel Skylake
"MacBookAir5,1", # Intel 4000
"MacBookAir5,2", # Intel 4000
"MacBookAir6,1", # Intel 5000
"MacBookAir6,2", # Intel 5000
"MacBookAir7,1", # Intel 6000
"MacBookAir7,2", # Intel 6000
"MacBookPro9,1", # Intel 4000 + Nvidia 650M
"MacBookPro9,2", # Intel 4000
"MacBookPro10,1", # Intel 4000 + Nvidia 650M
"MacBookPro10,2", # Intel 4000
"MacBookPro11,1", # Intel 5000
"MacBookPro11,2", # Intel 5000
"MacBookPro11,3", # Intel 5000 + Nvidia Kepler
"MacBookPro11,4", # Intel 5000
"MacBookPro11,5", # Intel 5000 + GCN 1
"MacBookPro12,1", # Intel 6000
"MacBookPro13,1", # Intel Skylake
"MacBookPro13,2", # Intel Skylake
"MacBookPro13,3", # Intel Skylake
"Macmini6,1", # Intel 4000
"Macmini6,2", # Intel 4000
"Macmini7,1", # Intel 5000
"iMac13,1", # Intel 4000
"iMac13,2", # Intel 4000 + Nvidia Kepler
"iMac13,3", # Intel 4000
"iMac14,1", # Intel 5000 + Nvidia Kepler
"iMac14,2", # Intel 5000 + Nvidia Kepler
"iMac14,3", # Intel 5000 + Nvidia Kepler
"iMac14,4", # Intel 5000
"iMac15,1", # Intel 5000 + GCN 1
"iMac16,1", # Intel 6000
"iMac16,2", # Intel 6000
"iMac17,1", # Intel Skylake + GCN1
"MacPro3,1", # Lacks AVX2.0
"MacPro4,1", # Lacks AVX2.0
"MacPro5,1", # Lacks AVX2.0
"MacPro6,1", # GCN 1
]
LegacyGPU = [
@@ -277,3 +315,39 @@ Missing_USB_Map = [
"Xserve2,1",
"Xserve3,1",
]
Missing_USB_Map_Ventura = [
"MacBook8,1",
"MacBookAir5,1",
"MacBookAir5,2",
"MacBookAir6,1",
"MacBookAir6,2",
"MacBookAir7,1",
"MacBookAir7,2",
"MacBookPro9,1",
"MacBookPro9,2",
"MacBookPro10,1",
"MacBookPro10,2",
"MacBookPro11,1",
"MacBookPro11,2",
"MacBookPro11,3",
"MacBookPro11,4",
"MacBookPro11,5",
"MacBookPro12,1",
"MacPro5,1",
"MacPro6,1",
"Macmini6,1",
"Macmini6,2",
"Macmini7,1",
"iMac13,1",
"iMac13,2",
"iMac14,1",
"iMac14,2",
"iMac14,3",
"iMac14,4",
"iMac15,1",
"iMac15,2",
"iMac16,1",
"iMac16,2",
"iMac17,1",
]

View File

@@ -1,3 +1,4 @@
from curses.ascii import isdigit
import enum
@@ -77,4 +78,70 @@ class os_conversion:
except KeyError:
os_kernel = 0
return int(os_kernel)
return int(os_kernel)
def find_largest_build(build_array):
# Find the newest version within an array of versions
# These builds will have both numbers and letters in the version
# ex:
# [
# "22A5295i",
# "22A5266r",
# "22A5286j",
# "22A5295h",
# ]
max_length = 0 # Length of the longest build
build_array_split = [] # 'build_array', converted into individual array of elements
final_build = "" # Largest determined build
# Convert strings to arrays
for build in build_array:
list_build = list(build)
if len(list_build) > max_length:
max_length = len(list_build)
build_array_split.append(list_build)
# Pad out each array to same length
for build in build_array_split:
while len(build) < max_length:
build.append("0")
# Convert all letters to int using ord()
for build in build_array_split:
for entry in build:
if not entry.isdigit():
build[build.index(entry)] = ord(entry)
for build_outer_loop in build_array_split:
for build_inner_loop in list(build_array_split):
for i in range(len(build_outer_loop)):
# remove any builds that are not the largest
if int(build_outer_loop[i]) > int(build_inner_loop[i]):
build_array_split.remove(build_inner_loop)
break
if int(build_outer_loop[i]) < int(build_inner_loop[i]):
break
# Convert array back to string
for entry in build_array_split[0]:
# Since we split per character, we know that anything above 9 is a letter
if int(entry) > 9:
# revert back to letter
final_build += chr(entry)
else:
final_build += str(entry)
# Since we pad with 0s, we need to next determine how many 0s to remove
for build in build_array:
if final_build.startswith(build):
# Handle cases where Apple added a letter to the build
# ex. "22A5295" vs "22A5295"
remaining_strings = final_build.split(build)[1]
# If all remaining strings are 0s, then we can remove the 0s
if all(char == "0" for char in remaining_strings):
final_build = build
return final_build

View File

@@ -134,6 +134,14 @@ class system_integrity_protection:
"CSR_ALLOW_UNAPPROVED_KEXTS", # 0x200 - Required for Aux Cache in Big Sur+
]
root_patch_sip_ventura = [
# Variables required to root patch in Ventura
"CSR_ALLOW_UNTRUSTED_KEXTS", # 0x1 - Required for Aux Cache in Big Sur+
"CSR_ALLOW_UNRESTRICTED_FS", # 0x2 - Required to mount and edit root volume, as well as load modded platform binaries
"CSR_ALLOW_UNAUTHENTICATED_ROOT", # 0x800 - Required to avoid KC mismatch kernel panic
]
# CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE (introduced with Mojave):
# This bit is quite strange and was originally assumed to be required for modded platform binaries
# However after extensive testing, this doesn't seem true. In addition, this bit is never flipped via

View File

@@ -14,6 +14,9 @@
# Switchable GPUs: If model uses a GMUX
# Stock GPUs: GPUs variations shipped
# Reference:
# https://github.com/acidanthera/OpenCorePkg/blob/master/Library/OcMacInfoLib/AutoGenerated.c
from resources import device_probe
from data import cpu_data, os_data, bluetooth_data
@@ -225,10 +228,10 @@ smbios_dictionary = {
},
"MacBook9,1": {
"Board ID": "Mac-9AE82516C7C6B903",
"FirmwareFeatures": "0xFC0FE13F",
"FirmwareFeatures": "0x8FC0FE13F",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 12,
@@ -242,7 +245,7 @@ smbios_dictionary = {
},
"MacBook10,1": {
"Board ID": "Mac-EE2EBD4B90B839A8",
"FirmwareFeatures": "0xFC0FE13F",
"FirmwareFeatures": "0x8FC0FE13F",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -432,10 +435,10 @@ smbios_dictionary = {
},
"MacBookAir7,1": {
"Board ID": "Mac-9F18E312C5C2BF0B",
"FirmwareFeatures": "0xFF0FF576",
"FirmwareFeatures": "0x8FF0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 11,
@@ -449,10 +452,10 @@ smbios_dictionary = {
},
"MacBookAir7,2": {
"Board ID": "Mac-937CB26E2E02BB01",
"FirmwareFeatures": "0xFF0FF576",
"FirmwareFeatures": "0x8FF0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 13,
@@ -466,7 +469,7 @@ smbios_dictionary = {
},
"MacBookAir8,1": {
"Board ID": "Mac-827FAC58A8FDFA22",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "j140k",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -483,7 +486,7 @@ smbios_dictionary = {
},
"MacBookAir8,1_v2": {
"Board ID": "Mac-112818653D3AABFC",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "j140k", # TODO: Verify
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -502,7 +505,7 @@ smbios_dictionary = {
# AppleInternal MacBookAir8,1
# True Model unknown
"Board ID": "Mac-827FAC58A8FDFA22",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "x589amlu",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -519,7 +522,7 @@ smbios_dictionary = {
},
"MacBookAir8,2": {
"Board ID": "Mac-226CB3C6A851A671",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "j140a",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -536,7 +539,7 @@ smbios_dictionary = {
},
"MacBookAir9,1": {
"Board ID": "Mac-0CFF9C7C2B63DF8D",
"FirmwareFeatures": "0xFFAFF06E",
"FirmwareFeatures": "0x8FFAFF06E",
"SecureBootModel": "j230k",
"CPU Generation": cpu_data.cpu_data.ice_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -555,7 +558,7 @@ smbios_dictionary = {
# AppleInternal MacBookAir9,1
# True Model unknown
"Board ID": "Mac-0CFF9C7C2B63DF8D",
"FirmwareFeatures": "0xFFAFF06E",
"FirmwareFeatures": "0x8FFAFF06E",
"SecureBootModel": "x589icly",
"CPU Generation": cpu_data.cpu_data.ice_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1014,7 +1017,7 @@ smbios_dictionary = {
"Screen Size": 13,
"Ethernet Chipset": "Broadcom",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Kepler
device_probe.Intel.Archs.Ivy_Bridge,
],
"Stock Storage": [
"SATA 2.5",
@@ -1050,7 +1053,7 @@ smbios_dictionary = {
"Screen Size": 13,
"Ethernet Chipset": None,
"Stock GPUs": [
device_probe.NVIDIA.Archs.Kepler
device_probe.Intel.Archs.Ivy_Bridge,
],
"Stock Storage": [
"mSATA",
@@ -1103,6 +1106,7 @@ smbios_dictionary = {
"Ethernet Chipset": None,
"Stock GPUs": [
device_probe.Intel.Archs.Haswell,
device_probe.NVIDIA.Archs.Kepler,
],
"Stock Storage": [
"NVMe",
@@ -1110,10 +1114,10 @@ smbios_dictionary = {
},
"MacBookPro11,4": {
"Board ID": "Mac-06F11FD93F0323C5",
"FirmwareFeatures": "0xEB0FF577",
"FirmwareFeatures": "0x8EB0FF577",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.haswell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 15,
@@ -1127,10 +1131,10 @@ smbios_dictionary = {
},
"MacBookPro11,5": {
"Board ID": "Mac-06F11F11946D27C5",
"FirmwareFeatures": "0xEB0FF577",
"FirmwareFeatures": "0x8EB0FF577",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.haswell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 15,
@@ -1146,10 +1150,10 @@ smbios_dictionary = {
},
"MacBookPro12,1": {
"Board ID": "Mac-E43C1C25D4880AD6",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 13,
@@ -1163,10 +1167,10 @@ smbios_dictionary = {
},
"MacBookPro13,1": {
"Board ID": "Mac-473D31EABEB93F9B",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 13,
@@ -1180,10 +1184,10 @@ smbios_dictionary = {
},
"MacBookPro13,2": {
"Board ID": "Mac-66E35819EE2D0D05",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 13,
@@ -1197,10 +1201,10 @@ smbios_dictionary = {
},
"MacBookPro13,3": {
"Board ID": "Mac-A5C67F76ED83108C",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 15,
@@ -1216,7 +1220,7 @@ smbios_dictionary = {
},
"MacBookPro14,1": {
"Board ID": "Mac-B4831CEBD52A0C4C",
"FirmwareFeatures": "0xFF0FF57E",
"FirmwareFeatures": "0x8FF0FF57E",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1233,7 +1237,7 @@ smbios_dictionary = {
},
"MacBookPro14,2": {
"Board ID": "Mac-CAD6701F7CEA0921",
"FirmwareFeatures": "0xFF0FF57E",
"FirmwareFeatures": "0x8FF0FF57E",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1250,7 +1254,7 @@ smbios_dictionary = {
},
"MacBookPro14,3": {
"Board ID": "Mac-551B86E5744E2388",
"FirmwareFeatures": "0xFF0FF57E",
"FirmwareFeatures": "0x8FF0FF57E",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1269,7 +1273,7 @@ smbios_dictionary = {
},
"MacBookPro15,1": {
"Board ID": "Mac-937A206F2EE63C01",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j680",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1288,7 +1292,7 @@ smbios_dictionary = {
},
"MacBookPro15,2": {
"Board ID": "Mac-827FB448E656EC26",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j132",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1305,7 +1309,7 @@ smbios_dictionary = {
},
"MacBookPro15,3": {
"Board ID": "Mac-1E7E29AD0135F9BC",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j780",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1324,7 +1328,7 @@ smbios_dictionary = {
},
"MacBookPro15,4": {
"Board ID": "Mac-53FDB3D8DB8CA971",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j213",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1341,7 +1345,7 @@ smbios_dictionary = {
},
"MacBookPro16,1": {
"Board ID": "Mac-E1008331FDC96864",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j152f",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1360,7 +1364,7 @@ smbios_dictionary = {
},
"MacBookPro16,2": {
"Board ID": "Mac-5F9802EFE386AA28",
"FirmwareFeatures": "0xFFAFF06E",
"FirmwareFeatures": "0x8FFFFFF7F",
"SecureBootModel": "j214k",
"CPU Generation": cpu_data.cpu_data.ice_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1377,7 +1381,7 @@ smbios_dictionary = {
},
"MacBookPro16,3": {
"Board ID": "Mac-E7203C0F68AA0004",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j223",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1394,7 +1398,7 @@ smbios_dictionary = {
},
"MacBookPro16,4": {
"Board ID": "Mac-A61BADE1FDAD7B05",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j215",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1637,10 +1641,10 @@ smbios_dictionary = {
},
"Macmini7,1": {
"Board ID": "Mac-35C5E08120C7EEAF",
"FirmwareFeatures": "0xE00DE137",
"FirmwareFeatures": "0x8E00DE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.haswell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -1654,7 +1658,7 @@ smbios_dictionary = {
},
"Macmini8,1": {
"Board ID": "Mac-7BA5B2DFE22DDD8C",
"FirmwareFeatures": "0xFD8FF466",
"FirmwareFeatures": "0x8FD8FF466",
"SecureBootModel": "j174",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2137,7 +2141,6 @@ smbios_dictionary = {
"Ethernet Chipset": "Broadcom",
"Stock GPUs": [
device_probe.Intel.Archs.Ivy_Bridge,
device_probe.NVIDIA.Archs.Kepler,
],
"Stock Storage": [
"SATA 3.5",
@@ -2155,7 +2158,6 @@ smbios_dictionary = {
"Ethernet Chipset": "Broadcom",
"Stock GPUs": [
device_probe.Intel.Archs.Haswell,
device_probe.NVIDIA.Archs.Kepler,
],
"Stock Storage": [
"SATA 3.5",
@@ -2255,10 +2257,10 @@ smbios_dictionary = {
},
"iMac16,1": {
"Board ID": "Mac-A369DDC4E67F1C45",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -2272,10 +2274,10 @@ smbios_dictionary = {
},
"iMac16,2": {
"Board ID": "Mac-FFE5EF870D7BA81A",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -2289,16 +2291,17 @@ smbios_dictionary = {
},
"iMac17,1": {
"Board ID": "Mac-DB15BD556843C820",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
"5K Display": True,
"Stock GPUs": [
device_probe.Intel.Archs.Skylake,
device_probe.AMD.Archs.Legacy_GCN_8000,
device_probe.AMD.Archs.Legacy_GCN_9000,
],
"Stock Storage": [
@@ -2308,16 +2311,17 @@ smbios_dictionary = {
},
"iMac17,1_v2": {
"Board ID": "Mac-65CE76090165799A",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
"5K Display": True,
"Stock GPUs": [
device_probe.Intel.Archs.Skylake,
device_probe.AMD.Archs.Legacy_GCN_8000,
device_probe.AMD.Archs.Legacy_GCN_9000,
],
"Stock Storage": [
@@ -2327,16 +2331,17 @@ smbios_dictionary = {
},
"iMac17,1_v3": {
"Board ID": "Mac-B809C3757DA9BB8D",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
"5K Display": True,
"Stock GPUs": [
device_probe.Intel.Archs.Skylake,
device_probe.AMD.Archs.Legacy_GCN_8000,
device_probe.AMD.Archs.Legacy_GCN_9000,
],
"Stock Storage": [
@@ -2346,7 +2351,7 @@ smbios_dictionary = {
},
"iMac18,1": {
"Board ID": "Mac-4B682C642B45593E",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2363,7 +2368,7 @@ smbios_dictionary = {
},
"iMac18,2": {
"Board ID": "Mac-77F17D7DA9285301",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2381,7 +2386,7 @@ smbios_dictionary = {
},
"iMac18,3": {
"Board ID": "Mac-BE088AF8C5EB4FA2",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2400,7 +2405,7 @@ smbios_dictionary = {
},
"iMac19,1": {
"Board ID": "Mac-AA95B1DDAB278B95",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FD8FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2421,7 +2426,7 @@ smbios_dictionary = {
"AAPL_iMac19,1": {
# AppleInternal iMac19,1 unit
"Board ID": "Mac-CF21D135A7D34AA6",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FD8FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2441,7 +2446,7 @@ smbios_dictionary = {
},
"iMac19,2": {
"Board ID": "Mac-63001698E7A34814",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FD8FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2460,7 +2465,7 @@ smbios_dictionary = {
},
"iMac20,1": {
"Board ID": "Mac-CFF7D910A743CAAF",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FFB3F066",
"SecureBootModel": "j185",
"CPU Generation": cpu_data.cpu_data.comet_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2478,7 +2483,7 @@ smbios_dictionary = {
},
"iMac20,2": {
"Board ID": "Mac-AF89B6D9451A490B",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FFB3F066",
"SecureBootModel": "j185f",
"CPU Generation": cpu_data.cpu_data.comet_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2589,7 +2594,9 @@ smbios_dictionary = {
"Ethernet Chipset": "Intel 80003ES2LAN",
"Socketed GPUs": "PCIe",
"Stock GPUs": [
device_probe.AMD.Archs.TeraScale_1
device_probe.AMD.Archs.TeraScale_1,
device_probe.AMD.Archs.Polaris,
],
"Stock Storage": [
"SATA 3.5",
@@ -2607,7 +2614,8 @@ smbios_dictionary = {
"Ethernet Chipset": "Intel 82574L",
"Socketed GPUs": "PCIe",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Tesla
device_probe.NVIDIA.Archs.Tesla,
device_probe.AMD.Archs.Polaris,
],
"Stock Storage": [
"SATA 3.5",
@@ -2624,7 +2632,8 @@ smbios_dictionary = {
"Ethernet Chipset": "Intel 82574L",
"Socketed GPUs": "PCIe",
"Stock GPUs": [
device_probe.AMD.Archs.TeraScale_2
device_probe.AMD.Archs.TeraScale_2,
device_probe.AMD.Archs.Polaris,
],
"Stock Storage": [
"SATA 3.5",
@@ -2632,10 +2641,10 @@ smbios_dictionary = {
},
"MacPro6,1": {
"Board ID": "Mac-F60DEB81FF30ACF6",
"FirmwareFeatures": "0xE90FF576",
"FirmwareFeatures": "0x8E90FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.ivy_bridge.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -2648,7 +2657,7 @@ smbios_dictionary = {
},
"MacPro7,1": {
"Board ID": "Mac-27AD2F918AE68F61",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j160",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2814,7 +2823,7 @@ smbios_dictionary = {
# Apple Silicon Virtual Machine
"Board ID": None,
"FirmwareFeatures": None,
"SecureBootModel": "vma1macos",
"SecureBootModel": "vma1",
"CPU Generation": cpu_data.cpu_data.apple_m1.value,
"Max OS Supported": os_data.os_data.max_os,
"Wireless Model": None,

View File

@@ -42,7 +42,6 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"CoreDisplay.framework": f"10.14.4-{os_major}",
"IOSurface.framework": f"10.15.7-{os_major}",
"QuartzCore.framework": f"10.15.7-{os_major}",
**({ "WebKit.framework": "11.6" } if os_major >= os_data.os_data.monterey else {}),
},
"/System/Library/PrivateFrameworks": {
"GPUSupport.framework": "10.14.3",
@@ -75,12 +74,15 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"GeForce.kext",
"IOAcceleratorFamily2.kext",
"IOGPUFamily.kext",
"AppleAfterburner.kext",
],
},
"Install Non-Root": {
"/Library/Application Support/SkyLightPlugins": {
**({ "DropboxHack.dylib": "SkyLightPlugins" } if os_major >= os_data.os_data.monterey else {}),
**({ "DropboxHack.txt": "SkyLightPlugins" } if os_major >= os_data.os_data.monterey else {}),
**({ "DropboxHack.dylib": "SkyLightPlugins" } if os_major >= os_data.os_data.monterey else {}),
**({ "DropboxHack.txt": "SkyLightPlugins" } if os_major >= os_data.os_data.monterey else {}),
**({ "CatalystButton.dylib": "SkyLightPlugins" } if os_major >= os_data.os_data.monterey else {}),
**({ "CatalystButton.txt": "SkyLightPlugins" } if os_major >= os_data.os_data.monterey else {}),
},
},
"Processes": {
@@ -167,11 +169,15 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
},
# AMD GCN and Nvidia Kepler require Metal Downgrade in Ventura
# The patches are required due to struct issues in the Metal stack
# - AMD GCN will break on BronzeMtlDevice
# - See Nvidia Kepler patchset for more info
"Metal Common": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.monterey,
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
@@ -181,38 +187,97 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
"Install": {
"/System/Library/Frameworks": {
"OpenCL.framework": "11.6",
"WebKit.framework": "11.6",
"Metal.framework": "12.5",
"MetalPerformanceShaders.framework": "12.5",
},
},
},
# Resolve AppleGVACore crashing on MacBookPro11,3 due to mixed GPU combo
# ie. native Haswell iGPU + non-native Kepler dGPU
# This can be remove after 0.4.6 release, as 0.4.5 downgrades to 10.15.7
"GVA Work-Around": {
# Temporary work-around for Kepler GPUs on Ventura
# We removed the reliance on Metal.framework downgrade, however the new Kepler
# patchset breaks with the old Metal. Thus we need to ensure stock variant is used
# Remove this when OCLP is merged onto mainline
"Revert Metal Downgrade": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 99
},
},
"Remove": {
"/System/Library/Frameworks/Metal.framework/Versions/A/": [
"Metal",
"MetalOld.dylib",
],
"/System/Library/Frameworks/MetalPerformanceShaders.framework/Versions/A/Frameworks/MPSCore.framework/Versions/A": [
"MPSCore",
],
},
},
# Monterey has a WebKit sandboxing issue where many UI elements fail to render
# This patch simple replaces the sandbox profile with one supporting our GPUs
# Note: Neither Big Sur nor Ventura have this issue
"WebKit Monterey Common": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.monterey,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.monterey,
"OS Minor": 99
},
},
"Install": {
"/System/Library/Frameworks": {
"WebKit.framework": "11.6"
},
},
"Install Non-Root": {
"/Library/Apple/System/Library/StagedFrameworks/Safari": {
"WebKit.framework": "11.6"
},
},
},
# Intel Ivy Bridge, Haswell and Nvidia Kepler are Metal 3802-based GPUs
# Due to this, we need to re-add 3802 compiler support to the Metal stack
"Metal 3802 Common": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Minor": 99
},
},
"Remove": {
"/System/Library/PrivateFrameworks/AppleGVA.framework/Versions/A": [
"AppleGVA",
],
"/System/Library/PrivateFrameworks/AppleGVACore.framework/Versions/A": [
"AppleGVACore",
],
"Install": {
"/System/Library/Frameworks": {
"Metal.framework": "12.5-3802",
},
"/System/Library/PrivateFrameworks": {
"MTLCompiler.framework": "12.5-3802",
"GPUCompiler.framework": "12.5-3802",
},
"/System/Library/Sandbox/Profiles": {
"com.apple.mtlcompilerservice.sb": "12.5-3802",
}
},
},
"Modern GVA": {
# For GPUs last natively supported in Catalina/Big Sur
# Restores DRM support
"Catalina GVA": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
@@ -232,7 +297,29 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
},
"Legacy GVA": {
# For GPUs last natively supported in Monterey
# Restores DRM support
"Monterey GVA": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Minor": 99
},
},
"Install": {
"/System/Library/PrivateFrameworks": {
"AppleGVA.framework": "12.5",
"AppleGVACore.framework": "12.5",
},
},
},
"High Sierra GVA": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
@@ -252,6 +339,65 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
},
"Big Sur OpenCL": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.monterey,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Minor": 99
},
},
"Install": {
"/System/Library/Frameworks": {
"OpenCL.framework": "11.6",
},
},
},
"Monterey OpenCL": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Minor": 99
},
},
"Install": {
"/System/Library/Frameworks": {
"OpenCL.framework": "12.5",
},
},
},
# In Ventura, Apple added AVX2.0 code to AMD's OpenCL/GL compilers
"AMD OpenCL": {
"Display Name": "",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Minor": 99
},
},
"Install": {
"/System/Library/Frameworks": {
"OpenCL.framework": "12.5 non-AVX2.0",
"OpenGL.framework": "12.5 non-AVX2.0",
},
},
},
"Nvidia Tesla": {
"Display Name": "Graphics: Nvidia Tesla",
"OS Support": {
@@ -292,15 +438,22 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
"Install": {
"/System/Library/Extensions": {
"GeForceAIRPlugin.bundle": "11.0 Beta 3",
"GeForceGLDriver.bundle": "11.0 Beta 3",
"GeForceMTLDriver.bundle": "11.0 Beta 3",
"GeForce.kext": "12.0 Beta 6",
"GeForceVADriver.bundle": "12.0 Beta 6",
"NVDAGF100Hal.kext": "12.0 Beta 6",
"NVDAGK100Hal.kext": "12.0 Beta 6",
"NVDAResman.kext": "12.0 Beta 6",
"NVDAStartup.kext": "12.0 Beta 6",
"GeForceAIRPlugin.bundle": "11.0 Beta 3",
"GeForceGLDriver.bundle": "11.0 Beta 3",
"GeForceMTLDriver.bundle": "11.0 Beta 3" if os_major <= os_data.os_data.monterey else f"11.0 Beta 3-{os_major}",
"GeForceVADriver.bundle": "12.0 Beta 6",
},
"/System/Library/Frameworks": {
# XNU 21.6 (macOS 12.5)
**({ "Metal.framework": "12.5 Beta 2"} if (os_data.os_conversion.is_os_newer(os_data.os_data.monterey, 5, os_major, os_minor) and os_major < os_data.os_data.ventura) else {}),
},
"/System/Library/PrivateFrameworks": {
"GPUCompiler.framework": "11.6",
},
},
},
@@ -471,12 +624,52 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"OS Minor": 99
},
},
"Install Reference": {
"Install": {
"/System/Library/Extensions": {
"AMD7000Controller.kext": "12.4",
"AMD8000Controller.kext": "12.4",
"AMD9000Controller.kext": "12.4",
"AMDRadeonX4000.kext": "12.4",
"AMD7000Controller.kext": "12.5",
"AMD8000Controller.kext": "12.5",
"AMD9000Controller.kext": "12.5",
"AMD9500Controller.kext": "12.5",
"AMDRadeonX4000.kext": "12.5",
"AMDRadeonX4000HWServices.kext": "12.5",
"AMDFramebuffer.kext": "12.5",
"AMDSupport.kext": "12.5",
"AMDRadeonX4000GLDriver.bundle": "12.5",
"AMDMTLBronzeDriver.bundle": "12.5",
"AMDShared.bundle": "12.5",
},
},
"Remove": {
"/System/Library/Extensions": [
# Due to downgraded AMDSupport.kext
# In the future, we will have to downgrade the entire AMD stack
# to support non-AVX2.0 machines with Vega or newer
"AMD10000Controller.kext",
],
},
},
# Used only for AMD Polaris with host lacking AVX2.0
# Note missing framebuffers are not restored (ex. 'ATY,Berbice')
"AMD Legacy Polaris": {
"Display Name": "Graphics: AMD Legacy Polaris",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.ventura,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Minor": 99
},
},
"Install": {
"/System/Library/Extensions": {
"AMDRadeonX4000.kext": "12.5",
"AMDRadeonX4000GLDriver.bundle": "12.5",
"AMDMTLBronzeDriver.bundle": "12.5",
"AMDShared.bundle": "12.5",
},
},
},
@@ -537,9 +730,6 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"OS Minor": 99
},
},
"Processes": {
"defaults write com.apple.coremedia hardwareVideoDecoder -string enable": False,
},
"Install": {
"/System/Library/Extensions": {
"AppleIntelHD4000GraphicsGLDriver.bundle": "11.0 Beta 6",
@@ -564,14 +754,15 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"OS Minor": 99
},
},
"Install Reference": {
"Install": {
"/System/Library/Extensions": {
"AppleIntelFramebufferAzul.kext": "12.4",
"AppleIntelHD5000Graphics.kext": "12.4",
"AppleIntelHD5000GraphicsGLDriver.bundle": "11.0 Beta 6",
"AppleIntelHD5000GraphicsMTLDriver.bundle": "11.0 Beta 6",
"AppleIntelHD5000GraphicsVADriver.bundle": "11.0 Beta 6",
"AppleIntelHSWVA.bundle": "11.0 Beta 6",
"AppleIntelFramebufferAzul.kext": "12.5",
"AppleIntelHD5000Graphics.kext": "12.5",
"AppleIntelHD5000GraphicsGLDriver.bundle": "12.5",
"AppleIntelHD5000GraphicsMTLDriver.bundle": "12.5",
"AppleIntelHD5000GraphicsVADriver.bundle": "12.5",
"AppleIntelHSWVA.bundle": "12.5",
"AppleIntelGraphicsShared.bundle": "12.5",
},
},
},
@@ -587,14 +778,15 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"OS Minor": 99
},
},
"Install Reference": {
"Install": {
"/System/Library/Extensions": {
"AppleIntelBDWGraphics.kext": "12.4",
"AppleIntelBDWGraphicsFramebuffer.kext": "12.4",
"AppleIntelBDWGraphicsGLDriver.bundle": "11.0 Beta 6",
"AppleIntelBDWGraphicsMTLDriver.bundle": "11.0 Beta 6",
"AppleIntelBDWGraphicsVADriver.bundle": "11.0 Beta 6",
"AppleIntelBDWGraphicsVAME.bundle": "11.0 Beta 6",
"AppleIntelBDWGraphics.kext": "12.5",
"AppleIntelBDWGraphicsFramebuffer.kext": "12.5",
"AppleIntelBDWGraphicsGLDriver.bundle": "12.5",
"AppleIntelBDWGraphicsMTLDriver.bundle": "12.5",
"AppleIntelBDWGraphicsVADriver.bundle": "12.5",
"AppleIntelBDWGraphicsVAME.bundle": "12.5",
"AppleIntelGraphicsShared.bundle": "12.5",
},
},
},
@@ -610,21 +802,22 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
"OS Minor": 99
},
},
"Install Reference": {
"Install": {
"/System/Library/Extensions": {
"AppleIntelSKLGraphics.kext": "12.4",
"AppleIntelSKLGraphicsFramebuffer.kext": "12.4",
"AppleIntelSKLGraphicsGLDriver.bundle": "11.0 Beta 6",
"AppleIntelSKLGraphicsMTLDriver.bundle": "11.0 Beta 6",
"AppleIntelSKLGraphicsVADriver.bundle": "11.0 Beta 6",
"AppleIntelSKLGraphicsVAME.bundle": "11.0 Beta 6",
"AppleIntelSKLGraphics.kext": "12.5",
"AppleIntelSKLGraphicsFramebuffer.kext": "12.5",
"AppleIntelSKLGraphicsGLDriver.bundle": "12.5",
"AppleIntelSKLGraphicsMTLDriver.bundle": "12.5",
"AppleIntelSKLGraphicsVADriver.bundle": "12.5",
"AppleIntelSKLGraphicsVAME.bundle": "12.5",
"AppleIntelGraphicsShared.bundle": "12.5",
},
},
},
},
"Audio": {
"Legacy Realtek": {
"Display Name": "Audio: Legacy Realtek Audio",
"Display Name": "Audio: Legacy Realtek",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.sierra,
@@ -654,7 +847,7 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
# For Mac Pros with non-UGA/GOP GPUs
"Legacy Non-GOP": {
"Display Name": "Audio: Legacy non-GOP Audio",
"Display Name": "Audio: Legacy non-GOP",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.mojave,
@@ -673,15 +866,15 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
},
"Networking": {
"Legacy WiFi": {
"Display Name": "Networking: Legacy WiFi",
"Legacy Wireless": {
"Display Name": "Networking: Legacy Wireless",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.monterey,
"OS Minor": 0
},
"Maximum OS Support": {
"OS Major": os_data.os_data.max_os,
"OS Major": os_data.os_data.monterey,
"OS Minor": 99
},
},
@@ -702,8 +895,8 @@ def SystemPatchDictionary(os_major, os_minor, non_metal_os_support):
},
},
"Brightness": {
"Legacy Brightness": {
"Display Name": "Brightness: Legacy Brightness",
"Legacy Backlight Control": {
"Display Name": "Brightness: Legacy Backlight Control",
"OS Support": {
"Minimum OS Support": {
"OS Major": os_data.os_data.high_sierra,

View File

@@ -93,6 +93,15 @@ module.exports = {
},
{
title: 'macOS Ventura',
collapsable: false,
sidebarDepth: 1,
children: [
['VENTURA-DROP', 'macOS Ventura Support'],
]
},
{
title: 'macOS Monterey',
collapsable: false,
sidebarDepth: 1,

View File

@@ -163,8 +163,7 @@ However if your machine does not have the dGPU disabled via NVRAM, you'll experi
2. When command line prompt appears, enter the dGPU disabler argument (at the bottom)
3. Reboot and patched macOS should work normally
4. If you still want to use the dGPU, run OpenCore Legacy Patcher and enable TS2 Acceleration from settings. Then root patch your Mac again
* TUI: `Patcher Settings -> Misc Settings -> TeraScale 2 Accel`
* GUI: `Patcher Settings -> Developer Settings -> Set TeraScale 2 Accel`
`Patcher Settings -> Developer Settings -> Set TeraScale 2 Accel`
5. Either Reset NVRAM or set `gpu-power-prefs` to zeros to re-enable the dGPU
```sh
@@ -184,4 +183,4 @@ A somewhat strange issue on Intel HD3000-based Macs, on 3rd party displays somet
| Default Color Profile | Display/Display P3 Profile |
| :--- | :--- |
| ![](../images/HD3000-Default-Colors.png) | ![](../images/HD3000-Display-Colors.png) |
| ![](../images/HD3000-Default-Colors.png) | ![](../images/HD3000-Display-Colors.png) |

View File

@@ -8,10 +8,6 @@ Main sections of help we'd appreciate:
* Donating any Mac you own
* Does require SSE4,1 CPU to test on Sierra and newer however
* Donating any spare SATA SSDs
* Having extra SSDs on hand allows us to quickly and easily test specific builds of macOS without having to wipe drives and reinstall as much
* Aiding by buying items in our Amazon Wishlist
* Currently we have a few members within Dortania testing so we recommend messaging the email listed below to see which member at the time would require something purchased the most
Additionally, hardware info dumps are greatly beneficial for us to determine what patches a machine might need:

View File

@@ -22,19 +22,13 @@ First we'll want to select the "Create macOS Installer" button. This will presen
For this example, we'll assume you'll need an installer. Selecting this option will download Apple's Installer Catalogs and build a list for you to choose:
| Downloading | Listed Installers |
| :--- | :--- |
| ![OCLP GUI Installer Download Catalog](../images/OCLP-GUI-Installer-Download-Catalog.png) | ![OCLP GUI Installer Download Listed Products](../images/OCLP-GUI-Installer-Download-Listed-Products.png) |
| Downloading | Listed Installers | Unsupported Installer |
| :--- | :--- | :--- |
| ![OCLP GUI Installer Download Catalog](../images/OCLP-GUI-Installer-Download-Catalog.png) | ![OCLP GUI Installer Download Listed Products](../images/OCLP-GUI-Installer-Download-Listed-Products.png) | ![](../images/OCLP-GUI-Installer-Download-Unsupported.png)
Since the patcher officially supports Big Sur and newer for patching, only those entires will be shown. For ourselves, we'll select 12.1 as that's the latest public release at the time of writing. This will download and install the macOS installer to your applications folder.
Since the patcher officially supports Big Sur and newer for patching, only those entires will be shown. For ourselves, we'll select macOS 12 as that's the latest public release at the time of writing. This will download and install the macOS installer to your applications folder.
::: warning
With the release of the M2 MacBooks, Apple made an Apple Silicon only installer labeled "macOS 12.4 (21F2092 - 11.7GB)". Trying to boot this on Intel will not work.
Instead, download "macOS 12.4 (21F79 - 12.1GB)" or newer.
:::
* Note that some machines (namely 2012 and older) may not be currently supported on macOS Ventura. If you see this prompt, you'll need to use an older version of macOS.
| Downloading the Installer | Requesting to install | Finished Installing |
| :--- | :--- | :--- |

View File

@@ -18,10 +18,12 @@ The below table will list all supported and unsupported functions of the patcher
Regarding OS support, see below:
* Machines listing `YES - Monterey and older` means they cannot run macOS Ventura at this time. Machines with only `YES` can run all of the supported macOS versions offered by OpenCore Legacy Patcher.
| Support Entry | Supported OSes | Description | Comment |
| :--- | :--- | :--- | :--- |
| HostOS | macOS 10.9 - macOS 12 | Refers to OSes where running OpenCore-Patcher.app are supported | Supports 10.7+ if [Python 3.9 or higher](https://www.python.org/downloads/) is manually installed, simply run the `OpenCore-Patcher.command` located in the repo |
| TargetOS | macOS 11 - macOS 12 | Refers to OSes that can be patched to run with OpenCore | May support 10.4 and newer (in a potentially broken state). No support provided. |
| HostOS | macOS 10.9 - macOS 13 | Refers to OSes where running OpenCore-Patcher.app are supported | Supports 10.7+ if [Python 3.9 or higher](https://www.python.org/downloads/) is manually installed, simply run the `OpenCore-Patcher.command` located in the repo |
| TargetOS | macOS 11 - macOS 13 | Refers to OSes that can be patched to run with OpenCore | May support 10.4 and newer (in a potentially broken state). No support provided. |
### MacBook
@@ -30,27 +32,30 @@ Regarding OS support, see below:
| MacBook1,1 | Mid-2006 | <span style="color:red"> NO </span> | 32-Bit CPU limitation |
| MacBook2,1 | Late 2006 | ^^ | 32-Bit Firmware limitation |
| MacBook3,1 | Late 2007 | ^^ | ^^ |
| MacBook4,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - No GPU Acceleration in Mavericks and newer<br/>- No Keyboard and Trackpad<br/>- No USB |
| MacBook5,1 | Late 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> |
| MacBook5,2 | Early 2009 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/>- Trackpad is recognized as mouse |
| MacBook6,1 | Late 2009 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> |
| MacBook4,1 | Early 2008 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - No GPU Acceleration in Mavericks and newer<br/>- No Keyboard and Trackpad<br/>- No USB |
| MacBook5,1 | Late 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md))|
| MacBook5,2 | Early 2009 | ^^ | ^^ |
| MacBook6,1 | Late 2009 | ^^ | ^^ |
| MacBook7,1 | Mid-2010 | ^^ | ^^ |
| MacBook8,1 | Mid-2015 | ^^ | <span style="color:green"> Everything is supported</span> |
| MacBook8,1 | Mid-2015 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported</span> |
| MacBook9,1 | Early 2016 | ^^ | ^^ |
### MacBook Air
| SMBIOS | Year | Supported | Comment |
| :--- | :--- | :--- | :--- |
| MacBookAir1,1 | Early 2008 | <span style="color:red"> NO </span> | Requires SSE4.1 CPU |
| MacBookAir2,1 | Late 2008 |<span style="color:#30BCD5"> YES </span> | GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| MacBookAir2,1 | Late 2008 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md))|
| MacBookAir3,1 | Late 2010 | ^^ | ^^ |
| MacBookAir3,2 | ^^ | ^^ | ^^ |
| MacBookAir4,1 | Mid-2011 | ^^ | ^^ |
| MacBookAir4,2 | ^^ | ^^ | ^^ |
| MacBookAir5,1 | Mid-2012 |^^ | <span style="color:green"> Everything is supported</span> |
| MacBookAir5,1 | Mid-2012 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported</span> |
| MacBookAir5,2 | ^^ | ^^ | ^^ |
| MacBookAir6,1 | Mid-2013, Early 2014 | ^^ | ^^ |
| MacBookAir6,2 | ^^ | ^^ | ^^ |
| MacBookAir7,1 | Early-2015, 2017 | ^^ | ^^ |
| MacBookAir7,2 | ^^ | ^^ | ^^ |
### MacBook Pro
@@ -61,7 +66,7 @@ Regarding OS support, see below:
| MacBookPro2,1 | Late 2006 | ^^ | 32-Bit Firmware limitation |
| MacBookPro2,2 | Late 2006 | ^^ | ^^ |
| MacBookPro3,1 | Mid-2007 | ^^ | Requires SSE4.1 CPU |
| MacBookPro4,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| MacBookPro4,1 | Early 2008 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md))|
| MacBookPro5,1 | Late 2008 | ^^ | ^^ |
| MacBookPro5,2 | Early 2009 | ^^ | ^^ |
| MacBookPro5,3 | Mid-2009 | ^^ | ^^ |
@@ -73,13 +78,19 @@ Regarding OS support, see below:
| MacBookPro8,1 | Early 2011 | ^^ | ^^ |
| MacBookPro8,2 | ^^ | ^^ | ^^ |
| MacBookPro8,3 | ^^ | ^^ | ^^ |
| MacBookPro9,1 | Mid-2012 | ^^ | <span style="color:green"> Everything is supported</span> |
| MacBookPro9,1 | Mid-2012 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported</span> |
| MacBookPro9,2 | ^^ | ^^ | ^^ |
| MacBookPro10,1 | Mid-2012, Early 2013 | ^^ | ^^ |
| MacBookPro10,2 | Late 2012, Early 2013 | ^^ | ^^ |
| MacBookPro11,1 | Late 2013, Mid-2014 | ^^ | ^^ |
| MacBookPro11,2 | ^^ | ^^ | ^^ |
| MacBookPro11,3 | ^^ | ^^ | ^^ |
| MacBookPro11,4 | Mid 2015 | ^^ | ^^ |
| MacBookPro11,5 | ^^ | ^^ | ^^ |
| MacBookPro12,1 | Early 2015 | ^^ | ^^ |
| MacBookPro13,1 | Late 2016 | ^^ | ^^ |
| MacBookPro13,2 | ^^ | ^^ | ^^ |
| MacBookPro13,3 | ^^ | ^^ | ^^ |
### Mac mini
@@ -87,13 +98,14 @@ Regarding OS support, see below:
| :--- | :--- | :--- | :--- |
| Macmini1,1 | Early 2006 | <span style="color:red"> NO </span> | 32-Bit CPU limitation |
| Macmini2,1 | Mid-2007 | ^^ | 32-Bit Firmware limitation |
| Macmini3,1 | Early 2009 | <span style="color:#30BCD5"> YES </span> | GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| Macmini3,1 | Early 2009 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) <br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md)) |
| Macmini4,1 | Mid-2010 | ^^ | ^^ |
| Macmini5,1 | Mid-2011 | ^^ | ^^ |
| Macmini5,2 | ^^ | ^^ | ^^ |
| Macmini5,3 | ^^ | ^^ | ^^ |
| Macmini6,1 | Late 2012 | ^^ | <span style="color:green"> Everything is supported</span> |
| Macmini6,1 | Late 2012 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported</span> |
| Macmini6,2 | ^^ | ^^ | ^^ |
| Macmini7,1 | Mid-2014 | ^^ | ^^ |
### iMac
@@ -104,23 +116,26 @@ Regarding OS support, see below:
| iMac5,1 | Late 2006 | ^^ | 32-Bit Firmware limitation |
| iMac5,2 | ^^ | ^^ | ^^ |
| iMac6,1 | ^^ | ^^ | ^^ |
| iMac7,1 | Mid-2007 | <span style="color:#30BCD5"> YES </span> | - Requires an [SSE4.1 CPU Upgrade](https://lowendmac.com/2018/penryn-t9300-9500-cpu-upgrades-for-the-2007-imac/)<br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/>- Stock Bluetooth 2.0 card non-functional |
| iMac8,1 | Early 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))) |
| iMac7,1 | Mid-2007 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - Requires an [SSE4.1 CPU Upgrade](https://lowendmac.com/2018/penryn-t9300-9500-cpu-upgrades-for-the-2007-imac/)<br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/>- Stock Bluetooth 2.0 card non-functional<br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md)) |
| iMac8,1 | Early 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)))<br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md))|
| iMac9,1 | Early 2009 | ^^ | ^^ |
| iMac10,1 | Late 2009 | ^^ | - GPU is socketed, [recommend upgrading to Metal GPU](https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/?post=17425857#post-17425857) <br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| iMac10,1 | Late 2009 | ^^ | - GPU is socketed, [recommend upgrading to Metal GPU](https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/?post=17425857#post-17425857) <br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) <br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md))|
| iMac11,1 | ^^ | ^^ | ^^ |
| iMac11,2 | Mid-2010 | ^^ | ^^ |
| iMac11,3 | ^^ | ^^ | ^^ |
| iMac12,1 | Mid-2011 | ^^ | ^^ |
| iMac12,2 | ^^ | ^^ | ^^ |
| iMac13,1 | Late 2012 | ^^ | <span style="color:green"> Everything is supported</span> |
| iMac13,1 | Late 2012 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported</span> |
| iMac13,2 | ^^ | ^^ | ^^ |
| iMac13,3 | ^^ | ^^ | ^^ |
| iMac14,1 | Late 2013 | ^^ | ^^ |
| iMac14,2 | ^^ | ^^ | ^^ |
| iMac14,3 | ^^ | ^^ | ^^ |
| iMac14,4 | Mid-2014 | ^^ | ^^ |
| iMac15,1 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac15,1 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac16,1 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac16,2 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac17,1 | Late 2015, Early-2016 | ^^ | ^^ |
* For iMac10,1 through iMac12,x, we highly recommend users upgrade the GPU to a Metal supported model. See here for more information: [iMac late 2009 to mid-2011 Graphics Card Upgrade Guide](https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/?post=17425857#post-17425857)
@@ -130,16 +145,17 @@ Regarding OS support, see below:
| :--- | :--- | :--- | :--- |
| MacPro1,1 | Mid-2006 | <span style="color:red"> NO </span> | 32-Bit Firmware limitation |
| MacPro2,1 | Mid-2007 | ^^ | ^^ |
| MacPro3,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - Potential boot issues with built-in USB 1.1 ports (recommend using a USB 2.0 hub or dedicated USB PCIe controller)<br/>- Potential boot issues with stock Bluetooth card, recommend removing to avoid kernel panics |
| MacPro4,1 | Early 2009 | ^^ | <span style="color:green"> Everything is supported as long as GPU is Metal capable </span> |
| MacPro3,1 | Early 2008 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - Potential boot issues with built-in USB 1.1 ports (recommend using a USB 2.0 hub or dedicated USB PCIe controller) <br/>- Potential boot issues with stock Bluetooth card, recommend removing to avoid kernel panics |
| MacPro4,1 | Early 2009 | ^^ | - Everything is supported as long as GPU is Metal capable <br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md)) |
| MacPro5,1 | Mid-2010, Mid-2012 | ^^ | ^^ |
| MacPro6,1 | Late 2013 | ^^ | - CPU Power Management currently unsupported<br/> - No DRM support |
### Xserve
| SMBIOS | Year | Supported | Comment |
| :--- | :--- | :--- | :--- |
| Xserve1,1 | Mid-2006 | <span style="color:red"> NO </span> | 32-Bit Firmware limitation |
| Xserve2,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported as long as GPU is Metal capable </span> |
| Xserve2,1 | Early 2008 | <span style="color:#30BCD5"> YES - Monterey and older</span> | - Everything is supported as long as GPU is Metal capable <br/> - Supports macOS Monterey and older ([Ventura support in development](./VENTURA-DROP.md))|
| Xserve3,1 | Early 2009 | ^^ | ^^ |
# Once you've verified your hardware is supported, head to [Download and build macOS Installers](./INSTALLER.md)

View File

@@ -1,7 +1,7 @@
![](../images/macos-monterey.png)
With OpenCore Legacy Patcher v0.1.7 and newer, we've implemented beta macOS Monterey support for users. Please note that Apple has dropped a lot of hardware with this release as well as broken many of our previous patch sets. This page will be used to inform users regarding current issues and will be updated as new patch sets are developed and added to our patcher.
## Newly dropped hardware
With Monterey, Apple continues their their somewhat ruthless march of dropping Intel hardware. This release saw the removal, and thus addition into OpenCore Legacy Patcher, of the following models:
@@ -29,7 +29,7 @@ With Monterey, Apple continues their their somewhat ruthless march of dropping I
* MacBook Pro (Retina, 13-inch, Mid 2014)
* MacBook Pro (Retina, 15-inch, Mid 2014)
:::
:::
All of these models now have support in OpenCore Legacy Patcher.
@@ -43,7 +43,7 @@ Due to the display being routed through the NVIDIA Kepler card and macOS being r
::: details iMac15,1 5K Display Output Issue (Resolved in 0.3.2 and newer)
* Documentation:
* Documentation:
* [5K iMac and UEFI: Fixing the dreaded output limitation](https://khronokernel.github.io/macos/2021/12/08/5K-UEFI.html)
* Associated Github Issue:
* [5k Output issues on iMac15,1 (27" 5k iMac - 2014) #359](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/359)
@@ -79,7 +79,7 @@ The following models lost Wifi support in macOS Monterey due to their legacy Wir
* MacBookPro6,x is exempt
* MacPro5,1 and older
Note: BCM943224, BCM94331, BCM94360 and BCM943602 are still fully support by OpenCore Legacy Patcher
Note: BCM943224, BCM94331, BCM94360 and BCM943602 are still fully supported by OpenCore Legacy Patcher
:::
@@ -96,7 +96,7 @@ The following models lost Bluetooth support in macOS Monterey due to their legac
* MacBookPro8,1 and older
* MacPro5,1 and older
Note: Native BRCM20702 and BRCM20703 are still fully support by OpenCore Legacy Patcher
Note: Native BRCM20702 and BRCM20703 are still fully supported by OpenCore Legacy Patcher
::: details Dropped Firmwares

View File

@@ -33,17 +33,17 @@ Once you've toggled them both off, build your OpenCore EFI once again and instal
## Enabling SIP
For many users, SIP will be enabled by default on build. For Intel HD 4000 users, you may have noticed that SIP is partially disabled. This is to ensure full compatibility with macOS Monterey and allow seamless booting between it and older OSes. However for users who do not plan to boot Monterey, you can re-enable under Patcher Settings.
For many users, SIP will be lowered by default on build. For Intel HD 4000 users, you may have noticed that SIP is partially disabled. This is to ensure full compatibility with macOS Monterey and allow seamless booting between it and older OSes. However for users who do not plan to boot Monterey, you can re-enable under Patcher Settings.
Note: Machines with non-Metal GPUs cannot enable SIP in Big Sur either, due to having a patched root volume
Note: Machines running macOS Ventura or systems with non-Metal GPUs cannot enable SIP outright, due to having a patched root volume. Enabling will brick the installation.
| SIP Enabled | SIP Lowered (Root Patching) | SIP Disabled |
| :--- | :--- | :--- |
| ![](../images/OCLP-GUI-Settings-SIP-Enabled.png) | ![](../images/OCLP-GUI-Settings-SIP-Root-Patch.png) | ![](../images/OCLP-GUI-Settings-SIP-Disabled.png) |
:::warning
:::warning
If you're unsure whether you should enable SIP, leave it as-is. Systems where you have already ran the Post Install Root Patching cannot enable SIP without potentially breaking the current install.
If you're unsure whether you should enable SIP, leave it as-is. Systems where you have already ran the Post Install Root Patching cannot enable SIP without potentially breaking the current install.
:::
@@ -69,7 +69,7 @@ In OCLP v0.4.5 a new indicator was added to help users to see if, when and on wh
### Running Post Install patches manually
If you're using OCLP v0.4.3 or earlier, or need to run the patcher manually, you can do so with the app. There is no harm in trying to run the Patcher, as without compatible hardware, nothing will be done. You can see below on whether your hardware needs root volume patching or not.
If you're using OCLP v0.4.3 or earlier, or need to run the patcher manually, you can do so with the app. There is no harm in trying to run the Patcher, as without compatible hardware, nothing will be done. You can see below on whether your hardware needs root volume patching or not.
| Listing Patches | Patching Finished |
| :--- | :--- |
@@ -78,13 +78,22 @@ If you're using OCLP v0.4.3 or earlier, or need to run the patcher manually, you
:::warning
With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a network connection by default to grab associated resources. If your system is having difficulties with Wi-Fi or ethernet, you can grab the newest release :
With macOS Ventura and Macs with AMD Legacy GCN GPUs (ie. Metal), Root Patching requires a network connection to grab Apple's Kernel Debug Kit to start root patching. If your system is unable to connect to the internet, you can manually download a KDK from Apple's site:
* [OpenCore Legacy Patcher releases](https://github.com/dortania/OpenCore-Legacy-Patcher/releases/latest)
* [Apple's Developer Download Page](https://developer.apple.com/download/all/?q=Kernel%20Debug%20Kit)
Grab the closet Kernel Debug Kit to the OS you installed, and install it to the machine running Ventura.
Machines that require this are those with AMD Metal dGPUs:
* 2008 - 2013 Mac Pros (MacPro3,1 - 6,1)
* 2009 - 2016 iMacs (iMac10,1 - 17,1)
* 2015 15" MacBook Pro with a dGPU (MacBookPro11,5)
:::
:::details Unsupported GPUs in macOS Big Sur
Below entires represent GPUs no longer natively supported, ie. requiring root volume patch with OpenCore Legacy Patcher:
:::details GPUs requiring patching in macOS Big Sur
* NVIDIA:
* Tesla (8000 - 300 series)
@@ -96,7 +105,7 @@ With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a
:::
:::details Unsupported GPUs in macOS Monterey
:::details GPUs requiring patching in macOS Monterey
* NVIDIA:
* Tesla (8000 - 300 series)
@@ -110,7 +119,7 @@ With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a
:::
:::details Unsupported Wireless Cards in macOS Monterey
:::details Wireless Cards requiring patching in macOS Monterey
* Broadcom:
* BCM94328
@@ -118,3 +127,18 @@ With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a
* Atheros
:::
:::details GPUs requiring patching in macOS Ventura
* NVIDIA:
* Kepler (600 - 800 series)
* AMD:
* GCN 1-3 (7000 - R9 series)
* Polaris (RX 4xx/5xx series, if CPU lacks AVX2)
* Intel:
* Ivy Bridge (4000 series)
* Haswell (4400, 4600, 5000 series)
* Broadwell (6000 series)
* Skylake (500 series)
:::

View File

@@ -1,6 +1,6 @@
# Tested Models on OpenCore Legacy Patcher
To aid users in troubleshooting, we've compiled a list of users who've reported success with OpenCore Legacy patcher as well as the version used. This should aid users in verifying whether issues with the patcher are regression-related with newer versions.
To aid users in troubleshooting, we've compiled a list of users who've reported success with OpenCore Legacy Patcher as well as the version used. This should aid users in verifying whether issues with the patcher are regression-related with newer versions.
::: details MacBook
@@ -20,7 +20,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details MacBook Air
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacBookAir2,1 | <span style="color:#30BCD5"> YES </span> | Bruno | Stock | 0.4.5 | Slow to the point of being unusable. |
| MacBookAir3,1 | ^^ | uvesten | Stock | 0.3.3 | N/A |
| MacBookAir3,2 | ^^ | houser42 | ^^ | Unknown | ^^ |
@@ -39,12 +39,12 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details MacBook Pro
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacBookPro4,1 | <span style="color:#30BCD5"> YES </span> | cboukouv | Stock | 0.0.19 | N/A |
| MacBookPro5,1 | ^^ | GURU_Jasho#5736 | ^^ | 0.0.21 | ^^ |
| MacBookPro5,2 | ^^ | hvds | ^^ | ^^ | ^^ |
| MacBookPro5,3 | ^^ | kommtzeitkonrad | ^^ | 0.0.22 | ^^ |
| MacBookPro5,4 | <span style="color:red"> NO </span> | N/A | N/A | N/A | ^^ |
| MacBookPro5,4 | <span style="color:red"> NO </span> | N/A | N/A | N/A | ^^ |
| MacBookPro5,5 | <span style="color:#30BCD5"> YES </span> | ASentientHedgehog | Stock | - | ^^ |
| ^^ | ^^ | ParaDoX1994 | Stock | 0.4.5 | Camera/Bluetooth not working (connector broken) |
| MacBookPro6,1 | <span style="color:red"> NO </span> | N/A | N/A | N/A | N/A |
@@ -62,7 +62,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
| ^^ | ^^ | LIPA85 | ^^ | ^^ | ^^ |
| MacBookPro9,2 | <span style="color:#30BCD5"> YES </span> | alexx17xx | ^^ | ^^ | ^^ |
| ^^ | ^^ | Arvxistanx | ^^ | ^^ | ^^ |
| ^^ | ^^ | CyberDroid1 | ^^ | 0.0.16 | ^^ |
| ^^ | ^^ | CyberDroid1 | ^^ | 0.0.16 | ^^ |
| ^^ | ^^ | woefi | Upgraded | 0.0.13 | Upgraded BCM94331CAX |
| ^^ | ^^ | whgmkeller | Stock | 0.0.11 | N/A |
| ^^ | ^^ | vinaypundith | Unknown | 0.0.7 | ^^ |
@@ -79,13 +79,13 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details Mac mini
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Macmini3,1 | <span style="color:#30BCD5"> YES </span> | ASentientHedgehog | Stock | N/A | N/A |
| Macmini4,1 | <span style="color:#30BCD5"> YES </span> | Towster15#6369 | ^^ | 0.4.4 | Does not have internal SATA cable, booted and installed to SSD over USB 2.0 instead |
| ^^ | ^^ | MykolaG | ^^ | 0.4.5 | SD card reader possibly broken. |
| Macmini5,1 | <span style="color:#30BCD5"> YES </span> | MykolaG | ^^ | 0.4.5 | N/A |
| Macmini5,2 | ^^ | charly-black | ^^ | 0.3.1 | ^^ |
| ^^ | ^^ | MykolaG | ^^ | 0.4.5 | SD card reader possibly broken. |
| ^^ | ^^ | MykolaG | ^^ | 0.4.5 | SD card reader possibly broken. |
| Macmini5,3 | <span style="color:red"> NO </span> | N/A | N/A | N/A | N/A |
| Macmini6,1 | <span style="color:#30BCD5"> YES </span> | cicofz | Stock | 0.0.21 | ^^ |
| ^^ | ^^ | Stig124 | ^^ | 0.0.19 | ^^ |
@@ -99,7 +99,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details iMac
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| iMac7,1 | <span style="color:#30BCD5"> YES </span> | lulujyc | Upgraded | 0.3.1 | Upgraded with BCM94352HMB <br><br> The USB 1.1 controller is unstable on Big Sur+, using USB hubs (forcing USB 2.0) can fix unrecognized keyboard/ mouse. |
| iMac8,1 | <span style="color:#30BCD5"> YES </span> | EduCovas | Stock | 0.0.21 | N/A |
| iMac9,1 | <span style="color:#30BCD5"> YES </span> | Allanrfox | ^^ | ^^ | ^^ |
@@ -128,7 +128,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details Mac Pro
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacPro3,1 | <span style="color:#30BCD5"> YES </span> | MykolaG | Upgraded | 0.1.6 | Upgraded RX 470 and BCM94360CD.<br/>Stock Bluetooth card removed. |
| ^^ | ^^ | christiann | ^^ | 0.0.21 | Upgraded RX 560 and BCM94322.<br/>Stock Bluetooth card removed. |
| ^^ | ^^ | gw463 | ^^ | 0.0.22 | Upgraded GTX 680 and BCM94360 |

View File

@@ -1,3 +1,4 @@
# Universal Control on unsupported Macs
Introduced in macOS 12 Monterey, Universal Control is a feature that allows a Mac to control other Macs and/or iPads, share input devices, and share files across them simultaneously. With OpenCore and FeatureUnlock, Universal Control can be unlocked for most unsupported Macs, as long as they meet the technical requirements listed on this page.
@@ -202,11 +203,50 @@ Before we continue, please keep in mind that SMBIOS Spoofing is an advanced feat
### How to spoof
Firstly, run the GUI version of OpenCore Legacy Patcher, go to **Settings** and tick **Allow native models**.
Ventura has dropped more models which includes all of the blacklisted Macs in question, making the procedure slightly different. It is important to follow the guide for the version you're on, failing to do so is likely to cause boot issues.
**Note:** Unless you are building OpenCore on a different machine than it's targeted for, **do not** change the model in the main settings view. It is important to understand that OCLP targets this model regardless of what you may have spoofed to, as your Mac is still what the Native SMBIOS shows.
::: details macOS Ventura
Secondly, go to **SMBIOS Settings**, tick **Allow Native Spoofs**, set SMBIOS Spoof Level to **Moderate**. Set SMBIOS Spoof Model to **one listed next to your native model in the table for spoofed models below.**
Firstly run the GUI version of OpenCore Legacy Patcher.
Then go to **Settings**, go to **SMBIOS Settings**, set SMBIOS Spoof Level to **Moderate**. Set SMBIOS Spoof Model **one listed next to your native model in the table for spoofed models below.**
Notice that "Allow native models" and "Allow Native Spoofs" **are NOT** enabled unlike on Monterey, this is on purpose. They are no longer relevant on Ventura and enabling them will cause boot issues.
| Main Settings view | SMBIOS settings |
| :--- | :--- |
| ![](../images/ventura_uc1.png) | ![](../images/ventura_uc2.png) |
::: details Table for spoofed models (click to expand)
Spoofing to any model with native Ventura support should work, but these are the earliest Macs natively supported by Ventura and thus chosen for the sake of simplicity.
**Reminder:** Macs that are not listed on this table work without spoofing, including systems that do not natively support Ventura as long as the other requirements are met, since they aren't blacklisted.
| Mac by name | Native SMBIOS | Spoof SMBIOS | Tested | Tested by |
|-------------|---------------|--------------|--------|-----------|
| MacBook Air Early 2015 11" / 13" | MacBookAir7,x | MacBookAir8,1 | <span style="color:red"> NO </span> | N/A |
| MacBook Pro Early 2015 13" | MacBookPro12,x | MacBookPro14,1 | ^^ | ^^ |
| MacBook Pro Mid 2015 15" | MacBookPro11,4 / 11,5 | MacBookPro14,3 | ^^ | ^^
| iMac Late 2015 21" | iMac16,x | iMac18,2 | ^^ | ^^
| Mac mini Late 2014 | Macmini7,x | MacMini8,1 | <span style="color:red"> NO </span> | N/A |
| Mac Pro Late 2013 | MacPro6,x | MacPro7,1 | <span style="color:red"> NO </span> | N/A |
:::
::: details macOS Monterey
Firstly, run the GUI version of OpenCore Legacy Patcher. Secondly, go to **Settings** and tick **Allow native models**.
Then, go to **SMBIOS Settings**, tick **Allow Native Spoofs**, set SMBIOS Spoof Level to **Moderate**. Set SMBIOS Spoof Model to **one listed next to your native model in the table for spoofed models below.**
| Main Settings view | SMBIOS settings |
| :--- | :--- |
| ![](../images/OCLP-allow-native-models.png) | ![](../images/OCLP-smbios-settings.png) |
::: details Table for spoofed models (click to expand)
@@ -227,12 +267,9 @@ Any model after the list of officially blacklisted Macs should be supported, but
:::
| Main Settings view | SMBIOS settings |
| :--- | :--- |
| ![](../images/OCLP-allow-native-models.png) | ![](../images/OCLP-smbios-settings.png) |
**Note:** Unless you are building OpenCore on a different machine than it's targeted for, **do not** change the model in the main settings view. It is important to understand that OCLP targets this model regardless of what you may have spoofed to, as your Mac is still what the Native SMBIOS shows.
Build and install OpenCore again, and reboot back to the OS. Enable Universal Control as explained in the [Enabling Universal Control section.](#enabling-universal-control)
Lastly, Build and install OpenCore again, and reboot back to the OS. Enable Universal Control as explained in the [Enabling Universal Control section.](#enabling-universal-control)

147
docs/VENTURA-DROP.md Normal file
View File

@@ -0,0 +1,147 @@
![](../images/ventura.png)
With the release of OpenCore Legacy Patcher v0.5.0 and newer, early support for macOS Ventura has been implemented for most Metal-capable Macs. This page will be used to inform users regarding current issues and will be updated as new patch sets are developed and added to our patcher.
## Newly dropped hardware
Ventura's release dropped a large amount of Intel hardware, thus requiring the usage of OpenCore Legacy Patcher on the following models (in addition to previously removed models):
* iMac16,1 (21.5-inch, Late 2015)
* iMac16,2 (21.5-inch 4K, Late 2015)
* iMac17,1 (27-inch 5K, Late 2015)
* MacBook9,1 (12-inch, Early 2016)
* MacBookAir7,1 (11-inch, Early 2015)
* MacBookAir7,2 (13-inch, Early 2015)
* MacBookPro11,4 (15-inch, Mid 2015, iGPU)
* MacBookPro11,5 (15-inch, Mid 2015, dGPU)
* MacBookPro12,1 (13-inch, Early 2015)
* MacBookPro13,1 (13-inch, Late 2016)
* MacBookPro13,2 (13-inch, Late 2016)
* MacBookPro13,3 (15-inch, Late 2016)
* Macmini7,1 (Late 2014)
* MacPro6,1 (Late 2013)
## Current status
Overall, macOS Ventura is useable on most Metal-capable machines (ie. 2012 and newer). The graphics patches implemented have near feature parity to macOS Monterey, with patches still being under heavy development. See [Legacy Metal Graphics Support and macOS Ventura #1008](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1008) issue for more information.
<img width="625" alt="" src="../images/OCLP-051-Initial-Support.png">
For older hardware, see below sections:
* [Currently Unsupported/Broken Hardware in Ventura](#currently-unsupportedbroken-hardware-in-ventura)
* [AMD Polaris, Vega and Navi support on pre-2019 Mac Pros and pre-2012 iMacs](#amd-polaris-vega-and-navi-support-on-pre-2019-mac-pros-and-pre-2012-imacs)
* [Non-Metal Graphics Acceleration](#non-metal-graphics-acceleration)
* [Legacy Wireless Support](#legacy-wireless-support)
* [USB 1.1 (OHCI/UHCI) Support](#usb-11-ohciuhci-support)
* [Ethernet issue with Early 2008 Mac Pro](#ethernet-issue-with-early-2008-mac-pro)
The team is doing their best to investigate and fix the aforementioned issues, however no estimated time can be provided.
## Currently Unsupported/Broken Hardware in Ventura
### AMD Polaris, Vega and Navi support on pre-2019 Mac Pros and pre-2012 iMacs
For users with 2008 to 2013 Mac Pros (MacPro3,1-6,1) and 2009 to 2011 iMacs (iMac9,1-12,2), keep in mind macOS Ventura now requires [AVX2.0 support in the CPU](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2) for native graphics acceleration. Thus while your GPU may be natively supported, you cannot run Ventura officially with these GPUs.
* CPUs supporting AVX2.0 are Haswell or newer, which no pre-2019 Mac Pros can be upgraded with.
Currently at this time, OpenCore Legacy Patcher only supports patching the AMD Polaris Graphics stack to no longer require AVX2.0. However due to lack of hardware on-hand, we cannot support Navi on Ventura.
* If you have spare Navi GPU you'd like to donate, feel free to reach out: khronokernel@icloud.com
* Thanks to a gracious user, we've gotten an AMD Vega 64 on-hand for testing. No time estimate can be provided for Vega support at this time.
Additionally, the native stack will crash over and over on macOS Ventura as it fails to load the AVX2.0-based binaries. Thus to patch Ventura, you will need to boot in Safe Mode and run OCLP's Root Volume Patcher
* To enter Safe Mode, hold Shift+Enter when selecting Ventura in OCLP's Boot Picker
Following GPUs are applicable:
| GPU Architecture | Model Families | Supported |
| :--- | :--- | :--- |
| AMD Polaris | RX 4xx/5xx (10/20 series) | <span style="color:#30BCD5"> Supported with patching </span> |
| AMD Vega | Vega 56/64/VII (10/20 series) | <span style="color:red"> Unsupported </span> |
| AMD Navi | RX 5xxx/6xxx (10/20 series) | ^^ |
### Non-Metal Graphics Acceleration
Regarding non-Metal, the team is hard at work to get non-Metal working, however this is our greatest challenge since Big Sur.
Apple has made significant changes to the graphics stack in order to facilitate fancy effects, and in particularly, Stage Manager. We will update you as we work on development, however, now is not the best time to ask about ETAs.
The following GPUs are applicable:
* NVIDIA:
* Tesla (8000 - 300 series)
* AMD:
* TeraScale (2000 - 6000 series)
* Intel:
* Iron Lake
* Sandy Bridge (2000 - 3000 series)
The following machines shipped stock with an unsupported GPU:
::: warning Systems shipped with non-Metal Graphics Cards
* iMac7,1 - iMac12,x
* MacBook4,1 - MacBook7,1
* MacBookAir2,1 - MacBookAir4,x
* MacBookPro4,1 - MacBookPro8,x
* Macmini3,1 - Macmini5,x
* MacPro3,1 - MacPro5,1
* Xserve2,1 - Xserve3,1
:::
### Legacy Wireless Support
For systems that required Root Patches in macOS Monterey to achieve Wireless support, unfortunately macOS Ventura has broken the patch set. Currently the following Wifi cards are unsupported:
* Atheros: All models
* Broadcom: BCM94328 and BCM94322
The following machines shipped stock with these cards:
::: warning Systems shipped with applicable cards
* iMac12,x and older
* Macmini3,1 and older
* MacBook5,x and older
* MacBookAir2,1 and older
* MacBookPro7,1 and older
* MacBookPro6,x is exempt
* MacPro5,1 and older
:::
Currently BCM943224, BCM94331, BCM94360 and BCM943602 are still fully supported by OpenCore Legacy Patcher. Consider upgrading to these cards if possible.
### USB 1.1 (OHCI/UHCI) Support
For Penryn systems and pre-2013 Mac Pros, USB 1.1 support was outright removed in macOS Ventura. While USB 1.1 may seem unimportant, it handles many important devices on your system. These include:
* Keyboard and Trackpad for laptops
* IR Receivers
* Bluetooth
::: warning The following systems rely on USB 1.1
* iMac10,x and older
* Macmini3,1 and older
* MacBook7,1 and older
* MacBookAir3,1 and older
* MacBookPro7,1 and older
* MacBookPro6,x is exempt
* MacPro5,1 and older
:::
### Ethernet issue with Early 2008 Mac Pro
MacPro3,1 suffers from Ethernet driver dying after returning from sleep, current workaround is to use a USB Ethernet adapter or disable sleep.

View File

@@ -15,8 +15,12 @@ import threading
from pathlib import Path
import binascii
import hashlib
from datetime import datetime
import py_sip_xnu
from resources import constants, defaults, build, install, installer, sys_patch_download, utilities, sys_patch_detect, sys_patch, run, generate_smbios, updates, integrity_verification, global_settings
from resources import constants, defaults, install, installer, utilities, run, generate_smbios, updates, integrity_verification, global_settings, kdk_handler
from resources.sys_patch import sys_patch_download, sys_patch_detect, sys_patch, sys_patch_auto
from resources.build import build
from data import model_array, os_data, smbios_data, sip_data
from gui import menu_redirect, gui_help
@@ -53,7 +57,7 @@ class wx_python_gui:
self.app = wx.App()
if frame is None:
self.frame = wx.Frame(
None, title="OpenCore Legacy Patcher",
None, title=f"OpenCore Legacy Patcher ({self.constants.patcher_version})",
size=(self.WINDOW_WIDTH_MAIN, self.WINDOW_HEIGHT_MAIN),
style = wx.DEFAULT_FRAME_STYLE & ~(wx.RESIZE_BORDER | wx.MAXIMIZE_BOX)
)
@@ -182,10 +186,108 @@ class wx_python_gui:
# Spawn thread to check for updates
threading.Thread(target=self.check_for_updates).start()
def check_for_local_installs(self, event=None):
# Update app in '/Library/Application Support/Dortania' folder
# Skip if we're running from source
if self.constants.launcher_script:
return False
# Only performed if application is already installed (ie. we're updating)
application_path = Path("/Library/Application Support/Dortania/OpenCore-Patcher.app")
if not application_path.exists():
return False
# Check application version
# If we're older than the installed version, skip
application_plist_path = application_path / "Contents/Info.plist"
if not application_plist_path.exists():
return False
application_plist = plistlib.load(application_plist_path.open("rb"))
if not "CFBundleShortVersionString" in application_plist:
return False
application_version = application_plist["CFBundleShortVersionString"].split(".")
local_version = self.constants.patcher_version.split(".")
if application_version == local_version:
if "Build Date" not in application_plist:
return False
# Check build date of installed version
plist_path = self.constants.launcher_binary.replace("MacOS/OpenCore-Patcher", "Info.plist")
if not Path(plist_path).exists():
return False
plist = plistlib.load(Path(plist_path).open("rb"))
if "Build Date" not in plist:
return False
if plist["Build Date"] == application_plist["Build Date"]:
return False
local_build_date = datetime.strptime(plist["Build Date"], "%Y-%m-%d %H:%M:%S")
installed_build_date = datetime.strptime(application_plist["Build Date"], "%Y-%m-%d %H:%M:%S")
if local_build_date <= installed_build_date:
return False
elif updates.check_binary_updates(self.constants).check_if_build_newer(local_version, application_version) is False:
return False
# Ask user if they want to move the application to the Applications folder
self.popup = wx.MessageDialog(
self.frame,
f"We've detected an old version of OpenCore-Patcher.app installed in the Application Support directory.\n\nWould you like to replace it with this version?",
"Move to Applications?",
wx.YES_NO | wx.ICON_INFORMATION
)
self.popup.SetYesNoLabels("Replace", "Ignore")
answer = self.popup.ShowModal()
if answer != wx.ID_YES:
return False
path = str(self.constants.launcher_binary).split("/Contents/MacOS/OpenCore-Patcher")[0]
args = [
"osascript",
"-e",
f'''do shell script "ditto {path} '/Library/Application Support/Dortania/OpenCore-Patcher.app'"'''
' with prompt "OpenCore Legacy Patcher needs administrator privileges to copy in."'
" with administrator privileges"
" without altering line endings",
]
result = subprocess.run(args,stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if result.returncode != 0:
print("- Failed to move application into /Library/Application Support/Dortania/OpenCore-Patcher.app")
# Notify user we failed to move the application
self.popup = wx.MessageDialog(
self.frame,
f"Failed to move the application to the Applications folder.\n\nThis is likely due to permission errors, you can copy the app manually into '/Library/Application Support/Dortania/OpenCore-Patcher.app' if you continue to see this error.",
"Failed to Move!",
style = wx.OK | wx.ICON_EXCLAMATION
)
self.popup.ShowModal()
return False
subprocess.run(["xattr", "-cr", "/Library/Application Support/Dortania/OpenCore-Patcher.app"], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
subprocess.run(["open", "/Library/Application Support/Dortania/OpenCore-Patcher.app"], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
if "AppTranslocation" not in path:
subprocess.run(["rm", "-R", path], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
self.OnCloseFrame()
def check_for_updates(self, event=None):
if self.constants.has_checked_updates is True:
return
did_find_update = False
ignore_updates = global_settings.global_settings().read_property("IgnoreAppUpdates")
if ignore_updates is not True:
self.constants.ignore_updates = False
self.constants.has_checked_updates = True
dict = updates.check_binary_updates(self.constants).check_binary_updates()
if dict:
for entry in dict:
@@ -200,6 +302,7 @@ class wx_python_gui:
)
self.dialog.SetYesNoCancelLabels("View on Github", "Always Ignore", "Ignore Once")
response = self.dialog.ShowModal()
did_find_update = True
if response == wx.ID_YES:
webbrowser.open(github_link)
elif response == wx.ID_NO:
@@ -210,6 +313,9 @@ class wx_python_gui:
self.constants.ignore_updates = True
print("- Ignoring App Updates due to defaults")
# if did_find_update is False:
# self.check_for_local_installs()
def relaunch_as_root(self, event=None):
# Add Dialog Box asking if it's ok to relaunch as root
@@ -233,7 +339,7 @@ class wx_python_gui:
if event:
if event.GetEventObject() != wx.Menu:
try:
if event.GetEventObject().GetLabel() == "Start Root Patching":
if event.GetEventObject().GetLabel() in ["Start Root Patching", "Reinstall Root Patches"]:
extension = " --gui_patch"
elif event.GetEventObject().GetLabel() == "Revert Root Patches":
extension = " --gui_unpatch"
@@ -343,7 +449,7 @@ class wx_python_gui:
self.reset_window()
# Set header text
self.frame.SetTitle(f"OpenCore Legacy Patcher")
self.frame.SetTitle(f"OpenCore Legacy Patcher ({self.constants.patcher_version})")
# Header
self.header = wx.StaticText(self.frame, label=f"OpenCore Legacy Patcher v{self.constants.patcher_version}")
self.header.SetFont(wx.Font(18, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD))
@@ -623,7 +729,7 @@ class wx_python_gui:
while self.is_unpack_finished() is False:
time.sleep(0.1)
build.BuildOpenCore(self.constants.custom_model or self.constants.computer.real_model, self.constants).build_opencore()
build.build_opencore(self.constants.custom_model or self.constants.computer.real_model, self.constants).build_opencore()
# Once finished, change build_opencore button to "Install OpenCore"
self.build_opencore.SetLabel("🔩 Install OpenCore")
self.build_opencore.Bind(wx.EVT_BUTTON, self.install_menu)
@@ -775,7 +881,7 @@ class wx_python_gui:
self.return_to_main_menu.SetPosition(
wx.Point(
self.reload_button.GetPosition().x,
self.reload_button.GetPosition().y + self.reload_button.GetSize().height + 7.5
self.reload_button.GetPosition().y + self.reload_button.GetSize().height + 8
)
)
self.return_to_main_menu.Bind(wx.EVT_BUTTON, self.main_menu)
@@ -881,7 +987,49 @@ class wx_python_gui:
self.frame_modal.SetSize(-1, self.return_to_main_menu.GetPosition().y + self.return_to_main_menu.GetSize().height + 20)
if result is True:
self.reboot_system(message="OpenCore has finished installing to disk.\n\nYou will need to reboot and hold the Option key and select OpenCore/Boot EFI's option.\n\nWould you like to reboot?")
if not self.constants.custom_model:
self.reboot_system(message="OpenCore has finished installing to disk.\n\nYou will need to reboot and hold the Option key and select OpenCore/Boot EFI's option.\n\nWould you like to reboot?")
else:
popup_message = wx.MessageDialog(self.frame,f"OpenCore has finished installing to disk.\n\nYou can eject the drive, insert it into the {self.constants.custom_model}, reboot, hold the Option key and select OpenCore/Boot EFI's option.", "Success", wx.OK)
popup_message.ShowModal()
def check_if_new_patches_needed(self, patches):
# Check if there's any new patches for the user to install
# Newer users will assume the root patch menu will present missing patches.
# Thus we'll need to see if the exact same OCLP build was used already
if self.constants.commit_info[0] in ["Running from source", "Built from source"]:
return True
if self.constants.computer.oclp_sys_url != self.constants.commit_info[2]:
# If commits are different, assume patches are as well
return True
oclp_plist = "/System/Library/CoreServices/OpenCore-Legacy-Patcher.plist"
if not Path(oclp_plist).exists():
# If it doesn't exist, no patches were ever installed
# ie. all patches applicable
return True
oclp_plist_data = plistlib.load(open(oclp_plist, "rb"))
for patch in patches:
if (not patch.startswith("Settings") and not patch.startswith("Validation") and patches[patch] is True):
# Patches should share the same name as the plist key
# See sys_patch_dict.py for more info
patch_installed = False
for key in oclp_plist_data:
if "Display Name" not in oclp_plist_data[key]:
continue
if oclp_plist_data[key]["Display Name"] == patch:
patch_installed = True
break
if patch_installed is False:
print(f"- Patch {patch} not installed")
return True
print("- No new patches detected for system")
return False
def root_patch_menu(self, event=None):
# Define Menu
@@ -916,21 +1064,38 @@ class wx_python_gui:
print("- No applicable patches available")
patches = []
# Check if OCLP has already applied the same patches
no_new_patches = False
if patches:
no_new_patches = not self.check_if_new_patches_needed(patches)
i = 0
if patches:
for patch in patches:
# Add Label for each patch
if (not patch.startswith("Settings") and not patch.startswith("Validation") and patches[patch] is True):
print(f"- Adding patch: {patch} - {patches[patch]}")
self.patch_label = wx.StaticText(self.frame_modal, label=f"- {patch}")
self.patch_label.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.patch_label.SetPosition(
wx.Point(
self.subheader.GetPosition().x,
self.subheader.GetPosition().y + self.subheader.GetSize().height + 3 + i
if no_new_patches is False:
for patch in patches:
# Add Label for each patch
if (not patch.startswith("Settings") and not patch.startswith("Validation") and patches[patch] is True):
print(f"- Adding patch: {patch} - {patches[patch]}")
self.patch_label = wx.StaticText(self.frame_modal, label=f"- {patch}")
self.patch_label.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.patch_label.SetPosition(
wx.Point(
self.subheader.GetPosition().x,
self.subheader.GetPosition().y + self.subheader.GetSize().height + 3 + i
)
)
i = i + self.patch_label.GetSize().height + 3
else:
self.patch_label = wx.StaticText(self.frame_modal, label=f"All applicable patches already installed")
self.patch_label.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.patch_label.SetPosition(
wx.Point(
self.subheader.GetPosition().x,
self.subheader.GetPosition().y + self.subheader.GetSize().height + 3 + i
)
i = i + self.patch_label.GetSize().height + 3
)
i = i + self.patch_label.GetSize().height + 3
self.patch_label.Centre(wx.HORIZONTAL)
if patches["Validation: Patching Possible"] is False:
self.patch_label = wx.StaticText(self.frame_modal, label="Cannot Patch due to following reasons:")
self.patch_label.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD))
@@ -998,6 +1163,8 @@ class wx_python_gui:
# Start Root Patching
self.start_root_patching = wx.Button(self.frame_modal, label="Start Root Patching", size=(170, -1))
if no_new_patches is True:
self.start_root_patching.Label = "Reinstall Root Patches"
self.start_root_patching.SetPosition(
wx.Point(
self.patch_label.GetPosition().x,
@@ -1095,6 +1262,8 @@ class wx_python_gui:
self.pulse_alternative(self.progress_bar)
wx.GetApp().Yield()
self.progress_bar.Hide()
# Download resources
sys.stdout=menu_redirect.RedirectLabel(self.developer_note)
download_result, link = sys_patch_download.grab_patcher_support_pkg(self.constants).download_files()
@@ -1114,6 +1283,28 @@ class wx_python_gui:
webbrowser.open(self.constants.repo_link_latest)
self.main_menu()
if self.patches["Settings: Kernel Debug Kit missing"] is True:
# Download KDK (if needed)
self.subheader.SetLabel("Downloading Kernel Debug Kit")
self.subheader.Centre(wx.HORIZONTAL)
self.developer_note.SetLabel("Starting shortly")
sys.stdout=menu_redirect.RedirectLabel(self.developer_note)
kdk_result, error_msg, detected_build = kdk_handler.kernel_debug_kit_handler(self.constants).download_kdk(self.constants.detected_os_version, self.constants.detected_os_build)
sys.stdout=sys.__stdout__
if kdk_result is False:
# Create popup window to inform user of error
self.popup = wx.MessageDialog(
self.frame,
f"A problem occurred trying to download the Kernel Debug Kit:\n\n{error_msg}",
"Kernel Debug Kit",
wx.ICON_ERROR
)
self.popup.ShowModal()
self.finished_auto_patch = True
self.main_menu()
self.reset_frame_modal()
self.frame_modal.SetSize(-1, self.WINDOW_HEIGHT_MAIN)
@@ -1187,30 +1378,33 @@ class wx_python_gui:
if self.constants.root_patcher_succeeded is True:
print("- Root Patcher finished successfully")
if self.constants.needs_to_open_preferences is True:
# Create dialog box to open System Preferences -> Security and Privacy
self.popup = wx.MessageDialog(
self.frame_modal,
"We just finished installing the patches to your Root Volume!\n\nHowever, Apple requires users to manually approve the kernel extensions installed before they can be used next reboot.\n\nWould you like to open System Preferences?",
"Open System Preferences?",
wx.YES_NO | wx.ICON_INFORMATION
)
self.popup.SetYesNoLabels("Open System Preferences", "Ignore")
answer = self.popup.ShowModal()
if answer == wx.ID_YES:
output =subprocess.run(
[
"osascript", "-e",
'tell app "System Preferences" to activate',
"-e", 'tell app "System Preferences" to reveal anchor "General" of pane id "com.apple.preference.security"',
],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE
if self.constants.detected_os >= os_data.os_data.ventura:
self.reboot_system(message="Root Patcher finished successfully!\nIf you were prompted to open System Settings to authorize new kexts, this can be ignored. Your system is ready once restarted.\n\nWould you like to reboot now?")
else:
# Create dialog box to open System Preferences -> Security and Privacy
self.popup = wx.MessageDialog(
self.frame_modal,
"We just finished installing the patches to your Root Volume!\n\nHowever, Apple requires users to manually approve the kernel extensions installed before they can be used next reboot.\n\nWould you like to open System Preferences?",
"Open System Preferences?",
wx.YES_NO | wx.ICON_INFORMATION
)
if output.returncode != 0:
# Some form of fallback if unaccelerated state errors out
subprocess.run(["open", "-a", "System Preferences"])
time.sleep(5)
self.OnCloseFrame(None)
self.popup.SetYesNoLabels("Open System Preferences", "Ignore")
answer = self.popup.ShowModal()
if answer == wx.ID_YES:
output =subprocess.run(
[
"osascript", "-e",
'tell app "System Preferences" to activate',
"-e", 'tell app "System Preferences" to reveal anchor "General" of pane id "com.apple.preference.security"',
],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE
)
if output.returncode != 0:
# Some form of fallback if unaccelerated state errors out
subprocess.run(["open", "-a", "System Preferences"])
time.sleep(5)
self.OnCloseFrame(None)
else:
self.reboot_system(message="Root Patcher finished successfully\nWould you like to reboot now?")
self.return_to_main_menu.Enable()
@@ -1399,7 +1593,7 @@ class wx_python_gui:
# Download installer catalog
if ias is None:
def ia():
self.available_installers = installer.list_downloadable_macOS_installers(self.constants.payload_path, "PublicSeed")
self.available_installers = installer.list_downloadable_macOS_installers(self.constants.payload_path, "DeveloperSeed")
print("- Downloading installer catalog...")
thread_ia = threading.Thread(target=ia)
@@ -1439,7 +1633,7 @@ class wx_python_gui:
if ias is None:
available_installers = installer.only_list_newest_installers(available_installers)
for app in available_installers:
print(f"macOS {available_installers[app]['Version']} ({available_installers[app]['Build']} - {utilities.human_fmt(available_installers[app]['Size'])} - {available_installers[app]['Source']}) - {available_installers[app]['Variant']}")
print(f"macOS {available_installers[app]['Version']} ({available_installers[app]['Build']}):\n - Size: {utilities.human_fmt(available_installers[app]['Size'])}\n - Source: {available_installers[app]['Source']}\n - Variant: {available_installers[app]['Variant']}\n - Link: {available_installers[app]['Link']}\n")
if available_installers[app]['Variant'] in ["DeveloperSeed" , "PublicSeed"]:
extra = " Beta"
else:
@@ -1466,7 +1660,7 @@ class wx_python_gui:
self.install_selection.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD))
self.install_selection.Centre(wx.HORIZONTAL)
self.load_all_installers = wx.Button(self.frame_modal, label="Reload with all installers")
self.load_all_installers = wx.Button(self.frame_modal, label="Show older installers")
self.load_all_installers.SetPosition(
wx.Point(
self.install_selection.GetPosition().x,
@@ -1495,17 +1689,36 @@ class wx_python_gui:
self.grab_installer_data(ias=ias)
def download_macos_click(self, app_dict):
# Unsupported Models include:
# - USB 1.1 machines (Penryn, MacPro3,1-5,1)
# - Non-Metal GPUs
model = self.constants.custom_model or self.constants.computer.real_model
if model in model_array.LegacyGPU or model in ["MacPro3,1", "MacPro4,1", "MacPro5,1"]:
try:
app_major = app_dict['Version'].split(".")[0]
if float(app_major) > self.constants.os_support:
# Throw pop up warning OCLP does not support this OS
os = os_data.os_conversion.convert_kernel_to_marketing_name(os_data.os_conversion.os_to_kernel(app_major))
dlg = wx.MessageDialog(self.frame_modal, f"OpenCore Legacy Patcher currently does not support macOS {os} on your machine ({model}).\n\nThe newest version we officially support is macOS {os_data.os_conversion.convert_kernel_to_marketing_name(os_data.os_conversion.os_to_kernel(str(self.constants.os_support)))}. For more information, see the associated Ventura Github Issue.\n\nWould you still want to continue downloading macOS {os}?", "Unsupported OS", style=wx.YES_NO | wx.CANCEL | wx.ICON_QUESTION)
dlg.SetYesNoCancelLabels("View Github Issue", "Download Anyways", "Cancel")
result = dlg.ShowModal()
if result == wx.ID_YES:
webbrowser.open("https://github.com/dortania/OpenCore-Legacy-Patcher/issues/998")
return
elif result == wx.ID_NO:
pass
else:
return
except ValueError:
pass
try:
app_major = app_dict['Version'].split(".")[0]
if float(app_major) > self.constants.os_support:
# Throw pop up warning OCLP does not support this OS
os = os_data.os_conversion.convert_kernel_to_marketing_name(os_data.os_conversion.os_to_kernel(app_major))
dlg = wx.MessageDialog(self.frame_modal, f"OpenCore Legacy patcher currently does not support macOS {os}. We highly recommend you select an older installer.\n\nThe newest version we officially support is macOS {os_data.os_conversion.convert_kernel_to_marketing_name(os_data.os_conversion.os_to_kernel(str(self.constants.os_support)))}\n\nWould you still want to continue downloading macOS {os}?", "Unsupported OS", wx.YES_NO | wx.ICON_WARNING)
if dlg.ShowModal() == wx.ID_NO:
return
except ValueError:
pass
# Ensure we have space to both download and extract the installer
host_space = utilities.get_free_space()
needed_space = app_dict['Size'] * 2
if host_space < needed_space:
dlg = wx.MessageDialog(self.frame_modal, f"You do not have enough free space to download and extract this installer. Please free up some space and try again\n\n{utilities.human_fmt(host_space)} available vs {utilities.human_fmt(needed_space)} required", "Insufficient Space", wx.OK | wx.ICON_WARNING)
dlg.ShowModal()
return
self.frame.DestroyChildren()
installer_name = f"macOS {app_dict['Version']} ({app_dict['Build']})"
@@ -1666,7 +1879,7 @@ class wx_python_gui:
self.header.SetFont(wx.Font(18, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD))
self.header.Centre(wx.HORIZONTAL)
# Subheader: Installers found in /Applications
self.subheader = wx.StaticText(self.frame, label="Installers found in Applications folder")
self.subheader = wx.StaticText(self.frame, label="Searching for Installers in /Applications")
self.subheader.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.subheader.SetPosition(
wx.Point(
@@ -1676,12 +1889,46 @@ class wx_python_gui:
)
self.subheader.Centre(wx.HORIZONTAL)
self.available_installers = None
# Spawn thread to get list of installers
def get_installers():
self.available_installers = installer.list_local_macOS_installers()
thread_get_installers = threading.Thread(target=get_installers)
thread_get_installers.start()
# Progress bar
self.progress_bar = wx.Gauge(self.frame, range=100, size=(self.WINDOW_WIDTH_MAIN - 50, -1))
self.progress_bar.SetPosition(
wx.Point(
self.header.GetPosition().x,
self.subheader.GetPosition().y + self.subheader.GetSize().height + 10
)
)
self.progress_bar.Centre(wx.HORIZONTAL)
self.progress_bar.Pulse()
# Set window size
self.frame.SetSize(-1, self.progress_bar.GetPosition().y + self.progress_bar.GetSize().height + 40)
while thread_get_installers.is_alive():
self.pulse_alternative(self.progress_bar)
wx.App.Get().Yield()
# Remove progress bar
self.progress_bar.Destroy()
self.subheader.SetLabel("Installers found in Applications folder")
self.subheader.Centre(wx.HORIZONTAL)
available_installers = self.available_installers
i = -7
available_installers = installer.list_local_macOS_installers()
if available_installers:
print("Installer found")
print("Installer(s) found:")
for app in available_installers:
print(f"{available_installers[app]['Short Name']}: {available_installers[app]['Version']} ({available_installers[app]['Build']})")
print(f"- {available_installers[app]['Short Name']}: {available_installers[app]['Version']} ({available_installers[app]['Build']})")
self.install_selection = wx.Button(self.frame, label=f"{available_installers[app]['Short Name']}: {available_installers[app]['Version']} ({available_installers[app]['Build']})", size=(320, 30))
i = i + 25
self.install_selection.SetPosition(
@@ -1978,12 +2225,9 @@ class wx_python_gui:
# - When running from source/unable to find on Github, use the nightly.link variant
# - If nightly also fails, fall back to the manually uploaded variant
link = self.constants.installer_pkg_url
if not utilities.validate_link(link):
if utilities.validate_link(link) is False:
print("- Stock Install.pkg is missing on Github, falling back to Nightly")
link = self.constants.installer_pkg_url_nightly
if not utilities.validate_link(link):
print("- Nightly Install.pkg is missing on Github, exiting")
return
if link.endswith(".zip"):
path = self.constants.installer_pkg_zip_path
@@ -2196,11 +2440,11 @@ class wx_python_gui:
if user_choice == self.computer.real_model:
print(f"Using Real Model: {user_choice}")
self.constants.custom_model = None
defaults.generate_defaults.probe(self.computer.real_model, True, self.constants)
defaults.generate_defaults(self.computer.real_model, True, self.constants)
else:
print(f"Using Custom Model: {user_choice}")
self.constants.custom_model = user_choice
defaults.generate_defaults.probe(self.constants.custom_model, False, self.constants)
defaults.generate_defaults(self.constants.custom_model, False, self.constants)
# Reload Settings
self.settings_menu(None)
@@ -2217,7 +2461,7 @@ class wx_python_gui:
chassis_type = "aluminum"
if self.constants.computer.real_model in ["MacBook4,1", "MacBook5,2", "MacBook6,1", "MacBook7,1"]:
chassis_type = "plastic"
dlg = wx.MessageDialog(self.frame_modal, f"This model, {self.constants.computer.real_model}, does not natively support macOS {os_data.os_conversion.kernel_to_os(self.constants.detected_os)}, {os_data.os_conversion.convert_kernel_to_marketing_name(self.constants.detected_os)}. The last native OS was macOS {os_data.os_conversion.kernel_to_os(smbios_data.smbios_dictionary[self.constants.computer.real_model]['Max OS Supported'])}, {os_data.os_conversion.convert_kernel_to_marketing_name(smbios_data.smbios_dictionary[self.constants.computer.real_model]['Max OS Supported'])}\n\nToggling this option will breaking booting on this OS. Are you absolutely certain this is desired?\n\nYou may end up with a nice {chassis_type} brick 🧱", "Are you certain?", wx.YES_NO | wx.ICON_WARNING)
dlg = wx.MessageDialog(self.frame_modal, f"This model, {self.constants.computer.real_model}, does not natively support macOS {os_data.os_conversion.kernel_to_os(self.constants.detected_os)}, {os_data.os_conversion.convert_kernel_to_marketing_name(self.constants.detected_os)}. The last native OS was macOS {os_data.os_conversion.kernel_to_os(smbios_data.smbios_dictionary[self.constants.computer.real_model]['Max OS Supported'])}, {os_data.os_conversion.convert_kernel_to_marketing_name(smbios_data.smbios_dictionary[self.constants.computer.real_model]['Max OS Supported'])}\n\nToggling this option will break booting on this OS. Are you absolutely certain this is desired?\n\nYou may end up with a nice {chassis_type} brick 🧱", "Are you certain?", wx.YES_NO | wx.ICON_WARNING)
if dlg.ShowModal() == wx.ID_NO:
self.checkbox_allow_native_models.SetValue(False)
return
@@ -2312,20 +2556,48 @@ class wx_python_gui:
self.gpu_dropdown.SetSelection(0)
self.gpu_dropdown.SetPosition(wx.Point(
self.label_model.GetPosition().x,
self.label_model.GetPosition().y + self.label_model.GetSize().height / 1.5))
int(self.label_model.GetPosition().y + self.label_model.GetSize().height / 1.5)))
self.gpu_dropdown.Bind(wx.EVT_CHOICE, self.gpu_selection_click)
self.gpu_dropdown.Centre(wx.HORIZONTAL)
self.gpu_dropdown.SetToolTip(wx.ToolTip("Configures MXM GPU Vendor logic on pre-built models\nIf you are not using MXM iMacs, please leave this setting as is."))
if self.computer.real_model not in ["iMac10,1", "iMac11,1", "iMac11,2", "iMac11,3", "iMac12,1", "iMac12,2"]:
models = ["iMac10,1", "iMac11,1", "iMac11,2", "iMac11,3", "iMac12,1", "iMac12,2"]
if (not self.constants.custom_model and self.computer.real_model not in models) or (self.constants.custom_model and self.constants.custom_model not in models):
self.gpu_dropdown.Disable()
# OpenCore Picker Timeout (using wxSpinCtrl)
# Label: Picker Timeout
self.label_timeout = wx.StaticText(self.frame_modal, label="Picker Timeout (seconds):", style=wx.ALIGN_CENTRE)
self.label_timeout.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.label_timeout.SetPosition(wx.Point(0, self.gpu_dropdown.GetPosition().y + self.gpu_dropdown.GetSize().height + 2))
self.label_timeout.SetSize(wx.Size(self.frame_modal.GetSize().width, 30))
self.label_timeout.Centre(wx.HORIZONTAL)
# Picker Timeout
self.timeout_spinner = wx.SpinCtrl(self.frame_modal, value=f"{self.constants.oc_timeout}", min=0, max=60)
self.timeout_spinner.SetPosition(wx.Point(
self.label_timeout.GetPosition().x,
int(self.label_timeout.GetPosition().y + self.label_timeout.GetSize().height / 2)))
self.timeout_spinner.Bind(wx.EVT_SPINCTRL, self.timeout_spinner_click)
self.timeout_spinner.Centre(wx.HORIZONTAL)
# AMD GOP Injection
self.set_gop_injection = wx.CheckBox(self.frame_modal, label="AMD GOP Injection")
self.set_gop_injection.SetPosition(wx.Point(
30,
self.timeout_spinner.GetPosition().y + self.timeout_spinner.GetSize().height + 5))
self.set_gop_injection.SetValue(self.constants.gop_injection)
self.set_gop_injection.Bind(wx.EVT_CHECKBOX, self.gop_injection_checkbox_click)
models = ["iMac10,1", "iMac11,1", "iMac11,2", "iMac11,3", "iMac12,1", "iMac12,2", "MacPro3,1", "MacPro4,1", "MacPro5,1", "Xserve2,1", "Xserve3,1"]
if (not self.constants.custom_model and self.computer.real_model not in models) or (self.constants.custom_model and self.constants.custom_model not in models):
self.set_gop_injection.Disable()
# Disable Thunderbolt
self.disable_thunderbolt_checkbox = wx.CheckBox(self.frame_modal, label="Disable Thunderbolt")
self.disable_thunderbolt_checkbox.SetValue(self.constants.disable_tb)
self.disable_thunderbolt_checkbox.Bind(wx.EVT_CHECKBOX, self.disable_tb_click)
self.disable_thunderbolt_checkbox.SetPosition(wx.Point(
30,
self.gpu_dropdown.GetPosition().y + self.gpu_dropdown.GetSize().height + 5))
self.set_gop_injection.GetPosition().x,
self.set_gop_injection.GetPosition().y + self.set_gop_injection.GetSize().height))
self.disable_thunderbolt_checkbox.SetToolTip(wx.ToolTip("Disables Thunderbolt support on MacBookPro11,x\nMainly applicable for systems that cannot boot with Thunderbolt enabled"))
if not self.constants.custom_model and not self.computer.real_model.startswith("MacBookPro11"):
self.disable_thunderbolt_checkbox.Disable()
@@ -2339,24 +2611,15 @@ class wx_python_gui:
self.set_terascale_accel_checkbox.SetToolTip(wx.ToolTip("This option will determine whether TeraScale 2 acceleration is available during Root Volume patching.\nOnly applicable if your system has a AMD TeraScale 2 GPU (ie. MacBookPro8,2/3)"))
if self.computer.real_model not in ["MacBookPro8,2", "MacBookPro8,3"]:
self.set_terascale_accel_checkbox.Disable()
# Force Web Drivers in Tesla/Kepler
self.force_web_drivers_checkbox = wx.CheckBox(self.frame_modal, label="Force Web Drivers")
self.force_web_drivers_checkbox.SetValue(self.constants.force_nv_web)
self.force_web_drivers_checkbox.Bind(wx.EVT_CHECKBOX, self.force_web_drivers_click)
self.force_web_drivers_checkbox.SetPosition(wx.Point(
self.disable_thunderbolt_checkbox.GetPosition().x,
self.set_terascale_accel_checkbox.GetPosition().y + self.set_terascale_accel_checkbox.GetSize().height))
self.force_web_drivers_checkbox.SetToolTip(wx.ToolTip("This option will force Nvidia Web Driver support onto Nvidia Tesla and Kepler GPUs. This should only be used for development purposes."))
self.set_terascale_accel_checkbox.SetValue(False)
# Windows GMUX
self.windows_gmux_checkbox = wx.CheckBox(self.frame_modal, label="Windows GMUX")
self.windows_gmux_checkbox.SetValue(self.constants.dGPU_switch)
self.windows_gmux_checkbox.Bind(wx.EVT_CHECKBOX, self.windows_gmux_click)
self.windows_gmux_checkbox.SetPosition(wx.Point(
self.force_web_drivers_checkbox.GetPosition().x,
self.force_web_drivers_checkbox.GetPosition().y + self.force_web_drivers_checkbox.GetSize().height))
self.set_terascale_accel_checkbox.GetPosition().x,
self.set_terascale_accel_checkbox.GetPosition().y + self.set_terascale_accel_checkbox.GetSize().height))
self.windows_gmux_checkbox.SetToolTip(wx.ToolTip("Enable this option to allow usage of the hardware GMUX to switch between Intel and Nvidia/AMD GPUs in Windows."))
# Hibernation Workaround
@@ -2436,16 +2699,47 @@ class wx_python_gui:
if self.computer.third_party_sata_ssd is False and not self.constants.custom_model:
self.set_enhanced_3rd_party_ssd_checkbox.Disable()
# Disable Library Validation
self.disable_library_validation_checkbox = wx.CheckBox(self.frame_modal, label="Disable Library Validation")
self.disable_library_validation_checkbox.SetValue(self.constants.disable_cs_lv)
self.disable_library_validation_checkbox.Bind(wx.EVT_CHECKBOX, self.disable_library_validation_click)
self.disable_library_validation_checkbox.SetPosition(wx.Point(
self.set_enhanced_3rd_party_ssd_checkbox.GetPosition().x,
self.set_enhanced_3rd_party_ssd_checkbox.GetPosition().y + self.set_enhanced_3rd_party_ssd_checkbox.GetSize().height
))
# Disable AMFI
self.disable_amfi_checkbox = wx.CheckBox(self.frame_modal, label="Disable AMFI")
self.disable_amfi_checkbox.SetValue(self.constants.disable_amfi)
self.disable_amfi_checkbox.Bind(wx.EVT_CHECKBOX, self.disable_amfi_click)
self.disable_amfi_checkbox.SetPosition(wx.Point(
self.disable_library_validation_checkbox.GetPosition().x,
self.disable_library_validation_checkbox.GetPosition().y + self.disable_library_validation_checkbox.GetSize().height
))
if self.constants.disable_cs_lv is False:
self.disable_amfi_checkbox.Disable()
# Delete Unused KDKs during patching
self.delete_unused_kdks_checkbox = wx.CheckBox(self.frame_modal, label="Delete Unused KDKs")
self.delete_unused_kdks_checkbox.SetValue(self.constants.should_nuke_kdks)
self.delete_unused_kdks_checkbox.Bind(wx.EVT_CHECKBOX, self.delete_unused_kdks_click)
self.delete_unused_kdks_checkbox.SetPosition(wx.Point(
self.disable_amfi_checkbox.GetPosition().x,
self.disable_amfi_checkbox.GetPosition().y + self.disable_amfi_checkbox.GetSize().height
))
self.delete_unused_kdks_checkbox.SetToolTip(wx.ToolTip("This will delete unused KDKs during root patching.\nThis will save space on your drive, however can be disabled if you wish to keep KDKs installed."))
# Set Ignore App Updates
self.set_ignore_app_updates_checkbox = wx.CheckBox(self.frame_modal, label="Ignore App Updates")
self.set_ignore_app_updates_checkbox.SetValue(self.constants.ignore_updates)
self.set_ignore_app_updates_checkbox.Bind(wx.EVT_CHECKBOX, self.set_ignore_app_updates_click)
self.set_ignore_app_updates_checkbox.SetPosition(wx.Point(
self.set_enhanced_3rd_party_ssd_checkbox.GetPosition().x,
self.set_enhanced_3rd_party_ssd_checkbox.GetPosition().y + self.set_enhanced_3rd_party_ssd_checkbox.GetSize().height))
self.delete_unused_kdks_checkbox.GetPosition().x,
self.delete_unused_kdks_checkbox.GetPosition().y + self.delete_unused_kdks_checkbox.GetSize().height))
self.set_ignore_app_updates_checkbox.SetToolTip(wx.ToolTip("This will set whether OpenCore will ignore App Updates on launch.\nEnable this option if you do not want to be prompted for App Updates"))
# Button: Developer Debug Info
self.debug_button = wx.Button(self.frame_modal, label="Developer Debug Info")
self.debug_button.Bind(wx.EVT_BUTTON, self.additional_info_menu)
@@ -2467,6 +2761,36 @@ class wx_python_gui:
self.frame_modal.SetSize(wx.Size(-1, self.return_to_main_menu_button.GetPosition().y + self.return_to_main_menu_button.GetSize().height + 40))
self.frame_modal.ShowWindowModal()
def timeout_spinner_click(self, event):
self.constants.oc_timeout = self.timeout_spinner.GetValue()
def delete_unused_kdks_click(self, event):
if self.delete_unused_kdks_checkbox.GetValue() is True:
print("Nuke KDKs enabled")
self.constants.should_nuke_kdks = True
else:
print("Nuke KDKs disabled")
self.constants.should_nuke_kdks = False
global_settings.global_settings().write_property("ShouldNukeKDKs", self.constants.should_nuke_kdks)
def disable_library_validation_click(self, event):
if self.disable_library_validation_checkbox.GetValue():
print("Disable Library Validation")
self.disable_amfi_checkbox.Enable()
self.constants.disable_cs_lv = True
else:
print("Enable Library Validation")
self.disable_amfi_checkbox.Disable()
self.constants.disable_cs_lv = False
def disable_amfi_click(self, event):
if self.disable_amfi_checkbox.GetValue():
print("Disable AMFI")
self.constants.disable_amfi = True
else:
print("Enable AMFI")
self.constants.disable_amfi = False
def set_ignore_app_updates_click(self, event):
self.constants.ignore_updates = self.set_ignore_app_updates_checkbox.GetValue()
if self.constants.ignore_updates is True:
@@ -2522,6 +2846,14 @@ class wx_python_gui:
print("Content Caching Disabled")
self.constants.set_content_caching = False
def gop_injection_checkbox_click(self, event=None):
if self.set_gop_injection.GetValue():
print("GOP Injection Enabled")
self.constants.gop_injection = True
else:
print("GOP Injection Disabled")
self.constants.gop_injection = False
def disable_tb_click(self, event=None):
if self.disable_thunderbolt_checkbox.GetValue():
print("Disable Thunderbolt Enabled")
@@ -3004,7 +3336,7 @@ class wx_python_gui:
elif self.constants.sip_status is True:
self.sip_value = 0x00
else:
self.sip_value = 0x802
self.sip_value = 0x803
self.sip_label_2 = wx.StaticText(self.frame_modal, label=f"Currently configured SIP: {hex(self.sip_value)}")
self.sip_label_2.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD))
@@ -3013,28 +3345,28 @@ class wx_python_gui:
)
self.sip_label_2.Center(wx.HORIZONTAL)
self.sip_label_2_2 = wx.StaticText(self.frame_modal, label=f"Currently Booted SIP: {hex(utilities.csr_dump())}")
self.sip_label_2_2 = wx.StaticText(self.frame_modal, label=f"Currently Booted SIP: {hex(py_sip_xnu.SipXnu().get_sip_status().value)}")
self.sip_label_2_2.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.sip_label_2_2.SetPosition(
wx.Point(self.sip_label_2.GetPosition().x, self.sip_label_2.GetPosition().y + self.sip_label_2.GetSize().height + 5)
)
self.sip_label_2_2.Center(wx.HORIZONTAL)
self.sip_label_3 = wx.StaticText(self.frame_modal, label="For older Macs requiring root patching, we set SIP to\n be partially disabled (0x802) to allow root patching.")
self.sip_label_3 = wx.StaticText(self.frame_modal, label="For older Macs requiring root patching, we set SIP to\n be partially disabled (0x803) to allow root patching.")
self.sip_label_3.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.sip_label_3.SetPosition(
wx.Point(self.sip_label_2_2.GetPosition().x, self.sip_label_2_2.GetPosition().y + self.sip_label_2_2.GetSize().height + 10)
)
self.sip_label_3.Center(wx.HORIZONTAL)
self.sip_label_4 = wx.StaticText(self.frame_modal, label="This value (0x802) corresponds to the following bits in csr.h:")
self.sip_label_4 = wx.StaticText(self.frame_modal, label="This value (0x803) corresponds to the following bits in csr.h:")
self.sip_label_4.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.sip_label_4.SetPosition(
wx.Point(self.sip_label_3.GetPosition().x, self.sip_label_3.GetPosition().y + self.sip_label_3.GetSize().height + 5)
)
self.sip_label_4.Center(wx.HORIZONTAL)
self.sip_label_5 = wx.StaticText(self.frame_modal, label=" 0x2 - CSR_ALLOW_UNRESTRICTED_FS\n 0x800 - CSR_ALLOW_UNAUTHENTICATED_ROOT")
self.sip_label_5 = wx.StaticText(self.frame_modal, label=" 0x1 - CSR_ALLOW_UNTRUSTED_KEXTS\n 0x2 - CSR_ALLOW_UNRESTRICTED_FS\n 0x800 - CSR_ALLOW_UNAUTHENTICATED_ROOT")
self.sip_label_5.SetFont(wx.Font(12, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL))
self.sip_label_5.SetPosition(
wx.Point(self.sip_label_4.GetPosition().x, self.sip_label_4.GetPosition().y + self.sip_label_4.GetSize().height + 7)
@@ -3088,7 +3420,7 @@ OpenCore Legacy Patcher by default knows the most ideal
if hex(self.sip_value) == "0x0":
self.constants.custom_sip_value = None
self.constants.sip_status = True
elif hex(self.sip_value) == "0x802":
elif hex(self.sip_value) == "0x803":
self.constants.custom_sip_value = None
self.constants.sip_status = False
else:

Binary file not shown.

After

Width:  |  Height:  |  Size: 782 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 265 KiB

After

Width:  |  Height:  |  Size: 257 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 359 KiB

BIN
images/ventura.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

BIN
images/ventura_uc1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 405 KiB

BIN
images/ventura_uc2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 KiB

View File

@@ -663,6 +663,42 @@
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Comment</key>
<string>Intel 80003ES2LAN Ethernet Patch</string>
<key>Enabled</key>
<false/>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>BundlePath</key>
<string>Intel82574L.kext</string>
<key>ExecutablePath</key>
<string>Contents/MacOS/Intel82574L</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Comment</key>
<string>Intel 82574L Ethernet Patch</string>
<key>Enabled</key>
<false/>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>BundlePath</key>
<string>AppleIntel8254XEthernet.kext</string>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleIntel8254XEthernet</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
@@ -1233,12 +1269,30 @@
<key>ExecutablePath</key>
<string>Contents/MacOS/NoAVXFSCompressionTypeZlib</string>
<key>MaxKernel</key>
<string></string>
<string>21.99.99</string>
<key>MinKernel</key>
<string>21.5.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>NoAVXFSCompressionTypeZlib-AVXpel.kext</string>
<key>Comment</key>
<string>Work-around 13.0+ Zlib kernel panic</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/NoAVXFSCompressionTypeZlib</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
@@ -1267,7 +1321,7 @@
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTopCase</string>
<string></string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
@@ -1275,6 +1329,222 @@
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCButtons.kext</string>
<key>Comment</key>
<string>AppleUSBTCButtons</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTCButtons</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext</string>
<key>Comment</key>
<string>AppleUSBTCKeyboard</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTCKeyboard</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyEventDriver.kext</string>
<key>Comment</key>
<string>AppleUSBTCKeyEventDriver</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTCKeyEventDriver</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBOHCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBOHCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBOHCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBOHCIPCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBOHCIPCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBOHCIPCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBUHCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBUHCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBUHCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBUHCIPCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBUHCIPCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBUHCIPCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>CryptexFixup.kext</string>
<key>Comment</key>
<string>CryptexFixup</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/CryptexFixup</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>20.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleIntelCPUPowerManagement.kext</string>
<key>Comment</key>
<string>Legacy Power Management (pre-XCPM)</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleIntelCPUPowerManagement</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleIntelCPUPowerManagementClient.kext</string>
<key>Comment</key>
<string>Legacy Power Management (pre-XCPM) Helper</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleIntelCPUPowerManagementClient</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>MonteAHCIPort.kext</string>
<key>Comment</key>
<string>MonteAHCIPort</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/MonteAHCIPort</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>KDKlessWorkaround.kext</string>
<key>Comment</key>
<string>KDKlessWorkaround</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/KDKlessWorkaround</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.3.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</array>
<key>Block</key>
<array/>
@@ -1511,7 +1781,7 @@
<key>Base</key>
<string></string>
<key>Comment</key>
<string>Reroute kern.hv_vmm_present patch (2)</string>
<string>Reroute kern.hv_vmm_present patch (2) Legacy</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
@@ -1525,7 +1795,7 @@
<key>Mask</key>
<data></data>
<key>MaxKernel</key>
<string></string>
<string>21.99.99</string>
<key>MinKernel</key>
<string>20.4.0</string>
<key>Replace</key>
@@ -1535,6 +1805,36 @@
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Base</key>
<string></string>
<key>Comment</key>
<string>Reroute kern.hv_vmm_present patch (2) Ventura</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
<false/>
<key>Find</key>
<data>Ym9vdCBzZXNzaW9uIFVVSUQAaHZfdm1tX3ByZXNlbnQA</data>
<key>Identifier</key>
<string>kernel</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data></data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>Replace</key>
<data>Ym9vdCBzZXNzaW9uIFVVSUQAZGlyZWN0X2hhbmRvZmYA</data>
<key>ReplaceMask</key>
<data></data>
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
@@ -1565,6 +1865,66 @@
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Base</key>
<string>_authenticate_root_hash</string>
<key>Comment</key>
<string>Disable Root Hash validation</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<false/>
<key>Find</key>
<data></data>
<key>Identifier</key>
<string>com.apple.filesystems.apfs</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data></data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>Replace</key>
<data>uAAAAADD</data>
<key>ReplaceMask</key>
<data></data>
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Base</key>
<string>__ZL22_vnode_check_signatureP5vnodeP5labeliP7cs_blobPjS5_ijPPcPm</string>
<key>Comment</key>
<string>Disable _csr_check() in _vnode_check_signature</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
<false/>
<key>Find</key>
<data>AQAAAOgAAAAAhcB1</data>
<key>Identifier</key>
<string>com.apple.driver.AppleMobileFileIntegrity</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>//////8AAAAA////</data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>Replace</key>
<data>AQAAALgBAAAAhcB1</data>
<key>ReplaceMask</key>
<data></data>
<key>Skip</key>
<integer>0</integer>
</dict>
</array>
<key>Quirks</key>
<dict>
@@ -1635,6 +1995,8 @@
<integer>0</integer>
<key>HibernateMode</key>
<string>Auto</string>
<key>HibernateSkipsPicker</key>
<true/>
<key>HideAuxiliary</key>
<true/>
<key>LauncherPath</key>
@@ -1681,12 +2043,8 @@
<array/>
<key>Security</key>
<dict>
<key>AllowNvramReset</key>
<true/>
<key>AllowSetDefault</key>
<true/>
<key>AllowToggleSip</key>
<false/>
<key>ApECID</key>
<integer>0</integer>
<key>AuthRestart</key>
@@ -1767,6 +2125,8 @@
<false/>
<key>TextMode</key>
<false/>
<key>FullNvramAccess</key>
<false/>
</dict>
<dict>
<key>Arguments</key>
@@ -1787,6 +2147,8 @@
<false/>
<key>TextMode</key>
<true/>
<key>FullNvramAccess</key>
<false/>
</dict>
</array>
</dict>
@@ -1831,6 +2193,8 @@
<string>OCLP-Spoofed-MLB</string>
<string>revcpu</string>
<string>revcpuname</string>
<string>revblock</string>
<string>revpatch</string>
</array>
<key>7C436110-AB2A-4BBB-A880-FE41995C9F82</key>
<array>
@@ -1840,8 +2204,6 @@
<key>FA4CE28D-B62F-4C99-9CC3-6815686E30F9</key>
<array/>
</dict>
<key>LegacyEnable</key>
<false/>
<key>LegacyOverwrite</key>
<false/>
<key>LegacySchema</key>
@@ -2021,6 +2383,12 @@
<integer>0</integer>
<key>KeySubsequentDelay</key>
<integer>5</integer>
<key>PointerDwellClickTimeout</key>
<integer>0</integer>
<key>PointerDwellDoubleClickTimeout</key>
<integer>0</integer>
<key>PointerDwellRadius</key>
<integer>0</integer>
<key>PointerPollMask</key>
<integer>-1</integer>
<key>PointerPollMax</key>
@@ -2072,6 +2440,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2082,6 +2452,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2092,6 +2464,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2102,6 +2476,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2112,6 +2488,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2122,6 +2500,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2132,6 +2512,44 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>ResetNvramEntry.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>AMDGOP.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>FixPCIeLinkRate.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
</array>
<key>Input</key>

BIN
payloads/Drivers/AMDGOP.efi Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -583,6 +583,43 @@
<key>SHARED_SETTINGS_FOR_ALL_APPAREANCES</key>
<true/>
</dict>
<key>INSTALLATION TYPE</key>
<dict>
<key>HIERARCHIES</key>
<dict>
<key>INSTALLER</key>
<dict>
<key>LIST</key>
<array>
<dict>
<key>CHILDREN</key>
<array/>
<key>DESCRIPTION</key>
<array/>
<key>OPTIONS</key>
<dict>
<key>HIDDEN</key>
<false/>
<key>STATE</key>
<integer>1</integer>
</dict>
<key>PACKAGE_UUID</key>
<string>4312D78E-7981-41F2-A0E9-5C7E11AC61C5</string>
<key>TITLE</key>
<array/>
<key>TYPE</key>
<integer>0</integer>
<key>UUID</key>
<string>B3E23E4E-EF8D-4C21-933E-03C8187D415B</string>
</dict>
</array>
<key>REMOVED</key>
<dict/>
</dict>
</dict>
<key>MODE</key>
<integer>0</integer>
</dict>
<key>INSTALLATION_STEPS</key>
<array>
<dict>
@@ -645,7 +682,19 @@
<key>INTRODUCTION</key>
<dict>
<key>LOCALIZATIONS</key>
<array/>
<array>
<dict>
<key>LANGUAGE</key>
<string>English</string>
<key>VALUE</key>
<dict>
<key>PATH</key>
<string>intro.txt</string>
<key>PATH_TYPE</key>
<integer>1</integer>
</dict>
</dict>
</array>
</dict>
<key>LICENSE</key>
<dict>
@@ -659,6 +708,11 @@
<key>LOCALIZATIONS</key>
<array/>
</dict>
<key>SUMMARY</key>
<dict>
<key>LOCALIZATIONS</key>
<array/>
</dict>
<key>TITLE</key>
<dict>
<key>LOCALIZATIONS</key>
@@ -675,7 +729,65 @@
<key>PROJECT_REQUIREMENTS</key>
<dict>
<key>LIST</key>
<array/>
<array>
<dict>
<key>BEHAVIOR</key>
<integer>3</integer>
<key>DICTIONARY</key>
<dict>
<key>IC_REQUIREMENT_FILES_CONDITION</key>
<integer>1</integer>
<key>IC_REQUIREMENT_FILES_DISK_TYPE</key>
<integer>0</integer>
<key>IC_REQUIREMENT_FILES_LIST</key>
<array>
<string>/System/Library/CoreServices/OpenCore-Legacy-Patcher.plist</string>
</array>
<key>IC_REQUIREMENT_FILES_SELECTOR</key>
<integer>0</integer>
</dict>
<key>IC_REQUIREMENT_CHECK_TYPE</key>
<integer>1</integer>
<key>IDENTIFIER</key>
<string>fr.whitebox.Packages.requirement.files</string>
<key>MESSAGE</key>
<array>
<dict>
<key>LANGUAGE</key>
<string>English</string>
<key>VALUE</key>
<string>AutoPkg-Assets.pkg should never be used by end-users manually, please use the OpenCore-Patcher.app listed on Github</string>
</dict>
</array>
<key>NAME</key>
<string>Files</string>
<key>STATE</key>
<true/>
</dict>
<dict>
<key>BEHAVIOR</key>
<integer>3</integer>
<key>DICTIONARY</key>
<dict>
<key>IC_REQUIREMENT_OS_DISK_TYPE</key>
<integer>0</integer>
<key>IC_REQUIREMENT_OS_DISTRIBUTION_TYPE</key>
<integer>0</integer>
<key>IC_REQUIREMENT_OS_MINIMUM_VERSION</key>
<integer>110000</integer>
</dict>
<key>IC_REQUIREMENT_CHECK_TYPE</key>
<integer>1</integer>
<key>IDENTIFIER</key>
<string>fr.whitebox.Packages.requirement.os</string>
<key>MESSAGE</key>
<array/>
<key>NAME</key>
<string>Operating System</string>
<key>STATE</key>
<true/>
</dict>
</array>
<key>RESOURCES</key>
<array/>
<key>ROOT_VOLUME_ONLY</key>

View File

@@ -0,0 +1,7 @@
DO NOT RUN AUTOPKG-ASSETS MANUALLY!
THIS CAN BREAK YOUR SYSTEM'S INSTALL!
This package should only ever be invoked by the Patcher itself, never downloaded or run by the user. Download the OpenCore-Patcher.app on the Github Repository.
https://github.com/dortania/OpenCore-Legacy-Patcher/releases/

View File

@@ -1,40 +0,0 @@
diff --git a/BrcmPatchRAM/BlueToolFixup.cpp b/BrcmPatchRAM/BlueToolFixup.cpp
index a6e3c69..5e8a424 100644
--- a/BrcmPatchRAM/BlueToolFixup.cpp
+++ b/BrcmPatchRAM/BlueToolFixup.cpp
@@ -48,6 +48,27 @@ bool BlueToolFixup::start(IOService *provider) {
static const uint8_t kSkipUpdateFilePathOriginal[] = "/etc/bluetool/SkipBluetoothAutomaticFirmwareUpdate";
static const uint8_t kSkipUpdateFilePathPatched[] = "/System/Library/CoreServices/boot.efi";
+
+// Workaround 12.4 Beta 3+ bug where macOS may detect the Bluetooth chipset twice
+// Once as internal, and second as an external dongle:
+// 'ERROR -- Third Party Dongle has the same address as the internal module'
+// Applicable for BCM2046 and BCM2070 chipsets (BT2.1)
+static const uint8_t kSkipAddressCheckOriginal[] =
+{
+ 0x48, 0x89, 0xF3, // mov rbx, rsi
+ 0xE8, 0xE3, 0xF3, 0xFE, 0xFF, // call sub_1000c5bc6
+ 0x85, 0xC0, // test eax, eax
+ 0x74, 0x1D, // je loc_1000d6804
+};
+
+static const uint8_t kSkipAddressCheckPatched[] =
+{
+ 0x48, 0x89, 0xF3, // mov rbx, rsi
+ 0xE8, 0xE3, 0xF3, 0xFE, 0xFF, // call sub_1000c5bc6
+ 0x85, 0xC0, // test eax, eax
+ 0x72, 0x1D, // jb short loc_1000d6804
+};
+
static const uint8_t kVendorCheckOriginal[] =
{
0x81, 0xFA, // cmp edx
@@ -131,6 +152,7 @@ static void patched_cs_validate_page(vnode_t vp, memory_object_t pager, memory_o
}
else if (strcmp(path + dirLength, "bluetoothd") == 0) {
searchAndPatch(data, PAGE_SIZE, path, kVendorCheckOriginal, kVendorCheckPatched);
+ searchAndPatch(data, PAGE_SIZE, path, kSkipAddressCheckOriginal, kSkipAddressCheckPatched);
searchAndPatch(data, PAGE_SIZE, path, kBadChipsetCheckOriginal, kBadChipsetCheckPatched);
if (shouldPatchBoardId)
searchAndPatch(data, PAGE_SIZE, path, boardIdsWithUSBBluetooth[0], kBoardIdSize, BaseDeviceInfo::get().boardIdentifier, kBoardIdSize);

Binary file not shown.

Binary file not shown.

View File

@@ -1,12 +0,0 @@
diff --git a/RestrictEvents/RestrictEvents.cpp b/RestrictEvents/RestrictEvents.cpp
index 27562f0..66365a3 100644
--- a/RestrictEvents/RestrictEvents.cpp
+++ b/RestrictEvents/RestrictEvents.cpp
@@ -61,6 +61,7 @@ struct RestrictEventsPolicy {
static const char *procBlacklist[] {
"/System/Library/CoreServices/ExpansionSlotNotification",
"/System/Library/CoreServices/MemorySlotNotification",
+ "/usr/libexec/displaypolicyd",
};
char pathbuf[MAXPATHLEN];

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,653 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>10</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>power_reduced_playback</key>
<true/>
<key>thermally_optimized_xcode</key>
<true/>
<key>optimized_photobooth</key>
<true/>
<key>optimized_screensavers</key>
<true/>
<key>optimized_slideshows</key>
<true/>
<key>optimized_visualizers</key>
<true/>
<key>thermally_optimized_maps</key>
<true/>
<key>CPUFloor</key>
<integer>1000</integer>
<key>BoostLimit</key>
<integer>0</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>AutoPowerOff</key>
<true/>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIADgAAAEAAAABAAAAAEAAAABAABwAAAAAAAAAPPQAAAAAAAIQeEgAEAAAACBAAAAgAAAAF
AAAAAAAAAA89AAAAAAAAAAAEAAAABAAAAAAAAAAAAAUAAAAAAAAADz0AAAAAAAAIAAAACAAAAAAA
AAAAAAAABgAAAAAAAAAFAQAAAQAAAAAAAQAAAAEAAAAAAAAAAAAGAAAAAAAAAAUBAAAAAAAAIAAA
ACAAAAAAAAAAAAAAAAUAAAAAAAAADz0AAAAAAADEFgAAAAAAAAgAAAAIAAAABQAAAAAAAAAPPQAA
AAAAAMQWEAAAABAAIEAAACBAAAAHAAAACAAAAA89AAAAAAAAxBYAAAAAAAAgAAAAIAAAAAUAAAAA
AAAADz0AAAAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAPPQAAAAAAAMQWAAAAAAAAAMAAAADA
AAAHAAAACAAAAA89AAAAAAAAhB4SAAQAAAAAEAAAAAAAAAcAAAACAAAADz0AAAAAAADEFgAAAAAA
AAAAAAAAAAAABwAAAAEAAAAPPQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAA89AAAAAAAA</data>
<key>Frequencies</key>
<dict>
<key>3000</key>
<integer>0</integer>
<key>3200</key>
<integer>1</integer>
<key>3600</key>
<integer>2</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAA0AAAABAAAAAAAAAEwdAAAAAAAAyAAAAAAAAAAAZP///////w8AAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAUvoAwAAAAAAAAEy0AcAAAAAAAABGbgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAMZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAABAAAAAAAAAKCGAQAA
AAAAyAAAAAAAAAAEZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAA
AAAAAAEZ////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAEEAAAZABkA
ZABkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAARkAJYAyAAsASwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAAAmQAyADIAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAHIAMgAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAUAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAACWAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAAAAAAAABkAAAA
AAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAADAxi0AAAAAAAAAAAAAAAAAaW9jc19lbmdh
Z2UAAAAAAAAAAAAALTEBAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAADA4eQAAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAA
AAAAAAAKAAAAAAAAAAAAAAAAAAAAaW9fZXBwX2Jvb3N0AAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAA0AAAABAAAAAAAAAEwdAAAAAAAAyAAAAAAAAAAAZP///////w8AAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAUvoAwAAAAAAAAEy0AcAAAAAAAABGbgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAMZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAABAAAAAAAAAKCGAQAA
AAAAyAAAAAAAAAAEZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAA
AAAAAAEZ////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAEEAAAZABkA
ZABkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAARkAJYAyAAsASwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAAAmQAyADIAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAHIAMgAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAUAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAACWAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAAAAAAAABkAAAA
AAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAADAxi0AAAAAAAAAAAAAAAAAaW9jc19lbmdh
Z2UAAAAAAAAAAAAALTEBAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAADA4eQAAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAA
AAAAAAAKAAAAAAAAAAAAAAAAAAAAaW9fZXBwX2Jvb3N0AAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAA0AAAABAAAAAAAAAEwdAAAAAAAAyAAAAAAAAAAAZP///////w8AAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAUvoAwAAAAAAAAEy0AcAAAAAAAABGbgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAMZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAABAAAAAAAAAKCGAQAA
AAAAyAAAAAAAAAAEZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAA
AAAAAAEZ////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAEEAAAZABkA
ZABkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAARkAJYAyAAsASwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAAAmQAyADIAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAHIAMgAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAUAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAACWAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAAAAAAAABkAAAA
AAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAADAxi0AAAAAAAAAAAAAAAAAaW9jc19lbmdh
Z2UAAAAAAAAAAAAALTEBAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAADA4eQAAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAA
AAAAAAAKAAAAAAAAAAAAAAAAAAAAaW9fZXBwX2Jvb3N0AAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIWindowHigh</key>
<integer>25000</integer>
<key>SFIWindowThreshold</key>
<integer>150</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>1=0%,10=25%,15=40%,20=75%,130=75%,150=87%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>1=0%,10=25%,15=40%,20=75%,130=75%,150=87%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,20=25%,25=40%,30=75%,130=75%,150=87%</string>
</dict>
<key>SFIUtility</key>
<dict>
<key>EffortCurve</key>
<string>30=0%,40=20%,45=37%,50=50%,130=50%,150=75%</string>
</dict>
<key>SFIManagedFocal</key>
<dict>
<key>EffortCurve</key>
<string>190=0%,250=25%</string>
</dict>
<key>SFIManagedNonFocal</key>
<dict>
<key>EffortCurve</key>
<string>150=0%,200=50%</string>
</dict>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>20</integer>
<key>NonFocal</key>
<integer>150</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>LowThreshold</key>
<integer>0</integer>
<key>HighThreshold</key>
<integer>75</integer>
</dict>
<key>Moderate</key>
<dict>
<key>LowThreshold</key>
<integer>50</integer>
<key>HighThreshold</key>
<integer>125</integer>
</dict>
<key>Heavy</key>
<dict>
<key>LowThreshold</key>
<integer>100</integer>
<key>HighThreshold</key>
<integer>200</integer>
</dict>
<key>Trapping</key>
<dict>
<key>LowThreshold</key>
<integer>150</integer>
<key>HighThreshold</key>
<integer>250</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>LowThreshold</key>
<integer>225</integer>
<key>HighThreshold</key>
<integer>252</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict>
<key>GPUTier1</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier2</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier3</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier4</key>
<dict>
<key>EffortCurve</key>
<string>0=0%,150=0%,175=50%,200=75%,250=80%,251=87%</string>
</dict>
</dict>
<key>IO</key>
<dict>
<key>IOTier0</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier1</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier2</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier3</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
</dict>
</dict>
</dict>
<key>TCPKeepAliveDuringSleep</key>
<true/>
<key>TCPKeepAliveExpirationTimeout</key>
<integer>43200</integer>
<key>NotificationWake</key>
<true/>
<key>DNDWhileDisplaySleeps</key>
<false/>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,653 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>10</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>power_reduced_playback</key>
<true/>
<key>thermally_optimized_xcode</key>
<true/>
<key>optimized_photobooth</key>
<true/>
<key>optimized_screensavers</key>
<true/>
<key>optimized_slideshows</key>
<true/>
<key>optimized_visualizers</key>
<true/>
<key>thermally_optimized_maps</key>
<true/>
<key>CPUFloor</key>
<integer>1000</integer>
<key>BoostLimit</key>
<integer>0</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>AutoPowerOff</key>
<true/>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIADgAAAEAAAABAAAAAEAAAABAABwAAAAAAAAAPPQAAAAAAAIQeEgAEAAAACBAAAAgAAAAF
AAAAAAAAAA89AAAAAAAAAAAEAAAABAAAAAAAAAAAAAUAAAAAAAAADz0AAAAAAAAIAAAACAAAAAAA
AAAAAAAABgAAAAAAAAAFAQAAAQAAAAAAAQAAAAEAAAAAAAAAAAAGAAAAAAAAAAUBAAAAAAAAIAAA
ACAAAAAAAAAAAAAAAAUAAAAAAAAADz0AAAAAAADEFgAAAAAAAAgAAAAIAAAABQAAAAAAAAAPPQAA
AAAAAMQWEAAAABAAIEAAACBAAAAHAAAACAAAAA89AAAAAAAAxBYAAAAAAAAgAAAAIAAAAAUAAAAA
AAAADz0AAAAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAPPQAAAAAAAMQWAAAAAAAAAMAAAADA
AAAHAAAACAAAAA89AAAAAAAAhB4SAAQAAAAAEAAAAAAAAAcAAAACAAAADz0AAAAAAADEFgAAAAAA
AAAAAAAAAAAABwAAAAEAAAAPPQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAAAAAA89AAAAAAAA</data>
<key>Frequencies</key>
<dict>
<key>2200</key>
<integer>0</integer>
<key>2700</key>
<integer>1</integer>
<key>3100</key>
<integer>2</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAAwAAAABAAAAAAAAAHgeAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAUvoAwAAAAAAAAEy0AcAAAAAAAABGbgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAABAAAAAAAAAKCGAQAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAMZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACSUkVBTFRJTUVfU0hPUlQAAAEDAAAZABkA
ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAANkAJYAyAAsAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAklRIUlVfVElFUjAAAAAAAAAAA2QAZABkAGQAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMgAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJJUSFJVX1RJRVIzAAAAAAAAAAJkAMgAyAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAklRIUlVfVElF
UjQAAAAAAAAAAcgAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACSVEhSVV9USUVSNQAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJIAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAUAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAACWAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACSAAAAAAAAAAAAAAAAAAAAaW9jc19lbmdhZ2UAAAAAAAAAAAAAahgA
AAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAACgJSYAAAAAAAAAAAAAAAAAaW9jc19jc3Rm
bHIAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAAAAAAAABkAAAAAAAAAAAA
AAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAAwAAAABAAAAAAAAAHgeAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAUvoAwAAAAAAAAEy0AcAAAAAAAABGbgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAABAAAAAAAAAJQRAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAMZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAABAAAAAAAAAJQRAAAA
AAAAyAAAAAAAAAAEZOgDAAAAAAAABBnQBwAAAAAAAAEZuAsAAAAAAAAAMqAPAAAAAAAAABn/////
//8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAA
AAAAAKCGAQAAAAAAyAAAAAAAAAAFZOgDAAAAAAAABBnQBwAAAAAAAAEZuAsAAAAAAAAAMqAPAAAA
AAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACSUkVBTFRJTUVfU0hPUlQAAAEFAAAZABkA
ZABkAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAAVkAJYAyAAsASwBLAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAklRIUlVfVElFUjAAAAAAAAAABWQAZABkAGQAZABk
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMgAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJJUSFJVX1RJRVIzAAAAAAAAAAJkAMgAyAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAklRIUlVfVElF
UjQAAAAAAAAAAcgAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACSVEhSVV9USUVSNQAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJIAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAUAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAACWAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACSAAAAAAAAAAAAAAAAAAAAaW9jc19lbmdhZ2UAAAAAAAAAAAAAahgA
AAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAACgJSYAAAAAAAAAAAAAAAAAaW9jc19jc3Rm
bHIAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAAAAAAAABkAAAAAAAAAAAA
AAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAAwAAAABAAAAAAAAAHgeAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAUvoAwAAAAAAAAEy0AcAAAAAAAABGbgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYAAAABAAAAAAAAAJQRAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAMZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAABAAAAAAAAAJQRAAAA
AAAAyAAAAAAAAAAEZOgDAAAAAAAABBnQBwAAAAAAAAEZuAsAAAAAAAAAMqAPAAAAAAAAABn/////
//8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAA
AAAAAKCGAQAAAAAAyAAAAAAAAAAFZOgDAAAAAAAABBnQBwAAAAAAAAEZuAsAAAAAAAAAMqAPAAAA
AAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACSUkVBTFRJTUVfU0hPUlQAAAEFAAAZABkA
ZABkAGQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAAVkAJYAyAAsASwBLAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAklRIUlVfVElFUjAAAAAAAAAABWQAZABkAGQAZABk
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMgAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAJJUSFJVX1RJRVIzAAAAAAAAAAJkAMgAyAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAklRIUlVfVElF
UjQAAAAAAAAAAcgAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACSVEhSVV9USUVSNQAAAAAAAAAAZAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJIAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAUAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAACWAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACSAAAAAAAAAAAAAAAAAAAAaW9jc19lbmdhZ2UAAAAAAAAAAAAAahgA
AAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAACgJSYAAAAAAAAAAAAAAAAAaW9jc19jc3Rm
bHIAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAAAAAAAABkAAAAAAAAAAAA
AAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIWindowHigh</key>
<integer>25000</integer>
<key>SFIWindowThreshold</key>
<integer>150</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>1=0%,10=25%,15=40%,20=75%,130=75%,150=87%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>1=0%,10=25%,15=40%,20=75%,130=75%,150=87%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,20=25%,25=40%,30=75%,130=75%,150=87%</string>
</dict>
<key>SFIUtility</key>
<dict>
<key>EffortCurve</key>
<string>30=0%,40=20%,45=37%,50=50%,130=50%,150=75%</string>
</dict>
<key>SFIManagedFocal</key>
<dict>
<key>EffortCurve</key>
<string>190=0%,250=25%</string>
</dict>
<key>SFIManagedNonFocal</key>
<dict>
<key>EffortCurve</key>
<string>150=0%,200=50%</string>
</dict>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>20</integer>
<key>NonFocal</key>
<integer>150</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>LowThreshold</key>
<integer>0</integer>
<key>HighThreshold</key>
<integer>75</integer>
</dict>
<key>Moderate</key>
<dict>
<key>LowThreshold</key>
<integer>50</integer>
<key>HighThreshold</key>
<integer>125</integer>
</dict>
<key>Heavy</key>
<dict>
<key>LowThreshold</key>
<integer>100</integer>
<key>HighThreshold</key>
<integer>200</integer>
</dict>
<key>Trapping</key>
<dict>
<key>LowThreshold</key>
<integer>150</integer>
<key>HighThreshold</key>
<integer>250</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>LowThreshold</key>
<integer>225</integer>
<key>HighThreshold</key>
<integer>252</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict>
<key>GPUTier1</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier2</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier3</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier4</key>
<dict>
<key>EffortCurve</key>
<string>0=0%,150=0%,175=50%,200=75%,250=80%,251=87%</string>
</dict>
</dict>
<key>IO</key>
<dict>
<key>IOTier0</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier1</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier2</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier3</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
</dict>
</dict>
</dict>
<key>TCPKeepAliveDuringSleep</key>
<true/>
<key>TCPKeepAliveExpirationTimeout</key>
<integer>43200</integer>
<key>NotificationWake</key>
<true/>
<key>DNDWhileDisplaySleeps</key>
<false/>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,434 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>5</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>CPUFloor</key>
<integer>800</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>AutoPowerOff</key>
<true/>
<key>ProximityWake</key>
<integer>0</integer>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIAEwCEHhIABAAAAAAUAAAABAAABgAAAAAAAAAPJQAAAAAAAAAAQAAAAEAAAAAQAAAAEAAH
AAAAAAAAAA8lAAAAAAAAhB4SAAQAAAAAGAAAAAgAAAUAAAAAAAAADyUAAAAAAACEHhIABAAAAAgQ
AAAIAAAABQAAAAAAAAAPJQAAAAAAACAAAAAgAAAAAAAAAAAAAAAFAAAAAAAAAA8lAAAAAAAACAAA
AAgAAAAAAAAAAAAAAAYAAAAAAAAAAAEAAAEAAAAAAAQAAAAEAAAAAAAAAAAABQAAAAAAAAAPJQAA
AAAAAAAAAQAAAAEAAAAAAAAAAAAGAAAAAAAAAAABAAAAAAAAxBYAAAAAAAAIAAAACAAAAAUAAAAA
AAAADyUAAAAAAADEFhAAAAAQACBAAAAgQAAABwAAAAgAAAAPOQAAAAAAAMQWAAAAAAAAIAAAACAA
AAAFAAAAAAAAAA8lAAAAAAAA1BYAABAAAAAAAAAAAAAAAAUAAAAAAAAADyUAAAAAAADEHhIARAAA
AAYQAAAGAAAABwAAAAIAAAAPOQAAAAAAAIQeEgAEAAAAABAAAAAAAAAHAAAAAgAAAA85AAAAAAAA
xBYAAAAAAAAAwAAAAMAAAAcAAAAIAAAADzkAAAAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAP
JQAAAAAAAMQWAAAAAAAAAAAAAAAAAAAHAAAAAQAAAA85AAAAAAAAQAAAAEAAAAAGAAAABgAAAAcA
AAAAAAAADzEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAPMQAAAAAAAA==</data>
<key>Frequencies</key>
<dict>
<key>2700</key>
<integer>0</integer>
<key>3200</key>
<integer>1</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAA0AAAABAAAAAAAAAEAfAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABAAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAACgKAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAjLoAwAAAAAAAAIZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAALAEAAAAA
AAADZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAAAAAAAAEA////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAWQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkVBTFRJTUVfU0hPUlQAAAEDAAAZABkA
ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAANkAGQAlgDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRIUlVfVElFUjQAAAAAAAAAAZYAyAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVEhS
VV9USUVSNQAAAAAAAAAByADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAABCAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAAD6AAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAA0AAAABAAAAAAAAAEAfAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAACgKAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAjLoAwAAAAAAAAIZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAALAEAAAAA
AAADZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAAAAAAAAEA////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAWQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkVBTFRJTUVfU0hPUlQAAAEDAAAZABkA
ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAANkAGQAlgDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRIUlVfVElFUjQAAAAAAAAAAZYAyAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVEhS
VV9USUVSNQAAAAAAAAAByADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAABCAAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAAD6AAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,66=50%,77=67%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,66=50%,77=67%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,77=67%</string>
</dict>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>66</integer>
<key>NonFocal</key>
<integer>251</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>HighThreshold</key>
<integer>66</integer>
<key>LowThreshold</key>
<integer>0</integer>
</dict>
<key>Moderate</key>
<dict>
<key>HighThreshold</key>
<integer>120</integer>
<key>LowThreshold</key>
<integer>50</integer>
</dict>
<key>Heavy</key>
<dict>
<key>HighThreshold</key>
<integer>200</integer>
<key>LowThreshold</key>
<integer>90</integer>
</dict>
<key>Trapping</key>
<dict>
<key>HighThreshold</key>
<integer>250</integer>
<key>LowThreshold</key>
<integer>170</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>HighThreshold</key>
<integer>252</integer>
<key>LowThreshold</key>
<integer>251</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict/>
<key>IO</key>
<dict/>
</dict>
</dict>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,434 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>5</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>CPUFloor</key>
<integer>800</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>AutoPowerOff</key>
<true/>
<key>ProximityWake</key>
<integer>0</integer>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIAEwCEHhIABAAAAAAUAAAABAAABgAAAAAAAAAPJQAAAAAAAAAAQAAAAEAAAAAQAAAAEAAH
AAAAAAAAAA8lAAAAAAAAhB4SAAQAAAAAGAAAAAgAAAUAAAAAAAAADyUAAAAAAACEHhIABAAAAAgQ
AAAIAAAABQAAAAAAAAAPJQAAAAAAACAAAAAgAAAAAAAAAAAAAAAFAAAAAAAAAA8lAAAAAAAACAAA
AAgAAAAAAAAAAAAAAAYAAAAAAAAAAAEAAAEAAAAAAAQAAAAEAAAAAAAAAAAABQAAAAAAAAAPJQAA
AAAAAAAAAQAAAAEAAAAAAAAAAAAGAAAAAAAAAAABAAAAAAAAxBYAAAAAAAAIAAAACAAAAAUAAAAA
AAAADyUAAAAAAADEFhAAAAAQACBAAAAgQAAABwAAAAgAAAAPOQAAAAAAAMQWAAAAAAAAIAAAACAA
AAAFAAAAAAAAAA8lAAAAAAAA1BYAABAAAAAAAAAAAAAAAAUAAAAAAAAADyUAAAAAAADEHhIARAAA
AAYQAAAGAAAABwAAAAIAAAAPOQAAAAAAAIQeEgAEAAAAABAAAAAAAAAHAAAAAgAAAA85AAAAAAAA
xBYAAAAAAAAAwAAAAMAAAAcAAAAIAAAADzkAAAAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAP
JQAAAAAAAMQWAAAAAAAAAAAAAAAAAAAHAAAAAQAAAA85AAAAAAAAQAAAAEAAAAAGAAAABgAAAAcA
AAAAAAAADzEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAPMQAAAAAAAA==</data>
<key>Frequencies</key>
<dict>
<key>2700</key>
<integer>0</integer>
<key>3200</key>
<integer>1</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAA0AAAABAAAAAAAAAEAfAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABAAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAACgKAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAjLoAwAAAAAAAAIZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAALAEAAAAA
AAADZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAAAAAAAAEA////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAWQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkVBTFRJTUVfU0hPUlQAAAEDAAAZABkA
ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAANkAGQAlgDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRIUlVfVElFUjQAAAAAAAAAAZYAyAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVEhS
VV9USUVSNQAAAAAAAAAByADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAA/AAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAAD6AAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAA0AAAABAAAAAAAAAEAfAAAAAAAAyAAAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGaAPAAAAAAAAAAD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAAAMqAPAAAAAAAAABn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAABAAAAAAAAACgKAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAjLoAwAAAAAAAAIZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAALAEAAAAA
AAADZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAAAAAAAAEA////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAWQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkVBTFRJTUVfU0hPUlQAAAEDAAAZABkA
ZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAANkAGQAlgDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRIUlVfVElFUjQAAAAAAAAAAZYAyAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVEhS
VV9USUVSNQAAAAAAAAAByADIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAA/AAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAAD6AAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,63=50%,73=67%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,63=50%,73=67%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,73=67%</string>
</dict>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>63</integer>
<key>NonFocal</key>
<integer>251</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>HighThreshold</key>
<integer>61</integer>
<key>LowThreshold</key>
<integer>0</integer>
</dict>
<key>Moderate</key>
<dict>
<key>HighThreshold</key>
<integer>120</integer>
<key>LowThreshold</key>
<integer>50</integer>
</dict>
<key>Heavy</key>
<dict>
<key>HighThreshold</key>
<integer>200</integer>
<key>LowThreshold</key>
<integer>90</integer>
</dict>
<key>Trapping</key>
<dict>
<key>HighThreshold</key>
<integer>250</integer>
<key>LowThreshold</key>
<integer>170</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>HighThreshold</key>
<integer>252</integer>
<key>LowThreshold</key>
<integer>251</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict/>
<key>IO</key>
<dict/>
</dict>
</dict>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,361 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>13</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>CPUFloor</key>
<integer>1000</integer>
<key>BoostLimit</key>
<integer>0</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>AutoPowerOff</key>
<true/>
<key>ProximityWake</key>
<integer>0</integer>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIACgAIAAAACAAAAAAAAAAAAAAABQAAAAAAAAAFAQAAAQAAAAAAQAAAAEAAAAAQAAAAEAAH
AAAAAAAAAA/dhwEAAAAAIAAAACAAAAAAAAAAAAAAAAUAAAAAAAAAD92HAQAAAADEFgAAAAAAAAgA
AAAIAAAABQAAAAAAAAAP3YcBAAAAAMQWEAAAABAAIEAAACBAAAAHAAAACAAAAA/dhwEAAAAAxBYA
AAAAAAAgAAAAIAAAAAUAAAAAAAAAD92HAQAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAP3YcB
AAAAAMQWAAAAAAAAAMAAAADAAAAHAAAACAAAAA/dhwEAAAAAxBYAAAAAAAAAAAAAAAAAAAcAAAAB
AAAAD92HAQAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAP3YcBAAAAAA==</data>
<key>Frequencies</key>
<dict>
<key>3000</key>
<integer>0</integer>
<key>3200</key>
<integer>1</integer>
<key>3600</key>
<integer>2</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAAAAAAACAAAAAAAAAGQAAAAAAAAAGQAAAAAAAAAAZP///////w8AAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAGQAAAACAAAAAAAAAOgDAAAAAAAAoA8AAAAAAAABZP///////w8AAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAEBCDwAAAAAAoA8AAAAAAAACZP//////
/w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////
DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAcgAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkVBTFRJTUVfU0hPUlQAAAICAAAAAGQA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaGFyZC1ydC1ucwAAAAAAAAAAAAAACT0AAAAAAAAAAAAA
AAAAdWJwYwAAAAAAAAAAAAAAAAEAAABvZmYAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAA
AAABAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAABPAAAAAAAAAAAAAAAAAAAAbm9u
LWZvY2FsLXRsdmwAAAAAAAD6AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIWindowHigh</key>
<integer>25000</integer>
<key>SFIWindowThreshold</key>
<integer>150</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>1=0%,10=25%,15=40%,20=75%,130=75%,150=87%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>1=0%,10=25%,15=40%,20=75%,130=75%,150=87%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,20=25%,25=40%,30=75%,130=75%,150=87%</string>
</dict>
<key>SFIUtility</key>
<dict>
<key>EffortCurve</key>
<string>30=0%,40=20%,45=37%,50=50%,130=50%,150=75%</string>
</dict>
<key>SFIManagedFocal</key>
<dict>
<key>EffortCurve</key>
<string>190=0%,250=25%</string>
</dict>
<key>SFIManagedNonFocal</key>
<dict>
<key>EffortCurve</key>
<string>150=0%,200=50%</string>
</dict>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>20</integer>
<key>NonFocal</key>
<integer>150</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>LowThreshold</key>
<integer>0</integer>
<key>HighThreshold</key>
<integer>75</integer>
</dict>
<key>Moderate</key>
<dict>
<key>LowThreshold</key>
<integer>50</integer>
<key>HighThreshold</key>
<integer>125</integer>
</dict>
<key>Heavy</key>
<dict>
<key>LowThreshold</key>
<integer>100</integer>
<key>HighThreshold</key>
<integer>200</integer>
</dict>
<key>Trapping</key>
<dict>
<key>LowThreshold</key>
<integer>150</integer>
<key>HighThreshold</key>
<integer>250</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>LowThreshold</key>
<integer>225</integer>
<key>HighThreshold</key>
<integer>252</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict>
<key>GPUTier1</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier2</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier3</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>GPUTier4</key>
<dict>
<key>EffortCurve</key>
<string>0=0%,150=0%,175=50%,200=75%,250=80%,251=87%</string>
</dict>
</dict>
<key>IO</key>
<dict>
<key>IOTier0</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier1</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier2</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
<key>IOTier3</key>
<dict>
<key>EffortCurve</key>
<string>0=0%</string>
</dict>
</dict>
</dict>
</dict>
<key>TCPKeepAliveDuringSleep</key>
<true/>
<key>TCPKeepAliveExpirationTimeout</key>
<integer>43200</integer>
<key>NotificationWake</key>
<true/>
<key>DNDWhileDisplaySleeps</key>
<false/>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,322 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>13</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>power_reduced_playback</key>
<true/>
<key>thermally_optimized_xcode</key>
<true/>
<key>optimized_photobooth</key>
<true/>
<key>optimized_screensavers</key>
<true/>
<key>optimized_slideshows</key>
<true/>
<key>optimized_visualizers</key>
<true/>
<key>thermally_optimized_maps</key>
<true/>
<key>CPUFloor</key>
<integer>800</integer>
<key>BoostLimit</key>
<integer>0</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIACgAIAAAACAAAAAAAAAAAAAAABQAAAAAAAAAFAQAAAQAAAAAAQAAAAEAAAAAQAAAAEAAH
AAAAAAAAAA/dhwEAAAAAIAAAACAAAAAAAAAAAAAAAAUAAAAAAAAAD92HAQAAAADEFgAAAAAAAAgA
AAAIAAAABQAAAAAAAAAP3YcBAAAAAMQWEAAAABAAIEAAACBAAAAHAAAACAAAAA/dhwEAAAAAxBYA
AAAAAAAgAAAAIAAAAAUAAAAAAAAAD92HAQAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAP3YcB
AAAAAMQWAAAAAAAAAMAAAADAAAAHAAAACAAAAA/dhwEAAAAAxBYAAAAAAAAAAAAAAAAAAAcAAAAB
AAAAD92HAQAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAP3YcBAAAAAA==</data>
<key>Frequencies</key>
<dict>
<key>3600</key>
<integer>0</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAAwAAAABAAAAAAAAAGQZAAAAAAAA9AEAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAy////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAAJQRAAAAAAAAyAAAAAAAAAABZPQBAAAAAAAAATLoAwAA
AAAAAAEZ0AcAAAAAAAAAS7gLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAABcAAAABAAAAAAAAAKAPAAAAAAAAyAAAAAAAAAACZPQBAAAA
AAAAAjLoAwAAAAAAAAIZ0AcAAAAAAAABMrgLAAAAAAAAADKgDwAAAAAAAAAZ////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAABAAAAAAAAAIgTAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAzLoAwAAAAAAAAIy0AcAAAAAAAACALgLAAAAAAAAATKgDwAAAAAAAAEA////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAABAAAAAAAAAIgTAAAA
AAAAyAAAAAAAAAAEZPQBAAAAAAAABDLoAwAAAAAAAANL0AcAAAAAAAADMrgLAAAAAAAAAkugDwAA
AAAAAAIyiBMAAAAAAAABAP///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAA
AAAAAKCGAQAAAAAA9AEAAAAAAAAFZOgDAAAAAAAABDLQBwAAAAAAAAQAuAsAAAAAAAADMqAPAAAA
AAAAAwBwFwAAAAAAAAIAQB8AAAAAAAABAP///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAMFAAAAAAAA
ZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAAVkAGQAlgDIAMgAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAAAmQAyADIAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAGWAMgAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAD7AAAAAAAAAAAAAAAA
AAAAbm9uLWZvY2FsLXRsdmwAAAAAAAD7AAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEA
AABvZmYAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAAAAAAZXBw
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAA
AAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAADAxi0AAAAAAAAAAAAAAAAAaW9jc19lbmdh
Z2UAAAAAAAAAAACAhB4AAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UAAAAAAAAACT0AAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19ydHJpZ2dlcgAA
AAAAAABkAAAAAAAAAAAAAAAAAAAAaW9fZXBwX2Jvb3N0AAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAA
aW9faGludHMAAAAAAAAAAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9fY29yZV9jc3RfbGltAAAAAAAD
AAAAAAAAAAAAAAAAAAAAbHBtX3JhdGlvAAAAAAAAAAAAAAAaAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>0=0%,10=75%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>0=0%,10=75%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>0=0%,10=75%</string>
</dict>
<key>SFIUtility</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,20=50%</string>
</dict>
<key>SFIReducedUtility</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,50=33%</string>
</dict>
<key>ReducedUtilitySFISupport</key>
<true/>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>251</integer>
<key>NonFocal</key>
<integer>251</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>HighThreshold</key>
<integer>15</integer>
<key>LowThreshold</key>
<integer>0</integer>
</dict>
<key>Moderate</key>
<dict>
<key>HighThreshold</key>
<integer>25</integer>
<key>LowThreshold</key>
<integer>10</integer>
</dict>
<key>Heavy</key>
<dict>
<key>HighThreshold</key>
<integer>200</integer>
<key>LowThreshold</key>
<integer>20</integer>
</dict>
<key>Trapping</key>
<dict>
<key>HighThreshold</key>
<integer>250</integer>
<key>LowThreshold</key>
<integer>170</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>HighThreshold</key>
<integer>252</integer>
<key>LowThreshold</key>
<integer>251</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict/>
<key>IO</key>
<dict/>
</dict>
</dict>
<key>TCPKeepAliveDuringSleep</key>
<true/>
<key>TCPKeepAliveExpirationTimeout</key>
<integer>43200</integer>
<key>NotificationWake</key>
<true/>
<key>DNDWhileDisplaySleeps</key>
<false/>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,600 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>13</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>power_reduced_playback</key>
<true/>
<key>thermally_optimized_xcode</key>
<true/>
<key>optimized_photobooth</key>
<true/>
<key>optimized_screensavers</key>
<true/>
<key>optimized_slideshows</key>
<true/>
<key>optimized_visualizers</key>
<true/>
<key>thermally_optimized_maps</key>
<true/>
<key>CPUFloor</key>
<integer>800</integer>
<key>BoostLimit</key>
<integer>0</integer>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIACgAIAAAACAAAAAAAAAAAAAAABQAAAAAAAAAFAQAAAQAAAAAAQAAAAEAAAAAQAAAAEAAH
AAAAAAAAAA/dhwEAAAAAIAAAACAAAAAAAAAAAAAAAAUAAAAAAAAAD92HAQAAAADEFgAAAAAAAAgA
AAAIAAAABQAAAAAAAAAP3YcBAAAAAMQWEAAAABAAIEAAACBAAAAHAAAACAAAAA/dhwEAAAAAxBYA
AAAAAAAgAAAAIAAAAAUAAAAAAAAAD92HAQAAAADEFgAAAAAAAAiAAAAIgAAABQAAAAAAAAAP3YcB
AAAAAMQWAAAAAAAAAMAAAADAAAAHAAAACAAAAA/dhwEAAAAAxBYAAAAAAAAAAAAAAAAAAAcAAAAB
AAAAD92HAQAAAAAAAAAAAAAAAAAAAAAAAAAABwAAAAAAAAAP3YcBAAAAAA==</data>
<key>Frequencies</key>
<dict>
<key>3200</key>
<integer>0</integer>
<key>3500</key>
<integer>1</integer>
<key>3800</key>
<integer>2</integer>
</dict>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAAgAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGf///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAwAAAABAAAAAAAAAHAXAAAAAAAA9AEAAAAAAAABZOgDAAAAAAAAATLQBwAA
AAAAAABLoA8AAAAAAAAAMv///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAABAAAAAAAAAEAfAAAAAAAA9AEAAAAAAAACZOgDAAAA
AAAAAjLQBwAAAAAAAAFLoA8AAAAAAAABMnAXAAAAAAAAAEtAHwAAAAAAAAAy////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAFDDAAAAAAAA9AEAAAAA
AAADZOgDAAAAAAAAAzLQBwAAAAAAAAJLoA8AAAAAAAACMnAXAAAAAAAAAUtAHwAAAAAAAAEy////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUAAAABAAAAAAAAAHAXAAAA
AAAA9AEAAAAAAAAEZOgDAAAAAAAABDLQBwAAAAAAAANLoA8AAAAAAAADMnAXAAAAAAAAAktAHwAA
AAAAAAIy////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAABAAAA
AAAAAHAXAAAAAAAA9AEAAAAAAAAFZOgDAAAAAAAABEvQBwAAAAAAAAQyoA8AAAAAAAADS3AXAAAA
AAAAAzJAHwAAAAAAAAJL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
ABsAAAABAAAAAAAAAHAXAAAAAAAA9AEAAAAAAAAGZOgDAAAAAAAABUvQBwAAAAAAAAUyoA8AAAAA
AAAES3AXAAAAAAAABDJAHwAAAAAAAANL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAB0AAAABAAAAAAAAAHAXAAAAAAAA9AEAAAAAAAAHZOgDAAAAAAAABkvQBwAAAAAA
AAYyoA8AAAAAAAAFS3AXAAAAAAAABTJAHwAAAAAAAARL////////DwAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAA9AEAAAAAAAAIZOgDAAAAAAAA
B0vQBwAAAAAAAAcyoA8AAAAAAAAGS3AXAAAAAAAABjJAHwAAAAAAAAVL////////DwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////DwAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAUIAAAAAAAA
AAAAABkAGQAZACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAAhkAGQAZABkAGQAZABkAGQAZAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAABWQAyADIAMgAyADI
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAACZADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAAgAwAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAA
AAAAZXBwAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAA
AAAHAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAyAAAAAAAAAAAAAAAAAAAAbm9u
LWZvY2FsLXRsdmwAAAAAAAD7AAAAAAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAACghgEA
AAAAAAAAAAAAAAAAcnRoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaW9fY29yZV9j
c3RfbGltAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9faGludHMAAAAAAAAAAAAAAAABAAAAAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UA
AAAAAAAACT0AAAAAAAAAAAAAAAAAaW9jc19lbmdhZ2UAAAAAAAAAAACAhB4AAAAAAAAAAAAAAAAA
aW9jc19ydHJpZ2dlcgAAAAAAAABkAAAAAAAAAAAAAAAAAAAAbHBtX3JhdGlvAAAAAAAAAAAAAAAY
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAAgAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGf///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAwAAAABAAAAAAAAAHAXAAAAAAAA9AEAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAABLoA8AAAAAAAAAMv///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAABAAAAAAAAAEAfAAAAAAAA9AEAAAAAAAACZOgDAAAA
AAAAAjLQBwAAAAAAAAFLoA8AAAAAAAABMv///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAFDDAAAAAAAA9AEAAAAA
AAADZOgDAAAAAAAAAzLQBwAAAAAAAAJLoA8AAAAAAAACMnAXAAAAAAAAAUtAHwAAAAAAAAEy////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUAAAABAAAAAAAAAHAXAAAA
AAAA9AEAAAAAAAAEZOgDAAAAAAAABDLQBwAAAAAAAANLoA8AAAAAAAADMnAXAAAAAAAAAktAHwAA
AAAAAAIy////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAABAAAA
AAAAAHAXAAAAAAAA9AEAAAAAAAAFZOgDAAAAAAAABEvQBwAAAAAAAAQyoA8AAAAAAAADS3AXAAAA
AAAAAzJAHwAAAAAAAAJL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
ABsAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAGZOgDAAAAAAAABUvQBwAAAAAAAAUyoA8AAAAA
AAAES3AXAAAAAAAABDJAHwAAAAAAAANL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAB0AAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAHZOgDAAAAAAAABkvQBwAAAAAA
AAYyoA8AAAAAAAAFS3AXAAAAAAAABTJAHwAAAAAAAARL////////DwAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAACAAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAIZOgDAAAAAAAA
B0vQBwAAAAAAAAcyoA8AAAAAAAAGS3AXAAAAAAAABjJAHwAAAAAAAAVL////////DwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAA9AEAAAAAAAAJ
ZOgDAAAAAAAACEvQBwAAAAAAAAgyoA8AAAAAAAAHS3AXAAAAAAAABzJAHwAAAAAAAAZL////////
DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAYJAAAAAAAA
AAAAAAAAGQAZABkAIAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAAlkAGQAZABkAGQAZABkAGQAZABkAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAABmQAyADIAMgAyADI
AMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAADZADIAMgAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAAgAwAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAA
AAAAZXBwAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAA
AAAHAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAyAAAAAAAAAAAAAAAAAAAAbm9u
LWZvY2FsLXRsdmwAAAAAAAD7AAAAAAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAACghgEA
AAAAAAAAAAAAAAAAcnRoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaW9fY29yZV9j
c3RfbGltAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9faGludHMAAAAAAAAAAAAAAAABAAAAAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UA
AAAAAAAACT0AAAAAAAAAAAAAAAAAaW9jc19lbmdhZ2UAAAAAAAAAAACAhB4AAAAAAAAAAAAAAAAA
aW9jc19ydHJpZ2dlcgAAAAAAAABkAAAAAAAAAAAAAAAAAAAAbHBtX3JhdGlvAAAAAAAAAAAAAAAY
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
<data>
AgAAAAgAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAAZOgDAAAAAAAAAEvQBwAAAAAAAAAyuAsA
AAAAAAAAGf///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAwAAAABAAAAAAAAAHAXAAAAAAAA9AEAAAAAAAABZOgDAAAAAAAAATLQBwAA
AAAAAABLoA8AAAAAAAAAMv///////w8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAABAAAAAAAAAHAXAAAAAAAA9AEAAAAAAAACZOgDAAAA
AAAAAjLQBwAAAAAAAAFLoA8AAAAAAAABMnAXAAAAAAAAAEtAHwAAAAAAAAAy////////DwAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABIAAAABAAAAAAAAAFDDAAAAAAAA9AEAAAAA
AAADZOgDAAAAAAAAAzLQBwAAAAAAAAJLoA8AAAAAAAACMnAXAAAAAAAAAUtAHwAAAAAAAAEy////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABUAAAABAAAAAAAAAHAXAAAA
AAAA9AEAAAAAAAAEZOgDAAAAAAAABDLQBwAAAAAAAANLoA8AAAAAAAADMnAXAAAAAAAAAktAHwAA
AAAAAAIy////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABgAAAABAAAA
AAAAAHAXAAAAAAAA9AEAAAAAAAAFZOgDAAAAAAAABEvQBwAAAAAAAAQyoA8AAAAAAAADS3AXAAAA
AAAAAzJAHwAAAAAAAAJL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
ABsAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAGZOgDAAAAAAAABUvQBwAAAAAAAAUyoA8AAAAA
AAAES3AXAAAAAAAABDJAHwAAAAAAAANL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAB0AAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAHZOgDAAAAAAAABkvQBwAAAAAA
AAYyoA8AAAAAAAAFS3AXAAAAAAAABTJAHwAAAAAAAARL////////DwAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAACEAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAIZOgDAAAAAAAA
B0vQBwAAAAAAAAcyoA8AAAAAAAAGS3AXAAAAAAAABjJAHwAAAAAAAAVL////////DwAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACQAAAABAAAAAAAAAKAPAAAAAAAA9AEAAAAAAAAJ
ZOgDAAAAAAAACEvQBwAAAAAAAAgyoA8AAAAAAAAHS3AXAAAAAAAABzJAHwAAAAAAAAZL////////
DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAADAAAAAAAAAKCGAQAAAAAA
9AEAAAAAAAAKZOgDAAAAAAAACUvQBwAAAAAAAAkyoA8AAAAAAAAIS3AXAAAAAAAACDJAHwAAAAAA
AAdL////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAUkVBTFRJTUVfU0hPUlQAAAcKAAAAAAAA
AAAAAAAAAAAZABkAGQAgAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAApkAGQAZABkAGQAZABkAGQAZABkAGQAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElFUjIAAAAAAAAABmQAyADIAMgAyADI
AMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAVEhS
VV9USUVSMwAAAAAAAAADZADIAMgAyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAIBUSFJVX1RJRVI0AAAAAAAAAAAgAwAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgFRIUlVfVElF
UjUAAAAAAAAAACADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaHdwAAAAAAAAAAAAAAAAAAEAAABvbgAAAAAAAAAAAAAA
AAAAZXBwAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAcGVyZi1iaWFzAAAAAAAAAAAA
AAAHAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAAAAAyAAAAAAAAAAAAAAAAAAAAbm9u
LWZvY2FsLXRsdmwAAAAAAAD7AAAAAAAAAAAAAAAAAAAAcmF0aW9yYXRlbGltaXQAAAAAAACghgEA
AAAAAAAAAAAAAAAAcnRoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaW9fY29yZV9j
c3RfbGltAAAAAAADAAAAAAAAAAAAAAAAAAAAaW9faGludHMAAAAAAAAAAAAAAAABAAAAAAAAAAAA
AAAAAAAAaW9jc19jc3RmbHIAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAaW9jc19kaXNlbmdhZ2UA
AAAAAAAACT0AAAAAAAAAAAAAAAAAaW9jc19lbmdhZ2UAAAAAAAAAAACAhB4AAAAAAAAAAAAAAAAA
aW9jc19ydHJpZ2dlcgAAAAAAAABkAAAAAAAAAAAAAAAAAAAAbHBtX3JhdGlvAAAAAAAAAAAAAAAY
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,30=75%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,30=75%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>10=0%,30=75%</string>
</dict>
<key>SFIUtility</key>
<dict>
<key>EffortCurve</key>
<string>20=0%,40=50%</string>
</dict>
<key>SFIReducedUtility</key>
<dict>
<key>EffortCurve</key>
<string>40=0%,50=33%</string>
</dict>
<key>ReducedUtilitySFISupport</key>
<true/>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>251</integer>
<key>NonFocal</key>
<integer>251</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>HighThreshold</key>
<integer>30</integer>
<key>LowThreshold</key>
<integer>0</integer>
</dict>
<key>Moderate</key>
<dict>
<key>HighThreshold</key>
<integer>50</integer>
<key>LowThreshold</key>
<integer>20</integer>
</dict>
<key>Heavy</key>
<dict>
<key>HighThreshold</key>
<integer>200</integer>
<key>LowThreshold</key>
<integer>40</integer>
</dict>
<key>Trapping</key>
<dict>
<key>HighThreshold</key>
<integer>250</integer>
<key>LowThreshold</key>
<integer>170</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>HighThreshold</key>
<integer>252</integer>
<key>LowThreshold</key>
<integer>251</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict/>
<key>IO</key>
<dict/>
</dict>
</dict>
<key>TCPKeepAliveDuringSleep</key>
<true/>
<key>TCPKeepAliveExpirationTimeout</key>
<integer>43200</integer>
<key>NotificationWake</key>
<true/>
<key>DNDWhileDisplaySleeps</key>
<false/>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,294 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>pmspFile</key>
<integer>3</integer>
<key>IOPlatformPowerProfile</key>
<dict>
<key>UnifiedSleepSliderPref</key>
<true/>
<key>PublishBatteryFactors</key>
<true/>
<key>NetworkTimerDelay</key>
<integer>900</integer>
<key>StandbyDelayHigh</key>
<integer>86400</integer>
<key>StandbyDelay</key>
<integer>10800</integer>
<key>StandbyBatteryThreshold</key>
<integer>50</integer>
<key>AutoPowerOff</key>
<true/>
<key>IOPlatformSystemSleepPolicy</key>
<data>U0xQVAIAEgCEHhIABAAAAAAUAAAABAAABgAAAAAAAAAPJQAAAAAAAIQeEgAEAAAAABgAAAAIAAAF
AAAAAAAAAA8lAAAAAAAAhB4SAAQAAAAIEAAACAAAAAUAAAAAAAAADyUAAAAAAAAgAAAAIAAAAAAA
AAAAAAAABQAAAAAAAAAPJQAAAAAAAAgAAAAIAAAAAAAAAAAAAAAEAAAAAAAAAAABAAABAAAAAAAE
AAAABAAAAAAAAAAAAAUAAAAAAAAADyUAAAAAAAAAAAEAAAABAAAAAAAAAAAABAAAAAAAAAAAAQAA
AAAAAMQWAAAAAAAACAAAAAgAAAAFAAAAAAAAAA8lAAAAAAAAxBYQAAAAEAAgQAAAIEAAAAIAAAAI
AAAADz0AAAAAAADEFgAAAAAAACAAAAAgAAAABQAAAAAAAAAPJQAAAAAAANQWAAAQAAAAAAAAAAAA
AAAFAAAAAAAAAA8lAAAAAAAAxB4SAEQAAAAGEAAABgAAAAMAAAACAAAADz0AAAAAAACEHhIABAAA
AAAQAAAAAAAAAgAAAAIAAAAPPQAAAAAAAMQWAAAAAAAAAMAAAADAAAACAAAACAAAAA89AAAAAAAA
xBYAAAAAAAAIgAAACIAAAAUAAAAAAAAADyUAAAAAAADEFgAAAAAAAAAAAAAAAAAAAgAAAAEAAAAP
PQAAAAAAAEAAAABAAAAABgAAAAYAAAADAAAAAAAAAA81AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIA
AAAAAAAADzUAAAAAAAA=</data>
<key>FrequencyVectors</key>
<array>
<data>
AgAAAAAAAAACAAAAAAAAAMgAAAAAAAAAGQAAAAAAAAAAZP///////w8AAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAABEAAAABAAAAAAAAADwPAAAAAAAAyAAAAAAAAAABZOgDAAAAAAAAAUvQBwAA
AAAAAAEyuAsAAAAAAAABGaAPAAAAAAAAAQD///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGQAAAACAAAAAAAAAKwNAAAAAAAAyAAAAAAAAAACZOgDAAAA
AAAAAkvQBwAAAAAAAAIyuAsAAAAAAAABMqAPAAAAAAAAARn///////8PAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkAAAADAAAAAAAAALgLAAAAAAAAyAAAAAAA
AAADZPQBAAAAAAAAAkvoAwAAAAAAAAIy0AcAAAAAAAACGbgLAAAAAAAAATKgDwAAAAAAAAEZ////
////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADIAAAADAAAAAAAAAMQJAAAA
AAAAyAAAAAAAAAAEZPQBAAAAAAAABDLoAwAAAAAAAAQZ0AcAAAAAAAACMrgLAAAAAAAAATKgDwAA
AAAAAAEZ////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEsAAAADAAAA
AAAAANwFAAAAAAAAyAAAAAAAAAAFZOgDAAAAAAAABRnQBwAAAAAAAAIZuAsAAAAAAAABMqAPAAAA
AAAAARn///////8PAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AGQAAAADAAAAAAAAAKCGAQAAAAAALAEAAAAAAAAGZPQBAAAAAAAABEvoAwAAAAAAAAQy0AcAAAAA
AAAEALgLAAAAAAAAAjKgDwAAAAAAAAIA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////////DwAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAEJBQ0tHUk9VTkQAAAAAAAAAAWQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUkVBTFRJTUVfU0hPUlQAAAIGAAAAABkA
GQBkAGQAZAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AABLRVJORUwAAAAAAAAAAAAAAAZkAGQAZAB9AJYArwDIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFRIUlVfVElFUjQAAAAAAAAAA2QAlgDIAMgAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAVEhS
VV9USUVSNQAAAAAAAAACyADIAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAdWJwYwAAAAAAAAAAAAAAAAEAAABvZmYAAAAAAAAAAAAA
AAAAcGVyZi1iaWFzAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAdXRpbGl0eS10bHZsAAAAAAAA
AAA1AAAAAAAAAAAAAAAAAAAAbm9uLWZvY2FsLXRsdmwAAAAAAAD6AAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
</data>
</array>
<key>ThermalConfiguration</key>
<dict>
<key>Domain</key>
<dict>
<key>CPU</key>
<dict>
<key>SFIWindow</key>
<integer>50000</integer>
<key>SFIMaintenance</key>
<dict>
<key>EffortCurve</key>
<string>38=0%,57=50%,67=67%</string>
</dict>
<key>SFIDarwinBG</key>
<dict>
<key>EffortCurve</key>
<string>38=0%,57=50%,67=67%</string>
</dict>
<key>SFIAppNap</key>
<dict>
<key>EffortCurve</key>
<string>47=0%,67=67%</string>
</dict>
<key>QOSThermalThresholds</key>
<dict>
<key>Utility</key>
<integer>53</integer>
<key>NonFocal</key>
<integer>251</integer>
</dict>
<key>ThermalPressure</key>
<dict>
<key>Nominal</key>
<dict>
<key>HighThreshold</key>
<integer>57</integer>
<key>LowThreshold</key>
<integer>0</integer>
</dict>
<key>Moderate</key>
<dict>
<key>HighThreshold</key>
<integer>130</integer>
<key>LowThreshold</key>
<integer>50</integer>
</dict>
<key>Heavy</key>
<dict>
<key>HighThreshold</key>
<integer>200</integer>
<key>LowThreshold</key>
<integer>100</integer>
</dict>
<key>Trapping</key>
<dict>
<key>HighThreshold</key>
<integer>250</integer>
<key>LowThreshold</key>
<integer>170</integer>
</dict>
<key>Sleeping</key>
<dict>
<key>HighThreshold</key>
<integer>252</integer>
<key>LowThreshold</key>
<integer>251</integer>
</dict>
</dict>
</dict>
<key>GPU</key>
<dict/>
<key>IO</key>
<dict/>
</dict>
</dict>
<key>TCPKeepAliveDuringSleep</key>
<true/>
<key>TCPKeepAliveExpirationTimeout</key>
<integer>43200</integer>
<key>NotificationWake</key>
<true/>
<key>DNDWhileDisplaySleeps</key>
<false/>
<key>DarkWakeServices</key>
<dict>
<key>DarkWakeBackgroundTasks</key>
<integer>1</integer>
<key>SleepServices</key>
<integer>7</integer>
<key>SleepServicesModes</key>
<dict>
<key>ModeA</key>
<dict>
<key>Expiration</key>
<integer>0</integer>
<key>BatteryFloor</key>
<integer>0</integer>
<key>BaseIntervals</key>
<dict>
<key>AC</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>86400</integer>
</dict>
<key>Battery</key>
<dict>
<key>BaseSleepInterval</key>
<integer>3600</integer>
<key>BaseWakeCapInterval</key>
<integer>180</integer>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</dict>
</plist>

Some files were not shown because too many files have changed in this diff Show More