From 03892c54262d279f2e3e8efc4d8ca571b07b63c5 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 02:20:15 -0400 Subject: [PATCH 01/38] Cover direction-aware resizing --- FreeRulerTests/RulerCoreTests.swift | 102 ++++++++++++++++++++++++++++ 1 file changed, 102 insertions(+) diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index bb23050..21e5e4f 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -662,6 +662,108 @@ final class RulerCoreTests: XCTestCase { XCTAssertEqual(frame.minY, initialFrame.minY) } + func testHorizontalResizeHandleFrameMathClampsLeftEdgeResizesAroundRightEdge() { + let initialFrame = NSRect(x: 10, y: 20, width: 300, height: Ruler.thickness) + + let minFrame = resizedRulerFrame( + orientation: .horizontal, + zeroCorner: .topRight, + initialFrame: initialFrame, + delta: NSSize(width: 250, height: 0), + minSize: NSSize(width: 200, height: Ruler.thickness), + maxSize: NSSize(width: 400, height: Ruler.thickness) + ) + let maxFrame = resizedRulerFrame( + orientation: .horizontal, + zeroCorner: .topRight, + initialFrame: initialFrame, + delta: NSSize(width: -250, height: 0), + minSize: NSSize(width: 200, height: Ruler.thickness), + maxSize: NSSize(width: 400, height: Ruler.thickness) + ) + + XCTAssertEqual(minFrame, NSRect(x: 110, y: 20, width: 200, height: Ruler.thickness)) + XCTAssertEqual(maxFrame, NSRect(x: -90, y: 20, width: 400, height: Ruler.thickness)) + XCTAssertEqual(minFrame.maxX, initialFrame.maxX) + XCTAssertEqual(maxFrame.maxX, initialFrame.maxX) + } + + func testVerticalResizeHandleFrameMathClampsTopEdgeResizesAroundBottomEdge() { + let initialFrame = NSRect(x: 10, y: 20, width: Ruler.thickness, height: 300) + + let minFrame = resizedRulerFrame( + orientation: .vertical, + zeroCorner: .bottomLeft, + initialFrame: initialFrame, + delta: NSSize(width: 0, height: -250), + minSize: NSSize(width: Ruler.thickness, height: 200), + maxSize: NSSize(width: Ruler.thickness, height: 400) + ) + let maxFrame = resizedRulerFrame( + orientation: .vertical, + zeroCorner: .bottomLeft, + initialFrame: initialFrame, + delta: NSSize(width: 0, height: 250), + minSize: NSSize(width: Ruler.thickness, height: 200), + maxSize: NSSize(width: Ruler.thickness, height: 400) + ) + + XCTAssertEqual(minFrame, NSRect(x: 10, y: 20, width: Ruler.thickness, height: 200)) + XCTAssertEqual(maxFrame, NSRect(x: 10, y: 20, width: Ruler.thickness, height: 400)) + XCTAssertEqual(minFrame.minY, initialFrame.minY) + XCTAssertEqual(maxFrame.minY, initialFrame.minY) + } + + func testResizeHandlePositionsFollowZeroCorner() { + withRestoredZeroCornerPreference { + let cases: [ + ( + zeroCorner: ZeroCorner, + expectedHorizontalSide: RulerSide, + expectedVerticalSide: RulerSide + ) + ] = [ + (.topLeft, .right, .bottom), + (.topRight, .left, .bottom), + (.bottomLeft, .right, .top), + (.bottomRight, .left, .top), + ] + + for testCase in cases { + prefs.zeroCorner = testCase.zeroCorner + let horizontalRule = HorizontalRule( + frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness) + ) + let verticalRule = VerticalRule( + frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300) + ) + + guard let horizontalFrame = horizontalRule.resizeHandleExclusionFrame, + let verticalFrame = verticalRule.resizeHandleExclusionFrame else { + return XCTFail("Expected both rulers to install resize handles") + } + + switch testCase.expectedHorizontalSide { + case .left: + XCTAssertLessThan(horizontalFrame.midX, horizontalRule.bounds.midX, "\(testCase.zeroCorner)") + case .right: + XCTAssertGreaterThan(horizontalFrame.midX, horizontalRule.bounds.midX, "\(testCase.zeroCorner)") + case .top, .bottom: + XCTFail("Horizontal resize handle must be placed on a horizontal side") + } + + switch testCase.expectedVerticalSide { + case .top: + XCTAssertGreaterThan(verticalFrame.midY, verticalRule.bounds.midY, "\(testCase.zeroCorner)") + case .bottom: + XCTAssertLessThan(verticalFrame.midY, verticalRule.bounds.midY, "\(testCase.zeroCorner)") + case .left, .right: + XCTFail("Vertical resize handle must be placed on a vertical side") + } + } + } + } + func testResizeHandleCursorsUseCustomCenteredImages() { let horizontalCursor = windowResizeCursor(for: .horizontal) let verticalCursor = windowResizeCursor(for: .vertical) From 0b930041f2f1e780444be450abed85fdb06a442c Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 02:22:33 -0400 Subject: [PATCH 02/38] Handle grouped zero-corner flips --- Free Ruler/AppDelegate.swift | 62 ++++++++++++++++ Free Ruler/Ruler.swift | 23 ++++++ FreeRulerTests/RulerCoreTests.swift | 110 ++++++++++++++++++++++++++++ 3 files changed, 195 insertions(+) diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index c4a70e4..971b148 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -218,6 +218,9 @@ class AppDelegate: NSObject, NSApplicationDelegate { prefs.observe(\Prefs.rulerColor, options: .new) { prefs, changed in self.redrawRulers() }, + prefs.observe(\Prefs.zeroCorner, options: .new) { prefs, changed in + self.redrawRulers() + }, ] } @@ -507,6 +510,65 @@ class AppDelegate: NSObject, NSApplicationDelegate { toggleRuler(orientation: .vertical) } + func flipRulers(along orientation: Orientation) { + createRulersIfNeeded() + + let oldGeometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) + let flippedCorner = prefs.zeroCorner.flipped(along: orientation) + let flippedRuler = existingRulerController(orientation: orientation) + let otherOrientation: Orientation = orientation == .horizontal ? .vertical : .horizontal + let otherRuler = existingRulerController(orientation: otherOrientation) + let zeroPointOffset = zeroPointOffset( + from: flippedRuler?.rulerWindow, + to: otherRuler?.rulerWindow, + geometry: oldGeometry + ) + + prefs.zeroCorner = flippedCorner + + guard prefs.groupRulers, + let flippedWindow = flippedRuler?.rulerWindow, + let otherWindow = otherRuler?.rulerWindow, + let zeroPointOffset = zeroPointOffset else { return } + + let newGeometry = ZeroCornerGeometry(zeroCorner: flippedCorner) + let flippedZeroPoint = newGeometry.zeroPoint(in: flippedWindow.frame, for: orientation) + let targetOtherZeroPoint = NSPoint( + x: flippedZeroPoint.x + zeroPointOffset.width, + y: flippedZeroPoint.y + zeroPointOffset.height + ) + let otherFrame = newGeometry.frame( + for: otherOrientation, + zeroPoint: targetOtherZeroPoint, + size: otherWindow.frame.size + ) + + otherWindow.setFrame(otherFrame, display: true) + } + + private func zeroPointOffset( + from sourceWindow: RulerWindow?, + to targetWindow: RulerWindow?, + geometry: ZeroCornerGeometry + ) -> NSSize? { + guard let sourceWindow = sourceWindow, + let targetWindow = targetWindow else { return nil } + + let sourceZeroPoint = geometry.zeroPoint( + in: sourceWindow.frame, + for: sourceWindow.ruler.orientation + ) + let targetZeroPoint = geometry.zeroPoint( + in: targetWindow.frame, + for: targetWindow.ruler.orientation + ) + + return NSSize( + width: targetZeroPoint.x - sourceZeroPoint.x, + height: targetZeroPoint.y - sourceZeroPoint.y + ) + } + func performRulerHotkey(keyCode: Int, sender: Any) -> Bool { switch keyCode { case kVK_ANSI_H: diff --git a/Free Ruler/Ruler.swift b/Free Ruler/Ruler.swift index f3b4c10..93a7893 100644 --- a/Free Ruler/Ruler.swift +++ b/Free Ruler/Ruler.swift @@ -12,6 +12,29 @@ enum Orientation: String { case bottomRight = 3 } +extension ZeroCorner { + func flipped(along orientation: Orientation) -> ZeroCorner { + switch (self, orientation) { + case (.topLeft, .horizontal): + return .topRight + case (.topRight, .horizontal): + return .topLeft + case (.bottomLeft, .horizontal): + return .bottomRight + case (.bottomRight, .horizontal): + return .bottomLeft + case (.topLeft, .vertical): + return .bottomLeft + case (.topRight, .vertical): + return .bottomRight + case (.bottomLeft, .vertical): + return .topLeft + case (.bottomRight, .vertical): + return .topRight + } + } +} + enum RulerGrowthDirection: Equatable { case positive case negative diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index 21e5e4f..cd3a200 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -114,6 +114,18 @@ final class RulerCoreTests: XCTestCase { } } + func testZeroCornerFlipsAlongSelectedAxis() { + XCTAssertEqual(ZeroCorner.topLeft.flipped(along: .horizontal), .topRight) + XCTAssertEqual(ZeroCorner.topRight.flipped(along: .horizontal), .topLeft) + XCTAssertEqual(ZeroCorner.bottomLeft.flipped(along: .horizontal), .bottomRight) + XCTAssertEqual(ZeroCorner.bottomRight.flipped(along: .horizontal), .bottomLeft) + + XCTAssertEqual(ZeroCorner.topLeft.flipped(along: .vertical), .bottomLeft) + XCTAssertEqual(ZeroCorner.topRight.flipped(along: .vertical), .bottomRight) + XCTAssertEqual(ZeroCorner.bottomLeft.flipped(along: .vertical), .topLeft) + XCTAssertEqual(ZeroCorner.bottomRight.flipped(along: .vertical), .topRight) + } + func testZeroCornerGeometryPlacesFramesAroundSharedZeroPoint() { let zeroPoint = NSPoint(x: 200, y: 300) let horizontalSize = NSSize(width: 120, height: Ruler.thickness) @@ -1079,6 +1091,104 @@ final class RulerCoreTests: XCTestCase { XCTAssertFalse(groupedChildController.rulerWindow.rule.showMouseTick) } + func testUngroupedHorizontalFlipDoesNotMoveRulerWindows() { + withRestoredZeroCornerPreference { + let previousGroupRulers = prefs.groupRulers + defer { prefs.groupRulers = previousGroupRulers } + + prefs.zeroCorner = .topLeft + prefs.groupRulers = false + let appDelegate = AppDelegate() + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 51, y: 150, width: Ruler.thickness, height: 160)) + ) + appDelegate.rulers = [verticalController, horizontalController] + + appDelegate.flipRulers(along: .horizontal) + + XCTAssertEqual(prefs.zeroCorner, .topRight) + XCTAssertEqual(horizontalController.rulerWindow.frame, NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + XCTAssertEqual(verticalController.rulerWindow.frame, NSRect(x: 51, y: 150, width: Ruler.thickness, height: 160)) + } + } + + func testGroupedHorizontalFlipMovesVerticalRulerToPreserveZeroPointOffset() { + withRestoredZeroCornerPreference { + let previousGroupRulers = prefs.groupRulers + defer { prefs.groupRulers = previousGroupRulers } + + prefs.zeroCorner = .topLeft + prefs.groupRulers = true + let appDelegate = AppDelegate() + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 51, y: 150, width: Ruler.thickness, height: 160)) + ) + appDelegate.rulers = [verticalController, horizontalController] + + appDelegate.flipRulers(along: .horizontal) + + XCTAssertEqual(prefs.zeroCorner, .topRight) + XCTAssertEqual(horizontalController.rulerWindow.frame, NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + XCTAssertEqual(verticalController.rulerWindow.frame, NSRect(x: 210, y: 150, width: Ruler.thickness, height: 160)) + } + } + + func testGroupedVerticalFlipMovesHorizontalRulerToPreserveZeroPointOffset() { + withRestoredZeroCornerPreference { + let previousGroupRulers = prefs.groupRulers + defer { prefs.groupRulers = previousGroupRulers } + + prefs.zeroCorner = .topLeft + prefs.groupRulers = true + let appDelegate = AppDelegate() + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 61, y: 140, width: Ruler.thickness, height: 160)) + ) + appDelegate.rulers = [verticalController, horizontalController] + + appDelegate.flipRulers(along: .vertical) + + XCTAssertEqual(prefs.zeroCorner, .bottomLeft) + XCTAssertEqual(verticalController.rulerWindow.frame, NSRect(x: 61, y: 140, width: Ruler.thickness, height: 160)) + XCTAssertEqual(horizontalController.rulerWindow.frame, NSRect(x: 100, y: 101, width: 120, height: Ruler.thickness)) + } + } + + func testGroupedFlipDoesNotShowHiddenRulerWindows() { + withRestoredZeroCornerPreference { + let previousGroupRulers = prefs.groupRulers + defer { prefs.groupRulers = previousGroupRulers } + + prefs.zeroCorner = .topLeft + prefs.groupRulers = true + let appDelegate = AppDelegate() + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 61, y: 140, width: Ruler.thickness, height: 160)) + ) + appDelegate.rulers = [verticalController, horizontalController] + + XCTAssertFalse(horizontalController.rulerWindow.isVisible) + XCTAssertFalse(verticalController.rulerWindow.isVisible) + + appDelegate.flipRulers(along: .horizontal) + + XCTAssertFalse(horizontalController.rulerWindow.isVisible) + XCTAssertFalse(verticalController.rulerWindow.isVisible) + } + } + private func mouseEvent( type: NSEvent.EventType, location: NSPoint, From c7e3f6c0ff9ed591334f2a3d058278362be11f17 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 03:05:41 -0400 Subject: [PATCH 03/38] Wire and guard grouped ruler flips --- Free Ruler/AppDelegate.swift | 17 +++++++++++++++++ Free Ruler/Base.lproj/MainMenu.xib | 10 ++++++++-- FreeRulerTests/RulerCoreTests.swift | 14 ++++++++++++-- 3 files changed, 37 insertions(+), 4 deletions(-) diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index 971b148..e945e6e 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -510,6 +510,14 @@ class AppDelegate: NSObject, NSApplicationDelegate { toggleRuler(orientation: .vertical) } + @IBAction func flipHorizontalRuler(_ sender: Any) { + flipRulers(along: .horizontal) + } + + @IBAction func flipVerticalRuler(_ sender: Any) { + flipRulers(along: .vertical) + } + func flipRulers(along orientation: Orientation) { createRulersIfNeeded() @@ -529,6 +537,7 @@ class AppDelegate: NSObject, NSApplicationDelegate { guard prefs.groupRulers, let flippedWindow = flippedRuler?.rulerWindow, let otherWindow = otherRuler?.rulerWindow, + isRulerWindowShown(otherWindow), let zeroPointOffset = zeroPointOffset else { return } let newGeometry = ZeroCornerGeometry(zeroCorner: flippedCorner) @@ -543,7 +552,15 @@ class AppDelegate: NSObject, NSApplicationDelegate { size: otherWindow.frame.size ) + detachRulerWindows() otherWindow.setFrame(otherFrame, display: true) + updateRulerGrouping() + } + + func isRulerWindowShown(_ window: RulerWindow) -> Bool { + return window.isVisible || window.parent != nil || rulers.contains { + $0.rulerWindow.childWindows?.contains(window) == true + } } private func zeroPointOffset( diff --git a/Free Ruler/Base.lproj/MainMenu.xib b/Free Ruler/Base.lproj/MainMenu.xib index e4a1c3f..0078575 100644 --- a/Free Ruler/Base.lproj/MainMenu.xib +++ b/Free Ruler/Base.lproj/MainMenu.xib @@ -191,11 +191,17 @@ - + + + + - + + + + diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index cd3a200..aefb830 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -1122,7 +1122,7 @@ final class RulerCoreTests: XCTestCase { prefs.zeroCorner = .topLeft prefs.groupRulers = true - let appDelegate = AppDelegate() + let appDelegate = TestableFlipAppDelegate() let horizontalController = RulerController( ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) ) @@ -1146,7 +1146,7 @@ final class RulerCoreTests: XCTestCase { prefs.zeroCorner = .topLeft prefs.groupRulers = true - let appDelegate = AppDelegate() + let appDelegate = TestableFlipAppDelegate() let horizontalController = RulerController( ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) ) @@ -1178,6 +1178,8 @@ final class RulerCoreTests: XCTestCase { ruler: Ruler(.vertical, frame: NSRect(x: 61, y: 140, width: Ruler.thickness, height: 160)) ) appDelegate.rulers = [verticalController, horizontalController] + let horizontalFrame = horizontalController.rulerWindow.frame + let verticalFrame = verticalController.rulerWindow.frame XCTAssertFalse(horizontalController.rulerWindow.isVisible) XCTAssertFalse(verticalController.rulerWindow.isVisible) @@ -1186,6 +1188,8 @@ final class RulerCoreTests: XCTestCase { XCTAssertFalse(horizontalController.rulerWindow.isVisible) XCTAssertFalse(verticalController.rulerWindow.isVisible) + XCTAssertEqual(horizontalController.rulerWindow.frame, horizontalFrame) + XCTAssertEqual(verticalController.rulerWindow.frame, verticalFrame) } } @@ -1282,6 +1286,12 @@ private final class ChildAttachingRulerWindow: RulerWindow { } } +private final class TestableFlipAppDelegate: AppDelegate { + override func isRulerWindowShown(_ window: RulerWindow) -> Bool { + return true + } +} + private func assertColor( _ actualColor: NSColor, equals expectedColor: NSColor, From db2432331d18f7d8dc2588c37645e452f6011c54 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 02:25:28 -0400 Subject: [PATCH 04/38] Add flip ruler UI --- Free Ruler/AppDelegate.swift | 77 +++++- Free Ruler/Base.lproj/MainMenu.xib | 4 +- .../Resources/English.lproj/FreeRuler.html | 2 + Free Ruler/Localizable.xcstrings | 252 ++++++++++++++++++ Free Ruler/RulerController.swift | 9 +- FreeRulerTests/RulerCoreTests.swift | 49 ++++ 6 files changed, 387 insertions(+), 6 deletions(-) diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index e945e6e..3a83185 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -34,6 +34,12 @@ private enum HotkeyBezelLocalizationKey: String { case rulersUngrouped = "HotkeyBezel.RulersUngrouped" case shadowEnabled = "HotkeyBezel.ShadowEnabled" case shadowDisabled = "HotkeyBezel.ShadowDisabled" + case horizontalOriginFormat = "HotkeyBezel.HorizontalOriginFormat" + case verticalOriginFormat = "HotkeyBezel.VerticalOriginFormat" + case originLeft = "HotkeyBezel.OriginLeft" + case originRight = "HotkeyBezel.OriginRight" + case originTop = "HotkeyBezel.OriginTop" + case originBottom = "HotkeyBezel.OriginBottom" case unitsFormat = "HotkeyBezel.UnitsFormat" case pixelsUnit = "Unit.Pixels.Abbreviation" case millimetersUnit = "Unit.Millimeters.Abbreviation" @@ -57,6 +63,18 @@ private enum HotkeyBezelLocalizationKey: String { return "Hotkey status bezel text indicating ruler shadow is enabled" case .shadowDisabled: return "Hotkey status bezel text indicating ruler shadow is disabled" + case .horizontalOriginFormat: + return "Hotkey status bezel format for the horizontal ruler origin side" + case .verticalOriginFormat: + return "Hotkey status bezel format for the vertical ruler origin side" + case .originLeft: + return "Hotkey status bezel value for a ruler origin on the left" + case .originRight: + return "Hotkey status bezel value for a ruler origin on the right" + case .originTop: + return "Hotkey status bezel value for a ruler origin at the top" + case .originBottom: + return "Hotkey status bezel value for a ruler origin at the bottom" case .unitsFormat: return "Hotkey status bezel format for the selected measurement unit" case .pixelsUnit: @@ -512,10 +530,12 @@ class AppDelegate: NSObject, NSApplicationDelegate { @IBAction func flipHorizontalRuler(_ sender: Any) { flipRulers(along: .horizontal) + showHorizontalOriginHotkeyBezel(on: bezelScreen(for: sender)) } @IBAction func flipVerticalRuler(_ sender: Any) { flipRulers(along: .vertical) + showVerticalOriginHotkeyBezel(on: bezelScreen(for: sender)) } func flipRulers(along orientation: Orientation) { @@ -586,7 +606,28 @@ class AppDelegate: NSObject, NSApplicationDelegate { ) } - func performRulerHotkey(keyCode: Int, sender: Any) -> Bool { + func performRulerHotkey( + keyCode: Int, + modifierFlags: NSEvent.ModifierFlags, + sender: Any + ) -> Bool { + let keyboardModifiers = modifierFlags.intersection(.deviceIndependentFlagsMask) + + if keyboardModifiers == .shift { + switch keyCode { + case kVK_ANSI_H: + flipHorizontalRuler(sender) + case kVK_ANSI_V: + flipVerticalRuler(sender) + default: + return false + } + + return true + } + + guard keyboardModifiers.isEmpty else { return false } + switch keyCode { case kVK_ANSI_H: toggleHorizontalRuler(sender) @@ -621,6 +662,40 @@ class AppDelegate: NSObject, NSApplicationDelegate { showHotkeyBezel(prefs.groupRulers ? .rulersGrouped : .rulersUngrouped, on: screen) } + private func showHorizontalOriginHotkeyBezel(on screen: NSScreen?) { + switch prefs.zeroCorner { + case .topLeft, .bottomLeft: + showHotkeyBezel( + format: .horizontalOriginFormat, + HotkeyBezelLocalizationKey.originLeft.localizedString, + on: screen + ) + case .topRight, .bottomRight: + showHotkeyBezel( + format: .horizontalOriginFormat, + HotkeyBezelLocalizationKey.originRight.localizedString, + on: screen + ) + } + } + + private func showVerticalOriginHotkeyBezel(on screen: NSScreen?) { + switch prefs.zeroCorner { + case .topLeft, .topRight: + showHotkeyBezel( + format: .verticalOriginFormat, + HotkeyBezelLocalizationKey.originTop.localizedString, + on: screen + ) + case .bottomLeft, .bottomRight: + showHotkeyBezel( + format: .verticalOriginFormat, + HotkeyBezelLocalizationKey.originBottom.localizedString, + on: screen + ) + } + } + private func bezelScreen(for sender: Any) -> NSScreen? { if let rulerController = sender as? RulerController { return rulerController.rulerWindow.screen diff --git a/Free Ruler/Base.lproj/MainMenu.xib b/Free Ruler/Base.lproj/MainMenu.xib index 0078575..e224d9a 100644 --- a/Free Ruler/Base.lproj/MainMenu.xib +++ b/Free Ruler/Base.lproj/MainMenu.xib @@ -194,13 +194,13 @@ - + - + diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html index 1b81ba8..f3fe3ee 100644 --- a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html +++ b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html @@ -28,6 +28,8 @@

SShow/hide ruler shadows OOrient rulers at mouse location UCycle units: pixels, millimeters, and inches + ⇧HFlip the horizontal ruler origin + ⇧VFlip the vertical ruler origin ⌘RReset ruler positions to default ⌘,Open Preferences diff --git a/Free Ruler/Localizable.xcstrings b/Free Ruler/Localizable.xcstrings index 83af3b7..3921413 100644 --- a/Free Ruler/Localizable.xcstrings +++ b/Free Ruler/Localizable.xcstrings @@ -169,6 +169,216 @@ } } }, + "HotkeyBezel.HorizontalOriginFormat" : { + "comment" : "Hotkey status bezel format for the horizontal ruler origin side", + "extractionState" : "manual", + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Horizontaler Ursprung: %@" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Horizontal origin: %@" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Origen horizontal: %@" + } + }, + "fi" : { + "stringUnit" : { + "state" : "translated", + "value" : "Vaaka-alkupiste: %@" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "水平原点: %@" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "水平原点:%@" + } + } + } + }, + "HotkeyBezel.OriginBottom" : { + "comment" : "Hotkey status bezel value for a ruler origin at the bottom", + "extractionState" : "manual", + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "unten" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Bottom" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "abajo" + } + }, + "fi" : { + "stringUnit" : { + "state" : "translated", + "value" : "alas" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "下" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "底部" + } + } + } + }, + "HotkeyBezel.OriginLeft" : { + "comment" : "Hotkey status bezel value for a ruler origin on the left", + "extractionState" : "manual", + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "links" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Left" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "izquierda" + } + }, + "fi" : { + "stringUnit" : { + "state" : "translated", + "value" : "vasen" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "左" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "左侧" + } + } + } + }, + "HotkeyBezel.OriginRight" : { + "comment" : "Hotkey status bezel value for a ruler origin on the right", + "extractionState" : "manual", + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "rechts" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Right" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "derecha" + } + }, + "fi" : { + "stringUnit" : { + "state" : "translated", + "value" : "oikea" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "右" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "右侧" + } + } + } + }, + "HotkeyBezel.OriginTop" : { + "comment" : "Hotkey status bezel value for a ruler origin at the top", + "extractionState" : "manual", + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "oben" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Top" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "arriba" + } + }, + "fi" : { + "stringUnit" : { + "state" : "translated", + "value" : "ylös" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "上" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "顶部" + } + } + } + }, "HotkeyBezel.RulersFloated" : { "comment" : "Hotkey status bezel text indicating rulers now float above other windows", "extractionState" : "manual", @@ -463,6 +673,48 @@ } } }, + "HotkeyBezel.VerticalOriginFormat" : { + "comment" : "Hotkey status bezel format for the vertical ruler origin side", + "extractionState" : "manual", + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Vertikaler Ursprung: %@" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Vertical origin: %@" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Origen vertical: %@" + } + }, + "fi" : { + "stringUnit" : { + "state" : "translated", + "value" : "Pystyalkupiste: %@" + } + }, + "ja" : { + "stringUnit" : { + "state" : "translated", + "value" : "垂直原点: %@" + } + }, + "zh-Hans" : { + "stringUnit" : { + "state" : "translated", + "value" : "垂直原点:%@" + } + } + } + }, "Reset ruler color" : { "comment" : "Tooltip and accessibility label for the button that restores the default ruler color", "extractionState" : "manual", diff --git a/Free Ruler/RulerController.swift b/Free Ruler/RulerController.swift index e5eaf39..be4328c 100644 --- a/Free Ruler/RulerController.swift +++ b/Free Ruler/RulerController.swift @@ -286,10 +286,13 @@ extension RulerController { let shift = event.modifierFlags.contains(.shift) let keyboardModifiers = event.modifierFlags.intersection(.deviceIndependentFlagsMask) - if keyboardModifiers.isEmpty, - rulerWindow.isKeyWindow, + if rulerWindow.isKeyWindow, let appDelegate = NSApp.delegate as? AppDelegate, - appDelegate.performRulerHotkey(keyCode: Int(event.keyCode), sender: self) { + appDelegate.performRulerHotkey( + keyCode: Int(event.keyCode), + modifierFlags: keyboardModifiers, + sender: self + ) { return nil } diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index aefb830..88ac9ae 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -1,4 +1,5 @@ import AppKit +import Carbon.HIToolbox import XCTest @testable import Free_Ruler @@ -1193,6 +1194,54 @@ final class RulerCoreTests: XCTestCase { } } + func testShiftHotkeysFlipRulerOrigins() { + withRestoredZeroCornerPreference { + let previousGroupRulers = prefs.groupRulers + defer { prefs.groupRulers = previousGroupRulers } + + prefs.zeroCorner = .topLeft + prefs.groupRulers = false + let appDelegate = AppDelegate() + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 61, y: 140, width: Ruler.thickness, height: 160)) + ) + appDelegate.rulers = [verticalController, horizontalController] + + XCTAssertTrue( + appDelegate.performRulerHotkey( + keyCode: kVK_ANSI_H, + modifierFlags: .shift, + sender: horizontalController + ) + ) + XCTAssertEqual(prefs.zeroCorner, .topRight) + + XCTAssertTrue( + appDelegate.performRulerHotkey( + keyCode: kVK_ANSI_V, + modifierFlags: .shift, + sender: verticalController + ) + ) + XCTAssertEqual(prefs.zeroCorner, .bottomRight) + } + } + + func testNonShiftModifiedRulerHotkeysAreIgnored() { + let appDelegate = AppDelegate() + + XCTAssertFalse( + appDelegate.performRulerHotkey( + keyCode: kVK_ANSI_H, + modifierFlags: .option, + sender: self + ) + ) + } + private func mouseEvent( type: NSEvent.EventType, location: NSPoint, From e84f0d615fcf1188a672960022223a80eaf0a6a7 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 02:26:54 -0400 Subject: [PATCH 05/38] Verify flippable ruler integration --- FreeRulerTests/RulerCoreTests.swift | 87 +++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index 88ac9ae..b9de94f 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -344,6 +344,47 @@ final class RulerCoreTests: XCTestCase { } } + func testMouseNumberLabelsRespectUnitsAfterZeroCornerFlip() { + withRestoredZeroCornerPreference { + let previousUnit = prefs.unit + defer { prefs.unit = previousUnit } + + prefs.zeroCorner = .bottomRight + let horizontalRule = HorizontalRule( + frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness) + ) + let verticalRule = VerticalRule( + frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300) + ) + let horizontalNumber = horizontalRule.mouseNumber(forTickX: 260, rulerWidth: 300) + let verticalNumber = verticalRule.mouseNumber(forTickY: 40, rulerHeight: 300) + + prefs.unit = .pixels + XCTAssertEqual(horizontalRule.getMouseNumberLabel(horizontalNumber), "40") + XCTAssertEqual(verticalRule.getMouseNumberLabel(verticalNumber), "40") + + prefs.unit = .millimeters + XCTAssertEqual( + horizontalRule.getMouseNumberLabel(horizontalNumber), + String(format: "%.1f", horizontalNumber / NSScreen.defaultDpmm) + ) + XCTAssertEqual( + verticalRule.getMouseNumberLabel(verticalNumber), + String(format: "%.1f", verticalNumber / NSScreen.defaultDpmm) + ) + + prefs.unit = .inches + XCTAssertEqual( + horizontalRule.getMouseNumberLabel(horizontalNumber), + String(format: "%.3f", horizontalNumber / NSScreen.defaultDpi) + ) + XCTAssertEqual( + verticalRule.getMouseNumberLabel(verticalNumber), + String(format: "%.3f", verticalNumber / NSScreen.defaultDpi) + ) + } + } + func testRulerColorsDefaultToOriginalFillColor() { withRestoredRulerColorPreference { prefs.rulerColor = Prefs.defaultRulerFillColor @@ -1242,6 +1283,52 @@ final class RulerCoreTests: XCTestCase { ) } + func testResetPositionUsesCurrentZeroCorner() { + withRestoredZeroCornerPreference { + prefs.zeroCorner = .bottomRight + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 10, y: 20, width: 300, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 10, y: 20, width: Ruler.thickness, height: 300)) + ) + + horizontalController.resetPosition() + verticalController.resetPosition() + + XCTAssertEqual( + horizontalController.rulerWindow.frame, + getDefaultContentRect(orientation: .horizontal, zeroCorner: .bottomRight) + ) + XCTAssertEqual( + verticalController.rulerWindow.frame, + getDefaultContentRect(orientation: .vertical, zeroCorner: .bottomRight) + ) + XCTAssertEqual(prefs.zeroCorner, .bottomRight) + } + } + + func testResetPositionKeepsFlippedDefaultRulersOnSharedZeroPoint() { + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topRight + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 10, y: 20, width: 300, height: Ruler.thickness)) + ) + let verticalController = RulerController( + ruler: Ruler(.vertical, frame: NSRect(x: 10, y: 20, width: Ruler.thickness, height: 300)) + ) + + horizontalController.resetPosition() + verticalController.resetPosition() + + let geometry = ZeroCornerGeometry(zeroCorner: .topRight) + XCTAssertEqual( + geometry.zeroPoint(in: horizontalController.rulerWindow.frame, for: .horizontal), + geometry.zeroPoint(in: verticalController.rulerWindow.frame, for: .vertical) + ) + } + } + private func mouseEvent( type: NSEvent.EventType, location: NSPoint, From 031c854ed6b80e71b3475bc6137ffdca9d55e846 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 03:09:20 -0400 Subject: [PATCH 06/38] Derive flipped label test scale from screen --- FreeRulerTests/RulerCoreTests.swift | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index b9de94f..537f7e3 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -358,6 +358,10 @@ final class RulerCoreTests: XCTestCase { ) let horizontalNumber = horizontalRule.mouseNumber(forTickX: 260, rulerWidth: 300) let verticalNumber = verticalRule.mouseNumber(forTickY: 40, rulerHeight: 300) + let horizontalDpmm = horizontalRule.screen?.dpmm.width ?? NSScreen.defaultDpmm + let verticalDpmm = verticalRule.screen?.dpmm.width ?? NSScreen.defaultDpmm + let horizontalDpi = horizontalRule.screen?.dpi.width ?? NSScreen.defaultDpi + let verticalDpi = verticalRule.screen?.dpi.width ?? NSScreen.defaultDpi prefs.unit = .pixels XCTAssertEqual(horizontalRule.getMouseNumberLabel(horizontalNumber), "40") @@ -366,21 +370,21 @@ final class RulerCoreTests: XCTestCase { prefs.unit = .millimeters XCTAssertEqual( horizontalRule.getMouseNumberLabel(horizontalNumber), - String(format: "%.1f", horizontalNumber / NSScreen.defaultDpmm) + String(format: "%.1f", horizontalNumber / horizontalDpmm) ) XCTAssertEqual( verticalRule.getMouseNumberLabel(verticalNumber), - String(format: "%.1f", verticalNumber / NSScreen.defaultDpmm) + String(format: "%.1f", verticalNumber / verticalDpmm) ) prefs.unit = .inches XCTAssertEqual( horizontalRule.getMouseNumberLabel(horizontalNumber), - String(format: "%.3f", horizontalNumber / NSScreen.defaultDpi) + String(format: "%.3f", horizontalNumber / horizontalDpi) ) XCTAssertEqual( verticalRule.getMouseNumberLabel(verticalNumber), - String(format: "%.3f", verticalNumber / NSScreen.defaultDpi) + String(format: "%.3f", verticalNumber / verticalDpi) ) } } From 00f4c5116b04fdb1d2b43c77198d764ae6ec2a27 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 12:21:00 -0400 Subject: [PATCH 07/38] Ignore Caps Lock for ruler hotkeys --- Free Ruler/AppDelegate.swift | 4 +++- FreeRulerTests/RulerCoreTests.swift | 24 ++++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index 3a83185..8190168 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -611,7 +611,9 @@ class AppDelegate: NSObject, NSApplicationDelegate { modifierFlags: NSEvent.ModifierFlags, sender: Any ) -> Bool { - let keyboardModifiers = modifierFlags.intersection(.deviceIndependentFlagsMask) + let keyboardModifiers = modifierFlags + .intersection(.deviceIndependentFlagsMask) + .subtracting(.capsLock) if keyboardModifiers == .shift { switch keyCode { diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index 537f7e3..3ddd421 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -1275,6 +1275,30 @@ final class RulerCoreTests: XCTestCase { } } + func testShiftHotkeysIgnoreCapsLock() { + withRestoredZeroCornerPreference { + let previousGroupRulers = prefs.groupRulers + defer { prefs.groupRulers = previousGroupRulers } + + prefs.zeroCorner = .topLeft + prefs.groupRulers = false + let appDelegate = AppDelegate() + let horizontalController = RulerController( + ruler: Ruler(.horizontal, frame: NSRect(x: 100, y: 299, width: 120, height: Ruler.thickness)) + ) + appDelegate.rulers = [horizontalController] + + XCTAssertTrue( + appDelegate.performRulerHotkey( + keyCode: kVK_ANSI_H, + modifierFlags: [.shift, .capsLock], + sender: horizontalController + ) + ) + XCTAssertEqual(prefs.zeroCorner, .topRight) + } + } + func testNonShiftModifiedRulerHotkeysAreIgnored() { let appDelegate = AppDelegate() From 5aafebb826bf52e7aa5f8e69223092f96caf4655 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 12:34:39 -0400 Subject: [PATCH 08/38] Address flip ruler review comments --- Free Ruler/Base.lproj/MainMenu.xib | 4 ++-- Free Ruler/RuleView.swift | 1 + FreeRulerTests/RulerCoreTests.swift | 19 +++++++++++++++++++ 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/Free Ruler/Base.lproj/MainMenu.xib b/Free Ruler/Base.lproj/MainMenu.xib index e224d9a..8404be9 100644 --- a/Free Ruler/Base.lproj/MainMenu.xib +++ b/Free Ruler/Base.lproj/MainMenu.xib @@ -191,13 +191,13 @@ - + - + diff --git a/Free Ruler/RuleView.swift b/Free Ruler/RuleView.swift index 8f0afb8..9e40f43 100644 --- a/Free Ruler/RuleView.swift +++ b/Free Ruler/RuleView.swift @@ -122,6 +122,7 @@ class RuleView: NSView { } func redrawForPreferenceChange() { + updateResizeHandleFrame() setNeedsDisplay(visibleRect) resizeHandleView?.needsDisplay = true } diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index 3ddd421..c8a4cd8 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -822,6 +822,25 @@ final class RulerCoreTests: XCTestCase { } } + func testPreferenceRedrawUpdatesResizeHandleFrameForZeroCornerChanges() { + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft + let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + guard let initialFrame = rule.resizeHandleExclusionFrame else { + return XCTFail("Expected horizontal ruler to install a resize handle") + } + + prefs.zeroCorner = .topRight + rule.redrawForPreferenceChange() + guard let flippedFrame = rule.resizeHandleExclusionFrame else { + return XCTFail("Expected horizontal ruler to keep its resize handle") + } + + XCTAssertGreaterThan(initialFrame.midX, rule.bounds.midX) + XCTAssertLessThan(flippedFrame.midX, rule.bounds.midX) + } + } + func testResizeHandleCursorsUseCustomCenteredImages() { let horizontalCursor = windowResizeCursor(for: .horizontal) let verticalCursor = windowResizeCursor(for: .vertical) From 94e01f9f34dbdac8368e4c834e51970bb4f25af9 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 12:58:40 -0400 Subject: [PATCH 09/38] Anchor labels/handles to opposite sides and update tests Add RulerSide.opposite and update label/handle geometry to anchor unit labels and resize handles relative to the far/opposite corner derived from ZeroCornerGeometry. HorizontalRule and VerticalRule now compute label X/Y anchors using geometry.opposite sides (and use a fixed textHeight for top labels). ResizeHandleView uses tickSide.opposite to place vertical/horizontal handles correctly. Update RulerCoreTests: adjust expected rects, add a unit-label positioning test, rename/expand resize-handle assertions to check X and Y anchoring, and wrap tests to set/restore zeroCorner preference where needed. --- Free Ruler/HorizontalRule.swift | 23 ++- Free Ruler/ResizeHandleView.swift | 32 +++- Free Ruler/Ruler.swift | 13 ++ Free Ruler/VerticalRule.swift | 21 ++- FreeRulerTests/RulerCoreTests.swift | 254 ++++++++++++++++++---------- 5 files changed, 227 insertions(+), 116 deletions(-) diff --git a/Free Ruler/HorizontalRule.swift b/Free Ruler/HorizontalRule.swift index 7badb98..371c2ec 100644 --- a/Free Ruler/HorizontalRule.swift +++ b/Free Ruler/HorizontalRule.swift @@ -235,6 +235,7 @@ class HorizontalRule: RuleView { tickSide: RulerSide ) -> CGRect { let labelOffset: CGFloat = 13 + let textHeight: CGFloat = 8 let labelX: CGFloat = x - (labelSize.width / 2) + 0.5 let labelY: CGFloat @@ -242,7 +243,7 @@ class HorizontalRule: RuleView { case .bottom: labelY = labelOffset case .top: - labelY = rulerHeight - labelOffset - labelSize.height + labelY = rulerHeight - labelOffset - textHeight case .left, .right: assertionFailure("Horizontal ruler labels must be placed on a horizontal side") labelY = labelOffset @@ -265,24 +266,28 @@ class HorizontalRule: RuleView { func unitLabelRect(labelSize: NSSize, rulerSize: NSSize) -> CGRect { let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) let tickSide = geometry.tickSide(for: .horizontal) - let growthDirection = geometry.growthDirection(for: .horizontal) + let labelXSide = geometry.resizeSide(for: .horizontal).opposite + let labelYSide = tickSide.opposite let x: CGFloat let y: CGFloat - switch growthDirection { - case .positive: + switch labelXSide { + case .left: x = 10 - case .negative: + case .right: x = rulerSize.width - labelSize.width - 10 + case .top, .bottom: + assertionFailure("Horizontal unit label must be anchored to a horizontal corner side") + x = 10 } - switch tickSide { - case .bottom: - y = rulerSize.height - labelSize.height + switch labelYSide { case .top: + y = rulerSize.height - labelSize.height + case .bottom: y = 0 case .left, .right: - assertionFailure("Horizontal unit label must be placed on a horizontal side") + assertionFailure("Horizontal unit label must be anchored to a vertical corner side") y = rulerSize.height - labelSize.height } diff --git a/Free Ruler/ResizeHandleView.swift b/Free Ruler/ResizeHandleView.swift index 73857be..9f9f43c 100644 --- a/Free Ruler/ResizeHandleView.swift +++ b/Free Ruler/ResizeHandleView.swift @@ -154,12 +154,14 @@ final class ResizeHandleView: NSView { } func frame(in bounds: NSRect) -> NSRect { - let resizeSide = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner).resizeSide(for: orientation) + let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) + let tickSide = geometry.tickSide(for: orientation) + let resizeSide = geometry.resizeSide(for: orientation) switch orientation { case .horizontal: - let topY = bounds.maxY - horizontalYOffset - let bottomY = topY - length + let verticalHandleSide = tickSide.opposite + let bottomY: CGFloat let firstX: CGFloat switch resizeSide { @@ -178,6 +180,16 @@ final class ResizeHandleView: NSView { - 1 } + switch verticalHandleSide { + case .top: + bottomY = bounds.maxY - horizontalYOffset - length + case .bottom: + bottomY = bounds.minY + horizontalYOffset + case .left, .right: + assertionFailure("Horizontal resize handle must be placed on a vertical side") + bottomY = bounds.maxY - horizontalYOffset - length + } + return NSRect( x: firstX - backgroundPadding, y: bottomY - backgroundPadding, @@ -185,10 +197,20 @@ final class ResizeHandleView: NSView { height: length + (backgroundPadding * 2) ) case .vertical: - let rightX = bounds.minX + verticalXOffset + length - let leftX = rightX - length + let horizontalHandleSide = tickSide.opposite + let leftX: CGFloat let firstY: CGFloat + switch horizontalHandleSide { + case .left: + leftX = bounds.minX + verticalXOffset + case .right: + leftX = bounds.maxX - verticalXOffset - length + case .top, .bottom: + assertionFailure("Vertical resize handle must be placed on a horizontal side") + leftX = bounds.minX + verticalXOffset + } + switch resizeSide { case .top: firstY = bounds.maxY diff --git a/Free Ruler/Ruler.swift b/Free Ruler/Ruler.swift index 93a7893..528ed26 100644 --- a/Free Ruler/Ruler.swift +++ b/Free Ruler/Ruler.swift @@ -45,6 +45,19 @@ enum RulerSide: Equatable { case right case bottom case left + + var opposite: RulerSide { + switch self { + case .top: + return .bottom + case .right: + return .left + case .bottom: + return .top + case .left: + return .right + } + } } struct ZeroCornerGeometry { diff --git a/Free Ruler/VerticalRule.swift b/Free Ruler/VerticalRule.swift index 1e2a7d3..8fd383e 100644 --- a/Free Ruler/VerticalRule.swift +++ b/Free Ruler/VerticalRule.swift @@ -257,26 +257,29 @@ class VerticalRule: RuleView { func unitLabelRect(labelSize: NSSize, rulerSize: NSSize) -> CGRect { let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) - let tickSide = geometry.tickSide(for: .vertical) - let growthDirection = geometry.growthDirection(for: .vertical) + let labelXSide = geometry.tickSide(for: .vertical).opposite + let labelYSide = geometry.resizeSide(for: .vertical).opposite let x: CGFloat let y: CGFloat - switch tickSide { - case .right: - x = 8 + switch labelXSide { case .left: + x = 8 + case .right: x = rulerSize.width - labelSize.width - 8 case .top, .bottom: - assertionFailure("Vertical unit label must be placed on a vertical side") + assertionFailure("Vertical unit label must be anchored to a horizontal corner side") x = 8 } - switch growthDirection { - case .positive: + switch labelYSide { + case .bottom: y = 2 - case .negative: + case .top: y = rulerSize.height - labelSize.height - 2 + case .left, .right: + assertionFailure("Vertical unit label must be anchored to a vertical corner side") + y = 2 } return CGRect(x: x, y: y, width: labelSize.width, height: labelSize.height) diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index c8a4cd8..5b95ee8 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -271,7 +271,7 @@ final class RulerCoreTests: XCTestCase { rulerHeight: 40, tickSide: .top ), - CGRect(x: 225.5, y: 7, width: 50, height: 20) + CGRect(x: 225.5, y: 19, width: 50, height: 20) ) } @@ -344,6 +344,42 @@ final class RulerCoreTests: XCTestCase { } } + func testUnitLabelsFollowNearOppositeCornerFromZeroCorner() { + withRestoredZeroCornerPreference { + let horizontalRule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + let verticalRule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) + let horizontalSize = NSSize(width: 12, height: 10) + let verticalSize = NSSize(width: 12, height: 10) + let cases: [ + ( + zeroCorner: ZeroCorner, + horizontalUnitRect: CGRect, + verticalUnitRect: CGRect + ) + ] = [ + (.topLeft, CGRect(x: 10, y: 30, width: 12, height: 10), CGRect(x: 8, y: 288, width: 12, height: 10)), + (.topRight, CGRect(x: 278, y: 30, width: 12, height: 10), CGRect(x: 20, y: 288, width: 12, height: 10)), + (.bottomLeft, CGRect(x: 10, y: 0, width: 12, height: 10), CGRect(x: 8, y: 2, width: 12, height: 10)), + (.bottomRight, CGRect(x: 278, y: 0, width: 12, height: 10), CGRect(x: 20, y: 2, width: 12, height: 10)), + ] + + for testCase in cases { + prefs.zeroCorner = testCase.zeroCorner + + XCTAssertEqual( + horizontalRule.unitLabelRect(labelSize: horizontalSize, rulerSize: horizontalRule.bounds.size), + testCase.horizontalUnitRect, + "\(testCase.zeroCorner) horizontal unit label" + ) + XCTAssertEqual( + verticalRule.unitLabelRect(labelSize: verticalSize, rulerSize: verticalRule.bounds.size), + testCase.verticalUnitRect, + "\(testCase.zeroCorner) vertical unit label" + ) + } + } + } + func testMouseNumberLabelsRespectUnitsAfterZeroCornerFlip() { withRestoredZeroCornerPreference { let previousUnit = prefs.unit @@ -772,19 +808,21 @@ final class RulerCoreTests: XCTestCase { XCTAssertEqual(maxFrame.minY, initialFrame.minY) } - func testResizeHandlePositionsFollowZeroCorner() { + func testResizeHandlePositionsFollowFarOppositeCornerFromZeroCorner() { withRestoredZeroCornerPreference { let cases: [ ( zeroCorner: ZeroCorner, - expectedHorizontalSide: RulerSide, - expectedVerticalSide: RulerSide + expectedHorizontalXSide: RulerSide, + expectedHorizontalYSide: RulerSide, + expectedVerticalXSide: RulerSide, + expectedVerticalYSide: RulerSide ) ] = [ - (.topLeft, .right, .bottom), - (.topRight, .left, .bottom), - (.bottomLeft, .right, .top), - (.bottomRight, .left, .top), + (.topLeft, .right, .top, .left, .bottom), + (.topRight, .left, .top, .right, .bottom), + (.bottomLeft, .right, .bottom, .left, .top), + (.bottomRight, .left, .bottom, .right, .top), ] for testCase in cases { @@ -801,22 +839,40 @@ final class RulerCoreTests: XCTestCase { return XCTFail("Expected both rulers to install resize handles") } - switch testCase.expectedHorizontalSide { + switch testCase.expectedHorizontalXSide { case .left: XCTAssertLessThan(horizontalFrame.midX, horizontalRule.bounds.midX, "\(testCase.zeroCorner)") case .right: XCTAssertGreaterThan(horizontalFrame.midX, horizontalRule.bounds.midX, "\(testCase.zeroCorner)") case .top, .bottom: - XCTFail("Horizontal resize handle must be placed on a horizontal side") + XCTFail("Horizontal resize handle X must be placed on a horizontal side") + } + + switch testCase.expectedHorizontalYSide { + case .top: + XCTAssertGreaterThan(horizontalFrame.midY, horizontalRule.bounds.midY, "\(testCase.zeroCorner)") + case .bottom: + XCTAssertLessThan(horizontalFrame.midY, horizontalRule.bounds.midY, "\(testCase.zeroCorner)") + case .left, .right: + XCTFail("Horizontal resize handle Y must be placed on a vertical side") + } + + switch testCase.expectedVerticalXSide { + case .left: + XCTAssertLessThan(verticalFrame.midX, verticalRule.bounds.midX, "\(testCase.zeroCorner)") + case .right: + XCTAssertGreaterThan(verticalFrame.midX, verticalRule.bounds.midX, "\(testCase.zeroCorner)") + case .top, .bottom: + XCTFail("Vertical resize handle X must be placed on a horizontal side") } - switch testCase.expectedVerticalSide { + switch testCase.expectedVerticalYSide { case .top: XCTAssertGreaterThan(verticalFrame.midY, verticalRule.bounds.midY, "\(testCase.zeroCorner)") case .bottom: XCTAssertLessThan(verticalFrame.midY, verticalRule.bounds.midY, "\(testCase.zeroCorner)") case .left, .right: - XCTFail("Vertical resize handle must be placed on a vertical side") + XCTFail("Vertical resize handle Y must be placed on a vertical side") } } } @@ -865,53 +921,61 @@ final class RulerCoreTests: XCTestCase { } func testHorizontalMouseTickLabelStopsBeforeResizeHandle() { - let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) - guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { - return XCTFail("Expected horizontal ruler to install a resize handle") - } - let labelSize = CGSize(width: 30, height: 10) - let rulerSize = rule.bounds.size - let expectedMaxLabelRight = resizeHandleFrame.minX - rule.mouseTickLabelResizeHandleSpacing - let pinnedLabelX = expectedMaxLabelRight - labelSize.width - let mouseTickBeforePinnedLabel = pinnedLabelX - 2 + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft - let labelRect = rule.mouseNumberLabelRect( - number: mouseTickBeforePinnedLabel, - labelSize: labelSize, - rulerSize: rulerSize - ) + let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { + return XCTFail("Expected horizontal ruler to install a resize handle") + } + let labelSize = CGSize(width: 30, height: 10) + let rulerSize = rule.bounds.size + let expectedMaxLabelRight = resizeHandleFrame.minX - rule.mouseTickLabelResizeHandleSpacing + let pinnedLabelX = expectedMaxLabelRight - labelSize.width + let mouseTickBeforePinnedLabel = pinnedLabelX - 2 + + let labelRect = rule.mouseNumberLabelRect( + number: mouseTickBeforePinnedLabel, + labelSize: labelSize, + rulerSize: rulerSize + ) - XCTAssertGreaterThan(labelRect.minX, mouseTickBeforePinnedLabel) - XCTAssertEqual( - labelRect.maxX, - expectedMaxLabelRight, - accuracy: 0.0001 - ) + XCTAssertGreaterThan(labelRect.minX, mouseTickBeforePinnedLabel) + XCTAssertEqual( + labelRect.maxX, + expectedMaxLabelRight, + accuracy: 0.0001 + ) + } } func testHorizontalMouseTickLabelFlipsBeforeCollidingWithMouseTick() { - let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) - guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { - return XCTFail("Expected horizontal ruler to install a resize handle") - } - let labelSize = CGSize(width: 30, height: 10) - let rulerSize = rule.bounds.size - let expectedMaxLabelRight = resizeHandleFrame.minX - rule.mouseTickLabelResizeHandleSpacing - let mouseTickInsideResizeHandle = resizeHandleFrame.minX + 1 + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft - let labelRect = rule.mouseNumberLabelRect( - number: mouseTickInsideResizeHandle, - labelSize: labelSize, - rulerSize: rulerSize - ) + let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { + return XCTFail("Expected horizontal ruler to install a resize handle") + } + let labelSize = CGSize(width: 30, height: 10) + let rulerSize = rule.bounds.size + let expectedMaxLabelRight = resizeHandleFrame.minX - rule.mouseTickLabelResizeHandleSpacing + let mouseTickInsideResizeHandle = resizeHandleFrame.minX + 1 + + let labelRect = rule.mouseNumberLabelRect( + number: mouseTickInsideResizeHandle, + labelSize: labelSize, + rulerSize: rulerSize + ) - XCTAssertGreaterThan(mouseTickInsideResizeHandle, resizeHandleFrame.minX) - XCTAssertLessThan(labelRect.maxX, mouseTickInsideResizeHandle) - XCTAssertEqual( - labelRect.maxX, - expectedMaxLabelRight, - accuracy: 0.0001 - ) + XCTAssertGreaterThan(mouseTickInsideResizeHandle, resizeHandleFrame.minX) + XCTAssertLessThan(labelRect.maxX, mouseTickInsideResizeHandle) + XCTAssertEqual( + labelRect.maxX, + expectedMaxLabelRight, + accuracy: 0.0001 + ) + } } func testVerticalMouseTickLabelStopsBeforeResizeHandle() { @@ -1005,54 +1069,58 @@ final class RulerCoreTests: XCTestCase { } func testHorizontalResizeHandleDragKeepsLeftAndTopEdgesFixed() { - let initialFrame = NSRect(x: 100, y: 200, width: 300, height: Ruler.thickness) - let ruler = Ruler(.horizontal, frame: initialFrame) - let window = RulerWindow(ruler) - guard let resizeHandle = window.rule.subviews.first(where: { $0 is ResizeHandleView }) as? ResizeHandleView else { - return XCTFail("Expected horizontal ruler to install a resize handle") - } - - let startLocation = resizeHandle.convert( - NSPoint(x: resizeHandle.bounds.minX + 1, y: resizeHandle.bounds.midY), - to: nil - ) - let mouseDownEvent = mouseEvent( - type: .leftMouseDown, - location: startLocation, - windowNumber: window.windowNumber, - timestamp: 0 - ) - - resizeHandle.mouseDown(with: mouseDownEvent) + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft - let dragOffsets = [ - NSSize(width: -40, height: 0), - NSSize(width: 80, height: 0), - NSSize(width: 0, height: 30), - NSSize(width: 0, height: -30), - ] + let initialFrame = NSRect(x: 100, y: 200, width: 300, height: Ruler.thickness) + let ruler = Ruler(.horizontal, frame: initialFrame) + let window = RulerWindow(ruler) + guard let resizeHandle = window.rule.subviews.first(where: { $0 is ResizeHandleView }) as? ResizeHandleView else { + return XCTFail("Expected horizontal ruler to install a resize handle") + } - for (index, offset) in dragOffsets.enumerated() { - let dragEvent = mouseEvent( - type: .leftMouseDragged, - location: NSPoint(x: startLocation.x + offset.width, y: startLocation.y + offset.height), + let startLocation = resizeHandle.convert( + NSPoint(x: resizeHandle.bounds.minX + 1, y: resizeHandle.bounds.midY), + to: nil + ) + let mouseDownEvent = mouseEvent( + type: .leftMouseDown, + location: startLocation, windowNumber: window.windowNumber, - timestamp: TimeInterval(index + 1) * 0.1 + timestamp: 0 ) - resizeHandle.mouseDragged(with: dragEvent) + resizeHandle.mouseDown(with: mouseDownEvent) - XCTAssertEqual(window.frame.minX, initialFrame.minX, "left edge moved for drag offset \(offset)") - XCTAssertEqual(window.frame.maxY, initialFrame.maxY, "top edge moved for drag offset \(offset)") - } + let dragOffsets = [ + NSSize(width: -40, height: 0), + NSSize(width: 80, height: 0), + NSSize(width: 0, height: 30), + NSSize(width: 0, height: -30), + ] - let mouseUpEvent = mouseEvent( - type: .leftMouseUp, - location: startLocation, - windowNumber: window.windowNumber, - timestamp: 1 - ) - resizeHandle.mouseUp(with: mouseUpEvent) + for (index, offset) in dragOffsets.enumerated() { + let dragEvent = mouseEvent( + type: .leftMouseDragged, + location: NSPoint(x: startLocation.x + offset.width, y: startLocation.y + offset.height), + windowNumber: window.windowNumber, + timestamp: TimeInterval(index + 1) * 0.1 + ) + + resizeHandle.mouseDragged(with: dragEvent) + + XCTAssertEqual(window.frame.minX, initialFrame.minX, "left edge moved for drag offset \(offset)") + XCTAssertEqual(window.frame.maxY, initialFrame.maxY, "top edge moved for drag offset \(offset)") + } + + let mouseUpEvent = mouseEvent( + type: .leftMouseUp, + location: startLocation, + windowNumber: window.windowNumber, + timestamp: 1 + ) + resizeHandle.mouseUp(with: mouseUpEvent) + } } func testRulerControllerKeepsMouseTicksHiddenWhileDragging() { From 67b5a722bfe2fcd06b4ab76b1fa5d1d204795ec6 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 13:13:30 -0400 Subject: [PATCH 10/38] Encapsulate resize-handle placement logic Add RulerCornerPlacement and a new ZeroCornerGeometry.resizeHandlePlacement(for:) helper to compute the x/y sides for resize handles based on orientation and zero corner. Refactor ResizeHandleView to use placement.xSide/placement.ySide instead of separately computing tickSide, resizeSide and their opposites, simplifying control flow and removing duplicated logic. Changes in Ruler.swift and ResizeHandleView.swift; no intended behavioral change. --- Free Ruler/ResizeHandleView.swift | 15 ++++++--------- Free Ruler/Ruler.swift | 20 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/Free Ruler/ResizeHandleView.swift b/Free Ruler/ResizeHandleView.swift index 9f9f43c..578a444 100644 --- a/Free Ruler/ResizeHandleView.swift +++ b/Free Ruler/ResizeHandleView.swift @@ -154,17 +154,15 @@ final class ResizeHandleView: NSView { } func frame(in bounds: NSRect) -> NSRect { - let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) - let tickSide = geometry.tickSide(for: orientation) - let resizeSide = geometry.resizeSide(for: orientation) + let placement = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) + .resizeHandlePlacement(for: orientation) switch orientation { case .horizontal: - let verticalHandleSide = tickSide.opposite let bottomY: CGFloat let firstX: CGFloat - switch resizeSide { + switch placement.xSide { case .left: firstX = bounds.minX + horizontalXOffset + 1 case .right: @@ -180,7 +178,7 @@ final class ResizeHandleView: NSView { - 1 } - switch verticalHandleSide { + switch placement.ySide { case .top: bottomY = bounds.maxY - horizontalYOffset - length case .bottom: @@ -197,11 +195,10 @@ final class ResizeHandleView: NSView { height: length + (backgroundPadding * 2) ) case .vertical: - let horizontalHandleSide = tickSide.opposite let leftX: CGFloat let firstY: CGFloat - switch horizontalHandleSide { + switch placement.xSide { case .left: leftX = bounds.minX + verticalXOffset case .right: @@ -211,7 +208,7 @@ final class ResizeHandleView: NSView { leftX = bounds.minX + verticalXOffset } - switch resizeSide { + switch placement.ySide { case .top: firstY = bounds.maxY - verticalYOffset diff --git a/Free Ruler/Ruler.swift b/Free Ruler/Ruler.swift index 528ed26..171ee75 100644 --- a/Free Ruler/Ruler.swift +++ b/Free Ruler/Ruler.swift @@ -60,6 +60,11 @@ enum RulerSide: Equatable { } } +struct RulerCornerPlacement: Equatable { + let xSide: RulerSide + let ySide: RulerSide +} + struct ZeroCornerGeometry { let zeroCorner: ZeroCorner @@ -96,6 +101,21 @@ struct ZeroCornerGeometry { } } + func resizeHandlePlacement(for orientation: Orientation) -> RulerCornerPlacement { + switch orientation { + case .horizontal: + return RulerCornerPlacement( + xSide: resizeSide(for: orientation), + ySide: tickSide(for: orientation).opposite + ) + case .vertical: + return RulerCornerPlacement( + xSide: tickSide(for: orientation).opposite, + ySide: resizeSide(for: orientation) + ) + } + } + func zeroPoint(in frame: NSRect, for orientation: Orientation) -> NSPoint { switch orientation { case .horizontal: From 8cad8a270c4b2ced2a1db96912bda70373fdd575 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 13:35:44 -0400 Subject: [PATCH 11/38] Add UnitLabelView and integrate unit labels Introduce UnitLabelView to centralize unit label sizing, framing and drawing. Move unit label placement logic into UnitLabelView.labelFrame and ZeroCornerGeometry.unitLabelPlacement, and wire a unitLabelView subview into RuleView with install/update methods. HorizontalRule and VerticalRule now install the subview and override visibility logic to hide the label when the mouse tick overlaps it. Update project file to include the new source and adjust/extend unit tests to match the new layout behavior and verify subview positioning and baseline consistency. --- Free Ruler.xcodeproj/project.pbxproj | 6 ++ Free Ruler/HorizontalRule.swift | 63 ++++++------------ Free Ruler/RuleView.swift | 42 ++++++++++++ Free Ruler/Ruler.swift | 15 +++++ Free Ruler/UnitLabelView.swift | 97 ++++++++++++++++++++++++++++ Free Ruler/VerticalRule.swift | 62 ++++++------------ FreeRulerTests/RulerCoreTests.swift | 72 +++++++++++++++++++-- 7 files changed, 268 insertions(+), 89 deletions(-) create mode 100644 Free Ruler/UnitLabelView.swift diff --git a/Free Ruler.xcodeproj/project.pbxproj b/Free Ruler.xcodeproj/project.pbxproj index 077354e..a2b8faa 100644 --- a/Free Ruler.xcodeproj/project.pbxproj +++ b/Free Ruler.xcodeproj/project.pbxproj @@ -39,6 +39,8 @@ 50B1D3662D06010200B1D139 /* AppStoreScreenshotPreview.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50B1D3642D06010100B1D139 /* AppStoreScreenshotPreview.swift */; }; 50B1D3672D06100000B1D13A /* ResizeHandleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50B1D3682D06100000B1D13A /* ResizeHandleView.swift */; }; 50B1D3692D06100000B1D13A /* ResizeHandleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50B1D3682D06100000B1D13A /* ResizeHandleView.swift */; }; + 50B1D36A2D06110000B1D13B /* UnitLabelView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50B1D36C2D06110000B1D13B /* UnitLabelView.swift */; }; + 50B1D36B2D06110000B1D13B /* UnitLabelView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50B1D36C2D06110000B1D13B /* UnitLabelView.swift */; }; 50C6D891228BDBAD0091F19E /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 50C6D890228BDBAD0091F19E /* Images.xcassets */; }; 50D7BEE7227D42FD0008B95E /* RulerController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50D7BEE6227D42FD0008B95E /* RulerController.swift */; }; 50D7BEE9227D43270008B95E /* Ruler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 50D7BEE8227D43270008B95E /* Ruler.swift */; }; @@ -118,6 +120,7 @@ 50B1D35F2D06000600B1D139 /* AppIconGenerator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppIconGenerator.swift; sourceTree = ""; }; 50B1D3642D06010100B1D139 /* AppStoreScreenshotPreview.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppStoreScreenshotPreview.swift; sourceTree = ""; }; 50B1D3682D06100000B1D13A /* ResizeHandleView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ResizeHandleView.swift; sourceTree = ""; }; + 50B1D36C2D06110000B1D13B /* UnitLabelView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UnitLabelView.swift; sourceTree = ""; }; 50C6D890228BDBAD0091F19E /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 50D7BEE6227D42FD0008B95E /* RulerController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RulerController.swift; sourceTree = ""; }; 50D7BEE8227D43270008B95E /* Ruler.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Ruler.swift; sourceTree = ""; }; @@ -252,6 +255,7 @@ 50D7BEEA227D432E0008B95E /* RulerWindow.swift */, 50D7BEEC227D5C810008B95E /* RuleView.swift */, 50B1D3682D06100000B1D13A /* ResizeHandleView.swift */, + 50B1D36C2D06110000B1D13B /* UnitLabelView.swift */, 50B1D3542D05E00000B1D138 /* RulerTickLayout.swift */, 6F41029E22607DC900F06A10 /* HorizontalRule.swift */, 5012CAAC226AB09000BD9565 /* VerticalRule.swift */, @@ -479,6 +483,7 @@ 6F4102892260712F00F06A10 /* AppDelegate.swift in Sources */, 50D7BEED227D5C810008B95E /* RuleView.swift in Sources */, 50B1D3672D06100000B1D13A /* ResizeHandleView.swift in Sources */, + 50B1D36A2D06110000B1D13B /* UnitLabelView.swift in Sources */, 50D7BEE9227D43270008B95E /* Ruler.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -504,6 +509,7 @@ 23E2B80975F07733EB6CF5DB /* AppDelegate.swift in Sources */, 9A082BBC4A583513B0858C41 /* RuleView.swift in Sources */, 50B1D3692D06100000B1D13A /* ResizeHandleView.swift in Sources */, + 50B1D36B2D06110000B1D13B /* UnitLabelView.swift in Sources */, E6BC6663BAF0D11D7A9D2195 /* Ruler.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; diff --git a/Free Ruler/HorizontalRule.swift b/Free Ruler/HorizontalRule.swift index 371c2ec..c731346 100644 --- a/Free Ruler/HorizontalRule.swift +++ b/Free Ruler/HorizontalRule.swift @@ -6,17 +6,20 @@ class HorizontalRule: RuleView { override init(frame frameRect: NSRect) { super.init(frame: frameRect) + installUnitLabel(for: .horizontal) installResizeHandle(for: .horizontal) } required init?(coder: NSCoder) { super.init(coder: coder) + installUnitLabel(for: .horizontal) installResizeHandle(for: .horizontal) } var mouseTickX: CGFloat = 0 { didSet { if mouseTickX != oldValue { + updateUnitLabelVisibility() needsDisplay = true } } @@ -41,7 +44,7 @@ class HorizontalRule: RuleView { let labelWidth: CGFloat = 50 let labelHeight: CGFloat = 20 - // TODO: refactor this to use label.size() logic (see func drawUnitLabel) + // TODO: refactor this to use measured label sizes. // substract two so ticks don't overlap with border // subtract from this range so width var is accurate @@ -94,9 +97,7 @@ class HorizontalRule: RuleView { color.ticks.setStroke() path.stroke() - if !showMouseTick || mouseTickX < 0 || mouseTickX > 26 { - drawUnitLabel() - } + updateUnitLabelVisibility() // Draw the MouseTick & number if showMouseTick && mouseTickX > 0 && mouseTickX < self.windowWidth { @@ -184,18 +185,16 @@ class HorizontalRule: RuleView { ) } - func drawUnitLabel() { - let attributes = labelAttributes(alignment: .left, foregroundColor: color.ticks) - - let unitlabel = self.getUnitLabel() - let label = NSAttributedString(string: unitlabel, attributes: attributes) - let labelSize = label.size() - let labelRect = unitLabelRect(labelSize: labelSize, rulerSize: bounds.size) + override func updateUnitLabelVisibility() { + guard showMouseTick, + mouseTickX > 0, + mouseTickX < windowWidth, + let frame = unitLabelFrame else { + setUnitLabelHidden(false) + return + } - label.draw( - with: labelRect, - context: nil - ) + setUnitLabelHidden(frame.minX <= mouseTickX && mouseTickX <= frame.maxX) } func tickX( @@ -264,34 +263,12 @@ class HorizontalRule: RuleView { } func unitLabelRect(labelSize: NSSize, rulerSize: NSSize) -> CGRect { - let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) - let tickSide = geometry.tickSide(for: .horizontal) - let labelXSide = geometry.resizeSide(for: .horizontal).opposite - let labelYSide = tickSide.opposite - let x: CGFloat - let y: CGFloat - - switch labelXSide { - case .left: - x = 10 - case .right: - x = rulerSize.width - labelSize.width - 10 - case .top, .bottom: - assertionFailure("Horizontal unit label must be anchored to a horizontal corner side") - x = 10 - } - - switch labelYSide { - case .top: - y = rulerSize.height - labelSize.height - case .bottom: - y = 0 - case .left, .right: - assertionFailure("Horizontal unit label must be anchored to a vertical corner side") - y = rulerSize.height - labelSize.height - } - - return CGRect(x: x, y: y, width: labelSize.width, height: labelSize.height) + return UnitLabelView.labelFrame( + labelSize: labelSize, + rulerSize: rulerSize, + orientation: .horizontal, + zeroCorner: prefs.zeroCorner + ) } } diff --git a/Free Ruler/RuleView.swift b/Free Ruler/RuleView.swift index 9e40f43..dffff20 100644 --- a/Free Ruler/RuleView.swift +++ b/Free Ruler/RuleView.swift @@ -51,10 +51,12 @@ class RuleView: NSView { didSet { resizeHandleView?.color = color resizeHandleView?.needsDisplay = true + updateUnitLabelFrame() } } let mouseTickLabelResizeHandleSpacing: CGFloat = 8 private var resizeHandleView: ResizeHandleView? + private var unitLabelView: UnitLabelView? var trackingArea: NSTrackingArea? let trackingAreaOptions: NSTrackingArea.Options = [ @@ -105,6 +107,8 @@ class RuleView: NSView { override func layout() { super.layout() updateResizeHandleFrame() + updateUnitLabelFrame() + updateUnitLabelVisibility() } func installResizeHandle(for orientation: Orientation) { @@ -114,6 +118,14 @@ class RuleView: NSView { updateResizeHandleFrame() } + func installUnitLabel(for orientation: Orientation) { + let view = UnitLabelView(orientation: orientation, label: unitLabel()) + addSubview(view) + unitLabelView = view + updateUnitLabelFrame() + updateUnitLabelVisibility() + } + func drawMouseTick(at mouseLoc: NSPoint) { // required override // TODO: is there a better way to do this, maybe via a protocol? @@ -123,8 +135,11 @@ class RuleView: NSView { func redrawForPreferenceChange() { updateResizeHandleFrame() + updateUnitLabelFrame() + updateUnitLabelVisibility() setNeedsDisplay(visibleRect) resizeHandleView?.needsDisplay = true + unitLabelView?.needsDisplay = true } var windowWidth: CGFloat { @@ -138,6 +153,7 @@ class RuleView: NSView { var showMouseTick: Bool = true { didSet { if showMouseTick != oldValue { + updateUnitLabelVisibility() needsDisplay = true } } @@ -158,6 +174,10 @@ class RuleView: NSView { return resizeHandleView?.frame } + var unitLabelFrame: NSRect? { + return unitLabelView?.frame + } + func getUnitLabel() -> String { switch unit { case .pixels: @@ -199,12 +219,34 @@ class RuleView: NSView { } } + func setUnitLabelHidden(_ isHidden: Bool) { + unitLabelView?.isHidden = isHidden + } + + func updateUnitLabelVisibility() { + setUnitLabelHidden(false) + } + private func updateResizeHandleFrame() { guard let resizeHandleView = resizeHandleView else { return } resizeHandleView.frame = resizeHandleView.frame(in: bounds) } + private func updateUnitLabelFrame() { + guard let unitLabelView = unitLabelView else { return } + + unitLabelView.label = unitLabel() + unitLabelView.frame = unitLabelView.frame(in: bounds) + } + + private func unitLabel() -> NSAttributedString { + return NSAttributedString( + string: getUnitLabel(), + attributes: labelAttributes(alignment: .left, foregroundColor: color.ticks) + ) + } + } extension NSColor { diff --git a/Free Ruler/Ruler.swift b/Free Ruler/Ruler.swift index 171ee75..abb60ea 100644 --- a/Free Ruler/Ruler.swift +++ b/Free Ruler/Ruler.swift @@ -116,6 +116,21 @@ struct ZeroCornerGeometry { } } + func unitLabelPlacement(for orientation: Orientation) -> RulerCornerPlacement { + switch orientation { + case .horizontal: + return RulerCornerPlacement( + xSide: resizeSide(for: orientation).opposite, + ySide: tickSide(for: orientation).opposite + ) + case .vertical: + return RulerCornerPlacement( + xSide: tickSide(for: orientation).opposite, + ySide: resizeSide(for: orientation).opposite + ) + } + } + func zeroPoint(in frame: NSRect, for orientation: Orientation) -> NSPoint { switch orientation { case .horizontal: diff --git a/Free Ruler/UnitLabelView.swift b/Free Ruler/UnitLabelView.swift new file mode 100644 index 0000000..7f1be36 --- /dev/null +++ b/Free Ruler/UnitLabelView.swift @@ -0,0 +1,97 @@ +import Cocoa + +final class UnitLabelView: NSView { + var label: NSAttributedString { + didSet { + needsDisplay = true + } + } + + private let orientation: Orientation + + init(orientation: Orientation, label: NSAttributedString) { + self.orientation = orientation + self.label = label + super.init(frame: .zero) + + setAccessibilityElement(false) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented. Use init(orientation:label:)") + } + + override func draw(_ dirtyRect: NSRect) { + super.draw(dirtyRect) + + label.draw(with: bounds, context: nil) + } + + func frame(in bounds: NSRect) -> NSRect { + return Self.labelFrame( + labelSize: Self.labelSize(for: label), + rulerSize: bounds.size, + orientation: orientation, + zeroCorner: prefs.zeroCorner + ) + } + + static func labelSize(for label: NSAttributedString) -> NSSize { + var size = label.size() + guard label.length > 0, + let font = label.attribute(.font, at: 0, effectiveRange: nil) as? NSFont else { + return size + } + + size.height = ceil(font.ascender - font.descender + font.leading) + return size + } + + static func labelFrame( + labelSize: NSSize, + rulerSize: NSSize, + orientation: Orientation, + zeroCorner: ZeroCorner + ) -> NSRect { + let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) + .unitLabelPlacement(for: orientation) + let x: CGFloat + let y: CGFloat + + switch (orientation, placement.xSide) { + case (.horizontal, .left): + x = 10 + case (.horizontal, .right): + x = rulerSize.width - labelSize.width - 10 + case (.vertical, .left): + x = 8 + case (.vertical, .right): + x = rulerSize.width - labelSize.width - 8 + case (.horizontal, .top), (.horizontal, .bottom): + assertionFailure("Horizontal unit label must be anchored to a horizontal corner side") + x = 10 + case (.vertical, .top), (.vertical, .bottom): + assertionFailure("Vertical unit label must be anchored to a horizontal corner side") + x = 8 + } + + switch (orientation, placement.ySide) { + case (.horizontal, .top): + y = rulerSize.height - labelSize.height + case (.horizontal, .bottom): + y = 8 + case (.vertical, .top): + y = rulerSize.height - labelSize.height - 2 + case (.vertical, .bottom): + y = 8 + case (.horizontal, .left), (.horizontal, .right): + assertionFailure("Horizontal unit label must be anchored to a vertical corner side") + y = rulerSize.height - labelSize.height + case (.vertical, .left), (.vertical, .right): + assertionFailure("Vertical unit label must be anchored to a vertical corner side") + y = 8 + } + + return NSRect(x: x, y: y, width: labelSize.width, height: labelSize.height) + } +} diff --git a/Free Ruler/VerticalRule.swift b/Free Ruler/VerticalRule.swift index 8fd383e..9c71293 100644 --- a/Free Ruler/VerticalRule.swift +++ b/Free Ruler/VerticalRule.swift @@ -6,17 +6,20 @@ class VerticalRule: RuleView { override init(frame frameRect: NSRect) { super.init(frame: frameRect) + installUnitLabel(for: .vertical) installResizeHandle(for: .vertical) } required init?(coder: NSCoder) { super.init(coder: coder) + installUnitLabel(for: .vertical) installResizeHandle(for: .vertical) } var mouseTickY: CGFloat = 0 { didSet { if mouseTickY != oldValue { + updateUnitLabelVisibility() needsDisplay = true } } @@ -43,7 +46,7 @@ class VerticalRule: RuleView { let labelWidth: CGFloat = 50 let labelHeight: CGFloat = 20 - // TODO: refactor this to use label.size() logic (see func drawUnitLabel) + // TODO: refactor this to use measured label sizes. // substract two so ticks don't overlap with border // substract from this range so we can use the height var for position calculations @@ -96,9 +99,7 @@ class VerticalRule: RuleView { color.ticks.setStroke() path.stroke() - if !showMouseTick || self.windowHeight - mouseTickY < 0 || windowHeight - mouseTickY > 18 { - drawUnitLabel() - } + updateUnitLabelVisibility() // Draw the MouseTick & number if showMouseTick && mouseTickY >= 1 && mouseTickY < windowHeight { @@ -172,18 +173,16 @@ class VerticalRule: RuleView { return labelRect } - func drawUnitLabel() { - let attributes = labelAttributes(alignment: .left, foregroundColor: color.ticks) - - let unitlabel = self.getUnitLabel() - let label = NSAttributedString(string: unitlabel, attributes: attributes) - let labelSize = label.size() - let labelRect = unitLabelRect(labelSize: labelSize, rulerSize: bounds.size) + override func updateUnitLabelVisibility() { + guard showMouseTick, + mouseTickY >= 1, + mouseTickY < windowHeight, + let frame = unitLabelFrame else { + setUnitLabelHidden(false) + return + } - label.draw( - with: labelRect, - context: nil - ) + setUnitLabelHidden(frame.minY <= mouseTickY && mouseTickY <= frame.maxY) } func tickY( @@ -256,33 +255,12 @@ class VerticalRule: RuleView { } func unitLabelRect(labelSize: NSSize, rulerSize: NSSize) -> CGRect { - let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) - let labelXSide = geometry.tickSide(for: .vertical).opposite - let labelYSide = geometry.resizeSide(for: .vertical).opposite - let x: CGFloat - let y: CGFloat - - switch labelXSide { - case .left: - x = 8 - case .right: - x = rulerSize.width - labelSize.width - 8 - case .top, .bottom: - assertionFailure("Vertical unit label must be anchored to a horizontal corner side") - x = 8 - } - - switch labelYSide { - case .bottom: - y = 2 - case .top: - y = rulerSize.height - labelSize.height - 2 - case .left, .right: - assertionFailure("Vertical unit label must be anchored to a vertical corner side") - y = 2 - } - - return CGRect(x: x, y: y, width: labelSize.width, height: labelSize.height) + return UnitLabelView.labelFrame( + labelSize: labelSize, + rulerSize: rulerSize, + orientation: .vertical, + zeroCorner: prefs.zeroCorner + ) } diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index 5b95ee8..b854aea 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -295,7 +295,7 @@ final class RulerCoreTests: XCTestCase { ) XCTAssertEqual( rule.unitLabelRect(labelSize: NSSize(width: 12, height: 10), rulerSize: NSSize(width: 300, height: 40)), - CGRect(x: 278, y: 0, width: 12, height: 10) + CGRect(x: 278, y: 8, width: 12, height: 10) ) } } @@ -339,7 +339,7 @@ final class RulerCoreTests: XCTestCase { XCTAssertEqual(rule.mouseNumber(forTickY: 40, rulerHeight: 300), 40) XCTAssertEqual( rule.unitLabelRect(labelSize: NSSize(width: 12, height: 10), rulerSize: NSSize(width: 40, height: 300)), - CGRect(x: 20, y: 2, width: 12, height: 10) + CGRect(x: 20, y: 8, width: 12, height: 10) ) } } @@ -359,8 +359,8 @@ final class RulerCoreTests: XCTestCase { ] = [ (.topLeft, CGRect(x: 10, y: 30, width: 12, height: 10), CGRect(x: 8, y: 288, width: 12, height: 10)), (.topRight, CGRect(x: 278, y: 30, width: 12, height: 10), CGRect(x: 20, y: 288, width: 12, height: 10)), - (.bottomLeft, CGRect(x: 10, y: 0, width: 12, height: 10), CGRect(x: 8, y: 2, width: 12, height: 10)), - (.bottomRight, CGRect(x: 278, y: 0, width: 12, height: 10), CGRect(x: 20, y: 2, width: 12, height: 10)), + (.bottomLeft, CGRect(x: 10, y: 8, width: 12, height: 10), CGRect(x: 8, y: 8, width: 12, height: 10)), + (.bottomRight, CGRect(x: 278, y: 8, width: 12, height: 10), CGRect(x: 20, y: 8, width: 12, height: 10)), ] for testCase in cases { @@ -380,6 +380,61 @@ final class RulerCoreTests: XCTestCase { } } + func testUnitLabelSubviewsFollowNearOppositeCornerAfterZeroCornerChange() { + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft + let horizontalRule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + let verticalRule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) + prefs.zeroCorner = .bottomRight + + horizontalRule.redrawForPreferenceChange() + verticalRule.redrawForPreferenceChange() + + let horizontalLabelSize = unitLabelSize(for: horizontalRule) + let verticalLabelSize = unitLabelSize(for: verticalRule) + + XCTAssertEqual( + horizontalRule.unitLabelFrame, + horizontalRule.unitLabelRect(labelSize: horizontalLabelSize, rulerSize: horizontalRule.bounds.size) + ) + XCTAssertEqual( + verticalRule.unitLabelFrame, + verticalRule.unitLabelRect(labelSize: verticalLabelSize, rulerSize: verticalRule.bounds.size) + ) + } + } + + func testUnitLabelBaselineDoesNotMoveBetweenDescenderAndNonDescenderUnits() throws { + try withRestoredZeroCornerPreference { + let previousUnit = prefs.unit + defer { prefs.unit = previousUnit } + + let horizontalRule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + let verticalRule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) + + for zeroCorner in [ZeroCorner.topLeft, .bottomRight] { + prefs.zeroCorner = zeroCorner + + prefs.unit = .pixels + horizontalRule.redrawForPreferenceChange() + verticalRule.redrawForPreferenceChange() + let pixelHorizontalFrame = try XCTUnwrap(horizontalRule.unitLabelFrame) + let pixelVerticalFrame = try XCTUnwrap(verticalRule.unitLabelFrame) + + prefs.unit = .millimeters + horizontalRule.redrawForPreferenceChange() + verticalRule.redrawForPreferenceChange() + let millimeterHorizontalFrame = try XCTUnwrap(horizontalRule.unitLabelFrame) + let millimeterVerticalFrame = try XCTUnwrap(verticalRule.unitLabelFrame) + + XCTAssertEqual(pixelHorizontalFrame.minY, millimeterHorizontalFrame.minY, accuracy: 0.0001) + XCTAssertEqual(pixelHorizontalFrame.height, millimeterHorizontalFrame.height, accuracy: 0.0001) + XCTAssertEqual(pixelVerticalFrame.minY, millimeterVerticalFrame.minY, accuracy: 0.0001) + XCTAssertEqual(pixelVerticalFrame.height, millimeterVerticalFrame.height, accuracy: 0.0001) + } + } + } + func testMouseNumberLabelsRespectUnitsAfterZeroCornerFlip() { withRestoredZeroCornerPreference { let previousUnit = prefs.unit @@ -1543,6 +1598,15 @@ private final class TestableFlipAppDelegate: AppDelegate { } } +private func unitLabelSize(for rule: RuleView) -> NSSize { + let label = NSAttributedString( + string: rule.getUnitLabel(), + attributes: rule.labelAttributes(alignment: .left, foregroundColor: rule.color.ticks) + ) + + return UnitLabelView.labelSize(for: label) +} + private func assertColor( _ actualColor: NSColor, equals expectedColor: NSColor, From cf0702c2555dff71cdafe22661aa5078ab5ec853 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 14:03:58 -0400 Subject: [PATCH 12/38] Simplify unit label positioning and add insets Replace the orientation-heavy coordinate logic with a simpler corner-based switch and explicit insets. Introduces top/bottom/left/right inset constants and computes x/y from placement.xSide and placement.ySide (four corner cases), removes redundant orientation branches, and consolidates the assertion/fallback behavior. --- Free Ruler/UnitLabelView.swift | 53 ++++++++++++++-------------------- 1 file changed, 21 insertions(+), 32 deletions(-) diff --git a/Free Ruler/UnitLabelView.swift b/Free Ruler/UnitLabelView.swift index 7f1be36..ef52b4e 100644 --- a/Free Ruler/UnitLabelView.swift +++ b/Free Ruler/UnitLabelView.swift @@ -55,41 +55,30 @@ final class UnitLabelView: NSView { ) -> NSRect { let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) .unitLabelPlacement(for: orientation) + let topInset: CGFloat = 2 + let bottomInset: CGFloat = 10 + let leftInset: CGFloat = 7 + let rightInset: CGFloat = 7 let x: CGFloat let y: CGFloat - switch (orientation, placement.xSide) { - case (.horizontal, .left): - x = 10 - case (.horizontal, .right): - x = rulerSize.width - labelSize.width - 10 - case (.vertical, .left): - x = 8 - case (.vertical, .right): - x = rulerSize.width - labelSize.width - 8 - case (.horizontal, .top), (.horizontal, .bottom): - assertionFailure("Horizontal unit label must be anchored to a horizontal corner side") - x = 10 - case (.vertical, .top), (.vertical, .bottom): - assertionFailure("Vertical unit label must be anchored to a horizontal corner side") - x = 8 - } - - switch (orientation, placement.ySide) { - case (.horizontal, .top): - y = rulerSize.height - labelSize.height - case (.horizontal, .bottom): - y = 8 - case (.vertical, .top): - y = rulerSize.height - labelSize.height - 2 - case (.vertical, .bottom): - y = 8 - case (.horizontal, .left), (.horizontal, .right): - assertionFailure("Horizontal unit label must be anchored to a vertical corner side") - y = rulerSize.height - labelSize.height - case (.vertical, .left), (.vertical, .right): - assertionFailure("Vertical unit label must be anchored to a vertical corner side") - y = 8 + switch (placement.xSide, placement.ySide) { + case (.left, .top): + x = leftInset + y = rulerSize.height - labelSize.height - topInset + case (.right, .top): + x = rulerSize.width - labelSize.width - rightInset + y = rulerSize.height - labelSize.height - topInset + case (.left, .bottom): + x = leftInset + y = bottomInset + case (.right, .bottom): + x = rulerSize.width - labelSize.width - rightInset + y = bottomInset + case (_, _): + assertionFailure("Unit label must be anchored to left/right and top/bottom sides") + x = leftInset + y = topInset } return NSRect(x: x, y: y, width: labelSize.width, height: labelSize.height) From 51ac56cdbe18dada56477162046661d6496c8a09 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 14:38:03 -0400 Subject: [PATCH 13/38] Adjust unit label insets and update tests MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tweak UnitLabelView insets (bottom: 10→9, left/right: 7→8) to correct unit label positioning. Update RulerCoreTests expected CGRects to match the adjusted layout. Files changed: Free Ruler/UnitLabelView.swift and FreeRulerTests/RulerCoreTests.swift. --- Free Ruler/UnitLabelView.swift | 6 +++--- FreeRulerTests/RulerCoreTests.swift | 12 ++++++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Free Ruler/UnitLabelView.swift b/Free Ruler/UnitLabelView.swift index ef52b4e..9c56365 100644 --- a/Free Ruler/UnitLabelView.swift +++ b/Free Ruler/UnitLabelView.swift @@ -56,9 +56,9 @@ final class UnitLabelView: NSView { let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) .unitLabelPlacement(for: orientation) let topInset: CGFloat = 2 - let bottomInset: CGFloat = 10 - let leftInset: CGFloat = 7 - let rightInset: CGFloat = 7 + let bottomInset: CGFloat = 9 + let leftInset: CGFloat = 8 + let rightInset: CGFloat = 8 let x: CGFloat let y: CGFloat diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index b854aea..fa30295 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -295,7 +295,7 @@ final class RulerCoreTests: XCTestCase { ) XCTAssertEqual( rule.unitLabelRect(labelSize: NSSize(width: 12, height: 10), rulerSize: NSSize(width: 300, height: 40)), - CGRect(x: 278, y: 8, width: 12, height: 10) + CGRect(x: 280, y: 9, width: 12, height: 10) ) } } @@ -339,7 +339,7 @@ final class RulerCoreTests: XCTestCase { XCTAssertEqual(rule.mouseNumber(forTickY: 40, rulerHeight: 300), 40) XCTAssertEqual( rule.unitLabelRect(labelSize: NSSize(width: 12, height: 10), rulerSize: NSSize(width: 40, height: 300)), - CGRect(x: 20, y: 8, width: 12, height: 10) + CGRect(x: 20, y: 9, width: 12, height: 10) ) } } @@ -357,10 +357,10 @@ final class RulerCoreTests: XCTestCase { verticalUnitRect: CGRect ) ] = [ - (.topLeft, CGRect(x: 10, y: 30, width: 12, height: 10), CGRect(x: 8, y: 288, width: 12, height: 10)), - (.topRight, CGRect(x: 278, y: 30, width: 12, height: 10), CGRect(x: 20, y: 288, width: 12, height: 10)), - (.bottomLeft, CGRect(x: 10, y: 8, width: 12, height: 10), CGRect(x: 8, y: 8, width: 12, height: 10)), - (.bottomRight, CGRect(x: 278, y: 8, width: 12, height: 10), CGRect(x: 20, y: 8, width: 12, height: 10)), + (.topLeft, CGRect(x: 8, y: 28, width: 12, height: 10), CGRect(x: 8, y: 288, width: 12, height: 10)), + (.topRight, CGRect(x: 280, y: 28, width: 12, height: 10), CGRect(x: 20, y: 288, width: 12, height: 10)), + (.bottomLeft, CGRect(x: 8, y: 9, width: 12, height: 10), CGRect(x: 8, y: 9, width: 12, height: 10)), + (.bottomRight, CGRect(x: 280, y: 9, width: 12, height: 10), CGRect(x: 20, y: 9, width: 12, height: 10)), ] for testCase in cases { From 47d304617018be6cbf978d7fd77888475fd1b463 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 15:02:22 -0400 Subject: [PATCH 14/38] Refactor mouse tick layout & handle visibility Introduce MouseTickLabelLayout to centralize mouse-tick label placement logic for both horizontal and vertical rulers, replacing per-rule mouseNumberLabelRect implementations. Add resize-handle obscuring support via setResizeHandleObscured and per-rule updateResizeHandleVisibility overrides so the resize handle fades when a mouse tick overlaps it; wire visibility updates into layout/preference changes and mouse-tick/showMouseTick setters. Update tests to reflect the new layout API and visual-obscuring behavior and remove the older mouseTickLabelResizeHandleSpacing constant. --- Free Ruler/HorizontalRule.swift | 55 ++++------ Free Ruler/RuleView.swift | 148 ++++++++++++++++++++++++- Free Ruler/VerticalRule.swift | 43 ++++---- FreeRulerTests/RulerCoreTests.swift | 163 ++++++++++++++++++++-------- 4 files changed, 306 insertions(+), 103 deletions(-) diff --git a/Free Ruler/HorizontalRule.swift b/Free Ruler/HorizontalRule.swift index c731346..a659152 100644 --- a/Free Ruler/HorizontalRule.swift +++ b/Free Ruler/HorizontalRule.swift @@ -19,6 +19,7 @@ class HorizontalRule: RuleView { var mouseTickX: CGFloat = 0 { didSet { if mouseTickX != oldValue { + updateResizeHandleVisibility() updateUnitLabelVisibility() needsDisplay = true } @@ -138,7 +139,7 @@ class HorizontalRule: RuleView { let labelSize = label.size() let labelRect = mouseNumberLabelRect( - number: mouseTickX, + tickX: mouseTickX, labelSize: labelSize, rulerSize: CGSize(width: width, height: height) ) @@ -149,39 +150,13 @@ class HorizontalRule: RuleView { ) } - func mouseNumberLabelRect(number: CGFloat, labelSize: CGSize, rulerSize: CGSize) -> CGRect { - let labelOffset: CGFloat = 5 - let tickSide = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner).tickSide(for: .horizontal) - - let rightPosition = number + labelOffset - let leftPosition = number - labelOffset - labelSize.width - var minLabelLeft = labelOffset - var maxLabelRight = rulerSize.width - labelOffset - - if let resizeHandleExclusionFrame = resizeHandleExclusionFrame { - if resizeHandleExclusionFrame.midX < rulerSize.width / 2 { - minLabelLeft = max( - minLabelLeft, - resizeHandleExclusionFrame.maxX + mouseTickLabelResizeHandleSpacing - ) - } else { - maxLabelRight = min( - maxLabelRight, - resizeHandleExclusionFrame.minX - mouseTickLabelResizeHandleSpacing - ) - } - } - - let pinnedRightPosition = maxLabelRight - labelSize.width - let rightLabelX = max(min(rightPosition, pinnedRightPosition), minLabelLeft) - let leftLabelX = max(min(leftPosition, pinnedRightPosition), minLabelLeft) - let labelX = number < rightLabelX ? rightLabelX : leftLabelX - - return CGRect( - x: labelX, - y: tickSide == .bottom ? rulerSize.height - labelSize.height : 0, - width: labelSize.width, - height: labelSize.height + func mouseNumberLabelRect(tickX: CGFloat, labelSize: CGSize, rulerSize: CGSize) -> CGRect { + return MouseTickLabelLayout.labelFrame( + labelSize: labelSize, + rulerSize: rulerSize, + orientation: .horizontal, + zeroCorner: prefs.zeroCorner, + tickPosition: tickX ) } @@ -197,6 +172,18 @@ class HorizontalRule: RuleView { setUnitLabelHidden(frame.minX <= mouseTickX && mouseTickX <= frame.maxX) } + override func updateResizeHandleVisibility() { + guard showMouseTick, + mouseTickX > 0, + mouseTickX < bounds.width, + let frame = resizeHandleExclusionFrame else { + setResizeHandleObscured(false) + return + } + + setResizeHandleObscured(frame.minX <= mouseTickX && mouseTickX <= frame.maxX) + } + func tickX( forOffset offset: CGFloat, rulerWidth: CGFloat, diff --git a/Free Ruler/RuleView.swift b/Free Ruler/RuleView.swift index dffff20..6ded60b 100644 --- a/Free Ruler/RuleView.swift +++ b/Free Ruler/RuleView.swift @@ -45,6 +45,142 @@ struct RulerColors { } } +struct MouseTickLabelLayout { + private struct Offsets { + let topInset: CGFloat + let bottomInset: CGFloat + let leftInset: CGFloat + let rightInset: CGFloat + let tickGap: CGFloat + } + + static func labelFrame( + labelSize: NSSize, + rulerSize: NSSize, + orientation: Orientation, + zeroCorner: ZeroCorner, + tickPosition: CGFloat + ) -> NSRect { + let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) + .unitLabelPlacement(for: orientation) + let offsets = offsets(for: orientation, placement: placement) + let x: CGFloat + let y: CGFloat + + switch (orientation, placement.xSide, placement.ySide) { + case (.horizontal, .left, .top), (.horizontal, .right, .top): + x = horizontalX( + forTickX: tickPosition, + labelSize: labelSize, + rulerSize: rulerSize, + offsets: offsets + ) + y = rulerSize.height - labelSize.height - offsets.topInset + case (.horizontal, .left, .bottom), (.horizontal, .right, .bottom): + x = horizontalX( + forTickX: tickPosition, + labelSize: labelSize, + rulerSize: rulerSize, + offsets: offsets + ) + y = offsets.bottomInset + case (.vertical, .left, .top), (.vertical, .left, .bottom): + x = offsets.leftInset + y = verticalY( + forTickY: tickPosition, + labelSize: labelSize, + rulerSize: rulerSize, + offsets: offsets + ) + case (.vertical, .right, .top), (.vertical, .right, .bottom): + x = rulerSize.width - labelSize.width - offsets.rightInset + y = verticalY( + forTickY: tickPosition, + labelSize: labelSize, + rulerSize: rulerSize, + offsets: offsets + ) + case (_, _, _): + assertionFailure("Mouse tick label must be anchored to left/right and top/bottom sides") + x = offsets.leftInset + y = offsets.bottomInset + } + + return NSRect(x: x, y: y, width: labelSize.width, height: labelSize.height) + } + + private static func offsets( + for orientation: Orientation, + placement: RulerCornerPlacement + ) -> Offsets { + switch (orientation, placement.xSide, placement.ySide) { + case (.horizontal, .left, .top): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 5, rightInset: 5, tickGap: 5) + case (.horizontal, .right, .top): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 5, rightInset: 5, tickGap: 5) + case (.horizontal, .left, .bottom): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 5, rightInset: 5, tickGap: 5) + case (.horizontal, .right, .bottom): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 5, rightInset: 5, tickGap: 5) + case (.vertical, .left, .top): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 7, rightInset: 7, tickGap: 7) + case (.vertical, .right, .top): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 7, rightInset: 7, tickGap: 7) + case (.vertical, .left, .bottom): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 7, rightInset: 7, tickGap: 7) + case (.vertical, .right, .bottom): + return Offsets(topInset: 2, bottomInset: 2, leftInset: 7, rightInset: 7, tickGap: 7) + case (_, _, _): + assertionFailure("Mouse tick label offsets require left/right and top/bottom placement") + return Offsets(topInset: 2, bottomInset: 2, leftInset: 5, rightInset: 5, tickGap: 5) + } + } + + private static func horizontalX( + forTickX tickX: CGFloat, + labelSize: NSSize, + rulerSize: NSSize, + offsets: Offsets + ) -> CGFloat { + let minLabelX = offsets.leftInset + let maxLabelX = rulerSize.width - labelSize.width - offsets.rightInset + + let rightX = tickX + offsets.tickGap + let leftX = tickX - offsets.tickGap - labelSize.width + let preferredX = rightX <= maxLabelX ? rightX : leftX + + return clamp(preferredX, lowerBound: minLabelX, upperBound: maxLabelX) + } + + private static func verticalY( + forTickY tickY: CGFloat, + labelSize: NSSize, + rulerSize: NSSize, + offsets: Offsets + ) -> CGFloat { + let minLabelY = offsets.bottomInset + let maxLabelY = rulerSize.height - labelSize.height - offsets.topInset + + let belowTickY = tickY - offsets.tickGap - labelSize.height + let aboveTickY = tickY + offsets.tickGap + let preferredY = belowTickY >= minLabelY ? belowTickY : aboveTickY + + return clamp(preferredY, lowerBound: minLabelY, upperBound: maxLabelY) + } + + private static func clamp( + _ value: CGFloat, + lowerBound: CGFloat, + upperBound: CGFloat + ) -> CGFloat { + guard lowerBound <= upperBound else { + return lowerBound + } + + return min(max(value, lowerBound), upperBound) + } +} + class RuleView: NSView { var color = RulerColors() { @@ -54,7 +190,6 @@ class RuleView: NSView { updateUnitLabelFrame() } } - let mouseTickLabelResizeHandleSpacing: CGFloat = 8 private var resizeHandleView: ResizeHandleView? private var unitLabelView: UnitLabelView? @@ -108,6 +243,7 @@ class RuleView: NSView { super.layout() updateResizeHandleFrame() updateUnitLabelFrame() + updateResizeHandleVisibility() updateUnitLabelVisibility() } @@ -136,6 +272,7 @@ class RuleView: NSView { func redrawForPreferenceChange() { updateResizeHandleFrame() updateUnitLabelFrame() + updateResizeHandleVisibility() updateUnitLabelVisibility() setNeedsDisplay(visibleRect) resizeHandleView?.needsDisplay = true @@ -153,6 +290,7 @@ class RuleView: NSView { var showMouseTick: Bool = true { didSet { if showMouseTick != oldValue { + updateResizeHandleVisibility() updateUnitLabelVisibility() needsDisplay = true } @@ -223,6 +361,14 @@ class RuleView: NSView { unitLabelView?.isHidden = isHidden } + func setResizeHandleObscured(_ isObscured: Bool) { + resizeHandleView?.alphaValue = isObscured ? 0 : 1 + } + + func updateResizeHandleVisibility() { + setResizeHandleObscured(false) + } + func updateUnitLabelVisibility() { setUnitLabelHidden(false) } diff --git a/Free Ruler/VerticalRule.swift b/Free Ruler/VerticalRule.swift index 9c71293..db4e88b 100644 --- a/Free Ruler/VerticalRule.swift +++ b/Free Ruler/VerticalRule.swift @@ -19,6 +19,7 @@ class VerticalRule: RuleView { var mouseTickY: CGFloat = 0 { didSet { if mouseTickY != oldValue { + updateResizeHandleVisibility() updateUnitLabelVisibility() needsDisplay = true } @@ -139,9 +140,9 @@ class VerticalRule: RuleView { let labelSize = label.size() let labelRect = mouseNumberLabelRect( - number: height - mouseTickY, + tickY: mouseTickY, labelSize: labelSize, - rulerHeight: height + rulerSize: CGSize(width: self.frame.width, height: height) ) color.fill.setFill() labelRect.fill() @@ -153,24 +154,14 @@ class VerticalRule: RuleView { ) } - func mouseNumberLabelRect(number: CGFloat, labelSize: CGSize, rulerHeight: CGFloat) -> CGRect { - let labelOffset: CGFloat = 2 - let tickSide = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner).tickSide(for: .vertical) - - // Offset the bottom position until text can be centered vertically in the label rect. - let bottomPosition = number + 7 - let topPosition = number - labelOffset - labelSize.height - let enoughRoomToTheBottom = bottomPosition + labelSize.height < rulerHeight - labelOffset - let labelY = enoughRoomToTheBottom ? bottomPosition : topPosition - let labelX: CGFloat = tickSide == .right ? 7 : 11 - var labelRect = CGRect(x: labelX, y: rulerHeight - (labelY + labelSize.height), width: 22, height: 15) - - if let resizeHandleExclusionFrame = resizeHandleExclusionFrame { - let minLabelBottom = resizeHandleExclusionFrame.maxY + mouseTickLabelResizeHandleSpacing - labelRect.origin.y = max(labelRect.origin.y, minLabelBottom) - } - - return labelRect + func mouseNumberLabelRect(tickY: CGFloat, labelSize: CGSize, rulerSize: CGSize) -> CGRect { + return MouseTickLabelLayout.labelFrame( + labelSize: labelSize, + rulerSize: rulerSize, + orientation: .vertical, + zeroCorner: prefs.zeroCorner, + tickPosition: tickY + ) } override func updateUnitLabelVisibility() { @@ -185,6 +176,18 @@ class VerticalRule: RuleView { setUnitLabelHidden(frame.minY <= mouseTickY && mouseTickY <= frame.maxY) } + override func updateResizeHandleVisibility() { + guard showMouseTick, + mouseTickY >= 1, + mouseTickY < bounds.height, + let frame = resizeHandleExclusionFrame else { + setResizeHandleObscured(false) + return + } + + setResizeHandleObscured(frame.minY <= mouseTickY && mouseTickY <= frame.maxY) + } + func tickY( forOffset offset: CGFloat, rulerHeight: CGFloat, diff --git a/FreeRulerTests/RulerCoreTests.swift b/FreeRulerTests/RulerCoreTests.swift index fa30295..5373000 100644 --- a/FreeRulerTests/RulerCoreTests.swift +++ b/FreeRulerTests/RulerCoreTests.swift @@ -279,20 +279,8 @@ final class RulerCoreTests: XCTestCase { withRestoredZeroCornerPreference { prefs.zeroCorner = .bottomRight let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) - guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { - return XCTFail("Expected horizontal ruler to install a resize handle") - } XCTAssertEqual(rule.mouseNumber(forTickX: 260, rulerWidth: 300), 40) - XCTAssertEqual( - rule.mouseNumberLabelRect( - number: resizeHandleFrame.maxX - 1, - labelSize: NSSize(width: 30, height: 10), - rulerSize: rule.bounds.size - ).minX, - resizeHandleFrame.maxX + rule.mouseTickLabelResizeHandleSpacing, - accuracy: 0.0001 - ) XCTAssertEqual( rule.unitLabelRect(labelSize: NSSize(width: 12, height: 10), rulerSize: NSSize(width: 300, height: 40)), CGRect(x: 280, y: 9, width: 12, height: 10) @@ -344,6 +332,83 @@ final class RulerCoreTests: XCTestCase { } } + func testMouseNumberLabelFramesFollowZeroCornerPlacement() { + withRestoredZeroCornerPreference { + let horizontalRule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + let verticalRule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) + let labelSize = NSSize(width: 20, height: 10) + let cases: [ + ( + zeroCorner: ZeroCorner, + horizontalRect: CGRect, + verticalRect: CGRect + ) + ] = [ + (.topLeft, CGRect(x: 155, y: 28, width: 20, height: 10), CGRect(x: 7, y: 133, width: 20, height: 10)), + (.topRight, CGRect(x: 155, y: 28, width: 20, height: 10), CGRect(x: 13, y: 133, width: 20, height: 10)), + (.bottomLeft, CGRect(x: 155, y: 2, width: 20, height: 10), CGRect(x: 7, y: 133, width: 20, height: 10)), + (.bottomRight, CGRect(x: 155, y: 2, width: 20, height: 10), CGRect(x: 13, y: 133, width: 20, height: 10)), + ] + + for testCase in cases { + prefs.zeroCorner = testCase.zeroCorner + horizontalRule.redrawForPreferenceChange() + verticalRule.redrawForPreferenceChange() + + XCTAssertEqual( + horizontalRule.mouseNumberLabelRect( + tickX: 150, + labelSize: labelSize, + rulerSize: horizontalRule.bounds.size + ), + testCase.horizontalRect, + "\(testCase.zeroCorner) horizontal mouse number label" + ) + XCTAssertEqual( + verticalRule.mouseNumberLabelRect( + tickY: 150, + labelSize: labelSize, + rulerSize: verticalRule.bounds.size + ), + testCase.verticalRect, + "\(testCase.zeroCorner) vertical mouse number label" + ) + } + } + } + + func testResizeHandlesAreVisuallyObscuredWhenMouseTickOverlaps() { + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft + let horizontalRule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) + let verticalRule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) + guard let horizontalHandle = horizontalRule.subviews.first(where: { $0 is ResizeHandleView }) as? ResizeHandleView else { + return XCTFail("Expected horizontal ruler to install a resize handle") + } + guard let verticalHandle = verticalRule.subviews.first(where: { $0 is ResizeHandleView }) as? ResizeHandleView else { + return XCTFail("Expected vertical ruler to install a resize handle") + } + + horizontalRule.mouseTickX = horizontalHandle.frame.midX + XCTAssertFalse(horizontalHandle.isHidden) + XCTAssertEqual(horizontalHandle.alphaValue, 0) + + horizontalRule.mouseTickX = horizontalHandle.frame.minX - 1 + XCTAssertEqual(horizontalHandle.alphaValue, 1) + + verticalRule.mouseTickY = verticalHandle.frame.midY + XCTAssertFalse(verticalHandle.isHidden) + XCTAssertEqual(verticalHandle.alphaValue, 0) + + verticalRule.mouseTickY = verticalHandle.frame.maxY + 1 + XCTAssertEqual(verticalHandle.alphaValue, 1) + + verticalRule.mouseTickY = verticalHandle.frame.midY + verticalRule.showMouseTick = false + XCTAssertEqual(verticalHandle.alphaValue, 1) + } + } + func testUnitLabelsFollowNearOppositeCornerFromZeroCorner() { withRestoredZeroCornerPreference { let horizontalRule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) @@ -975,81 +1040,83 @@ final class RulerCoreTests: XCTestCase { } } - func testHorizontalMouseTickLabelStopsBeforeResizeHandle() { + func testHorizontalMouseTickLabelFlipsBeforeRulerEnd() { withRestoredZeroCornerPreference { prefs.zeroCorner = .topLeft let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) - guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { - return XCTFail("Expected horizontal ruler to install a resize handle") - } let labelSize = CGSize(width: 30, height: 10) let rulerSize = rule.bounds.size - let expectedMaxLabelRight = resizeHandleFrame.minX - rule.mouseTickLabelResizeHandleSpacing - let pinnedLabelX = expectedMaxLabelRight - labelSize.width - let mouseTickBeforePinnedLabel = pinnedLabelX - 2 + let mouseTickNearRightEdge: CGFloat = 290 let labelRect = rule.mouseNumberLabelRect( - number: mouseTickBeforePinnedLabel, + tickX: mouseTickNearRightEdge, labelSize: labelSize, rulerSize: rulerSize ) - XCTAssertGreaterThan(labelRect.minX, mouseTickBeforePinnedLabel) + XCTAssertLessThan(labelRect.maxX, mouseTickNearRightEdge) XCTAssertEqual( labelRect.maxX, - expectedMaxLabelRight, + 285, accuracy: 0.0001 ) } } - func testHorizontalMouseTickLabelFlipsBeforeCollidingWithMouseTick() { + func testHorizontalMouseTickLabelClampsToRulerStart() { withRestoredZeroCornerPreference { prefs.zeroCorner = .topLeft let rule = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 300, height: Ruler.thickness)) - guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { - return XCTFail("Expected horizontal ruler to install a resize handle") - } let labelSize = CGSize(width: 30, height: 10) let rulerSize = rule.bounds.size - let expectedMaxLabelRight = resizeHandleFrame.minX - rule.mouseTickLabelResizeHandleSpacing - let mouseTickInsideResizeHandle = resizeHandleFrame.minX + 1 + let mouseTickNearLeftEdge: CGFloat = -10 let labelRect = rule.mouseNumberLabelRect( - number: mouseTickInsideResizeHandle, + tickX: mouseTickNearLeftEdge, labelSize: labelSize, rulerSize: rulerSize ) - XCTAssertGreaterThan(mouseTickInsideResizeHandle, resizeHandleFrame.minX) - XCTAssertLessThan(labelRect.maxX, mouseTickInsideResizeHandle) XCTAssertEqual( - labelRect.maxX, - expectedMaxLabelRight, + labelRect.minX, + 5, accuracy: 0.0001 ) } } - func testVerticalMouseTickLabelStopsBeforeResizeHandle() { - let rule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) - guard let resizeHandleFrame = rule.resizeHandleExclusionFrame else { - return XCTFail("Expected vertical ruler to install a resize handle") - } + func testVerticalMouseTickLabelStaysWithinRulerEnds() { + withRestoredZeroCornerPreference { + prefs.zeroCorner = .topLeft - let labelRect = rule.mouseNumberLabelRect( - number: 290, - labelSize: CGSize(width: 22, height: 10), - rulerHeight: 300 - ) + let rule = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 300)) + let labelSize = CGSize(width: 20, height: 10) + let rulerSize = rule.bounds.size - XCTAssertEqual( - labelRect.minY, - resizeHandleFrame.maxY + rule.mouseTickLabelResizeHandleSpacing, - accuracy: 0.0001 - ) + let labelNearBottom = rule.mouseNumberLabelRect( + tickY: 1, + labelSize: labelSize, + rulerSize: rulerSize + ) + XCTAssertEqual( + labelNearBottom.minY, + 8, + accuracy: 0.0001 + ) + + let labelNearTop = rule.mouseNumberLabelRect( + tickY: 299, + labelSize: labelSize, + rulerSize: rulerSize + ) + XCTAssertEqual( + labelNearTop.minY, + 282, + accuracy: 0.0001 + ) + } } func testResizeHandleDisablesWindowBackgroundDraggingDuringResizeDrag() { From 569240102e644e3229ed513fc2f3ca25084b2d36 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 15:14:50 -0400 Subject: [PATCH 15/38] Add mouse tick label preview views Introduce debug-only preview tooling to visualize mouse tick label layout and offsets. Adds MouseTickLabelLayoutPreview (NSViewRepresentable) and MouseTickLabelLayoutPreviewView to draw ruler ticks, mouse tick line/label, unit label, and resize handle; plus SwiftUI helpers MouseTickLabelOffsetPreview and MouseTickLabelCornerPreview to show combinations of zero corners and orientations. Update RuleView_Previews to group horizontal/vertical ruler previews and include the new Mouse Tick Labels preview. --- Free Ruler/RuleView.swift | 544 +++++++++++++++++++++++++++++++++++++- 1 file changed, 536 insertions(+), 8 deletions(-) diff --git a/Free Ruler/RuleView.swift b/Free Ruler/RuleView.swift index 6ded60b..2740284 100644 --- a/Free Ruler/RuleView.swift +++ b/Free Ruler/RuleView.swift @@ -456,6 +456,528 @@ extension NSColor { } #if DEBUG +private struct MouseTickLabelLayoutPreview: NSViewRepresentable { + let orientation: Orientation + let zeroCorner: ZeroCorner + let mouseX: CGFloat + let mouseY: CGFloat + + func makeNSView(context: Context) -> MouseTickLabelLayoutPreviewView { + return MouseTickLabelLayoutPreviewView( + orientation: orientation, + zeroCorner: zeroCorner, + mouseX: mouseX, + mouseY: mouseY + ) + } + + func updateNSView(_ view: MouseTickLabelLayoutPreviewView, context: Context) { + view.orientation = orientation + view.zeroCorner = zeroCorner + view.mouseX = mouseX + view.mouseY = mouseY + } +} + +private final class MouseTickLabelLayoutPreviewView: NSView { + var orientation: Orientation { + didSet { needsDisplay = true } + } + var zeroCorner: ZeroCorner { + didSet { needsDisplay = true } + } + var mouseX: CGFloat { + didSet { needsDisplay = true } + } + var mouseY: CGFloat { + didSet { needsDisplay = true } + } + + private let rulerFill = NSColor(calibratedRed: 0.94, green: 0.82, blue: 0.54, alpha: 1) + private let tickColor = NSColor(calibratedRed: 0.41, green: 0.31, blue: 0.08, alpha: 1) + private let mouseTickColor = NSColor(calibratedRed: 0.14, green: 0.12, blue: 0.06, alpha: 0.75) + private let resizeHandleLength: CGFloat = 12 + private let resizeHandleLineCount = 4 + private let resizeHandleLineSpacing: CGFloat = 3 + private let resizeHandleBackgroundPadding: CGFloat = 1.5 + private let horizontalResizeHandleXOffset: CGFloat = 5 + private let horizontalResizeHandleYOffset: CGFloat = 4 + private let verticalResizeHandleXOffset: CGFloat = 4 + private let verticalResizeHandleYOffset: CGFloat = 5 + + init(orientation: Orientation, zeroCorner: ZeroCorner, mouseX: CGFloat, mouseY: CGFloat) { + self.orientation = orientation + self.zeroCorner = zeroCorner + self.mouseX = mouseX + self.mouseY = mouseY + super.init(frame: .zero) + + setAccessibilityElement(false) + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented. Use init(orientation:zeroCorner:mouseX:mouseY:)") + } + + override func draw(_ dirtyRect: NSRect) { + super.draw(dirtyRect) + + rulerFill.setFill() + bounds.fill() + + drawRulerTicks() + drawBorder() + drawTickSide() + drawUnitLabel() + drawResizeHandle() + drawMouseTick() + } + + private func drawBorder() { + tickColor.withAlphaComponent(0.45).setStroke() + let border = NSBezierPath(rect: bounds.insetBy(dx: 0.5, dy: 0.5)) + border.lineWidth = 1 + border.stroke() + } + + private func drawTickSide() { + let side = ZeroCornerGeometry(zeroCorner: zeroCorner) + .tickSide(for: orientation) + let path = NSBezierPath() + + switch side { + case .top: + path.move(to: CGPoint(x: bounds.minX, y: bounds.maxY - 0.5)) + path.line(to: CGPoint(x: bounds.maxX, y: bounds.maxY - 0.5)) + case .right: + path.move(to: CGPoint(x: bounds.maxX - 0.5, y: bounds.minY)) + path.line(to: CGPoint(x: bounds.maxX - 0.5, y: bounds.maxY)) + case .bottom: + path.move(to: CGPoint(x: bounds.minX, y: bounds.minY + 0.5)) + path.line(to: CGPoint(x: bounds.maxX, y: bounds.minY + 0.5)) + case .left: + path.move(to: CGPoint(x: bounds.minX + 0.5, y: bounds.minY)) + path.line(to: CGPoint(x: bounds.minX + 0.5, y: bounds.maxY)) + } + + tickColor.setStroke() + path.lineWidth = 2 + path.stroke() + } + + private func drawRulerTicks() { + let geometry = ZeroCornerGeometry(zeroCorner: zeroCorner) + let tickSide = geometry.tickSide(for: orientation) + let growthDirection = geometry.growthDirection(for: orientation) + let rulerLength = orientation == .horizontal ? bounds.width : bounds.height + let path = NSBezierPath() + var offset: CGFloat = 2 + + while offset <= rulerLength - 2 { + let roundedOffset = Int(offset) + let tickLength: CGFloat + + if roundedOffset.isMultiple(of: 50) { + tickLength = 10 + } else if roundedOffset.isMultiple(of: 10) { + tickLength = 8 + } else if roundedOffset.isMultiple(of: 2) { + tickLength = 5 + } else { + offset += 1 + continue + } + + let position: CGFloat + switch growthDirection { + case .positive: + position = offset + case .negative: + position = rulerLength - offset + } + + appendTick(to: path, position: position, length: tickLength, tickSide: tickSide) + offset += 1 + } + + tickColor.withAlphaComponent(0.82).setStroke() + path.lineWidth = 1 + path.stroke() + } + + private func appendTick( + to path: NSBezierPath, + position: CGFloat, + length: CGFloat, + tickSide: RulerSide + ) { + switch (orientation, tickSide) { + case (.horizontal, .bottom): + path.move(to: CGPoint(x: position + 0.5, y: bounds.minY + 1)) + path.line(to: CGPoint(x: position + 0.5, y: bounds.minY + length)) + case (.horizontal, .top): + path.move(to: CGPoint(x: position + 0.5, y: bounds.maxY - 1)) + path.line(to: CGPoint(x: position + 0.5, y: bounds.maxY - length)) + case (.vertical, .right): + path.move(to: CGPoint(x: bounds.maxX - 1, y: position - 0.5)) + path.line(to: CGPoint(x: bounds.maxX - length, y: position - 0.5)) + case (.vertical, .left): + path.move(to: CGPoint(x: bounds.minX + 1, y: position - 0.5)) + path.line(to: CGPoint(x: bounds.minX + length, y: position - 0.5)) + case (_, _): + return + } + } + + private func drawUnitLabel() { + let label = NSAttributedString( + string: "px", + attributes: [ + .font: NSFont.systemFont(ofSize: 10, weight: .semibold), + .foregroundColor: tickColor, + ] + ) + let labelFrame = UnitLabelView.labelFrame( + labelSize: UnitLabelView.labelSize(for: label), + rulerSize: bounds.size, + orientation: orientation, + zeroCorner: zeroCorner + ) + + label.draw(with: labelFrame, context: nil) + } + + private func drawResizeHandle() { + let frame = resizeHandleFrame() + let background = NSBezierPath( + roundedRect: frame, + xRadius: 2, + yRadius: 2 + ) + + rulerFill.setFill() + background.fill() + + switch orientation { + case .horizontal: + drawHorizontalResizeHandleLines(in: frame) + case .vertical: + drawVerticalResizeHandleLines(in: frame) + } + } + + private func resizeHandleFrame() -> NSRect { + let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) + .resizeHandlePlacement(for: orientation) + + switch orientation { + case .horizontal: + let firstX: CGFloat + let bottomY: CGFloat + + switch placement.xSide { + case .left: + firstX = bounds.minX + horizontalResizeHandleXOffset + 1 + case .right: + firstX = bounds.maxX + - horizontalResizeHandleXOffset + - CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + - 1 + case .top, .bottom: + assertionFailure("Horizontal preview resize handle must be placed on a horizontal side") + firstX = bounds.maxX + - horizontalResizeHandleXOffset + - CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + - 1 + } + + switch placement.ySide { + case .top: + bottomY = bounds.maxY - horizontalResizeHandleYOffset - resizeHandleLength + case .bottom: + bottomY = bounds.minY + horizontalResizeHandleYOffset + case .left, .right: + assertionFailure("Horizontal preview resize handle must be placed on a vertical side") + bottomY = bounds.maxY - horizontalResizeHandleYOffset - resizeHandleLength + } + + return NSRect( + x: firstX - resizeHandleBackgroundPadding, + y: bottomY - resizeHandleBackgroundPadding, + width: CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + 2 + (resizeHandleBackgroundPadding * 2), + height: resizeHandleLength + (resizeHandleBackgroundPadding * 2) + ) + case .vertical: + let leftX: CGFloat + let firstY: CGFloat + + switch placement.xSide { + case .left: + leftX = bounds.minX + verticalResizeHandleXOffset + case .right: + leftX = bounds.maxX - verticalResizeHandleXOffset - resizeHandleLength + case .top, .bottom: + assertionFailure("Vertical preview resize handle must be placed on a horizontal side") + leftX = bounds.minX + verticalResizeHandleXOffset + } + + switch placement.ySide { + case .top: + firstY = bounds.maxY + - verticalResizeHandleYOffset + - CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + - 1 + case .bottom: + firstY = bounds.minY + verticalResizeHandleYOffset + 1 + case .left, .right: + assertionFailure("Vertical preview resize handle must be placed on a vertical side") + firstY = bounds.minY + verticalResizeHandleYOffset + 1 + } + + return NSRect( + x: leftX - resizeHandleBackgroundPadding, + y: firstY - 1 - resizeHandleBackgroundPadding, + width: resizeHandleLength + (resizeHandleBackgroundPadding * 2), + height: CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + 2 + (resizeHandleBackgroundPadding * 2) + ) + } + } + + private func drawHorizontalResizeHandleLines(in frame: NSRect) { + for index in 0.. CGFloat { + let rulerLength = orientation == .horizontal ? bounds.width : bounds.height + let clampedMeasurement = min(max(measurement, 0), rulerLength) + let growthDirection = ZeroCornerGeometry(zeroCorner: zeroCorner) + .growthDirection(for: orientation) + + switch growthDirection { + case .positive: + return clampedMeasurement + case .negative: + return rulerLength - clampedMeasurement + } + } + + private func drawMouseTickLine(at position: CGFloat) { + let path = NSBezierPath() + + switch orientation { + case .horizontal: + path.move(to: CGPoint(x: position + 0.5, y: bounds.minY)) + path.line(to: CGPoint(x: position + 0.5, y: bounds.maxY)) + case .vertical: + path.move(to: CGPoint(x: bounds.minX, y: position - 0.5)) + path.line(to: CGPoint(x: bounds.maxX, y: position - 0.5)) + } + + mouseTickColor.setStroke() + path.lineWidth = 1 + path.stroke() + } + + private func drawMouseTickLabel(at position: CGFloat, measurement: CGFloat) { + let label = mouseTickLabel(for: measurement) + let labelSize = label.size() + let labelFrame = MouseTickLabelLayout.labelFrame( + labelSize: labelSize, + rulerSize: bounds.size, + orientation: orientation, + zeroCorner: zeroCorner, + tickPosition: position + ) + let background = NSBezierPath( + roundedRect: labelFrame.insetBy(dx: -1, dy: -1), + xRadius: 2, + yRadius: 2 + ) + + rulerFill.setFill() + background.fill() + label.draw(with: labelFrame, context: nil) + } + + private func mouseTickLabel(for measurement: CGFloat) -> NSAttributedString { + return NSAttributedString( + string: "\(Int(measurement.rounded()))", + attributes: [ + .font: NSFont.monospacedDigitSystemFont(ofSize: 10, weight: .regular), + .foregroundColor: mouseTickColor, + ] + ) + } +} + +private struct MouseTickLabelOffsetPreview: View { + let mouseX: CGFloat + let mouseY: CGFloat + + private let cellSize = CGSize( + width: 260 + Ruler.thickness, + height: 260 + Ruler.thickness + ) + private let cases: [(name: String, zeroCorner: ZeroCorner)] = [ + ("Top Left", .topLeft), + ("Top Right", .topRight), + ("Bottom Left", .bottomLeft), + ("Bottom Right", .bottomRight), + ] + + var body: some View { + VStack(alignment: .leading, spacing: 14) { + Text("Mouse Tick Label Offsets (mouseX: \(Int(mouseX)), mouseY: \(Int(mouseY)))") + .font(.headline) + + LazyVGrid( + columns: [ + GridItem(.fixed(cellSize.width), spacing: 24), + GridItem(.fixed(cellSize.width), spacing: 24), + ], + alignment: .leading, + spacing: 22 + ) { + ForEach(cases, id: \.name) { testCase in + MouseTickLabelCornerPreview( + name: testCase.name, + zeroCorner: testCase.zeroCorner, + rulerLength: 260, + mouseX: mouseX, + mouseY: mouseY + ) + } + } + } + .padding() + } +} + +private struct MouseTickLabelCornerPreview: View { + let name: String + let zeroCorner: ZeroCorner + let rulerLength: CGFloat + let mouseX: CGFloat + let mouseY: CGFloat + + private var thickness: CGFloat { + Ruler.thickness + } + + var body: some View { + VStack(alignment: .center, spacing: 8) { + Text(name) + .font(.caption) + + ZStack(alignment: .topLeading) { + MouseTickLabelLayoutPreview( + orientation: .horizontal, + zeroCorner: zeroCorner, + mouseX: mouseX, + mouseY: mouseY + ) + .frame(width: rulerLength, height: thickness) + .position(x: horizontalCenter.x, y: horizontalCenter.y) + + MouseTickLabelLayoutPreview( + orientation: .vertical, + zeroCorner: zeroCorner, + mouseX: mouseX, + mouseY: mouseY + ) + .frame(width: thickness, height: rulerLength) + .position(x: verticalCenter.x, y: verticalCenter.y) + } + .frame( + width: rulerLength + thickness, + height: rulerLength + thickness + ) + } + } + + private var horizontalCenter: CGPoint { + switch zeroCorner { + case .topLeft: + return CGPoint(x: thickness + (rulerLength / 2), y: thickness / 2) + case .topRight: + return CGPoint(x: rulerLength / 2, y: thickness / 2) + case .bottomLeft: + return CGPoint(x: thickness + (rulerLength / 2), y: rulerLength + (thickness / 2)) + case .bottomRight: + return CGPoint(x: rulerLength / 2, y: rulerLength + (thickness / 2)) + } + } + + private var verticalCenter: CGPoint { + switch zeroCorner { + case .topLeft: + return CGPoint(x: thickness / 2, y: thickness + (rulerLength / 2)) + case .topRight: + return CGPoint(x: rulerLength + (thickness / 2), y: thickness + (rulerLength / 2)) + case .bottomLeft: + return CGPoint(x: thickness / 2, y: rulerLength / 2) + case .bottomRight: + return CGPoint(x: rulerLength + (thickness / 2), y: rulerLength / 2) + } + } +} + private struct RuleViewPreview: NSViewRepresentable { let orientation: Orientation @@ -483,16 +1005,22 @@ private struct RuleViewPreview: NSViewRepresentable { struct RuleView_Previews: PreviewProvider { static var previews: some View { - HStack(alignment: .top, spacing: 24) { - RuleViewPreview(orientation: .horizontal) - .frame(width: 320, height: Ruler.thickness) + Group { + HStack(alignment: .top, spacing: 24) { + RuleViewPreview(orientation: .horizontal) + .frame(width: 320, height: Ruler.thickness) + + RuleViewPreview(orientation: .vertical) + .frame(width: Ruler.thickness, height: 320) + } + .padding() + .previewLayout(.sizeThatFits) + .previewDisplayName("Rulers") - RuleViewPreview(orientation: .vertical) - .frame(width: Ruler.thickness, height: 320) + MouseTickLabelOffsetPreview(mouseX: 8, mouseY: 8) + .previewLayout(.sizeThatFits) + .previewDisplayName("Mouse Tick Labels") } - .padding() - .previewLayout(.sizeThatFits) - .previewDisplayName("Rulers") } } #endif From 04802ec6cb93af8ccae8460bd2b7be44495951f9 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 15:29:09 -0400 Subject: [PATCH 16/38] Propagate zeroCorner and refactor previews Replace direct prefs.zeroCorner usages with a RuleView.zeroCorner property and propagate that value to child views (UnitLabelView, ResizeHandleView, HorizontalRule, VerticalRule). Add frame(in:bounds, zeroCorner:) overloads and update layout code to use the passed zeroCorner. Introduce RuleView.installWindowBorder() and improve window size fallbacks. Add nil-checks for NSGraphicsContext before drawing label rectangles. Refactor DEBUG preview code: replace the old MouseTickLabelLayoutPreview with a compact MouseTickRulePreview that hosts new MouseTickPreviewHorizontalRule/VerticalRule subclasses, and wire preview configuration (previewZeroCorner, mouse positions, colors). Also add a new localized string key to Localizable.xcstrings. --- Free Ruler/HorizontalRule.swift | 9 +- Free Ruler/Localizable.xcstrings | 12 +- Free Ruler/ResizeHandleView.swift | 6 +- Free Ruler/RuleView.swift | 459 +++++------------------------- Free Ruler/RulerWindow.swift | 4 +- Free Ruler/UnitLabelView.swift | 6 +- Free Ruler/VerticalRule.swift | 10 +- 7 files changed, 111 insertions(+), 395 deletions(-) diff --git a/Free Ruler/HorizontalRule.swift b/Free Ruler/HorizontalRule.swift index a659152..5392c70 100644 --- a/Free Ruler/HorizontalRule.swift +++ b/Free Ruler/HorizontalRule.swift @@ -39,7 +39,7 @@ class HorizontalRule: RuleView { let height = dirtyRect.height let path = NSBezierPath() let tickLayout = RulerTickLayout(unit: unit, screen: screen) - let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) + let geometry = ZeroCornerGeometry(zeroCorner: zeroCorner) let tickSide = geometry.tickSide(for: .horizontal) let growthDirection = geometry.growthDirection(for: .horizontal) @@ -144,6 +144,7 @@ class HorizontalRule: RuleView { rulerSize: CGSize(width: width, height: height) ) + guard NSGraphicsContext.current != nil else { return } label.draw( with: labelRect, context: nil @@ -155,7 +156,7 @@ class HorizontalRule: RuleView { labelSize: labelSize, rulerSize: rulerSize, orientation: .horizontal, - zeroCorner: prefs.zeroCorner, + zeroCorner: zeroCorner, tickPosition: tickX ) } @@ -239,7 +240,7 @@ class HorizontalRule: RuleView { } func mouseNumber(forTickX mouseTickX: CGFloat, rulerWidth: CGFloat) -> CGFloat { - let growthDirection = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner).growthDirection(for: .horizontal) + let growthDirection = ZeroCornerGeometry(zeroCorner: zeroCorner).growthDirection(for: .horizontal) switch growthDirection { case .positive: @@ -254,7 +255,7 @@ class HorizontalRule: RuleView { labelSize: labelSize, rulerSize: rulerSize, orientation: .horizontal, - zeroCorner: prefs.zeroCorner + zeroCorner: zeroCorner ) } diff --git a/Free Ruler/Localizable.xcstrings b/Free Ruler/Localizable.xcstrings index 3921413..848d695 100644 --- a/Free Ruler/Localizable.xcstrings +++ b/Free Ruler/Localizable.xcstrings @@ -715,6 +715,16 @@ } } }, + "Mouse Tick Label Offsets (mouseX: %@, mouseY: %@)" : { + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Mouse Tick Label Offsets (mouseX: %1$@, mouseY: %2$@)" + } + } + } + }, "Reset ruler color" : { "comment" : "Tooltip and accessibility label for the button that restores the default ruler color", "extractionState" : "manual", @@ -1053,4 +1063,4 @@ } }, "version" : "1.1" -} +} \ No newline at end of file diff --git a/Free Ruler/ResizeHandleView.swift b/Free Ruler/ResizeHandleView.swift index 578a444..46c0e21 100644 --- a/Free Ruler/ResizeHandleView.swift +++ b/Free Ruler/ResizeHandleView.swift @@ -154,7 +154,11 @@ final class ResizeHandleView: NSView { } func frame(in bounds: NSRect) -> NSRect { - let placement = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) + return frame(in: bounds, zeroCorner: prefs.zeroCorner) + } + + func frame(in bounds: NSRect, zeroCorner: ZeroCorner) -> NSRect { + let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) .resizeHandlePlacement(for: orientation) switch orientation { diff --git a/Free Ruler/RuleView.swift b/Free Ruler/RuleView.swift index 2740284..cd021d5 100644 --- a/Free Ruler/RuleView.swift +++ b/Free Ruler/RuleView.swift @@ -279,12 +279,18 @@ class RuleView: NSView { unitLabelView?.needsDisplay = true } + func installWindowBorder() { + wantsLayer = true + layer?.borderColor = CGColor(gray: 0, alpha: 0.5) + layer?.borderWidth = 1.0 + } + var windowWidth: CGFloat { - return self.window?.frame.width ?? 0 + return self.window?.frame.width ?? bounds.width } var windowHeight: CGFloat { - return self.window?.frame.height ?? 0 + return self.window?.frame.height ?? bounds.height } var showMouseTick: Bool = true { @@ -308,6 +314,10 @@ class RuleView: NSView { prefs.unit } + var zeroCorner: ZeroCorner { + prefs.zeroCorner + } + var resizeHandleExclusionFrame: NSRect? { return resizeHandleView?.frame } @@ -376,14 +386,14 @@ class RuleView: NSView { private func updateResizeHandleFrame() { guard let resizeHandleView = resizeHandleView else { return } - resizeHandleView.frame = resizeHandleView.frame(in: bounds) + resizeHandleView.frame = resizeHandleView.frame(in: bounds, zeroCorner: zeroCorner) } private func updateUnitLabelFrame() { guard let unitLabelView = unitLabelView else { return } unitLabelView.label = unitLabel() - unitLabelView.frame = unitLabelView.frame(in: bounds) + unitLabelView.frame = unitLabelView.frame(in: bounds, zeroCorner: zeroCorner) } private func unitLabel() -> NSAttributedString { @@ -456,355 +466,58 @@ extension NSColor { } #if DEBUG -private struct MouseTickLabelLayoutPreview: NSViewRepresentable { +private struct MouseTickRulePreview: NSViewRepresentable { let orientation: Orientation let zeroCorner: ZeroCorner let mouseX: CGFloat let mouseY: CGFloat + let rulerLength: CGFloat - func makeNSView(context: Context) -> MouseTickLabelLayoutPreviewView { - return MouseTickLabelLayoutPreviewView( - orientation: orientation, - zeroCorner: zeroCorner, - mouseX: mouseX, - mouseY: mouseY - ) - } - - func updateNSView(_ view: MouseTickLabelLayoutPreviewView, context: Context) { - view.orientation = orientation - view.zeroCorner = zeroCorner - view.mouseX = mouseX - view.mouseY = mouseY - } -} - -private final class MouseTickLabelLayoutPreviewView: NSView { - var orientation: Orientation { - didSet { needsDisplay = true } - } - var zeroCorner: ZeroCorner { - didSet { needsDisplay = true } - } - var mouseX: CGFloat { - didSet { needsDisplay = true } - } - var mouseY: CGFloat { - didSet { needsDisplay = true } - } - - private let rulerFill = NSColor(calibratedRed: 0.94, green: 0.82, blue: 0.54, alpha: 1) - private let tickColor = NSColor(calibratedRed: 0.41, green: 0.31, blue: 0.08, alpha: 1) - private let mouseTickColor = NSColor(calibratedRed: 0.14, green: 0.12, blue: 0.06, alpha: 0.75) - private let resizeHandleLength: CGFloat = 12 - private let resizeHandleLineCount = 4 - private let resizeHandleLineSpacing: CGFloat = 3 - private let resizeHandleBackgroundPadding: CGFloat = 1.5 - private let horizontalResizeHandleXOffset: CGFloat = 5 - private let horizontalResizeHandleYOffset: CGFloat = 4 - private let verticalResizeHandleXOffset: CGFloat = 4 - private let verticalResizeHandleYOffset: CGFloat = 5 - - init(orientation: Orientation, zeroCorner: ZeroCorner, mouseX: CGFloat, mouseY: CGFloat) { - self.orientation = orientation - self.zeroCorner = zeroCorner - self.mouseX = mouseX - self.mouseY = mouseY - super.init(frame: .zero) - - setAccessibilityElement(false) - } - - required init?(coder: NSCoder) { - fatalError("init(coder:) has not been implemented. Use init(orientation:zeroCorner:mouseX:mouseY:)") - } - - override func draw(_ dirtyRect: NSRect) { - super.draw(dirtyRect) - - rulerFill.setFill() - bounds.fill() - - drawRulerTicks() - drawBorder() - drawTickSide() - drawUnitLabel() - drawResizeHandle() - drawMouseTick() - } - - private func drawBorder() { - tickColor.withAlphaComponent(0.45).setStroke() - let border = NSBezierPath(rect: bounds.insetBy(dx: 0.5, dy: 0.5)) - border.lineWidth = 1 - border.stroke() - } - - private func drawTickSide() { - let side = ZeroCornerGeometry(zeroCorner: zeroCorner) - .tickSide(for: orientation) - let path = NSBezierPath() - - switch side { - case .top: - path.move(to: CGPoint(x: bounds.minX, y: bounds.maxY - 0.5)) - path.line(to: CGPoint(x: bounds.maxX, y: bounds.maxY - 0.5)) - case .right: - path.move(to: CGPoint(x: bounds.maxX - 0.5, y: bounds.minY)) - path.line(to: CGPoint(x: bounds.maxX - 0.5, y: bounds.maxY)) - case .bottom: - path.move(to: CGPoint(x: bounds.minX, y: bounds.minY + 0.5)) - path.line(to: CGPoint(x: bounds.maxX, y: bounds.minY + 0.5)) - case .left: - path.move(to: CGPoint(x: bounds.minX + 0.5, y: bounds.minY)) - path.line(to: CGPoint(x: bounds.minX + 0.5, y: bounds.maxY)) - } - - tickColor.setStroke() - path.lineWidth = 2 - path.stroke() - } - - private func drawRulerTicks() { - let geometry = ZeroCornerGeometry(zeroCorner: zeroCorner) - let tickSide = geometry.tickSide(for: orientation) - let growthDirection = geometry.growthDirection(for: orientation) - let rulerLength = orientation == .horizontal ? bounds.width : bounds.height - let path = NSBezierPath() - var offset: CGFloat = 2 - - while offset <= rulerLength - 2 { - let roundedOffset = Int(offset) - let tickLength: CGFloat - - if roundedOffset.isMultiple(of: 50) { - tickLength = 10 - } else if roundedOffset.isMultiple(of: 10) { - tickLength = 8 - } else if roundedOffset.isMultiple(of: 2) { - tickLength = 5 - } else { - offset += 1 - continue - } - - let position: CGFloat - switch growthDirection { - case .positive: - position = offset - case .negative: - position = rulerLength - offset - } - - appendTick(to: path, position: position, length: tickLength, tickSide: tickSide) - offset += 1 - } - - tickColor.withAlphaComponent(0.82).setStroke() - path.lineWidth = 1 - path.stroke() - } - - private func appendTick( - to path: NSBezierPath, - position: CGFloat, - length: CGFloat, - tickSide: RulerSide - ) { - switch (orientation, tickSide) { - case (.horizontal, .bottom): - path.move(to: CGPoint(x: position + 0.5, y: bounds.minY + 1)) - path.line(to: CGPoint(x: position + 0.5, y: bounds.minY + length)) - case (.horizontal, .top): - path.move(to: CGPoint(x: position + 0.5, y: bounds.maxY - 1)) - path.line(to: CGPoint(x: position + 0.5, y: bounds.maxY - length)) - case (.vertical, .right): - path.move(to: CGPoint(x: bounds.maxX - 1, y: position - 0.5)) - path.line(to: CGPoint(x: bounds.maxX - length, y: position - 0.5)) - case (.vertical, .left): - path.move(to: CGPoint(x: bounds.minX + 1, y: position - 0.5)) - path.line(to: CGPoint(x: bounds.minX + length, y: position - 0.5)) - case (_, _): - return - } - } - - private func drawUnitLabel() { - let label = NSAttributedString( - string: "px", - attributes: [ - .font: NSFont.systemFont(ofSize: 10, weight: .semibold), - .foregroundColor: tickColor, - ] - ) - let labelFrame = UnitLabelView.labelFrame( - labelSize: UnitLabelView.labelSize(for: label), - rulerSize: bounds.size, - orientation: orientation, - zeroCorner: zeroCorner - ) - - label.draw(with: labelFrame, context: nil) - } - - private func drawResizeHandle() { - let frame = resizeHandleFrame() - let background = NSBezierPath( - roundedRect: frame, - xRadius: 2, - yRadius: 2 - ) - - rulerFill.setFill() - background.fill() - - switch orientation { - case .horizontal: - drawHorizontalResizeHandleLines(in: frame) - case .vertical: - drawVerticalResizeHandleLines(in: frame) - } - } - - private func resizeHandleFrame() -> NSRect { - let placement = ZeroCornerGeometry(zeroCorner: zeroCorner) - .resizeHandlePlacement(for: orientation) - + func makeNSView(context: Context) -> RuleView { + let view: RuleView switch orientation { case .horizontal: - let firstX: CGFloat - let bottomY: CGFloat - - switch placement.xSide { - case .left: - firstX = bounds.minX + horizontalResizeHandleXOffset + 1 - case .right: - firstX = bounds.maxX - - horizontalResizeHandleXOffset - - CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing - - 1 - case .top, .bottom: - assertionFailure("Horizontal preview resize handle must be placed on a horizontal side") - firstX = bounds.maxX - - horizontalResizeHandleXOffset - - CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing - - 1 - } - - switch placement.ySide { - case .top: - bottomY = bounds.maxY - horizontalResizeHandleYOffset - resizeHandleLength - case .bottom: - bottomY = bounds.minY + horizontalResizeHandleYOffset - case .left, .right: - assertionFailure("Horizontal preview resize handle must be placed on a vertical side") - bottomY = bounds.maxY - horizontalResizeHandleYOffset - resizeHandleLength - } - - return NSRect( - x: firstX - resizeHandleBackgroundPadding, - y: bottomY - resizeHandleBackgroundPadding, - width: CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + 2 + (resizeHandleBackgroundPadding * 2), - height: resizeHandleLength + (resizeHandleBackgroundPadding * 2) + view = MouseTickPreviewHorizontalRule( + frame: NSRect(x: 0, y: 0, width: rulerLength, height: Ruler.thickness) ) case .vertical: - let leftX: CGFloat - let firstY: CGFloat - - switch placement.xSide { - case .left: - leftX = bounds.minX + verticalResizeHandleXOffset - case .right: - leftX = bounds.maxX - verticalResizeHandleXOffset - resizeHandleLength - case .top, .bottom: - assertionFailure("Vertical preview resize handle must be placed on a horizontal side") - leftX = bounds.minX + verticalResizeHandleXOffset - } - - switch placement.ySide { - case .top: - firstY = bounds.maxY - - verticalResizeHandleYOffset - - CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing - - 1 - case .bottom: - firstY = bounds.minY + verticalResizeHandleYOffset + 1 - case .left, .right: - assertionFailure("Vertical preview resize handle must be placed on a vertical side") - firstY = bounds.minY + verticalResizeHandleYOffset + 1 - } - - return NSRect( - x: leftX - resizeHandleBackgroundPadding, - y: firstY - 1 - resizeHandleBackgroundPadding, - width: resizeHandleLength + (resizeHandleBackgroundPadding * 2), - height: CGFloat(resizeHandleLineCount - 1) * resizeHandleLineSpacing + 2 + (resizeHandleBackgroundPadding * 2) + view = MouseTickPreviewVerticalRule( + frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: rulerLength) ) } - } - private func drawHorizontalResizeHandleLines(in frame: NSRect) { - for index in 0.. CGFloat { - let rulerLength = orientation == .horizontal ? bounds.width : bounds.height + private func localMousePosition(for measurement: CGFloat) -> CGFloat { let clampedMeasurement = min(max(measurement, 0), rulerLength) let growthDirection = ZeroCornerGeometry(zeroCorner: zeroCorner) .growthDirection(for: orientation) @@ -816,53 +529,37 @@ private final class MouseTickLabelLayoutPreviewView: NSView { return rulerLength - clampedMeasurement } } +} - private func drawMouseTickLine(at position: CGFloat) { - let path = NSBezierPath() +private final class MouseTickPreviewHorizontalRule: HorizontalRule { + var previewZeroCorner: ZeroCorner = .topLeft - switch orientation { - case .horizontal: - path.move(to: CGPoint(x: position + 0.5, y: bounds.minY)) - path.line(to: CGPoint(x: position + 0.5, y: bounds.maxY)) - case .vertical: - path.move(to: CGPoint(x: bounds.minX, y: position - 0.5)) - path.line(to: CGPoint(x: bounds.maxX, y: position - 0.5)) - } + override var unit: Unit { + .pixels + } - mouseTickColor.setStroke() - path.lineWidth = 1 - path.stroke() + override var zeroCorner: ZeroCorner { + previewZeroCorner } - private func drawMouseTickLabel(at position: CGFloat, measurement: CGFloat) { - let label = mouseTickLabel(for: measurement) - let labelSize = label.size() - let labelFrame = MouseTickLabelLayout.labelFrame( - labelSize: labelSize, - rulerSize: bounds.size, - orientation: orientation, - zeroCorner: zeroCorner, - tickPosition: position - ) - let background = NSBezierPath( - roundedRect: labelFrame.insetBy(dx: -1, dy: -1), - xRadius: 2, - yRadius: 2 - ) + override func draw(_ dirtyRect: NSRect) { + super.draw(bounds) + } +} + +private final class MouseTickPreviewVerticalRule: VerticalRule { + var previewZeroCorner: ZeroCorner = .topLeft - rulerFill.setFill() - background.fill() - label.draw(with: labelFrame, context: nil) + override var unit: Unit { + .pixels } - private func mouseTickLabel(for measurement: CGFloat) -> NSAttributedString { - return NSAttributedString( - string: "\(Int(measurement.rounded()))", - attributes: [ - .font: NSFont.monospacedDigitSystemFont(ofSize: 10, weight: .regular), - .foregroundColor: mouseTickColor, - ] - ) + override var zeroCorner: ZeroCorner { + previewZeroCorner + } + + override func draw(_ dirtyRect: NSRect) { + super.draw(bounds) } } @@ -926,20 +623,22 @@ private struct MouseTickLabelCornerPreview: View { .font(.caption) ZStack(alignment: .topLeading) { - MouseTickLabelLayoutPreview( + MouseTickRulePreview( orientation: .horizontal, zeroCorner: zeroCorner, mouseX: mouseX, - mouseY: mouseY + mouseY: mouseY, + rulerLength: rulerLength ) .frame(width: rulerLength, height: thickness) .position(x: horizontalCenter.x, y: horizontalCenter.y) - MouseTickLabelLayoutPreview( + MouseTickRulePreview( orientation: .vertical, zeroCorner: zeroCorner, mouseX: mouseX, - mouseY: mouseY + mouseY: mouseY, + rulerLength: rulerLength ) .frame(width: thickness, height: rulerLength) .position(x: verticalCenter.x, y: verticalCenter.y) @@ -991,9 +690,7 @@ private struct RuleViewPreview: NSViewRepresentable { } view.showMouseTick = false - view.wantsLayer = true - view.layer?.borderColor = CGColor(gray: 0, alpha: 0.5) - view.layer?.borderWidth = 1 + view.installWindowBorder() return view } diff --git a/Free Ruler/RulerWindow.swift b/Free Ruler/RulerWindow.swift index 3cd534c..2fd0383 100644 --- a/Free Ruler/RulerWindow.swift +++ b/Free Ruler/RulerWindow.swift @@ -38,9 +38,7 @@ class RulerWindow: NSPanel { self.isMovableByWindowBackground = true self.hasShadow = prefs.rulerShadow - rule.wantsLayer = true - rule.layer?.borderColor = CGColor(gray: 0, alpha: 0.5) - rule.layer?.borderWidth = 1.0 + rule.installWindowBorder() rule.setAccessibilityElement(true) rule.setAccessibilityIdentifier(getRuleIdentifier(for: ruler.orientation)) diff --git a/Free Ruler/UnitLabelView.swift b/Free Ruler/UnitLabelView.swift index 9c56365..47320ca 100644 --- a/Free Ruler/UnitLabelView.swift +++ b/Free Ruler/UnitLabelView.swift @@ -28,11 +28,15 @@ final class UnitLabelView: NSView { } func frame(in bounds: NSRect) -> NSRect { + return frame(in: bounds, zeroCorner: prefs.zeroCorner) + } + + func frame(in bounds: NSRect, zeroCorner: ZeroCorner) -> NSRect { return Self.labelFrame( labelSize: Self.labelSize(for: label), rulerSize: bounds.size, orientation: orientation, - zeroCorner: prefs.zeroCorner + zeroCorner: zeroCorner ) } diff --git a/Free Ruler/VerticalRule.swift b/Free Ruler/VerticalRule.swift index db4e88b..a59bbdc 100644 --- a/Free Ruler/VerticalRule.swift +++ b/Free Ruler/VerticalRule.swift @@ -37,7 +37,7 @@ class VerticalRule: RuleView { let height = dirtyRect.height let path = NSBezierPath() let tickLayout = RulerTickLayout(unit: unit, screen: screen) - let geometry = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner) + let geometry = ZeroCornerGeometry(zeroCorner: zeroCorner) let tickSide = geometry.tickSide(for: .vertical) let growthDirection = geometry.growthDirection(for: .vertical) let attrs = labelAttributes( @@ -144,6 +144,8 @@ class VerticalRule: RuleView { labelSize: labelSize, rulerSize: CGSize(width: self.frame.width, height: height) ) + + guard NSGraphicsContext.current != nil else { return } color.fill.setFill() labelRect.fill() @@ -159,7 +161,7 @@ class VerticalRule: RuleView { labelSize: labelSize, rulerSize: rulerSize, orientation: .vertical, - zeroCorner: prefs.zeroCorner, + zeroCorner: zeroCorner, tickPosition: tickY ) } @@ -247,7 +249,7 @@ class VerticalRule: RuleView { } func mouseNumber(forTickY mouseTickY: CGFloat, rulerHeight: CGFloat) -> CGFloat { - let growthDirection = ZeroCornerGeometry(zeroCorner: prefs.zeroCorner).growthDirection(for: .vertical) + let growthDirection = ZeroCornerGeometry(zeroCorner: zeroCorner).growthDirection(for: .vertical) switch growthDirection { case .positive: @@ -262,7 +264,7 @@ class VerticalRule: RuleView { labelSize: labelSize, rulerSize: rulerSize, orientation: .vertical, - zeroCorner: prefs.zeroCorner + zeroCorner: zeroCorner ) } From a806c6df750a86d963fba42cec395ad80cfd8a18 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 15:34:49 -0400 Subject: [PATCH 17/38] Remove RuleViewPreview and simplify previews Delete the NSViewRepresentable RuleViewPreview and the HStack of horizontal/vertical rule previews. Replace the previous preview group with a single MouseTickLabelOffsetPreview and adjust the preview layout/name. This simplifies SwiftUI previews by removing the AppKit bridging preview helper and duplicate preview entries. --- Free Ruler/RuleView.swift | 40 ++------------------------------------- 1 file changed, 2 insertions(+), 38 deletions(-) diff --git a/Free Ruler/RuleView.swift b/Free Ruler/RuleView.swift index cd021d5..9f73ab9 100644 --- a/Free Ruler/RuleView.swift +++ b/Free Ruler/RuleView.swift @@ -677,47 +677,11 @@ private struct MouseTickLabelCornerPreview: View { } } -private struct RuleViewPreview: NSViewRepresentable { - let orientation: Orientation - - func makeNSView(context: Context) -> RuleView { - let view: RuleView - switch orientation { - case .horizontal: - view = HorizontalRule(frame: NSRect(x: 0, y: 0, width: 320, height: Ruler.thickness)) - case .vertical: - view = VerticalRule(frame: NSRect(x: 0, y: 0, width: Ruler.thickness, height: 320)) - } - - view.showMouseTick = false - view.installWindowBorder() - return view - } - - func updateNSView(_ view: RuleView, context: Context) { - view.showMouseTick = false - view.needsDisplay = true - } -} - struct RuleView_Previews: PreviewProvider { static var previews: some View { - Group { - HStack(alignment: .top, spacing: 24) { - RuleViewPreview(orientation: .horizontal) - .frame(width: 320, height: Ruler.thickness) - - RuleViewPreview(orientation: .vertical) - .frame(width: Ruler.thickness, height: 320) - } - .padding() + MouseTickLabelOffsetPreview(mouseX: 8, mouseY: 8) .previewLayout(.sizeThatFits) - .previewDisplayName("Rulers") - - MouseTickLabelOffsetPreview(mouseX: 8, mouseY: 8) - .previewLayout(.sizeThatFits) - .previewDisplayName("Mouse Tick Labels") - } + .previewDisplayName("Mouse Tick Labels") } } #endif From 211e652da2814777eb666422a5317010ec57bd0e Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 18:38:57 -0400 Subject: [PATCH 18/38] Update Free Ruler help screen --- Free Ruler/AppDelegate.swift | 17 +++++++++++++++++ Free Ruler/Base.lproj/MainMenu.xib | 2 +- Free Ruler/FreeRuler.help/Contents/Info.plist | 6 +++--- .../English.lproj/English.lproj.helpindex | Bin 8952 -> 1919 bytes .../Resources/English.lproj/FreeRuler.html | 14 +++++++++++++- .../Contents/Resources/shrd/styles.css | 13 +++++++++++++ scripts/release/bump-version.js | 2 +- scripts/release/set-version.js | 17 +++++++++++++++++ 8 files changed, 65 insertions(+), 6 deletions(-) diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index 8190168..3b8ef70 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -1,4 +1,5 @@ import Cocoa +import Carbon import Carbon.HIToolbox #if DEBUG import Darwin @@ -476,6 +477,22 @@ class AppDelegate: NSObject, NSApplicationDelegate { } } + @IBAction func showFreeRulerHelp(_ sender: Any) { + guard let helpURL = Bundle.main.url( + forResource: "FreeRuler", + withExtension: "html", + subdirectory: "FreeRuler.help/Contents/Resources/English.lproj" + ) else { + NSApp.showHelp(sender) + return + } + + let status = AHGotoPage(nil, helpURL.absoluteString as CFString, nil) + if status != noErr { + NSWorkspace.shared.open(helpURL) + } + } + @IBAction func closeKeyWindow(_ sender: Any) { if let ruler = rulers.first(where: { $0.rulerWindow.isKeyWindow }) { if prefs.groupRulers { diff --git a/Free Ruler/Base.lproj/MainMenu.xib b/Free Ruler/Base.lproj/MainMenu.xib index 8404be9..a7b3387 100644 --- a/Free Ruler/Base.lproj/MainMenu.xib +++ b/Free Ruler/Base.lproj/MainMenu.xib @@ -275,7 +275,7 @@ - + diff --git a/Free Ruler/FreeRuler.help/Contents/Info.plist b/Free Ruler/FreeRuler.help/Contents/Info.plist index aadccca..168ec52 100644 --- a/Free Ruler/FreeRuler.help/Contents/Info.plist +++ b/Free Ruler/FreeRuler.help/Contents/Info.plist @@ -13,11 +13,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1 + 2.0.17 CFBundleSignature hbwr CFBundleVersion - 1 + 491 HPDBookAccessPath FreeRuler.html HPDBookIconPath @@ -25,7 +25,7 @@ HPDBookIndexPath English.lproj.helpindex HPDBookKBProduct - freeruler1 + freeruler2.0.17 HPDBookTitle Free Ruler Help HPDBookType diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/English.lproj.helpindex b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/English.lproj.helpindex index 34a8ac1559b0009615109d7a71f30b3d22badca3..fa828428796d0ceaf840444bea02dc8180add0ac 100644 GIT binary patch literal 1919 zcmV-_2Y~ouc6c&NBme-c1#n3K1p#2GV!ZFTAOax70000#fKUaew`&!8bNI}$aHlQH(e%(!r_adXlf9A1n$#~2QK;^{n?_ZdGmXjBzMRTU=yFug>a zC!*j($Y@KZDP|Q21zZuP5GZ05vm(Vf3MWeb2>yuu2>pos$ooipWPK!k#2hIf0UybZ zz($b22Y;Wv-dayw-@D$fvyF92&6Sz)?R)KuUC$Qmu9)k#J$tg(ye86>`-$V7<1_*Gh-hi zzcx0#Zt4C3hrsw;95k9>Q@u>Xjm^@Bb^L@G*Gin#UUsTcq@22&=R0T$+ ze8cr_eGN;)_dM8dEg~&*c!&AWGL@;uyU`Q5)>E-QH;-(>&;Kx}Rs7^H zr^CLz0UiG&)tTDE63VsDjILc_+h?j&&?tDTSq+FJGzV>T}Nw5Y&Jlhjy-)dv0Y6*Ej0WrVlcRV-z+)D_{{bO*oaX&uEBgp(A ze8Rtwzv)ZYS}wvPp%%i9FWVM|L)=&6kmenOen1*~uc$PZ&=H8#F-?a6?15gE#elOX zJ|q=CssGx~$j8JL0r&2XU>#~lAd>he#RXMGGp`_1RQKdb4W1uN8w+-{JV|2q!46c4 zOIWL*k5@tfhLiZE#iLXZJ3cJ=IM=tpm5IZnhsVX}xY69%(2m^ez%CdV66}`Tdw(MBADAd;u zXBXu5DBrZ-2`vwT{`T(@N9k#WJltx;b%q5bHr(W)lwyOeoab;s==Qc6S@**m9F05Z zU~cW$ZaSg&qJv|B9gDuFD|uD2fHM|7 z=DL|a(%*dQHUpZvT#ytW|NHN002u6daVZ|bN0mHh0W^JD>`-lXP8I+F000000000mpc}~!#c4DD(d0KhlIU0R zt=qgEq^aoW^g`>@T?PLL>4!jS?wW%DRb%Kml1IjTK;9v4ZW%T=tl{3{$Au7py!k;O z13orT{)7h?B`~i{0E*io0UbgdCc*8s5h64$p(QTSpuj=19T=v>a32ErTEkHJCdJ(e z_;#;7e>CqLOs5-nXuv~8c6HKm^JBigajR|EYI9?wx$G6&c?)Cbu|uBr`+)0tcr*i? zo={UU=|i^vkN@nHphX^hH2Ex`+>^9$Iw!!vGWZ#a23C$xAJTj~TiPPSZ$*By79eJ^ zW7eVVP~li>i>J2Pk2yaN@v7V+A6`r8ceL$XG(O%pf)d{ z7XWb@l+la9&?T&2qYrWmG&Sp}*$KK|ECIFt6$Cqr7`Fe}tBn%2*VZ<|O_qrHkayM1 zqI{`;QegqIemwNM*JoXDp9{UAJ5(6|mBVc=sgVNK{YV3qb zQVL*0{iDDp^)TP3krVfTB+%4iXH35Fdy!#6-8HTaIr`09m!Pbag84kt6(XL>uj|?Nv zr%fB@_%wg(3wkI{I}Igl-wREUw0JDs)vgR1$|D6@jkm?^tElz|S}NTQ?!mprzLc`p zIB+m`gB}S*JN5ctyAG;hOrGJ&=g#vDF>%&dA^(6b~HC zXCGc)rRO=zg<;G~8>N^yIg@>>zO(V!yrN{$Rti&u^hH!fG1BobKnW&bw3<37PMsJ%OdCLn zP>7-!>r_ucY6q50nKjO9^RmX4;y>g5ulv7=_0RR^+Hsp{{af>E%FVp~rTX=M7m}CU zREY|1MJ2i3acaP*7uZc*p!HEVCZ?Ms;N8u;+)+r|NTV961E)*K$1oeU(Cfl%#4%fP zD`)XO<|efAOf3x(QQD4~jACxvV4vtgKq>?f5H`i28{vh7X@{M9(1}7* z2s(sd6#RC{R|U6+^|GlILYzXIz-dxQ+9>H4|Dqn>-N4?PBAlgO)`w z&2x5Q2eTdr%=w9cqzMtK9qWYG6i9kMKOa%r<+ zaCjY>%Lq$Y4uYbTVsd27(^`&cO9h%TJ+X{bgu+V*RJ$;oUVJL(-PSyCT4w1Th>O=Q zFB36`*7E1=#oMJqBpZ`)*=VKne(R$2FJdIbO?+?D`4nE>oEaZ+MX z&=jc(EL9b8=g)L`SEEREj9sRDQevr2itr41)3ajUa46V8Mq_`v&e{XzM%1C4? zaCcMy8)ClP8ioAqT?H7#b~=YWZI{pg%G;oggNCu<0qm6Wv>f;x#=wdW7&qw|l&L_b z0(V{olm}*b7vRP73qLsbA|Lb2y)HA*ZBEIzxlEjtn4kO84QI9WqEXPG=j0Bs%fv~E zK|#yh9NZmeP$tXUR{?A@^ZYL|&;M)R|J!iB+dKe1%3iUdM|$<0LnyKMj(nDX7tC&U|do+Lj$qQ6`YF+rk zqU<5nojgH=|3vqUj_x^Hm4lyz9rH(D-*IWfng? z;@w|wJFnFKFxFae?4sLQTef`c@_U=U?D%NMVb{`o$F7`O^2)otLuZ~mbZFqWw+7Y) z)|bC?_L*JfzTNIspMG5b-NeK<^B?`CIPyt*1% e_rpoeM$OX_@YMMmfc$=TeB`iUD4{oKaPSY@cn@;` diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html index f3fe3ee..b8a707f 100644 --- a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html +++ b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html @@ -4,7 +4,7 @@ Free Ruler Help - + @@ -35,5 +35,17 @@

+

+ Features +

+ +
    +
  • Show horizontal and vertical rulers in pixels, millimeters, or inches.
  • +
  • Resize rulers, move them independently, or keep them grouped together.
  • +
  • Float rulers above other windows and show or hide ruler shadows.
  • +
  • Align rulers at the mouse location, reset them to default positions, or flip their origins.
  • +
  • Show, hide, and reopen rulers from the menu or keyboard.
  • +
+ diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/shrd/styles.css b/Free Ruler/FreeRuler.help/Contents/Resources/shrd/styles.css index be13974..7074d34 100644 --- a/Free Ruler/FreeRuler.help/Contents/Resources/shrd/styles.css +++ b/Free Ruler/FreeRuler.help/Contents/Resources/shrd/styles.css @@ -3,6 +3,10 @@ body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", Arial, sans-serif; } +h2 { + margin-top: 40px; +} + .title-page-header { background-image: url(./freeruler.png); background-size: 200px 200px; @@ -20,3 +24,12 @@ body { text-align: left; padding-left: 10px; } + +.features { + margin-top: 0; + padding-left: 22px; +} + +.features li { + margin-bottom: 8px; +} diff --git a/scripts/release/bump-version.js b/scripts/release/bump-version.js index 2907a76..cba6b09 100755 --- a/scripts/release/bump-version.js +++ b/scripts/release/bump-version.js @@ -142,7 +142,7 @@ async function promptForInput(lineIterator, text) { const normalizedAnswer = answer.toLowerCase(); if (normalizedAnswer === "" || normalizedAnswer === "y" || normalizedAnswer === "yes") { - run("git", ["add", "package.json", "Free Ruler.xcodeproj/project.pbxproj"]); + run("git", ["add", "package.json", "Free Ruler.xcodeproj/project.pbxproj", "Free Ruler/FreeRuler.help/Contents/Info.plist"]); run("git", ["commit", "-m", `Bump version to ${nextVersion}`]); run("git", ["push", "origin", "main"]); console.log(`Committed and pushed v${nextVersion} (${buildNumber}).`); diff --git a/scripts/release/set-version.js b/scripts/release/set-version.js index 928fc0c..1d3b1f9 100755 --- a/scripts/release/set-version.js +++ b/scripts/release/set-version.js @@ -6,6 +6,7 @@ const path = require("path"); const root = path.resolve(__dirname, "../.."); const packagePath = path.join(root, "package.json"); const projectPath = path.join(root, "Free Ruler.xcodeproj/project.pbxproj"); +const helpInfoPath = path.join(root, "Free Ruler/FreeRuler.help/Contents/Info.plist"); const version = process.argv[2]; const build = process.argv[3] || process.env.RELEASE_BUILD; @@ -23,6 +24,11 @@ const packageJson = JSON.parse(fs.readFileSync(packagePath, "utf8")); packageJson.version = version; fs.writeFileSync(packagePath, `${JSON.stringify(packageJson, null, 2)}\n`); +function replacePlistString(plist, key, value) { + const pattern = new RegExp(`(${key}\\n\\s*)[^<]+()`); + return plist.replace(pattern, `$1${value}$2`); +} + let project = fs.readFileSync(projectPath, "utf8"); project = project.replace(/MARKETING_VERSION = [^;]+;/g, `MARKETING_VERSION = ${version};`); @@ -32,7 +38,18 @@ if (build) { fs.writeFileSync(projectPath, project); +let helpInfo = fs.readFileSync(helpInfoPath, "utf8"); +helpInfo = replacePlistString(helpInfo, "CFBundleShortVersionString", version); +helpInfo = replacePlistString(helpInfo, "HPDBookKBProduct", `freeruler${version}`); + +if (build) { + helpInfo = replacePlistString(helpInfo, "CFBundleVersion", build); +} + +fs.writeFileSync(helpInfoPath, helpInfo); + console.log(`Set package.json and Xcode MARKETING_VERSION to ${version}.`); +console.log("Set help book version metadata."); if (build) { console.log(`Set Xcode CURRENT_PROJECT_VERSION to ${build}.`); } From e452fdb5416e009c24d15211df71eef384f48a9b Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 19:40:08 -0400 Subject: [PATCH 19/38] Use current app icon in help book --- Free Ruler/AppDelegate.swift | 24 ++++++++---------- .../Contents/Resources/shrd/freeruler.png | Bin 84105 -> 45551 bytes 2 files changed, 10 insertions(+), 14 deletions(-) diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index 3b8ef70..4537aa5 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -1,5 +1,4 @@ import Cocoa -import Carbon import Carbon.HIToolbox #if DEBUG import Darwin @@ -147,6 +146,13 @@ class AppDelegate: NSObject, NSApplicationDelegate { showRulers() + // Temporary while verifying ticket #213 Help Viewer routing. + if !UI_TESTS { + DispatchQueue.main.async { [weak self] in + guard let self = self else { return } + self.showFreeRulerHelp(self) + } + } } #if DEBUG @@ -478,19 +484,9 @@ class AppDelegate: NSObject, NSApplicationDelegate { } @IBAction func showFreeRulerHelp(_ sender: Any) { - guard let helpURL = Bundle.main.url( - forResource: "FreeRuler", - withExtension: "html", - subdirectory: "FreeRuler.help/Contents/Resources/English.lproj" - ) else { - NSApp.showHelp(sender) - return - } - - let status = AHGotoPage(nil, helpURL.absoluteString as CFString, nil) - if status != noErr { - NSWorkspace.shared.open(helpURL) - } + let helpManager = NSHelpManager.shared + helpManager.registerBooks(in: Bundle.main) + helpManager.openHelpAnchor("WelcomePage", inBook: nil) } @IBAction func closeKeyWindow(_ sender: Any) { diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/shrd/freeruler.png b/Free Ruler/FreeRuler.help/Contents/Resources/shrd/freeruler.png index 00a07ea981427400b063e1eb18ff21a528d58e56..3fa9c08b066f96a1bec76636791b3d2cc544fe73 100644 GIT binary patch literal 45551 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%0A7XbiTbNZCVo5-*(UEn76#uO@|pniK=if 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 From bd917dc374ab6a48e980a2230066bf51b3a61997 Mon Sep 17 00:00:00 2001 From: Pascal Date: Sat, 13 Jun 2026 19:42:38 -0400 Subject: [PATCH 20/38] Update help icon when generating app icons --- .../Contents/Resources/shrd/freeruler.png | Bin 45551 -> 46228 bytes .../AppIcon.appiconset/icon_128x128.png | Bin 8956 -> 8968 bytes .../AppIcon.appiconset/icon_128x128@2x.png | Bin 20413 -> 20550 bytes .../AppIcon.appiconset/icon_16x16.png | Bin 699 -> 715 bytes .../AppIcon.appiconset/icon_16x16@2x.png | Bin 1592 -> 1569 bytes .../AppIcon.appiconset/icon_256x256.png | Bin 20413 -> 20550 bytes .../AppIcon.appiconset/icon_256x256@2x.png | Bin 45551 -> 46228 bytes .../AppIcon.appiconset/icon_32x32.png | Bin 1592 -> 1569 bytes .../AppIcon.appiconset/icon_32x32@2x.png | Bin 3631 -> 3629 bytes .../AppIcon.appiconset/icon_512x512.png | Bin 45551 -> 46228 bytes .../AppIcon.appiconset/icon_512x512@2x.png | Bin 109559 -> 86590 bytes scripts/generate-app-icon.sh | 2 ++ 12 files changed, 2 insertions(+) diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/shrd/freeruler.png b/Free Ruler/FreeRuler.help/Contents/Resources/shrd/freeruler.png index 3fa9c08b066f96a1bec76636791b3d2cc544fe73..8b22a079f21104cf63614c47bd2067e3dd819840 100644 GIT binary patch literal 46228 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

H8&79nCLI8Qjij?qZe&^n`V;g2q%u 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 B6`TM7 literal 45551 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 eA0m(qwv*=&I6B)6Y z+PC?&qr*}Ww)$c;!?{0~upJ4`^s+Y97j-obp(k$^#d69_+2Ue1sSVT8CyCpAd74r%S5qb^ z1^ginp+b)hGLWeWQ)UWD2sb!*IWe1Xaw{aT_*5JMSajxj*=B*FJ7`1?AKes~uPj3(7UcQglrXsiG!92)3?J;95fk zO^yW(xNm8#?-BhxUc&P37I~JcAyBYC=6Qk^_Wm}gV=scXcKu~ z-CM~GS^+l2GY5|@ICLU5OrGpdTzp!SpDsQ@O1%sR0_13JfA&f)O4N~>;?B8~iGqap`or0Oxx z1=Cy}3=W{+&$c17>pbI=aL(RM^n!iG4YT1~Ga4`z`9GQX`dDBZB2=7>*C$LgK?VYk zrSI2(`=nl+Nqz?SM8yS0{tVy^+|&I5pC_k6oyc!_50|IlkZb<~syH6YxDBjEVI-}a zd2=O{$k>8M{-wxsW^jJy8cro6R;*GpmpXZ32tM5_i{gpx$ifT|DJ;#Xr$E2U{bXKB z_Sc28tXDetAK-m&Gxyl_;eni(B&5L%UVLu032Xno8^>>$b4~f63Op5KAH2b?g)ZC9 zq>dQ-87mcqUi89I0tiC$uKH}lLr8*jX~a+)g3U!0xFrN}zg{kl6UO&@ZcKjuM&4(; zw2n{Fhu)Qmyuo&6K1w&a(oZ2MfkCgs+%iO_<{wrmBbzz5ObX3%AJdN}oH@Xscrgi4 z<40)0%ZzWu$?8GKKu6@Nup7MHmT4qUqV$ilC5~P4Z8gM_C|<-|$e$s$C+v7NcvyjX{Vv@{eOH>$u%jnaTfEoR=!s<%U`7k%s z*Q4No|GY_xXe9$62fUOE{$RbLsBFjGcry@2j7djR(O2!N#Uvx(hcGk!_JN6Xx@EbT zDGRqJCgEP386&q6mNP7GiJwOVCShMxVj*aphS6$HbRdV&e_pa)^jbp5=6*s+j()`5_wL${|ly?J1BgYfRXdor8*j<4rp!k?Yb&6pGva z8utN3%QtJN^=z%fOz*bx4cSDUFs`^pK=t-y_Es(*`1}>lrTNLt*tW`HVWgmHVpKob zXNJdgfs*w0;-d^DJ{akE1eeMeKT}HNZ(M5g0X=!#77FwDfyUEG1NNU4=J|C^K<9~e z(T%|S-YoZ@!~_O@5AVC#u4_l7f-i|nXCkR2EO)9f?E}Ryl=iaGrTM>ui29K8SS;kU zIb*K6{4`Gpd}jNFbPYg8TSKY-YXTmTve{Ba78>i zn+!Gfq40d%^EE19UWUTVVd($%Yv1f(K!B7d2djrT=2nl4vfJH_Ro<*(7{v089|;X% zvY#z`gdNOWR}_9Ke0;&>bl!;hBd=xsSsp0{?PN)^@$n-RC^Tn)3IbKGwMbw<9i92$b#I)@F%K=o(ejZBs8%&?Tr5IZJANxqunzR!{*b@7ah*aL1|SJ% zXaD07xvcB!3sz2=h0Ey<2dT3mh79Hl z)khcxUs8(#ds{~G8=U?NIv~lO9Sv+o$6L}XV-5-(?=&kZFg96KQB(pkFxkXw`*G19 zhW{6IR|wInNClg);ch^w7PNwI>g<|sa=n*Pm-|suM6-+$VXMeBKb%W|BK>7N1xYe3 z{_3K^k=#E8kJK`dnd zzT0Y)HgTMVNz;Hl1L{=+*wNoGNUgw}u>Y@UDJNGgCsxeic?#kC2d$SEg1*e_)f#6+ z$oO(AT(t0ds7|YzXm%wI(Tg!UCo^eV+xm1~Wkw3Sc}6Lj!PjGpO=PJ8H%O^Y{mzUG zefS&^XmXA}H-3{ro#j&AsKrGN`3*HYzw@&lzW>^FysY=E|L;jg66I(m(fEDzdZwd) z`ifg8WDtP}X`}KCHoo9UNqoo%fqj_)(*ADv%VKmfIkvi42m2uqkKR`)~ma8#A$L;_{7;OOkPFOD8~ws;&$n zpS8S|IdXT$-bwh&D$yu@>G!z|KWx0uVHm;{`ab=9;N=gb{d@pO;qK)0PaQqwQd!M^ptSl7{cx`&7hI&hW zCx6HERhJ2SjA0Uwedwpp(fQ2a$*P!&uDIKt_sDpCcAcR?k*PX*NzZGh<{k>*i>U{o zZC?t070bZCKEbh5gy!&@r#Fg}PVaGmFb~eA2sRW_kOg+jvXW3VzQ$Fb+*t1?3BJEP z=q!|bOFy$*DZDjc)v-N4Nu|)i%&0_fqXNByRLNXKKi2UY+ip#Oa4Tz?DARF~r zw9QL>yp!isGlpPBX5V5D{xP63cdun@-s6?uTVe7G_%c()&$!zL_|+5H$WrabdtxDj z$bw6wpBH~aY|a{&n;3?YX}(j5Id0bT+vd5a>(U+sj6T)SBpxJyuN^{ju^L5r0@A~& z7B?6P&0GI{#I+24N%JkgvM=pk=?B#$^Ch+j_Z2U7U;9ZcNQJ+$pq36OF1EbLl&id` z$x323lB)dyES!xX?nd-CQ^1}-7;4XUA(Wi8*xo%*0UmnUw;~5f=$1rR{!4Gi!OrYG zml}GUie+9L=#3D|cw$cak}9I8bThG*`kl7Am%yZ(!w zyiI${#B8s?&HM*y%}$^#1kU|v_k~V|Q_Yj62XTR^1XG$aGd0aS_-q-bxI*D>ci6jU zXxcg&DAqnM*1LI0V6{qb&#`0i<+iQmm=H^tk*@6yk!UElu(nYNQ;dGQ)HyZfQasJL zsimbAmldrz%tk1prl&`dK)6akyK_J;*!oB-Ns%305ppuC!6!Ffw6?b6eaWczN#2@Q^|C4C!ne1(^pq;zkM*P*-}&vv z5jNPOsM%$0UObwwccidZ{3{;w?opw41M!7HaWWe0+?|-Ct-%IMuFYn3e5sw`G{w#> zHCEeTt@w+_SO8`^(x9~EZJ9R0GITTPe93syEa)X;jGYqsRrEiHJhw5RzZ$KV@q(W) zc@5SyQIg9S&m0xjG}ZFeMpqZ_2hB=~3mtyl-|*03=z;2_QLnOYn8~Cj$(#dxwx%Vj z%@86}0(%G0?$;#h4Fph6;~#PKpx91UMhC^g_~NAjcf zpF}kNYir=Y90sj8vOX~(mdkM{NSutZt`N@aXGGkVzr7zSS{Z8CY|@1nkCy1F*Xp?C z$^l&o1LYRxKbw~FxwxmHa`x-;m?pC))EOEp=a&@T0YGQNLroqUyIoF_>JDh<;79jvBxfHm}?wuq$sf@KNCgQh?&J zMyoGw-yBD;*_RziWY0qb-*yn#I>Nn5#PJ(bhxU|Z@1O0K>^43V5Cc-s8|*P2c~@Cj zp&vhnbYTx=lPj@4UO?tQ<7Du75&Me@T~wkVcp=Z6iJ!A2R)TN+CLX(@A!>WH41;a>$$Bdj32+0?2|Dk?QH46VXzLv$K! zX7x@df1+EFQ?b%7BlWBHDzda$DM}Yg{c1>8{-F@+uzfz?m>Ic4yiLk_awbmd(m?E% z{wx7o=Z!cPLJiaURd@dn#UJ_B0|GRo?B{%g|z`pA!5b?f9-_6zCs)+{b0Zc^F^_ zmHBQ#>|=miyHi}x;&80;I;_2NUBP(K-On;h|CP6uv7da}STFuHay=aOYpaL_=RgQ4 z5Lf6r=sJ7$E{s2+t8zRQtAhqfG6iZ>t;1!LbEMn$A-lfg-^xdKpO-q=W8g%_Zq;q7 zS;6q!+5}VI1^qPgR5pjmBUM8; zT-U$%*DmuH{cK!_-Cm}}JGM86KTt|pA+rqWn?n^5*XSgWR^^o$>HDroJz|kC7ahfQ z`}ZxP7UOQ@{$7xh2vTjOFi-Y`Y6N zyLx!?`8!Hvn#g6>La@}X_nU>u=l7T-D=V6aookMc_9S*sOZ0Uz%E_aevN%7JKbR^sNfc^)6clei1 zU@WLrRAvXy7PxV;+shPR?DV53@m;q&ni!qGq2oL)q{P?1pgu&sx?z^Jftcg?-cA#? zoA}`rS!J^%6iJ06meQZY=MDe@z=DwHx$`#D%@z z5AVP_atittfw0Ph^YeI8OEJtz!}D)fNZY7;28wKYUnlxD>}x&*41#ce%E5lIc&V)) z=4Dq1;d+tHOOgs%=GVr1Fbpg%BZ#g(nY%ezHo4_pAY)0$UgGv94=v(XEx9c)Hu6X7 zpzip20*ms-1ofGl?Jf6d63P8>`7`?WnfDeNd1lMQ*>4dXm1c-D%9|CErS8f3mGOk} z&R#W6`#{Ve*^@nf*}skMpe0}YGaUYM-Q(b6?gy@XNBTs~k(b=6tfU^2AycV5wJ`hZ z_knpZG8=`kY?eu;>Id9IxwIXol_2BKZh-}r= zik;brn6~~b-$u0_HCta#1zqO2-1+Q;%vVCpr>VW+3fuHyEn0^=Co%u z?m&TBU{zqlrFiWi=&e$$&nH12y@q4;o9_70KG@Lo-@3+wR1E^1h9GnXHKEY(^X<{3 z{4A}6IDHNEnv!Fg|^@!;0d0Gpg_V?btW@HKW|_v~<9Sz%@1dsn7;6A;=) z?i+Zm6Ya^s;IW}dFEoR!+J9|PnB5y`5h%E7=+?+16LX#Rj{dUXgm`6Z(OKT5Abau$ z?JP&)+~hP$uL7zhoVS0uEhfk0hBmgTE zGv$o{#NSv)>fvK*;Fme45x*J$>%edp+c`m9?PEsKL3#P? zwN|dMp<`A#>BSmaF)5P0a}~qm=lpyW=A@Nk!sq^oawqW)nsi$ocRaBB)5mny#xhp|nO)v7{>@ckW zjyRN1I+AMN+HeAP_EU#6-7)1|2ydp)QD2t(;V!Em*Sj*9Q-A{2nliISC-;9IFhZji zw2BUbz$swPZyIRBHo!-{)R=2~9|DZ}Y9+NG3cy%maZL6#$YvexATuWXAFJW=yNGyM z*&)cj|6hi+-Frr=Pm+`-BbmB>$~{w7?YFLs4)=alq@Kx0W#(Al6xl&x2x-pWA6^xQj?s{+QilLpT#8+A6io<`C^^MPf4Rr8 zKP7v!jtllNXn zg&<)nn6KwG>lekgTkBGR_x|XFV!JB@_QuSUw8UZ&dD-_dB*OoMldv)bq*B|9V*7e{ z(uHpaXn@;^9XY$0STd4SIYrE-Dhwgo*i;%ZdUipE$?yx8UR>#kqV=`Wfy5kGjfg$Y zHkpOmk9u9G%5Tf)qhKm6)@M}AKyi`p=U<=4UcvtGvsO|3N8(55!5>WmE)9Gd!$g5k zrGfa^ZE~}Yu3X^=M6kN>RF@{2dQNteII&174uG3Gd>w)#)}i11lJU+sDt)mgJAYL4 z6}>+)B_z?OT3g|0X}0cyUWUtO^PhZM#)UmOgYKmXTImJR2%ibrHeLFIe3G7dJHIXdWY0JKEzN&E(}|*TcniC!ODzC82cMVv-4hj!#g9fwq#YYD3@_1 z2cR#GEkOn+3i&S!+)$lxtd7FmQW1s2t8i7P&`o=kvw5cB@j3{LOKn#Q$&zzi0BJs6 z>wh^`*t-)!TVxKEA2n&v_vk{{QFabQvlag#Yi=Ix#c;1r?+l0gaj9d*u$SPVJpTDf zb3QMIJzi<6@x^h}`Mb0(X7QQ8Q?VVEU5Bq;MNiJ4~(iH9$a?`$YuN`_LX3*t1|I`~4p zYXAGR%w|~8(33w$4jmHZV|rp-L_+KRM{PycCcyQjbAq!+LX30m*zbK&X&@0du!<>r zbi9zbJdfZRZ=R%!yOi%YL+rgKoQ)S;ZG}@#g}MI_@gEP5aR1i>#3Hg zSGGT=so>BJr&;7vHs&d=ca+0V;G0r56+xwUWdc za*F%umqIN!Hu@6P>E)Xvlb`^tI-n-e7nAE3wre$x>WxDr!X}%FW$rk>o}G6=^)m38 zi?R#zsoq7Pk9==8d$3M$Kcr=IawKU@#IfTid#`sTGGR2VT=XklOmm*BH1_Q6u|Im8 zqydM9cGa-UEHTqAz-mhKf;RkbB3tG7M3N|gJ0Bw%tFIeZR0_?iWnQjQw~+OWoz6~~ z6aG)nu>xW86&#={L+}RgtxxXLx%zO=FSpPqIs+1RW_vYZu{wfJlABvnMSiH&OfRO? zMG~hB#XB25C8w!EAt%%?qXXW#$dHbQX@7={Ocrl0sFwgUi7W9vd6$ii)Y0)*?jM3t z%K1^CgFB_D`f1KA!ksi%8HI{1_wD|(xNY6&CP>n5o^T8mm!1%jB?;0%mQL}-UvjpT zna8upm7G;s`B{g&nG;zHGY@=U_a!+*_t<0ci;Fsxa5;Y;U>w}8%cUt_hLT#TRWi?$ zppV}!!1(|Uc)JwVPw*#}2kD8;hv(A%X2dtt@W|&{gFe&a>`}QVQKfk~AmYs6t2U`v z7U*s;C%k5gr9{6bwqF=h{s*-cH$9lo=D9x>|Fv>zM!Vg_5|XXh-f3V`U2)<5P~@&_ z-0!Xs`wj(e<4tyo{sAR;3U#J1-z;;l#vI=c+XyH-zU2N|r{#H@hdOal%HJOoDaEfK zJE}?4)sPZsVcnTxvlfe-d4qRhjvwNC#mR;-1#J-tFIynITkULxo?=xS1@ay%Vri2^ z{}@3obOIl4_D|36g;LwW4HcgjnmhN(vr=!Qll0Cy*}qX<_99?EZ-ZV({$Tw>^RA;c z(*WRRO=U`@ByV5oprxU~5F=Z7LH)PmvaW3FRjIp`aeFNn2YNAf+wN`^3}1NnvjEWt zo!$!;ZTa(FG6A{-tl=|@_*s8S$L~;r(F+T?iXqXl`1X1;L%byYZm7$dID2u;d0y<> zfQ&jzvvd4qE%h6WxL74;9CMyXCt1_qyK=w|D`af7&45Zm8(00rpA=)DrIrm5yQX8L z?ey9O0#`28F6v^dI+}&{Q*aVof%YmiwN)F{s?Ik&+n?=?W?^V5?6_M$0x$a7STT~7iU5~HBK0X( zn#VkxnI?bZ$6`9b^U9`aGY z`^}oH@6iS$cRx-lYz!~T(S(r$8ppZ_p z6-zlvj%Lr)>yI*nmh1Z(hvvT9MZZeiat;$59kHVXzMjh^ikMP*ct(nss@Nf0A|csw zB5@-T`N?@eCJyh8>XBY71&VRIqZ2fG5#Bl^b2s;)?Q!$^rEiAwUW%OZ8oeWIDwg>XY~|8Zve=f)0&cXB%RU}0}y4RcoO^BVS|F#Fe^{Y@U}6{1Aq zAxL6tArYF=5BZ)I!A1V5h|}%rI%Al+QuPq|M`+m|8CbhpyePGS;$SO5a_i584S79Z&V^u4_IHeE(bG|NRlN@_FS6oY1kN UO5-fC2zp*H2?g4b0m>3W9RL6T diff --git a/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png b/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_128x128@2x.png index 7ef96b38d9c1844ffd12f31c71e010917c6b42f4..4c15f1e7bacc2edf59d37fc16f1824382b7268dc 100644 GIT binary patch literal 20550 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 literal 20413 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 diff --git a/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_16x16.png b/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_16x16.png index 8bfc861be002b73c1d687ac2540999a7422785f4..0acd983b97d8c57e795ebcf5ccb1f72bf07b4dd8 100644 GIT binary patch delta 609 zcmV-n0-pW51xgL_t(I5v@{PYZE~fJ-a)bwCOg{Cat6~XlN9J#$r$`7D4EP z^#}N*eG;MIZ}7?AAPC}9^~paVLZP6=swFm7tw`ERl%%FjFl}tzWIw!j(ri+E)M0n# z&b{}XIrq*0|2ULx{Qc`N&Zh^@={~<<+g5i7nkLX}nDxcw&3|`yo}%6kdIa-#!xx5A znMa}FL|W5*fZI;lUn$dWHc%_BFBey`x5n>P-f~0|JidY8#mR|<6-h7o|S3mi`z^$1v$rTM|R zu|zHdY|W`0ReyyRq`G064SXw09rn9mi55wY z4~3DSlZBwhH4iqEL9#r;cmypc;P>g6ymlF(P=70FzXw8Sa2yw^su0TSJHuKEq(zge zs_5$r{B>$B_Zb6+L#S43h{dA_5K()`651PHSzhXaqKuVE#7A9)#=E!5Gey1iQP|FM4I@@sO;dLwF{A3g%7)qSt_? z_n=nT1YBQL_t(I5v5YwZW2)xT{CCS(82(L7F$Z2lvsQ~(?nw8C5`dH z)cB(D2Ym4I5x(_58h!8wj3&M`KB%d;qyedhMx~mzu@qV$h&0UIvqu@AzUj_f&e?0P zHEZuPz<-7`$bYzqQ1)Wtw8R3MZP|kmn8M)N`p?qK{ld)^bborFFR;2aekOGycR!L$ z&nsL7++N9_x2UvC13xO?*1vzw-(FZcSR=#}czg@t?4`?Z=PoQ}!GnVAii>W*w);*b zNrD0c<<~2v((`BMu0KFqA(hy~cy4UwcviO=ifaW*LDPazxPsZ)l((k`nX;IQxTuXy zyw3p#FJuB7&VM3`8i1}F*x9b2R%_tZY93!Vcff_nV30G;10IL+9_l*e*aca%#PFsQ zair5JFveh-)*#nokUOw^sV zEEMqrO(qj?YzN)0?yX&?4dPIpC!il%9n;V;;xoxbU-0Cq42*UI%BTj$N6^~Z2XTCX z{6@Wy%zP|o!l5}wjleRxkQo>4IO2>Q$l}j54@JGKz;5kfcXOjm9ADtxQ#4ak#XGKT zE{{znGfGS$^6)IE#ZJ{ieQ)@4SMn82f9nnwG{o94Sm f>!=;Y{(1ikur}fQpvPhP00000NkvXXu0mjfZuBP< diff --git a/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png b/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_16x16@2x.png index f4391618b615fab731ef77786801a6a303189ae7..bce24058685a83caaa42badf55f8f578b174c052 100644 GIT binary patch delta 1470 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 literal 20413 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 diff --git a/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png b/Free Ruler/Images.xcassets/AppIcon.appiconset/icon_256x256@2x.png index 3fa9c08b066f96a1bec76636791b3d2cc544fe73..8b22a079f21104cf63614c47bd2067e3dd819840 100644 GIT binary patch literal 46228 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

H8&79nCLI8Qjij?qZe&^n`V;g2q%u zMA7s;5K162LKC>8cf4sL%GwU`kM+q7g2PD~)}M>tPK0bsR96T^^)eG3L~x%Xj#B8{ z`e6y1Kf102pKpLQ2-1}8kphk1>;nq!{ri_etSI8GNUp9FB{ELQnJ29Q&+)LRA0 z24mtkd&wJ#$y=$@yd#pk{zq%t)u!`(8Nq^wR7=ZE{WRU|5d!ynO!;X0(e#|xHb9$0 zC*rx#V2FuJYdw#s%g6Pr7c1xr!0+8N=Za4`QGI7#%HY9&1yY;rsk>3-y9bhfmo?KH zvf|%#t{1HFi#T@unHSI0KjE038)5tk60h$R#qbv-Y#X^X3Gm6fD5Sa7-=3+SP0SR> zie3*awVd(yzb1e5Er%AVkKl-)@o|20BEgl5wCs$?yv|R4tYOhvy>k2%@k-5zN`3r? zT9A=A`VwI;O1s{dih&!I*Qv{MU`_~p`CjErN3kChyBQvoKvxP=`bcJ|)PFxr;E4Jp z#Z&x6kC$GMQ%q(=T!)uwSVXoEsJ2daM6-3Og&#Ifx7x>^?yt%qXsOvW_L3@e6LbhD z*1bCl&EBMpc<%nOR>YJbuk0S^NPf)MG>AWw%BcY*o9SUv$50mwdYFe(fW%nIc#0?4??Xa%2i(DeU?%#_0d@ ze-1!M5g$h&J`SV(HdOWP*Rp-Um{&1ic^ z=$>2F6B+;c=-S8$;g3`oec!a#thtt*Q`sARCkrcvM9p}uyfAuk7oN80tz1uXU*{^x zt$tzC?p6r-NwrI$!+d{u1Zvh+D;6LBG3HfM<&Ar_|K;P!WmY$T?mH7?{t+D2^lUSG z>lGpgP%>&<{7Lb3f^ubZ9*ZE2;6`_QH+EpQhzgqY zUj|u1&D&i+fk9aABwc$8?6zS+Iu=g`3^^6L zasMpNmNB+*ViPr8^vLWd1)5;H2%k$%kUmcP^z*F|+O&2+c18@^Oxf=)uapdti6!=A%vDd)WeoNhpe zq*H*g$EZP$@2pkd4G`vzjz=R@u-d!$;1^H|u^k)L{PDFV`s*?B(@da`nA%S*QckUV z&px-+e*k)AE?;YGyp8x(0%QH|qrUyH_l{3{LIGj~PjS)npG>d-fB!cZ!^z_L%@?v+ zW7rGu@`C$8SBv}SJxLE%69O_7bIH!^f{9G0qF@0L|tyW6(cIxGZ)I@%{f%Zg5_Oso~J}+SsR3YJI zUhR;)on;0Uk+_)?9KsXb7fv_99X%2#Ug9Gj$nIDkkE?{88n7SMuHPKYp+ zsF+>c-`L-;KP)I+>{9K~uJ#2(@TY6a9xxy>E2-(iwJeV%4JqW|} zJDFP7Uy}?%&_mFl2}6RNdq(#+Zm&0;m@D!uba2cu7tNJ|U=&>EAf<~>F`O;ilH2HK z(VT>@&hS7+cyY(-ddGT1`9bj#yTomj*l2GajFo8{SL!+$V84W~t~>+X+6xNe^o}hd%Cf~N}Ti(!w%y*^o-=;$Daih^d>1Rh$k7a?;7k9QEtJl*~Ty;O7|cJ||zTXa0g4mOuX?E>jfdtfA4QjrW|%D+VR+Vxf3dBYJaA zgy|QoHstN2+C>gazvYxw$ph0V(D2x~gV}hpo#w#+YAUAOU7sQZEb1Ae3W$QG{rH>R z8V_f=`-Vbw>$m^icngYOW+EG=zlo$^5#%!j7Mx`a?NIW+R4cG(i5_%v$YrPE+$H6K zR{{|zP4hJ=`mq1qxc?etTlyd?9&i$Omzn}-$0j^?;Ntw>jfbE#{QtltZs_ydEfqrH zJjM5K%Fu*&b(KQ~{-)L4j{}#m@R|A~L4-Q)z(*rcn>XZi?{D8AkPYs94&=uvwfA2? zlQgQcd!6?5Wt2AbpgDdY&hu6?SEjbehCOK?lk;x^RnJ>+uvcY#6y7RPxPc&2Yu!@0a?=GDg+%DGUC_VUH9xHf}-8o%M znZEsRcfbd*;2k>L*#A8az7YbNn`C{V|B~(GvKPSLMQ5y5kiT=0GvxwzDEM^PW$f$4il(AxbDsT*Lw+6C{dt7$zCW;LA`UB-1$se!QI5MYP+*-?=H3d zJBNoKan)Tvkh=@C9*Gg4^$7aw{>vX@%>;i(RhW~+|GR+(dbYSyFn9mQaUFM_u6?aO z=-<@Cc%&&v2{hh$s())P@&bSV|3vuzA`z}aoc8~65}Z zYaR7??z#$|gBjn%9)e-4g5FKWcNu&1Z`FoulxPcStv0afMT|R!+u|0 zPJO&n;IQ##T%Z(R?Dr=jRnOOhaT`ZX2Qkm7Q5os@9w0U~IZeI@4=&=PpGX-COLe{ZA?bP3!(N{$>0vmq8@u(h9${dDMWm zxA8l+q_4W$*7iN!+@j2n8hjS3J;%CeXogk-nB@tMDlwQ770r4UNNIb(a?z|m^@|ME zi|tKz#~ZkICuPMO?|PGp^{NUZdDM-y$qa}E+l)U#x!PDWIv9gqF~r{=5$_u(uwlv3 zZeT<}5h5hd&!p%ig({*40~hvJzmML2-pQBRvtXa~Aou{choQtYc9iU0yi6Zm>7N`s zAYLsht!R=fd+>&pNemSyQ3Baoo6iGO-UmfMz9Jy1Cs+XPhfP=YaKEj~tCiEsvHivE z4bR(~JfF)?9Dly=%B|tQbztU(kP{*9%~x$2zoiS`-Y76AR|5koymRb=-#4#{aPD+b zh=MtZyy+6ro{jaB7#GqnI!1VYC_#unO)s-9mIr7weNVQMGkvm|#R&BY8CL@^-vL!zz-~OC57_HdxfA&Gp z<+;*zki@|K3$$=DuA{v*hJljYu0LbeV!ln8@@gtoyjcB3Qwy9shKa9o+pj=bg(D16 zlBM`T0$|+sr;DqJUyjfACNygdAJQ}jP?SOTTz>DhrEiRXjQMWT~WLXHi=f>+T1+d0)ejmv@E^Cq!B#5d;E<3EGR6oRB^ zZU$Wiw6CjrQG0&;;o~eF8?a|4@A&ShC$r((ZmsyB_`9AXC}KxogH>BwThCpvO9At4 z_^*2MBn0=Xytv%=h*u1;5!AY$3eR)89Qfw^G5m4pM#smC)pOIe92}~tB@xogb>`!uGaB8z0ZzVryfpU6w!9dD))Q~cOJ;=Hk0Q)KaSN$`A3GdEG(%P={ zMLhQ3w3RTG;Qj1e2=Za@hCW#*s~}$>6$93`hZT^i;gf+x*b5KH|ur^aD2-`MX4x7ulzZuvbQT3KZ~Ymg|9^gStv$?c-> zu|lv)k3%x)Y?Ukm3nA+GUqA!{Mtf)mK@@s7A0Klwekv|Dz8(?~;|yl5u2&}flER0% zG*<5Ut#{$8|Zur6ZdJr6PlA^wAkQ%)MR?p1}1RG`}@sB?x?3L5a7Qy?Na-(tYehz zn1t#}|8@_l8)!wz!e0r^^8jKZI~E@3t>aTbuO~UFweK+h%uVXF=unXJ=d3ek7S;ag(Isc095SQq{EedHItj3?Gkl%mOsgDmauNmJ3A&H*U9dN z$z;)@{SK{g=>YFRH)*#rAlalr`K#|}WrP?p#hrBWXidK5>pX|v)@lNy1lB-6%yHnx zuhQz&*_}P9EF2moFpYNl99_WH1dS~T=ZxbUQvi0vi+ngU3@2X|QLTC5{+;q2GLn%X z`SZ&%Xv&{q4;vhPNKq+^!8}UNYumtz=5Ol4i?~LAc(dB3W~PR-9qW%-n#g!NeAS_i09>0D{o*jT#%UCEIm{%aSRa? z4Gl))t@A97jz@zbGj%TMLOw^K!3^1{@kA%`U=?g~5x0dtN9wj~C%y?(owdASMUv0^ zKoFI&&mQsdq;oU zf(p7tv}eS~QkoIiCmd8{oaqRYx+QyFhipUy2-@c7e`B@!g%qKl&(Z)f4q>NYTmGQ4@P0bvt%lJolj*GgscLne#&q7Sf`K z)7mXHszR0YlG+$cZ@p(AHi*JVmj}Zcx^#2uU_2RA-<-FK!_(hc5o2Hee3%rSzj`g~ z4_&!U`P1MYu{3>k<$We=+L{GsaW$y~j~H6|(%2&D2%->r<&{>ZVXaNR;wxNm{vt-V zI4n4(7Frc(tT=}QK5ZWg8{Jh;`=+<7c_wfB2oSvmds{3Go}{s^AHGcOL-fwNwy^w| z&EY5Lx|KHC6223A++eI&OF6On<`WJI+;;L27Ccoe%r{Y=iCZ1Q{65N@U*0s25HV)5 zi;~@S6hRF|WVfERd~iQ(CGL^gs5nc=0ZcDuUoSpVRy7OF&o(X)QE5B-b~KDlj=WEC zokA8y-i;Ri#AEx9^^cF-dpxR9G6+QoDK6hVunwtG5^exooI;T2YLJ!nh8sS>6t|n0 z03Y_aZ7o#_ZF8QMY^Qiw^sI117#*g>CfH_fI#TZc_8Z3R4k&W>kS*8>D~M z3GK6iGryINFr5{1>feF7zns_9=_V4oxAuZkzZ{aEVx&~4pAK6p-2wLaWFVA}9Uy=^ zvs19bk#I7}6e}!>?-m%pe*Sc9!hPIXh)*e)*C6Dpsj6CW!izxQhe5yG1c2BIEC{H# z=&AvM4TpX`5>1LLMCz=8Jbt#x7vDx!j3MiMK_HZ;4jGso5BU{dQ)4wYWtgR(3nyE} zHU;B`5yro~K>Ir>9RHxBe_$Gnog+n)VqSw`er4!27F=O2O$`A1+hGhIeYO)sYkRxb zj(=Jt@FFPflYwW+qPbn%Nyk!s!dz(O@CoWUx&k5xPWyOUmstv1!!mjv^a{KlnN}M6 z^Xp;L&UeHZQvU5*{?6VwDhJZ#7dC7WZ}AS$Tg83cq8Y2c?Kh7xq-geDU~zm>*3Xvu z(L-99&vhkGnYaJs+RrS4px33s z26Zk9T;1l_NG%j7n&zQ?bG}YsTucYV6@NIXlvk0JE%e#!KOLQPa!?1mXZ!SDM{_G(IPi@w0Ka;<_0U-R+vM-rKfJ5<>QIWSY+$A*V|GZz!xQt~=j zV&NUL=4bQ!`2svdhG;!&Abgyn%T9*u{A|G>crK;-Kx2$x?(4~Zm+WXe*aQ}J&fkF$ z;n_rmE`edg9%lW`S7D{5La#}p>0(31eMow>_fHmeGjsZqY*A9A}Qd1uzR3Od3TW8Q;R`MPL~!4!b1gA zECp#;BkhNoTvCb?Q#xxM|C9%uM@NiGs6%P%4$tv%h&@-VS+Ik3F7ZTee!JR5vwOL2 zI_Q*6xE7Q!hu`n>jCUVprnn+%X!Jcy8tKNq53qaPClp7`AZ0)jL9r2C!HLkZ@cAT3 zVHT3ytHiW$?{tlPBGY=13JUKKH9$8gqwWK8MloaUA}#xGPDfR52AoFcrMkYp7Qbyg ziHbFYF_SiW`sdvY#07$=VIFr#^or@g$HS*PYlqRmnLV_xqO_wtLW)hsx^QU=i3C%_E6^)UJD4kxs6B0e`(Ll6ee)juY-?0g)TN!y_W zJ@}$^`l5|H#Dwp(Wwc+^TTGx1MyW~bSM#MD=sv?n=u!pKwP4AX^{t=U(1eZJM=vao zee$8g+z0&xnALqe@8A=Jat?8mBa<)fg#U=8{)*VQ;yqlWgYQSUI9!pBs}PV&;o?u- z#`r8Ad!lEc9d=+!qgUOFM`xpB?gi4J7L3Cp1DP&)PqM~CnO%Mlz0G-osjIG~SOx1N z27Oo^ga~+t$bnbi)JI{0yn3Yt7PG9hT6|Qx`&f1wHD)Z4j~0AbsaF<#8R@eGi5@_w zv2=BzABWRhc578j_P;31u5o{|{v;pIRz4~zwi3p=u#Xb1z4dRL=+>O zV_~YL3b7MzXBqw=M{ZRurh{Zdr3dEU{y_&o%qNc?gdz?V+*D3`qN1G6tqz6|RQPJ2 zY}mRH>U|`EXoq{~Rf5Tf7Ix`d-KX>DzQ?8!^y z{()v!nQzb}U^k<8;Hf$L`P8-h^?U_VtobNaNp20EQ07~vfggV%4T^H59hCS_rYRBt zo%hYT>sSvqX(>7Hqu05nasw7!Q{EWr?HhP6ET+ze>{=z`8kUChH@e?0fbOAzly zTLE4&HSqv890Zw=Y#s#=-CM)50WuPxUDJtQCS?>1bZccb9NSep57{phSBZD#Xeh!~ z$>Nee+cCs|o=h?CO)a}2Fe%w7@UZUB{=D%gCAc~l1?}0dPyW&iDY+a3bw3|0iG@>^ z$;nwtVQZB}<5~72CejxM(ajvq8tBbC!xfF0*`7u@@w^M4|3Lq*8MaWI6 zOki|xD0q^EhNWRuTC9KEr1`@fqXX*R4G5ZYpS+@+7Q%GDU^>dg;so^fx@g-Ef|%A zg<$aWyX(D23(KpWD2@R7uwzp&E*Mw)bxgi(YLv(){cvwkq*glA(jq*b7?_RcS?*Or zVS^~nHD4VFdxyEhJ;=YB8^NjL1=tkcB>JuTkg#2tDb3m=hERTyG6RCv%%UKlDO9MW zFx;h44^BR*LPJ2Xpe`$0EF0J+-=u}l>iLdw&XI1H22L$9${)n&D!2p=LKwmyo1!9A zA(U%hP%&I|figTuUICs}^k?{KC`1?8X5OLy_6y*gR}ZgV5d5<>tI##X1HJQtRmuWQ zW-%^VLSx0s`ze_Mqb6}>xpA2n4z(t1FPC)msQJ5-6;ql%kIYeJHA>KY_CTZp60em5 zYMdrNB?cMp!Yox<7_ku|Q!WivMI?ZI3Qj&sDRr6-@ZCl2YheN^lCsJ$#;b)3R+L5@ z&Sn8Bxk`B?7il{~An3h+>N_BFw3Zr6Jzc`2@}QIpM=cV;eOf%iRJ6=CpgtgS{Bh}r z;mB)hu@h`v_n~)X6K$(nUy4;9V@uQ|(;|db-1SZryGfEKeAU#r9-`n`5d)(Z&$RJE z8S{R(6I=E24QKJ5a!{`)=-$PzKHd{toqGBwdP=E{EL}ypkoWLwleH^?aB> zwRBqyZRnnG<*ldjQ8vWScS3O2hKz(g*}Fc2ZLVI zuLL~naoJn6_;tmWXa7dI5>V?~LKFU$RcRHTEUt0aWRn59CqO1#?jTp#+_!+t`CLId zbC{ZyS02)uT~b=AF8_K`33TAh1YW*gUsT0Nk3E4)f4HqKR?e9 z2K`}m?QcJWU?K*9#$W1Mb}Kkh{eo`EVJy=bAizSyt>-o`BE&J4{V(x0ioL@;zDQLB zcHyb>TN2V%K@{*$ERYvC+PbN4vIgqGTndCRB{>+9Kt#j1{PD26Q_kC~w0)L-epw%4 zyPxL%TS~v1CIj7dJ2J!{P2V6*(_iY7t?N_DO_dtYB7a|eg$lp5CbWzMQbX?cg?9Xt zB~8;W9r!uoFE+dsr5Gm`=9}7x=7fN-<=)?*iNsC>-*p+-x%S}*~%mcUDEz@4i?rjQO=WW(h&E3q({`w)z)%uKQ4k*upmV;O-g zC{QI7dNAI+|CG;jCMK8@Ej07?<~ri2+-q%O6x5PxwV{IgHuZy{#>Pamv{y!HPxP@h-$uLn5=P@thKq zrFZM8#<4vnn-pUb(R_RPT_g)jMg}zM=FlL7#|vDfgV^23Cz+hc`#bM5_mWP<5>P$A zs8;uqMobLQ9o2#OCVBrFgIJp7`Sm2f)WzV#n)vfb&+ z&!9@G2|fyaOXAb6#zkw-edENal<06px$GG(MS)_us|T%|Sa?DTA$EJ_bd zr5}lX-7Rn>V0x1!9 zN_f>&^WEhxr#&Z&IaBixWD+~*7V_`4ouIoi)AHK*vC5H1dfqkM!e-g^Ov%BL`3|Bf zw8W-J5s|6G23^Z4Dl|r{Rd^T$aRv8Kb!%6MkM}}KkN2u5l7N)uQ-3$P>lK~2bzHA9 ztnrRviWBt1^xHQ)NIU1&62|8@4-~b5qv6lW`x>eu6%iC=DS$G@-!_T3lM>h#%QTb-F{fAm3S{9YFBQTE+tUCr z6*Rcv)>F0Dt&LhV#KS|7c-;ePq% z@;uhdsqZ&`_0rXOQo)mtG0eBQ=BQr(0e_y&qDYZ>BSDj$Nl&@!*{qpDyzU_d@1aYO zDx~E?17CM##7M5b?ZKuFAF%itr-D@gNDMkaBGP+bqwtN+B=^o^Q4L;5FwQ2l%-bg< z^MP0Uo8)3tY->AdKva|YUj6;3(MIF#`PqOkQlA1gq^mvpdwrVxt440(W#uIcUBC>C zV=kE|4|v}n2U&Bu&PB0t#`8gHz^M5jwBV9iID{QL zbvdc4dQNr%xpF+tUvjzYtKh_IpH%zSc67WWnO$q~QOvLl`KdR%19T-oE8hqWluUBj zZ5VLf)~kU2YSLmO;Zxh)R~Ul4kT^3z(}5k7jjY@C+Ar`yx6~wl#r{-YWxnnmx5#mn z5&nmK!QT+|n<<9@M{6#}pih46Wrh7{<8}_IL;j;TYqUz%k@pt88%UiTI)NFmCCeT~ z-A%aSXv_5i-4qWMvU~NgDB0LgkxhlvuueC9IX!Lj*j(bzlR=uv+u509#H5R+^)I8@ z0;8H2249vwz;QeNL9>u$$3xLEYq&->f*keQ7*`_qUHW6@L2SA zePhFJYg=4Yv~<5?5?9!BYs?+J{!mtZZMS~aQQIl7>xEB7nq%2RLpRuWK=+6)9t{H; zjG%$il6)iaTu*;oFut2P{CzvQT$?fy$Fq4rv{7TXvi8+7R+BJQL5a@bPd^Mc9ul4^ zJ^w;cK|x8+pCMz`*Iux}t14edl#NY;p-*C7+Z7x5^QJWZq&n;*qvU)Z+GvYj_IPHf&n@~* zNC0)*F21QYL!^|6v*~Sc^16jsV@V^UIW?*)&5XUoOaJhB@V!RKYkL2E;L;*%o3`IB42> zEHa??8Y}(=8%h-l#2^j_Wg<*#n*cJ4L|&s0y+N_@5GouJ^OYgyEp{WwW@ z@}Xr~Z1lWG=R?KKTAa8-1%GDYI5|5EvPg)&(MbUt4>+6NkfQNUHdd`9aGxZT6EuV^ z5yI=d6m0Ld!U_gI^IF~#sJL{$-p}w2Jc{)3K81)<3~op^`zWK&n_ai+|52RlDV@y| zXkO19$Bcd!i@l6>v~#omm20mho^THg;FMez?VgEnThZ(54X%y{?C#6F?olopZ+A3Cnbt7mK#XhnfRl(REm~2nb*#07OYS z1m`o9MtFDo5z3q%eS5O;pF)}NF5A{A_P2E<4^U`j9Pg8(FLhk*Wghy?B-PLSs`o00 z(;?V*xQu?>0B?%I+hq`)VE}&ClMy|8(_CTF5?-)0tK7JE9p&RP*}L)MkxBM7QS4AA zIw*T$^&n&@H`gZ@F<(s8Adlj2Hu%`aI=;Ftyaan$U#BokCk}td&xKD7OM=28pD%Nm zLc(-{4rz(;v2m}h>iBK{iY?nLo%`CHdQ<)`f%5ysZp$xeTPb^hHs$0sk-GT<|LF!k zyLR%zwSj|7d79;kZ_7&6<}WJ5@S(7EnIAbcM<#*cryNecO$`YoSmqSF^Yo7U#p2H%D|IHI9R(iRRrhBafddoO${f zd8^l$1nC=(nH=yP^sY&;Uatn@m{#V;M;qCK#LM;aJoL_#XR zbsG4vVXzy(L}JCytLl0o1Z4bEx66Yj>lUsU-C{uh{KH}xL;?=74J?Q;3_%7c+6m_K zf~SWTlm)?XS8$L)N|kpCcMse>r~CYF*t~EJA%?pL?w)%R0lxPC&OmT zO8$Yzc^c`M8{(kmx%5PbsbpO z&t1CrccwPPLE3J$UF438b*@^aqIj7t7C69#kM!P*mg}C_tO}~;DTZecTk5~%lb{EY zxOpmO3_*1`o~V7W0KUJojIGzRe1bX%Esu4tQOmUimE0W(z=28JYI&{IKBSfEJ6yIc z?UJDx&k(h^C~s!$nTnaQZx5&nHv5Hm< z4p0}|(cO&%s_!X0&EF~V)48WKfmeqE`t5@`SaXJL*F&83if%V85eMHLZA48C0%RQx(rMc=HZ0kmN#tKZ5*7HyE|!v4Z0>Tvm_u z64GQbbTO;c@xc_xrb(2vI*D)B@OvZi89#NUf3AH!K zTHC`vEPr=wg${nfkd?qSTya6i)a1MW1{@A=FMwd@ca1fmAz z-6|UkAF+wv<{LgHf~25yQjc(Ea=>F2AVMLY71mAlTU<}{b27|Vq$rT|3yl@cPR47)*wz1Fdz`!d>;39%rVkdA*B{7|{_^0Fr0GE->I2!TR z@so3}(66wj@_#O`$%{d7@8ySWQ(#U8-}813$61zuv~a0vLV?;)`uukk%FAa-PwU=F zTuj7%<%fF+-khD}wC6wH@uFl#e|3cN9brxdA1o`12uN8bIw2&u0|>zg256ov*L&Sv zL^&ZT9#r4DaZa8RQVv+d7;&8M31S&ar#d)RqmSc7jO-)wf4{*=5j|R}hQAhXyxw!B zPo&1ROZ4W*(}B2>A2jF!PZ;wAh_IR}o@f6PITQrW;}g#o(%9_O)wer?(~;_PtO{Du z1|g(|jXg;Nqjr|Ps1dpViuTVA?GXnNbd*tel4*dI2t52;o{iBbZ_!-&C#Q_$e>{Z& z-IhVPRsWiZJzgq&&6aWGFYQg4@3kLXN5DrgmwJ&|wweH6tE> zXl^-Xre(vno4~L4{^9?m2_a<7Zf$GM3CK35-`8`Nc1CxE%DzqMGSC+EYIW!%l)fvW zZ;Y)wI9prNE+qc)Y(YBh7mFFI_*@&_lkDe@hbIw^-t{Q-{|@_~7{KwjoQ{+=x<>*j zNImCyOpta_8yz@s4r=VFG7qcBj}XL7+T4ddRUK`7Vhf|Ahquo(HGa=cC~*sKe%f-= zLx+z@c=0{U_(!*|go6!#%&=&j0MldfI{GzzUT2~@Ov)G87DS2b0`J(%1+dTn6qFwU z+2-N%apJCZZhov9X|H_lA)3+Ex|JHsQI2NlxeOvmqWU)Yb}drV>SnB(J9Kj+X> zDugM1daL{#lkJ80d5?o>aVwk$83t0zWq1Z=m@~=t1&rL4jb1$1B?R{kW6Iqsy$xfk! z``N<;?_`Dmzy@bZB$XjqzN~=w0VNd-qCdsWr|@v+9Vs@%)|0u54<@0{V*8Jxlmy7b zz~P~pW{y@4z!^obEztz2JXd7bn`)!@196;Pu@Ml6IgH)Ajhix{B@C6=F z;Ms#GEVACPwqUbd)fP0#M*dGDKpeCzt&YD<^_bNtvDT%q(+^71K; zxNwW0Sgk3KmukC%eif~A!@+N*t@Gy@Cr76pUp*GNkYt8V2r3*5R{dT4ZD*G;$Ha_( zN&y2E;{QIJ>WVU>6<>lB2#!XAL@jx`Mh)~i;JtAa?KP(WtndL?NNYfn9D3kFA*T+W zs+EGp<4s^Mz{ZLw{mD}@ppwAWxBC@gMY7;hq2a>6DgOxqj(9(fw2?IDm4-B?te_=d z8zZIX9y;F}i(b8b;}tW2?qt>d^rI!rE^>HGI1g~g`06- z1isQ53sdrDwC|(mfAv1CAx!R(l)z>j@H8Q&BV;c8>5gMFfis~X=G3$Ll+=`3d$E_z zbEtAZ-WVZDpjxeSE=;_JLi~wS%WbV^Oae8qlbJ)eO`(~4?vqUK8tMNxswNC^*n(qG8X?k3L0RlfOu0r>h#u=YgHer48Rd1v*qI*A?#Rp z0hxZ4TstQ4RM#HOf zuw{@kcu>-y_eJ)`K)0X!bN8`GA445BRfC0GQy|4O1^Ib40f5Xe%+L2&Ja&T45yxF^ zCG@Do4%^3#C_tU6UI#C_X&8j7WBrF(Ov<Lf@1cbe)D*_B==g0YgB=c^<`?pe{1L zYtw9wN$`EuZ>P@9XJc+#CilrvQIHjj)$m1YcDq^Kt#zgRQlg`Fcmt3A{!`wV3jPK% zAmL3xRMbRj{rt&h(D#3UnvFMw0zOuoH z>=-bo!W&tmi}nc6SfCwy$(r zC7+CsLKw8ltHH{vV&drLwUbNnx&xtiT7kWh*+cUe<3I#p;9pLMd>FTQyMvC7z;@Ok z9S!nDO3Zz2K#YMi*S{I+H#x?Xl?) z7!ORg{cUrsp|61r5wXKP7J!#P8^#+UrCKkyy}qJ0&`<(_Y7y&!&iI0n2TY~s*L6{g zx@ezDKCRc!JABG}-3E!xI;vKPu$g5fT@4phx*IjscHml?K-^)GJYOv0);u9V(T05_7*G`RL zyrnCzNtO|pzK*+xr`S8>^VYC)((?N$(dvx0=EqW5#zvnHJ92di%nJ6y&r=F)fBA?* zgveFFzxpHS5R*&Sha-+2inVFCrEA~@p#0b&W_@dS^;y9Gw8E+R$|g6pW_Uq-_<9bZ z-_U5xl5!)?KXQCuFmkvx*wmP(KI%F^dhD9-?1hc2;pkTmcxz-Dc&>DI);MQ8TN{op zZ8;0ch+wbW%vA8Hv`Yny;5`u@BxQ=jH;kKlh`tzw3SIx_0lG;OKM1RL=O@>UM*e7M zr9^G$xuyx7M!nRcS0-(d623AZ4f`D>bhISulkWhwD|^%7J$l=$!9O%gxm!dYc2fH* z+>1U3?X)R7wrQ`DsZKvX=%MOuhd?Q>v8(iPVu3!3FdMZ+W{!a4iTEpYqhBJtKCfuF zR@nIM)mN{2&~0SKwTiP0%fGXWLAf^2Jw(c7PQ*;ckzJ*J>9c2!)i+b)noeYPUyUg4 zk2MA+zYIGtou_qc>0LxI{1B$w@Fln96^*yQ_m4=~M}oMQbPV&s1O8uICYa)?vLK;o zX5y9y;j*1sANm;a<1=x$xRz70GHG84DU1g(+;`(9cKu2a_IT#vm&4qOJla3A!5d?6 z#B;cMu>SGVn~&L>IfpryMn__GR>6X+;q~i*@82uMO1cYn{XBA=`lulL>!okHGJL`b ziY<-@X6_QecfN<#SpqWYyG;R3Jw|FE&t30yG z6tS)m|CKB+Ob7jJn#3iQ+4cnF z_9F+uCQVl5!1R#|K<{Yq_ejJN;o2IwEzvq^NbeHo{1yBw%h z+qlCGRk>S<4g1-Icx2}i-TN#hqJ^_=TnkNH04*x0iV-fGff=whWQ|WHCiwQojCH-{ zf!Y8x26qroU3O|5s%em!o|@f->812g@_z$7`++Z)&O#&0^%ZSyor6n$Hv0Go(fhZoq< z=d53=3}X4y{#j(SbHVU1H)e-im4?v?Gqj)@+He(5e_a@o z*pMgqSeed|aS72MAxMBb5`)*7(prHU=>F~*aCGqVruZntw#yUxnH275r=(0hz1hqO z==W*pd_}MMMhw9Js`|l)&^+M#oKHP^LQYi{HI#z;olf)V^+gQ8=R>w#|; zuLv)P~&1UZ=`19R;GE+zhW4BoSN4?&Nvk$R_rq)KiA>*bGW?|(=8Ep+#ma0xH_ z4LK{L`naQ(s{YT(@gxXv%v_sfLA}s7DP6*+!ZX^r@W*t5P`9?1*z!4qQ@hmB?8y-$!TDx( z7@mUme`{bNLwNo7bMxYlM6E4OoVxD9nUsAZ2)k5ibH=AzdM=1cHpQ zh5iUgA_LC)gG^f*95%OGY24;j?_Ss}|ci-@) zRT5tys=f7^E%&!D5_ii)g`<9L+Fc8B@Hu4}XL-mf^FR9!1!n%F-8dWn`o3%GuWl1@ z$!?qJ>7JU_xmbS&BXL-=+Q@b0_2gCi)%PzFaiq6yceXD^*D!X!o|ZjqP6R)c#bWmA z$I_d7VLNX_7n=dyC+`ZiigM9yw`H+^F$);x{R7tyuy011FSDFBaMtbC?AIK}!vaCK zLYF|GkT=7at@x#NrrAe<`fhuAS5n18!-rSu{D2aI%*NmVe)i+HzXAUCw1J1CwvJIv6E?fsDf7>eyhh?|APh|Dxl`G2+d-Cs>UPq?87QKYMgQ~?pB_fRA#A|TB| zm0koXQY3UpXc7@2NbdpZC{2(Kp-G1zy|*B}_dpVE{CK~=-#_5ymz8!7il37 zqRK3MB&=r?FI?X+YOIH?u*ODAa8N%_dHX@0Tl$5!nmXVCtHz1MM6~p}H35!!aOJ&> zOTYh{qQQsTb)0nZOOFP-2u!-R{$;rl*WZNy57S^Hp;Ls269rTGjZ7wx+ZpPAav3a9 zz#40;sV&Jw7{DL{fjJ~jnmmS-nepw+VfwC zEXT@Z0^D&>7+T$btIH*`dtQm<2q8<8b-rE~MiVAH5UcGOu!E2eVr-^f0A8DVbt#<~ zXrAO{_%$iYeeLaiP~dgjP)W8B1WAhzFSKe-)O8EN!N!`}a9DV3PH2BqSjuaKg-iDzq~Dvu_N8x&g%bc^hApXJoAKcKQ!n4ZiAyorq&xhNW@5ct`N z)P8~deX6VDJ#H4LUnRva9nu{+?4oq3y?IGdr~mz(YkK9+!gm4+s^mtOG|c1vnz?=k zh29Tl=}{yzf{}y$au6}dk8csf_r3__A9yLoUy6f*dn^Ym6oV@9Kr%^G$X5>qn;cUj zJp5CM{OmRmSEPkf$0>M6cf;!Z(6OlZI|>PdaZapsJvg8AoaR%#)_`}?K~U?D~4xJ0+qyYv28-W?!sPWRJN3@R8r#g<+`IJ{__`jZbB0rDk%6UA}#u9HL_b!Wv-JV=cuq z*lhK6U6Y6N=5=`F&fF=_6_V#)Xkuj+R4G9;7K=(X*&=b;DW`8Tnf+fKG$+MSUXP(o zLzu%>+s7&MF(N+?_=xrG)VH(7wJWc@K7^};2ZPRAZdAN_ATOl}eq2YxKU0@2{#?5; zJIuu6)G_VWb9Bm3h-S zb(3|*P}0R1 zm)_`dxl*KAa%~#}L$uj(=okA| zC%G#o==3~1x+2Ft({F0AjOBqDM|(QV4E?ok_n>ooQ@wMfC43ouc~H-7uA;N{ww+QM zmNe7)>&Fp>OOeTbvYUuazFFvR5yP)=ichA-pt-dpBP06>$86TH0EKD?RT)#!V!0V? zVnnU0=hg3{xBDD_I~d~)Ev%xUqL?3wnYZ*AM2M1Tp)VK!J+8J<>s(uhe&2)dT%EK` zf!Xer$yIF=J0{4cdFUGMgOj#>*4^h>2wNEhd#7V6%5;|vSS(YYyPEa;PwT3(K(Ftc z5VB^9Iabz_Lr&!>vIrp#H`kO2cX>n-j&4}0#U1|{GxUu*W4+{2ak9)flA@&o!r2H zLNTWgea;5Q*$43bHd&5>qvuXGgvQDc-d19ZFHHmX%=-WKP54BzAj5aEu%CI*d|?V)`L1*jF+X|S{7@vf6kU|@SoIFc?L%p; zajdyEg8*@^^l*S$^<(txeS2jjbHL$XVI5iB9XXad7P&N{;?vH$YGOKL9p&Njj*#N@GyuafrE&J5);fKc!`EhUE5CBQOA)1ch z+tOI#*kPn zb%eapU^n3nc-1N{S*(2aMG?uWy4r1Ts+Sm!Zx&YQ-&m6MN*^!@kekc$NP%Y8Xv*p(nY?&s;XnECrsH(dZN zNu6Iw|o=qHi?!hlrkUOzn;?cVly~_ zNiraH!)2u|E4l7j@{aFM!F8S8#|VoGb|=L=bFz{ql4T)s=aI3KG+K;DldllQjzGJ! zac+*pj=!7FuH?naa6yNGqOz^u8TN_6$RNX6{S9h>yWtjzL^#L#o@3_~Kqtyy4TN$% zm$p26%V&lKyx&^ef?gxJdZ<8ySy;4qbsIUWV-XI)c^BP2K}ZO@tFVo3pHs6c+a?Qn!)_@fFaAeJj|>pfX`qP9!vy`xbibo!yvZGfPW_Xs z=+!phmsc8~vXi1wcj=_}pjw(KrRij+syrOs9Mw76Lv1`VB~<#da8B*aWc-E2GX2}+zOgLYzcE0tv*5QH7 zR&}WfL0+;H6qOYv8H5sw_i3Ye{8sP1UH}|3+aOdwSyOry6k;gDwF~!eaO7=roumjt z5CNyP%d05J^Z;d{lY0w?WULn9BgT6TmS%TASqG(5aa@HfA~y|di5TE@AVpupk~ctX z!Btds5`9aB%1gvFu-ejrm=!=lCxk%`Vg(uflDA^CEWi7*#!E_vJU4 zb??T4t4`U_r|jqXa4KZ|`kX16exl}(vR0X1qFcFCVm;N(={Bbj%^GAFZSv^%)TCw9 zt~WCwO|z17G03{RSUHJuCeGh-BvuV^*qypFdx5*Gu|6LT!H$Y71z*27Ere;-e!nw$ zktTP(g?Olu@_^=;=0gwTe_(`?0I*EEbyg8_6QUmuVd|`YS(VHrr@y9tz}^XvMzz4^2GzQZzb;|Ovm;7)ASAJ&<2J*{GS)8a`;)`n62qsyAs zv=W*rN%g;?>SZCJQ-BO^b-j?9L#2+1P_K0gSu%p3clcs%1PpnNPxN#WHmb5vvsHc; zppItlMs##K=ZP7oB0i9cI$XiLeZFVK?j1H%>eVqB{~A z1sHqaBS-0Xs>3>`6@iPgR|d4tzio`va4#D|#cUNS1n~Iu-bekuj0_LI>Z?-7e_$69 zNKKxKGjdCz0Lak0X-o-G5>J?kE}$r7a^#ivWT?E88LL|zrv&O4#!FZ{pKn}S__JDY zStpln`o+^vm2DE%7s)mmd5;TYXQjM(GJ)NuC zKx=QN$cm)q-)uZA@+e$dRyb?1d?Rt4#BhH0+t{~wyR>iTW5_~=b>|Hsvu3e+@Au3M z|IrDRxXF(;{hkoKQ*Fa+IrHDTiA!H=8-dA(Bh3QyR`KdmNt@FbBH#gkLc&Eg#s^$_ z1aFeQip2lq8JhOGd>*~>=+SmUD6)3 zyGxVnTnoFTs;6-|8$qI6@b^VbkhKh@E%7G(R238)U^I|;J?#5zjwQv!bR5UBHV_CbN9f#w;#}KA@OAzYC$LL40SIJFLG*Zafw*ikYpgLCX&`Bn~J z2Or`qlua*j>!mx58im(^Y$jK(&i2{RcH5w1Fd*vA)KE0Er-W_OnOqa)<$3ke)R`#O zGOam(19UsOf+URw>-uPNpuup0Zvpgx`xQ18=D$962{{f+=csR39nLT2yL{Y4cVJAa zA8|(cnxCo50j!AtMy;vHZW|_9>j^y~D&?9D`NstbOq+vmG`qmiV{3m^0D@sUpc);$ zu16>gm5VXjZv}%z4}b0Am;bOqqGWq`-k&IoFQ!6caaqI3d&CCNA4+Tk`YpTOU~bR6 z8D4Zy6xt;qvRGWD`UBa(F z;aArno7yUSnV33cqn88to8o8|R|)Kb9yNOodAG+>L8{Se!`VJ?D3ui zsq5mzK!Z09_fcX}ru-Z1{Xw0G7IgpB?(|tZtbqrAk$)U7+@3*luVk{s@@`w*cqOg; zJENkyiw1ke=Il$1&W$^@(Sd5F!OaXx03Mo~@OiJ;j>ZiB92Y;qIF0Aid(M{&npUT$ z$X?iXgctkNGY?G1)kq6cyCIo-j1QMIQOT5bEIk@sNTogZ-bny}y#};*7-*fKoFsCm z{SX5WAtxt@WXhW)OZ8V-hHiZ zdrTmINmo5X4Y0WKe#M*u=UPSIyy_M;tn>qk=?6(?(|0~4cAi~-j3jKAYC^Z`zR4&M ze)syqT-thuHmxML^_&0He=Lbk{z~huxn>X$sKhm@^;C%?Af?85aXT0??;sBJU6X1P zJ{NSYJGZw$X>^6=VrhJ+qPw);_wJa}@A#9>;JqXG+Z+RhOS{jHD+Tlo3@ik~Fh_^e zfyZ!J3}$rR3AQ)!X-Il{&X)7*kE6OI+o6|tX3Z+^3c}CH;tVcjEQ;=y28qrbcZTg@ zcl@Ii*W!M2z*?;=oPI^nYQ}c~o6`fLJwrzWQ192oP(_1QZP~Hm`6&F^7HUQfp~la4 z<0=hrfbnDbb9%+jb;xp!^sBMQVzttF#9BodsnS6h0jM`?1fdM7H5`Kb+%unY8>$!`ihtF4P+47^6e{f z6h?TqWt2(*KA&Xs7@iO&967%P(<@O1LX!2s_7#~9SJV6-d!~WGnLeDEx+Xq$%2MMZjHN_ zXU-?PBqg|_wHVzPX?!DGre3kWYxQ0jM!k7JX+!&1WJqc|K<TW1-zJN7)Z=Ylwv-X?gu zeUhnG{l@sHj4^o6iK}?_M9#AGqCf8H*TPrPn8KCK{BMP9)R~?#7q|MX#t|e*EWxt# zSJyn^n03}RF3+;RD1MQAz>ZHt=3V5whj+873V8YNXOvG@Zx1K1X9#_j(469g#P%gG zXxZN(v3)H}7Sn5!$vLSr=K~E*ERI;YSy9twX+;Vq*2?Bkcf+-g9z_D;LZ~Vsqnqfd zgYa+qrtUjaIC=eh?v?4HMuZnq=Bn|(_m)o017PD zkT~?%{4p{mXI2m^v0m}QB7uahhXTN;_&<~Asp;H%ha5SOT2samLks2xxJ6zkk)X!0 zhCP|=Div8fH7m#BXi@fmCX@tYq*YL_Jhqd$Zd?0cXO_s2HoL@r-MkmQE8+LcfX# z3@5T&`rCM%c_FbQ{mFnRJMN%1TgBm07|*zg&xt@uW94p0s=?~~RAS%pP5Yo`t77^+ zxVqJU7+j_uGN&=-$S!X}%Ka@DK6W}IsTN;P%Qm4hp=6g)Q+pSsHRnXGbYRKQWDiL4 z`5E;+!Hxm^zXdpTw%c}UOei;Zbn?JXLMj(!x>=ayTLmqFt`lg$0>qZtB(JG!{&cKD z#D915VoqIx)S!6#L0a&y;46*cfS7-YI}0(of`S_lmvwkz9Rw5ah&P7WkLi6ES1=Bg=C0S;DCMGE}IVZUxxeL#;)aN~n#@3o7 z#J$O&4-}RE{rPh!qFpK6@pE7#V=HSXl-EJ+Li8#sfy3u4EuF)IlZF8tJhYx)YI+(j zFpeS&9lqKH6<53N_vmI-8$KxH>c3WrIc(F-|Em;+9l(Xd2KBmW9bN{9qUaR1G_8l1 z?HR3&mnVZ=ugJ)(v&pG9MR;u!G-m|gy>tmXk`>`eqzWe+IPw#7Uj+#cJq}dw`;=fo zO|IE6L2J*hIU*g--3O*q8+Jh+_C|n4+F}}f-87d%3^M#$rp;#quvhYLmYT#0zfV>I%5yxEAOE1(>5t2d9M-PO{zM>-p=>xKImdWfEG2a zq_0jNU3>u#Og{}whU0CqnrG3jg6~j@{4gB71;Zg&pd1QJN-F1w!D|lYh0ZIOPy>X? zJlwE*n;fHc9^dp~xFYIO=&a9rwbSc(l#O0p1ApP$SUPcvPilAn!Q~Xdy>w`r8meH( zL7ZcE7pVz8J(|PmppF;1s($}|v9(2xCwtiO2L}U< zeY;dRAXY!N`<~HF5*C?I*(f~kBMG|BZ*pfGV_X`7R z;i$ujvlDLBuueYauA8Z+&0>oZ{1uhm)7QtjU^$EKw!UXCgcJLrpXBIi!SZQLOaPK- zI7o)vX$y4Sp5yOUxz}WfHQVEOHXbRA+nw)QHzOW+5{v}KVGEG~OlICsPaV-_=Gfef zI5|HLuUr-hGFNY1rOUsGjb`yjfi-42M5g3bE_}F?p!}Y7-Ealc-w1X?JW2b#Phi+tGCz z?r|Q4(=re%^!c|Hfa}aazW;a~5MI)w>qwwt)Gq0uj?wNd&3THXo}y%@tRb*us$AXX zULW@~LjT;w?+i3I3C{>@5=CxuJF#;*hHBX}g5X*)L|f<*R;wT!+h!ti4@{(cS=*h< zYTLvDKYF?_6i{?KvC^-APEr|`BSm9tgz#$fA_Kx9ZMLRRXoGnK2hE07!)ZUu0PHw< zW8~F%sqZgYyA#s}ap`g{_6THokxUbpQTI9mswjB4w8`l(Vcc0g{l^2@3g_W zI9I`pJLq=(TTwc36z7y38Oeetk&5nRqPS)ZoaVQN@+kVs#=P7S6-^1?$CxF9#6@yV zYP>WyTX>-N`28en9?#(vT$FVnf{KLX_rTr2w>K@Vdo0yX48rx{^qrP!C^GvEW^$7- zQ<^30f;+3Ny1I6bC79>ZLYB?Ozc+7qtZ|2FECYH{xE~*|pZw%&+^$ji4=>Ed%|;ge z<9p*JTc3_|8SYKdRkB9tJ%bF|C?|g=_h*Q2B8>|EtMN+jh|!inIZyG=i2OCC*c|Rh zw5v<;kNIDu_2}91+I_NS9Ioih&$mUyF|7A#)|Nsn3KWiyG_1)eFDUmFo3wJywv}Pc zVm?zmy_N}{%)CYySlOt1N0dEFWkOii@lH!;?$)hR-+;Ci*?r0~IC3$k zlreA{yZlEJpE0gNSBE-eUx|NlSAaXJOQdhBPAKwiJYmIcMQfW7;|nH@E)@;8(7;F$ zxYkva&)Ju1X1f^hL9(Sh8*=pktI%m3eU>JKHF+5B?%HMCJ1TD=fM_RHc?QCj9xhd& z-D)!0WiOPpG!HH!kRo)^&^If#jaB4_3i%V+YM@2z-HD)RpC>gty@fpv#Fi^ekaJCmX9P59jF*9@)q$N(QcG{uT5uI1PtU%b@P;?NgX=M)(qXw)>p`Pzw3wctz}mmc6&`!iiprazIheW zrf>&hAu(n{Jq<%PT87H_9zPJZ>iW<=BV-<(CG^)#vrr_B?E0;MCipU}_8qd?hEGkJ z>zwCeYKXrlvi#lXm6dL|wNvCgb;ost{~bsIJ$_9lmO@Kn82f>kuYcEx-S)ovw-}n0 z^tfwCq4VEBKU@2A9#Qo}h-SJRQ^|UZS&aP2T~#NgJCdC)4Sk@K3v~(M0*?O2>=GO@ zqap)}otA&qhK`j4%=HJ9z!#5?&O@S;-5%jh!v3nTt4S484C;$YV7!+N3m^5j@WAgsCEYlcxN_W?~i=`V*VZc9u=5{V2s4mkGt@X(!AW2BGpbV$?jf<6o* z-Vlx329ZBe_nL{8a&j#elfvL}P`8557^C-OcRuttq^bVRG?S|~Bi?S;ytb5>L+>)d zZ>8+pMmYXTwQrxl3!He?pqwJq@5B)F8speGPL;Z<36{y41Zj)>t#q0p{vqd|x~=#O zBW_7va~If#5ba1C{oboNwz+%uP&V?7$m)Orn(PT%Ods#rA2D=M+0JkO43Eor9WPW*~fnl;6AJn`f zj|fc!kbcccZ04-WqIy&k!D&A|sLTJ7&TtG!es`DCK2fTmH}~*sLt?KQd|ap2wzci$ zGY0b3r%GyyPET?bhy(uLdhh@L_5UJ?kDR2J91=$}0L6o8Jb?I7SJ8e_^4KEy{{Tjq B6`TM7 literal 45551 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

H8&79nCLI8Qjij?qZe&^n`V;g2q%u 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 B6`TM7 literal 45551 zcmeFZg;!MH8#g*L4BaWHw1l*TfW!<+gLESyEuf%u&QKyqH_{@FbazN2A>AR}9Ro9S z$M5fb*Zm*vx@(=Y&Y9Z#*?T|nc|OlR6Q-f2KuqwE0000GD=Erq0RSM(EeL>zgSlLI zP9iWDpo^BmOF-Gk<6X=PF>3=Qo7b-aT$p=205J3&0Q~POnDZg##QZcH^nc$00kX0F z-}`?batb830{~EflB|r5C-9&Z7yh`6|9!^MMO<`4pGlj`gi1%UBq_MZ2&o~A} zb{>52a2q`sJ}}$J_OWRyDQWxm(`9e6NL%??EC4^||3Ch}I0Fe30nn$^N!GkCK=(*0 zllTf~cMQ~>1ze+yYABaxgO7R|Y(In$*Q3(M{tML*&6GQ1KU z#k{}3MCGT6;U%swY?FFA;MPn5-2wouWL!^Xc+5>0nSUrO4~{m)kWtmU)Y8Rb%SVnsW{_IX(I19`rsTL{4LaU?`l_T-6v2>Xeb=EXA zu64OGD45aX@s0(Ie*HoeOhA3`0jy$-Scj?5Z7=x#8GGVAcK)A?PV*B*NqYNaNYBqO z9Xkakvc<*tD91fz{i9hQo|bbJ^e7?yC(Em>A5sn_s&g|2S?30y!Jm+T!HRF)P0Ee) zH#Ly6ioS6b@eMJXr0O^G`PMR zCpSjlq3>=6N-6$MAN+!xIXv6x^?hCvkLiTmPi&fn-81-5o zfMs`ZCkE>5ICaV6WI(|!M0`3FAk?HucN`n{YY^LOK)4JZf9h-arx;aS9Vfxrc!FT} zA98exg*#tOat4z{-BcG(6zZ4Q^a8ctjrng(CQ3dv1R+H}4d~gW(6qF>A5gCBb_A`M zN)}1ay2%K~7|<#9jgsb5Xj{a(l2J%A$7Oc;r=UI=9KKcP&?4v>BieZFAsM5L-Ocy| zD>m6@VvS=#JCWb?{BovlKA#9@*X%QWS5=WSjM(@&HP7Ghiy8N%F;eL(ScZ?@>xR2< z#is3V&=-{gG-}h>zwFAf+agZH8~Fd4;g-mQNbs{+13~}%xlxGAYgxJ&hF1kLh>W%pPfmQyC~TCd{Ap>b+OMjD{Z|9ft&ZL<2RBo(Ix~@- zt`?d+>EU7BnRtGw?FGLWKSSvBQo)PlF{vO;906-GDr=_M41(a9UqOl240~lhJ5B9= zZ-scVjy!43r;zvw7JTQr3W+V-bcGXlyi;hwcz3dHO_;xcEuZvKQ!_p zaK9e4m$G}Fad+z6pA9+-&ZqTz9zM_)F?dM96!3`+kQHDjmfb|bZ1|4WtA$k;dAwrg zf~53Vax-=^%h(K0{~)h}6TYJmt1?TadHPvb^HXil(@xmk`=LkqdJJtjFWvmazptxw zbtVL^7KFhJkn#qG6r5b36c#v3j3Tz~8#&Wm%|!I6zy5@uS;PCw%CuB;a5vrvdv3U{A!SXN1FWy(g_dF3=ZdV84O2gMdFxRpAyLZY28pg07oCw33aD~tGtYl$&)xv zhU>S?Oel};vnrvZjnjf{>5Wv~q3gbIv>>eOChhkP>kh$NiP4p3E6qJ9L_2)1A%S$MS})oAF&c_3nt6z7simw)(CR^)WHx zy3oqWW2@S;-Zx9*X(M~J0p8MAM*?tO_7^Iw8@ztC5H5xHUagzodnGyZ zFaDEBOb@^JB_l1XZ|7GE+U_n@(r82u?v6F5ZbPX%W#6m6i7pBy2|sd`9s8P_a|Er4 zDc4vFx2G;D)*au&p)M*NKkn8fzhG7w`+F=pv1T`A!cFu_pIAB-JQxSZb8%%#dRdl; z#fdXunz(bQ8I~E(wLF#Mt)OsWVY*GftQh4>`*~>^jmScTR+s-IOuu*6 z<&aVhz8Z(-n?zp^Iu(Yce$ zEcy?=IUc@Z{daU9#E<{pFMJBn1sR_xq7FRz8>)L8#`>KpJ!aIpNE&tYHY2|ME=LiM zONSi4c*JUB>F@4dxfw#=30+tISTCSTBI)4zmF7W}PrfjgHUr*l^F^v6Mz_BL zcyPRHvUUT_@!>DWSZM-}EOB*`Th=rBdIHI2F8>Td1AbzikScQFn`f3a`FUIyqTMFm zmv|_>hzTQr)NZ-YabVk7niFy{A-X8JK zj?%G$-g}OnUsWP#bj82x>P|;b5#bsqIVB{! z>Nj&@DO?pDT?JXt?@YUWJ|0P3GW2(bZhsl5f$9rZ<+AFY>kqY~uK4dVpX|xx+YWkv z>hvBd-A-CE#^Ydz;msNvZHuwPSX_`358YuUTHkN52&T`{YD~t2FNux9+1ZBr<#n*1L0oI+8RFkv*0Aao8$!&1X5A~f%x{U|m-^fCZ zaaZ?Qv4Tubsdpr6RNNlVmU;j30APi@R3*>;8zHy$h|B~gYb}>ivX23X)@& zS4=OiDe~GdTV6H2i3|%1=U%rNuN`QuOemztQOCOw_khdt(lJb^jV- z$$)>_s@OpYYy~L_b`S(o-qjUR-a#hYuwuID%z*rj*D!uP0$J<4j#JsqrG=>IyT9sw z`$fo4A_ZWC!WQC@igRPzN7|K`-$chhN8{R&cP=#b@=+*_r0d^@6!EY&EgM<>Z&f@q zC6Ai+u&qeH%Ehyv*Jv+v=o zhw{nLy+5)cRj_X*AM5PLgy8)4BC6t+x$6590V^=Zk?aCw>2ci)uS_1*Ww+n6 zX>YE@ujL#b>ITu=Q@ZY$I1pqz7FAn3fr8|enS`+6W51kfB-z8EPJNn(`~d5YW2(>n zq@Vxvt?REHLucc2{VFukJI82QR? zA=T11rmt%DOTuIYW6qGa91b^ZiyWW}VYL^=k?HPbV%s(SxtphcKtIRLji>)YKUEZ* zNVVbxlitdYjOd^$e!Q3D-G%~irF-q_+~u#qZMylQSheFDJz4LiB+D!iiv^}Izcf#_ zKjLEvWo*N$$BZP`b99E=V=pK@mg`z-dF!r8<~onVGfl}Sr6=H&jNi|uYSlD}-`nnb z-p^M?=lf?V2}xiQjZrYd7hFNwSxJ9f^!HAB?2gPpEjaW1cnFZ;EGL|8W!u^3?i$^8 z`M3V(G6y5GZ;`c6tw+z*dD~;p3OobQZ|~8+3gD`_)z(Yp`;Gnc{H!VGvt-?z%n%cn zd%xFyTPS7xc_E84N%~6C^E+?U$_(yp0v$C)7F6&Ng|iG3sg3&s_2X+TZc_jY5yP!> z#$Md&%V}HWvek)P9w#tkAY61sLJv7G3iDaA82~8*URds1k4|l?&1bspX4(=q{`nc! z&NjMbf$#sA(gSt)y^*pwYT1N7N?k$G3_>Y?V=%Nb``macIwPMK&{LVNzW1)Y*d4rQ zjPoS3Q^t`e@QZ~7$)qu0e?-Z7cOT06s3>bP3gjQ_MBqcBJ#tC)Kq# z2!ix|U5Go|8*~vda^;acY8IC5cTMBw+Sgp=_c8f`7&Y>OHTYye*6RFfq&E$MYM&{6 zV4(wgbN`eGS^i7zEum{sMwnX^t7%v$%KucHl{NGziHVxhyJ9Hc3?H_7_Of9)|LM7I zO}@-1GK75efdq5wKcV(^^+@h)gwpsx=vIJk#$&lvo+tqY<#PIVo11V0_0I;m4 z(H(8Pi@J`FiAgu8r{qmfy~;gqYchqcU|E8SF>T-L|E9dS?=+&f5vyhln5s3x7KZ43 z=|5IesAv2ly5f7e(sK2A!%80%Q|Y&30TG4Sr7rH8aVOxCNs#V8R%oG!Mj{(k(sC7! z!wZj|`SYE3<3Tu25ozqdwcThhhhQP1*SW6-CaH{G1p8^!;gWoooBhiM`(=yg)f}h6 za5!od1KlO>r#U+Fz{dtG-y+x+&@Z3%-;gR@x{lhoIfWGQZ(x3NuC*woijEFWui?=0ftU?@;db={kqG`3P``=kdw<&1b@dRxq7|? zW$U2RRv8m-Zt^X!a;X^k_>21#o`UR?iZ zAw&6Jnq|_(Sxc;ir|1DLY-BtovHgJ$1EQG%K$I0!pc}F;a!lhByaY1!%QRxSLuktrone+FXJpiNf({^t{wHK>Q_>u2{W8=9M(Y8c~g@10eH+ahjqz&i;}dEF*TULyE0 z9U5dilviY^3cM#x%{p55I0SF0J9Jp<9!Xc6Qj0T;s7fI^vRQaau;OBQ)1qcfC+cNm zl%XVLD6h90{Vn~FDzJ3;yA0zl$Z3$%8!_(>$k@B$?$&A~B?@1cl@&Ezo#aO~$zc{# zvr1a5!NVRd-x{trV_(qb`{8eDd9i>Q2L0SqLRSENE5p#7mlB8XzCu@+SoqmuTDmLk zTT|)k9vvNuedon8%}Pwrjnj?Q(S9Xddyw8!4Le^wmxxlyboa8oy!A{#F7D^5?D^8e+9a4>7hMtq+}wwHdrc(XeC0zFItkv(@v^)DN)R}i#;F>-yBr@66A z6t8nGRVG9!>b|z|M@JCe0{?}K4R!#Ui4*kpBf)3i;8Ex@59p6=j(X__h5}@E(*o%g zuUJ*n)}r;}1MPzWEo!BxGD5ekCCRtbNdC53?cs+7_&!dgw50&H6Qr{);D9*VWj`;8 zzn%9a(ZvjHYWd?XpAQmvfAMbgxAuc#a*82{(A~zUYuCGWe%>1_zrc1G9-=8aZHV-L zsU{E$geOOml~bWg|NVS0iv{k_m0g_HyJy|^g<&VOE0!$z^Sq+Hvhl0$ZVqSBjEi;e zML1{gU@Z!Rmxfzuf+!C$F2L32I&iz2>iv$&UHhEQ_+^3AM@>d4_R`Hz8;MWTTDlM$ zdmH+)KFQIBR`pJ}wpl4jV0*q3Lu4SDNbmk1BKiW@+T;BSHFDpS35Gzx7jz-9sM4yp zKQ1iYiqHEQmTbK<>Qt4zN>~T5w`<;$ATLs1sSgU>#rwF=Im?d^o(7?y36>_B96nga zFBugMPtpCN+siMwrcX0G1?f(>q$_{$Kk4+7|J??iif|lCJ0X>4;hGoiBYkgz)=YBP zuQbH~iC4-URe0Ge0TkJO;Cs_&Ov+HXLp*xo+WiyL_iiV};2%#$zbSs2b9+#CcylX+ zyG->3iOp0o^o7~lmh=;iwYEBa`Gr~WW)U?X{bcsNG%tREF^Vw$z zt94rt?xFL#>5#iFhB$5j5Z4whgNX!xXnRxPC2?DnKx)3Xp=90wj1g6Z@)1 zlMKml#k_OAd|n{-XGTsIzp&JaoDIqY3^P?%hFcYU&(SI6iW7rfr4L+7T@5aiJmuT~ zX!YVVyF|fw#ZSjMtUaGUrULl9GTKf$(bqTivfiPrzCt!g&%0(`stpu!iNU5L#`~o|6 zS!-u7oV&zbYPIt@2Zuty3juTORUdV1J`77XPaIRNF;ekL=!w3RSWic>t^6xnbc|8< z8(>*@kC>AB-=7hWDMKT#2zMk~RGy2gdRBpV5`okMhAu|xy|Am{9NXYGbr3ik_h$zC zOcjkI0(dL)#}BR9fQ#jG$o5ZKW3RKj0V~0ErTbUVul4A{xgo0&Sn071T2aLRUT}ur z!9{#;^xOkqkU^fqWsGyz}?ju|@ufpu-_(K`=ZQ%KCMyR`O-HWSi^B=#)RY2Ih zjlR3V$w$8KXxy_xN45^{CX>$wS&6?Z)2RVI-G+gT3V7&AkG85BFSYYZ3F~DT5lEhv zL>BuJ3utWOkr z762kED%HfKi^D{pi4p-sH!L|iKLit`J$h?WJs_vOBWkyJRm}QTLve3bk`HW=x(!y` zllsm+L5AC6SFImZG9->p>K$06Y`vCNId}t`-VK8APbJ3N#bE=K%;J`juj%3;2}J)X zASX4(`!Rn2AOtR~{SEn^)xz6o{P+;2{P=zlD}YsiR{dLAyLj>!wkqzck;peNLlSgC z33i7)&pw_UE~Yn0&xIWI=mNc7j<}SjP>gTd@_cc%YS7N5W)jj zH4tmNJO1G~rwvTHuLzI4wvHcsjj@|v`zIx*&IgU#<=b!c8Fx`N1#B>ZaRu(F{!|rL zGNN|X3r)iX#@K#;x{`QZVg?MWsF?i*kEufaCnxX{rK5P=L+$7HjE87T8W@A`wpKO@ zl~-Kz-mp%l=PYN_b~b%pl%9_XS5_hnRFBgO+D`}0jcB4FD6?2-3)?%C#5nN^OILgG zKs#Bx!8-0ldorW*+&zmS`9DI1oh)45y6-GT`O4j=yZ{ebQAz;4n2N`>wuXo9hB#}y z#8&uot`L>(KXZP3&|3^>R;^5~Z67_HN%-Z}Xn^T7(B+QMP4$gn3DUu0E0z43Y)@YT z8JU%5?{{%C!|cb+_M;s4u=a`nJDw;1A~YOMGq39%R?P@qjSi7+ltI|=YXf75W5~JX z^b{K_G8Y~~=QqQ2t(u1`rMVj|8#w_qo+X+G#5CyftWm>BvO|;~zw!NgD0K;A(L;`r z#1;PhuojMpdpAiK0qj^H6$>AOtI6OLOg^dEq!+9?>hdcQ((_*_0CbuhRqIjhDa{&# zA&T<{U6ADf(CBCuTE}dwnv7S0jRVud82YN z1Hel>{KDvAn)I?a@_uiVQo<=ZWIeZ%FhMC$yr?Pfwa9Cem@vruxG*Xo zSN`XtUI88z$=LZsQ8IZ!@pq)=_{uHUDea#35{HsKg8o*Vszur#_WI48EM=d=AN^o}}!KJL&jjeRtkF)p$7?PhGU>`k{`n<~a! zFh>CfFn*E#Q^E%D6G1p$EaiL2*g)N(pB0~0@@SB9-6t^x0ix6S0`yF0i5VFds6C!#pQPcxU{< zBe?YB#H!Mnj9HZQk}zXGML$)4QrjQnvtEB!gUa=$(n%@+pdJG|v-w&@d6dn}=uZU@ z4_qKGmAfvEt$B+whbYSRv~j6?*u2#KN!%R?K&X`xovcfQNI&*#B%yQ^OC;n5SP@u# zt&u5f09@q{Bxzn9haa_I8YawUyE#Qo-VVyeJAAX0YPWr18_lRvldm}ynYp)gL3*e= zUH8pCLr>1@$-k1(TP1*=&hD#LBh6>jaA|tK=F@C7D=aHQD^)Y&^f-yLWq(tx*Sg9C z0H%d_YpS*)Ca?$k&hnGnM|B-Ix~fgzTu#k zuc}j;ib!95cR}i+t0Rx@buchVP8Y@KV+@pzGUoDrM_cMO_7`e^pHIleY5v+GvoVt; zlSA;8LKR2QGGDTC{xfAwAm9yQotvsJ8i5FzTKjdD8C=wzA@JwSJ4DARw<{)n)k6njOIp?P6}&eov<;CVk$ zSzQ=CHT*Q+|Es`a%}U3gyDVM=QO@v`9Bt+FF82rQ2RZ%z%8i2kh57P-;nZ3UiqJpE zrHJTXUHB3IKyqhcyf4iNcw*2`+y8KYag8nLrVvi z)|o!32-JSBTKwUYo_C|dhBjQ?74iAen|}XhS>Q3Axh{NWSNGy{XJ5{dmN_UQpfq53 zcL*%lAEzMiMY8!iFB@RxpikqtPup(a)>O)s{xDtuZ#LPGU8}&J?3nSi;B{Q#=N!8b zQ3dMw?K6h|fIT00Y&2Ym31Q^I4Zi^?nlTm?$MY-_68)35|8XZnaxzFQD#{VOuUa+yq#GRgG0QLP^N+Ltj^3OP4(j#RQer zoiH%8-Fw^3I4;YY_=Q+z&B=);6H|$Zf%@YyJ%?X3=Ia6II&()AR-CG|nXHJdNUWkK z`Dg6m-)Rt6&!3851FY+V+wJXA43-RH?+peg6IhMarlY>uZLb}@iAHhXNop@G4VL_a zKyWY--WNcxJ={5@{`K_Ob=n6BB8;q9bd&l)+Mkq`wSfY5(+9>pU*^nD8NyZeoSe$i z4at>gj?(K@Rr4$y=w{U>jWl}@r~xH%)d5Dw6J~8q))vAsDaisSs6NDKIKt)-FYfs> z#(pX0Q(0oU;o4D9-7`kH|A4Ck^tzh@CWo+~1V*(nj=*EE<(~m%F~gUk!GANG!+V?H z2lnyRbN$!61SerSz5V*)X+WNCtZQT#5Rj@bIXTlW0mVVCY>? z+nZASaNNEIEL(5S`Ku5Xa_e{Y^q=L9L4X(A6qHO%epO0;R66BoQq-{i$v9BWtipR6 z{M|s1`|k1aS9a=LPz>=%pgsN6*?E4{myq>scB0Q{fy-aN?zGEU6B(oTpIis$o(09T z1^*u)@=68Z_Y7eb{|>N-We7+$7ba#B#H+#+EQ$_fD>zUfB$MVY)`=j1)5l;BlL&eJ z?OGjH6qvH1X)^mR7D>yCNPRoivq5!c@u_Mi>OWVG377ag(sQoLdR75R_&7Ay{Y?EV z{ZER(l7oj;1eaA-v?E{n=#)DHr@Kk0wg>8PYQ<>OaF?Q2*dnYri)UcpdIFN}y5CwB z#0P5q?f!?!%*Dt$gyCYK?@l8(>y4!~zk+2{0sT1j*RL=$Aj3ZJt`4Lz*~OR;t_$p^ zL2#B_8aCu`xn+hmD){&f@@eEt$jHb{N@%9qe=EeM{NL)dgUwT?n!!z@H2JXp;D|TQ zkkVkDKY~iW-J82f=`UqUUG{g{oW0s|XQ=@2!9+Enq{m1~Z@9UA*}xej0>S-A{_0(L zBZE-C?HTKY%j=*wz2*NiQ34g{_3zI?LI$Kvk5qZOW8`9#VqW`+NVAoHBHK~#-E0s> zGg7C4%*!jW$Ng1J>Kklca;7}At++S4sLT$}i6u^uTnuJZ5^${Bnlyd(pC`eTH5H-q zYddL?1wdJLyE*gKM>vMyRPfvrk(UPM&BIkAex;=_!~d3k*gM+tlaY&gRIqu3qEEAG zs@M1MZ#c1=ICs$8SaN5UFBbpDps1*UyJb?cLxKHVk+ln+)IpCd+3v5?5ixM` zlL_Z6GCLMK+E0Iw6P~#LTO@7}%dc^TG#undeV+qw~OqpHybL;@){$ zLT1cJrXW2(09Ha3ul{U5$e?%l60D^ihx71Z*H!OcT2twxY12w9+w~8;vo`cN^UH>&XWIjGl|_S5Nj3KI{$FDen0N z)Nt^aN<)t5$C!CSsHOClevXGBg<&snX{IX{W-mbeA>l2Z=ebp=V zpM|Zaz%S^U%H4f~4qwI+YsQkZ>scJ)aaQ3ADt{Vw2iGuI3<&NcV;FxQtlje0VGq7o z4=bu`(n+&3q%LCxD0hE;qGQ$Yatm$p!qY&PSdL}--2el#&MRh@4E|Kr0WP}jbAB1I z&7G&oH7~rXROny0>d;F%%hHQ4md!_d6fS3)CMrIusR$h_FDui!yc8)eYSc6(uG)0T z2=C#l8I@;=6~0>P|4`v9w(<4Tnr&*;kR6OvinBB*eHP*dJE}u2LIOPg@l{YWdQnas z49)}J~j81;)Ss_~}CU%}q7B zR8#wVU@f745?`GANnzoL*eRU>K+uLw6F_w2ra9bVO7PZqXH~P-b`+R8SV1NMd-B-Q z$T)4PUz1f9pZ3P%F%=stPcHJxl4COe^}^(WgJ|*l1@{tGg?U|db@ijWSZlLNrfhC* z%i_j7&DY8UvBbK z(oF}4B`#zN&wGiDWewvP+wSrw=$NCQSsG3D$G$F0Xn142Zu>-|2K*zMA{;Y%isyPxpWF5Jv8}}FU#Q=Sw>^r};UR#!Zvy)=Po!xh3Er?W z^W@WqT?D^ot+5ksi*-j@^1#efyA`pwAh-@G#g-mMlYLWDs9IW*vhTZ+vfmGFp4_uF)#hbYD3tqZ zQ*zF4klh>gC@&G7fG1LqKf1!AJRs!(;d?v`Ly`4nA%<)B&baw@l0z4&Hk%j-diTp) z^ZaiZJq8GLZiV_$L;Y^r)3zG3#l;qT{Own4GZ{vDdcG=3`oeL~9AWrrV6s5Qg*BKslg`~?XIn*?w*TyqA z8wIxwlWv_|)fYM;X+`AR(VbBmDQf9rMGRg$;y)!*YaV6BD)&x_FdFBut3BNRHe+tR zas5QY75t-IJ}VbZ>k0Fb`a#C=XB;QYHLc$gzNk4Bn-gxjFuk;wg>KI(lz<@%U+|sZ zjfa1^Cr4bL2ckibao^H;-d8@D^gykJ8qxI|(4<3fZ8`@B3EckvPA(yMn(H9+)~r@j zl#`9~YmqtXi}{fdr}}94rR7YSU+?IbK1%y(L+z<>l@V<*Tb6(|Xh*|n5=v%>VCGv8 z=e)(cpoqZIJxj*{;g;GVk-P0z^N&Y-M!FtMfb!q|W?(G;f)no+qzc*QVQYE8Dp+p$ zB9Js#c?BrILCYu|Jb+G2o+*N%`XnarjO!e72;OFtgNL9YoS+kqhQEE+MOlmfS$lhX zG%7(ZC7)@+tJ#abCi_r^7v8A|PMxmdN<{L~BR>XKZ?*Y_PEM$|t`~o}y3bzhxPVRY zCOfEv7FAh}#&18-AOJ_)IdTG6xK;H)P|RG*=v_X0@%l40YyJJ@q)lzDaIT|sQT6;o zg|K9spql9BC!%0ExMcxnE;WF~IZzK_Az+L&`Wv0 zk*BtS4;M%jZJny1B#!U-`CmIjI zzdjl#*jy}?Q6}Kd>EM+B7fEQD)0lFZN)VZ8Ch*SXX1=nSN8uR8PZt+n)&6G?hVv3*fkLp_K^920C{;~|8sdm`0 z{$8Ofu~dCLS69KnVvhfGFo&zwR31)+>YcmKkvWs(KQu0s~ zmnXTqs#C(>x11(jZ3z2qSYG6B3ST^j&DRw9EM(gNZYp!~lQ@m&`sKy!WyAI!G5!=3 zf1_*Iw`VRC^yn60oMT=S&`$NZM=q&HDib%E*oajJ9v!yflt(pNdzDIz$~1=fiMj6i z4lsc7m`|Tl1%Fd?%A3=%V{Zs5BAW>eCV=MC|Ijt3Y1W?}W0ds#b*gx$!@6|~PJ&!-<+z%bXHi@7~+S{ha;9rINf}HuR?= zBcYPw`)r|QDKr&OuH~m6eTn7mXn(N^CghOuUjm^1&rNjX>m61+^;=I767rqF_dF^v zFByDKqsNphZ_YC#vNL`USpI6!0TE?L!SYXa058&5L!*oO82w~kFl=*E99+UL0eZoQ z7O$PFi#rFgl(CMQm6F7!Cv|R*QtYHc6(~5dLHT~7R@hdbpRYInEbQmxEm0FiH~-Ev zpLviAa#r41;QXR(V_mYAtr*hfyd$8Rj-FY~hGa<2@n-IhHsgee+sPhwFFrSQ?iiYB z5k`4VoGEy&w5lsg22!#_;Of^fi#@XseP#aseeK6NrVcaj)7SLo{lCM(fS&WWx?WnP zczC&vaoPQETu;UAM;6}+BhvsIQk!xe6~~`T;llz-F`6;DpUO?@w&LEg&)xY)x5l*D z9tpl8j6*)(uZD^}EUSjC-8`O8KOlcE_#oIe#XdG_NT21w%k0+sKgKUsqvOY)s*XEX z1!ae7ypNRv&(HT3p1#jz3taiqMs9CpmTS3q*AG;KH@hEAkmF|%SR~}U@3O1i8zhWu z-OBNG^|-bVg>t_5K#|1D9KQaxk|hPK5!eVDp4HsjbI_-~6Kr_OU(Oa_!C}7W@s(;u z5G$73+4qW0gMSa2)p-y7(ZOb z`;gVMuY}1#1rq80>Bw_=OllNWSN<90T37%`zbeB#GbGk}MO2(0StKM#2C${d9)`eg z={{aUZg(9fvyk`U%l(kiiU_iqjsTLbGxc_a;brQmNkK>j z;{-?m-Ts*#-};eN0Yhg6$ozKk6KUo7v+pZye)ZmJ->FERe-F(AJ)<^vbKa}5LyOBO zb<(uYn81oEj{~J3neos$vXe0npEx=?!%ZDi@m4Njat4 z!OUn$?a6cGPZL;o9wzmW;Wolb3|ooqaAq+_T!ZCJt>m*x2m5~#oxGXbM3k=n*2W-b z7&Qd@X~tDWd}^{;V13q0*d^E3(PxNX>F4^Wop}4J^dfKJWBC)?R~@Ytc*BwoaR?;j zo?e&V>o1)t1y$UPneoa4-BCle3bn~8>n^Y@5AG31mNVmb3X3UO_GqCj;{A@V{4G=U zsWD6To?Eqz(gBU=beHYo9+eRq?7^kF{>HPv7|?GDRtqD&o;qU^sHK`qN7E`ee

`GZz`&suqX9|RcO60`l&tU)HNrzj>C9)5WZ`u^`p2Xun zi#PkRl`bX4Z@Nv^VLO_Z!)M~vRv>byu|ckl&hS`1_IR?)sP&7o;i`$+d+vL@E_m*? z<5#q;Wft5~McyX7L-Lb(zGHIX^z@d{*$5x*3Wmod5)b&E;LuYDFyOVu{p^y@!VKtZ z+ZAHp&)8aLDLhXUco6M&`<}Ablj73}_H51RtC?_cu(Sou8=ob%GT(;>lIGZ++Znv} zk+K>!lJ`Ptfj$w}B=APqa!cx7pf#b%%z)|he=NsFB%H1K;1iD%snG9+6bzN8Mx(ed z75z#Tu;m~&pxdt{&A)ZqSsc)K^R3C=t*G>OUqaBkz+KpACYHBaTl?(|>g==2dffST zkr&}`H<*=(ZT&85XNQVgw)YMCAw zrtXP>pw%zJ{9HspykCa4ucwBt&cqS*_CdBhlD2hM{i4shSsC%>q9{40j+Sr{m;Lpb z$$r7`+AeVSGcwTZ`>rpH{&=I(=idnQb&EZESWc$DdElC`r0k1_$ts(;UH14%wumck z4Q6Fw_)H>3P~LX{RV%y58-GEv{2{(Kc28PVX=MO2ikxehEY9Z}4*aabW!rRy^+N)k zHu+y`rB$v|F9DNpcxka2}70o zOD(hkfZyKKWkokn6u<(A_enc`6Sh?DSzh3W-z1!xNH`q#4oTiN`^@;~l1r{aZ^|01 zDoH4UUFz|-5P$pBi;rQ~5B!Eui`Z+ws1y?oNGm27?+NS>9t)tBOz`IfINMCP@-xoo z*i6kK;RJf_Yo8ZmaKdxB;I2Uw=!ag3Bpg~*l#!{ z9}F>&v(v5xzTS%#H1C7N`>c6-^&}2mFc9YJ;mss&5o5I76rc9uxhdoBJ<38KkUkTv zzm)-yAJ;B;-GAp&#R%7g1RsM9iOmIZqwh7`4~U)5tdi5ykO$AsvZO7)FAMblB7lEt zaC`Yn%5%DAmvU-wsD(F7*7QF@#++PWAOB}FQi7&7X~RrJMU*4Lh}+sF>-pTsj4Rbq z?G+_Qq??q}2PsMdfIHIx27h=NWHmwdVsE$%zs)}Hon`F!tzEk*!$X4E6&tb)9r)$F zy5-f9gxRCO1eUybiApRtpaP)nf2E(j1h|YvvhKMq!uVCrR0%_4(L3Y3RY?rzD@QH? zAi%^ez9BK(Wg@s~W=gl{k=4FQDM^1lw0DQGGbVpDU9k@`A^-PZ;YJ*vsv2aztg>Co z1-W<$h~0kpaL-jB&6lwC&1Udwk3Bp*oZxmIiWSqG4M>;V^*{7;_ab{pt4T0w*2Gl) zl5R6(3ac~5+{+yE$QP#)NRE35!##5jB=OC>wB-R@a`7F>0#)G+E zdU!;05W+9taI2p5$FiOYvIQbOvofC|+F#CiahCGwnf$8-a;k$c^&+aDS2~%HFqFfT zhMAB3gRiLa!5Pta@BIoB@|;b1$d*i`+Nj7rVt-3}G*vreW-rY4%z)V((Y~|ZUWJLbazj9RHVwut9TC+6ZI>uvBLHh;xJdW*r zGBCvUwuzY{ou?1Ob(A%3Syb{hL`&`fNuAg*8_ndwg#e=5-YXs5*rsWl=b2}x&O+1U z3cv8jhGG`f0|-=Pp@XhLjsstRdLacSUX6DyV+$Z>L?<8e`&__N>*FvMN(s^dd{%mO zr}_Ip>JZsK@tUCmU^nU`Dr#-w@KAw?J5Ae(JkQzDxa6CVN0U>Ox4{qiSZDr7Q~^OB z16NN$bx^(b<45Jgl$KzlUFFP42q zDXWallb5B&M$ZKK|20s7rva=`JP{KBlB>2>39V?brz{GQeB62nRkS#}OEiz|&}#KL z@_$M1bbMm%1{}o6vsjom*$eA4i#yLTbX$ACy7db46iN&DexLYjeH2fsI@sIW+i!5d z?>Q}<NF0aQA(J)3#j(> zeDIGpy-#hIct_$Yie{V2!PvVQ2H`~mY)z`Xox(v&+l5YD2iUyyC7cn0mDp zLjqx#vWW+15Xb0-2u7c}LorLRHZh%PPXP2)rGg)oEi=_ z$C@&9N)KLif+`)h{r}G1y~Ae=7Q+##U8VvUkdrV-7W=!PwZDJa$O2`0Y@9svTAsl6 zGDSK3;=r^jK`?jS; z71)6|f#acraHAU-V$((>Wo18l9ZtFJ{S+15SXy_+5%b5?hcxOiI-l@<0%7(n!c+9a ztkKDiD_K(t8q;#LLym(clqdivtW;l@S}1B3m$2)b$Z?UrnJKr+*-;nEtKAOaaHTF2 zPBhlFR8bV;vA{^*#vF$BP|Wtl*8p;^)LpjP7{s@EP3XCubd0x%w{3C>OCHq^Hr*ia zNa=hQSwZGs4;Djjed2#)Fj*69_@54j3V1l6LOIa2GbZ2b$)C?H;;H~Wjus0T{5G(A zaRlB$moeJuj05BX*fOo*BFV?1JP$c05%r?fuJ2#Sk2v()M{>eV|1_Nbv>^#T(-`i7 zT%=8T?`AF71(KmC*&{T$`6bLuyr$%OxyiFzO8pVKwbtkEmU6v>kY&u44Geh0OozVD zR_k-JV1CJV`LvD5mQ#}?GFGSI`f?0=QV`1@ynS<;t2=1U!mx$%n0C?}g*8puSP49u}p}&rl9xt9j11k@p7>lA2um@+9)U#1mF2Bax#&E zFI#SfrtYz;b>57`|3B=#RajJC_%FU^sG(Cr8bm@GLAnKlZlwkgk?yWRKtxiyL6L6h z9!ii_O1itd;cWc+d!GNf`Cpxjb8(($uGZ|m;$3fi-dJm^#r2fvWP?gFtm-0=q1?U= zV`F@zgp!rfW~1K{6q4>_kev@~W*dg_G7s+jZffxuLqmYt+V&K3oB|W!nzt)M+jHZ& zmBF;DH|4sbq48XDuk@a@88a=_qJbaTvU0JqzI1$dDnBf6!_j7+)k7$nxAF5Q^>{)kghrYlnc_S`G13I{c8foP2>*tVfy z#_d{PRp~(D9^bn_cd!&*@+V;iRK-D2iwf-ruV6yuZque}5e(VVR}#=*;IYpkb`do6 zB|hNu>2RKPer4tONQwwaBy+mkE0E7A!fxhW?E(|dlaubZ52p)fVwFOB#XLW}u32Me z3_>b=AflY}8IO>Ze(YHmnWFkv9=X|JZkzf+Xbf7QiYLEkqI8+#I+c^=w)J#7YxgO9 z(V(|h;`}UR!%U*q5L>C5aaYe&zhTKr`|xz{$)7ss>Jvvv_o-}IhA-J4f0rG-_iMcV zBCGG+=MZ>}Id$QXIht3tmuK#bzhz+Qr>|{d5(xd=J<%D|Q>z<%tWm!T& zhou^Wot3w;pDcMcI&J(V?zP+&7>X7~1;?zaa&+^*?R`dJuIwt>{h<|7(9&ppA%7&* zGTlNdr9zvd$-g07o_jfO=&XV*T%xVkmbZ+9|x*46CJiR&lBfY6nkGjXBp2; zopXRR79zHjXkazFUzkh?fhoeo+%}s}`!6@5VqXq_eOi7@RZ~Uuj9eEc*ATf!VL(t! zer}v9v2u~_zM<(Ier_#6v~m@%U-N8aRO=CYr(+cRtiP)%r9n!)BKLNB^_#RLk+H-;)J&x(GL0=~TgAUt}h2uI=LS zxV#iVIb5HXm{0$`c@xi`y6fhI%k=hi=X&D{hITz^I~;17Ef*73P*ST?k#fV5dLy)B z{;qI{5bEo2*?5rUnMsw+T4goPi8cIagU!84-E{RRYL6N${kCJ2M1$8<));xy*U(QX zy--Q*fBa4s$tDC@7q>Pdj66U`WPEOgd;e6 zVt&Kvcg|ZJ^E*qp)}K9Iqx|(O`d!8h9ZXe z$BG9<6%@|ku!8RE?`XVl#h)ZM^r#11ZeXW`zSg z2Yk7kk&)PqY+X)Qb_JeYAIX(jU&q@a6eW9{qpJ#0*O3u2^AP`Fd0#p6#KLQg6gH0W zWxv)yF=F=T|msX_1I0E4wCSjj5DpEKQ^AY`~s1qN}X zIIoL@kxunEO(W<*MVT(M=oG%6m`NOL_i$x>9d{^S${uOscg$;T^i_7QR^_|TA#!MA zZ{8$LTQyc;iCEBsE_lm!6p6f;qIc{zfZng_K4s)c}s9_s1AFl1m2zpfL z@0w>c5-Sh<{v{H613ExLmY+Bn%PheN z4kd9nREgrD0V6Cg(fHuzip*v(^KHU(5U()_gY~uDLB9_Cn_m^3 z?1<%RGc47;%^29DO4u~2a{X$D6BB=&dQw>$NA#MuPW01fIbE}z`cupi*6?^Akymx> zcwAr|7mFG=*ry7kPmMZz5Cj*JOm&J&T!ocBDBa!-CYsi3R^X0OxMsMI#Xy#J& zn6(y{XtkW&&$oU-+-OiovECCKf&2Fhtt(3cQPq+b8QvSYqzR{#wd=SY1jjqMEpP3f zr`;7u?s2rNV@ z`hY$$VlZ9Y`|CwWiMMLdbRaac%U`kr>%(V(G$HE=)MK;TZO4rluRJh1MRMNyE}rt1fc{~259&PEgvbR$&xSOC4PrYEQA7+ ze!O!J15Gs=z*s1ld~5pJ^Om7Ob+&x9FS4%R<=X3sX`pS#y#mgd%4`YnQ}4Ok zlRCu(k{UUV<|R?gwyp5^zj1afrpCu6CIG@nftS%5_BibDrd>Ag$$SE=W7hLcbCcvj3-vZdd^aF?Zq#S_-2<*pqM*>(6|zrH_`uh}y^?JAMYfUZlt=nf+e z%>%4d0=zM%bY4!y#E*eEC5H4)2uBQ_8oq{^x{Yz^2)=xTa%rk4yfA4yQK7i~Im{*e zXIwLRrR6+FD@mru0~Q!0F}d^Oz4sI|$K>0}slwn5GN|$*z2=MJ)tNrmz&S=MrPkhn z*NMpiJD;QAfg}ax{fz^*t0G=7HfBnenn?|<6nOLQN6=tU^n>n!zZREH5)ILeGK(qM zrIUH6nweBVXV|nL+K4add5JkPGxJ4>YF9<Etn7IacHIlfgvny}i5A1tI|=)4k}2hxa3a01saC z#0-pCRXb$w8Pk8YFU(Lq^fgRc+lP10-tF-NaEQl~VOjqgAj+T^xwUpC|5woTEaUMV z((Q9G$@|xUBnGLUwzvQG@B5&1D}vJfqI_D%;$Op_EGQ<-UJZ$NA_@LpM1#=vx7Cxl zq<;;fAQ+qbzikQxoPEaS!w*q^uUEWysD810;xiR=`S%_L5PbXJf$w*nQkI{eJs7@2 z?3R}0Sg25cgLH35z%7_Y!8-p}SQR6F$D6Ys!Yv|SWNE6a``;IG2*})Y)JJ_J$rjsv zeD6;Cf`n(`xuaTPO9Kg6Ycg~STk6hl0Z-D%Ae0cxLve+ee|HPO6nqH!#yo5W&+h*H z?*S~y^9m+Q>3)&|251dfUv(a*Ny()h%xx!3jW^|{vQ=U?)m@cg)Bun0u?N-heUuMH_w0U7K87H zcyF#~n^Fsq6cLqH7oDLK` zVkm)CvVe`|fJAlnS}YJ+Rglj%QVA9V8OPppr&Tlwz!xVNrEO?dFVd}7wf?i`#{vXt znweFHUa8*~D(=BKvOe);eboKv;?oW1{jmHWgvS;KOZFBs?_XK0^ghooE|y!hUN-sd z(~#qKr#EM+jDCVDFaVId)veyq8YuQrd}=!Ux)<~P_b+7zMX#N|s-xTJY;h@bVlOsLBV8%?Oz3D8S~_%S}qU zuOXV&RWH3*_^qLv3l#M$hM!*GhzBx~=tZfi`mfL8-$Q|xLMs&O<}W&#H(`|G8qMBw z6qV*fS{w;&^QFvan56F!3gxnw*{|_F^4iUcDd&=<`N|YESmo8dJFgY?)uBxIrvT+g z-=lWNfsuG-5#gRH9~(B(C{=G|*AmiRWr^cY8~3mgT7pw=7WQ7B>CHJGt=S*<7>a%y z?LKN{7I%+L;x-EPDQ>fJdqqghf?JZrfZp{LMAS?1K<@^#vWt1d$(49sjbl)TgwtH^ z#ZL2;p4io(qlb@#Ve70CR2{3d!HQ(|z3&BBl~hntNSwv^dsQ9Y9JQJyhag3$S@Oii zqkf?9tLRlUBS9Ex+3PyfuT|SlX5JiPxaNy_;^lt&)Osl`x#pU(rXg`L;Hhz0Mr^Ts zk1Y3Fp-Wdzx<4*N`A`y!aMEP(z6ANi7Y1*le7RBAo=Lsh#`CHb45eKlC?8%K zoEyCW9%1ZUjW7zoMdlZ94)^;R94=qW$RN}KnYL7AFbZw=3^<$u%kuY0fUhsIoXAOvpBfQJhYHDk*Bc=B81ZRAtx5psK8~wO`h->cK#If;P&_r1+acQA4D_u;N1q3y`W$ zfd(&a1h@}qpEPM+pBqjIzX9{$DAdN<0fo<{Q=hXP!oNTeN^7S^<031bSQ6loOPSlcUcgN-~&eZEelrfePI%{G_U?nxkXG*x?@$zGbm~aSm-1r}T+5{Pd)~61eTAy$ZLmDjXWc$QcOw zUV7Z7|DCHv#0lnvRRk-}gsPy1AsImZek3EAohhP}vbEa7CsABbAb!|Jbb11HZ88Bn{a}#Z3nAV9y*r@_x&8mCGdVCwP#qi0lf?V zYWLi4xyd4%Jt(3w*g$$>FoU+rPOjlScp~8=40%4VE)J*wb11+UollsKX9+T{>OO^s zo$s#M-D@d|@PA;uZ^+MAvqdS4am*-%T8)2K#NfQ&YwlReyLWj7216o!e|SMbdu;x&pS2rZ@7bT(w7D_o6PZl~h<(xKgrm$OiG0 zh_ZROO%MAgll4d1p3gM=@P*#oT3m54I)Z@&@;FppBZTK0S|AJEl}&~qqr3Z4lmtCA)*C9rdNS3rG?GlzarQpZV2@-Bp zk+^2}B=pq}pKN`Qh=QT6UP!t@F4X&J|Y?+K=6^D_ZDBhE?L!y2l&B4p?gCUx9yWE+}~nkH=O&{ zoj;$ZkERP>CsAs8%M_7TsPN9=rsJE!$NIhFX69i8B=-`Qu|G$B1uCkl*7lI4YJ%q2 zdj6WY)Ze%56cw{{SX0jNNxq7E{g4O!1F!b?X5iwV$^!n5?5vJ#cAFa({VZZD8T9P* zp^Sct%3C2w8C2WjpKB6U!^k#@aWnO;1isDz)-X#8~eTgE95p|C`ei3{M7;;G6 z4=u!33BSI?GcCk_HM{H)vf4TZk*0`4crlCO_dH70mCHr>{ydTx4d@jSR?0V#kFe}e zAaz=)Pw1TmQ>g&TyM{mzB66eZ1wu%bogcNJ;zID`EAH|jjpaV&7Ph+t^Y;eB%?XTu zt<7<&==hbIOwu&|!gX1r=)EN*z3@7Xfj;?o8{BpN7kL|@Hz^&ndpD!PIeOfs^i1h}O)3YjUAn8`}>S}=7U;qMu#UG4v@%)<{C zAdD%CBUprsO-xZCENPV$I`Srhf#26@?XPqZn4m` zK+kaMZ9)F5h2`^xClaXW)qcyXwRegXfr|bBLAdlYI+Z~ZT?<0@j^X=fC4a$9>)E=O z*PFNJi5GkR)WVWV$oX6k!8XMY1 zNSJSF)EAZYVZN+>C1R~tR1!1vLnKasQ+MIun2>FsbbROl=p~bnqGkYslNgfg=WbS6 zm+7;&m4a8)&J8L3*l?JYEbUbFX@-{YXwmfA!~|RsQlsA!aStD*;HiOy%SxjPK=2N; zhs1t|1(Qy}n#3WgRkhab7b^&mmA=e@&b4G20RrCMbfmA}h_@0sbdhwqIGXvLv>z1Uq|R@ur=-!MyL&wm|mH=g zR8I0?+7(3$tvZ>3SNQ8HtIzjAn76XhHoOvhF99)-+lm(hh-~Rl;SeMi;@g%J8D8CH_M8Z}_sSdR9%e1jF#Xt6Wog|$>5gel zWM%B*)!I;~sguL}?%3!2Xt;K@PxEy8u*PG1?&vky^s*SwrP1$b8;oIvbq zKTxe)-32IbjtbH>qnRT%9i<(~g0z&epSjJv9Y>jSZN9R1-tN@;h;&|MhdlyLsQ++E z1tT;phJ= zpBD42t=qcqR^7{CA)-^-0sAEG19?3_hZp@mTBq?nrE*c{)G@`6N~TMD59o;TRD^l) zLi$&Lxkm)|nz8LNXc01l;9cril74=N_TU2ii4p6~*MBfa9@THR6iN(Y7of@g9IZ(| zThg3Z+KS(+et|iUhEbDj)1=2Ao(o>(3}A|Y^;czt4E-a4-t^`E`nL&f#>b%7g(U;5oMw@+s|;l; zlWQO(=c*OSGdD~XeVY^(pHp0i-=AhE!0OioJ&a1N|4DGJe|9|o0OK5^+8d!z|lcVs!TY=HV zBSpkOmzm8&I^g`SAkr+&=P9-f^Lt!Ivv#tz0n~7h(e5AOrKEFH!9ikaA?9e!9MoE3 zj?~9|9XXIs6x|yS=%IG00qibyePz+2?qSWSDS2f#;?cDr<3%DfP@Rs%U)4Q{JU8@Z z9$V5q%Pb|R;ox9=V{VkZxY}~n=sWwxhY>}ZCpW)X;~pS`}> z8NG=lc+{q000Vj96q(5);e1@Fl^ZCY(DjR-gyIRNsilpLU1Q8pAD>&%9iuhu zFHVE|-}VteJ$bi})@AjH&#i<0XdYv5HcECW=$EfQDy>7ECC$OsnjkABo%2UE)dWte zncK^bFFf%?(IL={z#{+TBw0wLWA?%Wl>|d&`_a^_zae&QRJvXZ%K~S1pBx8VbqW>0 zfgCt0Cw%;Fsf%y|1Nq#DE}%^Hw;xInhI6D-)GT~#&VBm(?}a%(#_)6uff3$HNJn;L z6PEu-;A}dWQ$ntbo`DfC1nLD7&_Y`D@hEX7HOwk{K_s#aND)GVi@`ka)jTK2r}Zf< zH_U2PH1O9Cc@~I)NAv5FK`_+;4Ea7M?2a1B3v20a*}Vqc6r^u zaMOM4m$aOx2kYgmHC4+{1r@t?+wfh@F`nm~CKv=g`!HFxLn{A+rc)hA6b_5RO<=gY zG6D@uaby6I=P=N+xT4a{aS!Y)@kiP@pANT_e4uEquh&klOzjWK^h&gAuH`^aFtnwf zF5J*h=xH&Xo$=>ov!zw3C2x@PH~dUwZFZP#T`WKgP5!CgiJvA^Laqkw*X*a~ct{K0 zSHi6agQr~&e#!K(zJ;q{Fxtapw&qqf=sf3PMm}eIs@A_dr>^0c%OTGniwa)Mi)w$r z!uk!tE$)6}&1YeXw(US;jl!Q&gGzp#bK(h?}>)#D==& zJ@r3WLQM8337_H-<)j=l2jy=-_Ar$N-WSQcEL`5W`sSrh(M@5zAP|5(xs1PEd}%S9 z`_OfB7^B+_vFoxuwfd)AA6v%$LqTCEt{eV_kmKl^;}x*Z*X>~4&?q_;yz5d~A3R-> z<2%17qQfa*bp|r}Z%%{j{&qC>`zAlaH8>XjB#et7JE1&}3^8%8#+ElT6DaPY?l=la zqP4Q_TrE^|Y$)ogFlxtmtx5V~mODy(#;xs_6gZ7u#0Lyjg+e`UGV!l@O#{%u2uw*% zxq!w*KIWfYwGNU`Te`{QWtT4JuBp{d8@<(WPHeA*IC8R+k_@eR9!X9b_~I5z+M zT!67}JaCuck?X<%IqvEK;`2k%t}i%}Yj`KpsEuG%V)wC6+(K_dX~DFX{f9{qPLej6 z8Q8Bd=eE_@7qN*xJDUonl?+LGY+k5^-ru|4tBgdWq%ZPWscca2&7c;r`NLL%PZe>a zYPew zY-{T>g~!5G$o(>|H+q_=_G;kyCGIglSSnhFcIE}<(uQDgl3=7DjB!(gKpNh7(LK4* zu{wL?y)Cpdfln)*y>oG#IU%~M(PdnoM!{P$`$uOtmqx`)W!14ib!Z`o+YTQMG>BCOVnxGZf-g~(i5c|;}o||uq6Gb6Q z8388v`uD&El@G^<{Q;OOlZ4+^gCuIy*&&t{>l0x>xy%n1T6$mn?z*d8@6*+dM%Niv zQ>@N4+IsYUVaxB2(jlQ=JHx57;taSAcS0sZ9?uC$ADtW><=&mu^U%#^gTHsR$SdXj zz%*ZD#eI}{+n@`*wQ|-p+;0CfQ5g3;`M7%j^Dz}o$X%i5f;o0v0I2aI08|#yg|d|1 zFiAh8JQW1i3Z7MMMkNt`_+B)BbvqR%%R)$yrXtLpx)(8fUN%vq8elX$e&4MCViZ=h zb&w_JIG=mj-4mA|N7~MBxAP3+ktA5KcX8@_8R&8JdDWSk;FD{H$D#;$2j(=G03VUK zUZl2Y6x66oZR^zN14F?Y#|wvZ8b;+h`+`oWQ`h-H#VKCApxxwV1m>Ma_{jTkjnQQVUkN5}1}OG?dz}WS z<#S=AilUl*x%4ipAto*EIO8$*A5VspfBc@gf z;u|nJ^HbEhh}4PP$kq9HjiABvgi2+ydRMhGoF=~Wo9UaaCQn%(5GxG#(KdfouC)UT z3iP>j#Nza8BpXk6NRKZpH}%81P4WixA@XVTl11-BQ6ihMq&K^x21Z!RxR8Xj|6WHBibEVdmeFL>SlM(=3e!;`h z+-#aGpjuCz`c~nBmo3h#%667RWNmv`miwR+TMOuU6Lv~2Re$e2sd3L&zzAmRrUO+V zK9C*^C3rpMsnfh zsoLz8!@jo>Y!D-ZJLQ}Nw45kVawB7t!~x%VbZgQl)JAUuJfC3;!$d4ALKtUs)1}su z9>8Q2==EINUQqXT;v0RuN=l*}E;4K|;6r*w2M8M_e$!OGB>aWj^5a3v3w!XS#4s8e z=eNBl5FOOhgzJfrj5&5NjELN$1HMRjIE7p+?9P1KXrHpmM_mdb4Uh7y+USL8;Qstqxr-A1o({~X76uidI~WPBkwOH>(qy4tG+2IKpL`)^d( zBy%ad%desihjYXokMqn)BsMQ^t52Ec;`B8WSCwpY-JhuiYpD4>kcDE>VLhf}lN@9D~Yt8+WHYXD4RsZHvTG#I7z=j(5uk#4mLWEQ1iZz$l*Oqn`xas1uSv zyW`I+GW6Z6O3P_H&pp>9t3{0xmSx*0jWWb;5+dypt(yNL3nTI9KMnh?8V_oUiZFImT!_`H-@57pnj#*AqQr!vTgwD$s zGsnAAm11Y-w@s7|x*-M<% zZoJ5{iIr$N2&%t1cB6@)fK_1EqZyZf(Y?J+o13X`zNetnS7V3s!fUc|0$g)w_avFN zfpcxlA?*|+Sv$o!{;26&6hzC0vSk>3=@$YdHQUt7=0!AKO1oN5vl~AQ8eAIREjzn| z_JGOzWbJ`u(?o8o)FlnI)ib5|VAY03m1wOzsSOq_3ih`k$~caI{Syc}g|@-57k$er zT4rY3PO%%u?uEXo^sS2gun`E3TasrF{987gZev^8@WpmqZbf)q6a+3_xu_qJ!{$UF zm5`Pf$)Cqw)c+c`s9gBX;HJ~mXy><;aQ2lbbH`eS~cJ5X`?Z8vHw*3e;KuV?3&Um@A#LX^?9 z&rQN7-YeWS!fK&hUfinOb@$w+5pqHg%rDsZHU>*fwIqCDAz`yIlfi-R@i(!a-#}a* zi?TIGGc&(WTtA1uYI>)GOoE(_N?S+M_maRR{Zp?7S5}{S?q8#cE=VSSKK1Ce3z&R& zvqKL@LF^b=3QP!_&OZP`gS)9>RqXQJ<2TxL;|2({! z$d+_-0y@`k4H&((YX>FpPzgede9NZy9~rpEdV2Y_5T0Dgi$vo2Q#{%G3_*5vl}?fb zi?E-lC(95djG=&JaYMWfB8PsEv}Hu(S&P<>)vp?{Q3b4K-&hVnwC?+v-zIfKWNoX9 z?YAWt&VCt5`iorj9ds`w7LVG9D+%)Tdr?BbUaSHPss!$X)5iK4y`@d=i!uj&ACx%- zC{{hJ`iR&@8Dvn2>jmWn2O@(cAb$YLD)+NSb8DXe8n{tk%OcSM4yftRzYl=V`AJEG zE&jvFqom*)e_zaadMD!lXF9rg3n1{_6ZrmTd=CmgpN0GzqY+ukWKxH8<&yHZi(BL? zXc5$JV0Y9}W*GdiZ4<;dF`v)>qs$i_uC|G!swwiyrdMbZLwP@fe%^?tev6&n@ylt6_vy7}ZbChq~0{Gj4}}em;u> zycl^yk$!w+Kk{OHm0RS;f6IoWFwFH(%(2*MHcO7;qX17Rqq)$~3{|{Eh?g}B27I)J zs=Y+||2=C>_^#8Xx{cyf!GuRtDe1f8Ht@Tm8rU5R4PRZM+d-M=n3=h%yGJTRsHqI7kMn|=XDbOU3FhNJxRv7 zwL>2NNA<%Po}y2FEJ)dX7$5-zvGkZQPSL8X${J^q zj-JRr54Pgr)5hC#dCF?gvO_2-MY9~gj0sKZVb|?J@0<^K_CT$O8lLx;XJPazlQdeP zsxsR5M3x<+hq#AuDKL|_tD_|7J7bp!0n+f!pkk_T@2zbGnEFbro!WJnRS@XvV!gIn1xVEu?4D<2w3{a-bk6pTA49a0fbH)KYd}K13 zC@g416T8XS^4vqeFVtDol8_v}EE9=Y?h^T^p$O`hI|(}ygw6=)>QLSFvT4Bw{B*a| zoH7}E>U=Q?v#A~w0FeV>=OT^jyk-kkigl)F8VKONe>9~bJpun80V^UP z(AD?rJ4xU`mnVrg%gWxzM}Oj%DZ7?;%N;JeGFjkVW+Cu zObrpjqv6My^XEoxU{2ph3_+eom7W)R@90nd(=MXlJWTGzivq3$V#RHknv)c4H)Zxc z-;e%DM;h#-x2s6=MS~J+=X*xvy}8gDyeTIyEgQ9TZxqB-b~!^jJv*C0&UW1lHVQ&6 zY#3m|SJLdn&U!=dGF#}f^*wZR!Ihm&hjT(2DMxK;{~z_Cpv2yvQt9UMoMw3+jZ{=t z)M`xz%<(qS-1>86N^pR$lE&l@eDXw^`8~grJb0*1Llv%>8pz~cMeKQ`($-^*GhhB; z4yUHiI+nDfTkEfB|i@mgjR1DWvya@dWETQnY#H zkHwmJ*aHMMEK-gK!_v;awfB9U;v)%P^VAc>V136!Mz>EhwAyX=+WuQRG3;#OUA2l{ z4TK6({BaZcd@eh7v45_x#=Xe&!T|i{^JAzy4*8G0;kE&i^sd;bjx(z8duf4m%^#fs zn!X==G(zGZ59y&*t=~YwxHD3&gangYR!&|wE-8SGU1z5r3mzww*)RE<-<5@4Lj50? z4@1qxzx^@m4Gf{OzvcaKUV5J=9}aX`^bm_{@GpRQT8EixPx3}QZP&WC6fKz^$XW<5+vrxYIoih5Ope`+&3kj#rp>@-eE%Meaw=*ZEgaw)0WXnaG;&fTNTx``!oyd@ci-QUmX?=`Qnpqy;jTw zf}xzpYh?>EwQ669nhV|}3j#d2<2(87sDNrU|SzqdY}dtmN-b}k_l z;;`*!u4c@I0|4PJsyI(CcGycE;O3ypufuy}(Fvoui zU^4`;D)YSIsuHSdGclTn+PxnzF|r$cZ$~Kjyju?KvG!B@#A0JXgU+I0Py+zdD$uV| zvJEF9-d5ioTt`gWKUAWa((f&=M;{1ejFG&beD^hF;JK@3id|i0_Fu&Xhn+D3o}5*G zTn}mOfEplW&SaoKidT?Vv-ahEJ5u?g$1j2yVK-^^jRL?R^4(mk$3_8$!zmY8^h=s( zpg1(^r~Rvo^>cDb2bOsr#BNNqP1gFqx%CS>)6Gu1aI0vk08UU{2+gHU z2KX=isklNuUt)fd%F*i4f7}g7`pcx!jYj|Ut#Mvi@9;X1{IU2@oPO7blr($#GQBAT zvVZZ6r+)YdRraRn%4271O(hWF{Brx0@~3ld+;k7RdRS4#tl9nVo|QZB{-UZ`6S6A2 z(cj-U7@*YE5ClOW_{PEdtJ5$ajW$~E()5yAJVsf&TdF*!A==A%=(#MR@E(2@5 za*v-vYB~mXB4PXu>YvSfd$X+%CfWLEGfsM@HM0`p#|pFWGcqYEJ)gz5og5KN?Kq)_ zVvgOKmc@pZ_|bu|>CrRXh{sLnOFQ*0r?U^5A3ke2@kb%bJA0fEBh~hKyq#l?juo9^ z?km%iedvc_iT#tfklBNs(R8G}lAJ%;D8yxBCCIV5ajv14%Zw=Ya}DiA8;hO$MuIL* z0?jys{z$?%#$-;^h|_05d?HLqBPCf*=?O8bFN1ck%-l7zZhpQF+^3x;61~N>#Z{A0 zRJ!SUab!ccV-X?Yrdw*a0AIvbeZQS zS;lrZnzPh;b|aRi^5re=g#q;iTU&4J)~bB-CtU`9!NdT7NAbC=l!h#lz;@iRECt1u zbRcm|wGD;i`zj$)$Zq3v2?n1$Ew-K5u%jRbr%zu5x(KIN(^hwozVl}7ME&Is2PXx* z)8)^FHtFphc@~7(MReI7IL^@sky5-{z(0%;PoyBL?kdiTkU0HSnV%ACPhy9f#Csf3 ztwfd5!@N6i=0){PDb2x0NJmg;g&%jxV(Tr$ftMlH`oU&uD9m=*l@t|)Xz<14rqL4u zf{KY-njeLRd*genlFd#U@f+iLH}PI@%a_($ZSNtNR^nE^`pMG(x*e_{#uVdEZV=3U zj%I1Q8lmev4%x_pNRq%|*td_7MA|H3E(|q!Y?;DbLDBQWUnZ#QI*kdmvwNW=aim)L z8=BZ6UH>^w8LZHeq@v@QHnb<+ugng;o34U3{47Bkqj4MIYF8|<-{HQ}wHM50PGPnz zem>1#dh7(G-2_dNHdRHwOjGi#Kvy3=BN|?4=i_}!?JL|xPoJsg72NHDp%;DFiUqp4 zeqkSht-`7Ev8IdFC%WjA_`187Pj&2YYS2>{^%1KS$Im2sUx|&I(8P=%yATMH$~MOV zsYncbQ6c+{cH@mli50WY=?^7auJ&`5#ve7IFRw4vGQEW)ahx3XPUHPm6L1+uU~=Q_ z>q#9(DA+%K^6ujAR-U>0cKzM^b4-2mNjVuqJSjJ6k&S`?9XD!W+HeN5t@}4Sld2fD z1yyyuAT#Onz&!Z+El9-7L;0z8s}S;-vo+sNF-Tv7wRfbkieoIRgiO z>!7fpqM*KrO%*F8L3BOFP6iaa=#?)XdVzasPW!5BHhde9EWhQ{X1tf)XK~TsmtLb! zajJQ+xkYZyx{bvLB;z{H>2)RjhIoAIQ;^?l-yK z&XIz|lH;9Ukm!>!viY=8>_J5qTeWEfS{JxKe=aIc6yP}gl=W~oaKSsM;8v&bj6b*> z2>H$zGf+TZaBuZJQXo4oA^!PalPe$!^=jB?+*4*TG&uFQK5e{|r$y)@L1OJkMRZ9e zB|kQkTE!nfia9jtskDZ+ghbuH>P??@+bB-dv$&01Wfzx=w;|0KoQrLGYaK6Is*)8; z4NW#R-T!OAtlpt=7qHbARaGMI^TCXVrl*_N#PL#~HjvJ){Xc^;j>;rYczSbc_(ihE zFaUrs9Ii&>wO!KR&&eg`A$nGUb7~>qaTW0diWS1wauu92nS_Rv{K|q2?b#85_%Q4B z=Ic8AT?RTfgy2c`&HkrKW_uKZsq41vwkl8CYK|!Y9O_xz9QDk;`k2oF(Wju9^8N_c z`bjEWa=&3Ulp+l1AfK=6;TA`E?UCEWWmwZ2?#o`2g9h`K+c%#-!LjFB7gAX2gr?E@ z9iIG!J}Lyr{M&{PQYX{F&>vQp=k!hK~1~wP_pDhbh?`gg|noe>JkV$Q<*%Ih&^LvOyl>gGTzmp4t7r_5BM3OUs*!*3A!2QtZF zAFta}C9-!WE89w!OV^vu5igOfb8)exk+zR9%x$E3&+g1iT4Wk~ZMHMB+kH5$s0hmb z;E=EV(9x>dck5ng*IU9vW_&czJFcQdi*e|&4ug-8m_PcDwT|VG(*dTYq@(E-zfcvf z+dj0#UD_OcsQ0zQ6ny%9nDRE#^)Z=wxb(d){Xx&)#~T0wX)f7Tw*wS0pU@^HPWkel z=f&)@Bdmy2V^@%;X*jqCtbjRhfCDU@$qn3O3St_G?OvDy09~f! z!~GyryS=WXqv{{g>Fut`-qfUFy;SZRq=$Xo&zI68Y|mX%{<;j57=8hh8)J=POni_g zysG;GlvR_i^R(UQt_T?<(<5ihL!4{XsU_WOezD^CS7D4S@3G;zmUCYiQ;cF{XwRz~Y@r=4fC`mV$PtTF)Sm{a8qx0iQkRSx` z7cO!!y$!dwH1*zI;@+2bKU`r5sW-d{;#YQ&>8F<;Wwkx}dH;q7kOVqUk=Co60{5%x zQuBQ6I?4i%tmp84rhp_qLo-^Ue=&^VVOV283lKcxz;x0Gg5SXAW4@C0q}MW^&M&L6 zB_C0v)WqhU!xw&DE=9L6?V4vb2{IN&{bi6NN~m$BQL<5HPe(&_7`i;-k@$7klsu9e zisJr3n5m8R=gXu51jDsh@VgRx(3c*PR5xRm{W*MGO*MHtEW5$iMsd4hEX?}ERXBmd z^IOp`Qw@Li{|T$oLaO1qR(w_!yTcMMFu=Z%6bl`jD5@!~+y@bHUD>uN5{$+A#1PID z^jDi}IA`OmF&^LIZjcfK-c}YuVggI2ag#rLLIeyuA!Tn!`sk7v55>IcN%XB;6@;(W}sr+SCh{5v4e<;GYZToolG70m( zOi(mFZ3D~C(fDA_E#Z%Vlw*G2Y}y>5%(7cqFwl{MJ6PWp89|I z2bV5fueqv`*G{;Cx+#Wb9phCSc%XBKU~G?D5AF&w{666VBygB6BB=D-uSGe!Jh$YIAdgTvXPe5Hl%7>sOqse6^t zw=7Q2f3~jo?_FE*n>d7Qb9D!)Afz%OcoPv-_}J+F!?)a+u?{?4N;H;#it`hq-mno{ zMOkK)JS**ZWZ`}hpi4Ejg>K@s>Mq60H$_lD8nR`>D^y~iX8eoR%3h@8T}~kNio?&L zIrKcI1eq?T$cvoXAP?8cslcgAdjKe%p9(8~=7c2@COZ($aIT(hdpX)(_P^Tu&abAr zC*06G0aS_*id3ab4<#T<6M}$BFHx!>z4wkt6%bIWA|Oid9Vr@+DlGwNq4yGMAc;5n z{_dCiH{5(VYn`lhvNN;K-p}*Q%$_!@_n6;btF-<^WRuH9s@i*ipv~VWo~s4g8o7@Y zi>G@rKB(WaDYs)TytT+f0N8cDn$yf|gP};nD#B?53jM=Ny&B<7?iPYig7vRu&2RbflKFgv3jf)GseI?AXXRYKTE$@j) za&9M$!syQ`)geVol*K)&g$O7D;OS&H#hRFNd4-eEYQwfWs-LCCQ_9Hme0-s4Le8g`UG8$ncN&>xo92ngTp;oQi)uqDv}U$cPw+?cV)Ew1viu4D2zQuc}R}EvsQ88oq^{)fLq>CgF5BzoDJgm}=Y-z&+wI z@WdyC;tfL62jUX&A1^-4aC2KE3As|2 zZru(G(yFvJqO2DPO@r_&UQYv4knAE~$eN4bQC&m$UnjNY6pmhJoHU6#XsVy-DGRp+ zcbzc#-Z^Y9g4b^KPMU?neC=cl$9^T~ve>o$g9xHLOZ%609cgo?y|OKGubz^Vih>sT z43e<=ivNc5JDFWakobS&NeKSX5`k4+;Et0J{e=IZb9kQT3>;o?s@$jbX2$Kx`??}i z4*TX)Mhh+>i$XXxLQ5pAhWJ{Mx zuyy(;zeku*hOd4<`$mpR;zxdhE}RyLnV<^Z;%IChK73~Mn?DSB7OYTnQr1>?5H+mH zh~|}x*0#QqDR>mO8-x&;uW-JaAu_A=(mH{aDdvD^-{JdN2sC@gD85Te!0xL}F7r$I z+|O%o--XZie53Cbxlt}!{|;E|FOr%iN47Lu;V;T^^-sH1l_nOJC6}dWq{zwgxvbFE2J?&}`%mXj_FApInot_~3 z5+CQbeb((w>CN|>Gu`0Cyd2DM3aAwoaWp9yJ6`+JK1Z*c%KXi!A$0j#4|?v4@T!P| z4DWMoZV&! zs83a#7r=fCg1nAoCd`*^OEpd{_N6>9M;wp<2*CbTUWuY%dg$YgLw8pTl%=vd zo95+6Uc5CgYV)v297h}a&RBlJU`$&a?bf^h!?hla+(&~Th)aCXq)_Ac;WFQd3j^i3 ztx=A7F5PDFt9Z#BRfTHQ=upW)2ple`Vj{u}yXpqkpTo3W$C$uj@|h5Wt3|pV008t6 zgxeMJ=JZykr1Wb)qYxBe&RRSdr|FWb$q4Y|tJ5H@G#^XeCntWwMkz87RF|#>6e)8}kH+Y@tM1jnI*<>SpfAf4w37>pwG`GJKwqZwjf>J#Kr8L&kCl)RXuvpX$)X z`91r|70_ef>-(1hJ!EJW`#HTM;Ys2jm8(V{5lu5_=2(E|${-4lwf18LOJddI>WX|e z;!Y=74iuEnJ*^3)eq?c3?DosSyzpAIIXR7Ckm95XeI;{9KuT!GQ z15+$|@@WYM^Yct47_8v0!F^`{K}3TYn1NglO?xZTn(E45Yy!9Jxv|N-Aup%AZV5R!frLZIS;EbkC}*T4(LgUhfq^ zh*Vly^tLF>l<8Zou&+8Z%d$1H5!i{@%>+N3_F;xWV;)Cgi<%et>DlFH&6IuVx2N}{ ze!&`Uh&IfA15(68W1nNG>nbjtYa0BAJqfH|Snz41KkCoL41yLnaQ2}G6Oaqd^F+@K z4U}>+pp`+povZxaW0@c{r^pxhw%?aRa!ffx(36FmLRrVPB#57NssYM^w{yJs?EEV4 zgGKMIV6$u76MP-RKh|1FY8ejk)@W0Dya%DC+UF zJcv;POWI@KPRmj-3QFmL|;{)Gn5JGcp zsw3WJat(%=-;TVjjPY`^n4{HT0-6XstZvq=K&-Fcp$l`L@q9zX&^f zt_b$F9F$oiAFp7L_?e~Vr%jIZ9G|pthevF#QQQ+msb@6>F|0Q(Phr}OI(%^rb$+@2_t1z5eDw~jc0(1wq*NHT>5aQq zb?i(PVl!7r5Ade=pzfi4_*x@wBF2;mZx3@)_?2%lly|j%-tMu(mEYEKfpv*6l`;=A zmCCM-Ih;5jv_h_QS8jC3v(AU+Pj<@Ao{zT7^O9vU+#L}@K}q~Tr?o63o1Kf6;#M&m zcCB~czAI+~-&jbdR)Rg2G;vyGupSa?g>&U`gxlzQ>3(lC?EGzQ$=Ov8wsD-~{P6+z z-3}ugw6flINmR=5^I*xjh?Vx)&DI-n5!60Ip_ej`z5>)E|2@*hhxGV$ zL(P6-`n|_=5zd6o@3uz~O`CzmW1m!&eMtk1govxvQ~c%1Xy;C}H!kI2%L7CbKE;RL z_X6uyGXv5V*ej=#XNjCCqKL$#Q_R~m7LnX36AJWVRm2X{EgrWO`+?Ju|vK}6> z1MNH?7(j{B4qOS=R30-+xU(edVuq6-oE%r{SyAtJujZvxf<=ma+3Hi{`TvoH!mpH+ zM+tg8mn29b;kBRFYw4B?5wk?z)!_&%@Ba{4As~wKP#pKZE@~ zULSeF#b^%y{x;KT*Fxg-grvJ?K)pM;W0BKE!Oc2V*WqaiGsPuGQc^bPZ-Cr60{fz2LeUZK+()6VBhf@VtJL-setO+`W zdTQt%-1^#m;in}C>W6jRTkr$=WaWz|=d;|MvYX7JK7p4+cJKeO9PY&Mx(Bt*PhEgk zma(FddXXoP5?A5@q9B|Fs(!mB`bsG@F8xg9cgLO-ZV0RZN(8v(KL>D;p}4R&nwKtZ4WIPjr~J?=TK z&8Fs^kJ~_!Gys6!G+_#CPDcTOr0%rPFB;Gd5@k`r?UOM4()dB>Dof|yY}T$`yN}S5 zn_|*~#RgP#%X4k#OeqOomt#?`8aBuK8>HrE7Q0ql<)W-EsSywU384)4zRlb8ALG6# zEn4TRFpA{gOh=@p3<$qQKe43RDCG7wfwyO)#h;F2f_@kxx^TU4i0K_Wwe=-o6GNm^ z2%^e|o|yGV{h=2Cpa{Zir+UriOS#yrX|Mwdd4F{qL;-R+PC3bb3U`fe-0 zzCzCBC?J<#5xXI)@J^}I%K4l-EE{0V7jB)$BbL>-O;e4A1}EnxTn$DJr!BkJy~NY# zy2qqtO+mI_{;@u4A_hel?a%-*lY9;!vpyFUnq~ssZvFJc&&i|U&Vp$fqug47!o|!L z&7Z3(yw9#mJUjzJ%c`Y>gQgO0KA33W>U8l^P>P4 zADrW^QKNJd zg9FDcbJ$PpgmWZc*{?ZXBcRP{HAaR(9>2@DsI6Y$V60ZDvm$Hj#+4_$>zPq272Q*e zad9q5>4Y41VWR{RytFh_p8?;%y&qCT^9AdG$Sq6bpua18sH}VpWP@cqAH7Wi1IBRi z$#9!+K>(DYIk1kX0qHO?0USuDWfGx%7rHry9m-LW|3g4`XOR?LSLhE-ZlJQ<-@lTg zKBWr5;UoqgZ(yD^IfR!wA}JoQk3QmraJazDlvSdqx__w9w5;}3=s&5ts@MT8B;M%< zVy_E$U0`@IMt7B7V;PwR!e)cxXR}>-fq*fLt$EJMLOrg zt(%KAka^hQq`;M-j6! z(vq)k$g22O*rl7_>1X;&A~hKSEi1r3PeYqk*4oICO67bBXVeLGXyw=Z@tGH#9wsP= z2p9UDDU=g;P7;%X-G}5izbt-Xu~wyRksg$NvgHs+50Kts#~`-OlT-iz5gQ3Bw#k7P z@*b>l^|O+6J%sGXvnZ?&E0#(D^=EHl^!M4Jn{^#-_Tk7we7|D}I5Hx9q}~@fi-T(h zdD583NiYs^1&!~mlcDv2ZoULjbGBWboYFiOqAV?v<4M=z)H7Q|Uap)P5$#;|f-K39 zX4riqd0$=Rl-rFb{SlL&=EO&oS3)ir!^2ue!}28N%Z)8d(XJ>dF^``V5#E>d)zhWf z0O#%+EVQv8pz)DXntVGrfc_$rD~1T22A)2{00suL0Bg=cZ#{X0P{NTI{&O{9mwqD) zD|dXY2(`w|T=UJvQ{T@-uOQ~StDJ0A_#LhViQ@rH;K04&*}70xdIs=-`89|SlL{_F zo*bM~d_Nx>9~c||B$nEMeRKv;IK3gy=oU3YITPuQi;Tu<-?+$p5RTz_-wp`X~EI%W2*6yQ3)u`TX;#gfBv}&*y zh`F#Uu68+n_cO8Iw@+Q|g=60^(%d{$u%7!t3oapcHt0@!9Jn^dSA)*F(3(QN>$~fJuURX;YW5)aROP7CbtJ_&x zdfp&$`!}rm<|9qDf=UOBe9>zAK|2Z6@?GbBGoJ1BmT05C+gy7HrDC)vf&=a;U$DA? zKLp|zy!}TCn6RapO!^DHg@^HrS10j`#U%tggufVHrxbX7vJ-RU&q;Gg`D|E1J6xXb z%d~S1`$^bAzRV7S=jOHTRBU&eDuR?A9oO|%EgV{UteXFQzD>>zlgFiaa4Oy=ag>=? zR2)+5$uESOly&%bA0TzFn7hB7q>xTpCm z*CJ5z$y@Izj-yxgAM=KVGpwnC*GDwC6KSxh0s*(}3VKp`%CWS7LfM!Eab)AMT&2PW zo$)?hs0BH3&`WN2UqRDXgq`e!lb8?x&Lt50=4h#otKA7b_HhG=5 zEi~`MRW=u1mhABsclgUThdPr!;{Px2E;lLsiu#Mv{`UvP zI;a9j5lv;Dt}u`fJ8>S6&jV_KLiH{u4FvMuK;AsMtLu5^=j07iX^lyqBNCX=3v_HH z6=xuC7qsda7V!Pynd@&%GU6a`@1eMkWu0@q_XBWz1R#G#XJq}KUTi`^T76<8BuXP{ z=TV@0%H@CPh>6|lyc+`Vb~v~&5H`83H~YR{?eHXhcL&oO@NKl6$BFJXzoQIoYYPK0 zU-qNw0Ch^o+|TN0it*UW0rT|0>zEyhJlR|dtVo^w-CDbeD$BZ^w$2UoP)crH3pOuj ze2tczxc2e4|I{Yu$Z(}uzrHRDog0E#hUbg;`$yIg@7|M;mbs6?qWyZOMVx#aLd(;A zDgFfN-djJ3k#N((n+Wi6^bE_WhWCwg$3LjxF0A=TUlzva7Of^Y;0%J%0(Zcm<4D_3 zk*`97&f^dq$%Z9f-8i{3baDTua}({`b3R*ep^4RjUd*S)zjm-$V)(YM{4S$?TBr$^ z5HnfEYc!zPd7^bD{O53LLcc#j*IyD@61)}n$$Cc7jM8oDApGVeF+m)waS_li82ku?m!JC@vi{3ay!p{x`)!{1O! zggxaFluH<+b~*E`R-)jc3g*Pt{fh3~q03`J`I_d_{j(!_$V;I1JHu;@(=sSt3n1|( zu+$;n>?76TF$DzFGt}@303OTbBEG4(oq9>J91GE1n&lF}Ra=)%fsdz{L`_>#H8d8m z^NMF3`ww`F{!pX!th$tv^F~9)dYCrR${=dM7x;c z`z`WX@_jkSssLM9r7~#`>o~A1?EU9nFcwye2(9214eN)L@7!%jrlF?sNxK?ZtjE!b zFJR}g_SpkbF>UGMvnubKz2z;H-S~K|0a^OjSKbiWQ@T9jb|jeZk~QKlQw)ur}GDl89{`hK;6 zGnr;1!jtvKT^^K>b7vinR&Iuvn48ioPfhi?b{=UWle^k4eNgQ$@z)n@vF$zZ*kgyA z+O1}?J?@N0k-B@ze*V9mt*bGS!Ub)oEiC&w){Q}4YXRo5Us>pjBlCL8eljohkVvhX6m)RAlGq z!AtIEOQ4iBXrjKzb8{;s5t0#kgX8sJF2rDz`C2N20v#ylxrH%Vy}%maYcELl>Ld+^r?l zp~BEI+Pi=A;3OHpeb=G*2!|IR4)YOcJM)5A##hV>8OZ{1{w&YppYbhglUrrQ;}>t@ z(Z5Rd-$LiF`p~O21DFR2hE`m@$!Aff>9#uq5^BznlfW+fz7({#mBCt34<+Jn;I;&= z8ZM}ss4n6}L+NNyrv3uN!qfYChbBGHB3{WS6m@sA^uE_;_3@);tKXBFC)bB_G|zWG z(_5b9zHB?&gT7qIxb4=llq(wKo0u7Qt$41#f3shqsP~;{t*E0w`e%V_PXe|d-B5gV zyTz2$-gTUi`W5d#5RP)k~(bGb2ICUVY1lvoZ2%0b9X6 zYafzni~hZ_p!=%qSbBSBQz~MZ%htwsR(=_eI3KGa1Ezp2_dN%Np%i=|Q(l~Wb9H&l zH2(P3`h#Kl3=;TrXO(|}w>@rEbgz$QX_b?eUt-j%qyZBwDHOGn6RL%GS31=&EG=62 z>@winus?=MU9gB_l;E9*sjAP!98HC8o`yDO2Y5KM(U%r5VGQCv6|6}l;sXuoEi2eh zh01yh<3MP+zW`;AXY3W$o8#X-xyy(lHhs%$O3U>Hf%3VbI_qR%llqZ)>bbtKu4JhW zI?^H4CL*gu^}iIB%!Ily^0)bm8)`PHay~=+%!mOBb|mCDX(It->R>7#>8^ zI`jE(oM=GOr1{6wme@4HggrzO;Nw;N2KTc6doBrO_J@7IE6G~Q6+MWpiGv9*lLKK7 zf^SM(_QDJTq!O8iUwo3{WTJQK6}uyn`vdzo^uih;bZZhe+2Hbt7y74XRW~eq(?j>G z$56r6R$O#ZK`V^~1}+UAIuYZxA#bHAlpVNB?G>vQ>l3S%*1xlrh)4_Uc9nh zu>n#_M7Qz8nd(^_Z@1AcIv*Vn^Ypt?=wL7p8;}a2J8d|Hm#Uzb`dh=c%){{DHNg~& zaDN7Aj$Ub)X3UoVc7~Qdh$%UAy_kQQkZ)54S{|;DB(^U^upYiz{&*PdJATnv-bGU zSZ~%#`cV0w@2k!rcXZ)73lB(#xcwOCvQ0Hl$$IMve-Lps#Y;G6%>Yx#2F}H6FnM^( zPyb!JE(l{y{X5pul`S{EUfa?7(;hbcc;>&xdlBcoKFvlXHL^2D#Q0tFG@d>R3ON<( zN_IBZlzFFVQfmEh)4kky*x}FLyfuml3Da@?c%=^$T*Xr5Muu5zPsCPu8lIbh>@UGQ zHspbM;chiZ_dkvhpZ;pjH3zV$0o@(}0_B7G#|^CwjCTx1N8Qu^x|@Jc#wSC!Q_VE@ zQG{t>SV{-~#RVwY{jx@En2LU>E6Hr#w^2McWjFL@d!j=*y#oNC_^y;HpJ zCro`tSc5shI0M7D?^6bPA+%qIB|xLifiUobH{mhz>=8o5Q!oQ?Z@r7AX2r*31Pb+D zDnxz`s~j6HJE#0q<}36X>Bmbk4vjG086o;7s!9`MRd&1}4+H21%MCZ!-%^Ug8_SbU zA5Yv_aY?pC@+TxKGlH2|^yyqt=F^Vox2s1tjgOvzoA#R zjZiBzDA4>K)7ukz{o0MErT#R8%AyE*!u%RRRabL8(2S|kNm|bSu^P^86C0!ou1&J9 z_oSEBnGmY9Y6wm)%gTyjCyt5?2V!KwB?cUl&ir%}?>Qt$hZuk+alX|G9-~RkTZ$%6 z27fXj-6{L{_nWumI11Toy6x-bo>lo(4*TN0=^qXb5WM}Zf1X9*|JDuvuO|8bU;ZiI m|LD~Jipl=p%jNZmKR|EBB=Rfuu0a6dqx}GSzw(|<v=uz>%MMbdOGSS7&sXyC@4;7+_|MsK|u|?rKX@e z27H5Yiv$DTC_VJmZ&DQXoLdAwT(>jPu-De65C-1UQBa0D{rUq+;1ehCML_{d2mSpC zHAOnrfA5cexqiA$h=Kx4p>a#a(1&tmk~T;{9lEgbzP22S-*xXx(Wx1rnbi2;ep3$a zbIjDboz7;(Vd~*0ZB~t$$5)=y3+};r&$7KZnSOIv;JSs5U$RgwVJ=&( zvQF{gH?5tn12j)wOFjAL8@b#^Udvue6l9~nl|1bYG)7ocs#B+ctFcN=%EMgE)($JLRz{?Lbfo zk=G_!{KygwTR*V9B9(J7&;DY@Vx*5i%JFq}p*t5Gr8N$hLeFcAKkG&dSCb^R>vc>2UtC8>r z@{0=ul-fORJx$IYd!y?y!)Xx=IqCy%KYldKgk8__I`Jk1!5n3q%5~RH=0s#j>N!pw zMM7769T#dh*pDf8!6FOpo3(oP@!jqw`MZT_^3*JJi4;_`LEJ1g!QeRR>@9?)n<fK_nHU8-v_xC~Y6$M{#mikNogu-`}`F~8r0(yH( zlIt}h->|~3U;l=ll)}idtLCDGSAtLgSo?1Gu&Q}_u)13%<|diyY4%;?=;Z7)uJzEezg{I2DLCYc`F;2Jv^`HoNL+Q&YU0&`|@ zz!PGFE^5CUdz`T1Q$1B@Ue_z^aofP6Xq0eC9Uxht<2~Fz%blq0?^x%-TC?Jl_3&?H zQ=kVQQuj28@`IPlAM}gJeMDDgqxbH{oT&7AS^fCOQ;oKDjKe zkma#+z7U3Za)0kli-DWy@c-?fj8Wd_mwkx?5%n+IdHlYTNi-JA!j{5)b~ssnz0u`V<6nI=YznfY0l0VpG+{~zp4#yKMXkIqFi*) zF_MCG{$AVX!oK~YCne^3$+Zdc<0~N1RXNdx^#o@2Fpn5@NsUbXCgiFlRYI1F!Ld-Y6I3&OpMsc_06tkp%W92E45Foe@= zHg}Ms1qX&9&<+-`^-Jm&8V0Efo%_KQpcuBqF6>7uG`$@!YEv3|}!Y=_f=j}_9+R4K+WS}Pman!TE)-RV)E|uCQ5oK|QT?zFhbR7>X${JJLRc`XoOVX8*@vRC4JeM(o z@j`YzXZ$S+I0Lod7JhET%X}=Ed{|JQ5wE7~<)gbKj(#cYnW?VcGGyGx`~FubAHAHW zzx6Y01>D(xsE)q{^TB2ho;D63&84K$ke)+PlD&@rKU9cbxdr$^Pzc;`RZjc?|5a0X z`@tJ1+IK$Ae*pEP#FSUz@$hJ;0wCb23)z;LcJ+@A)-|9_1NdQl7Lf;inuzn`L3@Vu zrcjpAL%_Hc@u4@slPh_aSilYZSI;-B4@!kofDG6^Z$mnZC%;HSwXrWxyYfDe5b{W3 zBKY<5t4=TF3@gU}+j(S*vuFs+K59sPgZ_rCbC_-*iuiY1XHf=bt!AV63n<}&C;6fs z-%)kD4c|)dM+u?4raNRFkFp$M*}M1GPX^?omU$*`h)7FbFRB;x`=<7{fWb9@To^C& zv(fZYtd%0XfuZb)#I@@A)Ch;CsGwh#cdP363hdN>NdbaVK4;LOq0Sc9Tg1LaqwnOuYJ7BE)+ZNde7sC&!-_%4Lv^a!g zf-nlW@;gPJ`@NdubI!rD&+s)kE`96m(NzT&&ka$))z&P0IuV8%y^0@jnLAF_E+Bs& zek`c)vHKdK{nOva2T8&8uE%mOU-w^!uZoiKLiopiMCp+Ush*#K@2p)`(_(e8$I*& ztEjy%a#rR;vOZ4Fu+w3W?`u06JcKy{7W}>P!7T8l%(C2~S$^i#$0STtAdtrY_W~Ec3Qi;1B|W{e<{&;%8?!(X$g7Va3(K;&_)5lHMOnw{i`n1U%IB=%M63 zt{(Z_#M7l@lW6GX`rvvH0^?AA>JLa#fVzeFAS|P-mb(i$*~mHq$*N}G`#}R&Q$jLc zbxUk|2LfHS%=G`U zW_T_5I&1qbqHxp`pS`YJH$5-{GiE2!YbcRKlF~}R&7vEf47B2w|F0N8C&`cefRJ}$&}-gUiEri`j>1hiJ!n< zT<#Gtt94c+qzG(d?m)O!#lISg67@^ia8cy|oe-KjVbAGCJ9eJhpITTBSLfw;w4a*5oJXj#_jVij8J zcIvm%{P1IBpZ=eNtv+AU)DukqD%(&RbmPi;WKM>0?as7pfCTpRuSX$iF}oPwxs#vG zC?O>V2!)%iC)eo=-QCcxE42l}vgA@kipLrwvnEWr6k>yPAaz~%r!4gy>r9tsxRv4= zX!B{Z`}B!@Hz*a<57Wbr4!=8o$}HZU8gzN;gfD1JLq4QI0Psi7s*IPVOiVI42c_Wg z!_>t_wp&xN>_*I8C|c{2!nHqy11N8wT+H<%f>jsrUSwQ$8z3BZ% zlLeXDrFNIq`Sd{4GI05G&+OlWW_uivn4V61k1dzs0(um&tXbIvy|H~e7ao9-8Cc;7 z|IbN-H~Geg1DQH_ts-QeRAW+vfp7ps<^u(#&J+_p_xtDI z>a9^TNH6=Ql}~Rq*}wnOVU#Uii96{guZe9Q=wr$2rWoP(cRo87+zy$hKmFZFfYbQL zXk*lj>W^243*Sz^{#;_I79zkqydUgzsi5;&-2v|(A}4h*+DLw_bAjBwa8@$;yQyNa zLDqnlnD(-1u5SJ_XG6Odra*x-9qfpu~D?6xj7j=;C*9Y z10x%_{j%5O&8jt~N0SX#TWKO@R)j&PLa9L)8}7*Ig$DO%=>yp{;x?U3o=Wb4{@_rz z4IHe&y)DvkOPf1QcV~)6*Xy&1SUV+Bt>7@A}dbsfo23r69H6b^6*XuMD*4sDwkJl3xs6Jh=g;KTV-tXn3_vlZO$ZK z8weL}H&L9QB@FR7KGO0u1b1)4yaZc>8q!^&NRt(e|CsTc1i?Rm@2?5pd9#S5dAWTX zPUUPU#&B*l<0XEzYtn*ZV4He7foaU)s|fGGMhd!TZNUaG%U3I`-YkTJ_(^^qPHXdYam6p=AMlOKiF**^ zG0X?k>X5w`G>>Svye!}Q%ojGhkGbz)cDwkew9;8v- z02o1c)mK5hGkL#HR>`L^L1tTN3!h8nr0wmn5?`N!GQ+lD^U@Hs zNw;sE`Nc}%V1_nbI(@KyQ&ipi6-MFGKU zG4wyRook$W(NF_O&g{}^)y&Dy)f5?o_c7&-8Vs@W>UExgH(;||z5b1I`8Q<+cNP2P z+FfODdq6=jGc0Im90?}BLF|by6zbSlsz;jh53o$WOxw-pk*mTR#4Cf!W@IHgpmHR|}>k7}GqIVYl79J>F z20?O;l0I-wR7&ITTNsS2Hd|&s{9{)rmHw*+#t`l9_wISv8D((fHWm1998uJ~17>E4A3# z*ray!aBR$lsap-yS~@a4Y5?xXD)6onKJ7yS_MVfk*O0ZqIuQS0vnQkXmY}(iSd+$@g`|Oq_UvgR7$O2pn>EXuOf> zr${^T`&j4xkiko^HuWny=dWFA!Yr3O#l}6oEbqI_sY0MTi;PyjS}UnlhoQbAqn4^N z^y)V93s%|V#4~fLqr5+zNGG5l#xDOZXL*;Shal|HvW(|O_Y3OJu4i^+w&Yb;gNyyr zZHCtJVaioMtjN;|y-Shr`7oK;xZT{7*B8wak z^So2HhS|k18)1fI9i(o@_v{Z)%jGU*kKFf8BC@1_MtRkSlU1-Nomj(eakp)>A{o4Kwq-| z>Bw74UdjvC{}RjqKW~Hbxpc^m zBOVmWE~z@wZp6*hsZUzAn6=&j8J#Q%&d+-s6nA0j@*Xa!{+vh8i8Bhi^R0$Jl-wddUJDc;RY=Lw>!;RG9e#9MM37%pYdE z+Z!B8+B3q{?e_cov9%=|z7C%y$vi~t^BrK`_RG@T*k^@EdKhXigqOB0?#5SF!w_ zvIyVgI;S7{zA}C&O&PgMJEGiI>^*!G)P8^hwVqx4S8YIE>C!eLcDL#F=wjtZR^(Cs zMJoZt%F~%B6IoxI4D2Rvn2=HLJO1ru;u#TW++PL&v?Fyvn+%PVq`n44UB!a_4Aq^% z9SyuuAnSUJa&zzgdIF@5A60VX#pdQs%<9Km$5*BK{BB~*l z=9NsgR_k*+AaTsRQmmAWcbSXj?GE#G?i}RWVfiiWs*DnbTm!<5di(je2M)O0@k^VD zeNKP)@8_b1g(;;WYVere&4kbQ@L zTb1|stZ$J8tZ~`2gF%O3;0*1zMIno6%Hv+`e#+jRy*u?9ED#VhrbCRqQ!_r7bjc-`XROTQ57Yv143x!}rrQERFrDAjU6Anj%#6xk(Wk=KKc zhf?2VxMmn+Ba#BIpzG1bqY(R#QFfH5Y@3aiZM>KT=i#Q=eWmMu3vj!kh4gUG76sqI0@aaxTjR9w z?sDxvJ_M()QNP?>HAJTFWpJ)y4ZH)yhktOlOY7DjTJf6JISph-xbdsh9_32-ng8r+ z2>8+Vv?!RL`UViN=aD_Y@AKdKFKi|hEeB4HdGKhjz`hKWuho2bb89-!d;dFt`4_T^ z4~A!z{)G>?Augz%&5(O^BVwGiS0|jp={fXg|k(C7@ z`eRio2~a;_qa#|;Ku!56hF;*5*3I<6eVZjM;e6@+n}nW`52Z`*Y+3_z(m-sa8={OWsX)hxRK082kYKruZ;r`hgTBTNBZ>Z!pPlJkkF=X)n3Aej&>R zkNGfWMb;%GK#222a0=8SQ-``PbSMKohDh@os9?pptiPM+8&u_eN5TiF}ZD zC|+$?{7wCC^tX|NjX7l6Xd>?6!^e+zMvJ@hdhE2hAaYxDv8Sd$U=1GOaJo}OTJ;X? z6b-x6f{-OuV~eM2=w8e1?F0jWQd+##ra@jWvYM6k-U-Wdd3!jl{D3SgL2Z_d`P&qh zVrV;?uMHb}x00Hn#;U8Arcy_2%W017f z-N2pL^H)`ZV(dZmG47Att>m-XR!x;P;#K5`}AzmVB%y^mwm7iH-ow%b~D3} zSeqrB2_gNL!YrTb!S~6hrW%H|o#&_VxsL@cNGI+)G5&D8;)m^fjjNp_jgWB%f-~`f z9%d+wtUMDXl!;g=dUST?WFjAUMiTzwIV-5ShaEW~E^b%7iSyq+;4O$$dU8(@H77n+ z4(_&mTJc)&-NnzJ|M{8ab3EAD_Ri|4Pci3sdDesE&jjCDX*hHCu(`*+UlCFOB>_bD zRfvABaD1UWA;elUdWn6X_LzuzC6_9W0!*+j+aX1`r^)M0UY{qhAoOg?Tv z!|iMI{zMZu$Ix~80ydy(I9kFFzRi~rP}kqZkvH2AeVefJ8lI*y`PenVG%dk|-UUc@ z`MciU`TE>=-)xT4(bHEeT*AleH}H3{rt%rfMME97m$nigY;_vfE)y8HWiGywh5MHp z*4Qrz;8N}mLD7=f7a&iLSJFS8x>t8*^_&EfmDJxil%_=9ZO$b|J+0;+81o7Z+|$Bs z^6%gd*al3sJ;all*S~%L%n1f^4~KpP9v}wtL?VI>g*%1jA&YH zhwXs;6GfAFWKiE{1*=)o-5j-T5h`*40pXgr8J~wBhPP<#nypz7znkVbQ$ll78z+1;T^Fw%da8G_t(oP^R(X&+%M_Mjtk zB2|kE8F2#?5_E!rx)zjmLHcNE!!s8}XNplv6K~3o@tXg%fGT!*i(S_`svf~3j*8Dl zOnGOy4(?oeOMG#mG#ER#C49@FHTcA@J?*u~po15D-Xmb&EBF~dC?P;md9Ub3K9%L zbZTJ$1nSVX>^Bem{^|Bx2+Ct9CWV&gy~~+`1jG93ROAwM+)6I8$T-C$aQ z>FHr76SBaC0?72=#DtI2*>3mJN)qDnU8A4t4ZyHx9n%oOapu*r>?*})#%nsS!zvra zfDNxRI$vqOugoD8+EP0Q20_`nk`2AS0sx7y$yz!XHyEA*2|jUIpR~mbo(JmfRiNGu zy|2xzK4=#z*785-znE-B9_gjOytLZ{y5n?#NBS)nx}|6 z#2ADg%*jSY%qWP%Yw72-g^dIu{r+1|HF9g7o=9@?r(~;@K1?kOjRPtruNHux0fORA zV&d2X7~Ud3wGcUFWhIX@3#?c&Dbd2c8Y{fp##yRuLQACQ-d+x}vZDLJb*OfuW#w0^ z37o+&v&PZ~hupPdxf6AFWpo0<8;y|OhCuaK{SPd;g-49fU16sbBQ~irRrqpfu>r1c!w{%{gwFpt_ zZ{cG8o+4u`E>O8;4?E}pwAJR4(j9+s4hf=g{dqXBh%5G+@7_n{wbCAXikW}p z-9}`~p=O5>o2{&c1hc>ZKh&Wj>{U9J5W@!?;{Xc)+t9Z)Q$Q`j_K)wpd9#o+vrKzj z1})&NzJl2f8Yi!`)Qo#BHwN`XJSZEew*;ju z{-*)^|H!b~!H3rP4y7Ho_^q96&8?~rxoyH(asAZ&dn8eqAqWPQ=2d|O^Ei4j{tkzq zpt+u)*m{=ees9_ZW5!dEi6Chzg)}2H&tYLboxZa7tr@G6d!T^pD~uF^iL$xpL}O%g zu_vz>&5xv(9b>)PXil}tij<^>>$hTo{JHP4`R*O^Z2me=OuLR_?<{BjaPNmqimb~JcCT0I;A}vrUl-IWZxTL%BbYrfD#)@> zu1+)FF+wNr{BD`);XtOOH+!S&l-#G7my$tC^XQG-nw-{_!ANyj@v$9l${k5Xo(CSw zA{b9nNDb=Ol4uk@%R*!B)_DsX&AWE`2h$~{7pZuKPA0wpm)bx&0A_a$s==6cRBUm@ zkrS}DhZ;$_X-#u3*b48lw|Oob43lFu3v01KGe4@_!(ms(vLPF~Pr}Kur%dU7J8bUE z^*uKDNokpD(Znz?Klza!hP4E@_{JF@11ky-E{eLn+qgaMA_nXAEbilur@$PxDUGVs zwI>@ct>&6kPrmdIreCkL4(9G-@Xj%zetfhhsiQSP{MT!XxjA6#?|kVF`M)Q=N9`I8 zDS2y5A0rbGq*7a?^Wujr)W%37OyKUi)el~(?mwr2*0n)5`0uo^Zg%nQ>#MvBN_uuT z=MB4f2fM1MMS$>_wAqQZ@lQB^x`Qp2n;sVw?w^A#g@qn$Cq$7SAH41CPAWxqCDv-x zb%)3Kp(U_jkU528da&t_qEkdw*;xSel4>(UdX0=f5OrIEL&!*^A-M67Mzw(L77Pi&;cM*adcr%mP-PejAzG-AhqQscc;U=rUyM(JaQR zOZF87I|b(q`2H8J=EDZ2XGRYj%5~B)9mw`%Dbf=6_~1WllNl-Z=|z(iQC`ZUsVu~OIxDq+V$h18P$*uu2nfo z_Yp_*%0=gA)@gxEU*XQ-IxZxFPDtO!NmYj{a{eS<$l+>C6rrGt=iK}Mj7M=~yr5u{ zA7ZD7-(>z74{hl=o`*6=ky{2EQX6316LMrdX@}WTg7^A&2Ix|Tsn|Mh!H7PLAO%s1@Mrfo+o9mbR1%2%CsZix}dhk+oq8WxtwTZY7y+rk+*&{??>p*~uX7|s)g z<}CZ2!}Z^a>$jqky$R2TBNnqdfNJJySulZ)+?Qtu2zLr^0|U}(g?T(S+3>!@5mF?W zf5|59I8@$993wxT;$JciEizEl99a;;(jLm+4hhwr@SDF}&2R14D>Kq{5s}8hO~(!O8FAUQRj5Ch%1}56L|V7( zmhk}a3+?`l7^=}=RNFm)hmR@G*3JgaJeHfo)$r%ql*nF+17`g z@QYp?@JFp9VzN*L>HP`gg^|N$D02^wueE8Ct6X8cNQFn#4Wr5h^fcE)hT8(`xHiQA z#L3;zfIl;q@VS$B-W*?Iq$ClFf?B??T%ACfxe~Wrg}K)mxfI^Hq}EP}juiK#In8+< zW9>=~!X)1{Fo?G*h(0AEevQu{4J6o?--{Vo)(1657FxJ%ddZ8CC!YTHyh+Yl=A zokuNI3Nkm+s}2@NgbN4wbh*l1AT=wmm&N)6Vkt1x8<^Ua=eb*Rb{H)$E(5g(^Pn44 z={?NWVQa}?jN7Axq}r6oPS`AIKH!nX&qmE1W#;S&OJlxG2@*ps4M7?vL7%wn^A6cD z!$pqoF}*Q_ij3m70OpvEatvMz#EJddLpWgvE}7M;woE|2c@@~B(z?>@{AA>QoW?$B zPzi;NjHz#nv=hI+*c6#YTG~i1EE=_e0s(Wad~5iTE!VvuMv6B+hT-Is$;xi1K{3XF z^=^mSg%zl7fJ_Xh)GR#aHNrEWW?46%h;8jedYZ`-4FRG}4wWdGfGZq6`;Fj~)X&BF zY`8d<+a}+PMFiRe1-gLibT<3G$&g+KeN;s6(7gF!z4r3(r<(?`VPh-G#2YJ)!`PyD z`gm-CR1aU(tR_6_yvJirDMmrPH>FkT(tN0=U2Wx@5MoI(7V07(R$JDN)W;# zO`YL~-Kg5AD$AVc!>BtqmCN}s<70Y|E1yTERZxEiX?#JOUV_zheBLw*BO^nry`Y&3 zLA8QU9I-laJluIaqt}K%XhenF7uB-7(OX5lZp-C z4aa;umlkW#&4*xZXsIDV)U&!5n>Ora1@xleb=L>`70tSV`f>e?_o`y^YN%mtp+V(t zS0NF}o=w;A=uh1AWrFSn$Oc8gZLe(mAAewVR`OU}>E{TIVEJ|v%a(1ZtyGWfr05y8 zME8N7%;pYlMJI0hCzR=tO!t$D&Je#{n-!GKm)HWZMfqS5il|!g%j~?y@ZkN5Y5H7| z(rqin$YX^rr+3tge1(wn!cZ@jx;Z8&o~YuTR_Ch_xJF`4Nz}QL->d$I|z?C!?2=Ro(z_adZ%6ugl9@b0D za*vl8*KbphnlT?0ZE`%tA9yaW!bT6Y-r6k69u`*=vTk{V3h6mqet)6&ozmA&yyy?$SB}t1+;zVJGBhGLa0taC3>5>GXw} zjg!jr4xhue%*dbX3*XTH!j7YtbV*7Mg`w$k%9(Isj`CwWjX{#b2@)tJ2DV3(`CWrh z16-rj4#s_M8O#@r-5Z9R>D4UYTOB$M^pRSdAIZcYTVxLn0^BCJOw~(y#t61GlKSa_ z=XL|?@%=>zNns}xOF*~2yYVjsbHQt46ofeV$0v8P)YP|AV&lXXt1Q-%D9X1*K=?Jf z84-|Ki&sUOKS3iu(0$p)*e~<(!x(&a>g~irV*nQhm)|D)?C9(^;h2p&R@|j{Yc@~h zr0smIPFBu@x!5gHWt>NJi?`J+iAT!{?#YLIy*Km;wk(b)9_ohW`r}{R{A+w*EF+S@ zUwUhe+d_VG3uL_^-L&QA_`pA79pEj7w$ZySCe`95OD|MfN+jbI_r~X~ zJs-3jvQpi-lJ0l^)rn2$fGKJ(yG23#Iuus!|pSL z658f&h_aMZ%!3pr(2CReGpK*c(?)SyTchnsj4!Q8FFr~k%OSJ(TA3!Ew8nVPa$FQ+ zF;q~x3Wab!fz}w`1u9n7v**SRfcB|Lk}-EvX1X0F4)Vp70>9g-ISI4aPZT!@&% zl#zoSal^1GF$C%JlVx`!{4K2P>_?q$g`)%{9MTF)Paq(lz=XqHu*C^=P;FktY zpp+#|n_`Js`Z8-%j^@|j zsr;V96L8I6ha08qI)^8{&^TE|qfa*WC2QK6S8f`y9OWHLRL7oDlCmUnFg9s$u)P+c zwRBV5BJD5@nBB8VF|C?&D)X*iG7B`E3MT6bWIq7P;{FNtzr)->m!gE)HbT%wnxmWs z`cAyoc16Tyicg!B|4uNd7vn zz$-@%{aB~lhE$@GYTo&FI9G5(CuCc8Sta!=;UP?eRH6)>I{rW6uF|+e9Ny7hTP`(= z7UCdwoHc3rs`6goesrP=K9@yxX3I-fBuq84&Pu^gafX|LW$1cSvGqV8>;{l-ab-`_ z5GcaT2?ue^=3Bl=f_O1888*0BJ@UoSda5Ao#>1+t@`O;5oC4_a*?)Ov4z7O~Rar4- zS)J2bA17`y9slE1VBB`WK4B*)8MNcuuwO{ksW8X;l*El!B$?B*LXPWyx@@F!if(tL zSmji{MOqhcLfvhHxrDo8FM7%HVjElOlLTe&9Sz}l$4b1&6DU+q^HZIWF6WoE@8|zw zD+Q$$T+i*ekWDq8uH>0`iKo$mVH^TpeF5)T3{33$?NBDSI#$~&N;}(V!9fZXpeHQ; zHB)$68-NLC&hh6e|2~{=->*UqWn1%`f9Wx<`GM#EY&S_uZxj#vrW*EgQbn-Yv#kjLK14F?ZrLC z1*4m>BX!V}EdHqLpMNY&We`T<`PkUAQrh^ovBK*|OW$LtU^prCs)YC%-p5 zbDGex-%)-ldc?^|Q4;^-*#O42ZA>m`sUItyvZkxVPbHo+u#qvb@3yz>{& z4HyRB=Rwqb)^U76`@xZsS*L_3ROC5ni9hk`wm?O_oV;Frux*OSW?GS0O~Kh!WT|#5 z9V9j!Bi|hDm)2~LGxbj9@1K`FJe~KH)cp{aA9dN=a08x^Jh|S#LBupTC0*SBJRmJ09 zgS7}9%g=XmmLbD2@P$YOo2hmZattBc4`+cN!q#KYJW%tlD3;&-Qo0O*{fzXld#3f1ImVY=s`RzSs_(A? zdV=N)g`VmPgUl?x_2H2b%9VdG>L?e?<8%#;9n_c-cTYdAs?nY+l2^HiB;+CAUM^D1 zFHR9qAcDwh&o8g>g#QO6j+Fa_0Rr#!Y&JcD=#^c)bx(a~zckYrLZy)U6r1GF9N!z3 zS_LiH5s7jgw^&kPfQQL}sMyyd6CsgQnC|R_R4i}Q&T5)=_{JR z)&V#rV2fRgSPq@oO3HJ^F36M9#QlSBuaY4OFYxFG~+7`X*vtNqR>;a zRYqlx$?U}qZdL1h_98AA8^QV19E>J^P!vtzm>XmFfztG2Ys~w@PSrQnD07xr(z3z< zO%F5>hr9c3u&LL zJ~vMG(tJ`ceQO~qB7083{~IK=wp=STB2%`KUCI++!JG_FXu&5+MJ5bOl^HI}dJ3j# z`uX|s=ZJG1fJ2sxeamfe{zGyw(;gf#upRn$@&Zus%jxLSj}a$>Wf#*1mLw`83WKj|6r7g` zUDFghEFsKrZzn@z9%wU;>3fE#+2-*#&;%`g(eW&ti)s{)lfd*_TcbNnVs2S~lCNbG@1>@pl5)!sGVZ=5=YFCT2EzdK^&W;T$AGk@~saFRUX zRG7iZIA64KY@K(9qy zXj$dhanZ_+;nsnEQOp~YUK$En^~Sv$<&c3*5~?Tji8I?33Zl;%65H_%|m>FRW1 zMuhy8a9%iU*Dc}NW3Imt4^C&Iw(YuP)0(bbr#Z3|&Q=Ith;QOy4PNM(`FS$mz^mXw zvppvHLHMchQM;M^D}eEYsdPPd=9oK^JDgS7i^BaCV(um>=Q+7K`-b;gJ}o$WqyNlT zBf1!;?>K0{AvTQzLy@ogPd7(CN>ZMqqF1bhZL}bVO{a+hUCb|$^@(SjxN;Kr z`JN>x?a@7nStg7kN+-=0AJyBe>Bp_4u09%Q zMsP444OavfGUoU^6>$C=f0WdZfqhuVS^dS*BVjI`iATctSi=|UXMVoB5Ky+PWp49l z&v9^^k$Sl+^+!s6%urGc(B#5rb>X*`^;(`xD zky!?`rVl?d(_49R`66#g669bk`nq+RR-%0o&zvK&|%mWjLTkp2ns5HEj@NcN={@@0z1} zr8$`~$#mx2{8hhCgpM-&svNweo{r`9EkoaDj_!>2OFgfjGup5Xl`ol25_ZcfGYSpG z-!gW)?l$uhd*f+BFRQ7A{UeUFCHmVjP6`hnG6)K>6m&j_S@z?vkP$-4N)zon>?}8{ z_XpzNm_OwFq7|dacy!91V3Am|ns}%#5l`2msxSB~67)AODBv|Gqb0H;M1!xjkD9ei zsU#L8X0qhW5bav8>f6rMIk9+UEE0g=8RvHQ_?m$JRIx>DbN`r+f%f>R`lUrAm}yil z&klbc6Nwx~l@>okZB$6rukQN5#Qr3SDNyCD0|Lf zm(ASj?SqaL-%Tk#Kq(IJ2e?sUj79&aG;zzPyXu1&?H;TqD==8Rx)tBk;MO}Ryh*-F zyP_g0Rq0(o`!DwzQi5tZ`0%$4euTSu2S}L3mwt(8Ptlc^X>Y!C@zL2yb%o)lm|1%q z&=tvp9ZO`xVBTGp${p0ebR{2r*>1WWT#PXODU9_tDRCp|R(R*%8Qd?vV9w3-Kartl zN6F#RktlU3=HL{#Wd_heqT|b#+xX5dP4?B=B!oeGvc|Zi(NUk$s7bWU*+bvYU|`}1 zK|Hps0(zlo-D`fr&YabE(GKGJqML4mL0b1nPvRXl&A`5@vi}(im`P~)Ah~_;BsyZMJ0}1LTQ)VPJEe{`!mW&|H%k;`CPNPi?zu^RZG!Jjt~> z&alqX%4x;4s%R-W_ZiiB=;^ybMNRj|A>;q?kindw2t~W&oUxZ>WtbbJN+Old<|mq{ z`DkI1@81;aylSLzq{nm7vIicLeg>$y5asy%qU-pMu6lI*hLUh!gbkq~%$e{fJHM!sQ=qH~-Rq0k-Uy`R`f4oc#umx-oD9Iih{Llo% zZDojZG;{sNwq}MOFJ!~Tu(J#^tDb*H;4DHRWT*L+iKe=!ciMmJ2j(wXqJK3%ueP7H zXjv)}3NuyOYmu`0NWAyT?(TLw7hBRkYq*{?8&Gu<>6^orKW|f4k+1u2iJNl}7n+7f zssu3K*! zWi1$DK7F}3GynLW$i4Tr$<`lAV^*GV%g729%kHdod{K^M3p%m_166CGCW@I>tPG zs(q55&Dv++LigoVdZ2~X_2TEAXCj-A|6-FIjyJ@#C_1(LBM~dPSdo6qQ`$vvzR0~Dg|=H+bALBFJ7FV_`b4yTbXFm*mXw>B zZ@+(cygwTR2r>-1)-5=fxs#0<8iyVKn2=iM)p()OsTy&waNaMT+jLo*;3l5GT}WPC zgSc$2o(uU)Xn{do5k4D3j{IW}8NQBMJUSa@SJC=qFZ)%LteWK3?e_*ZEa283at9{E z31%2#tF_MdO~UK)Gl7cIH>~GURvrSQAI{&4<>{bjncU$d@liksP)5pHK>A02Om%?dl*JbYVg2hn& zz);jlZnRDXS9KfyipBJ!a<-}@za>~%z)iWohcib~s8#r~Tk}+)B4C!5b=J;1S{YH@ zFHBnJeV{fMr6BKp=e6Y)Pf>rNxJpyuB=(cUe>Go9$ZH`5R(EKnPg3Zv%`J8smvMm~ z?kdwECYFT?s%WRhUcBd_kok9Gkx$PUMB7@R6S^)Z&hf3&1T!m88qsvEhWS`iX1{1V zn)k9z-dg|XSDZw_vWBJZB^%#_n5Jv2=mn)y zk5c?$ubXd)A<@^+bD)N?WURc#JT=2VuJpG1%;BBdRToKY`Sz>#k8>u} ze!5Q9Xh_t!YZ^rT6A%P0q`65Dqu}^flV%>Zcrp9!sG4R(xcBB(AlQBiIBib;b=sV8 z)I6g9;AFU;@4_fmvzeJ?hS$6!)JjqAvimg6yl~P+3aK}JHr}&bhT-{c`R!1$bfm?sy zcSeJRj);5>H)CM7VAgpnWVOW%x^6`oeEhF7g20pXGdy&kTPuo$IMB#Ljhjj>5~b16 zi9YQB#Y*U^kexc}O{#5#xJ`g@Ow;uo-m#s^`Hr{Ydz|W6E37!;AkT=F6Gr z(!z+R7CMqG38nR&PNvJlm8@F}N;5yx{H?UKW=1OYJp)%S=j%1NHW@z@q8cw4)mRjj z-2!HpR`k!4-^zYiuLmxg3>3{Fxq$IgU<^STTjU+QiH4DOP>4k6|M-2$037A&VPoD} z2T86oX-~us36w@Q-Pm7c|H%hj6B4Amn!A|iU2k5UDKMkxV;qj?y0n==!1_JBoM}es`u(i-kt|zV*f?J4z;^CKh_(juuyr_|6ODFe*V zBMl-bA|TzRbcb|GH_|B&%$!C6FOurG(j+qHJ#c)j^Oi1iw=o++N4YOtIH90c;R=XsejpnZI^tcLH?M zIkPt%5!)pUn+l8mrSL3Tq{2i>)ky(k>>A`MKaYF-m87Ma=&%lM(M3WCbC-;Xb z&64KVvMM#7R?2b~p?53$f3k15DC!C=!@&Cr?khnB&!&RU>X6N&TS}qVHETRd4wS3w9KSq2 zwMvDm_-ca?!H>)($o_-H62`>ng&hq%hcUOC0J#Zmm2f*-`2O+SgK>7ZT^VsAKQ=gG zJ0tBKED2KQ{&?I=Ntkq|5Q!bJWr^Gp-iFP_?kbiQ~V>Dx$K0a zrbZMPwTb#2pyb<~At{P8W-+)?ae_Gt4K;HDy^1cvKmo%qo764H=3Gje$GhZ0>2^Y)AohWpirYM5t?l|}7uU5=C-GY$ z*|PV9Fx;E}0V{;rG-wnUJ=#F6HV@f{+p;Ef^(bQexR;#?Zmx>;mHNvHKm|Pv$-@a! zL~TzqCj!Si`N~Q?TaTB^b8uf!w4DDnkkOkG_J-gOd{rwUJ2{*y?)@sSbK|d4fzW-) zadP}jpTnu5v?WZ?!RlgUtgX@~Ua|8{K;g--=5TxOFDDx1=c*#GP7g6y6$!z3O zc?0I)f^t8bk<@tjeLL6me!fXpg^6M0f4nE{*RSZ+CB@VvwebvOA7Zc0_CxDaK;&6DMP^h=lkKxQ|D>h&(_;ARg{OcpJ1bIqP{qm z4*#o8X!Nv3Z@XeAzAf@FbzWST=y*D|Np8YuuuQHXr(PReet)v-N+@}BNv5Zm)8+z^ z96fzSvE&Uezvn{K?`>V!tgaXIwR=>A_py>Xo^L-+fj)cvk84)KGE-zXH3e)lCh?uB z_+9R>z?k$qOk6o}@1o+|hUBi4is!)@LnLF}o|iSZEf9;PVeQNYos(rt>731&pZ37v zZ$!y_-XxDS$Jzb|bZJ%PC8#m)|2y(CPO%}+VpFEo@HnnfQQ%IoM~-V#KT1d ziPExCT+(v)oWlujR>mRBc^QGI{F>wOdhSyAz;fX~J^e!T_7OEuT783oDSSef<_3xQ zWJ$zb26ZUSgW+~gdU0GdOWz+1r?*Ek54$Xtm0@xFp8B%^QAvj|14s=lOk1DvksG8& z$=$RXjFKX8A^O+4$7|8%ceHaF;odLtZN({MViTYw=Uu&gxxlIptAUIs@C@Mr@u4bO zcvhfi>7;9I9E)I14nD`05*5q>l2kEZfZRVsy->)*^RHtl*D`khZ`C-M0Pt_;k#^yy zI;Ut-11Eq_COYrX#=1thoms|AyTXK*J%OR;{l2s83g^_BTL6XITzNd^Y0hjbE(~vy z9S+G60@IV9upQD1=iu>cn5e(xD3Gx7!PE~8Gib*lz9aWOoj``pqML?NIJ0!`FpPI; zseAo2bHEYJ_%zE$Xh)IN8Ysx@ley@Vvc6PtbD9`Y^6rVymSjMDB(~jzqGC2`>*}qD zHU7E$FOh12UY*i~EGY$yA|^#%Z7hR8_-&R(TN1&zmtE;OynRY`0Wi6 zp#Gp-7T6i9w9U6z&n$~j)(Q1bvF8z-afO=V!4*}W16Bt|AO7J)Xdm#S#h9805;17m z@h_P&z*0??8TnmngMd~SK$+MP5s+ddc&Dk+)x}`j+rbWr=3T0GdfX#s>8(>B>Zmja zNeO6XMgGV&*?>p?M^yjhm1eYcLgNgSI8FUM-t%!nyM<$8TApL zy>d24y89DEdCY-uz-=kW(C#Tvy+bsd9c?9$r}5ERi$hQdsy8@urgWpHiuGTkC?WCY z26jg;^!`<X{^nx1+i-ij1%Dbz z$hv2FT#ob9BkN?~W>Go9=DGXe>#`MUvQr75r_LX<>r0DYb(dEmpO)J%Z}s(oXwlGg zGNI(snQ4bkTg?xH3hmlVt`+pA5oI*TSFY+h2?k6jGnT7~+pCYZ%phw?TV}P@!2vC- zcb$)*&)~xS(Z6e-u87QReOf__F;h!$L{IEJkK{#kfzyiZR_S?hIT;i^~$t?*bmnEMmYQG?gmJff(vu+;%vY&_UERY#ixqRZI6-q4NVlVvJ0vfHrnzIfMq^@<18jF@(&-FgX^wy19gXZm zCEDG)3bm{0dAFaKFa;)g98O`9GDR_kSFU)Hed<&Juo8*pxiUj-Z~wGHf&);St*J20 zRdQ#PCuKcev!^e3T8j_C15N%n+#$?XY+BNuGQS=cnuJ#pIaX@QE-s?Z;LYKNu(a4^F&8;mk0gKzUnJ#t($ddxa6DHn0LSHOK?yN1=K)<*4$!) zWRQ=aIR$3mVJ6edmv0`wo|LtCB+1DXQ^aXs(r9ya)$32KYaE#!e`YkWjkv&Rxs>|d zhP~I!?U#yKgC^*MZhLpGlXQ<9N5wsgaGUP*_(8)tSxm?8)TCz_odcN~;;+qJ<0{|9 zX+&|gNdisx{(5V3Ed7uigEnGfVY%xW_6|Fd*g4@<-9^Dhah9WfygdLKpt0VPvl>|0 z&5Ln1dU!CZ0_%DzGqA7qpe>_JCj*9pI}Eqna_=?yZ%7UWH0Mtj^N zuP3@4ir4Z@N~3^yCABI%QQM*vxCIY%kg<2hcl*Q~OFF`L!(TJMyeu<;?@rJU_?v*{ zM6Gtef1yPVa061eeT*|xpFPbKk351ofR)mEwLvMfzpW6{Apsf!p=I$9Hc!zA7o-`U z7)jW*-*cSe?NMye%?v!GCUv>>y4KBDmcw(B?4P$UC$!_Qh}M2$f(Ptr0MAa8)0f2! z?H;E-Jz0&7+nJ<%R$ir~UYb5s@3hHS#)pROWvFytsx=)6&G0 zreauV8XkAln~6yGcX0(8O?|bDtQ!Wl(@M)`;T10KyhgGF!ZylzkG2yd@Yw?o3#Ynu z^zda!#_sB1&fu<3mKkkKj~CtCC-^atiWGm4dg^%Mm$Qg{^ZGI(I?TrQS=ZthmAu7+ zEX`%-slmZaGLHDH<=%~9_}GN^;pSm5$8X7&a0HBno^TM0({;v@5z|mx@zhWUx`ytR zK6Rqr)ZX40VY+nB4BMW9yu!6=(7g9?FD_%b3($6~fGvOHJ1;mfMGnTQYxF|fUy*%v zu^q$pH02T{OM3WL^PZ}qvDr%v+nM8Zw;x|RM*RrHGF>)i^t{qM@T;{|q4EshAv@tG zkS;p>5xP@)E2ESIy@l?BD7W9j{NlRr%!F=ei6)c59+d;By4ld`hgP)|51TWBp!LtK z+Dx&PdqXqHm3vZJqaJPgpzQV7o-R`{3*5MvuE+$SXTh#(SD8ck%}eI7v1Q{td8z7) zxxm^vX&IT0k+Bt*W6ja@d;@Q5pgGfp@Uvu33q8(>m{e3?M~d32Qzqn0kcTIi+TF=< z(^Oz+Dq4dL%&Fc%)u>#c>lyp*Y2wVjY0W~y&Fj}!gXr8n*7R?=I922&Q_GOE{;l-9*e5Q0Gzu4;Q&z&u;qykz z8$qDV92VZabZWqZyp+h-5l*dq*I{07+Z&j3I@Q9avB5RM;%fAwbauS^+EjV^GrvFEESx1I*Gw zL&}7?3y6)Eot^fqTaN)UrgEkr;El{HG~0tG$t-qjeefkQ2ekQPlCivn5WTFayWS-3 z-8pwgY#T3=rmE?0!_j2Ly_ntoZHKyYjVVJV`!tv>~jH92bxPYl2 zQo>kqd!pQ2-y6am5tNbKI6Q?&r#hd$ipq%5ztkF)Kef!$Hpkv++bwm?;XPm~@4+|U z7!13alYMXtzF%{5a=`BOnq0XUqOZ6Qwtw3WCA?SRFCg`lD#SW{4<%(QIOEZUo^a=o6 zn6eHlRTZh9>l**I<09BtaKrx-Yx*2{_v~;k zUFx?DUvaNg73eqmfxF^;xq)J#NstG7R8XGB;dHAp6Ted3US{G5F|A42gLh_qfo5tj zUY1I6NLP4a^nMc*RvX_dL$bj?83L#OmL0K1g@8VoqeTxDtNR4|pipBKGqmW?ff%`upmKzIL^H3b?IM9pzdkBarIq;!-N&2Z^Tz zUhPi^GnFsw+F}em3<+zV(ERj|xwP|;{0-KM58Co3xgr@<)=}@e(p^hVS?@-j>NApq z&O`MWnUzZf(ooJ*-3w)LHYIK-j($}uzOckJekCYB5kN28d_N|IwFtj7Iv$7RU7S&g zJpJ^d$RhK5Aak--%E^e}NF{0k!Z^T}y)=?Jr){^xxH9e#!C1*S5O_RDP{cLK^dm}q zi~yY9zQ>taI>&{|!`HCRqhMAtzrp?!uo0S}flY0}K(UM(vHGg18ha+I7L=x4erjSP z;obn2PZyPiP~bXASMPL=u1MAeR)pS0@8_GV@Ym9J>)&y;ZlNrfX$5w47x~@iPTL6_ z8b9M2dKPO$G>y%|ww1r{#uyk+|I`;vAg&mTo&YL_$RkMACrhHc5;$FfgoqUpV61NW?yy8h z^eDO@B1wlD`a8q?<0vh@%P|j7^=>?W*e#g_d6|6&syi>wa0|PE>OEm zU#iPY+uOhV&x?2YpEDxZ7dx!H96;B+}*Q^V-A8KsVaea-Ska0b|M3O`i+4ZDGM z&9fWUu&Pa$a&IF~k-fA=Z;8gF?-i8DTXQ4G(Kk5@Ax7XjH2$CGcY~f55Ua}XGI}$u zx07SL1viJVCvHAj7r5cLZs{fifTCw3Vu4I!)a)!{Oz@#{senWeDiZj92SrGYD~DW( zpQNiN&J1cL7>PaCSRwXE&(9F*u_$-2s^V#|FbS9zgUN}yPxRwVgUw4Nz&FF zhc`Y{=o%1;{ds=zGEJkg)0*$U1?IH3=_P+MWS8FKGu65xb5306MN4|+9;S&1BbT+t zWSjf2KwuTdg7dF~JhJG3uU9uZsoY{Yxey+H>RX@(&*k!7t%amt6AyZbdNn+uq< z{4JH?NVkaw^Q_!Q{BkhZx9UZ?#|g1B(yHU(LwTE@ebAaReDb&}^KR4As4KlK-{*c{ zAM5$BZe#t?ZZrS`k~@l3D22H=)?I~B=R??zX`~94}5%Z!t*`1lFT%xk8$}rku^uqR;LX+!(ISds;*y$QJ=HrvD zLLoqpE`oLLLa7d5k92jEZ=IQOyQ)K%%{i*i1J}s7xazxEN0CR4(k4*DjU}WngJ!r{ zxhAn})-ZC-=wd6=V+y4qyA%gP?ex)rFE&7LinMc;MOJ_0IF+#WoIhkRLb(`n%&KF9GtD0 zuqZPE6|0bKp|Js7UCLF&_~FnqIv4YT-7sy10s;Q#!r$IT$WSZ(z{dJQcD#i;^`EM; zS1%T(C`MeYh7#m$T{Na>)`PuwO3O55vJ#lj-QdvB%fL>K(*m5w@zBPNBS^xfRlu4R z5W^z#%T%0ZZ&dtDY0k?wEdipG|1Gefz0JV|4Iu(nn+ z*xkivMXGR6&e~mUK;{sax;DA%0@twLjB!9tE4pF)7T zUuU+V-ma2N2)-E)h2fE)(jv|3n}v<3a(KKoOa1X6mv+Gzb@fN5Pn4tG827wS#lO7d zn0IbGj-tGKJ9jXde6Ck$B{_ew?}p;fRrGPpL)JG~$F^Iw7QS;1#Hq4t0Xi0q4~j~{ zK#+7NdXRKa>)unAe(|j;K^Sy=*jP%E9j7+EUi9)i))d4mH|QTdT1VGxg~uhQxk5x>m7YlF615JFzg!v-E6f zxr!OR#A7Cx#6?7YOw<8jp)VYapu`;|royG8!cu|tM+o<=dfy-ZO$nY1Uuj>05_!rj zQ{qth&SOHB-JFe{_n$XRO3CMQkJudIcv!d^R(s4Qw<6`t*Q?ToGV<8y+k*T+j1V$1Pbd@nkj%tno=7nt9F;56uc5qb^3`|(c<$AJ#L*w`4Wmrioe!#>h4 zFZSEWb3RTZMTcx1ZCIj%jQBi@X+oyJ?%uNl{Bza_43-RmoNlLu@yHK9v_L*tYS7Pc z_C?prbMwhkD>(Ztev58x9akeSlu^oCUA4g+4lyxhLl3KH28P(3#y9>c`M3C)efpJd zlpi1aEj=o`9uE#8Q!*b@C-I{;Wxlc(KH^w2@fb}7?!mN2TKq?b$ol27Q|^%q{WJHz zP{xUdc+&<~!38dny(-BI`w>wt&WtWk@U?}G>RX_d8~>+On}lTV&hv`zF@4fU5NL-niCAMdx>{-0c5#~*huB`k)J;(RTM zijMBGOsNrvwPg=tWLOpzKFU?3{;7#24D&#o3h~-k5Q~GRA1AUJfPw*?&9o)iJs`RN06wc(#Ap>~}I>dATkZKCkLS98h zC5rE$bgUd)HVM`?=oo#p+1AGBdo*3Sw{%{u5Hcqs+?Rv=JQh!AciOuXVjdMc@zk(5 zSpu~uUcaeLoyMg9>={dnt|VH+?$nGbSKx8oQjdWAofaD;hqBT zNGOLCaS|E0qtqv!wBE8vWOcBt%xPol@go-qGtz>8q+p6N#%^P(po!SgQrYN3y?cmk z7}{Fh8{NzJy^(jI1?G_AS5z$gwKm>cV+9fKDTK8JY@NJ0vH2ELtwc1^P;-Vcw~(9n-P+5SpV`_K442}x;WS@+qSQ5H>$|?LNWpLM;XS3OY`kEo zM@jI*HJQ9IO>hwrJ$7f=fD%FPVT1FYp^(F(S#PgiY5*u-r(DXSKl#UtVUdg82#5J5 z`|22@A1}nx7%sn^^(+o}pYuPn{n47qbXS9fqo(=>^^nXd!H*>iqRyWM)J?`{Z!XCv zUIrUQvRB_P}$ad7A~`V$b050U1j|(2J@PYt&bWccJ^JpXttMls)wPt+i?egn z;Ekl{Y}nq&HYw=`lV7z^sa|MjD6(AfB5`W_HABf+y^E4tp&~v7&Og$OeQGkH#;J$Z z4VUZvT%9e8_TSq#8c8o5tVC4(P}fCg`ZfAo(MAir1Nhr7iclSJ^Z8V<@2$XPTwOlv zXhyF3^T>n9leM87N9b%zyC)Y1N2L~~omarQub%`8~+4se7 z_eWcDgirc1Kt6hd63i@e)1JNv&)r4X<)OQ;+-5Vy91Pqw+SiDLG&JE|V_;;Qipr;7 z&DX0n=(&4sFC~SEg{3gx;q-%^mzQt0CffSU$T|8-zd;3WSMe}%xH94T9R%0Qi+&E=t&LrCvp`htuJuYK~OKqQ4R zQp-?_P8fdIuI{B$f<@P`W3rt{iYkwGxkFGkDb@N!cR|#>5j+eil!ZlZw^^ZVh8^AY zCqdcz)<@6Vz1F#i&bzMCZNFhH=&Z>2Ow&5|qC9l;vt6+#e}~78GKhB9;^yT-PVRe= zwiks?EUYVPGjxxQ}z03uhmtRn>)z9`1H>Nv7y-)j^-eEu&Y2=e3 z`gI|;y;XEW{6&5t`INnq9Qak+rtZ)waKQvSe2a`PHf0!l6oy!&jTk;)_Pjbq->+Eu zXVcRe?l*E!i0(vjGD(;ieLn+e`vvdFk!dchQU2SP666_aXlAx)C`QC5f3@{0aV^ov zVIgeaRP>xNH5c*oLGazU8IBhL&o?y|N>PgghEZr3eThj1N+Ixz(}D-qq?fC?;MSnA z2ncDuz58_i+K0qP&SJSHi+X~WYy}{n1ii}5F|{BqWB(gJ`F~$k%wKB?egqumX7wxW zQFwmC#pCep4o-B?V5Q>*ji$b4hA^7XL%-x$X%%@qFJe{G^Tvx=^1B9evo}?ohtHzM zm*ovBLtGdv-6?C_&^}vDt7R%uS-YRm%c*kUXESXFIh{FuV|^wGnwc7bp)#<_sPx9Z z7Py6R{dBKKm@_rw$GZq*+8M{zDzbnG&4;Vb8kOB_GFLo z_mX{PZ(l-(jttxdH(JbUti-vh8^p-X7JIG<4=5xE2ssl}UwU>NUQBgAn8X9c8ryw4 zC!MTtHhOv>=6zXeGnYBQu1#mzA5Y7n$4}t$*7K)t!@(rCTZO>@{esNujW%@TUIc&)?gT8n8LA?(q$Lb%+T-efVBuP=%Jv~Tnsx5%3wl>~Kh6O$$I5Jt zD|kfr@R7jio$vlw7K*x+FTO!o%AzH&!_R(PEPXRHSv#Q;E{_OQdH(U&-&3)hwzn@&tXTAwEiHkQZ>q7u;kM%w_!0+G zw~vlh;cPZbUR#D~>_!#b`3~!|jt`M17|q?q{arg_54*9r1}d0p_t#Lb)_k@}f1UR> z7Gy3|%FT#u)%jb@SSs7`8vS`Y&Y>i31=o3GH9A@fPB!CZa-1+@ruB5KO7i>CXk0$4 zX;Y>5V4WNo%h05XI31vjHOj?qqh!_2Yf#xGRW=+ClVLn`I`i9$=`6$T^0hN#k3))o zb;d%&q$I>~86dSW!jQ9j3zBGQ^tJO={gymuw|Q5p=@UA>p{sm&LHU5Gr@IB>R#(3Z z>RMHMNmZ3be{!|<-ssNJ$cR}S>fEVg&x##`bpLqq6KQY~*~12xK7nT~jDS2byi?B# zc4Twk{r$-(GOXtM4!omtZN9*&UQE!vOm{mv@nY;-9uleczB?pu6ppBq?uc_=>z7qh z3L`g+x6+XNWI)L^)4fmgRpHuAB-N&QMM@)lfJn&oyT0El*{xe$yBT*VMLN3tAPA<> zgSpq{x03Rit$t-f=2JmOhR?negR*Ig4@2_~S5AxOanN!2?tcgiV=7CDADI^_aoH~M z5`9{*1nqV~F1l_=xgJ(qeRRX9s?RY;%gaR?k!|luS*P>8!o}Fg9e*uHpWzsD=)x%T z=$By9ZWl{zxK~W2(1`V{%;A8J&#@&Ah`zEsaP7V=ryO!oh;r`BR1(ZmI08a!$~xRa zJs07Iyyt`};=Gd~=^y16zPII-I`<$_t@Il_3S-;NgNLG-T9Lw&Sp}-Vmn|i ziF$NQ5HbUIRbr!4ZDWAWpjQs(SdNyL&7hs~fps0pvZ%XrRDY6VlI){(zEP6Ro|r;^ zPlM0o@2Pn^-zF2Lc-Bn0bsHVZI*XkeS8IUB=Y;3O@NEz~L$4;oBO_lp<}&1lqtNzC*6UnlByO*=eIr9n-CN=i~h zb}F>n``(FX*6qS9smti9ymbl1tI0UUnf(QNE1jQLL&rUwH#|3xwhnvCNfMVwTVVgX zCq5)tS}pX;z0Te*Uz0e~|LIKoRul~#^sPMZ-QCfrp%6rif^Qkoc3RW+w+lw@lE4*f zF{cSr>5;);Y7jrEw?p>}tLZ|`J}?+DTIxgNecV>+b7y=j(s~?Pt#&hN6)+;jOtOmh z9Ns*?dTs;Cz<*>?zBM4CtLdJ%bOe&0k$t7^v70E z%}ol3G-w`C|D@V}p@MB07Z-OIfD0d^>l_`Y8@I9nTcAzm-7r>ea-Cude0s38s(Wen zt32DM1M|tr+Q&m7q~pdG|J^T#qj&etYv(XPVFJZP-h5#n?UTf@931r&gx8kda4=`Z zIUz^--{u;YSk%L<*GxE^kB*POLCsOLb90v~*lPOvr}MS_1gon#yX%g_&K7cpza;lq z$;Z7EM>i29f%)QwesgFs+TEKc>c+7u$(Q4wH;pCT&}QmfD>G#a>jvB)ANg#fm*f%r zaWxNDz2}$3>FEnH@7MiFH!h;jm`Xv9I-@W_)O63W(QzgiQ)_$^csLP-kNBheQyu(*49AN>2X))d`@vH_ndhOB~!KT`@g0yMh5R({VMwDtHOk0NppK$6^sj55Qae zY{R58Nf8j;KWUOvO%NVVoYcqgdIUzvb6tY;;3UREK7t9CF7lCpN*urY$ImvCA_Dj- zIlt>&ngoH7JcdU!ZlTqqCkd}0`@W{m5EFmTu$_)BjOk1VN#tp9m;r#UFyY}dALXQ} zF2Ld?$;R{jt(VaQ_U3iFTuT4f#E1C4*yuuH-jq{yQp4C}P|qqy;kkl*zvZ*mh);~; zNUCocN?7iOZc8kIp)1}bh7d6F)m3_tFarI2;NfcvdJrMH8b;POy*22K>SV-V)B(Fl#_CtfbvwiwRt43|F18*H7%ecP9&TC1MY$5(I4sD zo5%Jg6WSCx1P6-0g5e6;OHP8qFER+8^a6>2j#U)X;;dT7{LKH48B5C3QB~9U< zFXZq7J25fN=_FM$5FTlwFVT0HoRmbdQ2w^?n5h@d7y_ad5|T^ywwHEl;xrQ72@Lz_ z##{WmB-@7!ZL{3Qgb8F!!q7$Q(?o++nqc7uNj##lCOgf_XFrOO;Nu6S-a0$n;FJsy zBYTwn*fN)q6Nrn9RRiziT?J-8cQPJ?=5uurXqe4}vhwnH3pTLi_{hi~Zf%M;LH83~ z_p;=5-E!BIzmd%Yab4T%!yA<|iGMF?5Q63ffpIGE8SdEaS-WR6D?R`$8induV^Z#S`T3*?oK@0cpDXictsioV{sykV{vbdvMke zv}C^2j=C=M{w^)xleilabA6Nw(l`K*C&bh(PxnWXe2szs{3@rI01fjav1}=mt0~E| zdeF>FH(RgXwFj{sfCYA%W!0`mZmKUSDk&A#CT#tgSE3h(5cD=K^J6MbYlwtec&%VV zrfl^r$;Uc&0dx?Doy_NL=Nj$aD2YlHLAaZ&F zk~m?|?xCxxo^AA=>sxQ>cK@DEBwchD__CmLwf%*Qw)1zhKX#>w53nnl(m^PP^aiA1Aw1AsRIiA4Swq>_JpkvZpSSt6Me@%IW{s*DfFhuYHNaT6Fl zb3m*pk9)>NR^A0p+^m|kg{Wsv@%VgiWY|D>YhrM?)N|Tve3#ku&%Cs{z`TQa4x;Ed zBKPJGgSY6h9IRxds%uTRXOsPCH4cvuI`=X%%+r!Lk*+k}Rr>Gnf($q?;(nWF5PBFM zuw5D7Nxy%n)4pY{yI?S zgC6wcceRj@J#bj>t%>noORVEZR-Z3UV?M5gT}Jt?_HgGiuWmKgw!U7*%ey{Zu^F+@ z(f``{2J_$9nSjH3kVbkR1D%@Weo)xvjB;sARFrU>hpbhC80LHnL3E(oN9v&IS{Rp0 z{Tmtfnr9Zj-`oxiY+CK*Vu%kj*6tqu;^hUa${5Fp{A|4=*N8fmFc(YL%+hTFsz-Ff z6*PAFo65`{7pELL6=r_JlOM$XD2Z_%2o0nMTr5MwjFiySET5^4*s^{P0IeEBRC+qY zcn@Jd2-4gLpF0(qNQ<4SbZBF$c36^DjEZaieFwp(5m5Ex+KU`f^blOYD|VE8Hl_PE zEsY84)xTyp*gUG`(|JKnJa`$R!9`BmsY)VN`diOI=q0ogAX+lrK%RSqe&~X*V_}fp zS_PUYD7+6Jl=#TiaI9#W$glCoyp)(Tvd#waS@`(z;oqwd0l2`{1>`hCn%U3IqGoErFJ#oxf0l1tnTCg~5}>AMhQu;Wjp&eY zK5-b+b>A0*A9J256+7*?RlD@LHwJ}&S3B9h$dJ}izx`L#VgZ9<%(^ZK^3BHTPi(mD zOj#1|6Ti4QHJVUJE)E16Yv$Q3O>OvKDW&+8QQM=!mXBHj#($s^rXm?F$k<^`RRGgO zJ2f@6(`{<)QmOdP>y>^(9ut!)vH(obh?y%)#{e~oBs4@Iye$JGW56$~-;MmjyJ(mu z`hbGI7o=^IX)^PTVD3-Q7wPDBnesspu&{K6Cqvusg7Uz&VfZUW50`D_n<1+m1LAtt z^7i+Eu;Z7oZodWIK}L20*b5h2V2k?;(@j{Dc(b^w3=w2P7VlAw(BKoJ^-l@k%kwJV zQEoQ=s%;wP$rKfJB)S^}t)qm* zwg_t_)r-xf+2i*AuGB*#0R$y>f;AEsEfi;_+EInmaDROGtK$l%f}C938pn&~W0cYz zco2=B1X8frYu07l8{^hb*5>Lbn@s|gT8J}8B+;bhyD@z@9iO}!xPfr}`u1K;J!UH2 zCHwhHe>O6E`+GS#U4@GV5v!Idg+%86te*i`fBIM|JI+g0_m2W_GXNN0ly1JWq0GaG()<5%eP%D7$^4La%#~1yH??C9%S1SCG z;yxxig7khBm_a5aaTkhZJ-R-UvlpIXq-q`NPBRUEv7oyQ@IjH1*eX@wjk*`cW9kuR zi`kEd8tUDz1Ju2{Q=8&P!LA7w|(ov3~R^194 zP9VGrGo&7M_V;hw{dT7CNuEAFD68+KJ`e9OBakLo78T@=Pq(Q)^gD{C9dqXyQ-2Fq#uYrbhd1_@R~7sU6x4s4+@ zn=Q~|rVvRV@Y{lVRJm75ka6fQNslf5=@AQvBKU=k( zDOP_Mq!4^RLJ!Ty4?Com5;IO1_KtypL1g3_;PiBeNfJaps~nLZOh0&TB|Ce-B>sDm z4^#m2=4$&SkZ?P_DZ0;n@vxvaIbTmoDkERFye+n-nh2z-K+|y6Z!&(}?WilFdtvHB3qBT;kV=QK>;x0xTr6O8@&+kr==~NT!v7rcb^ZnS&uCS+}V)tk9Kl8 z0;#H$&#sShTOU4^Q&7O|f+Egyh{?%^azc`v7Pna@s~3DsS0f($u`XXf09za2^bjx_ zAvo;1Rl0>nwM(*7HN*wExp?~)s#}>h9J+i_KoaEzTfhGv*lbk(C_wykk1gY;j+-~D z8>k*tM1_62=I_y<&g`}S#lgDmEpb*jv%wz=oN5S2?!k~9U=R|CRSnWm+o#N9`9F@5 zx|?^Lz?^gJ$ZHenwiDZ4Q|~@8Icu~CjTGOktZ*G`^@gA~*;P!cr~q(&(T=m^V&>JW zdnW)PQ<0_c>aW6?qJO(s8qtQ_y}~+AZas8A46i$RGm%IjQ2<9xe&nYc)0nerk=`GV zo@BNDF3FGCTwvSOWH|K6GN!m}pjR=*ikF(;>`^V(M5$|0b{EOy&q|A{pClkcaDqgT z13?NyvFRDw$$o?;!3OU|j}V*PPVJn>i*m&n(8R=HL)7)tmI;11;p(XL`CkPtg2?r;I7g zY5Mi~?=ZAU2iWfZ)9^TQ(AnVl=fDsLVmb!@`zd4npVp;hvrC z>HwkF#UfWRau8>k^;$GAm4jkj{^<=g;G=~D!FSZu^4@y(EdBsEWn{X}U=JztyGw@W=ZT+Nl9HF`_0NfM-OwGbJ_gC}hmmHKv*2*$u-RkG1O|dFK~%7kTS5 z_76VpuGPIj?%RK~XoEYb3ue;j?(tPs-?)QNsd2J`xf2ZyshI(JVp|o#8O)#pY9`3- z>v#TW@qD@j2{Q?^Eg)UAl)iw&>MZ$`W&S-qjOTDCZK%%Gg|CbMWdUVSz4zQRYuDNX zhlB3mYXkgC##hPb#cbaY@)f}8$d?4Q@BjdODMv`USfV{SR{%9K;-cTvNoar|@$A6YJf)tc~dHS3$N z+vt+kM&xqGJJOkDgrd&`+f zAQ4291_2ru-mMunyqWCLnfx5?Z6S^X1vlN?^o%_4yT}+#*>~moiIjR&FLewiU~^r9 zZUQK~Dah1*M?n_qaQ{^{*PM!&AwmJ4kBw`eRXO@1co$Yf5SGab8{DctWDuf@xwt3 zV&zjQx`!%90swDp-QcS@J1G{PLirK!qx~|6W&gofX&^f0bJGX_B8%XahuHyEFK_R2)Yqjxpv3 zxdkE1gWBJL5R}LIu(e&;asBw~^H7SNX$}sKh@&~Z@7khrf0|C7GXoKWx2N{Q9c^>s?X8pc2zD(g zjJMQvBZl=Vp>zw(*UJP4an#l(N|N5+<$v&sZKHAV0v;o)V^w{D8*%TqQ8-oxOwU$) zA|8Dz*torSCp>B6G9BV(Z3}~5@$oa&>g!6Ml_3yPe{%(ak;y#N8t-1FcF!HA9|I3% zL&}olZ)wZ(bkY^nZq8IQ2ay$w#WTnKp?d@YGy1a3Acqva9S6XiwLA&6+@NPmv~@h%lIX{GN}5EIOci+{kv$^e1;5hR#zUy3dYSAYsgGp5`Xb?D9Lh7mF;`` zN1LSGGBoUtNj&4atPcCJUkYPBm7rfGTHAx+-mXtH`>#AqVbU8)HlB{Z{Fe-{xgt-R zZ(86@yx$FkR`YV&OcT-ZQ#sK0htVoX&7q`C_z+!4FoSX$o^=v7cD%d2+`ES%t zD0rD=-P|DevmSYc;2~nadWC=^um29knzYbXP~D%)s~CXoF(mpio0Y)+a*1V4t`ZEn zWgyC=Oi6T`IxKS0W8f_S$2yZ|-+W>#z5ynr?<5Kqtt{iwS7QMEz}+W>JLV5k=c*gLUr{tB$LnrUHA#kN!6&P89(py-TZ_tQ`n}}BGc)|gqDIAYlNwc3ZNM7D+qL>VnZ?f1o5}94uOJR%BRB#}*A6 z`cJKOve8n*pkWc8x8=2_0N_x*#V0V5F~7qY=Qx(v##-c4W=+& zcQZM+CVt%xh(vZPy^k>BM9kku$6Z=ucvZXzo~d!IJmdt6!8a50oICy0qcmE`lV3V~ zR_}Tf1vOvtbUoT=dv4Iu^=DgDfEg}r;E-USL3D`CdCEm)QFmp-UR^dLhN)*y&)R+Q z%O2P@Ez!>I?yrVPWtN=XQ=`+LSMIP&@_UK((<_K8CO?uMvAaf60Wg1^6$NLC_wmgC z5F&n9@wfE_-T{&*My4tl2!w{$>q72|u_zQk`?FLG-m-)Ncvi}pl!mV=)Otxv<;|R% zX_y8WT&ooj|9&)=AgT6q(Fx_=7UXtIVzo;5TI1Qo+ZvDaZw{+x+Hj+y+~-dvRdIfK z^y^pLlih+UA12}PlT>&L^rInjNJ>;j(0Gsi+U$r@Fh1Bf2nfiu&HIN-KO0Gsu|?ZP zvW-2phr;B#0(VD-RRByny+^~d&#lu4eUm8UIe7TFMX5MD`>6)ud{j{{?vYympA=CF zU>UaMB-NEL>u6IgjKD?Du-5*hF{QtoXJ?z3)wg`FVv(~_wpkGzsCO)CJ_NA6H*+0AE5JC zzGhfsKP$@3g$My<5_ikc(PRo3H%AE3oQLyF6%=jmZ3ur3tAkP%$Zeb|)VdTnncdN% zhM4<%pP#5S*91hgkpD1KvN`5zJf7a>TEzPk14)zt#<*|Z3?N_*ae){zFkaKJK2w>7 z**s&(;d|?(!~m##xn7r22@Ch*?1(y|VnbIxOSu{-m#S@Y*INq^r}K5y_*B01=YAh> z?4Cdzv9A*Wbg6yF{vk1(A@pF4=w(j+NGqI?F+)vTl^qL9N=;katezYjVSSjPJq{3n zvJl9-^o$I7NW7cM$?h5XnQl3hPEIcHW=!(pAA1Rq5O!LChc0VK2Z}E^@v@nZkeP<{ zBT6EF!&`v(^dd_|<)-MR)cmENe~I}q5IFh3;^W`_7 zU*!+}|C5K*z!Wx>S)%P+i6Vr7IY7o0Y8ILIEEg^*wg2{5SL>rCyvh^Ukssb897Y!s z>H{*oMBE10cz<)7SGj;gya$*~hAL`*(-VIpBw4_)N(H{GK>Z)~ z-oh)&wQV0B5R{M-0hN|+Q32^uK%^0*OKFCb?l3?_LQ)!~Vd#=ZK{_Oc9zf~Np<#X( zd&7P<&-=aqz_;GD#=Z91?z!i_uj{R^fS$G_fP#HMG~U6xA(5hlP94iCD)fC*|Yq1BX}lMFC7*a-%A7Cq~5Pm zsw{!>BRF)=0UiP(aqE@gzf4G3BRM-;J5R5M-mF_6uevLtf-#!MAR6G8Dl-NSMaAoq z$Bp=|+`ZeI3ee8I6%Kihi-tAuWGDC}vT zunLS+(CGN!?zQ*57fKApzEtVB^85|`+rL;M z003$8Gv++Q0l;i2DFDs>`5P<>7&#Q#|1{Mqv`WeBE-Z?SR@40cp~g=`g9CC0y}!^~ zD-oy3CN?8kzYEsS6HN*^4})LHSlQUZ+u9C$m>W=HBo7MEpHYlnF`$xF0WT(k`mrhb^dQjDL1%)YA6e+y>HJ~C-CPJ${w8HP5JM2jUzaNVmV8|wv3)Yk*- z;aD+?*;(iYxFgZiGx1bCY!wJ?*9pg@p)OPe^(S3BoQqpN(7G*|rNigbqbXy&IRL8z6mckEY=wqkb zl_)BB4s(#k!oxe}YmJkR?Hqu49`)eaoKTXei86Zc2bRywb_xf@x4roxqHLd5Rgb1^;x^`F4$L5jy z{fnTb_D~;6fnWRjXX^aLHS1N-rzCnY$9t5@ zQ$y&f3AYc_3ZrYI9?!_Vt8d3Lej^8%*VAQWzLD`yucs9I2HHTUfi?;85p7#n_yip4 zqo*&fSXPY03j57qP-8J$U@hX@&)Q1JKR><@%ojKXn9v)VG=ffB>7w>y1$-;2Dq&3d zI?}COU7;U499v8DEiAHBw6xej=jv-z_OrEU9=&i54VxQ?Yp2tilSSKF2GFc}92xk7 zZc++7zrK~);<+~B2v&a(S)32n>M6)mQ|=_Dz-hT(@nE|(Tz??PVQwcZlvsOi{HO}s z9)L{%%`*bbWL0G4+I4fgIw@VI0rzAYP^fgduEa1*UIEwkHaA&3KkdP|4+OEEuZN1M zS4>fHc)%IQxXVjHxG4cEwsh}IE=j!6(o zB?&n)03T<5?Y~`$d9%WX%+Hf#{Vj+U2KVnpo`VW9u<-B$sbqwhm}K-14~m0R6~2DL zT^?~$1_M@_;h+4vh+Ger7*xMxYx|P91k8Z(Q*10}U+(iC05=Y&tLN9Mu@8)hj2w;f z&cw}fBO5H{H5@B%s7g-GLOinuj{x z#&3LSL5;dsh{!tkOhe3*{lva-c}z$dUl;){*O6=51H=FU84m-4g7@!?^jF= zMcY&AiNVqI(p^9pQ8XjFe+-;p8)~Wi)nANrNggPK&Rs&~yhf(Qzpi~RN4U^LtGJ># zhTiUQKySF#I%(&}beS!e_%UeLha~Ei%qGOgGa9&A=XJ!1t6A2v7iVX)gD4Tc~7+N zev0UC-D{`{_PrFFlY94&M3|z2ZYA>W_RspA@K`Vq_|IqBI)Cf_r~r+YuK@5w{N=&< zi3Tu5<)=?AxNzq>J}$&`U?@kAMy|o!szK};*;E9?jWhC!8cRoSCdfJJlQ z>G&08zu@SgAL-=>rbIJG543qtMkZgZu zd5BqX$w?SEQ%^nw%9fbGZBC57bY>{fvQ$*$mR4A4ma87(T^(VUevI=CV2SIo9gEHn zr!CF{J}kOU_gnBv-Qo(C0s!K+j@g~>(Yj2uki%7HepjWgeV<1@g!z3zUX4q>vSNY= z#Q5n~DEr=TRN*L$f=ACkV77gSo#=C-tR^P1F zY!Js2{%;;V`LnUn@aRGNn5sK!kv&(t^p{F~jYmk^@!@Xiv=lRr>*?GeS||F9q2ueD zf*Fj0w6xikj4|rh`R1{7zJIS^T<@!oqF{U+e3i0CNlr%YgWL=l4{2}SCdI1e1Y6mj zD~CL5snzphpzaq9RkFP_G$MqsJfl>)hqm#H7xVhEL2CUV#Q>cMKmx`Rva8Izj-L}D zzS%P%KS1VkRxnIrfT%!YE}8vz9}$9ifDOVPReJp<`~&s1ue-&A^Go3L^Gx<%^JSN2#(+;CTN!|Yg5%x& zD;61P8M13)g~Iz2uRnP1zZhCSadHvdJRZocvgfJ$^{GVW`v34{1!~C!$t?rhuxkMQ z6~4V)0&vBa*B>}MR)RdAtk(|<4NWdI?K0&vx1%leF4Hc%XSRK{=a<@|NGqd4N=&!L+bZ@T)Zjgy7i)fNpi)wtc}aai3#0X7%wi4T6RSB{;&5S z0RdLOHTuiRXt>e|U#V;3SBkV57eNLl9}Jri;Qrp7dNyMl-SbAS7)A0G-*RtAWo490 zpJNKV%4xIGsbm(z&U;=KjAN}O_#7$2XfcJbV&_}lh@9C21S22!0U4yFL)IliHpq#G zo4ZgyO~tT=#*>?^G!d>Y^P!aA3shs1qD(d#>9cs@ROD zwW2tBW~@Taez&XU9bN2wnNWUfZNMK^4;!rw;#(M{Sc74H)12tvw8!3!*Ft>BQz*9? zr$ig5O7oTbML~Q^uhnDSd>YOLh&#moz{2hnJouaD49;FAiCy*;XbA?ysiDq#NlftN zGF-RDT_QWjQkDwok-UWZnPcDM-dc7{bj@X z71;RV<=x%0S(?#<{grw)OR*urwFVXTeLdSUR2V#`xMKSy6@l}(Dqo)}15vYmLp`9d zufEiTZkt&OMhI&D5U?4Gifk9SqTd;7BI9EjbO_>uoPJ^=@9*zz*H^_5m!Qo9>DF@8 z!{4H$breulxmh*3uNjT7sDLY(q~n%3&&36>v$M0)GBX=LwV9aui(RQ-P^B>bxv5~k z_Y2n&S2&IaCH*uCVx>W-DX^F8;^{m=P%G!W}t!Ryu4Oe`!iTeHLVIug*Cot3Ib zz$?`;FV04QJTSvphT_aiif||^Yc4-Q_DgzLSfIoaoILrVY8?Dm5)X2QkBnZZN??t9 zPN`~DyC!se7Sw+ne9K(7(8-C-wokpA)Ly_(jpqs%2E_6PG=R_=31@d>02DwF4vU6a z@1Gs+Z*0n%^Bo^I2%OO301#WffB5!m;z{$L^vdD7{Q#v)HRSrbcZAndha%kPzr9d% zLLCtM#tPAhIreU(*Eq>_7Z5aaJi3fyPJYJ&8fAL5=%10#BNA3lyYwqiQ}y*#bezCS zl)+JZ9IwZg!RR*d#hd7(mZ|iW7|Y_o>w_w=z;v={ju1I`P=H_S+fB~AGO4%8sXn+04RTx2Yqyf3;C1s zRUc|w{2s@4D>Ws1{z7xneZ&^OD0rs@o3fb1>3n76&h>LLeg~Ny3JDqMutD6e~fXw&VZ@z=;!Due)n@RZh3w7;qfV8R4*qduW&jh z=6it4ne6L|BKb~_Z2^qpPt>$zP=DKU1k=g_@X_ocZWTj;{!z$0#)evGMrhV59JO;k92vEnG7jrDBDq^W8c;d<+zUljvN4+-veYBV-`#hh-N5ZwwnlQc% zn2KB&=4OTA;o+%rgM__>sya_ei_$VOwDSAwIk>p^LL+arCF=uCDSOnSLWSo-rEZx` zS-y_mYECwsZ~y9uI_CuIrOT)=Lh6wbeReNV$PLWrE>jCI;lFMCbkL~awfQ$WAL93! zl$Dj0Kd%EId3tj+G+LJiWB_W6b!D{t)85`MVRynzwUn^1yMmtcZ)&fQ+B{wByoy1s?6pEp9D z)u+-!6yi);_i!6b0NxKE2@L~XVX&gBHxD!?)qwI9;6a6gh|&(qMk^WdUdd-fr>N1E zk6NU+6>iTvRr*8b7s+W$!eU((vn{bDAot5Thut0m>!Hy8By>I!=EorQhd3_AbC9wG zMSzf`qtqzj(@V=8<{l;t+orq8YyUi1x*m|g%1mcmc!&!O_nB`B+hiJ>n7z@7bnng| zxIaeE&7C)X*LB4=uW}J4oL@?W+Bn64`;?29o zD$XZ!vMp^886R)@IGK>P$KYf$V?@WqUj*B(~O$M6rtA|~Lx)4AH^q2lP)K@*@R zG!kct99dCOQGv+0#{G+!%IonKA|szKyi--&ifjIQ;n zqQw82SYNyTNB$;%bM{ALtYC&7yS%I(_oT z-Gb*#G%hd7EDO}4;#1R^M7UD%6o^ArgBzJuymU;IN@TK%`g$Iid6p8+#wLp!5 z*ShU6#eVkK>tB3>H_&}%V%#Q{bgt%K@GG9e*P5b_~#C8n5e5zq2T zvZh3`yqbi@s0AGZK32)8+j^|<_`I52!c+`FuZ;<60JS2@V);|(puA>g4(8zwO^^_W zo+tzl@55JaOE{xlezLOMQ>W5|sJ2jC%veyAn!jSEJiDKFUKlKwAd9B6hyrjSiq@OwGl|dSH$+nN zGbwa{79ZhjZoScVARI#}*5jXY+I4*R`cN`nWouT8#DKEvZO_g#92OpdZUmz5i&n9f zK#t5fP9q$2p$*FxSRb4@E4t@-_5BM|CD&K~{Iq;J(^u`*mzhU|GSm}j`V!TgwY6#y zyOivPFS;@tLAr2zG75Ny^6A#|#E%&0+t^y(Z20)`ezT=(>mmkmXZq6PULH}%>daCM z_@aY5L~^TYP8$snGV8XZst#xC4h0o0U(9b`zZxpJI_BRXw@piB++^B$7W$~!*dB)2 zy1Drw*3e_;xGTYv%c+m-ThD3D2TcJ#A2eiqUONGao9EB38*Meb{7^~Zo1W3Ckw1=; zq0Q^Iir{cx9C}3$;oUz>{8Slm;`H-r>1gdi#Q_X7u|(u$R1y( zn5cA;W@l$lc|uJXfa0v<%qT&&UTxAJ1vXl$qk(8oH!)=AGFj1w$RwvW#di1k`!vp z(6~|UcH_4Q1j7Dg%%oX#tnIW_uU)j-&!!pK5T99kld0|BVf4zXc%GW8Tr%D4UNFmG0 zERmPG-3s<4G{5zI7JAj#*n(~N{FS$sd*4E!nd3CD zUujK~m(n*o7VuTH+$Q)9RIdqv+A`{E<_3DubUn@d#Mz z(4B7IJewIDjS&$DU?rTSB3!&#D$h$AL=PZ z6RnD`etX|_wZF427#fnTs-fV(H^0rmgXIWL*RL#vbAGR{Z#Pz+ZtbdT(26!pdGL;} z!+?sfK;DG&n3Tq4FlhZ1rUp>wfPf$?rw{f^13T8W)Uf}&$^dC9G#9C_IX@P@40>ct zqN0erKer;g(&PrIc$8otMCAya5kobe&B2%M8qK;kTgP`nJ1q);=vGECZtBEv?6Ejt zU!PqWSVE~u7GQn;WeGz-P0q(l6*Qo%BO{ z-B=>PXlDpOy5VsR_RZ}RVBW#y*7);hE8u5Z$>bDD_7g)8#f$?2dPsC``lpAlQ6&oS za@-l|WO`sQ1PgXR1mf>aFTm2CzVFcgd%j2YYo&^Z^=SFve%^1`kq;meSc8{lq~=>& z@J0OsaQ0imKj){w=*ND35|_(ldAz3B*u=!VHBg>-y$EnWnw$=B{$bC^W|)1)TOZ^w~)-Zc}?U1e1si{T3N82Ony1Q zyr<1B3A$CMsScBC(OIzZ8zM0u&VD=fR@Aj#N3KDy#$DAB4*69pK{+~VT9BSM3)pvy zYC2Xtb-`GO_#0rZ`s??v02oxeC`S96a>i|R^ z;#V<}@#ae*^^1}2HddqME_6Um&tl8pNtim}`Q1fYA5mPmUX5B?TYS>QLz9UVGmX}k zCpj66%a0*`b|BQgN%;we1b-D?lX8CQx7;B>_n=!_aixI8b8W0EdS!I`qwU%x80iL6 zkIE>@naz1+T9`YL);M>T#pd&F=!0Y`(ygkjh_L4Y&+9VTPb8S!AQ7;`O|&{MLY%Ss z8GS)wA55_a#6m1RvKNg_)bqyRCRVOMpr*v8ulG~-RT{W$$G#8;#16>qF`(>j_W%}{ zh0XyFJ-z+`(ejKW-xE>{gVPvgQmkrmW&=3VP~@BKl1h5v8f2+E2B%)p_<|Lc0(!a? z5ZI3urMEI=bh+>;Xl-+e=IZ%9jeV}D5F{D{B?lm!@MrQ0!KeoiFVreEEG|<)0eLz= zI4zk0ZF*q95Z^(a&j)8XOJ6QbK;|lDN@%(U#$h?SHTEfmeIG^g5)IL-0<^L~k|b(V zu)^42X+ZEUbSixA_%OIFFX2k*H>p?|&>-AzSfhYh8mM&vDPl=&-8|5UpaWs+Rq{U? zeqbb%%mGnWQ)61IsYnT1TS}ER6nZ{*|_b z3Ckx2Ri83otJuk$;+{ShE4RO$Xc5Tl&(zhW@ZI?|n46MG0Vn`N|AjCm!Uv+hjqZ!^ z{8xT-^^b}@Fm)?k6;1%1{y-TXKT>AN1oW?9t;IUKioK;d#S#RI>c+>F)J0aU{*_gF z`*~3rN9CukEO#7NNC4?ak>CXU@Yrd?FJ0_!9aAuJlE*EvLg)fsnyO_CA{-^X~>~ zZEZSGn;pzCZUEw3eW-u(jk7aMOo@r~a6BEhne!~q235_hp;sr2fk^MjR$jvI{jKO3 zGxR#gaPgtt3UWlOJ6`mmj(+LA*xlv+5ra}s_1$ARIHaD(XQK?!{>XshC_$J|TU6Ma zVK9H9SEYL-CX=3`@{&mD*4#ZzeNg30qR7*|&wlxNRedAN#DR$THij<5;zVDqNW zN!>(X>}Q3!^r(HEDtDd9to6<~7e~`$x_pos%T3fCFdKS?7NQkc4F zD0#(Q7j@5!TPW5HXqi-_$FI2^yU@zGxdAP0Y&nrrmRia4vZ)+ltoArBoIR=J_Xg~; zqG#R)f>DL#Pq@Sa`&tGvfZ<4E&4o-8O!RN`2~mtO_U)#Rl(zxg{70o&d^iU?yU9{i zO%ZIyw8Cl2=0Ws`_iD#5Ae`Te$C?wlr$tEpfF6*Of9smISCrcz39t-K35=&Bc^K;( zy|~I@jk-C|M3sB-qEN5ZKOs1F^kHZ5cK{6UI(2|uQ4wdi1f&NyHePQ22)qXte`_%B zW4Ahd@%@qPlD|UDh>JPH>&qw*=?;hNFQqlbCzZaU1WGHBxpBLd?y8zwq_+T{X<@in z?o{efRW*EOpTevq-+MogV?Re8ao2AV;R98Qx%2XkW9JebP$?vdoC9;@;hH7oNrCCv zpgMNXX2q4p+(bT--!Dlpd4a4D-DApN!}E@J73N~P2T)flYFZ>;+i~9bq4qQ%xCcUc z^^8{-2}0%J@MZbduC~zak0qA_HNj{>BTqNFeW1}cTcZJE>9Q(;z#S9I0ZtCPDeFgW zKn9Ub!ha_cz;-IMc>R+kF}L2%Tj{?_EYbmkR$Qg*a5o1IRs5t| z>!<)2Wn``uyx%7nu#24mjj8=rwAq#M*VJaTz%Q@>3m219Imh}Z;daFH@!q*Pj;uPU zdNU~PweW}UY5s`Lqen-tpFsh^9q! zj!)!U<+dh499MiL?ZKz#Xef5$qr zb<98~>S!*b-RF3RA^Za>nGFduLH`?%QfNucziz^UC4A%m?_3$%hIQJSZOVo~6K zwjYG!pCxmyn$IiwID{>uM@Q?m2F9=r4x5Telj=N~`{qpJPN{%p~p^7xtikXls29LQby z(wBZa|3<)fPC3686b#=Z8XKAYoNa-0{-`5wcwMZ(6cBhdOs~Fv9fJoPtaTMj6^b(t zYo|sB=AlOmA+@)&4~2C0FkzhEZjp`yG4MT#Dpx6O?QG9MJZ)oBufiX%0;PDxmOuz@ z0U`|_d04O|>vOjHZ`E88+*`C!aVP><`hnyVoS@bbCDcsSos5=-06w&!7UkniDW&8Y&FJ1 zo%`hXi_trX&r4l-l$FH@B$~wsrLfRj`g#>k-I^cCM^SHZG&5*a#_}4;3Jb>K`%Non zGQuV2jw8to4*Ok!yz`TTb&Kpt_mg6GOiwkyCw-POcd+rM$LMlvlJ>(epkuG3X3&Yd zek`sUMTu?6NK3MVc&6NibB3k#no8ocwt;+*|1s?76vtmz5X%R%KM9=~U~x9F9vJ$JbuO z^AsFxkjCObBo&^V*Mh##DNN9PimW?WoA@N)U8hV)Ez+}xO(U98PKFbM9&@x9Zlj%= zX3?q<*Vb`(cq$k(f#m~qTX|qv;-#q!Ae;Ei1iS`(C;9$)Zu`RTs^t^kST=7E3ybFa z5cYGogc8LD)Ng%V>1{xi-Vw10JPqkpsQ|N$|9n=b>qVGDLQ~J;2ZUZJDHHV+#QYuSFP4;^UK$nrcq158rJj|_*C6S6t zH6tV(%nbaMcGi0$B8=UD9`j8>_t0we>NUZaM{qM(&LY3V4wjqe(Vh1pW*>OF?{kuE zoHBlt_&Flax3CYpe|cU>k%lV;PWj`M8S9S{K9$w$3#7K+@9(T##LKI!FXkMl9UdvO zW;;b%osJVXHv%{q#nEW9HHAs0s%&?(LqMW1(wGtRrf=w*heuPiS3HARQ!e2xk{-`* z(ZAZnqQS#^g^76^kNq{#O)N>bk1t(CEaohKh9kWBXx?uI4NgRjxi$n(_h+3b;BBa(X^%J7l-7Jh zs($CZ!97AN`N(cYWa!4~I&>x;Ti@B@n4^L3Ct()N$7jxi6XoE;<4k5>v4l#!WDC?hljJP8zCNJ*sUSrTUWv| zyt`*`Yj^T{W9$8cmcr-6)}+JD#OI{LJX}OSbDu0%8)>|#!?hoGGh^wt3*m3{IY!Z< z2j(#oBe`B!oSpB0a^*g8|_~Ccnc=ykr6+AHx>4T+ZX~u5vRicd1ACK57(6wF* zJ|7C{?AGgh))jM%sc*?%JG!#B$s#7EaKPjCLkc%cB69UwefaHl2V$#3TA>J$y~z{f zwZwq%8V@4I=8zyK7tm33b)1l*5M{5JFAP!SuHEZtCFQPpFkE6`RIkbmcGsIRS!u;v z#4@%R=bi6gpZZt^U-UQe*5eFn%C_xos{`6UDbh-e(jnhETNxB-#GUW5MRT;zzP6={ z_ZZh|-JeT}^Bi3i{5p>BJ4UOCc&vS^qZl5$)OPro zsFjvaQ?1J#R(A!;e{DeaVlJ=t6j&b)xc~6kFbWIQ>kZiowq?u&_i~jPg9~zX)(!FW z{ogkR{?h}DF_HC`A$4@fqG(%(u$0J1G>x!IAO%f|-v~9%%tP{d0q$g7xmkQ66Y}!m6DLPTUt8Z*l%N%c=Cd z9pE2eskd5`y9$$ucoCjTZZTGt*&=h{3zy$PQ-_4r^GG<#ZzXe>wtg|kc#azudDCBd zFdzQfWK}PRoy34yXodOQlmG3{L#63dPQTM8(X(c)4VmA(NpvOBYYJ}oL=J(0KifZFf5d-idgjj0 zoI1DPlRAhU5Mv0pWGuALSxqc^gi6QuwMhzoLSezzoAF&4?m^^uSe+$);d`tP{4@() z;JOm{5M&))Ddd-Rx&*_^6BZf^wLEf*-(N;E6psIK6Q_<0+Jh?@Si>-LO9nocJx}oi zZ#Dzlm#iLtMO)$Vqgh0`lx(BXF`)&@4~BK|hsgcR3tdum8MJNG;C+;?Fuu0&n88VwG zrR_SuX`$+J7JUESGG$lHLc=v}KG_f9jcvJjKJ@VCue2eW7$UZV+j>uPgCzGaLvwGL zsd0}mJQUf>{&4O=PnV{?p7h;zce!T8VTM#*X}bnv>%xS> z^Xa)l!gl_N=BL~5cftfrCOFa(-15OLo`t9b7o@~AVydumIOzwnoZ@979$yOUp;RY^QEa7hL}L7yw6Oz`&(o&OV? z;h$&5a~`P@qUM4)l9`3Y$Ffn++eceFX$0>O__7j-ng_oBPa1L>8lH#ZG`dq6z;zka zZTOxHe)QqghL|%K#ZLs?UvaQ6DygezAMbD5dRdDR`pxW9llJ>%0)7D zen@B90rvb|qz=KR6nJ*-B&3e>>O|iR_vlhr?qzk^v>nf?WwNE5CwgL6omej1!&|WD zvx*KMpG=6ni_#(6Vb|Pm1X0!AUqN(P&<^Hq+>p*{a4#$3&(YOn^&T%sEH|dweo*lmR;4s=4PTp)-k7O)fDb{$)?yS?w?FZ?=tMmJ z{^^hW_Ss|caM5hbZp&OA$Q$lkLvZAxmd2CtZb!GNXHiqI5jn6C^r~FaT5FmL5sNw( z77$O0P93aYGtTrg1woCb)$s|tf8HqZB!0RBKWV7+r2i8R zJOX04qA7s!G17=GqwRN-?#F$t;G9@aztR%|Nc&gIgZEh@<9SX452e!<-V;_=%`dLv z-CDYo6)62B@4~_*hhp_=3il@L8O_`%w9kH|57CQ{AcrV6Otbe|$Q2J{CybXe7~$_0 z^vYG-5gu;;9ov*0MG?E0{h#~%>xLZzpdFgR>cKrNStDKFwL@*nlgN?VKE>n^b!Wnr zwBi3`=an0`Xg=7#h?+Cg`29}XMT;$3Tewx?!c`=bjlfY}(X7C>XPbUT z{koTs3)dWjj`EYjWNu=Objr+p&qBo~F0=A&9fE*O-H0p1jB3DhADG3Dl`s=cxbj zypy~5Fw5b>b>2OpGyO=-QNC`U^^+>6v+q}yPaKlaKaLzCBp&hwANGEwzvEX=SC#%g zjYBw##(3*pk4&|%o(nHxiV-#!o=MpglhpMHk|XFHS%1Gucmu9?`0e zx2l44+h&a_+_bu!O2&@uD>=RUwDlnK(;bfPFH%o-sXtejg+HuZ(1}f4HFdGxC0inS zW38kdeBlOvnPC|+{Vue}i>C>fk zSQb#O1$MQ+P(soB)qAo&YuI?nMXG}9HOhj!Obc%7C3cXUm2MvbP7*JhCp`Xd7rvL+00-i2VtIhW}6XenY6hKks#HA=J1kj*!MAyV&?&WS<3kv!+>{UedjYbkQU@-(?H-(?vgjfFdz zbQMWbjHi|P2fq@^P^+SxbmqPQ_ohRtf)DA;s6b$oz{>d-v&IUS_B7(E*7U5s?cpx3 zV?O!&Uvpuo4=a2^_U}{*gJd4~Fj(UNuPj^_vl(WenLd{N-H$(z$#^Lhc|cg5hwZB- z@-u0_SI_06&B(~&E8WPO9YM4@k=~;VB}I1zgX26ecrqx~U7W^`Sw=J0S`tDfOz1vU z00y>YT&AVrwvs8SvD@hvf2rSKDF5+3qe`bhFIzQ`?G4?uyzqgl-5!`|c3HR9;Od*V zG^+TJl>{0OdXt4RmV^GCB)C^I|F(+3=MP)+gj7bQsYw{yo4S^q|JokE@ASm?qJm>2 z?%QYl)McOgSVY~a<=&Kc*AioLo9{VKV&A|(ERslQDQoQI+E88js-csJX|obsvDtcC zd%z1alFUf)ughVOXv)%=a#G(5xKk0{nU#4d0ulYHy^PbPZkgt=#Dt3n!Z~-lW#r0^ zvd+ruq$<>6Pv__(>m2Xajs&5iMI&PZWv$O4&P1=^g00*a(gP_L--$_vs9-h28RC|h zP~nOx!Wl)aeeyeRk92 zZS|Dy&oY>b(=NR-$wf0VPl6ur?jm+v=D)JoUzsN6m8CN?RFrD9*moN78qQ0qn}80M zLX^d8z64(4x7>9aU^~WtyEAeEv}BK)^bvE+&F*~tVK3RY+;7!iW4(JJu0aX?V2w9~ zOjm!k#E?5=UX?6M5YqKR4h*ZcG?no&fJm_Yti1Bhqm=*vk}igh`V)n0}C^U4lVV}!$h)O zgT4I)nXde~BJJL8h&!R)rGLBnZ6?3Zh4<_)PZRRu*)vVc+bsX2YU_B-|2cWI^BdQy zrFE|;Xn3vrPCr|DJ6AQ#uOGUuRYDs->{&mNrGeVtNU6C6YkiQmfAje2b6m2U7Y=W7 z45aoXWJpl`eat=Aifaz6aT*x-EA*0X*7RsT%RWr#R+jDDkJe2;(f+8BRq>Mb&e<>S z8gXK7nJ%yQ8PrhsA++xoFRa8Q>64`78N)eECeyCx_GxfWcH=AAoK-)EfA?|J9l-6xsW-<$6x?s)iOvLw0 zALseT)2mxd%PQ=v8gbWl4s4~z%|#DJ4bDMJa#7g6>MSG_0X5LfzAm8y+=ak09s{4X zV}?;0G7}kFb5@zzW~CCL0X0jWjF7upl7+CTOrr}2ab5{?brnrQiw@Am5R~}%iVC+P z>}K5iOH8qz)J`L;3ua3NSvSCPKOkt(XH^df$kjRC9(U?2dzvA?(`^&tOzRs{$Z(?T zp^>kKoRXh)7f5`3u}TxW9op2!Z3>R$ES`RF1W1!} z$j8AEvvNU#L#aO(&C?B9XqJc%V7j0>a;`kW5AxW0bQM9dyT4B6;^}F8-1Ji@!GoS- zReXJ`}G`-96(A^Y-ulc~nn|9$5DTCj*27}SH+LKzxw(N>VyGde7HMABuY4Clw` z#U8=++xkb`GcpV-0lUesv1-a z3)^=`$%Tc2(2G89+vng&H)L!}!6?suC$_xlVt<4fqp{J1g0h(%(5u$o^Lh5Rybrxss9f%LeMGaoceUZz zJiLP*q%e2low>hq(&~R+j`5CY4Hn%pFf__HDb;y%U$5s|pkN z`zvf=hkJEvN6nv5l;$Zu-P8Sr$D))R_mwTWj;|(@uV@f|VQanEG^t^jH2i&^c@_Ci z?(v5hQaXx9iqp)IG52C{`vQ9Jb7gnrvQkijWD5*h?h*Arq6o4zO6c9ej4M^mkf(7q zxAL@akm~WiD(+-#ppyG+Io=~@>XOnf<~)}}(7%63`39y1C)Eb6VGDLBX(M~f+fdS& zjTnxnUvVpQ`x5wNC%S}E*NjF7Qb7WBV9{N9$5VK*Zdi2%z9N9=2J@T1h-43{tTA<{B1U6SXzf9R4=u8%Ic?&u+iv>@B4W>6~G6eG5h? zK3FQhP<+0o?v7}AVXp@!b&6GyD|?z~z7$K0}jz4t8|l@ipe|K{QGaT0Q)_7g$e=D~A=oZBp8-H`R8?$2rWt=Eo8 z9GGuiY$~WnLzjmr3dQYxHL)v*?30`JzEic9YI&Gv^ZOJDd0HbEzjzO%D&Rvhlss4{ za6EIxm(+{QMwD%PX&qf^MM_V;;tK6(|EWkSHVW_%wd!+SD2I^G##&u0-|Le}SgSq@ z?D(Kb4jHbzQwu$$yJA1Z!1KtWE#wxeb*34*kgp9;FiS|(=7V&Rzh2!^p=#UbGiLCkF4yweLOQQUw^A2 zWl=hanOM;FSu{uCeiSX?aN8T;aj{O8*0s~J|Gq1lZ+V=>06Lur7Q6C8Vda-TM3riZ zdq>eud}4X%UGdeLeB!OwSx?lI;0dm}lj4EF`6Kk-KJAV& z)(7IHrr>?0U|mqN3us`~Zlu5h3Ym>^itHZd<_3lPMKCjfjrdX2C5jb>BQgF&*x&i49+Tw5Va|X!0 zj*vTK^PDAz*H%jQYvFRvP~h)73znr?qC$hLBWjiAZ@}%f1KX{OPS+l+d0_(X`5}P=3;n$MyVRDx#7>#x9ELI8_dNm#u;@MM2Z+Ry3 zo*2?hFV=RkX;+m#?GF25eA~Ev#Ak8^3@?_iZ#^oZAVI!=xe1rTy+Dki(r6}wLS zk*n@gyWxnI5G=UbHka>eqS}Rt25~s_V8VxDs)_U62FX%0XBA8LXi$7}=NA(jW6wJ# zvkK1QLr;&&D%J8UPOHbjjI2)-)Ineg_1~0ypC~U5+L@VOd;>jB|eC^P1LL%YEhGFr4Qruez2UM}z|@ ziy=YX18#2?HLhriC6$ZmdlC*^6xR=1G|4DKQ;60rK|%-mC)Wpx9m{mkj?!yySC*SC z^>rQBS1ikb@0dw&*AE?wqo840i5N(#7Q1;dG|^!+7QM4DiXJKywWpkZKtSky(jXL@yJ}?QEjipaF=5~&0haRe zWB)}1^MOwN%D+EdLLEh))Xh$ zuq9{O5laovtrmj{#G|s|TKDvjl^~C3Wt#aP_iM3<$*?nS|2wmy!?Y&03ptiE8sgX0 z7-n*o4~f5A5hUF4Q#a$wRLjljVgml_b&7G3zto~+z*D`jtERKgDc$(7ZN1(NOF`}y z?o214ySpgcM``MwUs){`^YZkeU)9vki3smqHqIw9n7YvKt}nu&bC$YFSv9$E>D_`6 z`Skr3>kg{VyPEG!>u8F;2QalKtwew)7^v>Ygw93#`p|D+N-9~UbjtoeuD&!7%J+NU z7DOQ;mYK!N@I(>upL34e5)Lc;qvN`2fkc3r*8N6 zhTa?gzakUViZvtTcYkFrxY2rzR?h)pWQEPD=Vzt=gSmZsZr7H31~Uc5JNvuWvj3A+ zJa1$RRA_Tf^v?@N=v)SjmEyZeB<}ON9%JcyyLxr0@|Nw7t;pDKN{1PJJeM%!lxq*N4+TA5I;Tv+_u3^V`merH-2aUo+z6#yXdJM$ z`STTn51)F;V0*WvSW7}HYU0h$tFAP*^YX)bn;8)?)h?LTp4#oM@?ULk=$&h&&Hz9H zKIBBXtF*kokeQ?MqPcuk-K?2+os;JzPo>T!AU!A6tlRFB5P^Qeg?BIgvUu|FKb6B_ zZjINkEUFG4LMq$trXEr}`uq$eveUYtOa5F$SL7$kiNK4n69BSI&wdY*t}IsVH3sXG z%Z1gZwlA7GBy*{NDE^iNJIc!IYo7hpntFrOQxA(f^8fozEn>lZr;$$&%;r5M z)BgBeT>gH3QyUr?>oA8Zb49pd2IqlFpBV^_$AkO6*-J|mc|dT2H90X#kK2a^c3xfr z(-J4%aAQ9tjhMA1jI2-oYDF_o`hK3SadJ-hFDvxxu%Nuw>-#T4Q~8npouQ+L6kn$^ zd+^Ob>RYZ_jm$B>w51eV8RIQdT&@GxelOVP&9v_bM@rym59(GV*LJ+M3msjwTC+IN zD*n2n-(sUB%)7djX!m)YL%`{F$y@=$dd~}oKiF31bOzhoE%{m!QG?tSZBp$v@y*q~ zGCfUiKSkP`D=)`O7-~x_4y`#Wt4*j52j2zCnGAb>S<8&NMs4LhqBdrA5#PVlLzJNj zz>gb98ODm5wF$&t3)rl_MluWTI2n7z{Tig`PpB@)RAk)v{lj)@B_EWkQyiPB3U`{4 z>hzG1EitbJk5;&nDk9t9J23pm+2erij=h&p_gTMX3t5OC#quu-fg2?E#vNU2$}5)> zd{@pHWClFcxn20yj+1!Rm3$|-##Y6y%E|UWP_CGrNt8F5XZj00>KAtr@Q#-8m{ecv zXzRkW^+h32fW;@XKB*C*0~Uytr?x!+v>0!$vszh|Ff_bSRkTtp*5e&t`>(Ly80 z7W7`-*&n!h`@-qTTbGPZnrZz3s~={w3$kimzW+9qk00r`v{7X&5!i4 zpk-o>@6~BpMK8k#QL5ZwJb53HzKkm|kDn)*`^LaX zvgMrc14tx~`ad|t-}vKM6|bXB=H~tJff^XkCs?{dzd>O|DE()7$vwvK0g1m4-$fM7N4VsV?h_ zC?mfxfKV}qU%*Dc=5@{NBKP*7N0c1U7D1DgFBCj(CptH1_DPfKs^`MmSkjxtnX&UD zU220Ve^@Q}umaOAfxcAjf7I)2GA}c`t$WK9lH>WwDG5%6PAeJ71)(!fNw813Sn6W3 zaK_>8PjMf47-~JrpFP6$E!?PDHrD|cTV{nZ)+Q8KW#G$A1J6Drqxo%(l z5BJy0$+V)rym?Y;uT+aJy7K#%Agj*h2QT{Cjd(mxL&O(SALtguBt(WNao~$NVSyR6 z1pWj6qm=D)beB4Av#1B%jWdfQL4 zC;!Px%|V$sfKpBDp7BNl?xz=@UhRuL7vU$90{n2d8nwjUD)U8yWFP^h z2LVFp!-tp6s(91uo)zX=k$ZaFk zpKZ>EuoDtBAX<`xIEU9-R2_F1Z_d@{38FQx(m~DZ#i)4x$hT-PSDG3C)pddJnZfuI zGhU8+f?O+3&xH%DEHXf)EZI0wb zcQvHShPqXF?fhCW>Ko`ejqa=qdTh4ZJ?6tg>|k42GIk^^gx|yrW|99ycot?XGh!yS zhXp2l-H+I=d{Cj0Us*Z6iN?NX&E8me;e_C;vI2!fx}aie?IVE?*(+3b)Z2gkeoAk+ z0dyCsy2#nIBf3EVH|$k-;H4y6!gR&smW&)s_$%5Z|37q|qS2HP)Pjqui8hT76XbRG zuuRCE!peA2xJ(9a^|D1T$I0uGO>sbldXQfu8{cDsCib?A1twpKTI9jxf8V6wi5V#E_t~(H|1p*S2ZR< z;H4Uu(Vs;kpmq#luyt<10?$y4_ph$G+@W`NvjVQ3f`knqL7x8$z|P4B@i+DW<%w8F zchkb>h9?e#AS>;D%6+RM)ji9ka|+M<-)xpnG9ahl_`5#u(a(rhjTzr%`1If4n5=Qj z?qlRDtt+_Gcyyu_JdM9|>>L6dT(lhQZz;o(XU zEY{dc`HIKs<)k3rW$-c8-=Rm?qA$2R_T`cS@%(~ZvNJC4+60Un`tN@Az1DO4+MgC1 zbr2T#aUUeTR&#q4Ai3DH+MP8vaNd>4x;vIUc)vKw{-M! zy+q9HCc|MvVu&+uKPE?rP7^^;Y}C zlUz%>JPu-$CO75&eJDUwho}h$^PNR{-a7L9b;E9ZOqS;+vgTzerRGTfDkVGi24)au zwJ_k5L%>yMxtY~*9^@hBzAL~J%{|-X+l#w`PCnj~#1ZM=b4x*%=wsWv-zD<|>SkL% z-oMZyeKL7Xg7u?lf5P=YkVG~c%d4{-!f@@QHg8Ks1<@L@6UH63-M{k3E~YeDb}MuG z!m#%qryabT;jv($Vc@wjU`=h2E#>UXT2~sh(X^ zUKc-+%IM0*@aaFP!8w}2wozDZh0BoEIXpF5 zon4Y?_vRhme<=TuCb3|_+D{$owhk@bS{K?c1kw?ZhS4r@Ia0e*^P@@}ms(CJ^^W<= zgZz4Is6m6Oqcc8-%1Q>`4N>CeJ9>b5dF-u+5b(7j3F;&|B5Ab^G&05kaLHN& zk5zq$IB7HuXrvD%)tl#@ByD~BST2+P*5Q>0X>d@%c>52+Ak3JdP~8^ufv2S(px9 zLyFAL*&qe^0m7zS(}HC=&!9#9+G$FD(oZzk9~1m=-L+F!4umjiUEBV`(_* zR>YY7a^+yX=kkibn;I>3QBjxMKF?Y|cGL^;$nA)(_H@m>J$%2~N^xfPjMe!+DZ*E} z!Hizqv#p8~`9V&Xmu!CvpPo9}&OiD-)$zsD^Nkbd@>Q<|HfVj5S@SrvRx2sp4FH^-$2{&PhDtOTlhwY*A}sj&Sn_ZlIRaeioGS}+g~{n+h}VXm_Zv8 z3NpmUgw55X?0(g|a|Evn|C>8L>Hb^oFni6@ieVthOHDl$j#aWI>v=(@Pjvn^$C1OQ zAe;A_u5UMep`|xAU`Jv#b27!P>gUxEi*xA&RZ|6Hq2pbdDsSKWjKfLbof}5Z?CJOO z-gdrM`jE~nB_tB|?>%S{4+bfanj!Msn*!d*)g``_(tGbi&oS17rr&x{AA(9&)XC*K zcaHMGSWj7W>7wcZ${37{i3WX7@mid}SI>@ny!e{JgDGrK}vVD6t?QBk#) zt$eA;C3cc+Hi+!=-H5RilnM-<#%07BU@Ceci;DV ztxN6P@t3N7M*T9_H>kZ0 z=kmdAxpyz$dTVbQy}X;TF?S~1zm@Qk&0DO$4ea{;QXmGy+xTs&gM1HlgjN#1TXvQC zUvyxh#U#bkJUlmRLK>w17iH z?}VKA`s4O{C@F3r^rmR|5!QrvIt@N&d>z>csJWdo8-`j)aZ{_FjbO&p@}7{G8#V98 zjr!W$e(pWC8hN{^i?PiU8XTx_?_KWSAHQ+@c;hOypRe<~E!FfmUKr>SSbYq&W>92& z&I~DqCy?QrG3I-R@%W}&m!B+mR&xaa*c_AC!huc6IkOh?tI%b;wZ)?9Uj6D9@2t-m zUKg)EGXx26`8=Dg(gXPJnX5Pf4A3(0SYc=MvCjUJnrd7)q0t$R<&d>dKh;th1>>Fs zUYJ+IczouuN22Mymt=8fii!QSV5ekpCE~W*?5VOi zc))Z&;{l>)DB}3?H6C$h;ho!Y=tfsNL?CZ9vUVG2Zt*M1LZ~(Pp}M+f>W7{sN_82Z zkAy!+xnmHHfj*j3$&()qfy0+RSyj(vDLM+gKKn0Aoeiv7vl42(Q9LMpNcOU=WlN>j zr6}qfWyV(T`U-IzoG~Ck`9o@>DAv_gr}$IG2fMTax=yE zSUWe@@d*w4optwC(p6_O%@d=4)yp6*DtZoY>s49D%I=r97T^8Zu~eA5%|!{Nb~{_L zea!gxAc8!Myaqxc+AiUIMbIO*_gc!L9!Fao2bzgbI=gzfHWo6bKyzwErSP(c(4@P< zKtQ<5l-@5X{RH})7k4YNTWMRR10rUh3C7*d;;rA_N$HMr$@1F%mbBM#vSR{M>fMmO z5J&W7%(lAg1>RkW8{9>Hyg#4i%eyk=eB&Qj;GE20E75X0s_?kgw!!tzSJ>0CF5Dcp zfh{yw*XSAz&7L11r4Gqnwj-3!!^X2$0tw^_qjI(bU`dYmb;rMXl6w>6IaFABbA!{F zGX9O>F>WV;w2XLkrTm!R#1Yr6=L4$pdH27+r4-z8kHnejc!o976d%7U{M$J+7!QwY z2Sw!^H`q42Ui>QcG}2ipI(oZ5mG0Rcg3VH76y0PUK!ET{NsUd2>|6j&Tb2$&HRbVA zi133`+z7V8W$-FZJx3QqE)W}C3arn~jzt!jAoe5PK#p;8x(nDS6|Z>80knW3YLSPu z_4bCbG)2(8`K))vS(O45bj3U!A@lU#Iyz)fBwo#?SR2ttrky$~X; zDyyo1vQKCr(6_DPRDb^v9y@iMAwO=_yXZ4<0prH>aOE`VaO!-b&gd#O-}FC%0vSNH zBV>M~bHFW+mPL2V16bzSSfDqhW{ZHRPcd}zx~RqH^$+XM6-VxPbTu(SPeF%Dw(p@V z)3>A!L=!0?GoHgMhd3L0Bfe@Hjg4#nuHQj#PBr+w9E-H)Kera1hY+FonSpx{{oTAqZoVo4 z9Jkv;OU?OfDCvmwo10?{+il<0Jb6x3iTxoVE4mr%y}Q~#B%eIYBYixPXWN;c>ga3l zd+`>P@O&l$Uj#3r=+=Y|bfHLcJ>R6w zXO9A}^RdV0no8R@b=^Hi@U;nbEZ%V}%=50wIO73fUurI`-4^%gy8rjfX9K_QOA%!K z#!oYe#Au~jQam&c*wiw}zDMMht5@z*ntR@pt61$@cB7H?$P)9wi3p2w2?i_kCY3vW z|96TExueoPP}>yavA5P$9C}-cq5@-sdDV@Fxi^4WNS(4(pJwY&(@-YHZp^}JgiSlDqB5x z-t%6l5}GObB8>JV>|ejG`w94U@8fKnl~}iPP+LA{tCjS@or%Sctbp-a(rRk`R z>>j4sZN4COW$|g2tda+KXypQ9Vn=63Gka#xqB)bTq2?c&6Akaf)fTL>oVK7Ag(xp_ z&D&ArxoYZJ@5{UMH{5@Q>{XDcGZ@z(O}mJ|fQG)>ERTn&#cI(UPBA@(91QMK!KQGX zbZJFRAn0bIAD1jyVhHN?Cd6@RYDH=b-EKgoqDr9vkKG;Nk9(}=t6d$V6351S~@$bWHrH4lQlrfb6B(1m64 zgr^61uH;C-UEzZom1Ry*b0g+>LV%{_%P%g3ps)>2V{k*pjG1OBgbN=d8BuF81FD$>cMglFO_4t6prxi3al>LhAd4HH3=)Sk4sPKkESqFIH{^ zL290Wa-O?$*ly8jXj0uX*KUFnQW4S~vmR60#l64Jh`_?XwJ(6Oi{nZ(@4Ykx{NCM! zfp{**vMeS+4RuV_xx(!ZMLR!Jd}P)ZOc4+O(Zk{d_Pc(`byrM!7>6e!WIKTMygxT% z!Wl^Y!D@jU*V!U3-}@W6hJ>EfFuW37N-i+Dxp0M zzs5X{!wZaV4nqs~*XQy}-nSh&=Hcbd{{qkW;_%&{93A_+$gMb-Xq}G6go)Oi%)ctI zIV+|r7FpeQyO>lKWQSn#ya?q;kVRAnH*gs5L@m=OK7j;4+%^WAkFYv-vKA_nsUHH= zwt}>d!*v&)aOh$8IdvYvcDlOl>rXmSp7yEleOLZM-Li3{QrG5`uy=*I8^Kni@ewAR zd;^E#bbYQB|DCdfO&STErB}^@Y`JaYuN&=Co28!eBNc3)x6HW48m-sfTRqQ~ElttP zP_hfMLMxeCf~_LEZ-9qH{SVBd%9<%_Jq8May459cRX(vlFS+j?mz(xE2)FZnL}GvX1N%Q{o{uT&8c%*}q7zA>Aw139 z+l>CoiT_+x)^Dwr@u=_Ii5R)@wvDD;)$!R?$3+=3mMP0FaOOYl?gLN3H``ZB;jc%JGNeG>N&agX=NQg#8!5dsUY76*%#^7A{be7`bc7rpqK?PE zp#`FPaP-~HBKmIZ$j^G4b1zC9%Xt!P-&>p_v3;{ST098z`vZ2XFh%h{J?*_Yu|B!N zezU?!<;^T{6-MO&3GZkhU8%-fWXjfpF;-bBs+C}hy-Zq_x)kH0-D0ohTyrh3QUh4Q zz!G?Tpn+=BClj4p&n&XbIH~ zK~e?FmVN!KDEpmY>um#Zh)rO^$%RWbLluu`r#~(gB^Gr2;|caB#))bNv=v z$ZNJP-f;7CMgEB0bybf;v0)scN}?{8%W_PIoc$zKfYR#J=Be;8T_KPIm;a}j9Tg|y zuCEfMOs#A^EVO)Qe>jlJD+YnixSqy49wPdB1o2U}+?szpnsoV~U6upOu8>61L zOODRu1}?A_{T(MQm{~fByVsso8XS|2SuWfC71`jXVHkrwTjA#Nx~Aksx6;0ao9KvR zrYGUrX|nto(CNxOQTt8AomE-jOj~?DY|Y_gGL_-yT}tHX%|cUIq(_gaFlhA7^BU{D z5y%7jCbj0UDIITmDMeYqC~Wo>hHgG;6Es`UnlOUY?C4DOUs>JqxqYDvBhD~US@e%W z{Zu#uP5$1`ybp#2&o*^818;stm>)L~$=7yS&adZl1`*=E<6|a9QV7Ham!1T{m-7Fj zXr_bg#%TQQNHC;DP{ly7rZc#FCLf`0}E9$;is1c1@9h%0abo=bv_j`fgRx7391Q;U#uA6CdtNwi2hVQ8vHxxKOr}*$&2NM3Ui=?Yrr%DIB78>jp5>Tm4XT2&?=v%RcGmAA^p>lrm^TOlvNV@nncA65pwE4jeK zN})^j0~29X(>@x($RKd2ttDV*49LB%lpM}JX_pE(`BnrD z@Z5uxnyn$8+gv!#8R>HI{ATTMwY8>tpG~=tNP&wkk?N!zFdoY#iZdgqqNX5f+dEn0 zwZ|eDsaa#H@J|o9j+_jlZnw|W_YTWAx@$_W>s(5qPKG#B@((7|NdG3^Sz}(t2pvLb zW4zVTXB^C$BF44hA&=(1*!-<4VNKE~nF%afP4GWYzDBwhc%D3XHi1^#b?xXvPAS>_ z?vKq_SP+qIV(iB>CUDt^zITN!8i|U*Xv$m5VCQu7Fw!t(FWpmCT=QG(de}SUC?E!s zC+#OEd!c!X)pcZh5Hh_OkNBlPif(|Ngtu6l|8-rdz$^ z=E|y9^r&y!H|h~lpl|HefK-lu?>*n2XymA_Pw#lpJ>ni>RPww2#~e+AElaZ30@#Py z*ee4;D+Jf#pO)n*v3jSZV_vPrgp#KRs;30WD+~9J87_kYC2$aJz|Hi_rOP47eeW*!EDXy#C7S@FPdPHvf(+8|u3T|7JPjdRScbYNYev zyP(TklEp3e){hYpcIES(IyG5`R3y(3$_mRomVdsy#&g)m9sc}iH0kMF-`()^i`)G{ zCwTHryh4le+??PS)6{6s3>rQt+~Ii^_i^Pk%No^lUt#0NH)|3@b>@s%EGBDZ%Oon8 zsOeoX&gx8sb9!#>{^E^o$O=S-dkl4jIzKIeG83k1&LSpe0j1RHGty0k>azsW$DW*t z9Gp=>=2{nhy}O7w$9nVdlv`BOqp+!&VW$FnaIxln5UD`&JV7e@&~l*D@XTs~ALC){ z`4WcyU#IRLZ}+d*gMI3E00gKxT!$*d)vi{Xd?JvzcA~keonzHjey)%v=5nPuXubcN zz@N%d-KH~aP2YOb_iy#n8^p2(4QhE9^_{G^rvvmwum&{Ebq|Tw{I1rSff1gCXjv6R zNz3Sz}(bNF4|)yiS^<{)hKcy_-0jE9Qr)z^V^aAWTg1Z@ebRM7_x%%WEs$ z@^HTABH3xf;Y(BqH;0HA+ySIXQJQpfhQ2N&)Vq)#w-Z;|;JQ2uE@1?mO9n-E=RgX! zMbw)F$vV%tpilTIr&Aw}v$2!x2q{m{@{2w4IG$-JwK*osk92Ri!D;LD=EFsN=UqHh?ZgPHQn2W;mO6(7DpUwGTJ`N<0tyIecsYCWt4 zH}1HM0uxz%@;N}&n679W`H8HSAs0CN}iYzM1b<*T8KcxJdF#SnHn(TT)!^IHmtfHytzoZ zeL?zs+e)3H;XEi~AUR5H zOi7J2Y%5RoDyxeGstb)&J^#q;48uX2Wi_!KQWA8kGV(lZl+BBh^JuYhv-uFrrJ#$H zLm=NGiIPf^eop`BsoN=P@WXFCMvuRdcyF!#GrR*i6;CO_9i)+&+Wn}{fioX!qW@Wk z5p2SMJYg%=VjPvjnj@I68dC@(f$#$ExeI4x}o1XFyW#Y2`im{hK^r zcJ6Mut19)!PCt(m;y@6N@c4X19Jj#P4!@M+Vb@k{wh?6`wTysZq1vp9N_iu4=5Xxnhq}jLsZzuJkCCdzf zuy3+VHNJxQJzl;eywX{cKK3f*6$2mDZnW#H<VEjnw#rkeP z%<@*n3BRG4cYUF7o`tsnZa*FpvbVaxkdZhopg#mkg6r?}DA_B6)L#f9>iU&hD=64? zr_zbA%{Hj-_U5XT%}z$n#G~D#cbdTUk#5w_0O`m%-^Jw2yylZ0qI6w}?;i%`%W;j@ zVd)g1nd?h(QGm7s5P?V8U{d!*q-I)o74JBv#}saQzQ0$A|E81&3(I^=qTZ4ID-C-o z)D=U-mMu>-XO|4NPN{4)O`@wl+g)C?YjdE-cew4(4?kGnqX7FAf!X>Axo3~zOAq~; z)0xo-$uz}4!9w%?W`XL-0mgq+3B|yE2B+hA!PcfO>haB^w%1?3vN$d4Jh|&~d9kfJ z@aR#X-h_&Kk#C@IQQ$xc%knWla#CP{WFI*>IFP9qT_EN0+b4`nVlL|j;{Wn~Veoc% zESE6Gv_`hF4T}*uY-gjcUBiTdRP@lY6Bme+2i*ioF5O%UA|JqV~)*zOvb2ap2cVPq>#DZSB$TIBIXV60Yz0bQNax z>vVTy&`uU@E0Q+Ac;6)gNWk#c(*;pPRa7T8)2RuNJ~}aEp*>7RcX>0 zr|GrRBX3m@dvap2^18$6rQ9nIS(49NGQ$Iu-a9bu7#R}up*k7q^d`IICwBgqRD0rJ zbNGdGMG;)s+4`B!yo6^9>`?GX8T(F%Pn*qoyw=jP273-@TUX{66*$EEyQ$@M1)KC3vUJLOCKZ<|> zbF090MH4^rBJ|l9^!y}+m8LW!!V;-7EQ%NK(gTDF(WCv$D5(kIKlB1yp^e`7Xo94McT0ah7XYok(~%6dR6Y`!ddT*?b5I z8x1tB<&&v(&(2Ixcs6UucK$DL6?P;0e&KmwP&QAG{vK0A2YvvxS+k1GIc1gFHEcsF zpP#P@Z$*ljx6X)<16caf=GIqKug{hvD4&&I)V>Hk0G)S)^;Rs^XDuKOkRQUQPwD-Y zvBsR1RJgvU0e>IQk{istE%I36^EnC24#WcxX^g2 zn|TfQzf#VgU2^^~&Lxe?5&9bAyD-#}vncpajQ6|A0A0^YS4cDD$7carliB()=*qA5 z?`IsgUVA*HZTdzdIgq5sJGlivBVtx1446$yo;WhX*D@-w!$4~rn6IAQo8H^ zQ4IA!ZT&|>-6Fc)gFa#Rg~<23tota+kw;rBqk;oi#6f3BeWY-tfJ(?J%XPPQSO0vPlZ6L z+U%E{obPsx?}y>PaE&-Mx{}{tLHbjNOW%)k!CGThrbO?l zZYJHMT1QV2TWd;eEf&)YD!{Ex#d0fo87CZ5VQ(wfmzocHKpBBuroJE(W&WnDc@QXg8ZVR5^~+WF@_ith!#Hnnd4TM$^Z{-A49N_V&!U zI~sYnZV#5ke)=bjMg>#&Cu|#2`W|)$mogMj|F&&M+bC{OO81IN8wihdCk;d@ewz|q z7w5vZ;aiuXE6$?brxxJ3oF@*!B;Ic0=7%p+oVc8r5AYDP$3?tad@)2}`R!c1(nkVT z8>IH}lV-WAsCs+yr4eZosm-~(f%J-SPo2sI-tA!Km{l96!p7AbkgTw~A} z@N2wZch+_cifEvJpJVixJ;YCeL1B7ierlIlInl{`GOKU2l7r`k3%k_c3sJI7 z4!@^es!t`8Iy(L3j9Mb1xVbM0J9y?YSq?ea-QLC4mU`oigAN|o{nb9U^7@B|>VVeT zsMI+#IFqRiF3lLgXHOM<2ojaJ6#!G?q%(N?BtLYKhu zL7M&>&Z}RkRXybTO)zB!s{4%FUqkx2}(aFGK65*96e2 ztIVaem0{J%TPJ&p?p|8DG$(DBaOVd{$H1@1KFMj>tM6T~e)(2M6@GRschnl;6TGZY z=S6ZsFaB9b_b}=3ogbTePJT)k07=fK*<{E5l%9B-HA_VA=UZ?06K{SwcUGW~;PVWh z61ZCDO-u5)dGx13vY#$fWmT>#fY|G7K;%5>wzb8w+_H=WR3-A)3LdN7QE!oAt$CpL zh%kn?=KN+Byu|JR60OZXHu8Bq?5Eglv7CDw?Ob{}e|m%ZPF`1RWW9_@rTbW!=n6Ak zI%}i4guYf!3>?)#b7cg)u#!Pf7O44k2#zzw0AiVW2UYDMH$(Yat&nY3_lMLWSjSvM zi7Wo?>tZW6!pDEAsj1_ifK?(J`^EVDgz!Rkbd0En)JW;&&grGReE8w&?Ke1|_7O02UZmYPnnH0UUq9_jXmbK z9=p~guYXj7zi-&-XM%3;FKs6;?32|yxWMvO6dZC#DJ~}lq@$z0k1J@P6wVr{RjH^R z1OJD&Q4@>qk-B0KQdD()oms<$g2kk>o1>oKPGXhX$ z5ADAj9$G5IHJ&sLm0K(Dv1Cj2wkeA_!E742<%KIhpXgs{1}&^axLfaZD2dJz?*#RU z&SsHfQxGJ7sk61KzXqS5f&CldfCP6)JXo65SS&8p4?i2%u;ENp``Tla(jk2wa_*4V zrL_0`K=E`TAgHhi!FZH|Ft-*6C;n+e#!Vr zlUxhs5}h2|Pc5Vd5Noy3Z`Hk> zH-=aDmg=BSJL6wo`#fN!m;OG|6Q`8KmqNiRTBNI+SQQ+58LDOq;H1BNbLc4J`5PC7 z9BHB1E_EQOW&56W@EV`x{=9TnouN z*&qLI3m$w4AyXW!I(%_eWv{f9I&K4gZf5&DX5^Nmu*>2Aj7gvz5Hr23-$xY3*jc7s zbHo9D!S#np-U$ca)X`$uI6P$|f{FonHizY6t9kKhlrivUw3@h5JhH;`*>#Zq!e(uX z%H+Mk`T1Nr!Y3fk)do8I;qN9LFuM|UBfFN0%@sg!tyA~=hGOl@ zj}haItuTG7;&;%SzrQ-!0YjObKz};&)nOKPnHqNa9}-NQOuoY}VYvbTai;3VA-e1< z4~Qo1dS@2T5mC(%-{ke34YncFouIugUKQBfy~tM5g5Fud4}W|LRbf+np!**1GsrX& zUi~>$d^Fw=PHjo^YT)-0TOVq}-B5yA_U#yeoh$6ZJs~BXT1Qbp)}|LH3@2B`EjdRq zoXouD*{(Ej`gnWogJRW>&DzS_@Q+5_no6+xn?zsvSR?R|=85X!jO{!1+o$Q%)9Tc> zIBBs-uA15Y!asoF;o`F)%e>~a$uBw5U-yD+dP>Q55@KKF3-bxM0D{>3lM1hex4@VZ z^gbA>Q#a@^YX~?jrQ9MzzWp+0`;8P+v|gHNlm><+{%GW@sz^_du=Ti zCDC{WMT65RHolJA9B!0xh&pbr*(CK*e#{knyL6*(k1Dng{HODDN zcw$YNF~1Mq9-Qk2 zY?s&p=661HhY8p z&t%SAH{TJi`Wc-}Q%Z-|Nv?Ky z>lV-jk{@wQud?J{MrGzv0+%2rIK31(>#g~cluXrL#gUH?JMp?~JAcdF&IIU9Z zJqZY+J6q#^As}wX$A07wUp6PRtKy4Q4I)cn9D^fJ<-V-k5;Lw2drwc#sW>P(OnMI~4hx`- zOh=-UW*ucR|48Pik{jnDx~fj*@)`$BuGCzj@8?1g#nw{yI_=ZiBY>_3*PxS|4oZIt z=AZ1^hEyAhZPo-GSq7dBpwWZS{o|`VS@+d}1@9bKkpDzGrryOWvs+#lT2R8DmV%wF zLb?$nci`vCEY*kb32`d3ue(agN%U28ru#^QW2Pm}Tl;Y!58{tZ0{nE12uOagb;#zb z?_}NPy@pjeG`;!FWTKqwZ9{A2H)~b2VsBy1m$krPcahz>hOrf_0@v2I*O1Vy@wR`z z7yn69;a{>>mj7qDw7)Dzl_zTejo13R{#yRrll*gY;65jyD%<&_lZo8ED@_|qp^Z=K z1lm%*)k`LY`)(Edaivs6WXc0IVF6UFeu%1R%?u)|emR#d&d|7~3HD7N5RL*iMAW2b zwE(nrH4q!Z5z^OX z>i~~*4c|f^q83Iqem+sg{{8c@kKJ00-0hgLzih}gIPdsaqDBV;tQ!^rMm95c5zW`Sg8W{x$D$56r1CJ#(u5-A{((~Nd7$!%(RfXPE15U7+C6=kN( zQjt88rr4B#f?{%1@UUMGdtcw5@cpp)39buRYu(TD-1oiK`>yqNUOS!fqQ1na>hEjz ztfT!BP$)Ku#_|T1wRj0KV29NOOZ{&X)*(kDgDtK8-bWu6oHzD<_x;-_MVl!?kp)vj zLrCg5o|9>M;Kfw+BLdXDmXF>?0IdF`H| zAFHp?-d{sW+}blAf!!{6jGWh8d&SE;3h=^swDQYWL7P%2Ca1D~qokL(pZNXZF(E7J zz2fR~cOAa`O!K{t)6(jRF&n16b1K?!6KYB4^RolJkk3oht*}_-bHTjg6Y|RJEGw$O z5yAp)Db^=n1N8p$;^5I-%XS7WT~IuHDWNv&`Ofx?EvHPppBy)cxPE-sub_3-yG?Aq zuyT~Ze&m`vdKsdD0J%6atz+7)8aP z1BNRXE>*Q>)e68CZre5&6woHSHhP3k%oFDm89jNNV5W@ zo=U2vY1VdEgc8Y=)@SD$`YTJxFNGdSOjDFrmy9U1K~>Vm;G>Qah5ch{I0iVW;h$@u z-&Zx7e0ePVZw4IgBQ2hd-vlK`dWY=EfQ*t8ucjUjnu$Dh$E-Mj=CXM>OPMCkg<)sg zEayAR7C(zj6Po5Gemlyaln)C<&DJJ2%~nC|@wKv;nVLe>FLoAwiEh^Q3tbi_(9L=Y zGkNOOp@zyi6Dc;^N9H-@DXjeTBP12#_f-3t!M3r$5za||SdZ=uu)OBh*jYtmmb3h~ zSjSa?Rop98`Omh2{|E@tewA9VJlh13fIXWpLHvE@rq{mMohn|Q$Y zsUR!OD8*(Ecf)+<$DgJjf*%XX!YPpy*MaM`_vM(+qbIy96o*D6-m(_1n8>7s!X5C; zTrY={6H}3T7t*Yg!(z87VkVp4r0O+wOa4ig#h*YlH)56aNsfNba;^D4T!9o_V|47p z*Xt%Gq|sz6{-nyChSio2P|#i#lmOaxtGtlw{u^Dh)3(K1DNpMN$B>ctqbL zR@28MjD=WKc+_ETc0FTXP%pMT!>qW}@|xv>T$py$-{kN~gW0`{X0;dXjGTeA&0S90 z`W$6>NFLq-*bNChCQy6 z_gFSGE)Mma9pYU5acUT&MK@Kmnro?oTe#I^27!-&pC>%mCOAMFuu&2lEu)#VASPe_ zxq1E-i!d@@D_{_p?oFmMksQ2C^M^{B@=p|JkkGdE)73U0lO4#Erkcl6tmpjZ@K{bP zNl+P@*IE#SjoyCcz!%_eQ$a409m*f#?wtsi0(UT0gwEe|WyWd)NCXGpW}}DA6R)hs-Zfh%s zN80o|1qFvK##=SYdqR;RxIT<8yGUbxH_y~DRV+#>*+@=h+Sq^e(6v(7iPNUZ;+C_G zs%|gX^q<*ZT9P#5N{8gp?k#+x>Z8Uf*WqUvaeQu})RsRCYi?jQS635BQBf!oAqs^i zL@f&cXqF}}e)#I+2U1L3f{9kXb1o=D2s4_poby{tFrNG?Kg(kU9`WXP!hwMiSMAGw zjeN^m7>B4?W43sNz;DI!n-_OsJ-gK;4{81fk&r#sX<_5N>ukR3TY2k}+ z05x1D)IxHC!dh~^s@M7xdIuTwqkO{X5zP{s+ESb<6d?d=D_e~6gpn(n=8D~BZ> z-lAW*Z?+ts*}B)zpe&W!YxqbT!bbkAUaKm9jNRXi_lc+~V?tn4eYC#(EyE$AD;DF) z&#OEO4{6C_89eGLENQiQtjPntlBRa5hLEro)AN$irKW|)Y(5xk`qGEAgUScAdiC0C{TTXu zNWG3;j&r?8Qi-N1C_lE&rVC0zO}#B?cpU0T2xazvPc;H)3JCaN9vDc$xjYr-iHNSM zirGM?HOT@FT-vR>(In{`6252>i-YM-r7h|}N)@3{8MqUl9z5d3;F!+(!}Jx_aS>n@ z=xW5;@JOR?b{|v=)lHJ8h0@G1%4-__bPy7wo?2``h>oD-0rk$FlcntQLD0>^TX5^? zROMP;FB;cj%RUVPZA$b$;qDJdjQe%*4~j~SSNaz0l2U3+5VU$U#*?Q^ zwo5=KK06CP%csng9$PP*9JEpE_(}p0 zASYRwxPj^tMrZYfo#GWkF}^#_-#E@j7D(B|g9ZqDdTAf;i{}A&E8G$gjqjaX`G3_b z_5%`7xsjKqxq274Y6lQ2w@h66@pnU@JoroHp@HKZ@D9KuF?`kWBWeT_$hZddex|M) z-$mdgRp#o?Ngkm(>IF6y+W+uCzjyekdt95JI!p=al&k$2$qs=~0Ujs!q&pM_up)fO z$$c1}av}&AwJ8wLEFhpN9;d={T}qF~^&Mk9O8Av-M+2Lw7;U1((L{RVGB~;VfMErz z@d&05tuCo8>W@`>kk8FNbNeBP@>cPAKAyaNMfKyl!6z+D?9TS%Sz16fA`adP#R4Oc zur=7?Ts@SoI764r@6QbcLP~z*G&<*AJtJNyx(i-zTe{pf4t!GhUOo-Erhw0$x_Wk$ z-9H$B-b$}!Xz$zUW=qr&eHeR*4OX;{m)1Ex=-+gqvo}v=y)56;)=x$sp<~bV@!?Dj zCB7x`r~BlWZJ*$sKy4it2!7y6aKb@93POb#b*w>jS~}lB%N+(!nH(m9>)hRl%x$(5 zuW%`pqUXRlKrJ9Bgn+OZcWYG_qTM0voQxGazA5qosXu;lVJxOb)zy@=sjNTVVbwf@ z-{uyiardEVQ}vQ7-}c>R;3#@J9RD(qfyKZC@^((S9o?mMnKze!FZ}cbUz5XlFyDR4 zI1_DsTj@TXd5i@#x3=`|nEX~KvTu+BjD@(n z-d16DWMqk%!yNUcfEB!G6ql8B5pnv!g?rpyf}57W!uu5Q->?N&&YzRf0&1@!+cC3S z2~gawSJ605t}+yL_bt&MUpiZmnY0s?K5=91asr%jNx?!ufhd3Yz4&1z;%t*S@r)cd ziKBet6cFgRM{J6W!Y8!lo}dC`QaJv9Ai#j@_PJpk_L({#3m+v?p&U50toyu>y$YcoaF7>}px@A}g&k2ODct;B7GU9raCa_MPp!4=NV;6a<|TVeT<|stUru zF<4BXN12paI^X2l#2?Th3XS6v?4Yr`rB#~RoeXJp%=5CjW}7QUof`zp)o zO*s-AD^&}nDgucyoM3h69Y|_td@vO5qkSMr1XM682jucLN>eKO^P-8_toa3gv^_H8 z3Pb?mL;K{@N#01zKa}|MOUn3dQCe$Srz5~JlD_Q&9;@w|?K!A*f2s(APf)Raw~rLZ zdQ$Ct&v8Pd!hrcn(83-fz4(FPp72iBok#4nzN_}s*2YxrYwI}iy13#bF*4#n+!rZb z{2O|RAP}&s>&c3MBEGtj)kJ`3ouZ%uI*WMMmCY=}+4~X;y$@|#DeNcfz+LoaX=wIiR%5O*^9TetGYEV;rS)GR7am#E-s#D=I;hz8hSD`i1U&4`wxC-$ zMn4Zv%W1yt2UkT#PZp4S|LXdTEun7~aD@A#emt=3_swA`SeUt{znz1Cc4NqZLPYmh z!r>YpQeR*+c7`nZ#FRbAbzL?fyJB5<~uHo6by0zvGa?v2e_U$ zj-v_he>HE`r%NkLBMjJ)i25D7$aXN=zQOhpVcyi0lme>c{YNt-#^3n9_ZLoYS&d z0u+gI<~Nl`&bXzWrdN~&^ZdyFaUn|;P?#Nc0>dw8RGju(f1nLhh0lJB3vj40Q+#bv zX(_E7wzKDFQa+VC@QYKqkv@RJv}#Hve+o{8t1$P0_H2IgWff)6;g0-l#@Kv-GqM$f z>`@nZ?JSnSu9_$F-KJQIJs3D@h2TKo9LR;|;tNoL`};$Djzs5=PzQCvC1wEVe?=MD z3lyTm(spI}O0>RSik8kOJ(;q942Ns^o7d+^0WJ0Fw3IQZKthgH# z>w|->58mL8MbQ*@qvZp?Lf+PNW)d>GB&sC0sEnn-FU^V97*%C)$2?**B6w6=y?~N7 zBJ+K%dEQUOI-gusmE#MvEV;ltbXdlZ$DluRuJY9%L%g|^c zwUZ@=K$mxMdCG4>A6P%xoZ?EYZEHBuj%n0D4pap>Os)&2ASZ37{Lv*-sLa*LMaFGz z?~Pa{Qhm}Ha0P-fmIN?&6c?>xs5~-Vw{e)9%oM|<$5TMyz+K-D-)GiXWdRYe26|7( zPN>L{016O#f>Hf#AAh0zP$k=j^I0X1-LPwQ)?H`x9kfoPqa*q;I|brANxi%Z_yK}e z8Ps?6vANPUo(i~&V5c>gO9boh1E+Ca=N9mP6wzxApDYFH0VniF=H?UGmuD5p3RVPa zILC5z2_nuMz~gnG@bn!Fz-s_e+h9&Yo?cFO6~5SJOagj5@%t|za7H@FrN=8Z=Qryo zH-SIC(0SnwD*87wH~{^V>I%5$5$r7r^4luY7sJk>eMXS0On9k?k1iTbmyH|U3NOR z$&C19=d>CU!0i5bq?&?y8l1~e$Nx;H5`my{9XFeC2HalRJlzVm`W~2eoS&S{RaLrX zKQ6At+bem(j3xe#*ONr%u!g)gt}!YwS#$Zx zStH2%xo^>L01tDo55@;!2N>?R}E5 zcBJCaW8Ia<`_2L@b0V1<;#ku=+iKexA7pa^c$=QR&uk>EOWGsWUMB0jzu{wA>ywJF_7_9;V)kfdo-XZ>3hAqc3`UVYwOnet-FcgQL`SRto)sr>g3@QIs zF+9QW-WBj_+;*oFzoSX&1pL*PJ{S#aH&kvYN5Eyu&N))kCWt!>%bz0G?IHZ1FK zMjF@KEt)ziZ1uMgDVNi^*A~Ab8hE$Zs$C_)7Dg>p=726001JN zAOJZj;Q_`f@S5;I(WB^Xp%3k-4ng|I6ufHGoD_+P zw<>278&A&h*n*4xl>GeN8K13!-HYPE9sltH*)_A=1{eZ46|o2hfH(j|ve_{tpTM4-xtgsG&-XDWr+U`-tjLGn;nrJMovO9 z7qJt)Sx4FQ#c=|H9DuL(9(r(I{r62$w}~RiS&r)U9Lc{u0NlTKb$j*-koYltFDB?! zkv`?W?_qcVP`v+u4b%yTfG@3blZk>ktaOG>vX z2%lgArh<+F^NCm906>PCRzfYr(-t<5S8$;$F1!}?jST^P+Al|z-x@JXN+g=^e7>vT zQ75V=@MY|gop+W*qEKR$QLmrn{3%PlXF>GiVG6cmw>T{)HciY+j4jrYuhRIL{w8YrXI1{aj{__A&l7)cmREq~5!&@! zW^yN}f#jN57|g4}{ZwpkA32v?zf|Lcl$y&~@I&RXBTh&hJve#%B-dmU+Ng-gZ>2&; z6I6!#)X{`5w@Y4hjCJvue`c}On0A~st6{V(JSkT%YLM3AZ=3T4_OSe8z3&|fuxX;4 zl%ba0kN&4k8BInpKhBjhDY1{eEM<4Ozm~lCB{kyIInCIXv-IG1!kq^}^h(E}l9H5J z%V`tt#aQ!x5{=hEX%bXk$XEfCNvTdfkKT>DvKD;mg9An_I)_(VRwKW7ZO?=qk|7Vr zI`IulBWacqd05k^YpuL=M2WoQ$8tnj+kvp)Sau)}MbUA<2id(lc6gyu|IL?ClcvbA z&n=G6g$-Wy+qTW@h}@Ggb@8>QUBN6ynA|}%P`A0hquLx-YNWk_NsrK}y=&t8>Ni6O ziquG__uMKBYK?*MDAR+iuS;9GKlLv6zL#78L&PKR1UR$=s+5bJ){m~2yoSmx%z2Hl zC>%7C2kIyX#qpmA$cub6es~`Md_fPn85Mr-G^BNtqG%Z#DZ56n&bie8{7YZ$z!!Os z^#wHg!G=m`|8b3~-9gar<_lB1pq{&@2>m$XF=cB}j+m+xXPK3>6^;^~=NMZtdef>_FdVjS~Wj7&uTm>JA zwAd!3`5GKnt01PpFP>+R6TZ~HKBA)~O4Me$Mlvdsu1J1wP@-CYzF%;Zt$+Ct3D#vj zx15g!-%XZ33S&omirzY$4&1|`?rZ~aH^4xT&;L|F=EH#i$CbHEX*_Vgm@k5s)aA>rVJZh-paK&Fl zco}1F%dheydOm1QsZ>z4g?c3+ZN0#AZ=@17?ZE;3?Ho~2kY^UeG?Zd}8rY)F`nk~F zD;CKb*MF9J6kZ)AXzTN8sW|O3CPC!Y;y6j}aKt4ytA&tO4!XCxH%K!qM~Q$~Wvjb; zPxLLTtJ2D9@EcpMlOEoyC1G##@hV{h2jPyWO@)oc)8~>KD+%V3S8#!j?6FM0FI|=c z8s%6BzYk$zJ;qjjpv$|kJU9D3urIAX_v-i}&H}#|g78aj42Acy@7R8H>GOVIxN!nH zBpj=w8pkHL<&2!0BsnCVHE5*?rt?yZAA8}_9k{6^K|3gT=e=bRjL%#U;n`F6yE4iM+*0M(?6jC*aeqPX-xzW`%Ip&`K@M5V6oxlkhHrPmZnslfZr`%D?fRPxnk>S04uAuTJ{n0 zo~6Jmskqd$Wp+IBXX%{xjI+cK8bdh)fDN4ZvIuBA1`-=w{^fLOnr`wfDE{b+(#jZn z=R%l{(KhVI{A(lMF?24|z;-598QuO$Gy$P0f>(Aj8NL47(?i5SZ%??09JOHgG*Pww z33#o4Xl-kw{X1^3Hn(MSTQJ>SUCtzD=F=1E_4q4jjxr!nM`WE+xPy-l4gm$ZAWOZ` z!SgtainqwdG+c)OX7i_geE$K@Q{6FnlPQ!@7^>123iA5;m#!I01HHxW&)KCrx#tW& zg4uUbdM2&QeleE|cB-qv_n=4HE1S+S+=?6T1?P=aHugI8mf8MxNrI0T-iSd?SW=3g zs?P~vzCYl?XDs1rwB)e~;1dz?YpwhT*NEe@9+Q$EheG7Iv!s32gz2u`AY4do=aA$* zp1oyJW$@l0`0NcQY!_zB>|sQWUU|is4RbT4kPQ0WnN#x;IZ{6=6ibh{$jf>UO)X}` z|MIWSAH-m`6#TRbr>_A?kI{O?IL;x>>lSNlqfo}V#3Dv#E zgOhNC=l5J>`D6os7d&opMUcGcJ;7_X223lqRxb$dMV+#HRoXl#s!-x zxEmE#5WdrPzFw;BWry7KTaBZ!mw*R!>#G6J5>%@F(06px{Q7K4gkMSw4o-ZK&;Bgz zT4*GYbMrlnI2-&Wx7Xqi$D%X#0m>?IaD@UyQpG&Rws9n|@E?>*LMi!9uzE@@bd3z;xK8PrPIk3!s< z`5d6$230pIXz+rLKFeslOyFyO0+9G&>*=>^A5U!kASI@nGy%JA&Sz1utu0#o46I@2 zbj@t+xHD3BJ@Z$)Z9~sxg)mW&6g5#*6wOgy{yHVO=TYFpm7jHx1N@v>;FFQ;PWF3+ zlQOtZub!V|T%QtE@xMr%K?LWv5t8FiWLzP#5P+zV=&O$l-U-Dy3rk|Y;}vR;6cMlb zpz@OiyrJ+QzhC;dDL`Li6K=(Zi$gdxfpbkvIxjVOaeJ_lsMJbHk5jEnV^5)?%OWY6 z;pbxg;2$cz&3_&Eh@VJK9>PSEQoOR4f(o1WPj?@OD(tNy>MISNQWHH6@Qp3pBY(&z z7GOj{NgX74vuyN&F3x2sm<_MhjCxGV>T>U_-8|rYN(uI&z%;)+56LWlLzwt445nXp z5Mus(Fkmj^gyjV})rt*j`FSM00= z9(8gIkpyMWzs~byVdBNH2Oin5iN$?s5i^s+9S7Hn>X(dvMj}akEB=xKKoBpmK@%di zlZ^HYtl6f8ZCiOAI}g4>t+kBzhI4XIGQXf(4~82&Y3NqHN=|(vD0>>F-w;W41s{c2 z5lhhU{qE8)nUj{PC3K}XPWI@6tRzvJ^EaFVK)-ILZ-Hzjz7)}aOoOUN2JX8BEIVs8 zZg@alAUH#r zD$N~^GJ0~svH8qlXY=$k*nVwVnXBV@x5zS!3QX4zqoR$Geo&e5;cw*J3V}<4y5GWW zsPfAZ_q18@$Uz)54Q*KX>KgFVVLGqM6N0O6my={!(HRp1)vAyFxZ3w<ma8ScDD27o7<4BWiN6e7j z``2&?$9>Q%F_7&jowmpg*?8uFLDm&kSA6|MpabH{&zLC2>2^85n+_ex&D&a|FTdUA z_z5cV68ssGrM062?+|}3cIjUQnrjc$E#}jx1!p;8t3pjZ{N?~mD>if8Y-MdR) zhIfa*DgM_09|yyGpN=Itu{-p3MjvCicyvbw&kw%uniyY$oz&uvzzE%Vabrcez_)sL zXycOx^vnt;8!$ix9y;d}6#*2vZKaF4~duGxv|60f$!39#DU&ZS8 zCLlM84u%h-*|%fUu1-kvi3lCML@y^j+o<~XtjT9sW23a`#!c;PU`DUP@Y6f^Kj7i0 z2;sL^a1-||`sE%>PEjpHXvz1m?_fj;hFTxd74GZt%M zmi)kVy>NNBD^{aLHktWii)>2|fhsbB9U?$)DJg{(IfqScNaDP=<5gXK*be9(Q4?jY ze7i?US@D1nrHgr<(j_N9%)ZpyxgNA6&}M&VapIK(mvbCpSo)8kZA&r+GL(TfAyqt- z&1piU@0<9~14|sl(bh3P7;h=qW2*SiggT+IIQ?`?pKB%MeWCjT4WbxQmA`_4pJFQ` z&jTO*%qmHSxAf`4UGP>q?c&d-2GpPxB|VE2>9~-koEjM((%12e>GycLf~|gJn3tjC z!lLCswHH>Z<7C}^=YYz{_Qk2LN%jDLmkT*dzrL`&1OZQGnsjMn)ox?{=8FfPE(7In z4=pAae&=5FrZZL`z>%xW98EYH8-JXO#MG}v=3Z*9SswUel;0gC{vPI|bw6y|u{6-_ zPI&=CT2I2m{J~`P7vF5vmKY2>q5cO)L7(;>iv*6G&C8DAT6zZ^L`fi-a{Snnd*;8> z7LrCsuAH|~nuf9b^6{ajZx#d1b=LGuvWJ(VqlwS+1^W{Z`|0%({U+-HklW`ILzJso(6BHIkMo6r|^W;&m<1)bAi! z9<3C^n)Gq-?c=pDby+jfFUN;zH`;mYUL$f?K-2SKgzo5{L~T{(=J=|*KjB%N4T;?G zy3VRCG?={EUc@)Z7Bjfm3Q6Z8D>(f5jJ&PwQ4lvv6g8%T#v`EA%hfkkdpn1N=RFJm5?ZjTUksu(UzW1qWmyq)Wz*tQ?QIuH9bbOdxx zL$+O3-~UsZ4Amfv7p<~ZO3WKQAD;mSo`IfR`4|nP8lnAM5pgxIpWQX`iUaPdgzAFl z8DF%4y9u&?%ytF>JJfK+?<(zK&Ki;OJa-N9${$2{%~3t%hoqa2CI+ySbj}`Prh{rLwAdjr1{Hb#n>A?2w*Q z(f>fAV4pU!_DbN!oKXn$>XIYdClOJGeY4v8%;aPLlARzB1Nl`1O%CAB%5{rZWes_x zK{gt%TZ_~=>0ZM>usLX!UX}>XeHjfqev#9xEGqvZN9?5Yg5S&%yFG!KGvYQ?AzuGZ zd3QW6Z-G3_xydU*wHEEhNykFeLi9v&Ff!qOx}F?OZoM_i2ziVMbjS1_$XQDMV#jtm z*|by{FE-ZK^CR3Jk$?lIGQ?uor)()N>)kfH7Pp8Mk42vBj#MHda#Rif#I`!<0T)TI z4zOa#>Sf?`Kf8j%)erK#BV-@G+~7<{PkFU2i}UGeGCut<)-{id<7!0u9l7FH=wAl! zIsgLFtrx{^c(eQE-jQYxB&dX~2Juh$0Ma24GC~j!x;4-g7GD0v%@qeq?F*}hDCEP_Rj|+G; zhc*$-Mb`f-qKI1*%r*S!Qta$xCb6aqt7Pcy$w$w%YVT*^; zKE1qRFRqrFqig=@3G5`5l!-%Dt+HQoWIHwHpBo5g2RdrD^6NSVS__j02~&7Jf4z8zrKUvictSMo)rc3k zxd*nO!R_j@^~z)dSJ`6`pFUV2>3`7)N@ZsVfi?0uPd#(zis_1B&$IGZXv~JDjfMaE zqjhq8yaQ}tgLfN}I!)12;ybtHXfOC5G%Gbb;) zPGnSXS{d%nN$$xpls^zM;xyS%(F^N%g*z~V&2$F6OO6m<%tzk@|QYN_pcFQ&S90;*ZH0`6a>a6?1_-xKK ziwY#1)Q(a2+gw$_4=2q3Ok%JK0~`N?UibbVNHEl}+Mn+>;93N3JxbT}r^=lw^D0F6 z^wC^qvO}CU>P;<)j6nOIB6X$NVha@429hRjBSqoXeYp^MR6c%oPbR&&DoiId}Fj0^)gn9xE)L&*i2M0 z+52;}^BQUR`9@Us+`KDb8es5uiNZ>eZm1ggFf=;8-WzvOLB>FEF*s^k!Ue1?QPcSBn{7yEV(+m!+=7u+}7cx40t7MqZ|1 zxMI2<%fH@1^_8D2N?V>T&0t@0lbAL!pW$5tT z?Z8|t9Oyj!jSB!!Jcm^-S*(5Tz`<*zv;-N9V+(YHMMe>#5F=h${R?;TTu)lzsJa#g zDVy{niv7rFS?rh}LMS!z-y=I{gCsev7>gzAuQ3G?B$C{dm7EYPbIEoCK>#)*Fd*pl zgG<-~XySlAscjsr@XS6u^XYQLQE&)07>zCF18|0d{%Q+w2=sE99>6mdFsHmfNsF-W z^%x78a+qFkwY30cxDazM?0=F0V zEd^T0c^+^CLvm|Ya!e3jDBZEsmX*-r#!ci!X3z1lL}6S-zVz(!+eXxV{jw(r>ae~m zDz=~TE)q>UH)7(g@#7prWCrPP|Hcl)Y6WDf2PhC{T{y$Z+4;4y=7{HV0q-TU4&f`l z@N5CIBuqT=WX~5Hn~p3`f|Fh3ILhLa7=|AI+>5O_Tx(5aNrK=J&sfe6xGN4*r}bq9 zLM>|Dw@MYx4+ECMa7D&ozaEIw!Nlg&;FVCN4Wv*nf)`iu75pA{b4Da2_>Yog)l5O? zCnLyZZim8`o|AtD3oFBMP{AP=Mwzup?DyIa>Nr9_gGa*{Q@n4%KUJ$XdkO8hO?EY| z)x9|5EV~IbJTU#)lL88&3)0--OL^KcKBi`XKbJ1S{;c#kMR;(mUesQ}d$wE=+|CWZ z$Uai!#bqcf()|$~f@oA*nSocIzU~BiwY6@x_d~7$w;KRR=Ji zE(&xSGRjC8^NuUEoKNtlVIy$l9*xStEmMXug#VToSlVy~e^K9Mo}o*{GvkC^+?=m% zC_r37u}AM<#6v#4%AQa{?;SVKvwLO6{&xaG6q7X+@Yr0(4b)!r z0n1Y{gB0+ltN+Rp)a#-#>vjn}MBpij;#R|pOfS)Aunm8kvSvS1GA&3l%KbArob)$*NB$p|1`-*nKRQ#yhmo z6;t?9ua^qq6Pz;UiFJ&2PAP=?^qV_YaYMMChljoqrl@jMT=Zq}p6l&{;+mp!ow4I) zwW~SM(ZO)+#;ZV+)6V7Zx&3D*7s2czD@^@IdknXx{_5KVZ1MDf=LFvK@kQKqKdtR= zkAAH@@w(;!+tn?6$=B+|u{=AtY|miN_xpw2N{2x)RqG>opd*Nazto_MLI2kKVHMDH zb(-5hWpkyucD4+af;q*#Y6oM^+_P`n5M*<9dWV6d2_bCPj|NE1@r>QQor45Ez>WVM z4ge^?ldcEY9DDD?>YH%a?-WMD1w8l4fLPoRO+FY{oc@NKt9P5%LM+5vg~7)JFTJI= zTG4P+Oq&X0o(K)Jd|dFVvF7rJTI&hM75sTKQ=~cqp$+z&dSIgR0EMLQKN?(qeHWK0 zcXG$*gm7V=Tn`j9l~?Sqz)JV%YLLEYa|OQ~sXFo^)hZHhYM0?ULDp?AFR`Z)h)w>k zoOT*)*0S$x9ZAn&LgTWaW)oKtRLaX}E&)uPj!1rrwXQv!hX#yRGes)6Ikxquj70Uq zJd9zz)XuUa>e~&I%c0**reFg}OiX{X5dfqInaYt0vVosmLZWCSE*9iJJ?@IC$)S3f z5^co3{$bd<~c#}9lnmkrhc%a;cQ=3rYNrNPz4JBU609TWi<2I_cm4XtUob;W@iKT z`247rRuqzNx*DB|XryvAJKLftS-A+!2x4C}C0D{U9L)G}}ObKWGj&Rl`g}B48dAGTv zn%q-F;m0JFf>Ec#=iy`FM=L7kf!glb6cR5^xW%_&DsFmy*hcF;^1E$Zu0Iw>NCJRL z&^W&X|3l&u@UQ&XF10SmJJ$vcXGF4pG+~|LpCbQ}189h*y%HG5J<7{L#nw0O?S)={ z`yfsvDJ=(oWeKw7BXM6+)mA51lbCO6`}Jv32NF+PDdQpYQS7`Y?-K#cT69vHOB;69 zzMvXrkRoF}y(${&=Rdi&8(!QG9ReqVuV~N#HGpjsRH7V1L6Al%hJW(L0EX6ct>3km zk~~33%zW-M+>)yAV7>e)3*7r9O^VAtg~#l|!U5yNdDf=+=-`t9HKXTt24z#=n^gXj zf`zRgzETFxw4f?J7AX&7O(;h&gV_Xpm@zfs~q?>K=%gL633EelBn=E+Eb zk_?aP5_d6Dy?X-RH$YX28HQgHgoyDYH!c=Wzjf<6Uk7RqCV%@}H6gm9UyiYQKBGqH z40d3*?Y6tf(+yrQf9I2QWP+*Q2C~EekT(enH$G-t-aA}3TssK4cB0?%QQ ztZ|xf2$eubYdk%i4NGc28@D?9g4v3nSy-zSEUHM;B%=&WUk|S+ec!?Z?kd<$qw@v6 z61{=xx=-^jsjxzW9=@s2CFpm(SAzW&yRg_U~M>M0NV8mNzC|O0Rb0F|Q8ayL|JCM>F|kX%ebI zVPXdg+?iIEnGYqTZl!DUNf(93f{)#ZA!59&r-$^b;)R#YRCmo>+ea8UId=leo>;hF z=q}QXwp8{*NlfKH{m{gANCnGeWax{(B*<8S$f(UI6CxS{QKr=IJ*4k|Gn3eU`+6bQ zj7g>*zdrC2K-Crtx4GCOmwmCVACxsQs`c*27oqV>$;AlFq*1_zv#wWIj`e!v`yqJo#f&(fA20K+&%4L#XG-4D za;#dsgeKB$EWc-vn!IPHzc_dutbOKH(!!4^R{2nYSTrSL4E=|f1YM($K_D992^KyN zx^JZu0hE0JF*J3-hNfK^c_QdaT|1ut*7S7g6zO~kiT0Y}v&wN*CiZ;-+OO>FTAa?A zxObid^Q+XqwZk#WQyA7T&i?S>n}qkZ8+9xZ@WLwRvI4z1DMERA=l1F-x%wr&bn(qz zJU;1|-B-_G^$9BEP=vDRM>)&%tEZyNV7WULVn%1R@0&0Ve&SikiI*29I_D!(R>ELP zSh94e!yoY{1!Vr3Fl8(dmrZZtEzxAnd!IBpeA&50rf+)5f6MgY%9IVky;Een^g7B9 z#}yXRmEl!I@?Lp0=%->pOpR3~7g21w0Y(gXTqjS{yJOzztiAbA-cU2$!ryJF7~Ctg zRfgACZQVnu4I(Zjk67*;q%tM{WL@iX4Q8TdG`ribAU8ruB3^_{;Ka6^9EK0G3ohhR zoorYi-BHAZ{b73?Js?v`m$DAHI(=TgSo+sA)iMoh?PCS);0em|xSgCmY{}ij*RG&U z?qH>N6Pu)4o~&{V3->Eg38o`N+wE{al?n2N(2hWwnT{_u9d#_RaD!h`4ygPZ#dHg^ z-)6#A2crC@uHsvK?(ln9f{!s#Q7w)KUUAN5>{(@doDknase|sCm~* za|d1~9Q#2npBV_w)XyQq$q+ zm49Jaij9bVQUAT%z%}iwHt=o$ODmlf6ZtD`Zwi^fg&(UA3@J)$g{h6TXbny$YFn1` zOIxs7D-=&alfEK*N#m3J9*%xG!sAASxFeFDKew1T@2hQIY*^dr-^N!u*$5{e7vntR zV1t974=fTsmrI;h1(J~&9~fjq11CMl0>KFq8|E2fBO)CaubxrB~76qqyw|k2;kaU>T_gMffS17+J zx56vOKgRD}R6D}9Q)Yv}1Bvwye#OBoRuD2za!xF{XE3Q;Uh#Vh1|P|Ghx~f>8ZI3$ zWfSt~#;alU11Pl*OWpVTA%BSGJ8lleCHb9O-D*5R>SVDfIIsggXDa&ftY|V}QdJOP z^#nAukybzaMxD%8^fPnxaxu{Bx$|v<1GV{Im)X2fEqkxd!hK+R{KbAL7j8w!hTcw; z<0RY8FK5|Zz~xqeXe+JHyMk)}gE`+VAB!y!Jle73CB+ukVD(&tv${p#pHE{J`rfyo6>e+$^%0L9WgOEdeHN$3NVkJW6hwlBQfN=#pzor z+!7b`6DRdGq9-m7u`m6p0a)~`q1mQ4a>1nu)mUALrN)>_DyprLe%3b|XwolY#vC{J$f{E-+qao)^RC|YKadnfzHW}T z+DwmNJGPaxO68~X{8DB6fsN4y>&k^XkU(1rI20p)l`Fbyu_{07M5096-FMT~B(Gqe zTi-JZ*k(-FL$5^zpufniyfW!T$97zuZ%A4{pX=ZGHFxifECRsX4woMiE*RNW@>wcI zdX1H)9j475b1|7WtOU_s>F-apOXQCqRjftmsGY1HvE81*>|9o>=|@vi10M?=i1%@O z>1;KbZdP`1J?RuCD0vAluUGtU7)ltV59knySBR!1d>~Er7Osf>@bw0-BBaCjrWT{! zEr_hq9m0e-IkYI`=>JF|fBc;LN73v zG;adR2t(3_o;te1MEjvNM@xTI7XWZe5t2jpwkTr@wEk8xRfPQ-(6bo+<|JMuO;NEX zY~I$r<8qsK5UTfy_TUQC9y_Sb1!*gc(7GgD(y~0P@(MEo#r=3u?`T{~)pu%ImRF~F zkkln+1!||UYb{XmdI0)rdG3}H>YTDw3dW-+Xu&Su+YmR7E=ePgf(gY#_Rw&A=mEoBobhdNUOciR6}FeNBcOn{xlPh+w&1pjd8d0ake(h@i8;g zPf7j&Yo$n+r#>V0E|}Q0^H~~m?cnr*ZVC+wBLevSm#4xh3~^hi0>Raa4)vYJ+s2c2 z9I<%AC|Hd#Lq}I$e^1O9hOBFPw@UjzxThgvB}vaD^3;c)zZL?Kwb6078_9xg-^WzQ zENqMEeUVEt=YkYlD~nUDrN}>*LhN}YE7kQdkNYCKE-SD&Z>0Ttobh(_tszb-@6Y3Q!^Cv?(=N$rWE4xflJbL5K~ zTdW|>cPi}Vy}zEc!0Jvt4(Vo50Q1E8fKaLVNIh8NnVUj;fI5H}!VYc{4xisu@?I*2 z&XvIqVq9BJxXngro3af}9`$S=3A@g8I302qcaDePq;^`=ueu*x_?LqXFm__h2AIkY zn~Ll-YLv>sp7rZrhJQ?7Vo+A`s@~9NSL^aw;6mXrwO}R|0wY}=3gy%&V zK(aw!gHNw{_gU1O4<3r^n1jXzD_y-M)dd5~}1*Dnc#`JY!n<>E1`1!;iUp z1uqPb{<~8`*vlT$qy`%cYO8?ms5eiqg#w}n-d{F*y#ri}A|&VM+r>7@a_hR0s{Hm> zVaqy3yBFhOu80dWAW{DmS0Gjp zcc3wGZ~NB)*?fX@<bePw)owQ~UE!Ss z@R5qekHW0)hjClNu=V*F@WG1zZuGeo$l*d;+671oZ+msJQ|0wfeKf+J=eI1zY0U)= z)Q~C2*nUVe8{gY{!y0rb;!#;+?pDpGu|wJN_Oju(-S?SX*M=)95Ke0eLXo66D_;{I z`xvS}0Z3Q{PlET}eP;5#J4PtN%M>zXJrbqIqV#mcB1gPJt##H~5~zP!T1ii3>ndh* z-?pdGZ=xj(w(S8$?}|OUVI43ShjpGQe?gehc^^oz*3weEVR^`I7<5yG?yaB6oD88R zqPB9&mkJ8S5pGk_;N;^d^IGknXjG4^KKj%y8d1z-=^QGxv#zxQ4SX2<64%y?t7uI- z#(Df1D-+22eeMOjiVAJ3`&k-^m6mZz*-BS+VNlkauUA!V+U$4tiKfu$pJcco2BhCE zp~KC(D91d&(mp3DALjf^FGbV5uCd00dO$xmwi@6Y+7X3DlsZv`Hdy4Ii9+b^@d^3QBo;CAkW8Q{F^ zFvS-ok|E{!I6YkT1T++}p^Z%bM zXpLMTfqo>SGs)D8Ki%PiM^reBs?V2NUVL^u2|Rrbty{xCKI-jOA<-%%a|rjqGQ0SA zCYR2kzwx{UkitRo5e8SY=fXF-3X!1}uyhP!Yiz=z$!9s}bY-(Lv-(Z(S!wup+xMA4 zho#V(Hnz$_(D>HKNJwx$D~sz+%* z^xcF#S^3dh6FBv&tp8%d=z}GGxk^|S_**-GLsCHcQmTEUk3>=_#z}{&zi6Hqb(&NN z?+Ot*s%>gQD?l=Jv&`^uJUxVoL@=kYBa;NbsOQgqz6irivmWURIA)hM1QqA8cw?n3 z2wCC6hN0lGVu7@WKRz&ov!dMn^mb}2paHK_mK zMe!O~Nbl;QO>*#Jw;VDQvnO7d}7 z?+O1>VUcV9N{xfFXRzKCj2oN3uuIxyD-Z#AA$)W~w0a){8VGgig-eh?_%v71^X~i$N&*dAZ_zrnIuQMbU_=dI+ zWNb8Iff!(Cv>$Q1fD?jC!S@mC`^jCBsso*puBpNH;?l`%;SQFk3X#+Jie>x zgyQLi!GzB2jn3Fz2c9V&XsITD{a?r*lM&5{Yu7#+pGUP!@o^YmwlbE5-|nByxL|k+ zqPvc;)L3ci%`B;R-vh&zPyAcBgfh&yAo`h)KMd0u$o`ULXax+>Ykj>u)9mZgbnZNf z+8T|Tc7z^&cAjvO!{CAwrwof{2xE?VPH4KNtYeOFQ$tkEd5k5@q*+R!@S?IEhH-xT zKhF#yL7sQAOK3hGHmy3qN3ND>SrK|3jz;2jsi5Z|ZQ{`0u*Wi&mwjd2_O6Aw!dXcZ^&NAB*;S;5D zTiq;b`Abakg@h%ahLkJ3_zH*lczL6wj2?+|n@N~eS$DUgXv|?YSkN3)`|ZWwWBcb0 zvX2lBwI0=zn`ZeD+2Np**RQfw5xr&neVY%4_-AgfXeUDLU}HpC>J8Ih*>;XeSoT&a zG#8+-e_{xx06q<=l5|@laN9Cy2Nmq-+%a&q2$L~k&}&CABY2`KR)0v6KRz$C2DJ{& z^+tsqiYSkGW?U1*{jxh>3ggSk?Q{Ms7r|TKlV=TYSUCeyZ<>}GE;Ca^Tg;3p+fJK5 zt_@@p_fXkY8#N`ZHl2&GbxgRoJ59BRZe80$+vh*<<%d(%rXt5@HELhfQSiWtI2LJn zzxwKkB(d24Q?xJgF>Qrx{%tMguWQe%>!X+ZFI+z;OjljFOH>5-r19c!Upq`=Wq!7E zk#vK~^AChu04p&G78GBzi z6(-%X&Jz4f#voSpAkP;NXb$n{xpe{{`uY)9GH}Wp*WG3q_S4<5=>%O(T=uc#5-k%m z)2u=B!fT&7uY_F-2Nc<9sLl(Q29!_o;Oh6tXhPauTP$4|*AYoz$qgjnly`Ahr%$u* zmWJ7Im}Q;u&v$sKElSmj(A;(N{OIDfB#lN9vyQ@&iEP3o6usCJxyg^OZ}}WvV|lAi z_;15X_x3fsgp6*RLA$WGuv9i5@aKO4ngIL7 zVKZLH&d7R}&DySwrV;0jcE0D*PT&xaCW)WvrDR)*C+{|F)~201T4LS|812a%yTDmTw90oe?_qj2YPs0%|6+T zgs{ZD1w$|*@7L7De<*36j7d_gtz)JXkXW`lZ=~sm}fp{R(v+CG3ArT zeG$*Vby47wE*rc_se4y0?PighL$l-u8vtR5%7La8`{%f}sR|^^11BsnM-vvP<`c{)D-$PVpZ=oHOi;PeEGL zkAJ~$nr)u^By7k@_^*crQQx>GG|n{e$*8pN$!v({(y(L6c z0B>l(RFR`dhBX#Mg_nPJ+FsbzwCse=J;JH@q_`^Aq$ZoMKo`&zgHC~-4+MLz$HHbR z-2SuX69p(!T_T7&x58XE%8E=dI>g|%A&lWtDrLHCM~twAZ(OX3p#ilgMWIohQdL8k z*W4XU00d4C=m~hFBNF#d;@1RD2;qAMCd@r{hcbM+Rk_|7qo9a|_m?Yv;lG6S8L2*S z){?y=0F9M5vtvulEmaX;i{`GK(iQ(-;L?c%#TGTBT_uKp01{Th-rb~blnrRky0Bc$ke)(RV6y36NY_^gy zG+o7l?}-A}`Sae%Wkn?Z`sk#_+Y2W9e^LfQr#+=<*K}+5Qo4A#_s9H*qAjLd84(3? zd6y0<9CbyaNz?U+idw8KoSAkoNnO!yzzD#jd17}cubHg0CRWM`TVjUAvXr)*wU>A7 z9d1%}`gJ_5PS|WNTy5|1V0#`~n;P@^rDm?S_6jV|wj%qd-dBqMr@SA7iNJ+hM1)>g z@Z4$mD(RKGcjWHycODMRMq|sPfZCE=V;}PYf!GQvk?Etv!B;C^h=HZ4Kdu?xX}5O1 zr}Kh&kp41}GT0e=cOGb$~9kXlm};H)K{SJ zr=g)M;XYXdT%64RYbzn?NQ%6oTyZD^ZCrwZp<$v4_62)^VxI7U_D??jT8FsrV|R<7 zG3E%GTFtwQ4s0LZ(6s_SekA*;BsR;$gZa9#!CZTGk|qhhn|SvmtJ56=WjiN{XPTrH%xDO?qESoY z=|wN(V$4pF>&W&2#NZ&E!WE>%dUjK(`HoA<#U}zWma=s3Ffc2*>v*nJ89DXNbXE~> zCliy_lO)7s$x7|`$+f~(9>RJ8eU8F}r~SX-w@-04m7=ekOZ-+dxoiVqDJwwwUPt0| zL0*FkQnaGhQ-^=fpDcAzvD64Y6T!dSOM!cMU9K&Ev(#Zdz{0p@Neqi3fM>c&dP1GX zDAi(DJ~Ffzyd9r*`0-FA;@qQR6EV>6&0<2Vo>LVy`6K-Gj>ade&U@Jf1(>ZA{8wsX zMKqX%=D#W@Is|%nqIX@}t}Ux4h+krB9L}#;D9C!6Ase!JwZP_)$#yW@n)Mq$o7DW( znXZ|#1_C*d#j(*5I36vB&x`Q9gto5wlJgF0$zS?N_oXo=i+fVoOL`W(>sQ%cu$`|+ zR-pwepVbmzvo&FYPcZ9V1A`zHF7?5GJqq2VHYhk6ApW4*^6_Ll{AS^*%59C8-lhsF zb{`)!VXOHk)+C-HNtmGf8;FbC#=QjPujiSLspJA|i~FI^jj-BNzGnJhI#ay3a`Ual zy1cTk>R+dceYJwK=Etkwm)OqPo$NocOC{T0(wl`E=gP~XA80VW=f&p+asIdQ;&cx< z&6!nUJuF+KA3FY_Dx!Pzg=<=IgVJNq2sP<}=C02HHPOcMw^UWiUyjn`)`oiwwjq8H zXh)I60;BnSfKGcLO&B=5w&m&Zi_8rhaLq?}2>zJL(fu^L?Mu!Jn00DGmGnzo6W7(D+C_a zSDa}{&a&2EjR+m{9U(A8weZ2&+WpeBzG7SlZf5T#zyE;Z1|G-ceFeLpA0q`o{cJ5-l%aJ9evm{=^TNFy=D z2z6+(m(o};lEo`#80WXB`#X!b)Du6X9_5Es*ML_ z=B{eXVr=iXV&ad$$AieawYpj7{2$AjAv>`(Ul^zMCoDHJoP8l%AdZ5zu%&iuvn!Dk zTBv-cc&ON~!JVSf8N2G-qSBdY@=?wM=mntB2bN-DG&6{l3= ze1-`_3$z@$2vReY?lR&A@>ICO$GmQK|*Xh3w=Dp_z<}ic2_M0Kq&d^vHks zY@>V}H231!%9));5dkr&IWbRXGZ_Z{u<=74XP#ofcLR+s9&7A+H#~>dR&jC_cB)AF zqA#A|XM#{&5Mvxj&{o(anlX0{C*-N&o_01M{B$jfu0%iY)yowZ{mosu+3^SEV12429 z(`K?@rO^UjXNah?xi(a(VrM?btpIekBZpzArSoj|)7I>}ZByG`)z6P&he+R}cqWP@ zO#eTGX=A$kMX-o7yFVtF42Q;4SyS6|uigdcPAv`*r8wjfhRG(K1|@xQ<4lm@n)M7s zAgAH{ciAJL)B?tKAWpo?bD>};U(~YE4Q8iO92Tt88I9&Spya2saD_kNsaYo(D;6%4aMtxNR=$uWp3+duI=YiyRD=v4k2iWW0j8EBbc(CgUt?3 zv*8_p#X(qY@zT6(shyz~3xj#$=ez7X=i2}%HpG_*1K7lfl&CA#I>oj~yoYNsE_1otAGCM8rE zm0;rcjHNJ~#!MH2#@W)7Z=?AiwSmeN3~1Tr3o?O6#q&9KAfK*xvfSGUm}s}tWwEuV zV5n_3E$%{qB4b#w8F zcHQA+tHVY|&v;KdneBe7O>_(oA?MZeJqc-r%0xGG7XdRW9sAQ?Mg`<#dx=zFYBHvS zbYYkyOa=E#E9?8$?Gs)+#-V`*!=Echg^;iwM=!syC$A0qweiIdV8V-{`x9-up{og< zgFer$zaJbjA1)ekEH0vim#yqw+<(&o| z%}k(nEskoEPTfW*;(e+(gm6+x%ak{>j@Pixb;XHC{<`!bkpgX#%Vg`RFu>|MmrmDMr zbF|31UB@1`m3~|sjH~8%NR#IC&bdo=%AK1GL`O!*VKb?Ztw%qY_2)CTzv5cpvazBu zCW`T0Y7FYLf(jLafJFI2;7si(qU)R!7U-ncP8RNF-9bH|!GjjzqNU56Hfs-CS!}d6 zc3YibrnHMc2?r+6++mRD==QTXpgIx9o^;l4|EbDz+%!<8dzcOkP9WUq`0qe9phqt? zu*FfTvnr+|8Z~<)YBv{DCleaN!BCS@(v^Uay!ZxOF=r=xt^PuxNRqdi#uvlD>qQX7 zsj{Iq`DNwSk;P6@iq{*CUk&IN?AF~bdt7PhzJ`hy8%3cNM1cec8(?bkf3p|9ZN7vf z3eTh8sF8%j?$DSj&FYvs#ZRvBI}!Q9nF_0<$(+8H!(V<#4`!ND=2zksf|GZaL;?Ck z{7HMm!X~ShJqQ8cc&+0#sHp4JQhbFDbEv89*Dk$ss(GGJyYs5+z`8<<)cS#PB`Mf( zQDktM^T%J|(iSmBQXmroBVUdjndt!S-(o825xAFO)-7)CcA_Y9C1|J|A35owL)mk| z%AMR3Xzw8kdSH1?6GU+g+?L?dC||o7-qf`TtXz<=wH_wvtaM%BU&_B6 z*bJ03QT$Nj(B1m*4Kjy;@h{3^fFG6S5-p*|Am5)^3GLsp50`nbn?uJxFu6IE&Ma4q z(FT95^tHWzP!>7Gg1NAx#&z8!t5d(Yz&SkWOJ3B-RrGYH#=KBKarKfi+7DC&KZt|_t} zFxylK2pB$uy;OJ~YfqK%IpDMVF<#6-mR>1o`t%@@+arrZjZSe+e2ycxNh?fK07= zPXk;4c>JoO9jYZ~*o!P^DEwvNKy}9FlP5e@NnKexGmW+{NwM1IM1I?0?J-#CW3z@| zFpC_0uIP!(-efDBFuLFzT|~Fr{iY{CmNPW_@H2`P$CS^(=jupH|FgvF28l@hz;Vj$ z9nR%vDRa)#Pbf^w9vSbWw@!~t9*;(OCTi>t?XA! zj+9o5pH*{KClfAJ0u?sqKg@!L!C$dTMx+sT&XhARG@@cZ9+dFic=OO#3wDin!BokL zuzs}nWP^G{_GVdd6;edy2}g(aaKxay>uSXpHMJm=hj0-p-Qd%Ix>f-QyqTdlQ3pi> z6_9WrB2l5J6}5y&7oxVS*M;M~Vn#%wpR@`|aIi#eslKTFKCyw%x|Pelpdh6RouBbP zJ{lJBadosuxt$aWsO65EPV>qa2PCzB0mkRZl50k$p2sT;+{-=icAKkQ{_phM%}WAj z^JD9qXvCWu3jvthd(1T7!*!3wR5ectCJ9L)!7UyyV(*>uA>X;qBxxU;7&2IVuQS!2F{K<~RbjHK_pS!1=qvEo*}z({ zctf>>a4#a?Vw{XhFCB+w_^ZPC{0Q1%RS({i@{1^h%bHaaqA=Y!{HA_P8%4>M^?)B< zegKC%O7F6;qQr;du3c}zUxl%Y1pvcJ5hnvOt-x64&>71W>7>~gf4~@T?g+$W()<|l z<`M~NN!$vwzKhzX9`Oe`G(vf~E~>ySpB$u(xM|^3K;PHv?5=j4-zodY!#FD7@{HMO zR9Whr8Lv&2G;i^#?~xyvQR$YPpf)BjU%??<)!TBKEGDWg%tl(iqPQ_*T`Ji~{r{yy z$FvynrfRurv)rX(rta~(YTfFZA`xN`ib;Fb>FCRO`ymn;4Ux(N8>J5WmGWd#A5uWT zP8b#enpXZ1{IFcjx{I@;qDWR#u*#&n;4NQZGac>xP;_OtBN`N=@nZb^(*YNUwrp0~ zWBb1>2Y)L8NDksBeK4KZkiz(4RmR!Ue_{XRM!Z?jhy{I8tm=zMNLI+?3sxo(`+*xT zPFDV`(sIoy(oSRC3d>oSV#$HAQl;zAk)pt$Eb8 zX8}laA3mJ=Uorm)L{G6zhix1+ zyG!@xpXB{_OB(RRbRoW0xX&v~`s?i@FyCW|t4tw{Gqd<3;QWP0(ijW7LpsgR3#~qw zhse;{1l+`9_&TI{v$qg8^q<0mdr-JyD<1bGP=0R}4vv#3`2=*3=kf{@BNlvgS!){1 z;pA#z1AkjAjSVJe;|J3PUYEMD8j$LgdXh*4@PChzt`vmI?Fs*qMm*K!C?nD7JTHWA z>MIbh#A7`GBY;`J=1QOw5W$nEdHZ94i{9Ewu0)3H&2M?F)?O{j0~560xB^Mj5|B(SGaJV#X;eS#GWvEIQknaa zqH;p}KS+%@%EL~p4{z4N{hLw|dX|v|;^Zg=K%u4oN+SAtZRSuLlKN>&P(bEL(e`QG zMHFN=wtVIJ#`7nn59h(l&Vc@8V5Jb#&EBGb6k2CYSqq||q1@q{zkKLQSJ3=K`PHU* zajzLR^!JJrMyh{?hI9~+okaZ&5Wa2S2;buf{sLa{m-?(e#FzKsBp_KOO6fgYV*DZs zO&*SWg7+txQzmi|yt)`wT!X{==TGIFFv5<(<9px6HpBN$5Tg?ei zlWhmDBmLeCXF7`gOOk-qj-o_%ut%aMz`g=I-P@uNKi>WfXe3;;5ci$-dwLof^^lPH z8F}*u;7AMu$jgp!m9kv>Q{yt5j;WHS<+Y`Mt4%y+XI)Hs?h*y z#J?XAlMad1Kk#$a(o1eXe&f{GZAS4?m3W6QZ+%vaMdWERlZVmmFn)90HDx_dF`rK% z@Ag~M2g%q|qiLGah>P+D-v9R~zM`M*yuu{YFkRtwUrwgcQt^{u+&anp=aPI#=aX#b z{^;Z$zSqBN1sGEz%Yi(5dF@~ux7_rkK+4$jVIh~oSJC?QEeyYM=+;$UJs2qsq?`9RvH9Jeu{FD z2RaO=^ZB_e?Xbcu>$yuSj9o7bbDa3bKYmt3w7g^kBhdKh68=Vz}#KPWq{mDyK^CmB<87#x8uX4s|@LN6kn> z1Ga99+(djbwb9UUcBY}FS35#ExfF({XCv3bjyZSFx9rkg?}O6PIrLJP(@($h)%_I- z__kSKSCi_Q7{!OL@v4%(PZfn=O+Iq>%4f^wk6xH|*`v%6km%yeTh?W}VIlNWKW*bZ z5t6!HxeYeE@#v$%=Glv%i;s_eUSt_>hyIbHW95myTv3{&5Z(V+9X^mK2v*~cFn-*! z$TbxGqY$@1AsZT9KAondZa&sy2qbx_xd)*uPVJO8_6_QJ2cM{Kw;->z2d2*EXlsXc zU&VmKrj6dWK}v^5vVWcggU?!Rt`nI%ojo?)R{!F$zM@UoCZaYp6g^XXQ+J&Fe*ykZ zA`=<~7cZpfOD(}@n@p`11%5C26zvn6Zf>-TjN_5@#~T^CUDet{!-p zxyNY=pWv_Iy-+dqhn&WSk)R>2kT)2l1lvu=sH!u4Rgb5C>81fK0sd_L3)-IdZXBR& zlLw#bN$#kpN<(NTqq9#xysZf6b*F9FbL`_2 z1-FZX&h)%op3I}&wu_q<4j!P9CP)mC5jHl(YyC>eDATnLBE3Ti!IgP{8v}^5D$(>hSE~wa*{+uruW_ zZ|m8jN$;bn$+;SMgKki*A=I;!N>Kf8`xb2_ly>vB3dMj=7)(B@{LXyrPA=*w&?a*c zwtCz$#ig3s=lzOlr_LVkP<#`gZusF6x$$*DQ-^9FOhFeDDt^X-Yb^5|r(Tp89%gB4 zU3zwpVD0yfFz8-I{!elgSiCCg$kAq_8aA$=Ybx%@1DYgOh-lZ}pii`i!X>r49h49t zC#;TN6?>d}P4-nrAdT~?x(9<0-Byo{3y8YT%lIk~!pCq7j{Hw#jxIpWD@Ywe4 zAMo$@(fgDxd)WVK#|SkxrW+q&?@xRA#0O3RkEh_uFlh+gWc<3}q!`}M$r7Dbv#OPm z7ubo<03XhknM0l+?{d@U6u&8KX{FB=yQo=oQh!^oih)LC7-Cyz9wPJL7pmuX zK&8UuO6A|K07$()W4_IKG^bb7SQH!q%o(eiZ`EMDg=7_PNe_Dg^R8Isz|;(iXsV!^ z%_b#qo|0R?@%RB{Bu2(%k1a(EL?E@mZAa=Tr@PtM!=a!n?tbOA)8esE04SM+-N~6hjhv(&kd0xaEGk9iR@Pq5yX1ywVAqXz?!sm(5?;myy zfoSBhp(EE{z7<7_-#f^mfQ7I7bcD=^MxBuI9fZE22A-<~jZ2VOo6oV}mrA_hXt#-N z3|3NVA3@KHm*l}Z4t;6CM!UV56;5pfSC?14*>OUFi#`oS>9LDw-Y~qCJc-ADJAro$ z8GtoAM{Gn%bV!(w)HDJR8IcW*fy+7As%h!y%7hw2SP*sFK+|gdX7xbT(>0*E0A^el z&ayxQBu!|O*%Zv1bSJ5X(RK4^(@7B@r<#8;77(3`R#jI{eTR?W2c6oTFcpDkUo8+5YyCz$D z?A>`t+4F5tm#vzeQvMjYOd(fIeac8yO1XQ-!3wWBDL6HRkO63Slgn-_xAwH5twPy- z6H#RnF4c1k*Mz}LCL5gChF#_6(eG9?uYD#JqyCw%{)c;7(P8pGpy|e`#)3T!+-@vn zE*PSVoU;|$D_1auu*yHot5Nu|9SB(SM;RNe&>?%v;z3*8$@p*4>p%j-wjLIW9c%f#he$ve-1IC# zU&acKl>*mZmyTB~T&0%2erW*!uydHaV;upVjiEVmaun{c_Ak0bbIpY#L|Emgnlwfj}98U zpkAj?b)gzpO04!Oc^InX_J!~U_NVV#`QK}FCl0SVI4ztEN>82BWXfi=JXvfJ=XYUb z_HcviP@N!;N7zf{y0eWm+OqRb*3JIMxQ#Jy3hFR~p6eu;s>^%I@6#9lH}9p(3LM%* z{+4{Is(6UlSuF2S7yu?TAu^lwc4DEHQQSiV>XAFA6u1r&9$K5BWtxTeDVTaOeJh?Q zPx5ZEbt#+M-1`@?K)@E#5gl1@I9u({0c?Kp;XIn&x!d2l3ijx_)F>z6Dy0ObYt@p# z<}C7_(HqK>C#GdVTlrv2Xo({IadW9&S-N*3B;w#ItS?@2gH34fI#D23P(P5Z?+U%R zDeu2qO7o;R+7=>Qdoj6$vV@)Ooar+^~|T0|d(B zbtJm1{3{*|H^)(!AI%$uli8?2no9i>B7_AE_Te(JG<^7V zuLi<~GSE~y(Wtn1wUe9PpE~Tvfr^)f;}rt(%;t}qkR-*d4k|KlkO`!)Jz8aZ1Hx(} z@O|57<3COZEQtyqx7&^0G#g?esf;~IV+TFnyz;37OvytlCXPisa@IuQSl?O(FaPZ?0s z7ULUF>G_iahVo_ybx-zoxg9^+H=t()cJpDyIaAjnqQm}+1qT+`_@W?;e|{J}GhjWq zNag=os0ID@wVR-2p!T1W_R<47XZmeLiDL(7D1+W$F29-V#ASw3>$(Q-%XzZ7>#ri5 zMOv$y_P_u7)w#&rXZxJiy<@@=7vn;dCt0CxBuJ8)*}3^0ISUR(W+8v=l;|m0!SJP< z@^_3!yNHC)ZM#t+R|hB`eQl@1R$+crYbSEQ$k+*-Fn8v&M7-bqZoQ;|J}Ph8*xNfz zK{k3nH@CcJ)Qk{TZFA~=T&&x|I#w*gI!8RX=Ywq7U+fV2uOw(nFi$CS^QFJR5o20% zheNxF=q>^hl~+>>ll#(l^dn(|&0 zXe;WM2Rohq`RLjf_W>3wt>pbJZ4H;^%ADs17jmAm&^_&L1wzm_R;vTprDzenn<=Nr za);C}=+3%DhJJ?ZubHKS++4GY4HHXC%Z<}r4~NSs-3E2ttk{89GGb!>6Vp6!MSs~3 z#3aNr(I_Gkk}d1#<82iNuge6P^cGWPy+tV*S=m>?QDv>_-@>L^Lq=Pu9eA6<{ww=q znG6V(uiozW+tjryw=ZDQ#`h?G?l^)i`eNHJ5b-3ksUkkjwW*a^%S_Pl#h5Ez_q2IB z3^byJUMbQO4!H zTRTHvM`xV?Q^FmLy!~*8u_F*K!LZ|2e^jQwN#~cRV`cgQ8nX#j<&}iU=u;V$|6aQ4NlX8%6Ajy_x;xg=7 z(5edijjnFMHuxGhngstyEp= znYWDEn`pPwDV&6ipYQExEx*1|P`{wNTT8aPvmawIxWUH$(_i1pI&uW`yzG8uMGp$i zWJ#zDx-kABacCwL|Ja27HuWf?FMX{7(8;qsPU)tm`Ns6K6fY)stGdza+RXuS_C(Tm zS*XObnC6s4)>ct%Hh($LM;O`~vu%oPY`cWsV_&ZA)7k)eISNj#-bgdGR?h08F-0zH zamed-R6;zZEu51Kwx6Ct6{*|wlBWC6r&FIPE2Q(6v7-5f<M4(Q=1Z);C!BVyXNZwbBXH9ZelKkx+%H+R_U zzW2L1higk7v#I-5velmI>U&QC$Z2@G{9$Hne`fH(37+JW?a~(SrHZfZM!4x6A=dQ1 z&k6`bbN19ZIKGCgvR!f-BMDn4#3Qq`FI}aOyEQ2=Kv#Ar=DUow53LbZC1~3+iLy;n z5@gc!f|Jm}N%fNLXz81-95vVvYx?PN z-!55Kgu&J&ho+`EY-e@G?<7D*ey!H#!#Yu^0wRfuNU9jHx^2C0tEfLaE|Zt_2gXYa z`Flk57rIUP9S?_eV_1_HJyCGwlDxj|2aW4(C|YDJO95LZ;u5Sh!I=JybxNfx z#@^}=I47~=uL{)OU>;F?f-J0=;sVB)`I>Gpdr&@HSwn|UG1TqSTS+M;{>k#pQE;E{ zmi@QLmsKu`m>Djc?9j)%+;cnLDBr@$fx(299%`j}$p|dUWgc| zxD(nzBpNWqbm6id4}~f3CS58I&p;Lr_m&~DmlHTkPYE!>$?b+mO*)l@A_gg(!Ijy~ zX->KY7M6>~3LefrPjS;ySXFX`zQ=N!IY(Kxnmc>hT$-fgLcP!}^l8MhEkfLACC$p? zii~%8oyM!eH?B%_A7{bEYIte$I5af$1xsyIBe}Zk6~Bd2SeLT9v1U+b%r2mnd^4jl zRVK6;BiDpUu8$bJ`Js`X-tWY7eXR{cU40eFh8zwCQZRm!!5 z2EJ)uC}29!gh}i9(>~qQpTlPGNZIA3Ma_@$w}?J+iY}CYJ^{P*FT!qb^aVKTJTsUn zfAfanesyPOe_{gE?Y@<;zbgI5IWE^3M>CTn=3>-uLNXDP_p z4ckkH-zN`hkGA^6H=%x2S!yi@Vt(c)>6f_i{nDAfsPJk-(5Y@?4Ws@&!DH$1PR(f=dT)HeL$pm_KjL;s_=*4Xwn(<>PXBPds!f7@ z#+E!&_{0I$H%nXfbF^|YBmKrTL1fps7iEcYRVE@)!5b|YZEnw@Bzut{@3FCjN=B;- zk1ZG0<__VYo@%Q%%GxxOhJ@m7EH+z`(x4iBj_OL)eQU;QBf9qYs60^KxDRhXfU}o1 zpN4t+ZJm27pS&wVk7hA0ynnbvQc&o>+k=VfxE(aWq&LfhmIY>&B1>B~N54;pPl#ed{B5I(`vXa5R9zh z&ys*+7esYtaqd@;*_?b{PP>@CUVA;iUaPSDHF$G+NEZSr@vOceB(=K~Ozhhnijm=R z!tAFXpc;Ql9Nx!%^!O%-qv^oWQPh?Nxjtkq7A4hoMUk6v#C0i?sB9Nh*$f6(d~jMC zvRsX(7q%^{siSXcZJu^q`>=Kh{puDhKa`b;wVlLH0_Uf9PXocm$n}t48MN9GZ*9at}$d+tSEBw08!Q& zkG@LxX4`MAn|*Nm3j^=5{j&4@vKCa>F`|q%4s*E8{6yH}^t;tm8kO(^YnlX0Ne!-*P*hD3q0@`*(xpebb7# zE>$fXDV1AN(NaznltzbZTW&V{xIhpF%P}C;Se5v-hxfciS3`MZ{q@5-b}#6mufkRC zT~HZ)-M!CWQ>$I_A{2Wh+O&LjMG$Z_kIyx@?z5qiQZ%v;*UL?VpiRqS$-~9}Y8ri+ z=g@i8@uPwhMffaKD9pRa$7O=g7+U-Cm|2-rKDy5S!D{(L~25vSSL9wAe_ZqdkNi=dEr>37%J@AA~lj(9Js=I0t^63abyXnQJY~MR?0Aue*+Aup?+1HID_3RVSD>3ud3=D=l6-n=Q zLz|X-9uv$qqz7X<4^C`7hPPhMyO?xbr0$X5^MWEn?N&08NvHZztLHks&rVK>I1=f*H_a&>+# z%$=O1%AVB*Gw_;-<5Xre@acrZ;p^ri+BpO3UMrZbPPbbM1TH4_`Y`*UbNuIB!;7(# z`?k(v)MM78Gc$CA3=s*$!@@bRZUJ(w#5s58YMvsnm#%;D`7&WM1G!O!%p0j5%i;Of zU2eBbR@tPzqlsC24b0^vV#WUKcg8Rsg4E{3=|7aOQdG1RT*m2NB1*LR<-@RaS-mQk?HyochUqnjFic&$P1CaYqI z%z#j0LDzQc8ymAR-eT5Yt*3D_SQr#X`ua;WK4@STXDQ9!#;uiVhoMM#)qP}(eVi$k zbh+7u$6XdvFzc?b6crhS z6%|TUWFlH=;}vM<^ap>??h=P(d*@f`0VSH*8XPv7YWMv0W>#VLtWn_}(UWE#sP(=m zzeh1zKL)jxME-jS;x1m|yQ_iGki8b9=lGl=@>e zdf3N!(U(KJIpw!;?SYX=k->lmb>F`hHjnK#Y@KhN{=nK)Y6NKgoay#q>}UWftTv2X zq_D81rBrSMn<+4#28Zd zUAy&moJ3AEXzQY{I&`phtM+8nAH7s<(mj&tcHV{M$p~5y_Y6S!@X6Dvav#2Nr|Qye zOMnWLqw_t_P`MhnT-sbEp1qP*;}f`CBq&+@g(Du#k3k-9|1U* zaScnx$BX<#yu@5QZVn}y%J%s|z} zo)1t*xYYtR$cLagYd!<;3{sJLxKpXEW-qOouJtMi4|axjssG+~dse%H)fe}6g{BDC2vbi0ZfX~NS9U^! zVE2S4J-)xc#pZc959r?8o8atA0I-;GZ~Z0RU{G#FK-Xgu@Yxggk2hYAMBCy4p$CZW z11}lvc|~(w^Ckf@+7bB<$`2wnm2{8GFnsmms@9gQ|7Rs-3)=IQ!G z1J8wIU!2mZc$ijYXwq?+_TH4^Dm`1#=Z>N>)NmHihQY(u%KL8yBY1?wS!9fyeC89a8tB6ZLhwvwfZ_fJ~p= zgpl|nBnP!QplhnAKM%41(C)AOMnyIW6kd*BY#PrGc6>a(+Hxgrlk19)T05{V90fpl z4iB}-WAtVBjpd^?6Ei#?ka#)|R>;&iZ|r@cYo0XQKOnU$$(uV_VyFpS`?+^OI+5d2 zJ&%kQ>oE<#)wyluS4%Vg3q#|4Y-|}e5E^oC9Z}X24{K~0;lqbsx`;r`C;MyHW*P-{ z?AO7={?krhx_vROKQWjqGY+Kv0ep7`gQF2w)Z*@H7$zzBEQ0ICYT+$vPRVklLewyZ z)}b{zKOIHT@$uV=VS4mqYdsZth=pt{J;)sjo|i}RTz=Z}aCkU9{DU*P1^pB*jF*1r zS=1&2lZWl3WU45u4#Fa;Ft7f7oqIcU_fX>7Cf3Ihn_r;`KV!)v6~f-|9Fb_|vF`KO z&QWAB;4_UU0Fw z-rH>~t4Ow5xO`bJSn;(m^FlA_1MdZ`Rb8Km5Fgnn%KdOQ3>}8HRU=cJvcNg~CVLsS zb4+RBJ_;GIN7G~%_?|k0y&PH27%@iD6oy31S*L^Ws1t|rp2%Oyoz6yB`~0@HLKV79 z4WtSn$4Kz!#T~o4x(+WWhGpE`(lbg1xvzdOz~-wB)wMi?ot$=w;3thfONM+7>*D2z zx`G1DTX<9%CFlX&?~_A#6o2A}hq&TPjb3QJ@>?RqVxaF;DbsoTcFpPI7#=3kh1x*W zofuXrcRCco*0Lq!meZBf;e}S1^CKooaNkGmi|YJddKB91&q|6@?f)%8v&@mTp4*MA zS=`-+ct+=5oNBUvuLl4GDIxBJ{+hRb;JbTf``sp&@qH22UG|hu- z224qC-O*6OqP%=F|C}tC##;*Opyb&gWi#{1@cipWYlN^o@b#Zs%K*rAx_~WI@O)zD z@%ha+5Wk+~b3RF$H!ZmISmY)kDr zgx+4{%_m>q(9}ClDl{W5`%@aU^7?}OG#_^{qL$S471(%zX0mj}ru6!rh%`k{MFp55 zx~|~ovekZj`R1HQOBQ(pl5}&^Lf;deT!M*jbR=?M@I_16%mtgp7wUNq^%hsplkQlz zCJEJQTl((TBp;!!tjyvcbUzMt&74zR-FbbJNj5d5{|5Rv;@j{6$Ux_mw&)e^Pxa== zPFH&%buGrQ-^A{9XibjWr@%N6Lmse&dqEKmcQL3vte~!v3@_h#4=pCDXn)P;Ky~){`P>lK(l_%* zT>);W-zI$5{Cmq?pCZwlC#9PxcbuVweIk!iZ#jpEshRg zymkQxMe?%_WjNt8pXIaoI-|;vuQbtDA=^b!d!$UKVWoRqn{?kcBHj5e?tJTIQ?tmg zyOED>B2u)3BQ*5*5@=x=xH=)L~NNv08e{&igIx%^nu4r^O2+5MbbGrQJy)s zC-df61y`lxrnx)o=kueF!HJqxdHqJZ;Xn4OZqkzgDSVC(Z**ztBFAWXMqI-HdiE(I zqAjh?)_c@?^)k!$^Qa@A55+GE1+ywfeb?Z~qkD(n{J-AnyJa~z4r>;uVkeFeCdMS$ z(ef3rGZ0DQ16K-G7$k&I3cQuMjDzZdNa}gO8J6=Mm<$Mx_iAcSudD0YCJG|!ujhb0 zERbBJmj_Q&`t4{N3Ku5;3B^AOb!33;Z^rNqQyJ+nKQEx~Xdqb^4r-BhNNi|S0$1mE&(;yjy^LY-@hIFx>^`%T+~UJuy3nfOxk&lv zd03!@O=hNxUKQNU-YZ74exL%e9;Nbl{9c}B!elo*bQ-$;LkZc)q|UUxw6 zZnbX{<;Rl7itJNuzUHA5S?Xg`Mk<3{XqKj1)m}?ORBrdA8ND!wJs~C~?W=+k!Sqq= zB9rrZIs?r(SqVharsd!_>fm8N5;6{l{Hv`V_5uB?4G~9Jxpoj`r{kC?0>=(MUqxO{ zC2QMOh%TOaa<>fb;Dl988kqEXu6StPO0#X8R9VZM0{E1;O--@pQ7}S{;JbOOuD?od zMB>IU%Lsx)l!R~MU5?J5lw7?_B@o1JYViQGBkR)x3{z= zld6AZx5UpfCr{@^E7)j;qwb|@#&fj|N z;$Y|Y6h7B?@LT!UJq-g3kpal{xyX4H^+0x?vF?Cpl`|6AtjUfACf2KVExkI|ziMH? z?#{MO@v?=R`5_LB^VT~LxGd5$hP84?*}gGG4yAau_K4d?G;OBWR2-!5iaZO#qg3p( z!$!aiiar$U*U`>Y`T*G?$+F8}!k${T{TW9p;Xeh_s13{?Egm<{iEMS?T#ILugEP7_`7He;&P5_3FzV#o)1Fe zoO1V*ezELjjq`vaxFU6L!JQT;Cf4W7pw@?d)Ja&r#vZQRPNfnh)vMNTZ-G<6AvoIGjH1dk^sA|G%QwYg)=)EEw6&Y5^M@0QvIrvV2EO@$xV7U zHl|N)TqtZicr_=-jhr5pIA1QcSo_Gh6FSvVO|1cLP<+u7!S@1DRHQY-OY|rGh=FbN z9G_`Q`b)`Ncyk=n`T1jb7a~d;B3ySUY1}{2>j{dR>gcUuG1201 zwB01xO8f{qj!kcR3UH^6nw@TrJC$oJ&wHn5H`8OgpgU?-^m zdQvAfxQZ31!> zhZ8Nvdm0U24OI;=Lqjy!sdOp-&Lr&JZxK>Pes=C zq{a_NgQRx@en=$5w=$?QO=6OW!_n&}JZaH@Um7>yR~=5;oBVmAF`_x=gJvx2TYs_k zsn(Z~$_)|Yy9p3kum$xkgN?bzR~F;ljZ=syX1bZ*LDt&Hz5vYc?s%%|(@;}% zG4Y~Hon#{_G&BVG?EndvNmhI+zRG)W@1Hu*P2E7+G%UW~tBbrO%O40Ny^_{LpWRSZ zpYK_lu}eL`E$Z0~O47MIP`K=D3Av9UdHel$EBSB>3z?jP+tstbe;1rFaSiU7BOjUi z7#wKbYH2nYP5)_n;micfjYGy`nfuoAqvc{q5W0+V?n4%y!=(M98u z4#y@{wU_3P%)9?~`$uL#m`LPtQ@tL|q!)=u8=eJt1)m4JfEUvcySNL|*_(L?r(j;d z&;WnTwVuKhmTa^w^R%$A(y|>q=#5^pc^(kC;x|R{-3Kk>ChuYY`Kyo!)QsgT`l>3+ zVJoz(@l|v>Ws&^XdYj!-njV<@H6Fl(HA$?_#7%lwZ(#L?)~A60^G!WkzpuQy)(N~I z^S&gF6gG==jm^9*YFU#k<40Cat~uOHcPVij+h*Kc?tY6&CYctE=V5Xc`NE=uBk`GC zjd*WL!}xkIPL)5I2D|SqA<`mspJ%UiHAu=u3IEWA0n)MyMbOrX?U7#7>BYTmkql0f zW+_h{#yG#5;K^6?9yWn-N#|uPV!h|Zb2bl`H<%fho7~X0@AG^6eu^|vS(sB74X%C0 zoa+9PxKvzjj%)Q0VP75yXH!VX@3ngEAdCsiy3=vxj6RTla>?7@{Y3*N%NgE3Ftud8 zQ%2nPXHZG9FCnTf9!uNfq&IF9aoCV}D%5!E_nX790Ywj1o{B~1B?216G^B;aAhvYua8ycrV=vWmpAeli z9+inzed5!Q!1|^nX4mzfJ`d5KIQ$_M{O-cPChvN<(t(uMhPx8UrA}i2^9Hf%UDN{$ zwn}q&DVw;-7Qc5zZd>hbj1jnUyJ(Z|PtZvt0J=Rn-1r=zF|{Djf&}y9SC#^{}a7$eFt%)zm;LB{%PuH&E95&>U#$_y5VB0dH{zG(UXVZ&>NY?zjv{-QiXcO#MoZ?vKfdY*?N) zM_#V;YZ}atjL_sMq)zw!x2eUkv#_~e!QCoAL`V8-h z9Ri>Gbk}C!V48Ptx&Qb*eOYTmyFCBn!;3Ew!P@`WCw{LkM(Yy(+SQuB%kz)KyS!{^tt=;ylf_0T@EsJ*bOJXq?M7J{nNM;~=FK3MM~1NL zq9QQty)SFBNIdRl=|@ECl8D>XiO;X%zDjBJmfmAE_D^~fL=k`Nw9SQ;qEn~2iTui& z0>1I%))kOW(2^RyEvOnINu!6ElS5x>x&VD^eq{D$^DH>abYvOzhLCb<)k|r*zN|$Z zVU~=vwjsn+NV@pK;&Bmda3loag{?wLw5|YNFA(CJ9_7OH5+z?b$~vp5sr6Do<+3U9 zbkSb=!Er%2Oh8%E0(tg-?7ekV zl+o8VJTo+il$5jzh!RRl4wY2ciJ?sSJoB*)#`R((`YN1KLc=A?CIB!D#X@Y4x6-valoQ=|C< zlsPbO?3!7)7?JNeF)hYxus9CG$f@=u0lC)JI!A)tl{6pA>^2uWyLTM86|pPCg*R8; zylF4HGA1Olpd0cj&qSr#o7(1yufM-PdGPq6_wta^{^GpI80SgB%86RKQuwLQF3MJS z1@51scJ(hd*X#S@!uwSyv_2zs)|GK}LtW+M4C2xd-{)GV&H9FpoA(~_YxcX_S`dj$ z*H-Wul<~TWF|zhNlUZ9TRWtQdKB2QbDklxT+O@JPC8FpZ75m$_UOK*`n(`pL^ZwbR zP2h#}mbsp<^Aca0gu1)ysPMi|@@!Odx{B|&1{0q3na=pg|6EnNpIzdJA`MGuMd#b@ zcEe^QBjq~tfE@_B^giHpirH3D=)0S0VJZl4_mdWx(?zF`+7f8f=Z3PL|9?Fl=N5ccC->RBjU zU+K?9N0dRXL$CA=M!;o*&qu@>xM^!|Ra>F0Izox4nwksvxUcMW?nEjb|Mo_11Iy|F zFgwKfwO1T~Pmfm{Ti1DM4K0-hb%KZo23Cov8gWSjWxEEaZ7<88C;hOOhg?P3jCJF} zWeNQWS_@P5GG7#!_AO=B2Einr!!6vqQs*iQvmXP`(v9mnPkSjyX=N|boEi+)CcKp< z^?D7iiu3m%p200IwiEGo$>*beF~qsGT_8(Q;Jt%2xr%{FdDa_>oR@gq87#5v;R6CU zl9FYRhd)P5LNXfY8y!8P$Gz}0%HfA&u5bT5xLS!a2Tsbhv4>|noquXwSc_m z?DsrF{drjLvHnA0vYM-jkZ#7?Ry12WlQVreE-Av9NGqobP{z{^0{%O2e>#%+xm&@41bk`O~YQtz}2Kdvt7A^&5o zN61;BYipYcBc9K~B9lG#^j!&HqE}Q^!})Lsc1SKlf@hImzlL98I%KvifDF$-9&4{_#ot;U0GMcG@si4;KYUVS1ed zA#2xlC<4kNc-4gp(zjiGo3r9NFBfqPu0@|I9Rgt~q(`4y9q?>(ge25tYkq>4tt*R! zXFNDZURFltW5rG*@j`zt|G@JwU)&3)C6&`trN0Vx97pA1@N0NBo?}OKYU-uTMGXq> zJ~=bSev#pWNo{0-$(Zr4 z0!!rpB*~icnen;5RTO9=&+W_Dz6;eZk6ZbhMWcRF#pN=&2qS zfxx7R1{JJ`2nx1li>ghxq|cg6m$+dLq)i6kZrj^tTL(5o&TkzyVngr$&TaySEf@D5 zWb0KJ*=1jNzAs+&%#4>V22~U|H~DOvw@076n9=Ymjv}O|SE%r9QCR;~h>OAiTjf?O zKfQzr{4Nivxke$Wo!fSinaSF?H@(wR>0bH0#6OM)d|U=BoXmY|`r)~1?cL88J@Ne> z6V2zFUp&$dk7|o2t>ok7I)A^bt84t(aA)X5MViu(fKdoOHn*ZoBIBV8iEYmq$tH6= zn~H>}ng^et)9zFS%Wqi$BFG6}>J^u6S+4oL+3JxD@x zmAmAp-s5AEfen`&Nr=4zp|4vRGo+#ToZ+p2FC5p!b@ykx24{or&)@OQUC?yb5$>j> zu|r!8)P+z46g;K>UZUgR`Nu0~4R;4ykSSssMmSvv$L#I);leZeR&OOh7y@jw*aAbV zH=m+$YC0l;=OOv*J&3F)HN(xTMn~9j>D~WG3%dRLSwe34> zDL)Z3NE@BZ1tl! znr;&05~m6RyUSORvBRj<`ZA|cO6qvwr3l+9(X8*{#Qbxy5tn~c^iIKV1?<@PBOo6= z#G3H*sWj^&w~>I(9`&QzN-eUGK4!?rvI5jSKjnHle&~A2y~8l>@UhY5sM!S81eIS0mi>G?clPf*PpMVPX<3KeAkA)|0hbgS3>moRuJeMG?@QZF?QHbOPwv&6p{xD5V?Pq?ws##a zu;dP2i{;gCPnhbMF}S<<$7uxJZl@%Ot0h2JGRgC5kYCFB-e8m)PWbIuo^|!~Ta$va#XMk$TT2satQJ z0TB{J2+h3$DwP!XB7K!4Trho1nOQk)A-tmthRtnlF2)UrUbq0Hwm2dpRkK(Xh2JHj zhw%yBfi(vru`Qh4lyn}uj8QnrUR-kL@b1k{+&uHX9s}8YpmHww1$d*n<_!%swRB7x zx~;i}mwM&d^TWQ;!z@T(8zd?w#vFD@cRx{UD8h%9Pq!Oa?pe`^yi>lz2w?mG23>a| zLecZvzumQ?9cNG+=_GFohT{`!W~~$z>n;ki>QwrCqANT8S(O-f93wB`Ex;wPJ& z8NkTCZ+3#^p3>>C#tRTg=W8AcLzNTJ$|fTI&_7Slzw8T_Zi&#-DBH zKdh`lzH5;&f_q{h~ncOsDy9-1qZx4Rn@YJL< zY>Sb!KfbzLqfv4LR!@fzIzB|-0uzvFl_ecQleY-`HdmcpQ%Lmm`d-Wj;`FWpX z+wlNF&@|RlK|^$j_OBr!pML}JVQhX~3zytnqlOaV;zSK039`3lh9KOk9oN4i{Z*N` z_l@412%l7!lxTLU?BT*ca$FY9MsuMPZY4V9V7vKz^)`iIFuKWR8NRl!m6} z)uy+JG20kt6R%xY2I4#)tkEE9HxKz-HR>XK$N$VweO3j6O?-2Z8b&B__4z@MTc!)u zC&@ieVQI^s)a1&^WvoWCC$`Z=3WSGb8Br0BFi>)vf(ddEu5YXiV}#fqF>td@D%LC_ zt{Zx;ojfbGn~K@-o>0l=^JqOY4@jc5<O#HQtXjACo&$Lr{0dW-G;H#)zyb_?Bj=d&*HFnEMylgv(bt5oF5Vnp#91d{2a5GrxW=@3wp1v%^FN$Pf0IMTnQyzyV$+zm;eVfNUF6nUKuiGOE zxsC7R%qSal{+!qm`t3y24rJfFU41ojQVV9%m2y(s;n(Xm%$Zyk4YeY~{afWCWF@Bs zXJ98v#Yh0tx@s8t(W@96BG@PL%xHNi>roP;nB#+3>2t%QqY-2=5W-$!8@&n4c0#VZ z*{6~2XjV@S+3b$!Co>yOK0D?7UX6Dw%-4LDwT^Q*o4>kh{-&SFi=Aq@)T^}Q6gcaV!!SYFAubG2ELgm@ncY@B*r+{t%0mzUW z`rEO=-3Vm!w|>Z+y+d#fQ{QrAdPuPD1Ke(6=jxGA106NB$kPI43{O1Y8?pWIKoIYDPrCgan6IYw?H$xU>CYX`{C=DF z+41%&hEeVOUtHZ%2I9ARv?mC}?@kS@1}B**+QTKQ5Y zDe@&_kh*ujh}L%-f30+|w0HxpQ}hsNuq#bc#jdaK>6RI#v1M1ul6}%Cg;Jfv$r~d- z;lwMP0wnFXn}iRmIvrHB&OnU*6vU<^?4k%wvVEOi6wg3*SEUy##Y^}ENw#?P$~cl& zM6Z10lqjUxd-y3xp{glnw|TH*JKf`aYn2L_n{>Z$AGSL#(sXQOVQ3OPeZD1vBEact zeL*MRxd=#Jz>P@0^NgpAp0z5<+m8DGZ_0evkA{h)QZX1OFp-f@j~WyaViSkSa4oi# zk&$=_eWYV9p#}81mG-h@KDM8BB*=3sC9RMFRbFi-Gi_~x&`2!2lK^v4{k&V(&E)8P zaXma=ON>P)moWa^ub?}+<<7q_fguaow1>aTm%tDBae);Y9yj;q(_Pk2xY+Vs7! z=#?Db>(({yw*i7Eu?Ox0;lA=_$`NjxU+}bOx+Ipw1~U~>WeLJ=UZ|PFyM1=JYra6D z32wOp?`47Vc_l>I;E!>zaz6TH?3B-b9%c1XKGCXgAB6oSF*XKN5N)!McmNkdtJXB$ z$pt6FMMGlUXtmu~Nh_aJX^$|bxlq0ZT)!D%8N#r`7OL!sD%1AM2U463JnxGFSh z1;{0azouaFdN>ohZVJ=(jt$It@x?PjNDuLHzD*_?)03LWb9d~2v)l*YIDQg8JruoW zT%OZVUGiCzLx~ylY;yHsn)@1?gJ!|AtOQAiS`S(e#2|~bcOiFQ+KClqO^2|evgT@t zsY>VWVx;SXK9cca+m7a-?ecsMq8Lr-l`|LU2=5-G9?NJKNNDoLw@4LTuEA5izb*er zM<+KYWg?~x!}GP>G*4qra3HH-jFyIa%h{#!qyn!5WIlRh*8Ik_OL8#SQ(q7hqY~hV zK>50-@g8dQrEmGY#ER8f^-aK3q&GjuU#<;0A2^WR-`q$lK0S?^%3y#QU$*Ygv_Kj8 z!-e+E9GhO7<~yBqZ?AANoDn}k+y;8-(Lu|H|T7{EsXaAMv11E94SZDEMDG`!sz&|z6C$|_Om#xl!<%O}$I zJ>-0&SRQl9lWi`hwkm;p5X9&%EuY(i#)bFZSspIJiZq(})9iXQT}bhG@!H)lvDL#; z+Lcdu4c@9ywxDok{(70dK41YS?OcHE`?y9Omd6gou2fg@fZTYP(v8vXmTxKT+GYLO zV;l@ll&Dm?q7iLXafiMuT-UE-)Df=oPRmPfivB%)eXZiQxsgMQ+N(f8bO}ydIjK7( zd#A?ED=EFPDGA)hCF~`sL1M3KAlrghZC75$|KX;eM!`|QE5FCZDGqG&3Sr5&E$|`` z^hvwz^wOXrU}bkEL1?x>RN4CFP5Df~uJCH+E4qZ%I$l1ALW4e>jV z%bi#8RT6sAhTT>iJZO>X@0B`V8(#EWL!-aB6I=acnxtG!|LaI%s{JGVF2nq4@q{maSuE-6c|T zFGiW&);t<4NO~xst4wX)-`#Nn(3YM0O z{)NsiGt+}5+n^D;qVoh?tj+2`i19%2JsF!5c! z%KXO~53ed&*nhk}chfy=`_}%(JP{LYGm|+iIZ)%V@V|2uhp~Nm-od12`3eG)q{&k^ zLrk1FuF8no@4b(oUpehFEwq?QOHIuk&czGj;o13B`II}OC)ytI?XJD`=Ucmv5DyZr2%@4mj=2ziyk)2!? zV0d)HsE$sn#5@VGUq-k0Li9JCvnsDGl^tnvY8H+Wf;9a-#M367%BzHbE#*^o@>ScC zZ>f`p)&wSRmN~HG?lbM_JOYfQFG>X)PT&=H-CdFFZ$R%@ z?w_QL&vqSZUKaEJYbfoGI1lxYDV8)FjFOC`tR4e8BfD9=-mHAu`FU1&@+rw6mJ5#5iQ^b%>|VYJSY3h z(gD>JYS;tVdt$jAKn$>k(O8Ai3+MtO%`$AYnD&uplXeD=X1-zdJ+lQqE-q(d6i*4t zx5fXeI1K~7VXf6x*=QIggiGpk;cAEfQ%nrDE>!WeO7fPHrkRuo5*_no)kd|AV=iH* zm7UsfZWRy~OgEzJetzEdvYJI)zoz+0+bI{Tzmk$<_$nK&_lVCeD$=Aq1#(&a#>io-dR>F{bh8*dQglc{8v%j z=!agNnTqq#gcO82uqNb3T7BK6S^G6NqBzVCt;j^X3{&WGg*K%jhSS4|zBQ89FB<94 z?)}%VVnu;W`*h#_mtsO!io6<&uN{5TE@NAT_+Ry}QAOUidVS#QcRbzOA5+eJZsC6R zzz9*WQ}2r$9qH&g_;ofx3z%VPhusaw0r+ym1nRK76nMV02HMv^!oH9o5Q`h5XCD)o z+3R*)y|SRT-RNCx(1hU4(n8U5elpmdN8_>AHmmy6)6&aghap)y-( zY~9mD^5^Gdq3*6h*>av>cE!ebw0rlPCKZi-pLoV~1e0x*#doBkafda{Nt^&@TY_Mx zU01YPw=h|4E4vM|Khl$fY4zI#p@{9+yIu9cz}LkQa$@(5lF#DN>!)!KsBq0tLw7z~xw>uC7sJX#+`^)I+?4zcQC ztp}T>#Bi|pMR2NlHtC)%c}*%5Ot(>yJZp{O3j16%C-*dNc@*^#lI*jSwlwN>L(~3C z<s;sl3hyIO>SUeyyaZ~LLsWUZKb{<4pWgM^C<8>3=;HOI z<>*9(PAv`Wpu?Az)#DSy&~gRb%F44$nB*$Tc9;_|OG#){wN--GspQ*I8#bTD)8#XB zgJ|vD%=IM4O6s3ZQq08$iUU2Ejn}J{_R*-IAk_NdY54keLym)2x~)3sJYsuRFSJ<6L!`JmpkLqK&V4_q&Dk z6e{Mw!r$9^=}C%>0fLAYS69mD`}EHD)9x_P{axlaxA<%dopYiX)9#}1uBz-p65iax z2(goSEi%!d8H^byDW(6Zr7nM1>{|wgxm4_JQ1;`n>1{GPKK52gLIpNdG<|71SLw`S zL}gikTeCduGO7yExykli>e218@fh3S3ZEg#}s;#5;N9_WhmT#^tQ~b_L zA+Hr6S`n!k8C^Uin%e4%9OmboS_V~pWeq%e#9cg@txkeeozj2PyH9ta6xgMt;dKS@ zW14R}(G80YFo)4++hgdmVX9`Q?*nt971N^8rks`IgD1@_M_W8@%iA+6qVZR6CdLl$_&Ub)cUST3u?TzSWxEP5eRgMJGBE2DS^TE*{?=U@-h}JU=Vh&9 zN-VmueV!$9NZrzpl~?y1m=|?bdH)Ds+?5)Upa)_)jMqPm#qFk(?Xk9c(H|K1ScR zRt=~fwJMo=(LAkPWmXe4GDfjHg)bTT45~O-EN^o@R(Z=zzrpqw)(C;!V5O791BK}; zhESh4=gbqmWqj-@1Nq!V!5X|4DgViNI?oa9af80}dZ&GCr1asp*Nj3v!(9Xjwkq%A z808~WE#Bxy*j<755~c|pQqL?VFYA)H+jgKxf6<9KrT~Yru8?fdb-->&)pztm*KazP zYu)#;PRtp&51)cN@GCuVpI$Z`MeAsPF!jR^^4XWh`i*rsH^pSiJiV07ersv2TPw1t z7n|I|V2cc&oV=84jOH0PIG*6NpEyc0Y-`fG-83uex-et9A{4=w+ zjiu^+4;X0-o2&$mhKJUr_vdU|laCg{X5Pu)bzdDdr0Qpq*ekL^m+{R9+RoN9Cc;4cd}CTv3*~IKW=ymIA3R&abHBRa>K87jB_waW z)VQ^|j`&&s2FY@=*1LMUMgEV75zql@EnNIN$k=sVg;7?R) zZoFW}Zbb0@zMD-;$rF$jdP#ucXMS41%nW3>mE?M?`MQ{2;?7RsNVJJS$H)+DRZ$m31l?NlsId?iO2>VGVtJ7@vkW2E3zdrXRFDd}EMhxigBUC}?1!NWeBt`hf_Y&S6Sv5~+q)pIIV{pX!@dLssvbfO9rNOarE0kPU&f zPAQ<}#dsZ_Z&M4c<5hdFH21#jZ#hs2tTKPW>Jcq&zGjLLMb|usXuPm>#e?4DVbn@9 zC_2n^)f(F`VIu9P8hK*R<@x?#;{5|S-;HbI9;vVDq>5}I`BreJue1xKuuI&y? z2~59r_Nf9jI^`f|{f>lE*11l-m@JK4%x8a6URG3R$+()d?I^Cc2eHJ!C7Z*y!ivlT zVeFKz9O-U9sU}8AOoX!?7d5y6k=_(2J+nX$OA|4K}M*O!yBcUF`t4e5pIP7kHA5~2R?n{~YH(@Rgg!4HJVkxVk z`e9>;!<^0tqNQx!KNF{ZZ+Iy?fL&CFNRb??8E)$M=#!EFw>fPGSk89{cXR*SqZJ>~ zfID)3V;W$%?eBvvP)@YD27K_Bus%usa@;FY4PJji{Isf_ug)rsK-_KkTO>P+3qZn1 z3H&Jop38s#MYBF|Xa_xPGU@-=p}$%M0O-H?2mked;3xRbDR*GZL9zY6U&@>c%nrI+ z%k&@1`TdoA4RGt7Bpu73zmC?~_2BV9+=Pi&{;0^GJn-pP!YfaeWq0I}z<1>aBvCzQ&gZ{N34{Hx zzA*B)D*Nw7tRA3VV6s}8_Uyl3s*orgV*Y9TtW@{!VFs^*!}aLo5&9RM{k_Nk9L3ow z{NAhoXNg8tpL*hGEjh5K!IzL%eaR z3@K|2w=SIVPR@SidrFKu$>t*ZryYNA#?KHe-oIPz#(!Sq^o&n{+U^y6x$@uD*&nD5 z;a!#5vkRZe#U4PC@y-ts|G6`#w;=rIrk;KCkG74g_~QEhE)e`bSH$`rX!-vK4-jlk zT5>iE;D7sv`JV^)|682?=LG)e1kNa`|F=Tw|LDN~!8!mp%8TIoJ-+iSKq=!1kByy^ zicC)Cbe2Bo7Qe*9b5K1mKcYrf!F!_o4C1h`vWfr$$6NY4si|r1 z`JG%?RMFDP1S37llfQno2i+tSN!NLKBkEFNv5e-HmiZDe1wY-=#tbuM;IcGl{!%hM zt2F7sXv}BOwsA@t^rdA6Bqk1-FNU<2a-6DDQs96#1ID^u6!n-*O^|R?286k5AYB-q zrGZpbQc4sQLE#_Jtcf7(YlIIyH)!^?C~G5#ifzkzczI*|a1L9>*>FZW-{1UhI&%5) zX)!t~>O#5K><6EGrZ9?T4&Z|gItpi!{B^c)De`Mb-9^wX?( z<=FNaLE78j@YX(`>(JYut+!xeWc@&XH9`td>w20$@~cxp1(*}BfVTGMmAKrshC~E+ zNld2r7@S(E{Z@_@-(A1fb2^LeH;&Dx0*2Sl=K5mJX*qNBe0`bb1LdlA?VOw!2Ye?R zoExAk@8{>7k-_4@BIBHO8c%~V*C*#achVT893LnrO62MtAatE_(yBORyv@|rk)*tN zIYlCHzj9lw%c@Ngqo}>^`2{;GO_W+t7#%n0w~jikiqnC4!V9WUj2-#*HSz-0Fhb4Rl51t%LUOb&6PpdC3E$irJPLc2dx_)tmE-cVg_zGuD#Fhr`Z8x zq8vw0miJXKvS+>c|&CSC*$qIK==|J{LqVk9+4h(PMa(d}|HwfP`uz8cP{vL?1 zUn}DWpYfIBxW*|VLwe#20lhyYF0V^0_I*2av!AS|*E;NW7R}%}5k^YC_4D!YclMGe zdIiSGOmv>C=nYm`Crj)eU5W!`4i4gtkye~#uNXiD`VXq@pYuGe38fT&Tj=dA0=c&> z#)Df{Bnj3nRYEM@mxcw+k=+<}H5hisb7{a@+!;B2S-_D-F)|ko9jG{zJ=mB+iO$C|U z+u(nEe0U!73eU`BMp4mpA-_q_{(B6W2_R0ng3S);-yb*s3k|H_akF(Ci;%xMrhVw0 zCnXq>ZxVBRr@K6|gj>Np=8*`GhqUfw4IbAoUA*{Qp7RD6DdTzdH2sJ^=~m=7X@+Q+ z*%I8A0ZmV;K;g*PCrQtO6?hYj=4hlciwI)9TzF_j_}&-qfVRWnozLDO*>v;76jDxN zQ8+p0c8&vM2xj^D!p|rBi7eHZ!lcC3Pr`kza)h>TvlifP2wqknbojPyxxa_Kla0$Liyn17&O@%+h2o5ArXqMS>bNZL$*@GY<)-Q@2ooAIFxu;-kM&@M3n zcj3pOVvZ^`{#Z|@&1%pPw7*(?GT`Ka68+u%0u`1S|3HRnmSp1Cls?)C5V8>d@! zEyKecy3zBo6Ebr~$Gl5YXde2dXe)n7>uz$RK8q*l{>wHfm({7zC?7}r8wlHh(k)@l ztWx|NBz-e%=?2QVqt_-YKUVP~U4{)U!Xmkg({JWy4T zRpd$3dc^g$n+HmA;<9ur#c$bCgu;YZX{Vp(s#iffiD4UCF~|Lly~G7x)>U~{Jb*Ee ze4BaC1keTVgX6w51_~dK_2~BnWWCwr+>;4e3oG-_h(lRk=poao)p8PhTsM3FDz}MP zesK6YKa7hOWVGxbIiD@3^h(!f;|~bHYWT_J;#AbP6iS=h%ICe4#EYZ#ojjaZ9~y(3 zH^vW`SgZt6hx}$53iFp}ZDmqj*LX1tC4d@-ES0k{8yr}|s6Skv(~K35_27q^0WL~ywm zjHw2^KwE=o>L?Zr{hn`EPsuC23ap=Cp3U?APwmC%RO}#m^t@=fQzzz7*0%W0BxvCo zU3>ZAgL{xlpcGqFvH)xX+t5mHc?~eKexKzahv8`4s^zY2pHOG9z_6W{)yRPvpuH=_ zI}=!!7N?;7-4yRdMMt;f83mYZy*GNK->q@5!{Z>GmX?N08=cK4@jwlcJ}G&AlAqA4 z?!r)PsDOj1B)9B^i3Hbm+n&y_1!GS%=2ssYH?36w;N+qJJ5G7m`3yr#uNv0&SC+>> z%qf@#6CS~6#~14DODlvB;Rpqqf{^des0P5B(}t_{F&xJQ>Q?A@Jp`b5KI+YV^hG6} zm5MVga-Hh#X*z!7k%#kZx8f^lAL8QowPI>kL=d*Vjg5CpLD}rI48kbwt^Jl!iZ_;5 zFZ!s$Q$!|t^*|H$bacp?-{L1-+)amwou|#qh%uD(%*<&Q!ie}>&zbY|=t|cRPKx%2 z5Aj02_w`^k{zYHE5`#%-uMiVT-4oA7Y@%d{i$c9jpOhAwk2BaKl-8zO4p*&X9Oifx zK;wP?_iuz&@wwc z+g=VBhO}i8X#K>_@mGqly(J36YFXjH*=1~%a^q_TF0X^Ak}}tZv>Ukgr)KGVqSe>4 zGtH#V8=o0VwCvCSkX-k2oI8a<@>$@~-mZSj0xsOKICWguopG`_B?Eq*MS{b_*=xmX zq*{-Rot-^@axmQl5LZkG)?|=!)lQy14yaq)nLmF%-Gmi-BlGjaB(Qat+@98Q4_0DG z2J>vvK@H$LyM9^Glzzov(34Z|OBj>)O2a@0Nd$3+Zuv)sUFymNo2l&P`g^|bsaVh7 z0h3o;RxMy~9eue+{Y)d;9@hnL6tw$G6z9QW<}-WkwphTZhj#r{hhujPrR~(A&zy@v z3?Q{cm*{+sM^*1=(=%CGVI-Q}VOBX3 z%;$f_liLEoHIvqm+P5b@U;YeTsiCAjSx)>yh$l)jUq}lthHsPdbBIT8H^+Esu~vYw zkW2zTtvYMA{ZV+>f@do4e719aCjEUp5|Dx6>@cfn-&0cUX(@eraE_+z2`)GNjB$Yx z0m^pt9T^&JFa2@$)8ke+>n;HG=`qpt#xvx+1SM&-3UXpnPyE>)V_Sgho7>kP#q1fg z`~&t2FfQ8w?YJ_D46|b^vsb-0g+9R!daO!|zug=uQ2y{*rX!B^y}}K`AF1!J+>g0> z|8YL|V3q!%0;fsqo-4wpMO>Rf&$*Fhv%N+;=oM|!~N(VoHv`T z_evI1gR4v>#8H)%DZAdk=;-3)|3k{U1}TgdybY1pRhQ`-zQJ7F|UjemEC@@q$n!9 zGvd!J!N2fC%9>{GFA&`2uVgszSUQM3TYEK9t)e6Jg|q8SG^%&skBvH7ZqX{(Q7j8t zX;XeMl}C0 zN^?2b4mP6b(v!Y8T%h8opOgh6c!nXV@APB-H7*DpUN19*t-aFbpz&*}Kb;o~J-vo) z#fjhRdIHpU+04`wJ|3MaO|NZ4^21Q~vTU9mjm6`%NfQ056x*fpEUFp?l}e$Tk1PUS z$z!FTr>HPVxa#K0kUy^a5sZ5e&UFzoK=Svtr+2;vqll()SzcI(`hbYhhfeaL?HBi&UhmPeCqvs(6(4wyI9#EHC{&hw^`2ejt+ZteqGvq5 zphO(}%aF!~`3tMxE5a^_Dg`eGh_cS42L=s^QW%8Yn71Be#s5a^;o-sXQ2dfF7t^m6 z`t6~t)gb;=$;(Kr2-@>a*=7er(Qx@E%g#gXk}2EK;)jx3E#;n0sBs?V zFc{9}+_H^;M^dCfQ(7)Y^|GDaiZB>*XR^M&C!3BE0f$5JAy!aAT1WO_D1V>|WOB2{ z&v;Q2&4n56HWKt2eATe{PM)P_Wu=jU^+=oVsPXlW_Ucu?;ojbUU7JxwXtjZ{G1X#@ zh)d@QFSoAL7w|Ni?}4O}2s|Y|do(CzNgxE5SOUU2J}sD+LJFxIb?>421*NOwgsj+B z7l}vhuV~)e@FQ4N#q{SAo4%{mHm9jj8|pD*u2Lx~V$Uw0GZz2h;0>f=fyUE0Cund$NeVU)%3>iYuBt86b-dCG5&`TND(!MOgC^r zYN@}CL%S~9bTY1=duzEb+A#I7$ZVHQNJ7GLbX(&3*ku>5t!G76TDDg=7u(Wr_}t%W zKU}F+vV9VAVkuy_?5AhDOd;irHZC~-BOZ70CD^F#o{QWhXDSWHp=i!h(86J5$-Cia z1}*jr?ShcI8~Db$U5lnbZIb1XC_iA*Dz(on(+fM9yPb>R;rn5dZ+S=^-z(H_gOaj_ z{(|hRh-c#y$Y(Q{SQ^!tDWp6EqSkelr@{W84);()OKdq!)Ar!BknoGQ*BrMUgYpkN z^`JQcb>_R++J{bCA;%5aJdgTB7j$+^uI5kGPuMSUPbVYD_?e#ZOvLCQi&iYgeOy%gwbo%Z+7O*$D?-of4}9p?J-(Uk z)&`l*8vLOUW=O&&qw`!%#?crVSyqDS zj%%msu<+Mjgu157M^pp(alxlgdZT$$#27E?pg7s!w^{2q%Y*23vfuL&fvf_+^-Lj6 znt!qt#0FlF-Ng*akRXNFltFac<>i}5kh3uw*jTsAi(le%-xa?t&$NQuHmufciz6RP zN{*_(ftbhFZhl|XOg_$}hki5?zM_i4HHTyje=(~4Cs&JczB`aSemquWS=l_4+<90Q zOjEJzJ6ObO9@)11)OYIbjTKs&ueM-t<-hG=j%Nhsl`5ToVw+1A#v(bo_w~ z@pS*lzVc6o!f|h`viM(#tG@`TojKRJiA0{)(#-iL9~5wzQeXKY{dRDCsWlr(w`cDY zo!*U^PzL*TX`j%V(22%)WPX*k>4S5E!D(KGuEs!@Gm^mNdkdx_ufSn{K0Nm!sVpm4 znNW%!S^7Q0m&KvuRBsTFz~0KPq|CS|G3TYI8I9R(b?1Kc^E5`|7&Nu=&K{Gm2+n~u z?>NuRN}-St=(sM{&4yt9MV$j>#_9T>z^5+%yFrc;I6tZ>wSvnfwWZ)K_BE+CJd`}S zvi(D(^I2Y3D4!VT*NkLF9=kK#MK9OzvW0uNm-T#6Lg0unESB&LV2S`$^ zoo+6e+IW|vXF<(*IHPV+K$J+35ghMDWQ(TZ+3`aAaSb8w6A~zEBS~C|eO)0xfNb@D ziyjNx$C`DX%lOt!l!aWn0m;@adcb4w?K9U1wp-pX!*bPJEgqGP8Z+gewC>_0f!YV3 z!({CHb8x_M;8Y^KS$F?#*cHQIaLVuR;je61NkE9zAWKn+rTX_FpW2$j62FQ0zd=2P z*0k}Vd)BhBheWe?-rJ(9ESwi#VL@nfqbDV?=A9p~LSisM$m6CrDu6-r$NU$9krW5X z2{+Ur{y5O@w>wjjmZ?3hdRcs-KEWxA={n4#Qch@aCRgYq_Q$J`<261%gIUYV1r0}iENqqovH#;!sjms zV=OGyqs~;D^%m>}7euD)()VaF=CI6_6=aQW!W-Y<=3v*>mZ%qxujOczbvEON~WS?Hr#2P&P-RXfJ{ zC8MHFvrBF~_VUvgN$8XxJZL?R@}|8baT0v5tc1OGk8tWu$adm~2bK?s0)lhEOHenc72_>Ws$;1Snj7CB zdVpDW{e&YauVb|QW)nwtk$?TO>MI=>KJojwB3vMn+Np6`3TGnemqHkV-|f(l{^ePr z=J{&|(>Sz8$ZKHbckx`j>Did#A06(pJn@j0$bQQr{i);CS~7(!WCs-tmlxyNn4#}U zdt6iOdV{h?0IEaDOal#_qk35){Mb;)gWDV>N8?kza&W!pOFQDRhDNQcUjqe010AF@ zq_&pAx(iCH1C;>JmpNQQKbL2GQ15>8+@O9nEa<}4LIoo|K(1??K)z>w?BV{y8%3%R zb1)gYG2p^$@*yA@GaiufWAbT%OMPK1;yGj9h_Hk4ug}VT)#wY^`a-n33?-SN%jdz&)KgMcD-UaDQ-oQrTr@{32qh-aK!X~NQokzAE)5gA zN_)Q^XfxehoNg%?B3!TAw4Kj{p+=np%BDKvd-AD6p9rf}2lr8$6anJ-e8B|{`7Md--H+<3Atv$^o89o6fC!- z+28CR{9RF{@jKTCxyK=g8yj7bedjqvu#T7R>{ur)>(R|JY-`(UCi>`r+UcN2E0GZ< z@Gg(@VD38AtqacNS4)TzL`QSIPX+`QL9ZImU0;S?V8A~&*h;$N8VWK4edAVI-~1QcoklGT!@KJ=ZYYBivam z-)m{1+<)fwUP=Rz;WPv9ngYFblbb5^Q$3wb!&S$dH@|93$L=np`_q%W7v+}S$#VT( zoWqxi&W-RSZiJ)-1>NnTs&-YbJUVpgu|}<`?vD9nX@7eP#ocKhoHn@6gyr^=lp#rT)8GA=6Vt~LW6v2UcBBou0dPQ3vX z1g-K<>s4`6_HSZYhUf99tw`^9y`?E6oP!}Q90g_+djaoT6AlN)uB6aQZGt> z`egjH&{d{#bBB3*uyZumdCa}C-k1juwOP^~BOqX5rSLe1W6s_dDl@+9Iv+L}oP-*}u09TjWdi(O6n6V& zk;ksg_MrSqY!NKRLYBCKWh5{pN%naQi3$a-4+iTr-eJ@uhww)wsXC6z4rn*&Gb$r57*k0pXj0GMz^AZ zfNv#^J#g5LWI4X?Ow_!XNoGW=`zqDt5#dn$cLTEd9=Xb=kZ@t^S%?f0V^R8HfCvKi zWrR2{uAB<AlVyRyg7hRB#3Uz@$J2_7>rLL* zzbCrg#1}+!GE_hf&+Uy0y#mOS_Lqt zVw%9q#WjTo=MgW=8n2AUz&DTk>v>eF63=XD${cWBgrWoVEl6@(902izr3^a;M?sc zT99oTnobwoP-FE6S<_W@+(p)cUU)oy$+l14Yyx&~ohOyQcCNS$*?$&X>LLX%U;>wX z@?&rP&5|cY0D)qz5Og6!bwo!fX+ECorn=a9cWEUo0BZLdb{_(MB20PiqK+odL|XB6 zZRLW?i?0P*ukocWg*xhxLm_-_QMElEV)Z_)WXdDMS~XyC)5Tw=-&ER|fh|?MSpU3r zWAVfUFzP|`&(<3FW0so zGGIEWVdpWPd^4|@VAkG!TLcK8ObyQPNB7x#vsQT${#t~z5ffj7+TUHo%N*)+tP|Nw zxxK4Ig4&+8$A>&cJWG|Dx;c)6!?&)iKfB}lG*C(Ndn0G;u+CG|Q!g!js>HV_(nP@AOtzuPpXta8FC=3h@mR~i@ zQg8BwB7z}Qz-g?Sb8oT_>q`9_EeBFPiw)hyL1)u9mIEClHmP`9zT77t!!H^RJHR9Y zUFkxkepuckVv|K#vvA}=J5m&}VoC)WU|X%H%16jD_U*cfU#k`?H>UA`4yKF<+juU< z7z*&c-D%EaZJ+cOi{(IPVUy}J@chMgc=6e^n*A8I{O@Fo|xA7LIE(!%Cv6}(EbYuxaEp9~TtdiyeKZzjF;l1`~*6CL5t)uK`( zoM@sXkv)$Nl*kEK zpS0u^m?ZA-K8(*K5GU)lx3N(T^{g9B;$;~P0?}H5dat^JL$!8Ap3ciIdKU~k^pH2_ zE*kwI=RAR8BrO!w)Uh4M1HDLr$Y%mVLOFU%blT+<{+2?_kZo$3WHm9rjXQ@1SL^AP ziohs;9=OT*3lHBf8e5~Seyx^)wRF4QJ2vL1CeULno@{M!h>St=+;Jy>1Lm zYqev{>5gN5TI%f3gqzGJc*%xO&03j$EX@eDA-1Ekg*%6L&03V_?rZ)riS&Be?2*LK z*t}irDin9wN$f7Fps<9C44fpf+peNz)0*^2*}E^Sd~=HEFi@nyNu1Z>V*cGpe&B8AWs($`d1OaE}$=Y_|mPUPFg+bN~epApcGKcOOy5GdtvadRu60&`>j z8OLmy9^>HiBWiW_#*-kSvhBQj{^DFBwFI;NZces^2`=LK0uTX)Cy&2HlUg}^pn+b- z8uGMmscXue{-xy`TD}Ml5#XVMvlT%J+pvdLHwTFM@lnkhU)`A4eRM-L=NE+3Kmt3B zZ!GNv-H@2;w!+K7PS=8$>zcBH^x7L}yj=F!*m-(7I^sXPd&l6l>(zx4Xy>EbX&&-m zr3td>O7&ITA&4W4%_NHm{wr5sW$whF$@BxVpz$VhU1nKTzz?@k&8^H$bECRna4Z&C z2_%2~3bod6ZdYQ2u3p zL21d$aHxE{n{I@qLNn-g6)|dIc7$MZ>Wiv=_A07kfcJ`gXP1NlgzBNZ0)?`_fsvA^ ze|_Kk^mk8yVmxxMx9HJx!^0)izRM8Ny}5A`Jjn}BedY1{BG|NXVy<%vApM{-Ht2h% zb2u>VbdtHrTCCE_W1*y*{(bZca@jkyHkyO{xVjRFo9o&%$vwZhj-Z=(%+! zzGA&`9^ER0Q>OGB>(fcPd*dYktX3hw%>=PPp%f?;EMzf|``s-l5-&ls%(?0(97C;# z16s=tV_+KKaCM|O%1m9WT6(v1?PNkN6i&lO4Jp)M*YrCKXO~Ib8V?}ZH41bW$(i+Y zYk~`Vs!&i{`&by=etx&Mf6+uz_atMxLIz4x`Q|od)|40WD)BW@C3Br2VzA{f{$@ih zpCjRil69vhC5;!ZO{4k~9OF=o!#B6fTE$A*2&b^daFFnfFG3AGp8EV^N&m)BUZpuA zoj8QrZK|@3j*k)=0D)?(8RWI{&UPwbdy+%LPkDNlICQ_`l1>e{E`2XS-)HuZ!T?Q_ z%ds)y#x$HTnt>>A@6<6w;-7;%TXpUvxis%^T{BP#m@v-^LL~sZN0&+NR(OUHb0B3`5oAqJ( zlZ#S4tX-Nu-($Yh$4{5mq6ft?KoBl*4;2gD%~m==W^C1(I*;`T4- ztvdSkB0uyB956&a$}6dPA$u?D=VRmmxAvac-qE#3hzybyK56q|k_1#oLxi%^5-I6b zfrS3c9+FVLT$c>XgmHrL#c1^`^u@;nm$fBvx!oBKm2MSdJh$$Kz`5`UEhWJ@<}ofT z@4K1fOrqwH)svGL>VlBA`CE z;e+BPs^?FB2LuQqI+zL%tgytP*2YjsaTD1&9qz1cslJgc%ESR+*hW{)uc`}==caR| zU)hD1m@Lzb071c>qkAi|1$%w4wI`aIxq5g&*xOK9?-u0d0t0UjpZXwO!@II?9)GPW zZ>!KTN`vHrx&l-0id)w+9S}b7;QenlOicm6I?(eu)HnpsrunI!wqc1tqQf>fcOs|V}S&tQ%sZ#)+UUkKF?(`w+DdNP3Bh%9+r&RkBF>WBAjxl)}I+MqvW&daB3Bf?1Cw+7R^OM7B zTEb*TXv&<|oE`j!o|i>+AeQekg&ik%s>@BbyO3I!@{O;%^t7vKIy}Sbe z<(3P{L{>FXve0R%&{3NmK4Ie4i2>Q@+sw_pz*}b{*54KlVBBT|GVPagfA*5|aIqB5 zI!x7T*v-_8pG5!`0|%OyxD_UYA09S*sFz0$;{*&hL(Fk&(@f~dgg*Z8BppG{NIWN8 zH;)88!_g#{#h(#aK10GEN&Qqa3)XeaUycfsgcgkCqE^H|uFNQp_l~!1vYZAuxVY>O zsm8{|y4DNDk*PiV?)s3tcxHuiB>>V~l_2>YbrA2@4?t-(2S=sad2K+ml3IdM z?wWn8Hp`M{Tmcc1<=tyjSFtHCx-s>;L$oLyc-~|173-WaLMkb2 zJ;_n}gHNNO4fuJhpr9!xb>)Uix+cU`k+k!=d0?@HaXQ>U20YPLLnBr34J6|Q{s+cN zwB~Qw4deBD zvAGlnXfs~U>!HZ1S7`>yY`+`ZOv}b;V&>5Me`N&Y|56o|tiqo_`%<2kJ+!4*r&`9S z{1FADRfvTe;9m69kHv!B#?0zs=>QB1!)85?((tEngSEbo|heo+zKpI09;R#(NYvKGa)}sc-`A zF`ug48%T;Q295niLfP|+;Ql!gl3DPLJLgzH0L^$@^Eugn_{HYAl%B+0j6V}X>(7O5 z7~zwRR9u$fTGC z&JF}b-lLhq4CN~!K?dq&|J%U-ATX~D^f}5N2tIrnzh9*P`NI@zk0&nuozUe}0beP1o(X1w zdWs;^LxeL|$799pd!bKP-WUQ}^&h3#VxItZo;GUwT;R>0;Sw2NuFiOH-QsR&c^FDk z8q88Zw%fFTI+dMNiIuvryDKU_8i7Nhp+nUmrPsVPl)2=&(E4J19Q{`rt-)NhDi^WI zS8FFugx}@a*aPZF9UnYyW`FbR3I=!e!}XgA1{6sFLvqxGE1R_O)k!6>HE|%B{A`6s zv9(R84zGrx%Z1ilevU5M{7|OJxb(^bq|Bq&b3KS$=Q8H>9aI#=#TnGv{$_u+kv|j2 zwurH1wc^|JN$83I2Rojz>@8h;U@RDw`K~{ZW8=YHf{Y(M?AM17yVH6BvN5=oRwLxU z6vq@#^FD>{a1vUQUwZ<1)lc+)Jb{t{%0c~cw^bo3OpCQZGblb@P0xeuUTt07C`iGp zv8`jUssW#Io1@#9lgufE!FRj4Dy52scHng2o7``H`q}hZsdk-ftXyUWq?yp%d>ZL` z8U3ZqiEq+lYX+F$0KQO_uQiL_<)iS1sq;Y`?c{yj1>9q>lO;*v*p^GZRd#C1ocAWN ze@fJW#7aJS)x(PCjWYWY&wOTm+)7&&u=$WhxcTh03u|kIt?g}+S4?N`Ds7|G1V}Yh zv4;1LU7 zD8WN1Jit$4Ckf>NEx78p$`WquDWeh{iegNB?r_;_0xv6?jTl>fg^kah@`t=;n+U8)QdNi{>xJ z&3tdUH4WLin$O@92>Fp|gj|2;>`b9hm3i`jH!Ss`*Wby-tw85>pQBr)v5|Nozv8y3H&kx@EY$a4}9)`X>H^(dm!|3mmdY|Q^QKUtla3ZOr>-FQPd5=Zi zf=qHCg<1*J16R~K>gOM$5kv}wg@xrectvV)?Q@M$u4eS*oX^=Mw!JQ1r-&hts zj7$YIO0+dTOSgExBoV1?Fz`5~D%?&i#jc!v<-e9%Efzxs3}E?ry+e{pi-_QRxuUM~ z<;0*k{Oj5?DEj2N9i#s5mcg(qCCDuP$!C>|O$KtlJ|LY)eEakCIhTn$Ud z?2Y%O3bmb+5gue7^H)t)&d$ZroPNa~@hBUhj-{DeXZ0p&96~{%g=&=O7LWpgP;4P6 zE3=u8zuOb+#riu)*mt(;E2VL8!ryq+qzYxS2?-02)#7|&udh%xe7x7N!Y~2Pr}1BT zem6_JPO*^Gz+F|UD)esN(ml~L_D!$7<>!T{)U+_ouk!o`40hqE)NnG)P$?uFad7@o zt?rS4w-^1F&}znkp!a9@lIW!R*`kaM4dor4j#k|l-!XAHS&5&kvL5Q{9SwNGrQKxS zkNJ8N^%W+5idK}<`whYL^7?toDW8dw2KY(&$oOj)C2#uAI*1lWBjM(gDof?++JzvN zVg<%>J-k&#q(e!tVNYwExYxfM&e%dX94(jCNHX~H;!EY}lwo?JBV_cQsi@!Id98mj>gKWg>aw)E~U ziZtI^^A_MFznChl8>J|1DxD$>uUzvG?+I1kEU!%6RNv$jZ+f{dRr#WW%SQhWhvm%S zaI!im`$E?TIG-zR%iUvGZ+xhE#8^)>d(w6eYOGvk&!>*nVC4%(!VaT0Kr>b_s0^Sb z0|OySTl5zYfc^L3;e?<^Q9lo}{Y(bo5VB=~x-9BNiXDa7;<;%v5_0O4V)7WEi}#%( zekuAEOZRbVgMWfWkI=DiQ0QRW>kf%t;CgOicpjT9amOFEE#AOWwt*!Ssj6};eizM5 z*x3^*x*KXy3F$LG|1bxBqC}@k($%D90KT1E{HVwKSwu~fEKV=Ha$YO$>pqSnpeAF{U>(~>6hFjf z4nnOs6+Pa-&c>lF;QTQkJm;r!E!S(B)^X5WvjpiYr^8eSv66xG&a>M`;VP3p5NCvD zv9`J0g1n~4sXn2jJPZ|>U~4|U0jfMGkdV(54z*ICn4`V+oXp4n6zwLw|^rA-T%FIQr9Dg{b|loj|CSCN{7e*@59l zOO3JJP|Y55^yHHB%x^-kI*-?8!>;blF-H`%kPw7w>N;tMH?qXM1RxA>n|=8nzV+)< zBL^iW+OC_L)OZufL}}81ce6XsE{*5XvZCB7f#Y|O?IMB^yFQi2ZEYHBi(b9RPVOW9 z6F`FQ~j#KZ5{+Lg)VJCfT>n08C>sNTq4XeWau9g%>K@|PE`tr$fU!9Yr7)5%5 z3gRdgp;X#*WN*1hV^<57(_bEoRtFlJ?vE#~-5q*x4a;KV%timeGA5Yd+B$!c3P_N9 z+{0?iY{q|edHD*S?1w-;3{4j+RLKvE_*^rf|4hO0S@2V@)#}m$Km4qA@ROzDM8O`M zjfQkzy|(KrO;2rSV59*2vRm;-78o?dIWID(Esq(3BMTA7O@4~5ukRJr(}Yjy=n`!6 zd`)d+U>=*hJoeM{!{4P@8HP=9;puw)`&Y+-XzL`)iQXv>c4iiFHQxxXx&p zmdd8yZPWRC(&3kgDL0HJ{gwXuKfr*d81lnXtM%E9e{Bv)5=zpbEVR6m9vf~FqYE9; z%cqX{@=K@M9^XV#Jd~*@Dw1HG7D+1E$h|p4ED#~f-can?&>$`U)<&R*z#Mv~jQ-*h zZ^qtdp-JVi_2&Ud_Uic1evS9{r!yiN5Fnp@0fWZx9~eon)-Ymb&xqz^f=>oxZzUyA>(+>NnhJ>!9WDA9X9$APG306 z(`J11l4i&6uL`29gcqLYWUA%(|&3BK~ zT2L-yYIgC2{v+mxA7se1B_x>m0c5wnaz6MV#>}vhmGz$fLNVn0^xV3-o>`E$So)%k z1aVKS=V*uFczqMWMc3bU%>4?zlRhf_s;_g@t!cjoQ8i{$ffdHd(M~CRmf*SjDcl&n zMqbZ(lW%Nfr1+esp1%Go;86F9M(X&mNvJen*H~rB1#y)HKeaHJ@VOsLh=}rK;0acB3Vuy&9|HxLa z_j>JAB7Dvx3N#J;kELsbxf4!Lg3at;S&JW<#7X+5KbbY8r2)qtWH7^fu;`~)r+Mfe zR?aaLSr;6Hate13ks{9VDAj$W74kn@pdB0#imZJISAKXf9Zd5@@ojBcd5_uo{*Svu z*eEj>j1H(Tia-_6e?uWumI#(tyPj2@=Qew)R2sM~F7mjIbk&|Ek>ybVs+mrso(gpl z`5YTVTW{P$jo!G!g0xwCJ8Vl*6F`!s=MgvC2R|W3G483*g^N?V#0jx%X+t9|*t&-r ziYX6#%b8%&aVe(~4wBV*4M07^Ooh^y9>UCOw{EJs=u zGcV6??LtVhM4U_zphZl@F7Kt3eoAisE{IK!y( za6Db0Jpx6rijxo zmZdBC#YJP@n9=%cTxYo~6%;4w#KHG8_{z5o1msgqK6Rq}V|hd!XtqAqw|cKTgN!{4%0D`9JV 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 Date: Sat, 13 Jun 2026 20:11:28 -0400 Subject: [PATCH 21/38] Stabilize Free Ruler help book caching --- Free Ruler.xcodeproj/project.pbxproj | 8 ++--- Free Ruler/AppDelegate.swift | 22 +++++++------ Free Ruler/FreeRuler.help/Contents/Info.plist | 4 +-- .../English.lproj/English.lproj.helpindex | Bin 1919 -> 1919 bytes .../Resources/English.lproj/FreeRuler.html | 5 +-- ...ruler-help-icon-build-492-bb4e930f489c.png | Bin 0 -> 46228 bytes .../Contents/Resources/shrd/styles.css | 2 +- Free Ruler/Info.github.plist | 2 +- Free Ruler/Info.plist | 2 +- scripts/generate-app-icon.sh | 29 +++++++++++++++++- scripts/release/set-version.js | 1 + 11 files changed, 54 insertions(+), 21 deletions(-) create mode 100644 Free Ruler/FreeRuler.help/Contents/Resources/shrd/freeruler-help-icon-build-492-bb4e930f489c.png diff --git a/Free Ruler.xcodeproj/project.pbxproj b/Free Ruler.xcodeproj/project.pbxproj index a2b8faa..27f6a13 100644 --- a/Free Ruler.xcodeproj/project.pbxproj +++ b/Free Ruler.xcodeproj/project.pbxproj @@ -567,7 +567,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 491; + CURRENT_PROJECT_VERSION = 492; DEAD_CODE_STRIPPING = YES; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = "Free Ruler/Info.github.plist"; @@ -596,7 +596,7 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 491; + CURRENT_PROJECT_VERSION = 492; DEAD_CODE_STRIPPING = YES; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = "Free Ruler/Info.github.plist"; @@ -814,7 +814,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 491; + CURRENT_PROJECT_VERSION = 492; DEAD_CODE_STRIPPING = YES; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = "Free Ruler/Info.plist"; @@ -841,7 +841,7 @@ CODE_SIGN_IDENTITY = "Apple Development"; CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 491; + CURRENT_PROJECT_VERSION = 492; DEAD_CODE_STRIPPING = YES; ENABLE_HARDENED_RUNTIME = YES; INFOPLIST_FILE = "Free Ruler/Info.plist"; diff --git a/Free Ruler/AppDelegate.swift b/Free Ruler/AppDelegate.swift index 4537aa5..f4ff2a3 100644 --- a/Free Ruler/AppDelegate.swift +++ b/Free Ruler/AppDelegate.swift @@ -1,4 +1,5 @@ import Cocoa +import Carbon import Carbon.HIToolbox #if DEBUG import Darwin @@ -145,14 +146,6 @@ class AppDelegate: NSObject, NSApplicationDelegate { #endif showRulers() - - // Temporary while verifying ticket #213 Help Viewer routing. - if !UI_TESTS { - DispatchQueue.main.async { [weak self] in - guard let self = self else { return } - self.showFreeRulerHelp(self) - } - } } #if DEBUG @@ -486,7 +479,18 @@ class AppDelegate: NSObject, NSApplicationDelegate { @IBAction func showFreeRulerHelp(_ sender: Any) { let helpManager = NSHelpManager.shared helpManager.registerBooks(in: Bundle.main) - helpManager.openHelpAnchor("WelcomePage", inBook: nil) + AHRegisterHelpBookWithURL(Bundle.main.bundleURL as CFURL) + + let status: OSStatus + if let bookName = Bundle.main.object(forInfoDictionaryKey: "CFBundleHelpBookName") as? String { + status = AHGotoPage(bookName as CFString, "FreeRuler.html" as CFString, "WelcomePage" as CFString) + } else { + status = OSStatus(paramErr) + } + + if status != noErr { + helpManager.openHelpAnchor("WelcomePage", inBook: nil) + } } @IBAction func closeKeyWindow(_ sender: Any) { diff --git a/Free Ruler/FreeRuler.help/Contents/Info.plist b/Free Ruler/FreeRuler.help/Contents/Info.plist index 168ec52..6f7971a 100644 --- a/Free Ruler/FreeRuler.help/Contents/Info.plist +++ b/Free Ruler/FreeRuler.help/Contents/Info.plist @@ -5,7 +5,7 @@ CFBundleDevelopmentRegion en_US CFBundleIdentifier - com.pascal.freeruler.help + com.pascal.freeruler.help.492 CFBundleInfoDictionaryVersion 6.0 CFBundleName @@ -17,7 +17,7 @@ CFBundleSignature hbwr CFBundleVersion - 491 + 492 HPDBookAccessPath FreeRuler.html HPDBookIconPath diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/English.lproj.helpindex b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/English.lproj.helpindex index fa828428796d0ceaf840444bea02dc8180add0ac..ab164da8b7037211373f0aaa7df947c1556bd75c 100644 GIT binary patch delta 1227 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 diff --git a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html index b8a707f..304f025 100644 --- a/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html +++ b/Free Ruler/FreeRuler.help/Contents/Resources/English.lproj/FreeRuler.html @@ -3,8 +3,8 @@ Free Ruler Help - - + + @@ -42,6 +42,7 @@