From a9a703e727dca6d02adfce952fd448b615ae2f4a Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Mon, 6 Mar 2017 22:04:30 -0800 Subject: [PATCH 01/10] Restructure folders, add ddcctl as submodule --- .gitignore | 4 +- .gitmodules | 3 + .../AppDelegate.h => AppDelegate.h | 0 .../AppDelegate.m => AppDelegate.m | 0 .../TemplateIcon.icns | Bin .../project.pbxproj | 151 +++++----- .../contents.xcworkspacedata | 0 BrightnessMenulet/.DS_Store | Bin 6148 -> 0 bytes .../xcshareddata/BrightnessMenulet.xccheckout | 41 --- .../UserInterfaceState.xcuserstate | Bin 65157 -> 0 bytes .../WorkspaceSettings.xcsettings | 10 - .../UserInterfaceState.xcuserstate | Bin 56481 -> 0 bytes .../UserInterfaceState.xcuserstate | Bin 105951 -> 0 bytes BrightnessMenulet/ddc.c | 208 -------------- BrightnessMenulet/ddc.h | 259 ------------------ BrightnessMenulet/version.plist | 16 -- .../DDCControls.h | 2 +- .../DDCControls.m | 0 {BrightnessMenulet => DDCControls}/Screen.h | 2 +- {BrightnessMenulet => DDCControls}/Screen.m | 0 {BrightnessMenulet => LMU}/LMUController.h | 0 {BrightnessMenulet => LMU}/LMUController.m | 0 {BrightnessMenulet => LMU}/LMUDelegate.h | 0 .../MainMenuController.h | 0 .../MainMenuController.m | 0 {BrightnessMenulet => Menu}/Menu.xib | 0 .../Preferences.xib | 0 .../PreferencesController.h | 0 .../PreferencesController.m | 0 .../Brightness_Menulet.zip | Bin .../brightness-sun-transparent-black.icns | Bin {BrightnessMenulet => Resources}/icon-alt.png | Bin {BrightnessMenulet => Resources}/icon.png | Bin {BrightnessMenulet => Resources}/mccsV3.pdf | Bin .../screenshot.png | Bin .../BrightnessMenulet_Prefix.pch | 0 .../Info.plist | 0 .../main.m | 0 ddcctl | 1 + 39 files changed, 84 insertions(+), 613 deletions(-) create mode 100644 .gitmodules rename BrightnessMenulet/AppDelegate.h => AppDelegate.h (100%) rename BrightnessMenulet/AppDelegate.m => AppDelegate.m (100%) rename {BrightnessMenulet/BrightnessMenulet.xcodeproj => BrightnessMenulet.xcodeproj}/TemplateIcon.icns (100%) rename {BrightnessMenulet/BrightnessMenulet.xcodeproj => BrightnessMenulet.xcodeproj}/project.pbxproj (60%) rename {BrightnessMenulet/BrightnessMenulet.xcodeproj => BrightnessMenulet.xcodeproj}/project.xcworkspace/contents.xcworkspacedata (100%) delete mode 100644 BrightnessMenulet/.DS_Store delete mode 100644 BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/BrightnessMenulet.xccheckout delete mode 100644 BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvin126.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100644 BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvin126.xcuserdatad/WorkspaceSettings.xcsettings delete mode 100644 BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvinloc.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100755 BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/narada.xcuserdatad/UserInterfaceState.xcuserstate delete mode 100755 BrightnessMenulet/ddc.c delete mode 100755 BrightnessMenulet/ddc.h delete mode 100755 BrightnessMenulet/version.plist rename {BrightnessMenulet => DDCControls}/DDCControls.h (97%) rename {BrightnessMenulet => DDCControls}/DDCControls.m (100%) rename {BrightnessMenulet => DDCControls}/Screen.h (98%) rename {BrightnessMenulet => DDCControls}/Screen.m (100%) rename {BrightnessMenulet => LMU}/LMUController.h (100%) rename {BrightnessMenulet => LMU}/LMUController.m (100%) rename {BrightnessMenulet => LMU}/LMUDelegate.h (100%) rename {BrightnessMenulet => Menu}/MainMenuController.h (100%) rename {BrightnessMenulet => Menu}/MainMenuController.m (100%) rename {BrightnessMenulet => Menu}/Menu.xib (100%) rename {BrightnessMenulet => Preferences}/Preferences.xib (100%) rename {BrightnessMenulet => Preferences}/PreferencesController.h (100%) rename {BrightnessMenulet => Preferences}/PreferencesController.m (100%) rename {BrightnessMenulet => Resources}/Brightness_Menulet.zip (100%) rename {BrightnessMenulet => Resources}/brightness-sun-transparent-black.icns (100%) rename {BrightnessMenulet => Resources}/icon-alt.png (100%) rename {BrightnessMenulet => Resources}/icon.png (100%) rename {BrightnessMenulet => Resources}/mccsV3.pdf (100%) rename {BrightnessMenulet => Resources}/screenshot.png (100%) rename {BrightnessMenulet => Supporting Files}/BrightnessMenulet_Prefix.pch (100%) rename {BrightnessMenulet => Supporting Files}/Info.plist (100%) rename {BrightnessMenulet => Supporting Files}/main.m (100%) create mode 160000 ddcctl diff --git a/.gitignore b/.gitignore index 633f55e..fae4784 100644 --- a/.gitignore +++ b/.gitignore @@ -51,4 +51,6 @@ Carthage/Build # https://github.com/fastlane/fastlane/blob/master/docs/Gitignore.md fastlane/report.xml -fastlane/screenshots \ No newline at end of file +fastlane/screenshots + +.DS_Store \ No newline at end of file diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..8bfdbcf --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "ddcctl"] + path = ddcctl + url = https://github.com/kfix/ddcctl diff --git a/BrightnessMenulet/AppDelegate.h b/AppDelegate.h similarity index 100% rename from BrightnessMenulet/AppDelegate.h rename to AppDelegate.h diff --git a/BrightnessMenulet/AppDelegate.m b/AppDelegate.m similarity index 100% rename from BrightnessMenulet/AppDelegate.m rename to AppDelegate.m diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/TemplateIcon.icns b/BrightnessMenulet.xcodeproj/TemplateIcon.icns similarity index 100% rename from BrightnessMenulet/BrightnessMenulet.xcodeproj/TemplateIcon.icns rename to BrightnessMenulet.xcodeproj/TemplateIcon.icns diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.pbxproj b/BrightnessMenulet.xcodeproj/project.pbxproj similarity index 60% rename from BrightnessMenulet/BrightnessMenulet.xcodeproj/project.pbxproj rename to BrightnessMenulet.xcodeproj/project.pbxproj index 01f7fd7..a85d9e8 100755 --- a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.pbxproj +++ b/BrightnessMenulet.xcodeproj/project.pbxproj @@ -8,51 +8,51 @@ /* Begin PBXBuildFile section */ 0B38B5E619E8EF9200D72911 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0B38B5E519E8EF9200D72911 /* AppDelegate.m */; }; - 0B4E1FEC19E5FD4B0044BAFE /* Preferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0B4E1FEB19E5FD4B0044BAFE /* Preferences.xib */; }; - 0B4E1FEF19E5FEBB0044BAFE /* PreferencesController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0B4E1FEE19E5FEBB0044BAFE /* PreferencesController.m */; }; - 0BCFE67319C9F1B40094B561 /* DDCControls.m in Sources */ = {isa = PBXBuildFile; fileRef = 0BCFE67219C9F1B30094B561 /* DDCControls.m */; }; - 7D2FF98311406B0100707C79 /* MainMenuController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2FF98211406B0100707C79 /* MainMenuController.m */; }; - 7D2FF98611406B2C00707C79 /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D2FF98411406B2C00707C79 /* icon.png */; }; - 7D2FF98711406B2C00707C79 /* icon-alt.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D2FF98511406B2C00707C79 /* icon-alt.png */; }; 7D2FF9FC1140B94600707C79 /* IOKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D2FF9FB1140B94600707C79 /* IOKit.framework */; }; - 7D2FFBA21140CC8700707C79 /* brightness-sun-transparent-black.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7D2FFBA11140CC8700707C79 /* brightness-sun-transparent-black.icns */; }; - 863E61681C5C51DD00C2419C /* LMUController.m in Sources */ = {isa = PBXBuildFile; fileRef = 863E61671C5C51DD00C2419C /* LMUController.m */; }; - 863E616B1C5D33C600C2419C /* Screen.m in Sources */ = {isa = PBXBuildFile; fileRef = 863E616A1C5D33C600C2419C /* Screen.m */; }; - 864C8A2B1BF9B9BD00D87B1A /* ddc.c in Sources */ = {isa = PBXBuildFile; fileRef = 864C8A291BF9B9BD00D87B1A /* ddc.c */; }; - 8670E94C1BC44EB800402DE5 /* Menu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8670E94B1BC44EB800402DE5 /* Menu.xib */; }; - 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; + C0391E771E6E81EC00AF4839 /* MainMenuController.m in Sources */ = {isa = PBXBuildFile; fileRef = C0391E751E6E81EC00AF4839 /* MainMenuController.m */; }; + C0391E781E6E81EC00AF4839 /* Menu.xib in Resources */ = {isa = PBXBuildFile; fileRef = C0391E761E6E81EC00AF4839 /* Menu.xib */; }; + C0391E7C1E6E820200AF4839 /* Preferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = C0391E791E6E820200AF4839 /* Preferences.xib */; }; + C0391E7D1E6E820200AF4839 /* PreferencesController.m in Sources */ = {isa = PBXBuildFile; fileRef = C0391E7B1E6E820200AF4839 /* PreferencesController.m */; }; + C0391E811E6E820E00AF4839 /* LMUController.m in Sources */ = {isa = PBXBuildFile; fileRef = C0391E7F1E6E820E00AF4839 /* LMUController.m */; }; + C0391E861E6E821E00AF4839 /* DDCControls.m in Sources */ = {isa = PBXBuildFile; fileRef = C0391E831E6E821E00AF4839 /* DDCControls.m */; }; + C0391E871E6E821E00AF4839 /* Screen.m in Sources */ = {isa = PBXBuildFile; fileRef = C0391E851E6E821E00AF4839 /* Screen.m */; }; + C0391E8C1E6E823500AF4839 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = C0391E8A1E6E823500AF4839 /* main.m */; }; + C0391E901E6E824D00AF4839 /* brightness-sun-transparent-black.icns in Resources */ = {isa = PBXBuildFile; fileRef = C0391E8D1E6E824D00AF4839 /* brightness-sun-transparent-black.icns */; }; + C0391E911E6E824D00AF4839 /* icon-alt.png in Resources */ = {isa = PBXBuildFile; fileRef = C0391E8E1E6E824D00AF4839 /* icon-alt.png */; }; + C0391E921E6E824D00AF4839 /* icon.png in Resources */ = {isa = PBXBuildFile; fileRef = C0391E8F1E6E824D00AF4839 /* icon.png */; }; + C0391E951E6E841F00AF4839 /* DDC.c in Sources */ = {isa = PBXBuildFile; fileRef = C0391E931E6E841F00AF4839 /* DDC.c */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ 0B38B5E419E8EF9200D72911 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 0B38B5E519E8EF9200D72911 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 0B4E1FEB19E5FD4B0044BAFE /* Preferences.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = Preferences.xib; sourceTree = ""; }; - 0B4E1FED19E5FEBB0044BAFE /* PreferencesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PreferencesController.h; sourceTree = ""; }; - 0B4E1FEE19E5FEBB0044BAFE /* PreferencesController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PreferencesController.m; sourceTree = ""; }; - 0BCFE67119C9F1B30094B561 /* DDCControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DDCControls.h; sourceTree = ""; }; - 0BCFE67219C9F1B30094B561 /* DDCControls.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DDCControls.m; sourceTree = ""; }; 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; - 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; - 32CA4F630368D1EE00C91783 /* BrightnessMenulet_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BrightnessMenulet_Prefix.pch; sourceTree = ""; }; - 7D2FF98111406B0100707C79 /* MainMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MainMenuController.h; sourceTree = ""; }; - 7D2FF98211406B0100707C79 /* MainMenuController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MainMenuController.m; sourceTree = ""; }; - 7D2FF98411406B2C00707C79 /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = icon.png; sourceTree = ""; }; - 7D2FF98511406B2C00707C79 /* icon-alt.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "icon-alt.png"; sourceTree = ""; }; 7D2FF9FB1140B94600707C79 /* IOKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = IOKit.framework; path = /System/Library/Frameworks/IOKit.framework; sourceTree = ""; }; - 7D2FFBA11140CC8700707C79 /* brightness-sun-transparent-black.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = "brightness-sun-transparent-black.icns"; sourceTree = ""; }; 7DECCAE1114E12DD0068E5DB /* Brightness Menulet.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Brightness Menulet.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 863E61661C5C51DD00C2419C /* LMUController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LMUController.h; sourceTree = ""; }; - 863E61671C5C51DD00C2419C /* LMUController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LMUController.m; sourceTree = ""; }; - 863E61691C5D33C600C2419C /* Screen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Screen.h; sourceTree = ""; }; - 863E616A1C5D33C600C2419C /* Screen.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Screen.m; sourceTree = ""; }; - 8649EF4E1C68288800C1B65C /* LMUDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LMUDelegate.h; sourceTree = ""; }; - 864C8A291BF9B9BD00D87B1A /* ddc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ddc.c; sourceTree = SOURCE_ROOT; }; - 864C8A2A1BF9B9BD00D87B1A /* ddc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ddc.h; sourceTree = SOURCE_ROOT; }; - 8670E94B1BC44EB800402DE5 /* Menu.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = Menu.xib; sourceTree = ""; }; - 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + C0391E741E6E81EC00AF4839 /* MainMenuController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = MainMenuController.h; path = Menu/MainMenuController.h; sourceTree = ""; }; + C0391E751E6E81EC00AF4839 /* MainMenuController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = MainMenuController.m; path = Menu/MainMenuController.m; sourceTree = ""; }; + C0391E761E6E81EC00AF4839 /* Menu.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = Menu.xib; path = Menu/Menu.xib; sourceTree = ""; }; + C0391E791E6E820200AF4839 /* Preferences.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = Preferences.xib; path = Preferences/Preferences.xib; sourceTree = ""; }; + C0391E7A1E6E820200AF4839 /* PreferencesController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PreferencesController.h; path = Preferences/PreferencesController.h; sourceTree = ""; }; + C0391E7B1E6E820200AF4839 /* PreferencesController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = PreferencesController.m; path = Preferences/PreferencesController.m; sourceTree = ""; }; + C0391E7E1E6E820E00AF4839 /* LMUController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LMUController.h; path = LMU/LMUController.h; sourceTree = ""; }; + C0391E7F1E6E820E00AF4839 /* LMUController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = LMUController.m; path = LMU/LMUController.m; sourceTree = ""; }; + C0391E801E6E820E00AF4839 /* LMUDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = LMUDelegate.h; path = LMU/LMUDelegate.h; sourceTree = ""; }; + C0391E821E6E821E00AF4839 /* DDCControls.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DDCControls.h; path = DDCControls/DDCControls.h; sourceTree = ""; }; + C0391E831E6E821E00AF4839 /* DDCControls.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = DDCControls.m; path = DDCControls/DDCControls.m; sourceTree = ""; }; + C0391E841E6E821E00AF4839 /* Screen.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Screen.h; path = DDCControls/Screen.h; sourceTree = ""; }; + C0391E851E6E821E00AF4839 /* Screen.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Screen.m; path = DDCControls/Screen.m; sourceTree = ""; }; + C0391E881E6E823500AF4839 /* BrightnessMenulet_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = BrightnessMenulet_Prefix.pch; path = "Supporting Files/BrightnessMenulet_Prefix.pch"; sourceTree = ""; }; + C0391E891E6E823500AF4839 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = "Supporting Files/Info.plist"; sourceTree = ""; }; + C0391E8A1E6E823500AF4839 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = "Supporting Files/main.m"; sourceTree = ""; }; + C0391E8D1E6E824D00AF4839 /* brightness-sun-transparent-black.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; name = "brightness-sun-transparent-black.icns"; path = "Resources/brightness-sun-transparent-black.icns"; sourceTree = ""; }; + C0391E8E1E6E824D00AF4839 /* icon-alt.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = "icon-alt.png"; path = "Resources/icon-alt.png"; sourceTree = ""; }; + C0391E8F1E6E824D00AF4839 /* icon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = icon.png; path = Resources/icon.png; sourceTree = ""; }; + C0391E931E6E841F00AF4839 /* DDC.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = DDC.c; path = ddcctl/DDC.c; sourceTree = ""; }; + C0391E941E6E841F00AF4839 /* DDC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DDC.h; path = ddcctl/DDC.h; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -71,9 +71,9 @@ 0B8CF6C819E7172800F3FD6F /* Preferences */ = { isa = PBXGroup; children = ( - 0B4E1FED19E5FEBB0044BAFE /* PreferencesController.h */, - 0B4E1FEE19E5FEBB0044BAFE /* PreferencesController.m */, - 0B4E1FEB19E5FD4B0044BAFE /* Preferences.xib */, + C0391E791E6E820200AF4839 /* Preferences.xib */, + C0391E7A1E6E820200AF4839 /* PreferencesController.h */, + C0391E7B1E6E820200AF4839 /* PreferencesController.m */, ); name = Preferences; sourceTree = ""; @@ -81,9 +81,9 @@ 0B8CF6CC19E71BA400F3FD6F /* Menu */ = { isa = PBXGroup; children = ( - 7D2FF98111406B0100707C79 /* MainMenuController.h */, - 7D2FF98211406B0100707C79 /* MainMenuController.m */, - 8670E94B1BC44EB800402DE5 /* Menu.xib */, + C0391E761E6E81EC00AF4839 /* Menu.xib */, + C0391E741E6E81EC00AF4839 /* MainMenuController.h */, + C0391E751E6E81EC00AF4839 /* MainMenuController.m */, ); name = Menu; sourceTree = ""; @@ -91,10 +91,10 @@ 0BCFE67419C9F1B90094B561 /* DDCControls */ = { isa = PBXGroup; children = ( - 0BCFE67119C9F1B30094B561 /* DDCControls.h */, - 0BCFE67219C9F1B30094B561 /* DDCControls.m */, - 863E61691C5D33C600C2419C /* Screen.h */, - 863E616A1C5D33C600C2419C /* Screen.m */, + C0391E821E6E821E00AF4839 /* DDCControls.h */, + C0391E831E6E821E00AF4839 /* DDCControls.m */, + C0391E841E6E821E00AF4839 /* Screen.h */, + C0391E851E6E821E00AF4839 /* Screen.m */, ); name = DDCControls; sourceTree = ""; @@ -102,9 +102,9 @@ 0BCFE67519C9F1EC0094B561 /* Supporting Files */ = { isa = PBXGroup; children = ( - 8D1107310486CEB800E47090 /* Info.plist */, - 29B97316FDCFA39411CA2CEA /* main.m */, - 32CA4F630368D1EE00C91783 /* BrightnessMenulet_Prefix.pch */, + C0391E881E6E823500AF4839 /* BrightnessMenulet_Prefix.pch */, + C0391E891E6E823500AF4839 /* Info.plist */, + C0391E8A1E6E823500AF4839 /* main.m */, ); name = "Supporting Files"; sourceTree = ""; @@ -155,9 +155,9 @@ 29B97317FDCFA39411CA2CEA /* Resources */ = { isa = PBXGroup; children = ( - 7D2FF98411406B2C00707C79 /* icon.png */, - 7D2FF98511406B2C00707C79 /* icon-alt.png */, - 7D2FFBA11140CC8700707C79 /* brightness-sun-transparent-black.icns */, + C0391E8D1E6E824D00AF4839 /* brightness-sun-transparent-black.icns */, + C0391E8E1E6E824D00AF4839 /* icon-alt.png */, + C0391E8F1E6E824D00AF4839 /* icon.png */, ); name = Resources; sourceTree = ""; @@ -165,31 +165,30 @@ 29B97323FDCFA39411CA2CEA /* Frameworks */ = { isa = PBXGroup; children = ( - 79897D331664F808008C7D5C /* ddc */, + C0391E961E6E842300AF4839 /* DDC */, 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, ); name = Frameworks; sourceTree = ""; }; - 79897D331664F808008C7D5C /* ddc */ = { + 863E61651C5C518D00C2419C /* LMU */ = { isa = PBXGroup; children = ( - 864C8A291BF9B9BD00D87B1A /* ddc.c */, - 864C8A2A1BF9B9BD00D87B1A /* ddc.h */, + C0391E7E1E6E820E00AF4839 /* LMUController.h */, + C0391E7F1E6E820E00AF4839 /* LMUController.m */, + C0391E801E6E820E00AF4839 /* LMUDelegate.h */, ); - name = ddc; - path = "../DDC-CI-Tools-for-OS-X/ddc"; + name = LMU; sourceTree = ""; }; - 863E61651C5C518D00C2419C /* LMU */ = { + C0391E961E6E842300AF4839 /* DDC */ = { isa = PBXGroup; children = ( - 863E61661C5C51DD00C2419C /* LMUController.h */, - 863E61671C5C51DD00C2419C /* LMUController.m */, - 8649EF4E1C68288800C1B65C /* LMUDelegate.h */, + C0391E931E6E841F00AF4839 /* DDC.c */, + C0391E941E6E841F00AF4839 /* DDC.h */, ); - name = LMU; + name = DDC; sourceTree = ""; }; /* End PBXGroup section */ @@ -247,11 +246,11 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 7D2FF98611406B2C00707C79 /* icon.png in Resources */, - 7D2FF98711406B2C00707C79 /* icon-alt.png in Resources */, - 0B4E1FEC19E5FD4B0044BAFE /* Preferences.xib in Resources */, - 8670E94C1BC44EB800402DE5 /* Menu.xib in Resources */, - 7D2FFBA21140CC8700707C79 /* brightness-sun-transparent-black.icns in Resources */, + C0391E781E6E81EC00AF4839 /* Menu.xib in Resources */, + C0391E901E6E824D00AF4839 /* brightness-sun-transparent-black.icns in Resources */, + C0391E921E6E824D00AF4839 /* icon.png in Resources */, + C0391E7C1E6E820200AF4839 /* Preferences.xib in Resources */, + C0391E911E6E824D00AF4839 /* icon-alt.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -262,13 +261,13 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 8D11072D0486CEB800E47090 /* main.m in Sources */, - 7D2FF98311406B0100707C79 /* MainMenuController.m in Sources */, - 0B4E1FEF19E5FEBB0044BAFE /* PreferencesController.m in Sources */, - 863E616B1C5D33C600C2419C /* Screen.m in Sources */, - 864C8A2B1BF9B9BD00D87B1A /* ddc.c in Sources */, - 863E61681C5C51DD00C2419C /* LMUController.m in Sources */, - 0BCFE67319C9F1B40094B561 /* DDCControls.m in Sources */, + C0391E7D1E6E820200AF4839 /* PreferencesController.m in Sources */, + C0391E951E6E841F00AF4839 /* DDC.c in Sources */, + C0391E861E6E821E00AF4839 /* DDCControls.m in Sources */, + C0391E871E6E821E00AF4839 /* Screen.m in Sources */, + C0391E811E6E820E00AF4839 /* LMUController.m in Sources */, + C0391E771E6E81EC00AF4839 /* MainMenuController.m in Sources */, + C0391E8C1E6E823500AF4839 /* main.m in Sources */, 0B38B5E619E8EF9200D72911 /* AppDelegate.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -289,9 +288,9 @@ GCC_MODEL_TUNING = G5; GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = BrightnessMenulet_Prefix.pch; + GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = DEBUG; - INFOPLIST_FILE = Info.plist; + INFOPLIST_FILE = "$(SRCROOT)/Supporting Files/Info.plist"; INSTALL_PATH = "$(HOME)/Applications"; LIBRARY_SEARCH_PATHS = "$(inherited)"; MACOSX_DEPLOYMENT_TARGET = 10.8; @@ -312,8 +311,8 @@ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = BrightnessMenulet_Prefix.pch; - INFOPLIST_FILE = Info.plist; + GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; + INFOPLIST_FILE = "$(SRCROOT)/Supporting Files/Info.plist"; INSTALL_PATH = "$(HOME)/Applications"; LIBRARY_SEARCH_PATHS = "$(inherited)"; MACOSX_DEPLOYMENT_TARGET = 10.8; diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/BrightnessMenulet.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to BrightnessMenulet.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/BrightnessMenulet/.DS_Store b/BrightnessMenulet/.DS_Store deleted file mode 100644 index 7b6d0b58bdda2cd26cb0e0deefdc613e2f4c61ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6148 zcmeHKu};G<5PdGGRK(H|i6t8wQvV=|!pM{#KuS;wO5&&_h%x`d%)+Oz^Dn%!E!3*8 zLVvj34qku)pQAcl!hq_wjg>5>w%;@!PdZxx^Svm9t@c!{~ z>GDmSQ)A0t%G9m5RyUXTV=7Ni`KGOHTQLLQ5*1}Y8BhiefPrutEzS;LE;Q96i!P(GLMfgEq>*pEB?Xn~qvR diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/BrightnessMenulet.xccheckout b/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/BrightnessMenulet.xccheckout deleted file mode 100644 index de58e78..0000000 --- a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/BrightnessMenulet.xccheckout +++ /dev/null @@ -1,41 +0,0 @@ - - - - - IDESourceControlProjectFavoriteDictionaryKey - - IDESourceControlProjectIdentifier - BB971E64-8549-4D1D-968E-DC0FDCE57ED4 - IDESourceControlProjectName - project - IDESourceControlProjectOriginsDictionary - - C833DA2D57FE098F5287379F9477B17B05731688 - https://github.com/Kalvin126/BrightnessMenulet.git - - IDESourceControlProjectPath - BrightnessMenulet.xcodeproj/project.xcworkspace - IDESourceControlProjectRelativeInstallPathDictionary - - C833DA2D57FE098F5287379F9477B17B05731688 - ../.. - - IDESourceControlProjectURL - https://github.com/Kalvin126/BrightnessMenulet.git - IDESourceControlProjectVersion - 111 - IDESourceControlProjectWCCIdentifier - C833DA2D57FE098F5287379F9477B17B05731688 - IDESourceControlProjectWCConfigurations - - - IDESourceControlRepositoryExtensionIdentifierKey - public.vcs.git - IDESourceControlWCCIdentifierKey - C833DA2D57FE098F5287379F9477B17B05731688 - IDESourceControlWCCName - BrightnessMenulet - - - - diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvin126.xcuserdatad/UserInterfaceState.xcuserstate b/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvin126.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 7d557e98a0c596488574f05625079f04d2f85186..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65157 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 - - - - HasAskedToTakeAutomaticSnapshotBeforeSignificantChanges - - SnapshotAutomaticallyBeforeSignificantChanges - - - diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvinloc.xcuserdatad/UserInterfaceState.xcuserstate b/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/kalvinloc.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100644 index 286fbe85265a6991fed195264717b909577021d6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56481 zcmc#c2VfLM*E>72w|loWfJm3#B+2E{QCdhsuL-?`OL7U3H186s=#B+D_JWlZK(Pzh zz=qhdAc&|~u=m~&mH*A|-Q|uPNciRBE5L1e^Lm@vnZoMwvOta7y^BK}&tZ;m0_TW3 zBW}U;o(p~cKv`Ag^qy6PXZVV00yBDg{YCT3;BtP?nyTtn99psZzBr*DCvp^0#zbE3ZO-3F%h*Wg;b44;KfyaHc>SK=G-Dtr^Z8Lz=>@j84r zz7KE2kKm{9(|8+x5x<0A!#nYA{5F0Ue~9(vS2fDI}Gok#uqzIh_n5gUM(zhKwcS$as=ZrjQwACYeWyNe!tb z3&|p~m@FaZkPFBPatpbY+(vFEt4STHCk^B-ayNO9JVYKQkCSJ}i{v%(F4;@oBkz+B z$cN-J@)h}k{6_vE2L(=$1gGE^I9v|d zp*svm8^=kG_KpsYE{;>~CTPZbA<@nV9QD7wWYagaDz93l=ChlyF@a4}n)C{7Y5i+N(cI7OT) zP7{m7V$mm-h^69uu}rKL7mAC-^ThMT3&a)T)#5ecwc>T+_2LcUjbfv?MqDed6E}z( z#ZBTv;=|%2;-lhY;&bBj;tS%7;+x`b@hx$W__p|t_^!BD{6hRv{7U><{9XJ*+%Ntq z9uWT${}%s|T#_s)Qah==)IsVf^^y8Y{iOa+9!P^eJp( zeJ=eh{UZG;{pRGI*h!p%)8Q1IlCzETBxhUa$rUF)OoIRrSl5smCmc2S39q9Uh7=# ztaH{o8=Ut!?{_}ne9-xX^GWAZ&ZnKPIA3+X=6v0`*ZH3FedhV|Ax(2v1T$!$cuG3s2Tq9khT%%oMTw`71 zTr*rVU9()XU2|M>T?MWMu5wp}Yl&;AYnkgT*F~<2U6;5nb=}~)(Y4C8#hm$|~h11ktT=`k~UHL=hRfpV2lQgyysrkLPWqdX{Rcm#LSlE7dF1E7hyi>(uMjo7B~6 zqq;_YKz&f%pl(z*shia;>I>?N>Pza&>UQ-Nb%*-4`kwl}`jPsv`mOq%`n|ee{Zl=l z{-wDzP1Cj3S{tpM)?VwZbc7~QYFoAK+AG?t+H2bD+Ai%aZJ+j$_L=sj_PzGA_KWtXc0fC*3%WxWbwzKhchEcP zr|4bvo_a4mUC+=n^?~|n`sw;0eXu@6AFhwmN9z;xY5H`1hCWlDr5EYNx=%0DEA)U~ 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 TpUJIt|2+a3|L^41qVj(LU9(@3 diff --git a/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/narada.xcuserdatad/UserInterfaceState.xcuserstate b/BrightnessMenulet/BrightnessMenulet.xcodeproj/project.xcworkspace/xcuserdata/narada.xcuserdatad/UserInterfaceState.xcuserstate deleted file mode 100755 index be1fac88d61a93089b5e345bbae03ea9c0ee73fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105951 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 E7f3 -#include -#include "ddc.h" - -IOI2CConnectRef display_connection(CGDirectDisplayID display_id) { - kern_return_t kr; - io_service_t framebuffer, interface; - IOOptionBits bus; - IOItemCount busCount; - - //printf("Querying for displayid: %d\n", display_id); - framebuffer = CGDisplayIOServicePort(display_id); // fixme! - CGDisplayIOServicePort deprecated - - io_string_t path; - kr = IORegistryEntryGetPath(framebuffer, kIOServicePlane, path); - if(KERN_SUCCESS != kr) // display path find failed - return nil; - - kr = IOFBGetI2CInterfaceCount( framebuffer, &busCount ); - assert(kIOReturnSuccess == kr); - - for(bus = 0; bus < busCount; bus++){ - IOI2CConnectRef connect; - - kr = IOFBCopyI2CInterfaceForBus(framebuffer, bus, &interface); - if(kIOReturnSuccess != kr) - continue; - - kr = IOI2CInterfaceOpen(interface, kNilOptions, &connect); - - IOObjectRelease(interface); - assert(kIOReturnSuccess == kr); - if(kIOReturnSuccess != kr) - continue; - - return connect; - } - - return nil; -} - -int ddc_write(CGDirectDisplayID display_id, struct DDCWriteCommand* p_write) { - UInt8 data[128]; - IOI2CRequest request; - kern_return_t kr; - - IOI2CConnectRef connect = display_connection(display_id); - if(!connect) - return 0; - - bzero(&request, sizeof(request)); - - request.commFlags = 0; - request.sendAddress = 0x6e; - request.sendTransactionType = kIOI2CSimpleTransactionType; - request.sendBuffer = (vm_address_t) &data[0]; - request.sendBytes = 7; - - data[0] = 0x51; - data[1] = 0x84; - data[2] = 0x03; - data[3] = (*p_write).control_id; - data[4] = 0x1; - data[5] = (*p_write).new_value; - data[6] = 0x6E ^ data[0] ^ data[1] ^ data[2] ^ data[3] ^ data[4] ^ data[5]; - - request.replyTransactionType = kIOI2CNoTransactionType; - request.replyBytes = 0; - - kr = IOI2CSendRequest(connect, kNilOptions, &request); - IOI2CInterfaceClose(connect, kNilOptions); - - assert(kIOReturnSuccess == kr); - if(kIOReturnSuccess != request.result) - return 0; - - return 1; -} - -int ddc_read(CGDirectDisplayID display_id, struct DDCReadCommand* p_read) { - UInt8 data[128]; - IOI2CRequest request; - kern_return_t kr; - UInt8 reply_data[11]; - - IOI2CConnectRef connect = display_connection(display_id); - if(!connect) - return 0; - - for (int i=0; i<60; i++) { - bzero( &request, sizeof(request)); - - request.commFlags = 0; - request.sendAddress = 0x6E; - request.sendTransactionType = kIOI2CDDCciReplyTransactionType; - request.sendBuffer = (vm_address_t) &data[0]; - request.sendBytes = 5; - - data[0] = 0x51; - data[1] = 0x82; - data[2] = 0x01; // We want to read this time - data[3] = (*p_read).control_id; - - data[4] = 0x6E ^ data[0] ^ data[1] ^ data[2] ^ data[3]; - - request.replyAddress = 0x6f; - request.replyTransactionType = kIOI2CDDCciReplyTransactionType; - - request.replyBuffer = (vm_address_t) &reply_data[0] ; - request.replyBytes = sizeof(reply_data); - request.minReplyDelay = 10; - - int calculated_checksum; - - bzero( &reply_data[0], request.replyBytes); - - kr = IOI2CSendRequest( connect, kNilOptions, &request ); - - calculated_checksum = 0x6f ^ 0x51 ^ reply_data[1] ^ reply_data[2] ^ reply_data[3] ^ reply_data[4]^ reply_data[5]^ reply_data[6]^ reply_data[7]^ reply_data[8]^ reply_data[9]; - - if ((reply_data[10] == calculated_checksum) && reply_data[4] == data[3] ) { - #ifdef DEBUG - printf("ddc_read: Took %d retries for succesful read\n", i); - #endif - - break; - } - //fprintf(stderr, "READ ERROR\n"); - - } - - IOI2CInterfaceClose(connect, kNilOptions); - - p_read->response.max_value = reply_data[7]; - p_read->response.current_value = reply_data[9]; - - if(kIOReturnSuccess == kr && kIOReturnSuccess == request.result) { - p_read->response.valid = true; - } - else { - p_read->response.valid = false; - - #ifdef DEBUG - printf("ddc_read: error read\n"); - #endif - - return 0; - } - - return 1; -} - -void EDIDRead(CGDirectDisplayID display_id, struct EDID* edid) { - kern_return_t kr; - IOI2CConnectRef connect; - IOI2CRequest request; - UInt8 data[128]; - - if(!(connect = display_connection(display_id))) - return; - - bzero( &request, sizeof(request) ); - - request.commFlags = 0; - request.sendAddress = 0xA0; - request.sendTransactionType = kIOI2CSimpleTransactionType; - request.sendBuffer = (vm_address_t)&data[0]; - request.sendBytes = 0x01; - data[0] = 0x00; - - request.replyAddress = 0xA1; - request.replyTransactionType = kIOI2CSimpleTransactionType; - request.replyBuffer = (vm_address_t)&data[0]; - request.replyBytes = sizeof(data); - request.minReplyDelay = 10; - bzero( &data[0], request.replyBytes ); - - do { - kr = IOI2CSendRequest(connect, kNilOptions, &request); - } while( kIOReturnSuccess != kr ); - - if(kIOReturnSuccess != request.result) - return; - - if(edid) memcpy(edid, &data, 128); - - UInt32 i = 0; - UInt8 sum = 0; - while(i < request.replyBytes) { - if(i % 128 == 0) { - if(sum)break; - sum = 0; - } - sum += data[i++]; - } - - IOI2CInterfaceClose(connect, kNilOptions); -} - diff --git a/BrightnessMenulet/ddc.h b/BrightnessMenulet/ddc.h deleted file mode 100755 index 48074f5..0000000 --- a/BrightnessMenulet/ddc.h +++ /dev/null @@ -1,259 +0,0 @@ -/* - * ddc.h - * ddc - * - * Created by Jonathan Taylor on 07/10/2009. - * Copyright 2009 __MyCompanyName__. All rights reserved. - * - */ - -#ifdef __cplusplus -extern "C" { -#endif - -#include -#include -#include - -#define RESET 0x04 -#define RESET_BRIGHTNESS_AND_CONTRAST 0x05 -#define RESET_GEOMETRY 0x06 -#define RESET_COLOR 0x08 -#define BRIGHTNESS 0x10 //OK -#define CONTRAST 0x12 //OK -#define RED_GAIN 0x16 -#define GREEN_GAIN 0x18 -#define BLUE_GAIN 0x1A -#define AUTO_SIZE_CENTER 0x1E -#define WIDTH 0x22 -#define HEIGHT 0x32 -#define VERTICAL_POS 0x30 -#define HORIZONTAL_POS 0x20 -#define PINCUSHION_AMP 0x24 -#define PINCUSHION_PHASE 0x42 -#define KEYSTONE_BALANCE 0x40 -#define PINCUSHION_BALANCE 0x26 -#define TOP_PINCUSHION_AMP 0x46 -#define TOP_PINCUSHION_BALANCE 0x48 -#define BOTTOM_PINCUSHION_AMP 0x4A -#define BOTTOM_PINCUSHION_BALANCE 0x4C -#define VERTICAL_LINEARITY 0x3A -#define VERTICAL_LINEARITY_BALANCE 0x3C -#define HORIZONTAL_STATIC_CONVERGENCE 0x28 -#define VERTICAL_STATIC_CONVERGENCE 0x28 -#define MOIRE_CANCEL 0x56 -#define INPUT_SOURCE 0x60 -#define AUDIO_SPEAKER_VOLUME 0x62 -#define RED_BLACK_LEVEL 0x6C -#define GREEN_BLACK_LEVEL 0x6E -#define BLUE_BLACK_LEVEL 0x70 - -#define SETTINGS 0xB0 //unsure on this one -#define ON_SCREEN_DISPLAY 0xCA -#define OSD_LANGUAGE 0xCC -#define DPMS 0xD6 -#define MAGIC_BRIGHT 0xDC //unsure -#define VCP_VERSION 0xDF -#define COLOR_PRESET 0xE0 -#define POWER_CONTROL 0xE1 - -#define TOP_LEFT_SCREEN_PURITY 0xE8 -#define TOP_RIGHT_SCREEN_PURITY 0xE9 -#define BOTTOM_LEFT_SCREEN_PURITY 0xE8 -#define BOTTOM_RIGHT_SCREEN_PURITY 0xEB - -struct DDCWriteCommand { - UInt8 control_id; - UInt8 new_value; -}; - -struct DDCReadResponse { - bool valid; - - UInt8 max_value; - UInt8 current_value; -}; - -struct DDCReadCommand { - UInt8 control_id; - size_t reply_bytes; - unsigned char* reply_buffer; - struct DDCReadResponse response; -}; - -// EDID struct credits to https://github.com/kfix/ddcctl -struct EDID { - UInt64 header : 64; - UInt8 : 1; - UInt16 eisaid :15; - UInt16 productcode : 16; - UInt32 serial : 32; - UInt8 week : 8; - UInt8 year : 8; - UInt8 versionmajor : 8; - UInt8 versionminor : 8; - UInt8 digitalinput : 1; - union inputbitmap { - struct digitalinput { - UInt8 : 6; - UInt8 dfp : 1; - } digital; - struct analoginput { - UInt8 synclevels : 2; - UInt8 pedestal : 1; - UInt8 separate : 1; - UInt8 composite : 1; - UInt8 green : 1; - UInt8 serrated : 1; - } analog; - }; - UInt8 maxh : 8; - UInt8 maxv : 8; - UInt8 gamma : 8; - UInt8 standby : 1; - UInt8 suspend : 1; - UInt8 activeoff : 1; - UInt8 displaytype: 2; - UInt8 srgb : 1; - UInt8 preferredtiming : 1; - UInt8 gtf : 1; - UInt8 redxlsb : 2; - UInt8 redylsb : 2; - UInt8 greenxlsb : 2; - UInt8 greenylsb : 2; - UInt8 bluexlsb : 2; - UInt8 blueylsb : 2; - UInt8 whitexlsb : 2; - UInt8 whiteylsb : 2; - UInt8 redxmsb : 8; - UInt8 redymsb : 8; - UInt8 greenxmsb : 8; - UInt8 greenymsb : 8; - UInt8 bluexmsb : 8; - UInt8 blueymsb : 8; - UInt8 whitexmsb : 8; - UInt8 whiteymsb : 8; - UInt8 t720x400a70 : 1; - UInt8 t720x400a88 : 1; - UInt8 t640x480a60 : 1; - UInt8 t640x480a67 : 1; - UInt8 t640x480a72 : 1; - UInt8 t640x480a75 : 1; - UInt8 t800x600a56 : 1; - UInt8 t800x600a60 : 1; - UInt8 t800x600a72 : 1; - UInt8 t800x600a75 : 1; - UInt8 t832x624a75 : 1; - UInt8 t1024x768a87 : 1; - UInt8 t1024x768a60 : 1; - UInt8 t1024x768a72 : 1; - UInt8 t1024x768a75 : 1; - UInt8 t1280x1024a75 : 1; - UInt8 t1152x870a75 : 1; - UInt8 othermodes : 7; - struct timing { - UInt8 xresolution : 8; - UInt8 ratio : 2; - UInt8 vertical : 6; - } timing1; - struct timing timing2; - struct timing timing3; - struct timing timing4; - struct timing timing5; - struct timing timing6; - struct timing timing7; - struct timing timing8; - union descriptor { - struct timingdetail { - UInt16 clock : 16; - UInt8 hactivelsb : 8; - UInt8 hblankinglsb : 8; - UInt8 hactivemsb : 4; - UInt8 hblankingmsb : 4; - UInt8 vactivelsb : 8; - UInt8 vblankinglsb : 8; - UInt8 vactivemsb : 4; - UInt8 vblankingmsb : 4; - UInt8 hsyncoffsetlsb : 8; - UInt8 hsyncpulselsb : 8; - UInt8 vsyncoffsetlsb : 4; - UInt8 vsyncpulselsb : 4; - UInt8 hsyncoffsetmsb : 2; - UInt8 hsyncpulsemsb : 2; - UInt8 vsyncoffsetmsb : 2; - UInt8 vsyncpulsemsb : 2; - UInt8 hsizelsb : 8; - UInt8 vsizelsb : 8; - UInt8 hsizemsb : 4; - UInt8 vsizemsb : 4; - UInt8 hborder : 8; - UInt8 vborder : 8; - UInt8 interlaced : 1; - UInt8 stereo : 2; - UInt8 synctype : 2; - union sync { - struct analogsync { - UInt8 serrated : 1; - UInt8 syncall : 1; - } analog; - struct digitalsync { - UInt8 vsync : 1; - UInt8 hsync : 1; - } digital; - }; - UInt8 twowaystereo : 1; - } timing; - struct text { - UInt32 : 24; - UInt8 type : 8; - UInt8 : 8; - char data[13]; - } text; - struct __attribute__ ((packed)) rangelimits { - UInt64 header : 40; - UInt8 minvfield : 8; - UInt8 minhfield : 8; - UInt8 minhline : 8; - UInt8 minvline : 8; - UInt8 maxclock : 8; - UInt8 extended : 8; - UInt8 : 8; - UInt8 startfreq : 8; - UInt8 cvalue : 8; - UInt16 mvalue : 16; - UInt8 kvalue : 8; - UInt8 jvalue : 8; - } range; - struct __attribute__ ((packed)) whitepoint { - UInt64 header : 40; - UInt8 index : 8; - UInt8 : 4; - UInt8 whitexlsb : 2; - UInt8 whiteylsb : 2; - UInt8 whitexmsb : 8; - UInt8 whiteymsb : 8; - UInt8 gamma : 8; - UInt8 index2 : 8; - UInt8 : 4; - UInt8 whitexlsb2 : 2; - UInt8 whiteylsb2 : 2; - UInt8 whitexmsb2 : 8; - UInt8 whiteymsb2 : 8; - UInt8 gamma2 : 8; - UInt32 : 24; - } whitepoint; - } descriptor1; - union descriptor descriptor2; - union descriptor descriptor3; - union descriptor descriptor4; - UInt8 extensions : 8; - UInt8 checksum : 8; -}; - -int ddc_write(CGDirectDisplayID display_id, struct DDCWriteCommand * p_write); -int ddc_read(CGDirectDisplayID display_id, struct DDCReadCommand * p_read); -void EDIDRead(CGDirectDisplayID display_id, struct EDID *edid); - -#ifdef __cplusplus -} -#endif \ No newline at end of file diff --git a/BrightnessMenulet/version.plist b/BrightnessMenulet/version.plist deleted file mode 100755 index 5611992..0000000 --- a/BrightnessMenulet/version.plist +++ /dev/null @@ -1,16 +0,0 @@ - - - - - BuildVersion - 3 - CFBundleVersion - 1.0 - ProductBuildVersion - 9M2729 - ProjectName - DevToolsWizardTemplates - SourceVersion - 11600000 - - diff --git a/BrightnessMenulet/DDCControls.h b/DDCControls/DDCControls.h similarity index 97% rename from BrightnessMenulet/DDCControls.h rename to DDCControls/DDCControls.h index 6b67b6b..d4eef03 100644 --- a/BrightnessMenulet/DDCControls.h +++ b/DDCControls/DDCControls.h @@ -7,7 +7,7 @@ // #import -#import "ddc.h" +#import "DDC.h" #import "Screen.h" diff --git a/BrightnessMenulet/DDCControls.m b/DDCControls/DDCControls.m similarity index 100% rename from BrightnessMenulet/DDCControls.m rename to DDCControls/DDCControls.m diff --git a/BrightnessMenulet/Screen.h b/DDCControls/Screen.h similarity index 98% rename from BrightnessMenulet/Screen.h rename to DDCControls/Screen.h index 47f43f3..6b5d48d 100644 --- a/BrightnessMenulet/Screen.h +++ b/DDCControls/Screen.h @@ -7,7 +7,7 @@ // #import -#import "ddc.h" +#import "DDC.h" @interface Screen : NSObject diff --git a/BrightnessMenulet/Screen.m b/DDCControls/Screen.m similarity index 100% rename from BrightnessMenulet/Screen.m rename to DDCControls/Screen.m diff --git a/BrightnessMenulet/LMUController.h b/LMU/LMUController.h similarity index 100% rename from BrightnessMenulet/LMUController.h rename to LMU/LMUController.h diff --git a/BrightnessMenulet/LMUController.m b/LMU/LMUController.m similarity index 100% rename from BrightnessMenulet/LMUController.m rename to LMU/LMUController.m diff --git a/BrightnessMenulet/LMUDelegate.h b/LMU/LMUDelegate.h similarity index 100% rename from BrightnessMenulet/LMUDelegate.h rename to LMU/LMUDelegate.h diff --git a/BrightnessMenulet/MainMenuController.h b/Menu/MainMenuController.h similarity index 100% rename from BrightnessMenulet/MainMenuController.h rename to Menu/MainMenuController.h diff --git a/BrightnessMenulet/MainMenuController.m b/Menu/MainMenuController.m similarity index 100% rename from BrightnessMenulet/MainMenuController.m rename to Menu/MainMenuController.m diff --git a/BrightnessMenulet/Menu.xib b/Menu/Menu.xib similarity index 100% rename from BrightnessMenulet/Menu.xib rename to Menu/Menu.xib diff --git a/BrightnessMenulet/Preferences.xib b/Preferences/Preferences.xib similarity index 100% rename from BrightnessMenulet/Preferences.xib rename to Preferences/Preferences.xib diff --git a/BrightnessMenulet/PreferencesController.h b/Preferences/PreferencesController.h similarity index 100% rename from BrightnessMenulet/PreferencesController.h rename to Preferences/PreferencesController.h diff --git a/BrightnessMenulet/PreferencesController.m b/Preferences/PreferencesController.m similarity index 100% rename from BrightnessMenulet/PreferencesController.m rename to Preferences/PreferencesController.m diff --git a/BrightnessMenulet/Brightness_Menulet.zip b/Resources/Brightness_Menulet.zip similarity index 100% rename from BrightnessMenulet/Brightness_Menulet.zip rename to Resources/Brightness_Menulet.zip diff --git a/BrightnessMenulet/brightness-sun-transparent-black.icns b/Resources/brightness-sun-transparent-black.icns similarity index 100% rename from BrightnessMenulet/brightness-sun-transparent-black.icns rename to Resources/brightness-sun-transparent-black.icns diff --git a/BrightnessMenulet/icon-alt.png b/Resources/icon-alt.png similarity index 100% rename from BrightnessMenulet/icon-alt.png rename to Resources/icon-alt.png diff --git a/BrightnessMenulet/icon.png b/Resources/icon.png similarity index 100% rename from BrightnessMenulet/icon.png rename to Resources/icon.png diff --git a/BrightnessMenulet/mccsV3.pdf b/Resources/mccsV3.pdf similarity index 100% rename from BrightnessMenulet/mccsV3.pdf rename to Resources/mccsV3.pdf diff --git a/BrightnessMenulet/screenshot.png b/Resources/screenshot.png similarity index 100% rename from BrightnessMenulet/screenshot.png rename to Resources/screenshot.png diff --git a/BrightnessMenulet/BrightnessMenulet_Prefix.pch b/Supporting Files/BrightnessMenulet_Prefix.pch similarity index 100% rename from BrightnessMenulet/BrightnessMenulet_Prefix.pch rename to Supporting Files/BrightnessMenulet_Prefix.pch diff --git a/BrightnessMenulet/Info.plist b/Supporting Files/Info.plist similarity index 100% rename from BrightnessMenulet/Info.plist rename to Supporting Files/Info.plist diff --git a/BrightnessMenulet/main.m b/Supporting Files/main.m similarity index 100% rename from BrightnessMenulet/main.m rename to Supporting Files/main.m diff --git a/ddcctl b/ddcctl new file mode 160000 index 0000000..d11c3f4 --- /dev/null +++ b/ddcctl @@ -0,0 +1 @@ +Subproject commit d11c3f4a63a090923b55ec93f363b381f2729d0c From 45927f740989f27fb63c3bc1f5bf4e05f2b55a6d Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Mon, 6 Mar 2017 22:47:20 -0800 Subject: [PATCH 02/10] Update README, build, add DEBUG flags to certain logs --- AppDelegate.m | 4 +- DDCControls/DDCControls.h | 2 +- DDCControls/DDCControls.m | 66 +++++++++++++++------------- DDCControls/Screen.m | 38 +++++++++------- LMU/LMUController.m | 34 +++++++------- Menu/MainMenuController.m | 14 +++--- Preferences/PreferencesController.m | 37 +++++++--------- README.rst | 53 ++++------------------ Resources/Brightness_Menulet.zip | Bin 81058 -> 81969 bytes Supporting Files/main.m | 2 +- 10 files changed, 108 insertions(+), 142 deletions(-) diff --git a/AppDelegate.m b/AppDelegate.m index 6278050..4cdf6a1 100644 --- a/AppDelegate.m +++ b/AppDelegate.m @@ -41,10 +41,10 @@ - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; - if(![[[defaults dictionaryRepresentation] allKeys] containsObject:@"LMUUpdateInterval"]) + if (![[[defaults dictionaryRepresentation] allKeys] containsObject:@"LMUUpdateInterval"]) [defaults setFloat:0.5 forKey:@"LMUUpdateInterval"]; - if([defaults boolForKey:@"autoBrightOnStartup"]) + if ([defaults boolForKey:@"autoBrightOnStartup"]) [lmuCon startMonitoring]; } diff --git a/DDCControls/DDCControls.h b/DDCControls/DDCControls.h index d4eef03..8e4bbe3 100644 --- a/DDCControls/DDCControls.h +++ b/DDCControls/DDCControls.h @@ -19,7 +19,7 @@ + (DDCControls*)singleton; - (NSString*)EDIDString:(char*) string; -- (struct DDCReadResponse)readDisplay:(CGDirectDisplayID)display_id controlValue:(int)control; +- (struct DDCReadCommand)readDisplay:(CGDirectDisplayID)display_id controlValue:(int)control; - (void)changeDisplay:(CGDirectDisplayID)display_id control:(int)control withValue:(int)value; - (void)refreshScreens; diff --git a/DDCControls/DDCControls.m b/DDCControls/DDCControls.m index 8048e6f..980794c 100644 --- a/DDCControls/DDCControls.m +++ b/DDCControls/DDCControls.m @@ -10,7 +10,7 @@ @implementation DDCControls -+ (DDCControls*)singleton{ ++ (DDCControls*)singleton { static dispatch_once_t pred = 0; static DDCControls* shared; dispatch_once(&pred, ^{ @@ -20,59 +20,63 @@ + (DDCControls*)singleton{ return shared; } -// // EDID credits to https://github.com/kfix/ddcctl -- (NSString*)EDIDString:(char*) string { - NSString* temp = [[NSString alloc] initWithBytes:string length:13 encoding:NSASCIIStringEncoding]; - - return ([temp rangeOfString:@"\n"].location != NSNotFound) - ? [[temp componentsSeparatedByString:@"\n"] objectAtIndex:0] - : temp; +// EDID credits to https://github.com/kfix/ddcctl +- (NSString*)EDIDString:(char*)string { + NSString *temp = [[NSString alloc] initWithBytes:string length:13 encoding:NSASCIIStringEncoding]; + return ([temp rangeOfString:@"\n"].location != NSNotFound) ? [[temp componentsSeparatedByString:@"\n"] objectAtIndex:0] : temp; } -- (struct DDCReadResponse)readDisplay:(CGDirectDisplayID)display_id controlValue:(int)control{ - struct DDCReadCommand read_command = (struct DDCReadCommand){.control_id = control}; +- (struct DDCReadCommand)readDisplay:(CGDirectDisplayID)display_id controlValue:(int)control { + struct DDCReadCommand read_command = (struct DDCReadCommand) { .control_id = control }; - if(ddc_read(display_id, &read_command) != 1) + if (!DDCRead(display_id, &read_command)) { +#ifdef DEBUG NSLog(@"readDisplay:%u controlValue: failed need to retry...", display_id); +#endif + } - return read_command.response; + return read_command; } -- (void)changeDisplay:(CGDirectDisplayID)display_id control:(int)control withValue:(int)value{ - struct DDCWriteCommand write_command = (struct DDCWriteCommand){.control_id = control, .new_value = value}; +- (void)changeDisplay:(CGDirectDisplayID)display_id control:(int)control withValue:(int)value { + struct DDCWriteCommand write_command = (struct DDCWriteCommand) { .control_id = control, .new_value = value }; - if(ddc_write(display_id, &write_command) != 1) + if (!DDCWrite(display_id, &write_command)) { +#ifdef DEBUG NSLog(@"writeDisplay:%u withValue: failed need to retry...", display_id); +#endif + } } - (void)refreshScreens { NSLog(@"DDCControls: Refreshing Screens"); NSMutableArray* newScreens = [NSMutableArray array]; - for(NSScreen* screen in [NSScreen screens]) { + for (NSScreen* screen in [NSScreen screens]) { // Must call unsignedIntValue to get val NSNumber* screenNumber = screen.deviceDescription[@"NSScreenNumber"]; // Fetch Monitor info via EDID struct EDID edid = {}; - EDIDRead([screenNumber unsignedIntegerValue], &edid); - NSString* name; NSString* serial; - for (NSValue *value in @[[NSValue valueWithPointer:&edid.descriptor1], [NSValue valueWithPointer:&edid.descriptor2], [NSValue valueWithPointer:&edid.descriptor3], [NSValue valueWithPointer:&edid.descriptor4]]) { - union descriptor *des = value.pointerValue; - switch (des->text.type) { - case 0xFF: - serial = [self EDIDString:des->text.data]; - break; - case 0xFC: - name = [self EDIDString:des->text.data]; - break; + + if (EDIDTest([screenNumber unsignedIntegerValue], &edid)) { + for (union descriptor *des = edid.descriptors; des < edid.descriptors + sizeof(edid.descriptors); des++) { + switch (des->text.type) { + case 0xFF: + serial = [self EDIDString:des->text.data]; + break; + case 0xFC: + name = [self EDIDString:des->text.data]; + break; + } } } // don't want to manage invalid screen or integrated LCD - if(!name || [name isEqualToString:@"Color LCD"] || [name isEqualToString:@"iMac"]) continue; + if (!name || [name isEqualToString:@"Color LCD"] || [name isEqualToString:@"iMac"]) + continue; // Build screen instance NSLog(@"DDCControls: Found %@ - %@", name, screenNumber); @@ -84,7 +88,7 @@ - (void)refreshScreens { _screens = [newScreens copy]; - if([newScreens count] == 0) + if ([newScreens count] == 0) NSLog(@"DDCControls: No screens found"); } @@ -93,7 +97,7 @@ - (void)refreshScreenValues{ } - (Screen*)screenForDisplayName:(NSString*)name { - for(Screen* screen in _screens) + for (Screen* screen in _screens) if ([screen.model isEqualToString:name]) return screen; @@ -101,7 +105,7 @@ - (Screen*)screenForDisplayName:(NSString*)name { } - (Screen*)screenForDisplayID:(CGDirectDisplayID)display_id { - for(Screen* screen in _screens) + for (Screen* screen in _screens) if (screen.screenNumber == display_id) return screen; diff --git a/DDCControls/Screen.m b/DDCControls/Screen.m index 899ca5a..21ea834 100644 --- a/DDCControls/Screen.m +++ b/DDCControls/Screen.m @@ -25,9 +25,9 @@ @interface Screen () @implementation Screen - (instancetype)initWithModel:(NSString*)model screenID:(CGDirectDisplayID)screenID serial:(NSString*)serial { - if((self = [super init])){ + if ((self = [super init])) { _model = [model copy]; - self.screenNumber = screenID; + _screenNumber = screenID; _serial = [serial copy]; _brightnessOutlets = [NSMutableArray array]; @@ -38,10 +38,10 @@ - (instancetype)initWithModel:(NSString*)model screenID:(CGDirectDisplayID)scree } - (void)refreshValues { - struct DDCReadResponse cBrightness = [controls readDisplay:self.screenNumber controlValue:BRIGHTNESS]; - struct DDCReadResponse cContrast = [controls readDisplay:self.screenNumber controlValue:CONTRAST]; + struct DDCReadCommand cBrightness = [controls readDisplay:self.screenNumber controlValue:BRIGHTNESS]; + struct DDCReadCommand cContrast = [controls readDisplay:self.screenNumber controlValue:CONTRAST]; - if (!cBrightness.valid && !cContrast.valid) + if (!cBrightness.success && !cContrast.success) return; self.currentBrightness = cBrightness.current_value; @@ -57,20 +57,22 @@ - (void)refreshValues { } - (void)ddcReadOut { - for(int i=0x00; i<=255; i++){ - struct DDCReadResponse response = [controls readDisplay:self.screenNumber controlValue:i]; + for (int i=0x00; i<=255; i++) { + struct DDCReadCommand response = [controls readDisplay:self.screenNumber controlValue:i]; NSLog(@"VCP: %x - %d / %d \n", i, response.current_value, response.max_value); } } - (void)setBrightness:(NSInteger)brightness { - if(brightness > self.maxBrightness) + if (brightness > self.maxBrightness) brightness = self.maxBrightness; [controls changeDisplay:self.screenNumber control:BRIGHTNESS withValue: brightness]; self.currentBrightness = brightness; +#ifdef DEBUG NSLog(@"Screen: %@ - %ud Brightness changed to %ld", _model, self.screenNumber, (long)self.currentBrightness); +#endif } - (void)setBrightnessWithPercentage:(NSInteger)percentage byOutlet:(NSView*)outlet { @@ -78,13 +80,13 @@ - (void)setBrightnessWithPercentage:(NSInteger)percentage byOutlet:(NSView*)outl } - (void)setBrightness:(NSInteger)brightness byOutlet:(NSView*)outlet { - if(brightness == self.currentBrightness) + if (brightness == self.currentBrightness) return; else [self setBrightness:brightness]; NSMutableArray* dirtyOutlets = [_brightnessOutlets mutableCopy]; - if(outlet) + if (outlet) [dirtyOutlets removeObject:outlet]; [self updateBrightnessOutlets:dirtyOutlets]; @@ -92,8 +94,8 @@ - (void)setBrightness:(NSInteger)brightness byOutlet:(NSView*)outlet { - (void)updateBrightnessOutlets:(NSArray*)outlets { dispatch_async(dispatch_get_main_queue(), ^{ - for(id outlet in outlets){ - if(![outlet isKindOfClass:[NSTextField class]]) + for (id outlet in outlets) { + if (![outlet isKindOfClass:[NSTextField class]]) [outlet setMaxValue:_maxBrightness]; [outlet setIntegerValue:_currentBrightness]; @@ -102,13 +104,15 @@ - (void)updateBrightnessOutlets:(NSArray*)outlets { } - (void)setContrast:(NSInteger)contrast { - if(contrast > self.maxContrast) + if (contrast > self.maxContrast) contrast = self.maxContrast; [controls changeDisplay:self.screenNumber control:CONTRAST withValue: contrast]; self.currentContrast = contrast; +#ifdef DEBUG NSLog(@"Screen: %@ - %ud Contrast changed to %ld", _model, self.screenNumber, (long)self.currentContrast); +#endif } - (void)setContrastWithPercentage:(NSInteger)percentage byOutlet:(NSView*)outlet { @@ -116,13 +120,13 @@ - (void)setContrastWithPercentage:(NSInteger)percentage byOutlet:(NSView*)outlet } - (void)setContrast:(NSInteger)contrast byOutlet:(NSView*)outlet { - if(contrast == self.currentContrast) + if (contrast == self.currentContrast) return; else [self setContrast:contrast]; NSMutableArray* dirtyOutlets = [_contrastOutlets mutableCopy]; - if(outlet) + if (outlet) [dirtyOutlets removeObject:outlet]; [self updateContrastOutlets:dirtyOutlets]; @@ -130,8 +134,8 @@ - (void)setContrast:(NSInteger)contrast byOutlet:(NSView*)outlet { - (void)updateContrastOutlets:(NSArray*)outlets { dispatch_async(dispatch_get_main_queue(), ^{ - for(id outlet in outlets){ - if(![outlet isKindOfClass:[NSTextField class]]) + for (id outlet in outlets) { + if (![outlet isKindOfClass:[NSTextField class]]) [outlet setMaxValue:_maxContrast]; [outlet setIntegerValue:_currentContrast]; diff --git a/LMU/LMUController.m b/LMU/LMUController.m index 72e11f8..01dc186 100644 --- a/LMU/LMUController.m +++ b/LMU/LMUController.m @@ -32,7 +32,7 @@ + (LMUController*)singleton{ } - (instancetype)init { - if((self = [super init])){ + if ((self = [super init])) { _lmuDataPort = 0; [self getLMUDataPort]; @@ -49,11 +49,11 @@ - (io_connect_t)getLMUDataPort { kern_return_t kr; io_service_t serviceObject; - if(_lmuDataPort) return _lmuDataPort; + if (_lmuDataPort) return _lmuDataPort; serviceObject = IOServiceGetMatchingService(kIOMasterPortDefault, IOServiceMatching("AppleLMUController")); - if(!serviceObject){ + if (!serviceObject) { NSLog(@"LMUController: Failed to find LMU\n"); return 0; } @@ -62,7 +62,7 @@ - (io_connect_t)getLMUDataPort { kr = IOServiceOpen(serviceObject, mach_task_self(), 0, &_lmuDataPort); IOObjectRelease(serviceObject); - if(kr != KERN_SUCCESS){ + if (kr != KERN_SUCCESS) { NSLog(@"LMUController: Failed to open LMU IOService object"); return 0; } @@ -77,7 +77,7 @@ - (void)closeLMUPort { - (void)startMonitoring { // Check if timer already exists of if any screens exist - if(_callbackTimer && ([controls.screens count] == 0)) return; + if (_callbackTimer && ([controls.screens count] == 0)) return; NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; @@ -105,10 +105,8 @@ - (void)stopMonitoring { - (NSInteger)percentForSensorValue:(double)sensorVal { // log10(x+1) scale (Weber-Fechner Law) NSInteger percent = log10(sensorVal + 1) * 10; - // lower percentage with p = 100 - x - percent -= (100 - percent); - if(percent < 0) + if (percent < 0) percent = 0; return percent; @@ -122,7 +120,7 @@ - (void)updateTimerCallBack { // 0 = Sensor Reading kr = IOConnectCallScalarMethod(_lmuDataPort, 0, inputValues, inputCount, outputValues, &outputCount); - if(kr != KERN_SUCCESS){ + if (kr != KERN_SUCCESS) { //printf("error getting light sensor values\n"); return; } @@ -131,7 +129,7 @@ - (void)updateTimerCallBack { double avgSensorValue = ((double)(outputValues[0] + outputValues[1]))/2; // Check if fetched sensor value is over max. If so, lid must be closed - if(avgSensorValue > max){ + if (avgSensorValue > max) { NSLog(@"LMUController: No sensor found or Lid closed"); //[self stopMonitoring]; return; @@ -140,24 +138,24 @@ - (void)updateTimerCallBack { NSInteger percent = [self percentForSensorValue:avgSensorValue]; // Add percent to history queue - if(_percentHistory.count == 4) + if (_percentHistory.count == 4) [_percentHistory removeObjectAtIndex:0]; [_percentHistory addObject:[NSNumber numberWithInteger:percent]]; BOOL needsUpdate = NO; - if(_percentHistory.count == 4){ + if (_percentHistory.count == 4) { NSInteger stableReadingCount = 0; - for(int i=1; i<4; i++) - if([_percentHistory[i] integerValue] == percent) + for (int i=1; i<4; i++) + if ([_percentHistory[i] integerValue] == percent) stableReadingCount++; - if(stableReadingCount == 3) needsUpdate = YES; - }else + if (stableReadingCount == 3) needsUpdate = YES; + } else needsUpdate = YES; - if(needsUpdate) - for(Screen* screen in controls.screens) + if (needsUpdate) + for (Screen* screen in controls.screens) [screen setBrightnessWithPercentage:percent byOutlet:nil]; } diff --git a/Menu/MainMenuController.m b/Menu/MainMenuController.m index ab94d1a..cb81db0 100755 --- a/Menu/MainMenuController.m +++ b/Menu/MainMenuController.m @@ -32,23 +32,23 @@ - (void)refreshMenuScreens { } - (void)setupDisplayLabels { - while(!(self.itemArray[0].isSeparatorItem)) // Remove all current display menu items + while (!(self.itemArray[0].isSeparatorItem)) // Remove all current display menu items [self removeItemAtIndex:0]; - if([controls.screens count] == 0){ + if ([controls.screens count] == 0) { // No screen connected, so disable outlets NSMenuItem* noDispItem = [[NSMenuItem alloc] init]; noDispItem.title = @"No displays found"; [self insertItem:noDispItem atIndex:0]; - if(lmuCon.monitoring) + if (lmuCon.monitoring) [lmuCon stopMonitoring]; return; } // add new outlets for screens - for(Screen* screen in controls.screens){ + for (Screen* screen in controls.screens) { NSString* title = [NSString stringWithFormat:@"%@", screen.model]; NSMenuItem* scrDesc = [[NSMenuItem alloc] init]; scrDesc.title = title; @@ -83,17 +83,17 @@ - (void)setupDisplayLabels { } - (IBAction)toggledAutoBrightness:(NSMenuItem*)sender { - if(sender.state == NSOffState){ + if (sender.state == NSOffState) { [sender setState:NSOnState]; [lmuCon startMonitoring]; - }else{ + } else { [sender setState:NSOffState]; [lmuCon stopMonitoring]; } } - (IBAction)preferences:(id)sender { - if(!_preferencesController) + if (!_preferencesController) _preferencesController = [[PreferencesController alloc] init]; [_preferencesController showWindow]; diff --git a/Preferences/PreferencesController.m b/Preferences/PreferencesController.m index 68d37ed..4d2d548 100644 --- a/Preferences/PreferencesController.m +++ b/Preferences/PreferencesController.m @@ -43,8 +43,7 @@ @implementation PreferencesController - (void)showWindow { // Must support atleast OSX 10.8 because of loadNibNamed:owner:topLevelObjects - if(!_preferenceWindow){ - NSLog(@"PreferencesController: Pref Window alloc"); + if (!_preferenceWindow) { [[NSBundle mainBundle] loadNibNamed:@"Preferences" owner:self topLevelObjects:nil]; _preferenceWindow.delegate = self; @@ -69,10 +68,10 @@ - (void)showWindow { NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; float updateInterval = [defaults floatForKey:@"LMUUpdateInterval"]; - if(updateInterval <= 0) + if (updateInterval <= 0) updateInterval = 0.1; - for(id outlet in _updateIntervalOutlets) + for (id outlet in _updateIntervalOutlets) [outlet setFloatValue:updateInterval]; } @@ -93,8 +92,8 @@ - (void)showWindow { - (void)updateBrightnessControls { NSInteger currentBrightness = _currentScreen.currentBrightness; - for(id brightnessOutlet in _brightnessOutlets){ - if(![brightnessOutlet isKindOfClass:[NSTextField class]]) + for (id brightnessOutlet in _brightnessOutlets) { + if (![brightnessOutlet isKindOfClass:[NSTextField class]]) [brightnessOutlet setMaxValue:_currentScreen.maxBrightness]; [brightnessOutlet setIntValue:currentBrightness]; @@ -104,8 +103,8 @@ - (void)updateBrightnessControls { - (void)updateContrastControls { NSInteger currentContrast = _currentScreen.currentContrast; - for(id contrastOutlet in _contrastOutlets){ - if(![contrastOutlet isKindOfClass:[NSTextField class]]) + for (id contrastOutlet in _contrastOutlets) { + if (![contrastOutlet isKindOfClass:[NSTextField class]]) [contrastOutlet setMaxValue:_currentScreen.maxContrast]; [contrastOutlet setIntValue:currentContrast]; @@ -120,7 +119,7 @@ - (void)refreshScreenPopUpList { [controls refreshScreenValues]; - if([controls.screens count] == 0){ + if ([controls.screens count] == 0) { // no screens so disable outlets [_displayPopUpButton setEnabled:NO]; @@ -132,11 +131,11 @@ - (void)refreshScreenPopUpList { } // Add new screens - for(Screen* screen in controls.screens) + for (Screen* screen in controls.screens) [_displayPopUpButton addItemWithTitle:screen.model]; - if(!_brightCStepper.enabled) - for(id outlet in [_brightnessOutlets arrayByAddingObjectsFromArray:_contrastOutlets]) + if (!_brightCStepper.enabled) + for (id outlet in [_brightnessOutlets arrayByAddingObjectsFromArray:_contrastOutlets]) [outlet setEnabled:YES]; [_displayPopUpButton selectItemAtIndex:0]; @@ -184,7 +183,7 @@ - (IBAction)brightnessOutletValueChanged:(id)sender{ NSMutableArray* dirtyOutlets = [_brightnessOutlets mutableCopy]; [dirtyOutlets removeObject:sender]; - for(id outlet in dirtyOutlets) + for (id outlet in dirtyOutlets) [outlet setIntegerValue:[sender integerValue]]; } @@ -194,7 +193,7 @@ - (IBAction)contrastOutletValueChanged:(id)sender{ NSMutableArray* dirtyOutlets = [_contrastOutlets mutableCopy]; [dirtyOutlets removeObject:sender]; - for(id outlet in dirtyOutlets) + for (id outlet in dirtyOutlets) [outlet setIntegerValue:[sender integerValue]]; } @@ -210,9 +209,9 @@ - (IBAction)updateIntOutletValueChanged:(id)sender { NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults]; float value = [sender floatValue]; - if(value > _updateIntervalSlider.maxValue) + if (value > _updateIntervalSlider.maxValue) value = _updateIntervalSlider.maxValue; - else if(value <= 0) + else if (value <= 0) value = 0.1; [defaults setFloat:value forKey:@"LMUUpdateInterval"]; @@ -220,7 +219,7 @@ - (IBAction)updateIntOutletValueChanged:(id)sender { NSMutableArray* dirtyOutlets = [_updateIntervalOutlets mutableCopy]; [dirtyOutlets removeObject:sender]; - for(id outlet in dirtyOutlets) + for (id outlet in dirtyOutlets) [outlet setFloatValue:value]; } @@ -233,12 +232,10 @@ - (void)windowWillClose:(NSNotification *)notification { _preferenceWindow = nil; // RestartLMU Controller to apply any interval changes - if(lmuCon.monitoring) { + if (lmuCon.monitoring) { [lmuCon stopMonitoring]; [lmuCon startMonitoring]; } - - NSLog(@"PreferencesController: preferenceWindow Dealloc"); } @end diff --git a/README.rst b/README.rst index 65fc2fd..0d16487 100644 --- a/README.rst +++ b/README.rst @@ -3,61 +3,24 @@ Brightness Menulet Allows you to control monitor brigthness via menu in status bar. -This tool works on OSX 10.8+. In 10.8+, I2C tools are not able to detect monitor buses for communication. -The main API calls for DDC communication is deprecated so this project could be obselete if Apple -completely removes CGDisplayIOServicePort. If you have tested your monitor(s) with this tool, please -let me know wether it worked or not so I can add monitor models here. Preference's Debug button logs to the -console VCP codes and their values on the selected monitor. - -Download app build: `BrightnessMenulet.zip`_. +Download app build: `BrightnessMenulet.zip`_. (Updated March 6th 2017) .. _BrightnessMenulet.zip: - https://raw.github.com/kalvin126/BrightnessMenulet/master/BrightnessMenulet/Brightness_Menulet.zip - -.. image:: https://raw.github.com/kalvin126/BrightnessMenulet/master/BrightnessMenulet/screenshot.png - -Monitors: -....................... -+------------------+---------------+ -| Working | Non-Working | -+==================+===============+ -| Dell U2014h | Dell P2715Q | -+------------------+---------------+ -| Dell U2414h | Philips 4065UC| -+------------------+---------------+ -| Dell U2415h | Dell P2412H | -+------------------+---------------+ -| Dell U2515h | Dell U2412M | -+------------------+---------------+ -| Dell U2715h | | -+------------------+---------------+ -| Dell U2713HM | | -+------------------+---------------+ -| Dell P2415Q | | -+------------------+---------------+ -| Dell S2216M | | -+------------------+---------------+ -| Samsung SA 350 | | -+------------------+---------------+ -| BenQ G2410HD | | -+------------------+---------------+ -| Viseo 230Ws | | -+------------------+---------------+ - -If you have tested your monitor(s) with this tool, please let me know whether or not it work and I will update this table. + https://raw.github.com/kalvin126/BrightnessMenulet/master/Resources/Brightness_Menulet.zip +.. image:: https://raw.github.com/kalvin126/BrightnessMenulet/master/Resources/screenshot.png Features: ............ -- Automatic Brightness using built in light sensor (Modify LMUController’s percentageForSensorValue: to your liking) -- Multi-Monitor support (no limit to amount of monitors)! -- Compatible with OSX 10.8+ +- Automatic Brightness using built in light sensor +- Multi-Monitor support (no limit to amount of monitors!) +- *Runnable* with OSX 10.8+ (Mileage will vary per monitor/GPU combination) +- Logs VCP codes to console Roadmap: ........ -- Support for other monitor makes (Currently only tested on Dell and certian HP displays) - Time based settings - Add keyboard bindings @@ -67,7 +30,7 @@ Credits: - `Alec Jacobson`_ - `original Brightness Menulet app`_ creator - Jon Taylor - `DDC/CI bindings`_ - Victor Miroshnikov - copy&paste&debug job -- `Joey Korkames`_: EDID Reading +- `Joey Korkames`_: DDC / ddcctl .. _DDC/CI bindings: https://github.com/jontaylor/DDC-CI-Tools-for-OS-X diff --git a/Resources/Brightness_Menulet.zip b/Resources/Brightness_Menulet.zip index 307f1f6940573cf374e3a0a155d45bef1d32df73..1cfcef251e2004149cc5b6483deaaf81ed570d67 100644 GIT binary patch delta 58985 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 z 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 delta 58434 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 -int main(int argc, const char * argv[]){ +int main(int argc, const char * argv[]) { return NSApplicationMain(argc, argv); } From 95ac1937266fe95e82f94df4df1af366c82c50cd Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sat, 7 Jul 2018 09:52:51 -0700 Subject: [PATCH 03/10] Resolve number type warnings --- DDCControls/DDCControls.m | 4 ++-- DDCControls/Screen.m | 12 ++++++------ Menu/MainMenuController.m | 2 +- Preferences/PreferencesController.m | 4 ++-- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/DDCControls/DDCControls.m b/DDCControls/DDCControls.m index 980794c..143dbcd 100644 --- a/DDCControls/DDCControls.m +++ b/DDCControls/DDCControls.m @@ -61,7 +61,7 @@ - (void)refreshScreens { NSString* name; NSString* serial; - if (EDIDTest([screenNumber unsignedIntegerValue], &edid)) { + if (EDIDTest([screenNumber unsignedIntValue], &edid)) { for (union descriptor *des = edid.descriptors; des < edid.descriptors + sizeof(edid.descriptors); des++) { switch (des->text.type) { case 0xFF: @@ -80,7 +80,7 @@ - (void)refreshScreens { // Build screen instance NSLog(@"DDCControls: Found %@ - %@", name, screenNumber); - Screen* screen = [[Screen alloc] initWithModel:name screenID:[screenNumber unsignedIntegerValue] serial:serial]; + Screen* screen = [[Screen alloc] initWithModel:name screenID:[screenNumber unsignedIntValue] serial:serial]; [screen refreshValues]; [newScreens addObject:screen]; diff --git a/DDCControls/Screen.m b/DDCControls/Screen.m index 21ea834..0acb726 100644 --- a/DDCControls/Screen.m +++ b/DDCControls/Screen.m @@ -67,7 +67,7 @@ - (void)setBrightness:(NSInteger)brightness { if (brightness > self.maxBrightness) brightness = self.maxBrightness; - [controls changeDisplay:self.screenNumber control:BRIGHTNESS withValue: brightness]; + [controls changeDisplay:self.screenNumber control:BRIGHTNESS withValue:(int)brightness]; self.currentBrightness = brightness; #ifdef DEBUG @@ -96,9 +96,9 @@ - (void)updateBrightnessOutlets:(NSArray*)outlets { dispatch_async(dispatch_get_main_queue(), ^{ for (id outlet in outlets) { if (![outlet isKindOfClass:[NSTextField class]]) - [outlet setMaxValue:_maxBrightness]; + [outlet setMaxValue:self.maxBrightness]; - [outlet setIntegerValue:_currentBrightness]; + [outlet setIntegerValue:self.currentBrightness]; } }); } @@ -107,7 +107,7 @@ - (void)setContrast:(NSInteger)contrast { if (contrast > self.maxContrast) contrast = self.maxContrast; - [controls changeDisplay:self.screenNumber control:CONTRAST withValue: contrast]; + [controls changeDisplay:self.screenNumber control:CONTRAST withValue:(int)contrast]; self.currentContrast = contrast; #ifdef DEBUG @@ -136,9 +136,9 @@ - (void)updateContrastOutlets:(NSArray*)outlets { dispatch_async(dispatch_get_main_queue(), ^{ for (id outlet in outlets) { if (![outlet isKindOfClass:[NSTextField class]]) - [outlet setMaxValue:_maxContrast]; + [outlet setMaxValue:self.maxContrast]; - [outlet setIntegerValue:_currentContrast]; + [outlet setIntegerValue:self.currentContrast]; } }); } diff --git a/Menu/MainMenuController.m b/Menu/MainMenuController.m index cb81db0..25b664c 100755 --- a/Menu/MainMenuController.m +++ b/Menu/MainMenuController.m @@ -100,7 +100,7 @@ - (IBAction)preferences:(id)sender { } - (void)sliderUpdate:(NSSlider*)slider { - [[controls screenForDisplayID:slider.tag] setBrightness:[slider integerValue] byOutlet:slider]; + [[controls screenForDisplayID:(int)slider.tag] setBrightness:[slider integerValue] byOutlet:slider]; } - (IBAction)quit:(id)sender { diff --git a/Preferences/PreferencesController.m b/Preferences/PreferencesController.m index 4d2d548..8942b17 100644 --- a/Preferences/PreferencesController.m +++ b/Preferences/PreferencesController.m @@ -96,7 +96,7 @@ - (void)updateBrightnessControls { if (![brightnessOutlet isKindOfClass:[NSTextField class]]) [brightnessOutlet setMaxValue:_currentScreen.maxBrightness]; - [brightnessOutlet setIntValue:currentBrightness]; + [brightnessOutlet setIntegerValue:currentBrightness]; } } @@ -107,7 +107,7 @@ - (void)updateContrastControls { if (![contrastOutlet isKindOfClass:[NSTextField class]]) [contrastOutlet setMaxValue:_currentScreen.maxContrast]; - [contrastOutlet setIntValue:currentContrast]; + [contrastOutlet setIntegerValue:currentContrast]; } } From 0c8e98c1f2b7f04febf8c894807c5c78906d6efe Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sat, 7 Jul 2018 10:05:28 -0700 Subject: [PATCH 04/10] [Project] Update configuration to Xcode 8.0 format --- BrightnessMenulet.xcodeproj/project.pbxproj | 65 +++++++++++++++++---- 1 file changed, 54 insertions(+), 11 deletions(-) diff --git a/BrightnessMenulet.xcodeproj/project.pbxproj b/BrightnessMenulet.xcodeproj/project.pbxproj index a85d9e8..db12a19 100755 --- a/BrightnessMenulet.xcodeproj/project.pbxproj +++ b/BrightnessMenulet.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 46; + objectVersion = 48; objects = { /* Begin PBXBuildFile section */ @@ -218,7 +218,7 @@ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0700; + LastUpgradeCheck = 1000; TargetAttributes = { 8D1107260486CEB800E47090 = { DevelopmentTeam = N6A2S4TCDQ; @@ -226,7 +226,7 @@ }; }; buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "BrightnessMenulet" */; - compatibilityVersion = "Xcode 3.2"; + compatibilityVersion = "Xcode 8.0"; developmentRegion = English; hasScannedForEncodings = 1; knownRegions = ( @@ -280,19 +280,14 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ENABLE_OBJC_ARC = YES; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer"; + CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; - COPY_PHASE_STRIP = NO; - GCC_DYNAMIC_NO_PIC = NO; GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; - GCC_OPTIMIZATION_LEVEL = 0; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; - "GCC_PREPROCESSOR_DEFINITIONS[arch=*]" = DEBUG; INFOPLIST_FILE = "$(SRCROOT)/Supporting Files/Info.plist"; INSTALL_PATH = "$(HOME)/Applications"; - LIBRARY_SEARCH_PATHS = "$(inherited)"; MACOSX_DEPLOYMENT_TARGET = 10.8; PRODUCT_BUNDLE_IDENTIFIER = com.redpanda.BrightnessMenulet; PRODUCT_NAME = "Brightness Menulet"; @@ -306,7 +301,7 @@ buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ENABLE_OBJC_ARC = YES; - "CODE_SIGN_IDENTITY[sdk=macosx*]" = "Mac Developer"; + CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_MODEL_TUNING = G5; @@ -314,7 +309,6 @@ GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; INFOPLIST_FILE = "$(SRCROOT)/Supporting Files/Info.plist"; INSTALL_PATH = "$(HOME)/Applications"; - LIBRARY_SEARCH_PATHS = "$(inherited)"; MACOSX_DEPLOYMENT_TARGET = 10.8; ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.redpanda.BrightnessMenulet; @@ -327,10 +321,35 @@ C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = c99; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.8; ONLY_ACTIVE_ARCH = YES; @@ -343,8 +362,32 @@ C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = c99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.8; PREBINDING = NO; From f310c8c1a35ffb605df8a56fbb8ee9455ce70bad Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sat, 7 Jul 2018 10:20:01 -0700 Subject: [PATCH 05/10] Fix Debug preproccessor set in release --- BrightnessMenulet.xcodeproj/project.pbxproj | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/BrightnessMenulet.xcodeproj/project.pbxproj b/BrightnessMenulet.xcodeproj/project.pbxproj index db12a19..91f58f6 100755 --- a/BrightnessMenulet.xcodeproj/project.pbxproj +++ b/BrightnessMenulet.xcodeproj/project.pbxproj @@ -303,7 +303,6 @@ CLANG_ENABLE_OBJC_ARC = YES; CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; GCC_MODEL_TUNING = G5; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; @@ -339,6 +338,7 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = c99; @@ -379,10 +379,10 @@ CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = c99; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNDECLARED_SELECTOR = YES; From 70399dad571e093720c494c86b4f96bdba55baff Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sat, 7 Jul 2018 10:20:40 -0700 Subject: [PATCH 06/10] update ddcctl pointer --- ddcctl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ddcctl b/ddcctl index d11c3f4..3d38860 160000 --- a/ddcctl +++ b/ddcctl @@ -1 +1 @@ -Subproject commit d11c3f4a63a090923b55ec93f363b381f2729d0c +Subproject commit 3d38860d5b1de15199a42d9c5a34756738ca9b2a From 9133ac06a2a2e63abc296fa004c33f0190aac96d Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sat, 7 Jul 2018 10:26:10 -0700 Subject: [PATCH 07/10] Remove tracked build archive --- Resources/Brightness_Menulet.zip | Bin 81969 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Resources/Brightness_Menulet.zip diff --git a/Resources/Brightness_Menulet.zip b/Resources/Brightness_Menulet.zip deleted file mode 100644 index 1cfcef251e2004149cc5b6483deaaf81ed570d67..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 81969 zcmb4}19T?cx8`Hpw$rg~+qT`Y&5mu`w%(*;yW^x|&ye&E3V~KZIj|!2GlR@6XHs{}2DyrBp3ko!ni_EL{IJC}SG`V^FR%^<0akF#>iz z;Ks5eDN@<9SXDGkY@VNtVwtzX(Z+Y}uw%6pQt93>cyf09M3wcNKV0ZAOIumyTwS;TpAA#3k8yQZ(4N9jP(U8Ofc4)?*pWIQj>zi2oaNB6IC3Loq+Bg zsWnAA2K_|LJFE+r_h`N!OM=IyRy!2&fly`hzW2KO$sU3sH5`V4V1fb!WzGLUlgc}* zTHp$EEc3+7!K+&gwH<+F#8y2Lc9;n}SVrdO=@(On$rVjDhgw`2fXfS-bXY9=LM{T$y_MGin&gUw8MS9V3{1Tj^bP&Tn&d_umleF9E zUTP%uDMpnHaW{F6W76{6$SY^BzGF|)Bg$=ZWNT=3;1kIBi|CqYbZb#S(z1=*@6z$u z5|8F~;?t!xeDRYt-FWkC2AOY=Yu#LIc9x#o?2pUY2J^31_dVX;kh>uKSfp7b0mUMU z{#diT9;AyF;y+o3qe*lt5IVWb9Se_a*_@XlAKC1@1QWOVDPX&QsMxe~T;OS(J3{vM zC9=}}`;a85s=5ub%g(O)NmY)^?mi`+V+N&T4%Pw%Q z2FWANa(j8Hm7f(SLr4gMeeca2G+A#OU%is$LL#584jKdyU*_%HIy@4mnSce_Jki_bm~_aw5szke zx>fN`M6?<9Dff=2heTSzQjVrAs*+}vl|hiUa#4QgD4`p~HW*qJG6{^`#TU65Nf%nugqSqFC z=VmK7{oS$Zv|$+N4;|>56&>)oEW8_(4q0c;50hWQUh^yI%fc#otv`Wis?7$X10;ae zF#ma;n(rG-Sq>ToYBVXf6C4Dj9SP*$#O=Q-M)&_FZgl?%#gK8dbYlEzZ{zCr-$m2- zzsX#gx`ERMGloAAfNaXwe$fUqTUA-cSoDBg_xG}Z!YIpNwV7VK*xv3cD4c^JyTX)O zZm#Qf*Xr|*u^UZh3$?7;AhAC2gF)oaAFPx2(4KjUeZhQqPa$&)bn<~?=u)iJap(d%%0t?)GO0YXb(vPM zBy3rBL%AzLYfVOM(KC(Dv|dzWd!3~}^hkP3a%+>9XoFUe-;MAs9FRZXPp1q(m@43z za^vOlSzZ2)Pz*XUE_v#rc3M8>_m`$AkZ9ltFgCmcbAE;SU9W%lVyqXi~T*mbE10H6mP$6 z7ndds%xfrR^hbU(_@JcwDiLo|z&@f7n2Z=VBbe*4o=~K51!m`>#2ue{o9-ix%9tO?#;Fc!08gtyi$`<$&7 z@sY9{+Z%yQqs#?=SExkL_{$Z!S3?!;-f)ecOP(`-`Y)7HEF{DaA_9x;AoVfl8Lz##XH2&O~r+4bo||eM@WrewWYC% z1@hx=rq87{5;pE%dSPyomBaQ9{%L_FUwP{$i=}f4vS=1gWjZT&7*rS2Lhh9}^&M6x z!(uIU&uj53xQ-(jxYtDbYh#7%+wiZbT?l1dR|EqAk%juNQTrd~b*leF)GC;mDXIN? z?);zA{C}J~x&PD5|Ffd_*LQL7KNS;~ecoOv8d%I<eb$6%DLv~{ft3g}p%5}R}^lDJYBV{y*xscGnfK|cGh&0-4>EtnPrnp>GzB@d}XRr z(I`GH;J&ACnW(K=fk;c+9)<$*{KA1(D~D#K<=-wY1WPwlGqmkJaI*FzPt1O8 zQ#iY`cFVm_Omy5a4{2Sw;goFIg-+|#u{V8BwuW*>+=9hS9pjps5fBmk_>Z^;@YZ)T zOBJ!J93AX_z2rhxehG%<$2nssj9CWS$r)2XFf3g011=p>rPTjv|}^r38bqa2?IpFO=gIE4HI?jdLhojse5S2gX0sDIkyK`%ngH#0u-h z94cE+(kQEM+-8m`CWt8<8Ha-M}^7p>9aFmqUKbuym-$46txq z`$M*O!TKXpaJmD;Xzxdk+CMMn5$nb0V%ZOVG{?$yoopXJkMWOGYPJ(mK?ogLe>iUJ z&Ch@B?LIU&7y2>x+fa>mh>{QMexlhDR(WKtu)2iNPLbWFNsv zKY)TcqCWIl*D7w*tj=@jP_MLs_A9I=NkkpG2M0oS@!D_L4qEbepZQC8{WBv-8N6D0oQ>lV?E5cCcLKA}VOLOK=l&b+`(Q1G;_4ks=k|5x zyobCg0Ks93Sul)W{Nutj*tz4Q?PojrzuJCE6qO!4KLFe&Gk0#c?_CKC?hfR+8{QCVAPC zm;vpZd^8!w9(E4#i@X?kcQxmDDqDQepGBwaw;^jzGIu*bPASnCOa9CQZLZhO`@BIG z;{5yI8ESb+Jhp9x&kHDYy^%zQ^0dfRDuR)z0b(!P%F}gNF7$ynkmDUQno2<1%NBYI zE**g_B;RV)N+BW5LxxzsKFOEBl-{%}S-4x3lU-$P(BUetr9#}WZp(E&KLH+dX z{x=bZr`{p?Rv<>c3sZ9UO-_H~eY4i5LcRU^cyJsDqL!ds zi3qZNt=TZVhn~t(96=AJT6u08C=~_GC`U9PzfnIKV4=-3udwDozZ<=q+5IX1reK>+ zkYdqZPRoe}X?`gp#G)-^Lql8{-bDX)0}Fc~jzs-tOmBkjDNejG4LRaLdI5L^S*qnv zR6`$L-}jt%>RG!W-3@gKkX{5}8*5rY0{P3?<+0qf1Sw8;M*2VtO6p0IdUYi=4w$@! z^8}q-HtSm>jJU~wbX)GD^G#@Htn$^Y4^{lXssz&_Un}ARt1GL%Fh#G({r?hH!w)wI zQLr5zFh;qn8(b*XG+8mHr$?}qkl_LBc5jFZ+?xGP%Yg6{9 z@H{oCsX%33x&;HCAcM69E2O7_&+3Nrws;=Fk?G3$k_5bqSh^ntJTF0%?T%6gGlj#b zn&MK{?yP1}Pc#_)B9Qe>#5^~HmMPjN_~4d`65e>Y?v##yU7by$b_J%fll%8$cRMAl zH})eJYOb|G!q z?l5VY1|5dPWC0_)GKwQQ30c7#dDX?h??7rw4g(8X8-Ni#WgXvlU|RA_hF#h4ybe93 z18+(y|GWl0Wgeehnfc+7E-la~0G2juA1*EV+Tg1|W}@ByJ13RDuK|~~YD-Gh#lz`d zbx|9Okt-cNN_UR2Qb{Rj0X2sIH#*TDmm5z}6PehJighw@;6fs#Au%W> z*Ka-{#E!|4ywo~YHOIOFPs$CFgGZ2D{+^Wi46C%6*Mq*__DM-wC1f^klhTrt(yeu% zd!fGTa1Z52Njq|K;<^HHV1vB4A})T^c^J(AfPMPb z+jebLBwjm=9aa_krK}FTVlbeTC#`0_k}%XhV4IRQ_MzNgrYo)K5Ha_DjN8235yUpd z!xoD=TlR~b(&ZDtTPcTq2|(MMuVcTL{VUVrS&ZrK4;`Me0vGbmSDDYK(WeqpO7Yy4 ztFG0|{yQb@#{||E5uIrF27TuiE8{0$-m*?jx3Dd%<(hv9Ka8JQE6jN{@GG`5_rzcom{{s?CVBHy#C8!BQw%`wW}eWbVwSO;7LfI zp!qen+=1FbL2ASLqubOw!geExOut=iak^FgN6)pp_{9>R%@FNHr6ae%25s(+4uxyC zgOq!;ZrhT)3Q54SqKu92F>BdXi|l5Jvq+0N`H=ADl+BtAHUfq9#qyt&qdyZ(SE3LM zb96I$rabRmoyEin7Jko)vdFiHFE-a)f@xd zb3LZiH*`Gb+nWmOBzKOjS>fkZdqIOIxkhX&(5=v_1B!si4u~^v!X0X0zl8n(*$@0$ z%aZ%t_cX`6W#Y>$mTgRJY;u@S*2QX&pZYQ=+S&c*71}+O5lFWGq}#9D@y6}8=hFy6 zV`Z#WibWZvhlsJ?d7L3OO9KWJ$}f zy#Krjjh>sU;YK(YA+FN`9V{C3)+$dpa;TrKjnpdFDjU6jlj%zxH=bC*S^TwqvLA^1 znc_ZvAsu?Z8(nO9uJuNalV)QCfuHu=^vj*!I$?FO0KOu);sHd{H}{zxL|B!V6TSjoBR z4D|+%^#$4a9(=RFs~{UI1W&EJ2zGe4=ZqxyZm8Hg!+a*3#HRoRiIgbN9@NaRVb>oh z-$e878z@qB_lTdBrhn?z-spQSaT5JGV?b`|lY1z!c9FwzN{2!s9A62DA53QF8#d;9 zHgIDG2Lrbvm5Z~uUd04Pru*MSlSuPDm(_l2D&*I$0$-d{@W==odEJ%@uH`S*E1!Q%8nardn9}z<@fNWMe;U zibd1qG8}BD(Wsg(IKi;$BmbgN&c=lGo7>&jm}?ro(7l3hD8ylsW@Y1a*CI|G)Ya{y zNCs+2Q)V1X{t(#V6}8zY{X+q8UNASr?bzp@g_GO6>1tkYrqbn1j*YSPdd;E(tM?QB z2}!1$ol2vSAB)85-_#JHsXH$Z=~j-ld=8APU;O(a*-o+FBQ|C?Pne|&FzL28YIQ;^ zQ#((fhXlUTt-;f+S%YnoVT)I6gF=2)RHVQas20>|K9GmE_{x4>*skm1MC~$yQ&(aJ zI#C9lR9e8Jcr_yUjh3q)P7IK%{{@5SmxtOZ21`f|Zcqu9BDodG0SPdKB%%Q?P@Tdv zQF+_V2##5fCVl|(O3{772h$oK7+Q`VV!d_c3?CxCz(lH`DZAR8Cy%^WZ}e1eRHR#T zg-9=dx@Gj(mb~^^VlOlOwdKx*xfU@1T@L&AMBTUr!B3O{KYHM1V&J(7b9G_>f4P|+ z^#v7|TcOT67Ii?boK}pFums_Xv#j+q7>8iPO@-u->jsv617E7!A0ZdKF8G_D!QYVt zlY;ckJv{G;<9~j7G>z9EUmC!%5|ZN=V&s}feH9OyFgkKuLrP7al234Z_GDYpngzj1XsJexBDnsl$8cCU{tbZXpLp5J@G1K)*z2% zsz$WCbhLZ5=#Fqcu)njqTP6tNX8ViYaG-sz?2cvfi#0TPHP`>L2rs5VuY>$cP47sV zSM80r(6B)hJjgSBuA_XSR5BCod7aGwI=S*Pr$mYDO$p-Dlj(26B?RR!C?xS)VH%Ek z0CW!Pn_O90=O{W{p(;Qzm10HRFsKd`vuXWV)e7XkUd;Hr4#etVIg<`NB3d~bmb5vY5H!Uy%nv4GLX-@hv?=`EGzJ$Z@>2?b3KEe^``Qf{$Mf98q^9gaqW% z-J|Ts@j=G)7m!6K5U#@eP-<9s{~>+G-!N5Sz^I$o2wLFlP|1o& zdnQ?c2@?k>P}C03@^j=1eYoBX>fuVwD+i=YW+;~26R@iP%@LD%uj@~fj#%kHqJ|QV z%a8GD^xF`6A;No>zTt(C{yiS`t;u)+PEMo{Zp>Q*@zziRSF)F-Ae$zHM_V%b#Vw6D z=eXF_V;;QSlrSUMMeX$ZtBE6WuUwrNoPPZMrhc&s$a^ib^fggrTGM*E^ipRa>}r; zmgwEk7!nF>b?#)mCGbpu8`YkAb)FQlKSfmxnw{5_D@)fh0hzKQBA3b!{Rf~NZE8&2 zzKQ@Iu#jNXKF)=Nrbjn+5aQ*R>$s2%n~2xwuy?i+lP*6@TeGzir9|L~)rA@G37MHo z`qX#LjiZqZBL~ck-zB^*eJTe}YAI|rE&@FL+Q+kJaR3jIr|IP=r_+xkRtZ{u<{f>i z>-YRAinrmP{6*I24HC=UsKWd=^Si6Zxic~xt+MEV+)^aXIC$k=5h0E+&QGAhhd@Tp z5`3TNems2=;bjGv*r~0O6=qob6Y`rw<($s&B^-y3yy3Y8SYw*|eY<=4q1$ zoEejufaxQ_Bi9EJ%z$pCcGNSpW>$3siisn3DOYMig3BCxZFb{?we|{~MJOLMT!%NE z&?w4NwL9PGm_eR}c3K}Q5jy9P*(6p_)x^^asewK`haPr*JZtTS_Y_(wZ50ds*?n#4 zwvG&RO1nAbXYSQ{ZY$r}eQH|NqD7$BHt3509wnhi2l$B3Hu=Cvo~MlJE3pHDQa`N5 z>uB~Kv;0B&-U11;%`5UjGe5kk`#j)*F}Li+_2RZ7#d|!Aw}ZoOK_>HhXApGZPN?|U z2sG{yIYpT0K`A^vA;*?zZU^q_d+4eNI&Zeq+AGz0VchzF&S0qLYbHhPsPuyxp$^cZ zcnJ<*9B$))mGJ(}xC4PDU#w8bwp{Onv+DzZhecX$ptO<{%HzE-eeANU6MVP52{HJ> zr`q#q#0`>9E0p^tt15=FkkK;TD5Z_>kZ&292Ss9cYz1#cH(iZyeV3nysY$r)yeO3f&0^?TnOBNhG2 zidq!cQ6%Z&#Gx&;(&=-0px_$$}}_YZ?4O1fDJ(q3_Y|T14OP=VjHUoO0*$ z5A(i+qp!S^pC+Bn<0!$R_C4t!1FzQ{u%5w;1Om>FvKv{gkCzdVTXl5p-91zeaXw`E zFfjJa74|=g9IV5;Ic)4kG#Bd}g`_)b!^=aUvUyb25|4!TEOPsaO^D0;ILe3SHzV+t zP}}hy&X&6-kSA6yXuTINbwFH`EYsao2ewhCoB2o}Q`n4UKdsOkRdj`Z+;%;`y^Ap+ z?!qiBzbk`ro2mc`)!m5iPSqyi;a@zUxw*Wd)6%s(f zr)k@+k-QY>zxvt^1vt%xL**TBr>JGY8z3CnG|gs)$O1yh8=TFKEA^5q{k@)vxfao$FA~GNCKVWvA>T zQV6+K!gM9@aAmpHaBEF=t>mIdP9Wzdvqw%eIB$c@_D%CRv-YLBdWq(=0=_g_`>KNi z^B=kE8uN0+?yJYNO%KqmfKmdAlCVL3Rk=bGv#E9Y!~!dtHHvroAgW0mULdIKRA zlSRv6iEO8xE6ILP{)%07q2p0e2i#*$e|jy^u?90QF*Db$v=py|FRY#8dy5FQ!L|J3&qB$)mMa#%Hbe!7 zq$)&65rF2-#;m7}nV>32Zt+vsH@O|%L*R^31muSftZJ{-f&sy`_IA$t@$9NP$uW%- zMjCOA#C2z3_(QJk=jIR{B(i6hAF(wjF>FV`x=U!w?Swje5fc0YRa_NB2+E|o%Wr?n zqWO3$XbSp+iWu#yJ(%yxmI;j5q?{C_9^Phmd?Kg<<+Lvl9PFNkTP-RtlxUQVCES7} zQlC+2i=3on2?~hCqaGUqaR|l{c#NI^Y_jn|r#9b(DFZKN)Y9O2k;H2}PyRTLW@FJc zHirJkk^fjwK>JYwB8V%j6ZDM!uqT*j{27NAQB9X4=c+2U9O2$9-lDR^)&h(?#s@sS z-J!+ZfLxO2yR>j_GL43Jon*5)uYx4k6B)4h8Y!ND85N`~jFT418I|~ghMwC&I0JHt z8~M)Loix8|;Q&%~rVZ&a(5WxP;?7-x-)L+0gm*~EH-56Hq(t1?qVRD>N?#qUhB#MJ zt(o*rq*meWLkr)>0*g6*?*L4FzuO^*zn}x~#FfeOnC_!PIi{guMTW@W4}eTU!Sz#V zpY&VM(10!INk1bW$6f9bR?MitcW}g|lwE6UOCNYxH*(!3FOS>qr%Mop+TTzXqqRFZ zH$04xd4vdsxa7}Xof>RrUID_;PCy5cZBl}b3Bh;re9_dex0nf3+Imj)NDWJFtqH}yx|bM zGLnF1xMR&hRv7#BsJ}3lM$6O~XTGKo5^s!=U=F29qlJ&L-P!{9aryt)(GuDm63R-^5Jz3CXJJ6!Ssg+wP9TS%WUSxOPnn8O;`PG}m$WcTfXSs2svQ^F+% zP_8d)aIafKo?r&)h6}Bm)O>j3QQ5tsYsFVqHXA^ek(Yw1&=?^)y^BS@su*XJLVp~$ z3OL>ALhulgqOq2n39f5%e0QeC8oA1)(k__Lh|TDO<-yNKx7+)3-+flcIHN%7Dk%Q3 zFBOu}`(#QjRP;^mg` z1P%@ADd#;^5+sp-PKp)R83HE$Joe*l zW<1S3%cZ24i3#gDn_G=4JSo&N%?o6(IxHuvUImwOLxwL=2Ek%lLmz^?X%X#@Ar_Ts zd)w3&OC=6_N2h?O9Q)Y=epG-|COey;w| zN$}Qy4W>%<-fLY_+=JHAluT@~w5`=fOz@qS~fs z+y35@L7Vc1C-g(xK_$p%I+IppE(z7FKOeW^*(+K@uCXWEPP!9T?MLvc^oQ~#mqi0T zHe3cP*ITcGyZPCH0H0ha#V&1@Pbv=NKaRj%?S%^sZlF5M!==pHPQv9$S3;d|j5Qe%-~4~km){pxEW z7n%F*yRrj3|JH0+``H=a6;D9y^eiQ_LM7xW{^Niuu7gwuPpvS680USA#fABGafqmW zevE|nD9Eqf6z|i%i$+;8UW5u_hccTvRTmHbcJZUaT_RH5{FGMf#yOMKP zfT2^(358_CFql-K5X5}=kpf6KO;ztrSn`{-cU1D*s*8>c1E1{0#1kRIR7D28?D;B! zj!fS}pQOx+h~&;#Na`{Ip5xvA%{M+}+n!!gX>$6M>||rF4CPTbxwecBz|K(S%BO|) zpMwfIGKgQAG*u@%>S@cw({a&Up=ryTQkax&$D7KOk2@XJ$#_62;Qq*sIwi-8LQ!c% zA8v8!TOY29%%hi@hU)!JXKQjcu;Dmuna~M_l4G}$rYaBs1khEfHGF%@+D_x^QgZAo zv&mKu;WMbI)*;!XEgOE7z1N5|UE7zs;AWF1HMcrY#TO zd^^!pF*a~jl`{4}0cfjc8aPTyH36evb9OWIRi!4Vsp=zk49co0*&txMG#9=jT-_HQ zBV6at0$A!akZ_T|_faDEj)H7s1 zY%rh=&G4*p)VXrhQ4z{qxbW~vU`1k1PWes_nM;8>-2RR7U_`aC3YnF4(yq4bKw-^ zN|C5F7NkU`2E-GieAW_)x=qfcIp8Q=W`G)G?KrM#U3+GT-aBRdYMCy^O+MVsg+o&~ z$-F6>%uv@4ZFZLe_Wuw?lHMq2O_@zndNm?XRPaJCW5z^=Pw1?N5?2}&T$qQNv)vu` zMU&C^iY#g;-8k)|I$RFVp#CxAA*>eRdCKsm2f|uHb&Ms0Mr~mt0=33mH2BPHT?n^} zS}j|a>B5(K`0)lH7(U8#X(u>6gc8lct3xI__xg;K4%??e zrQYv(F4q$Yd&R09eRx#BDgWmt2=azFOY|u_fX{s1vSviiN^b^A&Ry*oQud^UX<}@{ z{U1}vxFLGK<>ME#gV$zygOrYcIbF?M(e#cw+?bfkaR&?iYIadje2QT;i+^4H|@{iwN zH^fvOnk0s8H*okDOE6&Fr&2NAsbv9v_|vVXQ_xG%d)p_$8%D=uJs)0jh>Zh7FAGRE zqG{VKF!rN+#tTmEODgsqQ|@)dI&twFyRo5$AwM)?GRJNFNrsuhp5_={j>Raq@F<3y zeQQp-g2L%T)>*E6hi>ZVt>KV%@NTc8SxW3iK-p?S=#q^7o}%EP6nfe2W^7oF8Rye4 zwu^+e=)%*JHa1Ly%^{()W)S70D&Fj?BDo3^&!3t41en%aFtbDXQQY|m$-ZX$gEsPz zi)Ve2Z(1@tqEOiHH~byZ(HHzHsX)}rb<8&v+cfVm;X0>Ya_v@8ANtFol6*O#o9ySF zh^zz}!_KzaIW#pr)WVGNlb5{R&>P)|b{AYUmQ8JzqEVzaTX%!lW!{GW;OP3fzwW^g zUI)m-&p<*78oVmihb=*o1^iHqoRfxkjGVFB)OMprWcW!a$W4B>rwJ^DS(3$vl=j5vn}WWi zuh@&=K@n#y~cUz94zsiIMLec_(=>(d&Zb4eMZ} zJgA)%LiYuWOk{_X6y#unOsvvujhV&SmOHBQW(I9Wrdy9><|FU)(EV9wVe^u-a!2#J zT^Pt;;gxb)0R%fN@%_waq8)o?e5l~=h;l{DJ!o0IHUdqLQ0&aulcR#Sq16*;88^grK8sH(6`N$_F{Sk9v;}T%A!Ay5`ipIP zZJ|X8F_;+r6Da@z%Qlgv{Q+SbbCeS;_=&qsTMk7fAg48(uIjXc4i-QH61$6)KX;g6 zR5wH*r0zXYiGXF=2Bk+#gI}3&Y3?$~00-u)VlRW!8LO(jXeMbJ*`oTcm&=e7EoYuE z{d@2_Y4}mvdhbDr?2N3B(F5~Y$|acBd#FaG1^6+)KS)ovCmXL@b3D#{l=-A1kLhBu zYWiVk*((-yfgm;r((6tj@0N4t~v@>59VM-(S`owIXYve%!?CkR`+hO_IP_1DGe ziv22uMq`O>`p<9&wfkH5xq35Q02fEd6Te)&*{(6}j#yV@S4Y~DV`oQ}lZRZr;jW6z z^zdBYf?eL+p)NLkEgzLHTZp;TgmM{i4rP!JjZX@mx1i0ebupt~UU=!L`&DFFNdqx8S{=r$v<=qFphiLFITr1Ym> zqjzETEA_LpnU~w9CE2)KVTNEUjxH@32(sf3TN_d-@HobT*(Wx{P;`SZzkdf z{bSTjZ@Nd~Hoi7o@pU@WX=5!->h?QYWkiZhkuf!$cNyazs6ZRz4M#r|Wyt~>i~}0} z-1>$`?0&FhP)?D<7yZ895r5%H{jq-`V!T5@_ihjcK1pieP)vTeDp!T3FgJporqQ}G zxr=Th9|J*k=eQ7yDUCI$`r|&Zh%b5+Lk6<>~SY8~Y1=_;0ilL{$9rPBqG$f7KpLMoxUzfZ*y5LM6zeBxAbjB-K&OIX&#?H;H<5$6b~`;vx;lATdfPijMA=<2!kl-y zepqz=R$)`fpcmfeo2FOZDa0yD6S4G@6Yi9rBNA^AbaeZDe>uadR*1amb7C#}ji^anN*eH}x9+5`~vP zUj{L{up9R%{iq1uCxhNO2YfP{%I%9#x&8NJBqqSyqjwmcq&7gvL1q$bdSv=!oyU_%iJj&T`q{BMn7Vpr-|J%6!b^3->a0uA~@_ zD8+rL1JyDp=>pDy4%)Xi#ryk2>k&6q6mYwqwYtDF&b{|9dX}}SPh9T^zb_1>d*NIMcE*h%mdwRR3WD{|xMaAhI%M++M^z2+SHf_mCvl0uVf1VmQ18;@bEUN z@lhZea`v7R>dCKBs|%G7{d=M;%@|bjJ}lZ?;;!E=4$*J8IPG@NPk-jsYUFR%1`O7Z z2DVr9vJ!2}llKf#mzricqrO*d8^mPlHJ)YD#rOCcZ~23Ret$vuV~GWNIyqM`ho8#k z8!D^>@{>mUG8TJQMSx8RWFGddwBonvh@1bKpi_@}oq~!ZLmn;&h(+1+PaO-JLr_(f znB(>N6JY>vo;FH9m(jjY3-@YiB)46T)^O&U*TN+;xwq6ihJlHqRZE6?&yGE3d9ZVJxZ_WOCY`|)Ox`y5n26! z+IL(0tftQ)3k8YxH; zrgA+D=QlrEx=BM)8vM^M2;8Gx^;Bvfl*tH{AeWF>R-k^Gu=nz=rbL&M z8S`Yx7bV^mFW211hMS_l)mu2crZFK?Mf-R&op-3K)kJjlk^r@l zv}P8!N^IZp&SVXJ76Iv8JUZ>itrTf!#Kj-vZu4oQyJG35xrnW%pZKj&pH6hzN@tk0 zQuQK9@-bDZ)Zb*wuLWl!Wzh7elds6Ucq6_UA~WFp#fWR9ZAUHhgN*`O3Hw*xjF=Y% zJEQ43o+On+KDs3-n<of$No6~?-6>XY23G%hNy$Q*Op;x>_-l;qys z4L^`wEWRE5=9eSsv0ckz=o`?|u4r;RFr50H%~kcBN{a20P{6Sb)?_6F8c#(%>3ByZ zfZFQ22Bch=KIdZsh$s2yYdBAUjrj4?$+Y{dymk%PX@@3bbu%4T78!;!Q(*CVfbg0Zyb72WR(i|pqb4Gq_Q+f?=$*=j0tD0C*uwrAg0N|k7=bHAeQ%DU|t&z_|_VbzSE2Cy!iS1rA* zhAq4eJ%g7lek=9v2X;9=@}N!ULu#Bp=cMP%gV_{56yK2=Y+Kee{J?q!F>(PlTya{; z+ksI$EcR_Wwde9ldd6$vYKh_5XdU-cvvd+)nUCLD>w}dA&EjGkt=+Un@Y^#)dLMOR z>yM4GGGAVS<97tGO}Va}S4pus|7P{6fAaY8{mHtzas-g-Lhm&*?Ry@}a&L6)$;fgC zhDRwPKcEi`yU4YdR}P9FwV; zBYer6NO^60FLMw`q9ABPH3T9qpI`LBwoa7Min47*cXDorQ(Tx~{wFkDUJMg^_{cUw z1*Sm1!45QFuNk7@o7V$rFT3|n94|1b%`}C#&i(w3h)ky8LtFg|sXnb;@Pbt030|mN z5W1Rj?2occh;H%>GvQ(KWL`azGJkH&oPcy*nVQvR;os9xgy+tHcPjn$h)J2!_s7kd zR?9iZ(k(Au?bU*<%DVR?*O;zrn3L+xYmyVegyJp3*}ge;rh>XC-sNj*gRYX7x_n9kNO>%uJE1L&a>_Z z-EgxSKet0gTBrB6(DhFcip#9YZTt4)Y9Dt72)hZh+-w3Nz;qWtyLili5Xsfe^x*Y+ zKkZHf$M` zcE;~7{(!9Zxz*!y;*y030W)p)N&QbY>;6!y8pQf~cmM~Erh`DoT&~N;%4+W7i*hbc zBc<|{pb3&Xso=B6JgEEMctpf59o9)cn5{5c_w>}zdU7u(3&ikIq^0klA#u&ZnKRcR7Qc{RC2ep-WoHuL$Lq@ZVY2J;z~HX+8T;dX!cYUz-^6PU9x zTA`(K0GNzZYOpN^{?S-|>F**HQP%%j-`P~=UML7m+lf$|&ZQ4?%@_&Y0UBw+dM`kb zgkE-zJ;G|#PT6T^2&GG8pI$4`oRAp_3+1~aJ8w(R*2R_OX7!hqJkNh;6n|%5MB}=k zoV;}u=?g`Cgpq2wZVMoIW1dj4m|I0mTaH_GG3Jp{&I;=bvq}7_UND4<*fL80#~e_Sxb4f(lsJ zn6kc^|D5!N_HV^B-EaNQvMe2a+()IwBo7 z?o=#TY_AxOtV!e03;q6lMhFOGcx8%J^nWKGB;230dH$OF^~dOz&}iTzDE1ZNQoM7@ z=LvEj8s_lt76r2DVNt_i?a;S(*=q(1bjc5&@?}=DfnV=@c)dG^v7R)tymOSqzNNil zqU2x$%JWCyMf*>;nrZg`g`{TyuB>S`wr$(C?PO!yww+C~@!i<=Zn7~p8=E(_ZCm%{ z`(M?mGu=HsJu_WhUBjMdvB+)WYqwRwi*eIGkkJyNX~r`{I)X0wqpW7Yqh#zt_Lq+f z$xqs~(JSx8uS;;ZjC_cv*ZFyT{mT)nEyCS*?G$L;grGOfWwbDUHjq_p7NqUQ_LCTB z6Pl4gzu$GWlNDmcW~Q)^U!YmWoUrSsN!YjcC$;aODJ%4giD#=w|97C|z$CR*f3yFe zMt>WcuZ0^dv9N>HKhqj1heMVDaTbl8wZ`zrw1yoeLeOKbHar1GgS&nju-7T^Hp=R$ zMdpHfTOzL`=me+(2DchI{VqiAf8?>@11 zF|w;|o6-q~YYq2ViGLjRE2l=okf1*Iiz8b>ZAnCj96$J#e9RRm(|5c~lRvB3jhJID zwAvG~&HnItgAN2@MwzCB6Ss-+>|q5*c|;Mro=U~4!&#k>@t%>`zEJ@M`!AD*BBDIn z?p_c27MOJDj|V;n-O%w-zw?GtSsRh?O>(@B#Dc<_QE2Rf!rAK<<||f9*KCAZw>&Q@ z4##S0H{}foLw`XERUlu5&2WjL91UXUl%4G`CxE||y&ioR^BSW+0te(p;bRG3ThajZ z_QF&lIBD+byDRC=(PTy6rU$@@{H#`fLx2X5;v9n=VMq>&v>=TO7OM7$fa*Y(pF|Yz^SWGG{aSbtxEfWE5Z>#F zqMZqXIu#gciQuwD0zhv|2pV|G(98ZPKRPr9a*Vx^9rpP^T2GK9i4nSa}8 zoS^Ci2^u>Szn_oo)sEK949L~4UEfu1(kIVcZ-U491V8D5G>KZ4R*5|ao-d7#lYuxP zDvaw3yk-`2XaVsa9XF0=cse#tSf;*x{XJzY%2}xHAe<}W&Ka~$a=Tycfpz<*nky&0sHds; z>&b3r9N)j=qTSdv*XYJePW79P?@5~WW>#-O{<+J0??JB%HP?hi-zWK~XouQ)`gkQI zM4Egs7WtVEYY%U$H*e1wdY=poc2Eigm-qQ&&D0$Vu9&-i)=UpCJ6B zpRkww>3sZg{>?-(=p<4`Irtak)f*vyUt>XAU8s?LpvJ(d;>2HU7lpiL0;Om-*u9O* z$`Bu<5Unq7SF$-~V~5*&_`q87Is3TN>ei!qmWg$JlspDwl-%M5ZA{YpVtb#Yfz@8b zA?AyFzTmx`*t>Lp9kqhPWf{oNZt8m_{VfxWd!_5&B0JlDYw`jmP6*80JhE@y(s>S8 z{Mcq3Ns84otKw zYaN>4O*GDWb^U`tpZ21)oXCULpVkppqnu^j;dMFoC$-7#!6+9YV{-Mou$n_a#qZEw zeI&i;YfzSd(gB7rX*YlNbL*v(Se`0EFl#qL5xU#2*5=VV2AuMi_g3)Q6TC+;ZD~Dq zm2~8K|21G1_?)FKsZI4d|55q*`X5f9wQvE>o=FHJ4c12@Y}AW#^YV- zg7vaxr?b-^!4uL;pzR@q?UAgnYZipgNjRB29E7d1?aR8gg z1OdKeq@L!x;{GJ%M?UvL62OxC`?)(=|4%7k!HHjTe#OZPqA+mwPDnVU;t1NGXI3LS z3`plcG~I|TY;m%Zo_}$?5|;0Fe=Y@_y8joRZ*=U3E!;74N8nF0-AF4OFmvbc|5$#M zaDT1{48A841BTrbNdXN`_%rjX?uitDYbRMMKqP$4Sr2yMg7PEI`@r;kMVrFK^Db80eJ4XQH^z4smY!z) z5Uj_}@cc}HP?ev@?AD=G>uO7 zNYZoGk)C<(%)huA&q4R$FPZjnRo!L?R|vR)@l}lpfYrFF0=5Ul@~(cY)w&1YvaW3z zrJ%$r^vpihC|srfd3~kHAuMAMi*9TcFWZAix$(ffPNsi0n*{=EK5n6h8i=g?)od)X zib-iBx~eKOTPBm88(kxg-D+^YBXg{09yhbkU;%oVeF0UY#|fmqgqq$i@~CQjI0EQ)8tp zHf|h^C)2U`D(K9=#2SB0?a|6bdgl`|R}-tClrH+`u`>k{tGqL3!@vzmBk3W_r%Xb> z6!wa*!E12}R~}`4>Y$X+qe)zT%iavFagh0n_tm`z@N(ncd3UAGxT*~HW)cmc=_#j@ zaAK83rv8sAy6ZouHfGhZ<*{sOQB^0Ie_=IJ*dN%+Wz0`qGROMn*D@74dkS8Ly4&u% zg_A-YqTD{O>wqnLIjb1KPznDXkq*h|E$f(lc`6OP8hjb5h)?DMQ)&aJp+80)Kh{Y_ zwS11$n2oqW#^`R1+cJR4WiAyt|AX*}tl>^upu*aMoo?BtcpH1J{a@`k;5kq?RrR zBs|`c#2B%eCDL$t@zn{6?9X`U>b98urX#@%E9kvYsDM#h*^}?;4rW=3?iq*TUQvy% zGGV_4jJ4BG=-l{;rLBs?8(KIr)D01Q&s75CYlGCyrUaG2}vDFmoypsT2mK{_45pN>A^@+W(t3y;e}J>Ht*6Ta!In4%93XO2gOpfL zfu&;`X(F#ohJg{ZUP+La#>wbxQ_8L_#5?fDUI`mTBBPmAHy@~ycJ>IsuST+s`d&hn z=^_O-uU;O11ZT&Ywp@-IHjmB=bvfg0Bl2UK53SWOqd!Z);3p}V$Nowjm4Pvddd!_b z*L0-0jxG&b{fN~B_u&Eg6CUN)4c2J`8QuD3bi5Rsf)s{!w86^2OQ1?7bP*YnUZho- zbW3|1k9z%h->=U{?!htzWb{zy5 z2EdVQL?O~a@^r+%@fhJkf|?2aq{`4tD{kfwC_WUTcfKF) zG?ix^#EIrTXqqMJU;FGUEf{M^n(T(~66%^bi`Xa2Z$k34w@zb;%Z|`jcPCZ{iP{fiBa(Nsy;np;jhu)C_cE@^#gkY z;*`voePJ^F2;gLd>cZ7n1x-_C$+3EhsR=%rU`ZNI5FDdg45NI}S@R>h>bgoJec3y7 z4eKh^sRq{AhsdqiIFY?kDQp$f529*l^9-4x>51qx8i4yPB=6L9d+){)lwwxfWZkH+ z_^)Uq_)U|p5Lw=|iQtblGo@pBk3!joYQ=@z#EsJ0aYLHPh_48MUj1HfR&OlupE{Wt zRxU7LaM%v=%xshN$a<+Og<@P_XUB=jQeLOcX4bo?h`2l;uWRas)P5S@md>#7l1|Fwo?YuXBR4xxf{_Aic6BEOz* z<{1c%R?zBMgmM;p3_z4}G4d*FIaMFv$ShWmHM@bXhaX4C_uify1iT1Ki|u%N*7?5(wGkx4g4Ut+R^M;x%Gj&Fmo6G*?|8SX?bS0Q$VgK`eYhV@ zjE3E`=Uy6e49P@iR>t;@P{BiNztlZZ)1O3)r*tI<{J^uRW`9WpGxMb zcsPEUYsIJ@%}y@S4kKWzgxROS4alxnhNDNkFseV6?9h?P!aSVYheA|RfqEH%Pye1< z7XyUP+9$e5J^VglrZOFW@I8Q;zX(M^WzHi7^XCUY`f@Jj&~)y|gd{0`O;mh4%W`z= zIW?ytbd@(3qG>e5q!a;nNbb12-g1PvA2?`iXhqSInDpFXB~l^|QxTzVR*pT(8Wb%@6(Ws_rnO7? zhWeT{0x5}L+IS}UJo`F!+rSI!58xAiW{+<+oY&f8R~yP2M1aA$vyb=X@)V}M`_{^Q zD8fkMp9!c$V2!KTCANrg&ab3L;E+>i^|CZ0l^sg%L5-clCt}(z$lK!TuiFz(A-VG4 zenjJY*MwB^*r7z(Xj!4D!s2Y-tG8z!=N7(1Sd926?=CaV^)+o{yD&^-=(HD27?>P; za`kD(a|uV9L)!tTO&P0B;WO2HISk?j6xte=u;62axV!kc>0ql8rIZl109B(gBv^hT zSn~r{hQ8|8*D(eb@_dR1bG@kFcZJxwv=FZP!Ih_34OQyj>J7|j=JghsnCMJ5Jx%jx zIW!Ca3>wZXQX!Ts%qfM*nz?~ix%{iO?pV9-P4fp(K3SNX5gnSpwSPJN?S$i^iL#b! z#U9h2-YLyQ;$)-qguFNaQ-fDx8}w3lQeZw|w`7T?(n_F#KwQo}kYb>;V(lPrQ#@*z zlVhvQ={5DV7KkNs^zH#z^YuDTlu$T-gL+LXNo{|m&=<#lggwXFgt&miCL*IasepbZW0BkWt5_fJX8f*`?D6k=UYrdEK3fnWKhqz7d%6e)XoqX)H8JIjH;`q3G{v>_j~J~DX<`OXf{=PP?*v+|7;5N zIC71sEEl*P1~NDQN~Y`+uqwHY#*OuT@(o}gVU3ww=jaJb{Mo_Oe^@G)*P(=>rSJDt z!Dhl@ zr4(iT#a@x2He2cVoxMO?e zfNUz=ke}5(cU_ScFpPYG2=xXraeNL5TJO#x+D($zD(=}arMGZZ@cjQ8-d`fT@;s? z-2;YfKQY;y@mI`o-H#H%Xb-_rC3(lOV;ttfN!&^80|j{ zK&3wI_c+aCW`z~VO8*0lpeQxM5)Zl5EsEQ&K_&46NEfqSH!47(dLB%^ADKbnYPo<- zK-{!Lg4$q$gU`T~Saxdvat>tnMirtTd>AheDq2qV;6irCLK9L*Q#fxd6QYgEEsRv_ zX@Pqr$}E;{Sw~AzBYc^Cb+00@eA(GF(pBBL?xm@WPh)bNg{q7{2uI3cYz?(VAKV?_ zBITki8a|{>Tp^NSNmYb1BZ(r*i}V(t8dv9G*p%$Gq6_R{sizfUD0tt6_f@x0&o!@8 z=ZHi^NDSwmx5>BDney(%VFWM8g{4Yt;U0n@IPEQplMBN~c}XCh^ZCtl$@?iV;t&zC zHy4mdG;H~BF4*E??aRf+L?EHex6yd@5JVd_tQg);4F;r-LaB{MQy_oO4$lvw6>o$K z?Ip)0fiG*9cJ!fePiR#FPQFa8PYy#$=)a3IS?-MQ-a&gM2@;*FVbOwoc1`J%v&`9a_zIJ>V41N@x zv62zB=Zv&$Hj*^i@HrIcu(|wq*rLeAD;K@=a}KZ>%x2Bsw{=7 z6Pd0vaq}FsqQy0HisllM~4ZjZW>oHPIy{Ie<)* zAewSm9rDR|HgeLUR7R2_PL>QtaUO_~!*R4z7IH=fa4I6j^R-?H2uiOaIm>uuIi@ki z;{pJ`Jym&WOjZfFGs^6bK`J_;Y6SI-ANg?+#rk{92noef1Fd}oaktlXOV4jwWi|9D zC{gHYuHS5ZmEvf3wTSVf^$X3c8moW7_oyXUea$UMunrIs{fglF?x$xbqVt%*?bmpa z!$mN{sdQx$EZCJz$7!12tAuPz;L9V$`NYP#V8bBf&3My?p|DQ-{z1hu9zsh`4XNg3 zq@?f%{_Yq!bxl>*TZNG3Wsm0>kftbRhD&s+R~al_wh6bFgfLN7l7dUc(15%y!lTB1 zSsPSg)o}=S-}8{~N)tMjU(~&Yh{TQ`r*@Zv5{Siff^Rlya-xv>=Id*UX2Ig=pizk6 zF=OAi%s}Pbg56GqO$Kfd!B)(~fQyQm-E`A@*r8kRZv0!n*_eG1T&?9uQntD$6h$K` zPF9deS{-G?**TH9&9jNnab$!$QJtRF=AYfI?{mGrOd^|=-jJdMw?eN3n4T7(LjIIPrmvf3?WAR>Ae#pLj>TQw zPnc%5s5A$%7X;h_5$>5vXfnSYwl>T2!b)PghdnNzf#*jtlwr}6)6mp>e`5Ef)4_V| zeQ`K|1nVNYym6n!hlFvQSk#l zWX|)3q#unMG~3wOX-q>H60t)F2J!}m`>qqYY6K8;CaD1Tk;z_)f2(pfCYnX*YM5Ba z5@A+W+q>T~)w9#`84_}gGOv=|hdMAkhSR7;wpGr3Ec7Tm2c_M^^hGwg2}rYM+c@CI zUw0&9E1jrToRW1!YN7MX=qkSbEy^h6mMEn&qmj$w2={>;rSm$ci~Qpjla>;0RH9Fv zH~;OIhijRAG3*$*Y@(ZEdGoXtaP-?;5s3&~Y>U9M)zR2`Si~%BDT<2fUoC}ht3tVQ zRHD*-P1NM^Bdg7@rHR?wTO1?;vTbfFbn+&?K2vr;0ZexZaU?Yh)1nxYT$k2Gv0hL5 z9s>EHx~>O^5W^kRDl*HRGR-OHb&tiZ|2>1~xF%xW?;qAVGo(Q*iyYd#QrzDWWQ>}1 zxnkf(F|U>U>EL*Y3A|%RB`EVc!v_)yNWWZe9 z4`6t6vAMc`E{A0)$&$!7rQ@$Ii!|*2r8?DB$Oysb(ppfhk`TRl=FdpvpwWj*fcb%S zu&A-=Cux#c`T^mGaP&Hy*9WzoREYf3pRi=l;6kj0BOLjsB!jZ!_%*5x*;e_PmR|J<)(C1Ni|SHd zRPaDas*R>1b{xzyk?*|RpFtTJSiQT}MV^$DwRfkryWKBcsgM_wnDRvz_Go;`ZU zN4X1Y&JCvSQ$${&TQxQtz8i7dhyT5{Q#ICEP$M~*Il1^1ThZU3o=RAoY0!}=y?9NK zYJ+eaHs42{{m&#s*JN^WiZx_HV;P=ZVyOY2Y%)n6rL<2TCQRW_8OiKBs zuPC`Dp=a|DfqURAf1#fbA=hI@GlrtK90Y`3W}jOi*B`$mLvJrOgPHJlQhj*bmL0Gn zZs+F&+PyGBv_&%aJR$X@HGypngYi~D?+J$&1UvWou8CW#AzmYgE14r+Zy;tRe#QI+ z&#J`P4j|+ZRsGA=Wdz{oI+=ZD5j&id&&W?Qt}zSA_dI#2gINCsQL9|pH9zDD+rKMfXTg@A={$FAF1eGh$th+-j@RO(TH_-tRWY zuR9IuRLQ1ptB|&+J=a%u-lULvCMMADqpuj*Rb@=FRR`zVg2XxR!UFwed&;8wVqOZp z;6XfyZQ7ID0WhB*dl;@wto_~572Lg7g5fX9Zy4{2P3-RpllNQrLm?5NinisTBCsXN zo)4_K_xG7+@Zj#eodE8LC;ZSg%I(C~9+4F&HsFM*?-BL3JS*hHWw_!W*(OCEY(sxx zYw&f!FI_;nvVLid6HJGEJ6U3frM}B5V3m1w%RR=6Vr|X?0e{m6{!Ou^qWkX^sOgCq z>>H62$Oj91U{jERf#IMsJk45M3{YG-v&Vcy(@m%IS8*h-nBBqnjV1Bt| zD4cqTfIC}C**tCrbbfi)bFqH8@$=u-Tj$o>QS!si)5Kj)R$g9SR^HgkRnZ>pw&+}b zx{d3jqTO45`2oaSz6j#uOH-#V~JY&aElvZn5frhs#v`4oQ= z@_~K%R0?TDdrjPzimEZ>`dFbfH&eQ9HU^skF(new!uyJ1vl?e-+8WV5<1exjOUrR&iu>m+4UVZmb}T%N%$-LKbzhx7;J22 zySNx^f?|w*+2wACF}{jt-m>@$*oXpSKjq4Wo1CJspMdeClWZm|rU8{bUos!3)xM-X zstGMOS6sy3^3Rc+x_q@ffNuG}OtnmC(DJ8=`4PA`dsALdz<50G1Nhsp^(`#trltjr zjZN*Q`B092XdbGQjV3C`p7N!sO>NLbJnuqlUn0Is19Zn!Q{J~vtD&6JFr(j*_h#o= zS9?7i%fpy&;#PG9V&}3ELI1EH*M59()alGULR^t@Zh9i03)ei8ShNIm>%$%7WAEXc z4RqZaPHmQglnXZo9q~lXYvo??4oU_GoT-2y%MOl8}w z)N zx8|vWeS`b?WI9r?JyJ_VfHT>LI84|%G6%^%8sLP?i%d2w7p?(qpO#D~{2gPT1rRNs z595cw&kPU^dneu(1f-?AH_(g>kr_m!hMmK4AX$flj=2VyX43(2l$xZ;-Aobi2+TsU9vAyZO+U7gFoE#M}iUtV!a2w7Z+vgmggZ z^^%^>_8%RK;crZ?KA3J>zUzUXf>4({6qm9+dCpvg0R!-NK-$Cae!)U*Iv8%GNSEBw z>y5pg+{e+dZdWI609A1qXb*SX5e4#GB`7_xTbz+XH5HsNO93amET~&kT{}NCDzhp1 zgIl==FE!HKgKo~b43FnS=&mmCWsuxSPWUIT!WI1MQmP2VJ$CornOET-)e{@Zz+C!| zA6|X0b`(#|Soh+oAKE|PRv};E#y;zQeCSONYdkKAfxyc^;sc+X0z3C0Eh@u9KaOWr zbf0n|tJ`;Iy6!)r|G;m-M`+1R!aVs#hBNc=Sdm~01VwBDYoCeo=vO`kKRv`kDCpu( z!cU^``hl;BtT*{LA8ab5<$t31SJdfDgdjh_6ii&OqleY}@sELOui%AC!Q)G3;vnKO zR;bQN{;pucER&dic7<8L3#nJ2Uv+L+@z z>3c-!dqJstT*U3v&<(rL zT^nRQ~QhUm{o$xSYsDF|k>gb5V z_{%E-Gyh8NY)A9%exp@jkRzeWq5%--Gx75z-m~I9PKbXcX7&m!h^tH#aQ9=$8KbiCW)GgnBy449snixlcfXGaR{+K_qM&2k)K3~Y6Qd=;gCV=4U8 z5azN4dp||^{AgErCAN|T734D(%yRsu@#r8{pt3>=@nJjmiE&(^@z@<2OmF3a3Fn;} zL^*v`b}lR)lH70w{dz_JhAIZav?_png`L04hWJl#S>d0SaF=fQd+x6NHB!i+U#u^W zI$~Q14Iv1xy{VnV`;5d^TTu6NbOEf>tVQPm5y661qEPq4bZGve?r@`&uNOx7(rv!@2$n9XX^((c@mF-|7 zs?Yx3k1V-&#GZ}d6xVm!h=5Mzz8i~MFizg`9dVT{5=*QRakA)$T$nG<*iYsX5s1>T zNv_fYvw~?!G~x)b5MzODN8i^2w2G|~9a<`XIaf;Y!?0YGuLbrJvVzce#8S?C*4K#l zimm<$L!9!xG_GIETX>Z~#nT7Gv1MA#=|WWM;VtI5jSvtT^h!By0ho`T(| z!!_h*i#|8=S^V2URsbuGcu2t3WNskx>jX*e1Xxf>T&^M5>q+6Tzc=miTJ83kj#N)j z7)dv7H~2@zb`s%pH#5R5w^kBiG5<=WLd9a?R$G?Ir5DV{=49X--85;@dD=|b0oB}a z8_Z_OT~6dyiSl+Z^17fQR}c^{B)7<95!(`N7^8PeThMiRQ9wTci6RINTJIZdwjH%IX5*zbaI!EAK_k7 zyqomiN$2)~c$c4ktuMrQE5cauB?M|HB3jmKfl|SD2t3MjT-C4_5S(^g9v!)0H>BS53k9Vf@!YKZz7}E2XDl)GXra; zc{hB~Tqm?dYsPLvw`32FuQc}uSZ8iSH{xrfX8T#@z$j$uCn7Yhf#cr3_q}LV3d~rD zWP|HVD^pquW$VqA!=Km`*0|@ZE$L~Oi0AFL9?9u~P*+rmz)z?TsA~|`G2@qV@mP)t zBf4w}MK{*PyGibKyS%|aL>NB56^gbekb*R)w+hc?LqFNAOfvQLH`zQ&awFQ_Z&A+A zS>zRNQ5kzT+&WzSG>O;G!U7@{-=7w+*K;BQgvUBD+5$p52oH=&*E<|>Sy40JmQnXw zX~jPwZjndE*gjXmEMWn{Vqc?z&|E}!dUM}yx2_==->vJ;HK|UY9K%8)$funeg{`aG zo5@*|muDJUP|h%K))S3CY&TJ#3C3}N$?loQm(w~Ch5k@b2r(Q0jZ?e^6jlsxY=&<> za+qv^_bGz$BkYp^i0S+YOOf8qX2a+?W7Nt#HxZFSExVk6oTR#RAD+fg(UURGCtROR1jZE zOAFA}Rm0va$B555_tZo;p!6^gZ<-)p{v699kTu}$#~A>=-mS@t2>kvsx{#3K(<8iA z^Ka9_)vxpE>2?cr;GdMG*y@36!&y+R+65^roOFnOeBv+PV6fb^9Th0&I}w~)H`kiK`2x`&mz&yczYO5baBV=T7f&OBkw zprX$ZO5Kyj9k<3DXY>ZN;qDV7==|-=V6MI1cvHK)6L*I8gD)lCk8U9=5l<|ndhLL& zyUf~N+NfpCx*{GbxQZ98e|#3M7XBOqx(DQDRV!z}5*8WBcf+bi zdn7v_o!;^5AwB9|HA8$DjTNXAhN!H_hJUJ#iQwN)0eHm4r%5{t=78bvh8+1Qm(9IF z_y>s>>(JBrMku#zBO0JS@7ifTT#*W@5SIMs+-jd~(LYi>%~XBB4v2XdM9AM~1vOuT z1hIvb^x$O`2ZWOj%vm35A=-BqtsbA*&0m3_jWD11*%IQ@nF0#DjFPh#^tZ?@#U{y* z8;b3SflvJotK5OlQ+u+UFi+SOVoN4D{t-_=zgQwTKkhyUphDaj_63Y;O19t6kI%cmtL45bwhHZon5Fxhve82}t5odvFhoE|F-QxpG#Pk*WjDdIo z9|`=T2P0wJtvLhuLbeIyh-io0c3#O0!acua6z~DThN<2Dp%0_G1)>cHxEbOck#GBQ zB);wX!Y3wew;?3jD19{tX*uZzf$Gs@yG@R4M1<_7bMVGK_bK#)Q=Tk3oCw?$!fzgiD%}H}jGGKMbl}#3c_fJJMv$a??MCo}sBH`8 z1;x^-(k1&#=LssI0ijAT{5bnc0Ex5m-!D4?EQa0GkNsZ8Rv*Z?J2PiPu7O;H`<8&V zt36jh8>>0^hy*~Ij5ll@`j%{Dk8COQ%f}~+?Y_31rb-Dfg2c({w-C=fYyjY7ZbBn5 z?y@02W#5wC$;R@GO&A{6pzm7DnS}mGFdmt7LUd3deq#3r=D*_H{u~%{v$es)Rc+ng zs?lD2$#Ax6ODXDZn3iZ8bk9bv_wE|Dhn_ZUW{h`IP;l8*;ZIw`&*gk7Ypk&_g35GJFhj%WgMd8BjXZ zyRuNj@i`2leu1(Pw9y&!R>`J9PUHlc$R#_-fwtSGmoMd6m}q$Ml-eE|t>hsiCmh@_ z({vSh^VeX>vgM!=%%QO{r z0Nvrd0&3{m$Y$mB;*{v>R2cbQi4LcZIFxii$=_kv9D)n~ zxUh4U_i9(2oyCpF?_^6fs9IxMSu0V2?dnBJv_5xD1J|b5He*yvg>u%H&kF^Cgk>^C zOXG8zQ6jNQyMfn0pEBNoS!{v??JBlP3H*M%$n5oI4>Pv51H2}IG?}vLU*=8v%1VhM zM&UwbJc0!WY$Rv$*^xF3vzpXXR8orzy1hgePQ~#vcF6i=+7`d#w2;TYooUhsS|n)a z`~*xcS)I=9YUmPC}r;G(O2(Or(PRICO(J|?rJ4_ zM|#P{O18vJj;c#1TUw~UKMR%!QP?EX0M(PhG=;fWEhA~Zmpa4vd7=ak^F>Hxfjg&| z;02H^ajLjm`9}#c%N8k`?NX?IJ8Q&-vHB~NGGHJQKVy|FM9xchkMG{8kiuY-udk-i zMH6}Lk$f;}?=JX`WXLNwMZ(5HUul`0CD}~C%+5;UbUGls6n$1-uV zzmM!|afnPIUo=KhlpQe6W&bFX8)+cY%HytuD?z zEq&!Aqp(JvuLa{fiN~m#E#J^ z1XN~!1&+HvGQrkt#;2OXO{IL+sLfXuvnMg36q)#M(|IY$#lk|_P~EBV z&#zWXp7tW=_aE9P&%USn)A3W9E~X%i-FFQCdYwzZd>e3Vob^}QCS_eQ7r}8lhCVK{ zPqEDABL@j(AYZ;zgi4X)R6=Dk4OFkoBkzgGAM~3+xrX=nwj+fJvXyW(0xM;OAy2%< z{Hj#0r-3$I17m|=ieIH{T#Im{k0w8RS(e=j!Ed(E%+Xt~&MZQ7gi``>=ztFx8Ix3h z#-GnfV^XioTy7gX-@w!AXm3$dCMQon361Jx51VmH&c93xN*$)FQ61rA^fFWQrSV94 zPJh-jW!xvJAnBzUv=mbWB<6}m7a_L_hbzQA+<*7v3n}@ z$*{;c#u3(S`Ek?BhgK}oq)9>5(l`lWsb;&@?+OsD!r6kr{jCzpUW`$s-Z)jf4s?5Vr-_Nn2@c5Gcmopgf zDly)suVvg0ZIzAIE%k&;BDI%4JqNgy%V zozdUF=>7hiSwZ8LUQzF)$X{i<9ki!sd&9kF_fV}Q?JeL(=T2=&8Clj)vLMi*PJMJx!lcm3_G*oZ|a2gZ&VR#fb z&B5qX$p)gqxDAaSuuO6Iy3Jh^jZ4()>k27a8o2GLb$shd38?HC7EzO=5(vnLXgz`#x zW0X3RPX=5d%eD2KT30VwD^gmN?YruN%sRvb=7O7*Hwe5OxGJ6A3+l_A6XX z9TG~sp{QSzu*)fH8836{u9`0Nt~urYfsd)XR5klB`*&gF%CbgdHlBFaKd%qsBkR~# zfTVhR80Ja7jD8k|+hln`saCJC{H%Z{X36nzWzqAuUZd~}>tVf9p=ynOo`r?Q-U6Z1 zrKT=Jf-+h6fWSivjT|LHDfXe9&$46P$0*HoIraG0jjqCL@^B5OvSfYux0Nc< z3EigXCQs5nY88x_ICN{4Lq|ZBs~TLyo7_w0&R%e2bXXGJOO4ZWpvASk+NOv*3WHMyZYN# zh0omd!OF2oZ=A;9pKh_B@K_Kc!)IHP#X>a^X?=6x`V~9Y^N*k1p|Rcnm0`66{}K^G z^YCt?4kUd_S_cmtpni#t4RQD?RItyyO(`RiAMoRUt=f_wwkPUl8T=!D@=g5CNj@ngI zH%IC0f$K?}V9yT!m0!z3dY809B7J&dg8D4`k16yL;*<413SuX0;K1S+C01a5`#Aw( z97p6*^b|P|_#am)3RLi)|9~tNs887c*oBQy-*f+?lo-Q&V#T_gd<+L^mT~ics{arE z(6;K?(j5BI?;?1QsP-2CT8!!GRv)?_4l?$E1li%wkv>HPA^d-pLp(KuH#we62G4EX zj!4&?|20)o5aGFV{0q?OAbFPjkKz!3|Lpf)-QCTzRGO(O=qLV}muayu;%dSbWoQ*P)VAXw5B30F&g(D%) zZrn&By9=+G5p=47!%7@wa*Fi^L7z`Q68rkkJho`Z_&%RTH&xcRijdomBJc`;jwRQb zM;7t;!J0OgS6%;E2%5ov7V@68(bkRqA0DUqj9Yb`CceIf|AhwXR0o|YG`mzpx`q&j ze%aka)w^9h{%5S(ad&qpZY{K>#fy~U4#nLmfp3xG1&S4Gad&rjLW>s*?hpcn1PIA}`kvpp z_n!B!dx4w-yEC7ed3I)Y6Lx3mh;G}ARJNenYr^nA6`{~C{8A}zxM*OaJx8xIV`@e1 z^QBJXT(*!V0sI%L90~j+ z-IIf`knTLF8U0YHkyE(9sZ9t5&|6!GkOe}34uYw;y_67n)mVH-1Xnp@B+k_UbdU+aj9DwlbWvf`3Q^Nt|E`Yk`RXH zTgxS;w`oLshGLsr@6#QkNA{D3j`19 zNvzW6?H$zg+`sq^F8eDv0{BXxIc~_%n1vcFLpNlNB#7h!u7?bX&DVx`LJsr)4M-&~ z$_X$)T~5Xu3FSpG#41H^J8*k|g0YxIFB!}4R+1}fVIgxAfP_$fKID6SM1auo<4s{f zARGM7!$z`GKxVH7A6k~MfS8{lf$s_7qKJSPxZOgn*M=o6uN)XUu)zI4@BhmQGbA(F z2{?+@&U4H&;j~JZ@K({dmKe?#=mYj6o;v9yq185+hWG^f-fQG)> zf5L9tERZiYrT74i(|U13TE#9s(YJ##F0 zDnvnC;6WEz3LL$R6xKsG`=4=Q(3DuU;3`DJ(QW3 z-s3*kABuZ1#~VsIOj3XdP`qQ>to?~d@6m>tUVHbU8vv73(PS5`?~pHJ^WVTcdmrHc zLd}h$mwtHk)9p#?76Pc4$2x2Q^r2B0n~-9JD^DmrFsw*8wxac}aN6bVKSv3~2>i#l zr;nH{zkscUJqkdNhlHBMLejT)Zn5yf+u`XIVIDG$K;APp6BrO5i**hmuk576%4laxx5dZx^3bF*}Q%1{Ll5$CmiHex9B&egxHy9 zOadNu=nP=?k+zGF}X>S8URh&0ff$TNIJQH|GjMV?pqLuuuk2Oq0$wvYsaVarT(jzCzTUth~=aKY+fW;c|4-Hd8C?%`0EseG!0h-dN+cGkb!^*IlA}WEcMjTKVjMau3bz2`?%r z)&lRwTM3wo7WXr5EG_zTcUnsk3p}9`u@JITdhA{s+S@HlC?4`c?2^1+kpK~6x4RRH zIOU&ao&KKktgS`FaU@B#72Lq3gSF8rb6LDulvH3ad06UZ*fN=BphCz{cCj+f3T+#FM;yHnM zD9sWcdpBYa%}Zc$@wA5IegA_HZ2ufY>5ERBf1tP7xiAd68thcxa@ZKy+EE--4QacO z(%r(-JKM6XP>8=LQ^Et>?fxB1>R;~RcH5bRk(p$pJ(+hbHvtRNFO|;y1@J;`X$MC? zC0~W*n*tLfWM8IlNiU=xR;<~BLRFYt7?lrsAsJ~03jg;LV?Od+C>%L{}CGV)>xdem}eirzoY4M=w{f9R$N+ zq2w;13c=pJH0x1B_tPR`YMN!mQJVNqPSZKl)D9|#?O4umxSm@h5 z3qXtP8H`pp2Egl6%Wu5J7DAaU#vT+1|EcBJqY`Iyfx-mlh9h^3d;dNlx#Gm;KZj|D zeQIP$1Qo<1OB&mI2Z7Nt?qNC=53dzwM@uiyU;ztG_i~h9-rz$wBLHL(y}k4k5o!q{ zM1)fGDh}6b!wUO)yhKKm3IG>SirEIh!F`bDFm4?rJ_W>C2;R!{PxBWrb{-T@odpT< z9Yt^0Hnk42)e_APgl>rXPN3vfTQ7aYzvt2V%))_b8IFaLkA(^Y_ehHlDoNzun-BqA z04AXG7GZnuC>Aqpf^-WtCVw0nFS-M%?Q^G`xQ$+3`HRFpWe-E+4QIRyp&fQ_{&H`E z4R9*GfRW9x-+*7kJEMU8lNR=B%80UutJzFRQlX8lpd{haYtKVCSnR4jc>gTlfqPd96-IvjLD31 zI#0Mw*e1B?9Tto&gj@9}gz!S6j|9^l2T5_^*jJ081h721Wz88(3&KxAH*uXC6c?XN z2V;+1?-XL}1YKN*d47Tu^|hIIdbtzt+&R1VwdENT(=4gZ;KiThYGaOEPo}X+$Dbs3 zVvSr6ABA~#U%2$Oq2Mf*rZe{#A~iGBwBuH$?yHm{HTlz6@h4UX082F<=1$N;KE}@7 z+}%5dk?W!tfRr*^ks5f;Bbp`mbIkY?Q7Fd9b(+Dw2hEcD9RQuA0%$YB3(#!~^|ftW zNLrdIeUSJ**v2G6BT@sU2UI$##*IIL#sbi?oiu>1(iQ-r>tjpPUP(rg8r4-onx%{f zESjabg(LM9^V!+!w}JpIJ9A%KXc?iU9cgqhAX4EiU;_A8k7+=gqP@JODddvV(zMnK zN2EsSmPw?BI}lJX`dQK*pz9$3=>8Fai2nnqHLL|Zq-{D&Q}o3Xks1q+*v|-TKfn;e z{{Y3q`@=jHA71uJD}~})=0JNWMZgwHL^KD5K<%ij$?Oqtnu9nz?2%hYJ3t5b0qBA$ zEpyzvNkqW;D0~rcw4cVN2-w|?gyw*s1T+3B=?Y^fWLqZ8GxUO>PrBEi+cKv%m`ViP z`w55UV6F$Cu&KQM3@7mj?vn;dV2OZL4X{RTi){d|->h=oY(t3>rnqpL72bF`^| za%s`m0AY6&pu7oTGRajrF+gnq$J_}ihlhFg=%r#_gkazSZEvtKc8~?8ebN>m0akP) zkqG#p9nkgwNlbIFI#2%?inmD&XfVYBXkdq9nbTVj=sns76hkn4MmJ=YBfRy9=0NE$ zpb>2fpiIPX0KVS|z}uATlSZMj&aC8nxA1g&`w&e^mJII9k7-6{2r+j85Tbq3JrCTL z47G0JnS;`(HD-}SZfcAX*cMTkXBQl4S<}-8o8jL~+)2Js`GJan4JQKaB1|HQ=p&4s zfDQdVX~kALk;K+dL^PwdHJBr?GAA$M9fU56C4;aomJlroR{V}kE9MSDL;q>CXO|tj zC4*AEp$E;V%4@6uX#tdQ2hcfv#iZjO zm{9;)Aqjv+gA0hE0?__53xnOGB|o33&vbs8-i$3i*nhuBY6=vWSxbK+X$<-Uc<@0I zcKp?CBj7+oF@W2SKLtkFmfAAM!i!7xl#QKSV?At zBjw7H+~&6fIJ#Kha2Pg*A$Z$^bWQ!A_ylOBTv zuZ!3NbJHY@8`~{&dP})4CX5;@kD%@G1#6!(2INr}zDJ}L!^WdF8DIgWg2{|0fEPl1 z@v?822GrMzk^cxudcho)k5yB-bHT5{+?T>a%#Ue^C6Ddl+h>BYga@n{9Qyo%0#IS= z7?Zz1eVAc@J9)RmF-N@HK$aeZv)-Kibkgw$!7X_42QPupxO$Zq23woi3WIfx8HK^* ze-VYjkfY*ZFw>EPFn`RNv_UI*hu?%AoQI$|jQ9ht3j7+Uc_pc={?`xQ`C`i-(b2A9 zp6F=uFi(YR10Vt4iCX56Ac3GKG3Cq{Tt+W3iQJ%x9>qU^PB3iH5Y1f`kWsZfu?^Y+ z!}1gjq~RO1CNRRFRZO6lvu_yHq*r$jXO=xw0gf(any#{#Gzz>xM*1CBVO zz`RW;P5F--4`?^}husRaLwNzxN^z`h!etVmlM|pWRhN6<^V{iEuDzDwZwy(K-G&Tnw`UwLTj&1a9e{Obw#7y4pN3my+hDM*6Jbr zC(v{)A!sw+wYWjQFMGhRUcB<32lDk$XQgX#uD7t;$bqyo#0{8&xa8uwTxf_l4_sT? z#p0gQZnHUNgsgdAt)oA4R&p$2!i#b!v@xQ8G!O8 z5Do$d!`*|VB%ZDcw%(9sV1G~M0OTD)HWI3f5T#_kR|{E-7|2UQ+_L9*X%}BaQ=q;L z(DNXP{=M}ii$oWBP~s{2{q!&-;MS2&7?7dJ+wSW{&+x#{C{W)A4tS9CktZ^j_3;C& z6p6)kDFf`h@(Ba^vX@tb1gfY9#viBdx(MFk*2<|-BHmNetQr5pwNJcjS^u57}+taQg-X&l$WNDX8sU&ZgO|2ws??|bnZ~t$MQlo}6xTfpuMa>g0$Fa1xH3D9a z<7t{TR=cyQlh11yy!KL@1=>fFoxdv>qQD%6tnK!x&cyBeDb7so`>Wo2Fl8@6wk7V} zyKkoX$8Z|-+TW)*rzsdpg0yOc$C}ekPsW?WO-;rmGEK*Kb(8sXO`W`mI1QQF zqgK7I2OfJRa4hk7C2%c8@6xH%V0meBEZKT#vM%X+RkJU>_Ht!gviEZ3T$1#1$jQnrl3xjeEhZpa7nz9gM`$(!YR=XnG5{H*2 z_tNO@ce`(|GZi&D1X>P`E7`mR*_Y_NJ~>*T;?Yw1^^GqNO)&^d$upVMEq$26$6nwl zM+-d8uVL}3`fn_dz#d%I;31vXu2(*kRQOarTI~>nZ!Wd;kiAp`{JmlOD{uW=@u5xe zR35h-iiJ0vyy#_OVgWe*Kkri<;*~I)q6iWLav2U?1dsfd-UW_!AGrb&eA@5IHmYkZ zo1(j0^ftNh`lZ$!xzbzh-LLAf!Rv^bJn`W3oK3P2sw4=xLg38Q@9*z(M@QwZRSzRn z>s1(EfxVkTQu2Yt+(WE|rO84_Xu+j?#DFwI3Ah;Q|4Y>!UF zJgvx6vra3wQVm~^hN9#}JHPMuU8}%~_$|lsif{9~E_-$Jr&VhjDkC16dE9fR+Av#_ z)~pH&30}6pCFTJfjqiVbqx3y6#t4E7l6??mO(75_3OQv!UpXtr>{yd7UdPW)g_v^PK z9=AMAdG1=fOg{VKYT6NJ@sV-Pak5;SUwupT)a4Z7&p35z<@1^$}Km|`RHv2p5ayTgl1)2#odY_48{nqLowKFZRT_+>ny>cToEC7Gcs zBU>Qu5jap)`g0`RJ~eq-zy-CPGF{bb1zbtisKNukwOU*ywNal`Ob_|;VaGA1o>Ekz ztf8?wp3lLF)zHKn`m@+CJ*4rxM z#NbOBgZ%?qbuU3Jqw?2>WZtJZj~5Z{X2fqrL|aGPoxRks>|A`mf4H(GkD#$vzR)3N z1~*@f8}?fsQa^@LGw}N-6Sm^-`t-X}#t5ZVvB4}38zKfz!1am!3h`n(@#g9$(2^%) z;zB`HTr}Ma?>!?nIvU6(Z$b{G_S|1K2()q=hZtr27$L%`q$$yS6ka3wLI}9@*5zuZ z$6i5Nu?!35wT>3hO zs2jh%fAMoMHO zWKGi#II_Xx@?BjDe|c&1WP)-_W!1~aSskO+7M z6c#irzQ~&uv%UzYFO1v}o9NFy;7uKEL%FxuOZr&{yU*i(Oim8zI3gM2N*J%^ zqkOD_H%c2es`yXBV`B1rPkt`E$kcF1e9P1HE+F#@J`806pP+H5^^ujP{00e1&9psf zDtAig%WcSYt4hU>b`u`o!Y_TEpYfhsO61|)h;O9l-(8P;djSz+EQ#o3MgxlrQ#G+_ zJjcpn8kC;hDkcZb(fxo0IUz7yh|vlDlscuVBqCa1!;( z*)Q9rY?L5<6aQAuyf2W-BW_;r(v9@0sy1yBP}X5}5F$A3HAm{WAbP?JU(8-sSg=jr zF-Ng#6Zbn}oXTN$K>HmRvtA2VAiZ&I@w=it{4HfAe0h3hNn+uYBc!a1eI0)&H+F0(k|IY8mY1 zEqR!pqiOBSqN?j{yH~0*Kx~Mm{k0@_jg4h|B<1@?kM_%dZ>{VfZ_JyG$4il>)m7%* zB9dlPSei9DO~#&QyMh(6D|g?_NhUsnGXH6#)Kf0c*#PKYX|Ql2cTl#c1|Ir`ED z&CJq%WGXMaJ{{H~SPH(0IVqpDuXxfC((;44jTKvNBVSh*!*EuOT11F(oJ`_(BRiJq zTOoUK0aaI0Z+561u{eELR^AhcPw0D^OYd}+a6_kva=mR0=YYx&KF#imxoXYU`1bNf z{bQyA;S^om!&8Y=aOvft_ftzCMEC5A`QgdQ)_KiBd#*WWOI)5_KT@8k-T#h0X4!v# ziIw(+H@PAb=LyQ_6_(9oj#X*6<=u%q=akPbI^8Lvo4Pt8*ZP5kTuqrk-{n74D@PJc zP;{Y^%~$x_5nY@_zr0&9~b2FWtY>fPJKZ8fomKt_P zosBx3uNXNGJ1dKQP}_T@HI=PcR_E0eF(1pKjC@lj270>jdOoNYjqP?w2!i#zI%mZQC$5Txt(Z7(md~` z+1(=xr9}oBF_bpx@jD^HhhFlqt_I%|GfI8Q`GMuyq|_qLS<9c<)qtl zuL}M=qF&@k`dtu5!xv|bdr{I*rl_6kba=p-sd*b|r~E!vQZ4yartEAPU7oPv3H!Ve z@9*-p3i8lJ@jwgPHCZONcHj&E;)2Q__C#Y@L1Uv;+Wq#+xu_?~t1LM{Se|~IB49Af z-1I7W=X^nZjj&}fgZ9m7o}CW;<@9|N@7a!f{~&3JdBaziA@NJJPHOxLw-6f}pH^PQ zFYjS4Jxp82tA;m5_GYJD*c$SBg{trG$;RL+%p;YFRT^AMf9EtyE!W?oj?|_&W{pn%epGvY^{m-UdEXOHPGtp%Sf^!H6|u~*00@|^zFcRa{=J>hS< zUXe!s!_!1<@bQONf74-K>IB0KUfiYESaQ$`t;SlXJ_}^odBuB~YT&8i`gDh~?+*N4 zkQ7&vuPbXlcITKumrKkn+=Wh+C-tZCn|F2uM-SI(uc$uNnhK;4MkQ| z``h*o;-`QiJh{^BaBCJrF~sM4Wn^?lwxo6z)q zLkpu@N-l~j`5PhUZ*n)m#~<*8#_XAeAi|+7f2BO18C%ZSyOCo%@hW8ZB3^g-USgeh zQQjeWbnmq<#!H-gZ;gIyJb=IBMp@Z$_Ux92Fp9ap?;&mvVf4C{-M#c3+dKI>xx{L+ zcLmy(-9^VxekwQtPb__Uko%vPLt5=)J`1wHGln>6!jN02agSaP#a;_2G<0{K%P6tn6> z#BBcG9Vk^Tdn9~@(>9O)UNZtO%y!F`Mp(G*K$i$I+ed7b=6YL`nYSKwXtBEhF=a(E zi&Zy-eBQYvN}QCEMrF8pAcg;&G=u~{dt5KDTKE8Jt^L*O86AU;u{#HW?xDTitS(tC zzwcGEr5@C8_7I&W*vQExjc<;G9+UKjMpo~7)Cxn=Uf=R1TpG}!r3@Wu&>L$$vOLMp zg7|Qd@tx~b69Y$0%S@l$Sg z=uYM*3l9=jlGN#7j!($X-8&&WDuZ`wx@;C*CJ$GM7Fyja9o=^Wov8ctka==Z}cOe!hQB({58EsmsXEs(U`-6L1rtocV3 z?kjV1T6Ivz*bd`an3V4E-w}=XZM25eU^pe6 zZn)8YeO5t2ui@Eh;AS{vcH*INbrV!9DX|hlox>Ffl9(>`%Kh0M8q7xS^e5C_&OEzW z$YXW6hA~BwxXu(ri zA|ILG^}0?Pt@nbfu5Mld3&sZ=tp}^!9m9Bv4fHKWX0YOD|Y3H?2C1#nP$v0;;-I@o`w!Z~n$u#XbMaoV=KS8G3 z{exI+DWd8CiJ;Sa+;)S`V#QEdL4-?l%hl_JW3SBvvNV2M9D5w4%q_~5BFF8BN6|Gi z3rY(9Tvp!qRI`=jDxb7^tKSD7wD{-OwwRge&%swer!LNDy|=4&mM`+^O+Ne7EqQL_ zdkh1%zH*zDXlLIn4W7Hb`gw&%+;{?0gmp4`(r=$DPB$w_p(<-^(#?A)JnGOXk)4e8 z5$^t%f+*P7*ORlG=+R-r%pa%ozB|WL!NS4@-e{QhBh9#;XotVonUWO~$%2$F?uzwt z)N_}fy z{>BUbbs=SFlcBu;!uQAv7G!GHy z*6v@T-r1aZl>|B{DSOt|XtnI$Z$Z3qxs=r3+q&Z6^qc)&Qyc9B+e!3Qkmz6s`DP>j zoP{mmtAON;_fB4u*K|##3w5I%yx!!W_f~0t@2(D=AQ$gnK&e*OjM0{8v-1(CeJe@t?Ov;-1+&H({hg(m%hoY(^dOg7+rovw-CT-AP*@rsbzS@$Klj8EGyR^MOD zpCBzLFnqfZFOc7hFBD-t3S~a62ny7?ay}w*`*_nMujA`Kb9)lo%HWfAKM4e)Pkx)T zChDvr$r|it>QiI?MeoBJNuWQq@49rzpkl^6Ulx{wXN_4IxqDJjIfwFdK`fcbr%j-2m>=IHTA1b~5n1UBtEk_j(pP zDy(L}gZ6XR#kpA;%jb3=B--D7&r@4FmGU6tGJ86qzfKiR*z#{arg_3w9f)HWTC%+_ zg(q`~^E{Rn(JO`qD{W1P+n3pgv^J*aQ_O45Lu^Z2{H5K2oF-zXd2{i%I zjt>RruFQebrbHigtUT39%?a?PsjIIn#C923)bmMw>_gco$UW=?TSrKJf9#&c9h02sEh-(4>{Py@^oVAU0Bw-8k+2 zagt!r-Kga!Ah4ovoS_;Vx1hI}Z*=>v)jfk_v^Vp{33)Bqpmv$c)c@%|7l8=*7;Uc( z;px1&^SmIa9fO`M+xq&w?K$*C?b#emWowzpt;wbsKQtD$8?x=+tZe6guN7`M^1bYP zN>4ux{G(QN%6KhUW3V~f`7b|8*6#etpGs9JBzM(=-)UJI*uZxK8&n%=ZKb)_=z5jI z!Qabl>mPX8nw3b7da@p{KfW8q{D{L}Ua{vwkN*0~Ux^{VqinFw^+8H@NP(U^km`DW zfBkiKie$^=!-d)4oRT8XhN=F&z4`i|Qk#5`ujk~7oCKJ0S^Opr%4N$a+pW|FJ;WnQ z_3?`XwSM}=Ya3N@qu-kJ4SX#cE8NAWe)5o4ICfAOtN{OL)a$qOGc9Kjbk6hUUoo4(#>8g!SPBp$UrtO`(BDXYP{jP=%BZ zE|9U&qEG3~^tb7Qo=nNz=Kkv)ss7Kc-RL@~1+9YAM*QX7+E3JdWiQW4w_JMYT=`)V zJp4>y(XiS}ee0&F?r!l>s_Z9VZ^z0S#C@uQ@CsV-q4kojNUe~sp&;Xf^JaE-+FKc8@ptca`ojf{D&O$0P*9E$xD@HuIyLZ7GNf?b zq*S<^xfIk1f7-veA1RzZcspTdb`NPMDur#2_1U`FQt8tOse~)&+KD~ z-Qb0^1^ZJMXM?R%>t^H6-XH6#9J~3<6~)|*@Z5zV7!YFY69brJR73q$B>R>v1HP1z zoa9q2K^Z$xwN`3Msn)x+MMH2sA5kkj(lApXA|Y0fo4;zR>qNDKEqg< z5;XlR=;-j#jiWeR6RQ zkEdmNQE71#Pp9YjW$Lr&NBgDMi)xDvWr6P+V>D-pqD~X@^3-y1{ZcrpA89j=+cLf6 ztejXjv{9~OHwrDN3VKvX6_ZOeeuAuWpOo)EbO$lkLC%r{>1MKe=fCeh{MvBWTx|Ny zJ+IYSySSQh;3s+pw#c{jW4P!i*(tVgy=}-`Yclr7UokSLs`np8BTgo#CI_f{*Tx)jy>A&4LVfgE@o-VVdK#SG?m>Dn6 zp>Q)H1)2R3#!+Uuvz2>W?aMC6X-vDskR<{F!^OByqK*d|$tmmY4G; zMc4X~q1qc)R7NabR`1l(YSK46F=mjiJOYut%}To2%SoKR@i(}!$K#{qNzh!LXwn&o zDMhLOp&osSO2*eNk;wGA@{QO}iajwNb75M9-tmoWb&B>oQ}rl<#C+@3Unh9;-)uO~ zpP$%YrN?_1|M6b=5$7w1$dT0*Ja%!tz9lE}0X?Y+a*RjL9aOu(Ii}+2O!tgpEhc5j zd~u)sk%jNY4XgJg{PE@y<#M$zb_EM-SNnS}+CvYy(ljBocdpGd9mqw+wdO6Dze6ju zCdl{A&SYta3$$$u?qtB($nWlEzBK4j?wxir?z>b?BiZR-I`A_guiwPtAyDdmDv6)1 z6SOQK#%>>a@r^xdcVb}_Px~@U)~`_jHvU`=dURysAlY6%+pA4qutIH~(>Y(-;$*b3 zMt;7Qtq2rrDtaSyU11>dsa>5AyWeniyHiPPLVkw}?6*^t_PCBc11B$0Y}lNS{yt|O zH*Lj`C9tU=p~+3J#P(Ne0jsd^OxZ_Ev@V~#olUQhXiIX!`frcZ_qsQgS%Fz#4u6{2 zg&+sJw^8q8xDVv`8!mGjDP^&5)oW+Q^^bBX)r$F6`#g2=RfkQDr19j92EnIX7J?lV z4)$_3%42F)RLaF=?Xpo{z5en^nLqzyJTQGA5J)R&GFlaH;MF*6a7qPcQXXEyL&dSJ zM?;Z;ccoIHllOlE&m-lH{{FOQPC%FaE)Y_XlSgmQ{YY9DaucdD>O%WJl=hmwDfi=3 zT4@akTv{50I55;AY<)Hnj-Fu1BZfaAo2eg1Jt!J*zU+cBOgz zLXKwV@`}CU_t8%4?yWMn0^W!jl9r{)*8P!aL8Mkohfnj$UVPl7nek#kyUT;d!*Y>L z0B)t~JT0zi@lRq^-vu}Edlv?-$=2F)t zeoJuWi2a>d`}8Bl<#=7Q9Lfdms4E^w$%e^jrw19zkqW_r=vLT7#kku}qA3-Tj{V4b zI9D5__ZVF@tv#AgJQx z&bn;##QcZEj)wMsW&Y;7{`2}3754horLK>daG`S39E-)^tX#B7=*s?)Lm?Ku#C_E- zxI>oS+n>(tsTZ;O{kSxNS|5tuvxI&73=QNw7Vr4xbJuI6)*?|sT{q05D|k^+AN#1G zHtz()Kj>Pw{cRfA4_()~cgUY&M!PI`5{Ih>S-3n6a#25bfJvGEy#v>5 zXO^+&o}*>8WXp>4CAnPO?Pd_&E5ohMRExFnW24K$yacmVgariIHMm&)Gj_vGrNYhW zdpq)?_NqohR>W<*BH&@;eJOdPYTgWQjh}S;VExHV!BS`^rx!GqS+O^y6LN*jV+Sw# z{Te>a*f2JlX|^a`jV^h;b_d%Jni==6-BgyE4 zM#BTQL2(IiJ6~?z5Ri3+NsI^`4AOP83&3h8vuvzA(ZSE-+{_r|q)6h36PQWo*0Z`k z1bz0_P<~?@Q07hOukA!Oe~S~<6MqSvY%VwK}tCvo5OO+25vKz}3Ph~qC20p*YElz#fQ@-D{ zczs|A?;=y;Cp@j$lMniJ8J#L2Jk-&2dZp-KIZ8L_9JSDWbA4+hS0jIp8vVh%pOZxB zoyXW5m^>Pe4PUZ-ZCKM>kgZZ1p6Fem8_g`MSKoa7O*x7s)EUIL|K zZ0xhp{Xg|E{#SX7|MMr@;`Sb-qmK8Ola@$HtN{Z9!wCyRM;#l70^>38-O*^T2DJU( zU)&g^7|LFb4j+Bo?7Y2MH0|7cUF>{>tUNq~RovZt?A(03g>{@A-n!Yl8+>?zar(aJ zgQZ^2higm<4DTn8FY59Bf#W@XixX?|7y$kE`X`Lwe+2w*VSN7|gz4IOyZd_C*m(>8 zZ+ZWZ5$*rW2<`u0xYqx-xq{xlZh}5uR&L%NR$hRqg4QlpHqJthHg4Ykgzo^xn*SeT z&rIpS~c}4JbZVVKJbFqz%4{)0QjPa60;|&8w>tyIro7r9m0^tR$NvNYi<5}XKq{c)d zMZ}gDPr_(FTU|71iCdTYHq;ZA5T(x=Df0Vo%6|1SV_4iMo>UiD;@nTub6e7p!yWXd zV&3k(+8F$V`EkbgIS=I~KL!dT%#HhF%*K$_Z=YWu|9e**Dr(P(5wlo?jl;2h&H4T) z{c(}p!_yy(B~612p!8JYZwNxq=g4vEU!)r@B`+~<+^JZ;MhV$`OjIHy#iq1Ey z@47N(XTROOplH5|@CskH6Z%?c%Suy6Mh5~BN!pWzvBvyog}IWqkU)Kn34f%MsAk;u zM?m|O#>1K*i`}0RJ=K6V`T%j6%#69|?{z)gpuad6FMCUpH;(YE__J~%)#P+r?Ob6} zzSmk=?s&rX2Rf-Zo3OVi80WL(Uo)JHF1tSVIC29s9Qh+8PM)hOW;u4A|9$)m{oS|Y zN<5*F$~#fDW=uA9(HS#vM-Pis($4X<29Kg<{u{bhUGYxi=k2)#o`0m=5?D;vlKl-x z7rkmOA*3!>_1c(mt^+1Q4R5pR-n)>)6FjEcJ-fNP(2{;Nl?F5doKISeJPZDUt{x1N zi8fn(t2ECne|T`~Pe6TCX&#f*wJcr_y$98KO^$pZW+HQWC_;uxZjo&&-Um${muo5f zwjdKLiV~o#Y4gf%S3b-BNGVpXm3dMDN>~2rcEFu~+C&gZWqA9`s+MJ9gIGw6-6O2I zwsy5Uc>UziYLK1ImZY*`mr*;!ZlNydkG6TEreA2DOXp3*oXxVGNrCMw{_kxP%_cJf z?_Ga^0PP7$({}rB1YL%|e!mUhCQ5$q+=~15x~Oz|an7KF4b|#)Te+uV{N1Sq*k7nm zC5|=H7~GF?#~xwcojh-SF2(VcsG|HtlO>dc$!Nj{n}upzfeu^Gd7w-|1H%yAf}QE? zc}ex-$`%u+2InbfdXjOBwlhWt%WyOJ_1)!a)P$p0Hv7lV6dIxq7^5EIVVRBu#Ay5U zHk`H$OmlOrA?4mtoJlT*7=-|{S3La0Nt9p0Pe*VBfO94Rsh`!nU>Oo+q>ghDD}wcQ zG;K}!JB2Vp7Gq4P&z&_(En7YLI>+wUUu;v)im*jT2t1xRjEi;Ey>AmGKZ$04&yx;y z>r;Fb$vi>~#>B2&x?m_3|K3#Ar;kaM7cmS9ZrTkP_Mhu?`b$IoY*ZB2E6J7RbvM#-jLipJoho2HN5k+LbY&tt=c#E$u(>nfvihdqj=<;wT%Y5OWR^f|sR%=l@YdaG5 z5<5!lYmlrz*&+??2h4eQQod57r2G7r-8T4`XjzAv$@f+5ZX&JM`!0 zs0YQ3oBzdhn z?CwPlwv6=slRqvgn}1nd1X%@a#O=hN>kz0L{WqN6NHIh(03;pz^3@LnD+Zr=WpgI5 zZq%dUuD>6GWAuVJN}AS_x?fsvn$3k@lH8B7wtBR_BS8@mT{RxVNNEca$YZ_`;|~>o z*LZ0v&&lwVEM_>3jrGl|Uvx`$R#GfLS|{XqAojN_}|8yTMw9%5Jn~;3kpTxcPynS^!lLNM#ZK!vyPk;sM#S4Y`eRr11;1`;8_(7xqWf%K zxK!%tn7(hyKt#ZNix2Gco9K6YpPADvgn6 zk)KwNvlvOlR-ISBFfbITmqc3gT9alikExwf=YEO(rhzRzwH`e`I%32<*N{ic9GLat z*X#%CtgN1omMYFGqZ5v{UW**Ru_SeOzH`0 zoF_@i6mJsZ3fO*Jp5^tUr`>lcSz(S85+^E^WBU+p=_`FrvE z=$o^_=XE5%^RE)bYJ4jn4FC7#dx}PVXFvVF4vCd67lKcNo&*DnaUPidoAen_M_U*! zNv_0xnjebGHVYl9g8~a994{a7QZHlpPw<}&-%&oJDEvYMj#5JdoKqcc#`4l{Xbc|U zKMCd}Uo7-*;XltU$ljakUm?HP2=@D`SHIM@cW6F6v_F2-ub4LTe#yt#du^6JruGSx zxV)y%(u+)yz26m`RX+@w_aGJ4RV(G)2n$te5e(Fzo#~VBX1J-)l$~~Ts3SRx@L30b zaTFgFh-0h5zJAc|eqB^3k8`#v(mojEgG((;kyp`siO4-;-^O`ATDP$GlHg3RkAs2z zB2uqPcYF^ad>-jMC^oZkQ5$slB|%{()@pgyt4RX0L80+o{?o$dd4#x$hNg*R^SJHr zOKP!2-&qD4d>GDqjq>d@1vQ&o3PsMwF{A?54@)lQUrl1!w{$*J3UV+{mDPHnTYPmV zFOOyl9NC`*`D)Y!o;6b6c<*T>P~p+8eR{ao1p*(MT6GM=YOeiN%hWpY{LQ<_2f$o&$s{y)kDyl!F5A&& z#%ZE&Ejs@i9&VA6$`>W{L3pdPoDf8x&scKv3ce*AvV9UE+O4X8Y9D7*UFLu!H0@j( zD=BnFsQhAY$NI`U+A9mjNw1-!eq*|c0Hb&zKPii_#hH)Z$mHSrP zvE{B&gm}EvA#S1E)sf*LSBT>@$;X|tICs_!?cli^&dtmGNYL$3T8roQW`7gxc<$w( z6^Oul4X5hUdT}!cg^0)RedqlF`5uumJ4Ed7EZm{pe0u4hr>z5u?`di4{W+f_uO;E_ z38DYx0X3Xg?Dc_rTsIsbdZbigm1On=34D=Nf7#3s4qPJ@_nZ|fxhKfhoYBYR>n4t! zdHePcS5FD8MReV2=AY{G{zmQ+8W6+!Db|=V3-qV=uD>%M>Hd<7zZw)#TwhNzrK0$3}M8C*0 z^;0EaT%6rKKxo~*DyVsn&L|%BhauC&6qJMKgMs~y=2Nfa3>-5szPEeh6ENF7%e|!J zs!^uk+nV%>zg9o7t2h&0b%5xTu~ zS+N<`GOy`X*82Mq5f5pJFy&pNQH5WUh$bD%d!Y%RywXNc*X~-f9NlTx!oi@Cj%M#y z=l|_wyu{sGX*l~l^Vs}VEy9sX2p*sCDp|K-_@~)b%DSY7-P*XfJ!P~3k1X$Yn3YvbEiC8p3fsEqFu zEILIQ>rnmbiGy6x*8b`PfLu-F9np&wbLQSV^eoMT z$V~wSm)%Y3W8iekFed%YIbDw6`|d5ams}ikU4SCZQ}-SPn{`B^Tp~;c+DMIRd?|cQ zs=2=XE}7=B^oZLNypzFM6zJQ==|WcQS1)soEcND6R5}a$M z?xKcNM;q;LLn0DmqxTUNy7VCJ6#>l{T!+qKe`sGfdIu`k|5koGzXNOIlJ?!&yFqfE z-s;NEHHr%t{Car8_6af}s$*qU`8-%P(z-XWcPz$zknRoXKmR;{@MJWFMWC9EylcBB zxlNd)bf277^|4uUJ;WbbEy5byP@&o>g{p96N%? zVZY|oRAcBkfN}6cEWy(w+EAkw_qh(C6nTj18YqZ-n%$X#$8-_J`y9t~7~JRnsN!XN z>8|MZdLIo{>t zDWQ9mxy?pj3vmf5(I^#X&s=C;d|{)Y*RQMYbS|qtyBqm#GwNXt7!@n8!^B(lCI9t2 zH*iZIQ0Zh4$zG}AnSj5W7u*~-BTqmr5iowby)mRY#c9>R=l8YG(DTW|Sm#9`0oh9v zz^{0)`&RFM*A`@U&3;Tu%_+XywS?b00IyA_L7QN;x9*av&IG%yk#L*%yTv3mQWJT9 zJ_AY~kMd6N&*cv0^bo+{cQrCvNb`$#qN}j(mVNwvBr(| zcZBAd`n8;|DbkjDOWl}Lv^V4ZiwE*J!%=XgWDaMJHg}+ z(f1ve{8xs{j}YZYvjE*_B7H<+I80pMeJ~K9u(|nGR?r|9vus|bLEPj`kM+F=PmGi-T|wr6?}} z4~zXzJQQ9^QdAkZ75wJ|4GH{RZRNBD+`u?WYPkRa6z~6hK%hw3fq#Qluo4kbRJ3$( zb#SqCa3qux5g~MRb}+ZHH3I-V|KzDysH&Wz^F41p2+KqUrph=dqd^lY3&#YaCXrJU z!5~RT5*4kXDGeZtiGkyc7e<1`#|OruDbd13!>&Rd5EaLVlte~PzU}&y*erKHAI*HW ztneS#-sd&VLG?q!rAx9Xu?50a3F9O0gp3W3?jFz!2Emd#0+67aOo?1RNI(ED{=B?2 z#Qjjc01(f`Z_t2#xtxAR+=ws4GvO>qf%rT6#(1^U^q@f;t2@N0-%cDY4G0C)FB;H z18XX)k+*}CODsqSn$8JILxUcla#jk129@0i)F@k!e$Xomi#doDap!&-04PjC177X@ zhvzIp-RvxTd@F(h-B};x7qPMN{^#LbjiVp{u{wenJUCdD9v0Ryn$+<7v=}t#*Z8n~_2+$me%$HZ zBMky(7f67=>BQXAzSz|-P@*p1LNOj12kCkgZL!TRqC05J;_iYX}b3BJp%xDT@C}kDWSmvEkkza zJie|4fNw!00|c5&B|8BC`l6)ts*_CuW58&=Xkid_gAmTc048leB<=vj#=y6CL-tT% z(&0g2Bw<+7KwM`-s@h;-%J7*6JZeLR--39o{YsYMDUJyAgKF&ve2$2JjiB=fD7%AT zz=g)4zZ((#i3Bl@)+C9C#>fhLAsUbbM~NXNoQOnKB9=*FlVnnkRwY!E#Jl5j2IY#- z74J;q83!;2zlV2AFr@}HD)Ie>YZ2+FxW?n z_YfvD!WWX%l+~19m8>MhC1pka1H%CW7OFHzL7Y-4(@frp{5p(j%*+&_DM?GRjFRx3 z0m&y)WSD~#B}#;uq9YMh>Sw9y0?LB;g1s`yDQ#5_t0Xo_%ETX2n?@+ER9Zrs@vwuu zgP{YK1Dpe*I~~|OV?n3V7nMCqTVhx~Th*Vqb|P=4;mc?I(pZ=}l{m>b0ekR(gAYdw z8H==_#LB^h!nDBhz^u=dEyr4n!5UL#@a}^vFiz=SVh-!;U2UUSmf31%w zNUb5+AqA0ArNW;E``x32-%PNYJZXt+;A_I&g4l-1f6lD=x>I*$e&BV*@Ksk8afz@< zvuHFa-=~@jK<#Hbz2v&e!yHpqWZe5lZ=qgO?NQ;Bv&wcbnd#b8r)Q*V)=1VU)kvK8 zu-9EyR>ctM$_H6EzfZxbN`YAAz7~tiuc2{~9i_v0fo}zAj5gb~{t6-rK^85?Bn&1DNg6*^8rsS{s-KOnG5DYO zoeTE)_jx(Cn76bHraAiC#@nV8h8*$@!nQ>MNWM(JyuaoF6@g?R7GP09LP0v9Z!g}y zM1AoB-0Nmfjcb=ev4tH%XhI3WKY|Yjeh^uXUnKq@dOpsaO`5er2vhVwS^foObYv7W zgPzaiqXE&5k9U34qQf=Pj^o=%#Ln!lRfn)eS!Cu^s` zD80GX^pa+trj)G=E*Cv@9lO14@AmuUeZ*eg-nV@pj7)}cJx8yi*};df3iK*^6k6_d zLD@)o&eR(rBzAs()44uNF32j8Y}PoU((;~^nS?OIbDu{Er5MMks!3Lbo^ezTi{bwPFSWnmp~XJ=>5#Q_Mn4j zhgXZs9o-{w6!khdeTLb7#)s$r;~wi%y9>2Q;Erd3$6zg-eU~ksqmuomW31DuFwH-| ze75ENF0oF4n9ItmlyE7%A&$pS8i8!U5Bns$CYd~djL+iFsX7dF2LG3(^Of28%=w~>yNr}RJKwU8v;K3e`t{MlQT*NsPZlQq2lcnh z0gnw2yz3HRZoq*rVF2Zq5O$Go2 zh5!JsU%>4t0N}<50Gt^D0Nj}X0ER=d!H75jfQ&08Dx~W9=OV|)_4i@cn85WlGfS3? zeJJUXu$^RKwlio!&LM7bA0Kn3Tev+PD0Bo~-TZx6iF(FaNpA zH(rO()Z~PF#g|M(JJJ-pvC*Hnt{Dg@NJudwjBsFbi=2)-fO$()Ih@a*KQ-an)@PiSP=z)Y|!=?CqIy*Z% zIXxXXbcW|zVTAY9FHlxdx!3Fe<|!j1z4G$$d1T3IjaUH@U97088d^;0tJy0Pdmto| z)!*L_2n!24R^4q@3Mz$=B9w>dfhGsVd*vrYh23@Unp+3wN998i-r<~;Opg^RuDIGO zh`HCJEfa;l)xd+`73|Dw4-8IF!BpLYOm(XN9Elh}hWDB^Fv~_Fy~Cv$HVA}-CK6=E zYA0t19!}K249a4kll9H;@%P_{C4D5wf?RElGs4tp-@M{TqU;w3HvlK*5+OmLlh8ha ze=I(?_{cNUX?NA|*%yn8t{!RGYPCH?g!=krp9z`mold&QN<~XuT2usLcH(g;u>eP# zI1aMN_$9R1toM2Z<7E@L&q>&!po9tm!$}M74nXS=t`gjF@<~)Kw)(R+OvcYvdS>l% z2Vc|q2QD;OypR&MvyP-}c>jsexl+h@PTG(n8A1|C_=R@Jd%X1$IkP&|%OHM#Iwd}J zL0&gLHGaSO;qg&Tj5rCI&&JR&FyCQ$yes*g&Y(Z0AV9x zs;a7lWd}XaTO=q^NKvAh+-}rnW@a6g(15N)R`YiG0SzSIFOoRWa4TN&P|9Vuj~q^? zG<0EB%j_p&N3qr~kJ1pkbytWkN^0ujwziDoV&ZOo26NggD6k;F<>jSj`pCLNUtHa} ztYs#nt25avMDi$Yj*nsKbOJSEqB2U%$mgb0Zkm-49PTIji#fePVKp^<#<#ZhI5REL z5+zu$Fx3@x6+NA}xnmNPI72OT;K_l5f}pBlQLp%9O=o-*p>G{~;VkYmi2{!c0{FK@ z$tQldA-~%UA`&Js0Nj&{G-<=Dheh&?Fo%tqSmi|2mYDj>`rn7$qUugfSmpMovsfOU zpGib@UEqfLlc-c0kZmQWkkLsrxso~Z2TWQKF)=a6Q3d@cW>fn8sZ1e~4Pc2H>~iuI z5%DviNP*2#dP;f>92Tq%4Iwb*+&xQ3^&>^T7NnU4h~j{V$3yAr*^){qzlaD z8nLG|p%ZKc4h0(IVjLj1$Vj(%O?A_)tE6!z&@NgGAct;Wq+F9P@b#Ko9vJ+x-+~KNG*wElefv{4+guc!6hGJD9^*!_;ys@z{ z&%dvaldo$k?MU2YzB`M*o>!1E*iArlY(NBx%lE}`mdm~kM{m&pMOb!{kXp#2lA`%= zhGW~erlqW9juEb`x2V^BxmHUfT_e>XIGLOlrn+3dv+yq10BkX3ZdQF?$Dt>!OeSMt zb(ItLcXm4Z=gXJ?zmEgOC%2WxUYpsrCS<=&eGj{8bcgKZG^(03l|ljk$Jt!K=e-QO z{l++5+eUJ6QB_scn#Ro0l7>MKFD9IQ3iD6$4u1bW;uZZl-g`Je#a!;}J6)c+1vGvc zuAb2F`6Fn9#a#ZzBYy;1RhuXJLY@CfQ3QXN|Ht2L)C^P=6%`RPGqRSJmRr`Ofd=CKunfV|~p^}$_6VQ5%h2;SF&lxH+l z)XGy$5YJuLS% z8hxIx?x_>4Ll^___kqJv)m#iZ-Cpauz08)pLRi)2;*G2368Y_H4OaP9}>5 zLRncEr#vnt8V1JV{QLm0_?uVXSR9V{AN3BGnF0=<;eW&bb|sq^o@yTkLwqX-;Q>*v z)l6C#_f@iEPxw=)2&w_n6sSOG1&CI@7DN$sG~Igl0=jVsTx%ag0P|?|$&15nP99CCHXd{MxJy%cz2A<(fP*^SkfzoI28c3)VCGOZ!jgXUzX{?raAC*w z@|&8J_VoDKFF~j=axx>HL#*jz)2kkd z7Cy1UkqU3!y7U@QE5JS&d z!4o87mgI1djGiptu~7xUNr zopX9S`MIKg_6ct(&znBmcNPVH?q(hy92{GoBr`KJq9yaF_rUpO-}ao_ir!c{oz5@T zxO(4L8bohcUW{^8Z4eUU3!PTmwVzjY_Q1p5diR`k#+zxC@G~${gOI`)bbB&QWiTl0 zx~i!;VYCxK`6tJZQ7B}+UoO>XTIQ%-kFZ<0fp~#AEw;bx;S8fw0Wf2Mb zydCfr^Id@Lwm_ulSCgHcU21wd3PJ?P$@w`6CfovRM-*Glim%aCcgGBtzFwf2W=g0gkzXTlpf+}`8($mxRA`l6#z$@$P8Ty|7*jVWLJhprtJo-3bqb`6q-pd}# zNhIKp?B4>XG>3US&YKUz~{hOPTN?#fID{I41U8p7pDbGH81FxiL~a*PLbjwY%@WxA0v$tmM>aE z?>fF9EHX#ftdxZ&4}+5+3x3wI80lA+8)ut~Q%=KV(cug+=BF$BqjP2{-4WM7o|x_~ zzI3N3PtIY7-!|L9Bf6y^o3SPdPQ*Bwc>)&`+f59o2}QEZ4&Udj&$AWaBEy8^H^)AL z3IR_VX}8KG01p`$lW#4^-Q%3K$u2kJY!m%5QdGqjO&LeLu<(opegm;bqT#`&Y{^;a zc6`A3bA2*61&=_wS>9Hc$F*NtS{fp-N1wB{vFkD&jm3f(o`VGu^|;(X!!i)~%f|ptI9oTjya5M7tJP>)I_pv^_zpWE8ziXG zQUFUd8KjBw4(z1r&MT{<%dO`3#}dB&mSq_HeT>awVa|WPqhYx3z!8YpzLro^bJZJb zwOcs<5{7Oow-!K)6ee8^I#r&;DNU`oFIqcvX0rR!TqI{W5DekPQeSOdhGfi>oMi=$ zFV{NScub+ACnhE)o5zh7cq7QkR?%9XJ~%k28f6;^8j-h3V&%aShP1Ax_G7w&u$WRB z5&_dqN_MfCxnQMDj*#5E>d$6inq2{ZLBiRYwY81SttYSTMthQ24EnrRCkt62u

