From 54d836dc7075a797a8e32e919ba5ce6fb12195db Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Wed, 29 Apr 2026 23:03:04 -0400 Subject: [PATCH 01/26] git primitives for modify cmd --- go.mod | 1 + go.sum | 2 ++ internal/git/git.go | 20 +++++++++++++++ internal/git/gitops.go | 54 ++++++++++++++++++++++++++++++++++++++++ internal/git/mock_ops.go | 34 ++++++++++++++++++++++++- 5 files changed, 110 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index 7933d90..9b1ab65 100644 --- a/go.mod +++ b/go.mod @@ -18,6 +18,7 @@ require ( ) require ( + github.com/atotto/clipboard v0.1.4 // indirect github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect github.com/charmbracelet/colorprofile v0.3.1 // indirect github.com/charmbracelet/x/ansi v0.10.2 // indirect diff --git a/go.sum b/go.sum index 1050c8e..f43d5f0 100644 --- a/go.sum +++ b/go.sum @@ -4,6 +4,8 @@ github.com/MakeNowJust/heredoc v1.0.0 h1:cXCdzVdstXyiTqTvfqk9SDHpKNjxuom+DOlyEeQ github.com/MakeNowJust/heredoc v1.0.0/go.mod h1:mG5amYoWBHf8vpLOuehzbGGw0EHxpZZ6lCpQ4fNJ8LE= github.com/Netflix/go-expect v0.0.0-20220104043353-73e0943537d2 h1:+vx7roKuyA63nhn5WAunQHLTznkw5W8b1Xc0dNjp83s= github.com/Netflix/go-expect v0.0.0-20220104043353-73e0943537d2/go.mod h1:HBCaDeC1lPdgDeDbhX8XFpy1jqjK0IBG8W5K+xYqA0w= +github.com/atotto/clipboard v0.1.4 h1:EH0zSVneZPSuFR11BlR9YppQTVDbh5+16AmcJi4g1z4= +github.com/atotto/clipboard v0.1.4/go.mod h1:ZY9tmq7sm5xIbd9bOK4onWV4S6X0u6GY7Vn0Yu86PYI= github.com/aymanbagabas/go-osc52/v2 v2.0.1 h1:HwpRHbFMcZLEVr42D4p7XBqjyuxQH5SMiErDT4WkJ2k= github.com/aymanbagabas/go-osc52/v2 v2.0.1/go.mod h1:uYgXzlJ7ZpABp8OJ+exZzJJhRNQ2ASbcXHWsFqH8hp8= github.com/aymanbagabas/go-udiff v0.3.1 h1:LV+qyBQ2pqe0u42ZsUEtPiCaUoqgA9gYRDs3vj1nolY= diff --git a/internal/git/git.go b/internal/git/git.go index b7b9941..d239022 100644 --- a/internal/git/git.go +++ b/internal/git/git.go @@ -351,3 +351,23 @@ func CommitInteractive() (string, error) { func ValidateRefName(name string) error { return ops.ValidateRefName(name) } + +// RenameBranch renames a local branch. +func RenameBranch(oldName, newName string) error { + return ops.RenameBranch(oldName, newName) +} + +// CherryPick applies the given commits to the current branch. +func CherryPick(commits []string) error { + return ops.CherryPick(commits) +} + +// HasUncommittedChanges returns true if the working tree has uncommitted changes. +func HasUncommittedChanges() (bool, error) { + return ops.HasUncommittedChanges() +} + +// LogMerges returns merge commits in the range base..head. +func LogMerges(base, head string) ([]CommitInfo, error) { + return ops.LogMerges(base, head) +} diff --git a/internal/git/gitops.go b/internal/git/gitops.go index d6ba52d..db0d181 100644 --- a/internal/git/gitops.go +++ b/internal/git/gitops.go @@ -56,6 +56,10 @@ type Ops interface { Commit(message string) (string, error) CommitInteractive() (string, error) ValidateRefName(name string) error + RenameBranch(oldName, newName string) error + CherryPick(commits []string) error + HasUncommittedChanges() (bool, error) + LogMerges(base, head string) ([]CommitInfo, error) } // defaultOps implements Ops by delegating to the real git client and helpers. @@ -494,3 +498,53 @@ func (d *defaultOps) ValidateRefName(name string) error { _, err := run("check-ref-format", "--branch", name) return err } + +func (d *defaultOps) RenameBranch(oldName, newName string) error { + return runSilent("branch", "-m", oldName, newName) +} + +func (d *defaultOps) CherryPick(commits []string) error { + args := append([]string{"cherry-pick"}, commits...) + return runSilent(args...) +} + +func (d *defaultOps) HasUncommittedChanges() (bool, error) { + out, err := run("status", "--porcelain") + if err != nil { + return false, err + } + return out != "", nil +} + +func (d *defaultOps) LogMerges(base, head string) ([]CommitInfo, error) { + format := "%H%x01%B%x01%at%x00" + rangeSpec := base + ".." + head + output, err := run("log", "--merges", rangeSpec, "--format="+format) + if err != nil { + return nil, err + } + if output == "" { + return nil, nil + } + + var commits []CommitInfo + for _, record := range strings.Split(output, "\x00") { + record = strings.TrimSpace(record) + if record == "" { + continue + } + parts := strings.SplitN(record, "\x01", 3) + if len(parts) < 3 { + continue + } + ts, _ := strconv.ParseInt(strings.TrimSpace(parts[2]), 10, 64) + subject, body := splitCommitMessage(parts[1]) + commits = append(commits, CommitInfo{ + SHA: parts[0], + Subject: subject, + Body: body, + Time: time.Unix(ts, 0), + }) + } + return commits, nil +} diff --git a/internal/git/mock_ops.go b/internal/git/mock_ops.go index a8ab662..401f805 100644 --- a/internal/git/mock_ops.go +++ b/internal/git/mock_ops.go @@ -43,7 +43,11 @@ type MockOps struct { HasStagedChangesFn func() bool CommitFn func(string) (string, error) CommitInteractiveFn func() (string, error) - ValidateRefNameFn func(string) error + ValidateRefNameFn func(string) error + RenameBranchFn func(string, string) error + CherryPickFn func([]string) error + HasUncommittedChangesFn func() (bool, error) + LogMergesFn func(string, string) ([]CommitInfo, error) } var _ Ops = (*MockOps)(nil) @@ -336,3 +340,31 @@ func (m *MockOps) ValidateRefName(name string) error { } return nil } + +func (m *MockOps) RenameBranch(oldName, newName string) error { + if m.RenameBranchFn != nil { + return m.RenameBranchFn(oldName, newName) + } + return nil +} + +func (m *MockOps) CherryPick(commits []string) error { + if m.CherryPickFn != nil { + return m.CherryPickFn(commits) + } + return nil +} + +func (m *MockOps) HasUncommittedChanges() (bool, error) { + if m.HasUncommittedChangesFn != nil { + return m.HasUncommittedChangesFn() + } + return false, nil +} + +func (m *MockOps) LogMerges(base, head string) ([]CommitInfo, error) { + if m.LogMergesFn != nil { + return m.LogMergesFn(base, head) + } + return nil, nil +} From 630e36fc5f082cc8e075c6820fa9d7f836456327 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Wed, 29 Apr 2026 23:29:42 -0400 Subject: [PATCH 02/26] extract reusable TUI parts --- internal/tui/shared/header.go | 298 ++++++++++++++++ internal/tui/shared/render.go | 396 ++++++++++++++++++++++ internal/tui/shared/scroll.go | 30 ++ internal/tui/shared/styles.go | 56 ++++ internal/tui/stackview/model.go | 560 ++++--------------------------- internal/tui/stackview/styles.go | 58 ---- 6 files changed, 837 insertions(+), 561 deletions(-) create mode 100644 internal/tui/shared/header.go create mode 100644 internal/tui/shared/render.go create mode 100644 internal/tui/shared/scroll.go create mode 100644 internal/tui/shared/styles.go delete mode 100644 internal/tui/stackview/styles.go diff --git a/internal/tui/shared/header.go b/internal/tui/shared/header.go new file mode 100644 index 0000000..e33fc13 --- /dev/null +++ b/internal/tui/shared/header.go @@ -0,0 +1,298 @@ +package shared + +import ( + "strings" + + "github.com/charmbracelet/lipgloss" +) + +// HeaderHeight is the total number of lines the header occupies. +const HeaderHeight = 12 + +// MinHeightForHeader is the minimum terminal height to show the header. +const MinHeightForHeader = 25 + +// MinWidthForShortcuts is the minimum width to show keyboard shortcuts. +const MinWidthForShortcuts = 65 + +// MinWidthForHeader is the minimum width to show the header at all. +const MinWidthForHeader = 50 + +// ShortcutEntry represents a keyboard shortcut for the header. +type ShortcutEntry struct { + Key string + Desc string + Disabled bool // when true, rendered in gray (dimmed) +} + +// HeaderInfoLine represents an info line in the header (icon + label). +type HeaderInfoLine struct { + Icon string + Label string + IconStyle *lipgloss.Style // optional override; nil uses default HeaderInfoStyle (cyan) +} + +// ArtLines is the braille ASCII art for the View header. +var ArtLines = [10]string{ + "⠀⠀⠀⠀⠀⠀⣀⣤⣤⣤⣤⣤⣤⣀⠀⠀⠀⠀⠀⠀", + "⠀⠀⠀⣠⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣄⠀⠀⠀", + "⠀⢀⣼⣿⣿⠛⠛⠿⠿⠿⠿⠿⠿⠛⠛⣿⣿⣷⡀⠀", + "⠀⣾⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣷⡀", + "⢸⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⡇", + "⢸⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⡇", + "⠘⣿⣿⣿⣿⣦⡀⠀⠀⠀⠀⠀⠀⢀⣤⣿⣿⣿⣿⠇", + "⠀⠹⣿⣦⡈⠻⢿⠟⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿⠏⠀", + "⠀⠀⠈⠻⣷⣤⣀⡀⠀⠀⠀⠀⢸⣿⣿⣿⡿⠃⠀⠀", + "⠀⠀⠀⠀⠈⠙⠻⠇⠀⠀⠀⠀⠸⠟⠛⠁⠀⠀⠀⠀", +} + +// ArtDisplayWidth is the visual column width of each art line. +const ArtDisplayWidth = 20 + +// HeaderConfig controls what the header displays. +type HeaderConfig struct { + ShowArt bool // true for View (GitHub logo), false for Modify + Title string // "GitHub Stacks" or "Modify Mode" + Subtitle string // version string, or empty + InfoLines []HeaderInfoLine // info rows (stack info) + Shortcuts []ShortcutEntry // keyboard shortcuts + ShortcutColumns int // number of columns for shortcuts (default 1; set 2 for side-by-side) +} + +// ShouldShowHeader returns whether the header should be displayed. +func ShouldShowHeader(width, height int) bool { + return height >= MinHeightForHeader && width >= MinWidthForHeader +} + +// ShouldShowShortcuts returns whether shortcuts should be displayed. +func ShouldShowShortcuts(width int) bool { + return width >= MinWidthForShortcuts +} + +// RenderHeader renders the full-width header box. +func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { + if width < 2 { + return + } + innerWidth := width - 2 + + showShortcuts := ShouldShowShortcuts(width) + + // Build shortcut lines (possibly multi-column) + type shortcutLine struct { + text string + visWidth int + } + var shortcuts []shortcutLine + maxShortcutWidth := 0 + rightColWidth := 0 + + cols := cfg.ShortcutColumns + if cols < 1 { + cols = 1 + } + + if showShortcuts && len(cfg.Shortcuts) > 0 { + if cols >= 2 { + // Two-column layout with aligned keys and descriptions. + // First pass: compute max visual key width per column. + maxKeyLeft := 0 + maxKeyRight := 0 + for i := 0; i < len(cfg.Shortcuts); i += 2 { + kw := lipgloss.Width(cfg.Shortcuts[i].Key) + if kw > maxKeyLeft { + maxKeyLeft = kw + } + if i+1 < len(cfg.Shortcuts) { + kw = lipgloss.Width(cfg.Shortcuts[i+1].Key) + if kw > maxKeyRight { + maxKeyRight = kw + } + } + } + + // Second pass: compute max visual width of the left column + // so the right column starts at a consistent position. + maxLeftWidth := 0 + for i := 0; i < len(cfg.Shortcuts); i += 2 { + left := renderShortcutEntryPadded(cfg.Shortcuts[i], maxKeyLeft) + lw := lipgloss.Width(left) + if lw > maxLeftWidth { + maxLeftWidth = lw + } + } + + colGap := " " + colGapWidth := lipgloss.Width(colGap) + for i := 0; i < len(cfg.Shortcuts); i += 2 { + left := renderShortcutEntryPadded(cfg.Shortcuts[i], maxKeyLeft) + // Pad left entry to maxLeftWidth for consistent right column start + leftPad := maxLeftWidth - lipgloss.Width(left) + if leftPad < 0 { + leftPad = 0 + } + line := left + strings.Repeat(" ", leftPad) + if i+1 < len(cfg.Shortcuts) { + right := renderShortcutEntryPadded(cfg.Shortcuts[i+1], maxKeyRight) + line = line + colGap + right + } + visW := lipgloss.Width(line) + // Account for column gap width in case right column is missing + if i+1 >= len(cfg.Shortcuts) { + visW = maxLeftWidth + colGapWidth + maxKeyRight + 10 // approximate + } + shortcuts = append(shortcuts, shortcutLine{text: line, visWidth: visW}) + if visW > maxShortcutWidth { + maxShortcutWidth = visW + } + } + } else { + // Single-column layout with aligned keys. + maxKeyW := 0 + for _, sc := range cfg.Shortcuts { + kw := lipgloss.Width(sc.Key) + if kw > maxKeyW { + maxKeyW = kw + } + } + for _, sc := range cfg.Shortcuts { + rendered := renderShortcutEntryPadded(sc, maxKeyW) + visW := lipgloss.Width(rendered) + shortcuts = append(shortcuts, shortcutLine{text: rendered, visWidth: visW}) + if visW > maxShortcutWidth { + maxShortcutWidth = visW + } + } + } + rightColWidth = maxShortcutWidth + 2 + } + + // Map info lines to row indices + infoByRow := make(map[int]string) + infoByRow[2] = HeaderTitleStyle.Render(cfg.Title) + if cfg.Subtitle != "" { + infoByRow[3] = HeaderInfoLabelStyle.Render(cfg.Subtitle) + } + for i, info := range cfg.InfoLines { + row := 5 + i + if row > 9 { + break + } + iconStyle := HeaderInfoStyle + if info.IconStyle != nil { + iconStyle = *info.IconStyle + } + infoByRow[row] = iconStyle.Render(info.Icon) + HeaderInfoLabelStyle.Render(" "+info.Label) + } + + // Left content base width + leftContentBase := 1 // margin + if cfg.ShowArt { + leftContentBase += ArtDisplayWidth + } + + // Vertically center shortcuts + scStartRow := 0 + if len(shortcuts) > 0 { + scStartRow = (10 - len(shortcuts)) / 2 + } + + gap := " " + + // Top border + b.WriteString(HeaderBorderStyle.Render("┌" + strings.Repeat("─", innerWidth) + "┐")) + b.WriteString("\n") + + // Content rows + for i := 0; i < 10; i++ { + // Left column: art (optional) + info + artText := "" + if cfg.ShowArt { + artText = ArtLines[i] + } + + infoText := "" + infoVisualLen := 0 + if info, ok := infoByRow[i]; ok { + infoText = gap + info + infoVisualLen = 2 + lipgloss.Width(info) + } + + leftUsed := leftContentBase + infoVisualLen + + if showShortcuts && len(shortcuts) > 0 { + shortcutCol := innerWidth - rightColWidth + midPad := shortcutCol - leftUsed + if midPad < 0 { + midPad = 0 + } + + scIdx := i - scStartRow + shortcutRendered := "" + scVisWidth := 0 + if scIdx >= 0 && scIdx < len(shortcuts) { + shortcutRendered = shortcuts[scIdx].text + scVisWidth = shortcuts[scIdx].visWidth + } + scTrailingPad := rightColWidth - scVisWidth + if scTrailingPad < 0 { + scTrailingPad = 0 + } + + b.WriteString(HeaderBorderStyle.Render("│")) + b.WriteString(" ") + if cfg.ShowArt { + b.WriteString(artText) + } + b.WriteString(infoText) + b.WriteString(strings.Repeat(" ", midPad)) + b.WriteString(shortcutRendered) + b.WriteString(strings.Repeat(" ", scTrailingPad)) + b.WriteString(HeaderBorderStyle.Render("│")) + } else { + trailingPad := innerWidth - leftUsed + if trailingPad < 0 { + trailingPad = 0 + } + + b.WriteString(HeaderBorderStyle.Render("│")) + b.WriteString(" ") + if cfg.ShowArt { + b.WriteString(artText) + } + b.WriteString(infoText) + b.WriteString(strings.Repeat(" ", trailingPad)) + b.WriteString(HeaderBorderStyle.Render("│")) + } + b.WriteString("\n") + } + + // Bottom border + b.WriteString(HeaderBorderStyle.Render("└" + strings.Repeat("─", innerWidth) + "┘")) + b.WriteString("\n") +} + +// disabledShortcutStyle renders both key and desc in dim gray. +var disabledShortcutStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("240")) + +// renderShortcutEntry renders a single shortcut, dimmed if disabled. +func renderShortcutEntry(sc ShortcutEntry) string { + if sc.Disabled { + return disabledShortcutStyle.Render(sc.Key + " " + sc.Desc) + } + return HeaderShortcutKey.Render(sc.Key) + HeaderShortcutDesc.Render(" "+sc.Desc) +} + +// renderShortcutEntryPadded renders a shortcut with the key right-padded +// to keyWidth visual columns so descriptions align across rows. +func renderShortcutEntryPadded(sc ShortcutEntry, keyWidth int) string { + keyVisWidth := lipgloss.Width(sc.Key) + pad := "" + if keyVisWidth < keyWidth { + pad = strings.Repeat(" ", keyWidth-keyVisWidth) + } + if sc.Disabled { + return disabledShortcutStyle.Render(sc.Key) + pad + disabledShortcutStyle.Render(" "+sc.Desc) + } + return HeaderShortcutKey.Render(sc.Key) + pad + HeaderShortcutDesc.Render(" "+sc.Desc) +} diff --git a/internal/tui/shared/render.go b/internal/tui/shared/render.go new file mode 100644 index 0000000..87ee798 --- /dev/null +++ b/internal/tui/shared/render.go @@ -0,0 +1,396 @@ +package shared + +import ( + "fmt" + "strings" + "time" + + "github.com/charmbracelet/lipgloss" + "github.com/github/gh-stack/internal/git" + ghapi "github.com/github/gh-stack/internal/github" + "github.com/github/gh-stack/internal/stack" +) + +// BranchNodeData is the interface for branch data that can be rendered. +// Both stackview.BranchNode and modifyview.ModifyBranchNode satisfy this. +type BranchNodeData struct { + Ref stack.BranchRef + IsCurrent bool + IsLinear bool + BaseBranch string + Commits []git.CommitInfo + FilesChanged []git.FileDiffStat + PR *ghapi.PRDetails + Additions int + Deletions int + CommitsExpanded bool + FilesExpanded bool + + // ShowCurrentLabel controls whether "(current)" is appended and cyan + // styling is used for the current branch. View sets this true; Modify + // leaves it false so all branches look uniform. + ShowCurrentLabel bool + + // BranchNameStyleOverride, when non-nil, overrides the default branch + // name style. Used by Modify to render dropped branches in red + // strikethrough and folded branches in yellow strikethrough. + BranchNameStyleOverride *lipgloss.Style + + // ForceDashedConnector, when true, forces the connector line to use + // the dashed style (┊) regardless of linearity. Used by Modify for + // branches marked for drop or fold. + ForceDashedConnector bool + + // ConnectorStyleOverride, when non-nil, overrides the default connector + // color for dashed lines. Used to make drop connectors red and fold + // connectors yellow. + ConnectorStyleOverride *lipgloss.Style +} + +// NodeAnnotation is an optional annotation to display after the branch info. +type NodeAnnotation struct { + Text string + Style lipgloss.Style +} + +// ResolveConnectorStyle determines the connector character and style for a node. +func ResolveConnectorStyle(node BranchNodeData, isFocused bool) (string, lipgloss.Style) { + connector := "│" + connStyle := ConnectorStyle + isMerged := node.Ref.IsMerged() + isQueued := node.Ref.IsQueued() + if node.ForceDashedConnector || (!node.IsLinear && !isMerged && !isQueued) { + connector = "┊" + if node.ConnectorStyleOverride == nil { + connStyle = ConnectorDashedStyle + } + } + // Apply explicit connector color override (drop=red, fold=yellow, moved=magenta) + if node.ConnectorStyleOverride != nil { + connStyle = *node.ConnectorStyleOverride + } + if isFocused && node.ConnectorStyleOverride == nil { + if node.IsCurrent && node.ShowCurrentLabel { + connStyle = ConnectorCurrentStyle + } else if isMerged { + connStyle = ConnectorMergedStyle + } else if isQueued { + connStyle = ConnectorQueuedStyle + } else { + connStyle = ConnectorFocusedStyle + } + } + return connector, connStyle +} + +// StatusIcon returns the appropriate status icon for a branch. +func StatusIcon(node BranchNodeData) string { + if node.Ref.IsMerged() { + return MergedIcon + } + if node.Ref.IsQueued() { + return QueuedIcon + } + if !node.IsLinear { + return WarningIcon + } + if node.PR != nil && node.PR.Number != 0 { + return OpenIcon + } + return "" +} + +// RenderNode renders a single branch node with all its sub-sections. +// annotation is optional — pass nil for plain view, or a NodeAnnotation to add a badge. +func RenderNode(b *strings.Builder, node BranchNodeData, isFocused bool, width int, annotation *NodeAnnotation) { + connector, connStyle := ResolveConnectorStyle(node, isFocused) + + if node.PR != nil { + RenderPRHeader(b, node, isFocused, connStyle, annotation) + RenderBranchLine(b, node, connector, connStyle, nil) // annotation already on PR line + } else { + RenderBranchHeader(b, node, isFocused, connStyle, annotation) + } + + if len(node.FilesChanged) > 0 { + RenderFiles(b, node, connector, connStyle, width) + } + + if len(node.Commits) > 0 { + RenderCommits(b, node, connector, connStyle, width) + } + + // Connector/spacer + b.WriteString(connStyle.Render(connector)) + b.WriteString("\n") +} + +// RenderPRHeader renders the top line with PR info: bullet + status icon + PR# + state + optional annotation. +func RenderPRHeader(b *strings.Builder, node BranchNodeData, isFocused bool, connStyle lipgloss.Style, annotation *NodeAnnotation) { + bullet := "├" + if isFocused { + bullet = "▶" + } + b.WriteString(connStyle.Render(bullet + " ")) + + icon := StatusIcon(node) + if icon != "" { + b.WriteString(icon + " ") + } + + pr := node.PR + prLabel := fmt.Sprintf("#%d", pr.Number) + stateLabel := "" + style := PROpenStyle + switch { + case pr.Merged: + stateLabel = " MERGED" + style = PRMergedStyle + case pr.IsQueued: + stateLabel = " QUEUED" + style = PRQueuedStyle + case pr.State == "CLOSED": + stateLabel = " CLOSED" + style = PRClosedStyle + case pr.IsDraft: + stateLabel = " DRAFT" + style = PRDraftStyle + default: + stateLabel = " OPEN" + } + b.WriteString(style.Underline(true).Render(prLabel) + style.Render(stateLabel)) + + if annotation != nil { + b.WriteString(" ") + b.WriteString(annotation.Style.Render(annotation.Text)) + } + + b.WriteString("\n") +} + +// RenderBranchLine renders branch name + diff stats below a PR header. +func RenderBranchLine(b *strings.Builder, node BranchNodeData, connector string, connStyle lipgloss.Style, annotation *NodeAnnotation) { + b.WriteString(connStyle.Render(connector)) + b.WriteString(" ") + + b.WriteString(renderBranchName(node)) + + RenderDiffStats(b, node) + + if annotation != nil { + b.WriteString(" ") + b.WriteString(annotation.Style.Render(annotation.Text)) + } + + b.WriteString("\n") +} + +// RenderBranchHeader renders header when no PR exists: bullet + icon + branch + stats + annotation. +func RenderBranchHeader(b *strings.Builder, node BranchNodeData, isFocused bool, connStyle lipgloss.Style, annotation *NodeAnnotation) { + bullet := "├" + if isFocused { + bullet = "▶" + } + b.WriteString(connStyle.Render(bullet + " ")) + + icon := StatusIcon(node) + if icon != "" { + b.WriteString(icon + " ") + } + + b.WriteString(renderBranchName(node)) + + RenderDiffStats(b, node) + + if annotation != nil { + b.WriteString(" ") + b.WriteString(annotation.Style.Render(annotation.Text)) + } + + b.WriteString("\n") +} + +// RenderDiffStats appends +N -N diff stats. +func RenderDiffStats(b *strings.Builder, node BranchNodeData) { + if node.Additions > 0 || node.Deletions > 0 { + b.WriteString(" ") + b.WriteString(AdditionsStyle.Render(fmt.Sprintf("+%d", node.Additions))) + b.WriteString(" ") + b.WriteString(DeletionsStyle.Render(fmt.Sprintf("-%d", node.Deletions))) + } +} + +// renderBranchName returns the styled branch name string based on node settings. +func renderBranchName(node BranchNodeData) string { + name := node.Ref.Branch + if node.BranchNameStyleOverride != nil { + return node.BranchNameStyleOverride.Render(name) + } + if node.IsCurrent && node.ShowCurrentLabel { + return CurrentBranchStyle.Render(name + " (current)") + } + return NormalBranchStyle.Render(name) +} + +// RenderFiles renders the files toggle and optionally expanded file list. +func RenderFiles(b *strings.Builder, node BranchNodeData, connector string, connStyle lipgloss.Style, width int) { + b.WriteString(connStyle.Render(connector)) + b.WriteString(" ") + + icon := CollapsedIcon + if node.FilesExpanded { + icon = ExpandedIcon + } + fileLabel := "files changed" + if len(node.FilesChanged) == 1 { + fileLabel = "file changed" + } + b.WriteString(CommitTimeStyle.Render(fmt.Sprintf("%s %d %s", icon, len(node.FilesChanged), fileLabel))) + b.WriteString("\n") + + if !node.FilesExpanded { + return + } + + for _, f := range node.FilesChanged { + b.WriteString(connStyle.Render(connector)) + b.WriteString(" ") + + path := f.Path + maxLen := width - 30 + if maxLen < 20 { + maxLen = 20 + } + if len(path) > maxLen { + path = "…" + path[len(path)-maxLen+1:] + } + b.WriteString(NormalBranchStyle.Render(path)) + b.WriteString(" ") + b.WriteString(AdditionsStyle.Render(fmt.Sprintf("+%d", f.Additions))) + b.WriteString(" ") + b.WriteString(DeletionsStyle.Render(fmt.Sprintf("-%d", f.Deletions))) + b.WriteString("\n") + } +} + +// RenderCommits renders the commits toggle and optionally expanded commits. +func RenderCommits(b *strings.Builder, node BranchNodeData, connector string, connStyle lipgloss.Style, width int) { + b.WriteString(connStyle.Render(connector)) + b.WriteString(" ") + + icon := CollapsedIcon + if node.CommitsExpanded { + icon = ExpandedIcon + } + commitLabel := "commits" + if len(node.Commits) == 1 { + commitLabel = "commit" + } + b.WriteString(CommitTimeStyle.Render(fmt.Sprintf("%s %d %s", icon, len(node.Commits), commitLabel))) + b.WriteString("\n") + + if !node.CommitsExpanded { + return + } + + for _, c := range node.Commits { + b.WriteString(connStyle.Render(connector)) + b.WriteString(" ") + + sha := c.SHA + if len(sha) > 7 { + sha = sha[:7] + } + b.WriteString(CommitSHAStyle.Render(sha)) + b.WriteString(" ") + + subject := c.Subject + maxLen := width - 35 + if maxLen < 20 { + maxLen = 20 + } + if len(subject) > maxLen { + subject = subject[:maxLen-1] + "…" + } + b.WriteString(CommitSubjectStyle.Render(subject)) + b.WriteString(" ") + b.WriteString(CommitTimeStyle.Render(TimeAgo(c.Time))) + b.WriteString("\n") + } +} + +// NodeLineCount returns how many rendered lines a node occupies. +func NodeLineCount(node BranchNodeData) int { + lines := 1 // header line + if node.PR != nil { + lines++ // branch + diff stats line below PR header + } + if len(node.FilesChanged) > 0 { + lines++ // files toggle + if node.FilesExpanded { + lines += len(node.FilesChanged) + } + } + if len(node.Commits) > 0 { + lines++ // commits toggle + if node.CommitsExpanded { + lines += len(node.Commits) + } + } + lines++ // connector/spacer + return lines +} + +// RenderTrunk renders the trunk line. +func RenderTrunk(b *strings.Builder, trunkBranch string) { + b.WriteString(ConnectorStyle.Render("└ ")) + b.WriteString(TrunkStyle.Render(trunkBranch)) + b.WriteString("\n") +} + +// RenderMergedSeparator renders the merged section separator. +func RenderMergedSeparator(b *strings.Builder) { + b.WriteString(ConnectorStyle.Render("────") + DimStyle.Render(" merged ") + ConnectorStyle.Render("─────") + "\n") +} + +// RenderQueuedSeparator renders the queued section separator. +func RenderQueuedSeparator(b *strings.Builder) { + b.WriteString(ConnectorStyle.Render("────") + DimStyle.Render(" queued ") + ConnectorStyle.Render("─────") + "\n") +} + +// TimeAgo returns a human-readable time-ago string. +func TimeAgo(t time.Time) string { + d := time.Since(t) + switch { + case d < time.Minute: + secs := int(d.Seconds()) + if secs == 1 { + return "1 second ago" + } + return fmt.Sprintf("%d seconds ago", secs) + case d < time.Hour: + mins := int(d.Minutes()) + if mins == 1 { + return "1 minute ago" + } + return fmt.Sprintf("%d minutes ago", mins) + case d < 24*time.Hour: + hours := int(d.Hours()) + if hours == 1 { + return "1 hour ago" + } + return fmt.Sprintf("%d hours ago", hours) + case d < 30*24*time.Hour: + days := int(d.Hours() / 24) + if days == 1 { + return "1 day ago" + } + return fmt.Sprintf("%d days ago", days) + default: + months := int(d.Hours() / 24 / 30) + if months <= 1 { + return "1 month ago" + } + return fmt.Sprintf("%d months ago", months) + } +} diff --git a/internal/tui/shared/scroll.go b/internal/tui/shared/scroll.go new file mode 100644 index 0000000..42a3cb1 --- /dev/null +++ b/internal/tui/shared/scroll.go @@ -0,0 +1,30 @@ +package shared + +// ClampScroll ensures scrollOffset doesn't exceed content bounds. +func ClampScroll(totalLines, viewHeight, scrollOffset int) int { + maxScroll := totalLines - viewHeight + if maxScroll < 0 { + maxScroll = 0 + } + if scrollOffset > maxScroll { + scrollOffset = maxScroll + } + if scrollOffset < 0 { + scrollOffset = 0 + } + return scrollOffset +} + +// EnsureVisible adjusts scrollOffset so the cursor's line range is visible. +func EnsureVisible(startLine, endLine, scrollOffset, viewHeight int) int { + if viewHeight < 1 { + viewHeight = 1 + } + if startLine < scrollOffset { + scrollOffset = startLine + } + if endLine > scrollOffset+viewHeight { + scrollOffset = endLine - viewHeight + } + return scrollOffset +} diff --git a/internal/tui/shared/styles.go b/internal/tui/shared/styles.go new file mode 100644 index 0000000..245db76 --- /dev/null +++ b/internal/tui/shared/styles.go @@ -0,0 +1,56 @@ +package shared + +import "github.com/charmbracelet/lipgloss" + +var ( + // Branch name styles + CurrentBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")).Bold(true) + NormalBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) + MergedBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + TrunkStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")).Italic(true) + + // Status indicators + MergedIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("5")).Render("✓") + WarningIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("3")).Render("⚠") + OpenIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("2")).Render("○") + QueuedIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("130")).Render("◎") + + // PR status styles + PROpenStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("2")) + PRMergedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) + PRClosedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) + PRDraftStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + PRQueuedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("130")) + + // Diff stats + AdditionsStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("2")) + DeletionsStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) + + // Commit lines + CommitSHAStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("3")) + CommitSubjectStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) + CommitTimeStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + + // Connector lines + ConnectorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + ConnectorDashedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("3")) + ConnectorFocusedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) + ConnectorCurrentStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")) + ConnectorMergedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) + ConnectorQueuedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("130")) + + // Dim text + DimStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("240")) + + // Header styles + HeaderBorderStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + HeaderTitleStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")).Bold(true) + HeaderInfoStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")) + HeaderInfoLabelStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + HeaderShortcutKey = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) + HeaderShortcutDesc = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + + // Expand/collapse icons + ExpandedIcon = "▾" + CollapsedIcon = "▸" +) diff --git a/internal/tui/stackview/model.go b/internal/tui/stackview/model.go index 8f845f9..eeb8253 100644 --- a/internal/tui/stackview/model.go +++ b/internal/tui/stackview/model.go @@ -5,13 +5,12 @@ import ( "os/exec" "runtime" "strings" - "time" "github.com/charmbracelet/bubbles/help" "github.com/charmbracelet/bubbles/key" tea "github.com/charmbracelet/bubbletea" - "github.com/charmbracelet/lipgloss" "github.com/github/gh-stack/internal/stack" + "github.com/github/gh-stack/internal/tui/shared" ) // keyMap defines the key bindings for the stack view. @@ -64,36 +63,6 @@ var keys = keyMap{ ), } -// headerHeight is the total number of lines the header box occupies (top border + 10 art lines + bottom border). -const headerHeight = 12 - -// minHeightForHeader is the minimum terminal height to show the header. -const minHeightForHeader = 25 - -// minWidthForShortcuts is the minimum terminal width to show keyboard shortcuts in the header. -// Below this, the header is shown without the right-side shortcuts column. -const minWidthForShortcuts = 65 - -// minWidthForHeader is the minimum terminal width to show the header at all. -const minWidthForHeader = 50 - -// artLines contains the braille ASCII art displayed in the header. -var artLines = [10]string{ - "⠀⠀⠀⠀⠀⠀⣀⣤⣤⣤⣤⣤⣤⣀⠀⠀⠀⠀⠀⠀", - "⠀⠀⠀⣠⣴⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣶⣄⠀⠀⠀", - "⠀⢀⣼⣿⣿⠛⠛⠿⠿⠿⠿⠿⠿⠛⠛⣿⣿⣷⡀⠀", - "⠀⣾⣿⣿⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⣿⣿⣷⡀", - "⢸⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⡇", - "⢸⣿⣿⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⣿⣿⣿⡇", - "⠘⣿⣿⣿⣿⣦⡀⠀⠀⠀⠀⠀⠀⢀⣤⣿⣿⣿⣿⠇", - "⠀⠹⣿⣦⡈⠻⢿⠟⠀⠀⠀⠀⢻⣿⣿⣿⣿⣿⠏⠀", - "⠀⠀⠈⠻⣷⣤⣀⡀⠀⠀⠀⠀⢸⣿⣿⣿⡿⠃⠀⠀", - "⠀⠀⠀⠀⠈⠙⠻⠇⠀⠀⠀⠀⠸⠟⠛⠁⠀⠀⠀⠀", -} - -// artDisplayWidth is the visual column width of each art line. -const artDisplayWidth = 20 - // Model is the Bubbletea model for the interactive stack view. type Model struct { nodes []BranchNode @@ -235,15 +204,33 @@ func openBrowserInBackground(url string) { _ = cmd.Start() } +// toBranchNodeData converts a BranchNode to shared.BranchNodeData. +func toBranchNodeData(node BranchNode) shared.BranchNodeData { + return shared.BranchNodeData{ + Ref: node.Ref, + IsCurrent: node.IsCurrent, + IsLinear: node.IsLinear, + BaseBranch: node.BaseBranch, + Commits: node.Commits, + FilesChanged: node.FilesChanged, + PR: node.PR, + Additions: node.Additions, + Deletions: node.Deletions, + CommitsExpanded: node.CommitsExpanded, + FilesExpanded: node.FilesExpanded, + ShowCurrentLabel: true, + } +} + // handleMouseClick processes a mouse click at the given screen position. func (m Model) handleMouseClick(screenX, screenY int) (tea.Model, tea.Cmd) { // If header is visible, clicks in the header area are ignored yOffset := 0 - if m.showHeader() { - if screenY < headerHeight { + if shared.ShouldShowHeader(m.width, m.height) { + if screenY < shared.HeaderHeight { return m, nil } - yOffset = headerHeight + yOffset = shared.HeaderHeight } // Map screen Y to content line, accounting for scroll offset and header @@ -307,29 +294,7 @@ func (m Model) handleMouseClick(screenX, screenY int) (tea.Model, tea.Cmd) { // nodeLineCount returns how many rendered lines a node occupies. func (m Model) nodeLineCount(idx int) int { - node := m.nodes[idx] - lines := 1 // header line (PR line or branch line) - - if node.PR != nil { - lines++ // branch + diff stats line (below PR header) - } - - if len(node.FilesChanged) > 0 { - lines++ // files toggle line - if node.FilesExpanded { - lines += len(node.FilesChanged) - } - } - - if len(node.Commits) > 0 { - lines++ // commits toggle line - if node.CommitsExpanded { - lines += len(node.Commits) - } - } - - lines++ // connector/spacer line - return lines + return shared.NodeLineCount(toBranchNodeData(m.nodes[idx])) } // commitToggleLineOffset returns the offset from node start to the commits toggle line. @@ -364,7 +329,7 @@ func (m Model) prLabelColumns(idx int) (int, int) { node := m.nodes[idx] // Layout: "├ " (2) + optional status icon + " " (2) + "#N..." col := 2 // bullet + space - icon := m.statusIcon(node) + icon := shared.StatusIcon(toBranchNodeData(node)) if icon != "" { col += 2 // icon (1 visible char) + space } @@ -406,28 +371,8 @@ func (m *Model) ensureVisible() { } endLine := startLine + m.nodeLineCount(m.cursor) - // Available content height (reserve space for header or help bar) viewHeight := m.contentViewHeight() - if viewHeight < 1 { - viewHeight = 1 - } - - if startLine < m.scrollOffset { - m.scrollOffset = startLine - } - if endLine > m.scrollOffset+viewHeight { - m.scrollOffset = endLine - viewHeight - } -} - -// showHeader returns true if the terminal is large enough for the header. -func (m Model) showHeader() bool { - return m.height >= minHeightForHeader && m.width >= minWidthForHeader -} - -// showShortcuts returns true if the terminal is wide enough for the shortcuts column in the header. -func (m Model) showShortcuts() bool { - return m.width >= minWidthForShortcuts + m.scrollOffset = shared.EnsureVisible(startLine, endLine, m.scrollOffset, viewHeight) } // totalContentLines returns the total number of rendered content lines (excluding header). @@ -454,8 +399,8 @@ func (m Model) totalContentLines() int { // contentViewHeight returns the number of lines available for stack content. func (m Model) contentViewHeight() int { reserved := 0 - if m.showHeader() { - reserved = headerHeight + if shared.ShouldShowHeader(m.width, m.height) { + reserved = shared.HeaderHeight } h := m.height - reserved if h < 1 { @@ -466,16 +411,7 @@ func (m Model) contentViewHeight() int { // clampScroll ensures scrollOffset doesn't exceed content bounds. func (m *Model) clampScroll() { - maxScroll := m.totalContentLines() - m.contentViewHeight() - if maxScroll < 0 { - maxScroll = 0 - } - if m.scrollOffset > maxScroll { - m.scrollOffset = maxScroll - } - if m.scrollOffset < 0 { - m.scrollOffset = 0 - } + m.scrollOffset = shared.ClampScroll(m.totalContentLines(), m.contentViewHeight(), m.scrollOffset) } func (m Model) View() string { @@ -485,9 +421,9 @@ func (m Model) View() string { var out strings.Builder - showHeader := m.showHeader() + showHeader := shared.ShouldShowHeader(m.width, m.height) if showHeader { - m.renderHeader(&out) + shared.RenderHeader(&out, m.buildHeaderConfig(), m.width, m.height) } var b strings.Builder @@ -499,9 +435,9 @@ func (m Model) View() string { isMerged := m.nodes[i].Ref.IsMerged() isQueued := m.nodes[i].Ref.IsQueued() if isMerged && !prevWasMerged && i > 0 { - b.WriteString(connectorStyle.Render("────") + dimStyle.Render(" merged ") + connectorStyle.Render("─────") + "\n") + shared.RenderMergedSeparator(&b) } else if isQueued && !prevWasQueued && !prevWasMerged && i > 0 { - b.WriteString(connectorStyle.Render("────") + dimStyle.Render(" queued ") + connectorStyle.Render("─────") + "\n") + shared.RenderQueuedSeparator(&b) } m.renderNode(&b, i) prevWasMerged = isMerged @@ -509,9 +445,7 @@ func (m Model) View() string { } // Trunk - b.WriteString(connectorStyle.Render("└ ")) - b.WriteString(trunkStyle.Render(m.trunk.Branch)) - b.WriteString("\n") + shared.RenderTrunk(&b, m.trunk.Branch) content := b.String() contentLines := strings.Split(content, "\n") @@ -519,7 +453,7 @@ func (m Model) View() string { // Apply scrolling reservedLines := 0 if showHeader { - reservedLines = headerHeight + reservedLines = shared.HeaderHeight } viewHeight := m.height - reservedLines if viewHeight < 1 { @@ -546,15 +480,8 @@ func (m Model) View() string { return out.String() } -// renderHeader renders the full-width stylized header box with ASCII art, stack info, and keyboard shortcuts. -func (m Model) renderHeader(b *strings.Builder) { - w := m.width - if w < 2 { - return - } - innerWidth := w - 2 // subtract left and right border chars - - // Build info lines (placed to the right of art on specific rows) +// buildHeaderConfig produces the header configuration for the stack view. +func (m Model) buildHeaderConfig() shared.HeaderConfig { mergedCount := 0 queuedCount := 0 for _, n := range m.nodes { @@ -565,6 +492,7 @@ func (m Model) renderHeader(b *strings.Builder) { queuedCount++ } } + branchCount := len(m.nodes) branchInfo := fmt.Sprintf("%d branches", branchCount) if branchCount == 1 { @@ -577,7 +505,6 @@ func (m Model) renderHeader(b *strings.Builder) { branchInfo += fmt.Sprintf(" (%d queued)", queuedCount) } - // Branch progress icon: ○ none merged, ◐ some merged, ● all merged branchIcon := "○" if mergedCount > 0 && mergedCount < branchCount { branchIcon = "◐" @@ -585,406 +512,33 @@ func (m Model) renderHeader(b *strings.Builder) { branchIcon = "●" } - // Info text mapped to art row indices (0-based) - infoByRow := map[int]string{ - 2: headerTitleStyle.Render("GitHub Stacks"), - 3: headerInfoLabelStyle.Render("v" + m.version), - 5: headerInfoStyle.Render("✓") + headerInfoLabelStyle.Render(" Stack initialized"), - 6: headerInfoStyle.Render("◆") + headerInfoLabelStyle.Render(" Base: "+m.trunk.Branch), - 7: headerInfoStyle.Render(branchIcon) + headerInfoLabelStyle.Render(" "+branchInfo), - } - - showShortcuts := m.showShortcuts() - - // Build shortcut lines (rendered content + visual widths) - type shortcutLine struct { - text string - visWidth int + return shared.HeaderConfig{ + ShowArt: true, + Title: "GitHub Stacks", + Subtitle: "v" + m.version, + InfoLines: []shared.HeaderInfoLine{ + {Icon: "✓", Label: "Stack initialized"}, + {Icon: "◆", Label: "Base: " + m.trunk.Branch}, + {Icon: branchIcon, Label: branchInfo}, + }, + ShortcutColumns: 1, + Shortcuts: []shared.ShortcutEntry{ + {Key: "↑", Desc: "up"}, + {Key: "↓", Desc: "down"}, + {Key: "c", Desc: "commits"}, + {Key: "f", Desc: "files"}, + {Key: "o", Desc: "open PR"}, + {Key: "↵", Desc: "checkout"}, + {Key: "q", Desc: "quit"}, + }, } - var shortcuts []shortcutLine - maxShortcutWidth := 0 - rightColWidth := 0 - - if showShortcuts { - shortcuts = []shortcutLine{ - {headerShortcutKey.Render("↑") + headerShortcutDesc.Render(" up ") + - headerShortcutKey.Render("↓") + headerShortcutDesc.Render(" down"), 0}, - {headerShortcutKey.Render("c") + headerShortcutDesc.Render(" commits"), 0}, - {headerShortcutKey.Render("f") + headerShortcutDesc.Render(" files"), 0}, - {headerShortcutKey.Render("o") + headerShortcutDesc.Render(" open PR"), 0}, - {headerShortcutKey.Render("↵") + headerShortcutDesc.Render(" checkout"), 0}, - {headerShortcutKey.Render("q") + headerShortcutDesc.Render(" quit"), 0}, - } - for i := range shortcuts { - shortcuts[i].visWidth = lipgloss.Width(shortcuts[i].text) - if shortcuts[i].visWidth > maxShortcutWidth { - maxShortcutWidth = shortcuts[i].visWidth - } - } - rightColWidth = maxShortcutWidth + 2 - } - - // Left content base: 1 (margin) + artDisplayWidth - leftContentBase := 1 + artDisplayWidth - - // Vertically center shortcuts within the 10 content rows - scStartRow := 0 - if len(shortcuts) > 0 { - scStartRow = (10 - len(shortcuts)) / 2 - } - - // Top border - b.WriteString(headerBorderStyle.Render("┌" + strings.Repeat("─", innerWidth) + "┐")) - b.WriteString("\n") - - // Content rows - gap := " " // gap between art and info text - for i := 0; i < 10; i++ { - art := artLines[i] - - // Build info segment - infoText := "" - infoVisualLen := 0 - if info, ok := infoByRow[i]; ok { - infoText = gap + info - infoVisualLen = 2 + lipgloss.Width(info) - } - - leftUsed := leftContentBase + infoVisualLen - - if showShortcuts { - // Two-column layout: left (art+info) | right (shortcuts) - shortcutCol := innerWidth - rightColWidth - midPad := shortcutCol - leftUsed - if midPad < 0 { - midPad = 0 - } - - scIdx := i - scStartRow - shortcutRendered := "" - scVisWidth := 0 - if scIdx >= 0 && scIdx < len(shortcuts) { - shortcutRendered = shortcuts[scIdx].text - scVisWidth = shortcuts[scIdx].visWidth - } - scTrailingPad := rightColWidth - scVisWidth - if scTrailingPad < 0 { - scTrailingPad = 0 - } - - b.WriteString(headerBorderStyle.Render("│")) - b.WriteString(" ") - b.WriteString(art) - b.WriteString(infoText) - b.WriteString(strings.Repeat(" ", midPad)) - b.WriteString(shortcutRendered) - b.WriteString(strings.Repeat(" ", scTrailingPad)) - b.WriteString(headerBorderStyle.Render("│")) - } else { - // Single-column layout: art + info, padded to fill - trailingPad := innerWidth - leftUsed - if trailingPad < 0 { - trailingPad = 0 - } - - b.WriteString(headerBorderStyle.Render("│")) - b.WriteString(" ") - b.WriteString(art) - b.WriteString(infoText) - b.WriteString(strings.Repeat(" ", trailingPad)) - b.WriteString(headerBorderStyle.Render("│")) - } - b.WriteString("\n") - } - - // Bottom border - b.WriteString(headerBorderStyle.Render("└" + strings.Repeat("─", innerWidth) + "┘")) - b.WriteString("\n") } // renderNode renders a single branch node. func (m Model) renderNode(b *strings.Builder, idx int) { node := m.nodes[idx] isFocused := idx == m.cursor - - // Determine connector character and style - connector := "│" - connStyle := connectorStyle - isMerged := node.Ref.IsMerged() - isQueued := node.Ref.IsQueued() - if !node.IsLinear && !isMerged && !isQueued { - connector = "┊" - connStyle = connectorDashedStyle - } - // Override style when this node is focused - if isFocused { - if node.IsCurrent { - connStyle = connectorCurrentStyle - } else if isMerged { - connStyle = connectorMergedStyle - } else if isQueued { - connStyle = connectorQueuedStyle - } else { - connStyle = connectorFocusedStyle - } - } - - // Render header: either PR line + branch line, or just branch line - if node.PR != nil { - m.renderPRHeader(b, node, isFocused, connStyle) - m.renderBranchLine(b, node, connector, connStyle) - } else { - m.renderBranchHeader(b, node, isFocused, connStyle) - } - - // Files changed toggle + expanded file list - if len(node.FilesChanged) > 0 { - m.renderFiles(b, node, connector, connStyle) - } - - // Commits toggle + expanded commits - if len(node.Commits) > 0 { - m.renderCommits(b, node, connector, connStyle) - } - - // Connector/spacer - b.WriteString(connStyle.Render(connector)) - b.WriteString("\n") -} - -// renderPRHeader renders the top line when a PR exists: bullet + status icon + PR number + state. -func (m Model) renderPRHeader(b *strings.Builder, node BranchNode, isFocused bool, connStyle lipgloss.Style) { - bullet := "├" - if isFocused { - bullet = "▶" - } - - b.WriteString(connStyle.Render(bullet + " ")) - - statusIcon := m.statusIcon(node) - - if statusIcon != "" { - b.WriteString(statusIcon + " ") - } - - // PR number + state label - pr := node.PR - prLabel := fmt.Sprintf("#%d", pr.Number) - stateLabel := "" - style := prOpenStyle - switch { - case pr.Merged: - stateLabel = " MERGED" - style = prMergedStyle - case pr.IsQueued: - stateLabel = " QUEUED" - style = prQueuedStyle - case pr.State == "CLOSED": - stateLabel = " CLOSED" - style = prClosedStyle - case pr.IsDraft: - stateLabel = " DRAFT" - style = prDraftStyle - default: - stateLabel = " OPEN" - } - b.WriteString(style.Underline(true).Render(prLabel) + style.Render(stateLabel)) - - b.WriteString("\n") -} - -// renderBranchLine renders the branch name + diff stats below the PR header. -func (m Model) renderBranchLine(b *strings.Builder, node BranchNode, connector string, connStyle lipgloss.Style) { - b.WriteString(connStyle.Render(connector)) - b.WriteString(" ") - - branchName := node.Ref.Branch - if node.IsCurrent { - b.WriteString(currentBranchStyle.Render(branchName + " (current)")) - } else { - b.WriteString(normalBranchStyle.Render(branchName)) - } - - m.renderDiffStats(b, node) - b.WriteString("\n") -} - -// renderBranchHeader renders the header line when there is no PR: bullet + branch name + diff stats. -func (m Model) renderBranchHeader(b *strings.Builder, node BranchNode, isFocused bool, connStyle lipgloss.Style) { - bullet := "├" - if isFocused { - bullet = "▶" - } - - b.WriteString(connStyle.Render(bullet + " ")) - - // Status indicator - statusIcon := m.statusIcon(node) - if statusIcon != "" { - b.WriteString(statusIcon + " ") - } - - // Branch name - branchName := node.Ref.Branch - if node.IsCurrent { - b.WriteString(currentBranchStyle.Render(branchName + " (current)")) - } else { - b.WriteString(normalBranchStyle.Render(branchName)) - } - - m.renderDiffStats(b, node) - b.WriteString("\n") -} - -// renderDiffStats appends +N -N diff stats to the current line if available. -func (m Model) renderDiffStats(b *strings.Builder, node BranchNode) { - if node.Additions > 0 || node.Deletions > 0 { - b.WriteString(" ") - b.WriteString(additionsStyle.Render(fmt.Sprintf("+%d", node.Additions))) - b.WriteString(" ") - b.WriteString(deletionsStyle.Render(fmt.Sprintf("-%d", node.Deletions))) - } -} - -// statusIcon returns the appropriate status icon for a branch. -func (m Model) statusIcon(node BranchNode) string { - if node.Ref.IsMerged() { - return mergedIcon - } - if node.Ref.IsQueued() { - return queuedIcon - } - if !node.IsLinear { - return warningIcon - } - if node.PR != nil && node.PR.Number != 0 { - return openIcon - } - return "" -} - -// renderFiles renders the files changed toggle and optionally the expanded file list. -func (m Model) renderFiles(b *strings.Builder, node BranchNode, connector string, connStyle lipgloss.Style) { - b.WriteString(connStyle.Render(connector)) - b.WriteString(" ") - - icon := collapsedIcon - if node.FilesExpanded { - icon = expandedIcon - } - fileLabel := "files changed" - if len(node.FilesChanged) == 1 { - fileLabel = "file changed" - } - b.WriteString(commitTimeStyle.Render(fmt.Sprintf("%s %d %s", icon, len(node.FilesChanged), fileLabel))) - b.WriteString("\n") - - if !node.FilesExpanded { - return - } - - for _, f := range node.FilesChanged { - b.WriteString(connStyle.Render(connector)) - b.WriteString(" ") - - path := f.Path - maxLen := m.width - 30 - if maxLen < 20 { - maxLen = 20 - } - if len(path) > maxLen { - path = "…" + path[len(path)-maxLen+1:] - } - b.WriteString(normalBranchStyle.Render(path)) - b.WriteString(" ") - b.WriteString(additionsStyle.Render(fmt.Sprintf("+%d", f.Additions))) - b.WriteString(" ") - b.WriteString(deletionsStyle.Render(fmt.Sprintf("-%d", f.Deletions))) - b.WriteString("\n") - } -} - -// renderCommits renders the commits toggle and optionally the expanded commit list. -func (m Model) renderCommits(b *strings.Builder, node BranchNode, connector string, connStyle lipgloss.Style) { - b.WriteString(connStyle.Render(connector)) - b.WriteString(" ") - - icon := collapsedIcon - if node.CommitsExpanded { - icon = expandedIcon - } - commitLabel := "commits" - if len(node.Commits) == 1 { - commitLabel = "commit" - } - b.WriteString(commitTimeStyle.Render(fmt.Sprintf("%s %d %s", icon, len(node.Commits), commitLabel))) - b.WriteString("\n") - - if !node.CommitsExpanded { - return - } - - for _, c := range node.Commits { - b.WriteString(connStyle.Render(connector)) - b.WriteString(" ") - - sha := c.SHA - if len(sha) > 7 { - sha = sha[:7] - } - b.WriteString(commitSHAStyle.Render(sha)) - b.WriteString(" ") - - subject := c.Subject - maxLen := m.width - 35 - if maxLen < 20 { - maxLen = 20 - } - if len(subject) > maxLen { - subject = subject[:maxLen-1] + "…" - } - b.WriteString(commitSubjectStyle.Render(subject)) - b.WriteString(" ") - b.WriteString(commitTimeStyle.Render(timeAgo(c.Time))) - b.WriteString("\n") - } -} - -// timeAgo returns a human-readable time-ago string. -func timeAgo(t time.Time) string { - d := time.Since(t) - switch { - case d < time.Minute: - secs := int(d.Seconds()) - if secs == 1 { - return "1 second ago" - } - return fmt.Sprintf("%d seconds ago", secs) - case d < time.Hour: - mins := int(d.Minutes()) - if mins == 1 { - return "1 minute ago" - } - return fmt.Sprintf("%d minutes ago", mins) - case d < 24*time.Hour: - hours := int(d.Hours()) - if hours == 1 { - return "1 hour ago" - } - return fmt.Sprintf("%d hours ago", hours) - case d < 30*24*time.Hour: - days := int(d.Hours() / 24) - if days == 1 { - return "1 day ago" - } - return fmt.Sprintf("%d days ago", days) - default: - months := int(d.Hours() / 24 / 30) - if months <= 1 { - return "1 month ago" - } - return fmt.Sprintf("%d months ago", months) - } + shared.RenderNode(b, toBranchNodeData(node), isFocused, m.width, nil) } // browserCmd returns an exec.Cmd to open a URL in the default browser. diff --git a/internal/tui/stackview/styles.go b/internal/tui/stackview/styles.go deleted file mode 100644 index 6f90e99..0000000 --- a/internal/tui/stackview/styles.go +++ /dev/null @@ -1,58 +0,0 @@ -package stackview - -import "github.com/charmbracelet/lipgloss" - -var ( - // Branch name styles - currentBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")).Bold(true) // cyan bold - normalBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) // white - mergedBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray - trunkStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")).Italic(true) // gray italic - - // Focus indicator — reserved for future use - - // Status indicators - mergedIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("5")).Render("✓") // magenta - warningIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("3")).Render("⚠") // yellow - openIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("2")).Render("○") // green - queuedIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("130")).Render("◎") // brown - - // PR status - prOpenStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("2")) // green - prMergedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) // magenta - prClosedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) // red - prDraftStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray - prQueuedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("130")) // brown - - // Diff stats - additionsStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("2")) // green - deletionsStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) // red - - // Commit lines - commitSHAStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("3")) // yellow - commitSubjectStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) // white - commitTimeStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray - - // Connector lines - connectorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray - connectorDashedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("3")) // yellow (non-linear) - connectorFocusedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) // white (focused) - connectorCurrentStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")) // cyan (current branch focused) - connectorMergedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) // magenta (merged branch focused) - connectorQueuedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("130")) // brown (queued branch focused) - - // Dim text (separators, secondary labels) - dimStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("240")) - - // Header styles - headerBorderStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray box-drawing chars - headerTitleStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")).Bold(true) // white bold - headerInfoStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")) // cyan - headerInfoLabelStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray - headerShortcutKey = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) // white - headerShortcutDesc = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray - - // Expand/collapse toggle - expandedIcon = "▾" - collapsedIcon = "▸" -) From 6eabcc8a2586afc9071247ad64581efc2e01f3b9 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Thu, 30 Apr 2026 00:30:35 -0400 Subject: [PATCH 03/26] modify cmd --- cmd/modify.go | 296 +++++++ cmd/modify_test.go | 728 +++++++++++++++++ cmd/root.go | 1 + cmd/utils.go | 3 +- internal/modify/apply.go | 527 +++++++++++++ internal/modify/preconditions.go | 75 ++ internal/modify/state.go | 114 +++ internal/stack/stack.go | 8 + internal/tui/modifyview/help.go | 92 +++ internal/tui/modifyview/model.go | 1042 +++++++++++++++++++++++++ internal/tui/modifyview/model_test.go | 158 ++++ internal/tui/modifyview/status.go | 93 +++ internal/tui/modifyview/styles.go | 39 + internal/tui/modifyview/types.go | 69 ++ 14 files changed, 3244 insertions(+), 1 deletion(-) create mode 100644 cmd/modify.go create mode 100644 cmd/modify_test.go create mode 100644 internal/modify/apply.go create mode 100644 internal/modify/preconditions.go create mode 100644 internal/modify/state.go create mode 100644 internal/tui/modifyview/help.go create mode 100644 internal/tui/modifyview/model.go create mode 100644 internal/tui/modifyview/model_test.go create mode 100644 internal/tui/modifyview/status.go create mode 100644 internal/tui/modifyview/styles.go create mode 100644 internal/tui/modifyview/types.go diff --git a/cmd/modify.go b/cmd/modify.go new file mode 100644 index 0000000..6e4677e --- /dev/null +++ b/cmd/modify.go @@ -0,0 +1,296 @@ +package cmd + +import ( + "fmt" + + tea "github.com/charmbracelet/bubbletea" + "github.com/github/gh-stack/internal/config" + "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/modify" + "github.com/github/gh-stack/internal/tui/modifyview" + "github.com/github/gh-stack/internal/tui/stackview" + "github.com/spf13/cobra" +) + +type modifyOptions struct { + recover bool +} + +func ModifyCmd(cfg *config.Config) *cobra.Command { + opts := &modifyOptions{} + + cmd := &cobra.Command{ + Use: "modify", + Short: "Interactively restructure a stack", + Long: `Open an interactive TUI to restructure the current stack. + +Operations available: + • Drop branches from the stack + • Fold branches into adjacent branches + • Reorder branches + • Rename branches + +All changes are staged in the TUI and applied together when you press Ctrl+S. +After applying, run 'gh stack submit' to push changes and recreate the stack on GitHub.`, + RunE: func(cmd *cobra.Command, args []string) error { + if opts.recover { + return runModifyRecover(cfg) + } + return runModify(cfg) + }, + } + + cmd.Flags().BoolVar(&opts.recover, "recover", false, "Recover from a crashed modify session") + + return cmd +} + +func runModify(cfg *config.Config) error { + // Run all precondition checks + result, err := checkModifyPreconditions(cfg) + if err != nil { + return err + } + + gitDir := result.GitDir + sf := result.StackFile + s := result.Stack + currentBranch := result.CurrentBranch + + // Load branch data for the TUI + viewNodes := stackview.LoadBranchNodes(cfg, s, currentBranch) + + // Reverse so index 0 = top of stack (matching visual order) + reversed := make([]stackview.BranchNode, len(viewNodes)) + for i, n := range viewNodes { + reversed[len(viewNodes)-1-i] = n + } + + // Convert to ModifyBranchNodes + modifyNodes := make([]modifyview.ModifyBranchNode, len(reversed)) + for i, n := range reversed { + modifyNodes[i] = modifyview.ModifyBranchNode{ + BranchNode: n, + OriginalPosition: i, + } + } + + // Run the TUI + model := modifyview.New(modifyNodes, s.Trunk, Version) + + p := tea.NewProgram( + model, + tea.WithAltScreen(), + ) + + finalModel, err := p.Run() + if err != nil { + return fmt.Errorf("running TUI: %w", err) + } + + m, ok := finalModel.(modifyview.Model) + if !ok { + return fmt.Errorf("unexpected model type") + } + + // Handle TUI result + if m.Cancelled() { + return nil + } + + if !m.ApplyRequested() { + return nil + } + + // Apply the staged changes + // Re-reverse nodes back to stack order (bottom to top) for the apply engine + applyNodes := m.Nodes() + reordered := make([]modifyview.ModifyBranchNode, len(applyNodes)) + for i, n := range applyNodes { + reordered[len(applyNodes)-1-i] = n + } + + applyResult, conflict, applyErr := modify.ApplyPlan(cfg, gitDir, s, sf, reordered, currentBranch, updateBaseSHAs) + + if conflict != nil { + cfg.Warningf("Conflict while rebasing %s", conflict.Branch) + if len(conflict.ConflictedFiles) > 0 { + cfg.Printf("Conflicted files:") + for _, f := range conflict.ConflictedFiles { + cfg.Printf(" %s", f) + } + } + cfg.Printf("") + cfg.Printf("To resolve: fix conflicts, then run `%s`", + cfg.ColorCyan("gh stack rebase --continue")) + cfg.Printf("To undo all changes: run `%s`", + cfg.ColorCyan("gh stack modify --recover")) + return ErrConflict + } + + if applyErr != nil { + cfg.Errorf("failed to apply modifications: %s", applyErr) + return ErrSilent + } + + // Print success summary + printModifySuccess(cfg, applyResult) + + return nil +} + +// printModifySuccess prints a summary of what was applied. +func printModifySuccess(cfg *config.Config, result *modifyview.ApplyResult) { + if result == nil { + return + } + + cfg.Printf("") + cfg.Successf("Stack modified successfully") + + for _, r := range result.RenamedBranches { + cfg.Printf(" Renamed: %s → %s", r.OldName, r.NewName) + } + + for _, d := range result.DroppedPRs { + cfg.Printf(" Dropped: %s (PR #%d remains open — close with `%s`)", + d.Branch, d.PRNumber, cfg.ColorCyan(fmt.Sprintf("gh pr close %d", d.PRNumber))) + } + + if result.MovedBranches > 0 { + cfg.Printf(" Rebased %d %s", result.MovedBranches, + plural(result.MovedBranches, "branch", "branches")) + } + + cfg.Printf("") + cfg.Printf("Run `%s` to push branches and recreate the stack on GitHub", + cfg.ColorCyan("gh stack submit")) +} + +// runModifyRecover handles recovery from a crashed modify session. +func runModifyRecover(cfg *config.Config) error { + gitDir, err := git.GitDir() + if err != nil { + cfg.Errorf("not a git repository") + return ErrNotInStack + } + + state, err := modify.LoadState(gitDir) + if err != nil { + cfg.Errorf("failed to read modify state: %s", err) + return ErrSilent + } + + if state == nil { + cfg.Printf("No modify session to recover") + return nil + } + + switch state.Phase { + case "applying": + cfg.Printf("A modify session was interrupted during the apply phase") + cfg.Printf("Restoring stack to pre-modify state...") + if err := modify.UnwindFromStateFile(cfg, gitDir); err != nil { + cfg.Errorf("recovery failed: %s", err) + return ErrSilent + } + cfg.Successf("Stack restored successfully") + return nil + + case "pending_submit": + cfg.Printf("A modify completed but the stack has not been submitted") + cfg.Printf("Run `%s` to push changes and recreate the stack on GitHub", + cfg.ColorCyan("gh stack submit")) + return nil + + default: + cfg.Errorf("unexpected modify state phase: %s", state.Phase) + cfg.Printf("Clearing invalid state file...") + modify.ClearState(gitDir) + return nil + } +} + +// --------------------------------------------------------------------------- +// Preconditions +// --------------------------------------------------------------------------- + +// checkModifyPreconditions runs all precondition checks for the modify command. +func checkModifyPreconditions(cfg *config.Config) (*loadStackResult, error) { + if !cfg.IsInteractive() { + cfg.Errorf("modify requires an interactive terminal") + return nil, ErrSilent + } + + result, err := loadStack(cfg, "") + if err != nil { + return nil, ErrNotInStack + } + + gitDir := result.GitDir + s := result.Stack + + // No existing modify state file + if err := checkNoModifyInProgress(cfg, gitDir); err != nil { + return nil, err + } + + // No rebase in progress + if git.IsRebaseInProgress() { + cfg.Errorf("a rebase is currently in progress") + cfg.Printf("Complete the rebase with `%s` or abort with `%s`", + cfg.ColorCyan("gh stack rebase --continue"), + cfg.ColorCyan("gh stack rebase --abort")) + return nil, ErrRebaseActive + } + + // Clean working tree + if dirty, err := git.HasUncommittedChanges(); err != nil { + cfg.Errorf("failed to check working tree status: %s", err) + return nil, ErrSilent + } else if dirty { + cfg.Errorf("uncommitted changes in working tree") + cfg.Printf("Commit or stash your changes before running modify") + return nil, ErrSilent + } + + // Sync PR state and check merge queue + syncStackPRs(cfg, s) + if err := modify.CheckNoMergeQueuePRs(cfg, s); err != nil { + return nil, ErrSilent + } + + // Stack linearity check + if err := modify.CheckStackLinearity(cfg, s); err != nil { + return nil, ErrSilent + } + + return result, nil +} + +// checkNoModifyInProgress checks if a modify state file already exists. +func checkNoModifyInProgress(cfg *config.Config, gitDir string) error { + state, err := modify.LoadState(gitDir) + if err != nil { + return nil + } + if state == nil { + return nil + } + + switch state.Phase { + case "applying": + cfg.Errorf("a previous modify session was interrupted") + cfg.Printf("Run `%s` to restore your stack", + cfg.ColorCyan("gh stack modify --recover")) + return ErrModifyRecovery + case "pending_submit": + cfg.Errorf("a modify was completed but the stack has not been submitted yet") + cfg.Printf("Run `%s` to push changes and recreate the stack on GitHub", + cfg.ColorCyan("gh stack submit")) + return ErrSilent + default: + cfg.Errorf("unexpected modify state phase: %s", state.Phase) + return ErrSilent + } +} diff --git a/cmd/modify_test.go b/cmd/modify_test.go new file mode 100644 index 0000000..48d0ec7 --- /dev/null +++ b/cmd/modify_test.go @@ -0,0 +1,728 @@ +package cmd + +import ( + "encoding/json" + "os" + "path/filepath" + "testing" + "time" + + "github.com/github/gh-stack/internal/config" + "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/github" + "github.com/github/gh-stack/internal/modify" + "github.com/github/gh-stack/internal/stack" + "github.com/github/gh-stack/internal/tui/modifyview" + "github.com/github/gh-stack/internal/tui/stackview" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +// --------------------------------------------------------------------------- +// 1. State file management tests +// --------------------------------------------------------------------------- + +func TestModifyStateLifecycle(t *testing.T) { + gitDir := t.TempDir() + + // Initially no state file exists + assert.False(t, modify.StateExists(gitDir), "no state file should exist initially") + + loaded, err := modify.LoadState(gitDir) + assert.NoError(t, err) + assert.Nil(t, loaded, "loadModifyState should return nil when file does not exist") + + // Save a state file + state := &modify.StateFile{ + SchemaVersion: 1, + StackName: "main", + StartedAt: time.Date(2025, 1, 15, 10, 0, 0, 0, time.UTC), + Phase: "applying", + Snapshot: modify.Snapshot{ + Branches: []modify.BranchSnapshot{ + {Name: "b1", TipSHA: "aaa111", Position: 0}, + {Name: "b2", TipSHA: "bbb222", Position: 1}, + }, + StackMetadata: json.RawMessage(`{"trunk":{"branch":"main"}}`), + }, + Plan: []modify.Action{ + {Type: "drop", Branch: "b1"}, + {Type: "rename", Branch: "b2", NewName: "b2-new"}, + }, + } + + err = modify.SaveState(gitDir, state) + require.NoError(t, err) + assert.True(t, modify.StateExists(gitDir), "state file should exist after save") + + // Load it back and verify round-trip + loaded, err = modify.LoadState(gitDir) + require.NoError(t, err) + require.NotNil(t, loaded) + + assert.Equal(t, 1, loaded.SchemaVersion) + assert.Equal(t, "main", loaded.StackName) + assert.Equal(t, "applying", loaded.Phase) + assert.Equal(t, state.StartedAt, loaded.StartedAt) + require.Len(t, loaded.Snapshot.Branches, 2) + assert.Equal(t, "b1", loaded.Snapshot.Branches[0].Name) + assert.Equal(t, "aaa111", loaded.Snapshot.Branches[0].TipSHA) + assert.Equal(t, 0, loaded.Snapshot.Branches[0].Position) + assert.Equal(t, "b2", loaded.Snapshot.Branches[1].Name) + assert.Equal(t, "bbb222", loaded.Snapshot.Branches[1].TipSHA) + assert.Equal(t, 1, loaded.Snapshot.Branches[1].Position) + require.Len(t, loaded.Plan, 2) + assert.Equal(t, "drop", loaded.Plan[0].Type) + assert.Equal(t, "b1", loaded.Plan[0].Branch) + assert.Equal(t, "rename", loaded.Plan[1].Type) + assert.Equal(t, "b2-new", loaded.Plan[1].NewName) + + // Clear the state + modify.ClearState(gitDir) + assert.False(t, modify.StateExists(gitDir), "state file should be removed after clear") + + loaded, err = modify.LoadState(gitDir) + assert.NoError(t, err) + assert.Nil(t, loaded, "loadModifyState should return nil after clear") +} + +func TestModifyStateAtomicWrite(t *testing.T) { + gitDir := t.TempDir() + + state := &modify.StateFile{ + SchemaVersion: 1, + StackName: "main", + Phase: "applying", + StartedAt: time.Now().UTC(), + } + + err := modify.SaveState(gitDir, state) + require.NoError(t, err) + + // The final file should exist + _, err = os.Stat(modify.StatePath(gitDir)) + assert.NoError(t, err, "state file should exist after atomic write") + + // No .tmp file should be left behind + _, err = os.Stat(modify.StatePath(gitDir) + ".tmp") + assert.True(t, os.IsNotExist(err), "no .tmp file should remain after successful write") +} + +func TestCheckModifyStateGuard(t *testing.T) { + t.Run("no state file", func(t *testing.T) { + gitDir := t.TempDir() + err := modify.CheckStateGuard(gitDir) + assert.NoError(t, err, "guard should pass when no state file exists") + }) + + t.Run("phase applying returns error", func(t *testing.T) { + gitDir := t.TempDir() + state := &modify.StateFile{ + SchemaVersion: 1, + Phase: "applying", + StartedAt: time.Now().UTC(), + } + require.NoError(t, modify.SaveState(gitDir, state)) + + err := modify.CheckStateGuard(gitDir) + assert.Error(t, err) + assert.Contains(t, err.Error(), "modify session was interrupted") + }) + + t.Run("phase pending_submit passes", func(t *testing.T) { + gitDir := t.TempDir() + state := &modify.StateFile{ + SchemaVersion: 1, + Phase: "pending_submit", + StartedAt: time.Now().UTC(), + } + require.NoError(t, modify.SaveState(gitDir, state)) + + err := modify.CheckStateGuard(gitDir) + assert.NoError(t, err, "guard should pass when phase is pending_submit") + }) +} + +// --------------------------------------------------------------------------- +// 2. Precondition check tests +// --------------------------------------------------------------------------- + +func TestCheckStackLinearity(t *testing.T) { + t.Run("linear stack passes", func(t *testing.T) { + mock := &git.MockOps{ + IsAncestorFn: func(a, d string) (bool, error) { return true, nil }, + LogMergesFn: func(base, head string) ([]git.CommitInfo, error) { return nil, nil }, + } + restore := git.SetOps(mock) + defer restore() + + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + {Branch: "b2"}, + {Branch: "b3"}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckStackLinearity(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.NoError(t, err) + }) + + t.Run("diverged branch fails", func(t *testing.T) { + mock := &git.MockOps{ + IsAncestorFn: func(a, d string) (bool, error) { + // b1 is not an ancestor of b2 + if a == "b1" && d == "b2" { + return false, nil + } + return true, nil + }, + LogMergesFn: func(base, head string) ([]git.CommitInfo, error) { return nil, nil }, + } + restore := git.SetOps(mock) + defer restore() + + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + {Branch: "b2"}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckStackLinearity(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.Error(t, err) + }) + + t.Run("merge commit fails", func(t *testing.T) { + mock := &git.MockOps{ + IsAncestorFn: func(a, d string) (bool, error) { return true, nil }, + LogMergesFn: func(base, head string) ([]git.CommitInfo, error) { + if head == "b2" { + return []git.CommitInfo{{SHA: "merge-sha"}}, nil + } + return nil, nil + }, + } + restore := git.SetOps(mock) + defer restore() + + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + {Branch: "b2"}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckStackLinearity(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.Error(t, err) + }) + + t.Run("skips merged branches", func(t *testing.T) { + var isAncestorCalls []string + mock := &git.MockOps{ + IsAncestorFn: func(a, d string) (bool, error) { + isAncestorCalls = append(isAncestorCalls, d) + return true, nil + }, + LogMergesFn: func(base, head string) ([]git.CommitInfo, error) { return nil, nil }, + } + restore := git.SetOps(mock) + defer restore() + + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1", PullRequest: &stack.PullRequestRef{Number: 10, Merged: true}}, + {Branch: "b2"}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckStackLinearity(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.NoError(t, err) + + // b1 is merged so IsAncestor should only be called for b2 + assert.NotContains(t, isAncestorCalls, "b1", "merged branch b1 should be skipped") + assert.Contains(t, isAncestorCalls, "b2", "active branch b2 should be checked") + }) +} + +func TestCheckNoMergeQueuePRs(t *testing.T) { + t.Run("no queued PRs passes", func(t *testing.T) { + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1", PullRequest: &stack.PullRequestRef{Number: 10}}, + {Branch: "b2"}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckNoMergeQueuePRs(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.NoError(t, err) + }) + + t.Run("queued unmerged PR fails", func(t *testing.T) { + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1", PullRequest: &stack.PullRequestRef{Number: 10}, Queued: true}, + {Branch: "b2"}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckNoMergeQueuePRs(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.Error(t, err) + }) + + t.Run("queued merged PR passes", func(t *testing.T) { + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1", PullRequest: &stack.PullRequestRef{Number: 10, Merged: true}, Queued: true}, + }, + } + + cfg, _, _ := config.NewTestConfig() + err := modify.CheckNoMergeQueuePRs(cfg, s) + cfg.Out.Close() + cfg.Err.Close() + assert.NoError(t, err) + }) +} + +func TestCheckNoModifyInProgress(t *testing.T) { + t.Run("no state file passes", func(t *testing.T) { + gitDir := t.TempDir() + cfg, _, _ := config.NewTestConfig() + err := checkNoModifyInProgress(cfg, gitDir) + cfg.Out.Close() + cfg.Err.Close() + assert.NoError(t, err) + }) + + t.Run("applying phase returns ErrModifyRecovery", func(t *testing.T) { + gitDir := t.TempDir() + state := &modify.StateFile{ + SchemaVersion: 1, + Phase: "applying", + StartedAt: time.Now().UTC(), + } + require.NoError(t, modify.SaveState(gitDir, state)) + + cfg, _, _ := config.NewTestConfig() + err := checkNoModifyInProgress(cfg, gitDir) + cfg.Out.Close() + cfg.Err.Close() + assert.ErrorIs(t, err, ErrModifyRecovery) + }) + + t.Run("pending_submit phase returns ErrSilent", func(t *testing.T) { + gitDir := t.TempDir() + state := &modify.StateFile{ + SchemaVersion: 1, + Phase: "pending_submit", + StartedAt: time.Now().UTC(), + } + require.NoError(t, modify.SaveState(gitDir, state)) + + cfg, _, _ := config.NewTestConfig() + err := checkNoModifyInProgress(cfg, gitDir) + cfg.Out.Close() + cfg.Err.Close() + assert.Error(t, err) + }) +} + +// --------------------------------------------------------------------------- +// 3. Build functions tests +// --------------------------------------------------------------------------- + +func TestBuildModifySnapshot(t *testing.T) { + mock := &git.MockOps{ + RevParseFn: func(ref string) (string, error) { + return "sha-" + ref, nil + }, + } + restore := git.SetOps(mock) + defer restore() + + s := &stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + {Branch: "b2"}, + {Branch: "b3"}, + }, + } + + snapshot, err := modify.BuildSnapshot(s) + require.NoError(t, err) + + // Verify branch snapshots + require.Len(t, snapshot.Branches, 3) + assert.Equal(t, "b1", snapshot.Branches[0].Name) + assert.Equal(t, "sha-b1", snapshot.Branches[0].TipSHA) + assert.Equal(t, 0, snapshot.Branches[0].Position) + + assert.Equal(t, "b2", snapshot.Branches[1].Name) + assert.Equal(t, "sha-b2", snapshot.Branches[1].TipSHA) + assert.Equal(t, 1, snapshot.Branches[1].Position) + + assert.Equal(t, "b3", snapshot.Branches[2].Name) + assert.Equal(t, "sha-b3", snapshot.Branches[2].TipSHA) + assert.Equal(t, 2, snapshot.Branches[2].Position) + + // Verify stack metadata is valid JSON containing the stack + var restoredStack stack.Stack + err = json.Unmarshal(snapshot.StackMetadata, &restoredStack) + require.NoError(t, err) + assert.Equal(t, "main", restoredStack.Trunk.Branch) + require.Len(t, restoredStack.Branches, 3) + assert.Equal(t, "b1", restoredStack.Branches[0].Branch) + assert.Equal(t, "b2", restoredStack.Branches[1].Branch) + assert.Equal(t, "b3", restoredStack.Branches[2].Branch) +} + +func TestBuildModifyPlan(t *testing.T) { + t.Run("drop action", func(t *testing.T) { + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionDrop}, + Removed: true, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + }, + } + + plan := modify.BuildPlan(nodes) + // b1 is Removed=true so it's skipped in the main loop. + // b2 has no changes and is at its original position → nothing. + assert.Empty(t, plan, "removed nodes are skipped; unchanged nodes produce nothing") + }) + + t.Run("rename action", func(t *testing.T) { + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionRename, NewName: "b1-new"}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + }, + } + + plan := modify.BuildPlan(nodes) + require.Len(t, plan, 1) + assert.Equal(t, "rename", plan[0].Type) + assert.Equal(t, "b1", plan[0].Branch) + assert.Equal(t, "b1-new", plan[0].NewName) + }) + + t.Run("mixed actions", func(t *testing.T) { + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionRename, NewName: "feature-1"}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionDrop}, + Removed: true, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b3"}}, + OriginalPosition: 2, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionFoldDown}, + Removed: true, + }, + } + + plan := modify.BuildPlan(nodes) + // b1 has a rename action → included + // b2 and b3 are Removed → skipped in the loop + require.Len(t, plan, 1) + assert.Equal(t, "rename", plan[0].Type) + assert.Equal(t, "feature-1", plan[0].NewName) + }) + + t.Run("no changes produces empty plan", func(t *testing.T) { + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + }, + } + + plan := modify.BuildPlan(nodes) + assert.Empty(t, plan) + }) + + t.Run("position change produces move action", func(t *testing.T) { + // b2 moved to position 0, b1 moved to position 1 (swapped) + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, // was at 1, now at 0 + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, // was at 0, now at 1 + }, + } + + plan := modify.BuildPlan(nodes) + require.Len(t, plan, 2) + assert.Equal(t, "move", plan[0].Type) + assert.Equal(t, "b2", plan[0].Branch) + assert.Equal(t, 0, plan[0].NewPosition) + assert.Equal(t, "move", plan[1].Type) + assert.Equal(t, "b1", plan[1].Branch) + assert.Equal(t, 1, plan[1].NewPosition) + }) +} + +// --------------------------------------------------------------------------- +// 4. Full preconditions integration test +// --------------------------------------------------------------------------- + +func TestCheckModifyPreconditions_NotInteractive(t *testing.T) { + // cfg from NewTestConfig is not interactive by default (piped output) + cfg, _, _ := config.NewTestConfig() + // Ensure ForceInteractive is false (default) + cfg.ForceInteractive = false + + tmpDir := t.TempDir() + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return tmpDir, nil }, + CurrentBranchFn: func() (string, error) { return "b1", nil }, + } + restore := git.SetOps(mock) + defer restore() + + _, err := checkModifyPreconditions(cfg) + cfg.Out.Close() + cfg.Err.Close() + assert.Error(t, err) +} + +func TestCheckModifyPreconditions_RebaseInProgress(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + }, + } + + tmpDir := t.TempDir() + writeStackFile(t, tmpDir, s) + + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return tmpDir, nil }, + CurrentBranchFn: func() (string, error) { return "b1", nil }, + IsRebaseInProgressFn: func() bool { return true }, + HasUncommittedChangesFn: func() (bool, error) { return false, nil }, + } + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + cfg.ForceInteractive = true + + _, err := checkModifyPreconditions(cfg) + cfg.Out.Close() + cfg.Err.Close() + assert.ErrorIs(t, err, ErrRebaseActive) +} + +func TestCheckModifyPreconditions_DirtyWorkingTree(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + }, + } + + tmpDir := t.TempDir() + writeStackFile(t, tmpDir, s) + + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return tmpDir, nil }, + CurrentBranchFn: func() (string, error) { return "b1", nil }, + IsRebaseInProgressFn: func() bool { return false }, + HasUncommittedChangesFn: func() (bool, error) { return true, nil }, + } + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + cfg.ForceInteractive = true + + _, err := checkModifyPreconditions(cfg) + cfg.Out.Close() + cfg.Err.Close() + assert.Error(t, err) +} + +func TestCheckModifyPreconditions_AllPass(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1"}, + {Branch: "b2"}, + }, + } + + tmpDir := t.TempDir() + writeStackFile(t, tmpDir, s) + + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return tmpDir, nil }, + CurrentBranchFn: func() (string, error) { return "b1", nil }, + IsRebaseInProgressFn: func() bool { return false }, + HasUncommittedChangesFn: func() (bool, error) { return false, nil }, + IsAncestorFn: func(a, d string) (bool, error) { return true, nil }, + LogMergesFn: func(base, head string) ([]git.CommitInfo, error) { return nil, nil }, + } + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + cfg.ForceInteractive = true + // Inject mock GitHub client so syncStackPRs doesn't fail + cfg.GitHubClientOverride = &github.MockClient{ + FindPRForBranchFn: func(branch string) (*github.PullRequest, error) { + return nil, nil + }, + } + + result, err := checkModifyPreconditions(cfg) + cfg.Out.Close() + cfg.Err.Close() + assert.NoError(t, err) + require.NotNil(t, result) + assert.Equal(t, tmpDir, result.GitDir) + assert.Equal(t, "b1", result.CurrentBranch) +} + +// --------------------------------------------------------------------------- +// 5. State file path / exists edge cases +// --------------------------------------------------------------------------- + +func TestModifyStatePath(t *testing.T) { + p := modify.StatePath("/fake/git/dir") + assert.Equal(t, filepath.Join("/fake/git/dir", "gh-stack-modify-state"), p) +} + +func TestModifyStateExistsAfterSaveAndClear(t *testing.T) { + gitDir := t.TempDir() + + assert.False(t, modify.StateExists(gitDir)) + + state := &modify.StateFile{SchemaVersion: 1, Phase: "applying", StartedAt: time.Now().UTC()} + require.NoError(t, modify.SaveState(gitDir, state)) + assert.True(t, modify.StateExists(gitDir)) + + modify.ClearState(gitDir) + assert.False(t, modify.StateExists(gitDir)) +} + +func TestLoadModifyState_InvalidJSON(t *testing.T) { + gitDir := t.TempDir() + err := os.WriteFile(modify.StatePath(gitDir), []byte("not json"), 0644) + require.NoError(t, err) + + loaded, err := modify.LoadState(gitDir) + assert.Error(t, err) + assert.Nil(t, loaded) + assert.Contains(t, err.Error(), "parsing modify state") +} + +// --------------------------------------------------------------------------- +// 6. State round-trip with prior remote stack ID +// --------------------------------------------------------------------------- + +func TestModifyStateRoundTrip_WithPriorStackID(t *testing.T) { + gitDir := t.TempDir() + + state := &modify.StateFile{ + SchemaVersion: 1, + StackName: "main", + StartedAt: time.Now().UTC(), + Phase: "pending_submit", + PriorRemoteStackID: "stack-abc-123", + Snapshot: modify.Snapshot{ + Branches: []modify.BranchSnapshot{ + {Name: "b1", TipSHA: "aaa", Position: 0}, + }, + StackMetadata: json.RawMessage(`{}`), + }, + Plan: []modify.Action{ + {Type: "fold_down", Branch: "b2"}, + }, + } + + require.NoError(t, modify.SaveState(gitDir, state)) + + loaded, err := modify.LoadState(gitDir) + require.NoError(t, err) + require.NotNil(t, loaded) + + assert.Equal(t, "pending_submit", loaded.Phase) + assert.Equal(t, "stack-abc-123", loaded.PriorRemoteStackID) +} + +// --------------------------------------------------------------------------- +// 7. checkModifyStateGuard edge cases +// --------------------------------------------------------------------------- + +func TestCheckModifyStateGuard_IgnoresReadErrors(t *testing.T) { + // Use a path that doesn't exist and isn't a directory — this tests + // the "ignore read errors" branch in checkModifyStateGuard. + err := modify.CheckStateGuard("/nonexistent/path/that/does/not/exist") + assert.NoError(t, err, "guard should silently ignore read errors") +} + +func TestCheckModifyStateGuard_UnknownPhase(t *testing.T) { + gitDir := t.TempDir() + state := &modify.StateFile{ + SchemaVersion: 1, + Phase: "unknown_phase", + StartedAt: time.Now().UTC(), + } + require.NoError(t, modify.SaveState(gitDir, state)) + + err := modify.CheckStateGuard(gitDir) + assert.NoError(t, err, "guard only blocks on 'applying' phase") +} diff --git a/cmd/root.go b/cmd/root.go index 6e17b7c..c566aba 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -42,6 +42,7 @@ func RootCmd() *cobra.Command { // Helper commands root.AddCommand(ViewCmd(cfg)) root.AddCommand(RebaseCmd(cfg)) + root.AddCommand(ModifyCmd(cfg)) // Navigation commands root.AddCommand(UpCmd(cfg)) diff --git a/cmd/utils.go b/cmd/utils.go index dc107ea..09e95e5 100644 --- a/cmd/utils.go +++ b/cmd/utils.go @@ -28,7 +28,8 @@ var ( ErrDisambiguate = &ExitError{Code: 6} // multiple stacks/remotes, can't auto-select ErrRebaseActive = &ExitError{Code: 7} // rebase already in progress ErrLockFailed = &ExitError{Code: 8} // could not acquire stack file lock - ErrStacksUnavailable = &ExitError{Code: 9} // stacked PRs not available for this repository + ErrStacksUnavailable = &ExitError{Code: 9} // stacked PRs not available for this repository + ErrModifyRecovery = &ExitError{Code: 10} // modify session interrupted, recovery required ) // ExitError is returned by commands to indicate a specific exit code. diff --git a/internal/modify/apply.go b/internal/modify/apply.go new file mode 100644 index 0000000..a6055af --- /dev/null +++ b/internal/modify/apply.go @@ -0,0 +1,527 @@ +package modify + +import ( + "encoding/json" + "fmt" + "time" + + "github.com/github/gh-stack/internal/config" + "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/stack" + "github.com/github/gh-stack/internal/tui/modifyview" +) + +// BuildSnapshot captures the current state of the stack for unwind/recovery. +func BuildSnapshot(s *stack.Stack) (Snapshot, error) { + // Collect all branch names + names := make([]string, len(s.Branches)) + for i, b := range s.Branches { + names[i] = b.Branch + } + + // Resolve all SHAs + shaMap, err := git.RevParseMap(names) + if err != nil { + return Snapshot{}, fmt.Errorf("resolving branch SHAs: %w", err) + } + + // Build branch snapshots + branches := make([]BranchSnapshot, len(s.Branches)) + for i, b := range s.Branches { + branches[i] = BranchSnapshot{ + Name: b.Branch, + TipSHA: shaMap[b.Branch], + Position: i, + } + } + + // Serialize stack metadata + stackJSON, err := json.Marshal(s) + if err != nil { + return Snapshot{}, fmt.Errorf("serializing stack metadata: %w", err) + } + + return Snapshot{ + Branches: branches, + StackMetadata: stackJSON, + }, nil +} + +// BuildPlan converts the TUI's staged actions into a list of Actions +// suitable for storage in the state file. +func BuildPlan(nodes []modifyview.ModifyBranchNode) []Action { + var plan []Action + + for i, n := range nodes { + if n.PendingAction == nil && n.OriginalPosition == i && !n.Removed { + continue + } + + if n.Removed { + continue // Removed nodes are handled by their pending action + } + + if n.PendingAction != nil { + action := Action{ + Type: string(n.PendingAction.Type), + Branch: n.Ref.Branch, + } + if n.PendingAction.Type == modifyview.ActionRename { + action.NewName = n.PendingAction.NewName + } + plan = append(plan, action) + } + + if n.OriginalPosition != i && n.PendingAction == nil { + plan = append(plan, Action{ + Type: "move", + Branch: n.Ref.Branch, + NewPosition: i, + }) + } + } + + return plan +} + +// ApplyPlan executes the staged modifications on the stack. +// updateBaseSHAs is called after rebasing to refresh branch SHAs in the stack metadata. +// It returns an ApplyResult on success or a ConflictInfo if a rebase conflict occurs. +func ApplyPlan( + cfg *config.Config, + gitDir string, + s *stack.Stack, + sf *stack.StackFile, + nodes []modifyview.ModifyBranchNode, + currentBranch string, + updateBaseSHAs func(*stack.Stack), +) (*modifyview.ApplyResult, *modifyview.ConflictInfo, error) { + // Build the snapshot before any changes + snapshot, err := BuildSnapshot(s) + if err != nil { + return nil, nil, fmt.Errorf("building snapshot: %w", err) + } + + // Acquire the stack lock before making any changes + lock, err := stack.Lock(gitDir) + if err != nil { + return nil, nil, fmt.Errorf("acquiring stack lock: %w", err) + } + defer lock.Unlock() + + plan := BuildPlan(nodes) + + // Write state file with phase "applying" + stateFile := &StateFile{ + SchemaVersion: 1, + StackName: s.Trunk.Branch, + StartedAt: time.Now().UTC(), + Phase: "applying", + PriorRemoteStackID: s.ID, + Snapshot: snapshot, + Plan: plan, + } + if err := SaveState(gitDir, stateFile); err != nil { + return nil, nil, fmt.Errorf("saving modify state: %w", err) + } + + result := &modifyview.ApplyResult{Success: true} + + // Collect original refs for rebase --onto, including trunk + branchNames := make([]string, 0, len(s.Branches)+1) + branchNames = append(branchNames, s.Trunk.Branch) + for _, b := range s.Branches { + if !b.IsMerged() && git.BranchExists(b.Branch) { + branchNames = append(branchNames, b.Branch) + } + } + originalRefs, err := git.RevParseMap(branchNames) + + // Build a map of each branch's original parent tip SHA for accurate --onto rebase + originalParentTips := make(map[string]string) + for i, b := range s.Branches { + if b.IsMerged() { + continue + } + var parentName string + if i == 0 { + parentName = s.Trunk.Branch + } else { + parentName = s.ActiveBaseBranch(b.Branch) + } + if sha, ok := originalRefs[parentName]; ok { + originalParentTips[b.Branch] = sha + } + } + if err != nil { + // Unwind on failure + unwindErr := Unwind(cfg, gitDir, snapshot, s, sf) + if unwindErr != nil { + return nil, nil, fmt.Errorf("failed to resolve refs (%v) and unwind failed (%v)", err, unwindErr) + } + return nil, nil, fmt.Errorf("failed to resolve branch SHAs: %w", err) + } + + // Step 1: Renames + for i, n := range nodes { + if n.PendingAction != nil && n.PendingAction.Type == modifyview.ActionRename { + oldName := n.Ref.Branch + newName := n.PendingAction.NewName + if err := git.RenameBranch(oldName, newName); err != nil { + unwindErr := Unwind(cfg, gitDir, snapshot, s, sf) + if unwindErr != nil { + return nil, nil, fmt.Errorf("rename failed (%v) and unwind failed (%v)", err, unwindErr) + } + return nil, nil, fmt.Errorf("renaming %s to %s: %w", oldName, newName, err) + } + + // Update in-memory state + idx := s.IndexOf(oldName) + if idx >= 0 { + // Update originalRefs key + if sha, ok := originalRefs[oldName]; ok { + originalRefs[newName] = sha + delete(originalRefs, oldName) + } + s.Branches[idx].Branch = newName + } + // Update the node's ref for later steps + nodes[i].Ref.Branch = newName + + result.RenamedBranches = append(result.RenamedBranches, modifyview.RenamedBranch{ + OldName: oldName, + NewName: newName, + }) + cfg.Successf("Renamed %s → %s", oldName, newName) + } + } + + // Step 2: Folds — cherry-pick commits from folded branch onto target + for _, n := range nodes { + if n.PendingAction == nil { + continue + } + if n.PendingAction.Type != modifyview.ActionFoldDown && n.PendingAction.Type != modifyview.ActionFoldUp { + continue + } + + foldBranch := n.Ref.Branch + + // Determine target branch + var targetBranch string + foldIdx := s.IndexOf(foldBranch) + if foldIdx < 0 { + continue + } + + if n.PendingAction.Type == modifyview.ActionFoldDown { + // Target is the branch below (toward trunk) + if foldIdx == 0 { + continue // Can't fold below the bottom + } + targetBranch = s.Branches[foldIdx-1].Branch + } else { + // Target is the branch above (away from trunk) + if foldIdx >= len(s.Branches)-1 { + continue // Can't fold above the top + } + targetBranch = s.Branches[foldIdx+1].Branch + } + + // Get commits unique to the folded branch + baseBranch := s.ActiveBaseBranch(foldBranch) + commits, err := git.LogRange(baseBranch, foldBranch) + if err != nil || len(commits) == 0 { + // No commits to cherry-pick — just remove from stack + cfg.Printf("No commits to fold from %s", foldBranch) + } else { + // Checkout target and cherry-pick + if err := git.CheckoutBranch(targetBranch); err != nil { + unwindErr := Unwind(cfg, gitDir, snapshot, s, sf) + if unwindErr != nil { + return nil, nil, fmt.Errorf("checkout failed (%v) and unwind failed (%v)", err, unwindErr) + } + return nil, nil, fmt.Errorf("checking out %s for fold: %w", targetBranch, err) + } + + // Get SHAs in chronological order (LogRange returns newest first) + shas := make([]string, len(commits)) + for i, c := range commits { + shas[len(commits)-1-i] = c.SHA + } + + if err := git.CherryPick(shas); err != nil { + // Cherry-pick conflict + conflict := &modifyview.ConflictInfo{ + Branch: foldBranch, + } + if files, ferr := git.ConflictedFiles(); ferr == nil { + conflict.ConflictedFiles = files + } + return nil, conflict, fmt.Errorf("cherry-pick conflict folding %s into %s", foldBranch, targetBranch) + } + + cfg.Successf("Folded %s into %s (%d commits)", foldBranch, targetBranch, len(commits)) + } + + // Remove from stack metadata + if foldIdx >= 0 && foldIdx < len(s.Branches) { + s.Branches = append(s.Branches[:foldIdx], s.Branches[foldIdx+1:]...) + } + } + + // Step 3: Drops — remove from stack metadata + // Process in reverse order to preserve indices + for i := len(nodes) - 1; i >= 0; i-- { + n := nodes[i] + if n.PendingAction == nil || n.PendingAction.Type != modifyview.ActionDrop { + continue + } + + dropBranch := n.Ref.Branch + dropIdx := s.IndexOf(dropBranch) + if dropIdx < 0 { + continue + } + + if n.Ref.PullRequest != nil && n.Ref.PullRequest.Number > 0 { + result.DroppedPRs = append(result.DroppedPRs, modifyview.DroppedPR{ + Branch: dropBranch, + PRNumber: n.Ref.PullRequest.Number, + }) + } + + s.Branches = append(s.Branches[:dropIdx], s.Branches[dropIdx+1:]...) + cfg.Successf("Dropped %s from stack", dropBranch) + } + + // Step 4: Reorder — build the desired branch order from the remaining nodes + desiredOrder := make([]string, 0) + for _, n := range nodes { + if n.Removed { + continue + } + if n.PendingAction != nil && (n.PendingAction.Type == modifyview.ActionDrop || + n.PendingAction.Type == modifyview.ActionFoldDown || + n.PendingAction.Type == modifyview.ActionFoldUp) { + continue + } + if n.Ref.IsMerged() { + continue // Merged branches keep their position + } + desiredOrder = append(desiredOrder, n.Ref.Branch) + } + + // Check if reorder is needed by comparing with current stack order + currentOrder := make([]string, 0) + for _, b := range s.Branches { + if !b.IsMerged() { + currentOrder = append(currentOrder, b.Branch) + } + } + + needsReorder := false + if len(desiredOrder) == len(currentOrder) { + for i := range desiredOrder { + if desiredOrder[i] != currentOrder[i] { + needsReorder = true + break + } + } + } else { + needsReorder = true + } + + // Rebuild s.Branches in the desired order + if needsReorder || len(s.Branches) != len(desiredOrder) { + newBranches := make([]stack.BranchRef, 0, len(desiredOrder)) + + // Add merged branches first (they stay in place) + for _, b := range s.Branches { + if b.IsMerged() { + newBranches = append(newBranches, b) + } + } + + // Add active branches in desired order + branchMap := make(map[string]stack.BranchRef) + for _, b := range s.Branches { + branchMap[b.Branch] = b + } + for _, name := range desiredOrder { + if b, ok := branchMap[name]; ok { + newBranches = append(newBranches, b) + } + } + + s.Branches = newBranches + } + + // Step 5: Cascading rebase — rebase each active branch onto its new parent. + // Use the original parent tip SHA as the oldBase for --onto, so that only + // the branch's own commits are replayed onto the new parent. + for i, b := range s.Branches { + if b.IsMerged() { + continue + } + + var newBase string + if i == 0 { + newBase = s.Trunk.Branch + } else { + newBase = s.ActiveBaseBranch(b.Branch) + } + + // Use the branch's original parent tip as the oldBase for --onto. + // This ensures we replay only this branch's unique commits. + oldBase, hasOldBase := originalParentTips[b.Branch] + if !hasOldBase { + // No original parent recorded — try merge-base as fallback + if mb, mberr := git.MergeBase(newBase, b.Branch); mberr == nil { + oldBase = mb + } else { + continue + } + } + + // Check if rebase is actually needed + isAnc, ancErr := git.IsAncestor(newBase, b.Branch) + if ancErr == nil && isAnc { + if mb, mberr := git.MergeBase(newBase, b.Branch); mberr == nil && mb == oldBase { + continue // No rebase needed + } + } + + if err := git.RebaseOnto(newBase, oldBase, b.Branch); err != nil { + conflict := &modifyview.ConflictInfo{ + Branch: b.Branch, + } + if files, ferr := git.ConflictedFiles(); ferr == nil { + conflict.ConflictedFiles = files + } + return nil, conflict, fmt.Errorf("rebase conflict on %s", b.Branch) + } + + cfg.Successf("Rebased %s onto %s", b.Branch, newBase) + result.MovedBranches++ + } + + // Restore original branch + _ = git.CheckoutBranch(currentBranch) + + // Update base SHAs + updateBaseSHAs(s) + + // Update state file phase + if s.ID != "" { + stateFile.Phase = "pending_submit" + if err := SaveState(gitDir, stateFile); err != nil { + cfg.Warningf("failed to update modify state: %s", err) + } + } else { + // No remote stack — clear the state file + ClearState(gitDir) + } + + // Save stack metadata — this must succeed since git refs have been rewritten + if err := stack.SaveWithLock(gitDir, sf, lock); err != nil { + return nil, nil, fmt.Errorf("saving stack metadata: %w", err) + } + + return result, nil, nil +} + +// Unwind restores the stack to its pre-modify state using the snapshot. +func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, s *stack.Stack, sf *stack.StackFile) error { + // Abort any in-progress rebase + if git.IsRebaseInProgress() { + _ = git.RebaseAbort() + } + + // Restore branch tips + for _, bs := range snapshot.Branches { + if !git.BranchExists(bs.Name) { + // Branch was renamed — try to find it by SHA and recreate + if err := git.CreateBranch(bs.Name, bs.TipSHA); err != nil { + cfg.Warningf("failed to restore branch %s: %v", bs.Name, err) + continue + } + } else { + if err := git.CheckoutBranch(bs.Name); err != nil { + cfg.Warningf("failed to checkout %s for unwind: %v", bs.Name, err) + continue + } + if err := git.ResetHard(bs.TipSHA); err != nil { + cfg.Warningf("failed to reset %s to %s: %v", bs.Name, bs.TipSHA[:7], err) + continue + } + } + } + + // Restore stack metadata from snapshot + var restoredStack stack.Stack + if err := json.Unmarshal(snapshot.StackMetadata, &restoredStack); err != nil { + return fmt.Errorf("restoring stack metadata: %w", err) + } + + // Find and replace the stack in the stack file + for i := range sf.Stacks { + if &sf.Stacks[i] == s { + sf.Stacks[i] = restoredStack + break + } + } + + // Save restored stack + if err := stack.Save(gitDir, sf); err != nil { + cfg.Warningf("failed to save restored stack: %v", err) + } + + // Clear state file + ClearState(gitDir) + + // Checkout the first snapshot branch + if len(snapshot.Branches) > 0 { + _ = git.CheckoutBranch(snapshot.Branches[0].Name) + } + + cfg.Successf("Stack restored to pre-modify state") + return nil +} + +// UnwindFromStateFile restores the stack from a modify state file (for --recover). +func UnwindFromStateFile(cfg *config.Config, gitDir string) error { + state, err := LoadState(gitDir) + if err != nil { + return fmt.Errorf("loading modify state: %w", err) + } + if state == nil { + return fmt.Errorf("no modify state file found") + } + + sf, err := stack.Load(gitDir) + if err != nil { + return fmt.Errorf("loading stack: %w", err) + } + + // Find the stack by trunk name + var s *stack.Stack + for i := range sf.Stacks { + if sf.Stacks[i].Trunk.Branch == state.StackName { + s = &sf.Stacks[i] + break + } + } + + if s == nil { + // Stack not found — try to restore from snapshot metadata + var restoredStack stack.Stack + if err := json.Unmarshal(state.Snapshot.StackMetadata, &restoredStack); err != nil { + return fmt.Errorf("restoring stack from snapshot: %w", err) + } + sf.AddStack(restoredStack) + s = &sf.Stacks[len(sf.Stacks)-1] + } + + return Unwind(cfg, gitDir, state.Snapshot, s, sf) +} diff --git a/internal/modify/preconditions.go b/internal/modify/preconditions.go new file mode 100644 index 0000000..2d5e417 --- /dev/null +++ b/internal/modify/preconditions.go @@ -0,0 +1,75 @@ +package modify + +import ( + "fmt" + + "github.com/github/gh-stack/internal/config" + "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/stack" +) + +// CheckNoMergeQueuePRs checks that no unmerged PR in the stack is currently queued. +func CheckNoMergeQueuePRs(cfg *config.Config, s *stack.Stack) error { + for _, b := range s.Branches { + if b.IsQueued() && !b.IsMerged() { + prLink := "" + if b.PullRequest != nil { + prLink = cfg.PRLink(b.PullRequest.Number, b.PullRequest.URL) + } + cfg.Errorf("branch %s has a PR (%s) in the merge queue", b.Branch, prLink) + cfg.Printf("Wait for it to land or remove it from the queue before modifying the stack") + return fmt.Errorf("merge queue conflict on %s", b.Branch) + } + } + return nil +} + +// CheckStackLinearity verifies that the stack has unambiguous commit-to-branch mapping. +// For each adjacent pair (parent, child), checks: +// 1. parent tip is an ancestor of child tip +// 2. no merge commits exist in the range parent..child +func CheckStackLinearity(cfg *config.Config, s *stack.Stack) error { + for i, b := range s.Branches { + if b.IsMerged() { + continue + } + + var parentBranch string + if i == 0 { + parentBranch = s.Trunk.Branch + } else { + parentBranch = s.Branches[i-1].Branch + } + + if i > 0 && s.Branches[i-1].IsMerged() { + parentBranch = s.ActiveBaseBranch(b.Branch) + } + + isAnc, err := git.IsAncestor(parentBranch, b.Branch) + if err != nil { + cfg.Errorf("failed to check linearity for %s: %s", b.Branch, err) + return fmt.Errorf("linearity check failed for %s", b.Branch) + } + if !isAnc { + cfg.Errorf("%s has diverged from %s", b.Branch, parentBranch) + cfg.Printf("Run `%s` to normalize the stack, or `%s` to restructure manually", + cfg.ColorCyan("gh stack rebase"), + cfg.ColorCyan("gh stack unstack")) + return fmt.Errorf("%s has diverged from %s", b.Branch, parentBranch) + } + + merges, err := git.LogMerges(parentBranch, b.Branch) + if err != nil { + continue + } + if len(merges) > 0 { + cfg.Errorf("%s contains a merge commit — modify requires linear history", b.Branch) + cfg.Printf("Run `%s` to replay without the merge, or `%s` to restructure manually", + cfg.ColorCyan("gh stack rebase"), + cfg.ColorCyan("gh stack unstack")) + return fmt.Errorf("%s contains merge commits", b.Branch) + } + } + + return nil +} diff --git a/internal/modify/state.go b/internal/modify/state.go new file mode 100644 index 0000000..6be6985 --- /dev/null +++ b/internal/modify/state.go @@ -0,0 +1,114 @@ +package modify + +import ( + "encoding/json" + "errors" + "fmt" + "os" + "path/filepath" + "time" +) + +const stateFileName = "gh-stack-modify-state" + +// StateFile holds the state of an in-progress or pending-submit modify operation. +// It is stored at .git/gh-stack-modify-state. +type StateFile struct { + SchemaVersion int `json:"schema_version"` + StackName string `json:"stack_name"` + StartedAt time.Time `json:"started_at"` + Phase string `json:"phase"` // "applying" or "pending_submit" + PriorRemoteStackID string `json:"prior_remote_stack_id,omitempty"` + Snapshot Snapshot `json:"snapshot"` + Plan []Action `json:"plan"` +} + +// Snapshot captures the pre-modify state for unwind/recovery. +type Snapshot struct { + Branches []BranchSnapshot `json:"branches"` + StackMetadata json.RawMessage `json:"stack_metadata"` +} + +// BranchSnapshot stores the state of a single branch before modification. +type BranchSnapshot struct { + Name string `json:"name"` + TipSHA string `json:"tip_sha"` + Position int `json:"position"` +} + +// Action represents a single staged action from the TUI. +type Action struct { + Type string `json:"type"` // "drop", "fold_down", "fold_up", "move", "rename" + Branch string `json:"branch"` + NewPosition int `json:"new_position,omitempty"` // for "move" + NewName string `json:"new_name,omitempty"` // for "rename" +} + +// StatePath returns the full path to the modify state file. +func StatePath(gitDir string) string { + return filepath.Join(gitDir, stateFileName) +} + +// LoadState reads the modify state file from the git directory. +// Returns nil, nil if the file does not exist. +func LoadState(gitDir string) (*StateFile, error) { + data, err := os.ReadFile(StatePath(gitDir)) + if err != nil { + if errors.Is(err, os.ErrNotExist) { + return nil, nil + } + return nil, fmt.Errorf("reading modify state: %w", err) + } + + var state StateFile + if err := json.Unmarshal(data, &state); err != nil { + return nil, fmt.Errorf("parsing modify state: %w", err) + } + return &state, nil +} + +// SaveState writes the modify state file atomically (write to temp, then rename). +func SaveState(gitDir string, state *StateFile) error { + data, err := json.MarshalIndent(state, "", " ") + if err != nil { + return fmt.Errorf("marshaling modify state: %w", err) + } + target := StatePath(gitDir) + tmp := target + ".tmp" + if err := os.WriteFile(tmp, data, 0644); err != nil { + return fmt.Errorf("writing modify state: %w", err) + } + if err := os.Rename(tmp, target); err != nil { + _ = os.Remove(tmp) + return fmt.Errorf("committing modify state: %w", err) + } + return nil +} + +// ClearState removes the modify state file. +func ClearState(gitDir string) { + _ = os.Remove(StatePath(gitDir)) +} + +// StateExists returns true if a modify state file exists. +func StateExists(gitDir string) bool { + _, err := os.Stat(StatePath(gitDir)) + return err == nil +} + +// CheckStateGuard checks if a modify state file exists with phase "applying" +// and returns an error if so. This is used as a guard at the top of commands that +// should not run while a modify is in progress. +func CheckStateGuard(gitDir string) error { + state, err := LoadState(gitDir) + if err != nil { + return nil // ignore read errors + } + if state == nil { + return nil + } + if state.Phase == "applying" { + return fmt.Errorf("a modify session was interrupted — run `gh stack modify --recover` to restore your stack") + } + return nil +} diff --git a/internal/stack/stack.go b/internal/stack/stack.go index 5dd89ea..bc9d88c 100644 --- a/internal/stack/stack.go +++ b/internal/stack/stack.go @@ -316,6 +316,14 @@ func Save(gitDir string, sf *StackFile) error { return writeStackFile(gitDir, sf) } +// SaveWithLock writes the stack file while the caller already holds the lock. +// This avoids double-locking when the caller needs to hold the lock across +// multiple operations (e.g. modify apply). The staleness check is skipped +// because the caller owns the lock and has been mutating the StackFile. +func SaveWithLock(gitDir string, sf *StackFile, _ *FileLock) error { + return writeStackFile(gitDir, sf) +} + // SaveNonBlocking attempts to save without blocking. If another process holds // the lock or the file was modified since Load, the save is silently skipped. // Use this for best-effort metadata persistence (e.g. syncing PR state in view). diff --git a/internal/tui/modifyview/help.go b/internal/tui/modifyview/help.go new file mode 100644 index 0000000..6aa5026 --- /dev/null +++ b/internal/tui/modifyview/help.go @@ -0,0 +1,92 @@ +package modifyview + +import ( + "strings" + + "github.com/charmbracelet/lipgloss" +) + +type helpEntry struct { + keys string + desc string +} + +var helpEntries = []helpEntry{ + {"↑/↓, k/j", "Select branch"}, + {"f", "View files changed"}, + {"c", "View commits"}, + {"x", "Drop branch from stack"}, + {"r", "Rename branch"}, + {"u", "Fold up (merge into branch above)"}, + {"d", "Fold down (merge into branch below)"}, + {"shift+↑/↓, K/J", "Reorder branch up/down"}, + {"z", "Undo last action"}, + {"ctrl+s", "Apply all changes"}, + {"q/esc", "Cancel and exit (abandon changes)"}, +} + +// renderHelpOverlay renders a centered help overlay. +func renderHelpOverlay(width, height int) string { + var b strings.Builder + + title := helpTitleStyle.Render("Keyboard Shortcuts") + b.WriteString(title) + b.WriteString("\n\n") + + maxKeyWidth := 0 + for _, e := range helpEntries { + w := lipgloss.Width(e.keys) + if w > maxKeyWidth { + maxKeyWidth = w + } + } + + for _, e := range helpEntries { + keyVisWidth := lipgloss.Width(e.keys) + keyPad := strings.Repeat(" ", maxKeyWidth-keyVisWidth+2) + b.WriteString(helpKeyStyle.Render(e.keys)) + b.WriteString(keyPad) + b.WriteString(helpDescStyle.Render(e.desc)) + b.WriteString("\n") + } + + b.WriteString("\n") + b.WriteString(statusBarStyle.Render("Press ? or Esc to close")) + + content := b.String() + + // Apply the overlay style and center it + styled := helpOverlayStyle.Render(content) + + // Center vertically and horizontally + styledLines := strings.Split(styled, "\n") + styledHeight := len(styledLines) + styledWidth := 0 + for _, line := range styledLines { + w := lipgloss.Width(line) + if w > styledWidth { + styledWidth = w + } + } + + topPad := (height - styledHeight) / 2 + if topPad < 0 { + topPad = 0 + } + leftPad := (width - styledWidth) / 2 + if leftPad < 0 { + leftPad = 0 + } + + var result strings.Builder + for i := 0; i < topPad; i++ { + result.WriteString("\n") + } + for _, line := range styledLines { + result.WriteString(strings.Repeat(" ", leftPad)) + result.WriteString(line) + result.WriteString("\n") + } + + return result.String() +} diff --git a/internal/tui/modifyview/model.go b/internal/tui/modifyview/model.go new file mode 100644 index 0000000..d81b7ef --- /dev/null +++ b/internal/tui/modifyview/model.go @@ -0,0 +1,1042 @@ +package modifyview + +import ( + "fmt" + "strings" + + "github.com/charmbracelet/bubbles/key" + "github.com/charmbracelet/bubbles/textinput" + tea "github.com/charmbracelet/bubbletea" + "github.com/charmbracelet/lipgloss" + "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/stack" + "github.com/github/gh-stack/internal/tui/shared" + "github.com/github/gh-stack/internal/tui/stackview" +) + +// modifyKeyMap defines key bindings for the modify view. +type modifyKeyMap struct { + Up key.Binding + Down key.Binding + MoveUp key.Binding + MoveDown key.Binding + Drop key.Binding + FoldDown key.Binding + FoldUp key.Binding + Rename key.Binding + Undo key.Binding + ToggleCommits key.Binding + ToggleFiles key.Binding + Apply key.Binding + Help key.Binding + Quit key.Binding +} + +func (k modifyKeyMap) ShortHelp() []key.Binding { + return []key.Binding{k.Up, k.Down, k.Drop, k.FoldDown, k.Rename, k.ToggleCommits, k.ToggleFiles, k.Apply, k.Help, k.Quit} +} + +func (k modifyKeyMap) FullHelp() [][]key.Binding { + return [][]key.Binding{k.ShortHelp()} +} + +var modifyKeys = modifyKeyMap{ + Up: key.NewBinding( + key.WithKeys("up", "k"), + key.WithHelp("↑/k", "up"), + ), + Down: key.NewBinding( + key.WithKeys("down", "j"), + key.WithHelp("↓/j", "down"), + ), + MoveUp: key.NewBinding( + key.WithKeys("K", "shift+up"), + key.WithHelp("shift+↑", "move up"), + ), + MoveDown: key.NewBinding( + key.WithKeys("J", "shift+down"), + key.WithHelp("shift+↓", "move down"), + ), + Drop: key.NewBinding( + key.WithKeys("x"), + key.WithHelp("x", "drop"), + ), + FoldDown: key.NewBinding( + key.WithKeys("d"), + key.WithHelp("d", "fold down"), + ), + FoldUp: key.NewBinding( + key.WithKeys("u"), + key.WithHelp("u", "fold up"), + ), + Rename: key.NewBinding( + key.WithKeys("r"), + key.WithHelp("r", "rename"), + ), + Undo: key.NewBinding( + key.WithKeys("z"), + key.WithHelp("z", "undo"), + ), + ToggleCommits: key.NewBinding( + key.WithKeys("c"), + key.WithHelp("c", "commits"), + ), + ToggleFiles: key.NewBinding( + key.WithKeys("f"), + key.WithHelp("f", "files"), + ), + Apply: key.NewBinding( + key.WithKeys("ctrl+s"), + key.WithHelp("ctrl+s", "apply"), + ), + Help: key.NewBinding( + key.WithKeys("?"), + key.WithHelp("?", "help"), + ), + Quit: key.NewBinding( + key.WithKeys("q", "esc", "ctrl+c"), + key.WithHelp("q", "quit"), + ), +} + +// Model is the Bubble Tea model for the interactive modify view. +type Model struct { + nodes []ModifyBranchNode + trunk stack.BranchRef + version string + cursor int + width int + height int + scrollOffset int + + // Undo stack + actionStack []StagedAction + + // Rename mode + renameMode bool + renameInput textinput.Model + + // Help overlay + showHelp bool + + // Status/transient message + statusMessage string + statusIsError bool + + // Apply result + applied bool + cancelled bool + applyRequested bool + result *ApplyResult + conflict *ConflictInfo + + // Conflict choice + conflictChoice string // "editor" or "unwind" +} + +// New creates a new modify view model. +func New(nodes []ModifyBranchNode, trunk stack.BranchRef, version string) Model { + ti := textinput.New() + ti.CharLimit = 100 + + // Default cursor to the current active branch, or first non-merged branch + cursor := 0 + found := false + for i, n := range nodes { + if n.IsCurrent { + cursor = i + found = true + break + } + } + if !found { + for i, n := range nodes { + if !n.Ref.IsMerged() { + cursor = i + break + } + } + } + + return Model{ + nodes: nodes, + trunk: trunk, + version: version, + cursor: cursor, + renameInput: ti, + } +} + +// --- Getters for the command layer --- + +func (m Model) Applied() bool { return m.applied } +func (m Model) Cancelled() bool { return m.cancelled } +func (m Model) ApplyRequested() bool { return m.applyRequested } +func (m Model) Result() *ApplyResult { return m.result } +func (m Model) Conflict() *ConflictInfo { return m.conflict } +func (m Model) ConflictChoice() string { return m.conflictChoice } +func (m Model) StagedActions() []StagedAction { return m.actionStack } + +// Nodes returns the current node state for the apply engine. +func (m Model) Nodes() []ModifyBranchNode { return m.nodes } + +// SetResult is called by the command layer after apply completes. +func (m *Model) SetResult(r *ApplyResult) { m.result = r; m.applied = true } + +// SetConflict is called by the command layer when a rebase conflict occurs. +func (m *Model) SetConflict(c *ConflictInfo) { m.conflict = c } + +// --- Bubble Tea interface --- + +func (m Model) Init() tea.Cmd { + return nil +} + +func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { + switch msg := msg.(type) { + case tea.WindowSizeMsg: + m.width = msg.Width + m.height = msg.Height + return m, nil + + case tea.KeyMsg: + // Clear transient status on any key press + m.statusMessage = "" + m.statusIsError = false + + if m.showHelp { + return m.updateHelp(msg) + } + if m.renameMode { + return m.updateRename(msg) + } + return m.updateNormal(msg) + } + + return m, nil +} + +// updateHelp handles keys while the help overlay is visible. +func (m Model) updateHelp(msg tea.KeyMsg) (tea.Model, tea.Cmd) { + if key.Matches(msg, modifyKeys.Help) || msg.Type == tea.KeyEscape { + m.showHelp = false + } + return m, nil +} + +// updateRename handles keys while in rename mode. +func (m Model) updateRename(msg tea.KeyMsg) (tea.Model, tea.Cmd) { + switch msg.Type { + case tea.KeyEnter: + newName := strings.TrimSpace(m.renameInput.Value()) + if newName == "" { + m.renameMode = false + return m, nil + } + node := &m.nodes[m.cursor] + oldName := node.Ref.Branch + + if newName == oldName { + m.renameMode = false + return m, nil + } + + // Validate: git ref name rules + if err := git.ValidateRefName(newName); err != nil { + m.statusMessage = fmt.Sprintf("Invalid branch name: %s", err) + m.statusIsError = true + return m, nil + } + + // Validate: not already used by another local branch + if git.BranchExists(newName) { + m.statusMessage = fmt.Sprintf("Branch %q already exists locally", newName) + m.statusIsError = true + return m, nil + } + + // Validate: not already used in this stack (by another node) + for j, other := range m.nodes { + if j == m.cursor { + continue + } + checkName := other.Ref.Branch + if other.PendingAction != nil && other.PendingAction.Type == ActionRename { + checkName = other.PendingAction.NewName + } + if checkName == newName { + m.statusMessage = fmt.Sprintf("Branch %q already used in this stack", newName) + m.statusIsError = true + return m, nil + } + } + + // Record undo action + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionRename, + BranchName: oldName, + OriginalName: oldName, + NewName: newName, + }) + + node.PendingAction = &PendingAction{ + Type: ActionRename, + NewName: newName, + } + m.renameMode = false + return m, nil + + case tea.KeyEscape: + m.renameMode = false + return m, nil + + default: + var cmd tea.Cmd + m.renameInput, cmd = m.renameInput.Update(msg) + return m, cmd + } +} + +// updateNormal handles keys during normal (non-modal) interaction. +func (m Model) updateNormal(msg tea.KeyMsg) (tea.Model, tea.Cmd) { + switch { + case key.Matches(msg, modifyKeys.Quit): + m.cancelled = true + return m, tea.Quit + + case key.Matches(msg, modifyKeys.Up): + m.moveCursor(-1) + return m, nil + + case key.Matches(msg, modifyKeys.Down): + m.moveCursor(1) + return m, nil + + case key.Matches(msg, modifyKeys.MoveUp): + if m.currentMode() == modeStructure { + m.statusMessage = "Cannot reorder while drops, folds, or renames are staged — undo them first" + m.statusIsError = true + return m, nil + } + m.moveNode(-1) + return m, nil + + case key.Matches(msg, modifyKeys.MoveDown): + if m.currentMode() == modeStructure { + m.statusMessage = "Cannot reorder while drops, folds, or renames are staged — undo them first" + m.statusIsError = true + return m, nil + } + m.moveNode(1) + return m, nil + + case key.Matches(msg, modifyKeys.Drop): + if m.currentMode() == modeReorder { + m.statusMessage = "Cannot drop while branches are reordered — undo moves first" + m.statusIsError = true + return m, nil + } + m.toggleDrop() + return m, nil + + case key.Matches(msg, modifyKeys.FoldDown): + if m.currentMode() == modeReorder { + m.statusMessage = "Cannot fold while branches are reordered — undo moves first" + m.statusIsError = true + return m, nil + } + m.fold(ActionFoldDown) + return m, nil + + case key.Matches(msg, modifyKeys.FoldUp): + if m.currentMode() == modeReorder { + m.statusMessage = "Cannot fold while branches are reordered — undo moves first" + m.statusIsError = true + return m, nil + } + m.fold(ActionFoldUp) + return m, nil + + case key.Matches(msg, modifyKeys.Rename): + if m.currentMode() == modeReorder { + m.statusMessage = "Cannot rename while branches are reordered — undo moves first" + m.statusIsError = true + return m, nil + } + m.startRename() + return m, nil + + case key.Matches(msg, modifyKeys.Undo): + m.undoLast() + return m, nil + + case key.Matches(msg, modifyKeys.ToggleCommits): + if m.cursor >= 0 && m.cursor < len(m.nodes) { + m.nodes[m.cursor].CommitsExpanded = !m.nodes[m.cursor].CommitsExpanded + m.clampScroll() + m.ensureVisible() + } + return m, nil + + case key.Matches(msg, modifyKeys.ToggleFiles): + if m.cursor >= 0 && m.cursor < len(m.nodes) { + m.nodes[m.cursor].FilesExpanded = !m.nodes[m.cursor].FilesExpanded + m.clampScroll() + m.ensureVisible() + } + return m, nil + + case key.Matches(msg, modifyKeys.Apply): + return m.tryApply() + + case key.Matches(msg, modifyKeys.Help): + m.showHelp = true + return m, nil + } + + return m, nil +} + +// --- Action handlers --- + +// actionMode represents which exclusive mode the user is in. +type actionMode int + +const ( + modeNone actionMode = iota // no actions yet + modeReorder // user has moved/reordered branches + modeStructure // user has dropped, folded, or renamed branches +) + +// currentMode returns the exclusive action mode based on pending actions. +func (m *Model) currentMode() actionMode { + hasReorder := false + hasStructure := false + + for i, n := range m.nodes { + if n.PendingAction != nil { + switch n.PendingAction.Type { + case ActionDrop, ActionFoldDown, ActionFoldUp, ActionRename: + hasStructure = true + } + } + // Position change without explicit action = reorder + if !n.Ref.IsMerged() && n.OriginalPosition != i && n.PendingAction == nil { + hasReorder = true + } + } + + if hasReorder { + return modeReorder + } + if hasStructure { + return modeStructure + } + return modeNone +} + +// moveCursor moves the cursor by delta to the next node. +func (m *Model) moveCursor(delta int) { + next := m.cursor + delta + if next >= 0 && next < len(m.nodes) { + m.cursor = next + m.ensureVisible() + } +} + +// moveNode swaps the current node with an adjacent non-removed, non-merged node. +func (m *Model) moveNode(delta int) { + if m.cursor < 0 || m.cursor >= len(m.nodes) { + return + } + cur := &m.nodes[m.cursor] + if cur.Ref.IsMerged() { + m.statusMessage = "Cannot move a merged branch" + m.statusIsError = true + return + } + if cur.Removed { + return + } + + // Find the target position + target := m.cursor + delta + for target >= 0 && target < len(m.nodes) { + if !m.nodes[target].Removed && !m.nodes[target].Ref.IsMerged() { + break + } + target += delta + } + if target < 0 || target >= len(m.nodes) { + return + } + if m.nodes[target].Ref.IsMerged() { + m.statusMessage = "Cannot move past a merged branch" + m.statusIsError = true + return + } + + // Record undo + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionMove, + BranchName: cur.Ref.Branch, + OriginalPosition: m.cursor, + NewPosition: target, + }) + + // Swap + m.nodes[m.cursor], m.nodes[target] = m.nodes[target], m.nodes[m.cursor] + m.cursor = target + m.ensureVisible() +} + +// toggleDrop toggles the drop action on the current node. +func (m *Model) toggleDrop() { + if m.cursor < 0 || m.cursor >= len(m.nodes) { + return + } + node := &m.nodes[m.cursor] + if node.Ref.IsMerged() { + m.statusMessage = "Cannot drop a merged branch" + m.statusIsError = true + return + } + + if node.PendingAction != nil && node.PendingAction.Type == ActionDrop { + // Undo drop + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionDrop, + BranchName: node.Ref.Branch, + }) + node.PendingAction = nil + node.Removed = false + } else { + // Check if any other branch has a fold targeting this branch. + // A fold-up targets the branch above (lower index), fold-down + // targets the branch below (higher index). + for i, other := range m.nodes { + if other.PendingAction == nil || i == m.cursor { + continue + } + if other.PendingAction.Type == ActionFoldUp { + // fold-up target = nearest non-removed, non-merged node above (lower index) + for j := i - 1; j >= 0; j-- { + if !m.nodes[j].Removed && !m.nodes[j].Ref.IsMerged() { + if j == m.cursor { + m.statusMessage = fmt.Sprintf("Cannot drop: %s is folding into this branch", other.Ref.Branch) + m.statusIsError = true + return + } + break + } + } + } + if other.PendingAction.Type == ActionFoldDown { + // fold-down target = nearest non-removed, non-merged node below (higher index) + for j := i + 1; j < len(m.nodes); j++ { + if !m.nodes[j].Removed && !m.nodes[j].Ref.IsMerged() { + if j == m.cursor { + m.statusMessage = fmt.Sprintf("Cannot drop: %s is folding into this branch", other.Ref.Branch) + m.statusIsError = true + return + } + break + } + } + } + } + + // Apply drop + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionDrop, + BranchName: node.Ref.Branch, + }) + node.PendingAction = &PendingAction{Type: ActionDrop} + node.Removed = true + } +} + +// fold stages a fold action on the current node. +func (m *Model) fold(action ActionType) { + if m.cursor < 0 || m.cursor >= len(m.nodes) { + return + } + node := &m.nodes[m.cursor] + if node.Ref.IsMerged() { + m.statusMessage = "Cannot fold a merged branch" + m.statusIsError = true + return + } + + // If already has this same fold type, un-fold (toggle off) + if node.PendingAction != nil && node.PendingAction.Type == action { + m.actionStack = append(m.actionStack, StagedAction{ + Type: action, + BranchName: node.Ref.Branch, + }) + node.PendingAction = nil + node.Removed = false + return + } + + // If already has a different fold type, replace it + if node.PendingAction != nil && (node.PendingAction.Type == ActionFoldDown || node.PendingAction.Type == ActionFoldUp) { + // Clear the old fold first, then fall through to apply the new one + node.PendingAction = nil + node.Removed = false + } + + // Can't fold a branch that's already dropped + if node.Removed { + return + } + + // Find the target branch + var targetIdx int + var found bool + + if action == ActionFoldDown { + // Fold down: target is the next non-removed, non-merged node toward trunk (higher index) + for i := m.cursor + 1; i < len(m.nodes); i++ { + if !m.nodes[i].Removed && !m.nodes[i].Ref.IsMerged() { + targetIdx = i + found = true + break + } + } + if !found { + m.statusMessage = "No branch below to fold into" + m.statusIsError = true + return + } + } else { + // Fold up: target is the previous non-removed, non-merged node away from trunk (lower index) + for i := m.cursor - 1; i >= 0; i-- { + if !m.nodes[i].Removed && !m.nodes[i].Ref.IsMerged() { + targetIdx = i + found = true + break + } + } + if !found { + m.statusMessage = "No branch above to fold into" + m.statusIsError = true + return + } + } + + m.actionStack = append(m.actionStack, StagedAction{ + Type: action, + BranchName: node.Ref.Branch, + FoldTarget: m.nodes[targetIdx].Ref.Branch, + }) + node.PendingAction = &PendingAction{Type: action} + node.Removed = true +} + +// startRename enters rename mode for the current node. +func (m *Model) startRename() { + if m.cursor < 0 || m.cursor >= len(m.nodes) { + return + } + node := &m.nodes[m.cursor] + if node.Ref.IsMerged() { + m.statusMessage = "Cannot rename a merged branch" + m.statusIsError = true + return + } + if node.Removed { + return + } + + m.renameMode = true + m.renameInput.SetValue(node.Ref.Branch) + m.renameInput.Focus() + m.renameInput.CursorEnd() +} + +// undoLast reverses the most recent action from the stack. +func (m *Model) undoLast() { + if len(m.actionStack) == 0 { + m.statusMessage = "Nothing to undo" + m.statusIsError = false + return + } + + action := m.actionStack[len(m.actionStack)-1] + m.actionStack = m.actionStack[:len(m.actionStack)-1] + + switch action.Type { + case ActionDrop: + // Find the branch and toggle its state + for i := range m.nodes { + if m.nodes[i].Ref.Branch == action.BranchName || (m.nodes[i].PendingAction != nil && m.nodes[i].PendingAction.Type == ActionDrop && m.nodes[i].Ref.Branch == action.BranchName) { + if m.nodes[i].PendingAction != nil && m.nodes[i].PendingAction.Type == ActionDrop { + m.nodes[i].PendingAction = nil + m.nodes[i].Removed = false + } else { + m.nodes[i].PendingAction = &PendingAction{Type: ActionDrop} + m.nodes[i].Removed = true + } + break + } + } + + case ActionFoldDown, ActionFoldUp: + for i := range m.nodes { + if m.nodes[i].Ref.Branch == action.BranchName { + if m.nodes[i].PendingAction != nil && m.nodes[i].PendingAction.Type == action.Type { + m.nodes[i].PendingAction = nil + m.nodes[i].Removed = false + } else { + m.nodes[i].PendingAction = &PendingAction{Type: action.Type} + m.nodes[i].Removed = true + } + break + } + } + + case ActionMove: + // Swap back to original positions + from := -1 + to := action.OriginalPosition + for i := range m.nodes { + if m.nodes[i].Ref.Branch == action.BranchName { + from = i + break + } + } + if from >= 0 && from != to && to >= 0 && to < len(m.nodes) { + m.nodes[from], m.nodes[to] = m.nodes[to], m.nodes[from] + m.cursor = to + } + + case ActionRename: + for i := range m.nodes { + if m.nodes[i].Ref.Branch == action.BranchName || (m.nodes[i].PendingAction != nil && m.nodes[i].PendingAction.Type == ActionRename) { + m.nodes[i].PendingAction = nil + break + } + } + } +} + +// tryApply validates and initiates apply. +func (m Model) tryApply() (tea.Model, tea.Cmd) { + hasPending := false + for i, n := range m.nodes { + if n.PendingAction != nil { + hasPending = true + break + } + if !n.Removed && n.OriginalPosition != i { + hasPending = true + break + } + } + + if !hasPending { + m.statusMessage = "No pending changes to apply" + m.statusIsError = false + return m, nil + } + + // Ensure at least one non-removed, non-merged branch remains + active := 0 + for _, n := range m.nodes { + if !n.Removed && !n.Ref.IsMerged() { + active++ + } + } + if active < 1 { + m.statusMessage = "Cannot remove all branches from the stack" + m.statusIsError = true + return m, nil + } + + m.applyRequested = true + return m, tea.Quit +} + +// --- Scrolling --- + +func (m *Model) ensureVisible() { + if m.height == 0 { + return + } + startLine := 0 + for i := 0; i < m.cursor; i++ { + startLine += m.nodeLineCount(i) + } + endLine := startLine + m.nodeLineCount(m.cursor) + + viewHeight := m.contentViewHeight() + if startLine < m.scrollOffset { + m.scrollOffset = startLine + } + if endLine > m.scrollOffset+viewHeight { + m.scrollOffset = endLine - viewHeight + } +} + +func (m Model) nodeLineCount(idx int) int { + return shared.NodeLineCount(toNodeData(m.nodes[idx], idx)) +} + +func (m Model) contentViewHeight() int { + reserved := 1 // status line + if shared.ShouldShowHeader(m.width, m.height) { + reserved += shared.HeaderHeight + } + h := m.height - reserved + if h < 1 { + h = 1 + } + return h +} + +func (m *Model) clampScroll() { + total := 0 + for i := range m.nodes { + total += m.nodeLineCount(i) + } + total++ // trunk line + maxScroll := total - m.contentViewHeight() + if maxScroll < 0 { + maxScroll = 0 + } + if m.scrollOffset > maxScroll { + m.scrollOffset = maxScroll + } + if m.scrollOffset < 0 { + m.scrollOffset = 0 + } +} + +// --- View --- + +// toNodeData converts a ModifyBranchNode to shared.BranchNodeData, +// applying drop/fold/move visual overrides. currentIdx is the node's +// current position in the list, used to detect moves. +func toNodeData(n ModifyBranchNode, currentIdx int) shared.BranchNodeData { + data := shared.BranchNodeData{ + Ref: n.Ref, + IsCurrent: n.IsCurrent, + IsLinear: n.IsLinear, + BaseBranch: n.BaseBranch, + Commits: n.Commits, + FilesChanged: n.FilesChanged, + PR: n.PR, + Additions: n.Additions, + Deletions: n.Deletions, + CommitsExpanded: n.CommitsExpanded, + FilesExpanded: n.FilesExpanded, + } + + if n.PendingAction != nil { + switch n.PendingAction.Type { + case ActionDrop: + s := dropBranchStyle + c := dropConnectorStyle + data.BranchNameStyleOverride = &s + data.ConnectorStyleOverride = &c + data.ForceDashedConnector = true + case ActionFoldDown, ActionFoldUp: + s := foldBranchStyle + c := foldConnectorStyle + data.BranchNameStyleOverride = &s + data.ConnectorStyleOverride = &c + data.ForceDashedConnector = true + } + } + + // Moved branch: purple solid connector (no dash, no strikethrough) + if n.PendingAction == nil && !n.Ref.IsMerged() && n.OriginalPosition != currentIdx { + c := movedConnectorStyle + data.ConnectorStyleOverride = &c + } + + return data +} + +// nodeAnnotation builds an optional annotation from the node's pending action +// or its position change. currentIdx is the node's current position in the list. +func nodeAnnotation(n ModifyBranchNode, currentIdx int) *shared.NodeAnnotation { + if n.Ref.IsMerged() { + return &shared.NodeAnnotation{Text: "🔒", Style: shared.DimStyle} + } + if n.PendingAction != nil { + switch n.PendingAction.Type { + case ActionDrop: + return &shared.NodeAnnotation{Text: "✗ drop", Style: dropBadge} + case ActionFoldDown: + return &shared.NodeAnnotation{Text: "↓ fold down", Style: foldBadge} + case ActionFoldUp: + return &shared.NodeAnnotation{Text: "↑ fold up", Style: foldBadge} + case ActionRename: + return &shared.NodeAnnotation{Text: "→ " + n.PendingAction.NewName, Style: renameBadge} + case ActionMove: + return &shared.NodeAnnotation{Text: "↕ moved", Style: moveBadge} + } + } + // Show move annotation when position changed (even without explicit PendingAction) + if !n.Ref.IsMerged() && n.OriginalPosition != currentIdx { + delta := n.OriginalPosition - currentIdx // positive = moved up (toward top) + direction := "up" + layers := delta + if delta < 0 { + direction = "down" + layers = -delta + } + label := "layers" + if layers == 1 { + label = "layer" + } + text := fmt.Sprintf("↕ moved %d %s %s", layers, label, direction) + return &shared.NodeAnnotation{Text: text, Style: moveBadge} + } + return nil +} + +func (m Model) View() string { + if m.width == 0 { + return "" + } + + if m.showHelp { + return renderHelpOverlay(m.width, m.height) + } + + var out strings.Builder + + // Header + showHeader := shared.ShouldShowHeader(m.width, m.height) + if showHeader { + shared.RenderHeader(&out, m.buildHeaderConfig(), m.width, m.height) + } + + var b strings.Builder + + // Branch list — all nodes rendered with shared renderer, annotations for pending actions + for i := 0; i < len(m.nodes); i++ { + nodeData := toNodeData(m.nodes[i], i) + isFocused := i == m.cursor + annotation := nodeAnnotation(m.nodes[i], i) + shared.RenderNode(&b, nodeData, isFocused, m.width, annotation) + } + + // Trunk + shared.RenderTrunk(&b, m.trunk.Branch) + + // Rename input line (if in rename mode) + if m.renameMode { + b.WriteString("\n") + b.WriteString(renameBadge.Render("Rename: ")) + b.WriteString(m.renameInput.View()) + b.WriteString("\n") + } + + // Transient status message + if m.statusMessage != "" { + b.WriteString("\n") + if m.statusIsError { + b.WriteString(transientErrorStyle.Render("✗ " + m.statusMessage)) + } else { + b.WriteString(transientInfoStyle.Render(m.statusMessage)) + } + b.WriteString("\n") + } + + content := b.String() + contentLines := strings.Split(content, "\n") + + // Scrolling + reservedLines := 0 + if showHeader { + reservedLines = shared.HeaderHeight + } + viewHeight := m.height - reservedLines - 1 // -1 for status line + if viewHeight < 1 { + viewHeight = 1 + } + + maxScroll := len(contentLines) - viewHeight + if maxScroll < 0 { + maxScroll = 0 + } + start := m.scrollOffset + if start > maxScroll { + start = maxScroll + } + end := start + viewHeight + if end > len(contentLines) { + end = len(contentLines) + } + + out.WriteString(strings.Join(contentLines[start:end], "\n")) + out.WriteString("\n") + + // Status line at the bottom + out.WriteString(renderStatusLine(m.nodes, m.width)) + + return out.String() +} + +// buildHeaderConfig creates the header configuration for modify mode. +func (m Model) buildHeaderConfig() shared.HeaderConfig { + mergedCount := 0 + for _, n := range m.nodes { + if n.Ref.IsMerged() { + mergedCount++ + } + } + + branchCount := len(m.nodes) + branchInfo := fmt.Sprintf("%d branches", branchCount) + if branchCount == 1 { + branchInfo = "1 branch" + } + if mergedCount > 0 { + branchInfo += fmt.Sprintf(" (%d merged, locked)", mergedCount) + } + + pendingSummary := pendingChangeSummary(m.nodes) + + infoLines := []shared.HeaderInfoLine{ + {Icon: "◆", Label: "Base: " + m.trunk.Branch}, + {Icon: "○", Label: branchInfo}, + } + if pendingSummary != "" { + yellowStyle := lipgloss.NewStyle().Foreground(lipgloss.Color("3")) + infoLines = append(infoLines, shared.HeaderInfoLine{Icon: "■", Label: pendingSummary, IconStyle: &yellowStyle}) + } else { + infoLines = append(infoLines, shared.HeaderInfoLine{Icon: "□", Label: "No pending changes"}) + } + + mode := m.currentMode() + reorderDisabled := mode == modeStructure + structureDisabled := mode == modeReorder + + return shared.HeaderConfig{ + ShowArt: true, + Title: "Modify Stack", + Subtitle: "v" + m.version, + InfoLines: infoLines, + ShortcutColumns: 2, + Shortcuts: []shared.ShortcutEntry{ + // Left column // Right column + {Key: "↑↓", Desc: "select branch"}, {Key: "x", Desc: "drop", Disabled: structureDisabled}, + {Key: "f", Desc: "view files"}, {Key: "r", Desc: "rename", Disabled: structureDisabled}, + {Key: "c", Desc: "view commits"}, {Key: "u", Desc: "fold up", Disabled: structureDisabled}, + {Key: "?", Desc: "help"}, {Key: "d", Desc: "fold down", Disabled: structureDisabled}, + {Key: "q/esc", Desc: "quit"}, {Key: "shift+↑↓", Desc: "reorder", Disabled: reorderDisabled}, + {Key: "^S", Desc: "apply changes"}, {Key: "z", Desc: "undo"}, + }, + } +} + +// Ensure Model satisfies the tea.Model interface. +var _ tea.Model = Model{} + +// Ensure stackview import is used (BranchNode is embedded in ModifyBranchNode). +var _ = stackview.BranchNode{} diff --git a/internal/tui/modifyview/model_test.go b/internal/tui/modifyview/model_test.go new file mode 100644 index 0000000..ac85816 --- /dev/null +++ b/internal/tui/modifyview/model_test.go @@ -0,0 +1,158 @@ +package modifyview + +import ( + "testing" + + "github.com/github/gh-stack/internal/stack" + "github.com/github/gh-stack/internal/tui/stackview" + "github.com/stretchr/testify/assert" +) + +func TestPendingChangeSummary(t *testing.T) { + t.Run("no changes returns empty", func(t *testing.T) { + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "", result) + }) + + t.Run("one drop", func(t *testing.T) { + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &PendingAction{Type: ActionDrop}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 1 drop", result) + }) + + t.Run("multiple drops uses plural", func(t *testing.T) { + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &PendingAction{Type: ActionDrop}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + PendingAction: &PendingAction{Type: ActionDrop}, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 2 drops", result) + }) + + t.Run("mixed actions", func(t *testing.T) { + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &PendingAction{Type: ActionDrop}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + PendingAction: &PendingAction{Type: ActionFoldDown}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b3"}}, + OriginalPosition: 2, + PendingAction: &PendingAction{Type: ActionFoldUp}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b4"}}, + OriginalPosition: 3, + PendingAction: &PendingAction{Type: ActionRename, NewName: "b4-new"}, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 1 drop, 2 folds, 1 rename", result) + }) + + t.Run("position change counts as move", func(t *testing.T) { + // b2 moved to position 0, b1 moved to position 1 + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, // moved from 1 to 0 + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, // moved from 0 to 1 + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 2 moves", result) + }) + + t.Run("removed nodes with position change not counted as move", func(t *testing.T) { + // A removed node with a different position should not add to moves + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 1, + Removed: true, + PendingAction: &PendingAction{Type: ActionDrop}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b2"}}, + OriginalPosition: 1, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 1 drop", result) + }) + + t.Run("one rename singular", func(t *testing.T) { + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &PendingAction{Type: ActionRename, NewName: "feature"}, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 1 rename", result) + }) + + t.Run("one fold singular", func(t *testing.T) { + nodes := []ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "b1"}}, + OriginalPosition: 0, + PendingAction: &PendingAction{Type: ActionFoldDown}, + }, + } + + result := pendingChangeSummary(nodes) + assert.Equal(t, "Pending: 1 fold", result) + }) +} + +func TestPluralize(t *testing.T) { + assert.Equal(t, "drop", pluralize(1, "drop", "drops")) + assert.Equal(t, "drops", pluralize(2, "drop", "drops")) + assert.Equal(t, "drops", pluralize(0, "drop", "drops")) +} diff --git a/internal/tui/modifyview/status.go b/internal/tui/modifyview/status.go new file mode 100644 index 0000000..cb5d489 --- /dev/null +++ b/internal/tui/modifyview/status.go @@ -0,0 +1,93 @@ +package modifyview + +import ( + "fmt" + "strings" + + "github.com/charmbracelet/lipgloss" +) + +// pendingChangeSummary returns a summary string of all pending changes. +// E.g. "Pending: 1 drop, 1 fold, 2 moves, 1 rename" +func pendingChangeSummary(nodes []ModifyBranchNode) string { + var drops, foldDowns, foldUps, moves, renames int + + for _, n := range nodes { + if n.PendingAction == nil { + continue + } + switch n.PendingAction.Type { + case ActionDrop: + drops++ + case ActionFoldDown: + foldDowns++ + case ActionFoldUp: + foldUps++ + case ActionMove: + moves++ + case ActionRename: + renames++ + } + } + + // Also count nodes that have moved from their original position + for i, n := range nodes { + if !n.Removed && n.PendingAction == nil && n.OriginalPosition != i { + moves++ + } + } + + if drops == 0 && foldDowns == 0 && foldUps == 0 && moves == 0 && renames == 0 { + return "" + } + + var parts []string + if drops > 0 { + parts = append(parts, fmt.Sprintf("%d %s", drops, pluralize(drops, "drop", "drops"))) + } + folds := foldDowns + foldUps + if folds > 0 { + parts = append(parts, fmt.Sprintf("%d %s", folds, pluralize(folds, "fold", "folds"))) + } + if moves > 0 { + parts = append(parts, fmt.Sprintf("%d %s", moves, pluralize(moves, "move", "moves"))) + } + if renames > 0 { + parts = append(parts, fmt.Sprintf("%d %s", renames, pluralize(renames, "rename", "renames"))) + } + + return "Pending: " + strings.Join(parts, ", ") +} + +// pluralize returns singular or plural form based on count. +func pluralize(count int, singular, plural string) string { + if count == 1 { + return singular + } + return plural +} + +// renderStatusLine renders the bottom status bar with pending changes and key hints. +func renderStatusLine(nodes []ModifyBranchNode, width int) string { + summary := pendingChangeSummary(nodes) + + hints := statusKeyStyle.Render("ctrl+s") + statusDescStyle.Render(" apply ") + + statusKeyStyle.Render("q") + statusDescStyle.Render(" cancel ") + + statusKeyStyle.Render("?") + statusDescStyle.Render(" help") + + if summary == "" { + summary = statusBarStyle.Render("No pending changes") + } else { + summary = statusCountStyle.Render(summary) + } + + // Lay out: summary on left, hints on right + summaryWidth := lipgloss.Width(summary) + hintsWidth := lipgloss.Width(hints) + gap := width - summaryWidth - hintsWidth + if gap < 2 { + gap = 2 + } + + return summary + strings.Repeat(" ", gap) + hints +} diff --git a/internal/tui/modifyview/styles.go b/internal/tui/modifyview/styles.go new file mode 100644 index 0000000..2c7b9d9 --- /dev/null +++ b/internal/tui/modifyview/styles.go @@ -0,0 +1,39 @@ +package modifyview + +import "github.com/charmbracelet/lipgloss" + +var ( + // Action annotation styles (modify-specific) + dropBadge = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) // red + foldBadge = lipgloss.NewStyle().Foreground(lipgloss.Color("3")) // yellow + renameBadge = lipgloss.NewStyle().Foreground(lipgloss.Color("14")) // cyan + moveBadge = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) // magenta/purple + + // Branch name overrides for drop/fold + dropBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")).Strikethrough(true) // red strikethrough + foldBranchStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("3")).Strikethrough(true) // yellow strikethrough + + // Connector color overrides for drop/fold/move + dropConnectorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) // red + foldConnectorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("3")) // yellow + movedConnectorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) // magenta/purple + + // Status line styles + statusBarStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + statusCountStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")).Bold(true) + statusKeyStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")) + statusDescStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) + + // Help overlay styles + helpOverlayStyle = lipgloss.NewStyle(). + Border(lipgloss.RoundedBorder()). + BorderForeground(lipgloss.Color("8")). + Padding(1, 2) + helpKeyStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("14")).Bold(true) + helpDescStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")) + helpTitleStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")).Bold(true).Underline(true) + + // Transient message styles + transientErrorStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) // red + transientInfoStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("8")) // gray +) diff --git a/internal/tui/modifyview/types.go b/internal/tui/modifyview/types.go new file mode 100644 index 0000000..e3f995d --- /dev/null +++ b/internal/tui/modifyview/types.go @@ -0,0 +1,69 @@ +package modifyview + +import ( + "github.com/github/gh-stack/internal/tui/stackview" +) + +// ActionType represents the type of modification action. +type ActionType string + +const ( + ActionDrop ActionType = "drop" + ActionFoldDown ActionType = "fold_down" + ActionFoldUp ActionType = "fold_up" + ActionMove ActionType = "move" + ActionRename ActionType = "rename" +) + +// PendingAction represents a staged modification on a branch. +type PendingAction struct { + Type ActionType + NewName string // for rename +} + +// StagedAction records a single staged action in the undo stack. +// It stores enough information to reverse the action. +type StagedAction struct { + Type ActionType + BranchName string // the branch affected + OriginalPosition int // for move: the position before the move + NewPosition int // for move: the position after the move + OriginalName string // for rename: the name before rename + NewName string // for rename: the name after rename + FoldTarget string // for fold: the branch that received the commits +} + +// ModifyBranchNode wraps a BranchNode with modification state. +type ModifyBranchNode struct { + stackview.BranchNode + PendingAction *PendingAction + OriginalPosition int + Removed bool // true if this branch has been dropped or folded +} + +// ApplyResult holds the outcome of applying modifications. +type ApplyResult struct { + Success bool + DroppedPRs []DroppedPR + RenamedBranches []RenamedBranch + MovedBranches int + Message string +} + +// DroppedPR records a PR that was dropped from the stack. +type DroppedPR struct { + Branch string + PRNumber int +} + +// RenamedBranch records a branch rename. +type RenamedBranch struct { + OldName string + NewName string +} + +// ConflictInfo holds information about a rebase conflict during apply. +type ConflictInfo struct { + Branch string + ConflictedFiles []string +} From fb557c67ba0e8a6f644e0b86c1a9b82b671643c6 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Thu, 30 Apr 2026 00:36:04 -0400 Subject: [PATCH 04/26] recreate stack after modify --- cmd/submit.go | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/cmd/submit.go b/cmd/submit.go index 987eddb..8c23864 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -11,6 +11,7 @@ import ( "github.com/github/gh-stack/internal/config" "github.com/github/gh-stack/internal/git" "github.com/github/gh-stack/internal/github" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/spf13/cobra" ) @@ -219,9 +220,18 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { } } + // Handle pending modify state (delete old stack) + if stacksAvailable { + if err := handlePendingModify(cfg, client, s, gitDir); err != nil { + // Error already reported — continue with sync attempt + } + } + // Create or update the stack on GitHub if stacksAvailable { syncStack(cfg, client, s) + // Clear modify state after successful stack sync + clearPendingModifyState(cfg, gitDir) } // Update base commit hashes and sync PR state @@ -275,6 +285,50 @@ func humanize(s string) string { }, s) } +// handlePendingModify handles the stack recreation after a modify operation. +// It deletes the old remote stack and clears s.ID so syncStack creates a new +// one. The state file is NOT cleared here — it is cleared after syncStack +// succeeds, ensuring retry safety. +func handlePendingModify(cfg *config.Config, client github.ClientOps, s *stack.Stack, gitDir string) error { + state, err := modify.LoadState(gitDir) + if err != nil || state == nil { + return nil // No modify state — nothing to do + } + if state.Phase != "pending_submit" { + return nil // Not in pending_submit phase + } + + // Delete the old remote stack + if state.PriorRemoteStackID != "" { + if err := client.DeleteStack(state.PriorRemoteStackID); err != nil { + var httpErr *api.HTTPError + if errors.As(err, &httpErr) && httpErr.StatusCode == 404 { + cfg.Printf("Previous stack already deleted on GitHub") + } else { + cfg.Warningf("Failed to delete previous stack: %v", err) + cfg.Printf("Run `%s` again to retry", cfg.ColorCyan("gh stack submit")) + return err + } + } else { + cfg.Successf("Deleted previous stack on GitHub") + } + // Clear the old stack ID so syncStack creates a new one + s.ID = "" + } + + return nil +} + +// clearPendingModifyState clears the modify state file after a successful submit. +// Called after syncStack succeeds to ensure retry safety. +func clearPendingModifyState(cfg *config.Config, gitDir string) { + if !modify.StateExists(gitDir) { + return + } + modify.ClearState(gitDir) + cfg.Successf("Modify state cleared — stack recreated on GitHub") +} + // syncStack creates or updates a stack on GitHub from the active PRs. // If the stack already exists (s.ID is set), it calls the PUT endpoint with // the full list of PRs to keep the remote stack in sync. If no stack exists From b998ac8ef1f170fe833ac3c8ddfd907c7f61a78b Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Thu, 30 Apr 2026 00:36:44 -0400 Subject: [PATCH 05/26] add checks to prevent other modifications while modify is applying --- cmd/add.go | 7 +++++++ cmd/push.go | 6 ++++++ cmd/rebase.go | 6 ++++++ cmd/sync.go | 7 +++++++ cmd/unstack.go | 7 +++++++ 5 files changed, 33 insertions(+) diff --git a/cmd/add.go b/cmd/add.go index 8015c65..0fdd1ab 100644 --- a/cmd/add.go +++ b/cmd/add.go @@ -7,6 +7,7 @@ import ( "github.com/github/gh-stack/internal/branch" "github.com/github/gh-stack/internal/config" "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/spf13/cobra" ) @@ -54,6 +55,12 @@ func runAdd(cfg *config.Config, opts *addOptions, args []string) error { return ErrNotInStack } gitDir := result.GitDir + + if err := modify.CheckStateGuard(gitDir); err != nil { + cfg.Errorf("%s", err) + return ErrModifyRecovery + } + sf := result.StackFile s := result.Stack currentBranch := result.CurrentBranch diff --git a/cmd/push.go b/cmd/push.go index dbf07e3..1f0f857 100644 --- a/cmd/push.go +++ b/cmd/push.go @@ -7,6 +7,7 @@ import ( "github.com/cli/go-gh/v2/pkg/prompter" "github.com/github/gh-stack/internal/config" "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/spf13/cobra" ) @@ -38,6 +39,11 @@ func runPush(cfg *config.Config, opts *pushOptions) error { return ErrNotInStack } + if err := modify.CheckStateGuard(gitDir); err != nil { + cfg.Errorf("%s", err) + return ErrModifyRecovery + } + sf, err := stack.Load(gitDir) if err != nil { cfg.Errorf("failed to load stack state: %s", err) diff --git a/cmd/rebase.go b/cmd/rebase.go index a97199d..f2afa3f 100644 --- a/cmd/rebase.go +++ b/cmd/rebase.go @@ -10,6 +10,7 @@ import ( "github.com/github/gh-stack/internal/config" "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/spf13/cobra" ) @@ -78,6 +79,11 @@ func runRebase(cfg *config.Config, opts *rebaseOptions) error { return abortRebase(cfg, gitDir) } + if err := modify.CheckStateGuard(gitDir); err != nil { + cfg.Errorf("%s", err) + return ErrModifyRecovery + } + result, err := loadStack(cfg, opts.branch) if err != nil { return ErrNotInStack diff --git a/cmd/sync.go b/cmd/sync.go index 2a5471c..34a4baf 100644 --- a/cmd/sync.go +++ b/cmd/sync.go @@ -7,6 +7,7 @@ import ( "github.com/github/gh-stack/internal/config" "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/spf13/cobra" ) @@ -50,6 +51,12 @@ func runSync(cfg *config.Config, opts *syncOptions) error { return ErrNotInStack } gitDir := result.GitDir + + if err := modify.CheckStateGuard(gitDir); err != nil { + cfg.Errorf("%s", err) + return ErrModifyRecovery + } + sf := result.StackFile s := result.Stack currentBranch := result.CurrentBranch diff --git a/cmd/unstack.go b/cmd/unstack.go index bbcbb00..dd0b9ca 100644 --- a/cmd/unstack.go +++ b/cmd/unstack.go @@ -5,6 +5,7 @@ import ( "github.com/cli/go-gh/v2/pkg/api" "github.com/github/gh-stack/internal/config" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/spf13/cobra" ) @@ -42,6 +43,12 @@ func runUnstack(cfg *config.Config, opts *unstackOptions) error { return ErrNotInStack } gitDir := result.GitDir + + if err := modify.CheckStateGuard(gitDir); err != nil { + cfg.Errorf("%s", err) + return ErrModifyRecovery + } + sf := result.StackFile s := result.Stack From 684eceab8dc9425969b6a52141a0f2b3e82d09fd Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Thu, 30 Apr 2026 19:29:47 -0400 Subject: [PATCH 06/26] modify continue for resuming after resolving conflicts --- cmd/modify.go | 31 +++++++- internal/modify/apply.go | 164 +++++++++++++++++++++++++++++++++++++++ internal/modify/state.go | 11 ++- 3 files changed, 203 insertions(+), 3 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index 6e4677e..08d6b50 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -13,7 +13,8 @@ import ( ) type modifyOptions struct { - recover bool + recover bool + cont bool } func ModifyCmd(cfg *config.Config) *cobra.Command { @@ -36,11 +37,15 @@ After applying, run 'gh stack submit' to push changes and recreate the stack on if opts.recover { return runModifyRecover(cfg) } + if opts.cont { + return runModifyContinue(cfg) + } return runModify(cfg) }, } cmd.Flags().BoolVar(&opts.recover, "recover", false, "Recover from a crashed modify session") + cmd.Flags().BoolVar(&opts.cont, "continue", false, "Continue after resolving conflicts") return cmd } @@ -122,7 +127,7 @@ func runModify(cfg *config.Config) error { } cfg.Printf("") cfg.Printf("To resolve: fix conflicts, then run `%s`", - cfg.ColorCyan("gh stack rebase --continue")) + cfg.ColorCyan("gh stack modify --continue")) cfg.Printf("To undo all changes: run `%s`", cfg.ColorCyan("gh stack modify --recover")) return ErrConflict @@ -211,6 +216,22 @@ func runModifyRecover(cfg *config.Config) error { } } +// runModifyContinue continues applying after the user resolves a rebase conflict. +func runModifyContinue(cfg *config.Config) error { + gitDir, err := git.GitDir() + if err != nil { + cfg.Errorf("not a git repository") + return ErrNotInStack + } + + if err := modify.ContinueApply(cfg, gitDir, updateBaseSHAs); err != nil { + cfg.Errorf("%s", err) + return ErrConflict + } + + return nil +} + // --------------------------------------------------------------------------- // Preconditions // --------------------------------------------------------------------------- @@ -284,6 +305,12 @@ func checkNoModifyInProgress(cfg *config.Config, gitDir string) error { cfg.Printf("Run `%s` to restore your stack", cfg.ColorCyan("gh stack modify --recover")) return ErrModifyRecovery + case "conflict": + cfg.Errorf("a modify has unresolved conflicts") + cfg.Printf("Run `%s` to continue, or `%s` to restore your stack", + cfg.ColorCyan("gh stack modify --continue"), + cfg.ColorCyan("gh stack modify --recover")) + return ErrSilent case "pending_submit": cfg.Errorf("a modify was completed but the stack has not been submitted yet") cfg.Printf("Run `%s` to push changes and recreate the stack on GitHub", diff --git a/internal/modify/apply.go b/internal/modify/apply.go index a6055af..f1b494b 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -399,6 +399,24 @@ func ApplyPlan( if files, ferr := git.ConflictedFiles(); ferr == nil { conflict.ConflictedFiles = files } + + // Save conflict state so --continue can resume + remaining := make([]string, 0) + for j := i + 1; j < len(s.Branches); j++ { + if !s.Branches[j].IsMerged() { + remaining = append(remaining, s.Branches[j].Branch) + } + } + stateFile.Phase = "conflict" + stateFile.ConflictBranch = b.Branch + stateFile.RemainingBranches = remaining + stateFile.OriginalBranch = currentBranch + stateFile.OriginalRefs = originalParentTips + _ = SaveState(gitDir, stateFile) + + // Save stack metadata so far (renames, folds, drops already applied) + _ = stack.SaveWithLock(gitDir, sf, lock) + return nil, conflict, fmt.Errorf("rebase conflict on %s", b.Branch) } @@ -431,6 +449,152 @@ func ApplyPlan( return result, nil, nil } +// ContinueApply resumes a modify operation after the user resolves a rebase conflict. +// It finishes the in-progress git rebase, then continues the cascading rebase for +// remaining branches stored in the state file. +func ContinueApply( + cfg *config.Config, + gitDir string, + updateBaseSHAs func(*stack.Stack), +) error { + state, err := LoadState(gitDir) + if err != nil { + return fmt.Errorf("loading modify state: %w", err) + } + if state == nil { + return fmt.Errorf("no modify state file found") + } + if state.Phase != "conflict" { + return fmt.Errorf("no modify conflict in progress (phase: %s)", state.Phase) + } + + sf, err := stack.Load(gitDir) + if err != nil { + return fmt.Errorf("loading stack: %w", err) + } + + // Find the stack + var s *stack.Stack + for i := range sf.Stacks { + if sf.Stacks[i].Trunk.Branch == state.StackName { + s = &sf.Stacks[i] + break + } + } + if s == nil { + return fmt.Errorf("stack %q not found", state.StackName) + } + + // Finish the in-progress git rebase + if git.IsRebaseInProgress() { + if err := git.RebaseContinue(); err != nil { + return fmt.Errorf("rebase continue failed — resolve remaining conflicts and try again: %w", err) + } + } + + cfg.Successf("Rebased %s", state.ConflictBranch) + + // Continue cascading rebase for remaining branches + for _, branchName := range state.RemainingBranches { + idx := s.IndexOf(branchName) + if idx < 0 { + cfg.Warningf("branch %s no longer in stack, skipping", branchName) + continue + } + b := s.Branches[idx] + if b.IsMerged() { + continue + } + + var newBase string + if idx == 0 { + newBase = s.Trunk.Branch + } else { + newBase = s.ActiveBaseBranch(b.Branch) + } + + // Use original parent tip or merge-base as oldBase + oldBase := "" + if state.OriginalRefs != nil { + oldBase = state.OriginalRefs[b.Branch] + } + if oldBase == "" { + if mb, mberr := git.MergeBase(newBase, b.Branch); mberr == nil { + oldBase = mb + } else { + continue + } + } + + // Check if rebase is needed + isAnc, ancErr := git.IsAncestor(newBase, b.Branch) + if ancErr == nil && isAnc { + if mb, mberr := git.MergeBase(newBase, b.Branch); mberr == nil && mb == oldBase { + continue + } + } + + if err := git.RebaseOnto(newBase, oldBase, b.Branch); err != nil { + // Another conflict — update state and bail + remaining := make([]string, 0) + foundCurrent := false + for _, rn := range state.RemainingBranches { + if rn == branchName { + foundCurrent = true + continue + } + if foundCurrent { + remaining = append(remaining, rn) + } + } + state.ConflictBranch = branchName + state.RemainingBranches = remaining + _ = SaveState(gitDir, state) + + cfg.Warningf("Conflict rebasing %s", branchName) + if files, ferr := git.ConflictedFiles(); ferr == nil { + for _, f := range files { + cfg.Printf(" %s", f) + } + } + return fmt.Errorf("rebase conflict on %s — resolve and run `gh stack modify --continue` again", branchName) + } + + cfg.Successf("Rebased %s onto %s", branchName, newBase) + } + + // All rebases done — restore original branch + if state.OriginalBranch != "" { + _ = git.CheckoutBranch(state.OriginalBranch) + } + + // Update base SHAs + updateBaseSHAs(s) + + // Transition to pending_submit or clear + if s.ID != "" { + state.Phase = "pending_submit" + state.ConflictBranch = "" + state.RemainingBranches = nil + state.OriginalRefs = nil + if err := SaveState(gitDir, state); err != nil { + cfg.Warningf("failed to update modify state: %s", err) + } + } else { + ClearState(gitDir) + } + + // Save stack metadata + if err := stack.Save(gitDir, sf); err != nil { + cfg.Warningf("failed to save stack: %v", err) + } + + cfg.Successf("Modify apply completed") + cfg.Printf("Run `%s` to push branches and recreate the stack on GitHub", + cfg.ColorCyan("gh stack submit")) + return nil +} + // Unwind restores the stack to its pre-modify state using the snapshot. func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, s *stack.Stack, sf *stack.StackFile) error { // Abort any in-progress rebase diff --git a/internal/modify/state.go b/internal/modify/state.go index 6be6985..d11b989 100644 --- a/internal/modify/state.go +++ b/internal/modify/state.go @@ -17,10 +17,16 @@ type StateFile struct { SchemaVersion int `json:"schema_version"` StackName string `json:"stack_name"` StartedAt time.Time `json:"started_at"` - Phase string `json:"phase"` // "applying" or "pending_submit" + Phase string `json:"phase"` // "applying", "conflict", or "pending_submit" PriorRemoteStackID string `json:"prior_remote_stack_id,omitempty"` Snapshot Snapshot `json:"snapshot"` Plan []Action `json:"plan"` + + // Conflict state — populated when phase is "conflict" + ConflictBranch string `json:"conflict_branch,omitempty"` + RemainingBranches []string `json:"remaining_branches,omitempty"` + OriginalBranch string `json:"original_branch,omitempty"` + OriginalRefs map[string]string `json:"original_refs,omitempty"` } // Snapshot captures the pre-modify state for unwind/recovery. @@ -110,5 +116,8 @@ func CheckStateGuard(gitDir string) error { if state.Phase == "applying" { return fmt.Errorf("a modify session was interrupted — run `gh stack modify --recover` to restore your stack") } + if state.Phase == "conflict" { + return fmt.Errorf("a modify has unresolved conflicts — run `gh stack modify --continue` or `gh stack modify --recover`") + } return nil } From a236373330646b563d2eb50cce127d83d7ff3dca Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Fri, 1 May 2026 01:15:55 -0400 Subject: [PATCH 07/26] fix bug with duplicate stack entries after modifying --- internal/modify/apply.go | 49 ++++++++++++++++------------------------ internal/modify/state.go | 1 + 2 files changed, 20 insertions(+), 30 deletions(-) diff --git a/internal/modify/apply.go b/internal/modify/apply.go index f1b494b..4746b83 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -111,10 +111,20 @@ func ApplyPlan( plan := BuildPlan(nodes) + // Find the index of this stack in the stack file for reliable identification + stackIndex := -1 + for i := range sf.Stacks { + if &sf.Stacks[i] == s { + stackIndex = i + break + } + } + // Write state file with phase "applying" stateFile := &StateFile{ SchemaVersion: 1, StackName: s.Trunk.Branch, + StackIndex: stackIndex, StartedAt: time.Now().UTC(), Phase: "applying", PriorRemoteStackID: s.ID, @@ -155,7 +165,7 @@ func ApplyPlan( } if err != nil { // Unwind on failure - unwindErr := Unwind(cfg, gitDir, snapshot, s, sf) + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) if unwindErr != nil { return nil, nil, fmt.Errorf("failed to resolve refs (%v) and unwind failed (%v)", err, unwindErr) } @@ -168,7 +178,7 @@ func ApplyPlan( oldName := n.Ref.Branch newName := n.PendingAction.NewName if err := git.RenameBranch(oldName, newName); err != nil { - unwindErr := Unwind(cfg, gitDir, snapshot, s, sf) + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) if unwindErr != nil { return nil, nil, fmt.Errorf("rename failed (%v) and unwind failed (%v)", err, unwindErr) } @@ -237,7 +247,7 @@ func ApplyPlan( } else { // Checkout target and cherry-pick if err := git.CheckoutBranch(targetBranch); err != nil { - unwindErr := Unwind(cfg, gitDir, snapshot, s, sf) + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) if unwindErr != nil { return nil, nil, fmt.Errorf("checkout failed (%v) and unwind failed (%v)", err, unwindErr) } @@ -596,7 +606,8 @@ func ContinueApply( } // Unwind restores the stack to its pre-modify state using the snapshot. -func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, s *stack.Stack, sf *stack.StackFile) error { +// stackIndex is the index of the stack in sf.Stacks at modify start time. +func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, stackIndex int, sf *stack.StackFile) error { // Abort any in-progress rebase if git.IsRebaseInProgress() { _ = git.RebaseAbort() @@ -628,12 +639,9 @@ func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, s *stack.Stack return fmt.Errorf("restoring stack metadata: %w", err) } - // Find and replace the stack in the stack file - for i := range sf.Stacks { - if &sf.Stacks[i] == s { - sf.Stacks[i] = restoredStack - break - } + // Replace the stack at the saved index + if stackIndex >= 0 && stackIndex < len(sf.Stacks) { + sf.Stacks[stackIndex] = restoredStack } // Save restored stack @@ -668,24 +676,5 @@ func UnwindFromStateFile(cfg *config.Config, gitDir string) error { return fmt.Errorf("loading stack: %w", err) } - // Find the stack by trunk name - var s *stack.Stack - for i := range sf.Stacks { - if sf.Stacks[i].Trunk.Branch == state.StackName { - s = &sf.Stacks[i] - break - } - } - - if s == nil { - // Stack not found — try to restore from snapshot metadata - var restoredStack stack.Stack - if err := json.Unmarshal(state.Snapshot.StackMetadata, &restoredStack); err != nil { - return fmt.Errorf("restoring stack from snapshot: %w", err) - } - sf.AddStack(restoredStack) - s = &sf.Stacks[len(sf.Stacks)-1] - } - - return Unwind(cfg, gitDir, state.Snapshot, s, sf) + return Unwind(cfg, gitDir, state.Snapshot, state.StackIndex, sf) } diff --git a/internal/modify/state.go b/internal/modify/state.go index d11b989..b550c3f 100644 --- a/internal/modify/state.go +++ b/internal/modify/state.go @@ -16,6 +16,7 @@ const stateFileName = "gh-stack-modify-state" type StateFile struct { SchemaVersion int `json:"schema_version"` StackName string `json:"stack_name"` + StackIndex int `json:"stack_index"` // index in StackFile.Stacks at modify start StartedAt time.Time `json:"started_at"` Phase string `json:"phase"` // "applying", "conflict", or "pending_submit" PriorRemoteStackID string `json:"prior_remote_stack_id,omitempty"` From a08e18922b18a299f774ef231015c094080432f8 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Fri, 1 May 2026 02:16:06 -0400 Subject: [PATCH 08/26] reuse conflict resolution help msg from rebase --- cmd/modify.go | 15 +++++---------- cmd/rebase.go | 6 +++++- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index 08d6b50..d4951f5 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -118,17 +118,12 @@ func runModify(cfg *config.Config) error { applyResult, conflict, applyErr := modify.ApplyPlan(cfg, gitDir, s, sf, reordered, currentBranch, updateBaseSHAs) if conflict != nil { - cfg.Warningf("Conflict while rebasing %s", conflict.Branch) - if len(conflict.ConflictedFiles) > 0 { - cfg.Printf("Conflicted files:") - for _, f := range conflict.ConflictedFiles { - cfg.Printf(" %s", f) - } - } + cfg.Warningf("Rebasing %s — conflict", conflict.Branch) + + printConflictDetailsWithContinue(cfg, conflict.Branch, "gh stack modify --continue") cfg.Printf("") - cfg.Printf("To resolve: fix conflicts, then run `%s`", - cfg.ColorCyan("gh stack modify --continue")) - cfg.Printf("To undo all changes: run `%s`", + + cfg.Printf("Or restore the stack to its pre-modify state with `%s`", cfg.ColorCyan("gh stack modify --recover")) return ErrConflict } diff --git a/cmd/rebase.go b/cmd/rebase.go index f2afa3f..3851cdf 100644 --- a/cmd/rebase.go +++ b/cmd/rebase.go @@ -616,6 +616,10 @@ func clearRebaseState(gitDir string) { } func printConflictDetails(cfg *config.Config, branch string) { + printConflictDetailsWithContinue(cfg, branch, "gh stack rebase --continue") +} + +func printConflictDetailsWithContinue(cfg *config.Config, branch string, continueCmd string) { files, err := git.ConflictedFiles() if err != nil || len(files) == 0 { return @@ -643,5 +647,5 @@ func printConflictDetails(cfg *config.Config, branch string) { cfg.Printf(" %s (changes being rebased)", cfg.ColorCyan(">>>>>>>")) cfg.Printf(" 2. Edit the file to keep the desired changes and remove the markers") cfg.Printf(" 3. Stage resolved files: `%s`", cfg.ColorCyan("git add ")) - cfg.Printf(" 4. Continue the rebase: `%s`", cfg.ColorCyan("gh stack rebase --continue")) + cfg.Printf(" 4. Continue: `%s`", cfg.ColorCyan(continueCmd)) } From 0a320cebe1b746b5a97d3c0a702f41eaab9c672f Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Fri, 1 May 2026 12:44:33 -0400 Subject: [PATCH 09/26] additional confirmation before overwriting stack on remote --- cmd/submit.go | 39 +++++++++++++++++++++++++++++++-------- 1 file changed, 31 insertions(+), 8 deletions(-) diff --git a/cmd/submit.go b/cmd/submit.go index 8c23864..c7cb858 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -134,6 +134,18 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { return ErrSilent } + // Handle pending modify state — delete old stack and clear s.ID BEFORE + // the PR base update loop, so that base branches can be updated freely + // (the stack API locks base branches while a stack exists). + if stacksAvailable { + if err := handlePendingModify(cfg, client, s, gitDir); err != nil { + if errors.Is(err, errInterrupt) { + return ErrSilent + } + // Other errors already reported — continue with sync attempt + } + } + // Create or update PRs — ensure every active branch has a PR with the // correct base branch. This makes submit idempotent: running it again // fills gaps and fixes base branches before syncing the stack. @@ -220,13 +232,6 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { } } - // Handle pending modify state (delete old stack) - if stacksAvailable { - if err := handlePendingModify(cfg, client, s, gitDir); err != nil { - // Error already reported — continue with sync attempt - } - } - // Create or update the stack on GitHub if stacksAvailable { syncStack(cfg, client, s) @@ -298,6 +303,24 @@ func handlePendingModify(cfg *config.Config, client github.ClientOps, s *stack.S return nil // Not in pending_submit phase } + // Prompt for confirmation before overwriting the remote stack + if cfg.IsInteractive() { + p := prompter.New(cfg.In, cfg.Out, cfg.Err) + proceed, promptErr := p.Confirm("The local stack has been modified. Overwrite the existing stack on GitHub?", false) + if promptErr != nil { + if isInterruptError(promptErr) { + printInterrupt(cfg) + return errInterrupt + } + return promptErr + } + if !proceed { + cfg.Printf("Skipping stack recreation — run `%s` when ready", + cfg.ColorCyan("gh stack submit")) + return errInterrupt + } + } + // Delete the old remote stack if state.PriorRemoteStackID != "" { if err := client.DeleteStack(state.PriorRemoteStackID); err != nil { @@ -310,7 +333,7 @@ func handlePendingModify(cfg *config.Config, client github.ClientOps, s *stack.S return err } } else { - cfg.Successf("Deleted previous stack on GitHub") + cfg.Successf("Cleared previous stack on GitHub") } // Clear the old stack ID so syncStack creates a new one s.ID = "" From 77787157000d5dada701402474450caca4ab9b24 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 11:20:51 -0400 Subject: [PATCH 10/26] fix recreate order of operations Co-authored-by: Copilot --- cmd/submit.go | 84 ++++++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 69 insertions(+), 15 deletions(-) diff --git a/cmd/submit.go b/cmd/submit.go index c7cb858..318034b 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -107,7 +107,7 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { // Sync PR state to detect merged/queued PRs before pushing. syncStackPRs(cfg, s) - // Push all active branches atomically + // Resolve remote for pushing remote, err := pickRemote(cfg, currentBranch, opts.remote) if err != nil { if !errors.Is(err, errInterrupt) { @@ -128,21 +128,74 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { cfg.Printf("All branches are merged or queued, nothing to submit") return nil } - cfg.Printf("Pushing %d %s to %s...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) - if err := git.Push(remote, activeBranches, true, true); err != nil { - cfg.Errorf("failed to push: %s", err) - return ErrSilent - } - // Handle pending modify state — delete old stack and clear s.ID BEFORE - // the PR base update loop, so that base branches can be updated freely - // (the stack API locks base branches while a stack exists). + // When a modify is pending, delete the old stack BEFORE pushing so that + // PRs aren't auto-merged/closed during the force-push. + pendingModify := false if stacksAvailable { - if err := handlePendingModify(cfg, client, s, gitDir); err != nil { - if errors.Is(err, errInterrupt) { + if state, _ := modify.LoadState(gitDir); state != nil && state.Phase == "pending_submit" { + pendingModify = true + if err := handlePendingModify(cfg, client, s, gitDir); err != nil { + if errors.Is(err, errInterrupt) { + return ErrSilent + } + } + } + } + + if pendingModify { + // Push branches one at a time in stack order (bottom to top) and + // update each PR's base immediately after pushing. This prevents + // false "merge" detections when branches are pushed simultaneously + // with stale base relationships. + cfg.Printf("Pushing %d %s to %s (sequentially)...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) + for i, b := range s.Branches { + if s.Branches[i].IsMerged() || s.Branches[i].IsQueued() { + continue + } + + // Push this single branch + if err := git.Push(remote, []string{b.Branch}, true, false); err != nil { + cfg.Errorf("failed to push %s: %s", b.Branch, err) return ErrSilent } - // Other errors already reported — continue with sync attempt + + // Update PR base immediately after pushing + baseBranch := s.ActiveBaseBranch(b.Branch) + pr, prErr := client.FindPRForBranch(b.Branch) + if prErr != nil { + continue + } + if pr != nil { + if s.Branches[i].PullRequest == nil { + s.Branches[i].PullRequest = &stack.PullRequestRef{ + Number: pr.Number, + ID: pr.ID, + URL: pr.URL, + } + } + if pr.BaseRefName != baseBranch { + if err := client.UpdatePRBase(pr.Number, baseBranch); err != nil { + cfg.Warningf("failed to update base branch for PR %s: %v", + cfg.PRLink(pr.Number, pr.URL), err) + } else { + cfg.Successf("Updated base branch for PR %s to %s", + cfg.PRLink(pr.Number, pr.URL), baseBranch) + } + } else { + cfg.Printf("PR %s for %s is up to date", cfg.PRLink(pr.Number, pr.URL), b.Branch) + } + } else { + // No PR yet — will be created in the PR loop below + cfg.Printf("Pushed %s", b.Branch) + } + } + } else { + // Normal submit — push all branches atomically + cfg.Printf("Pushing %d %s to %s...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) + if err := git.Push(remote, activeBranches, true, true); err != nil { + cfg.Errorf("failed to push: %s", err) + return ErrSilent } } @@ -211,10 +264,11 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { } } - if pr.BaseRefName != baseBranch { + if pendingModify { + // Base updates already handled in the sequential push loop. + cfg.Printf("PR %s for %s is up to date", cfg.PRLink(pr.Number, pr.URL), b.Branch) + } else if pr.BaseRefName != baseBranch { if s.ID != "" { - // PRs in an existing stack can't have their base updated - // via the API — the stack owns the base relationships. cfg.Warningf("PR %s has base %q (expected %q) but cannot update while stacked", cfg.PRLink(pr.Number, pr.URL), pr.BaseRefName, baseBranch) } else { From 00609dfccf39bbac65bd345b2c7cd03286595332 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 11:23:32 -0400 Subject: [PATCH 11/26] move base commit instead of cherry picking for fold up --- cmd/modify.go | 4 +- cmd/rebase.go | 28 ++++++------- internal/git/git.go | 6 +++ internal/git/gitops.go | 5 +++ internal/git/mock_ops.go | 4 ++ internal/modify/apply.go | 86 +++++++++++++++++++++++++--------------- 6 files changed, 83 insertions(+), 50 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index d4951f5..9028edd 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -13,8 +13,8 @@ import ( ) type modifyOptions struct { - recover bool - cont bool + recover bool + cont bool } func ModifyCmd(cfg *config.Config) *cobra.Command { diff --git a/cmd/rebase.go b/cmd/rebase.go index 3851cdf..cfed5af 100644 --- a/cmd/rebase.go +++ b/cmd/rebase.go @@ -621,21 +621,19 @@ func printConflictDetails(cfg *config.Config, branch string) { func printConflictDetailsWithContinue(cfg *config.Config, branch string, continueCmd string) { files, err := git.ConflictedFiles() - if err != nil || len(files) == 0 { - return - } - - cfg.Printf("") - cfg.Printf("%s", cfg.ColorBold("Conflicted files:")) - for _, f := range files { - info, err := git.FindConflictMarkers(f) - if err != nil || len(info.Sections) == 0 { - cfg.Printf(" %s %s", cfg.ColorWarning("C"), f) - continue - } - for _, sec := range info.Sections { - cfg.Printf(" %s %s (lines %d–%d)", - cfg.ColorWarning("C"), f, sec.StartLine, sec.EndLine) + if err == nil && len(files) > 0 { + cfg.Printf("") + cfg.Printf("%s", cfg.ColorBold("Conflicted files:")) + for _, f := range files { + info, err := git.FindConflictMarkers(f) + if err != nil || len(info.Sections) == 0 { + cfg.Printf(" %s %s", cfg.ColorWarning("C"), f) + continue + } + for _, sec := range info.Sections { + cfg.Printf(" %s %s (lines %d–%d)", + cfg.ColorWarning("C"), f, sec.StartLine, sec.EndLine) + } } } diff --git a/internal/git/git.go b/internal/git/git.go index d239022..705a6a7 100644 --- a/internal/git/git.go +++ b/internal/git/git.go @@ -362,6 +362,12 @@ func CherryPick(commits []string) error { return ops.CherryPick(commits) } +// CherryPickAbort clears any in-progress cherry-pick state. +// Errors are silently ignored (no-op if no cherry-pick is in progress). +func CherryPickAbort() { + _ = ops.CherryPickAbort() +} + // HasUncommittedChanges returns true if the working tree has uncommitted changes. func HasUncommittedChanges() (bool, error) { return ops.HasUncommittedChanges() diff --git a/internal/git/gitops.go b/internal/git/gitops.go index db0d181..bc7a519 100644 --- a/internal/git/gitops.go +++ b/internal/git/gitops.go @@ -58,6 +58,7 @@ type Ops interface { ValidateRefName(name string) error RenameBranch(oldName, newName string) error CherryPick(commits []string) error + CherryPickAbort() error HasUncommittedChanges() (bool, error) LogMerges(base, head string) ([]CommitInfo, error) } @@ -508,6 +509,10 @@ func (d *defaultOps) CherryPick(commits []string) error { return runSilent(args...) } +func (d *defaultOps) CherryPickAbort() error { + return runSilent("cherry-pick", "--quit") +} + func (d *defaultOps) HasUncommittedChanges() (bool, error) { out, err := run("status", "--porcelain") if err != nil { diff --git a/internal/git/mock_ops.go b/internal/git/mock_ops.go index 401f805..2c29585 100644 --- a/internal/git/mock_ops.go +++ b/internal/git/mock_ops.go @@ -355,6 +355,10 @@ func (m *MockOps) CherryPick(commits []string) error { return nil } +func (m *MockOps) CherryPickAbort() error { + return nil +} + func (m *MockOps) HasUncommittedChanges() (bool, error) { if m.HasUncommittedChangesFn != nil { return m.HasUncommittedChangesFn() diff --git a/internal/modify/apply.go b/internal/modify/apply.go index 4746b83..e53c216 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -206,7 +206,17 @@ func ApplyPlan( } } - // Step 2: Folds — cherry-pick commits from folded branch onto target + // Step 2: Folds — absorb one branch's commits into an adjacent branch. + // + // Fold-down: cherry-pick the folded branch's commits onto the target below. + // The target is below in the stack (closer to trunk), so it doesn't + // contain the folded branch's commits. Cherry-pick adds them. + // + // Fold-up: the target (above) already contains the folded branch's commits + // in its ancestry (it's stacked on top). Instead of cherry-picking, we + // adjust originalParentTips so the cascading rebase replays both the + // folded branch's commits AND the target's own commits when rebasing + // the target onto the folded branch's base. for _, n := range nodes { if n.PendingAction == nil { continue @@ -227,54 +237,62 @@ func ApplyPlan( if n.PendingAction.Type == modifyview.ActionFoldDown { // Target is the branch below (toward trunk) if foldIdx == 0 { - continue // Can't fold below the bottom + continue } targetBranch = s.Branches[foldIdx-1].Branch } else { // Target is the branch above (away from trunk) if foldIdx >= len(s.Branches)-1 { - continue // Can't fold above the top + continue } targetBranch = s.Branches[foldIdx+1].Branch } - // Get commits unique to the folded branch baseBranch := s.ActiveBaseBranch(foldBranch) - commits, err := git.LogRange(baseBranch, foldBranch) - if err != nil || len(commits) == 0 { - // No commits to cherry-pick — just remove from stack - cfg.Printf("No commits to fold from %s", foldBranch) - } else { - // Checkout target and cherry-pick - if err := git.CheckoutBranch(targetBranch); err != nil { - unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) - if unwindErr != nil { - return nil, nil, fmt.Errorf("checkout failed (%v) and unwind failed (%v)", err, unwindErr) - } - return nil, nil, fmt.Errorf("checking out %s for fold: %w", targetBranch, err) - } - // Get SHAs in chronological order (LogRange returns newest first) - shas := make([]string, len(commits)) - for i, c := range commits { - shas[len(commits)-1-i] = c.SHA - } + if n.PendingAction.Type == modifyview.ActionFoldDown { + // Fold-down: cherry-pick the folded branch's commits onto the target. + commits, err := git.LogRange(baseBranch, foldBranch) + if err != nil || len(commits) == 0 { + cfg.Printf("No commits to fold from %s", foldBranch) + } else { + if err := git.CheckoutBranch(targetBranch); err != nil { + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) + if unwindErr != nil { + return nil, nil, fmt.Errorf("checkout failed (%v) and unwind failed (%v)", err, unwindErr) + } + return nil, nil, fmt.Errorf("checking out %s for fold: %w", targetBranch, err) + } - if err := git.CherryPick(shas); err != nil { - // Cherry-pick conflict - conflict := &modifyview.ConflictInfo{ - Branch: foldBranch, + shas := make([]string, len(commits)) + for i, c := range commits { + shas[len(commits)-1-i] = c.SHA } - if files, ferr := git.ConflictedFiles(); ferr == nil { - conflict.ConflictedFiles = files + + git.CherryPickAbort() + + if err := git.CherryPick(shas); err != nil { + conflict := &modifyview.ConflictInfo{Branch: foldBranch} + if files, ferr := git.ConflictedFiles(); ferr == nil { + conflict.ConflictedFiles = files + } + return nil, conflict, fmt.Errorf("cherry-pick conflict folding %s into %s", foldBranch, targetBranch) } - return nil, conflict, fmt.Errorf("cherry-pick conflict folding %s into %s", foldBranch, targetBranch) - } - cfg.Successf("Folded %s into %s (%d commits)", foldBranch, targetBranch, len(commits)) + cfg.Successf("Folded %s into %s (%d commits)", foldBranch, targetBranch, len(commits)) + } + } else { + // Fold-up: the target (above) already has the folded branch's + // commits in its history. We adjust originalParentTips so the + // cascading rebase uses the folded branch's BASE as the cutoff, + // replaying both the folded branch's commits and the target's + // own commits onto the new parent. + originalParentTips[targetBranch] = originalParentTips[foldBranch] + cfg.Successf("Folded %s into %s", foldBranch, targetBranch) } - // Remove from stack metadata + // Remove folded branch from stack metadata + foldIdx = s.IndexOf(foldBranch) // re-resolve in case earlier folds shifted indices if foldIdx >= 0 && foldIdx < len(s.Branches) { s.Branches = append(s.Branches[:foldIdx], s.Branches[foldIdx+1:]...) } @@ -422,7 +440,9 @@ func ApplyPlan( stateFile.RemainingBranches = remaining stateFile.OriginalBranch = currentBranch stateFile.OriginalRefs = originalParentTips - _ = SaveState(gitDir, stateFile) + if saveErr := SaveState(gitDir, stateFile); saveErr != nil { + cfg.Warningf("failed to save conflict state: %v", saveErr) + } // Save stack metadata so far (renames, folds, drops already applied) _ = stack.SaveWithLock(gitDir, sf, lock) From f8ec50933ee89e3765ac034d9abc19cb6b6b7f76 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 11:42:41 -0400 Subject: [PATCH 12/26] check to ensure we aren't left with zero branches --- internal/tui/modifyview/model.go | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/internal/tui/modifyview/model.go b/internal/tui/modifyview/model.go index d81b7ef..b8b0b42 100644 --- a/internal/tui/modifyview/model.go +++ b/internal/tui/modifyview/model.go @@ -546,6 +546,22 @@ func (m *Model) toggleDrop() { } } + // Check if this would remove the last active branch + active := 0 + for j, other := range m.nodes { + if j == m.cursor { + continue // skip the branch we're about to drop + } + if !other.Removed && !other.Ref.IsMerged() { + active++ + } + } + if active < 1 { + m.statusMessage = "Cannot drop the last branch in the stack" + m.statusIsError = true + return + } + // Apply drop m.actionStack = append(m.actionStack, StagedAction{ Type: ActionDrop, @@ -625,6 +641,22 @@ func (m *Model) fold(action ActionType) { } } + // Check if this would remove the last active branch + active := 0 + for j, other := range m.nodes { + if j == m.cursor { + continue + } + if !other.Removed && !other.Ref.IsMerged() { + active++ + } + } + if active < 1 { + m.statusMessage = "Cannot fold the last branch in the stack" + m.statusIsError = true + return + } + m.actionStack = append(m.actionStack, StagedAction{ Type: action, BranchName: node.Ref.Branch, From 8e11fdbe6150df1b2f5488e232c1d3234e55890b Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 12:18:09 -0400 Subject: [PATCH 13/26] unify and dedupe across view and modify tui --- cmd/modify.go | 1 + cmd/submit.go | 6 +- internal/tui/modifyview/model.go | 78 +++++++++------ internal/tui/shared/render.go | 135 +++++++++++++++++++++++++- internal/tui/shared/scroll.go | 21 +++++ internal/tui/shared/styles.go | 1 + internal/tui/stackview/model.go | 157 ++++--------------------------- 7 files changed, 230 insertions(+), 169 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index 9028edd..31d46cb 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -86,6 +86,7 @@ func runModify(cfg *config.Config) error { p := tea.NewProgram( model, tea.WithAltScreen(), + tea.WithMouseAllMotion(), ) finalModel, err := p.Run() diff --git a/cmd/submit.go b/cmd/submit.go index 318034b..7c0e373 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -382,12 +382,12 @@ func handlePendingModify(cfg *config.Config, client github.ClientOps, s *stack.S if errors.As(err, &httpErr) && httpErr.StatusCode == 404 { cfg.Printf("Previous stack already deleted on GitHub") } else { - cfg.Warningf("Failed to delete previous stack: %v", err) + cfg.Warningf("Failed to delete existing stack: %v", err) cfg.Printf("Run `%s` again to retry", cfg.ColorCyan("gh stack submit")) return err } } else { - cfg.Successf("Cleared previous stack on GitHub") + cfg.Successf("Cleared existing stack on GitHub") } // Clear the old stack ID so syncStack creates a new one s.ID = "" @@ -403,7 +403,7 @@ func clearPendingModifyState(cfg *config.Config, gitDir string) { return } modify.ClearState(gitDir) - cfg.Successf("Modify state cleared — stack recreated on GitHub") + cfg.Successf("Stack recreated on GitHub to match local state") } // syncStack creates or updates a stack on GitHub from the active PRs. diff --git a/internal/tui/modifyview/model.go b/internal/tui/modifyview/model.go index b8b0b42..15abb34 100644 --- a/internal/tui/modifyview/model.go +++ b/internal/tui/modifyview/model.go @@ -211,6 +211,25 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { return m.updateRename(msg) } return m.updateNormal(msg) + + case tea.MouseMsg: + switch msg.Action { + case tea.MouseActionPress: + if msg.Button == tea.MouseButtonLeft { + return m.handleMouseClick(msg.X, msg.Y) + } + if msg.Button == tea.MouseButtonWheelUp { + if m.scrollOffset > 0 { + m.scrollOffset-- + } + return m, nil + } + if msg.Button == tea.MouseButtonWheelDown { + m.scrollOffset++ + m.clampScroll() + return m, nil + } + } } return m, nil @@ -803,12 +822,7 @@ func (m *Model) ensureVisible() { endLine := startLine + m.nodeLineCount(m.cursor) viewHeight := m.contentViewHeight() - if startLine < m.scrollOffset { - m.scrollOffset = startLine - } - if endLine > m.scrollOffset+viewHeight { - m.scrollOffset = endLine - viewHeight - } + m.scrollOffset = shared.EnsureVisible(startLine, endLine, m.scrollOffset, viewHeight) } func (m Model) nodeLineCount(idx int) int { @@ -833,16 +847,38 @@ func (m *Model) clampScroll() { total += m.nodeLineCount(i) } total++ // trunk line - maxScroll := total - m.contentViewHeight() - if maxScroll < 0 { - maxScroll = 0 + m.scrollOffset = shared.ClampScroll(total, m.contentViewHeight(), m.scrollOffset) +} + +// --- Mouse handling --- + +// handleMouseClick processes a mouse click at the given screen position. +func (m Model) handleMouseClick(screenX, screenY int) (tea.Model, tea.Cmd) { + nodes := make([]shared.BranchNodeData, len(m.nodes)) + for i, n := range m.nodes { + nodes[i] = toNodeData(n, i) + } + + result := shared.HandleClick(screenX, screenY, nodes, m.width, m.height, m.scrollOffset, shared.ShouldShowHeader(m.width, m.height), false) + if result.NodeIndex < 0 { + return m, nil + } + + m.cursor = result.NodeIndex + + if result.OpenURL != "" { + shared.OpenBrowserInBackground(result.OpenURL) } - if m.scrollOffset > maxScroll { - m.scrollOffset = maxScroll + if result.ToggleFiles { + m.nodes[result.NodeIndex].FilesExpanded = !m.nodes[result.NodeIndex].FilesExpanded + m.clampScroll() } - if m.scrollOffset < 0 { - m.scrollOffset = 0 + if result.ToggleCommits { + m.nodes[result.NodeIndex].CommitsExpanded = !m.nodes[result.NodeIndex].CommitsExpanded + m.clampScroll() } + + return m, nil } // --- View --- @@ -980,7 +1016,6 @@ func (m Model) View() string { } content := b.String() - contentLines := strings.Split(content, "\n") // Scrolling reservedLines := 0 @@ -992,20 +1027,7 @@ func (m Model) View() string { viewHeight = 1 } - maxScroll := len(contentLines) - viewHeight - if maxScroll < 0 { - maxScroll = 0 - } - start := m.scrollOffset - if start > maxScroll { - start = maxScroll - } - end := start + viewHeight - if end > len(contentLines) { - end = len(contentLines) - } - - out.WriteString(strings.Join(contentLines[start:end], "\n")) + out.WriteString(shared.ApplyScrollToContent(content, m.scrollOffset, viewHeight)) out.WriteString("\n") // Status line at the bottom diff --git a/internal/tui/shared/render.go b/internal/tui/shared/render.go index 87ee798..65bacf2 100644 --- a/internal/tui/shared/render.go +++ b/internal/tui/shared/render.go @@ -2,6 +2,8 @@ package shared import ( "fmt" + "os/exec" + "runtime" "strings" "time" @@ -158,7 +160,7 @@ func RenderPRHeader(b *strings.Builder, node BranchNodeData, isFocused bool, con default: stateLabel = " OPEN" } - b.WriteString(style.Underline(true).Render(prLabel) + style.Render(stateLabel)) + b.WriteString(PRLinkStyle.Render(prLabel) + style.Render(stateLabel)) if annotation != nil { b.WriteString(" ") @@ -394,3 +396,134 @@ func TimeAgo(t time.Time) string { return fmt.Sprintf("%d months ago", months) } } + +// --- Mouse click helpers --- + +// ClickResult describes what happened when a node was clicked. +type ClickResult struct { + NodeIndex int // which node was clicked (-1 if none) + ToggleFiles bool // should toggle files expansion + ToggleCommits bool // should toggle commits expansion + OpenURL string // URL to open in browser (empty if none) +} + +// HandleClick maps a screen click to a node action. +// nodes is the list of BranchNodeData in display order. +// showHeader indicates whether the header is visible. +// scrollOffset is the current scroll position. +// hasSeparators controls whether merged/queued separator lines are accounted for. +func HandleClick(screenX, screenY int, nodes []BranchNodeData, width, height, scrollOffset int, showHeader, hasSeparators bool) ClickResult { + yOffset := 0 + if showHeader { + if screenY < HeaderHeight { + return ClickResult{NodeIndex: -1} + } + yOffset = HeaderHeight + } + + contentLine := (screenY - yOffset) + scrollOffset + + line := 0 + prevWasMerged := false + prevWasQueued := false + for i := 0; i < len(nodes); i++ { + if hasSeparators { + isMerged := nodes[i].Ref.IsMerged() + isQueued := nodes[i].Ref.IsQueued() + if isMerged && !prevWasMerged && i > 0 { + line++ + } else if isQueued && !prevWasQueued && !prevWasMerged && i > 0 { + line++ + } + prevWasMerged = isMerged + prevWasQueued = isQueued + } + + nodeStart := line + nodeLines := NodeLineCount(nodes[i]) + + if contentLine >= nodeStart && contentLine < nodeStart+nodeLines { + result := ClickResult{NodeIndex: i} + + // Click on PR header line — check if clicking the PR number + if contentLine == nodeStart && nodes[i].PR != nil && nodes[i].PR.URL != "" { + prStartX, prEndX := PRLabelColumns(nodes[i]) + if screenX >= prStartX && screenX < prEndX { + result.OpenURL = nodes[i].PR.URL + } + } + + // Click on files toggle line + if len(nodes[i].FilesChanged) > 0 { + if contentLine == nodeStart+FilesToggleLineOffset(nodes[i]) { + result.ToggleFiles = true + } + } + + // Click on commits toggle line + if len(nodes[i].Commits) > 0 { + if contentLine == nodeStart+CommitToggleLineOffset(nodes[i]) { + result.ToggleCommits = true + } + } + + return result + } + line += nodeLines + } + + return ClickResult{NodeIndex: -1} +} + +// FilesToggleLineOffset returns the line offset from node start to the files toggle. +func FilesToggleLineOffset(node BranchNodeData) int { + offset := 1 // after header + if node.PR != nil { + offset++ + } + return offset +} + +// CommitToggleLineOffset returns the line offset from node start to the commits toggle. +func CommitToggleLineOffset(node BranchNodeData) int { + offset := 1 + if node.PR != nil { + offset++ + } + if len(node.FilesChanged) > 0 { + offset++ + if node.FilesExpanded { + offset += len(node.FilesChanged) + } + } + return offset +} + +// PRLabelColumns returns the start and end X columns of the PR number label. +func PRLabelColumns(node BranchNodeData) (int, int) { + col := 2 // bullet + space + icon := StatusIcon(node) + if icon != "" { + col += 2 + } + prLabel := fmt.Sprintf("#%d", node.PR.Number) + return col, col + len(prLabel) +} + +// OpenBrowserInBackground launches the system browser for the given URL. +func OpenBrowserInBackground(url string) { + cmd := BrowserCmd(url) + _ = cmd.Start() +} + +// BrowserCmd returns an exec.Cmd to open a URL in the default browser. +func BrowserCmd(url string) *exec.Cmd { + switch runtime.GOOS { + case "darwin": + return exec.Command("open", url) + case "windows": + return exec.Command("cmd", "/c", "start", url) + default: + return exec.Command("xdg-open", url) + } +} diff --git a/internal/tui/shared/scroll.go b/internal/tui/shared/scroll.go index 42a3cb1..936035e 100644 --- a/internal/tui/shared/scroll.go +++ b/internal/tui/shared/scroll.go @@ -1,5 +1,7 @@ package shared +import "strings" + // ClampScroll ensures scrollOffset doesn't exceed content bounds. func ClampScroll(totalLines, viewHeight, scrollOffset int) int { maxScroll := totalLines - viewHeight @@ -28,3 +30,22 @@ func EnsureVisible(startLine, endLine, scrollOffset, viewHeight int) int { } return scrollOffset } + +// ApplyScrollToContent takes rendered content, splits into lines, applies +// scroll offset, and returns the visible portion as a string. +func ApplyScrollToContent(content string, scrollOffset, viewHeight int) string { + lines := strings.Split(content, "\n") + maxScroll := len(lines) - viewHeight + if maxScroll < 0 { + maxScroll = 0 + } + start := scrollOffset + if start > maxScroll { + start = maxScroll + } + end := start + viewHeight + if end > len(lines) { + end = len(lines) + } + return strings.Join(lines[start:end], "\n") +} diff --git a/internal/tui/shared/styles.go b/internal/tui/shared/styles.go index 245db76..f3a4430 100644 --- a/internal/tui/shared/styles.go +++ b/internal/tui/shared/styles.go @@ -16,6 +16,7 @@ var ( QueuedIcon = lipgloss.NewStyle().Foreground(lipgloss.Color("130")).Render("◎") // PR status styles + PRLinkStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("15")).Underline(true) PROpenStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("2")) PRMergedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("5")) PRClosedStyle = lipgloss.NewStyle().Foreground(lipgloss.Color("1")) diff --git a/internal/tui/stackview/model.go b/internal/tui/stackview/model.go index eeb8253..10506da 100644 --- a/internal/tui/stackview/model.go +++ b/internal/tui/stackview/model.go @@ -2,8 +2,6 @@ package stackview import ( "fmt" - "os/exec" - "runtime" "strings" "github.com/charmbracelet/bubbles/help" @@ -159,7 +157,7 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { if m.cursor >= 0 && m.cursor < len(m.nodes) { node := m.nodes[m.cursor] if node.PR != nil && node.PR.URL != "" { - openBrowserInBackground(node.PR.URL) + shared.OpenBrowserInBackground(node.PR.URL) } } return m, nil @@ -198,12 +196,6 @@ func (m Model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { return m, nil } -// openBrowserInBackground launches the system browser for the given URL. -func openBrowserInBackground(url string) { - cmd := browserCmd(url) - _ = cmd.Start() -} - // toBranchNodeData converts a BranchNode to shared.BranchNodeData. func toBranchNodeData(node BranchNode) shared.BranchNodeData { return shared.BranchNodeData{ @@ -224,69 +216,28 @@ func toBranchNodeData(node BranchNode) shared.BranchNodeData { // handleMouseClick processes a mouse click at the given screen position. func (m Model) handleMouseClick(screenX, screenY int) (tea.Model, tea.Cmd) { - // If header is visible, clicks in the header area are ignored - yOffset := 0 - if shared.ShouldShowHeader(m.width, m.height) { - if screenY < shared.HeaderHeight { - return m, nil - } - yOffset = shared.HeaderHeight + nodes := make([]shared.BranchNodeData, len(m.nodes)) + for i, n := range m.nodes { + nodes[i] = toBranchNodeData(n) } - // Map screen Y to content line, accounting for scroll offset and header - contentLine := (screenY - yOffset) + m.scrollOffset - - // Walk through rendered lines to find which node was clicked. - // Account for the merged/queued separator lines that may appear between nodes. - line := 0 - prevWasMerged := false - prevWasQueued := false - for i := 0; i < len(m.nodes); i++ { - isMerged := m.nodes[i].Ref.IsMerged() - isQueued := m.nodes[i].Ref.IsQueued() - if isMerged && !prevWasMerged && i > 0 { - line++ // separator line - } else if isQueued && !prevWasQueued && !prevWasMerged && i > 0 { - line++ // separator line - } - prevWasMerged = isMerged - prevWasQueued = isQueued - - nodeStart := line - nodeLines := m.nodeLineCount(i) - - if contentLine >= nodeStart && contentLine < nodeStart+nodeLines { - m.cursor = i - - // Click on PR header line — only open browser if clicking the PR number - if contentLine == nodeStart && m.nodes[i].PR != nil && m.nodes[i].PR.URL != "" { - prStartX, prEndX := m.prLabelColumns(i) - if screenX >= prStartX && screenX < prEndX { - openBrowserInBackground(m.nodes[i].PR.URL) - } - } + result := shared.HandleClick(screenX, screenY, nodes, m.width, m.height, m.scrollOffset, shared.ShouldShowHeader(m.width, m.height), true) + if result.NodeIndex < 0 { + return m, nil + } - // Click on files toggle line → toggle expansion - if len(m.nodes[i].FilesChanged) > 0 { - filesToggleLine := nodeStart + m.filesToggleLineOffset(i) - if contentLine == filesToggleLine { - m.nodes[i].FilesExpanded = !m.nodes[i].FilesExpanded - m.clampScroll() - } - } + m.cursor = result.NodeIndex - // Click on commits toggle line → toggle expansion - if len(m.nodes[i].Commits) > 0 { - commitToggleLine := nodeStart + m.commitToggleLineOffset(i) - if contentLine == commitToggleLine { - m.nodes[i].CommitsExpanded = !m.nodes[i].CommitsExpanded - m.clampScroll() - } - } - - return m, nil - } - line += nodeLines + if result.OpenURL != "" { + shared.OpenBrowserInBackground(result.OpenURL) + } + if result.ToggleFiles { + m.nodes[result.NodeIndex].FilesExpanded = !m.nodes[result.NodeIndex].FilesExpanded + m.clampScroll() + } + if result.ToggleCommits { + m.nodes[result.NodeIndex].CommitsExpanded = !m.nodes[result.NodeIndex].CommitsExpanded + m.clampScroll() } return m, nil @@ -297,46 +248,6 @@ func (m Model) nodeLineCount(idx int) int { return shared.NodeLineCount(toBranchNodeData(m.nodes[idx])) } -// commitToggleLineOffset returns the offset from node start to the commits toggle line. -func (m Model) commitToggleLineOffset(idx int) int { - node := m.nodes[idx] - offset := 1 // after header - if node.PR != nil { - offset++ // branch + diff line - } - if len(node.FilesChanged) > 0 { - offset++ // files toggle line - if node.FilesExpanded { - offset += len(node.FilesChanged) - } - } - return offset -} - -// filesToggleLineOffset returns the offset from node start to the files toggle line. -func (m Model) filesToggleLineOffset(idx int) int { - node := m.nodes[idx] - offset := 1 // after header - if node.PR != nil { - offset++ // branch + diff line - } - return offset -} - -// prLabelColumns returns the start and end X columns of the PR number label -// (e.g. "#123") on the PR header line, for click hit-testing. -func (m Model) prLabelColumns(idx int) (int, int) { - node := m.nodes[idx] - // Layout: "├ " (2) + optional status icon + " " (2) + "#N..." - col := 2 // bullet + space - icon := shared.StatusIcon(toBranchNodeData(node)) - if icon != "" { - col += 2 // icon (1 visible char) + space - } - prLabel := fmt.Sprintf("#%d", node.PR.Number) - return col, col + len(prLabel) -} - // ensureVisible adjusts scroll offset so the cursor is visible. func (m *Model) ensureVisible() { if m.height == 0 { @@ -448,7 +359,6 @@ func (m Model) View() string { shared.RenderTrunk(&b, m.trunk.Branch) content := b.String() - contentLines := strings.Split(content, "\n") // Apply scrolling reservedLines := 0 @@ -460,22 +370,7 @@ func (m Model) View() string { viewHeight = 1 } - // Clamp scroll offset so we can't scroll past content - maxScroll := len(contentLines) - viewHeight - if maxScroll < 0 { - maxScroll = 0 - } - start := m.scrollOffset - if start > maxScroll { - start = maxScroll - } - end := start + viewHeight - if end > len(contentLines) { - end = len(contentLines) - } - - visibleContent := strings.Join(contentLines[start:end], "\n") - out.WriteString(visibleContent) + out.WriteString(shared.ApplyScrollToContent(content, m.scrollOffset, viewHeight)) return out.String() } @@ -540,15 +435,3 @@ func (m Model) renderNode(b *strings.Builder, idx int) { isFocused := idx == m.cursor shared.RenderNode(b, toBranchNodeData(node), isFocused, m.width, nil) } - -// browserCmd returns an exec.Cmd to open a URL in the default browser. -func browserCmd(url string) *exec.Cmd { - switch runtime.GOOS { - case "darwin": - return exec.Command("open", url) - case "windows": - return exec.Command("cmd", "/c", "start", url) - default: - return exec.Command("xdg-open", url) - } -} From 7636f501678d9f468179bce9da3c8153955c5b23 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 12:49:11 -0400 Subject: [PATCH 14/26] more detailed help instructions Co-authored-by: Copilot --- cmd/modify.go | 2 +- internal/modify/apply.go | 13 +++-- internal/tui/modifyview/help.go | 75 +++++++++++++++------------- internal/tui/shared/header.go | 12 ++--- internal/tui/stackview/model.go | 2 +- internal/tui/stackview/model_test.go | 8 +-- 6 files changed, 63 insertions(+), 49 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index 31d46cb..0d689cc 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -164,7 +164,7 @@ func printModifySuccess(cfg *config.Config, result *modifyview.ApplyResult) { } cfg.Printf("") - cfg.Printf("Run `%s` to push branches and recreate the stack on GitHub", + cfg.Printf("Run `%s` to push your changes and update the stack of PRs on GitHub", cfg.ColorCyan("gh stack submit")) } diff --git a/internal/modify/apply.go b/internal/modify/apply.go index e53c216..f89396b 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -587,7 +587,13 @@ func ContinueApply( cfg.Printf(" %s", f) } } - return fmt.Errorf("rebase conflict on %s — resolve and run `gh stack modify --continue` again", branchName) + cfg.Printf("") + cfg.Printf("Resolve the conflicts, stage with `%s`, then run `%s`", + cfg.ColorCyan("git add "), + cfg.ColorCyan("gh stack modify --continue")) + cfg.Printf("Or restore the stack with `%s`", + cfg.ColorCyan("gh stack modify --recover")) + return fmt.Errorf("rebase conflict on %s", branchName) } cfg.Successf("Rebased %s onto %s", branchName, newBase) @@ -619,8 +625,9 @@ func ContinueApply( cfg.Warningf("failed to save stack: %v", err) } - cfg.Successf("Modify apply completed") - cfg.Printf("Run `%s` to push branches and recreate the stack on GitHub", + cfg.Successf("Stack modified successfully") + cfg.Printf("") + cfg.Printf("Run `%s` to push your changes and update the stack of PRs on GitHub", cfg.ColorCyan("gh stack submit")) return nil } diff --git a/internal/tui/modifyview/help.go b/internal/tui/modifyview/help.go index 6aa5026..ad25db3 100644 --- a/internal/tui/modifyview/help.go +++ b/internal/tui/modifyview/help.go @@ -6,51 +6,58 @@ import ( "github.com/charmbracelet/lipgloss" ) -type helpEntry struct { - keys string - desc string -} - -var helpEntries = []helpEntry{ - {"↑/↓, k/j", "Select branch"}, - {"f", "View files changed"}, - {"c", "View commits"}, - {"x", "Drop branch from stack"}, - {"r", "Rename branch"}, - {"u", "Fold up (merge into branch above)"}, - {"d", "Fold down (merge into branch below)"}, - {"shift+↑/↓, K/J", "Reorder branch up/down"}, - {"z", "Undo last action"}, - {"ctrl+s", "Apply all changes"}, - {"q/esc", "Cancel and exit (abandon changes)"}, -} - -// renderHelpOverlay renders a centered help overlay. +// renderHelpOverlay renders a centered help overlay with a guide to modify operations. func renderHelpOverlay(width, height int) string { var b strings.Builder - title := helpTitleStyle.Render("Keyboard Shortcuts") + title := helpTitleStyle.Render("Modify Stack") b.WriteString(title) - b.WriteString("\n\n") + b.WriteString("\n") + b.WriteString(helpDescStyle.Render("Restructure your stack by dropping, folding, renaming, or reordering branches.")) + b.WriteString("\n") - maxKeyWidth := 0 - for _, e := range helpEntries { - w := lipgloss.Width(e.keys) - if w > maxKeyWidth { - maxKeyWidth = w - } + sections := []struct { + heading string + body string + }{ + { + "Drop (x)", + "Remove a branch and its commits from the stack.\nThe local branch is preserved; the PR stays open on GitHub.", + }, + { + "Fold up / down (u / d)", + "Merge a branch's commits into an adjacent branch.\nFold up absorbs into the branch above; fold down into the branch below.", + }, + { + "Rename (r)", + "Rename a branch locally. The new name is pushed on submit.", + }, + { + "Reorder (Shift+↑/↓)", + "Move a branch up or down in the stack.\nA cascading rebase adjusts all affected branches.", + }, } - for _, e := range helpEntries { - keyVisWidth := lipgloss.Width(e.keys) - keyPad := strings.Repeat(" ", maxKeyWidth-keyVisWidth+2) - b.WriteString(helpKeyStyle.Render(e.keys)) - b.WriteString(keyPad) - b.WriteString(helpDescStyle.Render(e.desc)) + for _, s := range sections { b.WriteString("\n") + b.WriteString(helpKeyStyle.Render(s.heading)) + b.WriteString("\n") + for _, line := range strings.Split(s.body, "\n") { + b.WriteString(helpDescStyle.Render(line)) + b.WriteString("\n") + } } b.WriteString("\n") + b.WriteString(helpKeyStyle.Render("Applying changes")) + b.WriteString("\n") + b.WriteString(helpDescStyle.Render("Press " + helpKeyStyle.Render("Ctrl+S") + " to apply all staged changes. Nothing is modified until you save.")) + b.WriteString("\n") + b.WriteString(helpDescStyle.Render("If you have open PRs, run ") + helpKeyStyle.Render("gh stack submit") + helpDescStyle.Render(" afterwards to push the updated")) + b.WriteString("\n") + b.WriteString(helpDescStyle.Render("branches and recreate the stack of PRs on GitHub.")) + + b.WriteString("\n\n") b.WriteString(statusBarStyle.Render("Press ? or Esc to close")) content := b.String() diff --git a/internal/tui/shared/header.go b/internal/tui/shared/header.go index e33fc13..54d158c 100644 --- a/internal/tui/shared/header.go +++ b/internal/tui/shared/header.go @@ -51,12 +51,12 @@ const ArtDisplayWidth = 20 // HeaderConfig controls what the header displays. type HeaderConfig struct { - ShowArt bool // true for View (GitHub logo), false for Modify - Title string // "GitHub Stacks" or "Modify Mode" - Subtitle string // version string, or empty - InfoLines []HeaderInfoLine // info rows (stack info) - Shortcuts []ShortcutEntry // keyboard shortcuts - ShortcutColumns int // number of columns for shortcuts (default 1; set 2 for side-by-side) + ShowArt bool // whether to display GitHub logo + Title string // heading next to logo art + Subtitle string // version string, or empty + InfoLines []HeaderInfoLine // info rows (stack info) + Shortcuts []ShortcutEntry // keyboard shortcuts + ShortcutColumns int // number of columns for shortcuts (default 1; set 2 for side-by-side) } // ShouldShowHeader returns whether the header should be displayed. diff --git a/internal/tui/stackview/model.go b/internal/tui/stackview/model.go index 10506da..7c7159c 100644 --- a/internal/tui/stackview/model.go +++ b/internal/tui/stackview/model.go @@ -409,7 +409,7 @@ func (m Model) buildHeaderConfig() shared.HeaderConfig { return shared.HeaderConfig{ ShowArt: true, - Title: "GitHub Stacks", + Title: "View Stack", Subtitle: "v" + m.version, InfoLines: []shared.HeaderInfoLine{ {Icon: "✓", Label: "Stack initialized"}, diff --git a/internal/tui/stackview/model_test.go b/internal/tui/stackview/model_test.go index 96c72f0..c65882a 100644 --- a/internal/tui/stackview/model_test.go +++ b/internal/tui/stackview/model_test.go @@ -184,7 +184,7 @@ func TestView_HeaderShownWhenTallEnough(t *testing.T) { view := m.View() assert.Contains(t, view, "┌") assert.Contains(t, view, "┘") - assert.Contains(t, view, "GitHub Stacks") + assert.Contains(t, view, "View Stack") assert.Contains(t, view, "v0.0.1") assert.Contains(t, view, "Base: main") assert.Contains(t, view, "2 branches") @@ -203,7 +203,7 @@ func TestView_HeaderHiddenWhenShort(t *testing.T) { view := m.View() // Should NOT contain header box assert.NotContains(t, view, "┌") - assert.NotContains(t, view, "GitHub Stacks") + assert.NotContains(t, view, "View Stack") // Should NOT contain help bar either (hints are only in header) assert.NotContains(t, view, "commits") } @@ -218,7 +218,7 @@ func TestView_HeaderHiddenWhenNarrow(t *testing.T) { view := m.View() assert.NotContains(t, view, "┌") - assert.NotContains(t, view, "GitHub Stacks") + assert.NotContains(t, view, "View Stack") } func TestView_HeaderWithoutShortcutsWhenMediumWidth(t *testing.T) { @@ -231,7 +231,7 @@ func TestView_HeaderWithoutShortcutsWhenMediumWidth(t *testing.T) { view := m.View() assert.Contains(t, view, "┌", "header should be shown") - assert.Contains(t, view, "GitHub Stacks", "info should be shown") + assert.Contains(t, view, "View Stack", "info should be shown") assert.NotContains(t, view, "checkout", "shortcuts should be hidden at this width") } From d9a6ddefac2bbe95a54a80963297cacf862846a3 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 12:53:14 -0400 Subject: [PATCH 15/26] only recommend submit if stack exists on remote Co-authored-by: Copilot --- cmd/modify.go | 10 ++++++---- internal/modify/apply.go | 8 +++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index 0d689cc..e67206a 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -135,13 +135,13 @@ func runModify(cfg *config.Config) error { } // Print success summary - printModifySuccess(cfg, applyResult) + printModifySuccess(cfg, applyResult, s.ID != "") return nil } // printModifySuccess prints a summary of what was applied. -func printModifySuccess(cfg *config.Config, result *modifyview.ApplyResult) { +func printModifySuccess(cfg *config.Config, result *modifyview.ApplyResult, hasRemoteStack bool) { if result == nil { return } @@ -164,8 +164,10 @@ func printModifySuccess(cfg *config.Config, result *modifyview.ApplyResult) { } cfg.Printf("") - cfg.Printf("Run `%s` to push your changes and update the stack of PRs on GitHub", - cfg.ColorCyan("gh stack submit")) + if hasRemoteStack { + cfg.Printf("Run `%s` to push your changes and update the stack of PRs on GitHub", + cfg.ColorCyan("gh stack submit")) + } } // runModifyRecover handles recovery from a crashed modify session. diff --git a/internal/modify/apply.go b/internal/modify/apply.go index f89396b..ea73e48 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -626,9 +626,11 @@ func ContinueApply( } cfg.Successf("Stack modified successfully") - cfg.Printf("") - cfg.Printf("Run `%s` to push your changes and update the stack of PRs on GitHub", - cfg.ColorCyan("gh stack submit")) + if state.PriorRemoteStackID != "" { + cfg.Printf("") + cfg.Printf("Run `%s` to push your changes and update the stack of PRs on GitHub", + cfg.ColorCyan("gh stack submit")) + } return nil } From 90256066967ff9bccdb7d78cfa3f625cfcc5656a Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 13:28:03 -0400 Subject: [PATCH 16/26] tests for modify tui, apply modifications, submit modifications --- cmd/submit_test.go | 296 ++++++ internal/modify/apply_test.go | 1275 +++++++++++++++++++++++++ internal/tui/modifyview/model_test.go | 541 +++++++++++ 3 files changed, 2112 insertions(+) create mode 100644 internal/modify/apply_test.go diff --git a/cmd/submit_test.go b/cmd/submit_test.go index 07d67d4..901f7f3 100644 --- a/cmd/submit_test.go +++ b/cmd/submit_test.go @@ -1,6 +1,7 @@ package cmd import ( + "encoding/json" "fmt" "io" "net/url" @@ -11,6 +12,7 @@ import ( "github.com/github/gh-stack/internal/config" "github.com/github/gh-stack/internal/git" "github.com/github/gh-stack/internal/github" + "github.com/github/gh-stack/internal/modify" "github.com/github/gh-stack/internal/stack" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -1073,3 +1075,297 @@ func TestSubmit_PreflightCheck_SkippedWhenStackIDSet(t *testing.T) { // after PR creation), so expect exactly 2 ListStacks calls. assert.Equal(t, 2, listStacksCallCount, "ListStacks should only be called by syncStackPRs, not by the preflight check") } + +// --- Modify + Submit integration tests --- + +func saveModifyState(t *testing.T, gitDir string, state *modify.StateFile) { + t.Helper() + require.NoError(t, modify.SaveState(gitDir, state)) +} + +func newPendingSubmitState(priorStackID string) *modify.StateFile { + return &modify.StateFile{ + SchemaVersion: 1, + Phase: "pending_submit", + PriorRemoteStackID: priorStackID, + Snapshot: modify.Snapshot{StackMetadata: json.RawMessage(`{}`)}, + } +} + +func TestHandlePendingModify_DeletesOldStack(t *testing.T) { + gitDir := t.TempDir() + + saveModifyState(t, gitDir, newPendingSubmitState("stack-123")) + + s := &stack.Stack{ID: "stack-123", Trunk: stack.BranchRef{Branch: "main"}} + + var deletedStackID string + client := &github.MockClient{ + DeleteStackFn: func(id string) error { + deletedStackID = id + return nil + }, + } + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := handlePendingModify(cfg, client, s, gitDir) + require.NoError(t, err) + assert.Equal(t, "stack-123", deletedStackID) + assert.Equal(t, "", s.ID) +} + +func TestHandlePendingModify_NoStateFile(t *testing.T) { + gitDir := t.TempDir() + // No state file on disk. + + s := &stack.Stack{ID: "stack-123", Trunk: stack.BranchRef{Branch: "main"}} + + deleteCalled := false + client := &github.MockClient{ + DeleteStackFn: func(id string) error { + deleteCalled = true + return nil + }, + } + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := handlePendingModify(cfg, client, s, gitDir) + assert.NoError(t, err) + assert.False(t, deleteCalled, "DeleteStack should not be called when no state file exists") + assert.Equal(t, "stack-123", s.ID, "stack ID should remain unchanged") +} + +func TestHandlePendingModify_WrongPhase(t *testing.T) { + gitDir := t.TempDir() + + state := &modify.StateFile{ + SchemaVersion: 1, + Phase: "conflict", + Snapshot: modify.Snapshot{StackMetadata: json.RawMessage(`{}`)}, + } + saveModifyState(t, gitDir, state) + + s := &stack.Stack{ID: "stack-99", Trunk: stack.BranchRef{Branch: "main"}} + + deleteCalled := false + client := &github.MockClient{ + DeleteStackFn: func(id string) error { + deleteCalled = true + return nil + }, + } + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := handlePendingModify(cfg, client, s, gitDir) + assert.NoError(t, err) + assert.False(t, deleteCalled, "DeleteStack should not be called for non-pending_submit phase") + assert.Equal(t, "stack-99", s.ID, "stack ID should remain unchanged") +} + +func TestHandlePendingModify_DeleteFails(t *testing.T) { + gitDir := t.TempDir() + + saveModifyState(t, gitDir, newPendingSubmitState("stack-456")) + + s := &stack.Stack{ID: "stack-456", Trunk: stack.BranchRef{Branch: "main"}} + + client := &github.MockClient{ + DeleteStackFn: func(id string) error { + return fmt.Errorf("server error") + }, + } + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := handlePendingModify(cfg, client, s, gitDir) + assert.Error(t, err) + assert.Equal(t, "stack-456", s.ID, "stack ID should NOT be cleared on delete failure") +} + +func TestHandlePendingModify_Delete404(t *testing.T) { + gitDir := t.TempDir() + + saveModifyState(t, gitDir, newPendingSubmitState("stack-gone")) + + s := &stack.Stack{ID: "stack-gone", Trunk: stack.BranchRef{Branch: "main"}} + + client := &github.MockClient{ + DeleteStackFn: func(id string) error { + return &api.HTTPError{ + StatusCode: 404, + Message: "Not Found", + RequestURL: &url.URL{Path: "/repos/o/r/cli_internal/pulls/stacks/stack-gone"}, + } + }, + } + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := handlePendingModify(cfg, client, s, gitDir) + require.NoError(t, err, "404 should be treated as success (stack already deleted)") + assert.Equal(t, "", s.ID, "stack ID should be cleared after 404") +} + +func TestClearPendingModifyState_ClearsFile(t *testing.T) { + gitDir := t.TempDir() + + saveModifyState(t, gitDir, newPendingSubmitState("stack-789")) + require.True(t, modify.StateExists(gitDir), "precondition: state file should exist") + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + clearPendingModifyState(cfg, gitDir) + assert.False(t, modify.StateExists(gitDir), "state file should be removed") +} + +func TestClearPendingModifyState_NoFile(t *testing.T) { + gitDir := t.TempDir() + // No state file on disk. + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + // Should not panic or error. + clearPendingModifyState(cfg, gitDir) + assert.False(t, modify.StateExists(gitDir)) +} + +func TestSubmit_WithPendingModify_SequentialPush(t *testing.T) { + s := stack.Stack{ + ID: "old-stack-42", + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "b1", PullRequest: &stack.PullRequestRef{Number: 10}}, + {Branch: "b2", PullRequest: &stack.PullRequestRef{Number: 11}}, + {Branch: "b3", PullRequest: &stack.PullRequestRef{Number: 12}}, + }, + } + + tmpDir := t.TempDir() + writeStackFile(t, tmpDir, s) + saveModifyState(t, tmpDir, newPendingSubmitState("old-stack-42")) + + // Track call ordering + var callOrder []string + var pushCalls []pushCall + + mock := newSubmitMock(tmpDir, "b1") + mock.PushFn = func(remote string, branches []string, force, atomic bool) error { + pushCalls = append(pushCalls, pushCall{remote, branches, force, atomic}) + callOrder = append(callOrder, fmt.Sprintf("push:%s", branches[0])) + return nil + } + + restore := git.SetOps(mock) + defer restore() + + var deletedStackID string + var createdStackPRs []int + + cfg, _, errR := config.NewTestConfig() + cfg.GitHubClientOverride = &github.MockClient{ + DeleteStackFn: func(id string) error { + deletedStackID = id + callOrder = append(callOrder, "delete:"+id) + return nil + }, + FindPRForBranchFn: func(branch string) (*github.PullRequest, error) { + switch branch { + case "b1": + return &github.PullRequest{ + Number: 10, ID: "PR_10", + URL: "https://github.com/owner/repo/pull/10", + BaseRefName: "main", HeadRefName: "b1", + State: "OPEN", + }, nil + case "b2": + return &github.PullRequest{ + Number: 11, ID: "PR_11", + URL: "https://github.com/owner/repo/pull/11", + BaseRefName: "b1", HeadRefName: "b2", + State: "OPEN", + }, nil + case "b3": + return &github.PullRequest{ + Number: 12, ID: "PR_12", + URL: "https://github.com/owner/repo/pull/12", + BaseRefName: "b2", HeadRefName: "b3", + State: "OPEN", + }, nil + } + return nil, nil + }, + CreateStackFn: func(prNumbers []int) (int, error) { + createdStackPRs = prNumbers + callOrder = append(callOrder, "create_stack") + return 99, nil + }, + ListStacksFn: func() ([]github.RemoteStack, error) { + return []github.RemoteStack{}, nil + }, + } + + cmd := SubmitCmd(cfg) + cmd.SetArgs([]string{"--auto"}) + cmd.SetOut(io.Discard) + cmd.SetErr(io.Discard) + err := cmd.Execute() + + cfg.Err.Close() + _, _ = io.ReadAll(errR) + + assert.NoError(t, err) + + // DeleteStack called with old stack ID + assert.Equal(t, "old-stack-42", deletedStackID) + + // Push called per-branch (3 separate calls, not 1 atomic call) + require.Len(t, pushCalls, 3, "should push each branch individually") + assert.Equal(t, []string{"b1"}, pushCalls[0].branches) + assert.Equal(t, []string{"b2"}, pushCalls[1].branches) + assert.Equal(t, []string{"b3"}, pushCalls[2].branches) + for _, pc := range pushCalls { + assert.False(t, pc.atomic, "sequential push should not use atomic mode") + } + + // CreateStack called with all 3 PRs + assert.Equal(t, []int{10, 11, 12}, createdStackPRs) + + // Verify ordering: delete before push, push before create_stack + assert.True(t, len(callOrder) >= 5, "expected at least 5 calls, got %d: %v", len(callOrder), callOrder) + deleteIdx := -1 + firstPushIdx := -1 + createIdx := -1 + for i, c := range callOrder { + if c == "delete:old-stack-42" && deleteIdx == -1 { + deleteIdx = i + } + if c == "push:b1" && firstPushIdx == -1 { + firstPushIdx = i + } + if c == "create_stack" && createIdx == -1 { + createIdx = i + } + } + assert.Greater(t, firstPushIdx, deleteIdx, "delete should happen before push") + assert.Greater(t, createIdx, firstPushIdx, "create_stack should happen after push") + + // State file should be cleared + assert.False(t, modify.StateExists(tmpDir), "modify state file should be cleared after success") +} diff --git a/internal/modify/apply_test.go b/internal/modify/apply_test.go new file mode 100644 index 0000000..037c4df --- /dev/null +++ b/internal/modify/apply_test.go @@ -0,0 +1,1275 @@ +package modify + +import ( + "encoding/json" + "os" + "path/filepath" + "testing" + + "github.com/github/gh-stack/internal/config" + "github.com/github/gh-stack/internal/git" + "github.com/github/gh-stack/internal/stack" + "github.com/github/gh-stack/internal/tui/modifyview" + "github.com/github/gh-stack/internal/tui/stackview" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +// rebaseCall records arguments passed to RebaseOnto. +type rebaseCall struct { + newBase string + oldBase string + branch string +} + +// writeTestStackFile writes a stack file to disk and returns the loaded StackFile +// (with correct checksum for later Save calls). +func writeTestStackFile(t *testing.T, dir string, s stack.Stack) *stack.StackFile { + t.Helper() + sf := &stack.StackFile{ + SchemaVersion: 1, + Stacks: []stack.Stack{s}, + } + data, err := json.MarshalIndent(sf, "", " ") + require.NoError(t, err) + require.NoError(t, os.WriteFile(filepath.Join(dir, "gh-stack"), data, 0644)) + // Reload so the StackFile has the correct loadChecksum for Save. + loaded, err := stack.Load(dir) + require.NoError(t, err) + return loaded +} + +// newApplyMock creates a MockOps pre-configured for apply tests. +func newApplyMock(gitDir string, branchSHAs map[string]string) *git.MockOps { + return &git.MockOps{ + GitDirFn: func() (string, error) { return gitDir, nil }, + CurrentBranchFn: func() (string, error) { return "main", nil }, + BranchExistsFn: func(name string) bool { return true }, + RevParseFn: func(ref string) (string, error) { + if sha, ok := branchSHAs[ref]; ok { + return sha, nil + } + return "sha-" + ref, nil + }, + IsAncestorFn: func(a, d string) (bool, error) { return false, nil }, + MergeBaseFn: func(a, b string) (string, error) { return "merge-base", nil }, + CheckoutBranchFn: func(string) error { return nil }, + RebaseOntoFn: func(string, string, string) error { return nil }, + IsRebaseInProgressFn: func() bool { return false }, + RenameBranchFn: func(string, string) error { return nil }, + LogRangeFn: func(base, head string) ([]git.CommitInfo, error) { + return []git.CommitInfo{{SHA: "commit-1"}, {SHA: "commit-2"}}, nil + }, + CherryPickFn: func([]string) error { return nil }, + ConflictedFilesFn: func() ([]string, error) { return nil, nil }, + ResetHardFn: func(string) error { return nil }, + CreateBranchFn: func(string, string) error { return nil }, + RebaseAbortFn: func() error { return nil }, + } +} + +// makeNodes creates ModifyBranchNodes from a stack for testing. +func makeNodes(s *stack.Stack) []modifyview.ModifyBranchNode { + nodes := make([]modifyview.ModifyBranchNode, len(s.Branches)) + for i, b := range s.Branches { + nodes[i] = modifyview.ModifyBranchNode{ + BranchNode: stackview.BranchNode{ + Ref: b, + }, + OriginalPosition: i, + } + } + return nodes +} + +func noopUpdateBaseSHAs(s *stack.Stack) {} + +// ─── BuildSnapshot ─────────────────────────────────────────────────────────── + +func TestBuildSnapshot(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + branchSHAs := map[string]string{ + "A": "sha-aaa", + "B": "sha-bbb", + } + mock := &git.MockOps{ + RevParseFn: func(ref string) (string, error) { + if sha, ok := branchSHAs[ref]; ok { + return sha, nil + } + return "sha-" + ref, nil + }, + } + restore := git.SetOps(mock) + defer restore() + + snap, err := BuildSnapshot(&s) + require.NoError(t, err) + require.Len(t, snap.Branches, 2) + + assert.Equal(t, "A", snap.Branches[0].Name) + assert.Equal(t, "sha-aaa", snap.Branches[0].TipSHA) + assert.Equal(t, 0, snap.Branches[0].Position) + + assert.Equal(t, "B", snap.Branches[1].Name) + assert.Equal(t, "sha-bbb", snap.Branches[1].TipSHA) + assert.Equal(t, 1, snap.Branches[1].Position) + + // Verify stack metadata round-trips through JSON + var restored stack.Stack + require.NoError(t, json.Unmarshal(snap.StackMetadata, &restored)) + assert.Equal(t, "main", restored.Trunk.Branch) + assert.Equal(t, "A", restored.Branches[0].Branch) + assert.Equal(t, "B", restored.Branches[1].Branch) +} + +// ─── BuildPlan ─────────────────────────────────────────────────────────────── + +func TestBuildPlan_VariousActions(t *testing.T) { + t.Run("no changes produces empty plan", func(t *testing.T) { + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "A"}}, + OriginalPosition: 0, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "B"}}, + OriginalPosition: 1, + }, + } + plan := BuildPlan(nodes) + assert.Empty(t, plan) + }) + + t.Run("rename produces rename action", func(t *testing.T) { + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "A"}}, + OriginalPosition: 0, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionRename, NewName: "new-A"}, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "B"}}, + OriginalPosition: 1, + }, + } + plan := BuildPlan(nodes) + require.Len(t, plan, 1) + assert.Equal(t, "rename", plan[0].Type) + assert.Equal(t, "A", plan[0].Branch) + assert.Equal(t, "new-A", plan[0].NewName) + }) + + t.Run("move produces move action", func(t *testing.T) { + // Original order: A(0), B(1), C(2). Desired: A(0), C(1), B(2) + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "A"}}, + OriginalPosition: 0, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "C"}}, + OriginalPosition: 2, + }, + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "B"}}, + OriginalPosition: 1, + }, + } + plan := BuildPlan(nodes) + // C moved from 2→1, B moved from 1→2 + require.Len(t, plan, 2) + assert.Equal(t, "move", plan[0].Type) + assert.Equal(t, "C", plan[0].Branch) + assert.Equal(t, 1, plan[0].NewPosition) + assert.Equal(t, "move", plan[1].Type) + assert.Equal(t, "B", plan[1].Branch) + assert.Equal(t, 2, plan[1].NewPosition) + }) + + t.Run("removed nodes with drop action not in plan directly", func(t *testing.T) { + // BuildPlan skips Removed nodes — the drop is recorded by the non-removed + // logic. But nodes with PendingAction and NOT Removed do get recorded. + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: stack.BranchRef{Branch: "A"}}, + OriginalPosition: 0, + Removed: true, + PendingAction: &modifyview.PendingAction{Type: modifyview.ActionDrop}, + }, + } + plan := BuildPlan(nodes) + // Removed == true, so it's skipped in BuildPlan + assert.Empty(t, plan) + }) +} + +// ─── ApplyPlan: Drop ───────────────────────────────────────────────────────── + +func TestApplyPlan_Drop(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B", PullRequest: &stack.PullRequestRef{Number: 42}}, + {Branch: "C"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + "C": "sha-C", + } + + var rebaseCalls []rebaseCall + mock := newApplyMock(gitDir, branchSHAs) + mock.RebaseOntoFn = func(newBase, oldBase, branch string) error { + rebaseCalls = append(rebaseCalls, rebaseCall{newBase, oldBase, branch}) + return nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + // Build nodes: Drop B + nodes := makeNodes(&sf.Stacks[0]) + nodes[1].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionDrop} + nodes[1].Removed = true + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // B should be removed from stack + assert.Equal(t, 2, len(sf.Stacks[0].Branches)) + assert.Equal(t, "A", sf.Stacks[0].Branches[0].Branch) + assert.Equal(t, "C", sf.Stacks[0].Branches[1].Branch) + + // B's PR should be in DroppedPRs + require.Len(t, result.DroppedPRs, 1) + assert.Equal(t, "B", result.DroppedPRs[0].Branch) + assert.Equal(t, 42, result.DroppedPRs[0].PRNumber) + + // C should be rebased onto A (B's parent), with B's old tip as oldBase + var cRebase *rebaseCall + for _, rc := range rebaseCalls { + if rc.branch == "C" { + cRebase = &rc + break + } + } + require.NotNil(t, cRebase, "C should be rebased") + assert.Equal(t, "A", cRebase.newBase) +} + +// ─── ApplyPlan: FoldDown ───────────────────────────────────────────────────── + +func TestApplyPlan_FoldDown(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + var cherryPickCalls [][]string + var checkoutCalls []string + + mock := newApplyMock(gitDir, branchSHAs) + mock.CheckoutBranchFn = func(name string) error { + checkoutCalls = append(checkoutCalls, name) + return nil + } + mock.CherryPickFn = func(shas []string) error { + cherryPickCalls = append(cherryPickCalls, shas) + return nil + } + mock.LogRangeFn = func(base, head string) ([]git.CommitInfo, error) { + if base == "A" && head == "B" { + return []git.CommitInfo{ + {SHA: "commit-b2"}, + {SHA: "commit-b1"}, + }, nil + } + return nil, nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + nodes[1].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionFoldDown} + nodes[1].Removed = true + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // CheckoutBranch should be called with "A" (the target below) + assert.Contains(t, checkoutCalls, "A") + + // CherryPick should be called with B's commit SHAs (reversed for chronological order) + require.Len(t, cherryPickCalls, 1) + assert.Equal(t, []string{"commit-b1", "commit-b2"}, cherryPickCalls[0]) + + // B should be removed from stack + assert.Equal(t, 1, len(sf.Stacks[0].Branches)) + assert.Equal(t, "A", sf.Stacks[0].Branches[0].Branch) +} + +// ─── ApplyPlan: FoldUp ─────────────────────────────────────────────────────── + +func TestApplyPlan_FoldUp(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + {Branch: "C"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + "C": "sha-C", + } + + var cherryPickCalls [][]string + var rebaseCalls []rebaseCall + + mock := newApplyMock(gitDir, branchSHAs) + mock.CherryPickFn = func(shas []string) error { + cherryPickCalls = append(cherryPickCalls, shas) + return nil + } + mock.RebaseOntoFn = func(newBase, oldBase, branch string) error { + rebaseCalls = append(rebaseCalls, rebaseCall{newBase, oldBase, branch}) + return nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + nodes[1].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionFoldUp} + nodes[1].Removed = true + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // Fold-up should NOT call CherryPick + assert.Empty(t, cherryPickCalls, "fold-up should not cherry-pick") + + // B should be removed from stack + assert.Equal(t, 2, len(sf.Stacks[0].Branches)) + assert.Equal(t, "A", sf.Stacks[0].Branches[0].Branch) + assert.Equal(t, "C", sf.Stacks[0].Branches[1].Branch) + + // C's rebase should use B's base (A's tip) as oldBase, not B's tip. + // The fold-up adjusts originalParentTips[C] = originalParentTips[B] = sha-A + var cRebase *rebaseCall + for _, rc := range rebaseCalls { + if rc.branch == "C" { + cRebase = &rc + break + } + } + require.NotNil(t, cRebase, "C should be rebased") + assert.Equal(t, "A", cRebase.newBase, "C should rebase onto A (B's parent)") + assert.Equal(t, "sha-A", cRebase.oldBase, "C should use A's tip (B's original parent tip) as oldBase") +} + +// ─── ApplyPlan: Rename ─────────────────────────────────────────────────────── + +func TestApplyPlan_Rename(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + var renameCalls []struct{ oldName, newName string } + + mock := newApplyMock(gitDir, branchSHAs) + mock.RenameBranchFn = func(old, new string) error { + renameCalls = append(renameCalls, struct{ oldName, newName string }{old, new}) + return nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + nodes[0].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionRename, NewName: "new-A"} + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "B", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // RenameBranch called with correct args + require.Len(t, renameCalls, 1) + assert.Equal(t, "A", renameCalls[0].oldName) + assert.Equal(t, "new-A", renameCalls[0].newName) + + // In-memory branch name updated + assert.Equal(t, "new-A", sf.Stacks[0].Branches[0].Branch) + + // Result tracks rename + require.Len(t, result.RenamedBranches, 1) + assert.Equal(t, "A", result.RenamedBranches[0].OldName) + assert.Equal(t, "new-A", result.RenamedBranches[0].NewName) +} + +// ─── ApplyPlan: Reorder ────────────────────────────────────────────────────── + +func TestApplyPlan_Reorder(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + {Branch: "C"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + "C": "sha-C", + } + + var rebaseCalls []rebaseCall + + mock := newApplyMock(gitDir, branchSHAs) + mock.RebaseOntoFn = func(newBase, oldBase, branch string) error { + rebaseCalls = append(rebaseCalls, rebaseCall{newBase, oldBase, branch}) + return nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + // Desired order: A, C, B (move C between A and B) + nodes := []modifyview.ModifyBranchNode{ + { + BranchNode: stackview.BranchNode{Ref: sf.Stacks[0].Branches[0]}, // A + OriginalPosition: 0, + }, + { + BranchNode: stackview.BranchNode{Ref: sf.Stacks[0].Branches[2]}, // C + OriginalPosition: 2, + }, + { + BranchNode: stackview.BranchNode{Ref: sf.Stacks[0].Branches[1]}, // B + OriginalPosition: 1, + }, + } + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // Verify stack order is now A, C, B + require.Len(t, sf.Stacks[0].Branches, 3) + assert.Equal(t, "A", sf.Stacks[0].Branches[0].Branch) + assert.Equal(t, "C", sf.Stacks[0].Branches[1].Branch) + assert.Equal(t, "B", sf.Stacks[0].Branches[2].Branch) + + // Both C and B should be rebased onto their new parents + rebaseMap := make(map[string]rebaseCall) + for _, rc := range rebaseCalls { + rebaseMap[rc.branch] = rc + } + + if cCall, ok := rebaseMap["C"]; ok { + assert.Equal(t, "A", cCall.newBase, "C should be rebased onto A") + } + if bCall, ok := rebaseMap["B"]; ok { + assert.Equal(t, "C", bCall.newBase, "B should be rebased onto C") + } +} + +// ─── ApplyPlan: Mixed Drop and Fold ───────────────────────────────────────── + +func TestApplyPlan_MixedDropAndFold(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + {Branch: "C"}, + {Branch: "D"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + "C": "sha-C", + "D": "sha-D", + } + + var cherryPickCalls [][]string + var checkoutCalls []string + var rebaseCalls []rebaseCall + + mock := newApplyMock(gitDir, branchSHAs) + mock.CheckoutBranchFn = func(name string) error { + checkoutCalls = append(checkoutCalls, name) + return nil + } + mock.CherryPickFn = func(shas []string) error { + cherryPickCalls = append(cherryPickCalls, shas) + return nil + } + mock.LogRangeFn = func(base, head string) ([]git.CommitInfo, error) { + if head == "C" { + return []git.CommitInfo{{SHA: "c-commit-1"}}, nil + } + return nil, nil + } + mock.RebaseOntoFn = func(newBase, oldBase, branch string) error { + rebaseCalls = append(rebaseCalls, rebaseCall{newBase, oldBase, branch}) + return nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + // Drop B, fold C down into A + nodes := makeNodes(&sf.Stacks[0]) + nodes[1].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionDrop} + nodes[1].Removed = true + nodes[2].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionFoldDown} + nodes[2].Removed = true + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // B and C should be removed, leaving A and D + branchNames := make([]string, len(sf.Stacks[0].Branches)) + for i, b := range sf.Stacks[0].Branches { + branchNames[i] = b.Branch + } + assert.Equal(t, []string{"A", "D"}, branchNames) + + // C's commits should have been cherry-picked onto A + require.Len(t, cherryPickCalls, 1) + + // D should be rebased onto A + var dRebase *rebaseCall + for _, rc := range rebaseCalls { + if rc.branch == "D" { + dRebase = &rc + break + } + } + require.NotNil(t, dRebase, "D should be rebased") + assert.Equal(t, "A", dRebase.newBase, "D should be rebased onto A") +} + +// ─── ApplyPlan: Conflict During Rebase ─────────────────────────────────────── + +func TestApplyPlan_ConflictDuringRebase(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + mock := newApplyMock(gitDir, branchSHAs) + mock.RebaseOntoFn = func(newBase, oldBase, branch string) error { + if branch == "B" { + return assert.AnError + } + return nil + } + mock.ConflictedFilesFn = func() ([]string, error) { + return []string{"file.go"}, nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + // Drop A so B must rebase onto main + nodes := makeNodes(&sf.Stacks[0]) + nodes[0].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionDrop} + nodes[0].Removed = true + + _, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + assert.Error(t, err) + require.NotNil(t, conflict) + assert.Equal(t, "B", conflict.Branch) + assert.Contains(t, conflict.ConflictedFiles, "file.go") + + // Verify state file written with phase "conflict" + state, loadErr := LoadState(gitDir) + require.NoError(t, loadErr) + require.NotNil(t, state) + assert.Equal(t, "conflict", state.Phase) + assert.Equal(t, "B", state.ConflictBranch) +} + +// ─── ApplyPlan: Conflict During CherryPick ─────────────────────────────────── + +func TestApplyPlan_ConflictDuringCherryPick(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + mock := newApplyMock(gitDir, branchSHAs) + mock.CherryPickFn = func(shas []string) error { + return assert.AnError + } + mock.LogRangeFn = func(base, head string) ([]git.CommitInfo, error) { + return []git.CommitInfo{{SHA: "commit-1"}}, nil + } + mock.ConflictedFilesFn = func() ([]string, error) { + return []string{"conflict.go"}, nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + // Fold B down into A + nodes := makeNodes(&sf.Stacks[0]) + nodes[1].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionFoldDown} + nodes[1].Removed = true + + _, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + assert.Error(t, err) + require.NotNil(t, conflict) + assert.Equal(t, "B", conflict.Branch) + + // Cherry-pick conflicts return a conflict immediately (no "conflict" state for continue) + state, loadErr := LoadState(gitDir) + require.NoError(t, loadErr) + // The state file is created with "applying" phase before the conflict, + // but cherry-pick conflicts don't update it to "conflict" + if state != nil { + assert.NotEqual(t, "conflict", state.Phase, + "cherry-pick conflicts should not set phase to 'conflict'") + } +} + +// ─── Unwind ────────────────────────────────────────────────────────────────── + +func TestUnwind(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + // Build a snapshot of the original state + branchSHAs := map[string]string{ + "A": "sha-A-original", + "B": "sha-B-original", + } + + snapshotMock := &git.MockOps{ + RevParseFn: func(ref string) (string, error) { + if sha, ok := branchSHAs[ref]; ok { + return sha, nil + } + return "sha-" + ref, nil + }, + } + restore := git.SetOps(snapshotMock) + snapshot, err := BuildSnapshot(&s) + require.NoError(t, err) + restore() + + // Save a state file + stateFile := &StateFile{ + SchemaVersion: 1, + StackName: "main", + StackIndex: 0, + Phase: "applying", + Snapshot: snapshot, + } + require.NoError(t, SaveState(gitDir, stateFile)) + + // Simulate partial apply: modify the stack + sf.Stacks[0].Branches = []stack.BranchRef{{Branch: "A"}} // B was removed + + var resetCalls []struct{ branch, sha string } + var checkoutCalls []string + currentBranch := "A" + + mock := &git.MockOps{ + IsRebaseInProgressFn: func() bool { return false }, + BranchExistsFn: func(name string) bool { return true }, + CheckoutBranchFn: func(name string) error { + checkoutCalls = append(checkoutCalls, name) + currentBranch = name + return nil + }, + ResetHardFn: func(ref string) error { + resetCalls = append(resetCalls, struct{ branch, sha string }{currentBranch, ref}) + return nil + }, + CreateBranchFn: func(name, base string) error { return nil }, + } + + restore = git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err = Unwind(cfg, gitDir, snapshot, 0, sf) + require.NoError(t, err) + + // ResetHard should be called for each branch with snapshot SHAs + resetMap := make(map[string]string) + for _, r := range resetCalls { + resetMap[r.branch] = r.sha + } + assert.Equal(t, "sha-A-original", resetMap["A"]) + assert.Equal(t, "sha-B-original", resetMap["B"]) + + // Stack should be restored to original (2 branches) + assert.Equal(t, 2, len(sf.Stacks[0].Branches)) + assert.Equal(t, "A", sf.Stacks[0].Branches[0].Branch) + assert.Equal(t, "B", sf.Stacks[0].Branches[1].Branch) + + // State file should be cleared + assert.False(t, StateExists(gitDir)) +} + +// ─── ApplyPlan: No-op (empty plan) ────────────────────────────────────────── + +func TestApplyPlan_NoChanges(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + mock := newApplyMock(gitDir, branchSHAs) + // Make IsAncestor return true and MergeBase match oldBase to skip rebases + mock.IsAncestorFn = func(a, d string) (bool, error) { return true, nil } + mock.MergeBaseFn = func(a, b string) (string, error) { + // Return the parent tip SHA so the "no rebase needed" check passes + if a == "main" && b == "A" { + return branchSHAs["main"], nil + } + if a == "A" && b == "B" { + return branchSHAs["A"], nil + } + return "merge-base", nil + } + + var rebaseCalls int + mock.RebaseOntoFn = func(string, string, string) error { + rebaseCalls++ + return nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + assert.True(t, result.Success) + assert.Equal(t, 0, rebaseCalls, "no rebase should be needed when nothing changed") +} + +// ─── ApplyPlan: Drop with no PR ───────────────────────────────────────────── + +func TestApplyPlan_DropNoPR(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + mock := newApplyMock(gitDir, branchSHAs) + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + nodes[0].PendingAction = &modifyview.PendingAction{Type: modifyview.ActionDrop} + nodes[0].Removed = true + + result, conflict, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "B", noopUpdateBaseSHAs) + require.NoError(t, err) + assert.Nil(t, conflict) + require.NotNil(t, result) + + // No PR means no DroppedPRs entry + assert.Empty(t, result.DroppedPRs) + + // A should be removed + assert.Equal(t, 1, len(sf.Stacks[0].Branches)) + assert.Equal(t, "B", sf.Stacks[0].Branches[0].Branch) +} + +// ─── ContinueApply ────────────────────────────────────────────────────────── + +func TestContinueApply(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + {Branch: "C"}, + }, + } + + gitDir := t.TempDir() + _ = writeTestStackFile(t, gitDir, s) + + // Write a conflict state file + stateFile := &StateFile{ + SchemaVersion: 1, + StackName: "main", + StackIndex: 0, + Phase: "conflict", + ConflictBranch: "B", + RemainingBranches: []string{"C"}, + OriginalBranch: "A", + OriginalRefs: map[string]string{ + "A": "sha-A", + "B": "sha-B", + "C": "sha-C", + }, + } + require.NoError(t, SaveState(gitDir, stateFile)) + + var rebaseContinueCalled bool + var rebaseCalls []rebaseCall + var checkoutCalls []string + + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return gitDir, nil }, + CurrentBranchFn: func() (string, error) { return "B", nil }, + BranchExistsFn: func(string) bool { return true }, + IsRebaseInProgressFn: func() bool { return true }, + RebaseContinueFn: func() error { + rebaseContinueCalled = true + return nil + }, + RebaseOntoFn: func(newBase, oldBase, branch string) error { + rebaseCalls = append(rebaseCalls, rebaseCall{newBase, oldBase, branch}) + return nil + }, + CheckoutBranchFn: func(name string) error { + checkoutCalls = append(checkoutCalls, name) + return nil + }, + IsAncestorFn: func(a, d string) (bool, error) { return false, nil }, + MergeBaseFn: func(a, b string) (string, error) { return "merge-base", nil }, + RevParseFn: func(ref string) (string, error) { return "sha-" + ref, nil }, + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := ContinueApply(cfg, gitDir, noopUpdateBaseSHAs) + require.NoError(t, err) + + assert.True(t, rebaseContinueCalled, "RebaseContinue should be called") + + // C should be rebased + require.Len(t, rebaseCalls, 1) + assert.Equal(t, "C", rebaseCalls[0].branch) + assert.Equal(t, "B", rebaseCalls[0].newBase) + assert.Equal(t, "sha-C", rebaseCalls[0].oldBase) + + // Should checkout original branch + assert.Contains(t, checkoutCalls, "A") + + // State file should be cleared (no remote stack ID) + assert.False(t, StateExists(gitDir)) +} + +func TestContinueApply_NoStateFile(t *testing.T) { + gitDir := t.TempDir() + + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return gitDir, nil }, + } + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := ContinueApply(cfg, gitDir, noopUpdateBaseSHAs) + assert.Error(t, err) + assert.Contains(t, err.Error(), "no modify state file found") +} + +func TestContinueApply_WrongPhase(t *testing.T) { + gitDir := t.TempDir() + + stateFile := &StateFile{ + SchemaVersion: 1, + Phase: "applying", + } + require.NoError(t, SaveState(gitDir, stateFile)) + + mock := &git.MockOps{ + GitDirFn: func() (string, error) { return gitDir, nil }, + } + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err := ContinueApply(cfg, gitDir, noopUpdateBaseSHAs) + assert.Error(t, err) + assert.Contains(t, err.Error(), "no modify conflict in progress") +} + +// ─── Unwind with active rebase ────────────────────────────────────────────── + +func TestUnwind_AbortsActiveRebase(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + snapshotMock := &git.MockOps{ + RevParseFn: func(ref string) (string, error) { return "sha-" + ref, nil }, + } + restore := git.SetOps(snapshotMock) + snapshot, err := BuildSnapshot(&s) + require.NoError(t, err) + restore() + + require.NoError(t, SaveState(gitDir, &StateFile{ + SchemaVersion: 1, Phase: "conflict", Snapshot: snapshot, + })) + + var rebaseAbortCalled bool + mock := &git.MockOps{ + IsRebaseInProgressFn: func() bool { return true }, + RebaseAbortFn: func() error { + rebaseAbortCalled = true + return nil + }, + BranchExistsFn: func(string) bool { return true }, + CheckoutBranchFn: func(string) error { return nil }, + ResetHardFn: func(string) error { return nil }, + CreateBranchFn: func(string, string) error { return nil }, + } + + restore = git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err = Unwind(cfg, gitDir, snapshot, 0, sf) + require.NoError(t, err) + assert.True(t, rebaseAbortCalled, "RebaseAbort should be called when rebase is in progress") + assert.False(t, StateExists(gitDir)) +} + +// ─── Unwind restores renamed branch ───────────────────────────────────────── + +func TestUnwind_RestoresRenamedBranch(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + snapshotMock := &git.MockOps{ + RevParseFn: func(ref string) (string, error) { return "sha-" + ref, nil }, + } + restore := git.SetOps(snapshotMock) + snapshot, err := BuildSnapshot(&s) + require.NoError(t, err) + restore() + + // Simulate: A was renamed to new-A, so A no longer exists + var createdBranches []struct{ name, sha string } + mock := &git.MockOps{ + IsRebaseInProgressFn: func() bool { return false }, + BranchExistsFn: func(name string) bool { + return name != "A" // A was renamed away + }, + CreateBranchFn: func(name, sha string) error { + createdBranches = append(createdBranches, struct{ name, sha string }{name, sha}) + return nil + }, + CheckoutBranchFn: func(string) error { return nil }, + ResetHardFn: func(string) error { return nil }, + } + + restore = git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err = Unwind(cfg, gitDir, snapshot, 0, sf) + require.NoError(t, err) + + // A should be recreated via CreateBranch + require.Len(t, createdBranches, 1) + assert.Equal(t, "A", createdBranches[0].name) + assert.Equal(t, "sha-A", createdBranches[0].sha) +} + +// ─── ApplyPlan: State file transitions for remote stack ───────────────────── + +func TestApplyPlan_PendingSubmitForRemoteStack(t *testing.T) { + s := stack.Stack{ + ID: "remote-stack-123", + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + "B": "sha-B", + } + + mock := newApplyMock(gitDir, branchSHAs) + mock.IsAncestorFn = func(a, d string) (bool, error) { return true, nil } + mock.MergeBaseFn = func(a, b string) (string, error) { + if a == "main" && b == "A" { + return branchSHAs["main"], nil + } + if a == "A" && b == "B" { + return branchSHAs["A"], nil + } + return "merge-base", nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + + _, _, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + + // Remote stack should transition to "pending_submit" + state, loadErr := LoadState(gitDir) + require.NoError(t, loadErr) + require.NotNil(t, state) + assert.Equal(t, "pending_submit", state.Phase) +} + +func TestApplyPlan_ClearsStateForLocalStack(t *testing.T) { + s := stack.Stack{ + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + }, + } + + gitDir := t.TempDir() + sf := writeTestStackFile(t, gitDir, s) + + branchSHAs := map[string]string{ + "main": "sha-main", + "A": "sha-A", + } + + mock := newApplyMock(gitDir, branchSHAs) + mock.IsAncestorFn = func(a, d string) (bool, error) { return true, nil } + mock.MergeBaseFn = func(a, b string) (string, error) { + return branchSHAs["main"], nil + } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + nodes := makeNodes(&sf.Stacks[0]) + + _, _, err := ApplyPlan(cfg, gitDir, &sf.Stacks[0], sf, nodes, "A", noopUpdateBaseSHAs) + require.NoError(t, err) + + // Local stack (no ID) should clear the state file + assert.False(t, StateExists(gitDir)) +} diff --git a/internal/tui/modifyview/model_test.go b/internal/tui/modifyview/model_test.go index ac85816..fd61cca 100644 --- a/internal/tui/modifyview/model_test.go +++ b/internal/tui/modifyview/model_test.go @@ -3,11 +3,552 @@ package modifyview import ( "testing" + tea "github.com/charmbracelet/bubbletea" "github.com/github/gh-stack/internal/stack" "github.com/github/gh-stack/internal/tui/stackview" "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" ) +// makeNode creates a test ModifyBranchNode with sensible defaults. +func makeNode(branch string, isCurrent bool, pos int) ModifyBranchNode { + return ModifyBranchNode{ + BranchNode: stackview.BranchNode{ + Ref: stack.BranchRef{Branch: branch}, + IsCurrent: isCurrent, + IsLinear: true, + }, + OriginalPosition: pos, + } +} + +// makeMergedNode creates a merged test node (IsMerged() returns true). +func makeMergedNode(branch string, pos int) ModifyBranchNode { + return ModifyBranchNode{ + BranchNode: stackview.BranchNode{ + Ref: stack.BranchRef{ + Branch: branch, + PullRequest: &stack.PullRequestRef{Number: 1, Merged: true}, + }, + IsLinear: true, + }, + OriginalPosition: pos, + } +} + +var testTrunk = stack.BranchRef{Branch: "main"} + +// sendKey sends a key message to the model and returns the updated Model. +func sendKey(t *testing.T, m Model, msg tea.KeyMsg) Model { + t.Helper() + updated, _ := m.Update(msg) + return updated.(Model) +} + +func runeKey(r rune) tea.KeyMsg { + return tea.KeyMsg{Type: tea.KeyRunes, Runes: []rune{r}} +} + +// --- New() constructor tests --- + +func TestNew_CursorDefaultsToCurrentBranch(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("b0", false, 0), + makeNode("b1", false, 1), + makeNode("b2", true, 2), + makeNode("b3", false, 3), + } + m := New(nodes, testTrunk, "1.0.0") + assert.Equal(t, 2, m.cursor, "cursor should be on the IsCurrent node") +} + +func TestNew_CursorFallsBackToFirstNonMerged(t *testing.T) { + nodes := []ModifyBranchNode{ + makeMergedNode("merged0", 0), + makeNode("active1", false, 1), + makeNode("active2", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + assert.Equal(t, 1, m.cursor, "cursor should skip merged node and land on first non-merged") +} + +// --- Drop toggle tests --- + +func TestDropToggle(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + require.Equal(t, 1, m.cursor) + + // Press 'x' → drop + m = sendKey(t, m, runeKey('x')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionDrop, m.nodes[1].PendingAction.Type) + assert.True(t, m.nodes[1].Removed) + + // Press 'x' again → undo drop + m = sendKey(t, m, runeKey('x')) + assert.Nil(t, m.nodes[1].PendingAction) + assert.False(t, m.nodes[1].Removed) +} + +// --- Fold toggle tests --- + +func TestFoldToggle(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + require.Equal(t, 1, m.cursor) // cursor on b + + // 'd' → fold down + m = sendKey(t, m, runeKey('d')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionFoldDown, m.nodes[1].PendingAction.Type) + assert.True(t, m.nodes[1].Removed) + + // 'd' again → toggle off + m = sendKey(t, m, runeKey('d')) + assert.Nil(t, m.nodes[1].PendingAction) + assert.False(t, m.nodes[1].Removed) + + // 'u' → fold up + m = sendKey(t, m, runeKey('u')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionFoldUp, m.nodes[1].PendingAction.Type) + assert.True(t, m.nodes[1].Removed) + + // 'u' again → toggle off + m = sendKey(t, m, runeKey('u')) + assert.Nil(t, m.nodes[1].PendingAction) + assert.False(t, m.nodes[1].Removed) +} + +// --- Fold replace tests --- + +func TestFoldReplace(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // 'd' → fold down + m = sendKey(t, m, runeKey('d')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionFoldDown, m.nodes[1].PendingAction.Type) + + // 'u' → should replace fold-down with fold-up + m = sendKey(t, m, runeKey('u')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionFoldUp, m.nodes[1].PendingAction.Type) + assert.True(t, m.nodes[1].Removed) +} + +// --- Last branch guard tests --- + +func TestCannotDropLastBranch(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + } + m := New(nodes, testTrunk, "1.0.0") + + // Drop first node + m = sendKey(t, m, runeKey('x')) + require.NotNil(t, m.nodes[0].PendingAction) + assert.Equal(t, ActionDrop, m.nodes[0].PendingAction.Type) + + // Move cursor to second node + m = sendKey(t, m, runeKey('j')) + require.Equal(t, 1, m.cursor) + + // Try to drop second node → should be refused + m = sendKey(t, m, runeKey('x')) + assert.Nil(t, m.nodes[1].PendingAction, "second node should NOT be dropped") + assert.False(t, m.nodes[1].Removed) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "last branch") +} + +func TestCannotFoldLastBranch(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + } + m := New(nodes, testTrunk, "1.0.0") + + // Drop first node + m = sendKey(t, m, runeKey('x')) + require.NotNil(t, m.nodes[0].PendingAction) + + // Move cursor to second node + m = sendKey(t, m, runeKey('j')) + require.Equal(t, 1, m.cursor) + + // Try to fold second node down → should fail (no branch below) + m = sendKey(t, m, runeKey('d')) + assert.Nil(t, m.nodes[1].PendingAction, "second node should NOT be folded") + assert.True(t, m.statusIsError) + + // Try to fold second node up → should fail (only target above is removed) + m = sendKey(t, m, runeKey('u')) + assert.Nil(t, m.nodes[1].PendingAction, "second node should NOT be folded") + assert.True(t, m.statusIsError) +} + +// --- Mutual fold test --- + +func TestMutualFoldBlocked(t *testing.T) { + // With 3 nodes A(0), B(1), C(2): fold B down into C, then try + // to fold C up. Since B is removed the target search for fold-up + // skips B and finds A. The fold into A would leave only 1 active + // branch (A) so it IS allowed (active >= 1). Verify the behavior. + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Fold B down into C + m = sendKey(t, m, runeKey('d')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionFoldDown, m.nodes[1].PendingAction.Type) + assert.True(t, m.nodes[1].Removed) + + // Move cursor to C + m = sendKey(t, m, runeKey('j')) + require.Equal(t, 2, m.cursor) + + // Try fold C up — B is removed so target becomes A. + // With only 2 nodes removed (B, C), A is the only active → active=1 (passes guard). + m = sendKey(t, m, runeKey('u')) + require.NotNil(t, m.nodes[2].PendingAction, "C should fold up into A since B is skipped") + assert.Equal(t, ActionFoldUp, m.nodes[2].PendingAction.Type) + assert.True(t, m.nodes[2].Removed) + + // Verify only A remains active + active := 0 + for _, n := range m.nodes { + if !n.Removed { + active++ + } + } + assert.Equal(t, 1, active, "only A should remain active") +} + +// --- Mode exclusivity tests --- + +func TestModeExclusivity_ReorderBlocksStructure(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + require.Equal(t, 0, m.cursor) + + // Move top node down (shift+down = 'J') → reorder mode + m = sendKey(t, m, runeKey('J')) + assert.Equal(t, 1, m.cursor, "cursor should move with the swapped node") + assert.Equal(t, modeReorder, m.currentMode()) + + // Try 'x' (drop) → should show error + m = sendKey(t, m, runeKey('x')) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "undo") + + // Try 'd' (fold) → should show error + m = sendKey(t, m, runeKey('d')) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "undo") +} + +func TestModeExclusivity_StructureBlocksReorder(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + require.Equal(t, 1, m.cursor) + + // Drop middle node → structure mode + m = sendKey(t, m, runeKey('x')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, modeStructure, m.currentMode()) + + // Move cursor to a non-removed node + m = sendKey(t, m, runeKey('j')) + require.Equal(t, 2, m.cursor) + + // Try shift+down (move) → should show error + m = sendKey(t, m, runeKey('J')) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "undo") + + // Try shift+up (move) → should show error + m = sendKey(t, m, runeKey('K')) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "undo") +} + +// --- Apply validation tests --- + +func TestApplyRefusedWhenNoPendingChanges(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + } + m := New(nodes, testTrunk, "1.0.0") + + // ctrl+s with no changes + m = sendKey(t, m, tea.KeyMsg{Type: tea.KeyCtrlS}) + assert.False(t, m.applyRequested) + assert.Equal(t, "No pending changes to apply", m.statusMessage) + assert.False(t, m.statusIsError) +} + +func TestApplySucceedsWithPendingChanges(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Drop a node + m = sendKey(t, m, runeKey('x')) + require.NotNil(t, m.nodes[0].PendingAction) + + // ctrl+s → apply should be requested + m = sendKey(t, m, tea.KeyMsg{Type: tea.KeyCtrlS}) + assert.True(t, m.applyRequested) +} + +// --- Quit / cancel tests --- + +func TestQuitSetsCancelled(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + } + m := New(nodes, testTrunk, "1.0.0") + + m = sendKey(t, m, tea.KeyMsg{Type: tea.KeyEscape}) + assert.True(t, m.Cancelled()) +} + +// --- Cursor navigation tests --- + +func TestCursorNavigation(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + require.Equal(t, 0, m.cursor) + + // Move down + m = sendKey(t, m, runeKey('j')) + assert.Equal(t, 1, m.cursor) + + // Move down again + m = sendKey(t, m, runeKey('j')) + assert.Equal(t, 2, m.cursor) + + // Move down at bottom → stays at bottom + m = sendKey(t, m, runeKey('j')) + assert.Equal(t, 2, m.cursor) + + // Move up + m = sendKey(t, m, runeKey('k')) + assert.Equal(t, 1, m.cursor) + + // Move up to top + m = sendKey(t, m, runeKey('k')) + assert.Equal(t, 0, m.cursor) + + // Move up at top → stays at top + m = sendKey(t, m, runeKey('k')) + assert.Equal(t, 0, m.cursor) +} + +// --- Undo tests --- + +func TestUndoDrop(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Drop node + m = sendKey(t, m, runeKey('x')) + require.True(t, m.nodes[0].Removed) + + // Undo + m = sendKey(t, m, runeKey('z')) + assert.Nil(t, m.nodes[0].PendingAction) + assert.False(t, m.nodes[0].Removed) +} + +func TestUndoMove(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Move a down (shift+down) + m = sendKey(t, m, runeKey('J')) + assert.Equal(t, "b", m.nodes[0].Ref.Branch, "b should now be at index 0") + assert.Equal(t, "a", m.nodes[1].Ref.Branch, "a should now be at index 1") + assert.Equal(t, 1, m.cursor) + + // Undo → should swap back + m = sendKey(t, m, runeKey('z')) + assert.Equal(t, "a", m.nodes[0].Ref.Branch, "a should be back at index 0") + assert.Equal(t, "b", m.nodes[1].Ref.Branch, "b should be back at index 1") + assert.Equal(t, 0, m.cursor, "cursor should return to original position") +} + +func TestUndoNothingShowsMessage(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + } + m := New(nodes, testTrunk, "1.0.0") + + // Undo with empty stack + m = sendKey(t, m, runeKey('z')) + assert.Equal(t, "Nothing to undo", m.statusMessage) + assert.False(t, m.statusIsError) +} + +// --- Getters tests --- + +func TestGetters(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + makeNode("b", false, 1), + } + m := New(nodes, testTrunk, "1.0.0") + + assert.False(t, m.Applied()) + assert.False(t, m.Cancelled()) + assert.False(t, m.ApplyRequested()) + assert.Len(t, m.Nodes(), 2) + assert.Equal(t, "a", m.Nodes()[0].Ref.Branch) + assert.Equal(t, "b", m.Nodes()[1].Ref.Branch) +} + +// --- Merged branch guard tests --- + +func TestCannotDropMergedBranch(t *testing.T) { + nodes := []ModifyBranchNode{ + makeMergedNode("merged", 0), + makeNode("active", true, 1), + } + m := New(nodes, testTrunk, "1.0.0") + + // Cursor on merged node + m.cursor = 0 + m = sendKey(t, m, runeKey('x')) + assert.Nil(t, m.nodes[0].PendingAction) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "merged") +} + +func TestCannotFoldMergedBranch(t *testing.T) { + nodes := []ModifyBranchNode{ + makeMergedNode("merged", 0), + makeNode("active", true, 1), + } + m := New(nodes, testTrunk, "1.0.0") + + m.cursor = 0 + m = sendKey(t, m, runeKey('d')) + assert.Nil(t, m.nodes[0].PendingAction) + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "merged") +} + +// --- Drop target protected by fold --- + +func TestCannotDropFoldTarget(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Fold b down into c + m = sendKey(t, m, runeKey('d')) + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionFoldDown, m.nodes[1].PendingAction.Type) + + // Move cursor to c (fold target) + m = sendKey(t, m, runeKey('j')) + require.Equal(t, 2, m.cursor) + + // Try to drop c → should be refused because b is folding into c + m = sendKey(t, m, runeKey('x')) + assert.Nil(t, m.nodes[2].PendingAction, "fold target should not be droppable") + assert.True(t, m.statusIsError) + assert.Contains(t, m.statusMessage, "folding into") +} + +// --- Help toggle --- + +func TestHelpToggle(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + } + m := New(nodes, testTrunk, "1.0.0") + + // Open help + m = sendKey(t, m, runeKey('?')) + assert.True(t, m.showHelp) + + // Close help with '?' + m = sendKey(t, m, runeKey('?')) + assert.False(t, m.showHelp) + + // Open and close with Escape + m = sendKey(t, m, runeKey('?')) + assert.True(t, m.showHelp) + m = sendKey(t, m, tea.KeyMsg{Type: tea.KeyEscape}) + assert.False(t, m.showHelp) +} + +// --- Status message cleared on keypress --- + +func TestStatusMessageClearedOnKeypress(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", true, 0), + } + m := New(nodes, testTrunk, "1.0.0") + + // Generate an error + m = sendKey(t, m, tea.KeyMsg{Type: tea.KeyCtrlS}) + require.NotEmpty(t, m.statusMessage) + + // Any key press clears the message + m = sendKey(t, m, runeKey('j')) + assert.Empty(t, m.statusMessage) + assert.False(t, m.statusIsError) +} + func TestPendingChangeSummary(t *testing.T) { t.Run("no changes returns empty", func(t *testing.T) { nodes := []ModifyBranchNode{ From f20a0a38b6cba1bb001c3e19f6d5e186ada6d4ff Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 13:55:11 -0400 Subject: [PATCH 17/26] refactor submit for regular and pending modifications --- cmd/submit.go | 245 +++++++++++++++++++-------------------------- cmd/submit_test.go | 7 +- 2 files changed, 108 insertions(+), 144 deletions(-) diff --git a/cmd/submit.go b/cmd/submit.go index 7c0e373..02c06df 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -129,167 +129,45 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { return nil } - // When a modify is pending, delete the old stack BEFORE pushing so that - // PRs aren't auto-merged/closed during the force-push. - pendingModify := false + // If a modify is pending, delete the old remote stack first so that + // PR base updates are allowed and force-pushes don't trigger auto-merges. if stacksAvailable { - if state, _ := modify.LoadState(gitDir); state != nil && state.Phase == "pending_submit" { - pendingModify = true - if err := handlePendingModify(cfg, client, s, gitDir); err != nil { - if errors.Is(err, errInterrupt) { - return ErrSilent - } - } - } - } - - if pendingModify { - // Push branches one at a time in stack order (bottom to top) and - // update each PR's base immediately after pushing. This prevents - // false "merge" detections when branches are pushed simultaneously - // with stale base relationships. - cfg.Printf("Pushing %d %s to %s (sequentially)...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) - for i, b := range s.Branches { - if s.Branches[i].IsMerged() || s.Branches[i].IsQueued() { - continue - } - - // Push this single branch - if err := git.Push(remote, []string{b.Branch}, true, false); err != nil { - cfg.Errorf("failed to push %s: %s", b.Branch, err) + if err := handlePendingModify(cfg, client, s, gitDir); err != nil { + if errors.Is(err, errInterrupt) { return ErrSilent } - - // Update PR base immediately after pushing - baseBranch := s.ActiveBaseBranch(b.Branch) - pr, prErr := client.FindPRForBranch(b.Branch) - if prErr != nil { - continue - } - if pr != nil { - if s.Branches[i].PullRequest == nil { - s.Branches[i].PullRequest = &stack.PullRequestRef{ - Number: pr.Number, - ID: pr.ID, - URL: pr.URL, - } - } - if pr.BaseRefName != baseBranch { - if err := client.UpdatePRBase(pr.Number, baseBranch); err != nil { - cfg.Warningf("failed to update base branch for PR %s: %v", - cfg.PRLink(pr.Number, pr.URL), err) - } else { - cfg.Successf("Updated base branch for PR %s to %s", - cfg.PRLink(pr.Number, pr.URL), baseBranch) - } - } else { - cfg.Printf("PR %s for %s is up to date", cfg.PRLink(pr.Number, pr.URL), b.Branch) - } - } else { - // No PR yet — will be created in the PR loop below - cfg.Printf("Pushed %s", b.Branch) - } - } - } else { - // Normal submit — push all branches atomically - cfg.Printf("Pushing %d %s to %s...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) - if err := git.Push(remote, activeBranches, true, true); err != nil { - cfg.Errorf("failed to push: %s", err) - return ErrSilent } } - // Create or update PRs — ensure every active branch has a PR with the - // correct base branch. This makes submit idempotent: running it again - // fills gaps and fixes base branches before syncing the stack. + // Push each branch and create/update its PR in stack order (bottom to top). + // Sequential pushing ensures each branch's base is up-to-date on the + // remote before the next branch is pushed, preventing race conditions. + cfg.Printf("Pushing %d %s to %s...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) for i, b := range s.Branches { if s.Branches[i].IsMerged() || s.Branches[i].IsQueued() { continue } - baseBranch := s.ActiveBaseBranch(b.Branch) - pr, err := client.FindPRForBranch(b.Branch) - if err != nil { - cfg.Warningf("failed to check PR for %s: %v", b.Branch, err) - continue + // Push this branch + if err := git.Push(remote, []string{b.Branch}, true, false); err != nil { + cfg.Errorf("failed to push %s: %s", b.Branch, err) + return ErrSilent } - if pr == nil { - // Create new PR — auto-generate title from commits/branch name, - // then prompt interactively unless --auto or non-interactive. - baseBranchForDiff := s.ActiveBaseBranch(b.Branch) - title, commitBody := defaultPRTitleBody(baseBranchForDiff, b.Branch) - originalTitle := title - if !opts.auto && cfg.IsInteractive() { - p := prompter.New(cfg.In, cfg.Out, cfg.Err) - input, err := p.Input(fmt.Sprintf("Title for PR (branch %s):", b.Branch), title) - if err != nil { - if isInterruptError(err) { - printInterrupt(cfg) - return ErrSilent - } - // Non-interrupt error: keep the auto-generated title. - } else if input != "" { - title = input - } - } - - // If the user changed the title and the commit had a multi-line - // message, put the full commit message in the PR body so no - // content is lost. - prBody := commitBody - if title != originalTitle && commitBody != "" { - prBody = originalTitle + "\n\n" + commitBody - } - body := generatePRBody(prBody) - - newPR, createErr := client.CreatePR(baseBranch, b.Branch, title, body, opts.draft) - if createErr != nil { - cfg.Warningf("failed to create PR for %s: %v", b.Branch, createErr) - continue - } - cfg.Successf("Created PR %s for %s", cfg.PRLink(newPR.Number, newPR.URL), b.Branch) - s.Branches[i].PullRequest = &stack.PullRequestRef{ - Number: newPR.Number, - ID: newPR.ID, - URL: newPR.URL, - } - } else { - // PR already exists — record it and fix base branch if needed. - if s.Branches[i].PullRequest == nil { - s.Branches[i].PullRequest = &stack.PullRequestRef{ - Number: pr.Number, - ID: pr.ID, - URL: pr.URL, - } - } - - if pendingModify { - // Base updates already handled in the sequential push loop. - cfg.Printf("PR %s for %s is up to date", cfg.PRLink(pr.Number, pr.URL), b.Branch) - } else if pr.BaseRefName != baseBranch { - if s.ID != "" { - cfg.Warningf("PR %s has base %q (expected %q) but cannot update while stacked", - cfg.PRLink(pr.Number, pr.URL), pr.BaseRefName, baseBranch) - } else { - if err := client.UpdatePRBase(pr.Number, baseBranch); err != nil { - cfg.Warningf("failed to update base branch for PR %s: %v", - cfg.PRLink(pr.Number, pr.URL), err) - } else { - cfg.Successf("Updated base branch for PR %s to %s", - cfg.PRLink(pr.Number, pr.URL), baseBranch) - } - } - } else { - cfg.Printf("PR %s for %s is up to date", cfg.PRLink(pr.Number, pr.URL), b.Branch) + // Find or create PR, and fix base if needed + baseBranch := s.ActiveBaseBranch(b.Branch) + if err := ensurePR(cfg, client, s, i, baseBranch, opts); err != nil { + if errors.Is(err, errInterrupt) { + printInterrupt(cfg) + return ErrSilent } + // Non-fatal — continue with remaining branches } } // Create or update the stack on GitHub if stacksAvailable { syncStack(cfg, client, s) - // Clear modify state after successful stack sync clearPendingModifyState(cfg, gitDir) } @@ -305,6 +183,91 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { return nil } +// ensurePR finds or creates a PR for the branch at index i, and updates +// its base branch if needed. This is the single place where PR state is +// reconciled during submit. +func ensurePR(cfg *config.Config, client github.ClientOps, s *stack.Stack, i int, baseBranch string, opts *submitOptions) error { + b := s.Branches[i] + + pr, err := client.FindPRForBranch(b.Branch) + if err != nil { + cfg.Warningf("failed to check PR for %s: %v", b.Branch, err) + return nil + } + + if pr == nil { + return createPR(cfg, client, s, i, baseBranch, opts) + } + + // PR exists — record it and fix base if needed. + if s.Branches[i].PullRequest == nil { + s.Branches[i].PullRequest = &stack.PullRequestRef{ + Number: pr.Number, + ID: pr.ID, + URL: pr.URL, + } + } + + if pr.BaseRefName != baseBranch { + if s.ID != "" { + // Stack API owns base relationships — can't update directly. + cfg.Warningf("PR %s has base %q (expected %q) but cannot update while stacked", + cfg.PRLink(pr.Number, pr.URL), pr.BaseRefName, baseBranch) + } else { + if err := client.UpdatePRBase(pr.Number, baseBranch); err != nil { + cfg.Warningf("failed to update base branch for PR %s: %v", + cfg.PRLink(pr.Number, pr.URL), err) + } else { + cfg.Successf("Updated base branch for PR %s to %s", + cfg.PRLink(pr.Number, pr.URL), baseBranch) + } + } + } else { + cfg.Printf("PR %s for %s is up to date", cfg.PRLink(pr.Number, pr.URL), b.Branch) + } + + return nil +} + +// createPR creates a new PR for the branch at index i. +func createPR(cfg *config.Config, client github.ClientOps, s *stack.Stack, i int, baseBranch string, opts *submitOptions) error { + b := s.Branches[i] + + title, commitBody := defaultPRTitleBody(baseBranch, b.Branch) + originalTitle := title + if !opts.auto && cfg.IsInteractive() { + p := prompter.New(cfg.In, cfg.Out, cfg.Err) + input, err := p.Input(fmt.Sprintf("Title for PR (branch %s):", b.Branch), title) + if err != nil { + if isInterruptError(err) { + return errInterrupt + } + // Non-interrupt error: keep the auto-generated title. + } else if input != "" { + title = input + } + } + + prBody := commitBody + if title != originalTitle && commitBody != "" { + prBody = originalTitle + "\n\n" + commitBody + } + body := generatePRBody(prBody) + + newPR, createErr := client.CreatePR(baseBranch, b.Branch, title, body, opts.draft) + if createErr != nil { + cfg.Warningf("failed to create PR for %s: %v", b.Branch, createErr) + return nil + } + cfg.Successf("Created PR %s for %s", cfg.PRLink(newPR.Number, newPR.URL), b.Branch) + s.Branches[i].PullRequest = &stack.PullRequestRef{ + Number: newPR.Number, + ID: newPR.ID, + URL: newPR.URL, + } + return nil +} + // defaultPRTitleBody generates a PR title and body from the branch's commits. // If there is exactly one commit, use its subject as the title and its body // (if any) as the PR body. Otherwise, humanize the branch name for the title. diff --git a/cmd/submit_test.go b/cmd/submit_test.go index 901f7f3..2b0e40d 100644 --- a/cmd/submit_test.go +++ b/cmd/submit_test.go @@ -123,10 +123,11 @@ func TestSubmit_CreatesPRsAndStack(t *testing.T) { assert.NoError(t, err) - // Branches should be pushed - require.Len(t, pushCalls, 1) + // Branches should be pushed (sequentially, one per branch) + require.Len(t, pushCalls, 2) assert.Equal(t, "origin", pushCalls[0].remote) - assert.Equal(t, []string{"b1", "b2"}, pushCalls[0].branches) + assert.Equal(t, []string{"b1"}, pushCalls[0].branches) + assert.Equal(t, []string{"b2"}, pushCalls[1].branches) // PRs should be created assert.Equal(t, []string{"b1", "b2"}, createdPRs) From be0aa2586c154e3877fe0c056ee1b9bff5f834e7 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 18:54:53 -0400 Subject: [PATCH 18/26] rename recover to abort Co-authored-by: Copilot --- cmd/modify.go | 22 +++++++++++----------- internal/modify/apply.go | 4 ++-- internal/modify/state.go | 4 ++-- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index e67206a..8bbf897 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -13,8 +13,8 @@ import ( ) type modifyOptions struct { - recover bool - cont bool + abort bool + cont bool } func ModifyCmd(cfg *config.Config) *cobra.Command { @@ -34,8 +34,8 @@ Operations available: All changes are staged in the TUI and applied together when you press Ctrl+S. After applying, run 'gh stack submit' to push changes and recreate the stack on GitHub.`, RunE: func(cmd *cobra.Command, args []string) error { - if opts.recover { - return runModifyRecover(cfg) + if opts.abort { + return runModifyAbort(cfg) } if opts.cont { return runModifyContinue(cfg) @@ -44,7 +44,7 @@ After applying, run 'gh stack submit' to push changes and recreate the stack on }, } - cmd.Flags().BoolVar(&opts.recover, "recover", false, "Recover from a crashed modify session") + cmd.Flags().BoolVar(&opts.abort, "abort", false, "Abort the modify session and restore the stack to its pre-modify state") cmd.Flags().BoolVar(&opts.cont, "continue", false, "Continue after resolving conflicts") return cmd @@ -125,7 +125,7 @@ func runModify(cfg *config.Config) error { cfg.Printf("") cfg.Printf("Or restore the stack to its pre-modify state with `%s`", - cfg.ColorCyan("gh stack modify --recover")) + cfg.ColorCyan("gh stack modify --abort")) return ErrConflict } @@ -170,8 +170,8 @@ func printModifySuccess(cfg *config.Config, result *modifyview.ApplyResult, hasR } } -// runModifyRecover handles recovery from a crashed modify session. -func runModifyRecover(cfg *config.Config) error { +// runModifyAbort handles recovery to a pre-modify state. +func runModifyAbort(cfg *config.Config) error { gitDir, err := git.GitDir() if err != nil { cfg.Errorf("not a git repository") @@ -185,7 +185,7 @@ func runModifyRecover(cfg *config.Config) error { } if state == nil { - cfg.Printf("No modify session to recover") + cfg.Printf("No modify session to abort") return nil } @@ -301,13 +301,13 @@ func checkNoModifyInProgress(cfg *config.Config, gitDir string) error { case "applying": cfg.Errorf("a previous modify session was interrupted") cfg.Printf("Run `%s` to restore your stack", - cfg.ColorCyan("gh stack modify --recover")) + cfg.ColorCyan("gh stack modify --abort")) return ErrModifyRecovery case "conflict": cfg.Errorf("a modify has unresolved conflicts") cfg.Printf("Run `%s` to continue, or `%s` to restore your stack", cfg.ColorCyan("gh stack modify --continue"), - cfg.ColorCyan("gh stack modify --recover")) + cfg.ColorCyan("gh stack modify --abort")) return ErrSilent case "pending_submit": cfg.Errorf("a modify was completed but the stack has not been submitted yet") diff --git a/internal/modify/apply.go b/internal/modify/apply.go index ea73e48..7e42e49 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -592,7 +592,7 @@ func ContinueApply( cfg.ColorCyan("git add "), cfg.ColorCyan("gh stack modify --continue")) cfg.Printf("Or restore the stack with `%s`", - cfg.ColorCyan("gh stack modify --recover")) + cfg.ColorCyan("gh stack modify --abort")) return fmt.Errorf("rebase conflict on %s", branchName) } @@ -690,7 +690,7 @@ func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, stackIndex int return nil } -// UnwindFromStateFile restores the stack from a modify state file (for --recover). +// UnwindFromStateFile restores the stack from a modify state file (for --abort). func UnwindFromStateFile(cfg *config.Config, gitDir string) error { state, err := LoadState(gitDir) if err != nil { diff --git a/internal/modify/state.go b/internal/modify/state.go index b550c3f..8477c39 100644 --- a/internal/modify/state.go +++ b/internal/modify/state.go @@ -115,10 +115,10 @@ func CheckStateGuard(gitDir string) error { return nil } if state.Phase == "applying" { - return fmt.Errorf("a modify session was interrupted — run `gh stack modify --recover` to restore your stack") + return fmt.Errorf("a modify session was interrupted — run `gh stack modify --abort` to restore your stack") } if state.Phase == "conflict" { - return fmt.Errorf("a modify has unresolved conflicts — run `gh stack modify --continue` or `gh stack modify --recover`") + return fmt.Errorf("a modify has unresolved conflicts — run `gh stack modify --continue` or `gh stack modify --abort`") } return nil } From b6850963ff909cfa132fde2a64a9a3b71ca04546 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 18:55:33 -0400 Subject: [PATCH 19/26] docs for modify cmd --- README.md | 62 +++++++++++ docs/astro.config.mjs | 1 + .../assets/screenshots/modify-stack-tui.png | Bin 0 -> 640006 bytes docs/src/content/docs/guides/modify.md | 101 ++++++++++++++++++ docs/src/content/docs/guides/workflows.md | 51 ++++++--- docs/src/content/docs/reference/cli.md | 62 +++++++++++ 6 files changed, 264 insertions(+), 13 deletions(-) create mode 100644 docs/src/assets/screenshots/modify-stack-tui.png create mode 100644 docs/src/content/docs/guides/modify.md diff --git a/README.md b/README.md index 445f69c..f25b75a 100644 --- a/README.md +++ b/README.md @@ -232,6 +232,68 @@ gh stack rebase --continue gh stack rebase --abort ``` +### `gh stack modify` + +Interactively restructure the current stack. + +``` +gh stack modify [flags] +``` + +Opens a terminal UI for restructuring a stack. You can rename, drop, reorder, and fold branches into adjacent ones. All the changes are staged during the preview and applied at once on save. + +If the stack of PRs has been created on GitHub, run `gh stack submit` afterwards to push the changes and recreate the stack. + +| Flag | Description | +|------|-------------| +| `--continue` | Continue after resolving conflicts | +| `--abort` | Abort the modify session and restore the stack to its pre-modify state | + +**Operations:** + +- **Drop** (`x`): Remove a branch and its commits from the stack. Local branch and associated PR are preserved. +- **Fold down** (`d`): Absorb a branch's commits into the branch below (toward trunk). Folded branch removed from stack. +- **Fold up** (`u`): Absorb a branch's commits into the branch above (away from trunk). Folded branch removed from stack. +- **Reorder** (`Shift+↑`/`Shift+↓`): Move a branch up (away from trunk) or down (toward trunk) in the stack. +- **Rename** (`r`): Rename a branch locally and in the stack metadata. +- **Undo** (`z`): Undo the last staged action. + +**Keybindings:** + +| Key | Action | +|-----|--------| +| `↑`/`↓` | Navigate branch list | +| `f` | View files changed | +| `c` | View commits | +| `x` | Drop branch | +| `r` | Rename branch | +| `u/d` | Fold branch up/down | +| `Shift+↑`/`Shift+↓` | Move branch up/down | +| `z` | Undo last action | +| `Ctrl+S` | Apply all changes | +| `q`/`Esc` | Cancel and exit | +| `?` | Help | + +**Preconditions:** +- Must have an active stack checked out locally +- Working tree must be clean +- No rebase in progress +- No PR in the stack is queued for merge +- Commit history must be linear + +**Examples:** + +```sh +# Open the modify TUI +gh stack modify + +# Continue after resolving a conflict +gh stack modify --continue + +# Abort and restore to the previous state +gh stack modify --abort +``` + ### `gh stack sync` Fetch, rebase, push, and sync PR state in a single command. diff --git a/docs/astro.config.mjs b/docs/astro.config.mjs index 7fdbc10..0177626 100644 --- a/docs/astro.config.mjs +++ b/docs/astro.config.mjs @@ -65,6 +65,7 @@ export default defineConfig({ { label: 'Working with Stacked PRs', slug: 'guides/stacked-prs' }, { label: 'Stacked PRs in the GitHub UI', slug: 'guides/ui' }, { label: 'Typical Workflows', slug: 'guides/workflows' }, + { label: 'Restructuring Stacks', slug: 'guides/modify' }, ], }, { diff --git a/docs/src/assets/screenshots/modify-stack-tui.png b/docs/src/assets/screenshots/modify-stack-tui.png new file mode 100644 index 0000000000000000000000000000000000000000..7a8808eaeb10f6dd47a075cfb164ca4f532ffc41 GIT binary patch literal 640006 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

mDp3` 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 KQ@MqwN8%EAwAE(lxS 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þY_-UcjAbxkGXT(}@1u>8@kkB)9F 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 literal 0 HcmV?d00001 diff --git a/docs/src/content/docs/guides/modify.md b/docs/src/content/docs/guides/modify.md new file mode 100644 index 0000000..fd15375 --- /dev/null +++ b/docs/src/content/docs/guides/modify.md @@ -0,0 +1,101 @@ +--- +title: Restructuring Stacks +description: How to use `gh stack modify` to restructure a stack. +--- + +`gh stack modify` provides an interactive terminal UI for restructuring a stack locally. You can drop, fold, rename, and reorder branches and then apply all your changes at once. + +![The modify stack terminal UI](../../../assets/screenshots/modify-stack-tui.png) + +## When to use modify + +Use `modify` when you need to: +- **Remove** a branch from the stack +- **Combine** two branches into one +- **Rename** a branch +- **Reorder** branches + +## Prerequisites + +Before running `modify`, ensure: +- You have an active stack checked out locally +- Your working tree is clean (no uncommitted changes) +- No rebase is in progress +- No PR in the stack is queued for merge +- Commit history is linear (run `gh stack rebase` first if needed) + +## Opening the TUI + +```sh +gh stack modify +``` + +The TUI shows your stack as a vertical list of branches with PR information, commits, and files changed. Merged branches appear as locked rows that cannot be modified. Press `?` for a help overlay describing all operations. + +## Operations + +### Drop (`x`) + +Removes a branch and its commits from the stack. The local branch and any associated PR are preserved. Upstream branches are rebased to exclude the dropped branch's unique commits. + +### Fold down (`d`) + +Absorbs the selected branch's commits into the branch below it (toward trunk) via cherry-pick. The folded branch is removed from the stack. + +### Fold up (`u`) + +Absorbs the selected branch's commits into the branch above it (away from trunk). Since the branch above already contains the folded branch's commits in its history, this is handled by adjusting what is considered the first unique commit for the branch. The folded branch is removed from the stack. + +### Rename (`r`) + +Opens an inline prompt to enter a new name for the branch. The branch is renamed locally and in the stack metadata. On the next `submit`, the new branch name is pushed to GitHub. + +### Reorder (`Shift+↑`/`Shift+↓`) + +Moves the selected branch up (away from trunk) or down (toward trunk) in the stack. A cascading rebase adjusts all affected branches. Note: reordering and structural changes (drop/fold/rename) cannot be mixed in the same session. + +### Undo (`z`) + +Reverses the most recent staged action. You can undo multiple times to step back through your changes. + +## Applying changes + +Press `Ctrl+S` to apply all staged changes. Nothing is modified until you save. The apply phase renames branches, folds/drops branches, and runs a cascading rebase to create a linear commit history with the desired stack state. + +### Handling conflicts + +If a rebase conflict occurs during the apply phase, you have two options: + +1. **Resolve and continue**: Fix the conflicts in your editor, stage with `git add`, then run `gh stack modify --continue` (you may need to do this multiple times) +2. **Abort**: Run `gh stack modify --abort` to abort the operation and restore the stack to the pre-modify state + +If a second conflict occurs after continuing, the same options are available. + +## After modifying + +If a stack of PRs has been created on GitHub, run: + +```sh +gh stack submit +``` + +This pushes the updated branches and recreates the stack. The old stack is automatically replaced. + +## Aborting + +If you want to discard all changes and restore the stack to its pre-modify state, run: + +```sh +gh stack modify --abort +``` + +This also works if `modify` was interrupted (e.g., terminal crash). A pre-modify snapshot is cached locally for state recovery. + +## Limitations + +- Cannot modify merged branches (they are locked) +- Cannot add new branches (use `gh stack add` instead) +- Cannot split a branch into multiple branches +- Cannot move branches between different stacks +- Requires an interactive terminal +- Reordering and structural changes (drop/fold/rename) cannot be mixed in the same session diff --git a/docs/src/content/docs/guides/workflows.md b/docs/src/content/docs/guides/workflows.md index 1bb3a45..1237874 100644 --- a/docs/src/content/docs/guides/workflows.md +++ b/docs/src/content/docs/guides/workflows.md @@ -168,24 +168,49 @@ All branches in a stack should be part of the same feature or project. If you ne ## Restructuring a Stack -When you need to remove a branch, reorder branches, or rename branches, tear down the stack and rebuild it: +When you need to change the composition of a stack — remove a branch, combine branches, change the order, or rename a branch — use `gh stack modify`: ```sh -# 1. Remove the stack on GitHub and locally -gh stack unstack - -# 2. Make structural changes -git branch -m old-branch-1 new-branch-1 # rename a branch -git branch -D branch-3 # delete a branch - -# 3. Re-create the stack with the new order -gh stack init --adopt new-branch-1 branch-2 branch-4 - -# 4. Push and sync the new stack +# Open the modify TUI +gh stack modify + +# In the TUI: +# x → drop a branch +# d → fold down (into branch below) +# u → fold up (into branch above) +# Shift+↑/↓ → reorder +# r → rename +# z → undo +# Ctrl+S → apply changes +# q → cancel + +# After modifying, push changes to remote and recreate the stack on GitHub gh stack submit ``` -The `unstack` command deletes the stack on GitHub first, then removes local tracking. Your branches and PRs are not affected — only the stack relationship is removed. After `init --adopt`, any existing open PRs are automatically re-associated with the new stack. +### Common restructuring scenarios + +**Remove a branch and its unique commits from the stack:** +1. `gh stack modify` +2. Navigate to the branch, press `x` to mark it for drop +3. Press `Ctrl+S` to apply +4. `gh stack submit` + +**Combine two branches into one:** +1. `gh stack modify` +2. Navigate to the branch you want to fold +3. Press `d` to fold its commits into the branch below, or `u` to fold into the branch above +4. Press `Ctrl+S` to apply +5. `gh stack submit` + +**Reorder branches:** +1. `gh stack modify` +2. Navigate to the branch to move +3. Press `Shift+↑` to move up or `Shift+↓` to move down +4. Press `Ctrl+S` to apply +5. `gh stack submit` + +For a comprehensive guide on all modify operations, see the [Restructuring Stacks](/gh-stack/guides/modify/) guide. ## Using AI Agents with Stacks diff --git a/docs/src/content/docs/reference/cli.md b/docs/src/content/docs/reference/cli.md index ba213f5..b4e4cc5 100644 --- a/docs/src/content/docs/reference/cli.md +++ b/docs/src/content/docs/reference/cli.md @@ -157,6 +157,68 @@ gh stack checkout feature-auth gh stack checkout ``` +### `gh stack modify` + +Interactively restructure the current stack. + +```sh +gh stack modify [flags] +``` + +Opens an interactive terminal UI for restructuring a stack. All changes are staged in the TUI and applied together when you press `Ctrl+S`. Branches from merged PRs cannot be modified. + +| Flag | Description | +|------|-------------| +| `--continue` | Continue after resolving conflicts | +| `--abort` | Abort the modify session and restore the stack to its pre-modify state | + +**Preconditions:** + +The command checks these conditions before opening the TUI: + +1. Must have an active stack checked out locally +2. Working tree must be clean (no uncommitted changes) +3. No rebase in progress +4. No PR in the stack is queued for merge +5. Commit history must be linear (no merge commits, no diverged branches) + +**Operations:** + +| Operation | Key | Effect | +|-----------|-----|--------| +| Drop | `x` | Remove branch and its commits from stack. Local branch and associated PR are preserved. | +| Fold down | `d` | Absorb commits into branch below (toward trunk). Folded branch removed from stack. | +| Fold up | `u` | Absorb commits into branch above (away from trunk). Folded branch removed from stack. | +| Move down | `Shift+↓` | Reorder branch down (toward trunk) in the stack | +| Move up | `Shift+↑` | Reorder branch up (away from trunk) in the stack | +| Rename | `r` | Rename the branch (opens inline prompt) | +| Undo | `z` | Undo the last staged action | + +**Apply phase:** + +When you press `Ctrl+S`, the staged changes are applied by renaming branches, folding/dropping branches, and running a cascading rebase to create a linear commit history with the desired stack state. + +If a rebase conflict occurs, you can: +- Resolve conflicts, stage files, and run `gh stack modify --continue` +- Or run `gh stack modify --abort` to abort the operation and restore the stack to the pre-modify state + +**After modifying:** + +If a stack of PRs has been created on GitHub, run `gh stack submit` to push the updated branches and recreate the stack. The old stack is automatically replaced. + +**Examples:** + +```sh +# Open the interactive modify TUI +gh stack modify + +# Continue after resolving a conflict +gh stack modify --continue + +# Abort and restore to the previous state +gh stack modify --abort +``` + --- ## Remote Operations From 7b6e7e4a5afa93004a2811cdd29f638d4161f5e8 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 22:22:34 -0400 Subject: [PATCH 20/26] tui styling updates --- internal/tui/modifyview/model.go | 79 ++++++++++++++-------------- internal/tui/shared/header.go | 60 +++++++++++++-------- internal/tui/stackview/model_test.go | 7 ++- 3 files changed, 81 insertions(+), 65 deletions(-) diff --git a/internal/tui/modifyview/model.go b/internal/tui/modifyview/model.go index 15abb34..89833ce 100644 --- a/internal/tui/modifyview/model.go +++ b/internal/tui/modifyview/model.go @@ -113,8 +113,9 @@ type Model struct { actionStack []StagedAction // Rename mode - renameMode bool - renameInput textinput.Model + renameMode bool + renameInput textinput.Model + renameOriginal string // original branch name shown as label // Help overlay showHelp bool @@ -701,7 +702,9 @@ func (m *Model) startRename() { } m.renameMode = true + m.renameOriginal = node.Ref.Branch m.renameInput.SetValue(node.Ref.Branch) + m.renameInput.Prompt = "" m.renameInput.Focus() m.renameInput.CursorEnd() } @@ -830,7 +833,7 @@ func (m Model) nodeLineCount(idx int) int { } func (m Model) contentViewHeight() int { - reserved := 1 // status line + reserved := 3 // post-scroll newline + context line + status bar if shared.ShouldShowHeader(m.width, m.height) { reserved += shared.HeaderHeight } @@ -983,55 +986,51 @@ func (m Model) View() string { shared.RenderHeader(&out, m.buildHeaderConfig(), m.width, m.height) } + // Build the scrollable branch list content var b strings.Builder - - // Branch list — all nodes rendered with shared renderer, annotations for pending actions for i := 0; i < len(m.nodes); i++ { nodeData := toNodeData(m.nodes[i], i) isFocused := i == m.cursor annotation := nodeAnnotation(m.nodes[i], i) shared.RenderNode(&b, nodeData, isFocused, m.width, annotation) } - - // Trunk shared.RenderTrunk(&b, m.trunk.Branch) - // Rename input line (if in rename mode) - if m.renameMode { - b.WriteString("\n") - b.WriteString(renameBadge.Render("Rename: ")) - b.WriteString(m.renameInput.View()) - b.WriteString("\n") - } - - // Transient status message - if m.statusMessage != "" { - b.WriteString("\n") - if m.statusIsError { - b.WriteString(transientErrorStyle.Render("✗ " + m.statusMessage)) - } else { - b.WriteString(transientInfoStyle.Render(m.statusMessage)) - } - b.WriteString("\n") - } - - content := b.String() + // Count fixed bottom lines (always visible, not scrollable). + // The bottom section always has 2 lines: one for contextual info + // (rename prompt or error, blank when neither) and one for the status bar. + bottomLines := 2 // post-scroll newline + context line + status bar - // Scrolling - reservedLines := 0 + // Scrolling — reserve space for header and fixed bottom + reservedLines := bottomLines if showHeader { - reservedLines = shared.HeaderHeight + reservedLines += shared.HeaderHeight } - viewHeight := m.height - reservedLines - 1 // -1 for status line + viewHeight := m.height - reservedLines if viewHeight < 1 { viewHeight = 1 } - out.WriteString(shared.ApplyScrollToContent(content, m.scrollOffset, viewHeight)) + out.WriteString(shared.ApplyScrollToContent(b.String(), m.scrollOffset, viewHeight)) out.WriteString("\n") - // Status line at the bottom - out.WriteString(renderStatusLine(m.nodes, m.width)) + // Second-to-bottom: error/status message line (always present, blank when empty) + if m.statusMessage != "" { + if m.statusIsError { + out.WriteString(transientErrorStyle.Render("✗ " + m.statusMessage)) + } else { + out.WriteString(transientInfoStyle.Render(m.statusMessage)) + } + } + + // Bottom line: rename prompt (when active) or status bar + out.WriteString("\n") + if m.renameMode { + out.WriteString(renameBadge.Render(fmt.Sprintf("Rename: %s → ", m.renameOriginal))) + out.WriteString(m.renameInput.View()) + } else { + out.WriteString(renderStatusLine(m.nodes, m.width)) + } return out.String() } @@ -1079,12 +1078,12 @@ func (m Model) buildHeaderConfig() shared.HeaderConfig { ShortcutColumns: 2, Shortcuts: []shared.ShortcutEntry{ // Left column // Right column - {Key: "↑↓", Desc: "select branch"}, {Key: "x", Desc: "drop", Disabled: structureDisabled}, - {Key: "f", Desc: "view files"}, {Key: "r", Desc: "rename", Disabled: structureDisabled}, - {Key: "c", Desc: "view commits"}, {Key: "u", Desc: "fold up", Disabled: structureDisabled}, - {Key: "?", Desc: "help"}, {Key: "d", Desc: "fold down", Disabled: structureDisabled}, - {Key: "q/esc", Desc: "quit"}, {Key: "shift+↑↓", Desc: "reorder", Disabled: reorderDisabled}, - {Key: "^S", Desc: "apply changes"}, {Key: "z", Desc: "undo"}, + {Key: "↑↓", Desc: "select branch"}, {Key: "x", Desc: "drop", Disabled: structureDisabled}, + {Key: "f", Desc: "view files"}, {Key: "r", Desc: "rename", Disabled: structureDisabled}, + {Key: "c", Desc: "view commits"}, {Key: "u", Desc: "fold up", Disabled: structureDisabled}, + {Key: "?", Desc: "help"}, {Key: "d", Desc: "fold down", Disabled: structureDisabled}, + {Key: "q/esc", Desc: "quit"}, {Key: "shift+↑↓", Desc: "reorder", Disabled: reorderDisabled}, + {Key: "^S", Desc: "apply changes"}, {Key: "z", Desc: "undo"}, }, } } diff --git a/internal/tui/shared/header.go b/internal/tui/shared/header.go index 54d158c..eed6c9c 100644 --- a/internal/tui/shared/header.go +++ b/internal/tui/shared/header.go @@ -70,15 +70,15 @@ func ShouldShowShortcuts(width int) bool { } // RenderHeader renders the full-width header box. +// Progressive disclosure as width narrows: first hides the art, then the +// info text, keeping keyboard shortcuts always visible. func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { if width < 2 { return } innerWidth := width - 2 - showShortcuts := ShouldShowShortcuts(width) - - // Build shortcut lines (possibly multi-column) + // Always build shortcut lines type shortcutLine struct { text string visWidth int @@ -92,7 +92,7 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { cols = 1 } - if showShortcuts && len(cfg.Shortcuts) > 0 { + if len(cfg.Shortcuts) > 0 { if cols >= 2 { // Two-column layout with aligned keys and descriptions. // First pass: compute max visual key width per column. @@ -167,27 +167,45 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { rightColWidth = maxShortcutWidth + 2 } + // Determine what fits: shortcuts always shown, art and info are progressive. + // Hide art first (below 88 cols), then info text, as width narrows. + showArt := cfg.ShowArt + showInfo := true + + // Hide art when viewport is too narrow for art + info + shortcuts + if showArt && width < 88 { + showArt = false + } + + // If info + shortcuts don't fit, hide info + infoMinWidth := 20 // rough minimum for title/info text + if innerWidth < rightColWidth+infoMinWidth+4 { + showInfo = false + } + // Map info lines to row indices infoByRow := make(map[int]string) - infoByRow[2] = HeaderTitleStyle.Render(cfg.Title) - if cfg.Subtitle != "" { - infoByRow[3] = HeaderInfoLabelStyle.Render(cfg.Subtitle) - } - for i, info := range cfg.InfoLines { - row := 5 + i - if row > 9 { - break + if showInfo { + infoByRow[2] = HeaderTitleStyle.Render(cfg.Title) + if cfg.Subtitle != "" { + infoByRow[3] = HeaderInfoLabelStyle.Render(cfg.Subtitle) } - iconStyle := HeaderInfoStyle - if info.IconStyle != nil { - iconStyle = *info.IconStyle + for i, info := range cfg.InfoLines { + row := 5 + i + if row > 9 { + break + } + iconStyle := HeaderInfoStyle + if info.IconStyle != nil { + iconStyle = *info.IconStyle + } + infoByRow[row] = iconStyle.Render(info.Icon) + HeaderInfoLabelStyle.Render(" "+info.Label) } - infoByRow[row] = iconStyle.Render(info.Icon) + HeaderInfoLabelStyle.Render(" "+info.Label) } // Left content base width leftContentBase := 1 // margin - if cfg.ShowArt { + if showArt { leftContentBase += ArtDisplayWidth } @@ -207,7 +225,7 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { for i := 0; i < 10; i++ { // Left column: art (optional) + info artText := "" - if cfg.ShowArt { + if showArt { artText = ArtLines[i] } @@ -220,7 +238,7 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { leftUsed := leftContentBase + infoVisualLen - if showShortcuts && len(shortcuts) > 0 { + if len(shortcuts) > 0 { shortcutCol := innerWidth - rightColWidth midPad := shortcutCol - leftUsed if midPad < 0 { @@ -241,7 +259,7 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { b.WriteString(HeaderBorderStyle.Render("│")) b.WriteString(" ") - if cfg.ShowArt { + if showArt { b.WriteString(artText) } b.WriteString(infoText) @@ -257,7 +275,7 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { b.WriteString(HeaderBorderStyle.Render("│")) b.WriteString(" ") - if cfg.ShowArt { + if showArt { b.WriteString(artText) } b.WriteString(infoText) diff --git a/internal/tui/stackview/model_test.go b/internal/tui/stackview/model_test.go index c65882a..fb1774e 100644 --- a/internal/tui/stackview/model_test.go +++ b/internal/tui/stackview/model_test.go @@ -221,18 +221,17 @@ func TestView_HeaderHiddenWhenNarrow(t *testing.T) { assert.NotContains(t, view, "View Stack") } -func TestView_HeaderWithoutShortcutsWhenMediumWidth(t *testing.T) { +func TestView_HeaderShortcutsAlwaysVisible(t *testing.T) { nodes := makeNodes("b1", "b2") m := New(nodes, testTrunk, "0.0.1") - // Wide enough for header but not for shortcuts (between minWidthForHeader and minWidthForShortcuts) + // Even at medium width, shortcuts should still be visible updated, _ := m.Update(tea.WindowSizeMsg{Width: 60, Height: 40}) m = updated.(Model) view := m.View() assert.Contains(t, view, "┌", "header should be shown") - assert.Contains(t, view, "View Stack", "info should be shown") - assert.NotContains(t, view, "checkout", "shortcuts should be hidden at this width") + assert.Contains(t, view, "checkout", "shortcuts should always be visible") } func TestView_HeaderShowsMergedCount(t *testing.T) { From 9c974f8b3bbd71fdc85338f207912c701834ca11 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 23:01:53 -0400 Subject: [PATCH 21/26] updated tui screenshot --- .../assets/screenshots/modify-stack-tui.png | Bin 640006 -> 171392 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/src/assets/screenshots/modify-stack-tui.png b/docs/src/assets/screenshots/modify-stack-tui.png index 7a8808eaeb10f6dd47a075cfb164ca4f532ffc41..2c631c50436d5ba08f698c8225691b0394e295ce 100644 GIT binary patch literal 171392 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 z zQZ5PKbg7DtNIF}L6=t$VJjK*PZ0Qn$Usw1_$i3w3M3RtA%RK6G5q9hV%k| z#_k{$I(q88Jo?f-zz32Hxvbn~2|~O1dT-}GB4ETVJ#ekKFw`n#CUEk|kyx|vo=bek zTR@in58m$4GU7~n%mrZluZof?YjF3T?n;>Z(oQIqju1V!!jmv>s#2oXY-NS@yckh8@Pje zL+Fc9W`t;-_gY#Y3?F3Lj(Q?1U3|!W26kmT`_;=k$F2g8*p$x@x)dlaam<@CXzQt( z=BE`tv*RWy?`J;j`EBjq;xXq}?%TA=7OkePlv^BkA(E|e4}mOHulLoQ4!TiiTWun9 zTTK$eC@*$r)vo?p!g6kXe3@&zbkK9fHwR`90O#@*O!pG|Z`8=rYDK-fimW%EG5icc z{p3UHbScJX#P?m1D;4#hVse7?+3~qNHAJqIOnWcI?-?`k=~S;{%@b(<&V^MPDG3n1 z8~+ME>p{qaUP;_8I8b)QOdN83N)VE?vHe`NR~VLy`^D2~yQEGiwP%*+6s&^%GOW12v_mq+Knu zdxXyT)DzezCa*R%WqI7RTITEm{Ewcf1w@yWPpK*YpX`3BPu-9fB+JSqkMa<)10-)~ zMXI_iGCigr!0|ZdT|{syLy@|0o7^txa4kO`RF)AGniQmb><*MaK7OS4_`*ZbrXo)k zg@N-(iT?WIMK8ukzjyme_(#~hucLeH2w?gUO9_@ZD9Y#*E46OJUN$7gnRVllWG-*q z$j5}MT(q9LHK1%#xobzfdjU&rE4|kds9>HjvvanSDY>%r*w?ZjxQa`@%Yl;>pRBFr zz3)I3Rw?ED?`oXX&XQ1EC_5npCpys4Q;aJqYfmv}>~{5w_3ro6DV!@p2Q`G1G~{Ah zuEV^8Ix3z$iU1#>-2M2N>>>FU``p=XdDIjm692GFY$<}KJs}Uc4DzgBRP-r3ceWG} z4B~d9ofosLCd|;>kFA3-A%bttl#8Aekg0;!3cNP1Oeminyjxd3ldIkTp!g7HUg4oq zhb^p;kaHM=^?siw@EM-rW}rSHhHB5Q{wF!PAB%X#=OD7ql@LBMLYyi*!c8?jL=X6Iw%Hnt>!?0AI-7rwxCI5Qa z?)Ihk!M`QNe&zYTC%_(bG!PSu7FB4LYOxL#dA;rpG6jmQ6YudQAKcMXg4X`7vu27y zHC`Hz%!;easfz48>_T&=`<2+Y5lL%bIhDtg)sY!k@-RW?6750y)Xcog$R~7Nd&Hbi z2wCeKAl3Zg7yvb1t{-f-YWj^9GUd;|2YzbXxw#b4~!7XM7VfIvL%nTxH! zL47o5@c>ZTOon>J*rtBY1+SQJ-BuHTjlGI;BdOioN>WCKMf|KkezeFBW-|m(ltFRs zKAI$Bf*)+!szLU-xxFcq+Q=hoEROv2-OL51tl*8b{*|+1Gm@-q)Vo5YkS+q_mZ&Px zd^_d?1pCKG2=sr)ssxRWlcyU9uJ3!3_Ntc$tewuoOzlm}H$_RXKcq}v##ih%r!wt5U1lHE z9<%Iqv4eug-Y~p7E7BRB#1e^~hjk^{ z1<5P0atR8gwlh+L7oHf%ZuAc1=8`HROgv%_sSOJC-e8M4jZPIlp-(wpd)cWWWYA<0Iq1S1( z3%~WD?h`ZyjZ4m^{s6LNQaDqvbHt1NJ;f|B%RTkOImb)(n88mFBZrm#2Q8=82Qs~wvR^GB!-+We86`4^^Z@Q{90V2jjoyyaH++7>LGZj* z_eQz9d+`m;U!K6XV`uK7UtQZf!a5N?Z55k^2w^l^WfB#XK8OGP9T*a^8oy-TQEF4a^Kcp&0Cu1{Z#T6@Ob-JTgFAinZDazg*rna)G30CehA5-=%yRPQdee}xs>)H-j zulo4UtTld5OS-Ke)a=^oASHd?VI1hicIu)7#Lx5$fL&npqbc`~a~%A{hhx8THqiCZ zNpMGGTU(h$r12DrJ>4LQX2f}djG=kyfW8iG_VkpbE)3j9NEfCVbNVuKt2hNNf3vMG zJ#y2YU)0-AMy);4VmZ@`k~&{7^_Vd%JDuLwVNCDnU{9yBr}2_Epo^^L@jczm@*+qh zVC||IcO`XUaw61-TS<#Ogcm-u>m^k876HZ%ZViF}pG{@n4{BZpeOV^$RNMb5yLzI0 zh7!4%76A5+m@CXO!pvVHh$H~WYGo`wdhQS$7S?=PH$Q5zJ{`oxRRK>N%a3>$=d63) zJ`IQE4c=^iI5!xao^Rc;o!jJo+xe-^jZOc2imo;dQ`z1aLj|8evL2cUUtxHIP4-15 zQIKd}b7Q)ZT?}WV)@T$bKWaRJ8B#kIxgsRUdNvVcqi{luY@wEA%^5$rO^o17FLZ3W zIbrB_G<|x-E}ZePMPFi4h8!~q=OWv`bWq-w2S+}A{X>lw;F;FFY!{NLlcte9yYe_@ zZRJ{0aU17lmZ#*&HsuS++HD8(`kCP%5@xZO6fJ!MZRFx(y`%VcVkhx<6zir+A%@x; zM_-MZ`1o$FS;H8|FZFG?d*<)%?ZzhdZ^8I3`;H+v!74w3G1L#@;4JfF7eW0JPCmpd ztXZNi5X3d~Q9%iv71m;G=VvsG$hC^&#>vOSkL2)O2UptS{KleND;POPgP!|#y4g3P z{6whn$G(PFg6b}vi^QOi!ZC%gk z$tdc_23_ppS!fgQ5KJk^B49dP_}Of1Yem$^zYNN!Axd<;oeZQ#$MpD`I-Wi5M#|=_rCVp-%nnLYZ9JhS7aJk?q3yj&hCP8%g!2F`m>)O z0-lMRnBA;lp0WXY;K4T2loVvW6?{nUH8Fk27VlfZazyYYn<%_nT3Fx_r0;sv#*XMK+LyN>zfSOL37 zzq|j=rRi5h0y<9UF5Bx1ikAvZ%cJKUV4`^;ZK(~2kr8X-<72MIb7M$8%#(b|bSF&F<$|{$yldPHe}Z}zP?3@k(eCeHQ1&p~E^ljpVHLr$ z;vO`DwuN~^6ZU5x!q>1FJ!6x4p+++$>rqE*3DFAyDXUM}0JcjHtVP{EhqjaolfDnJ z{P6d>xp`q?v5}8AvW?;8Fg;NV#Z;s$B&!z@j^)LL^7FJf-yJEo)q8A7xBWcv$y(7K zqr|4wl4~Ikh+dXjYtb(fP|(q2&NJ7ow}F{d07BDY2d1Y}*Q6b;-hCFc)HX{&DpMp- z3Y$!7lx>4i7Di%^+GqaV?qgj1)=`v}@kuapfJ~=~ObFE3OY}Tine38f*tUtdmq?|j z2^S|Umdvh z8a>T=km;F;bfihzAcL_!ihE~YjKCH6>e~uaj75+oJUy_aBs;>ryv3!v`91as)_kE8 z+9+>}lX#FaF5QA0>L5Hm8MAVGfRH^+?;)mvz{jWm&KcNT*?JV)gLMyy>AD2OzO$uU z;IJ)m!MUnYcg+gaZy+CC+w@kXbFcSQfg~$N_~GM7lxb|AbD7^oJa1RfO&&r)pv?V zaWgp_C=-U_e(Qx%eQP(jrhkAMb~6_ozPQ5ECmb_uoSUKNVbToq=n~pmV}HN5e0Z*` zDvI!4gG1Y>vPVc@#ZWmL*bBW6r7v6NwMe!ZMk@QR;SsXG*`6MJabi(2ARGx*2~ZsL zB7r6wQ~7?LI^zSWTD<96%s_qJHqf z)0Lq&>;ShB!Drh)pHb&`nwhqg)|sOGuTRR7Jm4vIQDCJ+9M94k7j{C&S5jpPL!og# zEp7t9Z$dN(I-$5CIP4^0%MnhSX$zBebWAP*I;mFV!XoQlm=ODRwT0AxmR6A{m86m%kzncAOf4Y6sGc%>8Km-AhWs#kAzoAU9C@vE4AP?lYIO!IVk zeqXMJ596-zJ4G{T^r+oZ4$w)LI!&2-5M?N**yU&#)nQ{MA#1C1Jd>0OZt?OP9>JEK{v4pj$t_q@Rjyg|}LzEqEU8GsD2yW6%#Mm}Y?RT~|s^o6x zyAmk-XKTUd=hVm>2)ifevdjR6cEy zpoJ%Olrsc*Mkyph%vULBtdN-8Xdt@Np{T=dF}&YcIce-9Y&>T4u4)SL16A;ZgkuA{ zvg5^3*r=FsA>O)4xk@68D@C@Zj`XQColG_-eVm9A|u?IY#)O z!^5e9S6)%Qz#qpkbn8CU*h$(-A+RY7ybQrwZIR?MzE4CQpZ-jEXGPdLnKa$lT0Jq>ed=IlePHL^+5NEXeFIsx%V!BRF}@cu z$0qV1lG%}tyC5$w;Z@-;q}cJ53_eD+LIv1fE3K`AsB$`rAmVxSQEV4kxQ`kYU9-^D zcS`1qM~?S2U5jDC(;ST(IvvJahP9WRMU60wEbJ)sz$sZ3Fn0W=qLc+Ol<>5j1V1! z)VY@>#EWr{Xdx;b#}?ketL!d<#!YFbuRSewmJe-75K45Jt)?9HHM!=mXbXyJLQ6Su zvk$~6D<8X!dBRKl&w6#9_}2Lr9dAjun|u$5k2mTg;i0Pv;pETwQ`(4uP1ac`Q`_aC zvAv7SZftVUP4PPnFNt_b6Xz%y3*9!ZR;~53e89%zC){ekh3`031qh)%7;qQg>gd8- zW#Qnqb7!IToN@H4k?OS+$vly_sw2GcuIIKxuZDU`w9{8h6vB)Ti(%_nRtFrd^>zchQeLke?p-NN zF+UKwy-2GE<{xz!=)IRVSCm&o$1I{syW_g#UR$=ag}|ygM?}me+L+>eyg)Ym&vR&- zjXGEHzU8vD9ZZNX)s_wM2XEGfH_L5{>p@LbILP`XQ-H89*T;3Y^Y*kl5OK9t!#yuS z*swoU_!+X__H1;HiGR|S#S@Kr)@NSMxD(J8!FJDSyzq1kZ>V-GKGEt_cNUEZ_67H7 zzLE$(l9Vg(%}Lt7x%3(XKRva$Y}fB5sPnm6PAVbIZQns#tVEw+!HR5Fw3I>`k0?GH zZxSBCvg8ZAI0g>eJX}3vFoGV2UWbLZ>1dN~SlW)CQ2A5Wxc(CAMI`7M+ z%mv-1kEcuRAS=IVInujb3%WiFAQsR_7NcD6e}wUPBafP$(jHWTdEZu_369voOi@iW-}jFH(eka|!yP zu1&{!YZ;uWEAxD5Ip4j>NAWH_{$>p4Br9ibPDbU+iaO}3Ut1zD3MN)DFR!DfW98HR z)|h^4$8>a$ZxKW}4Z$l1Xi}H{CZVq8?}msuj{9@pH_BHU;G^&I+DvCz@?Ms$-Sl3% zYg5%NYQ6W;9o_Sk1ta;Vfj_4!pzKg}#Pd3eu**PY+lnD;*|7As0;b|(?Z%MZNBU3e zdR50n+h3;VG5k!pJJ z{FbQxFHW%(0#TUgpg-Ely~0u9d{6SL?qeI}#RA*8n2R4=vjCZjKu4WlDV%#mO!P(G zZDPgh2XCZOqU-sJARn%FW_2xQ(LxU7=GDh%G`@Y*B!3S={c>p(**kir_xOs$V@M&W z4f$wV&YGb*em^;CjddGu65H8mg=&=@QN9nyo$9?|C#p!#r>X}sszK0Y3Q#8OC)|r4 z>h`YD3)}mpSDXmfjH?Z{Y(4h;(|B1o`R+Y~*0*grLfBXgAvDGdG6=Sq$!)N~NsH^M`4{9j%wnm%3QQ3I1jF z*ME9F8^msq#ATPy%R2&&$--aabaEW>cT|}9#;qYO2~=A%2dX8>Ij+|olIsv$K%09a zyzm8h@uD^(cKe6XY$n zJF05Q=t7KyDBIWGOhmjh);-_w@;?G3bj7xB{6O^Pd$k(U!E@|d1Jy2oa1I!PW=TR3CsQJm2FgCJqH{K zHuMMYwmfimvx+lXTWx81NBbmJ+9lb(aQ+wr6cso*(SOMdBQOu!EqmoiRdjyZI});uQSEzajM;g+SOm$bRNr}C;sp#tF+f>&4}E-_B%TJggYzY{IsXsQ0Raz71WUM zbkD#VH-hrL9Ns~~^V36Mc96)Mzx$V3sSJf0q?jA>EIvF0mc9Ylt zxnsSRMzTwW8|BFuC$Sd6bZOg*+uP$tnePtk8+pT>3Yp(7-#%opogKHBTl*k=_eN9F zb>V{u5o%4;{Xsr@oK&ak#!7(D8*Nwnrk;FMC~xkybEP2Z(k>TjWhFHg-$XcyeYZ~) z_8qYL8b(ybO+WA{uDLgDrPm7|fDkS4<@B8zUIh6Jz=bp{OxN_}TB_fN8^9aO20Ju| zUr7EkTYq)x#j6T*xeb!xCil9rd40l8j+2?irNpYjP-1~lGymDYQ zHLsL<%{Sde9T+i({zL_slv@!P+8c$x^aJ?o`?})SaHW~H$=QIPJhx>{zm@>QVAU*6 z0n36GkxTQXuIAR4<{sHPj-HNdhAAd?_gHN*xAGuDagEZGY>#mGF03#vH^?b+O!ca% zf1_~ZgK?c0e6$WiGds5791Ua zFgCyYdmKGpcsz15Y(DO^Tlw8@N&Zzf_F!W={4ICN0Jip8x7>RNss3)er^a0nXAW{T zS`(*@7EOnUlp8l-4=+4THi}QkuWb`L$8L@sNB;{_VUz!5beK|Au7Ei%p z*rNX;PC?Z7KH8+r)N*p^#RkQ(5W$cb&dvTK++2)4{TDcE?eUzHKH8vGsSM*Qb1|+% z#Y|YjJO_HPDOdAE_fXdxqLlh~w|YHFo^+RJm+tv&@7ujcvGc|8fmdh?`@q8~^lL&% zfK<>H5^vH-auUv;Y%wQjVa1KCrv5wh3UweJD6Ng=->PciyxlvFHa!_Z@uBN72Oy`~ zJ-R!ar!5!b^iRNEM^+}Q1HkX7BZ#jL+BK$F2Nl8Q*RqZ2XTB;;3Kp@V!BcQrg%|iig zWXllpeUQjw@oPFbpffd^!E@D^GMreKruzgyg!bLd#P>YkT!yzNJ~7c`nOKMqbZA@A z4ubP(theIZ=r_t@4#65DF%i~YGgjR(*UNv&Hc(IUf~(eIXI0{p=J>_Bi1-1ia&;s( zF#@HjIjVNYAiK1&oBW%TC;Rd=R??levmBB?@!&q3Kwg)=FAl}0jYn~8pJ5{!#C;>y z#+Dl9Rzi&u=-?w7OzA*daVVu->w7Cni=z0#mu4lyE4Wl70xKJFxod`?D{Bz4nt`ki zMYFNId46Pg2&bfAaKDKJ-9Q-Ta6Zsux@w-%H0B~$=$+_dxo~VHKb%nRye(Woly?_c z6V4VhHwmLI%S#}u#kWLetQz1AqO+%rOH*>S5kSrnA>|?+^6k=&RX$cFbNO=Io9;0z zd0kst-Vi9A&|va=p3C+GEs$n?H^jRc!8UYohGNNo8Ij_=4IL`1WeZ4X*mAFGUvaMR z>D^D;0CAT(J3SsAh)?ISTCC=P`tC!!^tQk+tt#`2_w*uFP~e>S%XA z`1fxCWYI}q%7%i41A>h!bM!cWC1uTpU3-I2CB0ZVvm^q8TcQ`C4kbESfd7@a?e-k{DBM<@5uO>4I2$L-f= zyoTES_kmS7QZ=KPV0$VhQ3`whVoi++WU*jI2h zz#q*A9u2 zhVGisq@}cmm}C&?cgxF`2c-)iHTVo2jSIIBcU1W-N&bLt&oWUIe@3;>E_dWFABC_r z*m{(1!R(E-usP{)O#j5Qlfb}98^VcGT{?uXOW!4ApD0uE$}{htKsz(aAC9^E$Zj4+9owQUD~w9tH$o)eQVcd zDX3m!N6{WCQz);f&;N7oZh7wZG|G^Kv(!4FjZD>~C4pL*w@2OQv-hLcYM`3$mbfp_ zv2P06y?xwFBJa%pQsag8`If#z9VczSMnxEF1cuoNUM=_nZPtuh&3s7Tcf)(N6PbSx zhcB5<7R%tDf82rPmv7vT!XaT()t(mF-R?ednRe%IRs>at%CKLh{H2YwbcIG__v zEcd%i+CD$TG5Gwrdtb^-rVVJME5iXRa4% z)qP2#)qfhS zX8s2IG@cS*fiZv9p13$A{pHUvnX~ZQ4eLQzH>GT?g=W z{S+tMJEmOGY_Tiwy4IfCZSKc?3yA<{=zVt!+137Hz&1SR7y7v%W1G1~4Y~B$t^Y8x zzCD|~*Y0qjz=p+prTgW-C!6EEm6cgeF5v0CrQF6TL3gnWMPAtNYb4CJWXH&U_!B() z`Rcd86UOICE2`jqnPEw$Oe1z_;b9JxbCKKAxlu!CFcUCI%+&R_tsH92n#3GOn&HXghOtY7H&>cLcr8X3 zL^|#CkbBeU42gFZe4TLk?=v}^>L>9_dR^KU>w z{h*-5c67Fy$`Uy(uRBn#7cUrBVFn27$2lua_p(Xgeo&k;=i( zLF9?z#a4oX$2pw#=la~My)V`YC#A4w;=a_r`vK^kE{i{D*7cN|VWfALUw^yD6!t7r zV{x=}lL>;@^vZ3KoYrMBQ+T?6)W%o-u9A@1EBq`lm_F=a5Y)8CGtRkfPRP@b*YAY2^S1Qd)_k{58zrg=>lnjVCYOg>c>(e1x3~v6`YhR-*3T^LXJ(_AwP%9ztwR1Zr+*G5nzRjlw>;0T=IpLfPT!o?yG`-E{EivO3fa(QrE*lStLIILF@dE9ao?4Cm~v z)WFsX?=NiY$r`qqb&;v%#?3ZSM9`FN>qyOCX2pNR4TI24IMvHCoT7D?8XOq14sv!( zgZ!EW#0yCg?3Y*FGU5a|8Oes_jto`>+nOMWCJf~bWGvyK0l83qP!a{&As$h$!@;R4eKS#YjkpxivVzlE= zqyJ}=ATDI9!BX2L&Ub7GO~(#?M(8tadln>mjxl)JKMa6h)CfmT2!>2CQ<$uc3%kMt zGRlOnk*GN6_;`}rDJO5n-A?1lMJ*@{uV@|m+pRCeSCcNcK=hpS(sv{wL3kZG(G?Z{ zEuzfPHt2m~OIH))%^nkY6UC6b$!u4eZXUC;zQd_%I?W(_y4riGNRh$UUU%3DE4v>w z))?{^4N)t8DA%f}ksW66KI#y@?I+H!3yzkH5@rPiObP{hp6 zc=h0VGC_n#-GlLc#qIx#uCD-Vf^EO2L5V3S4O2l-LAq-o$dHvoZIyiUaXsos2u24oU3qAX;~4m6XUu&#{hHF7K2ARmSH32>}1M{}((pJK!)! zbA>a7|3QE_R zJ4u_%m^|#7zgR<>qT_P(8y0mY9shBzveg3WxGj`X$|!iBsOA^P?1Mhf{WfIP#ael4 zC1e??J&=E9a?&ey@FS7XM5{Z;gq}kl5#Sv0L6YulZC_to$^P9vq^({)6XuxMRR$bZIs{23WME-jYlWsdJ-}kh~gP2@yTo8*cepL{i>uK-tmW~xSc8Y!$7=sa-ZS5O>vIe#!s)%>M0Qsj}Fs$6;pUpJ< zO1Nt>7B6fvIQk1-2KL~acDD|mt1n3QQK909lk`l_yJrd)1fUb|sfRX zKB9~gbqC*Yoj2kk6n?PFCz(E%|6xDP-X7B)6tNwMJEQBBC3N&@Zes+Ao^^DGSU?$l z9C)wp+JAP}r1<%DN}4R40o$Mm7RqkaC~=aP`Qu>Ia|+Ppil9x$w$%dv^MBu3jN@#; ztk-X8kYE}`H%h0b^jrdaLzmnn{;ZU4*<*t&%#z;v8EtrzuCn&BGBozKt!HB z=EF4&=|Hqz{|tCm>(|G0Y;UlC2pA4$_h|dQOtdUiN;!FbC{RW|NrwfzTHEowP31}S zN##kf4Jwq>SWyzYxn8kK8^2q88#0f{R!SoE316u~{$#J8Q&-rA>3=}x+P9I)U5TQk zVnBM-JN{F#T9e~dEe-=ykFZtdQtbe098?}Zn5X) zac%WUoc(`5nSE~_STr4>@4x4=c4Y@TM8ciBA1A4!+lsCJc{YCD@2cZQ4XS9qB?lv_^TP8Zr)8I|@PkH(pSdvM=2-1AdD8kr+%!RZEOuZ1Q}r^&b+kY@o{F!bo3N z;$f^6O371HI6u={D<@BLH7K=KSc~h>NV~apYS(sKAnP@=BgM#?JN*Dfiic$R@T*XB z{gYnioF-(8^SFrf_PO(^x5}6*Dw-o!rjvZg?W>jJ$&XGt7^?@} zz*dJEiJ|zAgcrUx9f+~Dj=k%NTUUAx$iNu}GQ%dU+7Q{k^=|w7H(-tW;ze|m|FQ#9 z&E%oo|36O_MRJr`^R+9x`lB{0_nusVR;^#4E4KeimU%2cRhiNc|lZ&}E!6 zEzknATQAwyO1&$3PVs+}!QWms<+pI{7;EQ~)`~v!qUQHo1Bu}1L*H6= z1iyb;0j%kyTN2)8;cgN3eEe~fdRxA$Odol_1-_6{l;Ct;d~Px$x<$g%1{N;@y$fVi zJxNHe-t+o*8ScLU2Zb1h*HDbxYjxnu6zPJ8nRT%wmIu=c9u#$sU_K@WmvysFzwOgf zBA4<6@b2A>_HkM@)kc1>U2UxtM);UqIC%HpW~>>E$=p2LPXBj5rzIgpBi?1d|3ILQ z#Y;{lA8ZM4ltY;gyN017aV@dn#!Ty6A6@B|r3kyRV>NX+11c=EW&d#9NITeGWf^8> zGPYAI-+1z4!{;AU&62v2)lIJ`pKpo7+m)--+pjgPyTgsQ31QZwSLqVok8Ak*cX3&| z;#Gi(9Tev*oX%$sRTmb(PJW`50P%zKhK8R_)K|0TXXnCx7=Zp+3&7XI&3%Hy&~5Ih zO4@&6*r|5>LH^+4OTN*W0ay1>vAt-AvoM1xVm56=S67oC^1qQ1o9w{G_S z5NYL05%Mkb>KlR?Gf7o)N^m-IIbL?D48R86(*wFjN^%;b*UA`eemkijnoRce(tA2E zuCE7g0I^8Rw=X}OhcGu3& z{7~+M^{YsFE;rC-!;CUH`uJEt~4`jHft; zI^7mY{nsO)?D>|{k8O_d4o}L9oQ{KXMh9dn|9etipXBo`nE@?BW?m`JQj0N~|3J#I zq`5MywY2hU=KaAR@uY0_>M-cxW1s6cDjDKSYknK*+|A2B=Gin`e&aJz(05I!eSL7| zG}<#9my@r<1863RqRr&?3eGedi zb!+|VwXzEY{Vy8C#eIzs=i7STp+Uyo-UJdZ*4*gLTa?~#Uhbs+?T3JYoDY)IQdBnz zhPyeNYn$Q!4oy`dST2$@U}wc;b|MG{B=P!fTdOL~<2UvCbR6`VN9^)7e?dENb>nqi z=!hb1@&!Xa4L;;Xud>UNdmsYq+9JzOy2U&?x^4fNg8Y%-Qus|S^p-3UpH`gg1Q0#1 zdi{28abItlk~3Zx^^1vkClPwXR{}*jRjO{n@ylszmieprEz^mEJB=kXnK}mtQ>hN? z96gqG96_2CU?4?P4aiw4eE6RvztMMr_T;}3fZ(vHqDDwcs@MqYk< z9Z~*<-{nqw+75b15iPCvItP>3Y>@dBz2v@{5Ms0Vc`BfR6m)(+*}C!kL$|jXh$mSD zzmDTF+_;_UKTxc_XJrDY)rhX~RV=!`7=S%nn(e;&0T8}~W3i3K>f64w`{!rD-dje; zc*?A?@}6BSY!Jqhp9n9J)J}`MaYL+jWTHiJ`N6om1>3oCGFvzL$fC#_a|*Fs{O%R{ z527IWZ6Fi_C9Q_0RAyJ^iWY^?#FR^TPlD~H`^+<{wH$2`rSn2f#GwH}4GL;?4;`KM z=Hy625?!0Bng_P}yIZGqnW^=nF6r1ycQXG|1}wmv8So$Yco13lp}Yzi`Hs!>pqsa2 zEsg~yxj61ofCyqTa+9a^bmSy2H>v!!5`OqyLc%bExDygSh-$4yN?t{H>VT9ezzbJ( zoz~?>ll~_iyO?ZJ&{;NMaA#+Fji3D2*2%wzioYTT^E1Ml)Io#2tI|xr)nfZPZ>bPq zCIDnOupo|VHw5V#U~WW3LF#to{NHKMhjED+dxHia31NFny=kqmV=4v~o1ZYPx)Y(^ zyrG`(iJS_^YcH6OEGHXtHHSgH^D`x>IxXIq+H>+M{ffFM|3}VT#sP<-BD7E-$C6>X zyG?>hhXstDTFHJo7anky&e&_LrEHHM(qQ5F`_>v87Ur4l#mjCTeEgsX>5}l(J3&F) zoc*!Kp`2Owba2*ccVbY$z2TgHp&(tV;F=u4KKXA@7^;1H?3{ZA%H8+@rR=oUau5^l zdLxioxAl;sqv(UZ!-ra(oTXWnithY)$3x_=I$8wP*zZ@FTFgJIFV?CS8FxUxu&s>< z(c}O2yng|1hxbp)tZo?k0|(*|v!o@$Oo!$l9l<9Z%quNE&p2Ju4M^1U{o+j53h{3% zWcUR}yw8xL5!5;Al{{X3Z&38l?0iYXNI+H$kng%i(0cl<@~gyK$D1NXrxVqtCQ%Qg zwiC+MiY?o1`V64w%X+Tv`=#aSYhh;3{p>95-m(uGR3|m|j~^=NE%+tQ{4=9ndIwL9 z<`{DCaG?-jE8X2v+FDeGwa#wA%4Sd`98A57KAI#eqE;;LedgWnOq; z+Tq7-?a0*|6Nf!fJwa+v@%F~ar}w^61t+BIs_67mNXftLG?9ke5o;hGtaTg9e5j#N z{uV|ARc(?)@5N?mTx>}4tOUCc0PSXD*M!f^{osVPKT-(S6klU)qHCv}o!F2I!D78P z2eMu@DrU))jQ=ZhNJQLj*i0-dRepu-whyN>e z81$h!*ZDx^8ea|Zami83R!*YD^LY7Hq4Wn~@gK?U+`ty*#^vb2VWf zPEV)ltKY(V7v>Ioiw;*l{tsu1UX+3x@iYxx$Bzy%M?lEw0=B|8W8u1>zK))Z?68j zJcUFpiZ>sUj{c!JimE=;W}}n>2fFYrl1)E$oIx-svkM7_JJ7Z9}9-|UZd%d zE+&n|jbxB(y@`|_)@cjYpr_4z=G{Vwf+R~GcaO5$U5o|lN};BI$kz60c>DK(pHp{bs)n; zkpnxb%#1LEF@3KhbW%b}$>1Wa7~4bTWRa{Qhp=0wZmoOUin81l5%F`aqFDl6?Nojc zZ_ON$=(_h8Gk&s{$2}(`i8(hE)<6ACqncU2IvOkb6AjQWzS8waSriESoSp)R4+|t# zyGIRg!a0tDyi?)y}~>qS?`H`5~#-QGyj+1L!cHj%wwP_ z)xyqf(QQ5ftNk7D1GoSj5NszWrw|DP{rRdVCXN-Jyh4wOL!h+fQX2klr<{-{qKW96 zacnni9qSVtFEK)&j`ZU#lzwdmQ|6Rc5ex}FTe?8orx+Z>fy(JsK^Mc(Dw>AJeHr{> z=%UJe5C(XCcBHa!Re%3v#{M#6Bl8N|u0+zq<~j%KVLRj)^}jAv)zou5KO(h1_bF#TKs+en)~4gQ)|2kve^c;Dv9@$2*D- zZtW=quu6!>e576^qzWY;l*VDuWW<}Cq}9u}{GLY_DepUWnSkxyd2INcX)fOlY|ibA zDyi0-xh(Q_8Pxujk%{@ek2TXIcLA-vc`h35F@a@v0w#y~kq1Zozs7F-p^D*dQf8Zd zIPm+LdR+cTNx}+_jG5lUpsi|~M*b0bmJ4%lQAHQSv*t0me z2Ht4N%fHCEc>46|L5FaYs)6I`{ed0WC36hcYsO4BG@PWcmoMBnzu|XeFZHw^Yypa+ z>MlT?lbn%oHj~)QmdQx@&n)z!>@I1vYfI)MBY>hKoQBsUG)U|f(nBko4>||zpBA?3 z1>dP@sBKM8&y8~QcTUgNmF>G$kE^{gSpJfsFX^=9k)FdFf6L+hv}vxX%4O(#NZxds zVj(BDYx9KuT;s^}@Y4cFM$+#fiK(AW1`Yrv2qYP$=TO3r6}oPdUjjxYxKx!?;-9A@ zUitZzxVXXYxI8P{7U7Oah>Ffk==q|yfd(c}OEwRe5BUMMKw*9@mv0RZ5C2Q~`$mMGW&@AAn%B6+GOW-mFu?14E-p;)F1?jQ( zyA-cOmjK0xh1a)gP?D!6=j)wP%zi{Eji^M^*tDc))$bD3-n{vGdS!ggRWRrk=I;A| zGDT9&fcgSM;)~f{!l^^cT8!LVKYpW?!rj<-ePA}Yp^}X3L1v1C(M4H`7aXTYuZ3+kiuc?&QASrX;c1ANrAWpa zZ4imkc94m+{joH0Z&|g3b-JZ)(D7wOH2h069M*V=j6-cF&`9_fY)#GZZ2Q=I9x|*x zxAzM^IzCZso~N}N-bl1Z5XA3ITN`XsdP}@D@EuRAuyWE7TV?Sw-2l?YY;DqJduRB(Q}^Ae?LmFI9a-=5H`)9IH|t5l8%I4kQoOZ+ z`&H5KXAy86l`hPUGv?loh#ZL@w#=c&!u2ym-*>JeR3Viuqc7qO%@jOhctZtU_->EuwSt>%Z$!-MCrVNO76xwW~=@z2V{GV^aY~D_MIN zxY1|23G_VwF3#}eDObV{Ril$u{G%~Vy|;ISz{>_&G2HCc>R!zQS3O+{6RCjv#-4>W zc|UU%V74|%^2H3OVAgP)Yo|!f5Vq@(cLjQ@FF&c@m}UTd@6pi6RTm8C@rW%pA8(7# zUXy3+i8z#AM(@rpQ5|*%P}5M?qnQ@w!eCM@)g}+;j|0)TOiGS*!q|6|*t`t^xQ5ubQ$BZW zgZ3Y;4v_^V(gR=hvBc=|2&}>C{<=;d-XV30^;X%+PGuZ^1$x=W0bu(s!7R#bEza_2$TTH!0eGc^7%Mzkym9o_`3$9^X~XXo<}aQx%?- zdc_%ppo{&v5}&EvMull{F(lKjPbs?pCjPV$TrjYkP>Q*%bvb%}!5LJ0y_Eh~1?<># zF>c>xSx)mOE*5+0;PJj~461l^+0C|ad6g2Cd=H&UzX(5V*eZ}L03=X@uV<$#N+(^Q#)xh^mA+eh*T@0V3TRmR)|*F@XhwQdr(F7hMl7uDrqol9X(TNjG}_ETlrcpnLAbUkWWBu~p?pYf69Kk8Oa=-E^cjr)3LQd4)+;Er#5io}NbP zW6%&+oeOiP#HgU=i+80isI!g18`BqD^i`34^p%zDmBlni~0nl26QXOGew% zUhV@waq*k>1`S;%{jeEQRqApB^PIckh_Vh%3>slRpyoKKiVpY_prjpc#gOCXtC((k zg4y#e56^jW1Ffc4SItMVM{5U#9u&H$H@O}$^2gK*bkowOU0~~b2gag4-zzLFbyevf z@1NqKPkGW-If$T`ALwo)k{V`as}Domg$$~`V`c)zf4PdYVuSvsSSw>YP(YB-mY0@r zx~mWHwlksl`6$y4RGE~m*(0K&APlJxN zqgO1VYa=9LB$V846B%^1G2vc>W&v+|yU0H>*208*>Fc|_7d&AY$W^*`haWFHr2Ogq zH9sK$tBO9`!q_K4a}64Sc*hZS!B0=7VyIV=NjPB>9Hg4`J`V@;)N~ zrX+?`6(koIk5|^@8UyHw-SpUFI{C_qGtGN~j~|d&)~>3b7A?0Ms7o!x>u#MqufgQ` z-5lC3yqH{B+L-s=buZ!aZFxMZm%oAki4d9P(e*%Udf(-v$wOmIAimR)R=8e?^*jW+ zj>rMKS=ry%-~d_xmc)2b%@^xn@-0VO0f0B7~Sr{e9x&}NSB1R5(GEX3{ zP!^I;6gW==7!leKLc1~h8AN|QTg?>fx2JYv9xo<5@h|Q{l#SGpa>h+3VTei|FOk}{ zq@gq~kG8ZW8e+M@OjF3@5MsCPTUi)O@QLoFq0HQGC6g%b5BG%zX^~y1mGJn zynwCB+Hpj^CuP84Fgb=705}SycyNSl0K8|p8&tH?nb~oeqq}=|L+JubO6>GUHSZ$| zOA1F+tm|9NhwiVcTW@`^mStfz{zUj-=X}HWU^bjP0ku8*6tJG}7{)sOjT()>tfU(z z*EVdBFKM`Bie#t%K%zwfQQcyqJZ!$&BhFP5&hpwSUy$Q_B?icVwuuj~R#y_J|n7uP20ABQ2sgmQy#f$)${AbG*}yn08;_89Y~nuUV&XWj-mNZf#h79yh;s;A1+s12ouvJeK>NvKA%y+e6bU=>lG|oztp5I>|DnW$*}PaZHoe5m!mmv`*>E z(yco;dhCDGiAnU{^_KQKMXHnPk5?Q`0xN&W$n-kUT!i)YXFhCqP`cjragwM3b>gcmjDp1aXy%{n4CJW2di5^) z&(Wd`gJU~byqwdo8QLC+^3MhPU;niGc9K`N0k}bfgY+jCipA3w+%d8TN-Bt2d(y@V zB1QY*j5#GX_raIvuEGmAtl;~Vc=yb+o1n? z-^quA>u!jzTUxjU1Hl>uYc0oqKEbPBv(Do40& z^L!h>#_yR66&DKX?dgiJpiW|U@-to~WaBy9Y6bc<`|K-W^3h*q8IpWAI1J+f{_BH; zrSwds4MH}7KMbjNhBn^5ef@yO&;u6nf&ETN;#N_iw&%X;*LT9ucGqgtOHtMP40tt! zCvoui&K~cWOAeQo-dty{hoTU@vggJ;$!#p077%`J0wNsQOrZo8Oxuy`=F<&JT_S*y zXCFk{P{CBOb5l*;#@r@4e)#GAVA@DRxXf!BbFm!QI4;1PgC*L>gtHGf5?_E~UH@!8?08JWYNh@F>s%H5qTER;ue z(h}ZR@+(?>l9GF>XiF5$F7ytNEAvYM!z&mzroSykJ*Eyk*JJpGyTJY63=^5lSjkmp zA@lVTDFWu$Vu`)ly4s#WhAcEY%R#RDy%s}A(2y7{{FMg)+EIpphbZG!4I+Aw9<^>7 z-@9ArCDKn6@M{+iwrE@gs06=e~2ksty2=5Ch$yN>Je zYu`l6R*l=B6*GftU3E3B!GFLn=cBUY+2VRcsa(MrC}~K=hPtHjJN6gPEYT<^i%chpC=Vbie}*saL((g%;AjGRbMFAKl$FW)L&H41SHw@S zk%+ZgCV-z7SDJr{Et8^9c8lzhkCv$Kn|>iiiHr9m6r%CxM%PEi*YPw* zN=<*U3ndY}%j3CC=05@Oe}{$=LD_Clh&DLjJhT5?y0Q;S85OJfNQNi|BH8PFJ05ss zzpVhS2=seBz_(d@96Kn+_Jb_js6zQ6(Q zBRngZgzMAO$-iRLpZN5z!{{80Q^)N5VlA^}HrC>ntWbx8NWy*4&hYTq?#vP7FkDUhY+6?0kjYyiv|If;*h zE@Jorc@ZZufowo?oMYL%?m;6bW`QbID}_!QP99Ggri7=J*(ViD`e!WxZ`oDrwD-8+`L7pUHgBYWw{bg86MOJ}o7ueH#BWS~C4j*@=-FWvWee zK#Dq{G=8Y@VC$`<>CPl)cV+7lljMSTYowJ?a1(!!45rd<@e#w~F;lwmn3Azf(~n!F z$0B2sMWqQXQgr)RK#qb{zWH)n))ni|H??(Y=x;{H@9+ItDI-ttVq$57qMhd`IO!nKpjZ1o$1}yen(x0G)#=4eK{qq{qgyQ1 zr6o0rh;?G>oK7tc#=E7)r-6@IqG&~&)iAyQr>;eo zZ?d8;PuZhsg<>raj2P|*{i+_Ni;y|Y!WY0}el)#*tpb8@{^r-=w*Xjj|<;JAw!4 zo&FpPXQ%eBbamIob-bRd+J!sJQ6o_s5ntlf3M=_9E{OA9mM#pJ?>oqv=mQxL+7z# zmEw$wnkM;avHIM1;z=asn*{^6+k`N!8@$|R%(q~9Zz%9=QsCfGLZDZRnS>UwXV~Z4 z6S5<)H_2}|%Lu~TMa}{QK4OpZnV3eYud-BQzzln@T0e&rXZmf#i>$|c$w>8JL#>7@ z!Cn?0ucO)*SGhDCFB6|f&)GLnl|n%WS>heD2;;Z1%iBJ)WIdsP{aWB#MGoreJ1qP#5b;RDDshc;*;+pj(^NtiA{+_f(uI$ie% zRjt_YD0_SRr;^(H8jsrv@eJ+=m6XyPA-vDm}UlJ*)ykTb|g}i zbQ>c7UZbffID9edY9e}fIJVYDg>f*}d#7$NGHA)&txme(lK8#o5?sOY-AD4JFSkkm z=%N?IpJ$)CyPnn$EUT($@LYrvFvNUMC6T|2JJqwI%-tD!;HW4LTO!Vxuy(f2RTn22 zfJ)^6($x1OCz_s=v~Fo_ho~9Yl`yC<(a|{yd7l6^7=3J9zdpVU+}*icz+_u5FuD6d zq>frndueXY!cgS;mXM2p8#7*}Z5$IP;Wuw1bxTC6DetOuuQtRKib!i@^0(W_$ka`fw?T|R>>agTO}R= z!^#nprWf4#myh-Vs@Bmc7MO&_rEz#Jsd_Z8R}|}av|KcsX||jsY&Y+by_l20Y(ndx zP*3Bj)EzGG7x^m2;J8^|lMgs7*!zn!V;ynhw_td9c)t7qBtz`^c;c$vN5%~GJz+jR zL35ZJ|DIV=qQW)5O)`i@=f=Vr0(!J)DxIY^|i_w+H9Epox#N{FJ1Yeb&VB!w@ zFK88&e)j#xmzTE@wUfr}ByHbHw4aR#LTJnAhKaxOI#(K9Z%wTxJUgIjKdiQplx)2A zIy~qWU0M1Y-N2{5NPj(zUf))7%n8y`BwSaI$kV`yxUFg#lu@eQ5(|GI+Np5#f_<{2 zLeyW*9;CPIS6#4FHlWH8GYhqus&TE9m>H9J9+>VtZqZU!TdR4qE8Of#{lS3w-SV`p zT{(K+)DXBoaNByMQt+YuXymQfZ^@hYPF;j!Czc6Z$=e#dK$WY(_k5bX0xz+j7~#0MR7zD+I9gIwe-9NIf#-h!JmGzXH5~{Y#Rc3F zC`+_3lkRLqRc8YDgf8 zIo?Gd{O)uAo3tpEAFVY1%{&HF2~6fdG0^2D(wupmA`Foc6TevS@PrH zUbWCj&`h-~bwKR7+T7dX;^N-NsA|D?c3^9Ey?|(sZQ1)CrX+EUTm3P6YdQ-Mrjgm!C%>xxN#+(^^qeB5#PQ>nK0j5zjr%Ui!IhKRltEQCVo+A2#8w5lyR`Bt}^YW(HUx$rXAgfYN?}9%( zFzcfU%eJtZ4g@#l6$7lT<2|Q`X=co9vs;~BFI>1Py2vTZim?Gx8Xn}6U1f2O`HCe5 zte81S188xW4rFAB`hxjf*aC?1BWNXhiG44tCl;WU-h&2@3l`%t#F6Ffuv8PyJNNZu zp<4%d86DqU416un;fr11s?$m*cKwLYazUTUqBY!eFC+&4I*EUXjNAhke~}f+ zqt)T%jpB$2zdl-cAD;`4x0dhSPm@`O?X3BC`-od`h<85S9b*dq*LrI_RVeOxkz=5CMgxDh*upa zpsjc0ah6|OeJ5jLn<@%5*HBQFqF18lyZGE#9DkF*guo@wip(ptH&>nVKf^KyR_Z{H zFh{KLF;6oCJNEcn`(0!yYj|{L_oi%Ykj>x{6|eRD*!grj{LdB!O8^cV{nm8-8&00f zh#pF&V**21G)yAY11YvcTZkw5j=M;cilxkvQ+%FqoUTVNSOZtHA97N)-rZ10X)rp# z7E{1Qy6`(lL_FHYT1Z4JO`;O0h{3(xgRj%=*_@Gj=)*ti^FIxqaFRY_B$Q>Xjg}m& zHgMM^DnXrsZWX>59|D~?(5j)WlB`;{3Fro^l7irixJ7+Q84d?5MbWv!BrZ69uPJ2l zILuO0t{!}5Y;af=cx{6Yq_8y|2ODZ3YlcRvcSd zt(P;l#o)pVN)?X9AB&r)fK_>{lws|;*gbCzPMZ`W5aQJJR%)dXlQC%E+lnKa912hO z${sOGj(7X|qw1@fe`d>thSlV?)g^Y-|8;Q65d_t-_y!H)ORQzIjhPO7;q$$#9x}NZ zhgCPAuDW%V<=vv>Sp;eFE~;d7uFnAi+tQh452K|03`*W=B=ye>I=Plj5Bk^n**DGg3gN{bfM8_ioK!Pccf`g>*D{kJ z41eHsxiS-il#CA0u(BaIi-PO zd^D|4LLiac2R#K!v4_x zwN3mBZQx%U?2%9p|KE3pJ_JeT1O}LkbZiTGgFKd=g4G@Go%r3kV|=WmK=%L@mz2at zV>7cH7dJfo+Pl&Pxi|Zq!R&NCILMuU;;p8_yO)+?m)-FNX6~&mbf|Zly3g;gK8{+L z8fWQ@suitoD3Ytd`d0F)^%2Fzu8;_@KualNxHTT@;Br}YqtrkpF(>BW!cX^e1vB>r64$8HmS{;FyP|yV@SA8(K51{~- z4>XrOfMChj1d{XJ$mr;*C=Ha9s@VPo{Rz-bz(lV$U$IB=i+N@LoUh4A| zZqOC3=T+E3w=6(%>w_284Z}vG|5Ns6$+`BqQ-5!#uh)mPON!VOuoqBNzLQ1Y(C73l zbuV{06&2CeT=QM+*)v5mBO|O^kP33MWIOuV3+t&P!;~&!iXMOrVYVOK5^c3K*;!a} z)UqZ_jE$R)PELMorCb`OPNkW*h9zMhf{`F8%e9ChR7?EFzKiUP#Nf{qW=Ah!#{lL) zueL>Ev<#h-$+}2r0#w&@b67-eN`p*vYa=)%XZJ{!VXqKhH=r8em>+bvDg-LANpu~% z`>&Fs^azVX`~Bo@2D_#=cGp+UiluA@{s&F&N*3<5v+fJ{uk3qmIOHDvr81C`=GyX! z5=&-xKaNj;HR1Z60pn+9Z3@3&+k|z$_%CJPJGg>Jh?grPgWc=})n454i_XFR?pwm# z5MNieloXby-%Fk)=kyozmE0gE#y_O9=jNb49)?`R{sfMHq$#Uuntr^ZaHW1!$cxon zVB;HW)*l2~)aHDN)6FjH81huW5-Z)jjiQKi7Op>LGF8>2LjXNIm)u3$D%Pmct2I#m zp84Ttv8NmyZu^cAFK?baeLB9&C9FrfJ~HweET2-Rc*{l37J(ENe4Nk&t#!>&`fzNW z+;~Y*_pPnIiSm}NqjC0S6F^u<$xEkx4Dq(>Olzxf7h(U|jVI442%<0^^)Vu%@E*X$ zz%Go@9v$O$ojHkZhHwdLKW>b8h^1JE3Iy$J<7L_UJchYUt1`cgzGYbi-f%7;0HS6h z@LDe&m-EsU6<=qg5cspv6pAT_O}t9ptYX_3i0(SpHU@SWo4t7Bc*bf8#_Gq$Ax6J5 zSFIhFup#LPy2Xb+_HcX@v$e~wwXh6LJl*_nAh$&#;g4!R81)7wgaB{qeq8h#o~Ld7 zT)Z+9HXS(5Sl@^@QOV*>Bg5M5?(C7|h&>Czzh#k&Y*2`gE*W6Px)Yt)Xs6_ZqLDr> zHhM8QxN3q_sxm@F0j`aVh3*lwKw9!Gv0(;gQHf{8L3gcR#3DY)HC)PB-jfn$*X;_X zptOnLqyR*(%RXJdE3BB7%`&%-T$#Rg2YoesJ~T5?%0ySEGiU`CFIZ!N#2ZKWd^LbG z3xCBn!YcM=*ipL@8qV%KboLXYpQ97;rV?=HPFQd~bT;oR3m3?aCiS6@%%_Dg_jAF)y1doQIjD8k^$}+} z`rD5;ao-s#I}xaE_TBA+!w-l!-K9GzEh5UEIyW`3F=erQFycu_3H~%iO?V!wCV&v} zwkha|j%vk>DThsY>rztp9j093vS3UNLglA1uYZ80Tmw@>Tcdo2hRpSo0L<6Y031<@ zgFq`;SjBIN9ylpl{$gz-LG@c7A5)pK=y@!U2lXT^I@qa4D{5_F`uAtI#lx)Vmn|)V zzq`4(dtP}KERkSI9vOnhE|mR$Q{aFJ0Z)+Rck7C97XkWFPq08Xb2@Yxrd6rta{W^^ zI&(I!9>Sa7gU|CpGW*u+rX5wuuTrs4Q&!OwoW~jvf#*_u^qvGsv22NQoh`7>tzzQY z(mdarZPD**4QO);nUiD*9_cCH)#_bRPI|*|*Ek)My|K72ElM(mCHGc~i?#A}*RNIe zjef|A9tXDMQ1G6^k#`3t??h32gY!k)O33b$zoXv4=XHOG$~aJrQO1H!EY>4t6nGr~ z7U!t-+4TBvMEy6SbwE5C66VRWR#a*|F4foNMnNlIGW+aV7|*M*dwE^tDHJR`O5G7u zpQf@B&i4aQ0F=OBce&#?Oiw@V&d=j!NI}1jdXbuGd4}OpV)|Sf^o0pTr>4@jQ0w=Q zLjrDNgRx$gW}6DWUvm!PxoGYi%l|G@wE~XN;+D}FymE|9-)#7HA0oE9wUrRp-M(gCVTQTTE`Oas8xSiEE{={ z85Q_2hnbhYTP|HvOo@!YOQxMb7a|PL9 zX9J2;I^E0vL+1wxjmX8~&RbfH3x`x@yaWnCdE(!&{+O0*W2;QP)~G*>{@#Bv`g&dl zx3`dcM4vyq6rj~=^L<`WxhjL0Q}h-nfJ+zb1vSYV`S$ECUI#B^8Vp@%b0oX6H&K;b^ljlaRzb=cZTfyC;DQ{WbuK1UJCKX8t{-i-n-a-Af#{ZQr=M(g$#p>u{y)L zZGEsSj4k71292#d(r@mV5nZS|Bko#zU~@`eK3bnjO^F)V8B*PR%{Z*tv*h|A=gVkS z)K-yla^HxdL!*Aq~5MC#x&L&1#$Eqx>bcJC?zN0>695gWCSer@^bOpyiKNb)DIuooMs3(*+;xwe zkAjnj$Pm`+_wJ=T4y>W}us4eRWRv2=n9WF0wyJ|zH=RBbZ6YEdz=v80*^vf5AnALO z-uBwz|4)g3L+$3@62CZU7aJL=#72~SLcr?Bd7|@bgTJ)L>CU@}dmqXi13)M3f*QeM zZ~l&>gQe5++^zqNqj83UjfwwmG+P7$rRzc;EvIxSTfB4@kPTR29L!Z5q9QCAl^_pR zlqcA`5jK34O&o9Uv(nQ9lT6rcM+J6q?|5KMQd_4Bt(qpOyyDTX%zqFK+5Mte4cbgC8?hDDAQ*@ijDRCI9Q0f1#gQo4e@Us zF-sm#0&KMwH6|YS#&kGx?VBZA#aA8|sr)DZWq7lr%7yC!(&W91Ab+Wtmn>; zuH-S|9_s`lewFxF>WTGHoG@zf*c`H_z_S%aQFnThYHERvMdpy#jw3^QV-b$1e~GC7 zEh!i($>SBP(oLG)FZXPFj#M{|Wm~T{zs+wHDn})m>T;ayC1GT1F>{0et~vcmxe8-x zo~UFrNeTXtzYtQVmk{v+YcoUVyhB*8{Jwl9?-z2uGE{g@uXSl_-S#|yp^}R4y$h7?@ zp^%Tb%nZq)@9R&upJwr&O>m(e;o^i>ZaTlp;eKQMsN5wMkSIwJ3xr${lJ_v5{=exq z*WW8CV{N(OizgHS-(V8z1$q7j4s>U<#B6+8tIL>G^^n)N!B0PjA;CyTS{b4j;?fCs z#%b=8hOPjO&T^ocjO47_mGP*%qksc#eCvhZstrRvCUJv3O2rv3qtFndZQU2?C-DEQ zasT@;p3V|K<*RU6STqbZcYgZRrnjVg)%=|67_Sd3o4r{TOO@+AqeEkDjmG_7@en86 z#iVieQ)4lE=wdQI^V$}o1)cyno2!#Dous9rjNMaD{!T{mt~ZcJ4%ua8*7M#Cg#Y8S zh^uOgDKN*YmsuaFD`&E9`BaHL?7{0v2qMr3bJ#L;aeYO^&|5CFn?`xR06+Rw4vT4f zxNHX_;DC!w)jd2+z>ly`fZt8DB#>^kwIA`QoUY|XM%2mUXEyl&Cf|3IzK+6$agmYF zU7Os^ZSSfGVyQYc^DTZ`6 zwz=)&#*Y!rCXUM!CN1H`l47Goo6K#?e3KByubeOot;*s^W71ghrbGX2lg`kiRXZt6 zZub0GR#kCE##_t$$Ltaky}QAfGdtJcg;3r}XvoCta2O|mT;w;3NeNfzkMQE~6X_*e zoX@cNCI7j#f8k5BlcPfb9t{H5@{@Jh402|pE)iunjs zkGg-qf02bpBqaCE$?&`)Gq`HOPd?J76=_Z=X3^!|@<6C%$q*f`?P>PZLRQM1@shaU zf;ekKLWs|;7v-TL##7&nk`;68!KAhW2ZxOdN9Nt1mkA1*F8hmXYiMxw^Vl4cX@<*R zV-<`4a*D&mpxG(*;@Xo>-QC@>xF#EK&g1y5m})UOB1%vLgACr-LL4ZoW?{1*IW~5$ z_UxBU?+M7OP1E(p0XY&igDdX+BfHR(LeZS`dDD*t28~mRJ(H-)tlcX<>V+TT0Ug#F zy`=r=rNP_*H5%@g>?vuySGuX$n|AUJE zCN!IvV`4M-@QEnoB6xuzp^c5rAp@?CbaZT!$Jr0RFfK)ouqq9^_PaQrb{|%S9(an3 zj*Mj4s>a|J6B0>#srnXD6T&tt|MC{e4S#tHSi%{s*(T_y7QXnZX3tITlf1w6bcI?+ zN9RKY&xWvSm!6pmT8r(C$oG)XH`=YBs?OiuzWbU}4ja>q+_4oEEu10S-ZC+9Qn_^- z$&TBp*Hxf-3K>QR>=J$Xu9e7wMB)YXxMZWG$9J!NEX3d%Rd&EsIj%e1Mmh$K$=i<99+5B}6ySwK_S&NA{n|%N7 z<%<`Aq@<+V<#J2i;KxesQaYDIYupT39ljPj(NDw(wK$!%{8`b1Pm!cdzT?!s_ZUj2PW-L1kW0C*gL+bC z^_Hd%VBm=xDOmZy7o55Z(4J!e`s^^YL?)MG?)SqNNNeNrdS9C{6X(xvS{D~Y$!ZB4 zyIRF_IR9OY$aa^fwsxu0mLdr6zqpK^8k%6$;DA*_R$sMAcBo6?x0D({k69S~=&*OA zucaOiJL*1h6nU8xx{*9Q@YQX1fB1-+hUPyq4v39yZrr{gTTjh3IaZZ!%k;Ck98-rT zrYrvP*Hr*+&XImj@re6zce8Oyz$LnG-1CRaMwM$y zc!KY-(A)#P( zRgw_4RGcW|`Dv(=Xu6(HNYQ7zxvb%B=oZd=VFRh8Bb7EvBEE<7@vWz~U0i)tE15~W zMZ?sVUq|WZc2YVcg5yz??9IE4Y}M3iet{qpo5|MLyO5^EOv9(xplHG`W+<8RV8<#U zrwFY4XgYMQtArCM)DkNLfXDzq`G8cv|1N&x+4K(NE|!x9N43PL(jDNX=S#{hM>&kq zL`MKfOX?O5(@5Qhec09tn5RuAwhx!&n5PkDB~9Nz`A4?iF>fXJuV{GlVNl=X;nxfP z68otvLG4=b%zn{u_T}{4%l5GlIMh)3;sj--{v>wyyVG`;hlTxXQL(|%*C$OF8P(4U z$zFq)wjYOl^j}yT#hjf_6tOMg#yH^UrTxcNT%#eSgd$j7#k{d}7MxclI&_L$CM6xY4+J{=RBp_r~HFfxK74lZq>h`Zya0R!jKiorZ}`t- zgh`QBa?VSHaxH8qz1X+Z(~Ef<8e_5VQGI)#D}}>APkT>3>~J|XDkYcXz)kd6QHQ^h zK670$vRF+Q(p^}M4gwt?49?w6U%f|pc`2OJY$vvM$}^1E*IKuNBSS;OEF7dN ztslpx#Px#-oSiFYKHhuTw^&%Z`F-||EhaUtIUuTzJzJL2fjg|tL6nsK2E5X^_Cpx& zZ)VbMLA40pLB)IF#6VL2yN*+avHCKYzIB*6W@)<95+NGt2$|^V>HD0Cj<18|R?yW9 z^+QQcu+TsdV&UT*_0OQGx5&T*x{P2#JVv6BLLSqx%#?8eSsJgCG^N6l223D2cTl{5 z+sMK8zJ*Gs%2+F$(d33`b)fLsaqAC1hXbxmDRepcg%5pQbf&ehK(DTl_+LHXg#`cp z)Qf)~mn+&((3Ms9SnAY8FJHo1)p@!>?=aTeiOP-fSbI^ zW)`;(ul0sn3hHqPpSQ!Hy5<5&>KtPKKJ_c;%ihNXDw-;pY$d@$-6mfd9x-blI6Ma=x@cjIFK+F4`c}{6uY;0fu@Z-u~M?oo@ak*^6ZmZVp z-<{CL%auZnYb2ZE4w7`=&6tWInc{B@vIIYRcmgUIxNIj7CCFIOr_t>ZiMMHvUKnj? zC%P;|*ja41&CHnKwm!dwwRJa2=*OzPGeeUBAzGhIs~mb-GU-9WhFhDGCNCHaN5%q( z+_SVlNw$X*zFNcA8wuxmd}ETBv%cXc=X#2AS@WPFeCn9x(Z2Bnb$JQ0Zf(Tn;}_H-=?2mWW&hEVWf z&TSR=H~oZxhF^>i86zq28=fsBYBs*vt3Sn0!H?q^Y}{al*ldmY7k69yMi%12+|<=< z_(sW=)Kv7BLHSyf&@kT1Hh%}L!PFdyYN}1_FKgkiLD$zmo=iJ$(AuW%#@%lBLfhmZ zhV?knrwBswHE3)nD3Tg}KV*$dHneR*hK3)P}=3B3Wa&jM3a0lg8KkpO6-sl)8#bI#;fA-GoPyx>~xL zY@$QTK_Rp8=52%g5VB4kJwAOsJ>DraWqpO2sfmBS`S4`iHS*!2pH<&(h5jqoaC6&@ zSMIw34se``CezeFO?z{>L`9TDOi3(5@pP*?%f>gAAIp`{q`jfUIEl(At^vXl16Rm8 z$7gH!UvGgFK`SvcKeTfetH=o1v9}m`*7$@3H#K#fGm3fqnUkH^w%x(oagj`8D95w* z|E5{_ahh_TZEj{SN|q{~-Ro*ALSgk>0`>%4vrX=5BZa}$oV;xycP;g4-Yw|-uG`0v zm-d`r$wp^bcU+iuFFMoYa3awMuSIv;X=d@9G8D=s@HyzxZI_OQ&aqg7?p-iV#I$yu zSvbc|FJAoq^c4_9pZrFRMy+#X=wkx4IG%0}qkC)FI6N4n%Yj2twB^3Dmw<%6ni`3+ zGLS@3sWi260;vJ+E!6%5Ve#Ve>-dS(4xT=PW!e0kD@l|3P{)BiNza(%FUl@^;hm{& zpMLNwJpM;V6`oCc_-|SEuJu}^M%#CXg36cS#&H_QtO{R-x+;1y8|FhK0(ni0Y-cHo z(eEcm|Iz%)1M%ejGgVzvLSWf>bo-|gI`t9J#uN8XxLdiiM;$jnp=+~8lwo-Du2MN9 zi2=1Q44Vcy-3;6-%rfP4?hSf3?J8%H9Stk7gC(Gs!sm;p`|Y;B?1phN&{XnwY9U76 zZbBHqG@4MBD40;Jc(v4;-`vxDcp5J%Ect=APb;BT0*}Pvih>qXxAmP3;+Kj)wEgv` zK1YT*+(}cH3`z%R4{@F?P^7hq7ebK*sWDON^kbZe>kpyti(qM-RcE{-$~e)OTdN=| z*}21t2?hFh&u(+$y@OGxR{JGdja^@gU!DDBQ06k_(fMy@-0>eN^$jE4PH;}=tBfco zoRriDNQlZ{>0=6P^&B3m< zfT488Bc&c5a91X&sClP=vo$*W&?h-yJRvq&!!RWR=gy_4WHx@$!cD2GH#J1{)FNND zK8+VAr1-_#lw5`XW`!6L^4TtZdpzLc9--zqUL!e+Fet&iqjZC2{7>on`dxVto+Eg{ z5YzeRuGj5HQ3{?<0IKeH6e4}&6ww878mktaE*U#`8hvc|_ZJ^c9Vp_kDFYDA1q&k9 zPsrw{vh{ZPE3}z&`qRkdL5S3n68p2{^yL$bZ7{l12$zx43{~?O*7%w zJFRdYx{03A`jhT%?S{RMrpIP1v*oXvVm&S&Y=Ih?t{;$W2KpVVj<>BxCp)Zt@_?K`nf$ivvt23rti3gXz4kBTi_|cQ7LRq zVrgX!QxCaQ^cu_U8&{lqh16=rrbqsaG_A}C!-)DFWNUOQiby1Dy6FsHM1B49I1~7@ zT#p|qHJFFcvr;dY5EIjNYvRw%nL@vB<|A>GxhhQCYTKqK}+ zyqRGluPxDU-45Xj=rl>|uJV&C$?FjyK3ID7=K9OU3muw$rdMh|Ozy8K8)yVM?aaVF z2Oos?p`0s6yc%rY2fF{d@Al&FLs;tokx3>n{>-^f^ncCjQVunq=COY1WD2Y@cfW?qL;dpyvBug+eu1mN-;-m3={ z^@mb%iB;VuZPQ@t9Nv&zchW3dyE3&lCTJZL%-QBZBYNrFO0mq z%da-fcv`e4Rk=@mI$(DVs9eyd;&PJ{jQf9&^q#4K&l}3B|~9YlfNv6^^c9$iJp*P%I`a^OwEie}{3c zREn;io=9Ai&euiI-Dk)Zjlr&>IZu^v(j1=j&WEY1d$IwtZyqz>%FxOHlBg=95U3NNPT{NXN+v~`Z>~C zqx{L_#`jNu`6VTY>CB$LU%LDzr+2vs&d9-Tx4F5Aq~BE}3Jy_MY{RsLo-hT`;d?d5 zm_FRAmsW)k%8sO;noC@y#Ky8x%XFU3XQo`uc>pCtK3aYgNFjTz^I^gKL-inI!ZdzV zVqylu{)ckkE<{9xQ(xzXGhNb+507pTPr&&1TMr>@S@VpPp{ zr_U+w?ZS+9bJ6?I4P0=W(~SLI>AA%_vpi`a)w^gSy0%y!NI*V zAHdwuZ`u*OkTzs4-3W1aIMnFv+?KW&L1LHDLND~=7@G%Y6HjOpc%0=V^Gf6}h`qtO$$e+t%a^G7Z{XhSG$!Lr=+xS3V8iI5^`?Z%z28yE>xuHWmoYvBTbQk>JS~N^J-Xxruq4n z=7;+ewO2?))KOI`8x*YRgS-AEsU+JQ%X3g zY8rQNaIl#6b=H<*vWt+DuG7k>tOM(-Xc*tLSc2_aI=0zbG3`aUNS+pSp=NVu?1UQE zFuRa}L@SBkjP~fn@WZpz;Z`I3%$e=U@tStVD^#LlW`nIwp@wV*$?RUL_oV#|+5lDk z!e-`_m;^4H-MNushKsKlZyR;bIK#ZF=Xm0L;mI&@XZg@A=fHK?8wexIf_6?Cvw`vG zLmqJ+ra^&|bE582&!(ZT4YEMc?fds}QDSG`*O^NF)!Um4B-Cyl*O%NW#<*b$i%sPO z2XC)Ig%!RA8=|`4ya!{zskcoex*Ix@2Y5fh8>wdzI>2;&c@*B{MJ~@Go13~u`n$DL%BZy#6HN~2JqONJ;o>V z0aTJ%O^VVop$Q2`s*4Rgi-rTaJlOU}Q!iLIM+5MG4Gon@fsX50ua=0WM(K3e0_2*M zC5S}J9C3-QAKN>=R0cq;46=Z5y%fp44r03ChGqX=?Hkw0S1aZw?DxVXZQD6Zr)GrR zX0FNQ)fWpd;`CWv5uVK;)Un{+3h!U>t(i&2?J$ThCN_52;cVIr9*Bz6YEyTBa_R*t2#XPkT&i?_B8AHx-aS04m$?EnW zf&-ve-U9fKC)x=FL+*Zi&9K|%n;`ctCY{1*MlBh%>0Pa!(lhSavUy-9y2{AseWT3z z*xgOBIkP*#QXz5n6G$#>gIEZmfDn25v)es&9vGmv{PazTY_tCEYU;ecQ_b-SdEEeA zaNX$%*;d^_F5qr(1&}n6j(R8YYyZZD zZ&mK*FW;&JtG&akF9Y8F6)8~mL5PQbThuAE?}`wZLgRCF6`qU*YirX)hM5snlE|uH zYxkxJ2Vdcxb#N0tZ@5U&C&eC@_dRXW!(l?_|6oGvHx-$N2!W=z$JlW7Jpx^Zo?IY( zfuF$ENa~bLn*76UpIZ|ws7IMizoSc^UnQx{F+6AdN$5QUWoJCz3 zt*pgaC0zPcLZR5L{1r~|RS+@C+3F96&i*5hd`g=kuEU3>8iKBj?koJ~#|ZBaRWR4o zmQz2V6gvQ@s!CFvTNDe2rP78#cMfqYrVO9{86qP1U6NoIsuj-EWKNy1NeKxG>akFp zf@yhVFlqrJjs#im!Oh2OI1pb012rOJ;<}Agf>-F29?K`?AB$yZQhG`hO6HW_(m=6f z7YPdmk&o8nPmz*+{&^U`ePI8Mm}!HsYfR=F$?h1C(cdn{`hePU`l{v*>xGt2uhk>S@eYci$Te5JciFi3p%(F za4YGN!GkZ}}>bUs87joT|o}aLyv_ zt~<-}@kSonn-cHrV&NPL8Qno&?MGz>W$AE#TrC?*H0PdvkSW3bkJ6L9n>E zrsIbnYjLoi(F;7br4R*OQ!R-he(}bSHX-*OsKK-!^m_A~!kt7hEsL3Z8^da!>A5+} z;L4$D3I-Y){JYvW!+0v|tV5MB*0W)&t_*ei!8b{nlSkBU({IG@k62tdepAFOpC_uK z9S@m`G3Cr=7z;!S8P-G(epAg! zI=x}h(^D<59e=Sv}RB2yx6P3g3OKz^xe+F>i%Vja3T8!bb1 zXm&O2&r@FT$=o<@HrWm-j$Ur|eryXGS`KFNuFtvC_-lg#cp~5F;O`uGLnW}?sY4E5 zqYp@LIg+cFKAc1__m)@kd4Q}CG@cx0F`;ObNS~AV(YRX9@Po*E+G{Ufw}rI~T|swe zbQQ}u{@d**zAv3-8X3^QnX@un!K`KLJ6`OhA??%j3a5(#mV@GkD*^YVYIRE_L*ip) zy#>m|=zWVRPS@?R6UFdCwm^kYdJ^@3X3T}vYBryH>DASG^XDx{9rw?^;EMmyg$h&9 z2i$1OVZ_6#xU!3c=B1DPA?@CdV8HDai!AMncY?L z4Yw8!Tg9QyW2sOwQ>*+Z4<*@DiJUrGp5vv4Jv|~%IgY?Xl9rR+u;XYk_s;mN1FIYv zfp=((j?Lr7$-=!`8DcXb8fE89>JgyWT!7T3(#UG63^W>Fu=r~zgU=_1_MuA5N5DTB zC)@G-g>!jjtVUf!%28%H~ zNqX+)2~me->+5$7p|-|~x%Ciki?gkv< zBadsv;Rz=}80aFt;bKd(3k?MQ)Ch1~$yopJlfiEkiq%J57DwB89qCf2(^~Z#WNXYr zQTYnaZ*3K&&V0d9lAd%c&ECh9a4gk6mQvNfb9G`CGaVyh_kpi7Ono=L(Q1;>y+6M= z7QpDCty2}A;ZL7RPtvK85Kvu@R@Mt$&33hDb!omw!SQkjk{N#xS zTw5K|e5kX~q>27gdVJf5tP9V~NyOE=Ih10VFh%UZ@8P{7+eW-EY|Cy*z1H}Hbp4$= zbF=y{opWi6o^baPH>%#uJ|~PVyMKSR*6ddB@#OosdT})sj_q(`4gz=;)uy)y`a&h* zQ4P8Ol2^*JG^^8R?d~%)ooLquHhnZMwXg3uKFXiBF87A$h{Zur4)0SOW~?+ik4vVJ z1qea3q)b-)h+f5cEiiwD$kB?y38{Un0{N3~GAQKXRo!?3=j-`JmS8f3qsTHnzY9Ix zRHD@6P^JGTjV521U{_tF#x;>@W4jBlzuE1%UGffIFw+C}6gRyAM^vRXp2~JdXk9t} zl=WQ0{G8Wt8+~D%SmdB_;cnuq$u07|Roiw3x>i$D_Np~9Ot_r!t=XHi)mxv0;B)d0 zDRqvYGknOl9L5-n&s(>R!>3%g%pc&_|4jX>dsocaxcFJv@Dz4FI{6!Wa$jK~LcyCS z4rB+vS}2k@4xv;<))bxUH+$=evaVZCv&M+eu0<$78P>FM5v+3$=|pV9_vh{FgRPc+ zpteuvPo=e1brH3=e7nHrSkFC-Z}M1{<={LTxxe<#3VgO0W^x^Aoni->Ym_2OxjB`_ z`&t^#F5J?f1;s|l8M8epQ0Fj2+k`P*duW;H2fIl02uvlw)i!e*u`;ijnxlNsfTUlZ zQ0D2DZLVrt?c(jPf*;n`Q~hOy4&5l&d}#DHybyKnDatttogE((R5IQb6&JglI&Z=9 zz45dXV>j*!^|iNccTQ|=&y+|pXzV0~sz76AtW#;G9vJ>9Ptu*4+YmE%dd@y$VThK? ztUvZp2;IrRt;L;!7~|)C<*0z)(tMTt z!kAw6@TltFVe{>fk?LKc$p0}an}A1$XQRl*R0TTV(P9b>YZs=KP9PCxC?};GiPm0! z|H)ZNmu~AhkzoSo7XehtuN44_d$6h%DS4foQzDHss~am;{5WSXy4K*O{@h#lF#ZZ@ zID*+-z6$tT@Qk6sXJ3mjoGfZ|I2&42%&=&1Q$lqq?&OwD5x?{lfuAR~S8&0g4lI(OkCm8OHx5@bj~kd{Ql3p}Ns+@&?O153<)C3u5)Lwwrh@%qeY^NL6_~I)Ry0zKq%8+ef1<$DeMFoBbNjOk)2=4;# z(GcmJz6|=M#)}tKYM}~!Fa6&Gtj z$S-siS0Ek=ywyrHiXZZt1E@9?B`wCF5#}{hqSEL_z3a=fyAkKILa0l#$qaK*YMojL zO7cqoH63d<+ckXwE5@xXtA{R*Y_M;t4L01|q5pSj;E50cE^CJ?gVeBzIxFSr0Y2SY z+r&T~e=~ayw-!@xv_e|}-~#lk&YG0weS*+khau4gA1x(-H8HA{bnAwD1wKs3+O33f zh9b(&hMP=MI_pCAE_U}0h$@CGbL|&eDT8t z1K0PaIEOJ?=50Ulgdi=>5k4@V-~06GdY<&Wm;Ci z%*H&pKEhf5wGOxXuI1&t8Q)5cQICZ=H6?_foc%--OBCH0}+_oH<&w*~>WgL7T1%)mxIJ$47p zlHZ$1xS{Zm%3=UFpOQt+1HI8Ir8!mx(K)(`Qwq6?vhuV#+XlQ@y@ zfdoO2Jyv^1n6nMbE%LSg#cX@Xf)9UuAK3!VZOgyPElVZD@1Pqi_J{$PuOxct&x`zE zi05c(NPk0FVU@*~jDXDMVH$q4Zxv_=7stzv8~4?rEsAx%?#zohAG&E;#B_1_W3g=O}7b8oEXGpfy42AKAz^os5OxR$*34^W`AJ-UWR#{(=I zmQjDrxYgl5ZrfvSPc!aYZN4x(%25>%mSV{?&MY(S{Uqjg@Tw+41mTr=@7{y1N|ADm&;J3FROYEX=$i?tMw<}(x$k5=d z`uVpRfjvHhw1y#qhP|~C^r<$}H2q7)RT#5;a8M5Sk1gxj`Y{yML&cz-+2S)E@+>=+3U!e(6`XrwP8-FD4&#-?*G5O^R#6TgnIgnlqeWfGRlxe*D zk&jxEm+$s(@IAyyN#AcX962h4`S$I6WOkNsP?#ZUQUcL75EH+D-lmDO=yFW`MMRs< z%-1_zn^P0)d*dxXHk_$h41^@^pK~J71MAo)FBGi!pKHI-VdoMTnjN3x#1*;zoWlM| z_8M)s|A2*+uee#k3kr)PszP}!#zTS63ode(?T?B7c#WcPw{$MMm7L$&DGuPMCD6x$av&knr}jJlW6*qkkutlI;#+yHV0 z5(L%L@=y7pF8d=0i$76!egEy~G3ll0T3q4cl(#!}^lT}F;#lz%{&fI6f#&hOR4>5t z^>yUwYCJT>!WvI~%6IaL8r0X59p8rXkdT;|blixL3&&>(<~KC#2tJ%5>>#2ql?V1r(1)a5JfQXqKBN@@{Xd`C=hgzX7aai~}=$4}D~jM!KkiIKcc*voAZTeam5CUknG zF`8yH5BSMa5!I@4#2`{-#{j{jO9I~r;o0d+XPE5%ZVP6g7~ibG@YmX>NZDA5$AiC1 z9USyzp?Lc^>6i-@m_VA~+9L6_LD-!2*!|HKv-dLrznz)Y-=FeRu`tp2LJF8OMo&klUtio-*n+VU*i7DW*!Q^Lb zl8Mmf_iG3?G;~;r_BF=N;2FEPc9q#aX3O;m6YxI!VQs?j{@0(Q`>yv_;$n&WQba@w zMX?P|+lAHH5_>g*DXx3976X6g&CISA0;;nn_0Wk8#PBjz`B9!Q3U zx?rI~A!<+q@$*@p7f?-SBh7u_P(gy=W8G?~qw|QvN2!DcahSATLUBW4lwC;T?C8cD z$F)8S9t5mT7n*chO}-CK@oql$&RZ}1bGp#86`!g;CJ)kTD@7*RUVL(<`(~Sc){8x= zw&)1nv^eF321vSv_HsV$Tp^;PO+kdAptP1(Slgqc{e$zI(Myr#_){4l#@BXlLPYZX z=_KfxBr`Ki@{f8I=-taG__VXADfkZrG*3np^u?NX?xQe+zecLR-x9#LM-N(S7j#Zu zHjB^+y!I2%HgNH3FQZ4ua&nJ$5I$)i%X%X%BdG ztKVJpT`j%{Sw8V{(Gha&7?YAv@H{FiCJ#a6VcEh8d&DrcKY79+F;aC| z&8g?iIuot#(?38)-VCJmRL7uaQm|pfr;_I{@96zbqtp_|pX}d1J#4qk3UNlgD^`PD zUO8`m?$AE|w%rt6vmTt7Oj$f^7BWUccQi1yx~ zdC~xOuEdb<+wIOn#nIlX3831U+VTDDjZ^?*cd_58z3Xb;JEedPz5T1z;}$<)_8|1| z;^nEbD{(s(j7ED24xLu-eRBIHzZv$pktImZ?yA*BtJi?q>oW>IbI4Hyu15sJBiJ)L zJ@R_BUQ6}7pG@v#CSx_qI5UyWnGPkSC>DJ^76YfZXF%GUlv?naTDH(IF%*IR8ESlJ zrFI|ZvrI}hZ6i&KhqAl^Yxd5^8>=(A-9>~_wPRK5nTF;YWa0iKBc?wjJa{*wZ3a^z zweAI%lrK7l8*I>5E!hkoIi*o>wG^+n6wkQS0nX(ZH;Q}!`qxEZVq~6X-`<4+$(wEp`4I-1(9vGs!&%yJH7eCic0J``Oc{_ z(Efuc)V5N#Xznw*X>WSeQ(3Op`J|!T<>+#*%%5R1Xc8i3GyTUi0~u6%nDDIrw1@Q> zu4~h=8Lsu!d~_Zlc+^oKU4z(b!}J%)HT5+ux`uGsFw?Sfqqtv zqvClpF%scSZtOF$=e`YW;vW>5yw8m@#6o&F@5&31%yN3TM9^;k)K(9%SShOg#Q!WO zqQ0p~u=w)aa`I9O+U%sh(*7rW`&2WeW2fQhr>M4zOUIxzebj_?hJW@`=^CUuvAJ%jl&}{o49I-=gND zOZ7_xU*RdP^O#cIu|8+_Ab7oR%X{7JOI3YLMQEa+nTrQ@A0vO!2E-`MROFt@z1b%9 zBm(*-ij>oiE`+!~f17cdzm3fxV_($qdO~BkGD*?d0*F(;*O^!Tnlp5|YbPnFuu2U6 znf{f7_C38rp@o%=bhp83RUQf8eKD>~*1n{dOgXYb6 zd2zP`!zOsXE8J`6%)aw2{9Pm?o(K+k-AaA_dqY4VMC^lk+BOyD@a0X(cw6XT;N6Lz zvlPsdR~xS|EfQ~jCZS4W>qLBfmy~zmLBQiv<+u&0vxB^??TiW{y=TL)HLtW~uwG3_ zv_1F$u&<82I_Jx(-)pE(L{9wq&Z}KvKBdx}gaxNynw*g3Q*{V~b0_V(CK6fA_zEc{ zm6)avoK+oRyXZ?eAVDofoD1=MbPj@^D`?*T4yjc8XLh3hGIt*7l2Spz(}#%7xZDHe zi%s%yH=kk%(n=y;yb*i6jxL-NUX_Q zzjVMAOH1$ye$XBEth|=h`t$0Kp-h#z#|xVtG&`QDm-V5(p$NobsOy#Vb84aLB zmu<^_{eJnoGIOLqdt=63%YL3lY=7+Ppm3N6=8z9B+X8-POde+%8EsKmg@T0q&+XN{ z;W{Z32(IQp=wSA)Ba*OLc>Pj{ZByxd`A7-4E4rDgDha8|GF7Hp4Zv4bc10W+Zd&F8 zozONxW@aMWqjkqDW}j^3oGlu@W0~fbBz7jD!OaGBWX}hKhg`+fyRd-cv6IGnPrkOo z7R#fNb}V(LoyJU2a7(%@U{rVhxZ{{JAIpt}NxqS!-wT!4rxl)ZI>N&LnNXUW37(S` z6}csX+>J2MKW;9H)p)y8mH8ghxvARr%pzNL5P4KxHg3gQ^d5c+Q)@PW!^*NQbgPi1 zocSL))_X6UZ?+l^)9GXDwrcOfFnwS%FS=@p&6VAzR68S@0(*H&21&n#u`B2&bcgD= ztN`k?{3<8T#cKN)GkSGi?T)q8L^OTkQ?#RI!C8_;qScZ`T~_ZrsbxoYJ&e85dNO0A z-S{e#TKJ^HAmKuH&(^b)tZuivAJ3v!b?;5JGjULEW}&-+71zeI;0m|Dsu znX-L;!+MYpb=Jis=ABth+-_@?nUNfCbLUv?-Q{gM__NiPEp=wS(V1;;xn-u36x$5H zXs8fDBo%eo8#So|#lhfK&z=>fpPM7f@82Q`&vQps8~yszn9U~_t0eaG8NXy-mZDZ1 zA*O2Vb3wY2t>Rcz_#f3#bwSla0+ z1dJ5)8{EIA1e_h!yt!GX2nnlkco}Jj%LD*dM1qG<8u0u3pCCODZg8NNyHx9E%fU9} zUL$t#ira5)Tq)B9+f40xRs=O{HprhW=q2l3y84Q(trZi~k|ehMRddK)&&IT|@7js4 zhV*GZ%WqbL9(XpVNO|sd9>LStHcw{vUqWMGiIN|F{^x18DlGJdu8ty%C0m}BZ%N8m z*(z}cqUs@wKOB*==j58sPOLS$Tc6Oomd+m7&Erdy3C5$Xd{FCsdr7Jcq7uNR$vv1qod2@ZWSf?K=ybj1aSzl3u zpPt$x5Nf#SdHw=D2y?)QF;E#w5@%5QL5?Ke#9 zAO0}zHDZ#y2>-o#YvIoZN8?^NQ@siKbj55KdFOkiRZ-mqSro24>wNNva-5#W>$>w; z2~V<4CE6X&WPtdtgA`$*Yr|3RInWjDwtVCiGC4IZHL?#>@6(hh>0H)-F8M)$>GQGP zV8q$hPmItSKQs*~J&CZySoTy}<@L%q-+!K8%v`sUag^sd?VfiiJt;VKUN|wiE1Gh^ zu(yr7^l?QS8z+{b;wk`fZ#`V(2E|YePo{i`+U1Ee^qs8T$&hj(2J3WjIns^T?Q=$+ z4tKs6X&%p<1uY$)$_5nu6nkJA$+uv2oGmwhE2*!$O+5C>FxlvhNK`ivVVCT;h2 z4;VdEj(BUlFdPiAL&-BP?X{;X$dk-~;cjW}zKb(B0T365rmWVYaL!+s? z5aG5H2BCrT{nzW9V&C9FP+u5>ukRIN_$O`!yTW7+8Gp*~O?q15F0({{^>IpsF%=b8 z)3Ih~D%JT*R)v#|IEEi5nTdKgU(11d?)fZ-)tNj)WK4Zk=3vyO*OuD-qD-X_ChXE( z`diOoHGMmfY~(jsIN4?3$V)}Og%}hG~Znvi{MUicr~Ye8bD5#@NeW zlhZLu;#S3;Yv;T>BhZX(&dUq+V_5N|h!gQYH?qI)_>Kq~LOZ|-oGn~7@y1#N1VQBS zZiIeZ2kj+V#pwbc-;GO2v3KcRM6v}b^8ugrA_E;C5s4wKi;&~>kBN$?yIH#*a#h7H z4T#~F;yKVu+mmu=OC|37jG{C??B#&!k)pnb&?j7VJyg(hzCL1VUk-vgyB(8327(J`@S>tI(}zv*2HA z>*|g#&yl|(>wa?ePOH?f5Fev^atc9CQ=JzUh0gWb9$8?8#KGer+urjNQ$;FHb$kyx z)cS4|Q&&Gex&$7%br?Od9S2K$u>I!0m;Q1~BfDZE7aT(oQOOPB`62)*Q?uIBDUf*g zCQ>uqE8c0bb#hcdA`W1Vls=Yxsin=vY4N=Qyb9Z`c^)Tpq!O!WU535oU6UdLYQPo? znhCXZ|M!#q@tFF`C+_26mGFBsE|SLLOOyR*NjOh?)ECC`?fcW#KzDEY1;9rhi0C&d zAn9z0o5oVnPdYOiA|I5_>uOkpxbrHXVB$3oBBW#em(7FZEi(0(LlbA1pZ8u&`Ogdd z>ur8K_cR2^vgz#4t4v_5=rCdSNMwS`F6`WN!*~}>80julMZf7SRJ%7lT8fQ!k7}1N z6SCaS0Rm-OFN?mB;7rFtS@m>p@wrPDunsG+T2~r|M!u4HW5`w!WaALktD)EalQlIS zEC{M1P4;1XFYaHW2zkUL$C_?WvOz_dc_kV<;CP{4e(3#JBXg6j5#Rq{=X5*@C; z9~t@+52Ag|a3T~u@pJgnDF1R1t$i4Rp4REirb;@9ImkiTTI(#F_WR?*) zV2ca!SpV!B$Ez~y7e`v1;=&bJEHyXv-qG+U}!LKU@l?ewXpImM1m`w@RTnz zu%|s2A_eSr$P_P1J1C<5-@@Wg@YF*Ri)TMdpo9%cC&=)z$-E7$F;hjBTv3BehT3+ z=V5~xmEm60JyyE3(25p0e17Dzxb>TDuE)*SWukvv`wZi;Rpu2zncpqpU0sA_9VlOY zTap4nP_rP*0}AwMkNozK&fAcD*I$47rI4B3uX%`lr;>=LLppqv?U+#PJwt|jas!ny z{El}&eg28bX~-ViLsa6TgDyq&MtgKTJ$tpdRVHtfMNWEeuODCdS%R8~v z>@bJEF-&@1se{kkbW(YOmOm@Ssm!{@i6gOI7uSHEHtm+4V`Hu!$r;f9Au}G$$brG9)w>Q3rbM41h zNjC-hHfBR&O0yBqdpQ<4qhpW(81HO^yKNJB?=_(d0haPv5x{caA9S3`KtxtviDZ9N zg`Mo-Tp?gjyxeYYdYsso8u8dfS!T7PaQ4@Bh5)b^Y&TrVk77Capp)4*NE!4uXH8$u z?U;ZnZK4E}WGT59t;*uPP<5();TA{%TcrsRWs9~{^e5an71G_`+b4Fp<)x72Q}&lk z@5D7!zj)&pjGb4*zbz4BxE1C<6kl?Y`oRjm$EZYxqlX{rtf#z&1UopLbu}&h4P3{N zSM_hvriKoeG|XoR3mQldETLb^@C+Y^+9l!}ggc?f)Mv?7^SowwZ7K=Suibw&ya}S0~!J z{2AH)a?B#9j#bh|qVl4bIdtkh&I5X0^T+v1#!%13p?H{iVPXUFQMkt)Qe0;wIaA*< z=>DS5#CFMQU#g%wUQnsZL*6FWYGD$ppJW8i<5^E`1^ny~U|F*VbHSs}dZ^%l>iCb? z?da$Q5kB(;TeQbF!A?$M4(Kof08O(y&3>f)R`=q~41&SQz>LZH=Miv=cjrE)#N?+W zM6?cYE?)+8N>Bu?_}3XSlJQ|ms*6Dk=KPy$2jm~)&Ex%qN?IRMI*`3O6 z)P>RbIOaH{MZ4+(>u;TqZ4aD9hiQ_fXTp`MnKvt6&qpiwwDoqFVte2XOXs0)r^7kn zoL(ojWPfz;^z`6;7W)tG)iwWaCG>E0@0z7EJQ?HpB`*QQHQ#nQ3(Z}JA2{EdDy z($h(T*7}&s{OY#5rAHFJuq$0v;EZ@`DB=;@ek$t@}j4?bMp6 zkz~-Y1|xBmJlU=u!`vB$yf707Ij6z}ITgUX@7C#*y(YFBP6|-@!E7I#Nc&|-vjhFo zDt^|Wbr`_QpP^@S2wrz{xWmv`$F##9t{>yHkSrys2eb67xENLPB;u&(MRTqR@o6>` z=as`EJ+yTZKw&ypm$5ELz{~IBs>y%9w?8sE`C*pqtl!(IIbEeStZHQEwI89 zrT%IwuV9C7m7d7)Hc=}I4asg06wdAk`%-;7XE;aCKZZ5kDmGeGbF$NB}4v~ zQ9Nufc`tWnFIiG!`Bt+_j8vGP^|nrDxSmCuGWUJIYrgM3oeEcuJab;;gX)fYBX)RO ztMC-~ogmV5@#ZAGnkUATD%mB2x|!XCYZ!IB8oR=)3bL|Yy{-1Mg2)@E+4RWzUnGs%zddVSI32Gi^Q~Jr zYQ8JHWyWu`Bi^=!qWn1suD&D%ZlL8BTRox%f`0(tnG zYg}eja6%D|36helXUSn>g$GotkSr4 zM4pgSyr7tD&%!ukSZvy|B&erEUEI69H|6fXaOIDw(wBu>*+!@H!))6_{)_K-{Iury;bBQg78w~zsk1b^kQaH?|ms3>%it-ZS~Z9yF-n0t_%7GqLa z+q+e6^E0c|ID5>S!oS-Y&IG5twvG@Z4L%lOpu15%MadX33I1?0&yI|!ERGW@X(KOr z^-OoCDt7rBXDN?EB;CvI^q8&)kT2UY4bOIcEB#55ka2|$r6Lg&{^tDk_&lf}={_DbxwYHn-9pYE+ zgrDsd3Ys!vZ66kd%gsPdf>PP|ZxqURh<9psq9&`1#nRXRv90t7z*+xG^(t*tkba7? z47Pd7?xRh^o0bt}ob7jiOZThR;$Y=gfEq^E$%iCc(7o2e)gn6&TOCKAK9b_GF@XLj0A+vy#s zb0g-KaSjCBYQ+A5fPVlH^vo$D*lL}IEwKg{ao({&Y#&G{aKcG zd#G^q9kC?lDEG<8a{#$0s8!6zitXOCC_!WQm{8p&FM}A@j*iG19|EG!3h^=AwGfX3 zb$sDK<;rsrp%!JK%-rsya4IJoB}(#Vv9e23wb{xNG*!VM1l*6gcq!dOkTv|;xQiTc z8(S$n4+R7pSxsfIu_yLM((ku#P-c8@7VGdPi(@A_S8#kdNZWkxAZdB`SkONi~!TH`X1zjf#Yam?}PJ=H-K~c9`%;mOHSh@dP``oJuTCx^pJ; z=J1;Qi^W{|>?GoHnS8mgkrZ&e7VB^F758C zYaLpJv?OtXaCFtf4d;gZT5bq6C0f^#s6JV2#MQf`eCq1WR>`LVZrEN{;>%>MvIWJc5C_&m#rUFf`31?FuNam5F*;Y*UQxZK@;P{I-?sh)^MuJ9+k;i& z5@YyC>iA@*eQOc@=r&=loRB^>W8GB2=Dl1;vOJ$p$DL;3F&Ugk$&<6#_w4TrJ zJkxJVfHfMTxb5vee7-Zzr}rmoxM443 z$)-7u@%L149;zGj{f}UV)cyY|n9-EMv6q{lIl0Yhem)s_6FU&p_mSVRO|kNnI%19$8}iGbKo_E^ z%Yx__`z+BrN7&geBN*JVn&;Ntt>J6}K#wuwGf=5l*4hH6l%Uy&CZ5JUbGe^+me?b~ z*6XxovC7uSYxOJ<|6f3r5PDWE!2WyONt?d9f#Bx#t|j{kzVwjYCmf<$@mGF1+rpI;+O!ri}?uz5zD14Z?8 zm>y++R%$9DaH_)Z)N@C1V)6HOJ)G0s+PcYx)qUaPw$V+IPrV9u$jpkSopWmFbzd?T zkT(aTxiS*v`RIiVkrM>~^Nd%@xP(hcOe%`r5&3e>`^)<@51?&813~j-mX_m1rGHoqZ+t+n29=OvrZ$J07wHS0IF(@r6gIa|vFoY1F zEiKQH0I<}3mzm+w+&5pao+HnYb=Ot!AC*Sp)zm^~iiUGXJ}7rkkWE0QnY){VWb^Y} zN8`FZ?eZ4^A^HupX#jJ#Q+NaQrS7!)e}Y3s(=SB_VkD54`|W0^(05u)Lr=PV1)&3F z5mdGEl5eqWe;BG_eU8m`RnFNq*W!G##NFSei>vl{GgA0W&P7`s_OyR731*EJw=kJVJ0WR@3X~Vhe=+`-{SXP(*n#76KOtyX^PH40mC|o zGt=6TS|>odd@N#>|E_0Vn)$zik0`B?LOq?9 zo!*v|S%N1DOdluKIf6h3sm;bK5AFG$eKeSrO#ODe1vy?}iPSek->}?`1Q$XACs27{ z*b)+BM_cji-;--0;xMIF#2xLH%|mXC2+-SkK_Fa={zvD_hi-7S!t1H#3Cb)3%F?fIzK=OM|G4 zLGC%i+m#X%%Ty+QV1^`GGI$?JyS(wK7F9}gjHzv2)LStEQFAwL3|Bjw9^%(qzOn|PJu=$O2L!w0-x9tdDTCT3R6%%!E{CPx!-n;#LESm(z(Hcr z;)T*LN1H5&tA1w-r2|HkZsUZDuJq2>QE7e4 zgaz1o!B&A9!v(*%3o2JL_p5OEL_`LXrp=?}2=g)tSWgFa>Fs~@B7Awh`gp<(x$~hH zgTYa5$;_g8l}4`7cKOqwI-Jt(L5lO|5QQfPl|cwl!uVW(YXITU^`7^ls~nmfe_n-@ zQ@tPVYvLKbZwT4h!eE26npaWH#JD}b4vn?7N7NF}04v%DoP|ZQ#ct@Qksee~qZxXH ztoXGNtB2A~=Qm9qClfYHmU46ey3)H^VI<(pB*lbY)fg{KEd+qy4ys&pt|Ptf5g{uL z_l+R(=^$%T(!Os&Yo(C-CDW*9Q_mdZOe;Kaz14_+ME! zwWV=5@5Q_6n1A%m_| zp8yif&oKd<_h@T%qDhg0pQ8jHrZ)vrq*0Amn+fdzr&kk`fZ*Wn}kB>m~P4|VSQ zO{uTMwNURVE}k3g)pLf%Meo|qMk7gOd&}N)+Heb6dG&%nqCkDHA=@l~JSu8Wl{U$f zsTXZI;BUDjv;B5Zp?L*Ki`m6|w#!K0BoVwmxeZ`(H08O!}BHZ-&l zT&#cR`pI%=P|eLA$jeR(-!+w$3OLpC#UKV5aDKBU=%7LG+&*|AQ8fHu17$-IH-3@$ zTju!0CT>KJ;zM*6aV`84Qe9{NWoWCN3YO)qYUN6oUs=$O+rKLkN3RfV6W(ZvFsIku zMsq^A@E8YN6W5T&&;#3tUc??SMfV8O%b^H*CtL?uIW;QuC&w#$)0RrEU-1puRatQc z(K<>}$xCvycM@fAy#rU!{^a~hD+7NIf}dX>ULK$v%MX(1&yZAc9#9$s5!ZD_@cy+2 z5E_22q-g}K^scJXP;CAF>oeOqdr0gKj30axW za-Ruf+FOr8Holc}?OYjAV+LiQcW1Ut_PKYv!+!&q#sd!k5c#VWEn&m{6F$Tpd!y+X zuKCi;K|`?f4L>*toja`smqCc9rb(b}d=7g-uIs;R%&9Iyx*A{l&jTqBM#i7Ma##YV z$|=S6D(%J_<1A;SAtX$-^H`!iE{$>6NQ@uob$z2xX-;Wp6D?flxe<0FV7=}}$m&A1 zD`}wVQ-B7>WotUf4E=aD$KQV6e`@@#q1dOmF~^Y(65p#7+0Qsp5@9tncy2I z<2qap^Vi#Ld$#A&iG;N(*bf#s+mj5}lE#HH9}l_EraxU+gY8An-Im_{^@&UIhpY3o z_+gQfBpFbhV1IWC{l$M#pXo#KqK)F20FA~dowcoi?5O*&-WmH2dz}$B+I}vRndrvc zJ0<5PTD+Ir;Owf;vF^*>_aTi)upIu=BEqxsuWk^J+==CrD~$8+hegcjAVx9bsojXd zEqdoOf!|Txyf0c|^x;LUL%Qd)b9n=dmfihrd`h8R3}bo`^2DCBp0y1Y?s-XJ|EN}B zvo?9gjpYd`>T-mWfi!8kC;1)PB{p}bxiM$4_f0j$MRn?S8@S6|4p>X``9BH zRocs0K(kHd#OAQzXAIfm-AdEmjdjqSjPpyq>HGr+_WaU#^0|~GfbX1}U2dh}H5u~T z0fln#)XbW!EPjStu22CdcO9`kG#hMh?^1%V#s?W+)w8-Tve7Ma{8TjEUAi@V*#IRL zWHrcdSiO}j@9)ROiA>1$`YNF-E|{jLFDD2Oq{i1!iw?HJ^?!F0$cZT*5$R7))>uS_ zXB`8iRXuP)vR(b-{CGoO)ntCfy%j<7q{V~TZ_W$rX(K2DN_WJlp&)Ad=a*Y+P{(|) z`*f}(xU^xCAq~v?SFz$j7waAVuGg)5_6f6ZaEZ2WMG+97^Z96Nr(#33{VO^g57{(d zWu`4ow!L>u_dHFn-m{D1Jy?k9l6<_}3e%S-gx+YT^0-f>CtkC0P;c?LHR}9W2IZhn zTZPf|zB6nqw)xUmZub{8z~7n&xT10XE0}g7a2H1BpKbOd>OcSxyOTrh3h#V~+b;76 zfQo6vcv5FvsKWi@&*00n> z$+je-S0KI20c*E>oo1|FWGFRPCeDeXxoM%aop*Wk`)U+`_{BlJQWqyOEehS5*hr%& z;_M))qwmY9OUxs$$xV^|#IpzPiNa^5@5#=R?ljVRx^9;*)iA>s-?W)c}Vb} zK1^;N+=J*HR1};mq-+D2rkku^hc+G*P>8;|LTFb~ML}aaQ6@B8b?6-995J+o^Uk8r z+S=ak%8hTTyGmoVbAMK5I9ZNutG!+*Dt+U1;agQ_8^jLYT;PzcsjvhM?-hwsl(~@g z?E=6N{_AOj1gD&?_}u2xtNxMxla-N0xzv5_ zxCtAYSo*9>ms1rgR4f=ne87{I@opOTD>UM5GkqGe z?$Jy`F7hIBA;EZ~m6L;kE@K(KN>m*yKYw%|wdS)bKSjpnlh68X&kyFKKsi)6#(2E4h{Pb|e#akXn5i7M$@oVD>AYoV``_ z-VRtV`ppBr^zF~_zG3w|!NlJ}1o~T+Gw#XYEaOmtALMW%)mt;;kF(W?UTzavc?`Il z)5I*a)5H6T^am@*#R14QpnaQw9a8OB*a0&#S7&{$DtAzyObD`er@iWkyqMD&ZqDDa z$k50;{mGA0nELcv&06n^Pt>3WPQPrT<(aQ6e-;rRxUtF~9yiEEuk%z5`D(;jTI3Nh z5QPA%1+hq;sa%N9m1%fGhQ&>GR(NEkDpFwTsf0e0_qTXv5&Z`12tmMM_fs}8{iYy; ztwdB|CS-RToR16~`Gmm}pE`w7PPj0JOjsT)Fr+l!u=n*30b0F6J|3Wq?9>XX1QV$w zeqD}o)A-SdflRsD0EfWTToI&ekKVdx$WGPj*GBlRcvjab+j+Ty>dwq6R7DT${Ce4aK#?fPme>EI-Jt>xZzaW-74t?*S3MYP>!%|tv zlGLraGk7EaS7P8Geg+q+&b;wCSpq31qQ@^+qbSrXJ9*8m?~^qcOzGV#Oc+^|cFPPC$n!g798QeG=lsDK+eFmX^c%Y7 zg#hlKle+U22@}5a3BQSw7+aOIulhDbm$eun8~xgV9lXP@3qSS zH};PSbKlbMHd529PD~70F`3P*aati}f39Y#aNDq>DP#t$?(B6tQh{LX?U3u!Ek=;b z;~Q6KTe-B9SxN;&-!)`paH+Sxwt%0!tZ7ee%Jto+?!n0Fhhsbk>080RMu)sDXmUPGi($7rDsVISB1Mf* zQl&qS3?4VLr#|!VXP8W0J46h^Bs2XxR#p;e1X_tOIdHB;A-K38-c<(n)%S3vFn=)U zFs&K{iYJbL+PV#?uROTBqQ5JKGhD631<)1aI)`1FRPcpl8X{=1BOR0JJ2xV-t_f<8 z30@B6zipT49T4!PHJlWrXN7!!^oks;Wh)eY#k)J-b0_&Mba#x6>WD;9paGd#>Lp27UEv-`YUb)vc?67|IYSae2Lcf;W-dS>%4)s=W zxdP5>z69dF9dF!UHSbd~N17p)G?Db%!4HL2CcEGv-2@#gTw;0pHuT!ksm{Xt{b3Dv zKj@q(FzC33WI89H4_r48=HPFrW14E8;$zno(Ll^9^mgMC@%PNtVw^Xze945v+|CidTfe-40-N*QH&V$A zUVpy5@&I^Lj(yZVI5Py8xpZTQtdHOLs}ZuwTKBz1xr=Nx<{z3%W0pC6cs)<8ifP6$ zE{>TO>D9g5Wkec>BFc_K&ZjE^-3^N6${3ZZR!3Q7(ttA6-nX*T?7FcmKribd!HHX= zrkxj};CObFd@weQGq)_3&b+oQH)UQvCptoIRsFuDn>3qL} zeO=#GI8cti&o(ria|kJ4GMsKC5;KZo>)&t|>nVUb1&wizdA{~np8PXsoBeH)6=4{A!iozai zq=u;!e=7T6tLjd>;(~gMO?#K-HK$6n6N|gsRIhtpFSCiRx_7_7u5jFfq6(9E%TDo8 zlTe8qCWR_C!;^c<`LP5kh{B{bu!?w5;Qc`@vvv1Fqg8&8yYqAwKj&kqV_=43K`_#Y z_to@2|{aEeEXr9>n;+{l8g~k;S@B_Yw#m`Lmx(aMtPKV z))9&w|H99IYdvuv#rxCwln#pcCvAxT6YTHf#|(EzzTgItY~tttjI4h)Dg{qHZLqo< ze2F4L$*GITinn3|QLekUX*6FQGCW@I66EpKTSl8d*vY823D+d9>Sm8h2((%dWRke^ zxVlo*LMq&A@vKOu&WR(Dlcs9!uAg~pX12Y|vb_0jLOUwV_Gc&SDP#*7y%&AJ`F z>nnT^zSN(dc^y$a7;6L2&B14{$4nL{b@mt3u|TUgk!tzZ4sUR> z-Bb3c);S;9sll60zZ2|ChshayZh0SX&EZadbjhRpvD-xkxfnCMj5O}07b}q>S*rm9 zhauaBh->->plYd&SxcJAQi;iUki$k;wXj@st|nZ2FsOrQ3CF4aX+8f@ioAEfrK*z4 zH!d7SfqcX`s)Q%W9n&dxue@THgH%U&Yxal$1WT zMf9S&qpZukgfG+e8MpWS?i_EaV`_igX9_9}j;I56#22l9ZdTfutQX@|o+Px?*zbmXDPE39<>!}RqbYV|2oQDp|PWmgbq)8$IS0ShA3g4H>|7*iua5B zw$z_#G$rfwIl&n8u4ZLofQF$Ldo%2eYv?mP3Pg-i{f)b1kV{w%`*}bba%nKrGBa9Irq* z*uNjqH%r@JpP@H??jQi4pAVCR7F#PU12J*DjhN?=^CKnSl2&}yCL-h8e_JZ_-+i?B zdB(r&Fj4Rthimws71e*sZ!%f3Me--|!pnL;YKp5|@o~4=$^EWVuo+{8@0ZDLB&fHY z9aO$B+u`_D!_rg#XjFTLyhPZCZ}O^1xybv3bhZ`AEA$~Emv-Mh?)xnetbH#03}DTg z-=o43=glo^)HoC#y;L{ygS5j)>HJw~dnTx=!jFHlU z8wW)zvn2isOwB^?!om6!LKvKta-Qd-3eKU&ZZI{T&y4721n%ENA1ATxW+kRu&kTml zg^G#M=wG8pAAI3-Xx`6D`mFF4^WmiD$UL}Ai^R;QTPR_f!Neo~avayY^*U9$Fn;}`-tvBi-BSi-ew%zXaqWVfi__R>Z4Xib zdf(gn%dk=DNJ>xwbOlQ^k{+DQ90z$G?m0BW7q-36KHR1kF=^=IdH>)}U3WXN41f-b zaH;G^JH$Wr=m~5?k}A# zq@+BylOkB7ohG4iHbGH^==Clvi&Qkg@vPi}MI&mud5r0uPx1r@qi-$S&_G4nOyidG zjq%JKCSG|{nbzrME16(x(I#OSR;F-+`-~BnQhn^tYN=Vw>MYowB zJ3r3wxQSLFHJ9YamJ1F4Q-aYGjHucn^B$QW(5eN%nkPs&#MLHXfG?IQWU+V9E?yi zhxjA(9wc{ceL@n**#Q9T|NZi(s8F(G6;uqGgUX2USl!9dtLngEe8xhHMEE?vfv#ET z)%)~KscdWsjo!=3i_D7X1GYzypRmOwU@uYw#Dt( z|7T6?U&OelmsFonQRFxJuq%x=UIpKEBVk^6B+I+JL_vMN8cq(!2PPRzKGSbaS*hBh z>7G%&TG@U=?GHjVVM(dav0g9DR~J~o8S;n{o%5~5mw-+Yq(->+?}g%!jE)%IL_WW? zmXK1WQ3{djI`gqPgiChhacPK7Tl%~R!w%k*e*zd7rp1)Y87rNFt@`fDcZ zDQ;Y($?ayx*J1x)u7*B468unHIGt%al`|Jzb?`A*Q0y?7joVW_iTXGiIHf*$Psd|) zdtQwLb(^g$x1qhO!(i!p(YpH^Q)F6H%vgRRR4d^x_Na@N2 z+puUF9Vm4MW-&Azkr^y0Bw^JPydT%{VSGzUf6Ywgp24(u;x=ypK-GGPs?rWFB8GI5 zDCM!dXZUJCBnMEuTD(Lb)`US*f&pS8HE~;$@5K63m8A7DuA?uQBXIEF`U5QWt2btw z3lFW_r-T{$d^GS(%zEcm*Qc2iusN$Awd6$8#l5OIlLQ;U-+lf zyYfpCg)d+olv{Q)GG6yMyK~o$)_D<$=>Azl4}Wj}zGTREo|CgxZ>Fd4SrN8qhqL#E zLbS!gENqB9@>p~Cv4S{j>uW3GX$?Ek5n>yRTfg{^jr5EWth`#M`nlH7+vYBfg~iOb zpVG162gm2ICUWw06Hb5I&FAw8*qhLzZ);H0nc69`xRi}u0H^>P)X5au339! zj50%P)j~4POJt-oEm%6KOght*^D_k|jnu<9|ICZS8^6-CxbjU%p=u%CwVOF5UDEkJ zHH)x|nGJGn;)^RJP3ry4s{b$vdc(ewX87>%_e1rm9PwtM#Uk41@x}Y?7zieY%_L5Q z7joYGEWXR+fi&O(^kkH#1ZX>6FmaIUbRC)J#+=(!J(8|cc2e|zB0<-@aPk_ws&I@v zCq}I-tqA#;*SJ+L7u~$K;TkNXvb7@?!1(I$g(?(BxjmLWaoGW93XYtRAXmQhnepDk zk%s5xFTk$zg%yT>S~(Gl7E`%fh+iWOz`ZxzdH%u5yutD(ngo9iF$a42D~6{zb~^yu zhTCmJ=c8r2d7{`NOCP?nY@$=8N;vUvC5`uQ6C$F~+Qv}xglCr)x{TO=@8I9?22Qd6 zrfDpFEx~HMgh$3_?7xf-B4MJL#K=?U~i#WpU|&+TiVN>$LLP;`z&JzWD`)h<7E zl^)`u7d^z^U%YxzVby5(fhNa<-L?c-wFc*NHKI=*-B| z1i5Rt`^WL5uS92ms=|wA zQR_51k&n*$zEYnI>S#}E>jm7s#wzL7p~|7zp_#R}jA+jBu)E(u*Y^H;=fuDRqt{s+ zKhr4Tqkqgl=_ZkJ{V!QkbZp29;fs^N2+TU%FjR4}-TP&syqC3&ASx-+{*W$=IB9V2 zR>8DIvSD&g?qYg6jWyre{sZHv%F#IvbY%#ndRX&=QDbsn-OgGB^h+qc zYXlveDq`z&vf1x%AK%IHJjQt|z>GapOH{*SG?fMD;deS~z3QO|#3$Y>B1Msxe|xzt z?iX~>O3tcSn@i&^+KWVQm%7h)NK2)B7-~AYMA)Hq+Q(KNSQYjml-WvD;??L0Q|~rQ7^D}#jy4?rzk+lcS~Q% zXH%PjS(fiq-G88#9&9^@Xixn-Wt7xb2DSD{*l7T=yLjSze~s z+K&y;Q?Y6Q?8RhWQzKX1{S5Yu`W3Seyt^KYuL)alX&dVxU6ibMTy+k#qC1 z!;=xPGR&Rq&WL*xa<*?bDvCwsj1!#!r7<*d6-V zv(E944SK?o&5B*{cr;YMd&9_uK}jN{Py?t&LF$tg7;XMQTA!Bn1fR7M7!O%V!oe}(*fW`&yFL-y?KAH*hS|0kU{fcUn zC3eGZKPHbfwiW1R>#d7ayxgBU@^~~-@(0&Sx76yJPeKwxuJ0rF5N^o^JdIC>B_N~4 zB7sTy(QhI>yDBaah8)-SH?rBMFFupevhmLuxHycWA4qP6RSTJ$>jrT$*c=-Ghtc6V z!5kMgr8v|ymsMK2=f*`;h=cQeB=;utl1z_-@fP~vYsE+*7?~!!G_y|!zV{U1g);r5 z3ELFO;QNc8s_VZZmF=xZglX}DnwTt=z>&?FK&hdGgL_Id^E>*!A~fo8hMmY4&10`K zH&3=7|H{OpoKoZRDT~g1@z3~}Y;leeK!4NvpK7+sI+BT54w@8ul0jIi*^M7q*AF-a zS<+8+8%$K^k35;czucLaS~~=@Jb_!QmdhGeU zi+CO87lRssu8&;Z8i-vTu$I2)N*SvV?2==!ysa znt7mizq^LZveMnifYhOGNJs6EjEUua)Qo4Q&}7O))f%UyljQUMA9INe9(oMAYlCAs z`#;P%0Ul(`XGh3Obz>!&8lBoaA{85~g%Iq{J%y+IM@4t@q!~O`_e@(VI$lnWeskyy z3Yl7&3;X5!P&8>feVyqs5G_M`B$sH9 zZ#bC!rz~yxW_AVbI9*u(ZIXB;On$2V_oiwwx#=!e!0yntC`T0ZZ73YoJwKqJaVja! zf{7)%w@~8(x1z$N5%{?!k3vV622{fAgr>1_z1x&_BNi?;69_v%yq?foPg;x~Ng?0b zW#BV2!nrt(s7-djc_(60Z@62hDSF?Xe#uW3#^mGXJMh%5PCI{C$i+`?mu3oElpxwI zVjxa%^>x_dG<~M#=L}{9|4ZD%{|>TY49E6Dyy@OAXHqQ(D%f)R41l1cAF`0p$ORg= zrcXU78FP9jcDbqTLHF|M;t``8=QZN|7owtbz)}jy(oJpK?4f*~HgKW=Q+`-&5vke^ z_h>I(6WJBblkDZ+80TW&Sz$?^1e$7(eZFm!l~n_jxUr_>yQ#msqc$&W(-NmZeC=Ar zc)qxPJji>lIfA(6aOCmeZ15CFSZ{#2vDEtGp+3k~i+Q12%LO zDeHv<7WB4$&z==C_#0}jfmDLkLOc|!AI%)zkeu@k8IIDR^qbc#qO?Cf34Bi`d+LJ& zJ}7&wTo${!{ggcFyBR#OiIyONaAk(2D7#Pfj=t!mX7_ikiNv)}13;+R-Px~XH^qO= zkV=yNiI@7WPW0%mvkA~>_k5BSRLSH&3^0@2G5F2A48VPh$70`uXJzN(IYWapPIif? zm}EZZWjBvJ&!wZOoH7f9mtU(i%|y=HL|cT=$%gUykiQRqKvT+51vtwPb=21riIe^= zc*>V`o3)kokMY&H6@~5m1CaVh|C}^n@diuYBMw@Yinz4M@Q3fXzX{jmO26=Hx1x}k zMz~FoLzqoyFP;1^%k4R}#?&5>18z99T-EA8g`DS7YNC%ZYh~#cidc(a$ETQ2cN?7n z3KwWx_z)(+hr5(XzH3~edZ(E)w=OYk)T`F9=@T*R`0a-K@Be9sMK>?*`|rVQQv!aE zw?21#*il2NvaPF-YN)3b6CL8v5wODs*4tY)j9X`Um)1Bg-*)b{oAmWbcD8>u12{S2 zz!_<628O`DHyr*`y7;%=5wIVzb5oK@sS@kZc4-~+|MwQaKg<3a|N8+jwo=Inke*{_ zqFUlQd7_SMr^59!JSvN8cHU@pYBo7-MAVt)S~dm$=(Xu7_I3Il&9oR5ekn?>v0)D# zB&_Tq6Vw-mOk~S~Nee#nhM~%1TAYg@wZ#+Y{uV9#}03 zw;21V>FgI1ubUw+^ClkpKebHW>;+WPphlBJ?Y7Yhgi)oAtdx{x1P^o>)UIwz>n5~` z3daFd&Uzo7IeT14TC&b*Jwhjp(;^@yd6wt4wlG=zh(043JBdvplv=9*+SKVo^Zs2% z{@ZiOZ?oKi-R3VI8^cGGUEmM4?-N9%NHM?`x<(CM`Z_D*S%K?|1j&LL1(Tx*LTlnr z_b^#{=OkGIx^qEU?sqaAR-dePD7@N+>N)(Qtngij+NJS?DzzU}iOMS+y$Yp8sw^3Z z2?%gkR%zCQ8ag89#cG>ktZIalTjf)(v&Bo8u`h<@PZ*CIifhKG8|$rF8#evIPi)gd z=w?{Q%K$^BehPc&qC>zHeVQnjQuAwLajs0DfqVQngiMb9Mv6%NI%wW+AxU=1F|vJB zAvG_EJD6&)uTT}FOJ5?|Co!nKbp;6eZBcqcj!3-<9v>{X-ag9$Dres-sSC)9^ z-)zQR4?k}n4S^|Ftcqhfy36unMZf8a-PYlTT6$SFZeHJ%Q0Y158Wu6@{aNqLOU%^s zx0-!>dhv3bE1y{>L+w<0ZbsLySg=Q{tc>WS|AU>Q9@A8g3vFaw;ZLHOpgXHQFB*k{ zp>k{O;zUh3gsYPKX|de0PbZ4nWNv#fVwa$9HqR zbMKvfq7`ex+ZM{F|FttzStsPUOW#-`qT4X+Rw&12M1a}8>*k2l+~0WAA63a84UR(p z(|bj*dgZsPGhLkmNZTjs3Mz6?*UK~?)$ee_+Ns>y74Xy7{f{%hxYM==MTzYTv5Ikl zLxlm@WaEf_TRuxA%c09RrvLd;P#X!bohv3H>v^A4bBJ9r{qi7b%0ObDHOu59?h&;b z1s19vOCfml*M&W~AkX$eL`M#r(^q^Cz<9(q{-!+3%q1#;G^G`06Sf+(= z)Gl55rKD^nuf&o{URbt;hVD`8Qy-Z-f#(VB|MCku7yi^=o2>=S{@Y6BT=C1Hk8qBT7PsJ3 zK$?>M(shERpVgSAsoVVB+NAMcIPS0s01>Z%vSwl1LCnU$d}zq zII797A-edvLh;V381lM5cA2mED{)O5Bs!{>cbdgQwBU#!9D!>s*nNg2*Rq-Y)?Z+B z$*1K~w!b2y0ww!@&g#teO!F`zrr4M!Mu(3mR@_PXOUsdk?1yidQ*l9;Le^u70_9wM z)cho5d&;7yVUFs^=Iwl{0uB!kDRmh5*}#0dQI@qL+A=KsUDHa~zczi5-q(WHA68(j zN*ixC5v!cmo9}Ez4dd= z;HfgE4h&@-^@VPwVFF>Nd6&(A2%=5Y?Qv1cmjx&%tpWwgBwO?i1YO<7?F%R5Y#_h- zJX*uoTZQja>YiehYfvfCz9Y4FkgqY{u3hQU>PMF`OfZRSa?di z%c2#xifvXnm=*m&IV#%BxMqCfc1!Y&@{82*Dw*(>wrhmYYwEM6KU&WSi_NSCW@;6` z;*avfojsVYu*m_OHt*zB*-hr@#fxcA`YnxOCg<_Om{B+(4>t`XnpBWeP^WGf{Zc>g z9FQl85yJ|vuf~iyhnZ0*6-NTj@#$7cN28khK>V|&QjEylV?m70H_Klxy}WF4uTAJ~b4b|R zyJ7UTpR@QCK(SUYW1V*Oo^mYLE}Uzz(6hLE`&_`g4^Sd&-xR$vA8ZvPNTPzCyNXH7^Jhu)Uq04&CgW z|6oR3VqXQUBvC&ap-kF?`+dO{W`3Lyn>-!ZIX=W;8j-c|*XTUn;^R6p5syKhqCK;t zAZZW-U0q@dvcAg5b>nazS6w6PnC9dOy`3o0r09V@OA76j%?SwL*JoBy)1%BxlFfa_ zj~bQIRQwhE_w^`=)7Gw=zVY~HUa6XzlPQ#;sj-w z?W(|?_v%R%M>#Jl6lj+{D5Km4cLmV(FC<4$_FLNOv=muqU(`0vzn3jKKe)xZnIZA4 zq&aQhn=9fp2{&n6$T2+rXL_ zxg7oM#2dDo9HsXH`O2c?Bp{|YJNfe2IeZ?e`=#-fp~og1zE3*UiZ&g2!b&+mgVLQa z&{?r2e$p`AJe*7h^XcXtH1CciAa2Z^HkE4aP@4JHjD7To({QNfOqm^!_#N$7dU)4! zJJo%hYElXY_}LK~qM=Hpj?yN6W!!ESh8}eKEDlCKfG3!Jh^7z~cOILjrD1@uRrb-= zXr<)s#*M-(g#@ux6_b1#2@~{_Ts}2@F-P!R4;$?>u=$uH?9kT@W0w9GQdHf#ZQA!BFAyAZiGc}$d zVp0v_CZ5_BA9;gdlQa4V1`pi^k<^#e39nD9PfiLt39+SfnlA~aa-&0!d*JcV z1I`pnObCAohauVS3W#Gmr!5hSxzFR@qd?dUNLBzGmTpL_B|5Ug_PhHrAC<)6J*wYg zQe^T52BM^FUhB@pls<>`%A#Ub_PTZRV1xu%u}^88tH))q9B_A0DFU^(s#thx12}?> z9;Bb7t~o;oC$}}7nl`qmflyVS3?~!Z2!wSfF1$0sYNI-vpQ%zmt0mg5v`)dFFi>i6 zVz8bEJKTb}@_Kz3E}=A{l?5GUtCf`xkC$U*@Q={4EC9O09bFK)Ck=B?QVzCh13vvacr{!t&$EtpH+- z`!eICY>fm9fOQVZb|sWgMuG*oMMmH_qSKYUpBdG;8t5zdzP4%Kz>X`&A-xY;uo^@! zVpQH*q@BTvqUL@Ab(%zE-goK0Y(jzx&8a#<>VV(oArl`DTGgWY)&S3vl}VL^TBQ4n zU|pT6M<%}Owye|ld4k=Z-4WtzFu5uN)M4e7@Usmmguknmdfg_}(I#a4wu3F*sM6BP zs# zM?dlhkM^UEnlLjPB~-ET<(A9B@p*!>PLMT0Tfaqm&ukPK2IY6C-LA(yKzt)l4?;zi ziTKWB2lWQBC%S=F7CzBvKDQw`z8wks0WL6dbSLlHzKlQuVgliO*#n00k;-o@t&fiwDmmS7;u&qLZR!teIe@1?7kQBJ+YLwL0&9Q7w>eumv@PjNGV|N| z`iA|u6Ty_4ER^3t;Rroq%X{2eWd@HVJrwJ!nMS1%4=Sd>aiP1C6IC67DA=xfG5}^) z;lA2)88TO2c)&wT$s@k_T1NGNX?K`w#lk<55#XtghxE!H_=J;C!_(hUji-;Owj5TZ zCCdI)>!02t>xF0LpB*Q_Ixjy@G_Vu!<$@^RiCtX%;&bTZ#`LR^V zC{d%QaOvX3wxh>juxU6E6qBs!?p06Vc*A3(zo8FnY6)mRZ|5DSiV$rmD@MPQf zs{f>CqZEd!*YWdHhh`B-M*z73p7rVVU|ydabF~(#(icPxYd`zg`MxNU4c-|5ol`;^ zr>EuW!p(SmUZg!}eQ~+hNqF+BHnhi_%nl{njLbsG#Sq&=50ffukC}9*;)ICTqy)6= zFbpdh$=;>^9(>Hf2$-#Q(j0AQ7)_Q28k|hZU)vgBHW8jHF*`YlN@%(vV%8`}wLSAU zt@Z=r*_fcyca5L|<&@#wQSA3$`7k?*&*lu>NdD@2FwipNVOe#Bn?~|PTr?zd=QP(t zyV$RZd(WgRE0`&dT{IQ$qmXM5Y~Oz8FF{K87Ohb~%q42<^a@&S{0Wde2`S1_GyJ)J zQCg+fu!xR&%Ul;Z8S3lc^}=Wu3F){&fekiC8LqbUsz>XWPA=rlEA$kuxiEig_wS0f zQ#1BZfZ)UTHq&8*E)?0{sL98Q*lP@k)x~N-%chV9fOhGbI0~*6W~MAgB2JRbp)KDL zxSUeIn<7TFyG8p)60RVpZUTprO z$`wS&tIp^Nco$i{b?^~-YMZ+9TZXQlel9j5r+9#$NBvs;bpLlnCrG2yV!Y>knm6Rs z#9UIIX}Q`#aWrMJL~EzX#b4haMGnL)&w55=#c2Kxum0EyQ489o)Xr02Iur2Q`^btM zdmag8gH3#AYW9iiGsBxVMrPjNy^TC~l;0q^Z$eaJ_47>%E}^lfQy z2hRO?cNewJtG_68pLk1(6jh&YR~lomLBZ)#UM44%P9QgwcM65MJnS=1BYZMk&Q&41 zshwk%J9WoiziQVN@#1a?-5;f{N0f-^^P4<@0Ql?cr$sXltL{5>{N?VZN;;E*@R;go z=*z3J^JsRYE|( zM>>kZ2Feo^h$-8BeN>jtejK{53O~pxBt`DZ+P4qZ%?v&uK#q=-fhVVG_`N6ONXz++ z>@eVF{!S%WtF6Dq+KdYhdmoyu9TbloLRG>-%4p<#((t&PyxB z7hjQW-Qx9LaUiHKV(i1{X@23_{w3Gr^$-gct0orKvXvo;PH2HiVN23)0WT5_^Ly8N zD!R*g;pqi8)p#TbE6u_(pWcKkt9?_n`SXim{$Cu=MAHX%S!=b1j!nl_TV4_bxe1e2 z^jb~w6K`04#XL;stX!HJnUc^EYaggD;0d_RCdW4P3nQZKgV;t(yH`Yhlo4J)P*J0; zi&jvZ*|Kb)nwlK^aeDta$|m&;>*pkYESem@ZJEvUYaS1U+%S1rV&DGOx z;=;Sojo#?r;1=Nz-q_0o8AJ##m0w~@;G@pOqwntiEuHn=XkepMS*-w}V0wYBmZQSq z-#&+rCYd>j-{ZB1TvtQ!uCzfqp#D6`<>B)48p(s%1$L2SCzU@w_BtE^Pk0`)Yv|M1w3}x<~##`|bU~NcpMnimB=7 z2-Vs-lCV?nG*vg4CMzh?rw*f}yA$05J63zy@`U#TzWeWV!~<^9u9<9j0E>0#n0Pf5 zUmwCZCeS&kk-j}@DRqQD+Cf2#G&lC=`$s)!0TmqPYOxcidF=Jw0%ilD$0L^#<}|uu zz;EKk7B!mOZyCWGi9?#T^`s#^LPhqtv*^{71nuQ1h7^;!OW4egC~4eNowtMC-E^R{ zw1DPz!|$pQAeO_h%e^C~^2(U*;wDIc!Rqo%1r+Y)h|XLJFIH;GZjsDRs0|V9d2WdS8!@;TM% zXh)i6J#z=5_6P40C6g7rHF&=Y0s{&8OEvWgqAwEJ#O%KhK=)Vj-6>byVoxBV9@V9rEOiTWk@DTUVl>-N{T^kTDshN1)fXE#OF|BD$obsC_a#3y z7Bg#W$@H^nS!|`DrbVp~BcRO;Zbc>zcz1-_(JI<1oIU3~J$h}1-@BM723WWH`)z2J zw|PS-O}&}Kd^sUJl1Hl~2T42QviMSS{hI%9NQuJE=B%mddlgfL&MldIi<(a^4Cv8) zkxig!-F5BsF^-bb25W8U%C##p%Ev>Kh1I@Cd|EU#og+AmDP&JBU4HV3iW7MgH^rJ# z2;~flPLoR~5)Y*g=hoa>PU|4uOXnd6@$>GdE8UeogmU+#w$Msplv#9NlBBT1T(xA{ zyoW+@KiW-*dDxfQlV;>#ZQ!xn+JFudDF`AI$iXTVk@CvQ5b~)!;k4#C==vSwdT}1W>$k3Ue^48LL@!Zp zn!fig57*SJ+d_svyWf3V!E;b>rQUYxOuYBQ&ohJrJ+g;0n4M59=BZ$a)-H@*vtq4xSb~N=7sh>ULZ8HBAZW zqmp)Gt=_tWePc))5MpWWn8nf!TU_E=0l>5dM`!z=Fh9?j^F7L|Bgnvl4ru6@b4koR zkLs~vPoeYF{vV4bWroPSFO$wCRae%~ed#ZhXG;|xHyr4Zwi_ulbWHkQ;~N^t_P^c4 z0Q#Qhp%0^mY@h={n(EDt1#xbEv4Pmg%^`;TRG(OmiC@x{Br0vO_Lc<>w^m=?m%QA& z_BlW%Bj$!KH@6FcKgAGkH`YGX~Sg9 zj(h~GN9S!T{lcHOzeN?OiF_%E+F<)m+8DO9kVp8+vR-dMBgwR=5~$ij}!1m*w=a&AV$PY!(S;WBx|kB5mYP(Qq~3WnWRe{DMZ9BG^OaVyWw}S@Q_Bd>)v`GB0{xlQ%Q24< zHdy(^L_+t}R?hj`3Qb;iD=9JiY$Y~yH>RL)LNH3!adjS!5A|y&{}$?)wbMgWH@{YL z-`@<;?r)3GGp}@2KrIgfWX836KvE0|PMZWqRJiirk1h4j0hW?j&)-4=2oh?HTV0x( zu{PUr@gK67q5O)mbcMX;L*`&6rMg_vV7Hq~9c5Wj^cFFBWlJ9N?e89fCA)gXd{>{` zv{EWLD_}bjU3TDj;CJK=T2~T#@~L<=3XN{XM;w)yHgs0iJF4%b&I}iAZDV_YB@G86 z$Ev{5lx|Mdnp(gk5-d}nwW z*l~NPhE|G2V5X-t_xM|P{O2ql->>mfO(E@t=mN3#`1N2h6O)>vhFAVgj3$E-y4^-2 zU)5n&wR54`B|ftAYrH2LY%UL+bS6J22r_>w(j^aN@Ix%1`6-T8lNEToQj;XODd--= z*nf9-Q3}?QIwoCQfi0fhQT+CGzNFNH}hVUg88dI8w_ z>f&XNHztZ9i1X>ZTLVr`2u2vxOs~;>4R3?4`DXmb3Ht+B)P82DOr`_{C1-32vF-IG zU+wCqo4uH&#DQH^4^??>qB=F=G!cE+Q^!d?X+h;#x?t)67*3qDM||Br{keUktiDTy z#vq9(dl_mk%TFIX?11QmPyP1W_*@(NFPjZJbBR&R^BVJ7QLTn>)Pf4w$Ft%SnHf+I znW{kPI?ksXh=P(0N*go3VIAKDdW-MOO()bhG>nWo)ygne+Z4dBZ_Fy=a`D#7Y#jrp zB#2K5(xO!wLmi+#9zKm*svqu|m`@{k6RjZKpUz_*Ai|2-8?-mpsq~1#Cs=`w3HGL| z&*^8Ii9RgBgOeJGn+WIKDs1|DkTft;g=Ban3Jzk(Lr;nP{Q{bZ(yUv03E(Kw_Eh!!YfJp=N8G2^+0)G zGiCQTt%4mpiJi6f?fCO=vDvE|Peh4RIS9PIEHd|mOvl@|d+i5_maDkk=qY4wr^T>d zP)C0J>K)FGbG`qpb?8Q-F+f4skSHVZ_? zjZp_aQpkKQDah}Y;Y7wYW4h`faMM*y1rXuC+Gtk6g}+x$#3s@{v1oaY)Xj<5!14NMds|OXBmH8Jq_jy zX6%o8+La*_q1r*pw}<*NmszM^L*O)(dV53`w#L|`=BZe4nybDqU@*m}xQrvLHo zx5t^KybOf$xaBVEgKUiy-dBfjqYcv98OH8@Mi1aw>XtjBK|}ER!nugRzi($m+}Sl1 zche@D1W)d>ZyS#SI z@m@=pxFo_l@w=D9?czBW?^rL~C50+dEc$=cB>v}Tn)QOtS|jTTVjYS6!`HvWF?#oG zgxGyh6&4J&8*g7{owR?>RC?3Ew8c>&kT!Bvt-(HQFt=G9&iFA)ErEb3=Ab^}di)}1 zM|XoxR=%{;+5LTUf3JYh(e(MckoB~JEnf|=rTW=gb$Vd}Y4nJfbfXgeupy5%W5bVc ze~I2NsJ0Yo(V(>`n@TiVwKTChURfCpJR#=O6)L>rNH+3Y{Q4r$=pX2V8X0OEIYJIV z-qsR=#&nX|Qj+|2<-CByr+1dXObuf$JmVGBl|T7yIWrkHyLvgXt#S9i3;(Tg?3++7 z@5-++Z62}wfDs>D0q2q?~gnIz;{3dO9=)*`6lS(j; zjDq6>>Ekk$nF7|_h^hm9&+eWdNk^D4Tb^Lep;pgH~#s!{Mb!)Wt!E^uAs~4ClPh5j8RGYDosP?Lzgt~Sc225z=(oSK#p3#z4BYv z2d*ENUGaj@LWy5QEitU%f-E`@+*!V=uPnCIsV~R?L>C~Mi6Ps!W=AWHXK(OswYHdX zy^sjipG@T0BhQ^Y+bKc(3QIT%vkD)5OK>a9C6RnbtLM|==B9@~mY6l%=II4UOr(`M zI_+#}3Ip$GE563(&GYzs>+++=Ut&JJhwOdp*xICKOBzQ`ewEnb=yYnmE_qyde;n5h z!H(r)FtR4bt5H0Fk1{H!hO9P!VM>2r?4h85dO|b{l|zu@yGWzsGIwo&n{&A!($ICp zibq9${Cdx|Jx6!TxDu{6FP@ySmufGQ4;Rj*;o~VQ$V;Hs9-aU#S2ep5>K#dH?dMPZ z)+#IgLccF*w9sLSRE?|%i{5}aMF>Y69fjZz1@kCu>? z^RwKJ*%_!QMS;oA0Ky$RhUsB@Z9HH2ca(ZoQk<4Hk(9k`@`Wwz@vqU>sXdA%#8Uk7 zH(bLat^Fs)pXi`w@WHxIY*8P)ep@}Gn>8gjgT2aUk_BFlLF`jw*(GKs`^`cQ>5-{| z(CSlqf%?0RO3di`w~f?%ud>i-@Vs$Do{cpYRUwAonKv%3lgAqXi>8}5(_iR29;K^6 zeLR8J1*n;e%}8_eu=`5aJ%J~O_dIeM_(2%Q1ORmDfkLvKM=G^oDuCm1^Ix#!vb*{F!-}0dDO4#`xnQlV(V58I?Xg|^AhKn7z0Kl!*^!pEw?~x z*Mo=}34yYYr9WTm@8MSI-^*HiXUV+S%eiRD&}cb@4F`3^hO_v#AD^#?Ub%)JS`47C zPG`enH;aPo*v7>h<&}^nv*T4_52`I4a(Gg<_8r*8|9dU?hGeS{O!0(jwN{?qM zf4;EbRcx2tlW33C(2x8&NRH?YVQN9AonN$}U+he>n3LWw8BdbmzY>bDU&`ULi&LGt zx0%K5<-l?+NUZ$;AVRhz)Ml~*fN zs{Nd?>WJ5J?7uj(a#*%A%}Wg>eokCLBUKS*5ALwlph7GI5z5-;LYaK9naCl;9!f1t32ZZR!$yXo_D z`e6}z`{pJ{ELN3ziFygQAVl0Y?Q3qafvkk8zlSCjuKY(iLrll+ z$mfr>N)~&=VRocinc5Hw9_p}1!~?@!ZTmTgt#iZo-j|1VCycFzPD0u_lD^w;|C4=QB4mPB`x%nR3#Ixx#guS~!u7!d^TYIIXbp>7HfeDtVlDpgDPn zuE{%EmCfUCQuNFzIgKDha!u%GDEl6v;TjwK$`(!JWNC;RZ~di1iZgVhAsv>mjzu`0 zAlI$Y1{?oJvw6D7Z`G0|7 z#-D(pbJB}QxJt_NCh4Z_vD#0?H5LEB@YKgdk!I4#5bk)gu8!;2l3h_n0*X}!*Dc|F z)l8<-@d8n$i|P{MVXQHxyz5VfM?ZC0gI~2{ zMLWyAiav@!M8}*{l;zJ#DI01g8=AzNnm1?!P(khgV7dPb?3@V_p9vr2pVaTAwazTAZM}H@+}CnIny{A}#^(rDO2M}+uAM&X^gHdiFNYrs z7%P@c$Afi!jQ@FletgH71FKZRl1aB#enrHA;GUs+X;+A)`Q_+CL%(9yNuYx_SCggo zt(F^8;#?oaj9IqSUJ4l;vc~gUmW{_C+TJC6$l^`)n_hU=K0#c$T=Pdx_h(?b+Iptq zv(!PJ{Ze0$0(knkFZA2PYoNmrl_qKzAy;z5##6nHUrR6ReO0*Lh#Kk%!Ez}+evu}m83+Ms}3cH#np}=(cSZ;hz zw}2?<9Ac3X8c!ukIZ~cI0?P<%7qxW>vdg~F7M*BMv`?3(4y(XCtx+Kr{S{LGz6}fe z7F14g-0w@Rcwcy`H?FLgckCJK!Pp~VUbh^^_*y?~7ld)YJf-IBa~<;MM~F94AEGPm zX|Jx=Lp2IzNi>ahDjRD3^{;#${mZ4XUdV4f<7S}*Zg&^wS7WI8oZxk8Z~*BW1(r>5 zX%*u2)hY4HJ;G?IoU5XbR9($;G`XRhd>dVzyk*f}ZwC2P?(c;(^~@yxdtE@3X0!{Z1B|}$h|T@OWPKawG{|`l$`YO z!VF|fy=rVYL1Ae`BG|Me|F4RJ|7>nRZy=Q+!bGfSCbDZbXt41WSnx)9TmuT;c^2i94P{iXzAf{fQ{?(huT`yC*vztrLplsx7^Esee5kE7@xYjLqu`p^`BRI3 zt86II^m+G%DrC5lWB9;h&igAlH+upF**sp9a_&!E$};Ke=K7iRL=TSLH+Bnp|{K>y~*)1uZncx2m_%|L?)#N4imY#at)ifY0rwgw)it@Bogi z^u&GaeLlj<&`SPg+6<;U$$mN1tn6Y(u8DMBNbdfNSPqrCFIkLc5)+>c{Bcz^A^qFp z7Ruts=en!^_3*dfD5NOS z?LQlScgFR4xnbJrdif04a($5bYX?hbc z27)F6KGL%8mETmPg&P& zZIP^~m*8b8ebVJ59*=SfF=|ud@UA|1+c54kvkQc0?B`%+H3_T+mzE?*HkJN?p7e*W zR~dg5cInRz^s@Mnm?ew!&-#Z>^s``YPmY+oHjm#Q@^uY7}q#y4UhK zE};wk3!AZg_}}pb^#@H<7{qrTCmetxB-At8?+J6gj-_i=SQ!e_Tr!eib1TOPa%Hd~ zM?6~PBhQDtp8gde6VKysv3_ZJPh|I7o7sX}?F(V92>Zvlvix?Zt0c(3-3R*rrr&gK zg7Rr@mH8seIm}TrBhg;2Z7X`}T1J^BZNU5fV~l8#mi~gE7Rxe;s-E`R+q>P}dFliK z&#wilAsPAY>`W=rU#k9zH4_7R!>Ly~&W8GLJ;YTtBqcuyZ|s5j+OMmuebwZde5!1x zso6Zqgno1WPVkYn#lWyutx%h$NQ5Q!zK+CW6LtB0{$lmgg8Th+$^#lrluq{a%WnS! z)6^sDO`9l~M7Mm}?H4-HeUV*^P5qn(x4h4?CTq;v6Qz=9(5x&|`?>3Hrf=-6CxpMr zkRi5x8LqcCt9{i=$ERD+He6T~i7)>LWkx+)&V;+or(YyvdHgN=B3C0Gn{obFQt;p_ z`e2al>W#3`LPyfYUxVE^^+Q`MEuVtv*|!XXBcr&UGD3@@tFiBHfw%m|l~-41;*>FQ zgT~N#?_=H4dIi!1my_JihSxtJSYI>86(Jk-p8qw8PSUWN`1Qh#l1Qqf*sG*nX&6MDz+9k$HoX{FdF}#VdQns(#HTok8q03?!Kp=3Vug%0++S-$;l|y zj4Yx#l82~OPE)$<^g85A==2YBcB$9ECtM2baG{O!@^~-1jxJ@-s&J%%YzhAO7&8ZO z0TX*#PexEARKLxt=!4G{b{alg8zmaR(vAH1+2aKSt_DW(Qh=V0$-jWktlYx%+W~VK zl_lMfk1(W!tAlmdN$Z})8p3QIXc*`g zb;5wkWHs~-1qwM#W-ry!ZLrlLjsp-0Ly5Qt8=aMjf0fd*fBKP*enquedhz@uH8ldp0`&Y_a96 z@@(#XSJUa`!jXKXvHATJ&%9fD0y&eE-FnS94cK2Mjz^@UQI-MY%*$>%=|XzT=L*2Ng?3*KzW(7@wsI>GSDIi ztIYsaPd!;@o>c^sYv^8#-j}q9sFr9d9a*3Y2I>Rj0i@6jWTBBGbpOdrCB~eSL+(Yf^WYo_6O=ayU$9kO zo$OEkNVc|fQgAKU+gUtB%wbOASCQinZ%FPVGfE&ag)OID!?esUzQtrx^crfXQt24E zJqyg?^J=+_DN#R+gd9)us!_Xz!o*J2ZbG`hZ)0JlfCHM10wjfUyq@(Ki1OrsXBi*5h=1x&?fSNV^U`F9lnPY}bGKZY#_fGdDs>F%47X#+SvC_> zQOj5-jl#v$_9a@O>%q*l0NWp$MMoVknV$@5Z^^x=P@Cq0H)`~l6hfyAk)FV+Qg&sq3)M@)mhA~WZoyt8z`R>M zAj>gyBf$N8ikyT~f719aYs2sx;wp{Z392 zs)6KJlan7PTc}F$roA~&CgUtq(&=;>gjksYbLGUX;oS|C)4zMmHJym@>HtO4KF;I9 zgoTYm1D4|VoEj|dYm$Q;)|BKt{d4v_Gx6n@CG~cyTWeV-(qaVA##02!*;_pQpdNRf z35p+LuiXB=C$XQeNyTGDO!o$5*#`cClmbXX-tp<(ksv;CDW%jj{D z(}SQcp^Z2}+UiYpzi-3`h-A{soebR28qIiImG*S{gv71>r0Jy65*|%da&UMw#n*`l z@RTlLD19L#2{B*LD3kdrF$u*4kZr{%?&tyBDHpp`@IeFLTncpG(=#tnUFSJr(9fGn zPsoaJ{?M9FE@rFJILtXi=L*tsIdn$?TgLk_I}O6xi()Y(s?yv+*Eq3yoAVI}L53rH<)>c^nUSxR1lACdSKtugNTnTF@Kj9^~t) zJcFKoyMUL)63H+M|JJIvY~LX0*DWoOznAX$lL^Ly7+yDy;>tok2yB)Z zoxK`fzn{gKPZdY(Jpa(-I*g+>?00#`K%Iehy2Bpv7h0&<+v@Z9DLeX+w!F(114fV4 z#z#Da@)D&hiSsU* z)ehasg`BMfU&lH@W^|-+|K*(?paI zy|@%ZsZC#;psVWknLZH2ev{qcFxJ*{Ge_(u+dxwM>$UHXT!mneOvO7mug=;1Wo`;C z&hNzE#rWhEHE>pT>?>VB#UVfchPx1Ac0tw%0tAeZ-N~A0kDT*v^#$rcg#%=;xAOEL zXly-P_T>~3xdcO+|26d<5T>$>V6rg#n3m8bnSuCnk2bj}?ve-cj6ZRnxn82dRyL*U zy^Cv$mY)D>T}OVZUo>I7ac69olis2;$jC4ykBLX3jOmWt>X<5xwDih~X0|@NKQ-lj z-kQPj?t)uDfdep5}ueS@zQ(^bSDx08-d{ZAucj zWGl&Mrex}x6LOpjN(=Q)jb-}^qbSECajxpI1{;8lnYz#ezWnV2_(=xg{8<}Q zt%t?OTpK92DcW+k&8d9%UPZ3K>KdOl6KS8uMLZyu54g_r2u?}p*cz}ZH6SmZ+8)49 zW@w5>`j3@QI6;Xfv!k`2P+D5ewbzi#3w5Xp8PWutvADFwWasShHxkKP&guJ>M8M4g z_MhVMK9Gg>>mI(>ay{iY<-M+(!d6ppUgT$=6#*2e10u!}mBC674GUjoXk`8i4(U7N z##;feB!`QTfySrNLm~W32Fdr8Qf%<%)SN^}jgP>x>hViLZjd39Gqwyzsa&*c9MW8)lN;;WblOB^!nV6-{d7SaGNHqKDh``(^ z-qqe?9))y*C;JH`|MXalM|O z8_iu|?@gn&{+}rXRo30HXJI+tVCxc9b>Hkuwq3UwohVIDgYM+PebtSG+uT|`rw7*6@ zzBT%J4FcY~%9N^u!WljRM2uf*lmBsJ>iB%+!O5G++>VYaD%14+4V*_k-8 zfkt;~5%oMLS8(4q*i%OpfgP@*9e+~kHZxSd{9UH|(@Szp3G1$lbz8jXM%Qq-k|8GK z8nc;^g!rqak+z}nnx8bTN?ktl3nxPzM`QsC9Eb)<#F`jl}KhtHx` z(cLEpDO1vN>+SXmIKQF?tu=lS#@_zZg}_xLu6|=g3~@LkC4Hh$Qg5j?W5#HkH1xED z(t{RpKwK5xc96ou8|;8S5NHszWfSt4n~EMDVk$hhA{<605d7X0z0sM~ie&U%2IsS> zWJFdz(rMkmI^OTljV+H0t|I2YBF5JX96Fe7IoL_xs2LoLQ}S7N_F4RPn(EOxhW$`H zRrkx>Te2HvXYy{I-bf+n>z$^x_r0SLekbHXw4t{z(QA^cA4&O0CPB%FIl{xh@PdRE z45~|;upLqMsDb$UWVX`ns`AE+JfvcN?!%T%DLe%==-Qggnp9+lpEbLNcb@=8t|O)%RnhMBf^ zasAgoRSPSHI^K`Y2`h7+Wj~Tiu6KJ&=%p4G3J+#GD2K9ey|if?WPKsgVSiYLvLKk= zRTBn^o8K)zJ9eQ$$WTZlr#2Yn|&DpH$yyUmfn=tC5&5Qe10!>SghH_$n{h?CiU#Y;?iiZa{z z^9|xNBx>2R24E@=Qt&jwzt{I9vw#WTwkvNnGB{SAh!6akOIv8X`}u_~i;ar?n)<4y zabgIo+CiS>1?dq9vze7)T%?h5x2ER0DmPN&TtR9J^BXH2Xi_-Ge%lZOYUN5}PWRr; z08v%!Rl(v^sk&z|2?jbx?QiS;Tum81=wtO)^ZqhB9bcjmZbecdcs&3}ysq_{p70`8 z77Sm;j}orTX0;E-1~^rb2b+9MlZWR%I@Wot*IC(SI_fi9XPyqBUB~~&R8Xfh*-fYp zlO!T7D5VSEi^YeLrMz=Pmk;+e8i=9WPK_t7X@6#^nvbv4LR*RMv+96Mv?NT9kLWE- zqFe6vd$sPaDp}*GtXT#mitd928^6?j63%ODfrz!eS0>70Ak#5<^#*`p;TDl>%d?O+25I1h8VYkr|ur=}4f>1un)b&td{HnE-C@_ z&HfvcrwKp1*6til86v+1OkMeO}nZwz;e`aYTc z!jWtRZnAwJUX^2dn4rrekB{)^pFI=%;mHl-dz@YBMlv+NxSIlU##6{==S|=qS=Odf z%Gn}d^FKs7;4k8T*XdIky{8h*CLFRkiA+>Y@**3KB^qU`66sC6&E^{jsX}1aQRV7$ z^owJOZ@ny~UM_y2mPi`!>gtYvj8+cOq&K$wqAtwGJbo>#CiZ|JX)D6c^U$&<_7o}S!>0w*TLc(Su(@6Q;B58?mi)lRAYpK4sp-XX>el&9f#~^0q$>2`7jZ2SFG+V)mV$f|_1?@Fpf? zix^i&`%tI~m7-F!vOCJSbyf^@x?7b87I^p_ktK#-%kbQ%&hkytH3k`@KmR#W{HN@7 z-TdkRY=+70+Ck?3lm7RIclv+P|2`?Ue>}EI9T83}F#j4PSC)%dW(Iu{?I=VCM{z%< zI+Jw-b!89>(@i#@WPs;uH&m8Hu1@+Vy3Ou!b13%tX{Jz44s~`9SLc@RJ=+_olxj!R@K5VKlzm|~wDMrSWy8_7rg8Ol7ZA4XFkEl6VKS-W{!=`e+(S5>02KFl8Qj;nrMs8(;xuhpRvH7;)Oh5GBTng1|QR)gXe~EJYz06AI z#qTD*H%j#>tB)#@82=t)I(n$M+bt8jY!X7PYJH7&Gv+{&X~u*}v)bY>HD1 zABS9guI`RTc;{YUUC_SwflXd#`jiQN^sDb?+g=+2jm|I}tZ?#M3B3&)kLw*hCAcLM z415I<=H%~{FR61syfvK^p!+Y4n*3fUxGX)GiE~1#uk|IxQ5#(*>Fg+^O{^XKAL`yS ztjTR_+g4eEZYd%PNL3M0>C$Ud1VjW>gwTWZ-g}FPA|2_SC{+YP2Wg@A-a?ZiorIbK zB((3w_3Ztug=@b*-{bv$%5exO^PY2#F|O-6rJ_Hs)b8(qSKSGUzG8%~kT%%ZEAK}| zcL3wM+gjf;_v%W#76m>Z1!(ity!p5Gvho2}P^2LcsXD?3xwahcvJA@3&K93(!w`vA z-i!}^SlufMMh~3nZJGG%VGhhUuK5Qrjd!NVySFXb;rF_es7Nn=coC@3V^YIW0fx?Mo7<7E8{( zi`=}25=yqT_9uvynBLhAER}$cplv>qB#;E6gfe~`LW`P`^UX$MAyczoG@83wNBz^d z^Ok1R>4^dW`z0QjofyZ}z6bP|S93FL90DG$jlGo}e&~YB&AJ)Jn;+GGMmf|VvNdzs zKVJo-Rnkoz75gO5fN3G4?xw?Ss>Z5s5-d4-FG-Y8CcjNOC7{uXeH7BWGuwitmw}XFi&}Fd`8pAIwXY%qS zyw;78j+mK)%YZvPUCC?3ya9Fns&8nxT3?T=i%SN6R41n3NF)_hcX|2CaZ_Q63#>d$F_%aQQypo2iW#YTwT zX}Zp)83}!6WrN7qsqhGw!$ns0<}fRn0opT!!&Hjx0Bcp^^m8PARm)*Sf$cXR8>LlE z!nfUFJ8ci8j>1oRXGAQQx|h-~lwi5{Ij|+0Pph$XF3-M)dRrX5Yc%+4^`%eRUGM(p zVF^U+_@^S&3oYVV0ETNllp{rbJRm@I`?Qm>f`@x&2Z_6q30)5turDx6D z)Im~oyb<{_U^Mk%R+WFhn0r4r76>6#xP(=lbmFY`$m^+?=IyPBV6#-$jhG4Wkp&3I z*{&*zZDCY(`Ak+R(r$ZpiFNwQs6?b@e*PpDuv+MWX$-4WAJuX4B*c;#)|Pp5rEwl( zF)^;S6h~FgmWj5$+49xcnIzk$QO|SDNgGV@QhT2G;ooFFd~ZnU_4=JDVhr`3T%xl^ zU1eigF9y+5s1|qC5UDvwIh3j1M404_#9;5}7oLM<2?hnP~l{>^muUIcK00;peUB?*@n}gnJRx=_EKXO^*JDOsvU8!&EMZ%xnim4NC z1uhAl3)XwN=qys-AQ`{Av8FgRrF){*O(Gi=7*Pquud{eW5zD6$fJG)K15qWb1ClS# zcjfFV8OiYJ_>=UkM6|{yss%u{bzIz<#Wzyg!9{q33UlU^bnXH; z5iPQWKOe}VvXUTF;^C7*y50-5MWp!byW;pf7}88Gq^AFRToZD z)sqKwb6R2wI=MV@uIkWwe*R&zdSj(zS=xl=(Wk(B9Vp&F_=6il?%&x%5TfGWZT`{Egobxpw z$+X-J@m9?Kiam2alt<4$J8p9I66vA3N3_dw!Hfj!W@VeR)oI;Uzy5zr7JB#b{$4BR ztv!xjf3yl)=|Vm{r!FjA&X;JqoeAg~Z_X}o7Lep%4Jjp18W4(N{(DJ3D?{QC3>O)< z_d3l#hn)*c_VQS{E%aQKsvMr0Y{9-akY#&*tF6-b^Hjg&K*Qd11PX3g^B@9`@2-Qp zxT286gY&){x9(<65j^>Lub2ESkVBue7Z51Cb8eF9?m(VZ)*_>KqD)~Qet9XDIL6s( zpquxF>XL6RbMM(p8D|+GEj^75qQQ4R4qIPHb}&{MX?dhakIYb}Hz;NYw$y+5hhLd_ zuAA4FEFxky&)E7lRbo_eA#B-nv29<~ZKklt^UdjNl^~fz07Xwow|{rI*<#E*%B}f6 zowvtb7Hh&4gTb+&AwQu3{r<8hF^Y^bg&@T`ohR-J&GR(ra^Q}#i*o~6a$4IZJel* zUI31$YuA?h_2MN4*1~@m<~NC*Ki82Juw=Ga-x_a)G8)QmzRwYu6eyJwOpt5o=aAAY z=w;3E`5MLjPrp5y{%g|l7)Z>^DVgfSS#U3mUzwulYnQkeUmj;Z(?<+brw}{k@*jo* zR)X|Ga?yr2&AptOzxnG8j#10#2FCE-gjnoco)7&ORPP0;NpE~A?c$8pZ=Vvd7)XFA z_u%3|n^lh6RYLREaQE>AMcp`6D?xM#+$J~McAZEZFA@*rculz_7!;bG?}KS*Il`&s zm9A26&(^mhf?l$P<|mqUvEHFWU;2ro(Ff;iCO{#ca%D5#1lKCo$_8Y*UuRu?-oEU zWT^Sk(te@SuX5xkJnDh!GfvX7pRq$r(iB^hnJg`HjdimRw|I%<%SYc$2SsL$_m(}o#7ZU zlT%04+v{d+52y0lk^v`*iQJ;-O8%eY!z|v~0EM=AuRw#vh6&s`x>0c6j`g~!?*rva z&2Bhjd1^qO#(VZ_x|}^9E&$(LABXRxA<^Dpn;!PK`J=@Rf6yPnwmSQzX?3APbwtl~ zb36_Jy-oetHTzFJBm*cFymMT^GliU+z>7|%?S^TWp*Den3cr!J)_WjZKVk{aG$e2| zS7Ari*K57a7lSf^pzx#N>U7?+uG|iQDmOIuA#`%wnetC-2GtZrp$R@n&>gcN=!_c1 z;TYlh4sBtur;MyVdBx7l^(Q5oW2!3Q-zA!i51}sR{`%i06DOURRF4x|;2cv&%%-UP zD{yb{aKz{qHTs!<2X!_iqzxYfR{l5#nD&?G&NTTzbS_@}Fv#^pX3?02_fR93sgcxx zb+O(u>H@!)x$-;bflgWNvgZ!`JU`Aym`YoFBPMD^m3sY_G%^cpRm8>Z@-&43U!b@o zUq5d0`v15%Y-SQt+rb6P%i3LZ`I=mM)6rDl4LFJRH*iTvpjROsr# z`hj`#N3GJhl`JP&mK}~oqv{&sW>3XW+ld;f_0EbCS0_rSfx!(}oI|a|{$P%3HmCMc zc@5a;sAgQDFZZOZLaii-vGu@a=!YAAQygzao80Jiw?7KbXij)R|6WsI=gcL!N{6G{ z9L$zo_>KWpX|!P%S+>uDe2oLo3mT1~w&x#om>|>+qPtdic5bLp)~Ow9q0Z}H z?O@EZ;e2i1?0Kk}tFucMqM>rnRBtbdx3=%9dc6xl-C0)0b0i;M zNZAgaDe{H2G$mS*_j_mam>2$T>s7BZ1?3a7>7LRXwK2q|w->PqI`?kCx zAt5nHw1j`N>8bmiv}N$y3tb~O3mTv{l^ySfbq6nG8dA9Tz^>Sh4HTR?e`n{G3U?J; zK0y_h6%Fp~B7NKCR`N(V`hVsWui27h5Ecy`;1tZKKh!-0&+%-S3py{8V`pX3>nLh% z1^`cH<~>5_5*4UCheyibIqw@Z;GJ%Ea&^v35U5s#_-rRVsYrEoB0ubqDDjr8`?PLA zEtL(uJu~PdT1T%^eEWD|0w5?x>4lh{%Jc)?g%N4I(l4d|-Lz-_r-uE5Kft}SWFMT* z^UG6wU-26zw|tDk z^Ji7Hx@~5Qvp<^v+_zYcrIx8$c16DH`!|Pwnx@TvlqQezgX(ZffGLFmUIvkJ<$ZHp z#dzjA5NffUov}(VcD*K?Jd>yf&fvrjxSgHK5Ulmo!tc0Qt$CE_7T`aYf-3;xOVe{Oom$XO1nE#T0T{?!t^k zokDbxQ6DJou~2z@ibLKc2mdS?&x;Fv+f-*%HeC+qoD|WkgS%5^E2lhjoj!ax#M&{I z0Nr`c>t220XLj;goj5w!!66QooHAUO;lnX7i8_0k^kV?yf>p`HN2C_&L3ih3+ z7iXCn{bX`!YYfEGcqLkkoZU6V!dB4IR)oe*q;I~c`?$Chq=IOqtx?Qb`vdORaCds3Q6T|11XAoNd;s8F(u z4T=jsSsB+gXKti!L*95o4pavi^5>1u+Nr^zCaSA<_d0zu)xXo*BF*3C(_H&@gSI2~ zlcigzN(+5W*LR1=Di5UD4F(u>9}!1)j**GqeEpF<^3~cs4u&duh8p=!U2>yUo3p>m zia!IU-Y4cgPzDww8s6n6UQ18xDl@KNaQ*re>TlIazB>RhH5MzGOz3F-MGM&;Ers#h z#BT!zS4uHVYPS~Z@A7EN2dXKbi}h+2xg4ru$Dfs0?ocG{IPEe|3W#NaD*4w&`yY)i zy}n+E6(3t#Ot4F{K~y%(i+PV7-ptv@^eoI{(TFCF_w39TDX8mb4OfWLy$t@Om^oSOBRO_w(A5yOF#%DB2Y(tY{zkxd0=C;iMx!VD~hg z`f9A$kNdQ1X+aAhf6o zpA#xJ(v0t8=rz}JeIR(7tla9GWNRldEXSL) z)BOsl7dC*r?iayq`iyV|)15Xr+wS*M%<=!O(L(4`7xD|~ij{gJ;I+{Bx7WhY`Kt^~ zxX=Kt@~a9TwkXiy+}ZC>t|sn;VlhK*}2+70DH z9QausXBD4glg^#}q;a=evR(l;V#lW-X>-AA7{yI)Sscrk`SxZn!(JxOC=Yh$^ybC~ z1Y8W7ycOf`g?7g@_v2`JI-UmDG9Q($&;R2)`3N7}=% zH#oNNHHsA*1b!uwEdSX`_#us8Fh%*dtCjTWA03?C=LWAJW@4{`K$nW6X6KCGR#NF!sQ&-M zd=abya@4zQF#7x2TIH*+p*x9a;d6}~(v(e_c%Vm|{mOk9z#;!!+POJ{y;Iif+OYhT z-Sm|oc@{tlJfmu^PDt)K7|>^lwsrWw7=JLI7Y!2w1z#cihsPW!%%i&f?2n8PPtaZ` zu?K8q>_D2|c4nZ0<6V}~wt{uWj|OL{>#ZW)a9y(XFBrWIhRt+^d3AtJb~uOH+=?2q z)nokklM`69Uf1<~hOc*qN%JqYI<(&ArI0JXO)N4k{m{f)=5VEDRjtD3d=OxP`PQt@ zU-Y%;L$FI;lU!TqSJIR2h;w6fkqZJf5d;&nRg5@$`l=f5tC-;H;Ig1|^}i+-{6Enc z37W%>i%e-eS^Jwd>(BGHp1tu*3Cv0Cm|y!oi!2b=Yp5qocs06sm9dAImn+}As$K0f zW!HOa@IKEav={B`(Azu{fKps7I9ga}VZgrjJ8Mf$M60@P>EdsF%#$4!1BAjJ1v{qq zM!J`bSkVKmjbO(I-VLAGqHyOFVF4|2szYlubk?LLH$PKeiwogC(hLXocUX5wr~Sh;haxIx zK&XJg-MYhUh+z+kA+sF1q@x2V5-cM!9of^~%`STwA`fx7`m;WbaOJHyAc2+%*H9t% z(kzhVFEj?t#g+OrLA`W6hQg1ZVwv>tBn3)9DzC_)S40t^r;$ws-@EVtb)SV<86`+O0X){FAMi zRWZJoo8rRuKdE?|=c*fhgEU`oRp^3vFW3&vc;m_ittU!xRIK~$0m~S9)`J(sS(uk- ziZq*eZ@A>Vxk%Q%s5{vO(}!jJ+#IiCq|=ra{-g zQ&pA{e4#3%jCi8uJOI{t{9K4B=urS4O{_b1DQm`KxgeYQ805Km)^yoD)*UoxCYP=! zHxF&wH}>796&-x4`m}q)bXPkU z6^C@8hetSM#la}ohd1(~4ZuH7Y26th}^%RcPKNQ~aTRDnW4<+|D`f{f+) z?zAU#Fy>(9uoh&NI?Z^5-Ob)S2(v9XfbQ*a4C%TaIt#dd2>~NeolZnt0CDBYWQeQ1!Z!b(M+?1<7E?yBN}kNmJaG+1_ORT&7> zC%3I}C14ZZbGlfha7*T`s3-hkc2Mx%J24chm6jf!oJ|^-z1PK*QJiT|u zeDDvl&j!Y+;tlP77c*n-Sp|~O%m?L=@e>C?OKf+RK8V>4SpN{o(~X+mAKg?;s<2Wj z=&o>@+1`OEfpEtM4__&#{oLN!^iU(Fg9un$8v%uPty?O`rP0-XuG~o$D;ZMMJ7~m( zv+h6fXp@*xqwwu>YaL1=EKBc-0U8Cj7Lx+~~N2aHDMOdG;?Gx{7dmaYYdDxc7OB`h>CB>$0egg6rJDqw8DFtb0}q#*n?An5tec5gg(2Syzw4l90J!u=v$U0^ev4J6&y@d z4|WwF2gTKvCe+cl;;!qi%1_takt*7@6L(l>l#c9=;q77t^&Hn_IIRt@4#(78F8+Ht z=xg8n)D*%7QNvxmor2(tDs@)sY4qL((ye5l>6BLq>l~?L(JVfD5l;81#8j+) zL|0XbW8aDhtoMMw)e(|xlmPXv_VFU*s7%XgQH}H480Z+goS5Xc@3z+a=q%+F^%2y3 zQr&982yEtXSHx!jsJRUkgSgiwO<09m81#QyN7Hub- zzE(x@$Zz)@@Aqa*PHejEQ>^ONxu_gH@Z-hY-*bl^%yt?RdPAZS-%XF*cO6Is^#5AA zZ{6nmOejod7rNxY9#r{4>lU+RyXDa^sJy|rq&U4G{&s7;ie`Z?ee)A8F{f?{v5yX- z;SaBsm|f2=G3TK%v<(9oX0W6eTEB5&y1?-0g(&Y!&3y$DUQ;8!vY>)w+ zaw~HWgP|ppBd^dt=#k>;D0Dq;XhO(x&_7fqqt9mtHpCV#jkJ=Oz&p1P4BgwgGj)%z zK#1u-Z4GBPi`qmoRJ>6FJ;Lidb%HaEy|ekZ>B!UBpLh>lvSgt-u3i-%tf;<}}XGatLp^ zlvQ0fE%7ZgTM6~lb=q#~@><_ig*5(J_+u~YP2Z(sONz6Tr&^By$)Y>Up0Wk0-^!#h z(fA~}_w|2~3dc58zB@B;&2H8&Uhq|`fpT!sqn|~9p7x2Bs-k9r&OPcTVq-t3wR55q z1bb6c{)INYn&FI6JNP*OUFZU!3%XUe0q8;nAaXJ!oIn?bOjmj)=;RQ4nY`JoN4&NQ zeMhmTnQCC&n4>)^sK_BIr7ofXcdT7jZ-#``>HFZj4^mtao?}@Pcvf|QgC1LVxW7wP z$&HvgQdy8-z2hWEYREm6u;~$yhNoH*i3eyt75`G)oSH0T+t679Qq40ZX14L)N=F2i zi);~ZQ;~~t4f&c9p2JOq2!PL^z3G0VJg2O#=ve<+osG%-Gav5uM}J?KcIFR0L;D>q z&6AJExPeJbi__EoVxhd4!>jVqbb9pgNSa_RH{vrOqpnEKXph6&0&;;YIm_&SdYX4q z1JuHlI%4ngzLaFa-Qdlaq0hg*Z|WNGmhp<$gXCKG_@vRHAssE3T$qIAJ5q98Z|JmR zozUTM-%*7V#OGzg0@3S3^@v^X2++Lldtb1wX^xh^;P)QdBVVZ z4jIHQ9-Iw5u3$Fr%4#*Fm{JwTOkJhhsKojax&l*s;Y&F^JrHFk$%f+sp{7&qmio-@ zGXnQY?g$u7rFQrlld|)KDtY6I1{&MdSy$=%Yy^0;&(TWmn;9{}dRWM7jUU)(#RK8f ziB;#@723Qi_1quhVq2x-@JSr>A`g%|-n&wtAUAd*Gjh8wVYZ78|ooeO$EWO)QJeo1;d|CV)F5kfFH2);0{s6>)X-wwFsgki*^N&G@SihffKB!wyx$W z*P2*&ymvsCOE*46=!GcP9d5X)@n#uXn;&Yf%0f#_`;=1v1ko~dCws`X7A0|O;oVrZ zXZT`8AuB7=a&vlq)x8grob@~*dZ`DkTp^jy;XS|c6Y`FnlgW5CqDg)byS$r`kP`Jx zrrh9E^~o1Tua5{3fFyGQN$Ah)k8ZP|SFWi*_zQ#N_pN><+2kWM0??eu=&H$ynAeZ~ zH=SHGI4ZruF7G9>nMq2NpHRHY$t4W*W;fD0$fR)<<}E>stKP1M?$iAVxXQjmOJe`b z(bU(`M^Kn3L;i9q*Vhr&&NOwJ(pa!N%GS5z{b z(a6kWg2ZNTUlf(JpkFx-90j3NuL((1*mQV%?8$=uA_+kC5GcP54yzMEYzgAK*ys8C4{P5+Ua zy`9Osmbbo@*|+(OcYnutb-m8c(I@YxQ`Np@HMVP?a>SqyP>19L00(t$l{$CTd9nR{ zN~UMfI_tK|QissLw|v}+>HG7t2`XAxn9X@(`0M0xzNDB?6$(5MO*Q0qRtxc-6F-<~ z=8Zwg@cz`u4!H;BO+d_dn6u9XzW%N+ri5Pz%#xzP@0F888r8J0Me;xhl5LjG37Nm(2H9ghL&n2NZdd zq7tnV6i!3ve*u>{HY+Fzl+Ayn@LGw_N$$va)F#5DeklyDb_!cm@~da zW3O-cyc}sNN=N#IwKf2>N;KMbSu2_9*PvXQP=w61`$2Q@o7I~QI1RUI&s?mtjUS# zA=IMtFM@tPsPKIT?ESH?Ic%+o--4wAE@jKm#R$#ZTHve$LMh?5AFkeQye!k^RXYCO zPW&skw?(~Q6!PL_I_2{BEQ7JZ^=Im4e5hj?O4yIqA;)Y=Flj0L&PFeYZFePJH-)8y z#?J7sui<1I(F}wk8TnO4T<13s1jkmiw$@n8&E_GDrGeAa{vtmgsV%l;67!kgp3Q5tTOISo6?@{fYHy8M`Kw4 zmjJhRMIoF1LR&&{Hz(aDOEx99q`QIH2y(pn_2jF$Ev^@p3WVn9<)rt;Vxn`yv$-yU zX@_59#fh&Jb;OqnyF{Ile=l@?%~62S1|SbgiSW9JH82Nv%*hCKHx=d573RT{{uDn78##z2`Bn6+OP*9WTu-buiYd=mDEf{`;;( zFMrazL76;kxuqwJP!^kLY^`pMiF^A6Bv9))F2=JCZo%WYL>ahf8R~&finbW?#K| z=%|-`7=Ju>)Xqt3Do04<=&C5^geP9fjo+%#fb+nHNMv*lB_>|8y-~p!Q$zJ1G4+Hq-S*~w5;zn^m)$~pW$kx zEMTk^Q>$^^MU)y(hTX|ZPiNzK~t zQA%5B#R|+(k?_wdNy6+9!b}`s+!$E{y=i=pqI@gnXqtJ^v^QhQlk&AIb8<)d!Z*&i zEQDcO)Lworo$Z|2BLsG~Jp$ph(jOsMSX^f0x{h$+~`&t{E;<~eu1Ah$T@t+^C z$|!MsrB&jgHc@e`FYaEvaVdq!6NLqE5s)%2rR4t4u05!jk+->(xCVTFwP% zG@LVK{!>iS5&p%?rY{dS=C7m%qNr|D!7a~_&u9~*-0vc>YiO3~7X;w<2;yY6XQiIcMco0qsXb_oke^> z5EjrG!=xNdoDt!RcszS!WD8dHc$+5rH>t7RPx}6ofz{sN1p#(xu~O2zq%Ln5z}z4E zzINuwkzwz-Bm^JU|BJ>NY1?}85x*h{{MYS;w4TB#tHh|;4^dAbQm@(aWyF9e_xVgE zDnZW%`P>Z!8eQ)Z>}1vB{M^oJQqs|vws&DM{`(1pacmM&FKGke>V3c9?I>Q{dCo}a z4>Sso$q81qWijhZmX7LppY>Yz!)T0~ZijT-PcL;AY1iG2u0C(pobu0{lO@>oT>$5i zrK|+_D0(4haB2iH77s4;z;V$^@`=f!z-==ZC6c*5qPEd_eNWV3!E6F#mwTM*O*WW3 zE|AnjXps3h=!+-5O1B>k#5kJvSx_!pP@{Kg@eI9X!c7NjnnO{0PbO08P`e9P-tg^N65UY^G18l*b^}?;{Br|gQU=ycOF8LuoZ-jKET;oG@W2q#g2IBhRO*F zLP}7bD3m)y`WOIesQu}^sIGct`xoy8D_TVrbK<=SKhFh3Jy(gtwSSb&AP_!-F=6;N zhgwpL3{T90(_O0LfQ<+7(%$!NMr<>%qnGw5nQh3I?!P(=S@k;*WE|%^E&I~BuD_F; zbZihJb|oLLHNGb6&TLQN0A#z_=U35t&n1R-ekp4Pa7GMm=Z)i(wm+Dj$)*L_+?{hu z02vtY{!D{SJqs8iENHN@uE`EDbUL>r=VmXL6xvwBq%5792!uQV;>5)fwN;wKQ0+1* zBkx;~BKgu8GNe?j6Phr5Z)%k|0?uv|v4O+y_+3}bpIocPK7?0PTE2iK+1kUd!o4cA z_nmx5ZydEGe5wnezt09cev$VZlcF`??9msNlUbpiqL`TV%?Us#{vqNCD^t<0ytXuz zleo70VO^xIAV1bIhp2wQJ?ss+emnUzyT~XI4u=2(2yyh4;DtZjj>y^_JPyzlVees z7jSK0^~B6bc{1`!R9|Ks-O4llir1-mQcgK_E^MV|h2gR3@}r7ww4xt@kZD~NqbsGZ zTP6vrmJS~*#dLCF7zYZz5_6V^??nx5AAPBa5or)={lX^ys;_1|$I}5^R&LX`N!|qb zNO0mF?2j06w_1%$VS##Yz;P?M0qb*lCR z6d*vL*Pj#Btw)xIjjIMlw_6oqK0)%@i1+b=ALs17557}6msOOh-ss^z3xvFzMvQ61 zi^J%Js-D4>E{D6UQL8-LUTP(?=&IqnLKLpC$5e7cgdiR*X-?SCQ8f^2R$Mx>_zyS2 z#0Sw2Xe{H8Y^9VzD`)f&Qhi4z+=>ZfwM&y!p1G(ChQR=5D_D%zMcOOm5mYOolb}yjhmuixKG&ShyLhQ6 zR)Q1^yW+MUa61gz>&Nllb8f!N`q9>^6!X%*S*ZKgZ9&m4lec&DJ_hrn7%(=>M+L`tmZK=xcZhmrCU`d z4Sn>v`oc4F*CUp0#n!dIyFvg+(V3>lVpJB?4vX*XrLU4E&oO+@>~f=|2z<$=i~Jd- z%ALm4Xcs;+Y%j{u{ti>rb>6^nQSd2EQ?~ziqC$WoAn-9DUn*udv-+7M%cA<9F5C-9B!)vE(2Hw#-M$Z&+H_0a~xY*!mg(^ zJ-(M39!?zqJ_URKJZ*vA5d9BP`Pbt)f1C*RdreeNNUvuA(rY4xQS?70!P~HXrme9X z>--tVkLovu&izx-#^-bWYZ5-528g6QVX2z_cLBbOXn4!DyU^%M@}P-E)o|{fxHI~h z&QJ2}BC9m=R9PTy#P-;`wx@c=Cs$G5u5e#9SUs|4&Dy9=sx1uB5}bICYJr> zp^|>joqF>()-0^LJc&2eK!vkc!BmG=8H5%zAPnz{#f%{Of2JpacowRFm`F{5Y^rhe z61Rl^Vf5(bdiIs>1PO_rzP616#zmqO?(Wo76krU%4*7GGHy2u;F7&(W&FJ-e4R@lD z{nTVsEuT)3hqN5;fU@Ou${LFS4x$|E&)a`jc9(l-SDz6)8=^wug=t2Y8oV5PzV;}U z$tU-yNL^_7UhkuD`!B3MR)*7V^Q9&|$r0)cF#Lq)?Cke3&mRj*J(H1P;;YHS5lg)Z z2_Lald4{LUgLq%+>;3gtmqES>#|%xwTMqxp&j~!0p9A2Oht8Zq1W`L+#{WoULLk)o zMW|oa+nr~I#8<^*aOvR&!!2GRe#|0?Gi|A2hFU`L1yCayair^7-cH?#Sz3Sk2gp5_re=X$-*wcZUNOSyz)eeY;v*rQsMb<*@@NE9@GRkhfP{`O=0h{k+MCS1)$ z{^(*!CYb9vaF+)krF!p2Z7`YbR?l4hjV+*RaQLYNnGgdO!jZ=cOcHq3sEEmV^7cV?9g9?HaM!(5r`INQsc>b z93y&r6@X!>8bPEyJSz%ddZ=BZm=u|IDLXGbua40}kQKi@bZ2Zr~ zX}RJjnT9!xmVg;)V94&4KPq0#TMM;nPL4ViJ_cNG+@1;4A6);H z21EUNB1ksbYe{ANibY0xVV1!d?v@;dmc5nv8hv)00k9TGjK18QO@1xo(DaIUiK?#zBZD+b`C} zD+uBh6lVsx^U4JRur>rvSR0!l`?RXg0?xy#!P-K%n?C{%WSfq>f{$`kRk7mPoYfW# z(pgF=iIhx|I{CR~Xfk+!fR<_IHc=#(FaxmEf!4+DkT!w4(5Nu0eM<3iM^mzGOVUOZrOaOWI0WrTDM9;Y9fk zjIxLDxdm{*XJN*;_4xD?rGp~pYiLeT5tatvscZl|wc(x$@Ayg7e(=uto)!nZK+C)6 zGT`vKC&Nl^s445+2lO15G7pkdPI4zwN!g9a8O9x|k6tj2lWGX9^szfk zU#@8#;fw?G>PvX-nT@2g)r}umowy~(s_r-okHQA0PPp8W9@yZS+f{g-zEU>b@r^!S zqw3dB`c_$cDh64_CPa^A2^^zK-KjCQO*7COtAYLBin0#lhb1fmuqBWbiB50W+6z$= zS&OgX^y4`F|0Sk+=_raK-*_7gmc3HOP`?%qMA%u;_L$rXV@eb!%w7vV7hB`C<@}vK z*s^W!dm(NZ z%~8=EBa`zTzqKm#Nl8z{?(g~BKK~!Z?$Ttu>B8r(o{jAjIeRshz9ldwK0ZC$pjb^6 zOlMeJhPd+`7}jCmuVjvWkJTlZ0#oUtyHm+fljk64R$TQe?dCvduTDW+&D3`nXYmwB zmCKDfsalabG3IfEBUlKBmUWD*-KSjO#Mfr@X+!Efj1yx&+AJWm^Ygnu0s{%WWaSg^ zEV4=Hf93L*01XM|g7z-jR2iR; zpK)3crmu2-m6VIuWH|4@yl{at&Xel}Ne;&(R3>AeCDF(vK$qdMsXu!KpxP6>d?u4P z`|>^P*tKm<>#oXzC-LQbd;4o~bJDdOzdfmx|CyWgE7tnlV6BQdGzwLJ-sIdpuh>>| z;ASTJD#hT+IQfWKOGou~fIJ0-+V@G+3s-|^*I z+=c(-{ooo{!BrzKq$Z;J`=thFrC!;TT86OOl!BN=Vm<9_e|t5WfQFw6Kzz!SSW%4q zmp~rokEUlkDcU)*BssK%$>ft6yhg(0N?Au<$wMpx72B9xu4nh2N+S6ss{z8E<_@w2 zB6;8FajoCi^!n=WE{c?;$Fe8tRI*4D)DxZGFPj;Rllxw1MLy)w{>bpTMDrr!*#iB* zdxpbz!}1v@kzXi(!4gCjrih^-pwoLb@U-gJJm59G7{h-SgMdza4yekkrDNyZiWlPJvD%gm;$+rH6=DtmwLJh?rxp4Yk3C86SX zF*+Z~eA3yaX3=AQ@RbudC4B%tD)3$b3ob&1QYlsI&1F=5S_inQ#sRKx)v4wfWOg4W z8~8ISSbSpknjyFOh&;qIcx;W58cE{E`^oBep9>&H*ZXU8UL#O=Or3tQ;j8*B&@)`o zJVRrwPYJ?C6imbLrj0bHg+jhAM1-!Bv@drkN~e+xgJPEmGO#xb*FeU`Mwf+t{V$); zXEEMhK-0AC^=DJvJ~cZ0E2&k8te37dvWQ2^+kir2_022F)^q(A@=ezNAlGuEePYSI zxXMZHqe&*m@VvPz_ALAA^M*#E)JS5a_gt3I9GuQ-isJ zk9_;6gcKntEQVTWtC@=dqROc6CQ)kWZtC~a_xOS4_94SkG+62I zAAuMYB;67AJVxq9F2fzIHNXsp=avBUiae0b(VXf0f`dt#zU3>YHD8a{lpW7yrICk? z?*w1uH47zC&VG1g5H>x0Nd`L3&tmQIIVNg0o$)2~pA^cAt!Errt2Pdz{~j38)BpFt z2piGt%Y~)?N|e3XkhYL>o>M90ftR_}R^#QSRx&?zy<0FD4XZ`2)5qY6L4yE@=s9$I zq5Q2(fwUy~R%0(&$k70)kSEZxMWeeT3ug6R>)_ca5a&jFW5QVVU`)dW_u-3tNLxky zB^poPzMm%fRwtyqwk+B@UtIR-vIqE+Iy?Z2p@pEr&)l7|;M6;iRUQ&2Eoz|%n(LsB zQeoyd4|Jf0oX5WuNv`-qB$t6SxTSUYKHdDcdJdrZwwUyz;Tz>m|14UFs1@=v@*kgQ zUf_uar)mO02My%+db*#&^V-6_uLkeMH}N>@$m8?4xz9o*l1XR_nWmFIh{+55OuNim z#s{bu0eO`@^J05=DNF4)QXy8{R|PSnziPSk|NKYX&3|{40F6HGmqwrc|Gq~5;eXZW z|I-({HEi-ZnfZ+jAdUiZ3ufar7l$rUkTMrF-x6NZlvv756irsW@yRO4EKHr!Dx@Pz zS=jqooLk=Ef=|lrb8rFaB z{hVw)-SvCMpKXwa0Lz9$Al-o}x$M8n?{9+MsGrBkbKOzrVLCLsq#{)=2s!sQ21#86 z%$p60l-<34uCi&T)tqkJ{o3I`f70lN53VoEjl2L%`9)z2Z`fD-NB6i4i&%7~4sv7Q>Yv*%$lcJ6@AmD%+1o6Fmru~8CAN%e_JW`>d93sEQwPW>Z& zHtK99DFZ!wBnON4B75`7y?lD94@Ljx@4QJZ&y?p>7MHs!r>iA$7sj|Ee50yX+eaR9M-j;pIIM(XjjHv7{ z0N8UTRrJkc4`sc16%i|VVoJ|ZFBBgkp#u<++{u1 zXL{PVzg=pos*K1*b$>W8)DlO28h!o^O77RS^vPXA`U-z{b{^Q^RxFeFl7F&HZbQOj zWsVN}rT9FXRHSS%=wcj0*KFENnm9ls2L!T{Bq;MDJA&#P-8UDX1N` z9EbE|p$CGi7&QbO$@Ws+)O0yFO$Y z%dN~z=vxc(Wa(}r$q|?=&=cSL&`02^D)e;lu<4m%m=Uhy=z&QRytJy3fA54o`8Rj& zu9rC{tvv=v_Eh}(25$9)(K%CzwKVb^=eyh#mKgOi1aCY9YP|}wO&A$Tn69yqoro$>=k4@sZ^ING5RJhZ zD(h=Xu<4@Q@nZ>~chr|6Qh_-(-krv6TT3KWis+SbS)(Ol)%)U8)fct}lrb5{qdX(YvD=rxyD;DI?a)hIl zh)OdN1r;gjoQeWUsVE>d7)p2dKsu*_bf^d@-5@b~NO#AmF-Eh&U?cXuJ@I)TJ?H!V z1HM1;*e^Wp`@XL0b-m&lur)K$15NnbeQc7XaGmw`>zz-seR7_Q=AMgvb7e-3Zl0Tr zQMvea+&jpOU@Vr>1vAxGQ~EKwU{k^WMt0(gL7|3#|FI zD;>V!++FXRTBre2tV?N#eCW zgL~|f3CEU$aXT?9V9o{ouX$8|1sxqrut%iQQGfqsS=F{p}%%tygzyTx>gF zd%Ir(k0TYW`&6eCzMvpMOKQ*K55IwSh2+nWLCN*Aks8zYcoGcT<-IFnEMjQ|__3-DsVbM{Fu8X;^rCGJ-L+ClQ)z;Pb zFuDB`m5V(t@Fnn@yClV$<3arUy;PzlI?G$YjC+0mn-slSwVogTqVJ>QD<>@C?c9!6 zM9u@psub?j&xpT>Mt8D7TDp>kpUbHrpsigw!&zz}Ieb{mz@EOPuRXeCWpk5hFLEQC zU_RO>b8hBnD|ko6s-Wkn_cP?hp7JiL)qJ&;3|l1gjBuFC-uwtATW~0l1s{>8eN1ON z4zo*q7v8H3k~wugOrr!Fciaf8UTow#A1->VwnlQCdjdk-<6=6!gc3#H#I{kAgWP=HM_)A-k|4^oO3J$} z$l}A&*t6@%J8G)B4&n-GdD@XxTkk@(qd8Xu-$K%^inVm6JvTnw?=+h^KfQx2oDyjP zvxT%e*Bof$^GiZ)KibrKM<_piAah5^){Uu9s-%F*@wNJ2@i} z3R-it9gzbRN8{`WnZha@iCd`K&?%QvtFTiAC^l4-XEs+%y9B05; zt^Y_Ba@l^DT~9s)+Vm(!>3^M|rJ)bzLf}c`TJ|NXnsLvYLiQCfh~oTbfHyGIl{}j2 zyMnRnv9lsS-Q74jkI98CAjPn~IQ#)UJx#+X8dHF>M_+tMaTxUGB2gtX{YBl)qec^r z#X0YLq_^+2vrsx@^NDka6RZ}g=`|ZkJAyzNLm19n%eH$QcjsXN~-Do9%j*O(uM5^*6UUFQzEE8K{Ew#N_P6; z-ghcD5L}?))vA&aBVWfm@fC--zRUSK0D`yi4L`fBY;Ahcw3!zJ8R?| zThLsRBCh<&d=oSvOnCgfP=B=hc+-9MG3J>3U6!7pyUR*~^Cq7*zk>}3Y!U|XzWcd* zT7vll>*bydQ|Z&5PM(u>^jSy1%cR%3zS_k5BnD|PA{%N_z?9V#`d3&-8S)Y&AY_>HmbMYFlj?6hDcaVhZ zq#OB~X6o576oT&uOB<{6_u!n9k}JErO$Fs1cS!jmoDuoS1my#(Hn`zZxn%mL7bon~ z%HH6pL8{$0IPq8r47z0zUwDU@F-(NFkjHn-Qn$0{O$EH9sZbAuBp_&c_j}}Yr{hl& zC8)RLWAdijWD@+E_hqtW!=&SyHhz6Q%9D>Z7T; z@6=0J^n)LDfqZqaQ?O@!YEW4&(db4?n>T2yY6Bj348@EkA$d zzT{9$G{K+x*xH(NK+oQlD?E*C)4?{3>^`jy0qBC>OkM&5guc>(R87~W@Sf7#m zEO^Faf9vhaUaQMwk$9#=(rVOl21Du)lG_Kn;+>pdVBOO$=sc)5S;@`;j2dUc5#;;6 z2sv=>aqD!Hp671lx3ulyt$epZHBR^Tc*7~4CsAqfu!Zo;_OU7hQq_}$%i-;p*@BTm8iCn_Dn8$CLMBKV#}vv>r-i{>^rirJQ%|7J8QJS zL0JOov3pQ|&ha+6j%0p}_9uVWM!fA^pGcL)Uvxf7WsdUZCKFfJH^?(Jl_WeQrhaT9 zxqgQ=ABY*5@>Vz-oD(koyr=L?K5_aCeemS6QcbkOKNbNfTz{kJ3UUw$#~LX{GIzgM zD4e3{iCg)YgaZ{6Bi2})a^lZ1YPs&T$27+me6Dp=mlcTQkD{f^f6)GLA>u?}tv7D5 z&jJ6ZQ|*TkQ6H#vmyN+g$h*SBVQ>Nt!sr^0J| zoc5ZvPhu4)-MG3wn&0(vhc>{yjMQ1rcPkb6|VV5Z{xVpI>m zSp~M~Svwr4MmQTFDDGHY`H`fi%jY}S9Otj}h#zMP4#B={lO*(Gv~AmyKW|z6D4neEdy2-E!HZCACp){*6vS!-E4GnV$0LH`P8Kp~qk`*eLNuIoIr^ zo>4qZu-fLx&F)2V#Zvl{8Zh~2)M+u}y(_GK2;&cc3H5MZOa)!_x*wQia*#iD5`;FG zuVduAyVGgLN)~KB89A3YWW@?{6{dK`G6Q&2-e4`YR5jId{-Dz*W4kZFnZ<@5KH^iS zOZH}o@BJVU1=msy5!ihf-_77ex_1}hoSN@t{I$lYHwBZH5%-XYD-V?%MQMz%btoO+ zH8W4MP6*QX60Iw%$B*mf)^)BsC{hSCdocK5+>vM%^CkaQdQEadpMf2MzUkF7#L-W$eMA?4VBp zbu`+jK#s!-Uo)6L0uzO#qGIjpzz~)&kk82?dq?e+#HmCcjb-J{$y%51j_Wvu2Fz@v z3)yLG;IyDrdgI<}yR57^;)dPlddMwIBRkJOJ*$A_0q_j!LuXpPodYAk%)NZS@L1Jj z$&k_(eQl@F?miV}NLn@QIT--D9R<^39<}_X>7HFY?;_P2_`pQud#9im`th|_vIQr3 zEJxtNlbFUI1PV_6i8x<5^3uVOw~JxrL%XiZ>3CS^I?jg4oPv4v*e1@+lZIvgK7wN5 zvG0wvpPDwaB~U zx{Q3e(57#oDi=Dak(7%raakU5#*G6ndWI5mheXfk2q^d%9W^R&+ZGx4w#+}d+Ez`z zUSaf|S@^@=?Vn+RNI8o9rTS`?$Hk%XQG!?gUq!_O`9}5!PMtyuNN_MQP=eGz7J)Gz zc()zt7l&0`FSIhxU;O`5Pha?Z!_Fc8B>>o=p|t*0o!f{K$@IVWK1=KWS9`z4tY`Sn zy_2*TnoS#+f|=dtuJ$u2iVaA|E_^o?F`U@B6K}aK=krFA)s0)h)62UFoT3@Zlk+5##G!QE%j(mU`6j_+qcU8E4)4uW_%i?}D)5 z-k04_H3GYs_!0xvZ~x$2FgcAo8Cp3kxg&QhuybwVX-@P^zm62_wP=L)KCXuUQ-6Al zd&Dwsn0xY-Av58E(@I#cbkmh?ooRb@E+dPxI+6Ne*FX{tTbx!esrBZ=R8$^CLf0Nt z+?Nm88taJSdr@Kia3xVrM6URimu@2L>6-pasP7;#e9G*In{A*!qs>y!dZv~i8(Lzc zWH*r(G7soAe9lIB`>6h$VgN%kU{Y}N|6H4`K9!TT#4%a5(N&aEfRJyMmO-SvL$@Nj zPZwGa&Qx5e`mk1V1F=OjJ2c-$`yd5j5t=ZjQnhSWc^>K_FE!FeC3ByQ7O{I6KR=8& z@d3&|8yQV)vuQUT1@(`aA{J03&LUo|0OHsAy)Gufq;!DNH`U{dTm0%wu2xF&QBSw6 zE!LdUv`+cKGfFfCsXk6uye;c~RniS69f+*5v_gFYURc`&!7302eZ`LwF!Hfz-YK|Y%=f+V-DXTu$Ye+aU3UW_SlstUDt9vEv9pEOsv4T zJUdY&Yj`Ar$)V^n>V^GPvf;r;1*L(-je@f6utwBV5cY7Vwe4LH^#EY>;JDsjt929) zT9>q+`MK+r;E#v;c>sci;n*)VIkf5#X9M6``saP@TOR!wwM5AOn6#8Xl{j7T8xu#_ zLt}1Eh*Yp$N5k6~4SI$z>FODrx5@!SvYhv`O38?evrymV9DL7=-0<_|!B+bzTM(-& zpH#@4w<99xXeBo;GmMe7tnfu$39BxiCYe*8Y(DIY@>lp;xapoGT`t2f8)DWY7Tdd? z_?~mJ=<7$&XHE3~=o06uYi76l zGq88$1s|F%sVVs6lEzC-pFwD35e_OV-yuI1?E~vl?)+i@#-V9%N}{KyDF%#xLCUc^YxUo@HxaDm>M*aJv9& zWze$ZgP-0h9Z?eciqV%Sd0|WE_xj0PoHoO)lF3@K6FcF;##e_VYI*1I=A5rxhWDWD z?cVPVwLbtJ5`(x`5%_b};P;i~>6?aGi+T;as?}*x@v7Z`^+dU6830Fm@3}`e#qlOW zG*BdTP@yuDyA8gZeZ%9jqB?pK#l)YWZNM?gzcHZ!fq=1(+DInf3@OA0h86#qj-BipZBx}JZf_39IoHuux4`=Kr^fL<3`-$!xf0j=C;ZbT1!ERLWf z5AcZewY$DmPdG9z+!p>=ZRrD@<=>zxk$+n_2D#O5voq~+d3170>`QNVWtB#U+u2Ah zb&MBKc78ZRj0paSTTDas)s2b#vl;_J<*Y38b#k!=U#rvwla0uvsJA&{1Q&9mge^Y=-?4007E)kNSB(klPQ&XvoM|ffTTm7Qo z`XRN-lGSn2b8Y_K-h$qYvV3{xMdg)52^klSjU3Na!a8zQQag{mSaJ$bQzY>B1#sk3r4gkp2(S0d^;Ga5!RoXTG|>BW_&=kKa)l z`1Alj5axYRPtY}aYFumr=PXKomRdEWvbeL~*u?@^431j#Z5$HNOkLec!rWxK!zAZh zU^dw0dS>=|QBK6_Fvl+_ffj!PB9^$nUa;et=h@Z&eZ6p}^eYEI`@zC2-9JKO7zeSb@AA-2JBOZIZ|;<#MQT zbIY>ch`&O70F4#WT_56scD~N(Fm6M)s$lqgcHq@NY?JLSv!z>SP+&+0=N3U0)&h+w*DCzwSjcc#7>UKvH9U{7Exwq5Gqqkf*4HfTop zOJan{?`h0=Vt?nOY06_+FlxM>P1MvL<`!7OvK-u?PfObu&Sq_8@EoSYoOls>Wgcgu zz@OJ0qofpRc{SYsbas`e`G>6F6z?-G{dO-|rN(pS&e7eAElmK39-VmJjl+vk<7Z}3-7!->JRBg4qqVCicE@1WvjJaMIP$eqX;`oJyJ6ne_H!Akj z8y+?L6F0S%zA{G2COpIOi5-tEtrZPZBCh}0IVFK4Dvz~t)U!Xbpqnea|c|3SV zi2QIgtcblsDP_K2Tb>Z70b3i3&>80@F@U_jR(#WvN*TO-Nun{Q>z)8|btMp;OgaAh zuJujAT#jetgPJui2vKV_pz^2A+8=2zz(xoF)~hSd>ZW*swV*ve3y!G$<*!b_YAk)uM4Et ziWXP#5L0Z=RskS9*3LNohn)pF329>`KDBB0$~U`{D>DmW3yl+~yPJRV52Oludy^%8 zyXgPx9!l{MATyz1K=yM zmCM+m`jhuW9Szkk{aVW8%#acQ(!&oP0wPIXSS?BP#Z7A!&q9qe`gUj{-qLSCI0H8LiOhPt-!K?sa-+|c6Z3J_?M%J(Pq z>IiH5Ca4q6=zYx>+)i?#2CEYNz=VjJN6>bW3w8|{_xKb+IX ztpQ5=@GRohYR_kr#@FAv@A}*`wVo)u;h_Vlr9|&$d$80Tzm39%%dTmBZ+G?JFWGGP zSmrQTQD(I_Gc+!?LmiAjEIhY8=$Ua|8Nzm4a&KR%4pZ_pAv)G$Cve--W89tvpKv)SETkTGg z%IH`hpZujoV4`yp*2eneq zsRO>&1V9p#3jft3b@08xe@O|?uCV}E>i2(}jdl#Gu+|nhwh_+*7>=U$kLAJEXA%Yq z-jQaLDNo(}tW!KD3VoR?rIhzXfHVdeyJoY79scP!di2>u%{ARyDk)^BS&1aDqF7y1 zoims80N@3j?JZn&by=r=o3Ep1(PmrYJ$ahu&rtRUSm>|mVr2M9K)v#;vHUZAae1{2 zU}o?kE-4`!@b*dIvngspYbvQ*y@{8zmdsX`I%#nkWHC;2r_bdmR?Ch=I47wuv)pVG`AZ25ENbM*rKW_(s#KclE%wx& zVQt!KEqnm(2&=cWs1i7OGTPJ9gs#^48v4D{{40@G3uU@I(TEN$PA~!PvKR!vCkxn9 z$mx!``^5mNB?cD`0C9jUpgw}cmUleZIbTumFtvLtc4Ol+ri)?PbB4uGJe#R^7sFKY z;#VRrfYJ^9VJr&Ao0Yj(8og{we2NH^E&U=Yi8FF`b4z68L4Hz872?mF5~95xr=hA= z)tVw3)yR-d3DTFz|5MsT=`U#$g&m-hkbn8H)S1UsRh5JIz>(vH3M*k5a?5S```aNA zJJ*%8sprEhHmj+|I$(f#kdzK#m5{=?>?}4K6jNXGJd;Mq!)#nzg9yedkfJ$yiP3-` zOe`gV-7rN-@Fzsjj|EJ7N7F*o_)W-ONbu$*8)7B^k*>NJM?9|vca-zS<%_QV-rL_2 zCm0xEBz~^`;$w<=QDg3*n*zy_(|ZMM!xuMFiDtb!?<(0w3)HjmDx-9ZmDzhs64~67ZX1uLi7Y=v1@wXl z8!~TTH}m6nJXTk=3snbkeNjc^KLGiMHU9+UuW!B0!1}wupF;obZonLNa!GdSzVV+n zpMBa=bgi*w8~lRGgG$nmc2rcmzA7G>+?wc4L-X8-)jFwgTQX@r04^^!aNYtfwUt@? zO*T)E8p;mwphKJJ?>WT8#L+MPC4K~CoFSCxr$?#yMvk=f;eBlBnPI)bRcVJG!2AEO zViItnwAJzQAuTJ(e~9<2;{x$Ee>B$ZU0IR%+NmIk4l~IRJ9mQ@5_0G&t&kK@QIzBa z(6|6wBZ@HB&V=Bpr`IDRzQ?_Z;V>!LHYpIu;%ve4=KJd=DFlcUt?3v?ehU!1d=zp~ z?&7Jx>zn<%u-U+EWID3;*8tKo>|{61=7P+uOI|Kt2#{i^2L;SJ3=?8Oir2yYL&X4qU4vQ z{!|`^+qp%QFusG(CayX!{@jClLEIMOSFjQ3p}Ow`(;pk>yoohm!u<8Q}Rn zA2xh=K>=Y+W_JN}+qeHvl8No6G=FVc?639y3X{ps;{pK zhLJ5W`L!1KaW0U7CzrlUGTr98En_*C5U)Yk{ov)2#=N;_Ur1FM-AZ6HRR*(5CT&(? zAzRPsPhVM;b>2{hzppYKJXtHG+|{4#X}kZVf~Z(_${1iqpDVdi|E)1x%Hvn#HF+j2^4Fxz6R}g1cGHfO7&e&>+ z(Oim%`ubb|`P^SaU0$w3;#3eMm1gS#V(uA1&0G6joiEs5^ z0OGONFKr8l7_3x9ue{LHJ%w5jJ`3pvl{ zw3hPA!ne>&O|%&;|Gc~Y1SK?}8&2S_;*CJG?GB@8k|NU+lx00Q=1$2Ntylr>e z>Hzss=gx0J$yYg#92ta$6ag6l-S}?6+mSfC@bJB)=lk+v!-{|B9sofBLYV+^2`F`W?7)8sWSB zTB$;>@=^<{E9T95CZE3iC!FWc4P_)N^0+5DC1RdET-fbXqi|_QHWMq2G&Jmibyult zm$sOLWcHoQ;}`nb^M9Zt)KaZUu{waLhe$E6i!ka7^WkUS)nOv{FuiNZtAFiL;A#u= zuO`BeVw#oOh>w}=fkJ*^=v+i~UNcp5^+1Qi_1=&An!vLQi8m_-JTbX1b?F^aNh!~A z`C1f*@X&i5z>_1>lwNoSXy6=mdE5;(_}4*b*f;hY*Qf@t!2B2CSJIhx0rhh4uYlij zl&R0iF!%gUzCpdMq#1+7#rPl>dFmX+^Gr7PS<`bKJW6K8Ems*%!RLQ;O#~)z|5eff zvS5!T{xD5%uN}7(k8~&+YL!Yv81=n<=;@!S(E`o*YC#B#5DyqX_c-Ki=M_h(=V!XN zGnP&}7Kd!Tin14`G!(YpZ51@>co0?xtt~m~A__fX7y6}&XrPItqFgbR1E@N%+afpH z8i_ZU4jwb%ORy?}&;el{$R{0-BJsM0*4>M2I7ZXwmtieXD7vX1Ua>V~qJqD6LdSxG zfiLB=z@^pLHl{TBl4~9Rtut@(VHoglQSMH6uzg1Bg05v={lcL2+SWa)_x7dL#^LUI z(kVYlN$isE$~)aiip$BL6Wp5Mx>_jrnW`}p=HnNYGorVa{<#=`zmh(VMhJ#Xq)#S3;eGNyeslsK zTYuw6y<_E7J`jL+&aDlUtjjTy0^CW?{uX^&^lpHl@M5Q@y)dUqPKH)pdwcYG;gZIO zg8@2urTJb3)e^y;e>>E4&ko!fp?C_FMaHrT6WP& zAA8?CxN=9FO@R-2(P8}eh)w{p-yO90lB@U32kc$LBpv-2?_uj%3jIhqK+S2?FximU zp&cnjWk;F=sn+jPgGH8B-TxyNpP)#hPvpLslgvQ%p_|>wA}^yN4=yjB#7ers>C~cB zBY$-B@M_L$EvKZ8CB0Mg9mcsdd27;P9-jW1>DPBI(baH|g)?NU``&nkx((hq1np~} z(tY>IJ|<46N}s*GOu3pp(IazNvPbVjL0GHGU^e(D(HXbco=|N>Xo-&A39m&Kl1X-k zMQIr}fDJ>vXx$vx2clcO6TWh2xHWGFdO9Hh{!Ml^g|>bOwr6FSYFmv3kev00>i0}? zYN}-h_I$|0*d!}6t<^j)dl;$j0Hkqrlr8YRI)>NvvqZjb+DK1I+JTz#9!NHJ20xbN ze7F;Yh20g$^89qYYPe7WQglDzHQlfBuziH(HDAigdkb0GF89@kOIm$_Xs!f1T^qi0 z+QFFh4I|x?NdKgSvU%yNF1vaCcSPm6({{0fzllpi2U29MZn(bqj`9X{PMbkQ^CVdh zM^Z@rK|?5Jr+x;H!OFo%Oh8juxj*!pS*rI$w?t<28OFiUO#~*-sy7<|l)F_g?o$D?Wfi zx4`#-!WR{iWEex;)X7&T!;`e z%2~XlF3!ueZ3GM*TIV?zAwr2VZtA3Aw?pVev59uIBXPia6jBea+vO*V)sX{0>LAjV zQqpSe@h&PEfuDpN!^RKJZ%G%fOxTPk$(e7-wrcXooVohjz?(bwet&HG`f-Ug>zj_PYmZu+W871T4U3w_b@2TVI8nCXB`L2O|lQE>`PaqXu@6 zqX~(;!g}yL-_4tAyM;dGa`<-<3MO(FToHDWyYw8=FDWP}w*3rL4Y$MN$N2=j9B4Kt zQKoj}Qa7eMR#vNPYIdHfa;xvm0#P4~Yqoj8m9T?7!Pe>%(Gsw`ABFatG5VGgfxE=r z*c>=(q31A~@Qz6y6&xJAMgkpvN4RvmMq%8g5;9Q09EA zuRMAyLQv7rgV?#23AiNeKb_~CEb}N$_v~21)GvQ-=q;MwI%>-DT8&emtR)&rZcYuK z+nXA;G?Op(=vb2T(W>)t@``YQA4VT}Z_0aN=TB>DL4sQRn9or_@6d#v6uwN^(s1E+ zgKvNQOSp1WLM4C=pU*q3CY!u-0ka)hO#dp9)nSC2Qr^yl{hCeB;QdIVT7&WzJfx*SZ?GKIn-Pq>4U5uTn8Ov(@iLj4(%WAz27AJ`E29U z%dHT21GclY-KA-}sx@n^f+fAa$JCd^FRxE;y4S2vl(zYj2GiTb#KgtNl47(c0bOto z*T#A)&~YEt+DBUW*rsi@6f*sIhkE^!{o#5W*h1|2bAmR=JKe^8pP}X`TBcJvJ6R!> zKe=)&XP9q2JRTy>gJJ1)uLc0THwXoMC?*pSso`LKKqZYKX$_=d?khUiTeXiRj8rm- zlQUN!j_s`kCGFZN`Q5}`JukhQy46&>%DMwWYv*RM-*ykIzbS}NFTWEno>6lC@xe~E zJcCqQJjJH>9z^G>q~oI_Z$B1|w8KTG^>1_UNO0g0ZI-$`z0~%vnD(aCEo7=%tVK@} zE)40_T4$B7E#KTyGktuqAaI!)lJwYE!++Fx>nTk$4Q0xOdeD-*qU$0^UsG#L9Bqac!OZWNnOtG#+n}cTcU63qV|KNC6 zVoVT5%&kg$&Zm7JlW`mKaYqnnF@!do@H||Wm%A%6R zg~e8$?xs6#NVzuC+m)r0591lgL4wCMsV++_MAn6FSW)R9!fTq|dZa6Hn>rX2XyB&r zASCOE_5CWza|45kfv5&MG!il6v|vR42I3%%S&m$rJ(f3KdixEd+w*6trRYwl@};h? z;h1vhgN+$nz8*a?)fwW_{w|TwQkuM0nqG~n$!_so$ayu_L0g)U+a#90BqQs3+h#-hLUfCc5*(0{!O`!;F*^q_A8FN+ zB`sAum_^$%Qc>pYQjyJsd8Txzx6k6`4S1gPjJ8qsrgS};;6**p$fDXT?(qiQ88Pth>EeA-LrMez_Xe{+r*VL?)#3RPkWsaUDbGqJ&=hw5;tFY~C ze2Cr&@Zi*K{~Z-|4s=KFyef@1JC`v@{#bHLRKN#Wiz`RA*n*tZ==3zMHiRdxT0L4O4#b_$vzyTzxHNYH?F5ipTvNL}R! zGqY=#-M8QlX1x*YV8oIQXO(&(?(?1hriD`vR5`di;B?XNDOVSE7?r@tbJ0#21L;?O%ie){49)>%Je<#s(3kQXGiNjqIP!)!75Yf zrXpr@?cew|M|&lychls$bWqd)yR`5GFOZm(}D7SZIr{!@5U4m zn$F|fHpoGukbqWmZ>MLM(yjD(aSTn7q$tzt`FRP!v(Oam#?t6(#6NI!#~#?Z26Jv)g!zE;kOT z(Q)dTCYANLFCJJ3X(EZdY19*KK%3?d$`-ye!*l zKo+%`s6xuNq@`-IVe5YXoam@F7Z(K}&^wXd%EAAU&`{8=VXYuzBd+)hzyxvhcq zGfYo1Tlz%W(p>w}K~ww*47t%mOIw?XUN(>J^^zp1X|Stb|F*o()nlejk9Y%On%hLA z5VF{G`0ON$Kz;}i?C{Mo%doBHDT+ntrvv6fd81j3RIhIqzfMtu>B#8hBnroqEP;Ea z_zho!<*|;#<5}P+)U%?cAvbuG_Vy$p%u~oJDgne_r!{-}(L~2`33*2(k&}AxNzF zD-!Dg!ebTK#dN4lkY8BL1cWXuF{pIA4`F+xQsm#FScMXWXKU%j+vMZW3bdpb^hq`7 zB8LyFMzRSefllX}h5hotJXmFE#CE=wHQ+NqD9^3Ga7mt>)0>dHpHt+BIfUmT&TnS> z?t%|Nrsj!}dyjLnd0FJQIaBw%jXnqIc5@fg2SxU?FdM2?Nos31}=p+QFR z8tlT4hRHqUs8X?9?eS3r4z#^%VeVS!7UlbuI7sA?7TCjRMxs#18$4c*+=Cn33W%QW znd5Qau_Z+Z;9{3JM~ zTs-bu;lc+Wz-hQW_F2Ktn>E3bGJF^ILhiCRCw;O>Ugu=PCo+Gqu@B+<_iTFc7PxVC zxu1XU!feDlbQkWVDp-_yARak~d9_{?767L@GH(h~qA`J*D-0rQ%KX}xs3n)P0Y|8K zh~xOh@;&h5DzB)JMvgGAo@VbSMSQfc4`mvZ?!Ed-B1x~VupZEDmb~jcG56fu9WK3L z)%y;LuV3J>D@`=6JZ4Nke5R#4qn#ta|24tT_~?j&$ZmHb8D+v_qCvm}?4{zT*J56@ z6({LQ;YejC_jJomT=I3}|M_wa3jzKjBl+c4WDJ`-D{i&fU-8r)WFEWPCo7qy$Q{Kj z>SI1^)Ev(l+OH&21*J9reLnQAk=I;;11Nx=%5yx=-P+dY)Y^qmMXB9Pse}{vXeTvj zz$^A#kq(i}r-fnX0witBe|KQl6uER)>A*zDgS2}e1AZ4JH8LJzWd zu3?fXe7egGUa)^=eGJ8`4S~ngd&8y@0#wA%fH3ZP!+%~cv)6CWdbO94o5$LUZxJGk z7?dbzyY*YRTKefh+eKV0P4vmqof@(x%#8H3+r?c=Qxu6^_r+JX7(fw*g6eVCakgP>(pX1`up4?BIhg|9RAEDxT}Pg~x)}2*+ujkXc#lCvCMuJ+ zS#m|e{oU7Y$#O7@5jKSXm!#xJ8t=~tKS}TzdSMpIeDJ_>wzgY#e|gVUH=TK>uV_$m zr9Zw$18j9drTw5J$%*GYO;n)wJ8Ju<$V8P}qCTn%%t_+g4Sh<2y+F9qM3CDZsSYx-!5OK-;kvg7cS!RRZafJj(J16@N<6k=c@#rBzPgnz&`OF zl7-9*nF?5MYP7X5#6-)b36q3?e7Emhi>$o#_S@kUrqh^GM@n9NP+~;F9(RBVQpl9n zaJ1JO`c~;9Jn0)dg;KJUkoJVIkccd;@A082=IxDtFVP0`))A!I9TX51Aa_+1uzwlw zj`rc$mz`-d&z|TF@b00d<&wwy+jF+8Vx25ZG_FHJ{XR%}osesEt{B8}5fxWaVUFd8nzC z)6&yV=DSU4zZn}FGQv0YPgDbyp`$3jL2W}^V1VOj-74T#7MYNdukoU^iH?1(%%DaO zP8bRiLw(v3Nf0ZY;hd==7UAAs{pGD10$J_^G*h%M-xy~rssF6VE-bFk8Ib@gr97NL zGT#G<+U&mwaC*w9kUE}HdP4M4`=T>IU6pKEkjjEfxl2f0x?5kFNI?tpEe`9}m5*ls zeRWB(tsR5QjDU(nA>Aj+EL?Fb7e5*snom}&-#Vb#I^Me2d1+DsE^9hHJ-#WdR9Cjt zW8js4O|XG!FMLr}pD5dA z2*e#tZpv+wk?#+tFf?Wdzg4~c4b);aF$22G4U&iZl0JNMik4m&hSFKx@$w!SGl9$0 zl-5krxw?+e&VH;S_#8~;e{<*w>@iVn1#HH(Tabs3aRS?b(ERvok8hph!fi*Zp!QKt z){dhBIwt*=H}sgO%(+egO~SU|ZfBKjgZjn?YVIKqT%&GEV*6wV(W|kUMDVTk;8Axu zb%%6n%@N({lNahgn@^A0@_P|3=}QTjkZ79eJbip@#)x*M9QbW;^gRZiu430Cw0T~l10?K4!TKJ3!^0+2^sX;l)ZW|7lyKM2Z1;cw zI{-r=)Ka$<&9`aef;B-UTsLxV=eh`Mfw!+TcX7Zx*KuAI(&LdBuc2u9wsRW5Y^vZn_cTEM< z;+fn&hP+#<8fx*{+Ys~{8XeZv*3j@T9Qz=x57?-pZ|5e&WvuULYPV*I?tCH4D!`Ft z750hV8XD=t!^2~*o2xMFY95++_R0OR5gqz&ThyI;hw1K*H;_kbt03Q7$k9A~%kFMk zqI+@qAh_~d|0RJ0E4|8c9rEmle4XksN=iy=jjF@6fj*(mip?<_1+QRh7fDo4-~GyR zw-$TN{ih$eyc3JD#Wvg2;m?hI_M0-eQzSl@I4WANM4%kCl1UsL?|lZyCsf z#qq*Y-m%i;;PKK0qAd-6K_##?V(A48bz(5{*X@|VN?AezYncLxA_{a$f&H)+D!a=) zdXPYoy5!Ks?0Ca>v>n2QSR42YeMpTG7*=WsBuu$)%mx6)} z`vz|t`FfpPT`+~rc*tN%@0o71)tL%=l$-Xgu+(+n1#sPNJ_e~S?8`Ke6N`w)?ncc> zKRj5s;HqA4n%tmn^YE$sgNZ9fx#f$S^=69N+Q1iM4{i3b;TRbcl0l__B;EU@Ii-a> z(RV{7#JbugFv>XML5#O3CLy`oyE!G1QvOC}4~SSbF?VP7#A|O+?D-$fp?{v)tk{zT z-xo(9wm1EX*CoV|JHlXt3kzQ<1v<5R4&~ui8K$=iGITJrjn=W>>|5-M9$Qj`Fgq}7 z&SrcTUlmqgU)`_X5}`^G$JIt{KZ)Py`^`jq&;F`Bvn?9eH??`=U|_kiNCnQZl+*D@ z4`Kbp{PrY&UEY!X$h?zf^R<~OUY{3L*&I)qTvve$uw%89;nnsh-_82%Kn#76YOdAGdE?CkWpFFw9@-<1^9 zzJ4vJ2>3|Mp1m26D6%RUxr>y6$@*;?nH2~toyVDVv!i(-|Exl;GQqw7)<R#3{hI+pVAxZs;KUz5D zoO;*ji8N|lRX=}66XUF|A6ow_+~vz4X$RyGmBlWzG$oh19B6)1;|#3;YfYSe{Z8?< z!TExnJFtzX>(L*mnxf@0^N;-GihMKX2JqDrta@H6tdkeg#NpG68C+Fe2p-Wz_aqtC z-7NdC1DZ;_fhDcN9Onsggb2Sk!;|X^=`b!W?q3%;`UC|QgiSalzY}Wx#kkb$ex#C6 z#^t3|A-k*kZz7njxO%?T3U=d*ojI2@MJi|0oTPnj`(Wpf#x!VTaW4XrYBsw}=nh*h zGtJ|j(w^KN@NU6!i{~qmpY+$(AK3HCSP-Gf@+Q?b`*QWZd=V|j_GF2TxtUTk$P)H> zpkkGb{=m#dp*KNu&!JIsB{;`qC)v*hmWrdqS-@eK1u}_4NkvW6UkBR4HEnOuhV{kqLlriRhGk?!?$qy*~jnAzH)P!G0mha=4g{xVCa_xu+)v4DhcP)yRLO*g`xtOnt? zKG_V;jfjv2r2n+%*_p4=JY`&>)fTm-rISlRAr*5^U59iy1nMB?1h}*Fq%9u0Um?BI zp%+`V%*`*X-zss0mhLnb2w0^}8i@@*cd*q@gJ6?(^Vm06H#WjHFNPFKiz3}E5AOda zLsp9_T^O9z0Ka;Ed}Ax`$;#nm)2n@V^%L&7XYsu(9uPVFzXP8rMMk$uLHbKFhI)|d zme-S(aVrvQ%WY6`8Tlp61cr1x*rqestHCB^LAw}T>mAf@Zl3G zd1zPwNbIntmxY3}NfzAmK(Sqsj(%48cZarGC{*^4M-%5);jqB)~vI5m8h%0C@dR zDK>b>!koNo*gvbDAE8hadE!8p;M=!M9^->v*}u-I1TOAd)^OS^;nWLoVt^-Y71JTl zwK(+Ace9gT^KF{YAY?}<7(Tdz8+S4%Fqe@OzA4uO<;_tk%>=4>^8trG_`&>Kh$#)L ziBWCvx`TH8VhNw+CTzBGmh(NnN3PTM+tJLEki0X(ZzerJ(X^ggS6rjFW8K%9K+#5{ z9Bub!;2W66L(Od=S=lK%h|sJ7))3hFGj6_Bm<`NZ{+|PQ%bn=|)ot^H)h2&0jsC|A zTdpGsl9r-3WZ!fmSsnI;)y0x6NQsOe7}7H%h_fL@rnVR4`@ehMWnAN(A2ac0XyF8;{uxEHv1K(p)4*DQ~csBQZ(mo|s0+lfSnUa)ITuDylN z{_7Lk44v zH7Oa>mF;DVFAU|aido*Kqc!FrNkuo7NrlARS^1rv_<=s@9m$&}#=*Z~kl;IZ&K&h+ zkSaAiJpfPf{}A@(VM(oR-*9EA<$z@=j#O4QIFUm*VdXA&yVA-^O>-h=P0`E|&CDrL zD$7~PZE5WsbDjqXDn%?!aY#i}GEg)W5EQ<(@8Nx)XV-gte|j7WuC=b~yw3ACEgXL$ zYtC0o{NeGS#>&oPH!l6->-LJ5JlVW>x448Qf=QrME@)*8D_c#2Au$qk>Q(o~M{Tw3Hs)3i^5;nAfy#=#kaO z-hOTINd4(~9_rpCID^HhKURhYMrj2AcOjQ|Ckw#;C%^T3qLo8B6Xh~Sp~;|_fs+!u za-^}k-=S5P^OMM@dNDp;+KJGalK`ekX{C<~;yld186@(Mnmt)M4=d$b7!#{^xhRl> zhsR58ht{P=Q%u0v-O&OrfVDu0DOdZlZv#ai(-QLe{yz^n*deg1D2sEC38E&Epo$B` z+5zQWk93T_gmMhze1Q8rF*^e7CQER`M35tP+=`P_Ut4Ow@2);mg%@K4Sa=?tHUraN zZdtN?wUfS6j3}`33TsefGT(NcYV{@iPYUn)-Okr98o2SFaVT$n2(>Wu)+?~9PXLJX z{cndL%0@;)P`7n436MU`xy7~yuyQ!+sQOkz(Re1 zprU_yJ^f94fPkZG$QEHt=p@u<2`zsM@hymd z(Kd_u16XTmi)gdt;<*=K!G~zn&{hHsTGG$*(<4Otx^A3OHDH8KUalrbbdOezwRIjn zU2J@Lq$R9lm9sKC@SWjX{-#vZLdWCzymO;#1u#aAsY|sClc=A6G-;&i1k*_Y=rjRG ztwn~ozIJi#Eb4}9U3JJu;U={AaoPIT_po5!i4J}>Ro>gOa zea{5+lYF04b>`Qoh5n)L+5c}V?Uf+ct;;X$T7^Y_HM_orRjA2uUzYNWwl0hI4Ky+7zhH7?ZV#7UflkqlFj$~Gdr-Yc=8spF`V=n?zDGr#c;9IYhfdD+c; zPAr>zJ}*SvUNu+h)Sq00w42*pw}dGpZwEhHOeeR0cOWG(vLf41ASQeKf>B;WUu?zHrs3FoqPFuQMc^?FI zeH~uiipSJVe~x4p($3!>3evfm^ug`Q4aCg3*ox$| z^~(|LlW0zN46L<$<$%yI%ucesb1BIf;5cgAIP#x7^Ao7#hg}j{h5?hcrFHiDs{-TX z~u5Z``sWdFE!QkvL_0DbjdXt!|+6?}3Cl5yvS8VG(> z=<&_L&-m~0K)ukr-HkR^w$unWdr%HE|LV4mwg`Q%q0xz@sS}bq=9Oit8;|X_wOE)v zTCm?aUOK6!^OCg#M2Odtu5|MA&n})@w_n@rqxO#-z$Kro7V5r{ctEDPg`oA9jjF!I zrn=c<&5!?>kC$0SP<*sqr`RywpFzZ2g!iWHB?UU8Hd~~LgJohDspqN=ZOki!t+Xl5 zQwVub2Qm1z_wTuRY;_#A(Wd2yL9xn-0I5{0XJf0HRa0=)o1R>{k^RNcYrVLEp<_2| zCPqdA*xi=2zbsX)Lc+hPMB5(puBdh%4+By8NW)DpOB;0YrH(hlDL3)WY{$^gyBw9$ z$Hl&tBz$Fm=dFa#{qfJ!W~tF@6DfhUK@ml`gOkWyG*}R`3$Y_Oc@>T!KNOhtoli4? zC)t049&b)FQT`(?23q{;w3PhmS8jq7s+F2IPl*PG?w}3g_gbqcPeZ{2Wbg`7BYf24 zZavwA_H;e>Z{177%+~O@^e6&7?|UzO~Ot8_~BLMfWQ2 z`7${MG%0~`6{AuqDNuVOLiNYtWl zyc%^iptQ`{^F8pPrMQhb(;M|Q`L#dQ?oRF#9}!(}hCtE3Z_KOmkzSy=!Acq)V8SVK zgZDehp)XeFCHjbZoCvg~74<$Wv4pJXk)LLwhhI~r_}8ZFOD8oAU&S-3f5UNsMra@&T zp|#MntUoOLXO>;jLb->~Z)NuCNhL;mb|-B5t%w9(uN`rvrzV1zecjU;V?ZVgqE-y*fFby>XNDR+g=&Vri~}u)L|`#pp5~O@bHS>i z*F*ZcH-(#Of2`J(9>c`B$*|}LH)V@~T~fpGtrw-&&xc)TBMns$>yz4eEiMipbd`oDVJq`^T zdN29m;QyXz{?)B&?iFKdj)3^WjE#ea)(}{S1M|o^BrpII`&Uk}?*Z|6NY9&-yTyLr zm!0}z5;Jfv*{uRHKveDRc_&5>K&NmupH15zBdxAg9sJc5OdszQ?(~uz!^|TlvpLyl zOL;MsX<~axLmUnECHd5pS9#f*#`_a=t=(c8A66nRs=xvTW}|~K``%M2^eB~x&KK=h z5Hr7|dzMKjM@^r|@FF^i?HRc+P8qmH!4NvAejZEY!|0slY+7E(p-o%!&S_bvfvYDZ z@*=7nG~ewPUrt>%%%Rho(4TCEW}+Qv%Rj7+ec1Jnj^yuE3uxiXgcyd`e*jmf(b!0f zkZ)`g5-l6tCzS>U;Uo5DDo*AP%%^@TIV7HNBpJEiJN>n}f-xXa8$)DgxkD563VkcO z1R+ZQPbw*<-$z88*cGD-Oo-8tBvSZaHSSB#^eyP`w5QARjAMa?dhYq-{6n5;#`}Wz z#(d7#D3<-0_0K52pMUt7Jk4XOm%()9bG0c?6smQFUpMWP8W z2<=aTZA0>mbq%K{#1khY!!3e-E|>r%+OD*O0(SSh!&;#nc!$4gyLdHzZzczeJ|!5x z6GO0(C@7* zr4L)9->;rlMYVIn+47(TzhFShXx|HTnD?WDoAn5-7RNyHOO9!MWGo2=hl-V5c8K>5(9vz%OXH6XU^1``L>GYl<)@Vnof zl14HSG*zbys*UcdAy?9C45Ty&(+3Wc=-IHD&q>iUpOT;mJnlrH9NiC{WOw0LYYZYz ziRBk!j09Hs7kzPbB)CTOK*mj0@G(EEcAgO4y0(+sRO_IKl-wxWQ}8$R^7|%=W|gGj z@{z=411yZih0j10>y+Xb-XUD&B}mFEYi7TMBi4`KQ_pMzo__e*6{NHbmh2|oR?JFC zSw>RSaYA|JCmd`(7UsIX4vumwxPQ)UlabZEj4$BH?Y zb!^0TTB~Q?!q(^!%P(Ao5=^wWHHnQ>GXFk%aGQRo{4DLrL=aUjAiC6OM`A|=FMAx-Th+e~` zBagN{`u!Yq#mmPvh1lJ?Kno{gX0jnn>lGt2Z-M+*6MXR zkMXyB=JuUciHP3c%GF;)RqaEsIS-DZ>HTNm19SP?9!cj(5bY0GXVYBIF2g1tmBQ}D zX&*xG!<>c?Rutd#G?Lv4&M`dBE8IA9CIOJ+dYFc>>WphVZvg01(WgZgBzaXuWsdUJ zLn>e|+L2qQMDWKyjv_Q?uo)BpDNy?c%Z3aO4N|^;=_!Bdfzftu?G%>~_aEcj92)sj zKz#o{WZ(Zq3FGcxbl}7?C0?g~+G+-JO{G#L(n%)O`Q+H0o%Z(>_Y5K6_m<8qrx~b9 zZ@Q2t|5h$kYYLuR+G8V$#R&L#uXk~{^<=2*f*;PB@iKc;PHS(jL!hN4u0DWx+p#G+ zC1A4pm_m8wo7Co#`q81X8=fs;teTrtdsu9t3@BuzX{{k(%wx6oS-w{cM6&0`F z0-}L{prHOyTzXibONW|?0bjphjN+;$VG_VCyzb}6k|eEO!Ur8kQ!OYX9zarEP5UF( z%R>gUV)04-UKC^2_wOmDtU5O@=YI&e|Fs!t$EO6AoHXY4*Yl-)N0YNHl9yNK<2|(r zISi-=3F|zxDD~X?#skFE`u@+`^v>RtW-&I?i0|J~1ow)9tnUy9a9vHWQhEmI1yR@I zM44kOZE$J)!}$SR#od>y9Ihj~*LX<(vwd-qXNI{xvy25Io$!EZwN*A?aIF=uD`YS7 zT)ml~S(KjdY4+rVQ7*>zw59H^8iDsGM>Y6DjFDayvj6N`@)ybRDt`3Sb;Z%uF$K%?bYUaFdL@*Jq^C;MVJV(GG(0=Pmfx0}Cm z8HYXcQhB-TfK%cGWN|ZOhfHXIcSTfWRJnU(!nJEfZe+tL@4@Ok>#o`PHk1-6!n<1# zX@$ho3fb`m0vMVU8Ahh8o1OfJ9Q5x4a{1lKQTiJ2?}FnNh_|+{wRedp!o5}DSr?;% ztd{MEl0e;NeCl~b8OA=&_0Ox(rzl#P)9cw_Uwrm?Qjk#pUs0#?E_FwH$V|X zfEGS=wQC7`QAFqi;+4Pu_5E?8Ik)CaF?_eq`J}57ri-;Lo&{2`(n%YX5|u1ch^%W! z%MS#yOyi$q%RO*-KJ*^^5ei};IL&{Zve_Kp?YBsa%PmjPuN$Q znDJyxr;(-O3-@TdRvf6?7sHPVy0@{XJs4H{8i~=7jRxuxiy9EgmZd6WliAk0vuLGl zrVEsFT+`*9uRuRl&3oWYVgRqD_+%#<=sz2BE~qx!PzKRaY0<8&0O3xNBRGKI?(53H+_udAOs_T`JYexDnfpLM{B+AM zN%Jq-7a!6^%6y+8^KgfT*?XBvN5@*%3aX)xCH35bSB3e=?GDCfKi_=$!kP9~*FE98 z1aa{N0N7j7|ILn=)FacV*+{?3uwp14@cV}_0oY*S>j2Y%0kM=TMF{CpZq6;~b}ftL zPU^1t-SKN}5Tqn~z4bM=I{Q%!Ff`_mBOD&cd%atCkCqvQZU6nc4ByyhYr1O=#$H*X zPhj5yR^Z{D5bOQP^rDf(TIOgT7ug!cicyg@{T7}uDy-)$75>Of?y{Xg?#`%KT}{4E1@#S^b2_8;TNRD;#Q29srHWXv8Qyj_cGqS45{O+8Y}5faiy zy%Y0s6V|E0(&z?r5aun8DudAHCj(-x9vb?2K#!Bh z0^&L0g@FkWVrp+K)U$#pF9D45=Hk%wlsJqLV#SRalR?>=RR0*#!w_dWvtlZ22>muUw zPX{V6mb)K+^hH!{@nSBgIO$gGc8I`+fYM&U_LhqG0aKsvG*mIbmBQ#IHWd+*17lE+ zrdAFR^0uzQ(~(0nPP?o7YmIg5u#nYtFnBIleQ5LbUzKA`1u^Ct1;npGK+dIsm)_;x zo_;kF7~I=*Ndk^;Bah)X5um1kE^E4H`uWB>n0@&Dk@}Fu zjK@=oJ4}xiPQ$FLmjv(jrUxFjSA@nOcJ^L4a$P=V=GRZb6L<;~ThD?zmV62Vz7l@g z42svE6rj+;TG2(u8K>$w)vi0sTD{rWr}p0b6t7-^n?PKZu_@i&cj)(!`6LdMmGyJQ zk`n`NjE^WQedK&ejKv}G+!%hR0;+ZZOfb8*iVW0;fG0&I;HihsL)Lnl?($@4a2yq^ ze7Zm-P3H-WMOPghH`f%;jhJ8Wbu%L^BYrsq08Op49>ZS_kqBJ%4QZz%h z_|8PAAm%O)BtfeNYd0teH_Ll8)j=r05<(2eU!_?7at+CfwVLH`K%y)rMb+ek;>r@$ zg)+S4q)9{$02;5WD!xf+B$tvx`MK4ZE?ZN@@M3VC%y-}7t+#}TF8u$8#bGMw%% zdtLl48e)PI64BxRtIH88Et$Ik==Fke#1LMf+{qWpLsge{(hV2n(!p3VnBm3@nCrCB zioOi!dqKDM-9x#tl1SaOS;BUlgbEUK(I$Cy-E0YYAuTr_yZSab?jMeTe{q?ef8#x( zW&dc*`$DfF0SFun7HV}i-XHUd!C0k}lCcSpP00Ocuee-SrQF#GhiImm zIBl(~oCVrzjy-xHqJKQJZ3X2qfIWpUsK5lde0 za(c|ZXETF8N9@$h4AJwtVA-=N6@3o8`33UAJsiyq@o6`t7$Zf?mbt5t3HAoS9Fr=g zV)0*gTSN;nCYur)EKL&1*K-G~Lq5)1)c6+3`bC^I21V0G;F)B)`;T;d=YyAc#Y5_F zoox8vIaKe##9P7E{MT__vQXzJ)d0vZcgWwLZHzorJD@IyhaP<`<3Nz|i$Efjo zlVh*RTrAXQMq^c9cU6$zTJR-bu%#+u%j>lLE6}8bjcloXncz7ux19**p>?0}Vb`19 zKdEGZqMi?vuCiJ2nh~5LP!SzHFoS>@d8xc>j?>V)y?Lhmh=;AR_iUISX`r! zDa!!WTJv-xda1R*W%`ohX{Ya)>gC*!19~Z`r+00QQAkhU30WS*Uy_%)c;UN7CK5fb zp#bG2$3cvUgG;|IweI%-U~J=a`(v+sPWp<*2~t;f_)wyClot;S^4vZ2r}c)a*F5#k z{j&Y@4-Vtsb>9er`e>P0>_Y_HzOVzOfY;J-V*M;Ivca!sz6kyKI81jCKg&1ih*}u_D8y`N650c|W`ccLh{}1y(kC0O zX|pN7V?4SPBCT>Cc`gSk+pYURZ}+?HA;(?4#Vi4{fJWvHcjrg654X^DdK}{k4443y zoh*9jGmuz%G4HyenVJ8vGdtAp_U-$Vvg&5u+zIYIlu%0KIaYrg)Bak>n<0vZu9rLe z=yt3dZhMJkGtVzfr|Q(QVnyO(BcHFx2~e_IY&c1=JpU+ii*V4_&u^h1RtRqad?vC{ z=ic>+s-)DZ_}3;Px`n9e?plwt`9C z=ny8Z!+NrPV@kiT*9;xS{%3rRL*&FYH>K6D=g`M2CwW~DGMl~|D~>*--+W45`UoToN;T)d&$)A!|A9Wg2`K!RQg@l9_uk)8`gn1 zRNzs${?zaov$M;3tgfYwsk)`~$NEy3?>9!({0(NDA5-QNsKk6<*3*}tV%39<+hv!= zeM&iXakE+5I{9G2Bj8oSy2+T~e6jZrv`8Q1dftwBV;<1(_|Nn@3pdfWdt5=p4(kJ3 zli7w6N!mtq{ZILp>M^{_E&Mkw4Fp0W<>cSi?&>U;e*i#(E1_i_f=w z|6WOW##!Y&b6VDoSydT(8_)vicPA&-H3JW)NVxvBR`8Im>qp)4UlA9K0DkpXWzCum zEVP@nHiwzAz7J~3HT$^Q%*A3q|ZF~JPl+*`^H$Es{P1quyF5Xel z!l4AhSI9=ie|?-QhjdmZw~%(;rM_t21q3J7f{m$<*}%Ce)($xH?$bxe zu|T@gM?2A&tSU^7cJX2whYCXVXKFe4y9fvk3;p||x9cAbl*xMQ65h2IL5!N>awy#A^-+E=@D z2TS#AH?14Bop9bTL>6sRgAskT+7kc5SS+730W64ZF46TiH=FkF8{gANL%4XheU>)6Qn7$IY($cY^3P(Rk^kfv1fE9h#X#x@eMnr;2 z&SKEE_vH-}ZdgHK^j zh5)X`aAv#b86lc4R=%l|63(eDqno*PBR8>R)Q5K72d~k50F$d+xToDdr8?F@g+?(G zT^z{5yDG|NyD`+6z;>-0)-fMmy2ajpuimuiwT(J&c&(n_q&RjzWQef3(8N9!wIZ-c z4VAigMx1A=X!@3OgLZ9 zj}-&ab#H4s{dR_zNADdNrr9=Cp>1&WViH6O zJ*OvLa4ks*ZHpuG@!@G;Kd&`oMaJbQW+N%W^YnX8!sRl`X}O*odxZz908gtybQuX+ z6{EH!FW-9~O#gv&3LBv3g&er7(3_`75-TXU+##&1thej<9xUh!>wt)syVa#d)b{T^ zE-A|%=d(sXA3R^?FSB%s;oqr6I|B26)DDaGpNy4vP@P5;KMk^UyBpz zsY_-JkU?x6r^e2sINj!~E2}QNZu*Gr>5wRTLD<*;_HI$RQ|Ob>+A!WOqmUsj$EeZQ z%g68YbMzNZ+PgH}C#Yt*xP((}doCX7d}b0me&wF7!o&~FSbs-c`Bs~#QQPt(yovQp zU@>%B=q$9egc9AL`fg`Yv)x!{=RMTgF_%>2l72(eh{={D;Efq*mpiQs<+1J}-fQyi zGFp&ChOy|&o9iQ{lWTYVvdvAcMfFRwxIK2QW}^_^8_}N1Cx=60UJl)SIC*95<#dK| z?4S;vZkiM8lI6_r<-L?u{_%0iYH)0Vf5;RpT!>*cGs=z3I^53izW()BS#55va?5e2 zwx9vl?doGX9lh+95kKhtW=b_<2iFMvp%v=7Jp1(mn!qC^XM_55v$V?Qnh z;tVbJ-?|b>l^-5u&Zhow5ziNXR~+ruEO0Z$Wl7HdZri9_TZBvxi1c?H_r9?wceyX< zjJFlc>UR(C+YE*>0@vOW+EIR^9k0+E*ymE>bQC_J+#k(-K&WeK>Z)hGH_T6y3HdYd zsB%c}SJhlm0=>`&6f=7x@3O65kFNP7AEzii`*FM~r%um+{eR6&Fd?c*GidXX)Q1Yb@ERymP* z0wv2hPJkMqdXvawV8!3v!tCW9rf9vFe7JTf7s+$86=M;dwnm%Xi<7f5HNi>Hr@^_a z4j8E1R+sM(NteAG!CZ6%PfWO48Jh-(T_+1y%e+P_Zngy2QsNSvqL&Al>86YIvUX3-~x2HM?W(;J9V9PVbQD z)mRiMsC9ZaYoujj*(g(`IQ0v$LZE@UT^r`ICbSm`CIy`AaSrEh6x(r9Y52rrf@%U` zTv4shZ9gCzzbwUl8@s}?aC0;YtZQhSwPAjVy%WKcn3QXO7l2tuoLIM+TrPwyWOb~Z zY5DeN=`4_0QXRE!Rf$5Fb%@q6x}zi1o=2~re8`XWXuRs}*7%~Wx&Dxj1RXCSq^62X z#&rBq;IdU=?QqiM{?{H&njymc=Y!<1Wu4bWI%Y?y8S;*6mmvx%y--MjC| zWXqxiHE+I&I>xkgv)hQOHU_+;NdLZ`4KC@%f12|^q{ zQg<2q)F^GT7@fj4|HpL+UwM5&+l^=X$j$-pkJ(i%4=nd@R*`PuJ^I`AwObirHkU#} zxfJ145_4?Qt;TZ*sCm3U-o+g`L`iY3zjdnJI8c`4(z7_;w7VxKId-wxu>M%|ZMiJsWM;tks;f`;{w#y=CkyPuAZ!KfcZDHc;^=GdStvid&|ttKIIl8|z++ zwWc)sd>vCT`W9>#dA~BTDlW_*kNv%h(XldbQ@@Q~=oX;TVDCj)!zND!{#Ixa)3Ls0 z^KR`KTaXl^(^OUfpyYWTlXmRoaK+h49KV}S=Qxw zcoVxKY6q`lM#+Xtoy^(2JFmjA<$1A2nz zhnP3&Co=_OVqSyFIt>Kq&iM($NELT_-`9Fm1Hr7M&IdS6ChN>$9hW47G6(h5i?M>W zpl1Tt##Y{CQ`$w{hMZ#xj$!BDEHrP#n8Mylsl^?H%O><>D)wPjbd3pDt#I7NGH(4*wDN z3tpkrKctxokc+QnU52z;4*35-2@-h+zbw7iZkesvY-e?e-@P{6%*H-sAER?YDp(xO zGW>Ti-<(szLx2zuxi}&?%94MtSZ~gdZI)!>7)X9!$>T#SAma(JCpKgN3N*lqr1+mrP!7Gf>hBxx<=&thqF>y56ZgQq<_7A=^s z@C75s|5D%cyD^w}YLyt)Z(i)+qn6xY~wBC3v znZ{+4Dn)uC6l$7f;d?$yyDl(>mK*M8iJ-*20!^-G9rGZ$+=f#B%}-1rdrroBH2`HO zKT9JXwZX~jSiA5*p@rVM+GWM;i{(Et#3F+mTVo0f*oDJmd{J{BXS`r+Ue^$$lToo< zW^Z9h+S!^TOedPsZ&v4nCRc>@cl~6!t=t4sWqr^G0~Q^A!!Ntn%&M@%XZf$hxW}dA zVO!1RjKnbY(h2A1!^ZD$cV=_G2=etlw9-3zkfDMZ-Yo zHLH5!OT&9Te}P;cUL^J==sW_V1yVOXs&^^Vg%@_X{`vSu@0kXs4FNHqgfaSYWwTE{ zmhs|HeaQ35$}y3|_e;F9m6VJTM@Q~RX8G6;&?EQ9!G=HRB+^%6dj30V@aXH^<9;!V z8GY$o&UL$CykHFJ5OY-Db0(&Y^3E*x_z2rd*u72a$9ZS4`Xvc$);p?O)YAy6<8-|3 ziXLpp>`8MzTLt!1kVADl`ualVWbMQ!b;L%JfaT{I9@8z44a&T^igl?L2?-6;pIv@T zE84G>M^KLB;McA4j*&F~troN;cDgoNG@3Y#UU&`SLdeeb{WrR0R|n4zVasUb;~Hj5 zE3V#Upa*IZ?|-Bg`m@Oe((u^EKjxM)Gj#UuQX)HV>;h^PzqN zWrX?`InJ0+X-C8I?QU1cWU7B-LdUr_uX7FgH7^3q(t0-Dc%lnq1Hz3+y*YKuUH$?s=LW`*lI)angQTU~6V zujRS4jLIh56xg+YUma4ckUMNwC>W>Xqnd{wB;}nd6y%=|_zL9PX~xByQ(tGkd@;C| z^-)4ZZeH0Hg$h6H6mE=~nYXfNuihH~_#-BHiNgfZ`#54=U{m?t^sX%7WC!K*%k#_# z-A4c3FFO&Peb5nh*vsRj;J!)^uhiAV^GVL3YdyGGpVeg_L5FZP5GS@$|7?9@`UUaF z8f3Afa&hV4h4VcXJn8#_?gdppYiG4Wld17n^h#anUxXLgG1`-g>x^DndST4Xk3r*4F4Vx=xu<5+%SU0aU*CSSQ}~u3M`B) z`=o3_bnIG?O*Rf=EP9<~p=*|d>R0Cvfr{V2%^X_2W`y4Egn_TrnBZ~C^svizNoOH8 z0jvd`bpgmmndoR!Rh$;pZ7MsXp4i*`a{9fc{E%F`WT*Ln95b8!uqmDz^WBH~d7(K- z7q&<({G;pHw$#3;)4b!e?K~5`afN=1xUdfh4X=sTlAubIV5?;sP&UMS2S29#Apy-t*!_A3}u5skDy?@y(03xa4END_1{v~tI(Y0QOqiZgj7Z6O^;$(Vy=7A049Z`ip8IOSU$$8|QRLv#z^RSq z0~o?zyqHjvrP{Ffnc9v$zI~q#1WIySu~CZ|%!VQkHmNke^nTPVGL*M+GW5*0O8)Pc zM`%6H>!(c@YHfdX(Gxt?f>|hT)|dP&6HzpEzc>%8#v|H}F5_C~=NuPmu!7+&D}jN{ z2iGO;7PifekZZqEHv?$Lx}wx{c-qLvXUDqb7g#x$5b66f%wq?^HXn^GT4Pw2vFwfo zn@OQU6kEjw(i1RNZ*D}NU5YBhil{L$Ke+ zY(goI*%3JOA5&5sEj6yZXy0oPNGs~2OWT)jNcfQQ;_~gLwZi)uU`d(9IYz9TP4w8Y za$oE4F;WST`{dQ`bnl2EWr+kC&F#^tv(<^c{a|8wUL*}djXky*6ONg(>rd2=^Gr=? z7~PuE*!7S7ccn+-v`quppjg^I+US_$-K4}2WVn3)IFEZweXHHV?fBn*#Py?T*X%>x z`8RD%u$9h%sU|i-zE97_3hA z!>r>kxr2)L(x+VC(#hu?dC%cGtD}DH>J$2+N2n!B$acHEgZ7i}1qMn<1oID~jc2+e zilT+{Yo*@=ylPiP(~jU_BlQjJ)nmKfvt=jydp);Hxo+7J?SNp3)q~Ta246a-?#WP7F46Fx zZV5)0kZrxXFC9m@td^Chw!;a7KVAZjT=9FQ^s9(;{_ssf`MO{LnZs&m-%zv88}6tq z$(PDzu9aRiW<(Zz$<}D!-zt<1CZlG}&lujv{ID{npO|<;pmD=tq7UnW?i1_`pWZIU ztvLvb{%7{TSqRlJ>8WczJlwMVGfV0bO2*?df?0W%(VTo*X?Xgw3Djw5QCHE+|1Se& z_6JE};*ewxq_6gZT$s?9Juu# zklMg*V-5_Tsy4peE5BuK#ZsUaVnG;yz&U>^cDRc&%N=#U?EoQQ6SJ+QW+O|TC!9XF zAqPs3B8`w%tY5QGGpT0{iRt67G6pWipl|w^T_}H3bFBTg4kSDujN!6l^VhRObN?$h z`RKU`l*|B`mNbop5=)*v#E`&@F3X`3o66+a(zG<|@=~4F8|BAa>&p?0Z`xwErtyEN zT@?Sgw(+L2vL?g&hH#8gv2ho{+cjeeq|h9aA{n$-Q~O|sD72+U=1VFq?(E1|jOyt% zk_T_(YLp6C67?8181_l&HEiaqQYQK2u(V%OcUW9s#0{LWboXp*nG`QKN8bBwAF92r+o4r%?o zX+!OSIksU0^f}4-F&ty1IvsTmosw|TE$wP463eK@U)E1t2IrZMZnYImPn_K>89ia6 zlAEoi8ZGA0jN`h6PaaL&2m3v6Qh$)S#eGN!^ z;DJ#W7)4!O&0=Z`n&l3tk3&nD4?WtHDye|h>%U9oe@NAq1a6y5=SZZqjwV`t9s^gg zcGGRoi6k+S!3npuM<-VDR&0S_1NBZl_1@_G(D~xCHrve}j0#+%_9f;beKBeX+J`w> z3KpEEduTbqRt2G6mS;HUK5{`!N@dH!!nX_2ujY~Y@o?Yipu#+WEzMMAn)EjUxv}Nc zGf6#>k&*Vl%od0tOBMfMv(cyfi-=6qKc^+;&JM$Y?yK7lzub&ZcrDBG0;Cu?XI~WP6XE z4QLHI_n(c!+Ow?8)QI_4NDoI_f!sT^K;UL46Q#)FJVNkJp7RTpD`uY0)h7evF6Sg&s zBL&)QQxlWL?Wv7$Rmzz&AfkAIjB&K^p2eF8iNw=pew`qdwqgu42|jfNBDm!14%E!~ zVsRteKen8{Uj3&-)6#P11AKqh%aN=4iPe+)N@Ymk(C@gYF={ac;og?Uo2NEDFDi1I z`1s84u9jna@ZG@J$!(}M)X?xGL}fJy+bpAQa?8@vvM3DFXLefVSIUvC;!96g%MkpP z9dBM`-*!U`9zEt|A9}6s%ivXsD1K#_|JcwP5csAe$<1m=+SMULjHjNgA(iAC<%Svz z_WNk5)wpq$jX(zD@7?6BV}s6E7$AH?tS$6*W6q(#`h65IX)fZzUfg4MV^7-!TOb|^ ztXT;CHb}@0C%hgBin`hBsgXWj>t-b@%O4gOlm+FRdG+OY5lWh(a&z;dfD~_iCtE

mDp3` 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 KQ@MqwN8%EAwAE(lxS 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þY_-UcjAbxkGXT(}@1u>8@kkB)9F zjCDgQ#WjMY%_^Q7(g!NQSoihPBYb+DMlBd^S?V&~hpmWd zUuG9#LsBX9dJ#{w_rkJlk7>xK71+}pwP$Rr3FM9`aXz&7pd{dBikP(xn{=UH0C7&3 z^93A_n6#B}Y5(J%MrWaWUdnG|i=^e6+A{^9Ol(dkheUW{M4#kM8+4=CY^we7Jo6Qj zuXS*GM($9~TzT_$B@h>^_ zjKg$8_q~}(G1NP`j$aaJ=EJo9nON7&{HVvChon~&z0KF7+jQf74o9M|GjZv8bx4Yn zO(U1tRPZT+T(Vi`IH=-l;G^(uB_{CB8Sh?`HfQn4PAaVW071xE+ly?}W;@0&xP*2M zLHqW0)1O#?j2@lgPTW9V$`TY+mkgGibtGO({SF*B)x%gzMo@xzjrm|ScJ@-J^|=c0QwH2JUe!He7`bsRRJT$$1?i0sUM%$I4FtTCIS%*O&NT&%!8{1}m_cJ9 zqMIjlhh`}ER%lGS`9ww`4?`T-#nCty=DwXU4xca_Or?;p)ANkfJQWkxa~Mp8c+;lw z&_v4yyC1p!BT0d;UwQ9FU-)mU&)$qyB4{RR)exyEM92&oly$W zZtZH{OGt`Sw)TG^ts&%u8g{e9YQ_08#@~A11-y6$K3&n9rjMyVos1c-6Qg08RnJ%m zstoFuI5__`!osA8gO8Cv#NK%#D%OA$qo}dj5WKAr|*wAE9FO_U{O#Y{) z#)csnm>j)HB(8XGwUJM4eBYc^3WH?~oX!qLOJI#n-c`H&tjQ1@3Z)I- zwDukLC){K|{FMuzb==c5}4mY>7{i}waOJ$Jx1SwLXNs>FElb9EP3C>DgoEAI1 zYC4~LK2!rzJ4*FXX=6nM?`Ye<}b7y6^wOfw^sa5R&erb;Zwhn_YdQ)rVy44iy_kfxQa!Og%K7O7rz@O1+5W*PzPQ$%BFA#De4n468 zTFOPc~l{L~?;va4Ntrj} zY(-z^mRAatU$3$aD(fe_^Kkf{{r-)Jl=!!#PctvKuPyz4Eua^4>S$_k@HEmPx<(z_ zd5wxMyeP$CaQx~8qE?C=E1_M=HL!XiMM*9(${v_aMN67xXv7v$oc8xhlMj?+7?z0T-G54)xEq$QO7bIM^|dC+62hxLYM zKozy^l76y~_Z><_Ab02I7bnfdfEZMk_RHkAM})r9wvDyWcz4YoO6IBJ|Cv1aza{tQ z#r8+c{>5-Bq))~bUsyEu2VBk6rA1NdqPS(Exw;wE_n>@_=#;lK^8|%Wpic&WFie-AAJDzkr|O>XL5Jy(pY6 zkx0cI!zl*%#O-gVesU;@DPZ)Kfjh*E2{4;;%HQLF8=8rhC^SV=FXJuLav??g8u-dv zX!0mh&1LY93t=}eH^@AZWM1!|cUfxx!Lv2YtznZ35qsd)l3#Hj?K+US9omnOm?H%7 zWowh>Dn>Q~1DrrCBtKLZt>Hs%LH7@~gyANVR^sl+9%W;p72!X~Dp>tl;9HeGo3xf9 z_mDIx5Yby5zTJhCYqIKU!iDGj{8L2u?sRWr8w|lCv6R!a1BQnxLXbnSLmUnix+k2# zrv&Sel=t2*bFQt#nt^J$iVTJinxT-K!>Mr&xVnO~%~Yav-Ql-Mt2rMph{aIRrMh#R zl9on<`S)V7Pav+CS*wlqV=_aRV#pvBAx9FZP_%he>BaK%MsoH4t)sNL?1MmUth$1is^D3dbJIOvtVDrq>-xR! z%;VPjMn5b1BIvV{c|ve9kWavZ?UfYY1YSWMRbZ? z7fR~La#VGH@Y@z$tq_2-h;4h;T#v)icm!b6dN(4HrXL*3hic5_RtJ<69TqKW$#+iN zpXwSHoOs0{Au}&*okx{f8T>Ta+dy6FNVz$-mO+WGh;t%;jVth-zAHt6Wkfxqav2(= zR((k+H=b+^E7eX@ind^5KTvz0%<4XN5+^5bJ5eLpux+c*sb|~K-*`GyA>h|$h>Zg= zz9^y`LeWQSk&RYx`&et%SN3T`0X-22YtKP@xXO^eif(u{x%2z1HkqT|Zf+Dvx)-6S z0Ep*)XM={4NA38QHAqSz-DWaFyS9A^N@liT+;}6vLgVEgarjL>7H#OEQoGu|3f-b) zBnro4xb`8bGstgL2>m`i2Ms#f+a6`- z*jX^}^LCQilYTRVu=Ba^b0Sdfa#8+{ll;wC_daL7EVN%6cGLN6If!;xLc!}Ko!n!e z=l>178?jKD5%<5-U9j9CCS-6BcKqoi4+#HnC-1W&EvVIc!AylyEiWDbKtl7(;iZu zo>!gH=;N6M@;l(kqY%TOne>aGRdzqzjQ9pc+EDO4c~pB?hhtQy6d*9*SQDGn`Yf>o zn}!G;nGJZ)^vI5|GZI9Uf%8_$^IKOG-M6&vN=jT>WTnCX3x+=EzdeY zKnc+X%dV48sIu=HhO2Tqb#0*Ew7=`Kfuj z*m*ux75QJXg4DH~gI3&WZ(*c)qs<+*m>;qg>)KP0{T)$rr}+6x$IaWyqN%1a0zOV7 z9r2%Gc;)OUDsB$ZQUyoxBbQ2}0Y<&a7ZuSuUpXXPY>I{WUfzVcudHm%8|vPssK74Q zsb~W!rWEZu;Ll+TF`2M5nb*Vrj`<(#y=PRDZMW~M@(31+fb^y!O=_ff5EKC+Akupx z(tD8-Km;k$RH}5OO9`RZ01|p9^iJpmq=nx0&9mOM-@W!8YrU>B#y;bGI3FQjlKZ-^ z+5W#drv`kLv$x;hsSy8Bu67|G+4#f{1UD(mjkzRWyTR*cbW%rMK&5zJH)??varAl68XxyQH;@X%%rR(@6ieV6r? zYeXwOF9DIXOZcflVukHWgMD}%zU0LzQ%Wi^6X=0AkkC#L(Qf4TT_#Yeg6)xW0cB=g z5xCCxmt3}EnTbJSaRVO4vnNA$pUh24?M%8H;&CQ^enGUAT6BWi%91*vm;RoL+%2pI zzPOL?Pyw4iSwVvtHUf9jaBQYmQ*x|HQ4_MrYwQexvM*JJq8Sdk?I$jqmN$CRP#vYM znWGIm0WLZh7siKJ1@!xd^TwtFgx>EJlsfaEzN!?f?No)Nq1)a@nO!2j>|uMck2gA~ zPfV0(11;`7|J%dzcc-A&w~9XzadHIk0Hxn9dMtq{*%dpGo`nDKF~jte>skp-w;`_0 z_fS7ZXm>-NGwDkr22h#0r8mmAWAN^(TCY#lge{CNy~&4hm=UHjlEUd71wiv+Kf}F$ zva0y~O7|cnk7^zHDApaB_&|H4GqSoQ0%n*DA%#nQt3vLQIUJ#WL{vDekB-YpTUxDV z=s_I&{Za^(Kd4KzLi)6Xj&g8m^6+M2<;!ElN|qxOKkH^>flBJpgrVh(Tz-qQ*t^bc z98y}8MI}*$OY#5}h^rwvd$ft+G=BIx(zt#nq*9t&(sr42IIWeS!9{uh&b>e)RdG8P zPX!;r;6OrrqE+--IN1c*IioQWQB!aF`=h3cmr=6o)~o}fu7VaKS$?}dTdNobJh!zyq=1(w+kLbZ$*0Uzg2r=&wt(!DJ{() z>Z#_Mk5af?Iw*U5`I`kw!W2Jqp}?Pij#b`HIJ_{fmHm9j{oXlsQcz&8_e`dhLc>`@ zizW1^XvEgJ6~v5AHGay!-|Nq{_uKG0^1P5>SAqND>u;VRth*Ko^`SBkA$-eKd_g5Y=LCh`ZD0nEL3bd-m>LFspLP zu^MVulf^i<4Ry>XO~$-@ZfDo?#bcdB`nVTSeh`j2WY(57dz_ zXeDGCKbkwp9>+%&HvQ$z%7<&B!lzRqEbxpL0nn!P zv@hO{839tk#NVaguc6VT$0oWZj?N20H;C9?3bSPa*C1lCTJ>l9ZA^kcYW$uF-yZ5{INz$nZE0_L zc%y1Bjuu^JoU?~yt)bHOK8`0q<<|z-P)|eaCc-=mQ&*JAT-G9%I3$pvz?abgiH)-pxx~k@H{x^R7=RkUnv5j#cxA zQ%^MP?k~_C$Ix9S*rRfzQeeJAaKJYGWJ(Q!No8!=U-Vj}Eex2^?H%T6)AE<>cvCJb zYxgK>pWFC#=S0_GVia=BCCwpmQs@am{XrmONmm}jyPY8L*1>bK0E)hn@O#g;%-335 z`P#;0@qYRx6CGEC^i8`O>(wDa*PI_5E|>p_Sz?R4Ds$LH_pAB!#$?1A3gcu5VF0wn zbI>)P{qWXOy9T+dp{nHlIQaq_#XM%AWrT7ajNye+6dq?`lBW2AhNR`E#Nh zmgjE}DGw=v30Q_SgtgB!FS;(tcQ*;!ThG>m^L>P*&%LD5E`R43k1fgG9%hoX)H!K} zkv}`*!cC9*ldb1#`xxLpFAO>Z+m1ZCgZ65Jn4{5~6tfo%pVoYR#2Rd`J>OxMJU{c@ zulc@4(U+_@eQRgp@cf6EO~iRE1WQ3@f8HE5*qxz}HNZ?z79;V^xMi1jwp#c~ZLmd% zLG6JO*DzZ4_CB@rI|om6ekA+=o+xo|I$}4RN$N{c?SkVoFvs~DK-1@ai}@nEw)Ahb zOXkC4SGsTe`juJ7)}uL0TrdI2n)HhXX^MX7KRL>r$5%3Ajruc!OHY^O!gK;f(K9tj zK)CxZu1TBM#%fXdk(TIfY?Q_;QLEx61r=5E!MQvFHtA(ZiddOb3CoZ|VG>M01O_lv zG3b-QTatNlQT91d$J)2Iixrh&li4>Bm=STIxdfvx7thH%z6XQ0ZpQ{t3giyi*R=k(4!?@zCO zYj$xLhsRNK69PdF%K%daYwIyGzs>ANX~!DC3Gw#d`U_AcF^Q8#%>yw$UVF!<%i26J zHj;0IJ#d>NPb9}ezDI6W&Qr05b@{%GV^>a3O~v<19VZvX;OQ`syGg25zq$PZm+&(Q)TauF*55@x>on24p*8srVTNWjo3$;TW>vm;FTWoha%AJ^FtKHIzws0OP&$#7(Q)y9GbJ&hV@sz|=X3gs;<2A!=dQ5P z#ST(tRl}i@3?}R11zS=RtP_aR5k(Q|PkFMpY&XsBm`kFx*k>&&PwoDjW&s^E>*9Gq zRnK`oaO(S&v8(dKpD-qWKa9roUVxSgxcH^LGDRqn7P7`n4pqC(6edvpI*OU`l%ow8 zs_`t@#tBp;Atm`^wsWLf(E5Yy=+b>C_x$6b(IusVZIG5WGa(rQHDM{Z7EzolP(k_R zRGz7p*?{2%XxKt6E&AVxe=#5~cy9c^BmY|d#AB!dvw8r;oWBJbJm1}mnFW^X?5>p4 zKO(H#`}KV-jJ!3IfU;1L>7vs%sJ*CO{ zl4wsb!j?ia_qphWNL{a6GJp2@8{tPmh(Nn@pB}O$x(_X8L;&=50WUWxE2f>CfXxuI z7y#Tu!JST`j`iBo(j|PWJt;&_AG7{=MQjCj>w_ql2-HrBs8g> zLVuK7{-(Q28%%Ulo&(g$q16g~B?;kmLc9>NP7m?x`{LG2%JQNd#M;246%4i4ub}t+NRrbz*1L8E*D@r8RaRewba`jU zziayM9D>L-!ZN@KsmY4w%7o1ai@Z$dx7{t-$-+9YWaD%btI7fdi?f*VYr__l^Me9X zlGpHScA_rCRKr9+ez=p9=gAN_6QTp3LB?_5JDmO+_?GGS#+mA_hH$%XMJ zmedapG#keFYh!rBKYRsH%7}BNB-ql|RdQY^PUfz5kZHT01T}2!h@IDz{RR>1NE;(k z{YO)x@4vRteE&1{CBF4{A4PAE+DDiC`CIer_z!c#y^Hs&qubhIjSu@n#mb7u23^ZR z5e$OXSi(dfi}}a9pYZ&(R9^?#zdbnni&;f7VT{qG^tr8b+4fLD{*BmA%7)8OVZP#u%T0(w?OI2VT*>6aAtcmH16t9ZV%Myu} z@r@1EsAE3=o?>_0j9FRw7X5db^)%?ean&0MU6TDM{mBT~RyPt%Z$K=ZT&1dW5m4zC zcQN1HO_$g!(~Hi5}B(kpEci-5F;Pe2+}qX z;XC@Q2r)!`h>HCZ>T2SGAI^Yqt$>i7v`1LCD+Htq>*?6cZzD2dxziig??HCgWC`h| z1XXC&G>Y+pRNBNKPeL7!ZImhkB*d0OZYvlds3R*Jb_Ff2rRWSTX640&o3zzA;96U? z8FV1PQ~*?_{y6R-uQc&XHD#l#>g9Ht{JWn2&P^Fp#@7RIk2*d7>#ohjsPZ2+#bahF z-wD_X6`s8sJGw`pz{~fur3l@r45@b@+aA+&cyF*W$*>ed{^D6f;OGpzIT~nvlwx6R zogBBxHvGZb7!+C)P`<8UKsWMGnh6<}&jcD*&t*2YGNpOUj&1z-kZGrc1@%TQxeTA` zv8#wxCL)g)iiorsX?!s{d|P=6KradZn~vk}GV{vgWc$#%9LK~bs-S(|3W#1(7N*uSOo*mzyaX0-&p z%c*~(Xny$YFP*5L&jiA0xkA4&^B9iCQM-~Vs3PJ=)nsr@isWqBdN!7f7=~lL93JCV zn%CDj89=C}7J7sjVO1`3%KRNmObPrybh!XNkzsJ*sp@BWyWU^2ooK5=HbJt-7d1E&l=v z=0&B>k1@pqg$_S&$}w4PyH?*JctANkJ~#AINKa>6td5rjl1s%pfe1w6)(fN#(z7?f z24gir`!RT&D)tye1e>>*J3l?Vl1dte z{~On)rtAM})OrGd`(_NZN*~7hT?h0p!&*0nZ~pk+rw58TJz@{{v7^F;y0tvhzz{7j zWq<6SdeO!$uB((~@+l21Pk)BM{9WlOLQ?bx+>m>&q`r(4=#KLImf^=+ zXpK-r=cp)6R@j4ur=8wA56(!L&Ta6UXGwW`<`7VEDMj)cBEgW z1mGgSsVI#)W_tHEEs;X?1Ngd5os*T%mmEhMGH0>!n;Aj_?;N*RtLUjACI?CQQR8yd z)Mh%;m=5x&KDqERdFt)Kp?f(z>+uUCLDbC=qAkG+;XOb+gUUF_7k>KvR3ng>CP`Jy z^o1*RzH5c;WQxGcv}WCo5!=Z@NoU5FbV7DN&(4p56?`M{Pc31aWHn2e8ag|859!8a z4p{6s6N*lg#T)z_laHP{U5>IEJb?j&M#{2vT;BCnOBWub$!BJcjL38ipjmT(X{4CI z#I2t#B4hmcy`tFY)-=@FbIXoFGfC@Zt3UEyE?=+u8fvudSL+P$@El)017SK_f<(k} zCIcTgaIN5}$@v8r2gkgMBCRhQGA_ z9JWSd6d2)w0uv)${$v}4+#|pGRql(sZO=A(ev#6SMtbnQ9qC^9`GtVx5r3gAiBj3} zJ7Y5mb_6`$h3O9-XPP+S5TQ~ue5U`N|6^i)6KtC53g)N;3ju~Fm<)8bNVpLT6TOg! zeb)#NFtUKGQnLkS6Cisl%d^V@>dGKTi|dfi7&0uRC@k*$QANqPPOZGkhj(V-l*8AN z@^0VZWVH*6%7pcw!bLH-$m3w^7y@R)2~U}%4P%Un5MR!!t1(8e-u5aI`~&xO z5bFmFKEO-`0n!m=(fqYQGJ%Z`hON#&Z`19Su$YBi0Bw8JuDgJd%YrgWcqD7K=~!yO z-8oRXA@y&u&Wg&7LUpa+mfR4>4IRALBmqQl=yB&eyiKx)*8*SIe0Kj(vH#YQZ-DnS z_hrzf$zq$>(&I&a({U>IV~L+z?b)n7D%xw{>U@qhD%hL_T70Y27-~ziCcZ-3HVQ!N0H1B&u zoHDAS)s7j>+?745iIp~+W%)+wASYC@-W1S*Fqi;SexaR}<4-ox^`*&wu-J5XiOq7e zX5aGsBwP_rxb}G!KT;NtAp7E6kS=;K_Uw4nek>YTCpQ+e%LpyIl=aXt)0t6d0Q8t_ z75&`{;mq(vp~?+IVx`r0-v)vrU*h58;DPodEA`myZ$&RJFU|+IP34>mFFJC{L}zVE z?4|>W?Mc z(s}!yERMDXI~O)MuM`1&Yeg`xFwmbIvmhY-pc0*Y8KPIWjf0E{72cNG_WLCP{fsul zt0B~|7Tn7!(`Q21m&#(l29&F`gd`hpQF&ouiQc!En|Pgvo~V+Pt-s}D5lfpuhE6?<$(jZgRp1HG_wG^ex$rsXBwrZ#by7C7y}rD=Y*I2m6mFa(Ym^96KND1L(lOP5K_u z0q0m7RyLlNEOB1x#WkJ>_xLZ_Dq~@SN=TNo^#O zpp8kqkXC>l*b@tRu6NYWylF>A3Jf{88q2wsNp7C$<4xz!h|@(lx$Y~)Y0cUbQPWG> zI?;Ne=7(i&xDL{Oa6b!KvTXXLu-kv_lCFdR!8LB`gy{~lEqi*lTx>Bc`R75_yXYT^sJ z3ah`34qSEd?yt@T5~MyPfGr`iLBU8l#IhOwl5HxbK!rKLyvmDlozA$nM=H@W*uowbRP?n;v){w}zMeexw_k2=U&NttXBp8A=Nv?ublweADtZ z@J3Y&L>|dtI+Qys0kOUi>gkER~HrTR`**bZ|uF%T)?77yWqf{)W5l6D+yPVT9Y<)aT6#Obgrvq2Zh ztAQjWN^kBT|4DA{@ZqX?Y%Dfz#6!@ZSWJ90gIY)r@ic--upUytTno&@Kx|ZODhi3( z9FGldNVh7z;*=gKD{&1h64bk0-_fNVp4lz?7g}pDp%3OCJ0`D2vEi%I>H`xu;1B;g$QSY8!-YF;5ZX7BbC#c25Z$gQV>IpP zXpQt}d0Zp;k=CWsJ~~&70V18^w%jqCUQFDzuZ^XRAB(>Han=zF1f@R%ua!k6+Et6& z_7Jq4D!GUh$YF{;S5^NGoD}~APL_D6lHk60ohG`Uhzy7eIEI^$c82bYh%A-UM3MP+ zm!as}!}m}`!n3;doeyu|YQi;k!>@nyTH$`#r7b}6akZRXtUYekjgZK9!&;P$Q{ZZKMZx9~)i!U8aQRcHj;<5n9OCsmnRJ z;f9_nAF%JGKR)rxoE7cKm$-2%Zll50R8Oo>Xp=vI)+{fHlKir5;y(*_|7j|Dn)r9c z<(Y*Ck*LcucJ3v$fIH06X6Z2@I9jNDP)s?ZYD}Rbzy~PxGaBTJNJfu(k`?c+8MC-u zvhRrzm^XAPu2Q)&qmOQ@TDOm6NCDpT0I#T5yMRmxct`HCQ`*8@rk~+7RfYCZ1M7Y+ z0eM{cY2vLc}%lR^0BA<1DB|14Zzo!VNsJ_TPXt=CG60l(GXDa?60V-~wxhluvNidwX zDS!eg??=YhBtb~YtsxT46AnXZd3k%93XJ-+HkNml3AwpGhHKH+4wAwFjs(1WZGTrg!+%uK-KUOL5nXfOZ};MW4+^e?d3{yW{EL==DoQw(ghA zfh0Y`gd6QabIymSoU)koBW{mXlRe7%<=j)J2LvpvOLWZH%XG|o^$E{vQ#~*sipUy} zOeL#4jVMH?r4&-SGG$zU@NoICvL~%6w!0i(a$UapTFtR3wqlc;fI?tyV7-FGu0ZFD z{giuIm1Blo{nKnZanBX)f}wh3!1>nZNsWj6EEQ4uYHR3g+}0e8d8*#@s+utS0DAUv zQE_1~T5$p0s*;Gdec#Oy2Olx>1|t59wm-N&?@Xkx<_i6v%;pGN28od9+AgWqvpQT% zsP%I|OfDD@74+%uh_zr)%%dBSbc6|V=m^!4#s7Rm4PXl274|ocp0j}%d-|zxk zlin$>tQ4o$GwkUkx%zi-cOqDhd5`z0RtR2S1tScg{gz#dKj zU#@(%T24-Dkr#D)p^bHVO6@(fzY#o58@$?jy91~PT#;TW(Adpa^c+QcX5=(nW@Nv5Ma~wcf*rMg^?u6ma#m>MFirkU zYwS;uj|1VWn6t%0($Kp|PMMKmqU*($N|NbyBE6Rol9MNldmvRwy?ruR8Ai;%sLNj= zAK$BTTuZ@#dLNI@@iX&cQz^+(2ZDD!7>#F>56gGg1V0rDt=M(F>-I(=Ty?)wZ@tli z8#2IZ97oQRLj94$l_8K??BKN|iANcx1d8m95W%O-jfxP`f$Vnavnr)B4o>^*w_XXr zUH=e(+0TLjwOUaYk4!nW|AYMT@Wf^6yA$=O!6Qe7H+P56DK0N2n$jiM2PjkltMDdg zlykMwpi+4#B#>=ca$9Y18-_)$=!@*Wg>1qhYy8Skj0%4MGb#L$TqeNA~Ce0 zHkq&(oDMap2+&!JlJk$^4LN%87R;OM*Crta+D7ek)t!;yQL3nzSKZ-NQ+O7orB`ki z8C=-awx7#w-DvUP0||qdpY|(i#SMz{r%c|%+qo~QwUC&hj~YbHghOAgvlg!1EXT!w zlTTXeFpHVB=j-8eu4<6B0|rY+#xL%W@y>PDptEt3s#hJtgs*yq311!@Xx{d!U6b=r zgER-KSgw^&F!i&js1xz{jDnVRFYm7 zGqtn~5&&4ZIo+BL6umk%t#{x1KKCJdz9-XO5EYSURF9CxXE{Q?cgetqU#wcFLF|2j zXPWD?fAOzpL^Kl82V8-!OW|Z72~zR2+(lZ zE=621em!6fTuC!%lcDHRT!%Wd@eQeEy6-QD!(33P3)H~S=$bJcEmaG2(7m*|BET;`l zGb;b}@@*SI_ZBLgEaL?+ocJ>*Yf2`Q=W|q99(n%oKVpz?cr{USj%t|IwJ3BI0y?-$ zkv~|!N4cSaBo^N&K0Aq0xAp&Pk5Na5Xker3dCgPy{sB)(hG>zs0GeSHTCDJ*Hh60I zTpNsY@m{Y4YF>7AS?Bq3xK5&J_J?_N(W`4)4a)vx;4a{yPKyr{eRjdsI`;m{F)>#y z=aQyrfN~d3=4o8lTeEL5_8}eLGLWR7Q1L?y57dM?P-m#RY#q#XGPdp)&dSO}p z3LazAXk`S6F|~v9D$?}189k2%@Q}$@53(JRfeu^K7_4!n8%!?Un&eGNc3ck`CL#~r zo9mSG_+Vz-89$IQ=-5UdQ?WAn%C73TcVZ-pmGL_eFgEx=Yv*b3i7M=8Q?QdHw7K)T zIeo9L>g#uzJReK$jty1_3f%fJN$a`4KD>KCW}4!7kf&HM6Z+$j91J+x=B-$r3#1+{%X7usqot|m_`V;ErI)5?KRZd{B zzfP2F%8z=$z~lsiQ#%H-wYSkzFFgk3#P_CY@;+2hq0umSeeh&~=#5v>$PLayw$@xc z=7uuyUud`{)9@o)A(kLprR`URi7D#ETo)0kwq>{aq`HwH!xA(ynA7&y6?9^~eeL?) zl%|_YP}K^2a@_aEegb1^8v#)9y83cs@e812ldtvqU^NaJmwGiSF*=FA@&eu)Q@X)` zmqEg$%Mgp@J3+93Gl4vB%P@mcOLE+w?Br}ENig5DM^4*V{HaBMqss{g+oCpP<5lGh zC`W8NLSXg9M@tPhO@edfRGkzcxuQZ_UPbd)aYBVeuES}v^F+O#oY!EQ>{T)5qH0Ob zJJqeVV>snE(%eX|)D8IG$^K?yuNd@Q`K1D*VFIPp*-MQS*^l)!(Q3@oBM%~gowYH) zYkg%k>_wRs2$gGGpS>1l??>;qY^~ACcfiHR>&&c;7UtLA4_(p!K*Bx<6nV7)Iuh7! z0OWQ!Ah%N$vGXi%RjHgwuCN=vY#3ucsq{EQpnu9tugvdt)p{$X;YthhL1As$|yJ z)i%%Kxm8Z4T9iU+jhh(H4393k2|}msStC>x@edF#lcgjB<+&k7h>cB{83ZbyLg$PA zXvQCf^m2DUj}D_etui89OV)x|DXk&k`7wo58(_X;RI#+YuR7e{f`J;YS1%-4Wuo3? z=C(O8Y#hsVTi=Ta<(mvIy_#uxlsNtDB!789ss5<}l=F7es_VLZAv|mY8>|#~m zX#@WApkwkCx!a=Bc!aHXa%j@ zm$0oLxU21>O@TVHE`MbHvru3=kz~zV%gGCYOg^8fcmYdH)f0GMiPLa`4idb9-c4(p zlh{tLze?F9xCW?~sikaQCWu_LSDeoZdKu}}7I}R6k>h`7yKrk{%3}}xQ`0)iCIp#C z`=*~S2%lmd|E6aRa%6xnFp$E<%U>Rgo%LUwZ;4zojYSOeDNLsY@JSw@A8w-Ak{u@$ zH7^A{f?vREP2=CS&&duWPu{-TnyI&vZWyWj6KDU<#FtME5b7F^hGZKU8CD%Ew1}mn zsZD|TH{RR)1$hltz<8Yk3>hFC>J&8LGYN_^+yQnY%`LVWbZZ1@6*)Ezjo|?kJk~>b z78Zk*(TPa2h=eL*(}c&A!Yp^#Fc4_Vel$Wy)d*yhT-TDYs=>+iNc_ZgXN=B9cT{A@ zn$bxOPMxFmH#O(a+{P!@-7zA^GZMY?lucR+H=Kr|K&n3~EoOQPghjiiXQYPf1r2Va z#`Rmgw8;qN^3xvMW!#aj}hO?`N3 zf8iZ6qK_6jGIH#}#M`bJ&p9L+0A^8oA+I#Tp6+%3gRVfL#3wxEywecSL2z?^{RUk2 zwm0i0)XL{(U?4fJT5zM}?b_~oAVvMjGr9YPKx(&pIy!N3nByDNex>{LGKfc=NF~_2 z(})96_^Hm}aUSANV%zRUBrqIW?PJ5OcYGgZZ^DQu_{#3tCdYL}inIWyz&X+;;T9-V z_|RCCaaehkIniJUxU@zqXp`trA)mZFb%P(Yw`&01i%d>~v(Wpcax|Ov38=_mjdSF& zfbAXpAlP*Fje?%Pz%s64i{@w)b3_tk?3dreBAs#N>fmNdN_{~x*xFOpR0&ZCDlb&e z4F@F>V(U5@90O57abY?wn6&4!8>cTqUj4eb2c%Bst`1UMqlNctHf4i`)qz+xn(B8h z2RXXf)IZAZqs$0=R%e>57_wybY!ir$vR^T#0ux2KqOq11vT!*Mpae5)OTGE|P+i6= zC6)y18X92dAR~a=QA6rNk3VY$B)D8ru&1Efj=UjzH?e}WP?q+K~WAm$KTc{g`m z<&{2jYuXJdYD=dqRt1RzjfkMSvH-F1MTmh1%u~K0rVu~}t^v6PN2}g1#av*>m(D!2 zpy&nlV@OCj+G>!&RNc~s`^`a!)YUlPFv!n=Vi^vzS2~{Z`mTfz`a_X}ix46q>uBor z_Jy_@9cH=$e1?Ba1P*N`MP=@r9~-ar{@ulB#G|+dOad+{^92Tyc6_jV*Ps7L$bNkA zw;)6ErW{;{S|rUe3Kd(Zf5nmNP9wXm)t&*nq$ldCCr`IJqyz}l`ikf%I<=#5nf72S z*Zek`oD`k%)%ASv)eGDB$$hMj!}tAeaqz#MK5!M9fhqr2*3hy4p|sSA$iV1-pbeKD zCO_QxkG!GhZ8mik4i+O1&*xl-DpogCi|5j~IZaL=@<=5iT=?eQAQgE-nTg;Zsg%Q} zNCAY7T$qHrY5RXQGI*!r*7_QExC*!2eKVk#j*^;2s{aDW5!b8ZmV9S2F%)9?3~4Cu zv}apNl5jnO(U(v7kFX0Fw!gtKj|$@7G+`#evLL6$@*5u8ED^M87XF;jbzLfQBQob* ziqUcY^ZVq11WXJ&Kl7XYSlA4rspEQ1NXczY?`^Bci5?>YVTC-x+8>X;pqNuszC=X; zxqig)AkQfW3BX;Q3%t3> z1G0iJSD$yq$|rfg3>K^lG#-`4AfQBU;)Wk5uUp-475t1CkJw#oR4B}X7$H5a*dHi` zsH-BLGD6o$y}pJDmgwG9A%q2%(M7O>eujgNT@hlhP%&<6r!Q`w3tbK9-4Mo)5cRaW z(m%@2wSkiN@5IUnwv)(up{+FFZ2t?z;vcool+S;kpsqkO2`%lMx`B`$_3h*MP@$t- z{qdhs(fh#ApFI>*)eYtnt76>3GCdsrQ_>ZoV92vvE`{~mV`9l?

tNwz(XxMC;Qj*@`eeCsIZ}{nvXwi8Q9ohcpDd>;v->U;l%=S9J}yBD7=`BT z5Oq^n>w|hqBCAUVYH7M!{m}yV)%W(};pe+(2U#9%o7x@$pb5~_UzzEO70QgsA1Q0G z{Ug6V_x{sWA(!?EI{`&7h@O;y!zEkANC@e|P=tz>vL=sKWo%ubbqsFNr~xyt!Xur{u(BFrbc&aVx8Ez0PTW%tv+V}Xt}kT3E<`= zl)DD1NS8T~9slx^Pt3 z1~p+Fqs=wHEF7*eNr)`5{Ccq1_zil^uSx(k{DMh;N96wXlscDWZh9RT`iQhZdOd0z zO8`3mWFOtm^~Y%Wm0cwG@Soz0p&|eO5aRzQLx}&kn%XAQzrOhY3!Bydw{iO?)ENB# zD%5x>?X|^FG42s_C^dM$$Kpl3PQ7l0%|7M^{zvCq0W$Ptd_UyB+@q&^*{=9ND1GJL zGs0~8XV1QDEIy`Uxu-`KZc%(_wyjAl_g!*uQk-%x*WN8XS9 z-pwB}|Medx#vJ|JN_E~M@39UDow;u}`hGR>fw03GaAmTXE<$I>-e=KJQB3P%tNUq7 zd-zU@I#g7Hy01_YP0fffr@`hyQ-&8x*9+{XytX=woS;>x_&Qyo9Zts|0?&vGjf#Tw z$lJg@6s7Rp0>5D~&Rbl* zFCPYR_IlC)cb>Hl!VYpNJ$TObXGik)$rT?`#Op-o+DDs=H-@fEb4i<+@I1SxkzXg3 zE!9F=skQeRM1mfrt@17>4)oh8(CfWV46bWE_+Yx|I&v#ERga32nXMJqn~=`wyHr@< za?9WCEu+?XU5ZbN1Vi&3K7Iu!hDz18l5vyTTq%u++&0{q^dcWD* z#!<1fM(vW{lnSB{nfp+_Id1OZrT)jKu;F!+l1piOD)HvEIQn3a6BXsQ(XJOS)s(JN zu4#-0)WadT-ji75U47sCY*vLnXPa)XB(u_4F{S_mWI2tq7ZHpUEak%($$xSTO%00d zKt;L|j6N)HZH9@4yTjDZegrop*|1v}`qgXPziqC)ZIao}c)xsEpXtdv z18Wn^Fr8P0M7{fd?b%xR{Kgm~d$Ha0_07`Ma~sB?Ex*9p$(naP>u&QN<`w1Eqh)Q3 zzCXM%6Nzr`-<P6HJbnq0>;XE>N>|t)Vq2%qIy<5Ja{y4_TgzH z-4~t4l5=s$eT=dYG1Bn;IZ@SEXhCBj5kW;1SfT=0vDMnz?730BQc(u1&?=esX_MSs z>*=d&XL~mleM5oC)m?l+GlwUpsA_%UpqsysXDRd}-YDFffUycGdHL(EEjqi6Qe7kT zPmRglt9!UAUEf58rxiyNrYkj9T_w76Uke+pqk27lnEAlJ=# z1xDLZ-*vP&cXtRIJz7EivDoLDS8GrTt(j|7_@G~P=U}RG2 zsw!6v+mGM#BGK-a+U4jLLyj!zujsnAoQ(Nw&!9H)N`sGUx8tXDg-&ml=3rXO6^aDw zbe4ussJ-ww@7(;d@W5WFPA%@8XH`7MDiZ76!FKq=SKS7@zYXH! z=@n-D1q#Gl-bm`l%{pPY4Tf2dTb zyZBW)`BO80Vj)s`+^%M+qQYa6j*wW)LQZ@Er!jFduX2+MY~ZuRHgT8tNE&<0uQBd? z6X;`aki4wBY%pC}HdBYJxZL6VGy84QcE=@@Y!>7qA#5Pgi1ADBB9*HuTQwm9Gw^2z zrPf?z#VJ4t4#drwpgF+){+4k`Bf1kK&23H5Wm{b+?(L|F4+jZy_!{Oj5)!B9;wZ_p`UssY|1VSRkH0W4V`+d4cdnqrLYy_p}k@}^tr65k2) zSsN))hv*{qhF2M^yqb5|fWsE_R>becZFc4em#~A_E27+nz6Mo})}0JFl43d|jYlhN z%t&o&ZO4j{hVC=pnH_q{g(JG|Pv(ahDcyOij>*D-nGebSWkhjhRQhbM-jer(zC@v9 z67XfbNGI5BBo1so(0bCa;@&-8pqJO3btW(nL<-d2N5 zX?ymuTKUfMwxJGRHfx`UV4U<4rw~P{+VzO}dbeXVoo+O>;8b3!cKz<6TQ_Hf4T%Kq zW$jLO->ZYV-ycg`E0w0)+NL*qYkwy$)=@u5Jr&t*+~1s=SD^$LWXnWh>B$t>Zr%ZI z+1$;u?p#3P0u{Bnma}qL#3<$5q^qCm>tk?D6!*nH5C-*fM?--Nn8Mg6vC;2Om&!Vh z8(Y{6VN20-WAd8l#bn0p2-qj{C$!Fo(c)iZS3|N)tp(B2h%S@Z9RDB#f z`6*7q{-y_{-#KLm|0~`of7E4^HQ>Wit-(^|9*UtJ-c1?*BD(vBfj9EG^NLH!hUP*k zMZ0#jvDBG|4=Sk>nW(*0@R|GbDXm9KpvziHa3M_;-9r84=lvuPkInB?d#{rDm%o=5 zMxp)p%W1@#=ezT}=<1te{a75;_G7U9O-71lWLCUZ`&vMq56{ zCM}V<;wRm8i-!P5VC*nsJ=qEveXlLA;%O%=gZJ_Cj_SzK6vv69+h2U<&PgPuq?{)W zIcMC|Jro!nb)ai_4EgD6J*migN!)h!oyeVsKy18{;@w(xZ3nm9vq_=AB#KEr-!PvX zPCa`gz7_zTBn@J!8G66aQ&~>H2y^F{Mf>0v(v)3(6i%uXD8&a8Dc{jHboTxf+me&& z_FDWPJ|osN^qWeg)J#$R#WF>-E0);8yly?(QSt3_$7`##JIj4x_6*;D68xcaaX;qZ zGgtrh{MLmDqup=z6&gYMdYE$^NU(b;M5=~#}Cp;0iyqJb6aAQbyO zog4FNxN$v+w$`L^qm%!)q=Z+&@Dw$;{?MBQoW-dH^{mf+r@PltQEjl-7b>h&ck#n{ zg1I@7@ORBAa;IUDsmx1pY+Wzk2Y0$m~$#LGW&&!W8^wU(`%sZ0N$BbuGnm@_us{t9=F*Q@5n}@^p=UVHx zyq=8eZD9#hViLQU3E-?F&Yb39r>ztLwvG4u!I$Ds2~>_J^syAeDcS^WxKbN0 z9gT@k?w4epI0GKF!$cK&s$2>o(Lp@c(E4Q$K5MsTZ3%F(<%SsO@u z&MC3Qv>K^m4(h3r5_4N#n^DcW5Wxy5P5(9<71gaA5s2qIYV;OMHUV4FeqPnCfkiQi zF|-=8c&^WSGDUM_c!6u}-xD=I{~>>l_nSfL(xI#H{TmB-TOE)L@f!>J1b$=*;DjT6 z;4reqF=&JpV5I9*r4wcxyK*I)MP9#+f4#RIm_IXBhiKL=PtZ*+G_Pie=;>W*)OU54zo^qh)$^nJ~*G*_tmN@Dp{^leH` zWvY6$#=d7ty>}!%kZEOLxsFX7ipBDmz3Z28?gMhRM#Oe-2~UG}#eEYJ##HPZt~}M= z-TAH#)<=E$V0%K}t#3PSH>H{!x3*b7opc1V{4yf!bsy%~T+N7}p5=3xCaNq0Tpm(e zReULPA+YZi{bY)#r*o~9PV1Pa*ZvwzZ=rqX;>sa*xKT>!+^T|mF}I}fh;3M2F7^=5 zAq}GE&@3>mfXYCVI!Axu`0ZojnFl*4a&WnMs+V2C65F2z)pL6aes=0Ve1WW^LRY7; zl*`m8j`|6YeHxE`*_X(+)uyCP0~nKbSc-?J$TCfDO8VsKlOVo#<8z! zrWNH6PZBdWu)ll*r}tip0Dbb%N({@d>`P4i*|fIPnWNh4?<;}Nl z6G|&d9gi@2bx}u;6nr;KKb1vbwMY4ABZrFkg#oW)gQGnA zX!qsumDZafr%WcYzb>mcY8x;yIVoci;s>icjfv9Ur&T7!m8!FQ&qFipUfB1vxRj%)==RBPr2{eF6^S-Nd94-*4PCGp4LZUrETNU z-R*CoW_WS5+dNFGhTpz~Zh@*}n6=LP#d@jot3mu>`w;g&YDH%!E2kw#*1kfoDcH{! zy!$hr-BUC%U=;&ie0z2KWPV~@e3y`BPOd=VWf{ih(Zu4B!*8Q{v*zAENeXtq`w#Es zL3g`be!@W#%bTlCj5CZY{hV4<3`uJx0rbFL?(ch$<5b~LvOarnBD z^E&rE_j&5P?)!B=|CaRvzn|~*xvuwieax;ue|ZidxyHv7K?F0%{PRTLWf8E@L%<;^ z#G+bux{ZEmM7)fc804(nHJEG*x7Pl)tE33M4VdTga{$!gSyg|Fm`ZX|+!~5~A6D@3 zMNIon4c7B9dVXgsvd_UHkM5oS6v})Q&wq=@1%8lWw)A4fBcJjhp*~p|`tDk(wT5q^ zhvrQ8*rEzLtKQhMvcobjVsX~+yAVQyf=ywBy80W=PH_CDC7Zwuq$=IPXm6?}&L+vb z&BZXwEuT;vQfr74G^F163)3Sp?c34CAJEcYZJwkb0ElA6HM|P56hQnVClk24n}wm> zt&`;f9u@a{5EvP1K@C{EzK?`VhWG&MApu+HW#Ok&s(y3ba~`tUf>48HoAAZ4)oTGL zT=VfxPe%P-3dy~ZG`_tmnh0NhQhal;g`k;=33HqI29S7lj7TM{-5Re3P_D0H#^Z8Q zbn7vyu8-s!NtmwahaHLC!;V-O{Kj`i*ydq1?G0WnHdk^NeR~Cyu3Tz2-b%L{jG&BI%Vyd3^Ieo|hg(hJYqPq);jX(%EkAm0sf~ zaVUZH)6BPcFf1c_tRQU=P>;ZpD`9MxYi~@v3{j*UIxy@}GZ@+RSF2{u#NF28u3w)7 z9ViNLyluL%J7`Kl*h;7fQm>p#s0CyvM_O10dE#4y<5AqFdNqYG*YWVm(W0DXhTpqA zRaN@~x{EEz_E}+G;VTP#F0j_*S`Peiz|yCnFLCs;L$vIs%e3r|N=71LiZI3xT|S!8 zXpw`Hq&yVn?7RPMnB9E*ZysK&#m~d=O!*rR<|&+^u338rWu|uZce70LgI-9@JYm}s zAK474XTMdXA0Y5s1K$8YF(LwM!v z10&5%>+|Awpkg9YfzUq@(mc2JMXYuk6E40y_^-OxmU?LN6NKIDZn&(IRpw2Q^hV)= z=fp~}r(;xT?-feXl!Y=+$AP#2jrfiGv_q}Umqe!;m!2Vb9l*4+@UQiEIqsMcXY%B& zM!xwfz%|{nwGZfP%p#B7>1090H>w8SqHd?&K&b0T-x0JNORohxlbYmWd{5UV+P(|( z85^y1I6eN1FUx90>x!>3*jMp!bElZ^8Pqw8qXzK#Dd~$)hnS9%VC+<#qVFI4O!2dT z`pnQC&Sdr6%Bux~T&>uKvYWl#5;$JdHHaKlRzHGe@#uA|y z5-94X%-f=RRLM|7W-qiXE zw>2oHs)+`?N)&_^yiTjZg^H`{1)>(`bX-4s9UK!w&imfLD#`yKB`HMgsY{F zqQhZff`zus%N1S{>%peHId4LiPep>o>|HCzDrrb0oeI0OCAT+dubv{bqcz4=?2ki+f&N|!}AZESz7uVz|s`z zwjKKOTugY~b=sE=48@3%6I>`|(?A(_$`1siocrU8_)Hu?0u)Zitn*4Bp9LT|JKCLw zp2VwhJn7BPo(Ne5K|TDUmwb6n&*D|UP=9RF@uH0{Y!02j5FIpgj!t?RgD85F2{R}V zh1{>2tcbe4rok!V8;>c&{x$>vGg%{b)c7ri;9HKRNoMTfIcT`ZB!z=)&UoL4B%M)Z zDj4%`*G(Vc*u!yl&*KIaAJKs5NDVs)?F+ zB9;df%mr8^S8Ah1n8@qTomz(3khYI$-Y$a1uvDF96o_A0fA})d1(~|b$H+twHu6zF z1*yYAtvBR8H9a5EheK;RIfeg?ct`mCT$^3L2E{3BVL^?nUA^q5vR)}oR2-r#?<+gF zIp2vS7hOy4Oy84*o2+=n@}Fo*@c%{}5e|@&rThEeui=#&p13!i@vP$+R+xte^U9fT z=YMfLUNz8&QD!OUvwd7MyxUb`ZApibW$>?OTbqj|a>Re67uq?E@+XSd}5rlkJQxuvp&xhX_x* zj3&V#ym#32{O=d3M zBV3s!2oOiZq8&hx$6@K-9n4l5?L+^^&vvxe^QBEvcL+u%@#1zec890FbZsokG^x<- zmQ}m)!&(FL(*zCEurtiz3V#Rf!>LBe$2VA(?&UmF+Bkp#hoStG-BSNGoC~mq|W;b`}Ip>w`Qk_tLeF zPRYhS17{_m0vuZiY+_q<*!*ULrEWPegJzX4T%z*JAN;`SSb;05x5l?H8m8SchTs30 z1qnWpJpvHKDysLs@6%8IT%;7QW`|A^*=#k~jhVL2K-~waB9b5)S7Zk)b#+Ux$c9A9 zUFCr}UWb8pNunI6l2j`3PwY?AvPUF92ymN(ZcVS5W})MV{vieRJ-nO3tuG4(hIre+ z*IeBNUZVQC18zvnkipIm>Uq55yhyK>a&|w2+mQjU@CtnG4_=~lK-eDzcmAZZr&k&7 z7yG^u6#O@BOI2=d#_3I2_N5w!NfSRYI?P5$>bA48>wh})&GG`^ z_!JSheTCXGs)EZM4E)dC_U`w<<0a#{9R0Yat1*ybY(qwab^tOENm=#+6gaFm#Th>* z@Yz|{m6JP46C`b5*7&qz@DfG-}6<`-HYo0;+{8O`wJAu`=Mx0Xxaf3M{_dD&e z>{_49SGS%qXz}r%Q3-Qu?oWc4m#B2t-yXyR8SGfn-eV09?Qz3ZF1OY9RZkSCyO#ur zgp~qx?V)$8@CI_Z1syIw>3090i|PM@g(~_D03il+6b38$2Rcdd3hi4tSMTj|P2s?? zUbDxQtSO7|6nk7|-2%H79N66L-~#ePCp*$mfwOjIEGDVRn9Umee2@;oEZC7A?t5{} zreQ|o*Zf$kW}1w5fF5aPQV3%Pvy&DD+Tp-T=7tceT78$BaAo` z2T!1C4VKAW2`RT5?mb(9kr=>hX(Gv6-~}Y7oQ}I#x%7=3 z%-0{2CazW5p^uqtS$oS$wO*q_NeN@LKuuMeG=Q`fHRTpV&FbA?irS?-zPa7wmwd>v z5g4u<O>vVe`rv+g-l#@5*L8B8yA`!o*qwxIcK?179+xtKN^2eVd}77 z9sI3vVbT0y1LZdTO@{+~Bx)Sc@GJdISdV%K*XRC)R67Vv$_~?G3|1VCfI*Qkm&D_* zO$!&!c1U*@PN6a`qUyaCyO1|n|6+c)TeLgq1JggvB-!+?dHUTSB zk57ynt3xSUDpTCp8TtrxrtaYYG1e`Mv2EFT_ozZ?&5S*0{uP=!|0ppUy-Hsge$Q9A zw>JFT?YPr%E3H}vV2|LmI{dIgR($$ageS=j5-4f&>A~DeJ#^+$r29+7pcFT2_W&@} zxEWjBl7?wMuG`$*we3s+xyv2}kl!R;(w~A zML~v0$vdy%bUCs|h{@CP?2fGQex!#>1{(S&QdzON(YPi1Kt>aK{Pox}Hbxj5Y{ipfdRY^7a>jCi=<(fFUF z+R(Cld;^Tw%lpG^dv9?BS9U8pZO$aTF7riBGJYqU^<&Ppu4U?K-;Gl~6;{dFeM+}12urrme7_oBkxD}P5`t8IBEC!jXv*;F3 z!AyJK-{HQ{NMh!g8ZvTBH*Ei|XM}tH3wi%^QvX@t)pu(d{<4cmXu>9%(orc<-~{fH_oO` z#&tXcSAcmkq5~@}m6L@9v)UlYEC}~F1m@tL{=!(BNvWiKHou|ipr&{kUBR=?v=vl$-BEkc`|XA+5K_*7f^VF6GA}DP11@O9RN$2DtwHv{ z)6$x&p2~GWQHjQwD}IK_+LUJwtbz>iq?Y}UWozu9pxa*E;t$kKx+1Ms<76fH<#f)V zW-}2NtXj;EM_`%$s=@gqCRuOWj|a2}1{6wNUq7(J2~7&KRw%&ey7s$1I(+q`e`Ub4 z6081$0bhE`1ee838I|KP1iL)%%ZA`9;TT(AH&nd_--Akc!3_wa&e4~4a*h{E;IHY= zbeS&E?{)`$dP1a<+yVx%!T#13j52<_=(wG3btALTVYvMHPkYgub2cPZlpi(<$qIVw zzHN^5%((S#Jn2-#*s3ghx2gYEzQPGkExwSo?R&ZrrN61=2V_-shJqXP-9Gk|>SW0e z@jDzc`&~o;4ze7!2o8dov7YCQ&q!u9&`PO`_5Ftte#5s>?BQ^|wgRlXG|v3gBxMmA zF+p~SZO1RR-Hu)J%?POxE{|-9K%fc)eP3&11mMG4cEXgG1&19?GiMdR&yz$pI`d zVaCHv3i|XVja?6TtsCnXyPvt~Lar`UoB~J#3b9YkP!UfPCAF1)D8TlESnC+VZHdR}#-2v2^=z+%EP06V7ZP5;*nwZPhg zSG<|=!`>Iywj;l%E5ZG>+MZJoXpu5ke?tT{zx_DAoUxUSvQah3XV+pj*jQX^$BeAP(@Uv8 zy>TSxEavVst}SlTZwzypo8HM;C?5zxHR_rQSn7u$dpsp>B zKzWep4v`WzX0K3F%GgaLIgt^FM2*s#FrT3?>Y-BpjQr zKI3M@FWDd92(U+Qe*8v(;a3~bgu?36z`R^H;`L|z<`E$AXTUKevE?AhT6-$L%U#f@ z5ZtLb)J7SlXPmlG5ayphgM}Z8bxH)>8X&VXpw|Ea;0~rzF_Q|(7s+h?_8d0fgVFqg zQTxb&P?>wudGoN+C;F*Kv=are_-N7|?^b2Avaetp{S(LPngJBfujd)Q90$z)6sZP> zeELJ?+spYg^>yRf4bOJ1;{IE{uSI+TyfEv~tFWOGC=Bdp)qHw=5CnswlJ~mtFN#Z& z=o7okt^|yaFyAat@Bmb@%hKYqg4h6qU$!GW%L`nm3ZV2l3SaACF~y!^>6 zb@ko!4}x|ilv`%$4)*evm{r&dCCZfGaIE2>Gl-Ttu%PrtNYwvk_JuNPqt-m59qyVv ziVD8?UUsXLfqtS9_FYe5e^L5Z>=t_rH0he)AGfCYS+H%HVGX}CnpjNHMUHF(R5T`m z{#h_{kaALLMfJ>B`oKrh2BK3#9IPhLN7?eRJI;MK5ysw!iwc5$wD=8RLN@(ROo->V zG9fi#<%SI4EPd~|u?iiktBM+fH=Ru2x7D+oQSJ>1K%u(Q04UQtx0^O1G1ojuR|Esl zyvYh_zloWD<{Cd2@5>n)dC+SfUZpou5G{bNz6(itKR2}f&rKe06`RvtFOm1wgeAQV z4!l;f?LqCItz`|B(czo!%N z(EI-peGv+zVd-Idonuniyrr_aWVprmT!H(G#H(k?Blo%cr5}SJ*@nM~thvXFA(8hv zL5tm`4bymUjlqNTa(c^jb8SY&ZVMzUGLseLH_|60fXn3f2M;2&m5skvDcOzyy6UFj zvx$PA(D%X;hgpN{#Y@VK(3CafE+g$}r;d+cY*ZoO*FjeFL(kMsD(foT#YW|an{x){-Z&D_7+gI_hA3(2)Q+D^+96H(I%-0A?Z)-{X zm}BVOnG=gjAdDB32S~D7jBoJA`aOq4L!-H#c1w;|WkhYta#*o&V)!AI@!1gB!F=Wd zn#8#igQ(Xb>}JWpyzXxPjEk9pDxQ&QsT2Lu@iD4p{ki~(2GzuL1JP>BOu=A|7bZ{= z40*4M3NvfO@cx^Z1wav(XVjLWQa9DlvR??j|1Fr#LAp|0PBQ(2H`h)Z8Wrd{$@00*L73U% zZ5LFMp#DfI9tt#JVXS~%YYK~(ajJ%|)zees2dQR^yPIG^<9B{-5s#^Ci~k-jL;7%S zRS{rf8`;=0qbyj`F>-j#>5I)+IL<}722ct*`Ro3&wgP{jD&@xWBuzuq7nK=U# zQ&vTQq#iFGYpwr~xoa=0JL{_3mm~fs25dNRaMuCbNt-Q5wuEH30im5gU=m}=%)T8_ zJYFy;+{aEp>135Awv0VKxYv8LI*k>diOi%Jp6x*C)Bw=If48QZ#ILbqs19VDHQ!UX=*YI1@ z?VBB&x0voVZR8rA@k^LX*vUwHkMR?xHHz-R7!C*>alS6$vUl(xFB~C#q(#$j9BL_v zbC28lYD?fBl0aD7GqXq^0H1s6t&-1n-2A2jN-5W%He!sXPeb_D?cv?}>nrA)wxrsl zyzI2G?e^7-?U;Z81}|({UrVvKuxe$4%l9xdKdzTP`g_tt0^k}z?U`MG1-Qm&e7TAh zKHhhRSXx`3H-*Hub2Ky1D%!j0&4~??KB*LMLfLC+aaTOyk_SaDLv^Wv8PTa0m$k5J zKCPDwl26o!mDfWlQw4z&v37%9gD&2}H#N-S9Db!rhlNNi~ zf|x__1}#-z0i#wvj|A2Oie$45lUEDL^u;Hsf-iTp{foyNB&0J$EMV=G%or3^8k|Uo z>nvS`(i%)_Jhf+C^~xh=7vk1_&mEDu%ENduKD7j{QD>3zLLn!+pOs^$3R=CGR{-QBC{lI4u-39s>fK-d^S!?L|a|_J2p;2s7 zA~qQSnVtF34;bWQNI&9jqk)ff)?mOHi>L{)2%I)wJlS{rFE$2m6bm+y`Y$YoWoUyT z&BB&vS(SYI>R@o7QMgD$djS((FU+fEM+i){*CIz zzZs<5)e*HV#}wnneE*BL|w8m6tkh6eVwc>@L2K z?S-8&+z{Id@JN(K|N2_N)fUH@S@zhPt)>M2aE0~f8k0Nl!?J@>l3VVJ?0BP2v-yy} zQK%jIJDMJQea}7pVs*A#&M|fHsvSQP4Q41p)lK(hz4xI84vhoC)9D|KoD<$GRi6Qk z7*O%m172a?cyUC!@iaadimxF3oZy5e5!qoBf_(*YBC%k<^$)6oaI+_h^BMu}dP-b> z0gT@1kFx1rAh}`1DF|vAUhg>od?3a9XNKO;P;qYXRMQ`3$q)V zzOUMz{kz&01JtB4?uHBrSZuv7lxCH9$?RVFH2zX$s@Ak&Z80KQzB7+>A z7P+fpg)d_q33N&I(BtsWHT%nQ!sazJ)cIPVehu21ppcf~0dNq6#2VgM-1O>9Qon1{ zhaA&0=K$CJw;!?&)4v_F8H?Ti(;@=@qoJj8|Cj7&6KHTVUbnCbtT^~Sg0`-h-&cGZ z>Rp$vZhlIYay*^SEC8(7^?lIk-TYbSVnM+BQsx(Le1g#0)cNT2&LD=I%3sfjkBJ zN|R|}Fq|6T2;?7p_ssp(|7uyXzfSC9n7TtWVhF)=cH$XZpYCJN-7}{hkL2lxJ~!xj zTnrl$6#>Gge*bqm4J2FEC8lv86QCk}pm(@HpCo=gA9w}x@!)2iABYyeY$k=Z+8Kv8 zW9`a=rrY=d_0yX#FW3bLiwlYT;s+j+kM2Ms)ORH0ehdQW6U4%On+AhRw~!bjKwm!j zoo>M=gxbo|=9YeyW%dHm*}W@ObA~1^H$Sfz=B%_QljJk$HC#j7RFuPeSsx%g^tG5* zn7W~!5jFYS7%{TF*Td!p#n_lOvL)D5M!L1`?XiF?<)vtV4J3ig?t7-T`)ZUFAXhA=M=-v7VO-4Kk?PaMdR!RC|YD#A}Rc4AcX%k-@4bKT-g;n&1V zr=uUv|7$s7nX}v?1s+SRZMF$-rCE_LKNwRNpg%=hI)%-9L1`&)L1n@?{_0T)(|#9-fTkx$fOuW@hO zx=cIS*hN|*a6$&B-~v)ka&53__m^W9;tA=%kFdG!lz`hv&3SdaHn@9=)&pZ!Wu8)m z=^cuaLwWIu-WLZNt{fGA%OS!2eMEr3<{CE-!$Y_1nU_?6&J59@*rmqOrNZnWICkQ6 zpiH9>xQDLgE1FK?dhIIMVea0d{B9Rr2*#v1%Nc^~HZA<=hQe!%?%IZO{=@LC&_2`G z-n!}$Z;uh_#&~zxszywmFq6@*J?_wgf?m!G9(cxSP`p-Uy(?$23*`b^HX1WMuN^X9 zDFs!_mVn$6XD(soqpPqB0dG5o4v(&1RIn$Pvfw4SF?V=zfiwB-GS|Jl(l_k)sY6yv zGRBIpxuor}7J<=Ga@VxCdBS2P*4<~Hc2xI0ampPZ_c@Y#>&j<~rKBy3rJ%?+%R}Lj ze)F@9SRp-XBG&STx4J%Dl%sdUVlis@R~_m$xd>F9xBS#d#t>$CZW>HCS_o(G9`t3` zPfCq+O4943r{f9+xmt_hoQw#-?>mnisqXQVW!K-7uh8Dt1O8XYlGx&TkGz(ah_G)q zX7*EJb$LgtT?g*bKsqVLlbR_$QCWHSKm4n?M? zE0_DHr`3vUF;8v|mLX)upFmhJJ+Mny>V$`H5_L=Osd}oJTHmUkaV_tr1tr zaevkf#n<>dJehw8=Cz)Viw42Vmzn65CXC(`t~csN%?zrh|MSb<&)M}!i>WHy#NRFB z)$*LL-7Ff3K3G^8GU=KX#Lnviye-{+%gvdC z+4Z?O8J~1<6LHdy0>5Wm@d9Q4bO8}kfU5&rCdHf9L<}xnjpL|TsYT6^auU(j{jKT| zYmw-VF~A*T3mvU3^PI0~kj1QjoTnG|m#+?Q&rGZPO;2S>vRwU(+%lOt< z8noi6VxeQ|6z&3f1lPH5Qn^ArE*2H{dg)w2j@v03j+e$NF5!r{Kr^fSMs|*m2w(7V zYPY~Ztv2w8aM^lH!01badqBBtHR&lTAZsZdjja0 ziKb_u5a_6!RWt3J!cDK4wc1JGmQTMJz}2c_6P%!~ zKd=6=7b`r-)rv8-iU`4cvLG2;Ox**&$%+-kx}%#F8d7HV)`!M6s|PGC3k#<^%<9D_(zcWWVNPLX zA#P4Imb#mxcfm3N-G}K7CR0W$51H>d_YGaC=#kymOgsN*%9kw5L(tLL{-@t+AHR9| ze~W#5YODFUR1G;K1rynI1^w=i08l5}2wshoINSPKNMGt{T2z6%`KrD>i|s;7pthII z$;k*ZNWK6wADU9`N38It5<#5M7$yE~MO|(69Xo(zk@((stpuLK(bz5{dCpwfV_WEp zwzFEE)Zl@ z9x&E_N-u2%+PI6x-N=Lq+N}ulea9R#`Vw~lM6Riobthk(y)H~-l#FGlsq5e{vNF$y zcTQ)^sX`mIm8is@4~43WTXxKr`un$>O5e#)@m3+&V!aqCAw!kH!UqZ=l>Gt23dzdo zAhR2otqrfGpGLf6$mg}YZFP96;O>?3jWb*IstS9S+gcC$J=TvyTLei%;YTPB@0gzR z$k8b&o^HIS9;5##Drz}rp9SPMb^XbRnX!=iN|LZER?k;(rND=;GWS0HaFGR7wj$Ls z?S(gf6HW%VSXDx-Dmpsue!HUM;*+~EDZeXxbQ zT!rXI*Digr{GNrdI6O6KZjFE}{54$zm&e4{lr58pOZTO%7BV82#Br->n``Nvl?V@3 zFEP3h)qH-JifOl5b?0retwD)8>f*qXnB{9BFSUT^N)Wx0XyN^2SJG(5b`nrx!2WAH zxWKg)qsSyy_2rj^U|!Y&Lnzz;b|WgtlA8HA_VoS7F?a9Vr0b$MJb#A6aaprHi53$( z9LftuR|%7bm3B%atBuY-SCD6qrs|hLQ#_`ag;&GI6GS<8@BbH2u z%-(N5t>|58uuGBR6+A+5Sg{JcIN-jNXXGPa4z=hhEMI~j?YtgN(@MS`wTz~eEPnt+ z{*e4@-%R{bdS5^+F1lgp95t09;^t@$Hfji$A(aA7DXC8+~lv&@a@-*ub; z5^#uG(+HPvyYL(HzkYm@8OqcY_C+5nV|7P{RtY9M<*#j_{rG;HZFDjaN9fZz(KVI5 zj*wN(=RG9^zv-@uA+Lp+Qu;j}`kMLUszgi1mQ7FX-8n#7Oxo$$RO`g3y0)uv)9z1b z(JR!7J#~64Z;O>l5qtBFAFKJ%_GSFoDAjg{NAtHinXr@QPEX1g>uiK2ai^aVA;Nm8 zJ>qy-kGO3_I%pqJl7!9yq5rjz<*7NC*1uJ&SKgmTH+8)9ehn>~S=DqutEi1x(QHw?-tElN`A+3q&BcJz98@mNz!eyaZT%H6L zbu8jqo!mU*uSvD}su~GuaGzQA2&yK)u~#M+pc6p!nn{6?V~o*xw}jJir&J*r47ZV3 zW|C)5o?DU0+aibUqi~-e9`p(Cs`2X6UOjJkKv^63Fj6IB}z+Nj*0zZ z4`S>`RvKoK zSy4jK$NSNZHGI2tT|M2&D4$Nb;!Y)_0T9}yuM+LxHDBx(cN>X$T+fR7DCl~-9J+L7 z6Yor2J2yQE_SW?XMe_~|yY$#o^JP~m0dqs_@^<_hGXq^6|<#3-lE^jYmXfKIf*aj zbz*!-eiP6@Z1<_e+=_QUz}xL)!h&k)7ITErmGE(E439p(EArf-^U8CryyYyT>p+8Q zT9#)~Jzp~r>nywzpX8?=Mbi|@dL?z6r!Gcxc*c_Ci`*JEJY<;8ovRirrd-nrZhI&s zM-HZPE#YCOWz|#ihx!qgb@9dfrxVqqTxHBD40qmNUeGH#Bz$NY;``!vge-K{)F}$A zu3x4KDj~JgqUw@ikR|m+)80VYXn|x!L{q))O_k0D1dPy9-Kn!9Dm(T8gO-@S9xsSt z1wfBXyNfxe<8-JO2Y`6O@XqRsYi*2dAQ-=$MmIH(e(rcdtz6Aj%lPU#k@ORueG3DUpR-8oJD2 zdECBp`o2I9o4=fn=Wn6(hjw#U1O=gNY5jj5wg27a|DQY=wG0QqPqGORy+lVEW?^Oi`Rrv%UhJhK=)!sIauuwujWkl)9GF8oBx`8SQZO-y1DR>cGCODEAQ-V z|Dfy5-ItCclgTJz%~ef45Qx>Tssktb&%x%%&gd$XW8z3ssIMbxCm2RFVmV8 zk%eHqxPlb(xC%+1qXFz>!rmHflqIW0wiQUQ4Y?9X$C04XBSm}IIeu?HrJP(?J3IZL zH+=^Yit=a_4c&{Dl)kx~1$IG(9S({}e&|fzyB7#f2E>%G#!~s8ks+_UbDbIv0J053 zr+m$sp0JnoJm6csCBjLr{+|zaA(rBk4XJB9%2{_C*VckoK4@{D+IRP^^vzk6KBzKo z=v`@X*VKKYS8Uw&u=FYhFSiHaabS)a%dTI~CvaA#2)H>6)4XOXwrkjaqDx^3ChYCk zbJ!RTbfv37GYkCcYtXS6EwnEP29+o7RL=^%#x3&1RpdSGx1**1Tv&N+*xS2g|7R!H zNArC!&^z~0ybeN7g)~67 zp_@-E1F5q{12zG*qn;O^lXas72|HW)*|$qG;>lOS6JRg-9o{_@X}hjhg~4%+c!4a^ zzo=4sSB$&4OU>+W;VXqw}RmtT@**H0aT|F!Jp0eqaKpDs7 zRgSh&QYUAxO{@O7$9`iQNN;u@KYrZDv+3UP{dcnO9e;lB&QH5VmfO~!aQbvYF|?uP zNOaP_QVL$Zu=;ZJT>9(lr6%V}O=MZj<#1jEqHqq*3Qx%hDtT8U5My~LnJZ@*S~I7= zwlPSw+y9#Xh-1igW_lV2YgmJj{5lO_V>7jj<+Zn^ zZ_(ky!s}h{a>w*)L=87ZpI(fcXb@JKy}9Co1fJ^orN*i#6Pzq>@+`2O8$krpH~+F* z*uD|=kjI|;yDmI5OlExRnzah)owQRaOfITz+v7_T3SFVTxy`MKc|5ZD}WB-X~ zfca2uVfp~FtLw!E9c0Pa<;LNl1}FA|y@-Oc2lsOKF5b8LU`lCR{)a6<6|5t+D!A$N zqo%xV2HJlA8ejXxcH8p1HzD9xaSc1YhU%0~*&dsI^U+erxBZ+$O>uhHs8+zx_SW^b zmG$kzNY~7s&U0!`(ZO%7-pg(V_S;UL!Yj@E8W-U{_H6w^xt!qeU{W^odbU9>PB?k! z?yfl2%JkcJVeN$}<)!DAK2r&2gGQQdi7Uw#_#{2fPxhzaGCJYB@oPlhz&^x`Ecynj z2iQhdjHLfnvn*h}s*B$6inTON_)9LSsJTJCVDp+RF*#(e5^S;`?B93mCbxxi8J1!p z{Z;o@NJks7^h8_$(sCd5_$gq8T-TCM;<61XP~)aq@OZ=0c+zlt(XZ>qwmstdx&5YM z)s|^}g6iYuN92|NT;nuIC;CwQ2DMnivr*O3G*x-SXQM|e+9~rOb4c+|%-#Yne#KW@cBCgaDm+rym^{Qm z-+*DvsB-6nsNyNd%KbK)a0A?AocEVyZpcwjVD08Drcs3O#Z4$k@MOlBY;bNcrtI>* z;0V&liWLR-4ZB_XUe)~)e`1r+8+GbLdU8qUpO+G}7qop?(MADnXDzi{H0@ZGc+n&L zV`6z(!e|cuu*>}DJ$qLjRRdrhe0}*1b~64CrRZD9mB7MzlOa?vHc0>l0e?sbqc zd~(19-bh#i7;8TCw;~i2E@p#{NiVupFM86U$DVmAE;+me7CXFQSQ;Fo{aAbjGV_N- z;h>f>cI?DL<=jd0i~s7i(^s~F&bJhdS;Xa|(NU97}Xsxr@>>Jx42dJ^{YZy9g(G+c;MD!@lDb2knJVz{)be{zd%-(oXE- zFqV?+%U~X1+}~b2!aQFYOO;7;=(_IQUBn;u+1+SK?-sDpH{Me+6!j;oy+SIHi$k-C z1=zC#ACpe0{rJk=K-nq+hMtvUbsa_zIzl~N!o=?nz9qzm!iu0mSje>t=TI)D0TGM2 z>&0(}7m*jdd?K$hs?biCGP`DgBJ!FKG9_FxzTWZauM=@=uzhD1d}CEjVaKD@HuGfj zcGnk}Blh)w+&UGl2JAkgCFk3+Ce4GqZ0vTM|9_PSj}6VWR!LuX;%J{m(syn2>dHy6 zQMF(Va*z6T|NH}BBB#Su;KyWke*PNLl5p|*>ItcWAajG9QuGFvgq`NjFdjHuI!Pr z5q!2kS#9#UWIXBfOG}f6R37Hk;w$&1iUZO`y>R65Ew(Q^DuV1=bGH{?$kAKsBt-7D zVdXeP2nBOF?olimveK%GEO9lwpkQXaKi~*#c64z2$vN=N(FaGd1Fx<(4Q;x7qcz2M ztW(AL_{~wD3tqsY@0ywWkjp(U53>JKPz0Gs%BL6aUUzUq4Zbe8PJ7LN7HC#F^Sp5a zS`=W0zGE>vdf@%jNC@css5&EY;Zj^|*_4m`Rrjy9{(n+UKz~6W#M;cS*Ztz{oAiNb zi|uWRZxsPGiiFh|iD$u6vznYx&Ds#k&TI`Z#((D{#NM&w6PsYEY{KCiXS*J`PtR09 z50`jG4YoaYe0kAhy7Zacy>mmJaW)HW+a%O~ z5$?@UQ*BsbmySoyT$1=CRc_sPKP9APb&1k{eW-4yZd~0x_pYZ_6dkjnd|PVbjx#6W zBiSnO@hfHHd#+Nw+UlXx_{Ta%zVV;z1I{6WUyfV5PFzfl#}=@{JgS;F{Yc-(1?ww! zcb|>hXA4@o7k|v`DCFHh*bge}&u+EkU)WBwq?-jd1vEg*j?xtMZ3E7wsT($)cS)le znc%i1tIxe?-LvP*mV@b!_ukB|hpCUpsV(phXddo+bW>t7*qYz@^6`c}dv@YG%01nk zO2a}UU!6>jbjw?ujG!!5Rqv(>GSLXaQk(Y|_hm^hDK%m$Dk6Asm@GfJ*r6A3V7Z4c ze*tsbNvx8YjOFysZoOLmN*;s`4|l34!ItWZR5(WGYGe;VS0>GQ3zP3|be{UF@>RHV zZ^7x!KSryaF8|o`|1kHSQBAH}+bD{{V$nf*6Op1wiPEKrAP7hkAxH}Zl`dT%Bp`x7 zM4FT!y-06@bg2@$w9rv{4V@55Li--qe)oRA{hslj<^FNTI6oQTNAleFGv_t0dChsn zLPB;n+JVRbn6L?DWP~N*#L-bFD8gN@O$``=EOQ*g!EE@l5bQ1_`vTwTvH49{_-7!k zLVUzq14@g&Kn5mWmgbH^Tt0JYSFY*RV+oHaa!S!&Qt`v33rR_PuY<{M03qbQgMA9b z%*~TM4HC&K>z28D&ZV-K_`#e|d6mcfOm!a?b(2n!HFn$=Zw&M9*uocJ4Q|3sxi?s+ za@Zn@Y3w$?+x;Zx^LaeDx&cVFf5Qu;+uFyH*uw^ABiJ?*HH*0==V z>ds>rMw{a!ST}A*h!t})z+Po@thNiDR`wSwVuq#ZY!s1N>YT1^*N>=6cQxME^?f$H z{CfQQWEs8mCwN6m^|y9-N^t_w&hqMkVbl1XuW@4GucO6G-$a~hCc~GaR~f~u@%Jdf zAy%CM@~m*I_YE;Cp^MZ4qaEBVCrF0y4mqVXrQ0oH0l%|i zr5L{>@+PH*O%{Jy5lC4%aI^?nq21}j6MNW5ir1&jA8EQ?=VRwa4K(RyrFWXD_fz&? z#uakJ4(Ro?z;UgOC#Zd~jVaWt?dcx{^*zcIOgd?DH+oa&V^0-8w zFPI(px1hx*+@b@*%4e^p+VL$vO4i4eDT;HgkmnLMYKci9_8xUX&ukPQKoNe~JuImc zkExZOw9E%8BTs#57RDND<)=IeMfi7iF$G}HRgpWUdxdh1^>(IpN@-}TzXy<(WEK{G z+4Lz&t59HygZY9AIfBxq4qBL7{_=kN`tROvl_CGb`^`qN<)J~Oz$>yTNBtk1BJz^! zC9j{)Jw_46QU90sTibu;{kADT?VFJ%6umtN1rk_K!iCfOL(Ok2I(FfH+TC+Qf_IZ0 zG-W963z~ZH1Hnz+?^?qGN92>83{vu(uGWxcMxlu8(~hrOgCp#HNf-VeEU^gwifF7l z1Hk6LOXz{cHMpC;b%)_`5^X zj9E5A3*YIC1t`Y|Bjz_vUYA^=k`9H8wzV~9G9z|ESKo=xUg=O{Bvl8z z(IHUQhjh$IL=3P}I?-4-twsVh3bnjgtmu008j+=~P#Ukt{Ofx+x1sM%rK8(C&Ktph z|2tl!pR=yEq^nMK(I-n}SX~m`M6MUK3X5{G!rQKwi9(w-v^v}5#3uvWBgW-SK@^B* z9g>TD-v&5DZdJJ)jqCTs4?sNs01@z4$!O9N1*r3Gj3ZmMJLI4@!(0hJV;w1cJiaqB zM$|w-+)i_g4g)0eWqDm%24Wm75k7OP;o+rnpV7_3ZAgvka;%DlA7@m0e0>F^AzI_} zUyh2z#0#{Vc*(3So4+;7p3QFk3%!CJ#M57n2h==_qGtYDbYpM!lcz=~1yBReu3lEF z9QQQw(I{fkxyb$X&(sJ9|F2)_-M&3s9ovy3dM4avJ|4_PqrJ(KlCV*E6gw{ZsLw{H zq3gkwUHz>n*L^;LyMKBvYKhzmy!4#QSbUMsqADoCJ}+i;_RS|6^>7KP{pYt1qI=oL zSL@`gkiR^#|M52AB}utsR~^)*`u{d+Hfx0hK=tOe30*piT7j3TZrF;Mfha&YePN!E z>(`7FcAhVEur>^b$W*}{?beW89q}*1Z3FYe>}C=r%ihNHnvB~n@fR7kb4;jle;xkG zScxlp8z*vMY{y>l!sw?0I_)g7o=m_LdTgIx%^V$VaBCSrVF(ut8kx^*ni%G7(>R*n zgK`bN(yXaY<>~@bFQOq8T?@6Txu00G;kymnTvvaQVpMFwH^<^8Li5!ZoU-1G7 zHsO~1>k^!s#tzS%X3i8Ew&uuQ%r5mcOD=SL0zXQLjYyUMc(#b#7xR)kIr)Ew3xBycp35G2afVwndk@gj&S>Hjo;TBf8abL$@x{=*ml!{ z$oczDB*t(54eI$<6#2`-T~%KHek+;TwIhM3F#yVy z@dTA7sDd^Pf%BwPm!BLK5{TyUHEh|T-wQ%^p+uC23h6hGC`znzLi6;&-=O-{1vifM z`QRVJKyLC9imdZT&n;Y$^JYi3_MKyPpQ%J%>n9rzqX$8`CMULxF%c{dH<&~CpJ|2a zFMypTymxc|7P$TEC%l+V{$)w-Dlb+vchP)uEFy94kNL&W1yo}FT3&e7&WCauszf*% zsudU}1+oiDIN3tC1dLe7C_Gzl{KRj`Zn5x1R1G+XcH_uIn#8ud*G(=pJMcQD-(p_i z7hV3$7i_%obkb68Xz@v5%S8%M#r!y?ZVmdpq%SvuJ6l)Yo?7t_!RQDudXQ2c0L4#+ z3BTu)`;U9(@{)D+ncn^5X?7CJPUR|9MN&$P*{l||kt-}fUxxuSNGAB+v4kP3CJ2u8 z5+o-pMmSO&j_=F zi-wyEMXEyeo)`~UCCaa>%lklawRzF;e~?-vvd<3#>SvQvuJFX(_KKFHithS;ye zNAx)MvZ-~BG2gP@wyIHv35h9Nt2bRtKD!zr>Tbff{EShhgWb_yuJwuWg*t{r5As5b zVi!+Wn8VfAA$(+tL{K{d1tOq>^qqg5!yt2T!u;+vbukxPT!H?389!m_2&;Fv;Xg)h zs3Fj_-MhY9|4U3*`Sc%LuVyNbXMlHlCVW3QnDx4A!UfY-@=2BslsQWnA@o9+k?3-n zdySp=wfUZ8`|J4oz)z3?Nhs`8HWf=|^DkyIwF-h+3`$~+S=^u3Z?Kfb^@e*s9KK|0 zG-|8wG^_OtMY!oIr_+cYFda|e(>YIwtTFNt$7E|$X*)M|!Y)qD&(9 z;$Zh3)_@chLn^9Dzy08ZvfuLd{V&q3kDjzG9i4pgo>| z61icG7pwe?&WnMt@QHEl&2~AI%C&1I!P>NV)wDPGP5b#pF8ly49$<64FkVJ>OV$ob z&$1WSOYQM6h=i5h)c{Re(I6NWi1eFKe=vDM&ZjhbLy&jo&mKeosz009=V+hFY>}BD zS{#|u+s&*7f~oTqRb1kERAepl#u$B55OS?oFBsCGuRl-w8_?jNJYsXL6%dP$u=Q(Y zaJxOoaTk^PvoDB&faD4sgX75RI{+$pXvkRIms)?QCD%HrRbwQj(EJCBuY-TmF`e2Q z$a0=xGPmtWmyyongR3Q+lC!%lsyuf`+xD5ZuS%>%bq3Tyq56eJVP8Iq@#rT@4xo2h zG&>qWkzAe|twfM6q;0-U4y4A_e--lTy}G=NontUpx5>OE)_{d2m>Aj-;nM(HuxNtu zeX*<+Vykf{E=u?u4ODCnMC0Q`eu#D3>}dZEq61<@eLbrX8UJ*0nnfVPWa((zz#9og z6`CX9wQXgjS1&5!)uF{4j7N)eC97 zm*I14#?3}FoTr(zjXE91Da8SQw((=k6o5!E(!#?cLP~65zxzpKQ?_8HlBJr8M?wg( zQ^jw$1C$ERqfQUc8wuZdV!dzd`n#UvkG6iJEWdEa<%~6tEmkIVTkUv+O3rrM3)W_3sMKEm!%w%o%c`d%e)-J02wj1*))qE3bvDV08%U~$k38%)*(4;84WW*;vzC2rrk)VX4T=3fMdgC zc~)Y(%&Xw)1!SBFq9XW`sR`=y;uq=%ynyppHrf+sI3%pIgf|? zE?*-!5m?1fY2W`Ief9jq4ElcP1!`H3C5K28Rtayoo#WDVD&1JAO3b8IM9sK*Rgm9e zrV+PUp^QT87>waF4h!Me@sIV{40Lbm)>vinmc{V~smqtPL0Ngud~;U%Y% zJ+t1e$)nY}x2uK8j%&!Q5mGFb0m|Uk0aA*TY>mrxJexU!-EFWV-l%c-c{tfs=&i|u zrGoVbC7hWgTGN7>&#s9{uz7UxW3x)@%a)uFCuM>|lPm|7-vPrr2?7QmTqx$O+jN{H zjA^T%BMOg+J^Z2``LM@pL*uXnR&ZKNY)$w8*#>!{cRV&0yDIDtr@xqFemyxHJM=e_ zM$ofN5jO7(9s14u6iu6b!d*d#tM;$d`boI>hy!#BvHg5#=;vS-E-J?Fd2Yqw>TZSK z%o*N4b?QUvUGF3KRN|QAZ{VT655I`TNtUs8|N1M|w#vJq`8_w7L1hB%cZ#^wsS|;> z$aAqQyCuHrGkW0LHQ+LqX_=3z-l~1v!96M5K`sc{6+&w|qMy8aI)1@LPA|loUiq_D zGW_Lzj+5~MySIk*qGJWYlEVO7saXCr%{yh39j|Y}aB4fY1hsgDUziPq-Fb9DV9hv; zt8xvI8Ppg+`KUtwtjzgq{*w9WG)}M&AnVYx%2-sqSxN==e7uAOqY!zx?V{X6z8Z)g zuJ<|FN@6xlIdfT>thlYD>)%~yqphVR?xi;Ab7Twa4;1dR&)>q$KxWRLPT?Pz;S07C z;u^P)S6&e=i7hK5tIy}bb?6k@=J(O9LqC`yariHL^I>8+T!aE`=!SWKN1rVR^>S3KIQ;X zy1iau?>SZqJz7lBx~%P7>-;qPbWn-v5xZ1H{%&WzKJj3^G#_enS4g>)7bw892+xAT zp8BogK4S0M=x85DaP^l?8K>$jX)m6|HnPUfp4GMb`}>{$?9ei&h=GO4cEZ>W2}-KzSysP5iHW%* zRXaDn7n=irZxCtJaEYh5<{*6?H#=C+qUcmLM$e*l+N_p5|A)`c&k)>Vjo4b~5UFD! zywKZF_qJ4670#3Lm63Y5)KQPgTC=SPbWi|-V$^A%7tbzfrBf*+uUe}O&0s=t?RmaJ zg9h%UcvQ47#6VJS>l5)&Tf2qQ@Q}l%yn^r$ zlJUgr>oJ1JQEPdUfd4XP@sTD?=HqnrMwz{kP>HO-`N?@Z#$jkcUT=4oNjFE*w{I&> zye!x0Hz39APjNje&3f5Vm^=iC0(ztzEaUHl)wt6VBqYcA$(nS8+aDlkDoZsYSmoNE zYlX%s%1X!(K7=}}_Te$y-rpA(Np(4!zW0cMEC+`@-WKj$^c0Y=%QiGU2pzA3n?+8R zlf5Uq=)F2lSq}x6meN%eVYM(=OR~EX$CS&QY|r{4J;F?wi(Du#8`y0&EVj%fC^!XF zL&=58NcuoBLw^y3kTZi~gO`7u+s115m@u=)_j>M)wfblo-{H`DYu(ns8R{}asFV$FrweTQbA!X`Fk!?(R70}b*~`k)<+pp9$zI1u1-NV z$M1(3zUvY1c`)%Mo&D)emrxrrZr5k_THvu~(Oa>(UnYcj63G87>EawgN%9Z5zV({c9{>-`fktr>A1oo9_ zsbIo~ZNhlI0k-Sp&SODv1V_pw8C4!^LmuN@9N;p9JM8n~KPMs=hI$PIo+ORzeC5&K6*!Ap$S zr*Xgqo5V-kEd(R525H985!}y1%R4rSm9xhy-yhB>_?nnBTI<$%8J;@0P1oxGs$wX< z&TOTw%_R*+G3LBiugBpkcf~~LEg072!U8U<02haKsV3GSTovRf0oo~s&voU4@k}3hRu z8H;W8?&rC>@-f^$8^7RsBG+*OhmmHog4F%~K3oq}Sp8F_8+azl?gszZyqlw~>DAv< zBsY1M)syy6sp+VD?MmRQds0RlKV#0o7RLh=DZxYfWJ^|W$1Fg1r{tbP*=6okq|rBs z&U2W0eQGkV266Q#5mLG)9AhIpbM;ORum(ci)9g}&W)<_MmzMXrH;#4-S8{sx4)q1u zuM!;n_?rXZC;ln;k-d&-XA_qPlAp_YX%kQUBa7bU3mhvgg56In{T_5|$&>7^6Gkq1 z{^~8~2P-L_<8$D0ZKJO`rwDhy0`1LLO~NYjCoR^xQZ2+c{_Lr}hozI#e*Q)NytXMM zyL}Lcdg2P{w!ir1**V<+_$Cq z-@(%FcGIgfGM0Rq9M84KToK|-><|apIf~@ds{t$LB(F!Relrbdekr^a)U2^!d<;nP35M}Y6Wn;CH4^%-*3Y%6##Ca?%Y86^V zi1^H^tkVKwu1S)SLcZ&eiE@S05d)6IHO&=AsqT=amZ)lom$pHnzK{0)T3>olFsC0O z__AGl=bQ%VO}PN*6lFN0#Bw-SoW%D`o56hcrsLJbgBe!WmPVK#Y;9V}W!-b6&cF6x z0za~nDmbEi_(Jb~pp3LmT}4CgD3h1q9oqh}O=ON zfd7RKq+h^>JDbFo)VP^V)-JdZ10xk+MuLx%wP>ajAzw2L+|N80M)8O1(j%g$Dn4|p zclYk;O{MEN1qA*Euh@LKPY9ZL!mNto(4C@^o=F=8>M_yTRxmidMDce>-UJRp< zweL=t|4GapnF?!HP%UEVGaShLN|)gC#R*jZ7*( zl&hOYO#Q-4kcLR;$eJY6>iwfxRf?&e(v=ILQv^fW7@V-!wC`T!$Yz6J8eKY=e^qSR ze=okxaHD}%akK)dAk*}C&db78r858Q9`}o*u*&`?9A_6D7zv()SfuIR`W2nUmXPza zeRa9ywPxTnZ{QQ(0~OSeVkmE>r{-lr^Ak0Tuki3-i_@LPB#y%z>s?QIMZf^hXtx_~ z|8~)wzy|5;AJ^=AkyT$ZM!UFh0!axWskFX;2fOp-Fis7e!Tv;t4+Zu2Q6Br@kv-q>I6@_3(z z?olM7Z~1t8^N?k%iEd+>O7oVP1aHG!IAvjnjL-ZN7_@f_KmLvjo8j!#M8{oxz%4JN zuNC$iCvL&;i#K!0yre>{-&4W?yPAVo4Q)ZSN1URqIN#_+$V=*vEe)%- z{T1Ca7GEGC`x(=npDV#|YD~)vcuZQOj#drElsf?K(&6GQ=5^ygyuaTt0yCBsjNN-( zq53M;IMO`CYU=TjsYz`@M@|~tr7px)xMSeWyeBYOJeg;m;z-Ouwk3`m$ZT2bRf(-C zQ>1Y3&NQ95H1-CcoN-An53xNazAaTy6++B2A)-qf8k98UgG!CsXZ2ZshOG7>7O3vuflCco0f*#26V+Np?7=we4n zVv^6$)vneNEJs!K~gUj%&;CiKTRO1$`?fiN!+y z^z5tPdE?+VUz(6>V0ZAMbXAqY3BQiXxt7F&!FfhUvbxP`QTd5Fm*%R; zQk)LFYxDc2RTE;{!RhKUsq-v6Aw~o#ODGt6z-1yk@u6-%HcNCF856dT&vE{k73|mT z6=nRBm+c}w3x{w?;rq9kgLGy1tBTqy8RZOsp>_>?|Iq&vDH&1rA+gOSraiiPTF*2{P;;^H86U&dA@dSwc5E!F}$<%`OyzgjvQUu_@iy;FbnVfZ3Bza)dS@^u8t^Y#|ARYNIKXP``vAf#QiK3 zg!Ic_%=|qg)AlP|UsCUPAXW99bqtzy$h(Jf8*Go1X$#dF0$dU0Uj<7Q^Fm}rN3>S? zlFWwRX#r>L8gR77Uv$BiN$YQ+kIiJ%fQtnlb{2`7N9f=_8* zHvUSH`g*ORt6!TjQpW9_6(xCa4fMI#(lr`WW5&ae|MZE zmR#z-43>-qnkl|`l6VKE>Iu7CiIIL(R{@jkgcKp95Sz7>4tn=XMG3tpYf&H-GO&MJ zBS5uOoDM{qXoeBZfI+zrJ7DHt-Kg*(e}8GTy?zZ#ANjgYVp;&WM~n8 zauBi349TR}zGfe!d@bIXyjVbio;j|4^#1d-Rco){!d9Uic52Gl$L&Gc>J^59jvH@9 zv_(fPzo;QIBINyw!X(RE><2C+$FN1OUgQl7re$r=L-*igSRg~0ZlrFk zWoU+yw82w8rL;DxgaG&N_x#U(Z1rY6N|ums*c)RHG~w|+540QWYi+Otk2D^hR%h#H z{lF-}{mhALV5!482t;ZpT@_M}wfK9CCVJ}^n`NtH%5g}gCXP;LmBqoX;%2otB{73! z;P&A!q5}2TmluUg8f=I+1gKaP<>n2+A*5P5H9{cKB%n(_`R(d#mZ&?;1o(No$;=uo?}@tVh>LR5vylMveW zg7w-cV4GF!XZbvkS4=?&a%f>IsJZB?xrZyf>4&W=9GYVk9P&RWw*F~|JNEi%+(0(Z z(s)3ZF}yayQJUoc6t+~MVW;i4-`-(b4_jDafy9-tOUogi_Z;BCx=yy+H?pcrr!BMG z7tR8)Dzv5cYvFs*;Ga>!wCo9@Xt1+Oq$jMIAN46aMoe4j)yU7ArxTL8xzB%iNh%-X z2>vhTPAY7_jaT?>2jHXC!P3P;-PqAW>6hjo+Ntfd{+U~fO|rrLiSd4xTkk9GG`TG* z(3aRD*Kh8Uy1)1Y?oW-E;*p6}+!9fF!=XPVd@yBu z+mU!+qpeHMpVQC!QM5}57}(^|AP*Z7tm!{o9P@qORZ2Mec7E=|G-*^?@FPfOf zY$hjlZuYWQDQ*Ao;Ge~tN$vVue2DOv1>NChlK9_74okAS7l2Ov5-B-m-1Uz)2?zPl zV_G9ULBS&7T)u7I!4;)k3*#6DyZtD%*>}b<3r}RW4m-V?F-#}|_`JqZ1DzidWZdd- z%5$>dUG(K;1Wt+N~ccK*ik3)TA6T zkOBQsG_CafYLy^?CQ+jhWDQ326cDFV&=0c&GF0oPB={|M%i68Cv|>+ZO!BL^78SHu zvTwA8WcMrVKC1Ko5s?FT1_Y1vr-SmBK;E;j@zv{6IbzORH55t@6Ts66WHdF4nH;gN z^Ja`;PKokxTjC0Jf3`n-`8#CsaA_~{B}cMi6gm6wUVkcF0KwN(kbc)~;gi;ou9>@! zoa@>X*bgv|{rS@UV&bXAvcKN)d8ARX7VWm}>DpV=Wcnq}3gTHO9gXgsh^?x4N`IoKmhy0>(hm&=h$nkO#j zGWZieV~6L_AvnbI?^`FY*=k%^Z9xD{V;jsPA<>*&<5(fifCI5O?dVsR8w%c7XUY;- zMs_4`c-x63HNMk=6>u2ZtU)8|%)UDyMoE7dHq!7oBsq!csel>x80i_#7umsc)`+Jkz#gk#Vc3IWXd&b?_Xfc04%7v z%01$2tBA-PnSC(STIn(l-|Rz@%_v%H5>w&CmX-xU%(=Jib8Z>ivxao#$itcP>)~v- zWe~iy8Yc$a@u3)S|9J`lDB*<8mrlxJaxr(e0n$UZYx}ImMBNvtv9adTqD2f%P4h_n zVk(esO4yVHPJdQXpGiK<3P?1EEBS7ocnF;z`$Eo6E6$I0b9^x*(PZYqOEVPyQM%usrs($lRwtZ={8ti_c%nyh zlg>Ku7R_VZy$C=>gOxKw-aw2Bh>BQIJ7PmyL>G=QYrGjY;JSd9a17-5=Ng|jg4A_6 zrp5zJ4}SD!255t$^VX?M4M{?^Gr2fiRl3zV;KGjI$0pw8r%9b#L-xZIzL*j)f3OnD z`B%qF(OqC}q~h*vHQEXnPu5`0&cGH_1PaFxd~LuIir5%jVB}}-0Vb9pK<$t*rRk(Lrsum{qWyn=p^i2-1?R2BuH*LPqI)0SM2O6oZ9~9-jTtG@I9Sp zrfy5)gV?PT`zVml7lT$>b85}JU_YSGsC{1J=MH-@6OiMp=rOOlU%+6+4>NC#3OEsx zgu=MmxP}C?oqU958Qb(v)%Qrg1=QaN`_83syWy1RaP#ndnKx9-d3w6>X`%My-MyV= zuNCD#y9C`!JN97aYFW> z{qi0rTP5U)yx(H2TM!nF=SVtbXb(nefc`$@7&bn zcDlD2$r|my+=zJL$#H(>oP^0x=?x@ZIu$XN;XOs`N|Nz%!z~?%9sb^OT(UopB1-CD zaM)C&S)5vgy;gtGOp@Ym*^*CG<_WdlEBWe1va1rIpTK+a``^yiZ2bENtw*$1Jwb9J zOSqGF*Qg(#5T(H$zOPq*D!v8Z`Hf7l_E%)-{WF;1ljO$L8zJ05!q#P?2Q5ZCRy$=& zW9IlQ8bFWeVea(aTD^C2vM-y*LasyO9i+o{H`*J36PteEcIoQPNB%@K@l^sDb%m_Ir=pK?CgPdS z(tsVOta(>~{M8I)ic`LK7?%FhfM7_imGVf{)|1d0iscA2%#DR9u_!^l*&xa!!)H_}4ITzTQMXM{}TqbM3?Au*q+L1>9;|IV7Lq*RQs@yP4 z^WcF>xPdFajswxe-bXN26nSpIed){Z=xSI168JBjZ57A=LuZ@uf9q_&BL7`yo9lHe ziHNSV?J${OfT>P(CfE9({G~j*PeMiej^}C|oAVW_#H7MP{r4t2wttCj-4>aCOKdBK z1v`gQA$6#ablqQEKYiPvgNj-W3fMnBSOKd!<_Gf^Sndw~P^PFHQd^nYv&oh9aZ)8^ zJg@RGCC+~_#e}^4TJj^1py7jcYp zhuaNR#ryY8|5$0d+q5+w0e5>##yOpGZl4OdYSQ%eHn0D=T*E?vYgXZkeu`9z=f!r& z%3SbN?zv`Dp`Q~e*{AJVM_Apo(KNz!sWzOsRy%dzGH#kJMIUusqb$;&Mx zDb&r%SR<=kaFVtpsm8;L+4-n&%Z_>%e0w{X%NT08Hjn;fI)UdEQ=)mOr)5#s0nAbY zjcNC%ntyes#j0oM5;NczS|=#_&&&wx-<(C za>Kfe2ch}sz1Qd3k2J_c5?U5d3Wt%%nwQ2&C-QJMuoAR9OHaLV_}lG=dZR!eOmQA) z!sZ9d*-?u=Tyq(IXl(##hw@Am1%#IrGR7bEywtm<^mXZ))xBKflf^eaBf?643oT4` zHofcmq94?Eof3beOY^HB40uKMP8lh^ghs;cKELL@y!jRo&#NigFD*o=q6^3y9Zy)Z zP(-?p_(&0L1rT8zQ$+71?g`p7{UT81QvQ^Zqqsh(vfG>QN2fI^(KpjbvFdX<|17&j zuV8cH6Q)eNVaunnoUYiqMs!{n!11)z2Vcyj)d8koN1$5n^xNOZIfWqQZ5x(I}rO zFVn^?K-rx4583^1s#1w*0g1{;@64cJ>Y9p~;yH38loH^3dR^ZUIC{6Iex9MNc4u%ns&vSb&4eUNrYsMcWvx?rG$W~yXrQprGu4tE}EmQ`T3ahOV-P7s*57+y3~cdB@ciuJS{Sma|i zWjCupYVe^Ky##4!iVnVEc}))ix#kdnQ$0aA&)VDVuwjpZThqLQ*GMcVtw^7jv5L8Z zLbyO^Xg`K*=%YZc2{rRWK+Vw+KWfM#?Cz=Pi5Ei5>pScy%OE}KuSHnQcKPUKX7=&? zJwx)Z^9gWoy(b6=st!jzNv3lkn$J)lfsMT~= zR@`>eTC1ibc3O(|AX)fRn{HMFkPjvAcl>0*_h zjrMur1Poa&!XfaFJOA7TU^h4T%_{5dgIH90Sr+7ijz66`O17BZy&RcgO)VvvVs*2K z#GFFAF3_;lsHRS)L6WYym7bL6ly#vIpmw3(@~VSaO?GW5RUYknM`y9fNcfBhsc|;N zk#&ea@UahCyOO0iPrh`d;MH)j&-X>A(5N)J{CBX+zs~WV5(pqc^&4R-DpVh2zP~P> zBi#&J=qU+ngQH(R5N6pMm;EWhO27MDN0I@S0eovi!9k8rm#bN}4bEF%t zbj0UaNGVoQ$?2(ZYjbMT;%t}L-Z%GU+$0O0;4|qfw*Gtp$L~Gyu^=MK#27ltJityQ4tORpeXKOdiXVYZ~ z9DFEV`4Iow$va%PEf49sVN4pIEKwF3M(AE9le-S!v+$Z5^A{$kW7=9&n>MnpIh_SY z^Q_0lL^;1*YHaRVd5o};lGLXZ(|?2-?dW^)oHC2GAq(iHzM&Nu1#v3hg2u&&MZXZr z0%8HcIksge{p)r4jcjDo_A4+C)pq^=SL-~TS`TXtWcUaQ`wtZMv$xp((l-CF1tuXz z>R3&p+HE>7C@o*H_P#bB8YhXyDqGZzT$WOq+@?rkCw$X@KJqg+WBnw2ciGTj1#n6R z#N9#2S4{F;9cn|RG_*N^WIuWJF9iv+kYt+GW9w3%zxVTWC29)K{HbEbo_VdYFG6y0 z&{cu@`s|%guf^m^DaX45vLN`DF)VB07fHR08r8&}(&;>*-H`v}R{;94Ut=hxMW^;; zToqm=S|G;?=yO0@3u`mBdG#@d$9lr4NpNEE^OCie`#H!6YCi7Qs{EFRQc)wXD~ zzy7?0-Ur7{-&=YN*u>@qw0zVNmSoIFs(H6Z0L+rxnkLMc%+J~ zFIjrt*Br&`gk9B7IkWz4X!9aH_pj;D#u}-!g=|(8%6ICI%yr5_k&>WPt4$gEf#G37 z0bisDbydY%{$OV27B%4r^R;pTXjdFC&t)O2C_{Ls&T9na%PH^qM)P_oK#nu)k2mJ? zi|&k*vmHj-!bS6*wMLRf8D{_m5Zy~euUCwwN8&!Ls(%$_*(=ZDA?F!Rvieh8zr$oB z&u|9deLPy@QG%qu*0PL=H40Q#QtS90Zt6xVG#)Hz1f@;>Z4>gpauxo~Ut1BbK6JNp zPFALvK=V}@a#HzJY$Yp>FMjILGN#zYfJIA~%F6l6)Q*RbK!T>3p4YQqs`jII2Y;p! z)$cApj}dbkiBh2)dVFb3)AmWOwbSR&b^5gL5{^VHXFm;hhgIYI6o$7mnl&rawFAOzh0S6e) zaA(Cy{t_{g7(w&I9G#B|!PH!dWHiH(4^(tgV4$gU%aucMyZIxJB_?+vjTzYDuE%2M z;47Ym4_cxc)iZ8fFUcF+_6_W|r%$=&X(aB5d*aX@gr6U=M@U9&i?hOLa>bY+)lavf zc?sKr=8Bi6?G;YPeTrDDz`ruy|H$tD#`dqi`)k6H&HoyNoqHCO)8L4oK(jFqq`$p> zkX||u$c~4z48>a1g-aAx>*T#F>_6)!ZF-{L>MMPw&y~5)Eq|CHFS`{cH;*UzadYOT z#YoKi-ppe7)SHwM{j8Lqy`Q}H2$(y)NfFL&N zoTSvl8tNRkK!l|mjM=)hcEI#V%mC!JH8EBqHz|+-;y)XGRu_KI_~nI;_7@u+hr_H4 ztMHO7tDSUZ?BrW;&RlCqj`>%}!@@LgxhmUgNuk|$rlrn@TGmSimDtNbZ?wW=M{?k{ z^H!0^HCj#i&yEj5>PZ`HW=FHN*aI1KogbN2Z?7U$y#DRM{BM8Ulm5q8idMvm*6}>M ziRCPbscT#30%J@L*;n-Jm|a^ZlxNIcF0~Jxm<~l(@i0^)z2?}@&z^y=}y;5ptAo9JQTCB#*$Ow>)y$+ zVMgOi8tq@QOSo9(s*rnD+AwnbTC@Oc*x{!JZTMJ0CM$eQ*-E8fW`aHW+}?jTv#=n6oIf$o4(qL#$uEhB2Qqq^K345FZrVNC zUyrSuk-wt4xL3xGT5Gn0H<*j4G+rhe#q2LIa!~~a=k#WXT3@~$+HWM~O{*EY?=BRG>-uv{wB~j=E9lndjK6rXSwmIN5F2s+KrNgzI^OJu z%;20UZRsQRh&3;#mCPZ*_HZt9N;x0gvq?aZ?NlN<4iIirJ)QKeL#u;)g$Kt6JP*lf zI5lCmi|Z9uOEZ)Djp{XE5#Xe#_sR+lVb?JFD2qMGk&s z+jt&`9hl=2@kIqPknUmm7y*fOFb&s-2p*;A?Q^}!vEFUV&ZsJh7x+B0A4bJq*VDK& z)0+Bp==H z{5-nDWX6c>I=FPz9v&sZ-$1DWet%6#juc8)u(i_#denEe)kD#2saJX2En{QQ$)z;H6{w*OY3pDnot&1l(1&eyg$KgQRy}rA)bT{RG081yyBw#5%`v#BS6eK zv_{i9VzLicfW5`zt7>M~QyMl12_*l+c!x?hmDFxj_9RX)F66 zxp1+G#)Qh(oWD{L_-j8<73JScL72T4)U=hELsOh_c^!D1CJhM-Gh5tgn!Kgtz3Kwn z*cI%bK%@Zru-W>2cn_xi1|9#M$#K7DZELrGVu1b|8cnf)Iq^YdUm!io9WY)V21M-n zxze9jyf$9emIVJP!S-ncRKr^%~;_d5>WT>YkeIaZ!Q&TI^>q*i&*6`o;i4%_Hali;xLS3SA{@kv{8dRW zvPawte(rxzWEXdgzmsH7Mr!fs?yIc}7FcDU7~kDY;Us9_o?3%ceE&##kW^P`JyfT% zt2Bc|r;Ig8SDjVK?~$i7d;EA6!e$83Js8#ONw^YDPq==8`f}c@?Z#6kom}D7*b7!3 za&7NU5crTsH6CVl_I?XzlAJr=rV#{-$LvZkAGKwT4u1}o+SEb@{ux5Ur9rxvbH4RG zK<7TI^h=N9osPY`ua>MLZF+FsW0Q=6?@Jw1Qp?2Bu4ULTdr_IoS39Z0V5jXg`-rl} z;OjY$QuX#nDXzjszVj1i-lU!b9w%crcv7e}@yo|!nd~11qCyu{xzz^y2aqwj?CUGr zD(5;L-$KawZ@&AjIv|)C<3zpmmhXVwTq1iWJ z!$Fwj_-vLyu7cfYI(PC(LYU9mKzCQX9#5qkZg6&|iymd9v#!O5|3stR7#PvU^?{ep z^(R&0gG`!iZQ9Fffh5CP>S>cTIUB3MP6s;}u*l24BI1%Z4FniI{))b#OD!AB1_fN7 z-O6&_qhtxYnWbd>TbqDTip_tpt5@3G)ag%$FJ}IgB>~7j3)ul4+Po&)rsaa3!qGZf z>X#co_wOrGXPlL;`ufsNa*hhPdObMA?~`+58T=-Suy)JuZ>#|0_ks_9zS{d>Zw<*6 zb@Y4bJ9OHcpvd3*QK5nTjko0lj;2(6a9t{Xk&*PeL#kOC;U)K_L9#|E9KRfwN-GaS zqn9(gVpYe-iH%d_Se4OY$@!nn|#a=)4eM|bA#-vk%B$u4weJO?zI&J{g z(kKnFU#!6r-!j2l+gC8{y{0#c@%246+4(VoMhCz4CrNbDXN!#iCXDzg(JmDkc4+i) z$}b(O|Iz0RZ16hslhgeT4rwQ+72O6FF~|Cg>N9VF<4ybzj@MgVHjo~Wyg3*^P*P!; z;XJPI=utVq=31W(Dkl?_MmMtp)PTBFZ5|U!wf-QtMTo`eL_CVPa(_Nu)l65Av&iI234&B%8D_mMc3{(+Fgbm{^psT*ZoIVq>_Unr-Gk(! z&eDrm&Az4dARTy(l=BM*QvZoo;UChqwdzhTV!gRN`jDbOC=lGj^D+da~^FJL5;Ey@38S=q%Ha!<$Mz9f^$( z1?9b_RZBF>@1l=9ja|4VCX%5eRm%$IPU9YQe(nJ5VQEfZcY9YB@4~RQ?#6F)#9CNL zPlhyxa#bYaRgIspn^MLhG9#zhN@%hY>?LmLX|gfKa}OGEk^X_tES0D=4(w&;50=9n zm5Gjak`*eGJI=3`Te!B(yIcZctKf*WB|z8WH%e13+4RcNyw`zTj>MO30P=Y~j){1? zBA|GT*Ot%3O>~R*b-H8gBH>=F94R*_{#wUR=GBR6kMd<|nF_hh zKt|!w6-Mc*D}pbFi^1(4(2nMlcX4%ND3^1auZ=p~gZ*K_dLHu+Zm@gQp2n{iFsiJP z@xzW!`x9j)dsAgaxa8p16;4(Q+z9sOqrhR1!#Mx9>gWG1C5h3$Dsb1GfQ(Ca^XNsb z#g4-FcFsxc9`Czyz-*{~CWoggiSqx4xi=4LD(&`#+o3^Q28UK=aA?I=1`%TzgElRw zh+rdA7$QUrCO||C0wJKH3__r76_8nJnL-E%0R$32AgBxh$-q1lAYl$kAOXFb?)QA> z-dlA~^WOTZ?y1_vKcrIGdq2-w>o=_Rkb8ePnv*hhQs)q0A`xk({R(>fB4}cIe@WwL zO7|WG-pffyivei43H_x%$gcQKWlY|#i^kWMyWaG+CLKF~ihd@oD`VKxn0-tG1K3JE zaJOSl?Xk=-Fqqz}S=-uNWn`Rj;Jhj2ZAt#$gG*z&C%uB-{K_F3y*)=7?oRpk2Q1t_ z4DuN7N~FxZemOl=QmW!U)lPxMMeGg1L|=WYG19%X)OR3W%9cp@ml& z9mCcGgiFUe4$`Ks9U*ibz4z|okFqmmA%b7g?D=;7P}RLlVW3ZSy^iQ*p(IluYmuUd zyK8i3*fwOj1hiPv=ezOvjgOw)O!XO1_pkY&V}I1|h*bRXh^71eOX{I9*%n5}kX6e3dTg|v#~R9aS8w_XDNR`(V&mbYxAB6n#| zY}=_{3+>}gpzC#?rOe$!Y^i_cs{hHN&W0^p zaouqpN%sTwCny|q0t|1KtCE5)tWm`>07Wgup+%;kH*d?j1aI@b1$ajO!16U1Md{9kR_cMjs! zq7Fvier|WxaLq{p-uL1TGsW?e@s{J0vhM@Tq@k`oyP)2~ex1not45_S}oT*=e3$CN#zo z;b8^T&C&xYiYqeHr&ORehGqUs~ z_a}!t33}=w%Zm_=wCVP&a|DTfO+~~HMtJiEsXqp=LQdwo+bZbCwrz)E71~MelunI^ zy`}sZ<8=Y_x;C>#pvsKdM)eq7M&)q>?hBDPk8Sg zkx=y#s8*dxiXc536VAONO#ztH_SU1Hxg}d@wKV%(!0gCygNs8mYq{8 z%N~P@-yV^wjvKQgL_N-Mo0h6tyc9kgKu9SufSXzjCF%4=JS{P&B@E9a?rHjGRa{!zEmsA~_9Y{fe&rrql&A ziWglWU6pYbE_|-M=M}56E_u!{4S%_?Io(72@UMv(lednauVUVLdcEtoUXGbOofPc`ks^|S=G2is~YwJ~)B%LC6eg|@l8d?Bwr*Bmf zU7y2Z{7=*>!|llC+ z5oU4EM){04N+s>=_@S7)wj(l2Gg<=5Dh)*#ZB`FIJv(qeEB{*GaQ!9Cr&Ex#=$?#> zp5pgE(+}47$Xw2Qb``bT5ogw=Ju#rsJvdX`HYWT%+iD%6+ zrMwo$OUYFJG>r%!?007NZsW(uVIuYd4e?{OBx#KhEj8o78fZeo&ZKxNN0?#7U0#Mp z8hLYoKV{>6D$8`dwI=4pu$$^=s(QC)P6Gr^^vL8=fjSKOi*D%B=RNx@u&kx`?|N>I zReWJIhn6uN6?gLXHYAuHE;?c4CM{)Mv>a1`0w#E!T8!i(M?D!?!FliEO~{=J4jAPh zq7Ta$G?f5!&7NjbOOm40-p5Tj)aCt}k;hn{HFetFk` z48K0AzUlLC@4hvDq7Abv*NlE&<=@iuO`LC0nL4>-5fc6xc#JaYCV9#}(IODMcl=M; zW%H@6S~FE}qU<)myv&Oy6iW8Zcja8Y zqK~*jTnb49vIuPnQbM9fs2^FXivrSqZbnL=HTB@>mS!-Pi>+1Edv9UIk!r?LDPGcXoy+8%YG-BN2j#v zYPadA5A!Wz!)B+mKGZj$Yo;E7+oFC{ycsN>Mp!2HE1*k;hpgwk(6W~oQY#a>qHJ!Q zN~?2TLkxfQxHCnSXegWE>UTE*Ls(2#C+R(!a_IfR>q@!9@u(ISakfdpUDYgx|8it) zEZz{gCi3TsT=uDKJ+%8DE?w}$?<4k_kZuLtKz7#~RE#ccb*LqkB&{MBooOAcmP#XR z{%eQu&wn78A@{TdV)z|w+GJnL(s)Pl47iUtXmeZaG>gb|w;LmbqHo!I9v)60lqYF( z5oszMk6JToLKj^z%#HPGUK=XCQ*1;=wmO z6RJWh7)|=QuJ2^Ksyd5*VCUfQu;1&W&!eW~E7FOkb{c9_#5C$tsR<#0{;sqp3{BBQ_3*Nr5c#RI$G)COyNExO z>Of$bw<$GW6@YHJF<%{V;LCi^pcobU!x>ySB~G_5p#3^E!T8Ut11=yMlbKfXGrkH* z7##Vb(0`4fLz!8!j_?H!gzmaEEnYaPkgzK6j%)kP?GM7vg_Q6?tzyhdv9KXUJs-yzRJswI(Hon*h{VF&$Ykls)FbVl^t&Xqt5tt5 zztD7Nhl;ah=A z`t;#5y**3CNCoEddg1w@Nn~r9SuaI-Y))e0f52Z?1Wfd|aVE=Y=NxshAE9nz8vLVaDf7(A}G?Nu#sU)2`FzzN;HD)JC-ox$)RLPKXmuC1Ipa8Q?+ z+mJxk?GKzZ(a_xf%fWxR+h&? z4f2pzYmsrx3<~MiE0Cpj#P?co=&0DKDBmeFwbuoa5QeUSN@;YI6blM~NC!>=<}mIQ^QRebOf9jU+qEr{0 zXVjePLh|Q{&{5%U=JEC*rel=U5P`iL@oHXF{fAxlgyGp1Y})Lta8&r=8D?tg&-cfp zb-VJLb-wsp422i+7yR`Xn``i>=P6?zROR05Lk&z6&mS3={~BG}dixVLjF}3i4Ynw2 z?ZSr?f@nlSIVY57j-O_$>WwkE*m5J{B9gr}jUSmQ+`Z%B?ryKGn(Eq}dCNXLaJ_#}X8X!mTs}#n%%@5ev2gFHw$nLB-En7V(d?Eq3gdR0oq21e z7j9N}c=RQ+mfc!$TqtNja$9 z>OibKm>iv3%=HApKuGd9(mi|!Nii-@46&4LafiZtmBBgWC~O8g;8>!Ux>YOXeZJ!R zFlJQ>ZwyykpoT;H09o)xDK*kO_yPUHJRk0f?GGiDfO}K){l2A;sxAbBx(9);sGvmi z;Kb(pXkvsME19j#?ro?^tclnoHusLpF9~eR9L&1*Z`{P(o+)6asM)0)GLxm zAet{e9ARiTG&O{0Xd0{PRr1eE2RJQh;gFRDG*dmDM09eUNL35n_jah5w;j+6PDWmqIvV8OHqo(_MKPC~L&YaI?6XG{lJxxK z`P~1F=vCW>Ia2GZEah67QZq6D-mR=XW5zsZ;ASL50}nu)T$5 z!AvOv+esJ(P}E}ZM;O}2QTW|2%>|PTN-&&TEFSM*nwswz)b-~hXI#d_5urt3mW%j~ zl$A!y6P7AflA=i)o!!Io=3B(>;y_F3cmYtJIt%q3wSzISqr!vqU@h{@tl6>hZ_|7eX;Ijxk{QQYEqw_gUVq{J zRJK{=*m_=S?>?0z@EjE?f6xIZ>dlXsv634K8H0vYCf?4u+lb8M8s9iKU(hwLZG>uN zQXq+;Xo<4aL1dwr5n?Sk&6dBG2g(FrmN{7ZkD2pdAGiVA<8Q01E)v#@LdWb9^=Hg8>_yDX&rFlB z0d~D~i1C%zIlWKNZgBgt2aohHcK&x8o#k}2mH^m-Oj^Yi%}r0&HHqtM zm%g;<3^mI3-{Wg17w!(S-e<5-CzxHGtf~k#jr#1E~K{^6Yf@Nhz`480Tj7hQO!3R^Pb8r=SEkz5=4-XseEdo zzMnifb}4ogPWjYZC?3z1b9F$-%CAVEJjR{G5^ied=hxX4R@Ug;Gqkehj@-eP{JAXbD+oQoCgut<6>ExqUk4B&9Ont zfSju@4v+6kK;>oze!0rjr7Zs@S$w}D~d*tz$UlM=7? zdTC#8X^l`@>`0SBA3VXd@L%8uZRjxx}^ z=687>J$=;fL6RQwz-&yZNyA|2RD4yz>&VG&;f#n==t2Jt#xHHv%9U~fk!$^l0y{FY z%-&f1(*Yv%PZ$w1*neHlT7wj_G!wj#;Po28tn$($BWLVIl*lv%L!=WBUug{8-fXZX zsY-LMW83=++xD>RVk4ixbV0${jnRntHN(|E$NH424UR9GnfcESzK^+=zR%#sKvm#Z zmv$v7^|NIFB(51)d!pMOU>tDOaCIe6oUe(G*e~O>34pbMvF7#yMMhBe_96VFGgzTP zN)B{G4brif09}LRu)<kADFp-$SMd3YWO`jf^`IK+p{K}+aZfq|1F5{1RM~wh< zLV+g26(uw9uD2KA^X_nmuaA2Jtyrx3v0*J_A4d!og4pa=nFU821j`;w{-;vLd$5DA zptBQ=NLnvubw@$rn2!1kIjg)w?r`$tVc2?#^ifFYr>1^{WSGg0I~#srpA*<5c``uW zj#nq(^`#C5-Eyh;_7xT8ZN}6sanmgR_Ekbwa38L{e;?;%>&bS$ptOmqq&Tgv5tuh- zgIW3r3(bKN$F#^!MardDWhH~K zoQk105JuIEG1I24pYur8~VTgEALOU%9HOcmx;4I<3;mzqUL>yWu>t_NWO zD>BCxQW@RNrph>?9(j2x0BMpv$Mnqi5}2~&OHS%;p!1*5K&{*Q<>mR9w?TnFe_Ck# zz9CgsP8l+}u(B_;&$^<2&^@&CTkGs^vC%@khccIE;KPPGo4_v(8+a@<`?0w!bJRxG zRB`M)oLSk-WrzJvG~Yem>S8y0Jzl-h**=!e^<}bZ!bk{uDZ0>*>~wdzv5HG&5$q8# zp_oFQBf5C;MhJiG+agcEsQ+2RiMD25*A~cZzu~-sVTP>#jGq*;2A%GLNN6)5w=#mgWty3x1!`g4hZ@4{u;V3~y7S3^^Z}F0|6TF+%1FrYI!=S3y5!FOi8rBCd2qPUq;|-&f zkaC$VuEgmvTs)34(~{L_PZEGHpGqtCP5tJq9=6E#Ui=hQQL{SZ|6q6;k>Q(JyU4=b zg~{xynNHL1``Unjhy}yu31zwi7<6BiuS;gid;)|UEsSJmvWA@$uAsk-4$O{NsuM;! z&1O2RXV*rEN-_~9{F&0(N_c|$*hWmRo{Q8iv$KJ`R>O>s@T*+VwFJ{;rX@#WO3dxt z(ojsR)}h`QEH$!`H~)d{9v&b|T%a5A8G#=bn+v10`v7<5^I2Ld8g{g&c%&|{UFE7q z)UOUlqrSsb41Rq}%et@`pjF3~ei(Cp;}r6{r#?ib&IRYun@VT6)g&WNT8Xeg03w-P zbWE$yNK+7KNrqDii3S92FoYQCDgcNKWbfz)*8@*lc?HtcXm6j z%ef(Sznm`}A_|qP$yUUpHM{%3AAWC8p+n%I)gKbIU7~DoCOwhPPXfpHM1de%K0ud$ z&vYeDYVWAI^r)%tP|(=c2zglLtQ8^hsOr68Ss9t5r+)We^S4YuCk|`xqsx>?)K|DB zk#i~Z{!_y2Z@|WZ51dlGTOT|*+|J%2t$OO~9N=s`^|9XNCs)=YHZwhFSM$DYNygNm zgr&|Ui`dxq@UaEq?-9*IO)6R$L3jDd#xot}w4rFJ9Jc&7$fojCC~kK$U^N4P@MPfd zd6dj4n(FmCBq^ZS<;1bW#%o&P&a9DCg8$Oo>@`trXoe#;QW=P6$%xl*XS0_)@)XLa zKnhPl;)(ChIJYd>7DA*2IIes6E5FO;amtb3iMYa(U2goDIW5zETF)@l-l zECth!kQ39$I8%R5jKK%RMD(uEo7(6Xip!)bLHqr*A(p)S$Ka1`+pto{6dk&gVk{dRa65j*s!!^7CeRFrnTY zhP&6KJyS6hHajq1b4T^vgFdzUgFsV`zi?;ksVv#qS%q}tjKygb+J`RtO(tmUgYlp^QBU~l5XVeG`eijA1fx~oR`iEV7I^HHvb^ze)Ln7#;}8Ep7;ON@pxJ#u zseescL-lfUm7%FuB=29*oU&>J*} z_yLAnDG^SP`iC-tIfe~bChL4m$ZoV^<#eJkXPXSDBKIpTLLP~xEVRK>ZEzeu9(Y9i9)BeBYpHDpVPY9_~9f<)MvE zSZT~HO08I@-FG`9*7!C)$tk&C%YS2UDl7{dtO*cKWNkP937{awAMxk+ex>l(hf>eR zACmgDTzhrx5-bU~nH)k$s(W;Pr~0wQbM5szq7C+RyBr4lEf=I1`SkUtoLmb*l zG}}uNl0D{Q6YeeohV?Wf#oW;mKL(JB*ER4~I5H6RiF#(YC8@j%UoVc?&s!%qutM=X zcIdol{UbqdaxhFrmSHbKqBNFfrgLF@F*Hi8pRL@EiS{@FaJF*h4Cq}BdD$+OL^DZ5 z>$(aAOBOLB6-7{yd}es%SUc9C2{!i~8Zm6Auof}=e1Eel?xyj`3Y-QPvP?U^73$ll z4RPvR)N&4N+gZc(Xkq!zmW&YhVbVjtEY1S54>C0~q{>aSs>@*X*G{d0$=0cIey}Ru zVBkDXzI_a(au1jo_M*GiEqshP`)P##W1%TAbLisaOw0M0BXVYCl!-R9;{0%As-Fr3 zds;GMao?&Zaue)9X!>8kwQh?;t=xIVF+&j5P(&`GEtiPNj(GV$R(n8230@x4^#$)! z!0kuAxTDlqPo#*Z(LA<0D4t$m6jB`57FfD|{aXQ>1QHW`bls08@3_L;&A*j2(Uwn2 z%tmIInkxN}M_~Vcgw>3SQzs|AhepghL*ZQMPX!~z=x+i9WSPv|?spSjrea`kt3vesf5D1hA^OPd zff~*rBC{zM6z`W{`t@e@BBxK2r?maX!QqE<_#d%GQ^mQ0=V0UQB49~2=!H7mTo3sQ zXDOrmhh>k2QX{|@eFoQ-TfWjmO^%0e2KBplZa)B!<66BV(vea%(POC2;#Rh+fazHM zF*lyc-dCE#!LwDvC_#z7u+c(tuQM~gsuzC3k)JjnjJ%(i`GwuPA0j>T8L$da{IQj! zDlVZbrEBk`^r;^ofQr<9fwxl1X~ZLw_I$BZlzfPqzeA>_Bb-u1e?L#e0R*yS!TJET zU=M~hrrRQ|#b=9f?!HR6;`s`6Kc4cbJsmgs+Ov_4Alcc-q}NnMG}#078n z<^Pxkp#8&q*yI!VkV+ICy^Oxs-L*{=YCF2@VLO@!co)7M+yGbp9|1}Uz@1|{-?Dou z7qdo)s+tK6KiOT7vFQ(yxQ#6|UWb(YC!zL#=G)oo8yc<5{^f`tXsYpf5kH#DoJp8h zH-5_ltq+#s;m#Sa6Nt*|kU4cL`9#zEw-DSOn1r8}3UT5go~ni8;e>Vry+p}h#RsOP z4F2R%@1J7wGw`oeF<0R>D(thS1)#+tVPa-RLtsDL4cR?bT1JME;5LKyBAO)Gv}`Kp zjGSSzd#^im{F;r~y_LpKucLgB(z2O`e`TZLkx@IX!pW$Sbb9CI^o-LM!269Q2O?bk0{ix*8~oW1+!N72m0nH^Yxe7=A>*? zAQXSDdT7WP5bb<5Rl{4qfG?-rpHt}_iBjvG!wwT>WA6{@*D_7l@6j??bo8GARELPY z1HNT!${c2PgXP%B6vh0K#jmNo?9O#EW(| zkAHHMcAA!fV6jy0CnVaBtq+QoNf5HP6WNAH2xHaJM2O1o zWNAQotu8L2sXX}cES)plXdVimuRj-dVhE*r@f;xd*J}D*LHTqJ8n9wZRg*iu;|*AwT zHyGIYeynegU-j4=ZSsoi-{Ec05)JzqNdN3U>987)(UxtJ>bdvyJ3gC9vZ&-bWvQb% zgQ_E`#}q9VMqe4QUt|~yQ7!03^+ecXBX2a=O4@2P0 zlxAqc{1;O2Jt6D9O*#~g%o(K>$A(Ih5iseW3PA~O0GA(`Qt0;6ojDac(o#Lxsjp^r zI&eT1=46jyJd3IT*Dea+Y3H{~?R9S_Z?J*sXtQvi)m0U=uZ_tn3bnH} zG_&05s6#Pfwq8-E-8c2vWB#sf^b}8lW^Sm;tRMxF6bMPKrRj8JxjT*7Vyl1Puop2A$AqQc7p#w#n1YYTp6_&D|P` z8##-LQhTmK7FYa#kEj!X`+GC`YwrI3s1n^2w2`5G@AreK!H-sQtfdn&@mZn(y6F%E zH;aEfiL#Ma6P9JD7!E(c_ zj|W6cLlfkUAsQ4PTtn;JBAG9m(20muF-Qo849{nLWCQNUUCee=`V z4w)1PD~#67gU>qSKz4c=F4!E1Q7HWj`wv90gGQzoB6xi;#D?{bZ5d1d4cuqFW^eFJ z+59Zgff$vdAD_-ewN@4ATNZMF`Us108l&Ygn?saf<&$aop&Iuup4To%#t{gHa64rT z(}7|WS3+APRV}}30n3&T{6+64J*(?Mqz}d$3-f|4BY)s-3zgC=s{WcNoY_63!mHcH zuHd(uR;!%}-TJr*Vc;Gz{dQ5^Bmu0nU=fi|_Q*5)ragH^T&#HPhT(&S{!!3iKZ~~!;P1=K=@0>f=S@{9 z=byq_QinR?4c0n7Ew9Umk_Y@JO;6sf(Hrdtr<32%D()_vm16@eb*JA<}F#v#2t!NqROoB15ExGecBb2&~+*qaGYFf2$9 zNXIKr{Wxkls&bCWVWJKIC8L9Pq?B*q}=Lc zhBJxn_nxWQ?5h5?C&Y<-l=5L#;vA7jXC@nlmtjGG;U#!fYt(&?%u3FDhg7?4Yu@if zrjbFGLZl)f_KpQT*4^?!5I&A)_*KV&vR2K{xzZ#QBQnwkFY1aT!Zb8~J6Q%wpmX6u!1@Yj0Z9E-GpiS{e8!W|zSsZ|z|<5gSM z4iiOhGbjpzmQYl|1^QuH)2cYaSnM6$Qw<12&T~wLQPhz*du>CZR-w5P;Mk*eAKDZ& z{~Nvs#{T8KdHpGIWOT%g{#-3yv41ry!cZ$X5dw0xAInfwXaQdt#>yplDm5=I06C@XHv_VwJLPau!FN!Rl3L6K} zmI;T!8v?^@RyfN&JUHc>G7l6hB;R^Q*T=LwmCg8On1Tu+;Mn$2?*kJ|JnPoUM_%x3 zq%}J=ABR*W0_EK}30!^>``v3eGk^<3E{qfI?i4rU(DwPH%3zR?=)Zm*!dBsF;|wC+ zCQST-k{iOc?Sn50cc98pVcCsQy6=O0{*{O}6^;L5*MO7-uo`l|bVUF6GTzhzyv9vi z&x4u&XwLl)uUhq`8}(V+=}o~4FkMeM?cJo5eASYId=Lookz<4^V_lie*C!>|_es3* zw>zr{an^5mh5%UCrm`jPaSn4$G$ zZ{}z1f<+lIyQ)`uh>y2%ZZDP(b{KFB2Pm->3`|;MYWCEV6eNlmMrKUn_pa^R6dC_l z@WTBH{PM@!b~x!~;Ej(zMAsk{nwZJ#rIWMSXt_R^w=+#*`aZ;gIa-R8rRNW@RUxqf zPL%Wu_ZtUL6f?17EoZS!1Oai%ybtL7YV2}0cL*`y^0i)h8HDUq_sE-^VtVD253V+a^en-NMp5vPpX zU0M)!pr>9Z+rU_p;SH-+4X1kl0JLWL}-%1+#=8q~eYROSU^V z=CudY9Wyk^%TU%ue$?*WSK*)rlGArW_&pB1_+*^O30`nQQQT zl7;JEza9@=TIa$6RZ%b=hr+*had45uSvzd6!ndKi6&*6S1t-JMA6#KARF2q)Z-;3t z$bb}vK!OvEM6?1T#7I0l^G<`MEU`ru${BTcdF%u=q6&qs;{3xdkt^Sdnd{AzrDuENdD3cPBXowOk`a28(jU(3yn6$SCTI}Jhe2*bX z%d*gg5d}@c<%;uP^+65f1F!o2Nv%CJ_JWm0ZdqbzwXoIg*^-%DPa$HV?yUnQV%IoI zF0+1n*mGq`rDZk=l#{5AyNX9JC{QhOA+=e2C~)F!k{dN<+!{Re=+nQEvaSAi3yR^r zzbzq9=q#8dMcvB0b$81_ zkK2gq9vB>oD(RO_ zyfElmOY*2RQS4lp3%Tpsu4yW;KB0olD{^nu5Qd3N{aZwL0j_yywnPIIyzVL?s- z6cD0Dcx2K`z2%+UkSqTAeRM( zAA6ss15mSju;tm7!0UMUZzPayTXz8z#c+iAPJjsOF70L$5*B^>lzs6deT0NkQ2{yQ zAqcHae~Z6nCu(%&0FQqCHT+r^$=znq-5yn#kq^U=GipRV&BPLtWIsy8}7YmS%4P^Ux^T^imFG>g+JWENq2%1$K=Jdd_I9{4Is&H9P)Me&{W*&+Qdm8Lccg$l+1Hz;XoxneP9#|K4v{$ksE5(bo$z$8(Sp})7%i~Mm~yR76L+L$%| zfO#6qE7m#VJ$v4@R#@O4>cH%b@bW27oy`>k9R|csm=|{OME$Qf3L=xi)mrGQII^le ze`flV?Kw9}q-qJo9lo3gm=Ki#(p1^b?4pCL<+3so6}Nuf=dvA!GBnR#v)JheIk^c+ z=WqA#4bcuQz%=7r)*vq<8?>jH{l?=J={=V~3VddxMj&b4vTjo$8LovaYV}bYol)e{ z0yPY|`Fat@aEQ;C(=vNYBA*PE>wY-8HGX_7>M*k3 z2w8)4*WfLjCmm_$@~4o6Y=NPOLY7|)3D%%~`T%ywJ2anq49LGP0Y~e(L!18f!Y%*1 zLfUoq|Gh%`41Bq@ass{C>SJc##zqcmpS9f@*m-ArRsQ)MD3k^+Od(h#p2^k0I_F*> zB%~JrXbfqZis%-0y@8il=2}?AgWhI(1+Ljgklj%}Q6X;;v!A^yvU`ej$m;!l5SS#S z3)%Xft=ufs6S`)^M%Hf;ahcB$ul--yq1v}>A9I2;SQN;j(T}eOO#(k#<~q1U9Vyhy zy^x(Sf#2&$1pa7H$46iPN#5xF^yY7(o9|yHfE(2zK@DS+6+^5);lG>X}aHtg? z;gGf3<++%~!b8m;_QI9mbbS;LUv1e^uo#BM;T6%#a&L&uY+!iv7Te^fEE5@*7oR4?`L2`6nfZta@+P$Z$I+buA31PU_Bj^Z3oaF1eQJC zNDJ^p+BN8VuNR~*#gxoM!00#Te}SX5p}2c<0zwm_C(|fNPbfT<(@p`MEPS)S{-_GN zilvlYNbAAct!VLkQ^1k!1|@)^Y9y3V&I1EeSpiZ?XFbIdfyRj#`JkLzC;VipKUO3J z3o++DK>6LE@Q@?Guu$^m!>aXPE6Tm?MjfL#!vAWcBVmZW9E@?&Nz^L?+V$Gqk$KF_ zcjL}vbu}x>SH*ty$yMPy6T>rFlD0sC$SwttxO#HgjFl5Zsm?ExcdU#R%zDL&l_n#D zKh7u2k1gv*!jdo?Y%J^iBkEP6GT%Ode%b<$agtJSvNJ*zi&>%)0JG{ZlkG6xc!aIz zgJ+vY6_Sm1UZ9nt-?yRZ#zXTTOm=C~PT!(JmoOLKAg4#vhj93wSO`r35FSJ@4G1bq zOh^6wWADibZgzu63#T2Nh!89~2PU%TiK3g@SX|kP7N&Hd5%y$XzTV9)Br_z>aI8C@ zN-HE71vDZvUO%XEi~{+^L2-pii(c6FSD!`xQ9m*~3AD2#{ighge{&);NB;(TdM=T%|LRYUIutqk6i2i}#6hup^xb{u350UtaA-iI z^NjPH0FR1s>1%HFa6^{a`Ddh87hHu^U$i7DOKvc2CM?n)LC;JOviDFAXhY=ZCH5dz zc77O;!6|_bFo{!_2pk{CT?)O6ED@e{M`6>Ic?IQEwKr^gQz{l!K&1x^@uGNuCiCF% z=7TH*u)oHLEp|rA)&vcAwII9p~YD>?qZeq&8zx*V{ z#v7QTTn?wGGd%h}kSu4Z2uAed&~0`Ipu?b4Yy^Vx?Fk9?jySjzuy?EXI_4%KMuc^f z)M70Vz|ziNZ(X}yln|T&A{0iEE^F<`n>>hntL`vHDdH>>Xil>|5@e!t0OPb%9nh~@ zlrWL1?fUA=>qRC{R@}9e!Tl@b7eW*-=b|qrHiGE zLnYp}(0-JzojUV0(LMH_oj+E8_i%!K4i%W1Aen>D;9tK61Km+Uf=TNKkR~YVVIh}Bn z1N8mGxz-}x+60SK7&D#3z>vb$A$+mtH8+Z+ep)F}JR z17FeS-Y6(xja36DtV;v^op{u&hr88a{f_lRXJ`zk4Rz_J?ba6?(+4(n6=OF@9Fe?R zX!dsc2PL^X#~*q~uR|bzI(VbhGnvgZLoQ{sLb%y}{RCpLfD`QC2B)A+7sHfFbA%rz z?|V2SH!z(ii%}UyyoQoP6>^bb%an)qF?(&{N6?>xp0#5`DpRWFCAN(X;h-6mnqlJV z1?aq$DOQ)8w92|3n{gp7mM@ULzudXI^!@;$>0Lh|9|P=A0`%^Tvs2V*pxt)QrA?U- zHsUSN*9r7$h2Aj0wA@)-$ejEnXDKrm+EK5XXkwMATvXt16Bj$7a%{m=x&@k3s!(-- zYRbqWP=cwmxGazN^8u{A6;X*sp?3?ZQT}&XdG|>Kj4wRupi9r!xt;1mi^Ak(j_;sy33 z7$2~D6_7(i;2ns6o^0_qH3f_$IJUuaK7B2_F|UPl*Lw?Z@Q}3Vf3WvnVNI^xy0A{1 zV1a zLQM!s$bS9ST6?c`{omg6TPOdu5B4D(h;K69G45yF<j@#AQbe-;F6ZiS62$8XPWL7_u6c&svuIc(A7} zyaZ^#Ftp%b$P4&)67&C=hX0>w_@A4GfAL5|I01Cwv%|6wr%C`x9F6eGCMDTBxypfh)o6bA+f2vmOwE`lt|Hby3`VY8k+K8wFD=$vu z8#f1sOn`Q2c(xWA&tGYrhL41wT2tfNO&G=Gek&sX^%ggpLzc5JGpV^{G2-Uf#5JX7 zbKP2mHvDkec=m1p3gEex_!KmI`ioQ&1|zlX;FNa8L3jUB>1 zpuN6{0;XTB9Dv`{#+yN!gLU<$^{##AjMFYib<#QQ98}`jZBQ2yMYd+@RKkRUVe)I|jbEYz&(-|@$EAxD zKbDvKuOI%N{$Fgi4O&yj`E@w~ZK~pC`n`V@#6NEF{-xe&zTTD}>%CMEtDLZ;SnoXo zTZ5bUegv65*YdNhxnU44<8kX0vJ3+F7FKt7Te9MM__liMz&YgLypKa@YZwb6Xk++_mdL0kKX3zZuaDEfi6q{7<6EvfB95Mp3yNX?}bsS}lS$&8PF=CMzi{>86=c zWa#)NL@=RV!`RFbRccsGu>2z6{00+|o_Tlg<{EAYx+#IVTgXV6+CfwraEzM%h}+w9)d{$Ds+RZ3gPLLm9a2WEE^$`- z{A@^BJz+@0xi5J0pFn<5zwc(-f%G&by0tk)=c>YxEGz_vXo$ z1JtiXg!f1?oK|~)77?`=GP3Z(*m)Gi3W2Vc?1~V~nh5SSERZbrPm^D+TjADEAtqay zRMA?QuP2UYvT*0h&(1eOJB+AO@KpQnFq6%pfA^Z=5B!5Kdg#{c*6iK&iLJAMUJh#l zJm;JN*&<+ioE;Ekl)_2K1P)J%5p#9L126F&mN^zZ^_hCUr6d}y8QCMxf8kW) zy;OK_$4v*s)$F3=SKq^OU)zaq^|t)Q7p*D=Qsv8lw*48^rNAg*0aZ_w?`LQKir0MUR}nQ0xQN9b2Z!3~`kSth zrEo%r15SM;mPth2=08O0cLR|TKi{{DMmzEdSv>}U%k+(dF|rumh~-8wsnA7ZJj7%b0UO2&TKupx*o`O%nd-$|W$>G;Xj~N0Af;XMvY=mD zK)UB!0vOmgnHJ4Rmtkp<(5ku@IX?b`S926>H2h$3D+{tYH$y9nnqR0%ZC0a}t?|@5 zlP{+HFYVty)dz;|`*rdJjIL@DMw@r|ERPLop`#ufWIKm1Y%q2@k3 z^I0g=JF6tkYx0`B<&pFndPb)sZmsFdtsJNw(%W_cFv&E91$HFZ+nfSYVC0daf`NsK z4ILX8r`Yb_m^jfh0N9PAArv|v;ZePd5$!EUYluK+`ayO^9a*J&bIWgm-S^MshK5 zhH#Xjv%zJE&hq_m+=^gci16oiY*CCX`R+;vCt38>;`VBAAU$lR79uJ#G4hR?vWTig za;VI!C6$a#1mipKCq~YAjesa@T56a(<1)+9$wJ<;ZEz1R@M_`{Bh}>}C=` zXaTp#&MJ^OYlOI=@$E3m8h-7C4WPhI(!X!UZ^b=u0b*PbEEq1tuVE<`O{=0Y4hHls z)^A`Nf6Q{aqt;VvUGSSMGu#7*i1~gc>1$}lT4iZe@DQ3R=aEfXzuQ475pV~6gey+G zi-x>+dx)W;=X@*SSGH#q4-M7WDI&6?8ik`y>+RzM3J0ojyg(DJj^H5ciMeDUiVu&P z^z$0afO~68`bpsCrVagwGCQW6?Fwo6E)}d3WR>lPs?8dO zoY}7-Ky!B%hz!PhmiD#!PFmiiU7F6DC*~V<5dn!sM^}*r z48#bnnJy}U2C4NDfrzu5u*tddrX(b$Ea=8Bj(?5QF=x+|xqty)?wa0{9KdS_GLwZU z#vTp5L9j5nk6*;qa!uai%T6;}#sjxREs4$O(TyswvByXy_GAq!C2w^D%uG5m)N?i{|sKprGY~vzB_=_e&Pku6v!-TCHGghVWd4%4i&0NrB z#qimDmdPeR%AnC}@*$_+X>*3^!f72 zeTiUQ)e6yK@WWpo?j+8DiJc+@OHr8*_apw75C>`DVGSA{BtH9156+hj?b zJ->Kdfyq#qe{an7NXT8Dz)Tk3lw1V50w8AI>SEaMB15zGg*&l|>yaHFEVHPX^(2v7D8I#qN{q!C)`1LG zpL3Mhd`@t$v6FA3=A%Q8qgMQY+y8>U>fs8OJ}27yH6WGkfn1fZDwsi#QqM1U3!w== zEClj`MECfuko9;30I^wyqOK6E1q9%y68LYE&lC!aqIkWr5~FyHujn#w(SnJ9`flL| zXu-$&(F%R3b|sc?$5?1&(mAjA%69{HH2~0UzTcuYum=h&<^$maaN2RGLj?m>250y$ zJxSEFj$By5CP@3M8?h57RW636{Ei{Lwv$V>z4T)Uz+&Ba{2Fe<_&~L#M44dkw;R1a zh$xYW7um3(#Vrx!?`arSN*(Khi0Heh5%lo3XQkYzwG7T%-1^t?KxGC6WHQylk&aqh zVUbOOxjVZ%E5ZzV7)mJ7^o;1Dp$pivPEfGP7o@1NKhLgnqBh42J1}cEL{piZC8oP5 zjG-TC{u7J(X-{jCHX1rD`pL)=&9m#KRyp`|3|ZHt>AjF0#oohWi@r2aU!axrdnX0G zy~cf;3nHWg%}7wy^>@;(x?dV=(sp|_EBT%P^?>%>&1m{B|0fSdNixGvT&i@TiiF!#H~khEjOh!{eth% zvp2jA3a5t$QUI1QT*|-|*$7;t6OmD*v!44NIQKs*h1S|$9z3#`pxZo188APvZvx^WGf|I52IS&k=~7zo1> z@F2r?IZ+G4D^`(_k?MoXQBERH|}0Ojip4x{I{v zTH_#Up|H0$85z8!Vmn*a5F=~CLmsI03*-J#4Th|XHW!^m!{ay3v5nYu97;+rb`RR+ z(OVFsoGg9}XlJ88xFMU%?JS2G2pKg2K^7wK^X(5e&mcXpoj4ZI-~WP(CiMK^xQ(o; zt(Ae-Od1_{18gr`6idkRfC@5R?2DSqBRFu4bsAr|I`9+J#&`Tj7C;OW;$vS6B){>} zVARhZ-Slfq7|~cKYbNSPeV9Y`-wfAK9hqOrja8m#2v~mca8lU?{GU#NLpDyV!u`*^}J<#cVzf7uAK;L z0X-K#W)!c$8B!3o`M2h2+_S!YN6ryeA<9ty(E`6+w%_-}tjC25w^&1>Yqhkt5~>Km7!eH*P2;1~vsTAPeq=2{Q!^rB=Q63z&3z5ro1$&20m+aV)f-`|zFsY@c%OP`Q zMo$e~dEF?Ejk}`IFj387^&jY<;6?H|ZaFcsV0T`4o1!5*Ex9dGGXn#OJ#~81&Cl>& z8E3~Pp_5+w$z-azUWIls7Azy?dRFr3R?UOrgopp^hv>^+&gPo#5J1L5{X=JTd_WfK zraLE|zL(C4H5-AsGPo|MQ;$ZNg3fg}lD`!20+a%tXy4z9hpo-_teY}pS)nw&iP+~{-6dW*6yts*76k?`BKv!}lD-pWH=agIE1YBT+x6GK z+-U3#RfI`KAUuqpE)_9)Ln^qo#k>eaV-P7H% zOKzVIu=m)PPC=P4vl^+BkGB>a6}^EXM&V_j+c=8+6fsGk z5H#-37lSD1y~n2<8>`P_z9~|k>s_9w7Cjjk|Lrm>^8%^DQbd)r_wFoMo|xs$BP48Di-i~leKA@JlKvU-$hgT7C`_?n z1Uwy6@37uv>xLF^hUO2M@Pl`liA8-5#}FKVJGOo};EV(=Tip7}HYkC9R^^7uklaWj z&Iwy)iK!txYhx)}Dv&Cj9C_DdMMLAGtatc^VI6LiFT0MM=WqR6UP@Uwxj83|Kci4K z9?Gc|OHsC=uY4M>1;zcdqWdr97;X6^+9*a=f2QN$7EC05cguUJbLBnUd@1ke1y%|u zD&Dd9t$3R51G|#s0Zt}-QZh^UF*>G2A_?q0bWB3duqWw;*6oCz8rv*|L?i8! zMKYaFU`jJcC*Mr)^z02SkP>lha=gC9+5aJQiEv1IYiyfhMOVO<=m5_SYbKKVl%KzS zA_IM`D*8woRobFF*1+4@(`?c_PJ;ZyJkC1ZW+Qjw9R03W+?z%962JN&zlbq_Z2T1i2A2$^oI*F_ru+r7F!3qEE`xnQ zR(ZKgj6bczqz(5>z0ySV!;iy_5@-c|4Mxx?Z^zdZZ{baFj@6zojMr9IzMhiZ;zusP zDh-G(7TIG<6P1ODIZ^%ZcO0+jKO=t9+xkuQ4`LGL-T*G^#ZEj^XE8JJM0Cs{7mBMX zIN_nQ|8HV@!H?EG7yG7a6a&OSmkCSSqLo8O@MHLw)i-rNn8vB?gCl%KKfM?Y;W=I! zU5cSsvfWRgt|9Ia)>Gw#*lWH=^jD-I?+4s_mm}HX+KzZI!0CnZJL~t zJnOrsK)pPrG!lEBU3jaA!sIH+ic1uhrrY?Xh6tAzi5PMLKB_!kv>G=a{LF@JK*^Pg z*`ou$S!KrY@e}r-3_iC{e)G>FpvG^xgAUMU?Dxti9 z4t9D3`~9D{vHx6AH*bqCOI{v(xJSCDw8`D*lzDNlrnseH4_{F;pKZboonRybKl$>FP7uLb>i|E&LubqT9hxXJFCCO7 z$$I5Vdr(&uiQn=DWVY4u;UQ1}bueK!QD0acnJ|9#xAN*c5dKpw^KM%xCcqPF8!xtJ zaCTDSXd|wtjNWpN_YSD^*|5n|5yK`B2*RvcO;ENzxrU|XKT(Rf8`AJ#j33~gBkV|2 zpsn;8`C^cp?;S#y+=ijuS$cr#IkXG9Id!99>U&Y;()WaCK%?5Eyk!BYGnODOAHv<0 zWo(Gdn|j0$l7K)0Yx{bi44|Cwv58-X9m^bzS+!YZ*i0QDk~~Tj#Ysm)y1%BAKYcNc zdo_N0$K~sxKg92iziH=mQ{v*>Pm?U=^{R92LoCHTpz=mXBUZ%4Re~Ast^VAib+|DJ z794uYLJb8}pTe=@Ry^OT`s;53gqgY?t(A(GFE?C&gUXq!bq*M}*SRlW`UD>nlA0Q1 z?K<{#d`NQqY%Y4ut8+Abv$Pi0JI(pdPnl1{Nm<4mtq77!9b>9=JSJbwMmcOSE~(Rp zd*^`I_a$9wg9j=Ds-?1-U_Da5g2pgGNqD@9nf08$e9apnGqMGmf zF$Zg#*ZAEh4Y0oc)~>B@egsp(%HD7KHF7k1g*>W^U^@&fgh%|zBNy7?UGog`3&I2r5alt!`6cM#7Qgn{-y|S zWxTpkuVduTTl|?lRw_878y~KAPp`=RP)cptDq`SI?MC1cyG3ClT=0(}@(=rO%32;9Q?ZG_4x5aNVBO7Oj>mxkyGWeJ8JLjv^ z|0Hi{9bon-(d@EFrw|K`Jl)7CO7^O*ac#A^6q7dS#h|VG6--TytpnmE6G7v76hbWP zd!j5>;CmnffJB_7@(Gt?CaM8rchrwzw?2Ji2%SKJm%G&EDPWV*35f+~>J++32&df)oyoeo8Umx9`c1JSg;-VJCTE+5rSU_Y zIdn=&^fR`{sahuop<~a6eCn5cv!uV9SU&EOQ*x;-VLGuA-(!`)5_`(y-Yby_VH0^v zXTf45lY~7)M?zj&aHhHP1T#8D#>#LQf#CtHva?mJO^(qLH8f(nR%|}Us$f`0dTP@Fm~u6ujG}Y@Cm8&X zw_HgaxSneO-(wRi5%as^UoCg^U1d66bLGQKj*eH%nnHAu5SaR^OSWz#wXfJi5{mFF z9Y?r+ch$#EXI4kYbk}&^I3hi67hsgqJ>^BrjBq^_No{G1l}TUv3%cX#rDKP5*D`HS ze^Z?7^FqqOa)_Gf*S#>+7CymLs|W1uWwzqd_&ho2`*J|G*-pZ_2+2tTPZ8z?o@nHR zN?M)GlS2!gMKFm$Ggrcwm+1DV5nba!uLT- zH^|Yh*3%tGH!oi|-{Bm-HlH>kUg1CP%3m&8Wzgn^;(f?D;VP$W${dwqeIvPxXdS^H zg?9U*_I5!*dbgb^?VZ2MNRPN$4wIgH*|)T~@)kHE5g%i2=tQjLn!N=3rRp!VoDL>w z+N<1~7~|7bEW&r5?D~aS)O({4$xZ80f8FWNJD;{w?(e2cx!j*JQkS!LH%}}tj%mloh&kdpc$wDjC8Sb7 zLVjA43~Yo+Io<$sjvLkD0y6Z!L4A(RQvBiOlut zyN`~v9C$xW$lvYb?d;-lO>KN%Jh5E)j^BZ|@%%~~ueD}r_{3&{SQf`0Ira33yI%(q zk#Hn7NIBj`eEL(|+oZ|jr2ywR3+2C#7y*ZV(;Ys=7QG*Wm;W$kjbiab^XisoRm=P@ zPP{-{P`>Q0TAm;sTS}K;S6s_ELor1Ql1pqW4%2=stMR0L2$FTG*%`%1wfv@~+W+yo zS;WRyoc-FH!x6LNxM5h7$fNawXrm8F`W$G%2W~H-0hCGFGvl??6iKr~PRYtJkL)1F z6YdT%@1-u^EV?}u%y4UXCwyMk42n^Wzn^wOTeZLLx){Dl>mc4dVMiIs_W6xn=onCu zjR@>Gs!7mL8~@$xXaoDZid@>ohKxsRA998U&}9P@kSXK8oU$4P z!bmnJxL-Yj_6yYRk^U*~tC*36)af)%U+^l)B5Mlhch@@+tY;C>8tG=i=@};6`Y;+~ z@V9l8q51qz)p5Vnmi+yY?2r`=SxwNn7W1A-R|TH7{Vy?uS6%0KYoD;JdrjtfPoRpoLVI}N zK*9IbIG1cxwuRy&eaOaOu?y64PiOu%R~e5kc*iFssAjdP8(bY#x8D_I`zU62LdA!_ zn#0A;pVe1e`br#Nb(2+w8^b#PjMKp+$`47FHOx92vMZmIBp-@J>lt$IF`mId65)z@w?5R8{F8X+<>;4Pm4is^w5cV0p>gMPw=CH{)y==# zMTBMd_H)1;k-e1TAD+8|YQSm_HOv$B5uQd~75eGZRY}IKn1C|P^(~6qs3yt)%+j*? zBynuFLe<5uj7nHDm6Z|`MqqRI-CiqL__My zj!}~cK3)oYF!dtW*Pa@~Wq6e}Zq$#4u0Z5Y=P%7AiA&AR5JKny5)ESl#_@`+IHRH4 z^)yxYp6pkF@F(g7mV_vD^$>iIZ$+pmMw<1ksC4b;&4{9f(fK5kQANiL>jCp*UWYG# z(t*?cx?)Fgr>_I6ZKYQ;@<8L6sq8@Y%796gcbq$9=cPQt3I2TN_$7tNWV;$~yUuA# zM0{HJOUl$I#xQoz73J!5UDf_KVSAX(ZUyg%>1GzgZ5QGLYwIUDG+S0V>D|`>#Ke@B zfx#ITKF=JjQC@NH>-TcvZb=op7+JY9wY0(v2Y!}P39zJkoc?=!8aitWv??EVg0ues zPMif4tB+^BM1+G!6~z8n*-Grv?04ORFv{DYA7#Ls7T_Rd%4 z{aPP}hUE2mPbskvx4RG9|J%N)Q7|OU;6GV>miSX^zluo=9MG`Q<+FK#sH>sJh{NMU ziZ`0=J-f38Yh!v*?+Nh7+N!OLqh9~pP3FH>E=5sJRYNs8&`)xU|Cg=0+n^Hr^LR24 zxa)2Yb=T)Hp$XVHF>zfCI7a_5kD`7B*dk@a%<6~<>AY3p?r1BcK)HJXprv#A6ZtFS z<>n(MpC%{bQkGkd6!^!XXndq=UkB}OcBnTFSSIX_X|B+)NHijIL#O3pdeJ(4GR{xY z?oyM*E7Tbc!j>gXDijT#bR3wb60U141ieSDnYR%#r3LVXk_hbzj*>iB{OCdO>(|-= z&57~`hK+x7IXTtuU$*xu2eH=gD>KatA-6L3w&0Fhp63u2NJj% zfdX7g`PboG^+nps=}H&;eQ9Rgs0$w&%rDV9y3ig|THP9B0xQg07-&czeSl}<{m;c> zpNy~V9~V$G2wU$ohQ>K)FWy(synnM5%6vJMcRru`^+wxs!n>DdvLF9ISpQ~r!0?I7 z(_b5dt~-H}WxaU^Yga%`vU-dngXcb!yj(-{C7pTOg3B*doe7?4Z}8wYh5q4N@@LVFBGrCyxIQ~g z8qd^BJBrGeo*z$J2|1;y(UytZgg*eserftVH7h(bY@p&}_Ov?#*OhkK-mN5asMdp? z=`6vbpZ(Yr5swR94)|d^KE@ zLfJHnk;5{p_!Ez^?kM=pSt818^RRJ9t30$sj5lN%9Jw*R&Y^{eY7@CTi1-Q?&eQ z|4fcaU#z53S|ZW>0_d`UaVwqLjO5m`aiZ2F5hLY_fXNI+u(`7puap8;MU+|^r`p{z z>-eXPD)-^Od^`)d6{PCLTl0v}C&OL<_27MHuP^E~L|k{eC(EzOqqnoc5%{&L&p_dm zpoPKHKbM9N;1OTHcQNk(0N)z`_*Wfgmc~`g+BBp@Jv|N}GyMkE2(j>XiT7I^kA!-C zJ<{-z__6z+y{YACqoE5uwUO;78s-tb?JUb#XD!ieh4mQ<28$kJ@3|_& z4kATg@X?mUJpiD3bC?9sFIcC#ECep7%0IBjo5{_xkxew#@w?lZTmNIrYYr8i!iq(s zkJgI%@*aDb)&A{Pz*q8}xbb|B1gA&ub*gTuIFC9RQ7Iw{A~P z4*VEhen1B{2<-vuMD!7Px}?Xk8q$eiAf~q*Rrn4Z{F$~(Ar`utk?1R#*O#se>stLMVFv_!dsZw&WIhm2>++>;J@%q zl;@J?V`K}^HNd5EJ#7Ip`21~>hJ8tshhD|3g;AdCcWhROr)iQ}t>QJMSt|sszVYC@lv&=ya9+^5-yMCn5k_ zjP@I>%Xos^d}Pb$7lTWr|8BJWr)O(%Z#k>28sNTux$c_+TBL6^?SEdQDhAXAYyk5U z<&BihAeu%pbd9Z9%(G@Y$0@t&B6TBV#Io6mD~JU#@OGg-(T*@2BOg@$B8FfLwn)+; z45)PQtC2ZQkR{nR^JB7yp5N|zP5#(EVbq1TGR=ltYnfwgJsIQ~uLu_3ABpjBA_(w7 zkqJQp(4q^!j<`p{G7Aq1I5kPAw6aqKlOl`|7-Es0@?eqPZ@XmwJC7#rd{91B|A-op zc#~~2Io|i1HWFme$2B168;u7fwCf~PNv!nolwHM+HmFdGqooxI#Ib_*==@Z7zLEF$ z$m|y|CC}{|^lOjc6V;!F)upVi?y&TaJHL0!X~%~$Q-Tiz;T@WsEAdt8+RHqR1hW*? zWUDHq)XE^rSn_D!%=6!nV+Q4C6$~aQy@1Ze3v#7O(>hvzTV}Fj(+lf2|E(`6*5#m^ z^>1ueN0^R;l7DcLgeG1X7wOD$S{B`~E;wOn_C|pJ5`oZn`Po0ST zE-iCKZN${W6=w9j_F=8VoV;YWOx#ImjQIkiZRl`I@OVbs(5*=g$F{7lgC6y8w~ zyrm-s3cMuq=sImk#rZnmLkiqVXtczfK^)>-0O>O23e2T1AG&G>(qs^6iW+DAlHV%9 z$87Q0TraaD5N4gYm<)6pF}Qq**?!mPys6qs{q@5#a`EEFv{iSDu6;T1H$3$Je7b$@ zzxe3v_{lMb$DGl3=oir`5LF?zxB$*nQTMsJ}k44Ycm{_Bdq!QuWw9xX-q z^#q`UXIEN>^(BruYb{jpCI~=7_WKI0&WK5ZI3G$NLhqwaB|ni`($O#Yzz!@wWGf-d zyjrb)4U@??i}K?e`AowUbh@sKrPypaVM$T7++y8Mb{@{@V}8RY6z%Y{T|lRgn;>sopA?jsha`%*(7XVkuO zjn|$$(m&SzPxS!*^LzNOPn>sDtUr(Nb8E$)Mqp(itSEvq$dsKa-y(kMV6z1O@WKkT zC)|6`Z1%>HB(2$Mqou)*`Ar>NBu$Xy#%^Z7(;Kf5p+S(o5@C-_;%HX+h>fVFayfCO!CMO~PMQAGGg2 zlKA+%{1P;gT8Acn_#q50PJ};gJ-Y>0&Awpd+Hy8holOj5zm1jle%?8Aq{nW;8t)=b z(oDDFZ{10%RF5R(V|tJDC{{Z*?Y{W@?pa&c;p(|H=46cFfT;5<=B1mw#SqCT0iL(Qeu3AV13PQIqN0rX40 z_#-gFyW?r^j99NCkpB|^GCr8@cMw>z{Vx6+&4e%ubT?(>f9ruHfd|^=n`*19oE
q*7-e>dQzD*vnPz$i#GeZizw>!T^%mRRLv}Ak+*! zdnhdwbowCBM>JnQWS^Jh_esR+>c9wZEV7Tp!b1VvFnDf4S?An*^d=GX5k2+v#oN4{ z-x{Qq(x&);vcWX_rK_`O(EbeoftSU?u48Q-6$^T1f}&dUEs@&+R_y&AGwyvCNLl zru-KxVbpmEjQ)Hp?F%p|ma65QdhN=PN| z6X7)JD&Qx^;i|QbphB7!R>@hX(59+EWH6G83T!(r${}$NP_j{*%&e1Z|I*NE*>L@Z zGW0HwJ<=j)!Svgj%e)`3Ot;v(_A3r}Omuk;k*&SoL zg=7|isXlK{#oA09iFr78y8{8f!ErPDHX3*F2tdMj6adH#EZ$1@O+e(c*Elf3kjyPv5^&9hQj zSecmMmywb_z9ynb#*HO`q;|D;6RoSs`_PJ_(-t)ro!wWTpN z8g11Wr1|UrP39Z1wshYSgWiv{mUe+qy229m36lX(OUe864-h!%Ajnke@tH|CsN7rk zQ`(%ZQl`0|Dcpc5S4f4T%RqKs;A<;dYK)uZgxpyr5bv{BhjEet!Bfmaa`I_=)AJR5 zYRh+XsmIUSef!Zk~hUg?t|wYv8ZUljBz z(|bK8M>63uW;tnQ3Gl5FE=ar69lx<*UOFw-MrjqY@|Gm?I#q3i+FtGwly$C7ThjGo zYu;J407+ZUqVAl&XN%+fuI}uz{B9jrN#^SUHZxMn$2H*0<*b0YI^_U@z<(R8Pp2&q z=bO4+?dIXuJc0rjk{Mz#!`OI%q}4FA*V#j+b4QvfXfU^$C|{_wi@1f@k{5 z5Z~G?L!1lORSsYI+iutL0sjl!nXI?uZ}aSsi;<3IWAtOI5F~3p*oX6Ma*?-gSGu*^ z2p({{8|>W(OkQ3>`Y^;_W{@B|`NBgz*{!SW5^XZlczMJ_(L;*=y|;fP^qR)~x*cUl zE~cq+@Ne|H&_MIj=rCGp(U8arD9hkdX&+s0)u|w6D zG&TE6At{3%N(1;L!;kU5wrU$_vTw0nq6s~#Y%%S{8}D0)#YMu^)22%DzHczX`ss(-53a zzpWy9DFK7++dSi)z4S^U^mk%e?SgBL0;%ePi|xd>WHj~rEde|4nX5JOKSs&_0W?HM z{zH24LK?JS0B#knC~Ho?wt!E^{nA5lbOQn;jR#y?%pyV13H=Cn6T-uBGYoa|dV1`U zG=s6mb$y>wwkBOX_FN-50MuOO0=-4diZ>O!Oo%YjYgMf7_ij*S#kTJ8P!@L5)ZREp5Bb|-iyRyL3`SEQlW7HAVeABoV ziurT%H8^D@%1HIj=f)UW1sDFl`g=8nx8^_DgUXLf!Ko=_iB%C8`8)Z-ld!5DgggaL zo=@>%busDKGF*Ua4+^N;vT8cy8AYKO5OIBS*Xwl;EbM{X5us zSS*0roSux24OI+33+@b+GbzCl2RJ&_S7yO?e|s)_vB)$b>r|>oQfOI4YA@cxO7i#6 zIL$AI_7jnk#*ymNK*uP(&<$SN`j@Nz;f_4guT{c#4dny03MVhWR8MPc{o4F@!v52D zT=2~q2%6teS9mbO2lB+mJR!%3Q5YM=YJw%ZlbUWE;rmQoRnS3!Lc33H^;NPP!XnNk z`-?Rtg7t{UuQ@%Z@SfS}mLT-=9BaI5q?9%BbAu-;n?gL@5SiqP&%4rSuP?2O4sfb}pN_T6fmZn|RxT7IK<8l`Y2V(I%U-3ML8#ZH<1 zZv$aWN_}pP=Uqdd*&=@a7{_vbbNx>0g>QVJP`&{{`|hhBGIR97@+~$MJFtKKL1E(f zvulVsg=UK?^BP&Yh2?8_O0)gzXUQ=Ne69y`F#^T-5pj%m2GwWJ8SVP+^ve2$i73}W z-X04|EWQ*f+~!*v%8vh8`(XG4%|L*SKiVC|@FVwvN_v%OV zarOQ7Sad7uOsxL~-uciy`^@9N(1#pA`HCii+dE=BIY=vl_dVzh91X4I#b zReRCZB$j-7WRZM`vtjX50?B_o9vg2phgh3)KK;&i|7k}TEOg^l6MwjRBCjfGme$_` z>FeCDX6HLIDtIv(-dg(glsL#063NRM-Ai(m34g!CF~fgh2knP5x>Q1WVa!Tfz8ngb>5IXnMO$9Vh6f&K3yFeE;n)5g= zgWSgMGPX*p=7n*jS33m4abG~G@a8aTGf2$ifUpwFYPbRSJ=R|}eY$3spNO)cTy3#D zGuHuZ%mK?oPwP$Hg0T2Ay0gn&54+dMDAy|Y(|^>p(~+69;>G&JKT_f)0(9S-#xYjs z+-cf~dw$n8dvcZZ{#a{J9(~`$BKz)A(1n+d>iJwfVQ%{O*u^z(Lhg%}YIOdiQ0r(- z<>MQsJF~sCq_dz8Y$r1*8g zSN&?DW)k=@s-rXV&yMF?BTx$0w`!A zDKg#+^^R7q3WM%plvE+1N$M=5_;S`{>RDN zw9_D-qbe7q@ci#wU4`sQIn@Y&l<} z^~k}5ZCH3&+74-d=q~INNx^_ht-MX*`N|4Zl>f?hUtC_b*LCtWgUW~r`kE;Ae=zr^ z(QNPU+IU+n+8R0%1Z`Dy?^4thQ&4T~R+a8Zswr#z?RDp zZ#Z{KWb-w5It44f?QE;-nJc2=^*Csh@YaF&VfLz}=i65L$brsJN^)$iVWap-QxndqY zmodZ#e;UL`KGN54>6o!gsBP@~Y+U`}5ZVqx@}+UV6~;RyLp2z^zCuu$%ELnZ0yD?W z!OKS+&vzZ|1PdGi#Xb_Mr4=PL$o_dMCwN9(3gTR{<+C4_R=^*lslFY*6$L{STxo?L z8PD4lVk&^}?qyT>donrI6v-FB-Do*R3iYt(Qx#^8D~C3|1aRs5H$nP}usN(6NxoIbw38 zX;4%l;3`Q5;b&r(|H^@?M>o%?rGQ;p$GRk;xsFpqt1Ip#9;Uue93)77n22SK`(E$M z&~YwKPYA0HpW$kDzC?M|>+79ex#{FeBPvl^|TAK7@ zPA6sPLZGZ?E$k!(4&Q|PHSIkPoRJ5^YX5Vr&-n>H~#+WD{7tDTl|;tOMXjU;;NaqeI;KCQbX>;&EGZUw+udTzUr!gKumT_-^3G?~3u`$=(c0p9c?FFXE zugg5dXlx}_w{d(T+b8sshSOsH^T*!(tuok0xrWOUD|ed z&~@SY$j7Hf@7{MpYSQk#H*MnQye;EvF;YMOV*Ia5VR)?@HI=r*JwuN=Cs_poF%d5P z;>xO{=WnNnJ5v*WRO{V*4YE!!im%C(3v!Ec+7E?%#=VL$0YjW;M{9pMGqz z>g#m~()*BRbg)ORs}NwVTk(bS3CKqAx2sKQtn`-0n&r>0w4$}VHj3p^RRINGqS16U zB^Hq98$PY=GDfk>v@Un^zo?aX9i%OEW8fg*t2!?uW-n@_o$p|!Td+g=;&sGzdz>!@ zvC8LUksk`OZeV?R!D(kQ{QQ9DpoL_xSpN2oL-*n*>2#^X3&GCO`fU7K*2V|O2+u1e z{GoC*ZUgy2m0vz!mNMe49YKCzDo*3v4)W^gLJr$b2itb!3)oi?E#cm zk@L2c7umz|wZ!C1Px!5zN~3u2xo`hN{`nsS?~u=bH~{$heBz8UGkiUd)urH)VG~F@ z25%2jHswHabDUFRc=?OiJkjWNzzhN=QFf7l# z8k)Qgt!m`=nyt}sl%SUj$n)ob?UT^1p*(ePu>)9y)IUj55v+0n2?l-Nx*pI;kC`$A z+Tu9&`RUGK$bNp0edP9f-)dl$sJJarAu$Mbd(p3Du;arzn7`izm~GEodcGCl{R$&F z$yu~{9?_zuTGXQ}KLFAt+{}rRCF1@_5jlitj*=?ay0)HXgQlOVI|)X!DrT$aVV<94MM__6+&DM{M7b4oD?Smkvo$dFxv zrpEG-N`T3y+{_6mZ&VN0pA6~asP?9B#^FSWXxoA)(k?YHGPK27za5>19OR)E3B9g;RP8^r`);vHq))l!7`^XZs$nxA}8~e zr|)WMn&^&hcj{G?_?O+Qp@05%eaMS>?A0l;#31EWgDfactYR`kLDdErVlr_P{oV?G z0&)5$Sh1J~|40VPoAvY{O;ck}$W>cONB=h(cIN-2VP`Bt#ZsK~RcIWIxla4{gFI+? zJWox;lM3_}k`v2lmf+R`sGk(97$cEZbS_yZxf)N1l$QzqEoo5?u#ZF^-mODf>=pVW z26(ekeVD7#QjgbruFr134AA%9{e=XaGKPDuUorYa?d@M}hwz%Kc~{!HU%yNQ@In+I zzD_#X@ndSLJc9pse)-L$V<62jfJYWGFg(IIwcm46?_%8xbDT;~7B@_2>(l@=7Q#fz zs0unm%7DWo0%p)22|FKI!&)7CEDI&7xGXvu7gH`AS6aVr_vPjZqk^x|3BlQ@a|;B? zF-BI3DnZ#S7li*#2yQaoY0&a+adGILO}Y>40sAQ zEz|;|3T%^%)9wo{UFZF%{(gh)hc|S)oya7xfr6_o_%B0?sAJj#e;k^QyX7^XCsHxr zDN#L7l*1P;d|%D6waJ}InjehspQ9i56UhGk@Xs+#(UJQAc*Di-*%J$PG#icx}ySrYokah!rV_oJj9Hm4Jv7|8!Io zFwbaAY+siaH_v)4Iz<`MTG9qj9gotaO-;1l;e7)_IcPQMnYPDdBbJ~>1RU38IkF8|UeEto! z&e~If`nXS!>T21Yrt_?^tMLbZ-v;0)ejkmZgPX+0^_uaM) zXGT6RR#sT2^SDR(^|yl=;iQ_|N}+4(ee(Rmzs~Yx10BV6nL{#lo|Ip8XWx;%`i_n0 z{qa%#FfU|-#CL40alGyYYQ#%UP}AMIKL_I;ap4m;$UkdzXZ3SdA;44;;E!AYtMxRG z4BN07UYwq6N>9K&|J!Pp7o8+_+7EjMg6W$vo%?7Z0hHd8Gc?58+3cM!g{ujLULyI%>K%rfkus2)wrD3A)m!-npk&OK~SN-KFLFd6VtGQBHY41wkvjK4JcA z+0{$MzTcX2&!P5=SG93$H4Y1OH@`g12UZ6h0+C8+S&<6gP`>SFE%cSAK8StZ=6UMn zR&v4e2g7CaM$lx>cQ1ORFh5;@lCEus zbVErcW_-MGl5^9xvhmBP@J;(w>W6sgK#RAN{xSxY+p57{or}JWTIW3H=(0QdyR;O> zAfi0QDTmoZ`=wFh!1ipbWg6vRMCKo8lWh&^hHNio@ldjv6F^^qY-V}Y0c(<+9@|%5 zXkPWp{RJsDPUlN*NpGIKr)cXn*q#invpv?ZBpQXw_1dm~LfH)N^m?d%^AEemaU~%` zyC#@y+3{5^g!qtL0iKfeFx`Nj1S3`533-gZD9ludI$?#>8%VAE6mj_aj{|*Nq;Q+z z-+5OyXN9+Ax#4M%nj+_YK3ta#u<4rCkFoZcMCJqtP77TNLS`8YM>iKs6mWb2jcye5 z*88e+>e0b&?K5g`#f&eCIZPvb^%kbl@!d&pe*0_xkYZ)qJ4kD6Yx2rg`zGp*ox zeKEU-trc4Dc9*b#2?~Vu)dYN)?=V%XKk5kC`!pYbC+jNUzm%^dcXqvFJ%##4*)W=BivEisol;K3u#jGJ=o9`F#f1fhwcG@Rw>ekwI6HI}78r zAW=KCIF<6OKI}nmN=Ew7!!0+7@P+zVvPq5mQI6Duws$A%JlGzvKUyBub-0Ybk%~B| z<^0zdApc+D?Y7xj-rj5sk6rZ0=uf6nKi0xQ;a0HdHlTF@ihGXQLR%-0L^PCi7^@GgZ=>ebrL)rPw#=8eeDc9iJYnHt^z{5nI2^ zK6vq>Gn(A)W2E_T#KnoHr#d2pkP!g%#_cKsNg%%?Q!7rC%%C--g~R7ZN#s`JBRCw; z{%LJa*i1IVT%}r5wY_Z`sKJ-Jh(Pye7)xXV?7&O76x8OKQ@n#LWi%wf{pHBT$hB38 zT}qn5c?-ZDr+D>WSb6(HCZ_(RZ^4zBN4;J16h%aJ#7repU2Fp0fSA@9Ya(3RbsPL@&nal?LwU=W))TyCw~DjAjqy$<~rpzhc?|`jaGMY z+1~askV05I4gIYjH5&TcCBd3sM$W&e+qsMeye9kTD4@*GSxNRPM?{6(RmOPpeehX7 zB&8LR-wbgoHM{?Mo9nP|Aoho8;9k`#dr%y|e2-AVn2j5Fo1vGEJKEMIq64h9UbLpi zVvtZ+`=X%*V8f;Ip7{U-F=xeh5((DUJJRm^s9VqZ$cArnZCtg0#;l{9Kzyi5G8h(D zWS+=%=jpUSC*-4(Zk)Y*sv=DlbvvOWI88M7DTJK&C=rV8#iEG)94dEw14_ikt;aIg zK+HAiF&xJ?ML{G(Ggf-S1|R=0w+5n8&JChMQ(z}$>@uz37+$YaetS8qMEPvU9bRj` z_5%*4>%v*hfok+LYE0%?l?$paoUd~*$lqTP_puS| zccmOp(Ag4M`}9S(hF=)tDg(dUyOWAj$I~V4>z`V^DX;J>r{~s=PRF#?AJ!_=3mCz9r9-ubcaHXZ+Ajj(F{KMc>m0PL!Ll0fVZat823 zK$n4P-mbv>C_xhcT}?Ebbz0N#1M}-6VdU5;D8GS{h|qiW;pyA2rWlD}Kve%^Dd3ph z@glSCaQ7hR8*Wcc&%WE^v$QYz)U;MMNi7-eV3QS=|AH9n1kSh;jLevar4@0QPNyQF zu_tEuh>-`VpN|s4X$nv?o^?i2J%P%ui$%agl%HfatM*`yrceO8$3 z)x;n8EyR%~EOw44Q3tXU#=+wGD-|}G3o}fT=Yw9=^v-0RbX!awrUS6(w z>M4nz5F0!Jo&Trj6FAyXBL;k9#rK-9kjBz#KJcaEi&s3W#Ux$7$V~HEW2$5k_HyQS zSV-up6!xk1Pp&&>(Nl6g3~(0js>r8sd)G_p<`Y%?o_aIJx@lj+<4jkMnnp_%u{6XD zyM|Xw`o)|bCLODDd_7k4PJH_7+mV$pO!r>CRStxT=13I=5V%jjg7%ARo-+BK!z z8vCve;}h+dP*U>yUhH}%meqW|d*v!)thz@{r4DcuPC;Qtm&|Mu=ZtFem zu!%9bg=c6GQ#D>%Jatd`!N0~E1W(ntfRWz&1U74KzYy?^zbxINmr z)@;k^1(2>0pfVg|&5J)N{LJ&*WkSdH>{FM`NwP4m6aM6x ziVW}bdaa(AW;=N-D+5bxi*c0xtsLlw0}1n35Z!8?U#Ut@@fuJu5x!}^w^-e&Kz$w- zMkBaScgl(6_XKr>=QpsfgKO$3!vwt;zC(#e--?-t_zDV$FH`0SP7D?V|J zr(3(WxU+#XDIo1by#JM$y1g~Td6&V`SFHYjO5i?I8_vE~{Nl%q^ndBX+go-1^}bTe z1x0&0RBKuz`KWPnc)c)u-aTVoe6M+b+>%q6;6w6*WK|E@SYancPI|#P5okL@?Zt#W zgpV7%k$98{*@B1~;E$MgXMFWJD3f>j)46qZ4~C3PW-6D7)~r0u&$oB;D^`3dZZF?b zGe&m0IYkm$Y;+OOn#1Cag<~bG33kwVf%Dd#*u{IX;m{NaqBn$n?Ud0^J(B;X*)4W4 z)e@j)9LBfqQ;(6K;hpA}Rk&z~;8%)^jmhKxM4LM-Jq(S>Ktd;uRJPI5-F&kNdHmBu za}vBRG(R*tD3|!)lD2c6KA!8EmBDteZMO*Zbe4Nzjy&pxx<}}K|LsXULncKJ3Eng| zeiFO(@v8d)g-MO zyCL{G?q6!V|J5!TQX~MR;Zx8Kbp0ro5{(gt4D9J1=kpM`e&nz;A&w2gV?^FxkHBNh zrS#qIsPT7e9J7#-)pm}@WkBka8LRz%#aE%JkZZa6dO#zy5(&Oaiwf2&^)Cmnh-C6q zTzYHJr$kn^&ZQ;5#(8#j1f-3$vrG!~NDFlN$i$4=RBe5vam!a3PShh|US6uI!Axro zI2E7~Wmoi9DD5zdedVSQU zf|N7(J(NJb96WI1Z=MXG30v%Uo=a)tJA`gW`0NeNjY?|Uk5q6T0{Xu1?vt4Q1X$G$ z$7{b_Aa;yfeAHQV)gZu7|E$SBocZH|D@Gx&e@4Re?;n2R0if%C3aCDc+h9ZP#-fSi zV5-XupoiP4(lXc|30^5*(ou?)i8BV?wzDJ|=1Pr=9x^M;Sj|LH-EZcg*%B6|kP6{E zGuOq3=K9OmIAE?^l5g!mN{gQvnLc7#wq!lva%zv{zTpH^QFhGuNAx4O8<0I}^4b(c zLKijtz&3_@6?k$r3FaUG^gNVU(ZDMBjF{Z6(m4OW^@{B0`vqvLcYB|}R*=tBw^2+G z=nQ@jbE&IZbZbxN_Y}#=Q!)vVXrRGN8YCnE|WHfviENSIP^niD*W%?d1e= zGaws4{UQlWiY=^CU>2t<=ZE>m|8+PBtYzGN6%+7Y+u=`;(7q}eDzBUk`^3Q#R7AS% zq1U7|tOYK2gTvfp6Xrp&dayKxN))jTkIO>EGXNcC#E^K@G11v;@vTp<{7`@UU!J9^ zz5n!~NIG`p|7n3a%pVYPn1)XX4V2%*r7AJ#g9g5rR@pymzG}6(1gPjErR05jx+4WV z@KyUifQ;ep+8Xe4~Dr5P8uG6)CaGK z4_V;|n^)3%$znfD1OCG?$L#rkMNj?A`=z0BCC*0VcDuI0`L?h<1po>>D0NxoL2p>+ zEmE=5)|}tY)|x4A$z;>U8{$rRS5ixT*Em>d*;#6dLm6JXi`wpkZcdthEctkK<=mG* z$K`(InBlMQJ7*sGzxmbDGv$7L=LTBUb5ctaPJ0T$P}VDKH0v*B4^#epb7B6Kc?)$8 z>+o>xa?`@V@SlH{QihgZ%{8%H@5U&(i~by_e)Es^64KtLFCYg2o-st1i}3$H;^;rk z6V#5fjx%|uL}h_d3wmB2BD%d?4eJ-iLheBGmu@FPhXnA-z>JBar*m5D#Y4m>z-duc zC366GbhOF;gXEy<+us#sk*gj2(y!g$KQie zPCgVqu1VyA&@l)F;_~kzt-XQnPdp!ib-feJ-L7qo12+h?Ya=Y@{ z8?I|^@g$hE-`@Px!VNw72gSDTRrfO3-v;U_aZ)p(lh;9BZoArMf!_kWWQ&A_Bd>|Z z5!dw?kg{ZSc~s#ZKE=>ew}!dPzC%Y+j70@qB$OFNY#=|!#snOcjxycz`#yJ#IN$1L z%UwrV8mY^{YcuhH)(3FUwNEspX+SkG{KXg2Yh^w~<2L=7mhf!M|o?fF0v z_x((ry=m#2&3ci#5?oGX$0;f0#&B!3HO0;+_{gc|_;T`CzBHg4wJfVtHd`Vi@#O&}48w;1&#W^zwe) zn|H;rJn`#C%frmCCHJ4^Xu~SQ)D~=ELwQ*CP^sy$;pb7u{DGdJ^SssHNYcxL_s}PuINW)uJxX99>c|0@WNF^pvxy% zYBGeOC`rJO6AS*gPSxl9(+rRUD-FNysYRcH#@L&H5yDoJ(Fki}|J&^O_K;+`S@#v#(`A3PR$>GYlmqm(+yspTpTyaeT--x3lNZRcpE03WiUr?fqU%q5psock$!H3 z@Q=|eMA=v~jzdseRUj*8d~v*hu`Up69GkL=T{zKHxc)uqep7((TZe!ppM}P0Awo(n z2&x_Aw&wOqh^Xz#Qh$J0Xbdf)VX`L~DWa9g!-5(@pBJlt#aw-$JH67(P1=cB(_J2= zhwikl-aWb<);cxThQsx_tn3ul@wiQHn@uZRy8ia&;V$i+escq0sK;Cj7NG2YFiINR zwf_+?;k#$vVqbtaWZ!-Gkxx{ri7a?>lv&NX&-rjG;jZj(S%vSGhkmB(5U2m03)-aU znrZT2zw)IbgF(j%vZQW>J*WJBvZii^S3n7Sj8wNyC1>7s>1ifG>XOjY%XaEQA`Mok zWWB>lomn;rky9XoWI^2mJD!{`$eu#$%VyhnNhep~v&531setBvGk5!1{3wG6&4P^Y zBq!2?VoBfL-oGSrcF}OFmm2Q?sJ8VP#@}Uke3r!GYL$Kd9&cMKNHG|VapevJJ2|mz z8l&so5)9#aZhy(K&kf)BzLuJ76;n?S-g&%ucoD?EM#`?g6~*txtEYv-gWSQ<+Tjyd zG9`g23-p{#o)0+?t2#G|^ZfdqP2j(D%UuGivL=7%UPKF5{H=528Mn z%>0opS(qJ z9P6E}*XCMl*tj4<8P>`@evX$-b9GML<~k(g($?Cz3o&T~YP0Y$d9*C~ z|MGmR2R?F1_@K%kW44MHWgw1;#{R)@DC$5E;mrvz6G{wfKS6349d-8`f2g;yXslAS~zB8`Qkfx{C>EpIrlM?r30dN9Be(_D)e+S{efQ zafitF5#M||yUFH7dfZJ@Ce3p^Z=a`uOhjQ+{f)7v*(0AEWWxMLTdv3K311v-I=6lS zg;m9DP%~3+aX7=?;L66?KfmlS9JV!8KHnx!2Z!q>w$Z1szHw7em!?&$F((Vc3fcp9 z!l!cs7Z#g&Eo$uPrj`w&7J02Nv;Ll)Pg`(*OA0U-Ep7Sek47gio;-~uAL!2Y;q?9* zG?fUgD8!T3X8QVOJAD_aUySWbJ)opugNsHTHui zIz5w3h94eJ+K1_j)Y3)fFrU642Lhv{20m!T`Eb@A9iZL)lqnrlZ~$Ic+-Y>cIYo~% z@G$~5pxTZL*`P$+gqx;m7D0P}z_vz;@31wZg|VXi>A6}lBY{LM1@#J#w-$}hhg)0Y1E4S#S$-^9OTn z1S6GoBOh5zSTVMiby-4UkiS}SdJ(+Qv~>>?%2&s$gI{s_Se|6HcvvE{nhc1d5}TnU zwNg}}IHR%Fb+!P8sD>+e zmKL2Oc_j9N5lTWHt75o4nDz0YrQ_96hlKLGnk#TxcQFvG zDuX?hB+zFs}T9)Raf0zbuyzuMoKy7zAnTB)kHRYSt`8g_XPWq)djJ^m4Oo%A1qO)VoFakEIpx zST}#m6c#O`6uvUTr7dkxH&^)`hB|BytsP9(B53VhbSP&H0HX(0fG#ieSW)O^kn!Z^ zV?l${pNMx=dcWF|?}rYyX3B;D3-Z1G*zSN9Las#PBS_H9;^K^pIsE#--a_)&Iwf8 zY&|n|YCp8G6c)CupX7`1cW_yCafc;0_-mLaUQKiz^a$~Nj4y)=tBUccutTXS8Csr+ z`cP9C>gwaIqL1wKbC(N}Qe!Q3t@=6D{9&18s)%rRu18`Me5L(fd-DjaLX}?aA#Gz} zJYrpouhlTA;LS?mNS)PjgH8vLsj9HL&3>sCUN^DmngQ<{T!Ck~Ha0E1md+;z|J~7W zqM}~n`Os?15^){|SR0s8$1)>#a&^x8&TCkS)Q|e%Vgy5?_Bo^)#S6p3Ppoc-OS~Qu zYIOT?!2EN+PSi01fz{@-S6o!J%pdZpL7M@jOgTERvXq=bQb}J1$|kJ*Bk-*s6VddW zcG)&L&xZMOd7nNECV^dhTRi-Vdp_Cz8<=GTsn7}+9h@JZg%~s(E(avo2`U3OLom?vz|v= zQ#)Z&)GQ02M8aynltX)7yBR}D!+T^bNpgGDgjJ-4END;P-U1pVJ7{bE@Q4^Bwf<>z zQ0Bp7dju3WEc|&OkC^!-ZU#uXX;zEc}(-{|9{j zZg1Rf zkl*!_-}%3Ab!Rifk7aGBRC*z@ZX?$4HMQ618I~E>6C4X3zUp@Su2ID7nC~`x;?R?} z@e!rUYDz+D#l+AQU2G->O@OAE&0Q4JY?7Wvdty^=^(?s1jV@^POX)n@eruXoZ~7B?I~{h()d>+r}Jc z4F49sQ$+YUP50Rv#69C(1pV{O%);Oo-NEV*--&kXmhj#^OQJ1-T%R88(Ac;3;s0PX z(kxMjSsq!hkrl?F;1XOG*e~xyPZb$pBU(B92kH<|S36|iGu$Y>(M3mOdsBM$g8`bB zw+p7o4uNc+PBXHw2_d(0y~&3`Ys#; zvi46i${pv+NoXRlIy|r*10KLA`E8KBWMc7#ripN;y^RZ1Qme2wHZ%v0IG6fR#V-^?NXh?;4Q3H-Nn9xL**6Y7BXYii^H3*At$xy9&<@`Q;EYZQ)S*4QT)Rj z_!>@~xNlfFdu^e@zqd_t#fD)Mnnr#ZsB$?%$V^p(`<@VZtYCpCz>X=^F4oa4$ zyLGdDBx)yhc6~Zm3(3O5MRzmH#kVa`4Sf}qB+bo-*{yXmY9G9LYhkf1R+hY4x78fV z6*Ab^*1wb6qQ5?}OCcz-N19xTi#QftKYNGDgbOP-FH?V~89h~#c%63?4ja?O0$I`c zE+8Jr6ozMxRU9v;<+TP7r{SDk#F`bjppARsYd!uf0&__f%A2d^-1T+4O=0B<}3AefM8~_*RJiafS3tFK@f(&C(Aa*vn&`SMwxZuMGwTVsAfn z9TyVt8CRRjqvHt!FYBh3?s;`>S6qd4>2R9Uf<3#-w20NSlCUsle0^t{My)uMez^1Z zrXeM0{JlGjjoND!+U4ldvh^=qevG?H#2MF<_J*S$6b`iE$UrA0^i5hbkm#gPqDfzMx&5r2igTHizGoUPk}2 zZ}V*Hf5%(gHt65+8rz0}e(-NwBJ zBL=bb_M?~^FqCA_o`_wnQ{rl0TrxiS1P^p9! z7!BJ#dldulLOkiXahH1=9)nJ7=>RuaQdzBuax#9Sl#B|_nJ~b-$)$nV_cG6pnG1OS z4%LHVYsU(vDh^~;jQ$pQ?!Tgn=RkKIaDfibnDpaQxz7OGah zJY~xg*<~A7`^7i+<46AWY}x~F(j>qC1a zh5;*C`@&&mV3ngMHw{)iY{o7cD`~)z!u6Xo{O>M(ymH)-ERz>)*Zkd{sQIYHegtd1 zjF4nl8(D@CQ5sXVY(4&CBf5W$$pFY=V{(9kS{USdCb5w@H;=nIH81x|9e=4jB^Py! z*=Vl<^_;Fa!BfUKh78?5*=%%hS?@#(zyri?@svSpjfcq!x!?@irA2^c18rPZbfxJ) z%cqr&VcOa{dhwl%OjRIhe3CEUG-`A(Lp7^4Q|=--xDk}L%PAD*zm(k>qbVaTJ|RLm zyKzc#GEM4r-lL|7mJ0+Y!5DdPm6OFc2ZnhCX6-Ai-@M=mG4Bcs^~(B3i`x434G@o> z(oanX*G7rx=}w<1M9GuzqgKFUVf(FKo1>xWObt$Vx)73{3IeLM(OV;f%3&I(^yDWMR< z*N4AM$?Xq#xd$FF2H3{H`X3iubpj@!fQ{KpEH(v9>06QDhp=L>G5o{w*IDNhr znsd9LuQV`aP=VkV^p0K8v8>oQ>miFw-RiP5wI8(`k(ty^d7s+6Rn%URqDe&fu-<|@ z!v`;3N-+1&iX>i@-RjF;Fu4ym_q3rk@I3UNShGiAp#qe*U@RM7yXsT%b=9xkBX?HU z(U4Wz4_DHGbqzK{Q<1P?N&ZtFHV`m&V#rSqyUiNLI7kazR?#`wpj z`BUY)bjI69Pvjypewe);S^IE24Ir-?A)?#Nt6ljACM^3qkCtWF++h@Wnz<&CGH5wE zD;w6e6)B`Nu?kZMQ@fU0FSEf6nAdz;wI6qO=s2p=x~wAO3;Zzo;H?88I-*AJ=(9ti z$Mwd@MUQToV%}z!EeUOqKLWhXN)lJmbto1X=3GYa9MlURCASHL=-$jPq}r4@D6xT- z(-D#7z$f3^2NWP88pbwPNXt$5dL6rPiac(eAti6k!h|{oaahWg-xxo}ScZb-=K#8D ze9t~of-6Jh#+Vd}+SmZV9`7FL##Gh(v($%}(N|@zmP*hv(qa}htb4o~5<5t}y83ve znZzrIV8dkSNah`vTM3T>PE*||#jY?fV66GJT@J*wX(*e9`jeb9TQyi8m}Hs6cL+bg zo|ufQ2HT~r%)91#Sgm_iE`0yq+Cl647r0H43Yz`ys&c`Kb{>7q{N?FIS(CBkVYp1? z$K?+T+>J3@N~~*cs4oOy<+XAhe|#vTTSN8%@ECRNfG9A?VR0f~AIrHpA#zy7t*uml z&J;5R8wpWjD{^fn^r9BN4Z=$L48BzkN|+cM)LNR1JhX4-8qu=253_wki?ch49YrCp zYVWbXa7FAaU4=#0hHaPwKB?&0OxCyFzTx+Uwfae_O8ToM+)IV>$qp;}Ewf;^DiPbT zTKrHwJl&1UY28JS_>A5CLmiETp|H*kGw-%w^tEatR9Zw^&1M1^`_icf3RD|lDvcz_>O^^9ay@SPx0-!}WNmIY5tRoQNTPePx&@S|MxKWk58 zLI;5`H7_L}RM*|QFV*QF*FP>FKbZ9Oz0qN|wU~xt=&<Q0(90|fDyUx+RO>xngx8XS5zXKXO?&nvWo1mZ z^D?p2zs%WVaHwp-R#;ovZ=fpfJ1nUrcep^y1ocs2p_i|*F;b9OauxRp^)>@@+xgS0 zlpnthg8#5zLlVF-+Yij<(zMrOPB{;?=JS{11Z-l@4mb~|Q32*)-dcyPb(g!b+Dn$i zh2YO-P+r|BOI8c^9>tGx{RUpbt)vj}lu`v(JDAXDDV6H#@!^D$$Yn+Ug(OScu*a*zGaqD0k~|AoxrokCztcgDc33$lYh}>Y zV&Cjfpu2y;zbfNh?gRm3ylS4YpeptytCjXdT|Fo4)WCC>L9l9$(H-I?S2HQO9*@x4 zrDq<^$<+hSjUHV(8gsT0Z)o9&uws8oJ=wfFqv9E?4PTNpP_OkM>uW}JfMrgGwQng}8X-}oOe?3@^8|Zou0@!ih|&?(;6Mnhtiped z(=S=3QLCWCa^cRnS~y2PKlvlT{cl9BYXq=*ZNTm5C3dL61th3Wad)HYX1j+8TjynxMf z5NY{Si;Z1_8Gw0oh}?-4x}lc^kkuzX{5WI$*Hw2E5Cr&?po0CKZGr+PM^-Fy6I>~S zfe!xdi7xY&OqhMd>x=LI& zLY*pSs#`+M`+n`3zXNQQIecb-4*Q}@77yKW`u4m zUOSkB&|S>azd03_e}S=+qgW#CMw7#^p9K}0pYoa4&{wD z1uTgQyw1u3?0!X?RcBrl*4N9{Jj+@-StVvv*M8^K|GX7{Z^WhjyBENJKD__AEdXd6 zXcLG%R)q(;Y@ktAQVdF+22~PQZzbi*vV`gL!Du!)rcwok3-Q%m$^i*HW5T<_`xQBu z=2DV1z){b7=m)c^lWbiaxTYj2heMiD@ORW}ANc|+z66&tJ}O5zZ*obU-$2piF{Uz z;mR8~BHoN3eWd_zGG+^WOHg&)Xdt6$s%vh%JNZ`Ko=uC^_5@H(cz1pH za0*5eu`o|)HN5YSs^gp{=7eu(piurpZDAGTcCnz4_0qvW&^yvgHPriD8>Ge*x{1IX zuK?o7fa|kXtCy`g`c1Jc8gJf-MbpQ{%7*D}&VOl%kZ&>Z*7=FBIaX%o_{ic@Bwu;B z^ivf)!UKr_jz!XU7dDWE$jZZ9$qmrdXYU2draWj6VySI~zqPnz4d+y)L+Bs`S~fe= zcByViiPOAoi2|+xnQ|9%tM}llM_h1q+49tYRp)IDVor|Gfq_Af&qrYljcX}Xpvc_D zRjg2D7d#mCxl)#2haciP>zfVMhBpzV9eD-@8Nyj^B(QDGA(aWuBBC&zYW4>0=YM4UlqRArC9gGZ3gK!!xF&qv7$E8 zzIQWCtXwK8yBpyZVR7V6-lCZp7JXSbn63^y$ufUS$zMCQBBLW-*2@GOwiN+M=ZV?KJnDLFW*i1OaTe94-^~}#9rJmQj zN80$neBM*lSh?9#2Z%M@j3xr-aYf;1Xq~TOr`jsovVe{sb@|@*VftD?zCDtfJ3X@6 zX47JkwXL39p~GmmUJ!5UC{ktKbuT(}p!PZ&CI^p0vImLoFzod4g8#$bdj~bSc6-BO z0Tl>}ZaPFo#H~~{G$DwnY()h((mPSX1PCn%gn)>G2m#$FAXQ`wNC+W7C_*R#2}l1t`QGpR@yy3hMLVxz1%EO;!2#@s!MiG8 z+@U_NYEm^;)#_rH54!5|yp)K~R5QSOJh!K6dowi9YQEpMBXc)bhssWK zQswCiq$khnqf>stN9c6uTHkSB&e|+GmYm)Gkw#_15mprzEfb=Jn*~#5vu&T-{(!NT z!yA7XK+I-Hl)JcCEktZuQ{9jac0wmG}Hd~@8%pbgOj)s$NxjK3w zgPyqWAcaWD#G^4IsIynezRoRr877vY(%H%x*VCfLv4R3f;4jg)B4I8b*65~p)h2ai?!BmY+*o~h2uca7d<^mT`pAWJv}R1#O)+^4%r{)eu4{M z&SE4NE8~eJWcO@gM|GvtPX>~&GuP#}mv3;(Tq!F-ZK5`;fUt%uR;ZLMPV^eJ{X-b1 zHj|xCNl8>gb_EU}s2(7rL#jigK!D`UP0eeiZlb&~GcWmB6m;u>nwL|#H)rLda3X4C ztbRBx3M#s?`esvjPJH0-jhSG-XGg542ZYu2J!aA}4 z%-)LtRYG{A^g(sjF451QwB~Xr!8CN-K~&dLaddk2Q;5Z8vP?@BYszeT2Xa(vDKZ_e zPqptx5-ls{ANQC6P=Sfj=!`$|k@d%83k}A--zL^XCqsPe=3|kg%NIjzV^I^9;dGs6 zg?I5{Oyj7Q3pcPRvy@95FS;EIkAwjmXC0>yXp|E+P@Y>RV1Zm3%Au-?ma*3=Leli2 zu(sQSMc#gf&rXIS2izN$yMz8E>B45Qf#iH4T~0=YCUA9bd(ZqJ zq9yoBICGcXJL$<<==6Cquoxs*qU`$DhmwOFw@G;kaHN&Z3KjParu!etwEyx)yO^Ek zA9t@Vkk)7yq@~6coax4+ zINy-H(>9XyVr4jsXhSh&sAm9ge-;rD?~Tl+H8T)>Hk7{0RzZ-^?S*{;TMmOxp&7{m z+)Qv$z;ZA;ggm;>L&}3$nH&^WtrxjvSw4AJ;MPXx%8dg7lxI3`9JjYd+?K{h0$Wzh zU(Mu{codIM%*cXTw6?#m+z92w#{Fa;4FbFdFFoKY61MSwxUy`tW$kGDM=85L2 zAo${pxHN_Fy`28};tf3cr6{40MKiWUyOpbt$g$-(YZOuq-UT+1s{k|xiHu+yV{gv z?I-{cmgG?bzeFv~tr|}RGT{VL9vQW=2?pmsSosk(pR%#NS#8_t07(2cXZ)Ot0`R`0 z4-7wY{o%5kvOV$`&{B1%-coWNs%5%{fX!+oo>$76qVNXg8Op9XbBKrlIhUrRML82; z#FvZN7IzdQn|)aLlN1MA^qs1ud(03lk?Q!EL3)|9eZL6We$A<%Z7CN%3GWG@e?WRd z9yKd6Y_RSemt?i@;#f2uGJ!V1>+-^1isR_Tg%g=5TMVqr&sT`3As5tg;ZajepdYMl z0>}CxF5~xPb7F-lpjfs7S7g1Y@%Atr0dk>;E07d_xPZ#ur51_&HiQRJBU3~`5y+&> z89>D&1;}~6438RsKvA2F?syC4e8r??bvb5IK#{!Bv(O`s#Mc(7Ot}pL!wV5U8};s8 zBWbk;XyC0eZivYS3-Z5q-c1(pPTZj+wnyF%?^Q@fn9jI8clV?KJ+mf?ZUWZA;f>ND zwxl&P6iqb*B?_x}U#vmWP|1N-A zG%@vDGlpfeoiPwxwmMu?&Q7#lu#@V+a&XBhDr%Nu4ET`vpdVoNGsY*Ba80r#!aam2s)4* zyGGBFaaDwjnHd{lP)-YE3x4;QRqu-TiDL3CMDu}BhoY72&9Gckq-&~Xl63j445`Z* zqY;JM_a}$j)0y@I6w=M6MI~E)m#q2WX%b5fLg{ENvYsdy15n*2aoGGr{+JgxwCG}^ zbYn};a#kv384($`2xn7p$B9RYR^$i-b-CyDa}9@;Y>g}Swg@yDo{e9nn^HX=FI#x6SrjNN$>9U~4W1c+ zDI}N3i*V3jTp@kRGXK`a$48wDobyEG$rE1WVzTJLg$7Y0TMlFbQ>4tMw6-QZysclh z<`i+15UY;<+#a7166enGG)byH&ajlulzxPv%}b5`1>a%4|HAV-O;Ls;V`0(N+Emrw z$~K$Vs~uBTk?3*L&8vR^!u-IIwTi%%8L`2XjkDThBDeG|2+rq~ftovyz1}X)r<^;j z6b!BA(OmF~8VslT(=us);Cwfg%PxuBW4T0%#gGdq1rXQU2my}f;KXgY2F;i_v?p1l z#GCdd9x>`tk(K0+bOwrxTyx9nRLx4q;iA=F-Oss})4If6nna5Nn@szyZ1@XV*vAYP z#gR3$nZ_j4Ol4)q52)ri(|QeE8Nxh zfA=p<#=d`OGSuEy<^~6dgN^ii;;D`#<#j+TtULpB?Gr=@VL-Db3z5yj%MK{O=p8mI z{)%$?4B#}Jesl*|qa;R}$facEOvnz3o5h~xf~YK|M+pD0Fc2^`;<$ic`K%B^FnDR| z1?>!0c}G6yW57G)9nzF}O|hD7pqDI|Um4v=wvcNe$6HLgJtt<#P?KMv&W<7$+r`_9 zw*K&+9s5x8?=?x6erl5TuiOmde#NzFT2vZ-2Q*{elI zQ6PG$WVkvCYW{^uMzi^}H@5n#%^i~%2=P-U`+>-L0{Q=mF zr1e*s6s|){9okEs86mnd6+d&UV!u;&;*SqCq)sdKKJNzp>iTHeQ0C*VA=!NkBpzfa9@z%X`vMy*2NP*SIj2*M_%B}*;t`dF5S@Tj^45BLyMiW`L zk-#FPD<(ewVEEo>RyPxhpWe~FWAK}Pe!%TBf(kqHG)L>op%TA#a=<%IcHrO z(vOb2u1;1c@!764u*luI0220Rzu%Ts-XaVVVJYkTR^}sv`Gh0(3Ft*h{j_|zn~jYA zaOOUmQ^B4d-m#RhqqGq<~N1`ZZg>q z3rOeQ%{YcH?Xc^6Eb19&1 zrWapzhy7WYZcMh^EAri>T%}OSVc&vY1JNTjw&x zLLZ#Mo`#jQ##cYFW!9K!5{qsmsNTBmR2~;KLn!qt1{57C{TqvmcmXg3iRtoMj95tY zWP^ab7dc$!-W62a;--{XbtEV}rO#)arrM{_?MYqR!OT7ggsYy*mAImI0c5vOc$iyx z+9P+UCUbieY_L5`H3;#>$@gqgTe4$^Q^9mUj8#vRNOr;? zh?@F209&8(P}`IChpDP?5sz;(?DIq9_OI^KX-!OtzI7RDo-HZ7al}Z{amcexFVHJv z{a$D9v4j}axpE7E6DAl=&wvhFCKO3_m)EkwT_Q^mdotEQBCVy<%a-BIVxA~Ml+0jH zVF=etF&va+L$;adIeC~g!MqW6bWE63&If3TR0AAF>5GoiBG92pHLFmns!rL)x0&kF zc}b-XQrW$cbnzU?9oONq_n~WL*GJN#1S0nd5d`@33lOEjpkDlB0CZj_4B(#8#fu?` zkOoDv&q$>~WbuWwC&Rk_bq)Yl^d1D*g9WQZo^95tiPpV~SwF^K8sEWxUc6VBo__;z z2WgPxi^=Yx>mhE3(?1bpa)1X)hc}T5*+aw0Xw#qMwy=r>C>kA zn=!zau+qVeM6}dD;7D8fy?nO-;nuv{O5K|u3_(i(p;9oTMl#tcyUTG0gYbfY?!#>l z*Gz4`JC6)NVKA($u)gv|2r$O8i+#1>!oXZTEk8>r#TempmjN)E=84sC#wkCIIh&cy zwu&`K6tbN48GsHimL72_aPG(_6;2?m0u>ArKUvS-oj0vT7@)eQdrK)<6s`lXX+L+5 z8gr0B<0?DffCL<3Q_iy2(6d1!pP$0tf73<)GkiyGUf31%0(|Kvf=&SD0eNK*AzZ!B zMzet0nS8U)o{L-Fj1-Cq>-5K35n(A9w;+;sLZSD+;#Nv!#T35H3Q(C{nmC@9QOPX81NW!X>) zY8C-t*)(Y%KiwWjpo^@t<&QB2q`LmX6>q?I%}cw5?2p$8vyF1`NxIxpD{A33bR|Vi znF(0_@NG!Q96Ba0mIZTS-1Y=2yvUXd^tqX%G%!HRM3-S|$5^>c7CBboLWt$xX%go}B2qDSaiX%u_z znZ~AWpn}F@x-Io8;$>Yy34qG*?{I}jfdKTV-db=@2s$8FEjTxGL>G$_|D+!*G))AU zO?IJTAq#*}O0?W#9J|m*wX97c9Sah@$$(q~GHX7K2zX;Y)?tTBXRGFr%1v=MEJ@J@ z4z9FQn{YgH!cYB@OWAaN{$!PQ%nQI%W>VXcMFgHg%)@3Z)Bb3Crzj3?=yQ&J=5&5rUZ^eD6i(2#^%k*=wK8^GR;@cX_RzM6s4k zG|3EZ?h-|Y&8G55ZPY^lFwolM`#Yi;-czljZx^tFAjtjjL2*BT2As-rkD?JaS4>a` zpC$StvKZr2I*G=lm2A3+OVdn|A6s*s5^oePqi2wfn?sN-Q0#|xvl@2CK7nHvXpeWr7d?G!I%_nz@=T4^%9U#CijI6<6n17(=LsJu^GfZ)Vf z-aTeALD~edOfyA9I(|>K2WDYHOquk@^~3qugcu1lUV}3c0jqb1(jOYk6ijq>Ta+o7 z?=_xma?<*<=l3tmpE{Hd+G!Qe;qi_mofw)3wFgH5YJ7C^ju<6L34F;UqBiUJ#s|8{nv?qfWh?n`9_K$y3ba;~4+`fiW$ejL8 zwGwXw=f~Y%znZB`pjC|@AaeZnbu7LfOi-~wO}zY(W&}$#>kYS}{Yax_gp5n|Qo0gU z9UF^LG~ki(Z3JYvVQ&M?j0Tu|dF0s<>+CdqVCGkhP`*nkNC1WM&)NqehcgvSH08hxU;`wBZ*s zrHNTOKF)hLo(gE0;Oiaat#j4}x)EaB2YP6f)}FMr4s|Cx#dU`!ni!_V2||DW#C8VG zUv9xIxeP2e_8Y00c6+Wo3wZWY022MrzagHv0ebJRgVY+WsvwVfN0qV))0a);H)u*F^Mw$e$Ci)rXHQ*(kHh5#WrtX z<@elfpJOzYKOlzeQA4Q-7?vgmo1mpBhXU>|Ce0*8BW4n2?v&MB=8ozzp_Vsweo3yF zz9YE2B!Q6p=;Vnq{JMT+N2_sU_p+IcpB0v70uKjtL#^gYW1_Dst!&N2k-uL$~Y+*}>P#VaE)1PO4bj0hLnqo%*2iAQsRv!a^I~c&NM`ARQPF4K5n8i8M zXpbnTun^^}-heTH2}NoH4yP)X#kYW;jPXLt>3 zsfRUfnt@3|olwB7BV~;xeNmY#C$Uf3D9%@_ny*j}L&h-efVR-b={z7(V(mJ~9@*>o z+m2i!^_jO}Rb2H^)az%CJrj%lF!UFb_BpLywU}|ywXUo-xyE{x9UuIMK;@}kNk0r@Ykr=FLip8buo(#Hi#dP{dBNV(~qKCW)0X&4C zDB@m&bXs+X(~K}4HG#*Yy*iYS8w!h|YFNO$2GJ*j4Mk!*134@Q=fcF>#S(hOsebM; z`;J+xb#R4!83f?TjX72A$%tXciVemC=D!?g@J}V;$z0#PmLhMb$m(BJ?0-&5B+!L}pts0hHAmXrY=1*5*DN zA#UGMbmhA|35-i!*EnI1_nid@8o*2uX(&2Dp!?yrp(l6GnNI$Hz?q7^-E(~xUYEao757 zzyUp}Yjg2BJwBtkXFAQ1w3BymCSY978YNc&HmiEfG$Y1wm|Zzpo+}3du7!Nzi-4L{ zxh4Nm5^Dh!_Wr3K=)38(J!D`SezyW1K}*IH9=(I;$p;_Uu{W=o<=A95vDozPw0?0y zOcjrpoHIGA*=D*4&`Mp6{X1Iw^8o5R*RA+czz!Rk_%bS&7+&=5#bNfKbHKm@Ib$d$V^O{9wy<@Cfe@dA)^ThE#ZQviUT zE}-CcNS_GDzf)G6{3l^&)BHb@u=^WDhV7C6#KH+b`5(Z-?Obyioqw^ftGl5z{^8`% z{5c>7_6hlR$XuleO!f}&h{dd{I06UD>2tL#6^<5>b;SB{;L|o0 zbQ&{^V5wpeE3%L50HgihFbr*UoIf=uY5|+0IUok(I{|6*;zoRtBGJ$HF4lbViCvWK zs4)SAo6ps?L|EZ5e(sm(rsRMoX1h2bsmxFXEP8?sfJJY2k-GTPkL>4M4bc9$5($gS zFHh>KFil52eLhY{00lq8Uh49b&yq3-&Ywtrv{$wmY%n~{9T>T(2_b8>)T#3{Ts7MK z)#qFefn;kyc$8#ZrqH&(mBe%Qq$%=CXFj%@AY7yvvyn(qGchzCWFoM>E?QAR`#GRr zi}mI!pF!18Y#bWk`e9lrL5D}=vP}d0U|0Xxbw~iaP?ApA=xDtr!Miocaq|BJc_Vst zAs{Tl6gDW<2_8rI!SJ619CMfdA0z32ls(qF0r@sgV_bT-*z(n(h@Jja?Vyf9h=fWH zGeQh&LPi6|)tKsIc%*!cW4*EI`cVF?V~)kr^u!4JM2oK+X_lcaa~D(Kn;eX;7&Bwz zyx*AnXN~gtE38dL&3S20`=K4$mjGAo3|CFoyiM=ry7I9FylT#;P{h0RSZR~>`-5Ej z{7jPq5N+nLoH@YHY}rd!+H(&^%b?>r8>}v0OQmlBeV%f1!mi7!lK{xPGwV>HIe6Re zsHanq4-K%FW~I|RR?b?so2QY|i!z$ape8OeX^`~mGv7M}JCQDyMx+S~OY}l^9{^3& z%v_+uagUaIzoMQQ1?}({Q~!HB24>)FmF;INa7{>dH2J0zQkaQnu(b?x6=n3hZc7Y#AFS z#FZT57lW2}PuAfqO_MsNQan1RBhpe+da|VFE)WLRPavDu^O}pbI-18PM~ukzJ=tqx zXr7#`{1BcE7d#5C)?mhJ;&@C=F@A6FNv6cbNUe3C0WA}iu$pX(0$nl#p3VX`+go(I z0FAcW8A!9EX{YAduXHO0Uhdw-n38|CtIo-PnK76CN0~ACZbfwL8gBZ(Zp{Dd#{AcA z%)eV4K1aTF%S^S{7-$VvPS!QWqO$`S)S@iiBV&!0MlOna0sszP>qshu1LHnu`IFtM z^h66ebw3AdlHD_;@4X=2Nv%Ca?l<*-ijOx!eG0P zD}sTQF=ei?VT4F@CR9CC=p_dZCzEJ&4gdAWSXz9~u_O)=y?pVk^3}RsXQ-qTef4jz`TIVeH2NF$V6cxpzo`DSQDLP>nlU42l> zLkwxG3qdPUb(GMLWD*t778#I=X8H)KUNBPwd1K}zE#~_t#ZMtRduE6zq>I+Eia8ub zjcx-;H{hSlEtu$o0ZJ`PNnb>xdZVG|iq!=CjyTeDcIKfiw~SQtj{j)avB=%`56WfS z?m2+r`)0P(=Fd)-5;PnrM0OSnLeRby+iYjh9PSr`S!goWPc&v}rkLpFtO3*0_}u{` z_KrsEQaVYf0b^%A)V=sv)(6Zl~ayC6qB<@Q7mw z^c$Q8reLijw-44Uf@V%ch!*8oYtk_;ph@E9N?3f{!p9jp7Qr_aoK;^Nn1)J zeOkpv3nSDshiv%iR){81!e*WCdum>GwW{gpSbuNY+@yc9B|1b5_|h8lTZ!58;}-I3 zVl%W4?#6f`D&~x(xzsD#2nH~e7j!iU$&GDr&MX6Gr=t?+G}2oqS6 zFNc&vAHqFs)fp@<#LM2z2I+}Z&q)%ty8$oQRz-?GQcg5vdwUyt;qToWz!iQ?(%;8xs9u?gW0kq(B)y4Vd6J9Eysyz2x9MwCVa@96*O& zWZ`n?(Hv-RF@%k(ctBqKWS75qCd=hC;=?R8RkM)_n2#xqI6W9>(1$dE!$VPW!2Q;G zKgoA=Iu{=anEFv#fwY9vQ{(D%jcaWa(;uF5f*t{tVBLqB-{f~)i8TLb+vNl1v}F>c zYZ`}uEzj1r=EEbk+>^C>qeR3MIXzh!IT=O>khL`=5@@oGFqafqv_f?@iQ?Z`sM`5z z;|~gMAVDbI&`eN-JoKEMFL$eCO{GaMqLq*IfHaN zEIcMi%SPb@il#TmN9%8Uly{0*x2H6M?h%U5T`aO0gU2ajfOKU%n)ZM(E7nQP%U!mk zSv84Inxk+e(9G3fx>U`M^OEXlEU9Hi5h|@M@2r>xwE9~by{|eCX$0BuDRA)r?a`@EzgY0AJGhilrtYEN;~*=^pCIW0Z?nZCogf{6Ou{BRpnf^bV7LqCyZT$-t2ZHiv@ zfV8Y8XLzUi8`vUZ{Xt!gOE)aY?&xB|muXyke7oQzuhQ|SkQ_rCMk_N2NhCYP>wJVP4` z!!@fZ$E@$z!yCUC_k6ypc&erEg`^OZr z5vbYv(&+&o@%&IBYlG3(!M?y;0M@A%kF!^C>GV!1fCPSK3EhpPbVp2Pr}vYlOYBYE zKilWF|I5IM=Oj`TbTGUOjbW1;Z0L{MreSCjB*zx-$mHt{u<(*&Pjxue6aCh%Pb_DM zWwR_`8MKCEQbXG#z5FHxl2l)hitV~zJG`-^Q*6h(Zj~G!QpLrYroC}Yb$@S!Xy)2K zY6k0|lc9?m$5RJ13n$ZzaQNz@^tkqqZB&3`2?c~=Z?2jg+|Xv{?CZ;#o&u4d==|8b z_nh&)2(k=YNXNO0SL`x-z@gU0u+q$d&{ex6t1Nc^_<_eJ*Rnn=+dSXS_B4+zSx@#H z+?TvkNvfDHe{Y`uh+PsMTF+tFgMU47;LoSWU+?|>%HiL*{@WkuL3@EUJrZ{-yCI>6 zUbbC`J$`Xg9y2H)qW!|{?9rvCL~eCCGdr`IBcqM+tQyha@bN{ZM`S8F%EB$zA8b2` zX$cQEp})~>uo5}eVsYe^#n=LuXecV+qKDI_Fbma~Pp1y0f^@k8f^?*2*@&%V^>0@` zb-o^}VA+jVwRUXL(r#Vj_fZQEy_?iSVk|W%6yPIiQ1}h6pdjXWR5! zD5EHi-70IidEOY8`-DiBf%NM-plDuUg}l`28y5?>Su^GdO-m_S`oFoAuev7QS@*qh z^~US}7$J9O)p!4#1@K>ot}^7$N;u!G)BO@$e7w~MH->IYq@0GjE!5fb@ilb%f_!t$ z8do(u+_>)ydPe)(na%DSoDYiQm0+hIh=uw@{6O=9!#D3yuk$IRk4Q%;BRu48s@nxU z6<`3{$e9h?9lON}qLqt^!B~v<9ME$0k za@VC4Oq|{<&uOy;%~?O@H1?bEH_Nmev~2IBZ*8!IrudS&GX}}XaG`Vov6>peHFvWj z-Py*Ae%(z)1CNpX7LW+HvEhD3fsJf8zbcFPWMI>D#MKft_rTQJok+u5%F0$u+VBVg z^OWb}8(ccAy}y0__4snhrYm|At7Cqvw-Art-p6?`ddYF3(cJsDBI&=v`DeKcJ4?}(J`cqNkGgZ~6QUdsLYTV1M z&qhh8na#$AEsdVO`*Jm4_Lzre@+8xKN$}8~io~Lm@_4YjrV?m%bzE0s^JNt$9Mu>q zWaaiUU!~@V=c5{^#GXi$h1wCmic{ep9G+mTMCVhMvI+ zjh;W%{P7)`>uosqg>xn~wgh9|!P0)AgxbnX<-zW+*TYR^q>=T1d|KS22g>}H$@H(# z+XWk)0Cr*PNNu6ixOvt7e46hDB+xjHkgxXX;gYE;5hyH*D7M zF6c?9d{$JZ`$~CM`b+6@LC*-ps3~`R4;>HnNflW?J+7OmdwA@tAIN>lKhjJvR1>L{ zQvFMA%`j(vAkC3g*OS@yLLj)R+c#7}iCs06O5BtW?D%Zi-K>Vom$xWr9N6Yu6IUM* zwk%%a4m)SuV7bl~@6IVzC4GC>(7nk4<-flePzr2zSgshfC~$K1v8H_gq@QoQ-WCcj zID-|hRdfAy0oR+#)7$NsETp@=ITYxvpK>|P6zP>$Vf*A^#4k?_N3`by?M!XaX~-lN zp={&SIy1Sncg*SFXlAnPMBnR5okM-`xxLBj4-xct`EWxAbAPmM@qBudxMe#f;m?7& zT)5$>l5*!uN^PH*F>NVo-C`~DmF$S^Q$ ztU{rvD#iZ|{Y#e*@aZ_uO!*R()bi}Akeqdk*-*iI|LVg0M~susAK|;T{7P!ic8{=Q zr-a0UP&qi{<=4cn&Nq5|q}c-z#YL$G$wlQnY)6oqkb@j$IjnuJqsvQWo`&ln7s1GU zPlc8=g9M7My!z}u{ea&UCf*E%|KY#XdJrmKyx{HwR%o%;QXAkvW*cm-)7GKcht`kr zsQ#$ld?PI!Lk?T-d94SU(d--q9bM7{Lt%8EfHSChU5RjLFoVmRM?Sv$M!Lya-9qA*wxf}j_~CI_Ahh~yH` zf*WYEo;^U(Ik-~iYcnOCQggC7F-j{Wz^nkulZb)}@bQW?XVu^QS|vS) zq3@}_I*YFTus+Ou9(FP$>Ux8X=%sC0-_`efbkaTwsWMgYXJ)Bl3)P9#xY5{0w?Xa{ zdnq*`w*Zm$ypYw?`U;^!bzFBFEk_EVp%#<@S?(F_KHfNR%+sjr5s*(yH1T)mV~cnd z2GZ+JhBcaglZ=`2WM;I@{IW85_yWDrp^l5tl4(Q!BI&Wf)yCKtJ-a#O&66VrL3CB| z%ppgq21lJ2W7RTd!3_p5?Ho>%@ zViz=xh52udZMdJ^Wq{6}+zF7|CoK?jp{k^?NFwq?vxGY(^`R6hn+07lvzJsaXhbVu z%$CXw_+r9EMn;Cl-h}77v7bgwKC3+?d+cGr8T&@r@v9N*#4{}(%(82TuRv8k8k|#Q z`qVMi*OGM`IeZw8!{!r);Z=L(911FbRF6bIe^K&h9BTF`rG{KPw9m&ZcWcyl_Bzz_ z6X4>aCW-ZK@f7CHoOqAp{1c#ic-DK zJq0PFK`*XuBt7X#?IH}E?cgb)g2nBc;#G*8?RER*eq>$Rx=xt(JnDlymirui{2UOZ z*k(pHoc2v6;Op^q_p5U$mhRj#@hXp<5>yb!1uk#QkB)W1I)I&i8ij~xOfAo)%Ax(P z1(jIAV)Ijv9~+*!`HTI3T@e1KDj$Kn5~On|5e?fR;1`HTJngt*z)QON3U2IEJnC{S zi%{R8%1PO=JyZv1M0m7xsL*7WnLp+B+tnZI`*dzYJw+$7Bo?k}F4?#HbV<*GI{^#q zZ!1-r;_GLiq1FB#t(5h?M1PA4N%fjKok2Hcy>Lwq$A2R1?r?yFw~u)5gJ`(-e1AR9 z1Q)r^t$m_tq?ZRY@1DshZL#t0mE?5Qy-CYQ=}G#=F<7x$j2P&Xo;YP&s_Nw-de~Lm zpWHGUPv)GS47%%=(GCb(yQT!NeFq8y4EO3vY=o;K2Q(9okZ+7N98H^jXFB*Y*kr=UcBnnvmRp_ZG-Xd~lH6KM&&~utl@mLRy z8se~jyiPH}-RWeg5ch%L4^6GNDri~fU-{28b@qB&7ZF{x{CX5CZnu1&pYlvY{m6SK z=`r<2#gm>bXH)mB?q14meX#$0;dxz#6=xD?>?amLI=-y)^ra}YAMPafSjj}r9DKl_ud7^uogt~V}e21 z_Q^47@@OT4a7`ZRDLuo8H`P6m02a4cI-Vr@@vLoXcE3lj0-Z4LwmvcQ{;}oh5f@bg zA|rXAO<{U-a0S zlxUMwpe$I3qRxiNrrhkygL^3rrn4UTmS~`+uLXmxom0r$f`f6&UQ@#K^{)*}J_z2o z9UrdUYgz2?T2vX&NICY{hs$}=ZXWzWL8u=f);r}w>ZM7cW4~+1-;Q-9{OMEfeUohWi@aSmkay*E1Jo9T)a0St3>xn zEGL|dRX1}0dMjcJPo2KnQwfz3-J?%BoDE#>Mn+Xb&wd@&R)2|+^e}78a9_0=lb+yV zz3`{|@Ir-@{ByN8>#!KNr^KSD`WLkhw<8IoZu^y6u7i|?fu5eRQGF`^Rd?OVfE8sG7-gFO?Sj3)jQ7hV-x~xqO=cpm z^R?x3k$+gpsGlXueKCH9^I!hPpS`mow`g!v#B$=QWzk)EL{aUd#i2$$-H?aKfy$v8 zP%kQy$L_{;!f4!4a*VVU&>d!q%bdBraZ~ly^S$R{c6UsEyAO0cYVxP#!=P##RNo7s z(x+4}PgP3D2{ccoaf4d`bOJ2b!9{(>az81BCPr>*MkZ3Gmm;hnQZ_BjLLnu@YxvUk5tv?r1z-&S&MAB*D8J#$B_H&A;e#oCuO*j{)} zP*I%a$9Ol1_hZ4msn(osVDs6%2TjvQZUNm)ciuz5d)tQ&FO=uk<>M8WFKmH=Z>qHw z_7#LdTnmUhAQaHfDulKNG|){-P52Wo`DS4yRh4B!D+O+4GZqBae%v^e`9WrP_Ylyp z4B4u{4EIjbR)!W*z!V9%U4$ma3}oOVrMzUOo2bmpeGK-HzU6JZmaW4l6+=BDJ3Qp} z%lNt`{11o3R2bMy&aDg_eBOPnU^cc!R<`Aj#Mpy-7QXWTrqitL^?S<^SjFi?jQtyf z(IcUs43ksF*2N|sZw81M+5uC!DMOx5gPjzX^kvyk1#RP5dq;5&QG zn$d@ZoV_P4Hapel&Rp@O_-oMv-X{m7QRqp91#nu{aeww|Ths9r0dO?6?ZdU?(|iBw z`2J<{f9p!nbDgkH_bd}lJzKdPCs+2Q8Su*0h@u;8q|T3ps@F(`f1SNpTx*vy)7 zih2p^!gb%h?25dT)+_GjS<~ms%tMvVm8C)89j!JP#+`%;JDm-&2%zzcZ^}>y2F$p# z-o^GvmCie8Z(gEBYOd|KEdRP~T-T2R%DL>{Kiz6OQRS5Y#oTc9c<9w)jmb8mvQ-ww zJ7;syYiB&@$K{$o)D&84n2q21WmH_!EkD>+T(zsN$C=*uRa~a>M{CXKt!G{#BuI582qj{ z@%7|kkN1keUdL;LO@+>;Es@&9q|Hg&W3x@F0ejwlQ9HdjRh{O%ocZH(8RX_h+V&>> z<8{wobVWta_fH~Y-?H_<0j=?uT#t`dY`xmPdmM>x`f!cWLz;atnVfrgyrEZDK>HCe zPT_Xdo%v$MnVCG4Bbvb~nk~FMcXJHN9FwLi`8EAk!6ncOsE1PO%#Ct0b;3Nxzx9B6 zU4AJ7v&T)_PJG))#2@Cr)$!T7ePNm}`)FEum0my_9*!a%uG{m_-65o z2cZlNYPH}^Rij)fh>UyiD;x4KEmmJGd9bJ4G zGfoVNf!tJ{j>{0xcby8>j}Wp_SOc2BP?hXOtBI>K=%MUHW#5-U>(}MR{O-<%zVLni z?uuYk!qcnTV<#tchn}WD;oplZqdgu&`u1&NlIDS}W5*2gx`HvUsY^sov(6nMDMkqY&aOyAa?5y(8SaulGQ4{DPrh4#2R{a!i1jqw3w3X~Q(bSLEHwBG zGj)+iJfO1nloX|Im8>ZYjUiO2LtrVvQ7dJvc9srq5cd(0_K#-{=>gb_^T`x)7q$0l zKpa!q&tvGL!x(4gpSWf{LFq~)Vp8%;jqA+~UNl?ofwEj1Sx+2ip8xSqoKokb=DISI zw7biGk?D630H34((Nd`V*Tsa>3%BtWg}I^NX~cZlx?<^YI<%YW+?!5f1ujUT5v`ZK znfND<7F(-um*Mp6H~XISr-!qk^Nk`izO(g(jr}(k8x-3;UGWPqL>~Dpr3jdhP6>qz zKqZ__tx#kG*)_anQC%t^;(5gKVOg-@u9M z4(+r(ru?@y;3*j83pq8MOskSVT&yaRUGf%hD680iH&B_Q-tu{3dcb2m%KI=!h_Z)`P36oGi{x7(} ze@lq+-JOPvVRxLL|9t|ru+yb&(7e6QtyG56--Q1|cOa3WJ-Mk*%8Oq;Y2lQ0uz zlFC&Q?e=Z1qR1KiOE>)45>g%7~O6tpC)m+9@IP2i6t4 zbj-b8E1TCAcjjlSJ6g4>?hkk#5Hg2t&O@f!pU=6u-Ty*O!5yQfq;P6hx2~>2S@B=fr|d0qWgAgm^U2; zDeQc07zdTO6vjYAoizk@3_-tiYRCqCy!k0*?G*9D;Nm_D>KCtHlBD}NV`uYkH%&0} zh&^%qdVA~cD1{8GoD|&<6X~_zovzt#d#W2^bBysSr2GBuv*`rr7TeEtsA^9H7 zU+aP-5HD-=(t(EtYy`gELoBfz>TrO$wapc4dmCOTEg^3d_7w+lerB4sDy=#`impjd zB0BT?2N*}LUV-1Ni|Y7sN%j@hxM6jCjD+Tn^<;K=IMs%Aed+_glC!qMK@ypFLmL5a zV(!ag*K1>o2jw(B+HYceesAe4qo514)2jnPz0<1C3Wy!ew~L)jSC)I+TK3m3DCq`D znI0SY-LEAX_*%{bX8O&=Zl&8oZFkiA1y>D^Txd(s6`RK!2gxe&?pb&K;6oq$v}2j{ z23Dwze?G&|m1xfEQVV;7ldw~oCt{-ON9qC=VFO7h<;my=_3svYJM|Af6dYXc&yRq_ zz7kff)z2E8-NEHN_d*m<(-DV?{YGe?$S_mbK{b-<5(F;#3y3dMC zUK0aL6E+UmSCn2mxGuV!$J}`{%S^$i{bIC3oXyKYPq~JeK~aSA?_rypbrmxWIH-v8 zD-$WAD>EDtB!Oz%(l97&2EG(2CTBO|14g=}{w&2J5v}?V0Qt8m)4y^#Yvo%J;YFYvC!N^(pb;*pIJ*dS847e}%G%ZMVXko+a)w+0IT zk>qUTk435;eaV}UNU-$?7GnCxaq%|QXzi+U#>+rh3`2;v4^SAz;S7U?=sSI%dk4K{ z(5yzj4GkliF9T5vVsl+8S&#>1otmEzXwylt0vp!S#Ss$ZJS+`E?>>ib+w*+|o+z^% z9IeWuvxH>IMm$`F@W5SIB|=bi?<65n3-?1_hQe(lU^9a_ciU^BdwCzBwrgMb5%n7SbL#}!M4sLicw*H`otuM@_x11``>YZQ7_-tM z#Z{*$dJ`h%U*_nB{2}sx5OD9QUyS$L8gJFS%t}Te67U|82VgZJx_7c z;SHmJf>Qalg)vO~;lA6&@_uvdK~Uh9OwuCKaV>F{IEAjZ?P|a+Tni-TI=sP&Pv-rA z;Oh#4&|tMC7=aMSRX+e9lU#wU*cqo(I=>3O={mXQUoo13P5e3uUs<1{6jJhjHx^Cw zH>bs{i#wFS7hR15kl@9+D$`>AK3}-%Q0~;|Br(zNd{dV&(tR}<9!g{ZWF1$4Feo^U zuEQs}IhYE=#MDg+-yG#eLzNwE=U}-eb!sxTaQ%~E0i#M9O+uDb!cRT48B-x?%YxS2wU=2x^(CZnosxQu+8))x1*6MDn9ig6*F&hhB@vEDo zX)8%j0*7)N*;ha!w-OS}Js|E5(eBhz8E=zJqwmixW_4n23WH^j+Ia1U!&^^^X#lm#t0I`nO*KCbZwk9+mRI=sta1KzEAUE zQCER+UFVAywr=0iU7vn;i1LrR*aWm$^)6L`zzS3;#UQ9y-o`U%bFr!3BywqL?@+K{ zuBcZy2G1O__zU`gAPx%^TzQ4Z%;p;J&WaA}4Ji72l?Qb{ zOV3-*IR9K8LZikOqlC293&YP>*@7`{E^qkEm5;QcbpT)ShI6ay110dmwDKH-d9l93 z0am@FB3R0H4?p9l450`h{LcS~`n{>$KdOq%6Wgu>h+JZLpf3<{!9q}v#^Gyk6tN?D zqClnf9O`q#mW30*>{uw@dsrLREG>@7y%t-2C>A}tI*%gEaM1lAQYgWN2D7uK5mF=& zClAjVNbw065szF9$88ydShmHE)Z0cNS8Q#lDv0RGmHlMs+W3k#(G0Am%2V%*)f2yj zXQVM~w_At8xP{~TCkgIxBxM9~dGcb&AKU(q62uwf{dbL@3WIVN)+9xc2{&l=5qUXW zDA8n@5=#e0TQ1~QQq9u~5G5cX452c>WtoAaTR|4QEmsHlz-g2idJrYMH%E6XF7gS> zlpw!EiF*7qk^P@Up@?GRMD%<`&20=Bs)O9ax>KhMHVO6>*CD6?F-DlV09?7jQJSz_ z?#7eI>Pse4bnZE9m}jcU`su>|U1t8Tx~$1RHc3MX7d)1P^n_Qpkc@z9n~Px+=PL}k z*GPMr!nkn8Za#WxJ+Q!uw=DwjqqtG@xtagRcY!vK?KdL*+GuE{8-|eEV?U>R4&%nN znZoxgl4HFXzHA+ws)AZ`$5)F}!Vrn?o0y-;0hluWw_d|my={ZZTajS>CEc9~_thXtNGB46)gX;7wr zBz?$OL>W!#=l=i}MD#7(_&u7(KZbs}SNHs}?-doTNs_W@4LU?MkbP#8#nD3yh~aA& zb}14&Lp=*wKS_q47g0o)GR@}PF0!g=ORV1SuFfK;8zH@fbNp7ZMrDtu~&-EmPNw zMFfqsBLdb-gGtgM6B%y8In&fA0an(EW4dT;{fSA1{Crk!~hz%|j%n|21p6wj)s-KB2mY zC4(9fN(YKl?V+&f`2!^39ju@BM5wUhMFS<}Bj5%IZ-^?Qyu2i|12NeyXFLTd{Ql|~ zZgJA(&(;rX<^BGXvHe-Xp4_L8Ft}ByAI=F@iiA75ITu21J+=FMz{8+qezv+xpZ1pC$Io`gV{mOR4Z;!*CqSM4Vqh8%@r0!^@4{~b4bu6g)JyY$|R7NfUqtpyGeXdhL(kh$UGp+Zx6xLZlH& zcC2NH+k9sztnH^!ejQHWGn-qNz6k;(xX64z1OiL1+)Y_Uh3vMYAXc8i$ZP>2uKfH~ zstWtz9|n{9Fi4o5pPxWdA8R+eW+%^mw=FhM#8$p+M3p0$%?o}P?XK0k z^pk9Ed{}*TQDxD)5;RlX)Ki@IpYs;tC%^uCO@Em+NH;wk{C0s?AIZ49Sm5jc=_qyc z?C~8i%o2Q1&+-X>G1n0<4-8sR&Jh)hV-Ssp6Hl+Ny_UO`VYlMa-D$?mv@JS5i0!&p zAfr;0=P}kTH+-aPL?C9c$ekSgjl3Q}*lfvf9IDM953Je>KE_f4(i(EC;zB>+!c-Jbc7jZx8tr> zkPJo||K{kRV#tn9P`ev0^`jqva@KIdAj~t74pU8{8$Th}2P#|@FIun_9I!fCi@79_ zWJhi-%T3fv&`vrOQ+F+%>m$8gNvBC62u%PwjYW%DT26sU%_ zdQ!|s(*j_t(PISd-5RS3(KC9-D)yrCqIalad`~I_3&pa5+=C0mF2BEt^nC`Y|8w8=@J2z5<(>w$+8yHCR()Y~FV=A+$_WD)CEBhjRbv-hi>lW8lic<^M^ z93{urns@wjKi}4{GYM6C2{A(k8mTG6-i{z`cN2CQ^qx&(jCQxAeK@^J0cd7dxf6b} zuY!w?-ogTepaiZq)P3A{Kpt8AAyCT6B<=F+@q2-bE7tFl{JQJC&Xb)rJjRqJnW^b( z%O}?3t$kue6_{&DhKmz>0WQVHpRbR{79eVyi|vz^zx%DDxxNG1vdO4?_So%8-F9#9 zp)VQO{JSkD(3e|3U#BEkR$3}%$O6-;w>k{?K5oU_YdP<2^d07f`2erBXVt-E=sTIz zlX89iaq{W=8TNlqnwa%H0rb&>F0ZKXwqa46FsWYuTOuQ3(#Kh@@R{gtN= zs~^pq+1OLu{Uu;g+quD8awtZQ)VV4!@PMaWTeuw2FXI*Ba<7y#qcUXs0``pqE6gx& zXddrmN}pV5&z7H0Ych>mSuHw#J2&I&#ge<{h4=Eo8{M^y32R!|yyDp3D9>MHY&PxS zt*RDJAk9S;qpl)uW5Ah}xgT*^{3`m+$+~xU`#pZqqS!>cT#IT+8IU5`BH?)fh@dT_ zB#j0-K(!q>%rP0eUa~qqCZ4Tuean2_F5>mFH*~#3MhhQi2W;JmzEO9IWF{_cvnzGm zRfKfXVI|<|&%}{ckIX2GBB->diwFilA9{15Xp`*Omdl$iDJ?waJx8gL;*6?ZU$lHD&>uR|6p()<K~TVbg+4Q z#xplaLNj8pK03Xcp?&}7pGF3Y9l-t)!op5+cF#Sl*HRjZSpNWt4fpfg(`(J0%kY`j zfuf7JrVoZIHI%iPuS<-BMRf{H-pbe8#WY?|m!YP`ZasRE_g`zOGx|wa7dm(XWI~Hi z!EI)q-q+HNx@)Pa*bUC`K=^wJ^TN(HS?4H0!9~9k%g4nP{O;C!jdAyh&Xsb;&EJ}! zILh}m`C86CKYJM!D<^>29z(PLad)!$_NVI#ax(XyboeaoU0=Wb(YVU13$O18ukg7$ zQFxyxkfA-iY&<+^5N};@TVc}AWO6Al(SJrRUJImYoR$OEFD#lac5$#4fBV2_)#J*+ zxu^zUm-OZG#bpSu|LcVfxPpctoEm6$I*<65WLjss27)cK2 zm!SoPep>FqF9Ruqb`jF}8IGWFw_YQ}(I$_201=~JZOYDK%rQaa7CstC#%YX-`c#FP zho6Xx7t*P)Yjr(mCporf+-bPf6t9WJ6s|K?5F;#cFvh`uk~s55!+yp>i(MW%#WQya zb3xj`d4UjYzWH*mtp~fA>&ncLlsEx+q7OK2${?T?vyK4T%v+WVoT5|GSM0!c84Qq( zdb7E>h^NY5zt|{kN%Qz|V9b%bow3q3QZ0FhB@9Rhq2FgxlR3C%l5 zj={HW0W@h%QFPm#CIDa9go8}z{hy%3jR{$F_S?sGy~eYENaC5_?grf*t6~J$1jJ{> zQfu}J@nJ^u+msUv?4HiNVJFs!oUZkiY24DC#U&X*9|U`ZW4(m?W9ajVlgQrfPlWAz zMV>tGIX0^@MQ*F@VV`3`Y{K>h1vA|)@0hcgsam@VfI z`1)RL_~JQXl4YijGXxM2Y9uWXz#f}49QQ#!5(J}lQ_6dmxW78{h}zqc2fw@>&h$9> zNBP^-_Y`cUNa9)zJ1LA`!JS!|25LO}rd9_;+=L0@7> z3X7Ip&^*7nGy%PWkdv67%A;qSiu?O{KIn+>$0}Y)cvbU@#eCJnDUY>vG5{8?^o;XD z4O0gAWDHzt4SuKStygc=gSOy}ZgV%k4R`p|rbSx$+FGrA)|IYPylPzP zbSNWz@2&i+T>A?-eVqq=)@r{Fr*~5Gc1!Uwg}|0^kJca!pIWD{oQ7VxOHyLLm-xG>&&80%sVxJw5Icd%IH~{Bydpp^IqY6@6G{hWpj{*E^7D<50ld{K*21soQ4#qf6>A*F5 z!k)E^#oi7FR{IVk?3`@y$nv)ZG0McC`_+c8Y8_qgmsU2brUTvpuvuv3{S8HzXKFWyGS@X6!F(|eN+9MTPNrOYE==Gm!k&`6`Veq6iTRGO{PRL zWL>K0TZ16HbVOMm1gy&A0nA5}u=+VqKs+&4R(GKG>8SC=nmUzs02kqHhn@4N&>DZe z>Hl-`_`XZ=0}dposI>*^q?Z_^hIr1&U>tRw-B^GLfo(jfsEBzleREse% z&WjW6MO>BgUX0u_e#m3XD)4XSZU90=_`tWVNn*5fE*JbCAHVt0M#kb%8FATknOiW% zF9gW2*A%`O4t+ByE;1`R(e-gxWhV_1zN%AcHq<|ud_MKTtxTX`n)5eW4qs({U{yMP zxpwfHR=~gARsU8(UH%HRlhyZIxI@;DhE&1qdRRno?^Lp|M{XUiMPCAwNP|K#CgrwU zG5mm<$axV1LP!GH7lY4T zKu<|Br4(a{QLe5g9Kiw+zR7z1%evxPf^JBOm4E%`+u@=LDIHkWUQvrx89}MUP+{d; z0~DR-&w@Ml6c;JyO;Bov-7bkrLlux8#1m-X@=Sm*VM3DX|EL?*2P z{II+ZEB_O(H+;n}JAG|pdi7*!Rx{dGo*FzHXVb1Hxft%QSz8~kG|hlE2&$oZxJC&?wHtJ+v=8m5H@yRcYh+effFAv^8?AP%@ZZKg??D^!>VJETXD1K z+_MPud?$lGqG(E15I{d}iP+X)^vQp*wp;wN1z`|h3{=mX{Z{vL8S7pCf?4`B(Yf&9 z7pJ>9mB_l~-o&!L02ugk;~TAx*#}SGFRrR>obFASJ-hHA$o}aawMcSD;G^*$&BeWT z+$G-5p+UH3GV)6i9^!JvWS3_!wf;gaqpg8zcfWSAARqUXTeiOW&W-rMp2LXVqlzdC&|gyvbe7^X5-5@_yqPFW&J_zgXw}ZBS9@& zI$m39?NKW8s*Ba|)LnNp|E3!fe*8}UaIwQazR#mZlX!{)aKY_7p7H)~(cFNa|LEV> zZz(iqpvRvSco3cdk{;=yu!_4XD zn*PQ^7d1_9e)^{ufW+;%hU9&)ghFk6-rWM&k8MsP%B}0R1Oz#-!E6aN!iU^WfNl*S zjq>M^-0C`j`wsKQ)Jkqml0k7ta&zdv^cR$pOdMK3zBVnS8j!^pON|GNUrKeJsu#*F zgiC3Up9CaoKXo5p0t{z;>U6z$rs<~p5`IXVqyZ9ba;Q1%>ZIp&f|lOT;o)0~n*D9` zBSwN_#~vyyt~KcAgn0iFC}!Qx`inQx$}rs!A|IZSdFserU0vJZd!*)4B{nf#cSp{} z7QeL1qfR7wxlzfCJ2?(tr@Kzqt}pg`o2z2^(m_=l@lK&K9$QYOpO%AlXBADC8VsZS zW`5;NN0Zb4^r(D(BkLT#$2PiA8G3&WWF+Vs(=TB@I{|yOog2J35q|jAvrGS$q5pL} zdvxs|Y(>ef)>}yM3pJ=zQBn+{Hh1AAZD{uVc!9JuC_a(BLZ#bb$I34xmY+`0iDc^@ zFAMHMXlMVwPw^c{1}GZ3e2)6jfS&EM;wA|H`A-r)D?0J2Zgwy(z2b47bfw1oLh$8T zwA-PJB%ZlhbZvOnrRZ8_x#vW&@%^ff1agh!OJ&Q9JKf6{ixw&_tcem+&vUrVg@KS>EQU&9r8K^7~XAig_oJiLU)U+a2eZG@(FO3M`?FQxmO{`~9 z#kVs}CJCXZc^(+gaAzvxA|77y+lY5At@Y~k`#QdeNSzKVIORL$RQ#8&TOzOuusJ^v z+{;+!u9LigGC6Y$T(&Uqz<6j=^|QRFnNMlSuuhb)TKhIIQ0Bqz5&|J&R?ePC{kc35 z{+?tRuNz|d*yRC8{^xOLt?_WgRNrI2E8QtKZS5a9;HD?qi}^>c21s))`lwJ+Df`3Vh^mp8ZYK%jkvj;o zP#UrgOBiVI7{m!=6K<&S&`Tzrpc94r9_?+8i(!z~`}z2#MiS;hTsx8hzI7P5!m8p z*s5Qj??Pq-2&(QQex<623$`3u1qG6%N3tH~-=KrN7?vg7s{-yrpu4f}0Se!}<`lc< z(-oWprc+rR)-PP{qBez5)xp9cg~^Fqv0!uVs2WAW?1Y zCrrvGor0fc09PMayHx*bL=~5@+A4ecqYLCbsGU(7I05i>_a$yt)Bh}mOrwhSrgU5q z_wh&`ERve+NfxQB9tLDUn?UTakv0yZvkJ96QO~hXzbfxLS4JOB1crt^R{l6+ucRW+ zpNR+}MBB#tYcjt}!)M`+*YcY;@w&`MmFoLmb$XEdrhutIgv&&yV^ZMofNv!>NT)w! z9mC>}|265H@4vyW#JpWwvka(IS&^5jh_SnL6)xoO4-l9AdnAvi%=8 zkPuxO>&LzC(&ci(l?|;=ESiFyTdH}^{dJTje2@fm(efat%_}R*W9^K_IK7@X0ZCg4 z3aeJxZ~V6aG8J(%z{Yr}?GMrNbh-bT9868#7Q?BcP=U7&5QBB3ab_%3;MMQZMxnCH zC;FV^-CTc=Ef~VhHQE9Kc;wBnM_vTVH!?oPh&JqVgs8?jlvHT@?hKRl1e*yU%blTd z{5MA514#WABhNHK^unZd##0j!z`SN~g%HKT!yIhnGx_xjK~VMTXgl7MzGUl)7Q5Cl z-Z%}?om06k3%PtH4s~q#JK*y^zE_H@^HT-$1j~DNW15ce*l6bg#gR>Hhc&+cLEA?- z!e)5CmPL(e>pFhB@FEaRa3CZT-^RF-3$6s*pZ;`0AO_u)~+7 zwK97ScufJU;Dj!Zsio+v4BsMA@OTn&83|l=**dFr!#p4&?m7;>YU5+e^)**|?ko1B z)Pzp|aMtfy-6rPFyClZs2?Q&FLc--UIAA`EHXl3^skXs9vA$Ln*(5^?Vvi7A#}9zI z(Dq4i>`Ilt&OsvsM%w?VuWbS5anZXZ2<~{XWy!Q1(OKX-h43G`&!d$hJmy!|ws`{$ zTn`8VZmxGJyrx47-*fl-tGreQs^cPAa7NL(`za812*LDbCww5ZhIxcd@gV)vlp_ViVx-Dm*^g&_%TNdzfn9cy&7M+22-2 zLdT51?AZ>?3REa_5xxnbIEMgX&_aMPE)j_|Vg7)i!=jZ`{Y((LT{>?LU7U1VGO7L+ zhc=s+#Nqu!P20un`!S3-sGxcu315AHWMRhKQxhuKzt_wu>fSXu-fZvta^QBel|Vzc zvtoG_bs$l23}=VLa1o?gAU=Xq26R{?)4uskm=_w8C23!75r# z;Rl-;pHnjZ#d$a60V{dA6{xX)-i3;)_4s65_3AIP@4mP=QBz{O2e{y6c`LutKWVTK zKn6G<+|tmwhTii}fX(=SPn$u6=~=cq4}2Fr*21fZxG)!);770$|D4&xr{{_V zN%s>u13bQ*OH)^>ac(h#EcDbqkx;GC_2=-??T|_5(wYxf1jqW_hr{JM%j`Fl{p7d% zxqz|rOXa#dH=N23Z0j^=akR1`E{1#01||pqS!n{=16nIhLqY%-wb`#{(B1s+caPU@a=4Z>55OIxbNI^7w&pQ zfzO2ntU%5Fq@BreCDHxa8#nATWV>AKn~L=51Q)eC{X4HKe)%+3t!!?ZVWvK$`{D!! z?i`v@X>a!Tz5RRY^1HLDM|S};A3XzcCF;!;rr^ z9vN@VS@8ZiK%AS@`~mUxN60_Y3 zoJB%}J9{p%Kby-pV>wEIl6NiYV@PLm$v{E8bD2&&ZBk8jD%UVJ%T8QasQk5XiJML2 zmdR+q>ZvBy>h6=U`s^*AzdQfF zz9q?CA;a1~bt;>WRi!5SuBSOAjIns2-mNbSXS>D9*AH5h-b&#RAK&vQ&HBC&+BriW zjA>o>a$fa$lN(c6S$QQ1-uGZWz!SS*6EC$!x%0`QYjYglI`=l4GA6ph0d0sibgV2z z>S-3def;oxCI@NHv-`^XOny;g8TPN4kEH8agFdqGR)1)jI0xL(XW7W>NeEjLK6eI6Ipl6?&w}B79uzUT*o9<~=S(tXg%55n^Uy5{$nOG5E2YBjX+H-m7DKgwYs$4 zjlue807}xU9M33Ehk=t?Hd|mN(c0@Htt}^%Up%H-p=EQa8CU)Rm%5KwG@h(n_fLS+Le>=eYWT^x8nR@ql-+ZY>#S5`ArfqU?a& zP`4y-)3ATO_qnBI(^|{Szvr0&uW%N2?2k(0ttH@j%aCZN>yP9@en&5m>-YbePQcm| z5b5DD?wJZ#L;oog@cth%0TVDba#$Hq%adR1V&?dg6Wd?H_Evm<_Yo+O-}vv^0I;eH z*9`7bocqqqc{If#J>Fsv&H)ZTOWjr{UcB!)!Td$b9K3hy^UXX!vVNg*M>sc1qdww?4uqgCK<|UI{(?8((wk645p9YQsi#W z*)68?m-<5~Na&RWRpg3nY+)1nXuusGn0MVEQi9R{{yr{VW0Bpy%r)rITl#Vite(a8Epi>ep<~wDOYmporbJVmFZ*@wDb&nDu z_j1OA8udV1W)Uj>q~<9nHYYu)dXVz&u8YYCArZ53;0T1lB95R6w`hN=?I>WHTZ59; z96|)L1G}{``hvO*JqbXVd&g1dnhhTi`vD8CPgB-dfPYzS$&*Y)vej|8n$}U|<7{~V zmbgB5#b^89^OXK^Jrw}Q?L8V0=tpoJYtjvJg&rJvGAU>*fD8x6v?A2&Z1E>um1Y<) zRRHxQxV)jgInB4x!3PtY*{1rTFoF`(Hxy=PHV;+Phe@NSAPqH%nW=X%jOC&7_rls_ zh+czXxn~;M`UOmUYc8Bg&s_BV#?NC*l7R6PFudkfrQD4`X3{s+u?*QUR3pn{cFwlB zfXd!yU1{O) zZ``&|_RRkOUiBbWK5GSNun#(13Xm`qlDO>T;GeRL`HjO-gHkrBJkFa8Vi4RRWH4j* zaPn51yUiOhWshnic4WyGE*U$lvd@v!ZzSi8!gCu7q}e~K zjfZh8lSccLMs5J<`CqQj2_s#=c?3GYd=qo@6B+x4GHtDE(J_!jVNoH(x1J|adta;p z2rAbW_}1(iqak3A*%04`@{)did1*c%d!uvX6tBXa>hxe^M9V1a@gqAHhA^3!Z~3hoAmVO8@7{Y%GsO0%Q)Z6Ra0NVD-eQaX2{nySCr}Sv|L3QKkBa+74kv z16xv<-leu8Buqlo7ABIv9EO)Q2C!r4gC72XwHC@^#8(cG0?Cf;ez@d%AjCSVl+8U5 z7r2NAz(2tc$jSjDut!)IL|E8Q5N9y}!dH*$53ql=x_1WTa%+J7jOJ*Z+ z=@+o>gV8i?C&75DH4u5n9e$?<`DZ}>r>`&SNg9W=KX@=f7UK~{d`lk(WM389@N4}kp-PE)0uDp^Aij@y?-Bd~p;_z@En_Ug(-=IEKvH{$3f$Q`~^P$6A zE~!(Oa-YvPzT_wu&jbH`$h$3-=fLjNbG^9nL0=@Gu<=j<3RnGC<%7YIfo5dDhbIaJ z2;Xc0#n5c}yWg}b`45$i{^qonrSumK0+nTfPz0d(jpL&^(VT~WkmC>&@&uEdNl+M}pKq$JkP5GAa}zH6Ky{!ZElQd|_kDR=Nz; zc#D!-_x8)M7qh5IV;Y&!N*bNjtrL#eJ66RtsT1=E(`QAA6yplI=8@i7B0m#NJ zM*q#%06o4Pv^Urd^$l{JbtN9Z6lNRkeLyj+Ow-LoX+{^p^cW|ha3%{>J4T9A&|5+M zI*NS}VZyYBX81{w7PW_{xlrK4F|x}%Q5}Bbk6FWVj@(>8Bp)NVZ;@m)AMg$lBt)=Y z;OeBRM%b3s>53ylnS3#P@JseQa!wKlF`JD-!Q5>UVYRvIf!flfgAVm`ixiUctGe+I zN&gI(e;tKDx_GZnBIcDkNL z|K;0I;TF{7SIDwGAWDXrjpRlxy=nZMG(yc!jOje?l}+!qI34^WvozGg8P=`JS($&g zDG^e31C(cB5dJn$pm12dA_TAGS{esPjllaQNeV$`h*r=H>0q5bT%#UDwlKrOs$|C; zs@_3D0g=joS1Ux@0dRp;g^*@rQFdeHKtUlioGuAgI0si{?k8;%6Ay*j0d~=eD4c7a zHoP{IU&;rBv@x9F$#M?ft>ya}cZWA(xFJ)qbJs#)nEk`K%`O+gSsN*o2t0Ecs@-OL zl&a!dCww(228yrVr#Pwy21!xV7|W`nfKix<*%ep}VyY%!huOlMuoQ-wp_v@_f0VQ2 zkLAh+0(KhuvmbVdADRtRb0b78QL7G-kg7`7Z1hN#9g;m+SGDgnkzqI=V4DXaRD$eI zx^~7(TP(AXA2`YcC7!;#46=GkH%z-Wvpx^7B-yqVQ4&~4#`>A;9;*+m0fjJe=hH$3lB#oS!1eO$WTJ137z0jHM(EdME@kZ z(HBEdvioQ&uOupy8|9rD0K6ATE|KK{$dxa7vZOka&mRtAP8>4^%!AF#z3V6ThA98f zFgF7X4|IDqg>g=ED*!TuYTJ7q`{tBoZW>@ueemlJ5eDl6% z?m;CC3R+*i!-B6|^+%vYMnr1*=i6DIGwd&QBEGcAZ%aA5CwS|%{X5SG9F_c+AJq3} z3y#jQcWLWbDM^>Urxv)XUTO4MY@3WaKYEIm&{=NRY!^|AEJODDA>DE1_H8CtA;ZAR zZ&}(Qo)S(6aAG$j+eAHi{s=HXi`D%pXtc>`nacGTFa=D#FY$QIhqBD9 z;hgG5${O$MU{~cvL*ZmjkK3Xvr>{h%eSL2A1Z{3uF~&X6;AGjKOPm4hgD>AI%lYAh z)BwE`vs)VWcH-9}2Aj2<_g#I9(OF$Xs3@x(`MQ7S>Us!?v^d!z;X+wkpZ#TTZ58=u zpVYrZ(7!y;{|q#bV?Rt^eRO$c(?tzs_bFj*Y)+n&ypd6^@u7b>*gOMY6G!^xDA7wX z1JS77x0TaLwB0#*IyO-JTlIiZ{VcK2m%DL3_Dw%tV@I3_Pd{RfHBW)X+W!D}$=@@Rsl?@%795uD^G<^!)U7(oMANR|> z#m|cJaB`MPd~5{4p-0+2wF-xdXeZQMO+2Gsp3e>+tZTvD@I(4f$;JZv$3|;sc9o9~ zZLCiVoDE%R%ZoHUNUs*K1>pYD#H345MNY-t`)}C%m5ueuyt^ibR{h-NSwm@s&xiZs zp2vKh=~PdE%P0V}mQc&9)b?Yu)|JFRi;vDRS7?e!#Jn%IzasuOpX2}XFsb|xq*a`j2W+xmvv|QcCREb)>z^e7mhBKKy zWyEF&kGTnaHyA?e$e2%17%-DoIP&XcGo&9rSB-;&xj36>!nD1;z1Nx^lW+r-0fX}m zC18HPXHPDk`{6!*sH{&#qP%_3t}89p>Xf$NtA4sd_}TyrhFO|zy?+V!tK99{H(&E_ zVBv+()XJA&w`rOD@i2n#m2O`MH(Lti|EU!a=vLHaYgXXB8!~ zJLA}l{4T~B;b#_CV7H74iweW2obayaVqd$$!cZkMbKD zL8s5}2+zpw?H_%M_PB>qr6>#&9u|d4^)?h|nFmexq*s2XRq2sPG!hw1I5k2D)AV-g zD#w>jow7p9PTo*d$$_jce z?C8JZKCONS9Is)ip*#SCbKYvcP9R%)b=3~On2se^OkI?q&CN9(A%W#hm!x<3nB?l> z`p@P6#T8VPg!_X8zEsY7d&f$8Nz^P~>|sQhzqI1j<_)c~ZtTX1+DgsUHB+n~Mzjf? zq*?mswIRYf@7eC(NVOIY+kiV`I$hJmjyiEF5ZM6IKCGrVV_Rf}c3*6J(C7UuR{7#h zKl4bFs}bOcnla zM>LM3GSn(JNoQaZFijia%&a-dPEY|CUWZ+t%}EE9CJ~lvX2*Is)`fDb$WSS{TGIE* zjp-?6$?5Ppn-zf!zj(HnpdKovm0j_m)PD6!eOl~%2QQPjGF?KGbE(iItk-ndR~@nY z#OnX*A}6!wo|v>D-fT-JzgDYtNZ0(UG1?yjm|@Acrs!&M3mBEMfNX=d*F`Sij*Nnp z&*q5=iitk%%X2JU|Kj-JxyZ__(pkc?AePp{A)ro5 z%x)kXrq3lX+_#D8t?s+Mc^A*l_iF}`5T%b-UHc*n;d-6rQc7>9Coy%cqZPulNmk@axrX7JQEr>AV#i#d$%CThIg~Klvh_2 zB$H8YmSpE*bK%_E3gr#1qRZBCf#4X_#a^2#XP>pj}-7Q9$YP=MzWd z(SarEvp*Z#CHA=lj`=NAlI9bF2kVDxecG^KnBxzCLcf#|q0$PQZ~u+b zrQE|$-(rY9gy?Eb+Ap<%=4Ql(_7dlrCgIO(c2P&MzY_rJ*ON_OEhWvFSXDI9{1X+w z!jM4*po#hbDW?G_xtqbE{^L zPnuL{r`z!aT9Lc&l+TY2hFf|$_|}Y`0cx|n%K31|w?;17T#t=~T27+3gU``Mn)`bD z8L{2;TK{Y7H+np^vJ+#rl#(kqhSLT|mRL*Y_CZMaKM0f{jSapFBPrUiCp$jK+?iqv z)Jfif)zOu{fBNJy%w;gEO9glNkN+>`-aIPl^!@*zva)iUY{8Uts>wE&$Z^3?ry6Z$ ztQ>1{McgJSQ4z^vamk!C!)4ms#g=KT5YbE#1D6oY4Qf@3^ZV@Q zIN#sze81m6J%{6g*XzEo`?{Xj<9XfkGuE2)UP9}ub(3@{BGZ2Gr%h2|k~@J2-8T;Tu@^bLm(#x><3{6>mPHFjI^(gkNz{AQGM*2cC%blf zvUdf#ykr1Uf8q01-hEMXImBpZMz}{nEh1L_VYs@5upGRyNDmQx1GA6m+90_WyAtn` zJ{@R_bi>w)m3tHY$&d;8{fQY6HWAVR5|@EEz&vZ`6&Vk4~5?VmC{C-#aY7U23fklKL{nqsOQk z1cOD=l8^N`Jev{r;VC=aG^ZffT4TcPM)0Mn{=?E3${R1UA1AnpiQL3aSWRr$Op~(? zgN07liaAzg`m6QY38xLB=AT+F-m#Dvtn>K&ne&FJDA@**1ryVEqD$a9UT?@i>vwv8 zS8*k(bS?UrxJ8?}CEhylXRPa*kQoi4+oI3Yw0&PCS34})y|~(W(V(7wwpny&YS6v6 zaCS*1^+4biE&eMN&90$kQn}SF-w)XOD`Dt6H}~DFHzW_Ydf)dL%daMVALTaCSxsA% z)1*k($IA`-SCf&Om9Ncn+_da?SZ4x$rLPkT$}BM~IBIR zDU+gDju(%~R5p|FfADt7n>z&!!?j&qnt9^zq4vQuBLAkEyEe}VO^TqA+}rH3jLgJE z1(&z~)K@qUyMiGBXF#0typ{rW-Y7D!h=lT}6_ell_LIuU(A>D45=NibUMpJUk!1R* zjwdUQEZ2Z@kLD&DW;^4okLB;WbP4p$;2Pi#s}FW?JZDg1uz{DXQ#*s0cDd1(*uSEe zp`DuVcW^AR8+cDWN2?(H<&!B}Q&XAT85Fk9t_g1U#LY z(;Z)_C-ZYo%`Uvr-Hc{lN?FlfUYJQci@x&F^v6OaKUQdZEYTayz}OH*XNwnniCvNc ztepc%_wc}`|14DehwbyPKj7c3A2Ru|VqHsjm*hf4FOY~nLXP;Q{jhcqTa+bYXC z48c;r-rfQ4J@%H-c54hIv^eQqH{4z`lB@sPuV%E-BFqj(ENt)5b73h$bu_-*PJyrx zEKfn#zRe6l>>c!dy|Nt9xtjep_B&VhIjr9qguGV0GaeSh-3xFHi+gC`%OOH;TO4zzT zw&%_F;|Q;lzV$GZ2*Quyq|d$F%M%PV&5 zX@|V@K*`rX+*n1m;it7Nv-ChM7Gnq(Xf!`vKhX$0u|oyQpQC;^og97N-P$x<8kU^V z%?;;Fhg$~PRbXV@>Eywr zXf*R!F%0u)ENaL49eIo{$Mr$-Ybn)O=}Xb$nqa;|es8biO_9Mq_-_lA91=*? z?`!P;@3gi5v}9)ws-BN{?OG8@J=^TZFG=p7VDQvPyXu$NWU9DZ!^~JT)HdSzz&W|y zkbFKzs1M;nJ!Hs_o;~pKB}g^5>}&`tWw_*zL<`|pc}?Ipc^O@BI1EP9P8~*ec1CSM zARF1jj?V2AFlbxdfFeA&FO#Gp50F9&<{dHK6sUzyMTZU7Wo7cYL#Skfa&&Bkf(q_3 zB1c7SUYQ>adlXAtdA;9IpOsZ_1}=*jjszDplx1qqJmp$_|){u}f|A%?w0DlNdj2^ZQ?LwUaZKk`|`#;crj!kgk63@f4r?xW1~_1=g3r_D5p~{hVdp`{*mG z$0k|<20ACMEY&xTsz!aP`~_uv_W%mOroQm;Zu&mNk8Z$>NqTi3~TN< zj`L;%%9icS*uHSpS*AU!iVHlcQxUU&N?f}zp7klo!C@Ipff^Ok50n74eGaY#5oR3)<@quLV=uSd8E#jjXT5i$ZlWjMUx#*RDA;=Os+xT40Q7C5!gC7rH zyM3^^wCfi*D_R7nZ7ARz&bNi?EKll16)H{N3^ZcgTD-L_&4Z`?{I~?joIGMyka+)X$`mrroL(YsO| zvoJB8l_*~teG8isLz7Y!!UBd9Wz2L%Vby_%FnJqXo?<- zY?1meH81HVx_fA%o8w^3G;4qA*gjfWIiEn&DV)lRZmO+)ZxKy6qGTDQBwmK->tZVHTu--5QFUTt;hat91UJdsPdcUT-ITfo*Vjta^%8 zAs!B|m9rIZB z7aD7r(T}>eO7;MgJ5n|=Q~Js#<$CpL`I(JOM{!a2H7$4FXwH2(_xe^zPjI(+uPtn` zk7oQ4n3S>0etw|z=|bQSVs73spkx$5+vj|$M6nOceSe!R!MqQYRZP^f#)y&+7|($6 zW(-Fe%5Je16<=8~uVSKYaF^!xaDqYG+j6SCi8CzA(cakbueh_X8y>H10-GF~{`~f( z#mTiV*P_uiHu)=t#WVJ^ICu~v#!vi|eqasKGIrTOKr@Pwcc`^4s!4RU@?T@Jg1QB! ztPTX%>fQDGkI-Inrg}Z4k4uAc$5$=B$g^59L7;k%gdpP08iP>f=-K zxg*d0$C6X_DyNO|=Uc6A6O~oBy)VV$rY4^+3z65%2cFt!s?wy{Bg>WYyEkITc-4ez z4<)b!K2>6c#q#-G(rD-W=;ik58X`h%rlxA1XHWl&BWh(SMhDQAMUB=yvL!UqkUC#i|f!A zYCP8YdtTqSEk%8n`TlWPyV;?Tow4<&jFuID-d#&FIh6{|c{NalBXNNEZ}Fjt<8{C9 zTEBgmfkRwv#M)}>CbRq~<=}L}cKhgBT@Dk_$QS3ZRx3-By^pR=wLKSiTl8u-FI|da zHz|%4Wi8t)V`7Q@tLhVmKidA$*8?j~#OcRX}eK^W4%CQ8vDsW8x)o|Gc zf$TYa-cz$Cu&zD08j~hrP_J2$y{HDq(%^NMdGuSXO6{3FXmkJm-w01-uA9K9fjvp#+aIMnh)x)bff z-i_1=6X%{v8P~slHtVJmmcC;a+?Z$-YsJzEbd;}OTOmCLydb9I4QrcACeh4eRi2V2 zno`454x}4?dQF>{(Ece`bjr<5G060DF)MX!P_*kCEO8l5(w#0G;^!~RxED7rdtW)8 z==i{;-ldGW#7k@~aIFDi%(;?PWNv=cZNNhYZr?JT#!fcpJXJ6BiMa#~Kipf1ZO*zF zq62kfv>oBoH#oHz2F|s6OR`=?EezffdQrOz3Y?NVeeEnGSTHQA9~YdPCd|E@FPh)% zo8!Js<0rf*S#aAbX5$x((ALE zG|QZtFH)7SaNc`q8CcKzIAfrgyKrmi)Pb6uowGmJO>W)q7WIb&Uj0SBM+ft=(l}}B zeiyUo1PMGE^pf{@9hz-(b#YdwYNfqLz3Gd^PfXWGOW!pF4;B59K_@H@y3WS{>T3OzduM~4ymO6m_QL{qft<%{HJ^pveVLv20MabmIlXC z4bs{!B7ZwCe{6)+E-4$SEoqd_y#fbYTA^8XeR_78G3hNaw};0#SR-6=WtkPtrp!v+ zJ4oASLwX%y{Ey9{2k)DIYos&Bx;)ufx*RlzvyCJYvI}=FBvsSh;L&SN+1ijs26f885Y6z=0gC5@b>*o zupfE7PHD9}iZO9mAd7o)p{Qds|2Lxm!`s$F53inWNdZj~z()uk+b&T#eYQ`y(~L`f zCenUtyI~;z5>)AFO^Yr|^e`i7bNlDZjlhLwr*4U@Q-v!H2K$`02LRt1zHNO`WyC^p zWYf^oP8pYO3qKaK`C=0g4}eR9W^`z*W#u`$T;e{Ju=xe2-6<)w?`BzZ+T|u)a#ev6aoqj5}hfPKx`f$ec*;wgLmkP zE+GlT`r(ErIgsYOEtG2ZBhDy%$|=e9SJmiKdf1hMd1G!bjs;Cqfa#oC0L^`cc^sC3M+v`R2)h!^Pp z(5q!o0Bvi?Lc(QSLdLFUl#aBr?j6OwsHEx3vW)CVJNbZaQ%S0?1A;%0qWfgCD*Bk+ zUJK+0fffC?$DB*67d~~1J0`cXRcZ=t#>nH%*8c{K`S%;|FX6r~<8e){<0g>y1UGWi ziDYS8ouC=z%SoQ(M!InTp|*3oH8&6!xWUo7)r6FO?cj#FgWr;t{w#zv%J&kYhRQB_ota6AVF=Of?%Bzv&wYM3k9}hNF4t(}dg!Q^B2fBO zu>8Mg0a&K{E-^Fh3&+$;3j`cgN(BPebk)p8d2*>x7UG-tp3-hBC6arv?Zm~d*Cs>P z|jsv6!{yS;t%DaRQ1q^=eJr0&@Xlhyx@1H~IuTgdPEL!Y0lmNotrq_ZCe7Z zsz*UXKXvxwnk|wi9|ZRF4*@TN2g}GWK|18|v0+1fWBCx?^0s<+vW;GleN&JFXVkkc z&-UxK-Ihi1%-tiF=?-b$GL~L4-bAg9(M++ZztT9F4UPyn?JF&VMT~g0aJ-v$5^#2@ z&f0>(Oo_~K7xv%@^8%%CC-56i(-)IhQ&azIQ57bw#R5$b-q^XdF`|fdOwpcSS&^xb zYEUFLa7r|2vM?QNT~f*V0tx>RGPbd{n+7`8gfQ%U4Guk; zkVk7!^a+b`=$@4c~s6P4R`_u5v0 z*!L*3rY%a3RyKqycS=I4!obbdokD+YhQGum=~1ZYA->yP z=iU=q^`)`WFm#Lfef_y_Ep4W1QWODGbuC0iy5z)Kc;G@e7=GH^${bWr#H4F%B@DH# zPs*0I8XVZMDn;Y(r+;UygP-f;nW2rn-_#zx0piy&2vOmKAXwEKJZl)xqB1=J=s);}Ozw$F_38S&Bb6Mn>FEHSacnp`uE zA*0P-oR5!(qSL9(#M~Ved2VaOp{hN~Ah&I{*Q?g0lnmJ;LER*a5um(4wk-BS9(*`7 zHPIh1tuJBKfd+G1Df9~G%@LCi_L|WIbp$ZJ-My-5I}X#2T%K*qFHec-D4n^`b7Fyg zFU>_!ZU36M+nlqC#P#pr_U$&0=YOGumRA7`in_?10jDzt%UsBMEZ*9!w5pWB z3%u!Z#wVSIOYfM6mU9IYemWVqqE^LQ9x&_><7+C2xS8+_h8z5c5JJ9vPh zi0%eevY%ssW51Nw?knwR<$)5rU&HdV;mlGF3f*)s(05QkKlzH;xZjFiFx724!@@Ah zz+rr@F6Q87xQbAz+q7J5yt;}N_|XCckcfR3{bXI!1_W$8Xl{)fcFT=SufZ~i!thj& zSIc28?6fbcPuXs(w}D$447CH3aVcYK*l%Tpn@k*neLRwL^;(ai5{ecNqAxx@u6M;u zUOXaIypoT`^$HFJwfJ_yQ!DV^>h(3OW`)vY9M3Q_eY*xkLBM@c)7e4~OlXf`*+AVE!CN6VZwHQyQVc(t#r z*lF{X9sACvoGSg_4cB=_T~8FtF5r20(WWHbdsjd+^#TA@@tUFhApyMUJwfJJwkhq!NtGxiE zGvA#tUG0Ht^0Qwpkg~BnzX)%L)7yK^f6e&5YDGkC-abH_fLf-jCw5Q~aGBwq%nlrS4UckO*_)gdTVfN30v8R0*PFCppO|t2a8uSLe#9 zY*qWR(AQyMFD!CoI=o?DhRNW5mppw$r<@x;@Ueu1H^{O(RP4VrFMg!{X&1=QN(-3k z)KWZCM(25Fs4#IgLvs4DcQ?OC<*h#eb7?yk$UDI+Aw>Zks^`z!27 zK%v=BHbN2NY#OUf#GS&KY5D5#J#^fkqz@Gs1a$Qk%0rOpfA^bhOx|`u< z*tc`xS(a%+c3#Vg>(#lLi`nkY3t^B5h)pvWpe`*F_HIC!qj+}<=x22@E9PM4{EM5J znTE~Fwmdq5*+Y|O z)|*@(~S^#bbaD>hi}ik3t5z0W-1&F!m_u?~cX{YTDBrxI6u>1+=> zm=!TF^1Qura-+F-^0UQqC!HY^R%TUy00EgPkIJ!_%#4I(GRh2{sAXO5C{q!S(sNMB zRUJL-E<^3XHTF(Df`T_Q6~GZ6Qc-67Y0--Ge=)PwehB5+% zWl<=5{#wr;c4Dh>y(o&HcG2waScP&#>^{?DZ+c>MSx6SQUEWd4>k?1_xfuY%*CL`W z_P#oeDbN1c`$HUX_8eQfJb+jYh;v{fpQ?)I(n~;39Wg$E`3+Bca({#L|_XM z1n_`U60-1?m>C&GZKCr^M{bvuEcH>7I?p4w$cbVI1Gq_LYcu(_fzXg4m z8i6sh`r24)3pP5Cia~vsbfB!*F%0a6*3mFFwi|21URY zrTCXkTLLRyee~0E*#(F>6d;MKIMRFM_$U+?0svAILmb|3YBb)^T=~ozbqh2~dE?kg z7bA#eVczbuErxSL5y4^bg^{_w!_CJJZ{GV3wSz)NXwUfDGd6tMNq}G(v$k|W3WbJ+ zRSWVo+|2pUGozQa2kN%dqVTxDj9py_41+f;4j-jONxXnWl)u>Hz$%GZsuWLOUYQA4 zOcB1tea}~mP2U37zLXX-E%w#vE)UyjKQ~Phx6pghO`xx(_Md6R{oi)Qsif5j-fN>G zT({$(53%KfnzPYI53Mu3I2lU}sB!MN+q90VP~68jV!`@bfDRA9ve(9bjh*>$jjdr` zZ8chnmxi~ryPGLg+PGM5Ugg#3-pzlg^+X9EmTYGWRQNCObGT&=YrEHuUZBb0FV#Ah z?oYbA1n}92&IRt~MwPi@Mikxs>g$(}ZPrc$|0i#lx|c;LUgfcxpTD-{ah)%>_czB) zWOpp%)phG@4Yf=`O_ZJ&J|Hx$!lLkBSd-n(?vvU&6g|97;*-3?MUeoP#(xV{Ppf@C zxh^KnK$a(zGW!ea$f%7W^BBXOi0Z! z9FPyi3%S;3qaaoI{u2hy+EL5#7H7#Y%P5N~mVeI$y`rj-+y3kg%3p$XWJI00=j}0~ z8#Os!9}#KS8h|{a`b6CqH-UEH)YP0enfx+wRZC=2>usEx+EFiwxTVLGF3(MUlQswJ zk`43r0Py&$bGbh|VR*(~_;?)&%yc|an$|nxAvFc7JNW=(qN0cIosyq2nr|| z&DsMDv@%}!lq^jRU;8!w4^?l&6Mc8JFM=q7nE@C~o>)&~`;qcHN3ybC1& z4X~Hik!ki}Yl&qbVCtFiElIa9r`gE^$j`A{7`8kzf>2y;brNZli;u+LyVh~E_-pMK zq6k)&Z9#wd*uJ6Nv8)n#!bMf+vD`x;JJt!hBM(0F&@%#%ur;nYwbn zSC7A5s9%Do#{0vz(@(9CfTCZ84|dqteF8HfTO(85Q+pExOFlbpU|;40*X(OX&4FAJP8~^o!?LdsIEc3_s1#c3J*(=W@f^ z52C0A7I5MrSBBs7y^V{iKV@%P09w7t%cCpWjE^-F(yP@l(`O+f=H^QXn<6H963JZ$)QhW-$91o@!T1)qDonFE$UazC9yn5*YB8(7msYBj+j zMdP~$;K6lDk}T_yY5#PvU*y>opCf)(2Y1p9$##O^u;c>Ke0k#fTesUY5j2qrYE1Vg zTvmO{`p1d`kYKBw8e4s%7_qZ`Ph1k7oJ!N6J(pVSNOOo-`P_#ExapnBDy3k(L#!;l zg&mmIW8Jc};85?F3>=m1W~}MEarDsQ@1_99(AoU=&muFn^ODimANKCkP&LnN7e86+ zq~%XnTp{eefzEjtW{ysq?e6t0zNoS$*>YCKV^_+4wF9gp?#&*dD}PQHdo($2O8@>7 zLstHS^^PBAiNdbI?((x=YV0X+$q#F4Sd~2a<@%Tem2}kSudA~xTR-&YTHGM;SRR}w z9eHEt>%Ey|JbVHXibz8qsaCc_>&WIJd9D~d;sJO~0O1VNBI{Qx_4(ts z^U-6LMdW4QHiLa%zAkg&@*S9S$_3LXSFDKp*_o98$ZwNB06CgB?mvE2C0NQ*eOg0A zBkwGB=;A2s1_19^l6dcb@gb^Ji#a7`T58Z@x-VsQD%R}H zgGZ3AZ`QA4g7{pY`(N##_24VOGD6$c)Dp`mVlAhxJJ-vO5|LEW#l{B9z4mf#)KN>C zcBC8`%V9`ZApquQL+k|8;Y0erW3%E3z*-`3Ql#y*kR_92Ip%Lj(|9!)S>1p;sA-B!%}_0@~hBkHkn21-|-n_da`yigQh6g$h$7NaL&8r&0|K z$VM5Em}eibpnO5a)yisjW!3voq&WWOb(b9LbA?ym`ciwb$UBbtyVi9({sp}w}u_T4VhHIYJ9W@Gh z;bu6hdryqrQYOPN7x|7=8D(e3?M-x!?hnu0PoJu>lufa8Mg&arg}S`m*AT$iaD{gv zJNPu~THj-PBCe)a3Fug*b-^Jl_xSpdGiPN)FvQLxd3Z**HGZp*U|s|R>5sC79z}Zi zh4dt=Ya5n9Gs7tW4sljPH$R$pH7%^zg0?H z4i4+H9h0h)tHsYJ`^Ed5HO#Isq zKNOpgo5!)3@UjNoGY=C98oX2CEIVocnW*nc&Aa6=)>v}mSi20bEVqmB*f^0MN*r~{@X!j@)JIHKtvyN}<@2yu$QV#UXo6a*I2MvGvcb+bPt?wCNa9z| z5(xL$v#)8454Kfef8lI``smo?`RzszTrR+qa~f1lS>aTQu3~x&c$6ygvI7<~^oxAx z3_E?Yt2l0DF=4p%05FsMutP)tSyugOXmOQriFyK5Bk!wRZy>u(O!_?2kI$Gd7)m2%jL&jf?znn?b;(&z^#b@(NDokN1r-Sq>)`NE@=hFbTtdFDm* zYT@BizKrvy{mJddl94g_5W&*M6fxJ?b|Ii!nf8Tu1uMjw6d{zgJW z7!UTkEp^zofG7-zMY19Q$Itv88xb5ah%x3WwpCW1`6NW7rL20JprIopf^m^#@?RH0X zWTnY&b!I^15YuDXJiv9Wf9#L1fhJqMdO!Uvy~f)Vn4kB=l9BhfNieZh(*2EUAo>T3 zx!>!6b58p+na0Gh6+&%b%$e-7i3K<#Dwon62rJW9e--vdq5H7LT|l1a);%8mYPt8K z>zjr7mS;xj%vnEpF8&()VbZD?CBX5!sFFaM7p6Dxi+uuWgiT)5_@vh`f0kh2Cw8z_ zGV>eo@!W*qm{DQYH^2xfy_lJt#6RQ+!o^;| z5H7xmME4Z?&yJxDb46h)!;;oGb4L7f{%;&@{^y2IAfMmb5=^BT~7`n=#2{u)< zo7n<6U}sADKs^9x0?|**>qhV7_l}eNML9H+F72eq0=my0WM8> zS@&r8iyd3SswNY}BNSTZ6v$Tu*o9w3-MR5*Ynt7WkghA8HPT}Um7AtzYafuUWZ4_k zj!NoXG*@uT+xzx;k3D7wFEH+C83=S_g1LOor~tsu;@(KV^BC!nkK{PdIM?Xb0hnus zzp+RMs$s5zekx}BR>)~A$=^t2&;?cwKi?9lbazRCoAZ0JZOHmki6yeDfL`@RIJBL!_Ghy7 zlbPQ}oMkV4f7B*@p_HJ)(02DKh92xq1q>z0!(#AhbPL$G#3~HmHdZop^dxl)){|mq zDiXYv4Z?TqBY#E|%x+9>SS$K2-2Up+z;p5VO4M-FGlyGPz!;OLK3ZGfz}|GH1ygXZ6RWEu@eh)L}7V8+XIsSbbG_k`=(dRKJkMhzk)6b!c48xNRPdlhuywl2l zh7Qc>gIA7wu2)XHsYRlhnsWf_+WDL1+ZsU+(-Id&uW*B&Y8DCmPk{^b9H~>uV*S?m zEQxn=Po*UUv+!bn5q=D!%;)4tQc%#Sue!;73XS%g9T*P5=x z=bl0f7qb$uY*ryroCc7t7b>Ld-#VQC(-4`z8|!f@Sp#lUV<6nO5kfw{)!Tv=z1@Oq zAoSdBbkG^;-lLZ$&WdaIqLSo=m4jW0!oHfw4HcNY3z&eysm!>fmY1HQ9N#%$W(w{m zy5aD~T@Qt7LoH@6yzlwioocs*S^yJd1QE~T%5a=aS0oS%>&Q<*_Z-f-nVfnBCL9JV zl7!qwl*Ec}uy3~Y)+$q;&kT*=`#31z#3Wsvi+j4pJUqY-+)SXhd&DT@0rSP>M$Kd| z5Y4imFlo}w=^5mWVz$`2>ylfN!0kuOf_CT^G>??Crx=Hr3A*Zw6m%H z!g&o2v$QcXW6z;5BRfP{Sn{>Ghl2nRw+q4XLU>!CS=bucVDzl9Mz6>2#7cB_Uy81a z^lxfuwdp-*|fCs_XIQ!CRHz*IIV{?wX@jpANRkA?Kf-lS#gK9&S#eM~ zJcdhNx?;~~WX02Cxi$;u!M^x@zsxz4oTY80=q=Yqe)}o0twMV$;hE5585TyJ2{l?IAze!7vB+vSS{$SaEv zQx>c3Ljv!h*!Z(L1Eo7}n#DJ5nIMq9R0^QnMMPT*05@lpj<&Kbxif^rVQ>~wuGx(z z;Pjv{C?VJ*&4H4;bWj~#jTki{;(r;Bc-5eHwaQo+@7*hq!O>o+mROce73VDj2GS;} z4NVQY*7sc!40vJJ90!{_p<7aFW#@j4lFcGCU5cvAPIUyH(W%!1R?uI^>p!EcegXo~ zuT7g^udil(dm2s6@TLHwo|@e2*C*dKsg)+`C#bXQ-r|Eot1F=J!v4^(SPts6Ik=Gb zJle8|`Fwc69!fxknpF+#&TSgN#Sex0+MQ0VT7F!{uVh&!o-%S?)86-1%^E1jwpx$3 zd#7q_3QrkBW5Xe=4kjEt&ha!m{W0r2=<8sz3;LnQKfvXbnb`&xaACh?!YSV4xTum5s$^`xAQ`obT$<7{ zeDAPvK_W>k=u?(7m?CUE;rNR-%P5d zW>mnC4UdEs(&vF?Mux_{xV6>w_$t=3vs&6iOwaP8;~1|(9`>lprqQwvRW8+qL=N+*(~2>1E=(!xMv31Y4;Q_oH*_Jr3EV8jWolJ1dra&#wm z9$^HZ1Qd~gy4CL7&xQTdzuJsFtrAW^obzUw2Czs9-CbB_Km2TF(VWzBc*tbvmccy( z$rxy_HJ9j=GB|yN>`nXw0t?_D6`Ze!Q8>tU&kq#}(LL4xH#`Y~FD;ax4=DKNxHc70 zl<2j!erD))r#oIy6P)+-dUg|=M0$@(p3(Kak3CBh^_v}h%W+SwV0vu@?)tpoJ7?zJ z$4Sbclbnz3vYPkji`+39V>&MO_U(X4@Y7A^wpFUFe?0=fr=R;lPTYpc{{LIXYi;=_ zXBs?8)%I4T=$aVdCYd>d>YB}t8v}wL2)S)UFa~8w(~}>Grp9%<%l!28_%8;h!*TtV zi}%4rECOD_?!34lg8NqN%`K{6I()3#L(M=KN(~0B{eIfrZaM4XU3Z7xn++kjvbb z)iroOr$ZhF>vsTVfS#Q7Uu1x9K_WmqCJvMz zVaq*skDze)Ilvx!gZ9q61Uip*(&(ppszy*Pbo-y1D+D!l6l-M&o-jG0g7ljI5gqy2 z&G3JkB)P4mZkdkj^qrHPS{(i#N9sZT!6E(SdNBC`N~( zXuLxyaFcQOGD9Gbr@Hm+GE1ie=5GVTg8X^%P+nc2VA5|$K+r1_1p89UaK~s71sw+7 zK(N(D5pC|P&+1{k^EdZO1m3BoVnKF=9L1Uf<|OoWdz>B*LB;{G4V^0!1^XnB=1NVsUs}GbH5N7rCKvIJ=@iz7v?A4aR zeh3y?#vj~R()iRVRqWIFw!qr>hpD~);FT0xsbtO-3o-$~4rlrDUo!S`!!N(D)hF8q zoz`(5%#6qQSNY%Qz)p1RA(!^Gkn(n`Bl240q2p@WK_bEE`fCYf`+#7NV<&U7?WS4= z+knYI?ebdp%y_qLP7j49Zgwp2Cw5eXR*%JWz)-|wWEj=J-B*f>p&kPjBFN_<3yZtn zCLKo1O-*pkj=f^_N947##T}|Fo>yQ^ZUD~m&o+wHqv}8XH5uh=ARng1T>tkH1UEN_YmPr~L7%=maB6j;#pgQ6FI44Z%GGxn!k3Y>VaKFvEd=pp6?g^j zMaSa`>K*rx(;1(VID}Y1BPATERmaP7uM6w>KWUu4TqhhN(2^( z7DobMAULXSs7yOyQn`^h4JZ*`pNU!ZO8`^`fs?8vGCL8z_5Y^f8Y<=G?LQ2~|C&m% zDE$9(D#e=We>jx_|72b4+SL*QDwU^3|G#gt#yCs$yxDXR{4}%Wd3))h3_Xe+tiXz9 z8IX)E766@}3WjJQFa{Xd)Il(41#$2Jxt#HL|RGd zVK=DRfm;nSaa#=p1Ok95>{$h=zuXNQR2g1^NzPwZWrAF-|2nZR;2&&?uQnI{tlHM{ zw>H3_SsmQuJF>@0V0gxQk5@G#n$jD9P%$QKP0Nzi;x~MtGznV+7o#iM_G>5NBM$4p zOU-&09)`6nymaZ=86j<#iqBVbYzu)5Ox56)a3S5kLq}&_!Xo?rSEzf{Shk~NVlWeD#{2VzhB~*;Ptd}d zQ0mdaai4=Uz&!F)jn zMkCD_(an^|aMWxRA#mI7RpZ=1F79zy)l>z#;;`-@|26!Vzv6uYo>egKREE4iVQ&Zw z2Q0@R`ehpsByIb`M~pxc2&ek6o$3LLO|ym^8z-@ z3$1p#qw}qWlv=*cd&&lJIU1B^&g&P?$1IW(2ioaZ{%R;LJ<*r5~XY3oe?q0~t z1vT*>uX|Ddk1D?3|F(oDjQw|(@c2KBN`qWTae-rnJMv51rfi(e$dmwO!)~<1F-qE! zbCNdHBZ5JltE|l8&itg_fJT3xEAT44=9))#RMdIs$Li0IlXNsagpl84w8PcZ3 zvk|$0+Vvjh#u+<9&!i&T;ATLxC$9ukNB+FOoiP933q4>oR__7vxs!@I)>Cx|`J{WQ z3TcugjQmd?>E6|Qq&NPL9%(bv>obJlYF4|@K0rFm33kcb#9#1m;CkNIbNpu#;E8{k zPmeo*_)MQ)E@kZY((Y-be*(+zl!w^cwG}t6uZICX{V_Me>Y7;8Ph zmpe)$>oX8!h9w4O$*V{4UbZ_-*0-(LR=hISg?-JT)1SbZP7W6fy2ut!8N#i`+B@{pjp)Us-Vru2On!uYme2p0r10>sj+LL8 zQ^hks-pOb)@bE>9plJ{b%EDUxoBk%ax7E(+zv`+9sz5YZZaVFNRNa1QhJGa)c&zu%Zi z@B^f#5FppVy#WIPYEn|SyB($lm4=D-{>Pc)$U|!mAjhU1edwQ@@l&2TY}I5 zQzJNTxP-+oSfsAFy<|x8-zP8|KK~SA)z2NRjEgGYAWGZ;>Q4S zIl}YGksU(%QlDQW^n_+LhPmwWzo?0i^v64I!eJm0$xMVPw=|SEy?yUhH_|;~JAz;1 zP0x`288F=j2A2ZH#2Iy+Ck18cE+0G}9CqV>Q^f3Y`LGazA?Bj0nu(I88skah7w7}d zC!lF3@tJ8Lid}$UkX_*lC`+m6cSPUyOP6-YbRE4Z zz>FaET&8QlKR!EvF>4dB9Q7GsLDhW`)M85y_K9gKRrd|Vn{t~CftYU@5l*%{rlXmf z!Kj)VmQ4&U)P%Y-Klv?^dR8_IloMR4b-jBT_i^c(#uV0aZ=7TUvmVpgBc zkbCGobHg$swId^jb_y#?L>JZNU2KLKWP0QQYV_!LV^4#8_%KFYM4?2OCbR$!j{g5Oq- zcHV_7We)yDvqe?|c%%P@{Q&>frYz~Bqdx2P1JOm3kgiESy17G~r4Y791 z?-z>pLDWNTlc>O(;E}4!s&gKQewv5=*|&eF`u6FY=N;EWGWL$_S?YzNh_ykB*L^81l%-3wrGLTy+M=5eVuLaCpvfu{#awdULm5>FD26u-nxb>&* z(jECtUwB;fr9!{Sw~nfK{%;oH#4F8zTZ9#VS%iryi|~1H2Dq>ZQZFRg4xRfIadwPm z0oZG^!shhpFA>7AxZU3$xlHDKAz89#S&|cMeC$YY; z-5v^yw<_v+uBVCB#@NNf<0T<>@Ic%Uw|#3MufS#N-fIZ}4@OMK{oq`)T^C)cOnUEz zi9p}hD=nf$LU8?l+kw$c5j(U7NEgt%&<-U*aM?s|Xvo?8|A(|U4`)05`$yXC=`BN_?pWElY@Av!t+F({-_i9~|+mxYbG~)OxxM(3} zp83tjRPq~k0)W9feIj7j2Tbb?pe->77x|_@=oz4 z9Z8={va*VvYA&z7dUkfI$)HbwjL@Q?bVUVAgSP-Dq_0gj)V3T}tv#7ko`5w5neWkn z{Wj=rr@J?R9z7ZH>*MeTmt2D2Rw%2}{h9r`p$)pgK*c)H4E5Fj%qNNdoKHgdZ}}v9 z8E10#r~coHVRvlnR1pO2SHb@6SjX556eDJXZim2S2EQQgRj_or1iEZ zajXs&r?byNF>lR=SuaEm^(KcM>TQG1)zelVY3Egaw^7M(>9MN)7s4MAZpu1Lp!7rM%7!Iu}dnN zjLof}tsZ4jNDRCF!ZvB)n^t?Ddbu0|mR|@V+W*Wcit)!14mMD+0()&9*!$kGTN|3L zhz?oO_PYu8H@%3{;naDP8XIBPzsdK&6P<~-OhQV=cOyahRGTnmppmA^h<8QKf&Wqp zZ#P5ymr~e#?O-VW=?UGJR)A7iM>fB%6y^a+;n2@YVZ?uw!g+Jyz8C*efdi9@7Fl>S zCkKR0;FrG^z1V8Ccdw%{-Rh$$Vj}=m(c{LJ$1O`ke)l!1aizZWw(Y}Qz;7Tl*MWf6 zG!`jGKb3fvTEXF|t&%L=#r(m!(K)kzy_S9*&|T}c07QYM$h`t2g%IxJwGkd(n_dgQ zK^B5MW+|R%CcrR7$!R(1|2<;kKr!{~m>m3s(^?cYdpreXL7N=1*U3AXbo{di%fF>s z_*Lxky5x3E$T!CQA`7#b%;Z;(n_Ozv z!4MH6DHl!leB^R^Fc+bsqCpPc2MU0NsIKOYOx#nQ0JQT~?>?r(y+tuRaN7ZfS_EqY}F`tr$d^!}m z|N16x-1#@~oIkI}g|4a%Rc z6`4=JL{YjU`S^lJrBPIchDB|R^}g%>Qj57hqSPtcGVr*?J6`L5fGOnWv1{>NfJPR{ z7O!h$+h+k5P@7dLjN)@QS%wjuD3w7Y_E-skU1SgJqNb_BYRvR)^fn6*e1!v(-}vIE z&7*d&vv*i@E`E+HAZeY2EMx$21G_C&-&9zVQ7?yRWPWo1k+@`a`em~g^p7d;hSeeYZE|d2`O=Ah&gOtHP(uJ;8QYQUUVfTU1JLMrjA)02AF%IUyxP(j*L7kn%y^vV5yp9!{J@ix z3;4%%@xT;>h^<>kO6GEoNO{*_k6de zz26$K?@N|ZmxJSS3ryA{>P@vBsMQ;I^e_3x05BkFE&hBNJyiV+ybQ-RWZ-?n%Mz;K zNMZH4_t=(cT8Q9YhP@%!@uL?|{1p3-y4x9^b>Pri0k7fu{RJ6VNhUNRp!M{J1dH^# zo9>IqspD;58J!D#DE?NFugpS5=j0erUQIXo@LVrN?4k7+R#V?hV082wMO)%ybaacc zh`EEO`DaMaJ*+bJPU>|^-y7_ovkL-}KaBU7Iyl0~PoRhY?GgFSS24E_0#_4_^w%|% z!2D;)R6V?NseZ1+6BxQ2zV#q=XsFYvn46S)**PSIN+bp&@wp~d{w)x91>+5&h}ijh zqA5iO6CK0tB1U+rbKECo58vt})_+ko-m$Lu>dpTT3bXW!J|nZ43f-OPgT;*k2pW(J zv@iB;pYZhMccMPioMxYIEtlxez#KSkcL4?HX1?24H}mv!FLp&am}jbvrKB2+yb<|) z+cNr^W#Fl$JFeG~&axh>{oPF@|3Uj>JRz=aXAwA}oiGe>Hm||5UL{x%bAbSTD~qtvTN8)Y zWr9iu>&6%327RZg8D2mS0p;`_Svi$t6xq#~rt>J%?@t>CNAV+E`>-9LU;$Ac7{w>L z)+uKQ@1IUr2tmPlbVXp404r#$A++ov_7JOl`v8Mc=&e{*Zd8?$J0OsE6RRrMkJm(F z5-!K8t4{FF`m(m;^6Pijb>zaM-E8~mPHu4z(M&*M`33`T16nDr3hfK7@@0xez>f;; zciI5e$wKRMW0jJl8duns#Wz*a(QhyGOv3>zrp#r~&ZxaWZ#Wyi)LlMRQcrP8yAaaB z@-KAl8vP_PqZDNGj^b?W-230^jW95JmsBiU*Imk?RDR3(63RYLc*h~GBD2of&&756 z30(Y9-_ApNv@Nri7K23}8etPqZJs%Rj)dgHe9<)UwfZj`!@iC?30+J<=+XIs2bYi;(E^__z8R+Id55w+uF^ zpT+M7T@<;OFD;!1&UxgLx7-Vk@s~P8oqLHhH6O$g;O#^?A31i|ZHe$|`FH)d$myWO;;K$ z&X@eo(o(Fw98y*b`O03ly|{CxVXY~WCyCVLn_(I^D=P*f2QCLSEM;-FNkd>)&IkVc z;|-#^>(d@nwm#!&Vq)@*%@&lrog!P+s7H^&ClJ@0n_s?k{ex5`*cDj}Wt<-GV z!ICBr2A?=qQ&;((S=kr=JuHdH{OZr-9Vl%<>(bD0jh&MQM6!>mm_1Vi#UW9e@9ubW z4|!@qncP|bX!IzzHJXD(j}N1Re>p8u9^&YJ2Xyz$%{viG(bKsP$$vp9w41iWe|h|n zXf`)5w>}v49L_1P65nqA>8jw*TvKCBEiPvVk9QOkYo!u0_Mk1|KB#{zkzz8Fa=>Ez zx03>QZ1vpi`U*m@xScHwAZLK8NxC(?-D+t|0yoW4BC`s&0e%YPFkYV}6&K&|@y&Vn5QRy&oW z1r~t{eqG3|BP{s*GAcFn4o=dP*voR9eSo=ygd1+jI1ap{adJ*xecAmTr~jRLX}x;b zb^f8xy-z?RSRSnNT})rRhW0RBjBgLqf)$6qR@PciSHOX4HXX3m2jeU$@dV@WLU6n; zFgGTYxS>2a);v#_>FqrGs&Qtt-Ceay?(N6B`h*>4y9VcRWA6KeO^%>=a+d?m`?5!o zE)6e!keal!F6?Rc|u&kE#I&LSOTGt)%7f>1yPAQ_nQxCrxJ!qo!_8zl+xnvhBw?)h)k8k1Hy8 z6m;*E0*c)@Fnvojj5%h%+Wmw%rpkAjUF0Z7tc_`A-Jt?{pS6oaNQ>k0d)La-pxHd( zn}) z(e;QLNb&q6Eo-OitQt^7DVX`PMAYtK0vDp%whIQoW}6U&!?^1l{Clg zKyKSq*-F{(k{rz5(2Ikq8oJ5aX2)`DV_KNC+l-&g76a{uoR2 zf7A+b1=8W|0e%TbmQhmN!7_94stZZ$2NB`Gb0u8d?h{!PTKD&kT|Eo{p&fhYQ_U z`4DSMl-*t7JO9q6H?2)S3b}Bh%OwDT6(iY&USn6?c?Uz?f&(clSVSVb$vo`bm^{(^ zd2lh$0eV_d?rr$>U7m0dUa?o8PpNJDg4>b!AtnvlX$c<2(IyX74V(Y$RS+%(&b(=U%u%o>n4q4o(Tc_Wuk`B&L#5sh#I!ZzEZ#f_RZ#^h4W@n zZ-Lg~%424j=tE0D>^$>b!@CC79ew5khek?BOGmIG@Yfiz` z&3|*`7_x)~M37VzkUM6H{lfOf94E5^rk^f^g1y^jQq{nH=40@x2A^*O-Rj>ig{Y@w z*@4IP=9WmP9COirSaKpG=6h9RYSUbE zaFw7ZMx_N#n6Zj6Wc_+KG+1(W=gR4DO@Z`}n3w9tvzUo7&#LSY##!7+j=|x`ehe#e zu?&Z4F1t#*vq;mo1wxTBG?Txk&+Y}F+c=`X*WcBlUe7iF$V)ms{QTV>19OENn={nB zQo?$UHEa=H*_d>2_k?uUz2 z$W7&3;qC&i(9fy;kyGOxGySq>uJ!!ywHG>!fNY^Gl=sKJcpaZNK6g2bz`XiH3^Tqd9zypkxLNdcub+^YqE2$0H!zfOKe;}$ zC>~Nq66)LmMV87J%r>mDD9&JtmDN}~JGC|lH`EVgJT|Fc?d*xHA5USJ*2Gqkwf|f=D zy|Myh?9cX7@8a**Z(c77Llcc7C1qb&)mIF?C^|(!#5`#MT+jkx_A&LRY#bw1rc8{L z=Y7^JV->|gjQ3l(ryW-(g`C zDd$n3qt_kgL^pZ1>`S6Jm1^`GW0%QkJG zbCK=J^tvZ`VvF;dc&ws5`$ksbftd{VnCrCEF&^c56Ey{li$%DS=B9aKDvIlevzwb& z`H|H$I%Fm60EXDTKA7Q)BH`JtC6EwrJpM$HfB&lKMD{^J_JR3DTMdtz@Pk~|3S<&S zx;xH(rO${Cp`BG3|*mJpNDb@&R+hs&7t&~ zsd_Q#`&JD~R3OlTxMz2<99$Q)D5Ci&xy&^NC(amw{Q#_ZWL%M&AY-y=g8vju@ zRgXn(M^3kTzHFvMp6dfjLe^1)!`$pp#}0%0MlkT&{3P++Tw^HiVa=(uP9c2w4Pq_l|$BTa?_p0GyGp0BJh3T=N|Q67+jhQ({{3 z{R05y%6bqBc%coSz>jtxVnuf((T--rwCp%V9b?&^rI;}T_vR(iq*p6i8^_TzI5L0U z9LJ&3p*%3w0q0&3ZzqdX0oWqY#{Oy3Yx*oFjjCLezJ9 zZSkXthX8`%OSlOUJ41u*#y>UpHK|VvBK7%SH}!otQzu@HoYvRnr{>*mR=3e>XVedz2JAvJ)=jRS#Y`?#GIUye>mkGNZ0@H1GH?t(% zH{MgSr&eGIxFFnM+$_?X z@@`1)-##v|9%3D}JsHHt z+w9Hw$osmOyHtxEdfkeYXXbKEYXfM-mdqnOgLDW1-IE6_)2s$R$4M{juX(kW2zkBbdhV5sVUH0fn z=0R#&Y4r-%bDfhgweny@Sj76w&@++aE;_uMS7H;+WCJ_X=W9n+dBYaiD85o~oT<-yK2 zF>>y0IUH~p@7IsVJJ@lN?lL{Bykd?JlE-6MC0Jgra7z01J=i zHEENvFChxvnmN5V_?ZyFZ{Uay1;9{m%eC1*+Fr(7!69Spw?YS&1szqQ>n<`*IMAYkhbTcRD^spWyX8xM#CNQ9R5v3SoE z!<{CPduSd?{3&x|$Mlc;5_PSq(0Tb@Dl22my`$|HgH53?mMC?9P^xW15Ut*757Y8~ zsEM`%2q4*Qn1Ebumg-iFl``i7hR_nNC42j5=EZdybTEuoyZ=(Gtiol@r8%9I=8 zl18kgz&JI89zJQf*shvLts0*KQ6on91O|O2CJgXU&t5o)dHmx~pmTJXwhfi^zMqr^ zfm%<(W_wTf3s-u=0r0y9pya78MjYSFkR9mP18U{nCZ#LHAaim(B5jlOt%0eU)rKUy zUB3ad4LgEe)!L_R89<({xz*QFGnj?>UIEM^57w>=aIfcH1I8+&nKcad9qSt%wJ7Xp z7rugR9SZJJESzWO^aB2&JM%7=Q{BCCeQKoLaah0O-;hrjUbF)76?=7Hr8y3XZ7IDf zo)ow<1qVfFmR9RB;OrvU{heiRk!jW`Z*s*y#b?sPi}sb)z&NeE+T~mC%cWtt*d;ww zsa{N7*!0Qjjr?)G`6|d%b?+Y21>lKxd0qVG2$eAm5$}!iek|Pfbhf7k8XZ={e&$u; zE$j&=e?$(DtiqxtE2efXL)DGI<&nYlUCd7twIBz z7f^dts;E5{<~kMu#)7}P?^T6}cNO>(gN%hWnS(u}04+9LY1q%#@AFw?&dI_G_Lyc0 ze@K8iM4Ke<*kD4!HJ}LIYD{1E1~2jrct+FsiW>;Wx7cJjHcCws8J?tRn@TdMW0i8k zNV7a&M?@S0Sms*7)@!1bF9WE(UYwnX(Fq!G0*hL4 zB=dxQtd^8RaJ&f+C&al3JrOj2C*!IqZ6;2Z59mh~P}Wht{u8vh`6;6!I=3YtMelU6 zBCL8}F+W>(8TgULIrY(D;4Xvm!K)J!Hk6B`XXOu?RQHCE8R4S<2@nfFn(?0#Y5wiA zG#=dl?(mr$s9{em;K|ikS?Ev98fGn$^U1`=?=S!T|F6v13uaOyK4!;$lcZ*RH z2|^RTqL!l)0^BA>b7%o|(Te}3Dvdi0~JD&T(3DwYx16(Q6W;1Ko-8PgpBp5>YD zMzqw$ceZHkF`YCpfmz~k&4+LEl7$~em-H=OMdtv5XC%d@&e`g^R65m+1Z35U>v2{^ zb1en+y3qDUWJD#t1ke1%JO)e0w#%S=&Rtst$U)uX3q!6VY`^vlw4Q4JLX1eV?Ls=D zuCN;wGDZNoO-+84*L}1aHH0=p6eB{OMGW^^c(&I<-6P7P_spg>r*9mMeYB2|bHny( zY&TQwyrC`yjXbDz+D$a$sj8zI%ek!ZCiS1P=fi+8YGwP@c z=f*_RP~Scl9F+uEg10^|7$4qZWfLysIiTEGujxRyj>0FzKmovdXgHT9{W|aNIwN3X zRmyQ-UT}@fUuU6_ru?sIsExbZloj4c>O~`DEpn})Wf(@;L2%6#vIoNx!`{5wil4S- zA-MrPW_hoawK*Umsh-MUdIN#l{?4S5xMo&#Ou~Jt*1>nT9;p-+#HrwK3bJjrX1x8! zD+<`tA{$#K7SF(tv8U*cljg?f?vh!>7wY9V+n%s)Brp(K3^E!nw08=6ZX0^<*u+Lo zV88TT-LHW|s|5Ish(Rvwud5~rI<}yPrV*Lf#5F?=k`Q=BrHiuX9I)9yX&r>i)( z4Q?|z{|9lv(1JrLEN>a@6$mM|6Q-_vG(KHAM%1pc4Q$(0Kti%b_+%iv3EBnNk{)U$ zrp7!?KB=nd;v2H5oNHk{-=C%Q_#&n?*NyY_T@>TvyKJB-+qW_IoNHTr%7DT>!kiL} ztHJpywpIc9pMz+D%eU^eEYm9H!WuKp{Mz zU*O;AZUUxU=cw_A8ipbDR9hfq!Y`;5czsF}lY4yd>B#y!RClKWu|KdX2>UTGGiI{gk{W@_ zj2Nb%&H~YI`m?vxFz&_1)z4fhvS@6MNvT)_O+1?LFdgm4*QL-v?N3!i^4AmC1+QuB zrQ@YGD`)J0WEWm02@kM=&RLh{n4QslwL!wgKU;jJxw*AD)`EgI5H(d#?oh3G3wQ;m zs87ZOjOmGnkP$~}B4Wn8MD&=j1xR_RSL%?TUlxrq?8n|ICQcW{AQ!?jpL$pAWwi71 zFSlxassU~3@N($@1ZHWbKyjQmoHQ}U%jt%3{NnT2O91hOA54BB%?9Q5Q9D>FJ){%k z#-Lp+0jSEuHMWXtaTlx$v|M-EvXX~}hEo&6egtzjrxpa3m+oe8voHQEy?VfvZ0ilc z^Lsvf^b*Xd#GKX_R~g}BZoI~vLm?r-Z$FBE`w0=HMS9xpfQM!nx|AfJ9g-^}lX4UJ zSQp2UcANN6ol^Q2Ivcq$evT_yr_Z&V0Wtw=je#0+xUD zlBIOAsRZDIsU+%tG~mU2A2fJXs#zaBIiBNcgjHMI<#6Xn3{60}D6PNMfz-}c@hy9X ze+oF{mI(xZ0m4z2cHlyH4SJj0BmOB4;DNv;sbifdRVUfc?O<49uF3dM@it-TF4tDM z+y*-dC{H%b#r_O33+I4v%TI*al$`Dx>i%Uw5LW=_9Gq*x!iOzA=&T=YF2bS*^mPM* z-C+3e`A*y(IC%HYM6&k?|44wm*PTxHx7k;!_&xYR;>!c$W&DqQoKIj#zhbY9awT+{ zmOzb=lGLO{c#56%WRAY4mi6mHc{jE?JCnxre98-kneCV_9|K4>+&zLY^gBSq-k5sy zKQwHSfhnN+xN|LedvbW#B5uKayK`5l#6|eu5^XH6FN*vGx zb_vZ*sx>beX(#B!`(QCE=O`A(JEe^sNrwc|+~5Ihez@fVB(Kug!Gk_q{NkmD)i@4h z#TEMF7X8Pg!`h{U7!O~`?zsS)T@FP3L|)8$7ZOefbj6od_@1w|JiutGe+|2NipfkAieB!J1NHp=B-Qw~^SQ$60&eNQLb3RI`frdH^?cFd7x^@a8Y!|V^P zT~k=@-_+E**TYph$FP#~FzpJs@+O)ZlkrtP3ov@H^#1=SM_!J^_lN9X=M{R)i5C8%XaT zs}Q*oHYTz|sY?RLqyInlhkRd2s66qo2tYF{ zTsrE>9R66txZwoQDq zli10wgAJ@Vg?-ko)1q*&c2P|~DBd$er+v)bBr@Mg8_1XeykT9T1`Ul!6-` zSS6iIk~P;rl##T}2&})3$>`M!>|G&(V@4>z-LzT=1kCz7cq{@@G=>7?Jd$lQ-V;@F zTR{&W+zyP=ok5tfw<WyzY0ia1%}~599mV26anJD6BlsBa=c%zyJ(RAS2c8;J2pA?V8m)c{_419M^*$7 z4PaBrm*yr>4gD=ebcq!Ka44}W zKX5m;6v};_Wc#MR@Z{*~UxoE@Zf&_J^+JmJs{6QReGGm)JjV@F!+l*6uQyU)z8HRp z^}rth2zZo2-FDTl2u-6N7FFz0z%G}MSs&{RC0M`++s!vpQQh3)^Xor=s;)zHe5*Po zxej+#Y%v)=n%!2Ca}@oR4wh+2BCURxg5pqAjirXsKcenZcL6!C0%V$S`6vgbRby3u zG4Dda%5b`c8kH$OJbT1^v+W(b^V)P^Cp;N-=?Yu}v_`KFRqoGl7x|kR`i+Of&RZtB z)3Q8c4(9V5WktfSNVFNz55i=R@lK&p1}hW-{@Phdj;E#BZGhQ=4bpjf&0OR)KY z`I==QP+{IbVh_x`y>`Wqi!K>~ThqtEPB4?6Xi>!t)MTAh4fF4)=H`0RC_G-yp;D?{ zW(KNEGp=UWql`p=ww|(M%<13L^xXU+*7Yv0s(zMi%0msn{MLE?xO6n66-zOkJ4x%0 z`yqVrQnV;K5O7iK-4}WrrN*h7)uk!CW@&aYw^60yS%(bIm0hUGcD#1$VJjuLyIV!p zzOT|Htt-YYcC52|^_E`w&y5f$j{fQC-cxCDm!c=r_cbhCw2gez)DIqCh{o(S%=mUb zJTNx*w(XgRunmpS&wN!3s33pal&l4ul@(x2!x!&`VPhk-ECcJdp0GfG?b?G($v_ZW zQwiFLA}g=lR&0o9>DC)6>A876Y7gy5x{uE%(bXG&Z&TIYYg5YaUP`Dm)neaE5*=dI zn0@)jT;N&FG%LPtzn=g2x`?x6d$xgSy4gU{52DsMZI4FdEI8NPMF4oQbwfs39!_z9 z6u|7e>XdWzgEb>%&`NL2&GMhoINC01C2Y1n%k*mP)Hfcpx6Zcu!PvK-L;)tpRsJ@h{Zdm6 zjHNOk65;G%SR9V$2NTVJf++ExE__;@T6xo5IcVPuKt%pb>px8p!Tc|R%?JJ3Gf;N-pQ@SPSI1F0WRkE;gSr)~*Q!4JbiG`{<|f}pviDZ*b-2;gG-b;o zq+Z_!p55i*$aw)wGi8@{$*M5vH;`ieulPTQNP{?VtRLzv{Pk%*VODgaLv~6 zuYOEmPl(J^{rF|FNvNyl>f`R#t#-N)YGM7{*btpMN$BS@05B4s6Kcj9QwMxtK}Gm= zWzesTf3J%HP`q_M&AI{ndjm*Y0QjN8&-}!E1cp$|GfdGavZHxU-*pG<&oZU+P&ing zmfD<=)mM;+Y%j;w_;RiQJqp;68Lvh;NZ#^CgJGo#Kn+h40S-Ov!x_!gfQgELr{Y1Mr!3Hw8v zDQh&Ef*WhLu1XYkL950kmR3k?OztHkMDQ(bW;v#qn+q;-j!k#;J-pwxs-}`gxkwe% zV@j~{^X66DL*#1Uf2fuRxSVb0AE17cH(4?J+>us55+W><)}LiCBGSa_n85!2D-S4A zpLS$yq_UXY|5@2%*Q2VMp)+rOMq-%dRUeJCYmw=HFoli-Sx!$~f;O$q@C9e1SxElioSh zAiU%LvDr2Y&^_NrAi<9l4djKTNC z7X&OKJL&_neQR@ZToMm=>x9wW(4f4C0BL>Qc+2kc)6S)g;R?^3a;wE?D@qb@#B?=J zmk8xDJo~S+HZ_{Il~w)~+>!BU<;3O@gP9I|^dxf$R8(!<`h4H`op`Z`7<|jZ18U{z z8~H4PGYOsp`V3p9@QLk)4_6@a_PWLnGrj6|i6nur?n8uJFQAnB+EFIoE|bM;W){|-MSPY&u*_(q9`LjMo=1OT&-kYMe7 zbFj%lhtsZn`lV&yZuKG<*#89njWfy2ns5#h+?Q>l-#{bgYzC+Wn29IVIWtixz`BEo*+#4rEx0ysdKR4Lac zKX7gR!WUD63ye@p{_3Vi$XWiT!;8Axz=JL3_BRPy)z*O>x}gJlKy7;b-iGdpihuBI zwyz@$BBAPV?&^#YgCCmvJbtJHYTKO&_G-;FH4lA$TC1X$h5gj)i67)nd~BpK0xaw> zp}Vakndh~0K-8FV9+ws^H6xY5n;&;bCalbrfe z#}ud4aY10%^i!PE7fhSP(2zXqgby)~j=RV@-?Y9KLHx0SnXoWtEg*!{p9lv-cr!I~ z1Z~gua@%9reOejVsoR6z6!d@tK6^BnuiMjnkON=tOubmZTD_GtLMVa^Ga9(whLY@z zw)(Ih8qkFzJic7~|iJp8D8fU9HdEqj)3{Q<7vY7IqwLFR|4w-SDhmQ3&D zwb7z(32ikqYEO}|fzG}ZSyuenv7F`?TTap0KT<lls=NolSKNPv?|RDMK#FPdrdRol?O_OfF9Ixf7qu-i7!tZ6JHMe`LW~u zzjIYZyj<4=k>=Hsx0!wA$AqB9!zVVAAJl!is<XuA;x^0o!Lg2`?Il~$CkYef_VTKv5 zb;H`GnSYXR5ZUyQ{hTIk0@RkRL)GujpR5=4(Kkbw# z7FGxp@rOtnf;A$l%9A8IG@cX15J9IEe5pW)zt;MdVPyBmURV0;>AqQ(k^R1viM55i zX3{yO+9TZLfihl``b(k~^ci&d-HGX?ij2^%&@iP@ z!v=;_*9kB1Av@X8y>vM-}P1rahewsp={#Cu4`^F#whbQ>Z|jd-dMac zlq2oZI-=mjR*1!gVSFdX=*el+n$)1r#eUYaJ$#*k-D?m#*)g5RQMSwt?@U>Kt-W$g znE?i0g+e|rU3D~c{&Gj+l)KN-kh{vN3di+D*It=b3ferr($@0w3cJ!&9Zk9H6NP!~?+#mp zhU(flasbG$>0k&Px}3EWiDL`#FJ<2vA}s@fST%5SW)7&B8}NFns2W~M9LI^@RP&um z+z{_4CA*WJe%dTw>Nxx=cv`euj6_`{q^+1~coEs7e^_Yj?DD}5ZCOLOI*xS3uPx6UI((*|$bkkA5JlCTN6f#rKo0qTnhp8a&5=cs2*gM+(IDnHMxH>$@D|e-8Uh1)3u|F$X-lh zWN+cVRIfdz_kX$jyTSRv!Z~T32#)T}T2UD79>)km2;v?shnY{2{Z4s(m3<^-Buf|) z7%Q!e3Q4zhf_NwIh$-*;kS7Ro^RJ7DU0zj`%{Ml*;37Lz2o_i(nb$7};PLcVlEZLb zCC!LG-xQ=hP%yYD__8UOCCZD1uJE88$T=#s7pQlqJ3(%IOujIq*|Wf#g(QaLFz(TQ z6WHM%x?((DP1;Uq-d9;3pK3M0dNSz+RawO7z?SsWFcEjuyQp5@lTyvs$G5_6W2AEuEupE zEGVJ894}2y_=yf+o`uTP4jzGFW9T_1r_yA2vODW}l{!c9t2Sf!#L+B6^wk!6(nQH! zYXj^1?pRJnqRvOp6x<`cUvSQMK7h>$s+)(+2h0lFZQnGn1tv#BRZ5}ZB}pQ5u0uE) z$5GGF2;oZ;KX?@-Yo(9eiH|^CKp>-mQeaM?x5t#Lt+68!_UEiAV5hM1ASC$d$uC24 z5_8154wRAV5sFJMNf|||T4_=`S~6F3;Plv6v#bgfWaRhNN1-}!oLk-ei?+TK%_#2S z7au7Rfqh8w0Bi1Y2ExkWcj#=(h{3`-qr9|!ZgMt#MZ}$b4^2*enkIxQdYXksM%MK& zM5Ta)#QYCW--rmpSQXo)~X95NbeJ&0Y*KfpI)GmC8WEn-76+5~qIEtly zp{62s%4)<1YQE6kJ7g=h2v#@xu|Dfl_XD}2pAcF%cuhlxuW^H};1|)SoDe^RuMV9s z4v7*F6}OfTA71S=hF|04No?U@NVNTHP_#lGQuWTsS=Nl+1Q50saDsz6(WWFRnO3l|Gd(%l^$ zS%$>(1bKO07hoRoBv+9n?Q3o3_^qHK-xu#wiCr_UuQP%yr}(eQa>XHHl2~j}lUlVh zX|c_bSH32da^fo;=S>`Gf3N<$cWri?K(H#aT`j_l3RYGUdpY$JI!DmUBa6}^^&lYf zb!25xwhWCF(4kQaO7UOu+JS&gg+L;m`=t)=aL!!LwIPtu~DNW408;?Sxglp>CWeE+|(qx~-I9;`}K zfaf1ZHd-ZC4I~JDUpvovAaWrZmtZjj2qy$BV*?(Gi(r4ZrtHV%^_w{yU_zrLfYG&8c z7Jmld_P$OFyAct~N7-$>dXnI`06)^DWw#`$R7egk4k!lD%a?ziSxiHR8j?(u%(F(c zlMw#(dIg+N=^HhG&yhB&Xjc-{I>g4y-#tN*hZ>;Lw!2Z9inizO#i zDg0 zA;TiADnK*QbW127;J3oI)rU8BJcxg=GhPO^%Z#Dx^4nIk+NvsF+f%s({yK-BojvS) zwSfo-1Hu-JPn@2U&{wr@r5-+`NuO52mC)%FPm;zZrNoi=a%I6_O{&YYSl+8Bf=4VZ zcS*Ti?L6rGs^ik#$QgUS>B|@7hiIYGsLo!!6jw?H* z>Xl)*vSs#~oN~!+kRmsZl_*)2g(s6T7^AJzI;0s?J~OQws54Op#^4vPDL0jl6D>Ov zlxwq*pCsp=_o}as#%gL$P=l7a4$M1kXhxLWK$MPZNAw!w)|9;zLdb&7O4;|bC8+x7 z)|0yl##G^PVYw^8gCONJTxK{+u#QT1>E+ZeuY28h9M^Q{lEvwa*olsjDo*y-@U;YE zBdo*G$NG*c4GZ@XMr(=4*3`wtwMuKoqLx9E|H8=StI}Dzigsd;XmN+{ppS<;7N~1Roow zyPPIne}6@f`Dn{tb)8vT?2G*)G+JsAGPl4|3O%)P^~pPY=A>t}4H$1MIY%HBJwsr5@A*K0wf ziAa$ay(pk`MLI-8MMOa4N-qLR51~nih%_NUuA-u}2&kx(Py!FgQQ7uzMA#rmTO%-kZ8gX3wY(oN!b4tV+ye&9z!r_p^V;qR6@&xHt>a=obKjkY(LnmQ9z&y zsFqu~v-OO1)@7%P%El+qx8mDXRAYW2W`qIM$C&RIAb)ZU_gXM8qnjjwXH5^bG|%fQ zLjC%}LCmZsnlQ1o7@%gdOlNI1vO|Wz`;`-!AC(S8v_{Qs{muNfxR6p(c_(j35zMNT2zZ-leE9AT{y=&tX zG1@@2v;L@Rr%38}yNcwtW7rIGiS<7G*I_zRC_^`rajYovkHMG9jo9jTl{_Wp34D** z!W`U%j(oz|P-2~Q7oVtjX*xwdrT+pq(YaCMoYLwog9@~R#O|>GgBbXU9$>KE5lNQz zcMpy_;L@sBv2>ob1;z{u9cW);$F)v=j~Q=2-?dQ^y!?PfZds8Gf9EN5a4kq>{hef> z9vizJSpTl6N04jBz-Rvbwhw<&1gC>2ZQMSu;kDXJ!v)8kXETKU_4nH768-$yoy*0Y z+jgh6I89Em;eC$$EzUCDl(tM$x^Il7BVMSzJ#ud5jDNZ_JoouHG`pcPddCH_%n|S< z{8{y;%FQ9&sDSnO8CH>IQbW-=W{gEZQGrA}glwaj&X!r;Lqvh-Z}|iq<+oHsS;i*J ztW7wR%Ju=%YcaO_5?}WiC_0@z+k)*yg%~s*51R}0q}L%>0>qZ5rtB_R)KfN{6g63K ztikisAdXE!unrhS=aKuIOy2;B6=I-J2YDcP%zi#5n9pE)7*;2WT0JIHQ^`5t|NQrM zFcWB@MPE2-m-uct_LBKn9(P|tj`z2;T5~v`xrgX=};fepAUerM2R^qi-asDT*|{KxWATI zi(w}vLdBU8vv-}@o0K6ovv@xf$gH-QDkHy@SfCYDera`hQo-?-jTvmoK|H)SBfO&7 zOc)cuQey7p2uMHgs+O<(1Vp)Tns^{JQEPGpP#-&EPsT#tK#S3pG${apwiV7HA6x8W z02UoUw#5pH9S&`uU7$gUV^;7=EP(LP27=7fkMd*}J1lyK;y@rIX`Yx1>3-M_ zS!G4*`h|OSJ4jVg$2jglnps$Nof)IT)Bkw6egHJB>r0baS`nO3zfTr$z*RU;gPxs)K@SZZ_!zJ z6t%{_24u{q*FDms{oE26R4Dh>bYV@C^Z9i)zl07|8fSc82wJWsf@7IZ3c&355V;)D z+>kc4_V@*6=VyA-leEUY9Dni z(q|y3n3)XS0cl;oGFBvzQ-$wbl9SS1ki#6vC26YOo4%U7EFk?6qZaJ~Z&=;F)RURo zOzDHn=d;?T9m4Exf8Ts=I@8|npqH<~*a;(XI(;!=ku%m#ueBc8?k;-1fS+AJ2I8H< z1lUcrNK8uQI`@B>W2;^^_p(rOOKh*9kxcVFolRlCXx;tKi{`4Z7#0_`1wTbY8IMBK&;XlN1TjCOgjyye`s%oO8po-`G{8 zh=;n2F`>?5d0$bDb-OJD3=noO$nIwBlpJt|d$Vo=SsD7|1Xs(#+Ftf5lQa){Mge(o zj(#a?)NkDPjk!0F*o|+ftyf#3b?~8t`|2DpN@pJle&TKK4r(G-XMGwI}s9Xo` z9K`suC1%3cylLdm#NZNu{R;l!+`IQ2v#+*M(}D7XU-W#J-{e1ami^jPrP;6B<5A3g z-CFq{@l9bU!dxf#yE~ZrrmmK~mj%)9jCQSDGz0E*s^JeWsW7)^Jp@*gA)_r6w2B{) z><-jx8Q}f{(T1;kP{J9d1=MW1%wjXEQDV}odRhkIdgKHge)p>leJ7_BVX*Tsc;GiL zAF~B!$A*tjEV#4JOE@d>yZUhaIwvERw;V|0&a5{s8jR&y+zAlJP2e>(M`xEq*z5aJ z?9EwxS2ZvBH_f+*yR$Dwg4@7-B^+Kqn#RH~>;S8Vs1Blfy~yi>13Si7=p!!C%2LzkS$W@ zwhd(5M&01H5&bKi+CWtxqG@opgnxY{6Yau!*ce3tma0IgSpr~!*2DEwK-5(^kkMfQ zCkV+2Uvor2?@?0;hCvKV17}4P`jfADvXl40EyUe^@dILel`uQa$AN~&OEPeFoXruA zsbg&q)`{w|8*rd4vMOp%m*kbjNqm&x=$=b*bpW~ryOJ7q0)p6@$Op|^?~q_}+iFhRibVVR*0*ps2E)e^zthZO95LW&@Lsx)$v>!2x7Pc7Uw!@;_cp zAeb{?BtUH83OSWSPRrm`Sd%Wbb*yznohC2%@wS;#(^3_4h z{rlYGfA_mhJbXk!{48c;VKsSd$o{~Qf%0!NY~AyDXGVBFJ}{C$ye2;)_)$hg(Sqv! z!`agB%a_)up7w1;i(4Fz*Y#7UZk{={)+}oE?2ySF@P+f~Y*wBwMwhTTjURZtdGGWi zB?ElZYA_QunrkN0YR&O@sPGsiD#LE+28^$dmQAs%Zc!zaEOJD4gfspDC&$bO^EYrB{%y z$)_AJ)1mA|qqboeMu1w$&Q>j(7v^|?*a{jg8s5{&HUhF1RK0dzeCWc4Ok|v(!qGuy=G{ayifm`V;8@ONR-SGgy>- zx^%a}?awcFCfx=0XQP71&b7Xs!QD4X%aD?Sov`^Tt>RfyK^a=wB3I@8gL^VFk@_Q!_e5*khL4y@=?~%ab|=D=iKoAB z&`6i8aMf_@665osh1NpnCOb^*Q(^-$q;zGQNX?{^4i;iA9lM1oZu%#WRAwqc8d-qA zx|Ere`l~?p`}GWdNCwZj0a)W*+e#e5vEhnj%trTkq9n~QW(@$5g4>^v3j^(o(dSs>iiKV09NCjVoQLS$zcM@PSH77-6HlHj8@!RSpUZ|o4(8VRk6Yo~ zHCPy~%d;)s8@mh#2l)bVvr<6l>W?e&q3rOjf@Gd3qZYrPDFe5G5M9g58L{+6;Dny6 z2W*lk-9mT4d>c8SUPX!5^m4f&*xsY?lg0TW>|x)fHaPoBB-_g-h18|ARW?O%AsfN8 zkh?5LOqa=2phgn&(^a4-Kd>}N$!8XM&~$Lbb)|2H{nB@-Nyn|=W)U2&&)!#j?X^p5 z-gt%i3kBG_bAkBI^~nQA#UE}t$9P1OeA$uBX5d%*NetHNPddb%!O&gnz&#HYe!1Gn zYI9+IU%AR$pyCs|Gs7;qu{i*0D;=C~(?9DA=bWS2qA{`MH(f5N_E)atrH+tPXN&Yn zsK_h+T1N(+UH!%TUq3=FA8|+%7s;UAh`tcXAnq@_Xah^VXudwjiQ?>;JqiL+HFe2t z9dwY`7z?@fRpk3{;^{#H%1z3o3Tvv6wB*jutt*X$*sA;b*RSLP>V67MiSb;l5qcJS zbO`&(bU;hfJjgfugWay~hGCJhNZhBuSFz*UEA#hqEQxhBM{cs~p~;V(=VDsTuP98Y zunKTXPM2XJL;fdc9{xBf6q7nHDjL!BE*CxkK{ba#VHZ{(Y{-AeJ65W0500u0E3|`Q zP6LyCmB}G(BeQjOQMC$twI<>`;E0vy1!a^@=Z|?vU&8x49 z-1U1&CKy zH2CJRU736ab~92fh&9Qk*+Gp}o^~|MkYM}KED8EfH6D{svIzX*6t~AU8z@@Lr9#Jn z>FB>%+v(_&Bea6Ha)A-W6BS~<#&?9lxOEv9om!$;L(}?&vEI+dKD}HprP73j?2^v6 zZxQ0y;nJ00?SS25DoO=%q3c#I&vKjo4Hsd#lunT)v8}P1I(a#2i-h1m$_Y_1B^&4TXt>A z6=j$2)1oFXfq6(kV)HEnrxQgVnpvYM_m)A;p*MyyP9TnIFH6ZK3$(Du*1xjW*~*FBEzCY?y5&JXLcsd z<-Z^I>DnQXJMm|}4w^vk|+a~v^ zVW^_MK_O|#(DjMqO|_lMZDUdO@Aq#&EDgS>5YoJY0jsF0;@32nv_J_?=2Yoi7!}j@O}Ia^K?YX@;HPcr^8DljGM>I; zl8P0hGb{E)cV;eW9#9U+(st=g2U0zd9#y0tnsX-7*f~F+938&jFnx{mbvSaiv{|U% z9ed*pF}hNgrS?{qzBhIJCiG^F?PKfc-JfH9MaHcl#pa!tU|yXbk;C3LS#>c7rev~G zUUkt?I9$5>TjC$u!;fo1Gi+-k&7g@I+R@^^guSp{;=!j+iGvw}qqq!#K{;Im^+;9` zE<+H9%@Ev^R;t?hNW}6lGgIg7YkW=LbAnchP*;G{m8`LtVkWfvCOMr2;DVXQP`svi z_3{T97)9z?P76r7ce%MB&u_LP~2u)FWWto8>y zB4&s&Ip=Zpvf~q@UZ%~ml!zl+bgxuY z=9b+$bvkHd;xkzJv%M~V?ITnm)&%S_^0eBYelJg>IlMIS_^YXunY$mCOQf|w82ft> z_W$y)XRTuauBq%5EHL4d>06Omu{EwH)+mxLCkeS{`5AQ?xVx2V2GEV&90qVilE;*d zVxV&?JZ6)+Req3r+q(eKxUx+#YO-;~vkGZMu>Pf7R>55}PnFkRgH)H`y(i@8>D}-CS|&4I*D^*X!B9>%r)C z_i^K+HBS%HZv%n!*qQ44g~KESESJUFn#i=MDHcRwY|w1AT&InN0usFudz8`+8}sM3 zv#LnZmhdgOxyd?n4b;rm>>LCd=n%!#0+Wf*H{E*cw;Kuq1<%9acOk5&9XGh6*fn@& zFsnT8uxIPpfaAIU}B>uC1G0bDvYtFh( z@C1V{s}2|6Iv!bb+dOpksoQE}1bl05r@Gy0P|xLvcg=!^FX?9Rpw@6bo)CI@p(v*5 zHtA=#v>EJT#IFLm=g57`*yB1JKcA4mw2ESQs5RM!-mnwZ8{wHC9awPJb3SjG0#SHuc0zqDCX68uAYkC92y91kFT*<`dSP(4T zyZZhOsK|;rL_?3gmAUwyj#CB%3Oae3IJ5xQV}9pG-(Kn@oplDGAGOar>!*L773~n* z1y`mwi`gGRmmF z>2c4xY|O>DwL>n>NOH+Uryk}xUIxfcD-hSU_Kg`UI+eOL`wf&Ql^eOev_yDJHL-9E zuc#WWkM?;js*x^eaV_Q($jK)&>+P?r<>Qae$dteHbI96}`54Y?oLVH>Y$y5S51weK z)jd|0h1MDfsySOqKOCv|OjAK~SQ)N(2$TSSKi{7n?ogXt&*BSN`z3cUyx+MeiRhw&#JA&K4GoMPSdeV#Cf7CyV zpC+KjIf>9#ewW5P;KS(9OVCq@gv8UFW_x~=j;@@rn229-$!%vnV?VuX0vq~qas4Y8 z1_xUb(<|>6LQt`bkl3wxRgXTesLM(l65#LJxls#L*JaaM$ob(v>bZ|7PV935QNx$_TbQtOCRd#i$L!A%Fu8cq52sx)A- zqMvZ^#T!!shPz?ye{`{8eWApa;<+G;%IZX=5uBhbAk0>*q5Y^t`Al|56LZog;mMAu zwY!w}R(Q%pWQ)D%-PIV2?0PdX^?>XB1BW)$EA=)H1%Y$7=FcpTSKKeGMxY{vmZfU% z7b;EO-W--eZjM*ocZ+a55qit<6!QE>B_2M`dg8$C-iFXl{N&pmFsLAbH55hQ#$6JNa)KW@CM+R{&4 z{H2pP)AbV3;JMvnP;=aRfq3Vs46)F4h5U(UPoifLyom6J@}VeLY)Z( zLbsD+$!ZtZuRfyu{Q)iUN>o&t-zJaQUg6IdeD7BMqA2rPlPu3g9;{gK$^Z<7K``Cl zIfc!XPwi31o9?>}eK_no!asXPZ&mO#tw@w8Ti|rDh9@bsed^5eo0j`-Mvjm@*&bb= zf)1!k`3aSdsN(!pfeU*tGOmylPe18<-8EY^^kD(dsWj8~sI|+#>&oHcFp_F4qn_fG zljYyEy=_Xng&asvj*Tmc@bu=74gcH9SuMJx%nY83tQ>m_c3;0_dCx6)`^{wZRd?XQmhrSu-%!NE(k8ljgo2F9i95J$q(5bo&nHWEo{fo zT7-Q5$^&>J*VroyU-EFSLQ72tt!mA}(Ez!n=zPv&N83S7>a2P6h z7gHED3+TUHSnHZ?DF23L4+@9rBreuiv5Q`O61sKmI>!t%{>gQxUjZr_1Z!6v$~Mkg z63MO!W$m9OaWpCrWq^vQBet_yOLSK{5vkOA4Qb-j;W+Sl|m0nj&4kodv#rO>8Jv`7FFdyeLlL|iL1S^Q#hOy5MEbKO%C+%be0*beumvxINf{~QbVEzJ z;_Ex~HS#F#VCv$=PB|`h3>0XSQcQ}KPrSB7s=*;$e~B>Lt2lF6>40dxSzk=EY_k8n z2G5@8-O_YU>z#8BF5p5$L}5kDUTEuW+3d!UwbSYaGeyP+Tf1rRT`hBm@|$}3$pW{X z`R%nTea3xs$7J2>o)mO+<6{gsSiagyx>-$wbGGT;5!k|NJpsWOR^hC534JyQDJ^uH zA0WPho_Cgp1VtK6-jbOF8yyL|Um4nY_DXC>rTc)D6hr@EXlg$OK%_G?_wkd_EFzmV zN+NWnO9@$*+mh=_5Z~`XmcwK9YNlG1(;kuI+_JOYTJ+I6ewvzYCDu|L2i#tB3B1+Q zL7y`A3NK#ipv+`5ZH4v&$j}t~*?5#ddMqnl`8DM~ z2pn^=g^i8A5sLUjSg%8-FY}{EwQ-HlRfRTcbY#I-W5wXK8PSgl3$VK~K{#SuYVPReX z*`c}hF%&Y}@qV;l39hIrBYG#r5LQNZk(7n*v}7R?0K{) z)o@Uep^2cD&gT7L;3i{h6~hviZlZPSeUY+cvOH1E94|{tK5I94k@{YxX7$fL7Jb8- zVbHK}gIjnZvWw|Dud_0q?Vx6<|CE-d>bpO;a}$smH#oq1~>n*{zHgUs0P$t8T6sk9YP8D)Tw+CG2%*&u4@C zWBnMuW8A)>Mx#IYix1MGx2&swwPN2)wjJLy+i9DA=f_={3l2_mcb`)HeCoD_ z`z3+n5^QF&WMoHnTzrx=b0c_=%j~C2Xd#lb49#OmjqQ*o{OiJbcNp-j0gXI3c8@=n z;a;3)_oCMU7hWM1Ux%~3NqolA zfwpm|l^Im+uf{te+r3G-tA3oM6H++l%%(w^0+8KN4lmmSlr>HlKO4K-zJp68DV^+u zP)jfg(Ad3M@qOYRqQe`&@OpRUiGAEz)ejK0ZvF7B4{fOJZ@z6|>_%#&^7HOq2MYr= z$;hp^@l{b2W3S#mGPg8x@-D z%D{9A(2u_>O$|-Lq$Hw@Vj&?*OjH4cwbl?S%4&*motSJ1G_NOr&M8pi6<4qLxx>u- zoxT1A-UsQ3{8EX3gzkAg*GY$&ZQP!aZ(=wSrcu7{y+)BolQWZ^#If=p<+TWcUs!9tE38iPtTiI~lH)#_R6|u0>gpoXJ9g?x+o(i2|E6}Nql$yBR@3s_ z)f)$t`o#TxdyLe@P^|!xn{h@Kc7h2>(GB_tn>YpTy2Xk#mIi!Z`TU*7Y=Y3Q5jU;m z=AY{Y!D2=oYKHuUXeAI6U!IH7QEv9{P>(Fl1c*ZwVROPpg(;8C>u{+4&%dGMa^wa888^ zmZs(FsWmN*WkT-d@#F6DHdFoXDgc~;nc(yUFqY2il~%DuqV8CX|>JH z3L2c`$^4x>yQqX6AJTyfo5gHjrF1Rui1szp01#BUgWq0txL0M|%3G?bX=AIQnuyGp z!}Wql+LF53q9U@-#<5UGD*N3M!%sO08f(o1j_LF|S=Tx$z?UJN>Ki=}AI)#U_l^^$ zpzdNy8=`N_!wPir!C;QnOE*fBcEC~@Qf%7EteN=4_p#|~3$<@qAKjl{^o&7&sTP;; z`}RgI33Sc9a?8+mS^LYI1 z`tOf0rBZL5)MW0skhyxW6}bPK!vPZb|2XKvhE%XG;Z>_0O`4xn}&C6Wc0HQ zA+Su{b|g7BuhLB0I|u-1wCptB)(Pt(R8U zZoC}y!ZC6h-kvDR6t8ogU&UiqZ+b^E34Hqdwojg{XPEIMoDmWLq(J3E`0Oh=O2MJw za^CEKF}Kh92UE=y`0*`I2m#oRVF$|iTeBx4FuXG)1~XbWg_xD0()^^5<6kLxp$ z6Xz7HOMjN%m4ncXfx`I_D|U1I<3v08;Z=NAOB@u!gjOuSE&8_ju*7;?@%7M+SBTub zexH_M!U4fEMop5^sd9rS;>7I4@Wu|x$jW_RsZ?-pZrc8&(PV~tw8@QSVU87D0S?WR8`OQt7wuyQYUClPPz#^6;w=2 z#S}S1e%x|huv$hno<;Ug1*~?li?r|%Omx`0AcDSYS;SJD$bBzE!^@nC{6>rbW9X9W zSjKF}LDiS3X3no=PmPBd-m+G5vD?UxgRkcYCYv{VcDo0<{`^L%pNqWmm|?xRWszrp zUAmd|c5BHjEa{CIlsj^7R?m;!+1&QAT>%AeSSv>HTm_UdnJ&!>pl+giV2*0QuV>hu zh>dRVK(54#iDffNSZpRpHtmuK@2Xnfp2*!&=jP9p<~&*Yu9(1jtx@|k7Be-Mg$2$B zK2K@epAbFrUUXrwhtf#$%uj)goelG-EyR#~58|&BI7cjQHW}mR7}TtBP-*yJe^jzN ziblo`i&t~_?;7{sxwSzN_+o2)X8YmdW~C6qwEpV%4GvQhiD~Rg{3EC9*pX~-cu>!1 zVCBsxYOT-e>pe>-CoqQb$ItBQQ34pvyCXA+XST}n{3IG!GrE=wtJIR%LCVj!&Vet} zMGot$Eq}#^d8GO-_G{p}{=%T77yryy=Z@y^)@758)xq=@Iz`o^&IG+FOVh46XVCV! zI*|msZNTQ(O9NTy(d;#W>0RU6YR|!@^|v|Tp|`E5lw^@Zt5BXY6@9-Nw>I0{prx`r zw=J0_+l}jh8lQ_3a&LVWU&PhT?Ef&Y-Fi_Ay65i2?-)_jk9S-81d_7#9&kb?kjbFZ zL$8~so?p4wT)(bu0+lJZ_2=DQ8rr?XtPzMPsZ_GARQGqEvX4IZqb^&E=gjLPFpu*` zo?e>h9L;C25)d*n+}6Fw`sQQ zf1(IfNx%90ei8}^Gof%a8^4zv3W|dlyxgc=!0+ccqohKWB2{4QpG+bea$@F*;VTFE zz~Mw7H?AvPX&V&Lz|3fD6UDk8`}_8wOU(CBqBsjTU!0%`czRPzC*%$pHY}H)dwKx% zi_5huMK{3$vR#A@C^HLL7d#dD`q>*;3^sVNAQ@0uz+VewH&`SVW#~2a>q8EbP1`vx zP^bpZ;fMx}s;Oi7ZO4~Ln|$0L+ePA#G9utEXATvOMzmcbX=$^HYN>%I&p5IVB-%Am zc^GlQwB08VhMCxvk5|-U+tW2C71t~4GpbaW?FgtZvW%${ylBo*k5-!`sEm;VeGa=2 z@FQ%H&%w`<3Wusg4)hNa2lL6FeCme@VL4@T31A4p*R|fR^a049*C`%Ao$_o$6^~(( z0*qXM5_Gz|(Hxs5rbEEPV?A=o(-zql-=`HtW}HGJ!a3rX!t=F3RK}F$jdX`bNW!Hk zc2C1UZxdq2HDE#oT#%*t0?bg)z$g2ATS3uBjRsr#QOS`@-yw;~tRVLixsahX60eM$ ze;(S5I;p?7XEXiL$hxuC7jn4h%2UfA` zRl^%8N4h{dDtQ#VTGSWq=TpB{EUIboRsJ?&Xo(Y&{7NDvg5 zIcx;!hG%-_=biP?bC|Bw%mV0nK`U_lZwMAJ?qS>wji=L#A7a`z<71gli=(+mz7 z&^;tSHxhkm!0m*Caa!=J>)b!j{6{YUSWL%96J6MQE$>Mg{6G!|0(r*{yyL_)=>~V+ z(2`RaKRAkDLROOyg3e2x$@FsDtP^EdQWR$Ie%!CECI5D5_%}x#D2oV5M*fT&hp4U# z%3ur*bX_;z4KMO|Mt>Jm&y#-;U}Y+TWzlRP$NEB+$iuB z{7g|-1BMkjrR!g((jcR}KBO$2cS$0u(27*{au6jWd-o~-ca}wLFE@G*81PHvBzk-v z+9m@tkXBC5d?UcwnFUQ`!_*kKw4L`fFAW5Wixy8uEQ-@t=+6?+u7tWyDN zH@MLf4Y3aqWsL?@@@RWGS^V+A3G_u8&ohpdT!yheDQW{)d(d4IJumie>HfD1gvt0l z2dOO?xXZ#?O3?n=12zoyg=<99b16G2n{RhHt`mposo#NYFJG`iWK#dk9BV(1<_g$L1oG{S=V%7AIS`AWNzOlXNO<^_*?}T{JW4ihDZRW={RdHv`JzUm?`BD_(JFE8V`xLj^xo|25v?#FNQ0v^m; zQqh#Iq`|>lq1~ytTvf}d1)AevKaM`_GqyDZYyp@(xA*4o_*(Cpf|o5Z0(xfv!ml>& zxJH5Q?kB{^ib5~i{wgvKyw^-z2q3}B6{OQg-|OCe!KLr!exu2y26__~E+AvCz7;Yz z?e6S&(@Itor+1-&_9Jo4r9J@JOv-pJ5U zN8K-g{q6%asjn>6DTGBuL0;(Q^sR2V9>D-O6>^jG7QdJoZ>0-8U6U197( zDE@CV+m4vS$Sb6fs_Tv!vazShD(R2COU5DoY+Z=j+LVB>tbok5uQ2-DvwA)Loogr(<0cR z0|7@?jOloAY*3@@RWHrLAMwZ0E*W~F>~9}KdwV7ZzvE6x;Fw`^(@}E&pvpSy^6sX< z{8pu4pLRq#Osd}?@-!C?lWH6oQZ=C~Lu{CeOU*}`SO&k>yblktZK%-(QE_?m_Rx&X zA70jZt58@?y^MjqQDIle?&f^;Y5{j^H^8&FOBm@w>8bleY&~vUkFxc{nviEDs z*2)F*xqNmP<8+eS6uo+;lZn>Vb|g2ZZzaa?BN0wv|Co=DTt~J|#A=Mx><{ z>kb%a9dvzHrH6|A2>L6>7$qhL(}j>|y^-zuA`>P()+%;TVta@1f`qb^G4AY=0|{<6 z;`b$rE#RTxrTzWz3NJ&BcE$M9MUB5d*rBu*WUdk8C)t#K%WGIji5D4?`UWhZ+OcH1 zDw88=A3R+pINkB0DDfrV?UoDuR*2l%+0=(-si2d~!pEq7Aa(uoPlER}Iwg>`6B7xj zqq%+#DgeO=>=`cKYZ?($?=(ps{;{m!^B#o9S<6b!$i1&c)-6sK;-uQgwbXouQ%!%C z;6D}^B?IW4@%*#FYgJENZ!>(Yvdo}|^}z-#!uQAr?a2Z>T!8TF;TZaY6BD`%XOI#X z!%*M_wGSslal*aNIEwhs4COz6QE(aja9W4)N#z5~}!uuUGD&N}LyQHSxi<07JWs)r1bD}|q|bd##I zwnik8)@t1DwoO<{)kC=g0c~$Hx6cvKH%fxmH(;qYgm_Df>GfGX6Z@}+i~#*%@iI1s z8aR*u)KwB)@$d=pZq_TC+4`do52}j!lpQl+x-354k+qjKmrpR*BBloy}kP*EbP0IxEbxF}zo+sq6sEB}x zNffh3reiR?NbT3;;O(LXu79L(|K)r5Fe>I1QivF)WkkETV~d=T82{+XBP6E-14-*L z`}vndO?wp=`O4uh2XT3E-+w<>OaeC!n)i$q*$;<1BK_6`u+OgIemp;BM)NhF^_iCJ znbv#SQ3l_C@#$La(pqs-dYs&#SjUensXTpOXg-*cZeGtE2ZAW!BP zT-zJ)d4SK3`co#J1ItPqiN?OR^M@p2}tZk)N@Xb0{~lZdY`!f5p#nB zgLD7QA@U!7k+>_z#q(BuYg#s%W`r=_U7+?>%IY(Y^)uNR0H4Vh$$6Zv@_On5Py~3% z^PD=3S!~?o*VsQnwp5w-aEhHqE8yI#2GeTR-|J>idc1tDo{Y6;oU`mxPWX`2)X%N( z^0=`D)@zw)nC^BuayYrZtWwLb-#FeC&`8xv1Ec zKGmn|yT7N-pDB4S729npto!a{Bg4+wxrg#5FG;Otz3=BdD!!q}p_ZCzMDc*=C&0n4yyiIq{dhOB? z7NiAN1|`sym_5!p<5LXWg{kLB35ckA2(O<%?xNpw zQ>^odah^|wwg6Sc*m-8=n=pSyku78kKfJ^v)s7Ao{|x8{N2GsPl(Rqc#1Gc zo^vBo7ajo7)h~Ydh$y{A@4o%{6|VmxzOp6YG_(%c@9k_~ds;PhTKd*V$5OHF)}vt! ze^8{Vh`reKY41FV7Pk}4Ut}`MJA={Bg0gRvB$`_A0`dr-#A4JJ1>U~nX!H}ZHqWvH zI=<8zsFhS+GqCkl0IMyPA|s}I3dXGr)UaN(iu-MDUk$TdLnZaXw@kRCf|mRhuO!9?8{BD0`%cfOQZK?4S`bL&2Hab zPC0jcJ<{%W0{iv2C$2-RNKCQCHf`k_`Hck#ePR7#=}obenlcMwO;WU_-}>^b^OFed zh_^~kN#!v==v2~I5JB70ZCB2`ES;w$h5c9StKPj2FrUh@w`KA6du>Rq&O@+_t@S^S z`9&?)D^pzG_c{sBxt_hE;G4>P7NO-qVUHL!LugoPtBR+BRscyGx{; z*FpeVAgb*n%%S^&+WwqsyX%*}QqwKk{kf?Yl!yIh;-0GTIrpZ1Q()y873`XC3*Wp4m+Jp-IC-c+)@M8ZB(9*@G+@ObDdo7FFzCBa` z*VB4{d>OELEnujp?9(JzL*0@7s{G$-58d z+p_e=LAkP|EaNZJ{d)WmUT&9s@km~Gj;-y&^JeNa$w=DwVzbxCF|m^T+Y z$6i0A zdB2Cn(U?d4maA1$$(rB#0Ph`Z%)n7GpU^ow%YMG>oqyy56pA=6s47r%Wt z_jl~WNGnt4a0x5N7UAtjZ+czNct%4nny0HrsH?gD`1Ew!LHL>@VDV_swFc*3pDMqa zk(W{&fTHn70~EzSplaNHm6nOm3c1+Q{;q5B;|?!*QyoEYkIw=Va}n_hDGL@b-0 z(4}PgXCksDrKG_ls=tv)(6Z?*A;|wZF?&fIX^z}WgI>6uMCn>zTuk0%&SqNZ833)F zMFbij8A7FOKRl|fy~gFVl4&K)%ds}}+W{QvtBh(-&+@?Em6-)UX~CZM;q+400__nN z)m4-i^`0nnzMD!#)D7jfA=Qr1g9JR8KSbu@Df+8dQytnLCTilb!hp(YkDO-GFC$pC z{-f4snkp}J@AjqYn*QHYbWL8|%Rspl!$9K{G*pzmoP=_@>PDQYMWu~bV_iknD-@1a zUdfA^ORCVhpkV=1FW2^w`fYjs)^5yGO!bH^NwnBWH92Ga2{(?qE0&OS>{TU zAHSkj(5jv{Bm>RaIh;baocqMm8r0CeO3DM({8unUH zIpwnYy)rX?P;ltWBTOZJ2_-$P&W9P%K0Lv{{yyKnuebG~Ju*qzNp>)wd4r?F8xD84 z{AXnKzoD-G|K9pl)$pMYs%{-yS~<+^BbxK!%x@7pD|2TR{4@_!Jf&nqKcmo>RSv62hQ9QQv@BIL)fR z_jpPquTj=-=@oa+=DLNRKh|98v3S&8dwTZ=#54M+F^O^_Bis{>%v< z$05uJ!zJ&iTG~J^y4a?tAZxz4x{6eNDgX+CgFB z=V!Ao{#blRqiv%mGG`PUKcOBOKXs6u%jPj>=#%MnI?n6AZWeCeS z!fEVmcLBA%?;8E`=t~!6`=P{F_H8qdsT;%56Zs$?EmG86m+>bP?E3HzgH8XP*7aY$ zJ1M`;A2pX(Gdr`sFsRp)4_aDiUT#RZc4ya6(>f~Y%l-P{0m}P&WBI>B?3tM#pk@2e zp1xI(E%m+ns`9kjI~H}^;xK*2sO8|V_r097g3(6<+^GKlK z^=}QGumA=s;21pmt7erq(^vYl(9pKk_o*)F71+#)2$?y}`1;WO5|2vH!+=W0OFQ)~ z=wB6Jo_lM5g?@Z@;%PKsM=oQBJtlAP?UFmjcZjL^y3;NH*i)s3QpcC+rHEf_M{Ov&>iViAC}?eV=?F* zXsuSC5ax?&)U5O0KZ^5Bn?--owSDbu-w@@rPg1Yi8_wygeRzd8?K!P^?e4x%7`qM} za%L~ICYAp#_CgsrzDQe#&~WFML$j~TEc4(e?p9CDXSg_f-=^DB9x9B%WgOOV>#JKu zWKtUi00@HAk7e!-{%gYQ){~Af`Qtw{3|)Y>+y;A0Ci3a`I_!R?gDxT?tj~B5&LP_^ zJu7d9Ap^84z3nxfG*rZ9@US8`-?N%U4b|$iD+IPL((8al;2#e9x!%G1wo*M}pI7PQ zHx4<&hHyjc56%zJA)3B^VQK?k>Rj;YNLjfT=6q$X#dC6`?p|l2k9Or9NWk~+y}!M4 zVW(W#bXK3)euqRO&wqXoD2G@ctDjt)C;oT(=zsB!a{joA_0`{1tYdz^-z-wLx-f>~5xh^X5`XO|UVUdx zI_NaZe+{qsV%0a(?-bO_$;Nd3kl{)smH13ly zEcVPzXb)q$?YT|4{u5h>y<*jb6NPga|& zIW>P-sh;|JNOgFtJgDV!m5RY`L-*HtO3rCVPp(&c&ZWT0OwGa(S7v;y7(VGt?fR?G z%@~+g?I?dE-zKPsZU3|5=BLc$yQ`j!Yo`YPRVlYp82H44hzp#0eJk*H>pv@TAlL|M zb25%~e=C`1{)-IvSMtSvwtKpE22j6Gw5rzj?q$w9tHG|CL;r9hoJn3PQQiK|=yN!E zdSK2t^}@#!mE5vbLatvfY4t0;h5r2MBWQO@mmbxW#%*1u*RmNZuiOr z2Wxmmb)$jPkBXxw5`$m$cStMp|nVY9sOfugd>LwBf&#hL9`r*Ox|2 ze9jn>!ioOl#w&cvTv&fmaCadrM+NhJpN&3QCA$;7I_ck>0R$ z`REzy0~X`OPy1nEK5iiuPi)R==w3|--JTY5=gu7jUmtO?c^kODq!XieT8HOWhP6=^ zs|O4ef!+nYGsBGpJj>~SI&q_3uE-5S`@*X1SoRBr*!cEKSggjmhKH*bf4qJ0wDrbl zf}n9v-O%)RU*;M5DCO#V9mzHHQ({-m(Jr_Diz@Fe58FLOVRc>~ImC#MlXT2Szz4s2 zPszypdaq=29DIF((ujmkX|3jKDD+-IgqshV>G&vC^p!g~ij+!X5H>lS6Q4WSE#zeP zwuP(eM$D{V>fv6|D~r7{2iU!^?!4cPiY!CtFTH+|3A!k6(^-G-nDajlHh)zox~rqa z+Bf8hxIwkO0v65AzE9m3!McTpZUrDMmEAPRY$bQ7vhp(vahJmja-q7-9lg;DXTcvr zGobo^R)aGFXR!9piZkjLogmu>BA*XTjE2@rC;-H@4@L?fS9rHiKg-HdKP^osm)>9v zcr+T%{;NWS0zE!NalyZX3vHi9_^Q9RxBB&GuTM4s5LJA)Q0|6PKN>wj*Si;_ zU0wE;Gh0=8>9rLg9H=&a!@X2SiAr?{#d$-)lk8!1b@^VR#h>{HdzF0%)}om2UJ%d`N$i_gu@5|DZ7f97tO~ z)-j+Cup}}ls_pd)t^EpbpM%8unTK>3iY2*nZu{lS?QKw5xuU}HK|9IVlT07l-T9z2q+wbC{rpY^3*7iYO%y3xRgdLNVDo7K)78&T{LopfPtqfN|kxc%Via$hiCPv9pRD5DJiYV zS@Ds4LOsqZwC%+SzvdgGKA-)ZH47v=qdZALPM#!7O$6uYeqA=fPnliiqYTOHXv*^s zXTK`Sy!!LnT!%tSd+_qeza*(4+49%t`%azFDs0GbD>SV!d|I(vc@L5ww5>wX7mHQ@bC?xPyF z;_lP!XTKU|m*FgEwFgr&=B_E7vmLBcj;XCa5>j1$!pI-_cItjoJuRcWo&AX9U3aYg zcf!e~Fc{YDb4SP}4@+-%Y*xM|yv3d+4Z zsO4t$&`S>Vi(tlM67@dg8u^}gMfsjABPV%6e*5DGdA)yrm6n~6RcdZ?pVRt-4p{=7 zOj#W=Gb|hmNi(SPG>zYS0S0RN`kDs3ek~nu+8ndI_`?rezyIz)|1aJReR2Hb4~X7{ zyix-QozFtf8f+V1JrH7}K6s(LhN{9!@EFKd`8hE(W^N`)RhN(^b2!&?uLR_@#3`c8SOJ@1E0D| zmjMZ&&QEABKPKKiWYh+8x5lLbTh$Ygxf=X;|F|{a4BP5E!iV*DZ?|FKh3K_=26;{!P@+QB^+%@f z=Y-r+JG{4olZ0SfzSZ=fDX$MJySFip=KONZ z+q1@6)BCd;eNBhyn(s9C&zwmAnTpD^yy!!_v)XcqgbFqoIujl@f?g>P()TG-L6!w8 z#9#MLc7afI%;xjv%DcqR%yKwGFT>JfRI@xuQWvZ&@t z&487}x-~{#l&4j{gk8jY&!LQMV`{GjRQKBkv|LC!QRLJ$P zX?qCOv*)#Exr;)`3V=EIm=-1klD44%)ks?Jb2HwviCLA7_H|sPkv=r;yP%yZpA093 z;Dow?!2PuYJ zJs^WIH5kU-r9bML-)wiQ9 zDk2to@5lZr1uBf;4x6uhG1<1#AHT34uXwEsEQ`f44p_ICgLcp0x8Lx-z(z4KIC$h9 zmlY>@yWTR|3i$IftPs!h8hfo6uh{A$EH{dGetnv^%ZpX|-;UH~$Si(yOx0!T8Dn3} z^vdHR+0*ldmMdH9o%3Tc!5S)zn)hu3R)kjjq?R(d$l#QTvMttlsE*_?YG6vP2VpLnpbVt~?IvE$O^P4QgJe7SPT~auJ<3DfEL4(1@ zR~OzL_C99(G2~lSGj}3ArTu>)<|6#W7vHTDE0cwn0sd=<#grwRzDVCfjqAdn|8AMG{(h z`xQ|&*3VULBIt^ueYS@`;{m|ssb`&3_2UbD>w`|jTH=b?Jp+TMRnw;QAI>9B!Ut(G z_1m^rjj?ixFM$Xvam$uQl}4$zXsf0R{S%kcN*)`$MQKZ(>M$E$CSJ~6$ z0414N!rSzx#-;3h)hlr$p3gt(;z!s3YDojl7segN?5{54(WY;n#Vmx7Co!Lzdk7%Y zwr7#Dfr`UA3?AQm0@Fw{yGQsfqs8KC`-OyQa?{+F8By~{du?6D>F|#1;_WxztP^_P zT`r}jkV^+!p_NX~HR#B-fJ<;)Ss3m@>{`I{yQKXpZ*Mv6Ol8|wFb!wFF(jOW3hS~M zU)vu*z2O?0ITtUb`ITNir?8OXnv~@}HnP<=@@Lv!?k@s^Xam(>2Z6iK(~NG~D1Uu_ zST*#_kURNn%Zme9IP8nbqi+^JDV z7Cx4%>{ouAeIU2#lAeND;oz5Fq(1i)x4qCV_4YaE61)#}wYuvTBR4|92R8F&banOl zseu+da+jA{_gnB1tf7_P%%GqUrT`(o!}{GC8rbO3ye z^^#7#YwvX6-Jt+SL+@smKPFK!D3Nk(U;?e>6KcAGO}uCD>6Mc7Ph8KcN-jmbp<^UF z96F|mrYw@YWgVjFrgYj@iy>sy^ugI3kJ2g4Y1a7G$tRLVu&GPQ8ZEW{rmBH18#yZZ9 zs3U1}XlK~5KZKGy_^IEBvg`4K!!?z~8&y0Ln(=z=4Migc^s~^SvU|2{qB1P0%ltqL-%>2 zJr8(H>F4I3IZKESIRkMBFt~R;XE*sUljtY(Ew<%9`$4(SP388bs5|5M<24$Kc3W z73BkF90hsR%3XCFD9R#g{cKXNXiw5!J-cLhx_YKM^<4l`^7=_j7wf}u?PP6xqccOk zcE$h}1sT)+_QTuv`~Thj-%Iy@^0v9?yTIE%e6E5{aKlOi-nG3Ccn)?c0+NjieuoR| zl6&(Qml2UeeU>U(T9oNVK(O>(5uY)f%uI`b0otIb6X6?Lfw&M*bkkG9*)q2kQVntIUZ4M7t?oN@hkPKAOnFu zy&^d5)u=&TU~^I18(*!R^L^H|Q%)eUV81hy%1k;F^y3#SHemF8*hgkY|T|iXhQoc~JG$Y4Cx)2I=JT6FOlGT*-7-QVuJw zH8=NJ!cmf^_>phrqw@8em{C@yLM~)W$wlAX-Ec2(3DEA>YPl{v`UZ`MeowyRNxMH+ zMfR1a0CGhp-gKD@uini5OO!~e=63qp7e!EE@E9E(}p;eU)G2)AEk zcu{)GBI(lIZ3p7MDrJU5T2UPcezdfy<#B;jhxMfWI7>rBfmQ%@MZ%l3%V}+g77u|t%VN9xXz zgV&t)X+Nb+Uxsu(2dU*1Z~V5p*5V3ad{pM#^b?*DJVQ;HpAG(){qRfOZ;Y=#?@ts( z)sjppV6_r^Rgx%J!?V_={)`SDNW3|xARjp>Y<=LlkaWW6z&)Iq{X_`bGkzpVePrWO zx{4dv`4#LH?-mE9$&RvOdK*$NE6H`l zK9lqz_X=jLWS>}(m+1dEf%TXnwp|tAzg9ermr6!=O>z*=|NKjBknEUCXy5JN4APJ; z;!Pq(mU?R)y@t1w3X=tUX?ov}V5HkDf0?)_(LYy${nRQl>$zn2lg80#*5JOo;~~Gr z(vpd1>@aU)mpWI&0mL98&oV)itb|Mi|Nw z*iB<~P21)j)a~+g@9otK3!8Jpt0;=LrtZ&_9Lwts;o4r5cq~6uQ#z*+Q_DEyKsIh0=z#1`b?A#ZHR3DBY$p&XO9B3n1$A{3cF|LYTZ+$24GBYhkx)YF^RW=1&>45Mz1; z@27J}uwm?yHda)VGE_|>Ir=fgwtx1(7x?jV*F^w zh*I~CYs5)qQsdDyJbM^Ka59>&E!98oG}5shOgz&O+gA}2C^+EK&x*(1Sr;*Al9}Bym)*rKYJos8YnvGuT)5w!MeT@~($h`lhP_?$hm3 zloBEg?P}zd^(ue*QEe8m??2{n?|b~7!>K+0{!=4G{e*tYG_o1>MP8}Bmt*7wV8X9X zt^bB>(|gf{@GiM(cs^rkUoI`UnBiRn8F1(?(JyT{xdclXK7xJ@o<4SI&XnMKM!BSY z;|qt$S|$`&xP|BQu1apcz&rrB3bjvt_3M{wh3xMN(_CS3x1UFN!)w^3%A&sY@6t{i zUfA&jvTY#2nK55pj&(vD?PUOH@RmOFPxI|hLk9z}kE40d5-N>+&JxeqQ*OVc0JG&n z2ZnF~^F?g0O7i?K)H60+P+-H^vhxg{dK79ye!2|lSN#PE3JG%-H0<0*?|tb&p}@3}=??H%;+EPyI@ruBAne|LT)?4EwJCf=|86vy{U{N5}m>{{wD zZKw@Mz*Q$N^Q`I zUvyX3*}xkBe&4A4?OE<*t(>j5>5y&W-Je!Z+{#Pk>@Mu?h&oKCH~od1M$z}Fc71VQ zX%SRIWzurv?`%)5TwE>mH=uvA^*iX8hO>*JhmdnyR|f-jBp!jk$NxI@9B>+VCrYG3 zz*?tw$&lBQhjz57$t&+)wrl_gd(!l|e;6GjiU-$#dlf#3UErrRx{P*ear4}^#_cR6 z%_2>pC=7s)s#r1_CEC%Y4L7dm4Dq$8_g3D&f%TuG-HBl!63LP)J0c!Oi<4P(Brf3@ z=a8*;Oep$o-XY+GBi7MF=~A-{eio}cQKxNvezkG!!U#)E4ZC|Zg8vpMy}0y{U%YW- zuR1TZ;}DK=2JBSpLs{D6tfE)v65``;x)vsnSD_ME;D_0z&Ni#>+b-fQ$X!V_ptL>b z97hcAJ#n^Vlu}!c*aNO0js1>ZJ#6TH2czHw+(IkwW&Y2geYDUtZF_}lSLaS`eY}qS z`la}?g>mXMpdkhKusd}o|EP0v9WuLalG;+vYkS}OHmIBZ%%X^N1Btr(U3_~Ee!BB8 zN8#`tZ2a)n?vsZ)L8hM2^^;YJ14kT8P2H1fYHD2!;jp^oMPD10wR!PKVz3Rlt>1eN z2~zXG*#h9NFIyX@_LuP)?N^Wo9@Zz6f2yqRT||OC6CbrVn!XaVR$dp=o|C(h_&r2w z%6O;XbS%+1>0zmsKrh(^S!c`0c9>zyX%}ZkAYYX`gk76`eMq!aS6spAOZE zx|$|uUu96Js`FvKET#(A(CeDEHybDj>ZGL^@e^==E|&r%z_sM&dg3)tXIhxvh+l9^ zU;3#^|GX~`R>S7{Hr|_c09=x%wqB)pg@si)F|JQlxSyp=UyhHHB%R12+5%O3FM|?I z-~BNQ;HSdYj#HebEWg>l1_gh2=hiWujB?zCl{0u~7{v6~5&zXQ_aexE(q1YZ>f1QP z=GGYORSQjhXmps#z3<>tl-M?8^DUv?V)#*Az}=F(P^&~$T^CH?736mjVQXg21Smy! z?W!>VRjWGw;p9}58K;bK)9qk$XQgX;4tr#EK4O2^C_(B)h74i8FnQXE6eWvz>OarYAnVt9__4?Gx*0%Kr7Z(-^hBb5_d>b1Rqw=Tq zS?ceBb)5GN!UW=$D(5;^MrF~hB6@I=9+s3ty#XY$(@?fdN%XQEPLbFHPqD_EqF35y zH*O03l8LT%JOP%Dl%hQrVS-Z?6NrDl!tV&IF&1)U;jYc39dBndUWOA)+8*1inSAap zsTxc&*QuA={q)eE`P0&0FNKmg8iutQflu8T5?ri^o+PtZmxA@>76I54>ze7RCox!g zbd;82@LcrLu)v12jAdu+OsWrFOllI)Q81f$vd;Mfj+Dr_`=;RLCR1yab&#ye&;y6v zSd@a2P`nrYQa|e&xWu=AAj}T0C4r=w#*IW&8s#-u)D*Vka@N`w>)q{OQK1``x>Ynm zoZB5A6@|MA$J!l4_Vc{*bC`+M!j#g8f7CUC5=WLT7hBc(c^5}uJ!9-qMEbq>87~tL z7h6bzb!mMWxQ5zB==4D5l?d!Yzp1)6g66Hu4%{Pe+{mn<6x6f)UNfdf;D%<%xbk{- z4EybEo&p-DdY}oLNDNz|zv&LD8oZ8yTZs1&+)E!3MeN|Qc|+z~NSK8(6$%JP47q_-}0_;`%k?#_1B*e|z@nxmG{ zZT!LEU}Lv%SX^6=E(g5|ZI90kx&OZ8@QzoKm!e5TMhv^NX03DX_@?)3F z73u**;;skH43mn;tuMp=rjX^mG#=QzJ@9>*i5d$xUa8?8#{ZkbK#1Vr=-}T2S`1pM z4)OV$LWz4^^ib8`1A?0)k}r?`P2t~D`rn94N?0%Lj@f~vdRrv93v{nSoKy$Kf%A94 zocJ2UL?pUm+%o|P)Wfyy&io21D0+M9~eR?e^WTdgZIf@l8_C1IaNR)Yj##DJ#F4ZE&79 zZ)wf{aTzCsrIFRt{BX2j<3kH5Cf^!HwdTjbYjrT}Hh#w3BiI5VlxoRBBV(cHMz-vk zAida7urDdOchj?{P+IX}(*dPAniYM|lNi>1?F`Q;LSqv6VtR2Qw~EDCR@Ys&mb+{| zAjV^17ADGWY4Pm=BL$eH4x3_0oMo=yIKmOdg)Tq(^calcB#!liF}TdRxOP>y;>P^u zlXy`64dx_SYx6o2Uj`H7YT7Ts4Y`J$aQV_=Ve}_5Lf*V54PFTvEJ$l~SUa8+%-i+b ziFD!Z#{Pdxp1!aPVtFy8%`^cb#8uc4I&CE^T!{8vup0dk0>;xiO=KxX$wTUX@cU%v zuxa+>>cUWe0cmf?_A(~$4Vs)z5YyUt@}jx!qQni?4jmTOo2*MmK`VFf`dZbSMMja~ z2jX#j4UUNoB1FKXkIXG@Q%mzE(qb;e|MYuD8mKHICOJv0-AsvMbX6FldbK8cyZPyz zq`h>^f@gh1R1cim2r86dN`4}mQW^_a2%ECvd!n_a`XH@|hIpu>A7U=GMX@7kRQ5IT zJSs@m^WpX?k7wlWk{+v}=L1d{d>~i#o-@X;c4nUY5yD?+J?4={5lycYsU=ltmsu|4 zC@5stzv>uMO`s{nn8;;2q(9u0U~bXq$q z+Fit8GFf6P9+BlF04-}R8}!75Udd`C$I^Ruoq3-$Bc`}nTGSc02nb&>5=ZBUuUNIm zl{BvI(h9_4Y3%OA4XyuBkc5(M;j0_cotfRu4zVB$WxqA4GNIL*!NWxKU?Giz;7R&_ zG?gt)(rqVKD0$61EmV3Ft96?=EocIv2nhij%-C!X!y1uz_sfp;w&I^M$<96gv0Na{ zFlto=wcV9%!dEQI6e}FRKldV8xnx2;zC*FzWfB52Eo1f!zA&RojqI&wtj=X{O>&ba z#`JvoTg^=rG;C+3urN_NmA$DS;cuGZgSRA@)@|D3+Uc+*!I!CNsC%ZMs91E!bjDJ# z=E1sFMv&hwQ#e;C{>8w|MpgPArjg!Y(lh50kr492$0=@ZfoFH~!DjXZTsZg;mf6um zJ!lL=h&CLJa2cJqOaZZF^D4M_RrQ1O{ zFH8|n(B8(Lo@kIfm5Cs68grJD{HN~A;pgMhD=t)y2ZLFO$n9nH3lUn?rTo^G);Uaq=>y#x#D(8MpyK zhVWTVS`3E|Gzr_;D`YDJUa{nVDzQo{zF|r;Fi#!2_nZ}Ldl3Nv^4qu9q9bEXa*1_~ znlv5z0~k+pVp+$;G@~o>o}F}Z^)?Br`Sk%&NpP3Wy3oT#0} z-YXJ0MfS3_cYa~pob-%QmZu+7-YJw9cSDIkT~P1gNGK@jh)1oCRN3RO^d+m6h&0KO z-?P$mm%n7iFiDw2(+K^t1cD;{<yV)q}X( zK6eIZX+k`Y$f)p0oQYC(DK79RA-50e(Idebzz0?F-g{;tXR-m??gr-$UL{0|x*~j? zXUa{4A+_uV^qjdNkmpknYwC^grLL*v^~WsqP*e$~Rgi!Gn}09bf3ef(GZU+pq)3#i zU4H?kpu`S-CSp-N-pMzV-NIOhepK_>!&g|GV$ZTSJ65a=vF!WN3CxEq^%*a>EK4@U zHzed^c|Ea#9CB29d2+Yo(4awtc@m=4+eG$#Xh_IK-BJ#+uMj2i>$QX=RUDrwh8+;Z zgT!1Bp&UN$4L_5+33CzRe=z#FH+Gf89E)01WF z;Rg<|9AFD7`9bMPJ<$xlY9|@MTre+fy7z`)9*NJi(WnXgCXsig*&egKO}mY%gFXq@3hH?mg1(PRu?Le8!UH2q@D7bN~8I^Mqab8 zAtV9Cln!@YS>~P9)ZW~St{0?qGb)J8VLPA39*OT;*zClQJe(k^F-9~9-ueG~koIk3 z2`Mw<(KXWqyR=aO1-f)huE+wc6K;6VesYrW!X*>cFf@CVR8NcNUTyXaw~23HEE=5G zhtOMFwzJf9{Kw%9*zGk;#umRx*Ewq_y}~{{2ca?6W)ZS#ajk-ueg(JvK$&6L)cvX!!Vh zFoys5y6!jQ%CUUXc|ScD`AJ+9Q_9J0%5F4TV>fpXCQx&upTcG1UeVW?la{CcUl=an z04xuT*z^sHj2##l8f;scGp%cnfJsiM?iQ3k&2z{UjkLL6@k@)8WR@{CSmGF2*C|6= z7(ZsxPQ5a*-O5mXrSq6Q31zzQVLLk6g}UG@i6+nTE5`Gizz~}BSda$GR0!Tl9AvkG zCd9bI{Pn90)p|%qN;b@_0XJI;(-cQblxXV6xK${r3=3BsSZ;yCfNoh*MyB^Px7Eai^?H+q*RV3ByR{ zBp74kZ=;1Hvl-}@)($a_896pIZ_;1Z1Db}mwMG!qM3-W7SMpW$;^N6cEHH+*D~cDz z$FRMX`Q>Z+A3&z=8(Sg0xKGvwU%Vh*sU#b+-R8XBz(Oh)R|gAic)P_yj&M-;!3*J6 zS=L3m^Pi*oWV`Sxc&#LMlc!4#d|y_1&8rR%#0FLv&Gct^u#({fR1NNX))7rN*p)0I zdlCG};rstE5&Gt?xIlbbEFPO{W@%MfNS96SmL=L)BzUfdq)yK7?4;Q^EUh+`(rlu~ zrrU(7XYG*u)h#lqcIEX-O!(>JALqVg;9_#b!3|4;TxeL z&@!DV=M<{%7ULvy%Udg5t`Qu&#;6rfRF7!DcwJm+40jz(NL*+!faj%sFpYbgQlqhV zLfmFjAHf@qNY5LMfesk+2%&RrYa({9NHKy)P8qJii@0;UUl=8OR%F&_I?r$g(@Uq= zFJYC*{SD&gn79=3f(lT;AY5uV0f7=M+tC&oMf9}#yni?U_saa2o4`a}lRgvR!>FIWbOTSW(D+$LW?4++s$;ysGx$XJ6n?7z8 zWDPTMuVDT4;PgnL`Mq{>#dcA(P5kS21I8I0z;iD?e5o~PvAn`x_w==Fx>UPY4+=F?Rao| ze;hUDdhNnZ^JMLNn+m=-G<&vnIB;d@Zof=fl`y>DUR|CqAJPkVG;D{=B?Zn}joDhX zZ{!O?823Tq#Hs~PJ?CC*6X(2d5hWxSu8;SvLawvpr*5W64$`sl35aGD%{X_DOv$#! zL9XaXD15m~8+G9M7@1wouaBGN9+I z@1H>3^(yO#W%sN?(Z?9x@+Ne~W(htwrico`M`nZgOnT%rls^ih8 z2S#+^8*lrYYq{2dVKb=KYSO-=@Y#Jywzf-xog>ZpPCW(?pm=u0N&jU_@WO$Mry(QrqaX(X{&y$EH@bFBco#jm}s;6Pyf zsNV9l%bX@$p~9c#!BrkCb$<=0FiO>jBh%wM5P%pm2?djG-nR;B@BgMjkxFy4OhK{pwg{isZ*2 z+SsB2CLqYfBXksfF=2G5pzqZE1P5bhfCwfXbZ%$?f55jy4f z*3x<0uVN$g|IjM>eY7{p-X(6%wMaO~X$93~shgN9aojeAx=NgA+0~mqCLM@kxxLB< zLN`*ulj=mU|A7^-tjc}7Jw!GX{W_~CQBkm0*@NEwidJ#LU|IAwBCO-| z%U#;=l6T)6^Il!kfjc$XW&wxAD?8S>|0d8ql;xNDfA4OMVXHDFvYm-Q4XXKl9(C4c zZ+)b2*aT7h69MV12bq}ty_JG9!7L?l8ug-o?zKU&tZaQ9CuS=bhUv{H;g_4up-r%@-8DbDrA*#_974l%*Jqu2ex9bW7=6a%n%#bc^SGG zCm>+IC_}fer^nb@oLm0265i_#ikWWTvNBkWx(`Cc5J*@zd0YcX>g+&KhxUvV&^KBT z(M!0r&PX^A)$Wats>Dm|a95(!1mR6~V8D8YVjv!KBVn6x`7*0;R^@Piu{mxx1YDxd zXAk^CpbrHP%%&tQZB6ARXLGG4XOhH%U%BI-pT zTsmVo+&PwG73Ci#HCn=N)|#;T$5MP(x#JEyz(opztkvlSuOho@b9@b6d3#A<4V4=2 z6q)Dlxo5V!amdBC(V|97Tp`A6INJKk4&NbfnB%;g3+7ZxZkg!>9So`zgfB(rHn-HX zholToBJ&u++1GD}vARb1076U$WJH69M!B!+)%vII4wmhDd{mSBPI*iVIDgceo1IsR z*&h9ZybV?UoOmWC5{jJRu0LW;a5p;1TFwXwrszafnX=SbIWvYzjfPaAkk%?e2aF~P zu^Zc7x%FvF<@b0c@qmA$p;2=T!gFgKAw3XTt`_7u>{dDxgh0S$C=(%oR&t;jy2%t_ z;+vc#4%#muDoEd7T^7w{H7?-A97yy2&7@7C)egOGE!(fNKzb3(n;ef}qT9z5)ho#x zgax#L2Xj4}SVdu{R0J>S`hxo_o^BM-&8BfpTG4l+U7)=!#%GK}7Mx_iY)POQwX3ra zq9ZUUBxQw{5+@fp?RHQrk#*T*!{yJs+4|7Gun`df?iu(#4O$7 z;1_>muIF`?WK!70ckOoQX2QS6vlDH;_-u9Tuowu7xhKBT1NZxXpJkQDu>@J%*r0E` z=DXZD1>bgLtbU7c%M_jU_ zJ8GQ$!R-_bEHN}%3%XG-vvfGSM7bl+Wn62WFiff_Kj#ADrX7o@#Hrxu8(zY~U3-Nn zQMAoMFTaLm$+_*Mv5+qmZMd1>#<)UZb&!#zClb7I5zvu>#`ArvCcKfLUFJ&%DwX*e z-n!bVqCI!d2bYoXsqpilNi0>g7T?bW@OSDsyDq_Xf${c>%k;(?5ts39-tP7{n_3zw zGxMvKBIqFE00pz4bgmijM3l&xvz4{mE9VD`G?y1a__0LkQnp+v$ivptv`7&_lEd1f z*4KO#mSLms&xW+p!vff_T{*I~HEJ3;y)8DsC|e9Ep|E604f%!rkIBUTosum=N%!ovmH8 zOWI#35l8|Nod{XwiY-6EdwB6OtUwE|B^3WCr7!L9bUFN;-Dq3c7?>4G^qQoywCd+t zLGJqmtT>YX< z2@loyjM-_P))Gem zc7Y2~Ehfu%ee}4Z`#I+hIML$C%+Hb{vcR;2jkh^=kvjwqYs--5T@I!Ll8=#+kY(ju z<3C_jrD~-xDb6TP;y{91v->rt!Ofm9;x9CEBPN!;3SB<}qe?@n7RVTc^;hYmM4U=2 zxupggjb-=}SFHN;UwVJMRAI9c5^V#71iXv)WNnuTtvWoZTpBOdV0NfLHq4{fZEm4A z=r`uw(OgwGJ6=TC{3lEffAbB+g_6g$aU08r)YgWWmO5tw0pd@N0gl92kd4Z#JL@>+m1exzfpf6OR0+L}+e zTmiBHVpmAO3GfM)RmE$GckbcskHv#X6W(Oien2Y$UVc(efFBzLE)r_%|90nZYPe{; zUE=xm!$l=1c=51`v{{H3jrGb2P)A@)o#nWPdRa|D8DlthI-$rTP3EHxqs5R@TM*&$ znVI0k_TJ)Hj+{rPw@Ka%%FU>(#+SPUHI^4>N!kZWHBCYMfT7CXG23f0nkt6=*d={l z%_V&-p_Z))V*wT0!l{yhsT^$=d76;$q1M-A0%w1b&4*jn&VYs9ezL#rN)X3-_8UDHd8d2w)r}DhI8g}br2ST~ z4iX!@wgODtQ(C~%se-qRxgy$QD&us@ls~Q8N}(FR9KpCxW`0g`kKef1e}fE-wq9j^ zZYAUdHRUanYIfFy)usNw@yY+WWV}xEyt3%_Ox<>Y%bX$%nOI}=W`Cw+iI2K%!uJPF zdNqro=&DZO_V`=31`E44lb5|nEUlioJbNeK; zy!^N#h!0)EUiOtgsKcR*;RCML+B;d7(m=ekG=OQPn%I0=ife1zoWXVK?G#QPQaR6# zHz~4aP*39?O?frPI+>WDxh{l4_ezJzk2=O~8TFY+FOwQZWTA{@`C*lENr=pj zLPf#)>}$NL70sGT3L-Xf7{q3tv|B#NRVy3y#1HWgdhfMfW;Zo0cO zwDfCeM`Ye7KeNvAjX7K;9yqMD;4Q)_@oSe*Zd3~yDI++IEp^#=*=+)VM2r16IhI@^ z)Ff|zRq;+l*mStZa_2SxRFrghtyss{t|%5Y`d(Wa!ypu+o1ti>Z9#_0z5twYq;0%vEL-%KsYRNKU5TI4HA6N| zjWo*G{~Vpnd=j(xCvUE-k=Hxk*gs6HLq$7>SDrT|%nV)~&)+UCpG5Ce3b@_bq;AH$ zh(+tfYaTxGIA0sn$Qo|QeJ5!fVJ8V=%2=6R=_HgVPX-dyy88v_Vpx`@udOEO9!`Ld zVRw_|OOdGrvgi4D6lSH~L!fRwR22=inrIs-F%!_Ot1{HH z?U0c+K;+F}ug6$^laMeT8@IA_D~n8fus_aSz?-za<~ZI?f^+>d=yB1O?A2&$^i~x- z%D?xzt)Mr#BtJ1Ebp{^BwQ}Cckm&bf7I;7ukiP>{+9>1t ztyVl)8r=Y`%LT%sjj%&fsu~(L7ycGT~_TD|L$t&#_ ze)~F=>3Ej=|9L5j#JhjAEXIx1~LT zKv5>=;~SvXOJvjIz|`hcVtSur%NDNZE1O{AmAyEjx7hw0pN(3KGU<>Y_sH@Df%TSm z(6JD04hMOruH4%-QuosADvi&@Lmo4V7Ex4gNU~~gN2aq6x9@strrck5dIReOJyjkG znP2L6mcfTC>s0I+zKEJd@7n10>#qIU_?mO!<9Kp4O>S-N;ysjP}wYy2V8pkpx(r6?<+L*ju+sWfLjQv_$=4 zLprpn2WpT?l)~YL_fu2`C#k)g(RN?wrC-!sW;x#x2nZVhUXsj*qIE%NqFm6@MuiVz zNBqc=;n|TYiUn%fFDKzfvAYuF`szg)6>48*1PmCDx??1bJ(VeeUcf2e^1KVZaP`j0 zSg1nz`r<`5y2V|8Q^jeCZsv!z5S9k!w3kdzdgmL$4gDKYtey6#9OTFROW;?TWmQ?D zTr^n-v2bBsrjIP&bQd<_C0F}(Y=xmA zmiZg0DR?9nzeY}m#CzguI)n50iFi$&Z{A?67-v~}I)SymnoRcz0rtci$q+nRD4fD5 zk==P&%k|dZ((yTr(TA&J->?l#b$4^V5!jB?2enVYY`XRop#y_o?5UY@LGbp$GSV(= zR%RK?RRWF{Y7iYPam?hnz?k%4&aIj;3rwV)6T0U8}1nI#|H1vSj{ zt)gMt&(E840fN+AS)PnH!n=*3U#ws#%gFzaTXcJO(SnLL-O#92Qv_|hFs%k{#=j~A z;$Hu{Wm}e?IRrJ&$6U@u0#VMU&N?b43(cCF@f)9S;3(*J*1v9{oSDfMjvwatOlt&S zDEIHvaPhVHT{=jQFKlEV0JZ(=mUGeJCvq%O>&!LJ4d^X(h%(}+XN9wGQW1iYjlL$Z zqFmvnrZd+ngDZTx(<`D!$e@SanM-TqaI*VU0X(5GK6xRZhYMMHd8M3#TX+&XG?CxP z@#2N#yRqBFAEmN9IJ~|p4rOs+8RSt9oX$5qmbk2AvE`7e(r3EX#|tqqx%}9loZn%; zcs=4V92y16!0hW!Wo_6$>#EUYY-ezSWSx}c;h+0}Ew@+H8Sa^*wE-UYP3c+rp2(z- zdQ+LduT&;{w?ffYRXH_|EY* z0ofvBYrD8hUktSbD0A`Cu zfSiJX%16`Ksj~F1TmzJZY@1Kp&h@${g1!fu+SStBd!X>qyejZ0ZSgcMTm~_Y{Ww4% zmvrn5I9c)yJUX+j#JHwO4&oY$U#dWJl9GO2Og7hpvUF>xM`T(1yx4=e6B|D7F}_a} z;cbYgxGE1Rl6DF@6SLFvgThKR)t$VGQ!@2^7&->6SUTEXCZ7e2F+0HOmT%EFcAVVj zkJ`UYVSn%uiVwHshxb)PYq!vF8B&)#U@<}OJR*7uf-}1i3wO@Q{(&$I>bB~rGsG=< zG=a)86#f`=z`*Hxpgy;AVxFqfVI8#1%c@sZJ3jMoR2|)5?|oASfBBr0>GkMYJ)<{4}H~z7K(NCNz0%jC}-2$#+Xfsw1Z@SKd_wh0ral4`w=X zn2lIQ_tmDBu4LhFvl0>6)_6aqNF=a5s}rPB5gP>8$emS2A#p z2I3lOk9p*FHaOrXk1$S1&b7j(=Qv}rHx0Lu*0wXo$G5{6*|@$$8vQH^X%8yonD+Nw4)h4`r2leD#$~a(BL;los3vU zQHi>WWiwM;^V3apT!0b1d}FY0m4QRk)5}>Zi^1V7vUdnygp(6 z)~9S^rd+$-F>f0&Tr2NH*sF_m+<5lQt&*-F?+P(Cxj38mygIj)X1|ij3od#IP;rBa zaQ}KzP_nbJ?rTdF7$IDy>KNPs`+5=I9ryD+5!@+k~u}M(Eso4sm^b)>BG2KMob|4~(a+2XCrT zEVhy7=C3rwHiuE>=4+r@rodo|ud5tKtP1_=WtQaYV+~vNwu*O}qG81&GfZHkC zbJiDvdR%ZIrg@<6r%S7xOALqm{=m_Rig?^d%8j{;Yh5VNRw3QMgzc+P+rHK!RoCLE zfrIH^^b)dp=!T)gTlwrHXcaH`q#~0)O&4O?r6=g)OpCUIpsJHzurF$WJy+xay8%06 z_mAdpx+lO+E+!9eaMU2c*&$Cc5dcJBw1=8Qp#GTGBnE~)7wbw$`;rQn>U5plShDK9 zD$~={#9lBv7~j-zoG<={yy-9jcJ(ybfPIOINudXdt)TblxL0G}{4*k@vINuJ4RN#N z-gQE?OjWc#x`keI@t=4Q4Qjv!(RZmVz2a3Fkk*wQY5;vkMg3-Z%je9qL(hR_*v0Hkdhe%<3 zom&=k+G$pobGo|{)k3j2tFbHACq;1zgDkRF@!k$dE@C0=G(x}R9-2v9;yxd% z;?9i)W=?O6V(&78u>DNrbf>Yw@Oya5>TS57Gg}?2I@dffzl%l6R!A5^W@70xe}sK* zpb18Wb37~H+>Kuv_&;rkh8N#TFOSGcz!xTHCZyaT@bDJqF17LLH?T8W;m{ycK|oud zx14Xx4taifko?z+Gvve%T&4w7*>c4xXlk=|UOsDDTxht80CRHIUPVH3^*Ljo!(3g0 zD_xG|K7P0l&ZT)U>svf&!1)&o7blYhbOs2Ns0tGpp`MYi%Wt0?4h>UPnRoE#KHNt4 z8B=|m2W{=el<_^X&&)KO&^05c)4#2YPB_eQJ5U)2&nm?QDbh9s+kd!+2;f&`^RhV? z9ogWjn*QR$k`yGTboSfsC}PO`f2dWiT0%IkH3)UoB|5sI;C%LyDI5+f9k*!wqchgi z-m458>DTC0-rN@M9L5NrPNG-w(GTF<>1RQeby)&RGAkc5 zofdK)CU?N{HLTP&&!LwcPB(;=8P_zBv!-!=C3U2oXSR3|tSQmv_gZDQthEzmVnp(eX2OxVrS_9E zK9=GFZ0Rd|U37DP5DpVIP6-LJuEZPr{8-qOqlCb*&-P}rioDp2_<`li5n`sH{;_=ZlX-Hb=P^sI?ZsnN#5s-SDX(lGFBnm|@o%3EzGj};mzJ~8rpgrVYra`CRuh7@ z$FL&?Ru*>04t9Czb4rb-ry(6$*)VyIo*jR{B;w$l`@iIHlgQy~&pv`!$LO6LW7@mL zLtA?Lj2Evz+~{5}!*nslTzHwWGftZ%0Qc`e!Lua7Wrqe1w1|Mm;T@UndSa(c{Z=&|gF zX_cqW_`6(FuGR|_MZuy%Hy)4QU_3+z@;p_`IFu`8U%Q$*z6`{L_Jmsn!ck^$6p>ap zfvyzsH`&w*8Gu~p!bb2YS@0-ke0get{ZAPMtb?M`8BbG1BbMR6^Lta}0d%6ug5Pv| z|MLQlRiV+4;0E2piH;$Z{2#9G8~+y}8nsMQM5mV`ubDKf6BwGn*+CPCv~@Gsce~a8 zvT<~ZfbaFNT9<$QAvM*ymsNH@t0XXbMzZi91t|IQ)y%|9;MleiTzY@$!dOC`yTNDA za#(WCt0^Qj8*TNK%BLR>VaHsMF^c5=y+aLtd61x!-;Or@SuOj(#mkTPf3$lS1>D|L7@pA3p*V%&S%ZiWVAo-V}>KY6}O zo%=bfGcjcJtxy_2#5(j|FaF_VY(Pu6^aWy7vQYHHh*Mpz?eQk4rc!3qXWhJl1Ig!_ z;pxJ2+fD|l3Ye!7w=kl+6>-ujIIKyUtZ8;hER+7BY_Z>cWBo5cUN*Jp<$c<3mL~l& z1AJ&zUfl6DAbA4;ydd9cIzDI+0H&mI347yMGveu&jW1^*V__;?cDeR`_m3+-D6ZRpZP61i+R99cy#P8Sl#D*f6lw z4@l^^7>gRLrKH^``=x?k#^8VQJeZHG6|_C3dnBr0V3iT)OHX9ex$M*=+34Z&{7^Y! z3GkOG=1Cu?rm2wG0MHPW7=pE7O6TfGTTV+hiN%hIZbd=(P?f!?;gcqGO=L7|1cG0a zEN7KxtBRkoLeD24y@n0{R`#q`Rzo0$aF1~%8zr+prIe#lP^?u`VIJhVuMYl-{LV;m zi0+Ww3teRW^ev`l!|yy#cpOz(>B=w+(OWEQ)ToiJNp@xckhl|+n+gd*&G5sc2&)Wl z>Gu;+vI}ML5sXK z2t{{#0F*Pb#*_(PUi`nCvI_F>9sZ`ZM#;wfh*!W?0Leyn^QLy;ap%*CtEoHPw*VOR z|F62^2-T9!Gy;^*V1=61Co*|$8``%BOA}d|J%TPwwsH2S&=i1)wUTUm%DTy?2oKP( z_~j|fzVo~WARZbV-J$F0vN!Ef0H|;O=m%LzgtQ^7gtgoHEsI7p=G?v;hyVw1Z|?LO zR!iKiAKFM)lM+wsRLzB()RNqKxU0?2HsSm@dJTD*|Ap|7vbIfj@Qb_Z5J0&`y|57l z33+(cab-v5K4&ADakYFS?ODdmWZ!LkQn#b1jTI#QcX%TafeON|cUM91xBT3<<0V<8 zB0?H==PM7mF7EW1ZZ#`4Wn=m3a@&JbuF{ghJa9k84%Jjk3o}~=Mjs}Z!j1Y|c%WoF z<{_V~r_$|2`3j1dj4=i~Bgoyn;t@O54h5o4K-SbCel-)Sa^OMHvMjO44xnGzS!m!! zq!}stQ;P2JLxT;=EuS7)Lz4j%v$KQaV}dufbiWM*xPg5nb%O(_Hh7zlnR^|#L-IN< zs%&8G%bC+qGeF2v$dsgUWXphd_cG89xT|(i1sDnV>8WW~tG{G?=1Z!<+!>7twoe1x zt#W)V5H#-h>`r*NS>fxYYqjy(4U{X$S~>>r?LyFujz5#ly@HywSD2RgZqKS* zLU`gSb)P-Ov3%9u>_dT^c9b*~?CtGe*4q<0>H~eY*N%^VXeQ1Etx=6{+i>475ZNg_ zyK>zWT7OKHz^E^pbq1l|a*qC+k?0nHorApY=Xr1ZbSdo)W>)h}x%*&ksN-$t<%QqK zE{%<6Zya1N$z4>5G}R|RL}{t3*W8#&Xl^l#zUUBDUoTx)Tu}E6>DmBjmzM~Vq=z8x z4#KT}pc`Xkqpgn9itN?rfTbpK(5X~x3^4B8+G!DcA0&@r6`{&dixb*u-EuZVLcjX7 zsRNcoV5!bE-irXDT~9N!v=3ywFThhX^9`(fMwDlcTC)W&iNvBv9i4fDF*MCeOUh+5 z>w9gUB(Jk32cTkogX+#f<(pGW-m`xGwTa z;zEKy{X%mm0-U2*0#aCdQkIT|)@L392zH(xsgB02jNIJrz}!&^xT&MuBT8JA2;m2X zG=_0_b8H4S#ah4BGWz?+}81I|&ZT@uX7vz`~isX;n2; z!**xd#!R%U68~W+zt%jq;)mqkf;M0o3ylF8IkW3ZOk48mq}Zd`Yfk8QEUU@hH1u9A zNV($rt9XWs|1pKKqTA~7n@IjR#Z{ZzaM)dkOxLt%ca8v40i(}apR&pqfpv!IFW<8< zr`aE%!fZ%$rx!HY?bC}5qVR5S)@S8_p28H6y5Sw-vpd+-_29B|^eEjM;!%$_|+9UO=a;G~B=GrQS$#^+*lOwxTk3aJ!U|By8zy z8j4>VW;K^!eQWlzo3Qt^>kA?LVQ+eT&Cs^ZDo#eRE2sA)kCe`yY5L{ozYN`fciMC? z3sP1n=Md!L_X-0mFH8Y|kc2uGpMn+PUR~i2CQFtWnSk~PS{hr%a|@=ER#7uvG^^j% zj;&>Y1WQqZShplu8CZDFihb6A+Pzi6f7SwNTW(^N85#h1r@N}UEe%U-D##`-gxqA- zd!Kgejx1k-@j3j6?h7&>J!0ACJ^Y7rE=cEB4(SgCQJYSrrg>}gv-hSJa`dYuLmlUJ zg$dW(;i3xyMS;Z+7U3iiN4W$8M6hWx)sAcAQcg&91 zEcXs)F{RSp>jk4goS1$uZq?9wH4e2C{;yg5m9CP44oZ zZANgzRhf5N1bMJ7dYYz8yZx;4l(uAFM+mNdC%7L)fV0Yi`yS{UeaShg2yhCX!+&P3 zX}a58+^;1VOJ+BK5ZyQ_{32qivG?VqOTDQNV~d=Dd#2elL~q-~lF&s^rJ~%1D9Bw6 zI4*16+0n_dk5W1mJ%c}Kmez!pg*F(MHg0hm{F~2V7%BV8?~12!K`9}x50`gwy7I4W zq+O^$u`Fw&M5nNz;2frMN`2Z6Mf1urD8do6i1N(c!zH;MB4hb4**hI+YWk*ww|LW$b@f1vqW-0h4eo! zNc!y|`esE#=7a54*&3>&9V)U9>=vP;0Q2V}^K+md(HDI8hH%D-~A_I{Eadq%$ z%V47S`siCzdS4m;8AD>$fv}PnpBKif=dMp?WfB3!v)gXLZX)voJ!@rXelBQ<=-S^< z3zM4{wzJqAuF1{NQR~klE=@|+AD@Q_hiA_fdZm=%AMK2B3iCRH?K+R}u_$J^SB`3G zi)*@!f6m^^+P;n%hbf<5+He296Oo?p96j?|P#UL%?rRg+!wENZu3!f1?t4%5KaV%$lJ^X6gshUiE~q?%K)% zrF?@$u6q!9ZF%Pm+cF`j?UXl^pdAulfL};Hj}wKMw$Fm2`&5pUZ9`hqScHBvvvG!c zcdis1mA}ah&YW|ces(=e<>;256D6i#Zehy%RJN9{FJr7})b&lBHLdV3`T^R0P-mVN z8k$Y6|7&Ll+Bu_pfNE}u?CXx6Lp#QwJnAO4#Sk|0Dln+~`6;4zy%Vhhl2c!hArI8y zJKS|2Exi#KgUwKd;f9F$=VDzdsF&gry@PcXUa>{qWlIkB9bAr^xXb*aGL{_LQKQ)f zPf^aX3q@Wf*uD!KK)aPPZXH`wUzR#g4^=~}b-AZmj=pC>YJgjHE>K$IXg0@*mS+}7 z1F!c=b+|r9Cu#+Hl^>LP^cbBTcN_XB7X8U8j@LB8UtP#0<$8)y0Y1pnnw(NU7IY<{ zTXEJ*{7wyd+^44ZcTZ;WL21+u#qF`Z%sPMoAo?Q-9CVUpNB&`TZtP2xPp6WQv&4?3 z(Yka#*H*{wAO+p+t9v_GdJ2$|OT9^C%edKXeQGMR8B0trovmWNb8@-z*B0S2`xrW# zkY1VqU~aVWXaD#*&2O1|g<9GHRwo94Ie}ym%8uoKe0d^6rRp)j`6*vsUpRI%{Y}P@ zE9$NPhRVaH6?Ve~p-m%+Uh;T_L}=Do91GVj{!7npScjy`H*yCd5JmrrOq^^oVqs02 zb|@S*ryToTM^Iu;qip~{C5;B}wv!@hh(TW{V=53@ElN1Y;D2TBL~QS>e}cyXyipuXYl z?F)>IYghASR$2a!=)WTZv3mywd?oS!N4_}aZ!GNGEs!B8SHm+Oba&eqn&(FKlMvu`Snyk%}#8vSsY+P60j%h(E8I~*u8qHsZ|VYA_!B^DuI6ryFGAe`cV$a-XY$M>z;=MyE1p1@`_fW;ktZ(4XCAX~I zhw=8_*-JO@U19N(`NdD|-y1UnLrDk8(Qo}^#$O@NA6u6H+1_!MyNAfr|A(4r#l2he+&%R92>Hd+`$Gk@ z7LA_}eFmI;uf{EOWMXbX)q6jSup1JD$gCp*L@t6yK(WB0toLhi)E+}4vGGHYQ+zwq zV)zwNvU;hNb0w+U{IY+k{-lAeEWy@F-9zzDtDnk2%`Iw+EujPMm#te|`J~r{O-mgm z5UA0;Cpxab>#FZL)b=Q=$>LWE?fSYP|CVcNE?rVno+ZBi@~~H56yXTd+A1LsYHt>2 z&VJxMR}eSDXj3YtjwasN=AwVsXLt$H6yhVVpZzf*>{j9W#q;K?O_udzJKSfU90&Ee zu)ARCBZD1RJ74eKIkz8DHAVy|^!zjbY`Re^jyLEtJOh4d`j-L!Uog!!5?QT_nlNHT zdU!PY{ws? z%pY8@x?5jH`JUVgv5w}aLijCmL4<5CQre?``i^{?oZsMgzV_aQodM(gk%EefPR_FG zFLaV~O)JN5koSq_MF>ObjcGgnif|Mc#(8%zP#e!mdm0<~l&pDsYN?U!lEhck- zyM9r!NFLeG0@nsR@!q~iRRy|<+5CRs!;UcPY5;AHV=Bjt;m8l+J_OOuLI0aTc@A0X zwK~ZTH|uDH?~GVp;q$@}LBOXjw0A4-NNFP+vKe&xiqJ*Q?$zH0zWH3OJfx6ox&}N~ zUHT&$vQFDq2H&plX+%4l!{^&jXssOV>Q-auF)v@|CIbr))rxu3BeYYCt$IOm<)aD} zyMUEQJuOJziPcO{tQb-6S4zSPIMR#d0W3)>M-uvJx=1-K`2YSFoKmgaBwM8s9YmiE zOt|u0o%l8bJ$H(yF+&M6fsRH^$&@8RiqM{0L0=xdD-_I+_w+d%tq5g?x>xX2$O?GNfU!;jVPv5;9!7VizK(iyA>NY4o8;@hf zbV87Ghb*|FKqKi~q0F(&u4iy$SrFsg&>ZK-$N?Bs{wK$ZsnnJva=cR!g|DPn#;(wahjas2Cy-X9E%frR1*I*7hi%#-U#- z|37kAWG%!M4B7b&j>&-nx&=4p9f5$wZuXDSZj>JDn&@%-1pFLp;r7I)wbeV%H zH!4Qv(luvEd|!rW=!d}Vbes%6*Kkk>HI(}eg|8RzD52B-fj*ztp+{d7``wDP<9}}^ zzB9$1R&qxkqDNn;V>*MKwCB}iIh%iKM1&v1{DiJ&`4P2pb9d@7u!?rsfNn-P>dp4* zaMg`&A&^&Rj|8-cPcQ0| zm3PC`YXap(h%%?edb&OEzAXc|~mYLE;x&?2d!D-J07bP<);3dczMs<@ts)e9=-cpvhd?G!B6IqoPH@hxSM9cmNA z0S`KpM2D}hss4X>N#B9yYYBN5yMaf$1L96%(Xq!Rb1x|sUn95i%Ke_@pD3V zMT9KvERWIjse4(qfTVIo}~ChT8^CNynGbnv>QagyV!eJ{Yj`U|6{bi zn(Vtu1ols0zq5@T#%_=}$6;N%1i~BtOWTWeY$&Jm|G^_N2mdT8c_kLP%V~ZyhLeZ& zSVz@#=^F?9&4u<2t-6PyVloCRAn8RSgLFO<^e@EASTbDEg9eVYT3XcqT@;_3yWk=+ zsGK^LNWAa)O#b~0oEGljWasbOAmT&X4N5g_0^%+b$Wq zHhQ=s{%CI91hYpzIqj!)%#A+%%b8ricG={zJmg!2{pm~O_AxpM_W~+=)$LeaxK)tT zVfG>K77zz#ySDB)Nl#BJGL}oNl~SB(?xI9&7mNyCx5*zPM_1FY+`QueSM>?M5^?IG zz3fT%m@{3S==uS-VL)edc0IMpG-78`B;4}mnYN#y@r2_w>#j@bBR1`O1>B42f+;6+ zg5@6KHW?}mUR{*`uH5hSHL*KnTbA>L1NTFNzw+GP)gnbLG5^Y(u;|`>dEc4dx4R{N z_9^y4WXe&0ic2Mlu%v%t%J9}zAVEPJZtj|Mn)%DT)xs{IcAY=` zQI#?6WTiq?0(hYRWoz3wN+ujZ+vd$a8|#!|Xb6HxB7pR$3?q zLrw814R8%r2q#Rl^Gk9RyL|9b7P+-q>}?go-CYzJhXHKllBfgQ+z4Gf*9&d1rNm`b z&CY})7Mm`A@A&kw%lFYKs;_im*6O`ws5D3ZahijjIY@Qmrw}LQcKSNQk-*b3$VZBO z=2AhH*WkS*kh5=o*wBj7x|x@zwQ_GfD!YAU2C84P#f+GQ_Qo@XFPoG&Sk|&Z`9r$5 zrWzlfpMB(%=;CgO^-Ox1yPw}Uag+vv27;^ZHxu{+rU{p+1LRd3cWu*N7X=xPFa~H9 zcIA#r<9F)d+nH30-0=J~E-%%Mqz%pLY;6AKLgo=QFpZ)R9TP`U=flE#XzYm?8oknc z_$(ZPOtCH(Xug4BNeJ8#V1ZXvVXIJU@9=9^ib_*DM1ytWOw@Z3@!bjDG( zFcPBlLjO*P3KPpws*C{ZGf|a~4@ET&syNlS^>9_;+4Je98D=&LcNF8lyeM{i@~%^l*)4A&g2zkgF08wKI3TP0TE-O!hDC~suG&c~f% zM`ph~>vu}F%TCZ3K3#aR@=zqh;~rW=otbp5#*UH2iWWbyt$9yQS;fv_=QKc!pOWve z0w=9G6Q7kl0#Lk~UIviJ_fN_yjXs4|*lbuQy59yEE}E@iv`QtiSkNQ~g$@OtR?OLK z;ZU;7o|sFPS(Nq&D0$Ps0fIC(y{$@A*asAMN!c{z{OF4m>w=@v?>swwyf@!cFyrIHB5owuMoy?NAnJ(RiQAdlnDwjEFVe^WGP#YQzS{E!{M;EX!6Rb1ZimTM(DT zQfQ`ybq?UI1fkbX(|F!{=kkr!Iw=1T;40#Ff`o_9hh|H5V>HX`^|h{X^{&CF*ut`` z?|S!UXnXaS>HWd_vn+UxW6m^8j<dPFc;Xj`{oB7VMMD z4Qj)-P_qVrBzenY6rf$hS3?nYR`_tWIT06AX{Gs{AsslJucUu8jWOO9+SPbdYiMZj zwk}vJAJY(}tI>==m_`QC%KsL48T7mjIR@AT`94I(MssI$6I8SC>>ZjF1M4N$dPIvp z2cg_$X3W&kHX!xWHjocGf?_l6~5f6W3#PmSCAx6+BuNKL$UasH3 z%ivw2iLcF;3_SLDy5x@BL$^piGt4ENRE`_4lV-1lhG;bhQ{Fs*$c-mY4pq1TChXNJ zb6*&)9#HIBfe11J1FwvDuI^QU?X05eO3_mpT+9KDZ3D_Z+t1ajr%1S%t2PzkrQegiKR_GH-; zhGf>C{SsC8Gj}6RFQ>|Db@#zJlWs8}UPJYL=dL7H+QGAR#I)m(>=%&ud--We<{X6V z*$}Ybp$x5=^hsq?c^D0Qk`m`DybYsK7A+s|%rawAbLZ%7qZAJoDEEoI;Z!fQ?O9az zmJiHvSN8nM+wY$HbZcov-OY_2$JgA%w*5e^EW+C5%{Q$5jbx#FxRVW3I*}0P*1H%; z-dOt^p(uOlhE}JI9Xi{Ae?{qNn?ER=b3-mS70*^cyF4wR!->fp0|JnlA=Pn7VXeTF zpBQBME+f{S9Sl8nIE)i0X1TY$|Dck`H@%#kYExj_zO59Y@y@h*?|qDV#E2pvF}p}s zlC^TXeMxs)H);V;s314=YU5S!LBnqVQ}ay-*FiF3`Y}r&ver^n6pob~EmvT_{-*^? z7Ho9SMds3=X2NhE1(aShsOLWUN5Ft1K-!b^R6v{r4@pgqp@qC@@gK2%x_}8BMwyGW$<(ayTe%NDi-lu zL^PuLFEP8xy546RhyKD+kzZb^j5!25MIoL?7cIQnTjyLD`qZ&HKt6hOJL*UYrJpuv z$)Aea)-L0M!A676S=M>3Mi+)n*x`6R<%o@OtYK{PJ)x5rk}3Hq%2EB9DNZA(q6brQ z*T45%D%5#FK&8+Y!^*H1f-uPT7BxnuV|Ikk;vhM|h8noES9hpYdr6m=EPFMdI^3q0cTvZ?-cr0s;ENgPd5{5yyre}Jrf{`q_RHS!8r=pXL= z;%*gyj&eY{8~l?Y^FOb>>w>+KgOx23N`VF!e`)ZSA^jhpH2t|=&c+_;Qo~sZD(|0;4d))%!t< zvHaeyK&b8go4d8KJmQ4Nu}{>M!$57kkJ2Mw8Yd}^8$sLUBtFA2i_hT1(!-ma3@gbe zZ6p{QxYrl8(W_6TxAo6u$xG+b<(v~37$V7=>TW7E_d`B{ytQ_Q4%U|AvhEPC{yM89Aruu=Qfvnor{Jg_wti`8k@bfWSXoKT?w)egu@&xkvG3>UYGzHXaf( zF3VsEB5GBEvpKKGPnOVY*K07s()5u}8Ce6*t_E0zxjP~Hdj+*2D`~&NpHO|VsBndD zxPI{MpwA6&P#-h&o2(yeW{q@Ca9Jo5YpmufAz1&B%1sVfHjhi_sYT_w3Jz(hyNhncD0RNeqHobo5=lpJ9Z}L=S#$t_ z$$~|;#5yB`FLu^Et`^ijlmlXFBnL=u zKURzXQYC-_roM_ep)HC8XdAxSH0TuhRA(fe#DW;BH^?|=yP;u5^vSeaL}*fg_s=L0 z7I!^iNxa^F!*-KfN?)H_3{hNJq|31<)N*o$40_19AxQbTAni}Oem9|aJB-ZEU#N6` zm5_;N>mas#fm2P%Zv?!az(1>ro!YE&DKtDTNs-(veJ1MUnQBp{au=5c=R(yMTZfd9 z^%q_EQOj{FBRFpdKKux$Ri;=|4R&C(Zm2U^X(P~&#|ahcPSFpJzIFDK4k*QO#0zPP z3mynbWu3Iet=#4hwq6unQntaU>$UF86NxpXEWA@Qq1=WF zkIk8nMmuDRi>-~#$7{#=tiR)C$H*V@&dM?u{t$vnUTb^}S^)w;CwA!le&-^rNuxNV zzZKdb2MwECU>CoY-qYfQBCZJONc&QF-L=tpSrds4Dr$VYqh`Yuw17OZh<+ihL0-- z0DQxfSiT|a%%UW-)gbTj-0P)jU#TOg3_7S~TB!IU$wm6p$Hzl_6w zjro8zz09}xb}VYBcooIAyF*I)k*n+lQ;T7;oBF@LZEw~WulG0X8=e#VsAI*dFYMdX zG-0?kHD#~s=rHGexzsAaT3>@Ychs__QQS*m#pGTKgi>T~7?`KemBJHP`OB9aFM4eZ z+W1+fLf9LcS7w%PAlu297lOGDgcpA|w`RJu7XG@n-QpW+XvfXA8~(nVETw{6DY!w9 z@NQ=~`GY%@LlMq?S-55~0?6(L<1!LeC&*(0(H*dk3G(KwQa-|+Py5Mm!iIaN()c+_ z%qn3b$g^~AT9$n*Z8>7LgS$ApZK;wdDG4-1I_HZp>TM0wAv2-gIQjj5lr!t5p_u)zNwc&${wcJavsv9Vpw2Y?^(!$^@q;<3#%eP0iR+t| z9r}NEg&o#Pn%!Eyhv|l(%EWu=Yb%oT#WGK)+kk($O6*we8W>*qEHVt-c`>b;ooMVQ z6m?5>4^CkdK%5CEPBNhQQRH}e2=%x1??GO!eHfndWBQ@o)YG--X~Jwf1hB{Ms~W{Y z?2ov=`ll8^pqv2HXR7W=e;ROOm?QvW_d8xa`7e6;p|qcsdTSIT&aiDc+_;3d-l#(gMAu*v|Zw zk*{H=3p&rx6Xy=)j{U6?XMVR=yDL*NyRAO;o|jC?-%jS*y6vdLywRC8$=cU1H>Nej z$t*B-?CbpS{6Eu!NKtLa&g^@7z{M3{OJw~dsc+bVoqx3-piAr+n>?EPLAe*`?;;Pu z5An72JLkVCC+~`xTyhC?g=#B#L{q{zyffgf7~eVA^wJRJEnyo6DK8K#;AB z7f4xWUc_1xx%$8Q93JB5+A3$Ir_>wIG!SYn-niyiD|g&*lG+?5S??muow?YU4}{40 ztIrl|Mh=ELxuPrFDXY}K>hjHpoWS0|a^j~uD4pr;wa9*f{Cl1l^YX0#GiI zmJGO9t{&%IL<8V0Dl5h=c3Qc(05Gc)2h=5@e;sy3FX{wX7zMW0?-36<%j|Y`D8sSn zBqG3-G{i|Mv~IEol@af zMNT^=@~_0KHcf>--{u#ZxVz8FL*!3a>dPyy#ElHOX1VrWJ~;4fm-q=P!#=ea#?@@A z9D^8FTD4HK{y{D8p!@SWKxNe@z)5KUw=zV~kae~Q(B{jr6|rP}^zpg6pM@+JuFy>}05>RR_k_gY%1wUV~1N(Cfs zZDp-x1vMfBaw(fu>O#nBZOak`v{r(k1PzdTQbnaK1+-MTg+xU~iV$r?2qdHkf|QU6 zawm`wE(sxo2_$4DCt2zsA#9PSvr{fGGz@mF7*0atY;uuvmf#<OAopv^(H4T|Ly}8kBP6 zeCP#OZA~ICkL~AOY|kmLB5Z)}WUH9T9|WbW_?y{x2~)3)9gw; z)ek>ue$JT9hq4hJW!rr-lD-MHwmv@UT(*@zEBx@1Cqn|y$3&m8{q=O}2_?<0rj38? z*L1puzqEKl*W)M!nrt5^Z-n$%)EZZ0z0WupOCTwWUq8Sl%Ms1PimVi{?-~6Azata& z>yevs3zbx~;0VTlNMzBNEUgM_$3Z_a%J?zQZ)!tZFUa2p{mI=`C`=2Tzlq?x-tmCAR@r)=b~$@S^gd^AI(xVC5vk5JmZq!M%DSOjZhv*Lm!6;XxbJcHVtN3x`|rf6 zK&zQ3o!%3Wz`5`KrQh>4G_MML$q@#ddHiu7FdLh*TtD7lu>lD2So@qSj zUHBJ**dHcX7X(AV|G7)9TAP;4pCM=CT&;=SXeRjA=;ZV$m`p5C_WJQjv)|x$wRR3h z_#pFrhJ0}&pC~IJLZRO!g0{rjdN!$EJ27aJEoy)ord$1*;MxUX%FcyrC zD~K5@9#kr;KE%TdBTrn)fG*hfQSH4;(j$X<+4{yaXB)N&8c+g>Bqoym*IYk;=D>qq z*sGr$wUHyL87%h5oSaIJiq9a%!*JFO`%N#x5zB)^6_azqz7j9z**F2pZ>|kCx&AdE z{~D10=TAtmFZL}?!xxOslqP7_T%0!By~4ttJZ$KL_vyO#oPU@`D;`787FI~ST*hp#QbfQ2!@NH38S>*p#I}wO7$(yG%_*Z%25Lej$z8CsBhsnq zHIxY=4`6@X?Xw^NPRZ0rmO={vrYxp?m=FeF;36D#cOO8lvG>ZWD*+ z$3uzy4iSJ&PB>@~ug4sx2qrtdEP_ImE9DKX(_u$uuo7S~E3ABM+NuyHPOjh_bh};e zdbseV4dW8*hrI=`?vWMo1RQCDw==RajPu0@2YOGz?1&OrGKo=LGc-OqGd~>I!>FNB z9>IBx=FxEZxKzJOA%fOQmqCPVL(3~hLex8ger0aKnjiw1xlrIN9TX)se`J4~m0xas za2WJjI>T&E@aSTJYd_Qg=L+#zD z1ec_Wgn%NpxqEZsDAVjvQqPFJqw_~~jtlvIMkp(FfEVaN0Q^`D(Kdn$<$~ceSf3AP zxtnD^F_U}Q^cC8#9`+0P|3Qj=84I8bxNa5RZ)Qa|c>{=%v+jlh(>tgcR2( zbZ7(*JR1~a51hualqXI5GFC9b8P66iAb!;JeVuPX3g~BZ-QmnuaBh%?IMQRSYsD=Ou)u1cPAn(BWN(k_U4Y&JXSMlO&^L z(2vV{2pP1D_AYy?BDsl74?xsOTs0ne($#?@gR&-KN4^K(b0*FBTwCgJDH?Ecl)jF~ zGRbx)b(|T1MMr9yP&LpuT}L^4_9>%i(YQ`X%{pXK8rhrMF5A1!4@J?Jal`>S*!Z;t zRxu42)O{YrPw_B&jJa{@StPLg$*R&=ZyjopRl(|#r)4&Xm6wopC|+ZiJ8ZZ*UOrY9 z%pi%?t9uc`;$SVze}_cN%(-KU!wliZ)jf1cS1THZM4NzW?QsOEQ(1btes!uYXDHEoesyn8X%3mKb+Y(}fp*`-8)q`hz;e&@UmN^jz# zI<4mqvDl2E6ih3#~nY*1z)S`aTnkNW99;c1HNj4!-xgY%}X-0iVde+xr6wit~%Tae0?y)n-}R z^Ha;9mw&x=W)GIQk#19Xv)j~tk4TR}Ou`qmm8Vm!U}P3a$`VVceia<5t!9^zdK8Au zYv*9o=dvXJq`}~2cotq#54^R5dBZoxRJ|isd+P(tcT z27%d)7J~g5u*Z8h(W!;kqbjFtLHr%>!wI8Z#GfqACC<{E4S!PgNOXt(BkxBlZ~)ja zbMk#0o-@x!I}VH`?yop;>Ck`Tpl%pEsHQJ-FYbYb4m_=Zzg6UIR>a-zr2_w8n!*HB zjHmsIPJ59bv}X}!r{c+7+v~f2h_+Q=I9j6R&paYuDQ=Ic0&|Jc$wR;qwvaySYQ^_& z5M+X9Rx%#Aad!H^@4?s`baQjx420Kr`JyN*%Skx&p{`*H$A>gA46|J;r&-@dIlqCR z;bqHBV{rQvk#E^cVjh}ZW)E0)JL#WS8Ant$LQ1AXdYbeuNAbJ(J-qOY0q4$beigJG zX@p%cJAM~77|!5Sz|#KI-g^d|-c!iU6KeJJ0#ZJcTW=I{UX(jh^J2?FMR}7R`VaFG zKi$AT0dO7-rf6S;3MA&Ueb0iPBnsFz(`ym!ISRg`!r^%MS=pQsKmK!H-JsixPa&-{1~|qi0w|6kNJ}1XH2~~^l3g65q@wD>fdJ)4i*Jt!gacR5 zr63mjj`9VY4sooQ`7(dbATl0Xj19P>1?w> z?`4_V!w*iG^q;2RrQ{D7tZzZQJWt448ks6Mr2o^6!UjjF9AhRO2xYZV2-DFf0W+x65NIsJK&qqS#D zM>qLSoKJpn-ZeD+&^5Hi8B&DkLfb}%wc(v5_GeD!R{{q<&eJ&6>}Gp$Kb$bic(mau zB8U|1nUj|?n!M0^zQFbYPkY^C4$9{Yk_J*Z;K2ZwnB(Ps31A<_c&9o$I#PVy4tL_1 z0xO$18qeTW_%42`w|1W9TE7`m&Xoc7rLR=AQ14_A6=EHPtv-Ep`4GV|sCJSov$dP!a)|8_=>(=%b= zF*R`O_t~0lxK(`WA7|h?5b#@rztxeNZNz!k`W4yIW|DOBmMzs3_Z(M+O{b!H3DZA$ z{200@`t|Pp{votlJF!u!vmaz!50VHo^@NOto%|?4%{l%k*jl_icPllmYT9@b3Eu1S zGSu>GTMzr6{zkmgqO-O?L(kx8o4+kL%Fn@IF`4g*fpC3C+dFh(`7^gV7{E~Y30PxD z#PVm{fbYpKvXmULWlk7d_mZ@3eawNbRo!b!o6VsKA>7Zv?T&0+ap3Z0hxN~3#o58{ z+n_HK@ELDG_C*g>zk%Ih2xeG?u&CtG@}C8IjG;iv@~xDX32e1~HXIUpDnRuBN!WyC zSUt*5R9313$RtL>mZ*PDOX5c#VSwAv864FibPk_r`(mrZx<86rl>17-d6sQuMZ*E zs5VSxzj8R{K}9?&-~Av8+_l~IU`ms)0@++!?Xk(78UF7a#7rE$fw5_<|w!fA+-URb4_hf(Q;h7 zI=$`fJ~Qff$=?a&hTogAZ~UB7hpF|R^n}|a)x*@h#)igIvk!#QnL8XjVk^np)q8*0L zco+cX!B5Da$vn*uH;v4g>_j*zwtk+8m0GkYfrMVLf*8gE`VVz z6VhNc&VTdfFkQwiq$ctc!lI@d4_;#`o_U{+x^G#Qb*07q3xtWQ9r0% zk7tOh@XMR43P-Ak>y!>{)1;jCl^^Cv={b;w^ZBTQoflDs+5(8QQO)W`ufr zw*G7HUnB9~@+nBcDOtRXKPa{APjSY% zx~iaoaz_vB!*CssQ9j4Bx{h5gli){{02FAvU6&xq)s_xnpRDj_R-RT%Lv&z1!cwLy zaL%r+NRT8YFTEmk!bwe_pQw^d5-W`rZG9+V#??XT8KHHo0uaM`kMxj59lclQXN!-M zrd$BDpg<8)!Rk^-Uz9J;I=xk}_;9xBqO=dBr`VazHPXfEstnjsTq-I`04i!x9FK-a z;9!^1czWz3MpH*~CrR?#K`lc_bZUN&@}^XRF-FZ`12;+QEbh+5s!Cyd?8wo?N&jU> zveF(~=wTSe!>zy--~t8diY)d~5K#70@B8lTxkVbQJze7|Aayz27Z zwj%|ltO-Om>5h&cyq))eQ|G$waAcV8PSioxbbk@-Vys@~2|mxmg&ldr^=V$=A>#7{ z^@BQ^bFW`#Z$1lg-$&G6FAl z3)G|{7!SvjT_-tKCE}E?+etJLEI(YWKCfVucb)_eIu@7`*hKtmUhoh$v3ejeFZQs! z7x`&=?o^d4PkV6@ipRN69J7eHVbP4(f{`nyqX=^0&>vl$*C6&ZG97HN7U>- z^6c>EhZVsgFVCYm1r0r1dS>6i-n?kN*TKtLnd(mJo(kTU+S=Um-j|h(L6zQJmBfhC zrzd9~*X*jL%I*IfHlwlgG2Q|EdodF=+ckQz`C?s21r~PHq-UI0+nwwAOl;a;bIs!u z#k4)_jCb)!c8l(sH`q5dx$IdN4XgY2#`{-)?jG=Cd3JqoxaC$ z{&6d86drPeJ{*YT#|8LYkwDj-z=-B5M@tX-V8uf-=kR5IpKC;HYPbRU`g^_~AGz_& zL$a-fGp#ei!omjsJW88K7({Ob5^XWVvP&7*#IE$WMd(e38Atw*5pD8W1Md*z9jfp$0H z?V1>L{bmA8HQcrY<9L_8NxIkE(N*LL2YZ6SHaHYhf#`d5>l;Y!=oK0qp9wb9UWQwO zwdMb-2Y@oz>iVMzMi4mebY9-X5#Ww%7rN{I7Uh^6mRs($3)tl$godVtuN*b-vZtSz zAFya2+oYsTUjW`Jy<22HL8o2|zu`UCFJ_s{YHu1>l9C#${dIi^G2OSe)v!PBQ&HjYxl|CKS)O?Dwd_dyvhLSf+bR^Mk6eO99jD>(CUbOk4T2zLYqS zEM@IX(E!w{>lnK!La~YSSZR!ow!c=Oa0r1PdTkx7%`Pe&Isv6&Jk@!+2~8L40~Yf= zofYr6E)c9RXJ8jO`-64ods_4hhNTLct>bv33I89X`!I}JjY z(>bZ_`muvf*y}tx8v2eI7JNrz$M}jxI`ku~(F_cN+%I7vu<0NH(q@X4*lAd8($yu& zItDlz!M^{(CSfN;WCVXOG(DtAem4+GkB@JlU&UR++nIoY^;54kxm9tQ815qtF1j0V zCt(&+xjreSGm}pUqRoe@b1M9p_4ekluk~XAwmhj!8f<$PF!{;9kg^IIxsWwTVzg#a zZBgV+v9pk^9p8V}_Z>W`Jj8XdC}>&wWF;%j>3lcM(8-v(0bUEt;#m!v$>Za-S`cvY7FBP1n}M%ZtYE%Tg%o+ths}Sg zDp)uKJ00fH-)^(Q!8zevtuAOPBhozRj6Y*hHZK@9@H3h?kk9S{I~-={rS{7H?SpH0LP!`GFPp4WqBiwZP30}sC9o`)dXL`N(SCTbx7eH zRTygv@k#SXWcI}5$$$jvhW2be>vmlXXs!%9n9^Au_$y*C!%!E}!xT(YTxr%qYcCwJ z=Whq~4Khsg@YXYys7M^v7HxUIMHn7dx#em zcuaIE40P;_z45pCXG&U5|4ql%UDbo_75$yX zgN{mQxQ{xEWNETXi5|wkPu3>o=yt~9zf%;j1T`K_7HYQSHnHRu_2k6BR3)= zeYfzOS|cTUbUP*db(`-+ePg)d?8%N>Ej4dqFK2!Vr3|iDh+qlI4WE!XuO4AiOu96) z>|t5tf3rePyjlKfNA(AyTQ1k2@BMTp;?_rd8JUR`-{LpJr`CKNm*_eC^WBGrf|^>{ zwjIKxqAc@sO!M5AKo#pn?Tz6(CpK*)cl#Fm6_w4>Y6%SkyGtL-ZXa_W*=k%XJct#T z_YcM<7Th?rM;6BTmUlGsCv87Y7u$L2#qP_O&`J3+4_WlGc*HL*r8p`!v1g~7;TrAy za3wFsb|+4=-R6;*=PX}#o0$zkgqekPIyW0;cD?$rN*j^Ai7o$dH@T?P*+@%V zP@iEl?lnmg>Wc{+$}gDbw5h&?GJvsH1@t=1gtG4UXZ)Zxo-~;%(`5w-j8VrEUUG(DzPvO}pjB`0qQv@}>6e(^oMCa)eF1dqXC*jmE-p zlREsOHH*(*7nr)&dcWO?Gdk?7QMRA=o#)(V z;F#4zrClap1ZYW>EVh39lU}^kv<+9n_T_t=PF8NMbzqMBo=QjrS2Q0G7Pz^+SK=4O z(BcSb{-4?r0h4>mJugJc=i*e{sT{Vd@3*ryr|_1reEe~*$wTHWkJ^5$4b68t5ZcE|KA3jjyLb`8TTH-S46n--)1A=v^c7Vnw zxr^D(J{B&--o37xsAQ6NXJz}cXFnlF!_kT+H!t4K_sz9|iRuq0vZ4Hal5w|eW0cU- zE-N?~$tGj;#^SsD@k2BGc>&9IwY)jy#nTgs->###kwsdrus0le;D8WCW7XCKI*in> zc&}~LKHZN5nZwVv|1RIE;|5957)z3#)*SoXeRk46_UVK|4x*`1i8AtN7~h@9(~!CoVbn%)Z9 zfiIWAoe>J=S{siC=_t4}y^%v(14oX2198k(2TumgKiW=DIDZRn}TmyGzI3{yq>`|#HbhX=a*St>ed}PBj zp6efbLql(4_k@APW0^?Y5l!>jrWy6-uC0iYtft?Fz-%Yx54$mT(+U3=Lg0_&Zy?v) z_Rz)op{SLz)oz;RuDNxEseT&* z&P5|oz>VScJ|~xGef-66l*|@et#2H2WP65NdV)m13dCcxdXu7nBZ_>V3q%30`Q+n!#2Q0{`%_^IFuo_Y z7d2?!>ZTs9BBps&>xxrs*RmGo`cc8T114Fm<9QhMUzhpUp#4uz+OBdpzZq%!O;Cyo zE8UF7b#2IwUs8E2@|@1jcuWL+>RoYP4v0hGau?4AEH{qZDL%ls8wuous3hXS3lbd5 zHDF=d7juyum)4gq*N2QA{-p~e0_wJ*?7GIn&BqAzed)TuI^f|voD^s?r!?DXy$Q1a zO)PN!E}BJuw2auy0fw(JaOGNFl!z6~kMH&p_jXPbJ|Nsg_v_uh+ZX29?BLCn^b zf!1DN7$e_Z5s2~RmagONIx>G`h5Cz#76^=#t|LtHq&AfeVyc$4voMuc$#(L<8im|0 z32#!tA64P%PXT!D6OKUH6j?$vL>VW)qYs08hx4C5#%DvSsygt6#sGoFM*S1vO24su z6s~6@a$Iw8NrzC%v4{Ssdb>{bq0I(aNDUWd}-Mv{CMvT`UPnC=72#I%-M?VELP zV#D2@u33D}eds1yHjQVQXGiIln+};UqJH6*c{LGn_KoOn?AbSbi6R0b@7m^~&FCRX z-y*?;Hl3ddgMRQUdd0)CxtC8}V7YX)m$c9PjBA&99J5*?ELHGcAUKd~^l;`|-*Rp; z;8{KofAaLvD`Y+PkwC%$B**;1RMpDkn)T!_KnG)NKX@8UNbL~$jl=T>Yz$q$BJ79$ zXuN=~gp5!_fl|SCo{cmc+a<5gLx54DZd8Mt%%28`*Vf`==4<8R8H$VHG8^moQYOMg zX=wznF)1I&_UGm=wq;2naM(LkS9XFw@A!z~lI}R)c%$s9cQ1ebPjDKKI0 z(rEcXY^^kuHAp9Eo^3TsI4*^)9azg{Cz>pxtOUmczbz%yZ{?!O;vU3V{BGBu9|%e5 zvgcuTb+&fAc(ievd+c@3eB2secCihK+KFJlr6F$%NvvEX2RJ}({-yvX+VcSZcYL4M z^DS~~(!w-);UTGh;dygT;pS^-rRj?0={ZD+&EMtkDjP)Z?F@I6l^2d=NQ0CC_%Ag< zTM~S`^8F<;k0zfAl$5Qtr`bdgfc1UcM4XVF87%9G9`bptUU3`@l46S?RAByy-E_a8 zE@Du9;LZG;$bcd$F;M6)GV?FPzGUlq}o!*E-?suquwGk?i z`Mr+dA3d+EWV5CZ$q*a(Q(S_t36pVN_%XzOgWZ&Nk5PbJIg01kYDCB=SHhRn_A)pY zja}=g;PD1oc!5aX;x}61Hc>j_rKw|MDxiFMyb9~uf^}oFuKrf!-IVqmH zXX3<#a6!rncmJ03eEX%D-4qk;;1;%iuGwy$9^ws{AL!F6c-S9|O^vRv#*}dp_~j7_ zAa(6F#EIs|GPlh42_u%qT(CrNsY2Hd(`DBF)@@h@0 z_k3~fOi1Cq!(J(Wkg?#}HG`DlHBtTEB1yaRma!$8FSS$@^)*~jJ$@!uBCf5wv zmFjx<9?x+^_u&kGR{UZONoaD+b@Y6v{(v${RqqMH%8%wLQSy{eJU;05E;d+CO*F%+ zhYc!0`tZYuKa>9%3n16V60Ahi^71@N^r#;x(K65bX1u|I zUhw5X02;RsaJ?xiwB}R8rIPjjLBSFMTjhL@aVeXzn8h(B`W|?!tVIu8EO5;{%PykJ z9y|&%-UJA_$fEeC@fF79s=zwqqWh%+*OGdQxllJycRU2Y&A~e@qvcYIZC~ZBYwZoe zM`|=TH}J()YEK0IJzUZ@ZaP&uiAs^!I!N)l2n9V^vzWHCB4T3$p9v7R3ZAov4{tTb z^c#)0RUuFT=p25&{b!XD83-Sn=Q|#HCU-lg7_On`+s{geUY1ni&8_kG!{D-x<8Xb) zH>6xy!dGw+55}!^V}vFsKUe%dbXgL(oAZ^yahx!B(JLKqRpR$9{e3jRJn-E9RV|c{ zee_@3aGj0l+qic(Nrqm}L{px&U`7W{>;v0`eq73oHh&W<#XgtjbvS%W{8L|+e;_Yn zQ5?IW{d*4No9&0nCO2mX5_>`(klib+I%z0>^GchnbaI6DxH5G7z-NNMzG78yuPxu- z-nys4%~zwc2a+@@ANx+}NVxw#=ll5PyUDHFx$^2r-p71U}|yvEhl*F_TQE#dSVM7t#w$7XB~E|s>|juj$U;*S(#x^q#QE@IGw{Pykl%e zC6Zf})NGp#MoyNr?mMBo;5!nB)0z?Fl%YA0==hV>&*q|NjrGBqh+jspzx=RDOC4pC zT!zsdvJs^mi}H8mgq6G=1;|gJOafdZg&&%@`q4!4L$3l}l(nX~Gw%2m6~i@>k7|~A zV7A)ZT0;15;xA{Ud8zLJG)>w-Uuoh3W-B6-sb$(0a6JSicR3XXF}&pGdx2fcx>vd= zt~j|htjT3)K`lBbr$v&nh<2{m9pn}N=FNSk`+f$58n3<>2SRHSww+A;q*0bCOhTuHlRdaJ-a8dQ}ekunl<%xys^ya&37c3WQ= zbf&~JdZNmR(9_Dqje~*7P=TM>E`+l(vBlnh(~QzRh)V>3_%|(=Jd(vGH}a_J4_=<9 zljO*@?b-i0l<6WOXv<12{z{CyLz9VJe7b+m3HUC}O3<8l1U@TW2KvOsf|u}EKZESt z8ILxVDwbO}_`QVSsvwR1nE32WP@O)Y;yceeQd(~d2=C#s4)Kr_PcRY7eZ795E$3ks@r z@jC1ZM$6VCUoHR=4q%;(bH=A3Q2%J^)mFZ%)L73Z@Rg8yi)bG(hs^!Rfpl!k4r;fV5vB1nO>f*FpPRWm?<+jY zv=n|^i9Y^fl-?uRkWMXCfaM}t*yBF)9k-{?V4e@zKAOT#<{$GHU9*?vJDy(Nb`5t7 zY3a&ZvoF#;NKzW$vxmDTc0-Vaa&EA-+4F)i+9TT76J?R>H7$%z=HE+GC+4jJs4KL= za0cQ$c?) zj8Q-(!ZTbv;F@smV(5hPM^H<`b5stWGj&Z>3LB(f_tMA(*?BO)kBd-^DFpl`EysoH zngD9B6?Iz1b^=?WXrcb>aN1UE0;oeilXa>#WhE@}sMuaOns$D@{46j2ecuZ-DvFUk z5Qsp^)kmnNg9^7T;`LoR9~|o{j(C^Q9XZAf=H05Tp;cC(vGU(7))BO6%@nWT=C#^& z9wx%F_%p#w5V`8P7afzzze(P6?F>a+zx=yc`LhK)bpeCsHQNh6F63H&tk9CH z`RTH9{mkYj%N?`rJA^=MQLW6VU(tOUp2nV)_ZqD;y@c^eEv_IT!LOQu^Gi;g?`;{= zLIEEH?=#Kpjtt0fPO`4L238g?=QS-C_}dTPJi$Yamb-5&f(4^Hd5#L#+oTuwvIkZy zEfjvdCP(%b^&MbJJh5xJ`FNWZTQl0_szqf zU)>Uo-IFFhm{MF9k&L<0)hRoN^qR%GPUWy@0j8mH%JS;16uNHL;+zX(6@|3-g=>A= zP-p@509=%>APQ@p>+q?e?T8WW!os3)UzLF{dwP3Hr?peLOm<{4!fS~xpg`K<(+Oy+u zz2m^bn93+=md-m9_)A~*0(m@+MqVycZFjuMad`-E`SJ28-rYhjYAhcY7#59`jiLh^ zj;0*6$)?u3B(aPq?Vpb(loLKFbbT?o|1_X#?uz&`6LAQ znPqeNqj;jD{3`NSl_AQy+x{jnk2QT*VrSuE)78Bx)fqv)g~jN=?}>wB+RaZR>$l+x zh_LkUtdSYNvcQcfcsQR9d$GGO<`bcVbu}r$VfG&=2SO~p)`c+py^_uBN<%SwFzI7k z35XlrCuTWYb?6KeF54I;J`xJR=vCWE-~3M!-Nj*vHDyGcwY;%wvU!fUvSwjju_!Yy zf?ij|LpYmUgVm1?U#(2h787irQcByih5?h?_{QC2gHOIGbr%+CcUYyVxnt)K#DxOP zk$?sT##hF^hyORy)#4N_^$z8-&N>d0OEOaCHhnugLeuoJd&V@2N6je5@2FX_BcbhE zC5I0HZXAwNaQJxLy9Wp5D8Bjf{N8*wAzz31#rs>$2-;US_6;3pu^BmIUX8C5H)Qgx zj}y}CXqY0$0nWcE-$f0|7e50x^%|R1e3yP;Xvg!uTBEGOar^)Bo}BiCy0+A?d#kr? z@Ekksi%7)xBEJiIE~_PDUNk;4F&7}Mt06FR!|n_N#&}XXlWL^yv=ux5?d4caUQ_P4 zr_GY$|62?V?AC>6A%SsVWgse$7z?0IXvpI)5G9d(GDetB4#wee?!oiLAX<4du&gdm zWYgU>(-uB9qCGEooI>h%^Y_f0cjx)}nrpLdJ!j*|yITOv%FGuY1rdp+<{Scu%#EMH zujI~lS+TYkX`72s<$0gdYaW%+;VAX;7??c4{}b?Cp{=7r8_9o&JR-i|a?$O@WWuFe z&4t9D-B4TEVa{j8+L^9WjftA4BIAha<+qn)>NEam7-(NHjj#1cD^he~sSz3R#l7Jh z>a+{zgKBIGy(t8G+WCQKBca~>UB2h@Lk{PIKu_dkt{%q}|AKW{qmM?+eK16M=5rPl zL4VH{8BXTXk}A;RaUSQ%E<>OP=gH8AMIvKgjv^W`EiboaAYUP#(}e~F(4>Bvef;AA zkQ(LIOG%Ai!g7=d#%pvydDpg3oHfIW(7i%&HF8wfM|0d&DDqfDi_Za-h}Ho)yKKh@ zVc>9MIub{I!@+hAcZY%UM*0bfc4W<#_@gWGuE-|ne{KzeedbxpGRpF=bfDHPMEr}X zthA5`y2MEHA51(+G7_HWl?2YqK2e*d!b5|@!Zbg-LY_8)^&fPW%|_#3yF=EYSp1B@DMxB8WP;HY@Y zHDv=B)2s&b{175|abc$$A~8(E`;hN+ZcI&g=X||z?sCjk7|8iW#%+lTQ1hh>BK`4H zbDG5_Ed?uh1xn&Io2a`xYYkma{??pYk>oc={=(*n=vCr^$a|*t)gMhXxFOxictzjk z`2>%T#uJQ}0!Tk%)6n;CRj4F=CQ^tA>~69IN^Jud7@>UP>+Q7Ur}5n5{-QT`SR(lO z0nf>wyU~2a1Cj%GP*Y?SJHM9hAx*3Bc6H&a3{5S7n-J3(|b5e6F%g!^8Eq7 z!+$oKSdbsM_zQ4EtMSX0YK6sGcXR4J?CozZT?!$;JZ2-J8eOA>pQv(mzFRcp_UYL%Qd)1;ox>O6M&p$JC;+$2hFeU4i7IAk&Oi{Du=Mx z;p}AXH;om|_Z-7fUe6WDyZG|Y;Ji|YzbRzyt-$(f=J{g}QOWZjp{AxES|BE<8vX)o z3q6tlE^1F-acB@8Z6Cvz4ujJFvd)02G#uE=56vvxyvvX`e1ZBn&v|EmzV;}Tu!yO< z2i)4b@A5sHWy$_7YwL)BUfi;A8`G)7_{^^Ffv#w$e3GfA$}rnluzEKNiP(yPe(0@J z0-y0Ee*-s*v~pDYni^milyF`6Bd5P~pwtlg3$Ffy+fLUje*rvS%ah#mA?dp!k$FIN z%N64l*@~!PUxCvk=w3MIreqeCZwOGA*bm6Jvx_A*SN`!_RyTtuw#BtjR5bZ#W5=R_ zFN~*>7Wa2a-$;o|*@jFRuh43BVit9i`2M2MH~Kia;gZTxHf*bd0-#$hln;b8YKl~!LzJ&#vm(Tnrme*p8>O~5 z0)}jM8XTRhnT0JK4^k{+Abp}(2$A4`XyMu5XNhqwAbZdQ;I0x{&i>~v1-XwNh3`bq zUTQT&SMa|pWX|5@Cm{!`k88AOe}Q0OCNoOPYHy37{7tF;-|rz>O!2bD>47nGuV=3G zbv{N{>*?TXM>A5WPe3l8Xe|64@f;4pN#wLz6KGZ@?k0D`3$4|QwQh7?eWDsFYO2*_ zq{f|PI~OoobkXNox&p|m^IJI1ZqNo|<#lkJk2dg+2`X@Eqbn1q4Ltj`e!(`&v|Uu- zX1Y?Mf!o8z;nC)~kD6}_Lx!%=RaB`V`)m8a?JjU~M(3;qH=A=twoHGA~7gg^lx z9z6ovDIfB)DPRWB!|mpO?`opgc?i(v1zyj(F+YMTmTLOK!{mjME_bg(zpVH^hK~2b zC(HyUGWCa~TK?&W+cU$r9GG+RZRvZ@#!D)cp98m#@~LyMhixlkasGvVELyA?YGLfV zOnT!VSB83uL1An*az*o^E`e@9EtVWd@Uu3l-aV4o*Zc{CKVObg5o_J?rmnjrscD2b z5!mjFbKB7rRxi7sm1D+@MG%{S(skpqkqJfjx4j{sxmCMNd7F_-9g;TJ4PohZhU%T-xh5{I!0uw<^P?@bm<*-kxn#sL&NC_p$Ns()hTt&@AfLltW zT8`651m6uc<8+d6BWzK)2vSZx%;dUI#Bak7Ei32TKtjX~wGo%*>1t%TF}Tg*j8#Woti+ za(}vuz7JLp;Y4VdGYI%_HF!nLxXnkZoZi!cgjHE8+pSS!O5P3PC+dw1Yv*_V;=vMj>}Pxlhd z3D_e%etTns)+di4FZPB>Z44);DIv3j6+#$mX2S0fAp|bV)9_5vDA~OotCi)-Ryl3+ z{LpK*aX7UVR!dx2_Tfn;3WjXZvQtdf60;KY>Q{O|C-Ak|iKRS+CQoU_XNhnQjHMA9 z<;lmJPR64t_QKR++y5whzl`({j7gI#mmSr!LwG|Bfj-3f^SkU&SY+HeSeTqG16M zr%#1fcQI~j4t-IOHQ!v(uHqDL@RO`1K9csbuwc6SHA@2 z`_j!*xX^M>Ec!D*SytM4C4OhKwPIut={@fDP;bdtbL5@OKF^${>rLsh#r65zVyt13 zIdL|R)}hPNozcY5G+QjKSpg?)f%sZ&hlhE8^wpMf(zl8JG%8Mzl0rh49F35lj7!cu zGkKWEK8p`U6CWoeCvt~<2h#k%AJ8(dPqw2$3>AlIWLG?s2KI$1-Oxe>4XZK=uW99D zne%LmvXq?I=sGpg`Z&~VOr;E<^Q$uC#cJ1Aj%YoqY;v;Lh8$U_ayAOjSC34bVqRor3_j>*bHw=B{r1M#}j)$HVE*s%z9NyHCPUF-NNn zz%%CC8$kk~a7Lfv;&l!90MSiYWp7d6P#kMfsHcJltRB06y?fGLT) z%2EHBP3!Fa^cL~T)yw;lsFl99G>GI%8)m#%2sJWmN~{Cs_s5#*u@5C#rujN$?x zo^jxp-*rXdUKuqf`-@E-hr^M3>KymgPdv$Q#3wHebh~vut9Ub&F-A3?+8BRRWQf>U zCn?HW_@bch5-!Ofmz$>0w+V?U3%~C=jZdyOJoC9wSRxKIg^?FeUQomb@vw)pJd;vw zpSPS2(7+6;sp?yZlFNjxqvnRixnVEy$7DsmS1MzdoBHlH(nePI5vG^=$zU!K7#M%0 zM8WP$Q(Q*B8W2cJnaR>j^uAgrNyRXptPAKKHJ4vf#LL2{l`p&O$=_FR$e0`!22#&y zo*)B9&EL2`jf_%yt=tq@_B=f;@CJC*%^Uu8YyYdxTG!p6TeK-Y4=GKn_~r6&b*2j4 zaCBv@wujtB&g!A2BIG|KBnvYIlUdm!(-mwx0;!qrojhP4<@_J*eS26_*S2q4x}{cy zTDof~0(M(rTdPsS!$2Oj?Uq`F)Y@H2Rj4nbA_NT(@>a1@D}ojk!y{>nlCo7&jmk5L zh(eJhOAQi%JP400!Xs}ILXx%4!tQ&|{pZ|!&bi+{_ndRhUzuyJImTRL&2O&p_>D1D zyHD^$zine$|@jA?9V?6oiOxOV4sq1Ca)`&g|ffQh)kka76#6ogy*W_ zyjD}NeMzN}nS&_9_ad8ZiUB2>O%mwzhufR^q;)#0H-HKdLZ12vx|Qm=LsU~YwW0F5 zN9QxUQ2Y~V)_8ucIUBQo78O4moch1N0xN)U0`-jNwHy@f81M^;WV6U~15n?wKeWfW z+`P+V6cAUqNt!Ve%j^IqTwY%YU_vW5O}7lsCdjO-3@mXcKLzWhQ|vHT=cDotdv?I$ zsI+&Op0Ccl$@Rns|gQc-gwjZz<&SF}>y|kf10uyC9q0q3B zJ>3KZ%YL!Wi(Oyk&BJe>cE4s*Uki-XBSxx_dtU^M$GytTKhdqj5x!PbdJiWZvkwIZ zhEfg~j6wK9AA)girL}&nGPWl2KACjE)tHveaSH4Eh!?rvEh}J2#A_obDtNRik_7px zxFDSFihJ|BHNaT{480$EpH`LAOTPQIJr7aSAn}N&RnzNnse?Ed*vtmDWHX}j=~9ZR z2Hd0zpa>f_X^He%sNF;-^<>p`!N4RM#J3>2T&k$_o>nUI*OejhO4l9&2cXItmxH-8 z>gfPX$)9qeega2qLc9(LY>#n+FI9Pd06yQ}#!FO8Q{cgTl%rIbL!P41|jOQKCMe+|?4BC~kx<Jpg%V+R|H=1q z?qP~Y+>oaYs|}itEG*&B0}Q6z0RNJ9g9|&ga)u``7Prc#f8Tzj**t0W)Pae23uN~jm(v8ut$XvJma85TjH{YPf@)1Yd0mY|6 zR?~){I=@t4M|{bJxK9QsSB(DhWgS7h3{VzgHA?tvM3$OS^!8`H4)>0>d25GK`XU$e z&oXCjEGW5S|56!PKCWJ@AOejTMZaJ?#MN%+Dkg_oSWS{cWQ2_x|NQcEnf&h-1g}B= z?jW&&6gZ=|Vy`ih>j}}{fnT@|4o;_VL&#yHbW>j=u4)K@xVkz|vrc4yJ?qT&rV|ws zzf``y596IX+3y}+7=X8Ijg(Q@HJ%ykoEt5t&6#%=Wj*L!UiL?7gG_0j7Z8cIQJ;oQ zmSK(t-dcn1kQd_LTHua{Em}GJo!$3-r(ht3n=3~*5mDt1I|pCL$sXX^v*YpHYQ0yu z8c95w_MZ*7%WBt8cdu9E0xSRnD(!l`7!;lK7wZHb?{+L=RxdatY(M~5KAI_*nZMpl z9b*)i`K-V8P@=d<==*V}IE`p5;9lQkRdu2M;6#{%%{SQ_EtNay(nk*y%#EaG zP7G4^%#%ZfC;lMIYS<)6Gl>Ymqdm7>B@1w)KDYrGA8VjL~CLy_V9 zL@nv7GW+X}8n3?|JjH+FlM|l4&;=ctDf!teC~K#KDX-@)MWbwao%(_G3u*{|V6TVa zw*7UisKO@FEdX)9$OeiM)X!~LyV7z4pQMNuk9V70HXT6kopg~q7 zlTpL6#-Pi`{pn+Kb%(GNExw-XQC#ECIPO@gw!vBHrzztCJkFvCHmCDP<@(0aqh>{Z ztmk900`U;vNxDOgXFqG1I7r#t;bwg$<0WmnDLw%d)$pPfaxpCju9>BV1P9V$2XM4O zi9MtczkM|ewA|^JvB1$|Tlr!6L;Bre;vVMR_45`TMCJcTb9`-|>%VgQui}BDhDRCl z$i+9aTb;-J%M*mr{OpH!|Ij}#Y~S+%|1nbP=&OJe-5&Z@$ZvV7P6C^J0MQj0)Xi z#kYQ1#U9C5As63FJ;%v$leS-UUgACM8Yx(hiiV%=d~AE?x1u}MXK6$6x@s$Cn0vg@0z`Nin$7bEso=-apUIsd3*M-+kC!e z#A)j?Ly+9{!gUVxl)#zb6H+-kTl^FLSx9zg&0Xov29K{A1wP)Ap2>Un}VWu^B zf9rl?6c=4xKP_MI>oEDj1^mGy^X7i|)0}30AKK=9XIVJ!WBSYCZy;er-Oh&5N4bgN z;bZN*tZ|=n5rp_m*vpFtZqL-UT9cl>hor6E89y<4aa-3_hT*O; zEcz*SMrkJ*UICjqu!^q8IG(_7T4P60t*=UT#2H7#C08xJ1v_si>+ms`ANvVOGTl1I z>onYSN1R@NZw28Z>g{Id<#fC}f7}f1d|~lx(mE@VZ#Q0!aA9eKKpa7fMS=E% z+=cRu;o8g-;p*;ekMG3Lop@Z1?=N}wfg)#HWYflsP|8Czle?wuMFC#CZ|-#KagxA3 zu`-&OzGSA`c?349zh($H_E*d?{dSI+tUYAz5Fxn856pkoXq8$*R@Zozq;Chn5FW}* zqRabzq!p1Z6~a6fCBvGLG=p3aT~le8x0-pb)S={&5Ix3K) zgKffQ_W>%-EN;JrF-DVJ{A-n#XH>7<7h;UDWEXHdm1=)tqH7taGboQUv?jtfjQ$zb zZKu*GkI7mSKT~WnT+vLmxZYM7E~#2HoZE-*KBHRyrqpmr*P3zs=5d-ix=y}P zNJBzKBgdan&05KpZ8*0}mXQKZcuZ#gz%Am~%XV`m=NveNWWTh9FUZ{u2;#~Ec>VDi+RO|1=C(p` zjPeU|h%Th}hfD1~EGtH9xD;!ZB}%ORS$7BngojQt`F`P8N&eEwk@CedT4xZHZD~ES z=v{KyOnAg#t3Nu@-}s0AGOi~Gm0H~GzVTpDK;JjVDC_C#8-`_S3_ zpqTqQI}DT|$_sP)Plav4J^j_RZn?l2?Dzn%Y($-HDj=c#cTj3sb8yJJpI8tmo1aSW z+#yiu(OS8s*A85`QBsT~3$qZIbW@20HS3mScDUFr6-bPjx>w2pR`wz%Biw9(Xls-{ zNMlZu#B#(d1w-bihJ2(#J6ySP(nZu=@IjrV0$}6qQgtpp6e~=<-DMZWm0~ zIU%vB+Pn!#!_YGK62i8{e`$XOK zzt&)6mN9#qYre$ebTED*FTkDQ0>2gEX|It9yJt9ivfIOr?t0fQJ;xJki)Hw+f_Ib_ z&@wvXrU5b3K7*Hds7syQJMGMCJd1T*g z_9peuR@16AekFrqLscaH8H{LEOY;ieA#(99bDFt8e54-Zn@u!9QQv8;TK8mp1^Uc> zm7}%45_$$Fnm5;UZ`OBvbaQh}pw{3(!j-0#vuLO0GXqJLV^imYf4iA6Gmx3| z3}c}F_GRke7eb*dYhO&IqcS!!*A#A@yC~_*K)}$G#WQ*$+BNX_qqdawifUCfYv}Zl z1h^T4K`&j5J$5pCu|rvrp09=0|0#}NP_r=W%=9p`;S}fYtlAMYp|aI4u;?voM~`yP z7C4SE*Kvc<(!b;=rLT#2f%ObLN?X^7QO3~?n<@FN*=^jHCZjx;7LgGF{MMR3JAzH9 zB`?gp%k&l%=B6S`aDD!?e!UJnOPWK#ybUNLnQvnDB^_pPhp;W($DnMw-`hh+BWO9@`Ja)JqJYX_F7nxx+{;SKk)CF|f7pmRTJMXCH5ZQ7FItCS zZDcj17yyHmHe2Pg6yJ`XEQ|9l|9S5Tg7meCuK9scwbp%m-aH8p-`C};`H+_?eKi3hsg_bHSG9qPq&Lqi#Rx(BIjW8``azSn%tV?1ug zx+UON6m${+C%GcSuJ`EFFA#$8?=qJZU3V1zTJp^tdJ>AwT=;k%08$B4Z`6}SVO0$0 zklJD?m^Wzs;|V@zpw&|`U3r%4qZK=v`1Ds>?qvVA-W6x2tOeh9e3Kq3yCdstHC;9o znR#Tuc|R!NX$y|y0(KyQU8ebJVGH?%7nbohe!Tt*gMAQ~!w+AL2J1AD{uO0(7k_0X zZVz$p8O^VR*8(W2Ah73DK*=}xbI%0R|GABWdl}C2-^5M?%4Cg*v%J-S@OoC*;oTPx z$2Jg_EH>0dDy}UG4MQ^9#H6&jd2J8^uy4-eFFu%hK=E`IuuOb?3AMoEcXy|WK8R%L z=@H!6e=t!)l0!To@h%zrHhxa}#{u6%OLL{bTzx!PAIts`G%bs?VP6L3)Gy>MOrj6B zJFFvDWkHr77(J|MJ(5%SW1}gNjn~ETG-5ftDP*9~mKK*);x^2gXTPU6mjz$n#E(Tj)72pP18=q)mbr|eY zJ6@N&jz1ADbk_Gs47s`~0oaeCVQqn5IlW*OP1w8e5lht!tK!d9A!!o7u0i0|!sh15 zYo0n6qO7iV$vj3zLMVdWR%tZO9+rv$r&2F^Mts@2x7&~<(A3x64VJelCtzrQc}ImkKgQma5W4wC1efxu?&9*MLYiwe$qwJ0V{7Z1 z_K=SRR_W#vwsDT=qc`~L!uA<+tDx?Jz{A>WCW%|oHr~YG5?d)ruSjoYbBVd>*9yp$ zH`%Dtj>H18;p9dJQZNo|;I{yl7SayR<&F%1&soU6CDl?@X|p~!zh{cC2z}qdJ*E=X zwN=nZpVe_ZOsvVLa_Bv|-kMbY@6hV9=pc_xVV<$#ZMK>q$JKwXnxZaUuGR2)xuMcp75EJD z&sclE*`pNI7L!b>=HIaJI?~`R0gE2hZ*KBBrw({1sU6_U~0_koK}iD3i0LP!;t!eMI<>E9`V5Kr+3lo9MT{ws2;Uk z3LNasb#eXYdIiCY&)91h!5<}X3hfVgW`z!K|Jax^YKqRd%WH9qZv^^m_l9>nY&K$=u+8JI}rBt(Q&PE zCp;5pq}P8r2>~(m1Z7y;aWFKFpR?~`G$EHV@U~o3NU;xX3@xTa8J8i1{qv%Ja^*ag zN|Kti*Zzv+ho9Cyy4kT>Pb*YJhQ6IHCu$ZqY_L!0)!zKi3x^gb(of>xiKC&3qqtC~ zP*_?=&3Iyh4^~s7Cf97v*ZySRSa>4Ej#T)pdxT}IizV>7_3IK!Q+ELb#y1H;bYh`z zeEib5=IdJ?LjP!JBI7^lBk3|>bKZb!5clIx9iBn}`wHp99CgO{!=HDz2k-l!0)L1H8>%}@`veg+}$vb zf98?EQS)^>ZlIu_oxPTn?j75nV`-`({M0yn8ryXVmgbp0=)5+*;jYCaoqF>wll$hI z4d)tozpW_v>z6}0@E!dJW#`_@+iP=>Zp;6iHzQR40CVHa51Q!Wu{!!l3)SUNiaVczL( z`i8OdKth$hvDWUm`$Zn0%lIfSBQ5Wo=l*XKC21tCxV-H9<$-1B2OVmk%k4UNsR#YJ zkcl6w1QM$Ri)wB#pwy5X+dMa_)u;{W9B*6~QuF_d&9sKfEqH@T3P?#yZ}HC3N9?E=_?BzVXs;18A9eHG+f^GplzhcwuTC`AY4f8R8jW|en}ii*$NuJ zt)1XWRVOBTBolvjojThaE>)~$M5F$=HEb2>TuGzHY&Z9Qa*cE;)y?e2@GIhosLgv_ zUUAHxdgtDR#dNwi(FiF0Uc8m)5}+bh)8 zqDYy!H^%C=qH5OW)|R;{2^HIWQozT1ZX_AT2;ca*k9c1sD0H@j=_`Z}q-z1Q5OwnF zGpLukK25g`)2rlBDBrHCdWp@xS6iCA*>`jc$|XrklNuJAU))BTO70jJ8{j94>YlRG z_*@EIlR_zN+w58t>5_Obq`jwC2oVykNo;ybGLZmQR-V4%HF2~Rp(Cqk&VBX1N*waa z`zt5fHuEs)E{gM;2W@}dA)%~2pNNbgV+o}3D-$NZ>mWJri?31570wI2r`W!)p-DJn zsq+iP&4hQe`ZV3K*64932hcg@KM}3LC5)&t=)A{W^dUEulQ}qbqdrapf#B7=-9)7b zJ()Qu=ca!VBVR5}Rkk>8X!9XWT1CEi;#yKY?8aQtJXJa-HZv;nDK)|86DbdbswkBB zYAlcAQbnYq7*~{&9Jb;>tTPH1uhd3pEB9~MtE{w*N6R;%#!rJf->s9XF6~&3htC)F zoyH{siktN(V@c&(dZPqhdZPW`F)jGG5B79GCEhUrPKG^v`ciEHctdf3{03T+b`TDX zvLJr)k=-+_Tm{2%E<#@9tv!66fizq9{_Y2IH>Sl~-UdabhoLXu)usBbHs^ z>VXCqOtZ{s0kpim?583qN{FX07e0E>;%~m*A}C7<+P&)jsD3MrV2_N>cp&@fEy6ap z@`^pE&BOIvcbE{#I?X4ix0u}?E9z@P7TBR=K@y3Gqn4F$*2^a(oYejXGoSgMWXuCK zn!|Mq(}?%CYg}d)42`*dA&n<{Y9cK>DFb3pVVXem)W(@7Vhw2KkOw3jlLt&DB)EJO z9pTo|G*%Ymss~i?h4{VEI?)A;*#ul;KIzv=z7vi~V2%%ifJLXgYS27RIroI`bdM8= zuws-(0JG>C(%!6q^Tyf7C$#Fn>#XE_NtpEXx;uOeVg`=7Lt4%= z=1F(@v0=}m4dV0O5C3KdnD1OnW{PF`RT71%ZRpS1qR(A|JOx%lqgQSk{}z<0!#Ro0 zlgjgGNtpKoPzcvwguI~XKt(Qco`qex0vyVM>tXr{BuEXUu?cF#X&Yjb zaHRM}&{Yd5!RT`%^|G}(LMp$&yM1#mTl#=iV*+$SbFgmtt!fYC>pMldFWPz_`La26 zcH24Ed_!qFOmMmQsydV1HMKqeOB*GRkLW0X&j&(KDW_)G^-+%-oTsBc@VV_%xbgT~ zc{v=2IeA|+*lU%sR4$?%0BuId%d$aDkj$>*)bJa1o=@e?lsSAsN8`;@cj}s!Mb@dR zvPSm&DmslWtL4e2joeewOMO@17eg$cdHvYk(y5Zsk7k;+!+8WgokLT6o%%IfZ0i~c zZMM$H?oCnLsW$|kHS|y8Q7Z^;V^Lyp0wbKCMuH`{7Ax%tO8qDsnIxiWma8mxX+K{;{`sNjwq#_6>4e zb7Z6KhpD0qI?TcS;2Z6TnC!SPO7vNDQlTs<_kKzmU%1(aEV3#miyMu&XX{NTY zT|Vg$3EHMHzUba2uH{TuxJ`lgo84xcvA%=SE#3DkCTLrV?JXK$Str^wWpV6c6tB=c zMJ&Y;*-2XY{-gtn)l%S2*Yd0x_v-GVjcal$RtQ4M*f*4#koYOyYLivT=c&xbw7-rRn2o~sz`;0? zyMgK&`dq**O~zG_wHmnZV<@#xUZYHk6wbuzCXoFhsGdW-$Ef1fc3#<7VZMMUi4_eX z5M)gikPg@mJT^3sAWB_?$!-6*MP=lcx0K&>XEh>9*hvP2U1-jw*F*>-G9}wgZbs%H zkMIv9mGAP7@M@}(v}xBl6ph(+ElMY@5$ zZ#?G3lTHA^DP8rvO720MVOd4=mjo>rITfny!UGvaF~8)jb*m^`B|aG&-+NX5_!PAU zIUMTO%WLhG=(gQ^yxkKWx#U54QcQ-(F<52nR^krU%CMl!@>Vb*+H*)#kuNHh_q{L9 zC&f+W1a5l|4PemN4edlZd%G(_JF!O;vkCQ_-E(37dzT8IK-<=19t9`13X-Uasm?tb z^EkMtK92Fd5xi#h_TR}Ih_Q5J{U~{b75sQ+r$`ab9xCmGDywVOp__H22qEvHtcI)c zz}ZsQgxCOFjQ^w#jVrBKPShO?esigyGq;9x7(HSnQVzXQO@16{Ho-HS1UvdR@+Kc@ zmv6uuOToIz4)nGQ_&~JgY*G2(_(ZsraGaLP|rzh#eL*-Vhf=bE2? zp+-ddjgm0+TO`Y-K5x%Y?|KaGtcm|&%T{KUZ+A~lQtD|zI`Sy(6xHx7*WKDnMC~)H z_(kAxj&nZE^h=og5|P(@I1D(LGJ}=nB&uFl`A^0Si2|cI=k{s<=*|Pig(E> z9G%S`vrC5_NGVtF-T^|NEaf{oDancYockvz>ZRa z{Qj0AS}C4Jg?$iX4tA5W7d_lqO&>-snI6!vqP<4@YGr8WFUutgXiY|3q_BOfs5t^P z)RC7fVfqq825rF(l3m`!>4zztub>ve}}~C*K42*5#oRC5-eu-PJD+D!R63zKOIH zQ7QI)YdWp5tPW_bWs*nq=~%G9?3u~(t3N7jonxD~Y8>j>bJKQJK;f^cqHO5F2$?B= z>r=B0gj(L`(OQhCa}#^lNU5YE8K;yvWFsS+duuxXc3p8fC7G9MGmf7ne&2~#pG!=& zVf0VbIptgaSZVH4J+Z`0F`4+bP-cmGVHp&MCq3F$AXkj z2bY*avR^HM#(XoMit_vc?%)Wrz^xS}E9GB@KW{yk#D9%daJduSe61wQg>{>62weKq z8ROLnPLq(tcTQobk_GBHS$>?}InZ%bO`0$G2Vf@oLOCl1mK6<)6k0i|=7vn92p;2s zm<*=T(6ttbBmIIFHt}PNiBmZFotm)~=GuA+<|7oVBb`k01UI{JC{ySa!A+5`NaN)# zauq+>+Ski&&te0o7#(BFCl3;K$4bHb;@wl{@^165SLp16+Utl1q91rFH`5N8zrtOv znj}paTrCaMtGvewCpyp0NL9ywN!w! zwDV29Hv}o$ZoB(KiIDQ@%6_kaaeHEa&xK4VucH)>%IJ!Ljl7kN@>_eKllgxo8@_Dj z5{VJW8M!)HY$qdHQ$fOY-A~F;>`bVu9D|H~YJO-82=f&)p4a=&ya6^#sk!xK8oOLs`fMTURx3#c*;JTf<^WXSOQ?Em`gbf3E( z!#!dufLLdCe=>C_RUR8`m1mlNEjc{Lx^i=x- zwOQG40sTMU;QyJzEc<_%{=cc$i?D~6-Xm{^cCcnWGH~x5Rtf~W#Z6TD-yif}#mNF@ z4M1WI-@{-KdS`7||Ewj_nEpT&zd80#$R85L From ce918bf8d8d0a0027f83b46d34dd78d01f047329 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Sun, 3 May 2026 23:29:26 -0400 Subject: [PATCH 22/26] addressing review comments --- cmd/submit.go | 2 ++ internal/modify/apply.go | 37 +++++++++++++++++++++++-------------- internal/modify/state.go | 3 +++ 3 files changed, 28 insertions(+), 14 deletions(-) diff --git a/cmd/submit.go b/cmd/submit.go index 02c06df..d9cd401 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -136,6 +136,8 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { if errors.Is(err, errInterrupt) { return ErrSilent } + // DeleteStack or other failure — don't continue with stale state + return ErrSilent } } diff --git a/internal/modify/apply.go b/internal/modify/apply.go index 7e42e49..30c2c08 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -193,6 +193,11 @@ func ApplyPlan( originalRefs[newName] = sha delete(originalRefs, oldName) } + // Update originalParentTips key + if sha, ok := originalParentTips[oldName]; ok { + originalParentTips[newName] = sha + delete(originalParentTips, oldName) + } s.Branches[idx].Branch = newName } // Update the node's ref for later steps @@ -360,25 +365,29 @@ func ApplyPlan( needsReorder = true } - // Rebuild s.Branches in the desired order - if needsReorder || len(s.Branches) != len(desiredOrder) { - newBranches := make([]stack.BranchRef, 0, len(desiredOrder)) - - // Add merged branches first (they stay in place) - for _, b := range s.Branches { - if b.IsMerged() { - newBranches = append(newBranches, b) - } - } - - // Add active branches in desired order + // Rebuild s.Branches in the desired order, preserving merged branches + // at their original positions. + if needsReorder { + // Build a queue of active branches in the desired order + desiredIdx := 0 branchMap := make(map[string]stack.BranchRef) for _, b := range s.Branches { branchMap[b.Branch] = b } - for _, name := range desiredOrder { - if b, ok := branchMap[name]; ok { + + newBranches := make([]stack.BranchRef, 0, len(s.Branches)) + for _, b := range s.Branches { + if b.IsMerged() { + // Merged branches stay at their original position newBranches = append(newBranches, b) + } else { + // Substitute the next active branch from the desired order + if desiredIdx < len(desiredOrder) { + if sub, ok := branchMap[desiredOrder[desiredIdx]]; ok { + newBranches = append(newBranches, sub) + } + desiredIdx++ + } } } diff --git a/internal/modify/state.go b/internal/modify/state.go index 8477c39..c0aaa79 100644 --- a/internal/modify/state.go +++ b/internal/modify/state.go @@ -85,6 +85,9 @@ func SaveState(gitDir string, state *StateFile) error { if err := os.WriteFile(tmp, data, 0644); err != nil { return fmt.Errorf("writing modify state: %w", err) } + // Remove existing target before rename for Windows compatibility + // (os.Rename fails on Windows if the target already exists). + _ = os.Remove(target) if err := os.Rename(tmp, target); err != nil { _ = os.Remove(tmp) return fmt.Errorf("committing modify state: %w", err) From 9aab9980292e46639d1f72dbb683e09b2ee20ef1 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Mon, 4 May 2026 01:19:55 -0400 Subject: [PATCH 23/26] Fix 4 bugs from code review Bug 1: Move RevParseMap error check before using originalRefs. The error from git.RevParseMap() was deferred past iteration of originalRefs, which could panic on a nil map. Bug 2: Differentiate cherry-pick vs rebase conflicts in modify. Cherry-pick conflicts don't save state as 'conflict' phase, so --continue won't work. Now prints --abort-only instructions for cherry-pick conflicts. Bug 3: Unwind now cleans up branches created by renames. After restoring snapshot branches, Unwind deletes renamed branch names that don't belong to the original snapshot. Bug 4: Simplify push message in submit command. Changed from 'Pushing N branches to remote...' to 'Pushing to remote...' since individual branches may fail. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- cmd/modify.go | 42 +++++++++++++++++++-------- cmd/submit.go | 6 ++-- internal/modify/apply.go | 54 +++++++++++++++++++++++------------ internal/modify/apply_test.go | 6 ++-- 4 files changed, 72 insertions(+), 36 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index 8bbf897..c4b6d55 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -2,6 +2,7 @@ package cmd import ( "fmt" + "strings" tea "github.com/charmbracelet/bubbletea" "github.com/github/gh-stack/internal/config" @@ -119,13 +120,29 @@ func runModify(cfg *config.Config) error { applyResult, conflict, applyErr := modify.ApplyPlan(cfg, gitDir, s, sf, reordered, currentBranch, updateBaseSHAs) if conflict != nil { - cfg.Warningf("Rebasing %s — conflict", conflict.Branch) - - printConflictDetailsWithContinue(cfg, conflict.Branch, "gh stack modify --continue") - cfg.Printf("") - - cfg.Printf("Or restore the stack to its pre-modify state with `%s`", - cfg.ColorCyan("gh stack modify --abort")) + isCherryPick := applyErr != nil && strings.Contains(applyErr.Error(), "cherry-pick") + if isCherryPick { + cfg.Warningf("Cherry-pick conflict folding %s", conflict.Branch) + if len(conflict.ConflictedFiles) > 0 { + cfg.Printf("") + cfg.Printf("%s", cfg.ColorBold("Conflicted files:")) + for _, f := range conflict.ConflictedFiles { + cfg.Printf(" %s %s", cfg.ColorWarning("C"), f) + } + } + cfg.Printf("") + cfg.Printf("Cherry-pick conflicts cannot be continued with `--continue`.") + cfg.Printf("Restore the stack to its pre-modify state with `%s`", + cfg.ColorCyan("gh stack modify --abort")) + } else { + cfg.Warningf("Rebasing %s — conflict", conflict.Branch) + + printConflictDetailsWithContinue(cfg, conflict.Branch, "gh stack modify --continue") + cfg.Printf("") + + cfg.Printf("Or restore the stack to its pre-modify state with `%s`", + cfg.ColorCyan("gh stack modify --abort")) + } return ErrConflict } @@ -190,7 +207,7 @@ func runModifyAbort(cfg *config.Config) error { } switch state.Phase { - case "applying": + case modify.PhaseApplying: cfg.Printf("A modify session was interrupted during the apply phase") cfg.Printf("Restoring stack to pre-modify state...") if err := modify.UnwindFromStateFile(cfg, gitDir); err != nil { @@ -200,7 +217,7 @@ func runModifyAbort(cfg *config.Config) error { cfg.Successf("Stack restored successfully") return nil - case "pending_submit": + case modify.PhasePendingSubmit: cfg.Printf("A modify completed but the stack has not been submitted") cfg.Printf("Run `%s` to push changes and recreate the stack on GitHub", cfg.ColorCyan("gh stack submit")) @@ -291,6 +308,7 @@ func checkModifyPreconditions(cfg *config.Config) (*loadStackResult, error) { func checkNoModifyInProgress(cfg *config.Config, gitDir string) error { state, err := modify.LoadState(gitDir) if err != nil { + cfg.Warningf("failed to read modify state: %v", err) return nil } if state == nil { @@ -298,18 +316,18 @@ func checkNoModifyInProgress(cfg *config.Config, gitDir string) error { } switch state.Phase { - case "applying": + case modify.PhaseApplying: cfg.Errorf("a previous modify session was interrupted") cfg.Printf("Run `%s` to restore your stack", cfg.ColorCyan("gh stack modify --abort")) return ErrModifyRecovery - case "conflict": + case modify.PhaseConflict: cfg.Errorf("a modify has unresolved conflicts") cfg.Printf("Run `%s` to continue, or `%s` to restore your stack", cfg.ColorCyan("gh stack modify --continue"), cfg.ColorCyan("gh stack modify --abort")) return ErrSilent - case "pending_submit": + case modify.PhasePendingSubmit: cfg.Errorf("a modify was completed but the stack has not been submitted yet") cfg.Printf("Run `%s` to push changes and recreate the stack on GitHub", cfg.ColorCyan("gh stack submit")) diff --git a/cmd/submit.go b/cmd/submit.go index d9cd401..852533b 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -144,7 +144,7 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { // Push each branch and create/update its PR in stack order (bottom to top). // Sequential pushing ensures each branch's base is up-to-date on the // remote before the next branch is pushed, preventing race conditions. - cfg.Printf("Pushing %d %s to %s...", len(activeBranches), plural(len(activeBranches), "branch", "branches"), remote) + cfg.Printf("Pushing to %s...", remote) for i, b := range s.Branches { if s.Branches[i].IsMerged() || s.Branches[i].IsQueued() { continue @@ -318,14 +318,14 @@ func handlePendingModify(cfg *config.Config, client github.ClientOps, s *stack.S if err != nil || state == nil { return nil // No modify state — nothing to do } - if state.Phase != "pending_submit" { + if state.Phase != modify.PhasePendingSubmit { return nil // Not in pending_submit phase } // Prompt for confirmation before overwriting the remote stack if cfg.IsInteractive() { p := prompter.New(cfg.In, cfg.Out, cfg.Err) - proceed, promptErr := p.Confirm("The local stack has been modified. Overwrite the existing stack on GitHub?", false) + proceed, promptErr := p.Confirm("The local stack has been modified. Overwrite the existing stack on GitHub?", true) if promptErr != nil { if isInterruptError(promptErr) { printInterrupt(cfg) diff --git a/internal/modify/apply.go b/internal/modify/apply.go index 30c2c08..ed6bcfa 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -126,7 +126,7 @@ func ApplyPlan( StackName: s.Trunk.Branch, StackIndex: stackIndex, StartedAt: time.Now().UTC(), - Phase: "applying", + Phase: PhaseApplying, PriorRemoteStackID: s.ID, Snapshot: snapshot, Plan: plan, @@ -146,6 +146,14 @@ func ApplyPlan( } } originalRefs, err := git.RevParseMap(branchNames) + if err != nil { + // Unwind on failure + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf, plan) + if unwindErr != nil { + return nil, nil, fmt.Errorf("failed to resolve refs (%v) and unwind failed (%v)", err, unwindErr) + } + return nil, nil, fmt.Errorf("failed to resolve branch SHAs: %w", err) + } // Build a map of each branch's original parent tip SHA for accurate --onto rebase originalParentTips := make(map[string]string) @@ -163,14 +171,6 @@ func ApplyPlan( originalParentTips[b.Branch] = sha } } - if err != nil { - // Unwind on failure - unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) - if unwindErr != nil { - return nil, nil, fmt.Errorf("failed to resolve refs (%v) and unwind failed (%v)", err, unwindErr) - } - return nil, nil, fmt.Errorf("failed to resolve branch SHAs: %w", err) - } // Step 1: Renames for i, n := range nodes { @@ -178,7 +178,7 @@ func ApplyPlan( oldName := n.Ref.Branch newName := n.PendingAction.NewName if err := git.RenameBranch(oldName, newName); err != nil { - unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf, plan) if unwindErr != nil { return nil, nil, fmt.Errorf("rename failed (%v) and unwind failed (%v)", err, unwindErr) } @@ -262,7 +262,7 @@ func ApplyPlan( cfg.Printf("No commits to fold from %s", foldBranch) } else { if err := git.CheckoutBranch(targetBranch); err != nil { - unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf) + unwindErr := Unwind(cfg, gitDir, snapshot, stackIndex, sf, plan) if unwindErr != nil { return nil, nil, fmt.Errorf("checkout failed (%v) and unwind failed (%v)", err, unwindErr) } @@ -444,7 +444,7 @@ func ApplyPlan( remaining = append(remaining, s.Branches[j].Branch) } } - stateFile.Phase = "conflict" + stateFile.Phase = PhaseConflict stateFile.ConflictBranch = b.Branch stateFile.RemainingBranches = remaining stateFile.OriginalBranch = currentBranch @@ -471,7 +471,7 @@ func ApplyPlan( // Update state file phase if s.ID != "" { - stateFile.Phase = "pending_submit" + stateFile.Phase = PhasePendingSubmit if err := SaveState(gitDir, stateFile); err != nil { cfg.Warningf("failed to update modify state: %s", err) } @@ -503,7 +503,7 @@ func ContinueApply( if state == nil { return fmt.Errorf("no modify state file found") } - if state.Phase != "conflict" { + if state.Phase != PhaseConflict { return fmt.Errorf("no modify conflict in progress (phase: %s)", state.Phase) } @@ -512,6 +512,13 @@ func ContinueApply( return fmt.Errorf("loading stack: %w", err) } + // Acquire lock for the duration of the operation + lock, err := stack.Lock(gitDir) + if err != nil { + return fmt.Errorf("acquiring stack lock: %w", err) + } + defer lock.Unlock() + // Find the stack var s *stack.Stack for i := range sf.Stacks { @@ -618,7 +625,7 @@ func ContinueApply( // Transition to pending_submit or clear if s.ID != "" { - state.Phase = "pending_submit" + state.Phase = PhasePendingSubmit state.ConflictBranch = "" state.RemainingBranches = nil state.OriginalRefs = nil @@ -630,7 +637,7 @@ func ContinueApply( } // Save stack metadata - if err := stack.Save(gitDir, sf); err != nil { + if err := stack.SaveWithLock(gitDir, sf, lock); err != nil { cfg.Warningf("failed to save stack: %v", err) } @@ -645,14 +652,16 @@ func ContinueApply( // Unwind restores the stack to its pre-modify state using the snapshot. // stackIndex is the index of the stack in sf.Stacks at modify start time. -func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, stackIndex int, sf *stack.StackFile) error { +func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, stackIndex int, sf *stack.StackFile, plan []Action) error { // Abort any in-progress rebase if git.IsRebaseInProgress() { _ = git.RebaseAbort() } // Restore branch tips + snapshotNames := make(map[string]bool, len(snapshot.Branches)) for _, bs := range snapshot.Branches { + snapshotNames[bs.Name] = true if !git.BranchExists(bs.Name) { // Branch was renamed — try to find it by SHA and recreate if err := git.CreateBranch(bs.Name, bs.TipSHA); err != nil { @@ -671,6 +680,15 @@ func Unwind(cfg *config.Config, gitDir string, snapshot Snapshot, stackIndex int } } + // Clean up branches created by renames during the partial apply + for _, action := range plan { + if action.Type == "rename" && action.NewName != "" { + if !snapshotNames[action.NewName] && git.BranchExists(action.NewName) { + _ = git.DeleteBranch(action.NewName, true) + } + } + } + // Restore stack metadata from snapshot var restoredStack stack.Stack if err := json.Unmarshal(snapshot.StackMetadata, &restoredStack); err != nil { @@ -714,5 +732,5 @@ func UnwindFromStateFile(cfg *config.Config, gitDir string) error { return fmt.Errorf("loading stack: %w", err) } - return Unwind(cfg, gitDir, state.Snapshot, state.StackIndex, sf) + return Unwind(cfg, gitDir, state.Snapshot, state.StackIndex, sf, state.Plan) } diff --git a/internal/modify/apply_test.go b/internal/modify/apply_test.go index 037c4df..dd3dbce 100644 --- a/internal/modify/apply_test.go +++ b/internal/modify/apply_test.go @@ -834,7 +834,7 @@ func TestUnwind(t *testing.T) { defer cfg.Out.Close() defer cfg.Err.Close() - err = Unwind(cfg, gitDir, snapshot, 0, sf) + err = Unwind(cfg, gitDir, snapshot, 0, sf, nil) require.NoError(t, err) // ResetHard should be called for each branch with snapshot SHAs @@ -1126,7 +1126,7 @@ func TestUnwind_AbortsActiveRebase(t *testing.T) { defer cfg.Out.Close() defer cfg.Err.Close() - err = Unwind(cfg, gitDir, snapshot, 0, sf) + err = Unwind(cfg, gitDir, snapshot, 0, sf, nil) require.NoError(t, err) assert.True(t, rebaseAbortCalled, "RebaseAbort should be called when rebase is in progress") assert.False(t, StateExists(gitDir)) @@ -1175,7 +1175,7 @@ func TestUnwind_RestoresRenamedBranch(t *testing.T) { defer cfg.Out.Close() defer cfg.Err.Close() - err = Unwind(cfg, gitDir, snapshot, 0, sf) + err = Unwind(cfg, gitDir, snapshot, 0, sf, nil) require.NoError(t, err) // A should be recreated via CreateBranch From 7f33691104163fe7a08a54aba9c4b05683c1a349 Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Mon, 4 May 2026 01:21:35 -0400 Subject: [PATCH 24/26] Fix 7 nit issues from code review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 11: Add named constants for phase strings (PhaseApplying, PhaseConflict, PhasePendingSubmit) in state.go; replace remaining raw literals in state.go CheckStateGuard. 14: Fix bottomLines comment mismatch — listed 3 items but value is 2. 15: Extract magic number 88 to MinWidthForArt constant in header.go. 16: Remove unused stackview import anchor in model.go — the import is used via types.go where BranchNode is embedded. 17: Simplify CheckStackLinearity parent resolution — ActiveBaseBranch already handles skipping merged branches. 18: Fix rename undo matching any rename — add NewName check so only the specific rename being undone is matched. 20: Add TestUndoRename and TestUndoRename_DoesNotAffectOtherRenames to validate rename undo behavior. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- internal/modify/preconditions.go | 4 -- internal/modify/state.go | 10 ++++- internal/stack/stack.go | 10 +++-- internal/tui/modifyview/model.go | 8 +--- internal/tui/modifyview/model_test.go | 59 +++++++++++++++++++++++++++ internal/tui/shared/header.go | 5 ++- 6 files changed, 79 insertions(+), 17 deletions(-) diff --git a/internal/modify/preconditions.go b/internal/modify/preconditions.go index 2d5e417..40eabe7 100644 --- a/internal/modify/preconditions.go +++ b/internal/modify/preconditions.go @@ -38,10 +38,6 @@ func CheckStackLinearity(cfg *config.Config, s *stack.Stack) error { if i == 0 { parentBranch = s.Trunk.Branch } else { - parentBranch = s.Branches[i-1].Branch - } - - if i > 0 && s.Branches[i-1].IsMerged() { parentBranch = s.ActiveBaseBranch(b.Branch) } diff --git a/internal/modify/state.go b/internal/modify/state.go index c0aaa79..6bfe7dc 100644 --- a/internal/modify/state.go +++ b/internal/modify/state.go @@ -11,6 +11,12 @@ import ( const stateFileName = "gh-stack-modify-state" +const ( + PhaseApplying = "applying" + PhaseConflict = "conflict" + PhasePendingSubmit = "pending_submit" +) + // StateFile holds the state of an in-progress or pending-submit modify operation. // It is stored at .git/gh-stack-modify-state. type StateFile struct { @@ -117,10 +123,10 @@ func CheckStateGuard(gitDir string) error { if state == nil { return nil } - if state.Phase == "applying" { + if state.Phase == PhaseApplying { return fmt.Errorf("a modify session was interrupted — run `gh stack modify --abort` to restore your stack") } - if state.Phase == "conflict" { + if state.Phase == PhaseConflict { return fmt.Errorf("a modify has unresolved conflicts — run `gh stack modify --continue` or `gh stack modify --abort`") } return nil diff --git a/internal/stack/stack.go b/internal/stack/stack.go index bc9d88c..75ff71c 100644 --- a/internal/stack/stack.go +++ b/internal/stack/stack.go @@ -317,10 +317,12 @@ func Save(gitDir string, sf *StackFile) error { } // SaveWithLock writes the stack file while the caller already holds the lock. -// This avoids double-locking when the caller needs to hold the lock across -// multiple operations (e.g. modify apply). The staleness check is skipped -// because the caller owns the lock and has been mutating the StackFile. -func SaveWithLock(gitDir string, sf *StackFile, _ *FileLock) error { +// The caller is responsible for acquiring and releasing the lock. +// Panics if lock is nil to catch programming errors. +func SaveWithLock(gitDir string, sf *StackFile, lock *FileLock) error { + if lock == nil { + panic("SaveWithLock called with nil lock") + } return writeStackFile(gitDir, sf) } diff --git a/internal/tui/modifyview/model.go b/internal/tui/modifyview/model.go index 89833ce..75cf852 100644 --- a/internal/tui/modifyview/model.go +++ b/internal/tui/modifyview/model.go @@ -11,7 +11,6 @@ import ( "github.com/github/gh-stack/internal/git" "github.com/github/gh-stack/internal/stack" "github.com/github/gh-stack/internal/tui/shared" - "github.com/github/gh-stack/internal/tui/stackview" ) // modifyKeyMap defines key bindings for the modify view. @@ -767,7 +766,7 @@ func (m *Model) undoLast() { case ActionRename: for i := range m.nodes { - if m.nodes[i].Ref.Branch == action.BranchName || (m.nodes[i].PendingAction != nil && m.nodes[i].PendingAction.Type == ActionRename) { + if m.nodes[i].Ref.Branch == action.BranchName || (m.nodes[i].PendingAction != nil && m.nodes[i].PendingAction.Type == ActionRename && m.nodes[i].PendingAction.NewName == action.NewName) { m.nodes[i].PendingAction = nil break } @@ -999,7 +998,7 @@ func (m Model) View() string { // Count fixed bottom lines (always visible, not scrollable). // The bottom section always has 2 lines: one for contextual info // (rename prompt or error, blank when neither) and one for the status bar. - bottomLines := 2 // post-scroll newline + context line + status bar + bottomLines := 2 // error/status line + status bar (post-scroll newline is inline) // Scrolling — reserve space for header and fixed bottom reservedLines := bottomLines @@ -1090,6 +1089,3 @@ func (m Model) buildHeaderConfig() shared.HeaderConfig { // Ensure Model satisfies the tea.Model interface. var _ tea.Model = Model{} - -// Ensure stackview import is used (BranchNode is embedded in ModifyBranchNode). -var _ = stackview.BranchNode{} diff --git a/internal/tui/modifyview/model_test.go b/internal/tui/modifyview/model_test.go index fd61cca..348515e 100644 --- a/internal/tui/modifyview/model_test.go +++ b/internal/tui/modifyview/model_test.go @@ -697,3 +697,62 @@ func TestPluralize(t *testing.T) { assert.Equal(t, "drops", pluralize(2, "drop", "drops")) assert.Equal(t, "drops", pluralize(0, "drop", "drops")) } + +func TestUndoRename(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Simulate a rename on node at index 1 (bypass git validation) + m.nodes[1].PendingAction = &PendingAction{Type: ActionRename, NewName: "b-renamed"} + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionRename, + BranchName: "b", + OriginalName: "b", + NewName: "b-renamed", + }) + + require.NotNil(t, m.nodes[1].PendingAction) + assert.Equal(t, ActionRename, m.nodes[1].PendingAction.Type) + assert.Equal(t, "b-renamed", m.nodes[1].PendingAction.NewName) + + // Undo + m = sendKey(t, m, runeKey('z')) + assert.Nil(t, m.nodes[1].PendingAction, "PendingAction should be cleared after undo") +} + +func TestUndoRename_DoesNotAffectOtherRenames(t *testing.T) { + nodes := []ModifyBranchNode{ + makeNode("a", false, 0), + makeNode("b", true, 1), + makeNode("c", false, 2), + } + m := New(nodes, testTrunk, "1.0.0") + + // Simulate rename on node 0 (first rename) + m.nodes[0].PendingAction = &PendingAction{Type: ActionRename, NewName: "a-renamed"} + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionRename, + BranchName: "a", + OriginalName: "a", + NewName: "a-renamed", + }) + + // Simulate rename on node 2 (second rename) + m.nodes[2].PendingAction = &PendingAction{Type: ActionRename, NewName: "c-renamed"} + m.actionStack = append(m.actionStack, StagedAction{ + Type: ActionRename, + BranchName: "c", + OriginalName: "c", + NewName: "c-renamed", + }) + + // Undo the second rename + m = sendKey(t, m, runeKey('z')) + assert.Nil(t, m.nodes[2].PendingAction, "second rename should be undone") + require.NotNil(t, m.nodes[0].PendingAction, "first rename should still be intact") + assert.Equal(t, "a-renamed", m.nodes[0].PendingAction.NewName, "first rename new name should be unchanged") +} diff --git a/internal/tui/shared/header.go b/internal/tui/shared/header.go index eed6c9c..d686e3f 100644 --- a/internal/tui/shared/header.go +++ b/internal/tui/shared/header.go @@ -18,6 +18,9 @@ const MinWidthForShortcuts = 65 // MinWidthForHeader is the minimum width to show the header at all. const MinWidthForHeader = 50 +// MinWidthForArt is the minimum width to show ASCII art in the header. +const MinWidthForArt = 88 + // ShortcutEntry represents a keyboard shortcut for the header. type ShortcutEntry struct { Key string @@ -173,7 +176,7 @@ func RenderHeader(b *strings.Builder, cfg HeaderConfig, width, height int) { showInfo := true // Hide art when viewport is too narrow for art + info + shortcuts - if showArt && width < 88 { + if showArt && width < MinWidthForArt { showArt = false } From c1a8cbe1255bc4951595edf14fee33428950dade Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Mon, 4 May 2026 08:52:20 -0400 Subject: [PATCH 25/26] Make cherry-pick conflicts recoverable via --continue Previously, cherry-pick conflicts during fold-down operations could only be resolved with --abort. Now they save full conflict state (phase, conflict type, fold branch/target, remaining branches) to the state file, enabling recovery via 'gh stack modify --continue'. Changes: - Add ConflictType field to StateFile (rebase or cherry_pick) - Add FoldBranch/FoldTarget fields for cherry-pick context - Add CherryPickContinue to git package (cherry-pick --continue) - Save cherry-pick conflict state in ApplyPlan with remaining branches - ContinueApply handles both rebase and cherry-pick conflicts - Unified conflict messaging in cmd/modify.go (both types show --continue) - Updated test to verify cherry-pick conflict state is saved correctly --- cmd/modify.go | 21 +++------ internal/git/git.go | 5 +++ internal/git/gitops.go | 7 +++ internal/git/mock_ops.go | 4 ++ internal/modify/apply.go | 70 +++++++++++++++++++++++------ internal/modify/apply_test.go | 83 ++++++++++++++++++++++++++++++++--- internal/modify/state.go | 5 +++ 7 files changed, 159 insertions(+), 36 deletions(-) diff --git a/cmd/modify.go b/cmd/modify.go index c4b6d55..b6bd381 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -123,26 +123,15 @@ func runModify(cfg *config.Config) error { isCherryPick := applyErr != nil && strings.Contains(applyErr.Error(), "cherry-pick") if isCherryPick { cfg.Warningf("Cherry-pick conflict folding %s", conflict.Branch) - if len(conflict.ConflictedFiles) > 0 { - cfg.Printf("") - cfg.Printf("%s", cfg.ColorBold("Conflicted files:")) - for _, f := range conflict.ConflictedFiles { - cfg.Printf(" %s %s", cfg.ColorWarning("C"), f) - } - } - cfg.Printf("") - cfg.Printf("Cherry-pick conflicts cannot be continued with `--continue`.") - cfg.Printf("Restore the stack to its pre-modify state with `%s`", - cfg.ColorCyan("gh stack modify --abort")) } else { cfg.Warningf("Rebasing %s — conflict", conflict.Branch) + } - printConflictDetailsWithContinue(cfg, conflict.Branch, "gh stack modify --continue") - cfg.Printf("") + printConflictDetailsWithContinue(cfg, conflict.Branch, "gh stack modify --continue") + cfg.Printf("") - cfg.Printf("Or restore the stack to its pre-modify state with `%s`", - cfg.ColorCyan("gh stack modify --abort")) - } + cfg.Printf("Or restore the stack to its pre-modify state with `%s`", + cfg.ColorCyan("gh stack modify --abort")) return ErrConflict } diff --git a/internal/git/git.go b/internal/git/git.go index 705a6a7..e9ed717 100644 --- a/internal/git/git.go +++ b/internal/git/git.go @@ -368,6 +368,11 @@ func CherryPickAbort() { _ = ops.CherryPickAbort() } +// CherryPickContinue continues an in-progress cherry-pick after conflicts are resolved. +func CherryPickContinue() error { + return ops.CherryPickContinue() +} + // HasUncommittedChanges returns true if the working tree has uncommitted changes. func HasUncommittedChanges() (bool, error) { return ops.HasUncommittedChanges() diff --git a/internal/git/gitops.go b/internal/git/gitops.go index bc7a519..e3c1870 100644 --- a/internal/git/gitops.go +++ b/internal/git/gitops.go @@ -59,6 +59,7 @@ type Ops interface { RenameBranch(oldName, newName string) error CherryPick(commits []string) error CherryPickAbort() error + CherryPickContinue() error HasUncommittedChanges() (bool, error) LogMerges(base, head string) ([]CommitInfo, error) } @@ -513,6 +514,12 @@ func (d *defaultOps) CherryPickAbort() error { return runSilent("cherry-pick", "--quit") } +func (d *defaultOps) CherryPickContinue() error { + cmd := exec.Command("git", "cherry-pick", "--continue") + cmd.Env = append(os.Environ(), "GIT_EDITOR=true") + return cmd.Run() +} + func (d *defaultOps) HasUncommittedChanges() (bool, error) { out, err := run("status", "--porcelain") if err != nil { diff --git a/internal/git/mock_ops.go b/internal/git/mock_ops.go index 2c29585..12ddf5b 100644 --- a/internal/git/mock_ops.go +++ b/internal/git/mock_ops.go @@ -359,6 +359,10 @@ func (m *MockOps) CherryPickAbort() error { return nil } +func (m *MockOps) CherryPickContinue() error { + return nil +} + func (m *MockOps) HasUncommittedChanges() (bool, error) { if m.HasUncommittedChangesFn != nil { return m.HasUncommittedChangesFn() diff --git a/internal/modify/apply.go b/internal/modify/apply.go index ed6bcfa..7075e52 100644 --- a/internal/modify/apply.go +++ b/internal/modify/apply.go @@ -281,6 +281,35 @@ func ApplyPlan( if files, ferr := git.ConflictedFiles(); ferr == nil { conflict.ConflictedFiles = files } + + // Compute remaining branches for cascading rebase after cherry-pick resumes. + // Since folds happen before cascading rebase (Step 5), all non-merged, non-folded + // branches need rebasing. + remaining := make([]string, 0) + for _, br := range s.Branches { + if !br.IsMerged() && br.Branch != foldBranch { + remaining = append(remaining, br.Branch) + } + } + + // Save conflict state so --continue can resume the cherry-pick + stateFile.Phase = PhaseConflict + stateFile.ConflictBranch = foldBranch + stateFile.ConflictType = "cherry_pick" + stateFile.FoldBranch = foldBranch + stateFile.FoldTarget = targetBranch + stateFile.RemainingBranches = remaining + stateFile.OriginalBranch = currentBranch + stateFile.OriginalRefs = originalParentTips + if saveErr := SaveState(gitDir, stateFile); saveErr != nil { + cfg.Warningf("failed to save conflict state: %v", saveErr) + } + + // Save stack metadata so far + if saveErr := stack.SaveWithLock(gitDir, sf, lock); saveErr != nil { + cfg.Warningf("failed to save stack metadata: %v", saveErr) + } + return nil, conflict, fmt.Errorf("cherry-pick conflict folding %s into %s", foldBranch, targetBranch) } @@ -446,6 +475,7 @@ func ApplyPlan( } stateFile.Phase = PhaseConflict stateFile.ConflictBranch = b.Branch + stateFile.ConflictType = "rebase" stateFile.RemainingBranches = remaining stateFile.OriginalBranch = currentBranch stateFile.OriginalRefs = originalParentTips @@ -454,7 +484,9 @@ func ApplyPlan( } // Save stack metadata so far (renames, folds, drops already applied) - _ = stack.SaveWithLock(gitDir, sf, lock) + if saveErr := stack.SaveWithLock(gitDir, sf, lock); saveErr != nil { + cfg.Warningf("failed to save stack metadata: %v", saveErr) + } return nil, conflict, fmt.Errorf("rebase conflict on %s", b.Branch) } @@ -519,26 +551,36 @@ func ContinueApply( } defer lock.Unlock() - // Find the stack + // Find the stack using the saved index for reliable identification. var s *stack.Stack - for i := range sf.Stacks { - if sf.Stacks[i].Trunk.Branch == state.StackName { - s = &sf.Stacks[i] - break - } + if state.StackIndex >= 0 && state.StackIndex < len(sf.Stacks) { + s = &sf.Stacks[state.StackIndex] } if s == nil { - return fmt.Errorf("stack %q not found", state.StackName) + return fmt.Errorf("stack at index %d not found (stack file may have changed)", state.StackIndex) } - // Finish the in-progress git rebase - if git.IsRebaseInProgress() { - if err := git.RebaseContinue(); err != nil { - return fmt.Errorf("rebase continue failed — resolve remaining conflicts and try again: %w", err) + // Finish the in-progress git operation (rebase or cherry-pick) + if state.ConflictType == "cherry_pick" { + if err := git.CherryPickContinue(); err != nil { + return fmt.Errorf("cherry-pick continue failed — resolve remaining conflicts and try again: %w", err) } - } + cfg.Successf("Folded %s into %s", state.FoldBranch, state.FoldTarget) - cfg.Successf("Rebased %s", state.ConflictBranch) + // Remove the folded branch from stack metadata + foldIdx := s.IndexOf(state.FoldBranch) + if foldIdx >= 0 && foldIdx < len(s.Branches) { + s.Branches = append(s.Branches[:foldIdx], s.Branches[foldIdx+1:]...) + } + } else { + // Rebase conflict + if git.IsRebaseInProgress() { + if err := git.RebaseContinue(); err != nil { + return fmt.Errorf("rebase continue failed — resolve remaining conflicts and try again: %w", err) + } + } + cfg.Successf("Rebased %s", state.ConflictBranch) + } // Continue cascading rebase for remaining branches for _, branchName := range state.RemainingBranches { diff --git a/internal/modify/apply_test.go b/internal/modify/apply_test.go index dd3dbce..37699ce 100644 --- a/internal/modify/apply_test.go +++ b/internal/modify/apply_test.go @@ -751,15 +751,86 @@ func TestApplyPlan_ConflictDuringCherryPick(t *testing.T) { require.NotNil(t, conflict) assert.Equal(t, "B", conflict.Branch) - // Cherry-pick conflicts return a conflict immediately (no "conflict" state for continue) + // Cherry-pick conflicts now save state for --continue recovery state, loadErr := LoadState(gitDir) require.NoError(t, loadErr) - // The state file is created with "applying" phase before the conflict, - // but cherry-pick conflicts don't update it to "conflict" - if state != nil { - assert.NotEqual(t, "conflict", state.Phase, - "cherry-pick conflicts should not set phase to 'conflict'") + require.NotNil(t, state) + assert.Equal(t, PhaseConflict, state.Phase) + assert.Equal(t, "cherry_pick", state.ConflictType) + assert.Equal(t, "B", state.FoldBranch) + assert.Equal(t, "A", state.FoldTarget) + assert.Equal(t, "A", state.OriginalBranch) + assert.Contains(t, state.RemainingBranches, "A") +} + +// ─── ContinueApply: Multi-Stack Finds Correct Stack ───────────────────────── + +func TestContinueApply_MultiStackFindsCorrectStack(t *testing.T) { + // When multiple stacks share the same trunk, ContinueApply should use + // StackIndex to find the right stack, not just trunk name matching. + gitDir := t.TempDir() + + // Stack 0: main <- X (a different stack) + // Stack 1: main <- A <- B <- C (the one being modified) + sf := &stack.StackFile{ + SchemaVersion: 1, + Stacks: []stack.Stack{ + { + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{{Branch: "X"}}, + }, + { + Trunk: stack.BranchRef{Branch: "main"}, + Branches: []stack.BranchRef{ + {Branch: "A"}, + {Branch: "B"}, + {Branch: "C"}, + }, + }, + }, + } + data, err := json.MarshalIndent(sf, "", " ") + require.NoError(t, err) + require.NoError(t, os.WriteFile(filepath.Join(gitDir, "gh-stack"), data, 0644)) + + // Create a state file pointing at Stack 1 (index 1) + state := &StateFile{ + SchemaVersion: 1, + StackName: "main", + StackIndex: 1, // The correct stack is at index 1 + Phase: PhaseConflict, + ConflictBranch: "A", + ConflictType: "rebase", + RemainingBranches: []string{"B", "C"}, + OriginalRefs: map[string]string{"B": "sha-A", "C": "sha-B"}, + } + require.NoError(t, SaveState(gitDir, state)) + + mock := newApplyMock(gitDir, map[string]string{ + "main": "sha-main", "A": "sha-A", "B": "sha-B", "C": "sha-C", + }) + mock.IsRebaseInProgressFn = func() bool { return true } + mock.RebaseContinueFn = func() error { return nil } + + var rebasedBranches []string + mock.RebaseOntoFn = func(newBase, oldBase, branch string) error { + rebasedBranches = append(rebasedBranches, branch) + return nil } + + restore := git.SetOps(mock) + defer restore() + + cfg, _, _ := config.NewTestConfig() + defer cfg.Out.Close() + defer cfg.Err.Close() + + err = ContinueApply(cfg, gitDir, noopUpdateBaseSHAs) + require.NoError(t, err) + + // B and C should have been found and processed (not "no longer in stack") + assert.Contains(t, rebasedBranches, "B", "B should be rebased") + assert.Contains(t, rebasedBranches, "C", "C should be rebased") } // ─── Unwind ────────────────────────────────────────────────────────────────── diff --git a/internal/modify/state.go b/internal/modify/state.go index 6bfe7dc..d4e243a 100644 --- a/internal/modify/state.go +++ b/internal/modify/state.go @@ -31,9 +31,14 @@ type StateFile struct { // Conflict state — populated when phase is "conflict" ConflictBranch string `json:"conflict_branch,omitempty"` + ConflictType string `json:"conflict_type,omitempty"` // "rebase" or "cherry_pick" RemainingBranches []string `json:"remaining_branches,omitempty"` OriginalBranch string `json:"original_branch,omitempty"` OriginalRefs map[string]string `json:"original_refs,omitempty"` + + // Cherry-pick conflict context — which fold was in progress + FoldBranch string `json:"fold_branch,omitempty"` // branch being folded + FoldTarget string `json:"fold_target,omitempty"` // branch receiving the cherry-pick } // Snapshot captures the pre-modify state for unwind/recovery. From f4f3fc9de41c409458d5129b051587fbf5f711ea Mon Sep 17 00:00:00 2001 From: Sameen Karim Date: Mon, 4 May 2026 22:31:01 -0400 Subject: [PATCH 26/26] Apply suggestions from code review Co-authored-by: Luke Ghenco Co-authored-by: Sameen Karim --- cmd/modify.go | 4 ++++ cmd/submit.go | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/cmd/modify.go b/cmd/modify.go index b6bd381..143bffb 100644 --- a/cmd/modify.go +++ b/cmd/modify.go @@ -201,6 +201,10 @@ func runModifyAbort(cfg *config.Config) error { cfg.Printf("Restoring stack to pre-modify state...") if err := modify.UnwindFromStateFile(cfg, gitDir); err != nil { cfg.Errorf("recovery failed: %s", err) + cfg.Printf("The stack may be in an inconsistent state.") + cfg.Printf("Try `%s` to fix, or `%s` + `%s` to recreate.", + cfg.ColorCyan("gh stack rebase"), cfg.ColorCyan("gh stack unstack --local"), + cfg.ColorCyan("gh stack init --adopt")) return ErrSilent } cfg.Successf("Stack restored successfully") diff --git a/cmd/submit.go b/cmd/submit.go index 852533b..a830177 100644 --- a/cmd/submit.go +++ b/cmd/submit.go @@ -129,7 +129,7 @@ func runSubmit(cfg *config.Config, opts *submitOptions) error { return nil } - // If a modify is pending, delete the old remote stack first so that + // If a modification is pending, delete the old remote stack first so that // PR base updates are allowed and force-pushes don't trigger auto-merges. if stacksAvailable { if err := handlePendingModify(cfg, client, s, gitDir); err != nil {

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