W 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 Date: Sat, 7 Jul 2018 10:27:53 -0700 Subject: [PATCH 08/10] [README] Update to point to release tab for builds --- README.rst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.rst b/README.rst index 0d16487..a9bd46a 100644 --- a/README.rst +++ b/README.rst @@ -3,7 +3,7 @@ Brightness Menulet Allows you to control monitor brigthness via menu in status bar. -Download app build: `BrightnessMenulet.zip`_. (Updated March 6th 2017) +Download latest app build in the releases tab. .. _BrightnessMenulet.zip: https://raw.github.com/kalvin126/BrightnessMenulet/master/Resources/Brightness_Menulet.zip From e4bb8820518df988c06eb81ae1c7483d8cc8bdff Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sun, 23 Dec 2018 16:34:58 -0800 Subject: [PATCH 09/10] [Project] Update to Xcode 10.1, clean up build settings --- BrightnessMenulet.xcodeproj/project.pbxproj | 24 ++++++--------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/BrightnessMenulet.xcodeproj/project.pbxproj b/BrightnessMenulet.xcodeproj/project.pbxproj index 91f58f6..3057115 100755 --- a/BrightnessMenulet.xcodeproj/project.pbxproj +++ b/BrightnessMenulet.xcodeproj/project.pbxproj @@ -218,7 +218,7 @@ 29B97313FDCFA39411CA2CEA /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1000; + LastUpgradeCheck = 1010; TargetAttributes = { 8D1107260486CEB800E47090 = { DevelopmentTeam = N6A2S4TCDQ; @@ -278,48 +278,35 @@ C01FCF4B08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ENABLE_OBJC_ARC = YES; - CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; - GCC_ENABLE_FIX_AND_CONTINUE = YES; GCC_MODEL_TUNING = G5; - GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; INFOPLIST_FILE = "$(SRCROOT)/Supporting Files/Info.plist"; INSTALL_PATH = "$(HOME)/Applications"; - MACOSX_DEPLOYMENT_TARGET = 10.8; PRODUCT_BUNDLE_IDENTIFIER = com.redpanda.BrightnessMenulet; PRODUCT_NAME = "Brightness Menulet"; PROVISIONING_PROFILE = ""; - SDKROOT = macosx; }; name = Debug; }; C01FCF4C08A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ENABLE_OBJC_ARC = YES; - CODE_SIGN_IDENTITY = "Mac Developer"; COMBINE_HIDPI_IMAGES = YES; GCC_MODEL_TUNING = G5; - GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "Supporting Files/BrightnessMenulet_Prefix.pch"; INFOPLIST_FILE = "$(SRCROOT)/Supporting Files/Info.plist"; INSTALL_PATH = "$(HOME)/Applications"; - MACOSX_DEPLOYMENT_TARGET = 10.8; - ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = com.redpanda.BrightnessMenulet; PRODUCT_NAME = "Brightness Menulet"; PROVISIONING_PROFILE = ""; - SDKROOT = macosx; }; name = Release; }; C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; @@ -337,6 +324,7 @@ CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Mac Developer"; COPY_PHASE_STRIP = NO; DEBUG_INFORMATION_FORMAT = dwarf; ENABLE_STRICT_OBJC_MSGSEND = YES; @@ -344,6 +332,7 @@ GCC_C_LANGUAGE_STANDARD = c99; GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; + GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREPROCESSOR_DEFINITIONS = "DEBUG=1"; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; @@ -353,7 +342,6 @@ GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.8; ONLY_ACTIVE_ARCH = YES; - PREBINDING = NO; PRODUCT_NAME = "Brightness Menulet"; SDKROOT = macosx; }; @@ -362,6 +350,7 @@ C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; CLANG_WARN_COMMA = YES; @@ -379,10 +368,12 @@ CLANG_WARN_SUSPICIOUS_MOVE = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + CODE_SIGN_IDENTITY = "Mac Developer"; DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = c99; GCC_NO_COMMON_BLOCKS = YES; + GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNDECLARED_SELECTOR = YES; @@ -390,7 +381,6 @@ GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; MACOSX_DEPLOYMENT_TARGET = 10.8; - PREBINDING = NO; PRODUCT_NAME = "Brightness Menulet"; SDKROOT = macosx; }; From 5ebf0a3b9ea5f57e129e38200fac7775406524f4 Mon Sep 17 00:00:00 2001 From: Kalvin Loc Date: Sun, 23 Dec 2018 16:45:13 -0800 Subject: [PATCH 10/10] fix headermap warning --- BrightnessMenulet.xcodeproj/project.pbxproj | 2 ++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 ++++++++ 2 files changed, 10 insertions(+) create mode 100644 BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/BrightnessMenulet.xcodeproj/project.pbxproj b/BrightnessMenulet.xcodeproj/project.pbxproj index 3057115..7f455ed 100755 --- a/BrightnessMenulet.xcodeproj/project.pbxproj +++ b/BrightnessMenulet.xcodeproj/project.pbxproj @@ -306,6 +306,7 @@ C01FCF4F08A954540054247B /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; @@ -350,6 +351,7 @@ C01FCF5008A954540054247B /* Release */ = { isa = XCBuildConfiguration; buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ENABLE_OBJC_ARC = YES; CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; CLANG_WARN_BOOL_CONVERSION = YES; diff --git a/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000..18d9810 --- /dev/null +++ b/BrightnessMenulet.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + +