From dd7e95b0d7aa7297066ef572300693fa965f824d Mon Sep 17 00:00:00 2001 From: JaeYoo-Im Date: Fri, 6 Aug 2021 14:57:00 +0900 Subject: [PATCH] copy previous config --- .config/alacritty/alacritty.yml | 77 ++ .config/nvim/Vim.org | 324 +++++++++ .config/nvim/init.vim | 129 ++++ .config/nvim/plugList.vim | 25 + .config/xmobar/scripts/battery_icon.sh | 12 + .config/xmobar/trayer-padding-icon.sh | 48 ++ .config/xmobar/xmobarrc_desktop_fhd | 43 ++ .config/xmobar/xmobarrc_desktop_qhd | 52 ++ .config/xmobar/xmobarrc_labtop_fhd | 43 ++ .gitconfig | 3 + .gitignore | 14 + .julia/startup.jl | 3 + .minttyrc | 36 + .ssh/config | 28 + .tmux.conf | 25 + .xmonad/haskell_20.xpm | 25 + .xmonad/picom.conf | 443 ++++++++++++ .xmonad/xmonad.org | 566 +++++++++++++++ .xprofile | 3 + .zshrc | 30 + Note/ArchLinux.org | 950 +++++++++++++++++++++++++ Note/HyperV.org | 89 +++ Note/Linux.org | 267 +++++++ Note/WSL.org | 225 ++++++ Note/WSL/config.xlaunch | 2 + Note/WSL/run_emacs.sh | 8 + Note/WSL/usr_cmd.zip | Bin 0 -> 46811 bytes Note/WindowEnv.org | 275 +++++++ Note/images/screenshot-01.png | Bin 0 -> 2891 bytes Note/images/screenshot-02.png | Bin 0 -> 3798 bytes Note/images/screenshot-03.png | Bin 0 -> 21765 bytes Note/images/screenshot-04.png | Bin 0 -> 202946 bytes Note/images/screenshot-05.png | Bin 0 -> 17222 bytes Note/images/screenshot-06.png | Bin 0 -> 7104 bytes Note/virtmanager.org | 66 ++ README.org | 1 - scripts/hyperv_mount_settings.sh | 23 + scripts/init_script_arcolinux.sh | 56 ++ scripts/init_script_hyperv.sh | 15 + scripts/set_proxy.sh | 39 + 40 files changed, 3944 insertions(+), 1 deletion(-) create mode 100644 .config/alacritty/alacritty.yml create mode 100644 .config/nvim/Vim.org create mode 100644 .config/nvim/init.vim create mode 100644 .config/nvim/plugList.vim create mode 100755 .config/xmobar/scripts/battery_icon.sh create mode 100755 .config/xmobar/trayer-padding-icon.sh create mode 100644 .config/xmobar/xmobarrc_desktop_fhd create mode 100644 .config/xmobar/xmobarrc_desktop_qhd create mode 100644 .config/xmobar/xmobarrc_labtop_fhd create mode 100644 .gitconfig create mode 100644 .gitignore create mode 100644 .julia/startup.jl create mode 100644 .minttyrc create mode 100644 .ssh/config create mode 100644 .tmux.conf create mode 100644 .xmonad/haskell_20.xpm create mode 100644 .xmonad/picom.conf create mode 100644 .xmonad/xmonad.org create mode 100644 .xprofile create mode 100644 .zshrc create mode 100644 Note/ArchLinux.org create mode 100644 Note/HyperV.org create mode 100644 Note/Linux.org create mode 100644 Note/WSL.org create mode 100644 Note/WSL/config.xlaunch create mode 100755 Note/WSL/run_emacs.sh create mode 100755 Note/WSL/usr_cmd.zip create mode 100644 Note/WindowEnv.org create mode 100644 Note/images/screenshot-01.png create mode 100644 Note/images/screenshot-02.png create mode 100644 Note/images/screenshot-03.png create mode 100755 Note/images/screenshot-04.png create mode 100755 Note/images/screenshot-05.png create mode 100755 Note/images/screenshot-06.png create mode 100644 Note/virtmanager.org delete mode 100644 README.org create mode 100755 scripts/hyperv_mount_settings.sh create mode 100755 scripts/init_script_arcolinux.sh create mode 100755 scripts/init_script_hyperv.sh create mode 100755 scripts/set_proxy.sh diff --git a/.config/alacritty/alacritty.yml b/.config/alacritty/alacritty.yml new file mode 100644 index 0000000..b26aa2a --- /dev/null +++ b/.config/alacritty/alacritty.yml @@ -0,0 +1,77 @@ +env: + TERM: xterm-256color + +window: + padding: + x: 6 + y: 6 + title: Alacritty + class: + instance: Alacritty + general: Alacritty + +scrolling: + history: 10000 +font: + normal: + family: Mononoki Nerd Font + style: Regular + bold: + family: Mononoki Nerd Font + style: Bold + italic: + family: Mononoki Nerd Font + style: Italic + bold_italic: + family: Mononoki Nerd Font + style: Bold Italic + # Point size + size: 11.0 + offset: + x: 0 + y: 1 +draw_bold_text_with_bright_colors: true +colors: + primary: + background: '0x282c34' + foreground: '0xbbc2cf' + selection: + text: '0xbbc2cf' + normal: + black: '0x1c1f24' + red: '0xff6c6b' + green: '0x98be65' + yellow: '0xda8548' + blue: '0x51afef' + magenta: '0xc678dd' + cyan: '0x5699af' + white: '0x202328' + bright: + black: '0x5b6268' + red: '0xda8548' + green: '0x4db5bd' + yellow: '0xecbe7b' + blue: '0x3071db' # This is 2257a0 in Doom Emacs but I lightened it. + magenta: '0xa9a1e1' + cyan: '0x46d9ff' + white: '0xdfdfdf' +background_opacity: 0.9 +key_bindings: + # (Windows, Linux, and BSD only) + - { key: V, mods: Control|Shift, action: Paste } + - { key: C, mods: Control|Shift, action: Copy } + - { key: Insert, mods: Shift, action: PasteSelection } + - { key: Key0, mods: Control, action: ResetFontSize } + - { key: Equals, mods: Control, action: IncreaseFontSize } + - { key: Plus, mods: Control, action: IncreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + + - { key: Paste, action: Paste } + - { key: Copy, action: Copy } + - { key: L, mods: Control, action: ClearLogNotice } + - { key: L, mods: Control, chars: "\x0c" } + - { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt } + - { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt } + - { key: Home, mods: Shift, action: ScrollToTop, mode: ~Alt } + - { key: End, mods: Shift, action: ScrollToBottom, mode: ~Alt } diff --git a/.config/nvim/Vim.org b/.config/nvim/Vim.org new file mode 100644 index 0000000..9918ff6 --- /dev/null +++ b/.config/nvim/Vim.org @@ -0,0 +1,324 @@ +#+TITLE: Vim + +* Vim Configuration +** Config file location +- on Windows : ~/AppData/Local/nvim/init.vim +- on Linux : ~/.config/nvim/init.vim + +** Basic Settings +*** General + +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +" Vim Configuration +set nocompatible "move using arrow key +"filtype plugin on +set number +set ai "auto indent +set si "smart indent +set cindent " c style indent + +set shiftwidth=4 "shift order 4step +set tabstop=4 "tab order 4step +set hlsearch "highlight empathize the word. + +set history=1000 "history store depth +set nobackup "no generate swp file +set noswapfile +set nowritebackup +set backupdir=~/.backup/ +set directory=~/.backup/ + +set ruler "display the cursor position +set title "display the title +set showmatch "display the matched bracket +"set nowrap "no auto linefeed +set wmnu "auto word finder + +set autochdir " auto change working directory + +set hidden "buffer hidden +set updatetime=300 " 300ms +set cmdheight=2 " Better display for messages +set shortmess+=c " don't give [ins-completion-menu] messages. +set signcolumn=yes " always show signcolumns + + +set backspace=indent,eol,start +set fencs=ucs-bom,utf-8,cp949 +set clipboard^=unnamed,unnamedplus + +set mouse=a +#+end_src + +여기서 clipboard 문제가 발생할 수 있다. Windows계열에서는 쉽게 ="+y= ="+p"= 로 clipboard를 통한 복사 붙여넣기가 가능하며, +리눅스의 경우는 xclip을 이용하여 사용하는것이 편했다. +리눅스는 Ctrl+C/V로 관리 되는 =+= 레지스터와 Selection으로 관리되는 마우스 중간버튼의 =*= 레지스터가 따로 관리되는 듯하니 VIM레지스터 =+= 와 =*= 을 잘 확인해 봐야한다. + + +** Plugin List + +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +" PluginManager in vimrc +runtime plugList.vim +#+end_src +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +call plug#begin('~/.vim/plugged') +#+end_src + +*** Suda +기존의 VIM에는 읽기 권한으로 파일을 열고 다음과 같은 커맨드로 sudo write가 가능했는데 +Neovim에서는 불가능한 상황이다. (아마 비밀번호를 입력못했던걸로.) +#+begin_src shell +:w !sudo tee % +#+end_src + +Neovim에서는 플러그인으로 문제를 해결한다. +=SudaRead= 와 =SudaWrite= 를 활용한다. +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'lambdalisue/suda.vim' +#+end_src + +*** Clolor Scheme +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +""""""""""""""""""""""""""""""""""""""""""""""""""" +" Colorscheme +""""""""""""""""""""""""""""""""""""""""""""""""""" +"""""""""""""" One Dark +"colorscheme onedark +"""""""""""""" Grub_box +"let g:gruvbox_contrast_dark='soft' +"set background=dark +"colorscheme gruvbox +"let g:airline_theme='gruvbox' +"""""""""""""" Paper Color +"set background=light +"colorscheme PaperColor +"let g:airline_theme='hybrid' +"let g:PaperColor_Theme_Options = { +" \ 'theme': { +" \ 'default.light': { +" \ 'transparent_background': 1 +" \ } +" \ } +" \ } +"""""""""""""" Molokai +"let g:molokai_original = 1 +"colorscheme molokai +"""""""""""""" Solarized 8 +"set background=light +"colorscheme solarized8_high +"let g:airline_theme='solarized8' +"""""""""""""" Challenger Deep +"colorscheme challenger_deep +colorscheme palenight +#+end_src + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +" color scheme +"Plug 'morhetz/gruvbox' +"Plug 'lifepillar/vim-solarized8' +"Plug 'NLKNguyen/papercolor-theme' +"Plug 'tomasr/molokai' +"Plug 'joshdick/onedark.vim' +"Plug 'challenger-deep-theme/vim', { 'as': 'challenger-deep' } +Plug 'drewtempelmeyer/palenight.vim' +#+end_src +*** Airline +VIM의 위아래에 Tab바와 같은것을 만들어 준다. +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +""""""""""""""""""""""""""""""""""""""""""""""""""" +" Air-line +""""""""""""""""""""""""""""""""""""""""""""""""""" +let g:airline#extensions#tabline#enabled = 1 " turn on buffer list +set laststatus=2 " turn on bottom bar +#+end_src + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'vim-airline/vim-airline' +Plug 'vim-airline/vim-airline-themes' +#+end_src + +*** NerdTree +예전에는 Nerdtree를 =F3= Keybinding하여 Explorer와 같이 띄워 사용하였다. +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +"""""""""""""""""""""""""""""""""""""""""""""""""" +" NERDTREE +"""""""""""""""""""""""""""""""""""""""""""""""""" +"map :NERDTreeToggle +#+end_src + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +"Plug 'scrooloose/nerdtree' +#+end_src + +현재는 순정으로 netrw 플러그인이 있기때문에 =:Ex= 커맨드와 =:R= 를 이용하여 사용한다. +VIM은 =:Rx= 였던걸로? + +*** Unimpaired +그냥 버퍼이동 쉽게하려고 =:bnext= =:bprev= 대신에 이 플러그인에 바인딩된 =[b= =]b= 를 사용한다. + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'tpope/vim-unimpaired' +#+end_src + +*** Commentary +Comment 쉽게 toggle, 키는 =gcc= 나 Visual로 라인선택 후 =gc= 사용한다. + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'tpope/vim-commentary' +#+end_src + +*** Git-fugitive +=:Git commit= 과 같은 명령어 사용 가능해짐. + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'tpope/vim-fugitive' " git wrapper +#+end_src + +*** Git-Gutter +변경점들을 하이라이트 해서 보여줌. == 키로 하이라이트 토글 가능. +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +"""""""""""""""""""""""""""""""""""""""""""""""""" +" Git Gutter +"""""""""""""""""""""""""""""""""""""""""""""""""" +let g:gitgutter_highlight_lines = 1 +map :GitGutterLineHighlightsToggle +#+end_src + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'airblade/vim-gitgutter' " git modified view; +#+end_src +*** Surround +Visual로 선택하고 =S}= =S]= =S)= =S"= 와 같은 커맨드로 괄호 치기 가능. +사실 Verilog 쓰는입장에서는 잘 안쓰게됨. + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'tpope/vim-surround' +#+end_src + +*** Easy Motion +커서를 빠르게 이동함. =\w= 커맨드를 치면 워드단위로 하이라이트 되어 손쉽게 이동가능 + +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +"""""""""""""""""""""""""""""""""""""""""""""""""" +" easymotion +"""""""""""""""""""""""""""""""""""""""""""""""""" +" f{char} to move to {char} +"map f (easymotion-bd-f) +"nmap f (easymotion-overwin-f) + +" s{char}{char} to move to {char}{char} +nmap s (easymotion-overwin-f2) + +" Move to line +"map L (easymotion-bd-jk) +"nmap L (easymotion-overwin-line) + +" Move to word +map w (easymotion-bd-w) +nmap w (easymotion-overwin-w) +#+end_src + + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +Plug 'easymotion/vim-easymotion' +#+end_src + +*** COC(HDL-Checker가 시원찮음. 제거) +Language Server Protocol 연동가능해짐. + +Configuration은 :CocConfig를 쳐서 수정하거나 아래와 같은 경로에 파일을 위치시키면됨. +- Windows는 ~/AppData/local/nvim/coc-settings.json +- Linux는 ~/.config/nvim/coc-settings.json + +Configuration (hdlChecker는 윈도우에서 잘 동작안하는것 같음.) +Config 수정후 =:CocInstall= 을 통해 설치해야 적용됨. +#+begin_src json +{ + "languageserver": { + "hdlChecker": { + "command": "hdl_checker", + "args": [ + "--lsp" + ], + "rootPatterns": [".git/"], + "filetypes": [ + "vhdl", + "verilog", + "systemverilog" + ], + "trace.server": "verbose" + }, + "clangd": { + "command": "clangd", + "args": ["--background-index"], + "rootPatterns": ["compile_flags.txt", "compile_commands.json", ".vim/", ".git/", ".hg/"], + "filetypes": ["c", "cpp", "objc", "objcpp"] + }, + "rust": { + "command": "ra_lsp_server", + "filetypes": ["rust"], + "rootPatterns": ["Cargo.toml"] + } + } +} +#+end_src + + +PluginManager +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +"Plug 'neoclide/coc.nvim', {'branch': 'release'} +#+end_src + + +** Others +#+begin_src shell :tangle ~/.config/nvim/plugList.vim :mkdirp yes +call plug#end() +#+end_src + +*** Keybinding +Vim의 Yank가 아닌 클립보드 복사를 위해 =Ctrl+C= =Ctrl+N= 으로 설정하였다. VIM의 Visual Mode 단축키와 Tmux의 Prefix를 피하고자 N을 사용하였다. +또한 Neovim에서 제공하는 터미을 사용하기 위한 단축키 == 와 레지스터 a를 매크로로 자주 활용하기 때문에 바인딩하여 활용성올 높였다. +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +map "+ygv"*y +map "+p +map :cd %:p:h:term bash +map @a +#+end_src + +*** Others +#+begin_src shell :tangle ~/.config/nvim/init.vim :mkdirp yes +"""""""""""""""""""""""""""""""""""""""""""""""""" +" Visual-star (Search using * / in visual modde) +"""""""""""""""""""""""""""""""""""""""""""""""""" +xnoremap * :call VSetSearch('/')/=@/ +xnoremap # :call VSetSearch('?')?=@/ + +function! s:VSetSearch(cmdtype) + let temp = @s + norm! gv"sy + let @/ = '\V' . substitute(escape(@s, a:cmdtype.'\'), '\n', '\\n', 'g') + let @s = temp +endfunction +#+end_src +* PluginManager +** 설치 +*** Unix +#+begin_src shell +sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' +#+end_src +*** Windows +#+begin_src shell +iwr -useb https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim |` + ni "$(@($env:XDG_DATA_HOME, $env:LOCALAPPDATA)[$null -eq $env:XDG_DATA_HOME])/nvim-data/site/autoload/plug.vim" -Force +#+end_src diff --git a/.config/nvim/init.vim b/.config/nvim/init.vim new file mode 100644 index 0000000..d07d51d --- /dev/null +++ b/.config/nvim/init.vim @@ -0,0 +1,129 @@ +" Vim Configuration +set nocompatible "move using arrow key +"filtype plugin on +set number +set ai "auto indent +set si "smart indent +set cindent " c style indent + +set shiftwidth=4 "shift order 4step +set tabstop=4 "tab order 4step +set hlsearch "highlight empathize the word. + +set history=1000 "history store depth +set nobackup "no generate swp file +set noswapfile +set nowritebackup +set backupdir=~/.backup/ +set directory=~/.backup/ + +set ruler "display the cursor position +set title "display the title +set showmatch "display the matched bracket +"set nowrap "no auto linefeed +set wmnu "auto word finder + +set autochdir " auto change working directory + +set hidden "buffer hidden +set updatetime=300 " 300ms +set cmdheight=2 " Better display for messages +set shortmess+=c " don't give [ins-completion-menu] messages. +set signcolumn=yes " always show signcolumns + + +set backspace=indent,eol,start +set fencs=ucs-bom,utf-8,cp949 +set clipboard^=unnamed,unnamedplus + +set mouse=a + +" PluginManager in vimrc +runtime plugList.vim + +""""""""""""""""""""""""""""""""""""""""""""""""""" +" Colorscheme +""""""""""""""""""""""""""""""""""""""""""""""""""" +"""""""""""""" One Dark +"colorscheme onedark +"""""""""""""" Grub_box +"let g:gruvbox_contrast_dark='soft' +"set background=dark +"colorscheme gruvbox +"let g:airline_theme='gruvbox' +"""""""""""""" Paper Color +"set background=light +"colorscheme PaperColor +"let g:airline_theme='hybrid' +"let g:PaperColor_Theme_Options = { +" \ 'theme': { +" \ 'default.light': { +" \ 'transparent_background': 1 +" \ } +" \ } +" \ } +"""""""""""""" Molokai +"let g:molokai_original = 1 +"colorscheme molokai +"""""""""""""" Solarized 8 +"set background=light +"colorscheme solarized8_high +"let g:airline_theme='solarized8' +"""""""""""""" Challenger Deep +"colorscheme challenger_deep +colorscheme palenight + +""""""""""""""""""""""""""""""""""""""""""""""""""" +" Air-line +""""""""""""""""""""""""""""""""""""""""""""""""""" +let g:airline#extensions#tabline#enabled = 1 " turn on buffer list +set laststatus=2 " turn on bottom bar + + +"""""""""""""""""""""""""""""""""""""""""""""""""" +" Git Gutter +"""""""""""""""""""""""""""""""""""""""""""""""""" +let g:gitgutter_highlight_lines = 1 +map :GitGutterLineHighlightsToggle + + +"""""""""""""""""""""""""""""""""""""""""""""""""" +" easymotion +"""""""""""""""""""""""""""""""""""""""""""""""""" +" f{char} to move to {char} +"map f (easymotion-bd-f) +"nmap f (easymotion-overwin-f) + +" s{char}{char} to move to {char}{char} +nmap s (easymotion-overwin-f2) + +" Move to line +"map L (easymotion-bd-jk) +"nmap L (easymotion-overwin-line) + +" Move to word +map w (easymotion-bd-w) +nmap w (easymotion-overwin-w) + +map "+ygv"*y +map "+p +map :cd %:p:h:term bash +map @a +map "byaw/incNumber/b +cw"bp + +"""""""""""""""""""""""""""""""""""""""""""""""""" +" Visual-star (Search using * / in visual modde) +"""""""""""""""""""""""""""""""""""""""""""""""""" +xnoremap * :call VSetSearch('/')/=@/ +xnoremap # :call VSetSearch('?')?=@/ + +function! s:VSetSearch(cmdtype) + let temp = @s + norm! gv"sy + let @/ = '\V' . substitute(escape(@s, a:cmdtype.'\'), '\n', '\\n', 'g') + let @s = temp +endfunction + + + diff --git a/.config/nvim/plugList.vim b/.config/nvim/plugList.vim new file mode 100644 index 0000000..f962cd3 --- /dev/null +++ b/.config/nvim/plugList.vim @@ -0,0 +1,25 @@ +call plug#begin('~/.vim/plugged') +Plug 'lambdalisue/suda.vim' +" color scheme +"Plug 'morhetz/gruvbox' +"Plug 'lifepillar/vim-solarized8' +"Plug 'NLKNguyen/papercolor-theme' +"Plug 'tomasr/molokai' +"Plug 'joshdick/onedark.vim' +"Plug 'challenger-deep-theme/vim', { 'as': 'challenger-deep' } +Plug 'drewtempelmeyer/palenight.vim' +Plug 'vim-airline/vim-airline' +Plug 'vim-airline/vim-airline-themes' +Plug 'tpope/vim-unimpaired' +Plug 'tpope/vim-commentary' +Plug 'tpope/vim-fugitive' " git wrapper +Plug 'airblade/vim-gitgutter' " git modified view; +Plug 'tpope/vim-surround' +Plug 'easymotion/vim-easymotion' + +"Plug 'neoclide/coc.nvim', {'branch': 'release'} + + + +call plug#end() + diff --git a/.config/xmobar/scripts/battery_icon.sh b/.config/xmobar/scripts/battery_icon.sh new file mode 100755 index 0000000..1764f5b --- /dev/null +++ b/.config/xmobar/scripts/battery_icon.sh @@ -0,0 +1,12 @@ +#!/usr/bin/env bash + +STATUS=`cat /sys/class/power_supply/BAT0/status` + +if [ $STATUS = "Charging" ]; then + echo "" +elif [ $STATUS = "Discharging" ]; then + echo "" +else + echo "" +fi + diff --git a/.config/xmobar/trayer-padding-icon.sh b/.config/xmobar/trayer-padding-icon.sh new file mode 100755 index 0000000..adee04a --- /dev/null +++ b/.config/xmobar/trayer-padding-icon.sh @@ -0,0 +1,48 @@ +#!/bin/sh +# Copied from https://github.com/jaor/xmobar/issues/239#issuecomment-233206552 +# Detects the width of running trayer-srg window (xprop name 'panel') +# and creates an XPM icon of that width, 1px height, and transparent. +# Outputs an -tag for use in xmobar to display the generated +# XPM icon. +# +# Run script from xmobar: +# `Run Com "/where/ever/trayer-padding-icon.sh" [] "trayerpad" 10` +# and use `%trayerpad%` in your template. + + +# Function to create a transparent Wx1 px XPM icon +create_xpm_icon () { + timestamp=$(date) + pixels=$(for i in `seq $1`; do echo -n "."; done) + + cat << EOF > "$2" +/* XPM * +static char * trayer_pad_xpm[] = { +/* This XPM icon is used for padding in xmobar to */ +/* leave room for trayer-srg. It is dynamically */ +/* updated by by trayer-padding-icon.sh which is run */ +/* by xmobar. */ +/* Created: ${timestamp} */ +/* */ +"$1 1 1 1", +/* Colors (none: transparent) */ +". c none", +/* Pixels */ +"$pixels" +}; +EOF +} + +# Width of the trayer window +width=$(xprop -name panel | grep 'program specified minimum size' | cut -d ' ' -f 5) + +# Icon file name +iconfile="/tmp/trayer-padding-${width}px.xpm" + +# If the desired icon does not exist create it +if [ ! -f $iconfile ]; then + create_xpm_icon $width $iconfile +fi + +# Output the icon tag for xmobar +echo "" diff --git a/.config/xmobar/xmobarrc_desktop_fhd b/.config/xmobar/xmobarrc_desktop_fhd new file mode 100644 index 0000000..9dd2a93 --- /dev/null +++ b/.config/xmobar/xmobarrc_desktop_fhd @@ -0,0 +1,43 @@ +-- http://projects.haskell.org/xmobar/ +-- install xmobar with these flags: --flags="with_alsa" --flags="with_mpd" --flags="with_xft" OR --flags="all_extensions" +-- you can find weather location codes here: http://weather.noaa.gov/index.html + +Config { font = "xft:NanumGothic:weight=bold:pixelsize=11:antialias=true:hinting=true" + , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true" + , "xft:FontAwesome:pixelsize=12" + ] + , bgColor = "#282c34" + , fgColor = "#ff6c6b" + , position = Static { xpos = 2560 , ypos = 0, width = 1920, height = 24 } + , lowerOnStart = True + , hideOnStart = False + , allDesktops = True + , persistent = True + , iconRoot = "/home/jaeus/.xmonad/" -- default: "." + , commands = [ + -- Time and date + Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50 + -- Network up and down + , Run Network "enp10s0" ["-t", "\xf0ab kb \xf0aa kb"] 20 + -- Cpu usage in percent + , Run Cpu ["-t", "\xf108 cpu: (%)","-H","50","--high","red"] 20 + -- Ram used number and percent + , Run Memory ["-t", "\xf233 mem: M (%)"] 20 + -- Disk space free + , Run DiskU [("/", "\xf0c7 hdd: free")] [] 60 + -- Runs custom script to check for pacman updates. + -- This script is in my dotfiles repo in .local/bin. + , Run Com "~/.local/bin/pacupdate" [] "pacupdate" 36000 + -- Runs a standard shell command 'uname -r' to get kernel version + , Run Com "uname" ["-r"] "" 3600 + -- Prints out the left side items such as workspaces, layout, etc. + -- The workspaces are 'clickable' in my configs. + , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20 + -- Prints out the left side items such as workspaces, layout, etc. + -- The workspaces are 'clickable' in my configs. + , Run UnsafeStdinReader + ] + , sepChar = "%" + , alignSep = "}{" + , template = " | %UnsafeStdinReader% }{ |  %uname% | %cpu% | %memory% | %disku% | %enp10s0% | %date% " + } diff --git a/.config/xmobar/xmobarrc_desktop_qhd b/.config/xmobar/xmobarrc_desktop_qhd new file mode 100644 index 0000000..4dd448a --- /dev/null +++ b/.config/xmobar/xmobarrc_desktop_qhd @@ -0,0 +1,52 @@ +-- http://projects.haskell.org/xmobar/ +-- install xmobar with these flags: --flags="with_alsa" --flags="with_mpd" --flags="with_xft" OR --flags="all_extensions" +-- you can find weather location codes here: http://weather.noaa.gov/index.html + +Config { -- font = "xft:Noto Sans CJK KR:weight=bold:pixelsize=14:antialias=true:hinting=true" + -- , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=14:antialias=true:hinting=true" + -- , "xft:FontAwesome:pixelsize=16" + -- ] + --font = "xft:DejaVu Sans:size=9.5:antialias=true" + font = "xft:NanumGothic:weight=bold:pixelsize=14:antialias=true:hinting=true" + , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true" + , "xft:FontAwesome:pixelsize=12" + ] + , bgColor = "#282c34" + , fgColor = "#ff6c6b" + , position = Static { xpos = 0 , ypos = 0, width = 2560, height = 36 } + , lowerOnStart = True + , hideOnStart = False + , allDesktops = True + , persistent = True + , iconRoot = "/home/jaeus/.xmonad/" -- default: "." + , commands = [ + Run Date " %A %B %d  %H:%M" "date" 50 + , Run BatteryP ["BAT0"] ["-t", " ()", "-S", "True" + ,"-L","20","-H","70" + ,"-l","#ff3333", + "--normal","#f0c674", + "--high", "#99cc99" ] 50 + , Run Com "bash" ["/home/jaeus/.config/xmobar/scripts/battery_icon.sh"] "batteryIcon" 50 + -- Time and date + -- Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50 + -- Network up and down + , Run Network "enp10s0" ["-t", "\xf0ab kb \xf0aa kb"] 20 + -- Cpu usage in percent + , Run Cpu ["-t", "\xf108 (%)","-H","50","--high","red"] 20 + -- Ram used number and percent + , Run Memory ["-t", "\xf233 M (%)"] 20 + -- Disk space free + , Run DiskU [("/", "\xf0c7 free")] [] 60 + -- Runs a standard shell command 'uname -r' to get kernel version + , Run Com "uname" ["-r"] "" 3600 + -- Prints out the left side items such as workspaces, layout, etc. + -- The workspaces are 'clickable' in my configs. + , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20 + -- Prints out the left side items such as workspaces, layout, etc. + -- The workspaces are 'clickable' in my configs. + , Run UnsafeStdinReader + ] + , sepChar = "%" + , alignSep = "}{" + , template = " | %UnsafeStdinReader% }{ |  %uname% | %cpu% | %memory% | %disku% | %enp10s0% | %date% |%trayerpad%" + } \ No newline at end of file diff --git a/.config/xmobar/xmobarrc_labtop_fhd b/.config/xmobar/xmobarrc_labtop_fhd new file mode 100644 index 0000000..559acaf --- /dev/null +++ b/.config/xmobar/xmobarrc_labtop_fhd @@ -0,0 +1,43 @@ +Config { font = "xft:NanumGothic:weight=bold:pixelsize=11:antialias=true:hinting=true" + , additionalFonts = [ "xft:Mononoki Nerd Font:pixelsize=11:antialias=true:hinting=true" + , "xft:FontAwesome:pixelsize=12" + ] + , bgColor = "#282c34" + , fgColor = "#ff6c6b" + , position = Static { xpos = 0 , ypos = 0, width = 1920, height = 24 } + , lowerOnStart = True + , hideOnStart = False + , allDesktops = True + , persistent = True + , iconRoot = "/home/jaeus/.xmonad/" -- default: "." + , commands = [ + Run Date " %A %B %d  %H:%M" "date" 50 + , Run BatteryP ["BAT0"] ["-t", " ()", "-S", "True" + ,"-L","20","-H","70" + ,"-l","#ff3333", + "--normal","#f0c674", + "--high", "#99cc99" ] 50 + , Run Com "bash" ["/home/jaeus/.config/xmobar/scripts/battery_icon.sh"] "batteryIcon" 50 + -- Time and date + -- Run Date "\xf133 %b %d %Y - (%H:%M) " "date" 50 + -- Network up and down + , Run Network "wlp3s0" ["-t", "\xf0ab kb \xf0aa kb"] 20 + -- Cpu usage in percent + , Run Cpu ["-t", "\xf108 (%)","-H","50","--high","red"] 20 + -- Ram used number and percent + , Run Memory ["-t", "\xf233 M (%)"] 20 + -- Disk space free + , Run DiskU [("/", "\xf0c7 free")] [] 60 + -- Runs a standard shell command 'uname -r' to get kernel version + , Run Com "uname" ["-r"] "" 3600 + -- Prints out the left side items such as workspaces, layout, etc. + -- The workspaces are 'clickable' in my configs. + , Run Com "/bin/sh" [ "-c", "/home/jaeus/.config/xmobar/trayer-padding-icon.sh" ] "trayerpad" 20 + -- Prints out the left side items such as workspaces, layout, etc. + -- The workspaces are 'clickable' in my configs. + , Run UnsafeStdinReader + ] + , sepChar = "%" + , alignSep = "}{" + , template = " | %UnsafeStdinReader% }{ |  %uname% | %cpu% | %memory% | %disku% | %wlp3s0% | %date% | %batteryIcon% %battery% |%trayerpad%" + } diff --git a/.gitconfig b/.gitconfig new file mode 100644 index 0000000..1ec5f9a --- /dev/null +++ b/.gitconfig @@ -0,0 +1,3 @@ +[user] + name = JaeYoo-Im + email = cpu3792@gmail.com diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e370f25 --- /dev/null +++ b/.gitignore @@ -0,0 +1,14 @@ +.ssh/* +!.ssh/config + +.xmonad/* +!.xmonad/xmonad.org +!.xmonad/picom.conf +!.xmonad/haskell_20.xpm + +.emacs.d/* +!.emacs.d/desktop.org +!.emacs.d/emacs.org +!.emacs.d/init.el +!.emacs.d/exwm/ + diff --git a/.julia/startup.jl b/.julia/startup.jl new file mode 100644 index 0000000..534fd70 --- /dev/null +++ b/.julia/startup.jl @@ -0,0 +1,3 @@ +#using Plots +#using PlotThemes +#theme(:juno) diff --git a/.minttyrc b/.minttyrc new file mode 100644 index 0000000..decc7fb --- /dev/null +++ b/.minttyrc @@ -0,0 +1,36 @@ +# Challenger Deep +ForegroundColour=161,176,184 +BackgroundColour=41,45,62 +Black=37,37,37 +BoldBlack=37,37,37 +Red=255,83,112 +BoldRed=255,83,112 +Green=195,232,141 +BoldGreen=195,232,141 +Yellow=255,203,107 +BoldYellow=255,203,107 +Blue=130,170,255 +BoldBlue=130,170,255 +Magenta=199,146,234 +BoldMagenta=199,146,234g +Cyan=137,221,255 +BoldCyan=137,221,255 +White=245,245,245 +BoldWhite=245,245,245 + +Font=Fira Code Retina +FontHeight=12 +Term=xterm-256color +Locale=ko_KR +Charset=UTF-8 +FontSmoothing=default +AllowBlinking=no +BoldAsFont=no +CursorType=block +CursorBlinks=yes +BellTaskbar=no +BellType=0 +BellFlash=no +FontWeight=400 +FontIsBold=no +Transparency=medium diff --git a/.ssh/config b/.ssh/config new file mode 100644 index 0000000..26cf344 --- /dev/null +++ b/.ssh/config @@ -0,0 +1,28 @@ +################################################################### +Host ju-server + User jaeus + # NOTE : Do not commit for security + Hostname 127.0.0.1 + Port 22 +# ProxyCommand ssh -W %h:%p odroid +Host github.com + User git +# ProxyCommand ssh -W %h:%p odroid +################################################################### +# Proxy Server +Host odroid + Hostname 192.168.1.168 + User jaeus + +Host bsat + User bsat + Hostname 192.168.1.31 +Host zynq + User jaeus + hostname 192.168.1.145 +Host lora_1 + User root + hostname 192.168.144.10 +Host lora_2 + User root + hostname 192.168.144.11 diff --git a/.tmux.conf b/.tmux.conf new file mode 100644 index 0000000..59b06ea --- /dev/null +++ b/.tmux.conf @@ -0,0 +1,25 @@ +set -g default-terminal "screen-256color" +set -g mouse on + +# utf8 is on +# set -g utf8 on +# set -g status-utf8 on + +# address vim mode switching delay (http://superuser.com/a/252717/65504) +set -s escape-time 0 + +# scrollback buffer size increase +set -g history-limit 100000 + +# List of plugins +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' +set -g @plugin 'tmux-plugins/tmux-yank' + +# Other examples: +# set -g @plugin 'github_username/plugin_name' +# set -g @plugin 'git@github.com/user/plugin' +# set -g @plugin 'git@bitbucket.com/user/plugin' + +# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) +run -b '~/.tmux/plugins/tpm/tpm' diff --git a/.xmonad/haskell_20.xpm b/.xmonad/haskell_20.xpm new file mode 100644 index 0000000..9e11ae2 --- /dev/null +++ b/.xmonad/haskell_20.xpm @@ -0,0 +1,25 @@ +/* XPM */ +static char * haskell_20_xpm[] = { +"20 20 2 1", +" c None", +". c #FFFFFF", +" ", +" ", +" ", +".... .... ", +" .... ... ", +" ... .... ", +" .... .... ", +" .... ... ........", +" ... .... .......", +" .... .... ", +" .... .... ", +" ... ...... .....", +" .... ....... ....", +" .... .... ... ", +" ... .... .... ", +" .... ... .... ", +".... .... ... ", +" ", +" ", +" "}; diff --git a/.xmonad/picom.conf b/.xmonad/picom.conf new file mode 100644 index 0000000..0291771 --- /dev/null +++ b/.xmonad/picom.conf @@ -0,0 +1,443 @@ +################################# +# Shadows # +################################# + + +# Enabled client-side shadows on windows. Note desktop windows +# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, +# unless explicitly requested using the wintypes option. +# +# shadow = false +shadow = true; + +# The blur radius for shadows, in pixels. (defaults to 12) +# shadow-radius = 12 +shadow-radius = 7; + +# The opacity of shadows. (0.0 - 1.0, defaults to 0.75) +# shadow-opacity = .75 + +# The left offset for shadows, in pixels. (defaults to -15) +# shadow-offset-x = -15 +shadow-offset-x = -7; + +# The top offset for shadows, in pixels. (defaults to -15) +# shadow-offset-y = -15 +shadow-offset-y = -7; + +# Avoid drawing shadows on dock/panel windows. This option is deprecated, +# you should use the *wintypes* option in your config file instead. +# +# no-dock-shadow = false + +# Don't draw shadows on drag-and-drop windows. This option is deprecated, +# you should use the *wintypes* option in your config file instead. +# +# no-dnd-shadow = false + +# Red color value of shadow (0.0 - 1.0, defaults to 0). +# shadow-red = 0 + +# Green color value of shadow (0.0 - 1.0, defaults to 0). +# shadow-green = 0 + +# Blue color value of shadow (0.0 - 1.0, defaults to 0). +# shadow-blue = 0 + +# Do not paint shadows on shaped windows. Note shaped windows +# here means windows setting its shape through X Shape extension. +# Those using ARGB background is beyond our control. +# Deprecated, use +# shadow-exclude = 'bounding_shaped' +# or +# shadow-exclude = 'bounding_shaped && !rounded_corners' +# instead. +# +# shadow-ignore-shaped = '' + +# Specify a list of conditions of windows that should have no shadow. +# +# examples: +# shadow-exclude = "n:e:Notification"; +# +# shadow-exclude = [] +shadow-exclude = [ + "name = 'Notification'", + "class_g ?= 'Notify-osd'", + "name = 'Plank'", + "name = 'Docky'", + "name = 'Kupfer'", + "name = 'xfce4-notifyd'", + "name *= 'VLC'", + "name *= 'compton'", + "name *= 'Chromium'", + "name *= 'Chrome'", + "class_g = 'Firefox' && argb", + "class_g = 'Conky'", + "class_g = 'Kupfer'", + "class_g = 'Synapse'", + "class_g ?= 'Notify-osd'", + "class_g ?= 'Cairo-dock'", + "class_g = 'Cairo-clock'", + "class_g ?= 'Xfce4-notifyd'", + "class_g ?= 'Xfce4-power-manager'", + "_GTK_FRAME_EXTENTS@:c", +]; + +# Add this one too for ... + # "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" +# Add this one above to the list to have no shadow in Openbox menu + # "! name~=''", + +# Specify a X geometry that describes the region in which shadow should not +# be painted in, such as a dock window region. Use +# shadow-exclude-reg = "x10+0+0" +# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on. +# +# shadow-exclude-reg = "" + +# Crop shadow of a window fully on a particular Xinerama screen to the screen. +# xinerama-shadow-crop = false + + +################################# +# Fading # +################################# + + +# Fade windows in/out when opening/closing and when opacity changes, +# unless no-fading-openclose is used. +# fading = false +fading = false + +# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028) +# fade-in-step = 0.028 +fade-in-step = 0.03; + +# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03) +# fade-out-step = 0.03 +fade-out-step = 0.03; + +# The time between steps in fade step, in milliseconds. (> 0, defaults to 10) +# fade-delta = 10 + +# Specify a list of conditions of windows that should not be faded. +# fade-exclude = [] + +# Do not fade on window open/close. +# no-fading-openclose = false + +# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc. +# no-fading-destroyed-argb = false + + +################################# +# Transparency / Opacity # +################################# + + +# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0) +# inactive-opacity = 1 +inactive-opacity = 1; + +# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default) +# frame-opacity = 1.0 +frame-opacity = 1; + +# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0) +# menu-opacity = 1.0 + +# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows. +# inactive-opacity-override = true +inactive-opacity-override = false; + +# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0) +# active-opacity = 1.0 + +# Dim inactive windows. (0.0 - 1.0, defaults to 0.0) +# inactive-dim = 0.0 + +# Specify a list of conditions of windows that should always be considered focused. +# focus-exclude = [] +focus-exclude = [ "class_g = 'Cairo-clock'" ]; + +# Use fixed inactive dim value, instead of adjusting according to window opacity. +# inactive-dim-fixed = 1.0 + +# Specify a list of opacity rules, in the format `PERCENT:PATTERN`, +# like `50:name *= "Firefox"`. picom-trans is recommended over this. +# Note we don't make any guarantee about possible conflicts with other +# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows. +# example: +# opacity-rule = [ "80:class_g = 'URxvt'" ]; +# +opacity-rule = [ "80:class_g = 'Alacritty'"]; + + +################################# +# Background-Blurring # +################################# + + +# Parameters for background blurring, see the *BLUR* section for more information. +# blur-method = +# blur-size = 12 +# +# blur-deviation = false + +# Blur background of semi-transparent / ARGB windows. +# Bad in performance, with driver-dependent behavior. +# The name of the switch may change without prior notifications. +# +# blur-background = false + +# Blur background of windows when the window frame is not opaque. +# Implies: +# blur-background +# Bad in performance, with driver-dependent behavior. The name may change. +# +# blur-background-frame = false + + +# Use fixed blur strength rather than adjusting according to window opacity. +# blur-background-fixed = false + + +# Specify the blur convolution kernel, with the following format: +# example: +# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; +# +# blur-kern = '' +blur-kern = "3x3box"; + + +# Exclude conditions for background blur. +# blur-background-exclude = [] +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; + +################################# +# General Settings # +################################# + +# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers. +# daemon = false + +# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`. +# `xrender` is the default one. +# +# backend = 'glx' +backend = "xrender"; + +# Enable/disable VSync. Set to false for transparency in VirtualBox. +vsync = false +#vsync = true + +# Enable remote control via D-Bus. See the *D-BUS API* section below for more details. +# dbus = false + +# Try to detect WM windows (a non-override-redirect window with no +# child that has 'WM_STATE') and mark them as active. +# +# mark-wmwin-focused = false +mark-wmwin-focused = true; + +# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused. +# mark-ovredir-focused = false +mark-ovredir-focused = true; + +# Try to detect windows with rounded corners and don't consider them +# shaped windows. The accuracy is not very high, unfortunately. +# +# detect-rounded-corners = false +detect-rounded-corners = true; + +# Detect '_NET_WM_OPACITY' on client windows, useful for window managers +# not passing '_NET_WM_OPACITY' of client windows to frame windows. +# +# detect-client-opacity = false +detect-client-opacity = true; + +# Specify refresh rate of the screen. If not specified or 0, picom will +# try detecting this with X RandR extension. +# +# refresh-rate = 60 +refresh-rate = 0 + +# Limit picom to repaint at most once every 1 / 'refresh_rate' second to +# boost performance. This should not be used with +# vsync drm/opengl/opengl-oml +# as they essentially does sw-opti's job already, +# unless you wish to specify a lower refresh rate than the actual value. +# +# sw-opti = + +# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window, +# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy, +# provided that the WM supports it. +# +# use-ewmh-active-win = false + +# Unredirect all windows if a full-screen opaque window is detected, +# to maximize performance for full-screen windows. Known to cause flickering +# when redirecting/unredirecting windows. +# +# unredir-if-possible = false + +# Delay before unredirecting the window, in milliseconds. Defaults to 0. +# unredir-if-possible-delay = 0 + +# Conditions of windows that shouldn't be considered full-screen for unredirecting screen. +# unredir-if-possible-exclude = [] + +# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows +# in the same group focused at the same time. +# +# detect-transient = false +detect-transient = true + +# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same +# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if +# detect-transient is enabled, too. +# +# detect-client-leader = false +detect-client-leader = true + +# Resize damaged region by a specific number of pixels. +# A positive value enlarges it while a negative one shrinks it. +# If the value is positive, those additional pixels will not be actually painted +# to screen, only used in blur calculation, and such. (Due to technical limitations, +# with use-damage, those pixels will still be incorrectly painted to screen.) +# Primarily used to fix the line corruption issues of blur, +# in which case you should use the blur radius value here +# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`, +# with a 5x5 one you use `--resize-damage 2`, and so on). +# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly. +# +# resize-damage = 1 + +# Specify a list of conditions of windows that should be painted with inverted color. +# Resource-hogging, and is not well tested. +# +# invert-color-include = [] + +# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer. +# Might cause incorrect opacity when rendering transparent content (but never +# practically happened) and may not work with blur-background. +# My tests show a 15% performance boost. Recommended. +# +# glx-no-stencil = false + +# GLX backend: Avoid rebinding pixmap on window damage. +# Probably could improve performance on rapid window content changes, +# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.). +# Recommended if it works. +# +# glx-no-rebind-pixmap = false + +# Disable the use of damage information. +# This cause the whole screen to be redrawn everytime, instead of the part of the screen +# has actually changed. Potentially degrades the performance, but might fix some artifacts. +# The opposing option is use-damage +# +# no-use-damage = false +use-damage = true + +# Use X Sync fence to sync clients' draw calls, to make sure all draw +# calls are finished before picom starts drawing. Needed on nvidia-drivers +# with GLX backend for some users. +# +# xrender-sync-fence = false + +# GLX backend: Use specified GLSL fragment shader for rendering window contents. +# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl` +# in the source tree for examples. +# +# glx-fshader-win = '' + +# Force all windows to be painted with blending. Useful if you +# have a glx-fshader-win that could turn opaque pixels transparent. +# +# force-win-blend = false + +# Do not use EWMH to detect fullscreen windows. +# Reverts to checking if a window is fullscreen based only on its size and coordinates. +# +# no-ewmh-fullscreen = false + +# Dimming bright windows so their brightness doesn't exceed this set value. +# Brightness of a window is estimated by averaging all pixels in the window, +# so this could comes with a performance hit. +# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0) +# +# max-brightness = 1.0 + +# Make transparent windows clip other windows like non-transparent windows do, +# instead of blending on top of them. +# +# transparent-clipping = false + +# Set the log level. Possible values are: +# "trace", "debug", "info", "warn", "error" +# in increasing level of importance. Case doesn't matter. +# If using the "TRACE" log level, it's better to log into a file +# using *--log-file*, since it can generate a huge stream of logs. +# +# log-level = "debug" +log-level = "warn"; + +# Set the log file. +# If *--log-file* is never specified, logs will be written to stderr. +# Otherwise, logs will to written to the given file, though some of the early +# logs might still be written to the stderr. +# When setting this option from the config file, it is recommended to use an absolute path. +# +# log-file = '~/.config/compton.log' + +# Show all X errors (for debugging) +# show-all-xerrors = false + +# Write process ID to a file. +# write-pid-path = '/path/to/your/log/file' + +# Window type settings +# +# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard: +# "unknown", "desktop", "dock", "toolbar", "menu", "utility", +# "splash", "dialog", "normal", "dropdown_menu", "popup_menu", +# "tooltip", "notification", "combo", and "dnd". +# +# Following per window-type options are available: :: +# +# fade, shadow::: +# Controls window-type-specific shadow and fade settings. +# +# opacity::: +# Controls default opacity of the window type. +# +# focus::: +# Controls whether the window of this type is to be always considered focused. +# (By default, all window types except "normal" and "dialog" has this on.) +# +# full-shadow::: +# Controls whether shadow is drawn under the parts of the window that you +# normally won't be able to see. Useful when the window has parts of it +# transparent, and you want shadows in those areas. +# +# redir-ignore::: +# Controls whether this type of windows should cause screen to become +# redirected again after been unredirected. If you have unredir-if-possible +# set, and doesn't want certain window to cause unnecessary screen redirection, +# you can set this to `true`. +# +wintypes: +{ + tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; }; + dock = { shadow = false; } + dnd = { shadow = false; } + popup_menu = { opacity = 0.9; } + dropdown_menu = { opacity = 0.9; } +}; diff --git a/.xmonad/xmonad.org b/.xmonad/xmonad.org new file mode 100644 index 0000000..f234f3f --- /dev/null +++ b/.xmonad/xmonad.org @@ -0,0 +1,566 @@ +#+TITLE: Xmonad + +* Xmonad +** Import +#+begin_src haskell :tangle ./xmonad.hs + -- Base + import XMonad + import System.Directory + import System.IO (hPutStrLn) + import System.Exit (exitSuccess) + import qualified XMonad.StackSet as W + + -- Actions + import XMonad.Actions.CopyWindow (kill1) + import XMonad.Actions.CycleWS (Direction1D(..), moveTo, shiftTo, WSType(..), nextScreen, prevScreen) + import XMonad.Actions.GridSelect + import XMonad.Actions.MouseResize + import XMonad.Actions.Promote + import XMonad.Actions.RotSlaves (rotSlavesDown, rotAllDown) + import XMonad.Actions.WindowGo (runOrRaise) + import XMonad.Actions.WithAll (sinkAll, killAll) + import qualified XMonad.Actions.Search as S + + -- Data + import Data.Char (isSpace, toUpper) + import Data.Maybe (fromJust) + import Data.Monoid + import Data.Maybe (isJust) + import Data.Tree + import qualified Data.Map as M + + -- Hooks + import XMonad.Hooks.DynamicLog (dynamicLogWithPP, wrap, xmobarPP, xmobarColor, shorten, PP(..)) + import XMonad.Hooks.EwmhDesktops -- for some fullscreen events, also for xcomposite in obs. + import XMonad.Hooks.ManageDocks (avoidStruts, docksEventHook, manageDocks, ToggleStruts(..)) + import XMonad.Hooks.ManageHelpers (isFullscreen, doFullFloat) + import XMonad.Hooks.ServerMode + import XMonad.Hooks.SetWMName + import XMonad.Hooks.WorkspaceHistory + + -- Layouts + import XMonad.Layout.Accordion + import XMonad.Layout.GridVariants (Grid(Grid)) + import XMonad.Layout.SimplestFloat + import XMonad.Layout.Spiral + import XMonad.Layout.ResizableTile + import XMonad.Layout.Tabbed + import XMonad.Layout.ThreeColumns + + -- Layouts modifiers + import XMonad.Layout.LayoutModifier + import XMonad.Layout.LimitWindows (limitWindows, increaseLimit, decreaseLimit) + import XMonad.Layout.Magnifier + import XMonad.Layout.MultiToggle (mkToggle, single, EOT(EOT), (??)) + import XMonad.Layout.MultiToggle.Instances (StdTransformers(NBFULL, MIRROR, NOBORDERS)) + import XMonad.Layout.NoBorders + import XMonad.Layout.Renamed + import XMonad.Layout.ShowWName + import XMonad.Layout.Simplest + import XMonad.Layout.Spacing + import XMonad.Layout.SubLayouts + import XMonad.Layout.WindowArranger (windowArrange, WindowArrangerMsg(..)) + import qualified XMonad.Layout.ToggleLayouts as T (toggleLayouts, ToggleLayout(Toggle)) + import qualified XMonad.Layout.MultiToggle as MT (Toggle(..)) + + -- Utilities + import XMonad.Util.Dmenu + import XMonad.Util.EZConfig (additionalKeysP) + import XMonad.Util.NamedScratchpad + import XMonad.Util.Run (runProcessWithInput, safeSpawn, spawnPipe) + import XMonad.Util.SpawnOnce +#+end_src +** Gobal Variable +#+begin_src haskell :tangle ./xmonad.hs + myFont :: String + myFont = "xft:NanumGothic:regular:size=9:antialias=true:hinting=true" + + myEmojiFont :: String + myEmojiFont = "xft:Noto Fonts Emoji:regular:size=9:antialias=true:hinting=true" + + myModMask :: KeyMask + myModMask = mod4Mask -- Sets modkey to super/windows key + + myTerminal :: String + myTerminal = "alacritty" -- Sets default terminal + + myBrowser :: String + myBrowser = "qutebrowser " -- Sets qutebrowser as browser + + myEmacs :: String + myEmacs = "emacsclient -c -a 'emacs' " -- Makes emacs keybindings easier to type + + myEditor :: String + myEditor = "emacsclient -c -a 'emacs' " -- Sets emacs as editor + -- myEditor = myTerminal ++ " -e vim " -- Sets vim as editor + + myBorderWidth :: Dimension + myBorderWidth = 2 -- Sets border width for windows + + myNormColor :: String + myNormColor = "#282c34" -- Border color of normal windows + + myFocusColor :: String + myFocusColor = "#46d9ff" -- Border color of focused windows + + altMask :: KeyMask + altMask = mod1Mask -- Setting this for use in xprompts + + windowCount :: X (Maybe String) + windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace . W.current . windowset +#+end_src +** StartupHook +#+begin_src haskell :tangle ./xmonad.hs + myStartupHook :: X () + myStartupHook = do + --spawnOnce "xrandr --output DP-4 --primary --mode 2560x1440 --pos 0x0 --rotate normal --output HDMI-0 --mode 1920x1080 --pos 2560x0 --rotate normal" + spawnOnce "nm-applet &" + spawnOnce "picom -b --config ~/.xmonad/picom.conf &" + --spawnOnce "picom --experimental-backends -b --config ~/.xmonad/picom.conf &" + spawnOnce "dwall -s firewatch &" + spawnOnce "fcitx &" + --spawnOnce "seafile-applet &" + spawnOnce "seadrive-gui &" + spawnOnce "blueberry-tray &" + spawnOnce "volumeicon &" + --spawnOnce "enpass" + spawnOnce "green-tunnel -s &" + spawnOnce "trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 0 --transparent true --alpha 0 --tint 0x282c34 --height 24 &" + spawnOnce "/usr/bin/emacs --daemon &" + -- spawnOnce "/usr/bin/emacs --daemon &" -- emacs daemon for the emacsclient + -- spawnOnce "kak -d -s mysession &" -- kakoune daemon for better performance + -- spawnOnce "urxvtd -q -o -f &" -- urxvt daemon for better performance + + --spawnOnce "xargs xwallpaper --stretch < ~/.xwallpaper" -- set last saved with xwallpaper + -- spawnOnce "/bin/ls ~/wallpapers | shuf -n 1 | xargs xwallpaper --stretch" -- set random xwallpaper + -- spawnOnce "~/.fehbg &" -- set last saved feh wallpaper + -- spawnOnce "feh --randomize --bg-fill ~/wallpapers/*" -- feh set random wallpaper + -- spawnOnce "nitrogen --restore &" -- if you prefer nitrogen to feh + --setWMName "LG3D" + +#+end_src +** Layout +#+begin_src haskell :tangle ./xmonad.hs + + myColorizer :: Window -> Bool -> X (String, String) + myColorizer = colorRangeFromClassName + (0x28,0x2c,0x34) -- lowest inactive bg + (0x28,0x2c,0x34) -- highest inactive bg + (0xc7,0x92,0xea) -- active bg + (0xc0,0xa7,0x9a) -- inactive fg + (0x28,0x2c,0x34) -- active fg + + -- gridSelect menu layout + mygridConfig :: p -> GSConfig Window + mygridConfig colorizer = (buildDefaultGSConfig myColorizer) + { gs_cellheight = 40 + , gs_cellwidth = 200 + , gs_cellpadding = 6 + , gs_originFractX = 0.5 + , gs_originFractY = 0.5 + , gs_font = myFont + } + + spawnSelected' :: [(String, String)] -> X () + spawnSelected' lst = gridselect conf lst >>= flip whenJust spawn + where conf = def + { gs_cellheight = 40 + , gs_cellwidth = 200 + , gs_cellpadding = 6 + , gs_originFractX = 0.5 + , gs_originFractY = 0.5 + , gs_font = myFont + } + + myAppGrid = [ --("Audacity", "audacity") + --, ("Deadbeef", "deadbeef") + ("Vivaldi", "vivaldi-stable") + , ("Emacs", "emacsclient -c -a emacs") + , ("Firefox", "firefox") + --, ("Geany", "geany") + --, ("Geary", "geary") + , ("Gimp", "gimp") + , ("Kdenlive", "kdenlive") + , ("LibreOffice Impress", "loimpress") + , ("LibreOffice Writer", "lowriter") + --, ("OBS", "obs") + , ("PCManFM", "pcmanfm") + ] + + myScratchPads :: [NamedScratchpad] + myScratchPads = [ NS "terminal" spawnTerm findTerm manageTerm + , NS "mocp" spawnMocp findMocp manageMocp + , NS "calculator" spawnCalc findCalc manageCalc + ] + where + spawnTerm = myTerminal ++ " -t scratchpad" + findTerm = title =? "scratchpad" + manageTerm = customFloating $ W.RationalRect l t w h + where + h = 0.9 + w = 0.9 + t = 0.95 -h + l = 0.95 -w + spawnMocp = myTerminal ++ " -t mocp -e mocp" + findMocp = title =? "mocp" + manageMocp = customFloating $ W.RationalRect l t w h + where + h = 0.9 + w = 0.9 + t = 0.95 -h + l = 0.95 -w + spawnCalc = "qalculate-gtk" + findCalc = className =? "Qalculate-gtk" + manageCalc = customFloating $ W.RationalRect l t w h + where + h = 0.5 + w = 0.4 + t = 0.75 -h + l = 0.70 -w + + --Makes setting the spacingRaw simpler to write. The spacingRaw module adds a configurable amount of space around windows. + mySpacing :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a + mySpacing i = spacingRaw False (Border i i i i) True (Border i i i i) True + + -- Below is a variation of the above except no borders are applied + -- if fewer than two windows. So a single window has no gaps. + mySpacing' :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a + mySpacing' i = spacingRaw True (Border i i i i) True (Border i i i i) True + + -- Defining a bunch of layouts, many that I don't use. + -- limitWindows n sets maximum number of windows displayed for layout. + -- mySpacing n sets the gap size around the windows. + tall = renamed [Replace "tall"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ limitWindows 12 + $ mySpacing 8 + $ ResizableTall 1 (3/100) (1/2) [] + magnify = renamed [Replace "magnify"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ magnifier + $ limitWindows 12 + $ mySpacing 8 + $ ResizableTall 1 (3/100) (1/2) [] + monocle = renamed [Replace "monocle"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ limitWindows 20 Full + floats = renamed [Replace "floats"] + $ smartBorders + $ limitWindows 20 simplestFloat + grid = renamed [Replace "grid"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ limitWindows 12 + $ mySpacing 8 + $ mkToggle (single MIRROR) + $ Grid (16/10) + spirals = renamed [Replace "spirals"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ mySpacing' 8 + $ spiral (6/7) + threeCol = renamed [Replace "threeCol"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ limitWindows 7 + $ ThreeCol 1 (3/100) (1/2) + threeRow = renamed [Replace "threeRow"] + $ smartBorders + $ addTabs shrinkText myTabTheme + $ subLayout [] (smartBorders Simplest) + $ limitWindows 7 + -- Mirror takes a layout and rotates it by 90 degrees. + -- So we are applying Mirror to the ThreeCol layout. + $ Mirror + $ ThreeCol 1 (3/100) (1/2) + tabs = renamed [Replace "tabs"] + -- I cannot add spacing to this layout because it will + -- add spacing between window and tabs which looks bad. + $ tabbed shrinkText myTabTheme + tallAccordion = renamed [Replace "tallAccordion"] + $ Accordion + wideAccordion = renamed [Replace "wideAccordion"] + $ Mirror Accordion + + -- setting colors for tabs layout and tabs sublayout. + myTabTheme = def { fontName = myFont + , activeColor = "#46d9ff" + , inactiveColor = "#313846" + , activeBorderColor = "#46d9ff" + , inactiveBorderColor = "#282c34" + , activeTextColor = "#282c34" + , inactiveTextColor = "#d0d0d0" + } + + -- Theme for showWName which prints current workspace when you change workspaces. + myShowWNameTheme :: SWNConfig + myShowWNameTheme = def + { swn_font = "xft:Ubuntu:bold:size=60" + , swn_fade = 1.0 + , swn_bgcolor = "#1c1f24" + , swn_color = "#ffffff" + } + + -- The layout hook + myLayoutHook = avoidStruts $ mouseResize $ windowArrange $ T.toggleLayouts floats + $ mkToggle (NBFULL ?? NOBORDERS ?? EOT) myDefaultLayout + where + myDefaultLayout = withBorder myBorderWidth tall + ||| magnify + ||| noBorders monocle + ||| floats + ||| noBorders tabs + ||| grid + ||| spirals + ||| threeCol + ||| threeRow + ||| tallAccordion + ||| wideAccordion + +#+end_src +** Workspace +#+begin_src haskell :tangle ./xmonad.hs + myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "] + -- myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "] + myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y) + + clickable ws = ""++ws++"" + where i = fromJust $ M.lookup ws myWorkspaceIndices + + myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet) + myManageHook = composeAll + -- 'doFloat' forces a window to float. Useful for dialog boxes and such. + -- using 'doShift ( myWorkspaces !! 7)' sends program to workspace 8! + -- I'm doing it this way because otherwise I would have to write out the full + -- name of my workspaces and the names would be very long if using clickable workspaces. + [ className =? "confirm" --> doFloat + , className =? "file_progress" --> doFloat + , className =? "dialog" --> doFloat + , className =? "download" --> doFloat + , className =? "error" --> doFloat + , className =? "Gimp" --> doFloat + , className =? "notification" --> doFloat + , className =? "pinentry-gtk-2" --> doFloat + , className =? "splash" --> doFloat + , className =? "toolbar" --> doFloat + --, title =? "Oracle VM VirtualBox Manager" --> doFloat + --, title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 ) + --, className =? "brave-browser" --> doShift ( myWorkspaces !! 1 ) + --, className =? "qutebrowser" --> doShift ( myWorkspaces !! 1 ) + --, className =? "mpv" --> doShift ( myWorkspaces !! 7 ) + --, className =? "Gimp" --> doShift ( myWorkspaces !! 8 ) + --, className =? "VirtualBox Manager" --> doShift ( myWorkspaces !! 4 ) + , (className =? "firefox" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog + , (className =? "steam" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog + ] <+> namedScratchpadManageHook myScratchPads + +#+end_src + +** Key bindings +#+begin_src haskell :tangle ./xmonad.hs + myKeys :: [(String, X ())] + myKeys = + -- Xmonad + [ ("M-C-r", spawn "xmonad --recompile") -- Recompiles xmonad + , ("M-S-r", spawn "xmonad --restart") -- Restarts xmonad + , ("M-S-q", io exitSuccess) -- Quits xmonad + + -- Run Prompt + -- M-p was the default keybinding. I've changed it to M-S-RET because I will use + -- M-p as part of the keychord for the other dmenu script bindings. + , ("M-S-", spawn "dmenu_run -i -p \"Run: \"") -- Dmenu + + -- Launch Apps + , ("M-f", spawn "firefox") + , ("M-t", spawn "thunar") + , ("M-p", spawn "enpass") + --, ("M-e", spawn "emacs") + , ("M-e", spawn myEmacs) + , ("M-l", spawn "arcolinux-logout") + + -- Useful programs to have a keybinding for launch + , ("M-", spawn (myTerminal)) + --, ("M-b", spawn (myBrowser ++ " www.youtube.com/c/DistroTube/")) + --, ("M-M1-h", spawn (myTerminal ++ " -e htop")) + + -- Kill windows + , ("M-S-c", kill1) -- Kill the currently focused client + --, ("M-S-a", killAll) -- Kill all windows on current workspace + + -- Workspaces + --, ("M-.", nextScreen) -- Switch focus to next monitor + --, ("M-,", prevScreen) -- Switch focus to prev monitor + --, ("M-S-", shiftTo Next nonNSP >> moveTo Next nonNSP) -- Shifts focused window to next ws + --, ("M-S-", shiftTo Prev nonNSP >> moveTo Prev nonNSP) -- Shifts focused window to prev ws + + -- Floating windows + --, ("M-f", sendMessage (T.Toggle "floats")) -- Toggles my 'floats' layout + --, ("M-t", withFocused $ windows . W.sink) -- Push floating window back to tile + --, ("M-S-t", sinkAll) -- Push ALL floating windows to tile + + -- Increase/decrease spacing (gaps) + --, ("M-d", decWindowSpacing 4) -- Decrease window spacing + --, ("M-i", incWindowSpacing 4) -- Increase window spacing + --, ("M-S-d", decScreenSpacing 4) -- Decrease screen spacing + --, ("M-S-i", incScreenSpacing 4) -- Increase screen spacing + + -- Grid Select (CTR-g followed by a key) + , ("M-g g", spawnSelected' myAppGrid) -- grid select favorite apps + , ("M-g t", goToSelected $ mygridConfig myColorizer) -- goto selected window + --, ("C-g b", bringSelected $ mygridConfig myColorizer) -- bring selected window + + -- Windows navigation + --, ("M-m", windows W.focusMaster) -- Move focus to the master window + , ("M-j", windows W.focusDown) -- Move focus to the next window + , ("M-k", windows W.focusUp) -- Move focus to the prev window + --, ("M-S-m", windows W.swapMaster) -- Swap the focused window and the master window + --, ("M-S-j", windows W.swapDown) -- Swap focused window with next window + --, ("M-S-k", windows W.swapUp) -- Swap focused window with prev window + --, ("M-", promote) -- Moves focused window to master, others maintain order + --, ("M-S-", rotSlavesDown) -- Rotate all windows except master and keep focus in place + , ("M-C-", rotAllDown) -- Rotate all the windows in the current stack + + -- Layouts + --, ("M-", sendMessage NextLayout) -- Switch to next layout + --, ("M-C-M1-", sendMessage Arrange) + --, ("M-C-M1-", sendMessage DeArrange) + --, ("M-S-", sendMessage ToggleStruts) -- Toggles struts + --, ("M-S-n", sendMessage $ MT.Toggle NOBORDERS) -- Toggles noborder + , ("M-", sendMessage (MT.Toggle NBFULL) >> sendMessage ToggleStruts) -- Toggles noborder/full + + -- Increase/decrease windows in the master pane or the stack + --, ("M-S-", sendMessage (IncMasterN 1)) -- Increase # of clients master pane + --, ("M-S-", sendMessage (IncMasterN (-1))) -- Decrease # of clients master pane + --, ("M-C-", increaseLimit) -- Increase # of windows + --, ("M-C-", decreaseLimit) -- Decrease # of windows + + -- Window resizing + --, ("M-h", sendMessage Shrink) -- Shrink horiz window width + --, ("M-l", sendMessage Expand) -- Expand horiz window width + --, ("M-M1-j", sendMessage MirrorShrink) -- Shrink vert window width + --, ("M-M1-k", sendMessage MirrorExpand) -- Expand vert window width + + -- Sublayouts + -- This is used to push windows to tabbed sublayouts, or pull them out of it. + --, ("M-C-h", sendMessage $ pullGroup L) + --, ("M-C-l", sendMessage $ pullGroup R) + --, ("M-C-k", sendMessage $ pullGroup U) + --, ("M-C-j", sendMessage $ pullGroup D) + --, ("M-C-m", withFocused (sendMessage . MergeAll)) + ---- , ("M-C-u", withFocused (sendMessage . UnMerge)) + --, ("M-C-/", withFocused (sendMessage . UnMergeAll)) + --, ("M-C-.", onGroup W.focusUp') -- Switch focus to next tab + --, ("M-C-,", onGroup W.focusDown') -- Switch focus to prev tab + + -- Scratchpads + -- Toggle show/hide these programs. They run on a hidden workspace. + -- When you toggle them to show, it brings them to your current workspace. + -- Toggle them to hide and it sends them back to hidden workspace (NSP). + --, ("C-s t", namedScratchpadAction myScratchPads "terminal") + --, ("C-s m", namedScratchpadAction myScratchPads "mocp") + --, ("C-s c", namedScratchpadAction myScratchPads "calculator") + + -- Set wallpaper with 'feh'. Type 'SUPER+F1' to launch sxiv in the wallpapers directory. + -- Then in sxiv, type 'C-x w' to set the wallpaper that you choose. + --, ("M-", spawn "sxiv -r -q -t -o ~/wallpapers/*") + --, ("M-", spawn "/bin/ls ~/wallpapers | shuf -n 1 | xargs xwallpaper --stretch") + --, ("M-", spawn "feh --randomize --bg-fill ~/wallpapers/*") + + -- Controls for mocp music player (SUPER-u followed by a key) + --, ("M-u p", spawn "mocp --play") + --, ("M-u l", spawn "mocp --next") + --, ("M-u h", spawn "mocp --previous") + --, ("M-u ", spawn "mocp --toggle-pause") + + -- Emacs (CTRL-e followed by a key) + -- , ("C-e e", spawn myEmacs) -- start emacs + --, ("C-e e", spawn (myEmacs ++ ("--eval '(dashboard-refresh-buffer)'"))) -- emacs dashboard + --, ("C-e b", spawn (myEmacs ++ ("--eval '(ibuffer)'"))) -- list buffers + --, ("C-e d", spawn (myEmacs ++ ("--eval '(dired nil)'"))) -- dired + --, ("C-e i", spawn (myEmacs ++ ("--eval '(erc)'"))) -- erc irc client + --, ("C-e m", spawn (myEmacs ++ ("--eval '(mu4e)'"))) -- mu4e email + --, ("C-e n", spawn (myEmacs ++ ("--eval '(elfeed)'"))) -- elfeed rss + --, ("C-e s", spawn (myEmacs ++ ("--eval '(eshell)'"))) -- eshell + --, ("C-e t", spawn (myEmacs ++ ("--eval '(mastodon)'"))) -- mastodon.el + ---- , ("C-e v", spawn (myEmacs ++ ("--eval '(vterm nil)'"))) -- vterm if on GNU Emacs + --, ("C-e v", spawn (myEmacs ++ ("--eval '(+vterm/here nil)'"))) -- vterm if on Doom Emacs + ---- , ("C-e w", spawn (myEmacs ++ ("--eval '(eww \"distrotube.com\")'"))) -- eww browser if on GNU Emacs + --, ("C-e w", spawn (myEmacs ++ ("--eval '(doom/window-maximize-buffer(eww \"distrotube.com\"))'"))) -- eww browser if on Doom Emacs + ---- emms is an emacs audio player. I set it to auto start playing in a specific directory. + --, ("C-e a", spawn (myEmacs ++ ("--eval '(emms)' --eval '(emms-play-directory-tree \"~/Music/Non-Classical/70s-80s/\")'"))) + + -- Multimedia Keys + --, ("", spawn (myTerminal ++ "mocp --play")) + --, ("", spawn (myTerminal ++ "mocp --previous")) + --, ("", spawn (myTerminal ++ "mocp --next")) + --, ("", spawn "amixer set Master toggle") + , ("", spawn "amixer set Master 5%- unmute") + , ("", spawn "amixer set Master 5%+ unmute") + --, ("", spawn "firefox") + --, ("", safeSpawn "firefox" ["https://www.duckduckgo.com/"]) + --, ("", runOrRaise "thunderbird" (resource =? "thunderbird")) + --, ("", runOrRaise "qalculate-gtk" (resource =? "qalculate-gtk")) + --, ("", spawn "toggleeject") + --, ("", spawn "scrotd 0") + ] + -- The following lines are needed for named scratchpads. + where nonNSP = WSIs (return (\ws -> W.tag ws /= "NSP")) + nonEmptyNonNSP = WSIs (return (\ws -> isJust (W.stack ws) && W.tag ws /= "NSP")) +#+end_src + +** Main +#+begin_src haskell :tangle ./xmonad.hs + main :: IO () + main = do + -- Launching three instances of xmobar on their monitors. + -- xmproc0 <- spawnPipe "xmobar -x 0 $HOME/.config/xmobar/xmobarrc_desktop_qhd" + -- xmproc1 <- spawnPipe "xmobar -x 1 $HOME/.config/xmobar/xmobarrc_desktop_fhd" + xmproc0 <- spawnPipe "xmobar -x 2 $HOME/.config/xmobar/xmobarrc_labtop_fhd" + -- the xmonad, ya know...what the WM is named after! + xmonad $ ewmh def + { manageHook = ( isFullscreen --> doFullFloat ) <+> myManageHook <+> manageDocks + -- Run xmonad commands from command line with "xmonadctl command". Commands include: + -- shrink, expand, next-layout, default-layout, restart-wm, xterm, kill, refresh, run, + -- focus-up, focus-down, swap-up, swap-down, swap-master, sink, quit-wm. You can run + -- "xmonadctl 0" to generate full list of commands written to ~/.xsession-errors. + -- To compile xmonadctl: ghc -dynamic xmonadctl.hs + , handleEventHook = serverModeEventHookCmd + <+> serverModeEventHook + <+> serverModeEventHookF "XMONAD_PRINT" (io . putStrLn) + <+> docksEventHook + <+> fullscreenEventHook -- this does NOT work right if using multi-monitors! + , modMask = myModMask + , terminal = myTerminal + , startupHook = myStartupHook + , layoutHook = showWName' myShowWNameTheme $ myLayoutHook + , workspaces = myWorkspaces + , borderWidth = myBorderWidth + , normalBorderColor = myNormColor + , focusedBorderColor = myFocusColor + , logHook = dynamicLogWithPP $ namedScratchpadFilterOutWorkspacePP $ xmobarPP + -- the following variables beginning with 'pp' are settings for xmobar. + { ppOutput = \x -> hPutStrLn xmproc0 x -- xmobar on monitor 1 + -- >> hPutStrLn xmproc1 x -- xmobar on monitor 2 + -- >> hPutStrLn xmproc2 x -- xmobar on monitor 3 + , ppCurrent = xmobarColor "#FFFFFF" "" . wrap "●" "" -- Current workspace + , ppVisible = xmobarColor "#c0a79a" "" . wrap "♼" "" . clickable -- Visible but not current workspace + , ppHidden = xmobarColor "#c0a79a" "" . wrap "○" "" . clickable -- Hidden workspaces + , ppHiddenNoWindows = xmobarColor "#c792ea" "" . \s -> "" -- Hidden workspaces (no windows) + , ppTitle = xmobarColor "#b3afc2" "" . shorten 60 -- Title of active window + , ppSep = " | " -- Separator character + , ppUrgent = xmobarColor "#C45500" "" . wrap "!" "!" -- Urgent workspace + , ppExtras = [windowCount] -- # of windows current workspace + , ppOrder = \(ws:l:t:ex) -> [ws,l]++ex++[t] -- order of things in xmobar + } + } `additionalKeysP` myKeys + +#+end_src diff --git a/.xprofile b/.xprofile new file mode 100644 index 0000000..12711fa --- /dev/null +++ b/.xprofile @@ -0,0 +1,3 @@ +export GTK_IM_MODULE=fcitx +export QT_IM_MODULE=fcitx +export XMODIFIERS="@im=fcitx" diff --git a/.zshrc b/.zshrc new file mode 100644 index 0000000..f5f075f --- /dev/null +++ b/.zshrc @@ -0,0 +1,30 @@ +export ZSH="/home/jaeus/.oh-my-zsh" +ZSH_THEME="random" +plugins=(git) +source $ZSH/oh-my-zsh.sh +prompt_context(){} +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh + +##WSL2 +#VETHER_IP=$(/bin/grep nameserver /etc/resolv.conf 2> /dev/null | /bin/tr -s ' ' | /bin/cut -d' ' -f2) +#export DISPLAY=$VETHER_IP:10.0 + +#neovim to vi +alias vi=nvim +#pacman unlock +alias paruunlock="sudo rm /var/lib/pacman/db.lck" +#grub update +alias update-grub="sudo grub-mkconfig -o /boot/grub/grub.cfg" +#youtube-dl +alias ytv-best="youtube-dl -f bestvideo+bestaudio " +#gpg for future uses +#verify signature for isos +#alias gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify" +#alias fix-gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify" +#receive the key of a developer +#alias gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys" +#alias fix-gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys" +#alias fix-key="[ -d ~/.gnupg ] || mkdir ~/.gnupg ; cp /etc/pacman.d/gnupg/gpg.conf ~/.gnupg/ ; echo 'done'" + +figlet -w 100 "JaeUs-Device" diff --git a/Note/ArchLinux.org b/Note/ArchLinux.org new file mode 100644 index 0000000..140525a --- /dev/null +++ b/Note/ArchLinux.org @@ -0,0 +1,950 @@ +#+TITLE: Arch Linux + +* Linux +Archlinux Bare 기준 +** Local Time +#+begin_src shell +timedatectl set-ntp true +timedatectl status +#+end_src + +** Partition - UEFI +#+begin_src shell +fdisk -l # list + +fdisk /dev/sda +#+end_src + +g : Make GPT Partition +n : partition create +t : partition type change + +create 2-3 partitions +partition 1 : +550M size / EFI System + + +partition 2 : rest size / Linux System +partition (optional swap) : memory size x 2 + +#+begin_src shell + +## CAUTION !! +mkfs.fat -F32 /dev/sda1 +mkfs.ext4 /dev/sda2 + +mkswap /dev/sda3 +swapon /dev/sda2 +#+end_src + + +** Base Linux Installation + +#+begin_src shell +mount /dev/sda2 /mnt +pacstrap /mnt base linux linux-firmware +genfstab -U /mnt >> /mnt/etc/fstab # generate filesystem table +arch-chroot /mnt +#+end_src + +** TIMEZONE +#+begin_src shell +ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime +hwclock --systohc +pacman -S vim + +vim /etc/locale.gen # uncomment us_EN.UTF-8 / ko_KR.UTF-8 +locale-gen +#+end_src + +** Host +#+begin_src shell +echo "JaeUs-ArchLinux" > /etc/hostname +vim /etc/hosts +#+end_src + +#+begin_src conf +127.0.0.1 localhost +::1 localhost +127.0.0.1 JaeUs-ArchLinux.localdomain JaeUs-ArchLinux +#+end_src + +** Add User +#+begin_src shell +passwd # make root password +useradd -m jaeus +passwd jaeus +usermod -aG wheel,audio,video,optical,storage jaeus +EDITOR=vim visudo # uncomment %wheel ALL=(ALL) ALL +#+end_src + +** Grub +#+begin_src shell +pacman -S grub efibootmgr dosfstools os-prober mtools +mkdir /boot/EFI +mount /dev/sda1 /bootEFI +grub-install --target=x86_64-efi --bootloader-id=grub_uefi --recheck +grub-mkconfig -o /boot/grub/grub.cfg +#+end_src + +** AUR Manager +#+begin_src shell +sudo pacman -S --needed base-devel +git clone https://aur.archlinux.org/paru.git +cd paru +makepkg -si +#+end_src +** Extra Stuff +#+begin_src shell +pacman -S networkmanager git +systemctl enable NetworkManager +exit +umount -l /mnt +reboot +#+end_src + +** Neovim +#+begin_src shell +paru -S neovim xclip +#+end_src + +** ZSH +#+begin_src shell +paru -S zsh oh-my-zsh-git zsh-syntax-highlighting zsh-autosuggestions +chsh -s /bin/zsh jaeus +/usr/share/oh-my-zsh/tools/install.sh +#+end_src + +ZSH initial Config +#+begin_src conf +export ZSH="/home/jaeus/.oh-my-zsh" +ZSH_THEME="agnoster" +plugins=(git) +source $ZSH/oh-my-zsh.sh +prompt_context(){} +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh +alias vi=nvim +#+end_src + +** 한글 입력 +#+begin_src shell +paru -S fcitx-hangul fcitx-configtool +#+end_src + +#+begin_src shell :tangle ~/.profile +export GTK_IM_MODULE=fcitx +export QT_IM_MODULE=fcitx +export XMODIFIERS="@im=fcitx" +#+end_src + +** Alacritty +#+begin_src conf :tangle ~/.config/alacritty/alacritty.yml :mkdirp yes +env: + TERM: xterm-256color + +window: + padding: + x: 6 + y: 6 + title: Alacritty + class: + instance: Alacritty + general: Alacritty + +scrolling: + history: 10000 +font: + normal: + family: Mononoki Nerd Font + style: Regular + bold: + family: Mononoki Nerd Font + style: Bold + italic: + family: Mononoki Nerd Font + style: Italic + bold_italic: + family: Mononoki Nerd Font + style: Bold Italic + # Point size + size: 11.0 + offset: + x: 0 + y: 1 +draw_bold_text_with_bright_colors: true +colors: + primary: + background: '0x282c34' + foreground: '0xbbc2cf' + selection: + text: '0xbbc2cf' + normal: + black: '0x1c1f24' + red: '0xff6c6b' + green: '0x98be65' + yellow: '0xda8548' + blue: '0x51afef' + magenta: '0xc678dd' + cyan: '0x5699af' + white: '0x202328' + bright: + black: '0x5b6268' + red: '0xda8548' + green: '0x4db5bd' + yellow: '0xecbe7b' + blue: '0x3071db' # This is 2257a0 in Doom Emacs but I lightened it. + magenta: '0xa9a1e1' + cyan: '0x46d9ff' + white: '0xdfdfdf' +background_opacity: 0.9 +key_bindings: + # (Windows, Linux, and BSD only) + - { key: V, mods: Control|Shift, action: Paste } + - { key: C, mods: Control|Shift, action: Copy } + - { key: Insert, mods: Shift, action: PasteSelection } + - { key: Key0, mods: Control, action: ResetFontSize } + - { key: Equals, mods: Control, action: IncreaseFontSize } + - { key: Plus, mods: Control, action: IncreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + + - { key: Paste, action: Paste } + - { key: Copy, action: Copy } + - { key: L, mods: Control, action: ClearLogNotice } + - { key: L, mods: Control, chars: "\x0c" } + - { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt } + - { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt } + - { key: Home, mods: Shift, action: ScrollToTop, mode: ~Alt } + - { key: End, mods: Shift, action: ScrollToBottom, mode: ~Alt } +#+end_src +** Login And WindowManager +#+begin_src shell +paru -S sddm xorg i3 i3status xss-lock +reboot +#+end_src + +*** I3 + +#+begin_src conf :tangle ~/.config/i3/config :mkdirp yes +# This file has been auto-generated by i3-config-wizard(1). +# It will not be overwritten, so edit it as you like. +# +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see https://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod4 + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +font pango:monospace 8 + +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +#font pango:DejaVu Sans Mono 8 + +# The combination of xss-lock, nm-applet and pactl is a popular choice, so +# they are included here as an example. Modify as you see fit. + +# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the +# screen before suspend. Use loginctl lock-session to lock your screen. +exec --no-startup-id xss-lock --transfer-sleep-lock -- i3lock --nofork + +# NetworkManager is the most popular way to manage wireless networks on Linux, +# and nm-applet is a desktop environment-independent system tray GUI for it. +exec --no-startup-id nm-applet +exec --no-startup-id picom -b --config ~/.config/i3/picom.conf +exec --no-startup-id dwall -s colony +exec --no-startup-id fcitx +exec --no-startup-id seafile-applet +exec --no-startup-id blueberry-tray +exec --no-startup-id volumeicon +exec --no-startup-id enpass +exec --no-startup-id green-tunnel -s + +# Use pactl to adjust volume in PulseAudio. +set $refresh_i3status killall -SIGUSR1 i3status +bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status +bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status +bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status +bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +# start a terminal +bindsym $mod+Return exec i3-sensible-terminal + +# kill focused window +bindsym $mod+Shift+q kill + +# start dmenu (a program launcher) +bindsym $mod+d exec --no-startup-id dmenu_run +# A more modern dmenu replacement is rofi: +# bindcode $mod+40 exec "rofi -modi drun,run -show drun" +# There also is i3-dmenu-desktop which only displays applications shipping a +# .desktop file. It is a wrapper around dmenu, so you need that installed. +# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop + +# change focus +bindsym $mod+j focus left +bindsym $mod+k focus down +bindsym $mod+l focus up +bindsym $mod+semicolon focus right + +# alternatively, you can use the cursor keys: +bindsym $mod+Left focus left +bindsym $mod+Down focus down +bindsym $mod+Up focus up +bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+j move left +bindsym $mod+Shift+k move down +bindsym $mod+Shift+l move up +bindsym $mod+Shift+semicolon move right + +# alternatively, you can use the cursor keys: +bindsym $mod+Shift+Left move left +bindsym $mod+Shift+Down move down +bindsym $mod+Shift+Up move up +bindsym $mod+Shift+Right move right + +# split in horizontal orientation +bindsym $mod+h split h + +# split in vertical orientation +bindsym $mod+v split v + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen toggle + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# focus the child container +#bindsym $mod+d focus child + +# Define names for default workspaces for which we configure key bindings later on. +# We use variables to avoid repeating the names in multiple places. +set $ws1 "1" +set $ws2 "2" +set $ws3 "3" +set $ws4 "4" +set $ws5 "5" +set $ws6 "6" +set $ws7 "7" +set $ws8 "8" +set $ws9 "9" +set $ws10 "10" + +# switch to workspace +bindsym $mod+1 workspace number $ws1 +bindsym $mod+2 workspace number $ws2 +bindsym $mod+3 workspace number $ws3 +bindsym $mod+4 workspace number $ws4 +bindsym $mod+5 workspace number $ws5 +bindsym $mod+6 workspace number $ws6 +bindsym $mod+7 workspace number $ws7 +bindsym $mod+8 workspace number $ws8 +bindsym $mod+9 workspace number $ws9 +bindsym $mod+0 workspace number $ws10 + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace number $ws1 +bindsym $mod+Shift+2 move container to workspace number $ws2 +bindsym $mod+Shift+3 move container to workspace number $ws3 +bindsym $mod+Shift+4 move container to workspace number $ws4 +bindsym $mod+Shift+5 move container to workspace number $ws5 +bindsym $mod+Shift+6 move container to workspace number $ws6 +bindsym $mod+Shift+7 move container to workspace number $ws7 +bindsym $mod+Shift+8 move container to workspace number $ws8 +bindsym $mod+Shift+9 move container to workspace number $ws9 +bindsym $mod+Shift+0 move container to workspace number $ws10 + +# reload the configuration file +bindsym $mod+Shift+c reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym j resize shrink width 10 px or 10 ppt + bindsym k resize grow height 10 px or 10 ppt + bindsym l resize shrink height 10 px or 10 ppt + bindsym semicolon resize grow width 10 px or 10 ppt + + # same bindings, but for the arrow keys + bindsym Left resize shrink width 10 px or 10 ppt + bindsym Down resize grow height 10 px or 10 ppt + bindsym Up resize shrink height 10 px or 10 ppt + bindsym Right resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape or $mod+r + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} + +bindsym $mod+r mode "resize" + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +bar { + status_command i3status +} +#+end_src +*** PICOM +#+begin_src conf :tangle ~/.config/i3/picom.conf :mkdirp yes +################################# +# Shadows # +################################# + + +# Enabled client-side shadows on windows. Note desktop windows +# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow, +# unless explicitly requested using the wintypes option. +# +# shadow = false +shadow = true; + +# The blur radius for shadows, in pixels. (defaults to 12) +# shadow-radius = 12 +shadow-radius = 7; + +# The opacity of shadows. (0.0 - 1.0, defaults to 0.75) +# shadow-opacity = .75 + +# The left offset for shadows, in pixels. (defaults to -15) +# shadow-offset-x = -15 +shadow-offset-x = -7; + +# The top offset for shadows, in pixels. (defaults to -15) +# shadow-offset-y = -15 +shadow-offset-y = -7; + +# Avoid drawing shadows on dock/panel windows. This option is deprecated, +# you should use the *wintypes* option in your config file instead. +# +# no-dock-shadow = false + +# Don't draw shadows on drag-and-drop windows. This option is deprecated, +# you should use the *wintypes* option in your config file instead. +# +# no-dnd-shadow = false + +# Red color value of shadow (0.0 - 1.0, defaults to 0). +# shadow-red = 0 + +# Green color value of shadow (0.0 - 1.0, defaults to 0). +# shadow-green = 0 + +# Blue color value of shadow (0.0 - 1.0, defaults to 0). +# shadow-blue = 0 + +# Do not paint shadows on shaped windows. Note shaped windows +# here means windows setting its shape through X Shape extension. +# Those using ARGB background is beyond our control. +# Deprecated, use +# shadow-exclude = 'bounding_shaped' +# or +# shadow-exclude = 'bounding_shaped && !rounded_corners' +# instead. +# +# shadow-ignore-shaped = '' + +# Specify a list of conditions of windows that should have no shadow. +# +# examples: +# shadow-exclude = "n:e:Notification"; +# +# shadow-exclude = [] +shadow-exclude = [ + "name = 'Notification'", + "class_g ?= 'Notify-osd'", + "name = 'Plank'", + "name = 'Docky'", + "name = 'Kupfer'", + "name = 'xfce4-notifyd'", + "name *= 'VLC'", + "name *= 'compton'", + "name *= 'Chromium'", + "name *= 'Chrome'", + "class_g = 'Firefox' && argb", + "class_g = 'Conky'", + "class_g = 'Kupfer'", + "class_g = 'Synapse'", + "class_g ?= 'Notify-osd'", + "class_g ?= 'Cairo-dock'", + "class_g = 'Cairo-clock'", + "class_g ?= 'Xfce4-notifyd'", + "class_g ?= 'Xfce4-power-manager'", + "_GTK_FRAME_EXTENTS@:c", +]; + +# Add this one too for ... + # "_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'" +# Add this one above to the list to have no shadow in Openbox menu + # "! name~=''", + +# Specify a X geometry that describes the region in which shadow should not +# be painted in, such as a dock window region. Use +# shadow-exclude-reg = "x10+0+0" +# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on. +# +# shadow-exclude-reg = "" + +# Crop shadow of a window fully on a particular Xinerama screen to the screen. +# xinerama-shadow-crop = false + + +################################# +# Fading # +################################# + + +# Fade windows in/out when opening/closing and when opacity changes, +# unless no-fading-openclose is used. +# fading = false +fading = false + +# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028) +# fade-in-step = 0.028 +fade-in-step = 0.03; + +# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03) +# fade-out-step = 0.03 +fade-out-step = 0.03; + +# The time between steps in fade step, in milliseconds. (> 0, defaults to 10) +# fade-delta = 10 + +# Specify a list of conditions of windows that should not be faded. +# fade-exclude = [] + +# Do not fade on window open/close. +# no-fading-openclose = false + +# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc. +# no-fading-destroyed-argb = false + + +################################# +# Transparency / Opacity # +################################# + + +# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0) +# inactive-opacity = 1 +inactive-opacity = 1; + +# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default) +# frame-opacity = 1.0 +frame-opacity = 1; + +# Default opacity for dropdown menus and popup menus. (0.0 - 1.0, defaults to 1.0) +# menu-opacity = 1.0 + +# Let inactive opacity set by -i override the '_NET_WM_OPACITY' values of windows. +# inactive-opacity-override = true +inactive-opacity-override = false; + +# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0) +# active-opacity = 1.0 + +# Dim inactive windows. (0.0 - 1.0, defaults to 0.0) +# inactive-dim = 0.0 + +# Specify a list of conditions of windows that should always be considered focused. +# focus-exclude = [] +focus-exclude = [ "class_g = 'Cairo-clock'" ]; + +# Use fixed inactive dim value, instead of adjusting according to window opacity. +# inactive-dim-fixed = 1.0 + +# Specify a list of opacity rules, in the format `PERCENT:PATTERN`, +# like `50:name *= "Firefox"`. picom-trans is recommended over this. +# Note we don't make any guarantee about possible conflicts with other +# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows. +# example: +# opacity-rule = [ "80:class_g = 'URxvt'" ]; +# +opacity-rule = [ "80:class_g = 'Alacritty'" ]; + + +################################# +# Background-Blurring # +################################# + + +# Parameters for background blurring, see the *BLUR* section for more information. +# blur-method = +# blur-size = 12 +# +# blur-deviation = false + +# Blur background of semi-transparent / ARGB windows. +# Bad in performance, with driver-dependent behavior. +# The name of the switch may change without prior notifications. +# +# blur-background = false + +# Blur background of windows when the window frame is not opaque. +# Implies: +# blur-background +# Bad in performance, with driver-dependent behavior. The name may change. +# +# blur-background-frame = false + + +# Use fixed blur strength rather than adjusting according to window opacity. +# blur-background-fixed = false + + +# Specify the blur convolution kernel, with the following format: +# example: +# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1"; +# +# blur-kern = '' +blur-kern = "3x3box"; + + +# Exclude conditions for background blur. +# blur-background-exclude = [] +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; + +################################# +# General Settings # +################################# + +# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers. +# daemon = false + +# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`. +# `xrender` is the default one. +# +# backend = 'glx' +backend = "xrender"; + +# Enable/disable VSync. Set to false for transparency in VirtualBox. +# vsync = false +vsync = true + +# Enable remote control via D-Bus. See the *D-BUS API* section below for more details. +# dbus = false + +# Try to detect WM windows (a non-override-redirect window with no +# child that has 'WM_STATE') and mark them as active. +# +# mark-wmwin-focused = false +mark-wmwin-focused = true; + +# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused. +# mark-ovredir-focused = false +mark-ovredir-focused = true; + +# Try to detect windows with rounded corners and don't consider them +# shaped windows. The accuracy is not very high, unfortunately. +# +# detect-rounded-corners = false +detect-rounded-corners = true; + +# Detect '_NET_WM_OPACITY' on client windows, useful for window managers +# not passing '_NET_WM_OPACITY' of client windows to frame windows. +# +# detect-client-opacity = false +detect-client-opacity = true; + +# Specify refresh rate of the screen. If not specified or 0, picom will +# try detecting this with X RandR extension. +# +# refresh-rate = 60 +refresh-rate = 0 + +# Limit picom to repaint at most once every 1 / 'refresh_rate' second to +# boost performance. This should not be used with +# vsync drm/opengl/opengl-oml +# as they essentially does sw-opti's job already, +# unless you wish to specify a lower refresh rate than the actual value. +# +# sw-opti = + +# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window, +# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy, +# provided that the WM supports it. +# +# use-ewmh-active-win = false + +# Unredirect all windows if a full-screen opaque window is detected, +# to maximize performance for full-screen windows. Known to cause flickering +# when redirecting/unredirecting windows. +# +# unredir-if-possible = false + +# Delay before unredirecting the window, in milliseconds. Defaults to 0. +# unredir-if-possible-delay = 0 + +# Conditions of windows that shouldn't be considered full-screen for unredirecting screen. +# unredir-if-possible-exclude = [] + +# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows +# in the same group focused at the same time. +# +# detect-transient = false +detect-transient = true + +# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same +# group focused at the same time. 'WM_TRANSIENT_FOR' has higher priority if +# detect-transient is enabled, too. +# +# detect-client-leader = false +detect-client-leader = true + +# Resize damaged region by a specific number of pixels. +# A positive value enlarges it while a negative one shrinks it. +# If the value is positive, those additional pixels will not be actually painted +# to screen, only used in blur calculation, and such. (Due to technical limitations, +# with use-damage, those pixels will still be incorrectly painted to screen.) +# Primarily used to fix the line corruption issues of blur, +# in which case you should use the blur radius value here +# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`, +# with a 5x5 one you use `--resize-damage 2`, and so on). +# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly. +# +# resize-damage = 1 + +# Specify a list of conditions of windows that should be painted with inverted color. +# Resource-hogging, and is not well tested. +# +# invert-color-include = [] + +# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer. +# Might cause incorrect opacity when rendering transparent content (but never +# practically happened) and may not work with blur-background. +# My tests show a 15% performance boost. Recommended. +# +# glx-no-stencil = false + +# GLX backend: Avoid rebinding pixmap on window damage. +# Probably could improve performance on rapid window content changes, +# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.). +# Recommended if it works. +# +# glx-no-rebind-pixmap = false + +# Disable the use of damage information. +# This cause the whole screen to be redrawn everytime, instead of the part of the screen +# has actually changed. Potentially degrades the performance, but might fix some artifacts. +# The opposing option is use-damage +# +# no-use-damage = false +use-damage = true + +# Use X Sync fence to sync clients' draw calls, to make sure all draw +# calls are finished before picom starts drawing. Needed on nvidia-drivers +# with GLX backend for some users. +# +# xrender-sync-fence = false + +# GLX backend: Use specified GLSL fragment shader for rendering window contents. +# See `compton-default-fshader-win.glsl` and `compton-fake-transparency-fshader-win.glsl` +# in the source tree for examples. +# +# glx-fshader-win = '' + +# Force all windows to be painted with blending. Useful if you +# have a glx-fshader-win that could turn opaque pixels transparent. +# +# force-win-blend = false + +# Do not use EWMH to detect fullscreen windows. +# Reverts to checking if a window is fullscreen based only on its size and coordinates. +# +# no-ewmh-fullscreen = false + +# Dimming bright windows so their brightness doesn't exceed this set value. +# Brightness of a window is estimated by averaging all pixels in the window, +# so this could comes with a performance hit. +# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0) +# +# max-brightness = 1.0 + +# Make transparent windows clip other windows like non-transparent windows do, +# instead of blending on top of them. +# +# transparent-clipping = false + +# Set the log level. Possible values are: +# "trace", "debug", "info", "warn", "error" +# in increasing level of importance. Case doesn't matter. +# If using the "TRACE" log level, it's better to log into a file +# using *--log-file*, since it can generate a huge stream of logs. +# +# log-level = "debug" +log-level = "warn"; + +# Set the log file. +# If *--log-file* is never specified, logs will be written to stderr. +# Otherwise, logs will to written to the given file, though some of the early +# logs might still be written to the stderr. +# When setting this option from the config file, it is recommended to use an absolute path. +# +# log-file = '~/.config/compton.log' + +# Show all X errors (for debugging) +# show-all-xerrors = false + +# Write process ID to a file. +# write-pid-path = '/path/to/your/log/file' + +# Window type settings +# +# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard: +# "unknown", "desktop", "dock", "toolbar", "menu", "utility", +# "splash", "dialog", "normal", "dropdown_menu", "popup_menu", +# "tooltip", "notification", "combo", and "dnd". +# +# Following per window-type options are available: :: +# +# fade, shadow::: +# Controls window-type-specific shadow and fade settings. +# +# opacity::: +# Controls default opacity of the window type. +# +# focus::: +# Controls whether the window of this type is to be always considered focused. +# (By default, all window types except "normal" and "dialog" has this on.) +# +# full-shadow::: +# Controls whether shadow is drawn under the parts of the window that you +# normally won't be able to see. Useful when the window has parts of it +# transparent, and you want shadows in those areas. +# +# redir-ignore::: +# Controls whether this type of windows should cause screen to become +# redirected again after been unredirected. If you have unredir-if-possible +# set, and doesn't want certain window to cause unnecessary screen redirection, +# you can set this to `true`. +# +wintypes: +{ + tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; }; + dock = { shadow = false; } + dnd = { shadow = false; } + popup_menu = { opacity = 0.9; } + dropdown_menu = { opacity = 0.9; } +}; +#+end_src + +** Audio related. +*** PulseAudio +#+begin_src shell +paru -S pulseaudio pavucontrol-qt volumeicon +#+end_src +volumeicon은 i3config에 추가 +volumeicon을 이용해 pavucontrol-qt연결. + +*** Bluetooth +#+begin_src shell +paru -S blueberry pulseaudio-bluetooth +sudo systemctl enable bluetooth +#+end_src +Tray는 i3config에 추가. + + +** Dynamic Wallpaper +#+begin_src shell +paru -S xorg-xrandr feh cronie +cd ~ +git clone https://github.com/adi1090x/dynamic-wallpaper.git +cd dynamic-wallpaper +chmod +x install.sh +./install.sh +#+end_src +i3에 추가. + +** Enpass +#+begin_src shell +paru -S enpass +#+end_src +** Seafile-client +#+begin_src shell +paru -S seafile-client +#+end_src + +** Green-tunnel +proxy redirect +#+begin_src shell +sudo npm install -g green-tunnel +#+end_src +** Fonts +#+begin_src shell +paru -S ttf-fira-code ttf-nanum nerd-fonts-mononoki +#+end_src + +** FileManager + +*** TODO smb연동하는법 까먹음. +#+begin_src shell +paru -S thunar thunar-volman thunar-shares-plugin gvfs gvfs-smb sshfs +#+end_src + +** MPV +#+begin_src shell +paru -S mpv +#+end_src + +** Virtual Desktop +*** QEMU +#+begin_src shell +paru -S qemu qemu-arch-extra ovmf bridge-utils dnsmasq vde2 openbsd-netcat ebtables iptables +systemctl enable libvirtd +systemctl start libvirtd +#+end_src +- ovmf helps to do the UEFI Bios and Secure Boot setups. +- bridge-utils for network bridge needed for VMs +- vde2 for QEMU distributed ethernet emulation +- dnsmasq the DNS forwarder and DHCP server +- openbsd-netcat network testing tool (Optional) +- ebtables and iptables to create packet routing and firewalls + +#+begin_src shell +paru -S virt-manager virt-viewer +#+end_src + +#+begin_src shell +# Enable Auto-Start of the Service + +# optional +# sudo systemctl enable libvirtd.service +# Start the Service Right now +sudo systemctl start libvirtd.service +#+end_src diff --git a/Note/HyperV.org b/Note/HyperV.org new file mode 100644 index 0000000..a737152 --- /dev/null +++ b/Note/HyperV.org @@ -0,0 +1,89 @@ +#+TITLE: Hyper V + +ArcoLinux B Xmonad 기반으로 작성되었음. +https://wiki.archlinux.org/index.php/Hyper-V : Arch Wiki 참고 +Window Manager(Xmonad)와 Emacs구동이 목적임. + +* Hyper V enable + +Windows Home에서 기능 추가 +#+begin_src shell +pushd "%~dp0" +dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt +for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i" +del hyper-v.txt +#+end_src + +Appwiz.cpl에서 enable 또는 다음 커멘드 입력. +#+begin_src shell +Dism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALL +#+end_src + +* 가상머신 생성 +1. Hyper-V 2세대 +2. 보안부팅 해제 +3. Arcolinux 설치 및 업데이트 +* 모니터 해상도 +/etc/default/grub에서 +GRUB_CMDLINE_LINUX_DEFAULT에 "splash video=hyperv_fb:1920x1080" + +update-grub + +* AUR Manager의 설치(Paru) +#+begin_src shell +sudo pacman -S --needed base-devel +git clone https://aur.archlinux.org/paru.git +cd paru +makepkg -si +#+end_src + +* Hyper-V Extension +#+begin_src shell +paru -S hyperv +sudo systemctl enable hv_fcopy_daemon.service +sudo systemctl enable hv_kvp_daemon.service +sudo systemctl enable hv_vss_daemon.service +#+end_src + +* 공유폴더 기능 +윈도우에서 로컬계정을 추가하여 공유폴더 설정, 폴더권한을 추가한다. +CIFS 네트워크 공유방법이다. +#+begin_src shell +mkdir -p /mnt/HV +sudo mount -t cifs //192.168.0.10/d /mnt/HV -o username=HV-User +#+end_src +자동 마운트를 위해 +/etc/fstab에 다음 내용 추가 +#+begin_src unix-conf +//SERVER/sharename /mnt/mountpoint cifs _netdev,nofail,username=myuser,password=mypass 0 0 +#+end_src + +* 고급 세션기능 +#+begin_src shell +git clone https://github.com/Microsoft/linux-vm-tools +cd linux-vm-tools/arch +./makepkg.sh +sudo ./install-config.sh +#+end_src + +이러면 RDP가 활성화 되는데, RDP를 이용하여 접속을 해야만 고급세션기능이 활성화 된다. +마우스 반응 속도 및 클립보드 공유기능이 사용가능하다. + +일단 접속방식을 소켓으로 변경한다. +powershell에서 다음을 입력한다. +#+begin_src shell +Set-VM -VMName Arch-HV -EnhancedSessionTransportType HvSocket +#+end_src + +그리고 xrdp 로그인시, xinitrc로 초기화 되므로 윈도우 메니저 진입점을 설정한다. +** XMONAD +TODO: 내용 추가 바람. 기존에 EXWM으로 해봣었음. + +** EXWM 사용시 +#+begin_src unix-conf +exec dbus-launch --exit-with-session emacs -mm -debug-init +#+end_src + + +* Emacs 설치 +Emacs.org의 내용을 참고 diff --git a/Note/Linux.org b/Note/Linux.org new file mode 100644 index 0000000..9060c22 --- /dev/null +++ b/Note/Linux.org @@ -0,0 +1,267 @@ +#+TITLE: Linux + +* Linux 초기설정 정리 +Arcolinux-xmonad 기준 +** Init +mirrorlist to korea +#+begin_src shell +pacman -Syu +#+end_src +** AUR Manager +#+begin_src shell +sudo pacman -S --needed base-devel +git clone https://aur.archlinux.org/paru.git +cd paru +makepkg -si +#+end_src +** GIT +#+begin_src shell +git config --global user.name "JaeYoo-Im" +git config --global user.email "cpu3792@gmail.com" +#+end_src +** ZSH +*** Install +#+begin_src shell +paru -S zsh oh-my-zsh-git zsh-syntax-highlighting zsh-autosuggestions +chsh -s /usr/bin/zsh jaeus +/usr/share/oh-my-zsh/tools/install.sh +#+end_src + +*** modifiy zshrc +theme to (agnoster or random) + +after =source $ZSH/oh-my-zsh.sh= +#+begin_src shell +prompt_context(){} +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source /usr/share/zsh/plugins/zsh-autosuggestions/zsh-autosuggestions.zsh +#+end_src + +** TMUX +#+begin_src shell +paru -S tmux +git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm +#+end_src + +Configuration(~/.tmux.conf) +#+begin_src shell :tangle ./.tmux.conf +set -g default-terminal "screen-256color" +set -g mouse on + +# utf8 is on +# set -g utf8 on +# set -g status-utf8 on + +# address vim mode switching delay (http://superuser.com/a/252717/65504) +set -s escape-time 0 + +# scrollback buffer size increase +set -g history-limit 100000 + +# List of plugins +set -g @plugin 'tmux-plugins/tpm' +set -g @plugin 'tmux-plugins/tmux-sensible' +set -g @plugin 'tmux-plugins/tmux-yank' + +# Other examples: +# set -g @plugin 'github_username/plugin_name' +# set -g @plugin 'git@github.com/user/plugin' +# set -g @plugin 'git@bitbucket.com/user/plugin' + +# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) +run -b '~/.tmux/plugins/tpm/tpm' +#+end_src + +.tmux.conf파일을 위치시킨 후에. +#+begin_src shell +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/scripts/install_plugins.sh +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/bin/update_plugins all +#+end_src + +tmux를 항시 실행하기 위해 .zshrc에 다음 내용 추가 +#+begin_src shell +printf "if command -v tmux &> /dev/null && [ -z \"\$TMUX\" ]; then\ntmux\n fi\n" >> ~/.zshrc +#+end_src +** Fonts +#+begin_src shell +paru -S ttf-fira-code ttf-nanum nerd-fonts-mononoki +#+end_src +** 한글 입력문제 +#+begin_src shell +paru -S fcitx-hangul fcitx-configtool +#+end_src +in ~/.profile +#+begin_src shell +export GTK_IM_MODULE=fcitx +export QT_IM_MODULE=fcitx +export XMODIFIERS="@im=fcitx" +#+end_src + +in ~/.xmonad/scripts/autostart.sh +#+begin_src shell +run fcitx & +#+end_src + +** Enpass +#+begin_src shell +paru -S enpass +#+end_src + +in ~/.xmonad/scripts/autostart.sh +#+begin_src shell +run enpass & +#+end_src + +** EMACS +*** Install +#+begin_src shell +paru -S ripgrep emacs + +git clone --depth 1 https://github.com/hlissner/doom-emacs ~/.emacs.d +~/.emacs.d/bin/doom -y install +echo "alias doomsync=\"~/.emacs.d/bin/doom sync\"" >> ~/.zshrc +#+end_src + +Latex 지원 +#+begin_src shell +paru -S auctex texlive-most texlive-lang +#+end_src + + +in ~/.xmonad/scripts/autostart.sh +#+begin_src shell +run emacs --daemon +#+end_src +** Libre-office +Libre-office를 깔면 Emacs에서도 그 파일이 열림. +#+begin_src shell +paru -S libreoffice +#+end_src +** Alacritty +*** Install +#+begin_src shell +paru -S alacritty +#+end_src + +*** Configuration +#+begin_src shell :tangle ~/.config/alacritty/alacritty.yml :mkdirp yes +env: + TERM: xterm-256color + +window: + padding: + x: 6 + y: 6 + title: Alacritty + class: + instance: Alacritty + general: Alacritty + +scrolling: + history: 10000 +font: + normal: + family: Mononoki Nerd Font + style: Regular + bold: + family: Mononoki Nerd Font + style: Bold + italic: + family: Mononoki Nerd Font + style: Italic + bold_italic: + family: Mononoki Nerd Font + style: Bold Italic + # Point size + size: 11.0 + offset: + x: 0 + y: 1 +draw_bold_text_with_bright_colors: true +colors: + primary: + background: '0x282c34' + foreground: '0xbbc2cf' + selection: + text: '0xbbc2cf' + normal: + black: '0x1c1f24' + red: '0xff6c6b' + green: '0x98be65' + yellow: '0xda8548' + blue: '0x51afef' + magenta: '0xc678dd' + cyan: '0x5699af' + white: '0x202328' + bright: + black: '0x5b6268' + red: '0xda8548' + green: '0x4db5bd' + yellow: '0xecbe7b' + blue: '0x3071db' # This is 2257a0 in Doom Emacs but I lightened it. + magenta: '0xa9a1e1' + cyan: '0x46d9ff' + white: '0xdfdfdf' +background_opacity: 0.9 +key_bindings: + # (Windows, Linux, and BSD only) + - { key: V, mods: Control|Shift, action: Paste } + - { key: C, mods: Control|Shift, action: Copy } + - { key: Insert, mods: Shift, action: PasteSelection } + - { key: Key0, mods: Control, action: ResetFontSize } + - { key: Equals, mods: Control, action: IncreaseFontSize } + - { key: Plus, mods: Control, action: IncreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + - { key: Minus, mods: Control, action: DecreaseFontSize } + + - { key: Paste, action: Paste } + - { key: Copy, action: Copy } + - { key: L, mods: Control, action: ClearLogNotice } + - { key: L, mods: Control, chars: "\x0c" } + - { key: PageUp, mods: Shift, action: ScrollPageUp, mode: ~Alt } + - { key: PageDown, mods: Shift, action: ScrollPageDown, mode: ~Alt } + - { key: Home, mods: Shift, action: ScrollToTop, mode: ~Alt } + - { key: End, mods: Shift, action: ScrollToBottom, mode: ~Alt } +#+end_src +** Green-tunnel +proxy redirect +#+begin_src shell +npm install green-tunnel +#+end_src +* Proxy +#+begin_src shell +export proxy_addr="http://192.168.1.168:3128" +#+end_src + + +** Global +#+begin_src shell +echo export http_proxy=$proxy_addr >> ~/.zshrc +echo export HTTP_PROXY=$proxy_addr >> ~/.zshrc +echo export https_proxy=$proxy_addr >> ~/.zshrc +echo export HTTPS_PROXY=$proxy_addr >> ~/.zshrc +echo export ftp_proxy=$proxy_addr >> ~/.zshrc +echo export FTP_PROXY=$proxy_addr >> ~/.zshrc +echo export rsync_proxy=$proxy_addr >> ~/.zshrc +echo export RSYNC_PROXY=$proxy_addr >> ~/.zshrc +#+end_src + +Sudo 명령어에 proxy 환경변수 통과 +#+begin_src shell +echo "Defaults env_keep += \"*_proxy *_PROXY\"" > ./05_proxy +sudo mv 05_proxy /etc/sudoers.d +sudo chown root:root /etc/sudoers.d/05_proxy +#+end_src + +가끔 PGP키를 못받을때 +#+begin_src shell + sudo killall dirmngr + gpg --keyserver hkp://p80.pool.sks-keyservers.net:80 \ + --keyserver-options "timeout=40 http-proxy=$http_proxy" \ + --recv-keys B0F4253373F8F6F510D42178520A9993A1C052F8 +#+end_src +** Git +#+begin_src shell +git config --global http.proxy $proxy_addr +git config --global https.proxy $proxy_addr +#+end_src diff --git a/Note/WSL.org b/Note/WSL.org new file mode 100644 index 0000000..4df0c1c --- /dev/null +++ b/Note/WSL.org @@ -0,0 +1,225 @@ +#+TITLE: Wsl + +Arch 리눅스 기반으로 작성되었음. +WSL1 기반임. WSL2는 네트워크가 불안정해보임. + +* WSL Installation (Powershell) +** Windows Function Enable +Windows Function enable () +#+begin_src shell +# WSL +Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux +# Windows Sandbox (optional) +Enable-WindowsOptionalFeature -FeatureName "Containers-DisposableClientVM" -All -Online +#+end_src + +** Download and Installation +#+begin_src shell +$Arch_instDir = "c:/Archlinux" +mkdir -p $Arch_instDir +pushd $Arch_instDir +wget https://github.com/yuk7/ArchWSL/releases/latest/download/Arch.zip -OutFile Arch.zip +unzip ./Arch.zip +./Arch.exe +#+end_src + +** Terminal Emulator Installation +*** Installation + +vcxsrv는 X windows 기반 앱사용시 설치. +#+begin_src shell +choco install wsltty vcxsrv -y +pushd 'C:\ProgramData\Microsoft\Windows\Start Menu\Programs' +& '.\WSL Generate Shortcuts.lnk' +popd +#+end_src + +시작 폴더 =shell:startup= 에 다음의 config.xlaunch 넣으면 좋은듯? +#+begin_src shell +cp $HOME/.dotfiles/Note/WSL/config.xlaunch $HOME/AppData/Roaming/Microsoft/Windows/"Start Menu"/Programs/Startup/ +#+end_src + +*** Icon Change +[[file:./images/screenshot-02.png]] + +#+begin_src shell +$Shell = New-Object -ComObject ("WScript.Shell") +$ShortcutPath = [Environment]::GetFolderPath("Desktop") + "/WSL Terminal.lnk" +$Shortcut = $Shell.CreateShortcut($ShortcutPath); +$Shortcut.IconLocation = "$Arch_instDir/arch.exe, 0" +$Shortcut.Save() +#+end_src + +*** Add Context Menu +[[file:./images/screenshot-03.png]] +#+begin_src shell +reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\wsltty" /t REG_SZ /d "Open in WSLtty..." /f +reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\wsltty" /v Icon /t REG_SZ /d "$Arch_instDir/arch.exe" /f +$mintty_cmd = $HOME + "\AppData\Local\wsltty\bin\mintty.exe --WSL= --configdir=" + $HOME + "\AppData\Roaming\wsltty" +reg add "HKEY_CLASSES_ROOT\Directory\Background\shell\wsltty\Command" /t REG_SZ /d $mintty_cmd /f +#+end_src +*** Minttyrc +wsltty는 mintty기반이므로 .minttyrc의 설정값을 따른다. +=$HOME= Directory에 위치시키자 +#+begin_src shell +cp $HOME/.dotfiles/.minttyrc $HOME/ +#+end_src + +* WSL Initialization (in WSL) +** Locale +#+begin_src shell +echo ko_KR.UTF-8 UTF-8 >> /etc/locale.gen +locale-gen +echo LANG=ko_KR.UTF-8 > /etc/locale.conf +echo [network] > /etc/wsl.conf +echo generateHosts = false >> /etc/wsl.conf +pacman-key --init +pacman-key --populate archlinux + +#+end_src + +** Pacman Mirror List +WSL1 glibc-2-33-4 이슈가 있음. 마이크로소프트의 WSL1 커널 업데이트를 기대하기 힘든 상황이므로 WSL2를 사용하던지 Update Repo를 2월 14일자로 고정해 놓고 glibc를 업데이트 하면 glibc-2-33-3으로 업데이트됨. +#+begin_src shell +echo "Server = https://archive.archlinux.org/repos/2021/02/14/\$repo/os/\$arch" > etc/pacman.d/mirrorlist +pacman -Sy archlinux-keyring +pacman -S glibc +#+end_src + +그후 =/etc/pacman.conf= 의 IgnorePkg에 glibc 추가하여 업데이트가 진행되지 않도록 한후 mirrorlist를 최신으로 돌림. +#+begin_src config +IgnorePkg = fakeroot glibc +#+end_src + +한국 서버 우선. +#+begin_src shell +echo "Server = http://ftp.harukasan.org/archlinux/\$repo/os/\$arch" > /etc/pacman.d/mirrorlist +echo "Server = https://ftp.harukasan.org/archlinux/\$repo/os/\$arch" >> /etc/pacman.d/mirrorlist +echo "Server = http://ftp.lanet.kr/archlinux/\$repo/os/\$arch" >> /etc/pacman.d/mirrorlist +echo "Server = https://ftp.lanet.kr/archlinux/\$repo/os/\$arch" >> /etc/pacman.d/mirrorlist +echo "Server = http://mirror.premi.st/archlinux/\$repo/os/\$arch" >> /etc/pacman.d/mirrorlist +pacman -Syu man wget +#+end_src + +** User Addition +#+begin_src shell +EDITOR=vim visudo # uncomment %wheel ALL=(ALL) ALL +useradd -m -g users -G wheel -s /bin/bash jaeus +passwd jaeus +#+end_src + +Arch.exe 실행파일 있는곳에서 실행. (in powershell) +#+begin_src shell +./arch.exe config --default-user jaeus +#+end_src +** Git +#+begin_src shell +sudo pacman -S git +git config --global user.name "JaeYoo,Im" +git config --global user.email "cpu3792@gmail.com" +#+end_src + +** Paru (AUR Manager) +WSL1에서는 fakeroot-tcp를 사용해야 한다. +#+begin_src shell +sudo pacman -S base-devel # don't install fakeroot +cd ~ +git clone https://aur.archlinux.org/paru.git +cd paru +makepkg -si +#+end_src +** Application +#+begin_src shell +paru -S openssh python inetutils +#+end_src +*** Copy Configuration +#+begin_src shell + paru -S stow + rm ~/.zshrc + rm ~/.bashrc + git clone https://github.com/JaeYoo-Im/myDots.git ~/.dotfiles + cd ~/.dotfiles + stow . +#+end_src +*** ZSH +#+begin_src shell + paru -S zsh oh-my-zsh-git zsh-syntax-highlighting zsh-autosuggestions + chsh -s /bin/zsh jaeus + /usr/share/oh-my-zsh/tools/install.sh + mv ~/.zshrc.* ~/.zshrc # overwrite configuration +#+end_src + +*** TMUX +#+begin_src shell +paru -S tmux +git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/scripts/install_plugins.sh +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/bin/update_plugins all +#+end_src + +*** EMACS +GUI를 사용하기 위해 DISPLAY환경변수 추가. +#+begin_src shell + paru -S ripgrep emacs ttf-fira-code ttf-nanum + + # WSL1 + #echo export DISPLAY=:10.0 >> ~/.zshrc + # WSL2 + VETHER_IP=$(/bin/grep nameserver /etc/resolv.conf 2> /dev/null | /bin/tr -s ' ' | /bin/cut -d' ' -f2) + export DISPLAY=$VETHER_IP:0.0 +#+end_src + +Latex 지원 +#+begin_src shell +paru -S auctex texlive-most texlive-lang +#+end_src + +Emacs Windows shortcut +=c:\windows\system32\bash.exe= 를 이용하며, +실행시 cmd창이 자꾸 뜨기 때문에 runs.exe프로그램을 이용한다. + +in wsl. +#+begin_src shell +cp ~/.dotfiles/Note/WSL/run_emacs.sh ~/.run_emacs.sh +#+end_src +in Powershell. +#+begin_src shell +unzip $HOME/.dotfiles/Note/WSL/usr_cmd.zip -d $HOME/usr_cmd +#+end_src +[[./WSL/usr_cmd.zip]] 파일의 내용을 Windows의 =$HOME/usr_cmd= 에 넣는다. + +*** Libre-office +Libre-office를 깔면 Emacs에서도 그 파일이 열림. +#+begin_src shell +paru -S libreoffice +#+end_src + +* Proxy +#+begin_src shell +export proxy_addr="http://192.168.1.168:3128" +#+end_src + + +** Global +#+begin_src shell +echo export http_proxy=$proxy_addr >> ~/.zshrc +echo export HTTP_PROXY=$proxy_addr >> ~/.zshrc +echo export https_proxy=$proxy_addr >> ~/.zshrc +echo export HTTPS_PROXY=$proxy_addr >> ~/.zshrc +echo export ftp_proxy=$proxy_addr >> ~/.zshrc +echo export FTP_PROXY=$proxy_addr >> ~/.zshrc +echo export rsync_proxy=$proxy_addr >> ~/.zshrc +echo export RSYNC_PROXY=$proxy_addr >> ~/.zshrc +#+end_src + +Sudo 명령어에 proxy 환경변수 통과 +#+begin_src shell +echo "Defaults env_keep += \"*_proxy *_PROXY\"" > ./05_proxy +sudo mv 05_proxy /etc/sudoers.d +sudo chown root:root /etc/sudoers.d/05_proxy +#+end_src +** Git +#+begin_src shell +git config --global http.proxy $proxy_addr +git config --global https.proxy $proxy_addr +#+end_src diff --git a/Note/WSL/config.xlaunch b/Note/WSL/config.xlaunch new file mode 100644 index 0000000..c41d3e9 --- /dev/null +++ b/Note/WSL/config.xlaunch @@ -0,0 +1,2 @@ + + diff --git a/Note/WSL/run_emacs.sh b/Note/WSL/run_emacs.sh new file mode 100755 index 0000000..e9db8a9 --- /dev/null +++ b/Note/WSL/run_emacs.sh @@ -0,0 +1,8 @@ +#!/bin/bash + VETHER_IP=$(/bin/grep nameserver /etc/resolv.conf 2> /dev/null | /bin/tr -s ' ' | /bin/cut -d' ' -f2) + export DISPLAY=$VETHER_IP:10.0 + + emacs + + disown + exit diff --git a/Note/WSL/usr_cmd.zip b/Note/WSL/usr_cmd.zip new file mode 100755 index 0000000000000000000000000000000000000000..f29277edacbc8d1420f5c01f430888c4aa0a0659 GIT binary patch literal 46811 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�IQ~HAU3ERr2QqMRI+H-+k96TG#&1@%jXNQj-ka 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 literal 0 HcmV?d00001 diff --git a/Note/WindowEnv.org b/Note/WindowEnv.org new file mode 100644 index 0000000..94bf430 --- /dev/null +++ b/Note/WindowEnv.org @@ -0,0 +1,275 @@ +#+TITLE: Window Env + +* Windows Environment +모든 명령어는 Powershell에서 수행된다. +** 사전준비 +*** 환경변수 +#+begin_src shell +$git_username = "JaeYoo-Im" +$git_email = "cpu3792@gmail.com" +#+end_src +*** CapsLock키 비활성화 +#+begin_src shell +# Change KeyMap (Capslock to ctrl key) + reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout" /v "Scancode Map" /t REG_BINARY /d 0000000000000000020000001d003a0000000000 /f +#+end_src +*** Chocolatey 설치 +#+begin_src shell +Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) +#+end_src + +** Application +*** Base Apps +#+begin_src shell +choco install firefox -y +choco install git -y +choco install git-fork -y +choco install dejavufonts -y +choco install firacode -y +choco install enpass.install -y +#+end_src + +windows에서 기본으로 제공하는 openssh는 proxycommand등의 기능이 지원되지 않는다. +삭제후 Git을 설치하면 같이 설치되는 ssh를 사용한다. +[[./images/screenshot-04.png]] +[[./images/screenshot-05.png]] + +개인적으로 =%HOME%/usr_cmd= 를 환경변수에 추가하여 스크립트들을 넣어 사용한다. +#+begin_src shell + [Environment]::SetEnvironmentVariable("HOME", $HOME, "Machine") + [Environment]::SetEnvironmentVariable("Path", $env:Path + ";" + $HOME + "\usr_cmd;c:\Program Files\Git\bin;c:\Program Files\Git\usr\bin", "Machine") + $env:Path = [Environment]::GetEnvironmentVariable("Path", "Machine") + + git config --global user.name $git_username + git config --global user.email $git_email + + git clone https://github.com/JaeYoo-Im/myDots.git $HOME/.dotfiles +#+end_src + +*** Neovim +#+begin_src shell + choco install neovim -y + choco install ctags -y + cp -r $HOME/.dotfiles/.config/nvim $HOME/AppData/Local +#+end_src + +Context 메뉴 추가 + + +[[./images/screenshot-06.png]] +#+begin_src shell +# Edit with neovim context menu +reg add HKEY_CLASSES_ROOT\*\shell\NeoVim /t REG_SZ /d "Edit with NeoVim..." /f +reg add HKEY_CLASSES_ROOT\*\shell\NeoVim /v Icon /t REG_SZ /d "C:\tools\neovim\Neovim\bin\nvim-qt.exe" /f +reg add HKEY_CLASSES_ROOT\*\shell\NeoVim\Command /t REG_SZ /d "C:\tools\neovim\Neovim\bin\nvim-qt.exe """"%1""""" /f +#+end_src + +Plugin Manager 설치 +#+begin_src shell + +md ~\AppData\Local\nvim\autoload +$uri = 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' +(New-Object Net.WebClient).DownloadFile( + $uri, + $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath( + "~\AppData\Local\nvim\autoload\plug.vim" + ) +) +#+end_src + +*** Networking +#+begin_src shell +choco install angryip -y +choco install wireshark -y +choco install putty.install -y +#+end_src +*** Media +#+begin_src shell +choco install handbrake.install -y +choco install potplayer -y +choco install reaper -y +choco install gimp -y +choco install inkscape -y +#choco install blender -y +#+end_src +*** Gaming +#+begin_src shell +choco install goggalaxy -y +choco install msiafterburner -y +choco install steam -y +choco install epicgameslauncher -y +choco install discord -y +#+end_src +*** Programming +#+begin_src shell +choco install visualstudio2019buildtools -y +#+end_src + +**** Clang +#+begin_src shell +choco install llvm -y +choco install cmake -y +#+end_src + +**** Rust +Rust는 build tools 설치후 진행. +#+begin_src shell +wget https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe -OutFile rustup-init.exe +./rustup-init.exe +$env:Path += ";$HOME/.cargo/bin" +rustup component add rls +rustup component add rust-src +rustup component add rust-analysis +rm ./rustup-init.exe +#+end_src + +**** Python Packages +#+begin_src shell +choco install python -y +$env:Path += ";C:/Python39/Scripts" +python -m pip install --upgrade pip +#pip install wheel +#pip install six +#pip uninstall pygls +#pip install pygls==0.9.1 # hdl_checker dependency +#pip install hdl_checker #neovim / modelsim 연동 +pip install numpy +pip install matplotlib +#+end_src + +**** Julia +#+begin_src shell +choco install julia atom -y +#+end_src + +***** Package Install +Julia 실행후 +#+begin_src julia +] #package 관리자 진입 +add Plots +add FFTW +#+end_src + +***** ATOM +=Ctrl+,= 입력하여 설정창 띄운후 uber-juno 설치. +*** Latex +예전에 사용하던 방법인데 남겨놓는다. 최근에는 WSL의 EMACS에서 AUCTEX를 이용해서 사용하고자 하고 있음. +**** Texlive 사용방법 +#+begin_src shell +wget http://mirror.navercorp.com/CTAN/systems/texlive/Images/texlive.iso -OutFile texlive.iso +$image_path = (Get-Location).path + "\texlive.iso" +$mountResult = Mount-DiskImage -ImagePath $image_path -PassThru +$driveLetter = ($mountResult | Get-Volume).DriveLetter + ":" +Push-Location $driveLetter +.\install-tl-windows.bat +Pop-Location +Dismount-DiskImage -ImagePath $image_path + +choco install texstudio -y + +rm ./texlive.iso +#+end_src +Context Menu +#+begin_src shell +reg add "HKEY_CLASSES_ROOT\tex File\shell\pdfLatex" /t REG_SZ /d "Generate PDF..." /f +$texlive_context_cmd = $texlive_inst_dir + "/bin/win32/pdflatex.exe -synctex=1 -interaction=nonstopmode ""%1""" +reg add "HKEY_CLASSES_ROOT\tex File\shell\pdfLatex\Command" /t REG_SZ /d $texlive_context_cmd /f +#+end_src + +**** Miktex 사용방법 +#+begin_src shell +choco install miktex -y +choco install texmaker -y +choco install graphviz -y +choco install gnuplot -y +#+end_src + +*** Others +#+begin_src shell +choco install bandizip -y +choco install everything -y +choco install sumatrapdf.install -y +choco install filezilla -y +choco install transgui -y +choco install honeyview -y +choco install rufus -y +choco install pdfsam.install -y + +choco install dotnetcore-sdk -y +choco install powertoys -y +#+end_src +* Proxy +프록시를 이용하여 특정앱을 업데이트하거나 특정앱의 인터넷접속을 할때 쓰던 방식이다. + +환경변수는 아래와 같다. +#+begin_src shell +$proxy_addr = "192.168.1.168:3128" +#+end_src + +** Global Proxy +앞서 usr_cmd를 환경변수에 추가하였기에 여기에 =proxy.bat= 파일을 생성하여 =Win-R= 실행창에서 빠르게 프록시를 켜고 끌수 있게 하였다. +1. Proxy 0 프록시 끄기 +2. Proxy 1 프록시 켜기 +#+begin_src shell +$proxy_bat_file = $HOME + "\usr_cmd\proxy.bat" + Add-Content -Path $proxy_bat_file -Value ("set PROXY_ADDR=" + $proxy_addr) + Add-Content -Path $proxy_bat_file -Value (Get-Content "./proxy_base.txt") +#+end_src + +여기서 proxy_base.txt 파일의 내용은 다음과 같다. +이상하게 Internet Explorer를 켜고 꺼야 적용이 되더라. +#+begin_src shell +@echo off + +taskkill /IM iexplore.exe +set argc=0 +for %%x in (%*) do Set /A argc+=1 + +echo argc : %argc% + +if %argc% == 1 goto START_BAT +echo Argument is needed. +goto END_BAT + +:START_BAT + +if /i %1 == 0 goto DISABLE +goto ENABLE + +goto DISABLE + +:ENABLE +@%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /t REG_SZ /d %PROXY_ADDR% /f +@%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f +start iexplore.exe +sleep 2 +taskkill /IM iexplore.exe +goto END_BAT + +:DISABLE +@%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /t REG_SZ /d 0.0.0.0:80 /f +@%SystemRoot%\system32\reg.exe add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f +start iexplore.exe +sleep 2 +taskkill /IM iexplore.exe +goto END_BAT + +:END_BAT +#+end_src + +** Chocolatey +#+begin_src shell +choco config set proxy http://$proxy_addr +#+end_src +** Git +#+begin_src shell +git config --global http.proxy http://$proxy_addr +git config --global https.proxy https://$proxy_addr +#+end_src + +** Powershell에서 임시 활성화 +#+begin_src shell +$proxy='http://'+$proxy_addr +$ENV:HTTP_PROXY=$proxy +$ENV:HTTPS_PROXY=$proxy +#+end_src diff --git a/Note/images/screenshot-01.png b/Note/images/screenshot-01.png new file mode 100644 index 0000000000000000000000000000000000000000..024948e12b0840f25f7fab23a84f1c2197fdc097 GIT binary patch literal 2891 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 literal 0 HcmV?d00001 diff --git a/Note/images/screenshot-02.png b/Note/images/screenshot-02.png new file mode 100644 index 0000000000000000000000000000000000000000..81393583c28891e86d88f1169591b5e9fe75a2f7 GIT binary patch literal 3798 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 KzeMj+#J>PXA;{(c literal 0 HcmV?d00001 diff --git a/Note/images/screenshot-04.png b/Note/images/screenshot-04.png new file mode 100755 index 0000000000000000000000000000000000000000..8cad18fbd49f2368adccb6287e6a4a73664a2faf GIT binary patch literal 202946 zcmYIvcT`hZ_jW>r=m3d|N(%%A6&**a1VRZQj_61mnNgI`3z;G>-e>RUdGzuMy1O+b!U+L^tGpQT0dO|M8g96 zPAR1Srtv0T@)_*owcZ!DHWtUDI2|SuSjVyB&pfcrslA+sh8Ox(U;a6G==Xs`mS0>K zL(-2O)cMWkcN-h1eyPjv=0)D!J%RX9x3U)B>t9E-CA$}zinhBph6Lytd|XdVoNt*Z zIlJY%_xveXKyw6l{EL4!L|zMR)I8&|U_2DmE(>l`P;7|k|JXj49bk@bSo$#L1$_Xl z9j1Atr5aCk4Tg6=QHD-x^bUtCeINfa_g-X*xf32e70|pyWhzQTZsfsqnAV#slHwm* zL#D3c_#B>sPaJUb#u*$=4iw9MoZ#rI-YqL1Fe%QsA&>DCt2J?5PE^od;eUlFzVlj@ zWTAv!`O;6)ooE}nfsUWv9?0z>gb(kO$ExZQFucOU@J6TfJiU0EgVzVQIi+y=SH*NB zc~bETy>^bHU1F%^Zqq$*Cs1aE67|Gu_*3SLzRvgf75!r&?XolhKxg-D6}#g7++E@Y zxKU)KSND!f+Q1+D%jOR569dpcY}k^2-HFCUIsxwT=O%#px7s9OMrbHB2VB zScvra+2}rlk-jtV^z6_7HME=G^&lm%cGvK!V>yP5SBF19dI13KvFVna!AgtnIuJse zA_er6@%Oh$SPCdgOLFm3v>}H!vlm8YX+bgMXR*&_YA8fL`R}> zday)`FCs1VRHZ89OnlW$@o7hBJfxZ}tQFI(;Czcdpi)}L8Uf4_AC_gb%4Z;0& zh1Ym|uGRoTIrgJ#rv?ABDXKMt3(i^iBxNpClDm};mi6RO$#Z<+Nu0p)R*Ei5dMk3D zvFg%iH|5!c&1^Dd2vERH`p0I{$(^F4Cap1a@$-NqV<#4*SGW8lO^yg|&3!bbQL5x) z=u!Z5fL8UCZrHSFCbqpuGdxmw)EMDkT0!B)u2?dwMZUI`$*{Z#+J#2wuJrlg4@S$RDGtT3` zHZJ}yA@8ZYKNI{z-aWscM5*`cT?cYM*LeH}75!Dj00e(+d%l7rs>mjVdYau+pz9yI z1P?)EZHfU=W5#~BS3r|$#c=JV&Ib1$5fX^o?}kf{q7^#pQ_@J0;xo5^T;DT+o0kE0 z=u45g2%i@&@5sd%T=A(}Lsf!=TCY{p;MT=9`5cf!IM1ZX9N_GC^(m#NF;)6H7#kov zSZFIT>34N0p~;nB{+lzEGds67!(^h7$*;|Ht8e2vfmk~GfT!v0XmcL+fl{xfbG~9H z2^k;ELBR#je5Dg==T-;CEtCP_sgV{ZN2ioIel8 z_<9S~tkZ{r1?lK%fH8KOtCT?gAl0`8FcZe^(o3@ynmcBW5WQgnet1zwPI_ZzP3yGd zwRh9OSDC-sb~ciif0NREb!;VZQ8E350grpv#+7qk=ndKrTs5`F?mk}d>iQHY6YCgg z7GG6)`*|y+D5~wW$_!w#l!flZYCU*p0}r8>+B&Zgs~8H4g8@zc%8rC|picc-SKsB% zx;A;Om)b*Sfa%CWlkE4+*oWPJq-&x{Yjgn0f}|aMi#+_~jl$V8cKNa8k5SM=<$Xn( z1Emnf1^AU(`)wONZA7O9Gi6A3`7Ddr`tK&iHe|HkcyZdj>lfp^OL+{YdXelsc`Q%O zAJ|xi%&GQ!{8;yuWgM&4K#OuQdcRS9f&;{7tN++y^-pt)zkvnYN8Cqk4*0DkIm@qQ z1pfZ|vYj(CSN3gm@J~`$eDBO>ORKRgay-(_f)sY+iebj85y;R9mCA% zgK^_ZU%)&Zuv;h@Ct&{7YV6fjCh6vd{XUb}+H+z%CS4AbpoLRR6iA1O7cgy>OsNRS z3U|JTU<$KQUZLwjFw?#D+-|G;$P>Mo!v31D3CcqI;~VDHT{Zvi%XU@h*xtx+1a`SNF;5?#`mx}&7sWVr0_Gr3 zVKq;dWmh4Adi>6n->A4QwgplrTW^B%8Ck2C6@eJu*h-??50^Wuv7~-~#gA7gPg*Ah zd}_2v6GauCQH{xLf=^*$X4k69G#1`04uRMtH_icE4({J<5);%WP11HAyJds(umUs} zx8K?K_#v~0B#&*V=T#;ECM#JNcZpeR56{Le#onP4v&d<8Odn)M(WdWy@&6<4-XFma zks;9r&xcwZ(gN=(WMF6HCa*G)nr}|vtxGyoi_C_`dN2}|twHTR`I#m5ckxr4K-C`@ zZy9g5<7;#Ic{0i(-*+XDqpB8z-l}?lFw>$jjgjE=v2!0tnskO_xCJ_J zYkkn_fmx??EKV&Et)VxQOiYn+e+@aDn;slzew39=(v3IXrnj>jVHl9W-E*5dVE0AU zc}8kFLlL^JXW_{lTo^xf{$yPY=Rh0+P$cJKZwfbFFkM+2ubnOX#y&hLn15(hyDxDmEVYI6`y6zQlB(&xg^mFmhz<4j~n#LV|F@-*CRb+KrtKh95) z_lv7%;`1W+04vI-(Td?UK_SYSh(r+Tz76!{05SgDVdG&C_xw(>6Oxo#0#nluJinnT zcFaQ=cE38H=9t!+{;>5Uqg_3UdwE@aGtz>atc?|o>hfF@rmDXtpWOr~G^x%dq`q9e zA)Hv&%?4q{1zffFkP!Z{8;QCiI-BWU8q=j{Lc8c}F6HL)YhN;>G}XS>?ZDW`SWm!XjwsBeqLO$^LaIUtfMrLK(VG ze1K1K-5#G_v78s4#RaWXsM$$Zq3*=t5C7Q4^YR{Uzi)Fqi0XhqeK`4N${IO1YIATT zDq>u^5VsEBAwbPzDBu|P!RTN@zp1;m->vgq6C6wS`lD0D`5*}xoU0?U9aHlq3|`XZ z13*r5yGt{Hrdt)e-v^`YWGtGsH=68Cx7Om;MP}AJsrH-G?Tqw|fmb~-E2Bn3=#_?^ zn2vFkR^ed5%+$->g3%qQe;z5NTTC zw#1mqdu}IqQ(04}AL=<|)ZsG|_yXVj5Uc?5yYrNhGFn(^3D&JgV2<~Cmwggp{6uQE z=LyIJtf!)tq7DHeZU}HU#rNCocAbcszf}U87kN+<6Nx1@CdFs(&;5blO+Wm;xnt3x z4ehKN{R}UdoY;=Z3IDlLT?WTh|%JG}ucSNnb zfAryH2Ugy-ir?YFyo;OOhl;F6u|WQZfGqW83CKX(5-v>^oGRZu_KlFf%_hKicCrdN zSPL1y1S9~JfqZO2kj4dHw{$kDRKHX7NEw_4e{puwFh&0TNr((3hofi6#1(FSX#ecC zQA60BDB2OW(_)9(q3_9Cuk+@2W>Qw#Yot+Y(L&QCt;X>9iG z)BVwKDGDz{YR7EJAN!A$8;mTag`+d)Qz9nLxJ5<`l&FR-QxarU5F#l&8-RYHi1WB6 z<#QpUZ=Z#0m!(@*%FcFR3*N+MD>1Uy0sIo`Zil9Q@>f~}eaiHfWxjwwyl}u;Fh_0k zIb3|5VAwpqN-!iZU59FKWWqV~u3O!v@c=)d?ymXn!fwfedxp?Emj9JNdwMq9Xk_t9 zg>P=;jl8d+EaYaKdjzGDwuAYdova{#I56i^Ni3Z`!RDgUt2ckCBqk_5dfAnYMT_ zfIs*=M8I0@NtC#hX3L*`cGphTlWoy)$p>2M`|r^aw0$_ZS^Pz=Uk;%|slYu)x@d9am^UEc<;o3ekB#Rr5)Y9IODsX{d&j+D?n#DTb)Tvt~gtW@BT7)G+@2 z-U*K}yCvz8w3>~~14XYnZA%kKpeW!`ke|(VWoYS$QhblDM>%XJFSt&f=?c*-M_}X2 zDDs0V-ZJAou)NO`fNnXCFGxY7>GQ&F6eKeIIaE@J{E9fylY^4)rgv(23?H})C@7&D z5kHM5gl+CX&5BPhuZWx{*IkQmdrALe;iw?==R~Q7=g($LnlFL!4l2up4E_>>P&w`ycX}#V} zZ{195AKh+^wNxP%#zbrh%sl#quEdH>u{Ugo`Z|^~zJOnngN$x%16_wKrC!3x(_ch?u8ty^%Foe$eoU(TCxY|ui~ z+``|h3=)c1cJz(a3%6+?j+vKQl{yv%{+?Ww9_?u(QbJP#U-d~XMkwmD&V%+ZG*iDr zt_07VpZ^^5g%#Pk53@y6g+W!YaPMN(;?G9(R1aH4@4ylwyYtDE^cU~+z4C+u`IaM> zi1x;);8RbGawl;yJ0xxPrlDUA2>ge5}Oq1mP0b$H!V!+gL zB%6HV^HS`t!e-3K!WGAl8uhDFph|tw#LAdHeAV!o_CLM1^ddRADeCROS9Y_>xH<^^ zZtqu&PgHDuBmWTXku1%}FBLML$ZywjPy9agZT(%`s>j|ALCK|F@hK)@2kFx0lPPhN zo0!|)Hp-w7qCZ{IU@jg1H{DkAmD-9e&jZxOKwNQ40X+Xp3g!yndV)=U)oBCJktJx!!n`Q4?{hPf@ATYPX zU`TOAmFe*aYfzlB>TDNCFfTQ9a-V{=xw85t5~erumFkbJ8x48E$mYrDxWz>ZIMyLO z)%q;4tiP&`2Z@aMauS!#v$0`zz`YVR2Ok@=sGFV~koNJ*Am@G-j)-fAtvgZAEX7(=<;UxFKkU=RH%F zrzh-iW@!%{v7XFMHfM}}LnHjqvhFVdc&o4>dC1dAOTM0=rz%tGy%cU?&dhI;mb0Ku zdwt7WmTvcan|rW|K&CEdP=u!z?gM7KxWg&sFa7R=Wwym>H(@t3+~yrXnef(7w$p#C z;c0}uxgYP!Yl;D0@hCx7>YS|MaEK#La8B<$a`6L1q2#lD$#;rnRz}$HxyLHDgj51U zGAzjJ-1Gs@b#{)irt4tO?ZbM^%3Rq?0+rM!JJD()9m?l7g(Ai-Z!zB3PeINtWN3oT zE!ygj3tq2;?mqBup^ma{J}Y$AUSsC@UV&{dG#7~nJHGtxk4-zL|5O(cI+-2i_1&dL zHOTs59S{*$P%$lWE@8GvJ8Sycovlt9QeiV_NO|T`UJH?=7e7P_F2-AF_p0O46L3Xb zs?;P=o2dRKAqM4L`XuKAXIP&5sgHDw1ys-&O;1=8O9;ob73D&PdP_j-xP##_f#hA4 zlrB(C>r7ge^^NSkwM{4K!OaCcuUV0t=g_n`Zh~=s&5GC9&{{km|V5*YI>< zkUj6mlY~c%A49*X7(kDIEBbYH%UcD-uRzT%zR=ulKUO zjof*p+m-_@4;b@Hj5G*GbXf(AylYeE#fsu6xl)Ae-?zCH;$&3N3pBAYP0uJe)nD#o zOsn}p-N2&MCS41|bz%BuXd0>O&!KcVhDKF?kFLJ5ZANf3dSLa4$gmHlMYl@rsuI5M z`LI4`;(IM^ly8r|Ti6T6n%AQiEcDWfSIrH3?H=0@Y?1cxF3iWRedpz$oB3?FtoA=tjEqN1<#p-{VIV5|eIQ$h z=B9TtsL*&^wA)xy^`DM7=zt_@GO1)cC4Y5O-%#o;`q8c8{4Gyq(tf@+?+|N3*|! z^^Z67?BAy-y?EgFn7@z28FF8~CpXgQsL4dsx{cOcq*VikD{+BjXoZ+=37M)tn;dl@ z*LMIM$qcmeK0E#1L}sESt^83{H81aMr0>w095b!Z1tsrKAB*f|Z>r&-@m#a<#BR<$M=27UR06+2K?qD2o=V^5L-98JBb}uJy-j+NVmtHdIKChUhIF8_}pwr zx3ShXj=sKblDxV755^Ky*5>j3*ATakClEP$uLmwLsQrxVD#xT@{XDv|CU;Q+B9cf` z)me~^WGh*j$3r6et}jF+E}bt|QG>{)%BF`gF^Ng5)H>$Qq8^8(s8(TaHzOkC|l z;SI z5DlaUK~c@0&~%p{e_C3qnwSVzl~FHN(LvP{`!4eqP43 z`@I_PZNE1|)xR+0(qLVjNjN&y4?R}3{TnQ*b1RO5vFmgC3P_7IzD-aS%! ziABZP_)V!GdSq*y#x06GkGY6+zrf^shiF zb7nZV_R1HCXPHG_X;K9B{3|r%rFOlVe}6ZglBRpX_N{m9s~u)O<9W*lfK127`as|O zLJG5pixIShGlm%|ojRhIy>qa)$O&MwN`L%MN%b>24oy$d8~b2ml_C2? zey6#3v#Q)8l5>FC@%#Jteew=qaX!fNa3imm5?nfTyCZ^f(8Mc!Sc7{PioEHS9>jwC=wZ|`Ean3v8#S$10^YhkY--`mJq_M$=+twa24Lxe zjHQICz8MV~e}KH7E5TC*+>i3Dv2)dv%<+z;6}#OGJvzEeIyP}fQvvfXAkeXJTk;L4 zrLpuky>!^&v?qetKTEy-2j7>J3%C-2{gKn>i83Z{w1+&r9dETK#>Qn5Mnjfv3C~`9 zjgXxRiQtq<}po3OlDg^x_NVWRlUj(N(>1~Eyo&EvRf#Tr z=nE8g&Gl))%=v(yJ@ee0;R#*F`l!W?tWC@uabjpVK^bI3C7VaYTUjSfAUoWe7es1D z7pxYx&O_}L-NdUxZK{KL;A~#1X!P`M9_7JY6w7;a=Y=gbjq-~3?g`P5}foh&*LvR&got>z!8--wxesClOX z9UV&F+(w_+%o6WtUT>X!q;#c7x0W!#)l^T6YI!+$>tD7nUs{Xp$$r2N(vd=FA$}fu z=)-^s^RBKJk)~d$Y6zeoEQwWf*?|K&hDq6d#f>Xj_tHy}sI;=HR&W1|0G%#!YG3~{ zmrZq()@lj}2v&1y5p2V9r?CVS(5uX*_5_aNH#!z<0|jYcoh zDt7$iKE1i(EX-VZ2?zmrhl#^@!z2y1K?yIODuIrHrXQ;4I zClGaVVJy0a8Z?(-a&6apU3#sb@3PvmPnY^Mf*3d}kd3xXElo9R5{k@2s&-?gXZYE` ztzihHcviS*Wo=5OFB;S@RfWe4p4d5W9{oxC*y4@<7S&Eh&=A7ytVjF&>;MSF)ozt` z|Axx<30LBbY!h)<9qLo3a{-)7OT%b52{}F8JJh?!^H6XO%6nRek=XJ zsCm!2*rLa$UY}PuOm{hhac78EKAYZ_$*3BSufoQk#i7K-Y0)Qft_H2GfwEI6yckG^gxE4L5qU_jY zWkPeY;G?njcMFqS$cysohLb6_akqLNpMDR)fZ`GZAak2_!(QHHVw3C1P_)DyXqrJf zdon?9g>$ogq!5WV;Zu`9zIS#bavudjlj@Pln11lRZ!*uWJG(s!`{@`=rMF_iXW;q0 zc3AKxvV zv1w~7d5qsbB?__4#X?UK$C1?6ZV<#=OLV6?)ufbOaHc=te*{Ty!EXpCLh4%v`$4a% z+WWUhr!x!cRb*3xfkPMfMZ5AJ>!^k;stS+p@O09nwg5w~z)m%~xym!I@&b(Ilk({iwjYDF6?>+uTF)@^?7fUdIc%$N}nh~9e#kBzuSmC6#OoK5*CEkh< zel7#ot5Xz|j`LUJ7TnC!qw=rcW}GkRwKfW~1t`|FIks9;KVFZcz2+Y@02G3m*`Zzx z;%WjYBx5O_+?i9PBnMW2{_0c0Chg<7vkO!G@%+``W7C-~-3YFPQF;Pu!)zasFg&sK z$wPH@9cZ*vurTvaBsdwt2kO?@ll!$h0VHE>wkt15e#@-6k}ELX)m%fQ z$T40}e}?bRd|oB6P0FeD_~WJkFXFiSLP>!hR{aV@0iyxt<%?-lsomN|fZ0XLqpi~dx%m;7pS zY2qXtJqIwaB)4f?HoTowYkAuifZR7Ajo)X?oE~`zaWXU(eIhw%!W^@rf2{l}Pcpu% z(~Y_&miEgOa39AiDyMZ1b*flxMr0?}a}-mM$mQUF*V;gyd{-_nFnj1Halv(K9C3wM z^Ze8&etMaFET41uiEb}-gSr1}h_GP6-@+RfI$;*Uc>8cYh)?u4>N*S4& zhFbx4s7G_1D-NG zQXpr4h?@V>AGc-c#1s`QZc_TrOn%jc+1hYFyGw7tJcB}=WMg*-SKV8t$CNk>^^EqZ z@V^)Nh&29aW-?o?+bNf@@xY8<4kU#FxeJ#YsE?;KdITAv2ezw{0K!@?ncCp)sFllZ z)OivvV@LqWM`D;Q6@mXNL_DH#*gl-ZfxFHh)!z7U5pDsS+1FJkNs{?v`i%i? zT{9zbD(V%#WPTlg66V&ubA{JZo-wDT-+@ADrw6~$+xl?I)rx15}f$a`O| z&;K{Wty;S+wE%E^s8IE_^9zzH>Ne|5JsN$=Oyv+FOC}U+y+Ic+luf1B|n8G%66De1nIfmd&1=@D1 ziGJ|`J-09J&xY}Ol)6Cbf!|W)#i?Vk`Ir);W+<%xnp3*LK`UiCjH8p>BsG_*2sN_S zB&-nXqh8Cjq|5iRa=L+JRi{;hG&(YhN?k?<+I*jTo@yM!DCsi9Twym!@lmu|>%fs( ztEU!H%as+WzJN~Roz&>{buU$JquqW*T_QL`H+d!Dbvni!kFw6#JP-;Pfj>8E8)_~d z{oS=gxs4&cn)lILhW{_nEJ!R9j@|RuAN$Cbu9Lr`J=rBOz2MHA^^l** zwG))zFmpqovEh8%>$c`Q!&|Io48tfMS$T|G+cP8|Dqf9HJw>OfPk!|O}NKZV^x^9e5h`g^Gk6jmQ#Qw7@3n=v1t$g{QN&}Uz_t$BE>V%}^_6Uc=4&_Eh;ahK#49MD=ZELd5i??6dv|?WWO$(++^FX_P_ELO3KkEWwB}l*?qiy;R zJIU`keHaBfvb9R zy;Z9Cu{0oxeXj+gGb-rN6g{ol=ucaUb$JvOZmfb?Q!CdOPpjYYoIb#7-~Ye ze_$fWmyOZJ71a`A$U5DP#scC(jGG~jCl(YQ3WsZiuJ1V_AcU_|j^RzU53vty*Cp6} zQ}|5t41~J1>`O<${{J!srL_yeOzGD%5^rs;> zX=yP*uzC2t0T6nWBJx=QmaMQ>Z{GGBgJ}V$^~+z_r4-@r zl-QuV2k8KDtuCZTi1G}I&(q_M#x@ZiEWvb=g8>*-P;1YMB%3#+i@J9c-P)tSQf`=8 z6(3w`-FdT2TEWqLBFIw_Zk_-e9RM*4(o=kcwbq0!viW;;p7XyR;I^{I+gm=pfH>e< z+w|!HYgOaAwVY+?eFXJZIr^%0PJe{2bi{$q3BQ^{b~#Wj#r`VWONi5*XieO9g6>r< zbx?OINd%<({H=82$Jf67Zq*MNb>24Aj3pO2on*499gLq*w_rL6Xb3m%{pNsepp51- zxtNjQA6sGWpacFu1jiYUX=5w(TJc6U^|Rx3{jMgF;@8A-gSzfAmEJNQSzzm&a@2m>cTLI zt-+aj_HnfMDhKaU;-_c1uj8;>BUX0RYH{MwW-U-r`Y!%$Eok;#?+!)1;#OfNNLOms znv-L_C;ZKskq(!sl;`)tU$oZK*LXq}JFUQ1FeKj7V^Ix@>bnwf6m||(myDwfttx2J z;+v8GMt%c%k7@||ZS8|UE*>V)oxnJ5`!_kSREtL+J9mO&giwsEvYx;4u9BrG^e9?N z+Q_^ij5XsMTw69f4Q6%>ZFT6&FPHXJg|4~Wd*mUFme)D9MpZAL@h;SXBPMGJfg7(< zH;4?_-PTCfhq_2QKvnOJvUvs)h%VU3m~evo516ou8gIPA34PjO%Bz!=t#kE*H?wsa z(z-p*GLcVxK`S^JA|Z7rZMDX(t-+t$ow4WuW^bC(Z>y-`?sXOD&B@(R?j2c;(v)@M zPr87)wT6Vqd{7bY2Fq1SgbajzznNlDt}+zNZ%1)cy1W>ht2r#E<$vY5LQ9v|J+A9b z!EbIqNNLh`bI=rgm#tQ}zF1P(S}A9*bKP6xtr;0{WD29@IlyUt=4la&yUhhw>dRw3 zAuW0ob_cvoFST&-kiEL+(i<9KbtCpje3!xjeyMaC)Khkvku*GUYd`cbg>xrfWUHfn zeWppdU%t@y@3k=oV5bgUvkc*ATx(&D2Qj-Q1Dmum9NJUA1ooL?6O4+M7kRLabed*R`Gvwk(l1NfeJ8sRvMvm zp2Uz?bEWu)Sh}*uVNQPgZeC+tqn?NG)VAgLl8b)Ty?v89UYlSq>3fDn4h~)@Aw6b1# zee&7upIJZ2=Yn`jU+j>2`&)VxL&j{-O18Hgp=(33r<&?dDdKkB2iLiwR#fTBD&tX<=RYF9yoK>Hw3;MV3}=v85x(aSERAN1|N|znONM} z(Z+Y`9m7$VReQu(d%)^wUmW4S;Lzy%p^Xp6hUZqd&DX5We6PQj=|(sGFQ(ciFa5y% z(NyUy1*Rk~?xXmCGQJ&Q|1KW%&y&KBb^51SPyyf6EUCy}ETU(-KIXuf`_^RVRjDBH z`5VggC~TVl@(RXJB`x*2zgS0#srJRX`l5iS&UDyzDamWO8`k0r^x4;RS$l-x`rHlm zNA)X36Yh+!E&YC^D5xw*WO0KNUa0DBQV37H=`ti3Ysk}A)qu3B8V~P|2l@~F((rt? zEV85YcF4$*!~mD`O?vG`-t?N8_y9H`7*HIB`eQcY^-JF}Bl>C$BEi=DqNGS6U^vM2 z15ce}c16h-Ngc(BoO3s#QXR8<=gF(v>E<{uOuAZ744T$<*=@|qoNJM(2K?8jFqwo^LJayu73uMoH2tar3I0~xPJE6#IOn)$vh zU+O#SAyNJ5Rog}Ttd@=Ls8ajf=(i&`ReUvJHLSNib)tgAZ%%16UJmrH;En*E5$YoS zz?}eUZ0XObr^5}D>XKTR)xJd>XuQ4f*_j#I-(RAG4lzTfzW6hOCl*28XET;I$F44y z9(AS-P>u0BH_a7hjONR*e6=|Mb}cS&CLcB^!r(XZ!JD*ecL&uHAd}E9v{k>2KlcC- z{jfoX_Wa??FDFf`BDmSD<6zcTo*Dbr^Q1`EV|27; z+Y5CqvQufQZ12QIP2nZ>c?6U{a7_m+1_+Iq_E!VS@w2>1;zxGGw2Fo`^zlN%2%0TG z&E*-4DQJ~y;{0UUegQ2hZI+*}X$NObaddU?MUML?O zN=XKgY!mcW-?sN$JbIOYmIw+tr$Ys->w!7O=7@@R#9UW`9kNntB8aU;W8PyhBMi{FKrZFzc5?#IzRH!XV|Y^Zs^lufc5Ct9NDTRe}#vAOJSy` z=U`SOmIZlk_0l&|v0lL%J7|9+8{Iq9WEiio#c#wgUOll&b{_#J{xCiQ*@)OU5(*Hl zefXs?#d~HI@}~uLTmrfJ+d_t+Z%|Idoc+!V8neRX!?U&M7iB|&%=Cww;az4_dX;`* zl$-HOo0bENOk6A&j3MM zRo!puh~=(3s0lSM>g9v_ERcs_h*Rd+Qh(5)qDa@mYaWyYmQ|V}`&x3*rZd z!WLJ_&p+Rkv3}a)Uwk&myibE*f{4S86TX$Qso}bm*zXEeL zUg=B-i`C|>yt1q$;?qY7yS-icWj0g%&} zX#!e7Uw9^Qu$leB!lFetY37jye^368S)qdXNhRJgk2J0qS@3rfh`u&63Ch;Uq5Q$N zzj){R{LS5rlk%&U@sKxe0R|K2o$q><{)}{=jZ(ZKZtUStoA#@iK=-kgywC9_)6-2V zH{i$|c#*X@9+rnOaX+G%1%E1-J``!^T0SZKNTyx`6Fkd-syEwG-b)763loclZPqxVJHC z{9!O(li{=S?KPKsdPSi7;bYSgZdJvWrppvo;Ks!zqM>EnFjr>^Te@kSIuuThXp zwC`lZb1=Sx;gTNm){$I71Z(sEMzmrohra=$=aargN~kar-%ls`zd30i&bRYJ~e(Ke_c2iuNk8Q(2f5EEj}%YYp}?vw%0~qEn13MPB7) zYZT5HB87b;Mfc$o?p&_}13TC)MZ&)#o^<{`abcQqpexg$?d=KS9Zg_Es3OaVf%LR# zS)eHdSLsuI8VNlSE@ZH@SJ15AUyPoi#Q0w8@9vheEjyi&9;y-jX)zR0Tm;4Pb=ewU ziYGrw<2X59LAZ^RmD@#9rwySUsM!Rx+X`lT!o=|)G|z7&_j7+-PaUq%!Wsp4-dm9o z_<-wEDen>WyYrhmmF)||tN#jODuYmyB0me)tpr&uhi+5tl^rQZH^E-O%HTTVJjfYZzL@B9+Ho6KWY|wPAVRn0=>M&w&oo zj2iI%7@ygIH$ex%P^H$nG%Annl_>L|VB>}~j+J8LlovM?uo?3FxhcAF`|8X(Hzw#A z&aza@(i09jZQT;6hdUdj()M@9hD`pQ*REiDF8Cs&D?PTod!yl<#Wt^$R_(uH_N8)s zX<|t=lvoFC*$IN2;JV)`J+x~CAC=D71lRo%ELy(^aaxU7!8lH%PNf}OHDYo!!-?dd zCL?$M5Q~@7Cqjw$HpX~5?=chwCAhh%XRJAJ`m;j(($Z$!EHFJOT2MG}td1;Qs6*Hr z`%HDdi6LPGrr}o?V2vFj3_31=t{iO6UM$5T_na~cgP-j(*E`HS0K`& zH9Jq5qV9z_0Z^<|#du&CJ16A}u+#(GF<+S1X5$mktY24V4VdSc_A~y0R{-~XXI0ir zA~|pVPntq;f9u?@vsdtqr_Zie7dz4~J_7B>Jk#D%_dUqFRbGgE>|m(bpZ2V(B{=%w z@2Xl({XSjRiGM=FG+5(7{i#drK2*>8ygJ?Zn`Y*!PtnY+S<}l6qYmOd>PO8#zUN_! z`O>O&KudHaT<;Yzl1W9Y)tux_$DIDL*AQp9&cpqn<`~xu3hr9S&o93m_dOlNTH27| zG57QK2Jl>md3>e6FtS14_j^*Jh)-r3Oh$MAg_2lsymw-XHUlK@MRk3V*>>mZ@?U`( zS*S%n_F>oADt$P`EgD04-sNrTUyzlq!2T{R@KU6L-(HFHBZA(C;og-*UTz5U|CAk^ z;Wdj-%#ND-lue(Qy{skZxi2_KQJnl^s$y@g5F#V?+rJVWw_RMC6e$5;d88{oac*4TA`4X{yQ=0rl~*U^)Vw;&to_Up#(&%a%mV7g z0u{MEZV&oxmpd%8(oBkq@tkvl8Zq6B1HK+ftJb|;5fOO^L%;d)0e(mWuI!Js6@Tc5 zcALWG8!#)A3Qh8g*WICCP?%h((L%P}QSZ_CU>Zu5tEefUJS#QxVs9Az4MJ%HhL%1q zd*oLsSW##(Y#EbKKqS*v<@ekkpH`M0c~9_riuHq@bsBK>Mm9P8|0f=NaGTUUX~T@@ zDk*H<+0Z+n94qPtZ&0xr4m+70mZ9fYD%qmz2OFd0q*Z0+U|vIU#V8NEhG0EH>Lc7` zI+ocIM)t*@H-7wkow9%;ufiBzGT&M{s3Jm zGPM~|GQ!;nT5NDk-HzHx&~Lo)o@`+jx()-d9Wk3dx zpL2=bISsrT9d!sw zrFWh7mNgg*`Om64%G$0aZYHIXR;Nk|Lc@sFRmWDS@yc=v{kn+5xY-pCNNp+|Cm^uq1h1!6ip9i$iPPNZQ%UM}n^ttcp1nP5oArWtkO z9JT(F+wr(l_;K;&E}$u#Anb4+S$^7{jsKRdqAKnsgr)Yj!*>?jp}UJv`;?mEhctfF zxgIL{W@82HRJnnwFo$;Tzv7&HXni_4sX1b>*5ZKn|6}Uhnc>bqRb(4%z4Y%h7@&~;p*UgC>2T$Ifo%^4s(i3&WsJiFf%sex316k z`}uwMx7*F$@4es8*Yogr+@C`_qG2=c%c4rF2nQ6pztUA|lRSf0nbk92&653bHO=-- zky);$^Y0InElV_)asJn7azI#hz*T3}O;hH*Pjap{s<485`t!K$kCbMP%WsAOBNtCU z1tbr;icrLFfl%2)^P`tZEm5N;_Me_W-K}>&aYt;16P~S`HkIqm<~_%yZUsD;?T6MN z2N?wy_DTk~llzWNQxkLJPeeNqA4=&0!AH#ac2rqF7@W{0+w^h2nxss1kmA-U)uLfK zqjJ_IxglyMqpbr93ajCHkKqe3f^zAcDs(I2UG_Mb*~{E#HJ9#om4cPF%HkCrce-qq zayH+pDmwB;DN25I^RM7OhBJq(J@*6)Zvw5+fSOXN&{?4r4sHj+ZiZ)cY*|oHUv^ zLyeaztWm1vy-nKK3mp(@TC7%LItNT2Aq$^gm7Z?y*G?6I1+UsXf?0m9!f#(e#!ydU z!g3GS-#~M;eV^NNG(|ir?$eETdkB(R!4!=|JLvv z1fuMRG~#JvVQfQTY!>y}$rvLURHQPo19we23G77u5PMRlNEftTY$F#;uCkS~%_*17 zgea^e9?JgKnV15u#{d8nv0LwbyEU@kO8q$|=wY#Y4P^MXE#A1Sru>$XRGaTn)Bq^w z2L1xIIvq`{ODgJXEdK*pJmGmd1;i^Sly9xa%>)7gu2z#^DF~~}7D+|ceAk@!HE>(l z79UK+-JNs%3QOKpDpS44I_WSL-0-OG0G1Z#VYK@C2GF7)sXV4i87ZOZIEIhPlv3^s zg}EC?SM&9bLsN?_HHfyd(s_eU>3zVMtU7PmkPmoX`KNc${t$TAB&ijn92dw;nA)c( zsD}?ENHHVn1|W6pdIAWt9RtyOXA!w+5w$sEPnfsA*Qc0l?CWf8rHHZ`Q0ISBSA?%p z;eO%&iVYhIX1-d=_{*#J6*2s)fc(s0r_Wkgw4-IqP*B0eXD}xMEIrN+qK9_zO4Y|a z1z0OQ4IDLTAZDl0?)V!rkNjpqva>H#;BW=nM;P}71GLDrGbTmWIr=(?JNeq*&Q4N^ zKv)?OZp1&`D;!lwNhH>>UQ_Wz9MBFR`P@=q&2koY3pi+?aKVl2Mf?0Zw)%7>d0jR{ z&2wn9kxhIwVS1sxJAVnB#7{0aHk(XR(VYD!HhfKeN#E;0da5Nh^Ua`mLs4K%?oAP4?ciN9b0QQDmbT6bozZ z8K#H!h=q2q=PrKSvYAY~x|#YNA2(B68x5->^rQ|1(Tzx~P79f^Vsf)MN_wp6-35c)2RI;hc&aH-txJ{`U#6|=Tx>Y7_wrGzR2ZwK zX_Qhp3#KnyG`T*|c@_wH((zP=+N|8>yic**%f6-}B-*xD%R7Ve!tDMLI{PV({&u!6BkN?Rwr3K4y-1hp;VU;-o2}|te=aCmtFQ49iqW|p@b86`>Q3(Sr}o!|YY0KTY9Pl;K}+xMOtBrNsv1o*)^p9* zj-7MFZ|&sn@7SPLnh7j$o$BT!H>LS!T}2Vs9Y-;|xl7$ovJ+6^4B!VDx2Wbf6{bf7 z!_zs$2+Y%v1G6@cY#q$`>x(#MI&^d}2eaJ`!gjdVBmv0&YR;=hl`&DBQxUT>Ay|4% z0c~TuDT)bFS`BFeZps>OD8zs9axHFo|E!#G?5@I=i2){2((WC)mf0jk7^pummg8vw zHm*A?*Oa1j`ZK@aUd$$N;ggI8u)&ovYbgV&;dlCaEWOLYS{i8kK}YhbNNvYIuXK`P zqa%O?!twT`6ZKbb*bMurk%m866NSABz*du)eqV|(J;GolN$>S_`&on(jr5A|AqDeL zpAcvKS{+>ABH;LtKcxf`ZAc>+v9=SVusHpYYjHRj(7qP(tb6Lm^kARKaF;A9>4o6H zO!l8rb^9ksH7)m_dL6Vdn)%uieST+3R$K$sRMl>0+t6Y7v~- zVS9fg!>#fpquqWG|Hc?V{zoZ)v~GrrpB3+;hg3$N}8wi!gym-aE}m3?)J0X(C>BsPCS;rtbb13zs^piiu7E0 zD*g;{i+LrpE>RSHa3XVRQz4#i#FX=pl4*GHHvkx)6mK|ZX76s}tR(37MG9&iEt!6q z5-C5-;&bmINH18nRjgM&1`0M?_y$on1M2s+Q&rwgJuk2DZ!3H z`HemHC(f|Bvj#5s%)JZ7ql#M|D z70b@zE5%+bp=^^eRvPhNh~Zc_r7}+HNv$NFXd3gr0Cpk5{rbJ-lRBo@biXfrxq!VJ z-g0{TtaaF*Q9~Vn+4d$rdm7r?Y9}h{^PyLQdbK-N)vGb z2zyA?YJ>%T9Tu;1#;@$<#eg=Nc2gnapZ&3uS|I;0R^~nPSfR3(+yrA3`Y?@nbo3pw zv`OIc*NvhTC@Dp-PG%UdmM0lT(vW-RN&D@_`@@T2h}6AisCLUU;8A-cG^TvLW>g@U zIWnC$AlVoKec#Bf{v?*<9zz4K)!HDKDhsZZtSO z$jrnks7*sXSukfpdc-&B5CL*B8gXkuc+ed3tzgExbWHA=eRSz~Ex){3>wP##zHKe9 zWyI)-7LX`1bl>s~qokBzW?QBd`BbH^JmM=jDzfsAw@LkK7&$YVd6HB|45KTQB7TuD zwI(?gu-(ht?In1pK>WKEC8gwdiF+jMGU@&1?z9r(+2n*XGxY4JE#|weW#@m6x^vtm za(lbD&H-@#m@WX(tdbcg2;V)J{%vA`u}6Kr@TMSHHr`y@^f0XPo!orC@86BfhQ{oe z;=PV%b+7X$LUwy+ya}`@_&E1-F8pWgl2VV@>AMIuzk}(Y`N>yk6hqaXP&n<@o9IjZ zI$ouD$8TZ{<8W%(K(3_I;BayTQBjhPz4aFn7};=Mrws~1a=xbFg|pldxh40{f23(I ziak#?dnq1|d!>*huTcU3QV;h76XDK(`O-Z6jJ8$KzsuU&Q*L(fp9`UgsNKyKqjOR8 zxm!fUpH2c)P>(N|&W+iua*rN2!|&1JPkIy^EBgsp5pqcC`S_0jrOOrYJW20wCyXAt zXY=>(Ix~?*r#zOla*z*c{<*g}inw2MsOfDDmmqV?pe$~(Ts`u{R)jEWnE(hQ#`8j5 z74b6#TN~lCVSN#fO_%>}l3s^GSWx@MhKGNr-f5(1m%=EzaMsQGapBr~8~I^<3RC=v zsR`!yX=XBFF+a9cY+yCB z`pJ74(}^(L3XEc{y(rl2^98OQZM)*vSXYfPGEofPhLU6&tJv34Xfq;t*D(8mgmhAE zbh-DX8twf-E2A<;x4R)5lLZQ0eoy6TbMsoMp;6}F(a5=er}_&~xR>JIVse0mdUmwFnat26uvV+q>vL89#s~_QHUfy45st9|;(Mru$Y>F<{#hmMo z@rUPflVGplEa!O1F9_8wLr^+P4@qiyX`H;En3zIMla3k|?uP~&pZg}44$qG2n(0tM zo{ja+-TD8X$EPhw@;Lnk@?o+%(k4j)!A!lm(vqEM%*{7mS_eS3o4a)eC@imUKkoOGxs}Z_Bc_~?`3q3(&ERIe=8R4 zNZ~K{5ol{4YzfP2S#(0#e1yP*=ceR+!+nBwqtEUPMeJ*8;~Us1vClre&fGkv^?tfO z8u`|!ET@qy8x0Lu<(btcm}-Rw?zNaW1M1r|QPJeufQ?XHKsG#p@;%I5f?qWVDg?lD zg~q3*0n4c0QHl7L`3>QRtB3lnGjT=!UCoZYvbUs!X>~Fqi~_~ClR+9aN8P35;>`dd zIXcU`G0Zv*P*Os!GBGmg0x-UR5im`D)@N78ZmEg~tYnGPOOC!3C?}RN4)x*NcC2jl zTge-*yaUwIkes_o{LQm<{xQ1hQBxd@lP+tLohM8e+Guy$Z68zUELF8q3_Z3y!`AaD z>$NbPJ<4|!1f$dlB*vxD`mypc*{!|oSP_CFck>AXP$;GS6^W6Am^I^soiBl!@Z`mPg!zjhPC9#8~DEeYdirfwj6dE~uUruC+XKLkbT~;+b#1K=*gRV7`uCH|+0V?|OHq zSvQsm;8JX@Nn>|>x$uZr>Aq5j`b2P1)HRUiiSen`dJs=<0d`qVOXAKxd>+QldSY&r1YT=l0B!eWlijn3!0-A(&l_j4yX7`hK)sNI^dSwM_9eVBMh zfC-Acfp(TckIEjTccm#X-_2%w)q|M5l(UcScgD_bYuuTv^S*cUo*3?Y*-16YGeg*p4`+#Zv3hE% zcuJ4AZ}h0XZOd+YKJ~IAai`%%&5HfJj}jc^wDD{adFyZI?8k-wxhH;~t^GhzV@u~E}UQ0R2q5glJPGOqNQeg>V-=GmRBKC&QxS#r#u_)W>KPmU*2z1lNR*iU>3n-IrD zhgHRk`wk^FSU6Exfn=94rd;1PPKAW>eQn$`{k&{E-=@t$vRN_KCVX*H2^;$3cvW&A z#}myQ<>9- zEg)|bDH6|@^#l}?WCc{9 zZ@sCvg(;SU;<(rgmigYd-z&WZkK0+E2zNQxT_prMaWOA>y*59l&r;XnH)kekq`pNs zoTwAOTCUSMun0^(G;7lE+Xp_KXXZ(m85*ynWs6$DNgnM3x%}7Zai0A%9eTGtsqhd( z+An>WmDsq)H+Sr>3EDi|clISgODar}n90;pTNA@Ml#qu*Bkk{jb^4bwGvH0>wtLC3 zD{D}gv*L(!>iDW0cp4OmBSG$gz1t_t7xa`ao=jpz@c4at{7#?>T2k2;Armg7TS_Pb zo*e!G@`yGF#(q#r@#YO4p7d|&#;aNEwfn)bTQ3~H=;q#GyE$#S@y!GF{?TP;(M<*N z*{=~!wa+(Q!@?Zjo(H;>XXy1C>P?0 z3r0hOSC*z1iWBcWZBe0;8+;6geTb$MIQ7qQ$!J48VR|#7Bih>;Z*1a^N!$o*dIBtO zc>da`flrr@On(`XpAA$UetG~^8VW8OR5BROQ%42R0xlj(wpQ3WXn;&g^I!}sxm<@1 zrJ^_wwn30)yY%XXVo_sa5i=;&a#SVtWH-H76T=R~DN^O$kX$d z@gK6wnSd0eFRC~Le1nj67~6ee-=5JKiy6KmL1|Y!h8;< z`_2>riAK*hOf9tV#*(2^J%un=?2O8#y7;rSj&;#V{sOVV<*-ljyG;J3alDfNd*P@oB)Orz*>-5kqaSnjB(?=`VHXJNn}A|HBWYx0zVN<{D+wWFBYy<_hn|kPPfP#&1uro zd2ERVwRFZvq=6KX-jt-YfQL6IN48*-rRn8RTv6hSs-LK<5Q6PVwvbcaBv@$wBY!U{ zBvSsDy4;Ny1>l_RHdU+6?=zGrJ_Y2&ediQDu~+?M`km!&I~to{jpkPt7_F@JOzrlJ z?Gm2W^So|1>^}nJ_NCN|E44ECdOr>R4K=Szny8mn+A|Z3oTXm(LCC!}uaHsb50b8E z;jkH73qx1fu#>^O0AqFtsZua=!~N5!0!3B_-kS(e0pgz9=WdbNrtZb$MhGR3bOg1O zERyWn#)>K5p&J}caF-8_ZYFN`!mb{v+3AfF+|p!5H+aJj5TtivmA2h*pL&9F{x{S}4oz;dYu0QfSBNNNoQs;R!m|VQT7rku9_K{<(%@n{`3C-$3=2P}>;(Dsy(Pur zaS2HIRBN31{?-F*Cv4-6;&Z<*0=fmZlsHr$zx#xPmHYm}3@mi+K0|$Y#+yu1l9iTc zI7=ceF(&7Ym!206j`p)lUS$PsDv<&0p*wes_8Hgi`ko$c42GyqDlu^=npKF#w&dQ0n(=SUz->XxuAj4Q?asvs@{rb6!OU|nQwdyBasq4x z=T#WjW0*Y()Sr^cy^FJPsgoN^1`TUt$LB^)U)G>~osx7~^wg_N=^uN#04QUeUOOBf zEmf!sY~CkuZWSRFi-5bQGuYphpOFEd2?L6fuH^1dD%3eyT9%PXS(2!~gYZsg>Ysm6 zuWO}gwxqq!YKn=mYBY2@_m`q$CuuwG!BAo=DutEuJ~k;s(`xLytV37fUv-)oQ*QLV zD`*q7B_Xd|Z4qy(?rJ`S19FWH8q@WZ7Vv;i$^&pS0m+&rGahKS z8I;8!v3?Hj8g!@Q?ENr3!6Va;mStB(ClYkg>cgYLb2`eS?%?FljlMco{YB>H_F+22 zHJ{2CfI4sC5gORJKpor#9(A>v#yShS?Br{IZrA?Ulk{Ggp$V-ysy3a``)=>#seOrnd?(0iLDm?nX~JjV@5q(c@EF`SexAnR9a_i?+zfPZF0~+y>j}Q{ za=G`C!Lg&jx7Y1^v2AQ zHE}Z{oMgs{=8XbLB0pL`nceJ*5DJE!;NHuuMZo*N?0h?!m#ZUJ!Bl=>=+>OJD1J6x zh*d5_GWdmC)l(VdTM`?l^PvA}Yxk>j?u6swQI5afHnFV`z^g}4* zaHV2h2WHbZw7W^SOfGdL1 z2(hG1QbcQl*pZ!4fRqA{}Gi%$={^#1CPen21Km)CNyfQFD>{8scbrS2<*Wv zgGqHa)NsPqklAP)N!G>ZIteu|2NLKCg76h8T5%>xV3G7z?p&8Z(16xlWA8pq@aJ9G0tdNWT#W6ua6?dWCMRbDUA)K8d zmJ}OTcgnfAco3@J0Sig7i)A=V^?Lz;++PPBvynLfVm#6U>-;+=?b=xZVOgp&C@Z4R z&J&n!uRMl!sa0#1e@Y*}muxyJ7+Wz0%;gRknm8k^azW7~Y=W&Jf1~aV;>fj<-tFev zh0kiP&E<$NB4F$q?`KIW_>>q_w~EQQb|zFdtrrBENmZKCM04w8uaI{>HJk%oS)xUQ&riabc&ixM)(=%}Rk46dqUhl%$+i&N-;&lPHqcrXN1MyhYVvtq3Tr9Ur6IU7bxC^q+o z^6K`yn4$Y=-l^5L+`T4W4!_S-$o^n6yM-7lR_;I57}>jv6DADN9fd=ippirw+L01q zUaR9>;(tB5K8iRQXSM!+WF9C;N8?T(kXyS{a-mGP!){bKGG)FUl8x;egq+cR1r>~r z4#`2&Z3Ih33|?*Y$0V&!3uOw{g8-MQX)-0`EbiS>^=y$9-TjOpB5+}D=`}URzfFjn zp-wfhjV~?#9+)b+F@I}lNWCD#yKw)W8g4An^_|+s&n*(Xn`42?iuvV!7*SZ7y|js# zK1ZtLWDpL6g$}#>laR3z$^OgK^|1I0Ivt;_YO9X~b2DX(&jfji$KT4?;|lpci+4lZ4~Vq7W66}XE>n9l^) zGy!pKbH&y%_kY$Gf)C4d>c`sG<#vTR(XgnS@qpdm=9lJl&Jls+Q)T{QPl0pI?uQIm zu7=6%w~{Zg(Xhv#_J-2X?A1dA+^3_BxhK?HTu9BE?>~ov|Y#< zxoDrM)0|qPd@>G+d{EOv?|yrrdT-uG!J?npo+n&lb{XaeRK zI*kBl^I!GCytme;m=%2=5kPdO-gce&G(6@70KE{K4Q?(Xl?UI=hi+;S(4HWq3!t)9 zCOw3_c}lRzWz@}wcB@1cJwu1PPh6@CQN<rUHs*%xS>wl=c2NKn)DZ`2&RlYKb{ILl>M6twn089xCJz8{kD#^Q!qw&#QgXgd>trwA8(*_d_LeVN z^vcS0=qaz1yQxu#^nc!h9$x@2dq^X0(onzlyY_Q9o;iIb<g9b#S7IMgIN4x5mhaIuBsgEf>XDo6^Lq zQb*%q(FVi1zSfB`JIU#(waKXHETevzmPA&=DLmvbo;#)-SeiVz#oiFTs1eVj`V@=;dcs6cyDtlwM%6 zf!MYS@Y`^BY^3lgLBsNvV{zkEfZ76L zw*q!4HSuM2fMB3lXBpQcs+swh0+7l8Ri=);NV{e{qlfNp$%$>meJMPPtd&t-8L&5Y zp7j4xBFj|(G%EsJG7`!oR>lp))6Ev*kJ}SX;JfFi>U-e?l++2M9PUkyr@VzjfKvYY z`>~Rk($A-WEQ}*nD;TesOwG?_RNcvgAoNa)QTbW!lt7}2S_eH*Gp`YBz*o$dCOZH( zHqCO%`EX$_)M6E31)jC(({jiiOt>pl0BbFLc7bUldJ0kbFd z_KAN(9b}Ny76T%<`{i?mIqVS<2I&{ckJ;LY1jk^%2GV*%|C2R{Q)Dph^jWn)l`WUt zHJ3#E`{r`g!GIat9CW70T)@@j1engV%9l^wBK0(V-;qJO1h6v_Eg+$M4OM2<>Mp(Z z`KC@jpw=9ws9cszoAb0rKXXZJqjL%9ou(HaK)?=pTP|d!9ajXKc9T zS8pK_!h_SDQ4EYiYNaA_w}yl^ZKPyB0+(>Y9*H!l>f=w)E5pwt@+A>b8=9%!X4f}S zc@RysrfU2ic~A-EJ5t^UPnt8S-<+bnH)JBBH-#1JmjI(jT2rsxuW$VQtTPzyAkhSc z4<8U7E-|DR_wi9l2ehG_^&?*Ak9G^hCZm4}0!rk6L`z@4?g;vQ0zHxAQ?G{&S6fxo zr@NwM0)%Wm45M=srIEfv3?^c1(|WA3rnlHkFT|2ZJoZ^9bQtI7Um!K77ZgC_n$l#t zrh8QwH>7ZqJCg@v6vGDy?TNq?Qc#tVdf2%D(pT%WfAC>lrQWcJt4F)S7KgCD&30=7 z?nTwXhaCR??y(cSeJR*~I?pl-_%KYu&vHrNxO%;ozYiebrUV-Cn%7Rjaaa-Ki zDu6{3lsSFtTO%7+c6T_2xYx$1M;{hUS^CcxgL&hsq#|f1wQX6~;Qd>TBUYht?PUA!}GIMJ?zgxHa zoK}3ICHF^~bG~A~IV1)B0Fd5Yu0QKps^lDte=j9RExu+jPwwxqS}$6RasM%qmdTsJG}E#Ihg z^8?rF99j|PR(elV3KQSBMopQ>qb1G=rPoC+9uNEk!Yf_!dtPuoD(^yY$IOtFHA-^y60YLV9kJ;S_RZCC zXv8x}zf~jSC{fp(_^0vQBk1GOtrBZ1$&w`40o)?kxm)p|4@T~|PRACr{>U~u`N-T- zs^xc?_}+w|fX!sn-@ONdn?NH&QQBWvoa2aZNxNie#r)~fegpSJ;&Cz?x>~ij_uu>( zvGyiM#^aAV`FuA=pe1Jhy9Z5LD+#k50oUW@DQhM@j)OScMc(PGOnq zoZlPRt3m++7kWg`0wU_GKgp9tr#p7L#{-t;`crhkXAEx#lwH&TM?}hb__-aM4&?AJ zEfk67>;<^oDJaS$3FlZ$6sSk{wmC-{kVaAW7>dlHD+30`v64+@jw5gm^ihh#0Q)4bN*hm zK55SX(V$`L?pthTKfwE%=TnI^dcz)cEFnjp4QV1qUd*NahUIF8P+o)-ACm_J)HXXd zs^{usmxcoO)1OmD{|q38JjH9$=NRFqec8Xrt z{VOBRc%{36Qqf%>9_ZiiVF$cJd>~IJ{iM&HsE?2dkJS5_4b2Oc)!cC zN%2t3xCs+IEqG(-BlK8jKkVF6GV|HUqyL^Dvm%ztYj0KNO+-Ihd=yVJ$biBsV(7~KfP>hBQz>5xa|;pmpI=b?Yy{Bktu%eG{7kZ*|2 zK|M^rWPQq5D7i@B~`xMzz&VFY~TtT35O3JJ{72v{-!jatz2ZvoT0T@xX zDl@!m7&^q$6Ijk8@Q%tzD>w#6VP7F{WnTWR&`o%^D8+6e&8$voZe%U6lFBRvbF4g* zu8Xw2In7a_A_4LJ47z;u=gn9Fhy7BQtOw#LESk<~+Th;P?xE^@YfWfALkP&jQ4cITnJ4@@#Hnh6RUV)3HAsRIR<$%4KK0xUBe~H>TXfx7 zmdUIza!6aLZ%ci$X-7>%W(fg=B}yin4iDW%fn-+wvR@x=&8;`t!6VMz&rg0Xzv`s6mW-?o zdrN$QJo)rl4#F!_=hB!_x{U}b#**|qEKsP*q+qzqFseSM++mCmOr!nqq2CwEizkb3 zAU!$j&${9M@Qc%@7~3q382tMNmbr};d7v3jTKx8I>>jXe{@ul9eewkapxk6QyBY_( zxXiq~X`1g!{J}d&ZQ-qoIt}(k=5a#xBqm$)l_CPprLND^sbNIXa|@jX0>_seN&iWZ ztW)C_uBuOOB=zmQb3|5w8bdp$D#J{1W3u#Hos_c#rkBTag6VwKwkxgnI$1gK9QN+t z@?21$n}z)C7(Ih1Gu1h&BOg|74)W>~b$}>{`6};D|41(MCXeeJ9nBmxza-Gse$NTh zIo{zFteLdYXuUM^NxaTm_e5~Co-#7cCOhxW?q{)1vzAx&K4dSj)B(8&RyNc?EpdB@ z2jmGg?3b9&&)5_$*xCo5LoSXxQIn1DYaJ>a!~oLN@qM>h^#& zMCyhBH8Jk>@ixuG8WVtesHpAk2ave$|NLCx82E@Y{*&hXaFUX&I%CNFBk~dirg4WT z({Zae)KIL0I8GN;hoSaUm}srj0Pfu~@N5y>+a>cqA zMZGkG;2R<#C?q{FWI=*`?^9IUC(`N`6nTpXFMn#3feaDlU(b=ju+JU{O_CQg4j{5wKGFx zc`aQi<_~!-(^_uxtHE&TiIN!)A3M9zF?lRrtv2C9BqN- zvkM9CB{|=q==jPdsA%o4*NnFsZN2I534HBs7^j!%jhb~y1xn(N^RdU8+|#O8b|em; zUm7QEdMI5>3Gw&&_OwH`);-xh{BcKz7}IAQMN**&w#=g3AkjU^XH9pA4}W_>Nr-9}-gqIIkB{^4zY82=xHoV>U5sCs4=Mx3fl3P3XmgQ6mJbB+bd9Gj?T*7-p@+7 zZy@L#2(W@$hvMb>GQ5hvtX@Rx)8+gdQd0Q}n#nzK?0_+x@9UuqH0TgKV&9LmGXMR<4*}v(DLy2y>}OuOm;vVL98Y%)M1w z5|)h2%xCS;5Uzw5u|Fl;Jp=zrgui}eU)~oDY-vxA75f}%3C}v6EUvSAygvxdU{81( zM0Sn3J8l~FJ5QS;-)gB|mL3??>Q_<>MoO(IN|{ZzetmifFWE6|m7=ADb`)z*sAmREguAo>hV$;L7>r-k$y z#YAoG&tg<7d&gggHZnqx^2%*?6uT(WXpXcSBq-mb!|A%JEMfSpd4s7WBKxresjUQw z-yW|1bZVtQ!q2kt^us~OTS60Ugk<*R_e*Y)4wOTw#ihRVy_EA1TYhG)3B_g~=Yd&! zadv8B)|{MC?en)Bop8F$!rzB^=Zt~&i5=GeHmbPPOHE<5gwVU9;|Z1OG38-%LH)P^ z-S4)#>g`++t6UBBrB4d2M4i+nWBKU;@nn#d)~$*~U01W1>+;%)3hl#5c`HLNp_2P5 zBtM+j=zwMEkK%mIDbMN;+VU)~Mg1~Hl@(9eC(c3lL7TdQkM9=SI}8(qz7D=o3_3OT zqVe>fG!uAar>{dE_030foO-66tCG1;)u!srAT^(>mmH9z+Dq5Szq*F}cw4nU;6Hv! z4&DXR4O$r)b?pmFZAsHS#dV0JkF$djG-CD!6vD=vjTS}$0^ehofxIWhx3^z>g2p*~ z49^JksjZ^u&Tua?7*1oatfrou7^3L}tzl3Xv59gqGk~gk&)xDl8|}u$@nr?YHg%;; z=Dq{xPU^aNNLLc}*g|;c-9bT+`>s$79m-0#eQ5xd*hZi;EA zp#scp_dN^c&I29LGGE^o>an$a6hFvSWNva@__7ZjY;<=mY_w=@&m8Dx%IXU?3!&(y z>U$>Th?+dCZ((a%-JMxqsPDO&c-P4LeYTJxcM)ph)CTCG<;B-GAAiQjw7yucS~=vy zWvg0$w`Gn&uQSHfkQ5mciX~$UQFxDT!Ty`NcU--~*9s9z{G``glaV5T=Th~6C8m`n z?>l5UVAfe1?BS(|$T#N6JJo@F25BIYoWR7OOEYNT@y_Z^e&_-Hc=+23xy4tqgG?Pr zhymO}aYw&IBt2fgPlJ%xryG7d?YmQ&$++P6-N|WW z8eN&)K={&`=CnJgMtA-!rayO4Zz5o&$(=QiBwR#X+kDNL5UCclsq;5EzF z&yuXTDlOQ)TeUKoC0RnU~;cy^lcZmV(R_9OM}N3B4?e$}iW3Gv3eGmSEo z&m|vYs+!iGsAv6io?7C=>~$QszX7aUmE3}^_B#F?sE5pwA?$APz2V1Xn9O=Zt(mWd zjlsYcyYDo*6sUFiN0%J#ndWYpLRehnIDetT&7m&hVcSzJjJx4=GN=YS{0*va-MN&z zR~zhyY`%9VLPLSOMNKgB>MUcrlUmyzQiOO~5&FNZ^~5)PAMyppe+X-s`*_=aH6=l> z1Q0=Yka2Pw>G@6IHX&Xgbe237r{7y_YtMN{xjBd3-1`z2emz|M?__O~-(%0oKv@@C zr-{m6|4Fk_aQ>a7gL^ils!w{6;sIeC_lc_lG@g*3A5EPcTx5h7)%&VR58BzU3`+3$ z;mL9&0~k$3YNw|0oN~oFbDb>OXScSMeN{1H601Ei)?sga3FJg^)bJncxfhM2M|p2xkBa$^P z-+$kcFTAw>($|-fAYWXk@W7S*oz*G&1^!gI6qP0(X#i1EWTgoT$pOYQjHea$K>}={ zF*9<|(r@q!X7dBIsK7fT{{2&x5L}PDaZx6DHX6+TvX?;}+#2+dl@Rl>8kF+P>|wmm zy?<;mRa@6;#9#mBAi^y6c75cE?S8V>DqH2f)?vo-b(LFNC@rCQ! zKlHvM$&gaUmoIp(2M!D0-Mk3!3)@RoU9>oN1tO=mW9w1i>O+(MB20 z=8b04SnYTZ^6=7rY=oC1w>Y_ODH6cmk`!-JJUGx z7uVVAW;fN0IHQv4gWQ3^bvd%E1P`0G9j5S4N&%VtNX2_m>9Sk$F4TiyB<~yDD=lpKJ*FXMrdtI-&uIF_< zugBy5@RxT>v()kCqyGk?Gdj12GHax72$$GHVLzRw^w1%WQC0 zj=HMhLcX9C{>y-kr~JgLgwzdG&t1t0yD{R_FBTkpPatUE18oZsqmy#y`toAQ?IWyD z$KBa4hHl0H^Q`0QY=-Vtj%l5X|5o&FYoLCm&~41`Kx_0%+EB9F2(eXj=(#r!`)@kA zuOQo+RhPF~rl$I%lUA^?*~RMRw&JvxzWbps8`ig`9JfYoBC1EH$Jw7c9$itwX}joR zLXS)YyJybwSaN1DG))1_x;WMw^aq~mhIi5unZPi*B7gfSAsB`Rmf?#usbP5QOovT} z!*{}Qwn8@SjU;5e=#8>J{^sX??05Pc3Y<;p0alyL{1%AfI7}qRk5LzmJQzZ*=m{-N zgHM7E`aqM)Hu$Y8JL_sbp6)tV^=*1l0Q<3)^D|hv1{FMh<2U*Oh;1|=@fm)GGybCJb2njvP}>f zJZ=f#u0Wjl(x?xV+RfO53#&-~FU?Ae%fWrl&o4fV{fQ|wqc7!Vgg*mQ9i&BzLAc#k z3~)2|%4co}t=*{6I38aMp1Xue*2s)~oP*iBs&-Q~^ktF!a_sOrH;)ftsj1%)9b`(> zKQ8>rgRN48dfG@G(HYq(a6N_5UxM8<6U!Rwq2GMSLvUkeP!p;tSq>32-Gk{C zy`mA)@~xeprTJdke5Bg4YAxxwB;&rj-IWG`I!Ggs#YZG;SrUAA!swjgNUpE}8@!Xm z*{IuVWJh8HDzB+CnL7^)Z1nE2-9N~Zo0~?$qclTMy>Z%hn<=w5qnxtXcXuNpSrFAq$ZqF0Mr~Av5A3*}K6rRU;Ga0h3EM{!Rdsrc|z% zOF*4a7tky{<<+Vuq?E^M<`!INoibBEDKjr`Rm^Hhhuy>3g=_Ta9VZLk1_rJEkteLb zq$A0_C^Wym6+glhqCtUnbVu?1h(7TAFw*a+dG-TEq}T`=YW75l^uVAqy}D zE@N_&yGHDKzz zLDT`oL4ce@se?*+u>O}Z!8_n!3A?@qKQPTi?|fHcX+p+JcD06}a+g_t__A|*t#NVI3 zq+w_$gT9;5OvAEiJ);$TLM2PpV+{e_sEmHP?XDYkrFaXi%v4I;n7)bXY;xl$=jXRt z%eZn~sTwj<^n)p6_iA0hdbDl54)QP=bbHFT_D>U;nCkGV$oP5g$>BOkohP?iXvtIOa^rKj@UFNTp`(OdbpMP85^dP30}MGBCXe`E!T-W#c<=Oqf^RRC z-ZbY_#ZRAMF{=m_OTT^KegO}6y^|<=c>2wLdv*6ye9{wI{Ew9ffH~-9>5yM*Ga%-S z-s_{%!wg$?2Nt@|2JN#e4I=i*oNaR%{J}V9G1!Ox@=&-7pWhnQ`@Y}{Um9ijy_4wc6#8;G_CbZZ2*j%Nstftppv za`703is1@tQ)t;yz4#z4KNS;VuTZ(}z{1H(Pe0#aI!kJQ8m}rJK0ZU-KpLhvfQK5 z;ro#suRE)fHV2F58a>Utgw`Hkt1cU_ys)j1Epx2z!9E8cLVwQeQ!fzFJ6^rk8?A6D_hbJ0pKe$m#;&ZL z<|elO+Fowv?o^VF=RAR3lwII90|7R$Rvd)WjNRFebkKy zY4%SXd^!;Zku}miNS4hW;d6KU z`Hl6AQ9S<~hd4l!mjty2t`zge%fIPM^K&WKBlFMI<@#!Sp1m6>$otRj{a2dv0K|bKJ4DIrD3|)bJces)P!T^ z(okXINf8XPKC;BKhw0>s0_RvImBF6D12t@w(j_ugW2O9;^Y^#m%zU4O3;t=}Dhszt zE8m~GqxIB`5F6dQUNOI!k0EVixtpLVc4d{!DwZQ4%bwWVuMrOG46e78fdp6w4?kKU z<=~a`D% zu4C4};U=7BdBS-5_RWzv@mL(kbEuK_C?|q!+Jm8N%)h$>QP+UWJ?| zPCfo0DRjmAwcll_vcD_I=jV-#?A_yeIX?)5bM%8NYc|Q=S&(NV3wy!JciVK~v|Ewx9RX#?GVe!*PlJyjYLimNlMnXmy0gCQ z&D*l)n+bdV98dHY(b$V!O8&B|!bQyfw4xg=)f#JwnMIq*(yMZthzCy>9o439DoOcg z1v2*G2YH-w68+e8V^b=mv09%yT`7U4^fTVo(+G5pe6uub66bbI_+P#lD|87rK2u*1 zla%c3OkEARGyG-S-71^vs!Sv3Lu0fWiino}ES*sKh4_V#EDJb0DX}Th zB{SX;gWvC{Y0%lwrbza{>RE$u-|G4InSb3Uxt)|h!{!!DP8mM7>onrCrwd#$BzXGj zkv8uz%~FuRJ8>V*nE?$o%}N94dm;2;fyi!)jmMdhg`>R#Y2ic~jLq@c`K^(f7dsAN9=uulKIAfuD;NC>;i7Dgh80X`? zv8W=)vCx6jZh^*@>el6x_5&y3^SUya==2bS{(FqHZG?U}ECJkeMEcfi|I-oxIXEb9b#q;RMpoOcd|vM2<$+B`%crwx1?B8W zszb`FWBgI^v6#9?r)Yq^rUZv4xb2fa=SJ?D0ZJbcB44?NYgR%Jqri8x7BQE3(x9rc z&0u|);mB-1fh3_Lrc{jFMnyfht`yoKAsr2R#e=5 zC%B2Y`}8`XyJdV(p+GQ8oO{T*`+Y(Q;xk;*Gh_2f5oNg~2}jA%kHoG6)iIree3U~^ zv$k54$@8JF{vl#z1ouL2Csz1=K7jy%>REXqi)-Wqe=Kti&W^_hxBZxl=Zu54rCYfC zM}ptZYk}al5d~%e{u`6d&Y-XE=71O@8HvTia1@1SnAx>lI#>Umu3Wgms%ALNRjlv zv_|3auF=viNN@Nwv(1wiv;AN$mHx{{Bwph=IbG`s@GfL?b9?=F8(QtVkP>>-)SQ5E zf8KBvJp{Hd1dNh#u)%v!32EOV9X6U#DRx6}jXI>ihw~Jst{~Hp+pbRHL+T{VJ?uvy2Ro>yq|} z33jDQ=i-i)wAzDi_peKt6vU)~@brN+t2|#qFHqf_bopaJ=J5C|Kaq0R7L~pSjJ5W- z@@fYs^ZB$;wUVB8PUO2fa45KE`AFl(2y1iir3pUn-Icc%ag&beFGkquX){b#5#did za(g5{Dh{eliI{h$pGtmj&yQ+Utg|;Eh$uzR z=D5IVC|S7AP*TmY8xB)eKdyyqgd_H1oMHKxz|2;Z<_2JYnlQFoS=|>YHXGn|o>d*G zQ!uNY=YutC{kq>1@Q~57o7Urj^SnRiS0G9z!I))4wASXOOdGwfn*28Jy*w4X)CKHyn7EBH`A_bl$D*C0+e=bX`W|1!cr4gHip>xdGW<>|aD>xq}5)dQPJ6 zQeqlfK_9xrO(x#A25I>Z98RukP!q8q+i4&n^tA)9@2tm#9r>_K11LDvNhXVwZohoQ zs)DVfKaxutd)aZifP}fHS6Ik+{8KT9$Tr_dIEZWJUQ=obEA1wTgJAS^TQ4rk6J7{s zF~eaCdcuI6jvM5+C?F2oSM{GJpDM z`{Bf?ot0XULWkQPeHCr=C-6MPXvZJ^&4TL5FQgF&iLpcbdsQeY<=iF|hZ1(1YL&Kg zeVDBGmY%<~U|25MQuWieEKqo3Z)R$CwZ8m!e&@`0wtxsqsWWC~zcK5JV|Qy1ChlPW z^tXe%GqbQ%kv_P~tF;boB!(ir2VkrlZ0)pJ2J~y}-o86`1#Pu&@gNO;nCT5b@622S zu%dH#pR7k=Q8I_7_PK{!_F6i2Bm}4!5U$+#4gT_F&>sV}2O=NwQAdJoI9BMKVKDVp zknz@_3h`z$b;Jq`T5hw1g>|%D(=j_5)vwlRdhC+@a#K!D=OZuatN1k;O5oiKPd&8C zk6hS69vV#{o=``qUUlT!&Z!yQ-udy&3*rs%9oEPrEx%J7Bb7%eH;rzX4I&vxN#hCR zVI72&lM4j0{6Urb*#g`k#m@-vc@50AcR$?(`mIv92?0xW;wG@gN`CbPI{{t}qM^+v z+&F4%W4?Q4`2trn)7>)Cis#ms$GQKqW}Y6#Z1!Me@{VYmGON`bd!RAF=mV7rcU zpgFWx-?ImV&FR7B)=mS0dP_)ttG7A(r)`73@P$BL)U@@HK`)pWpe<56Q2t~Fql5My zGqW)b80-^4-L0;g7R5na(q7$cUJ0WF)n8-b`9tbVb3#68ykqctPLWZ_DGU|Bu>(u{Ks;!T`VCoxdk+YK8JmToEQus zs*utT+2Eg_&7e5mZ;l-H;rv{(9md)sfSxV}y%T*($XUu$^7g@06)K)Tc;^J7V-of$ zS$p_H`)BMQcY3VqRG4i``2fLX%kghta_)V*(CIxK*0a}kr;gvX6ERRZwO!!#hhsC+t3TR=9%WMWkC%G9?OacH&9J?aX&W2Gr)fAp=FYMW?)s-X zXI);2yIxbEE)#V2N`Gw)XQhXS@R@LPpv-u@dWP|tVQ)6=HPdqi3w`6$i&mbe388G` z0={%w&%7mHnEiBh`y}v>)vu@V|EyVJY|i+8(i1dR6TsE&DNAE5vF10 zm^+aca}#|5K{EPyZewnK-SgHcpA<)c3}YByl6aji@?Hh_MUcFwsqU=@Y` zvP;-4UH4bl1-Y(~irbn2k- zPOTq(*>F>=HsvOqL59G6k7h9x4M+vleCfGAN1v-{-cSwedsLV7{K;0QX-1)#YsnXN z|Ft-CZB!-sd5;!XQs=p@p!u+?u+Vp3kE#u(sJUu0U0ZHTC@|zZ0(O+iHg}$Tj^(At zyV*x;02F48WbG{;n$m*qP){c)u_XmLU7jotJEQuB%XjZlKVPMs(Ui}0kz7Al{wwv5 zUmX%qdf)UXv+YcQSbk5HVJ5_gVAF$%k=pp~q!orGF6Z2u>PSF<{$EdYXC|K zn)BFKQ)XVK0Co1Ymi+9cgOJF7g>L=TGeefP{pNpR<@$R^&V$9^UEPX_)Pd@Oov1{Sq$Bl z@WieDN=S>B;@=s*(tP6wxONSrajon*+{%E;)D%dCmX1C{$v9Ti6L=)xXqPX&FE9@l zc9}pb04?hMP#pRK`SC`OOP#eA9%1&xD)-QC%^FPvEMHrV3_R!{VWb`mz44YKwQc2z z*`8sI#%mEwb83f>B81|GQD#tm*siNR*Y20LZBR6Y(}*IAT16jh2~GNM0qbR}m0-@? zyQgmPN#8xbwrJ&0)IFxX(DbCXdscKZygnv@va_NiM@@)RE^RpZWU-U1-d}tVb6>S| z_#UzkpF+dBxniHb_%-Uc&- zT&%P#?KSrf4XoajR5~Fkkb4j0-B;lr5YHzSeqn^^^kG=nZ1{q6Y|9;yDrrKF(z%f! zp2H(+_&0?aVz~g5=3<)qLcc?%7OtyH!QQ3VbUcUn5ceh_?+L4NrF+<$D<~r(G=ulR za?Jfj-={_ERx1#livtoGvWan`3lgWtnK`<`!OW0n+KYoyG z2ei6L_vfT4*UM2E0zz^EDFT7)nD$IdG^Y$s=oYu=zwjZuUaEH?V*`Ful}PW(3WHUw zn$6A3P0i};1`Fje=TA0N!I9iUR=2nU-Mw))Oy2);GC63;baSWOG-N|kW-ac<8OjP& z?od~`vGoNJAk+nvy79nRvQv3$i_oKGHUMe#!aQQI&U2(p0i?V;?p&I)w&2r zPEY723FyO_c(%Oa+nL02H~TZYc+eM%aAWqYF`^Dbe#XLlacG-bLR z>=SZPwkK~Y>C*ID5DLq-5}p`s943_UmeXmlo-J#4iY7mnQ3lKTPwBnYdPK3izC2WL z^NV0ZQ1#&wvf`qbRK;wT^ahlF%!4U9#-~5oVjS$&tCdNC9eoOvS}4&YN*IA$uft}$ zBcv=Jop?BT@^L(drKUM7G1a@L43JHyxo}B~u?iJIcBlPi>w^G`ZuiyZ5HMz{*U+o+ z7e93m9-!RY`l0_2IgZXA1F=Z8;n2V(D}Zs;I%>k^`DY2=yVJVh48Rq4nT7D9;ep9K z&3*&Vt_TR})Z*9Z|D2P^gOPT%c?Z45k&CB5fy!*+}tQqX|;EEi=YF0uEu~TusAzsN^)-}sY9SLNFf>76DAr`NT)5hkw5Qp#UHNoI+#zlYA4C&8<@zo_3&H(+o$CjR04_vM@acs;H> zJy2v@W#gwV_bF}2;HlXSZGx*&OiWL5?iewspS!= z%DT!MeddZ!KqCW2JieXI3!GRDIq9qNpg#CBa?HQr0}IPzE&Z+_n!L)Y{{ZoVBKRe0m*D;qYde z=!>75#kjp!*JM^HNoP43UCutdT_bRM>FY~l$dJmCf8p4cb;{36rXrLbIU}2qxtq?e z1?WP*+xXBS zBOI!Z^C(QJ9zfNkzH=6`Lvl$H3ADE!-{ZeM2>Bt95`UKRpE}yWU()Jhw)?k@+2w0` z(oeaW?Pry4YuFW1@;zL{44Pf~;a8P6l!tZ{Qp+X|gxv}e!2e4-KiNaL8e}B0vSnPZu+Nez zefuM<)Ey=#M3ffChwc$;)Muw@Q=wCc4Zgsz7$LqFz>iq;p|5JPW zI{_#Bs7)agg}Und7|e;M^0wtNisvc^h!+;dVRKQ$;oXOZkF|5dZ_w4iP6Y!GqQWk? z9uyVnkNV;zBl%^Dj(@bJrP}huc}Qxch`FoHn1MIeCH9`We@;Q}o)fSwWTfO&BXq50%3k}t zIYZ{myF=T&?UnpjSL-SlMHj1@?d}!HZ-W8iBVOWs%0(f2 z{}q7UnTRAVF>o9sO;te77v$|x z3Kp$)FQ=-A<8<8a@Jd@a7OQ&2?*;6yi3{do5+~dMALYNFxPtR8<7c4dp17Eogh>j7 zNf{i+qzB2JzdhV3b2OEsqF!;Lg^N*viEVboOc?f}RkjLoKnt$2LP8*-J1L^8I{Ka) zt}6g4i>TyGQ}2>a>j!HLZnZXDE*<^R4iezCvl<@r^anQTiNO(w}qCY1M9dW#0|)$>&$x{9qGJeX1cN}cvoO< zS9@GGQuoL9-o!WS&Ti>j(g9<8I`!M$8Th*#aI4RJ|L6Mg+DK;JQ=VOC9cDlEKh=HE z2V4F57o$!QP;TZCPAXI~iQ%biND6RkOA&8sb$Mg3oUm=}8}%zuze8#vx}^CHCz8}> zd#ErL82iQT>QJRLu5a3?$zdJ$bW!&EiK-=sl{unkLB;V@R&;fdKxp_L*OwR0ncBXt(VyJXyeQB+4@FeWf zNQZxjO!eK_A#`u=xm{|cx7~8S_pPh;TdA+ilGxUIyo_9%c<2%#Zm|EG%pSG=9)kXy z8!{5uEnef~*$a-Pn2(=y+PHTtI~Vheo@nM$_rar3O{}33Y6^uoIv7| zg3D)Ooq;K}#pwi`H@s?YkVARgBEecTNF=2v$eK#OrmW-G2%xkE$&2w1ViBm9q-Z_1 zU+V83v)S=zNHE!q!LG_vrL`gJRx01;DUu5E5S^wXW6b>Ndffi^(gfLc#Rn#CVh`qr zM(hz?L!%+6NmX`deykgsOiGB9-CyLW>>Z07*k&0Pn_SgU_bMc2^AnfTxzqVeI^}J6 z%-J9-SKs;=p{uJ0sqEle7leO;Qhcik3#YfoMtl;yf6BT5Hp2rhW2|21abp2!XYUpr z&(M93zphmSW?nrPH2d)~2_5`h>Um8}c5z6|s9=`RNW6+LrD39eC|Q%#JBZ;F6Us{e zmE!&z$~OYJDi%{_@q-!$MJUdqQ+{WcuL1e?w+u&;<%XS1srK$NB0^_TOU790nc)JD zMalm11*{<3bcav$!Jr^9>wFPFL*!i0=|C$+NZL9vMD^D`;&yl}H zBhNu9$K2ggybHD5wi+(}uqfM8=;d`JZg@}fHNdi#l%|!uorzkyp~24}kkBFoTP!n( zC!~ni#A-R%#&BU$a9W!pXV`ERuYAziL^-6K)K*QkkD0LQ4r5B{B?F28;29BRggpXg zKmX{edaioRpd?BOB`hH=nt=!;qXc0-IEi36$8Hb)P|fP~muHjdZmRLn0nuTJ?h4+x(?i0hd!_vP zorUy~wgp6)o4ir~5^}OHrFmzrtD!P(LVz1u_zJ3`G|d;4u=LnSXW+V?r_Qr*etK}t zIx(7iaXMod+ei|5q|uTJw7jy!yJMNi7GV=3b@zIp4l!>*_k0J_Bo-`iham%#_XJ`$ z<@3A?bGGffE0zLOJb(P1v2{tbQ%L~3(z6p8O3t@%dM zbH3MGe}nv14Zqj+;reR_e<5tzw5dY^W5c(tAa?~cV5Nr{!CXW@WYDmuJ9UiPefs^R zfw*{I6mJ9{QC0Sg(sW?9iN)Bmv?%ngUt?OEJHJm+@Q>ChqUOMbDp}M^Dtz6m;xu14`elm9}CQ#p|Qj)CGu0N$V8lc?W5FT1-S?EZIG=-dT zmRVNI;&0@Q3Z5E1dV%kUhuzD_%QysN>$5xbC73MQTzbo5>@NAs*7YX>oiC4Pmiwp2m?<*Vhq6s-wvzw9 zVDfvzk8!;S%5+C$eRY49gV|ra5Y48Wll=T5%{A)-DVF$Qz5`w#X@LvbaBd(?D!QlN z32=uSgE?FzquGcY2#eJ=_5xkaO>-J)0E@3H!x7mSfbGWHtHPPx6scH8omIDI;jJrG zwyw&y)bd>B6%+SuIgcl|V&ji%xlfNhioaTE)sPm@a#JaA+8#M-dN9C8-31<2?_8Cx zY$1uIgF}6&BTG3zAL~CE`>@mJl!GPml)N&O8AizqP z&`UMm>Mbto^GB{;1H!KCgYcqh@Wqk2xKqb*9+RKsk>ozeJviZsL4*)<$W4dpqX^t< zH}_hF$wgv}{%RTlO7;LlgL*BrlyYhV)^jUoru#q_tQzsd>IZRZLil+P0wVEc8cTn9 z25Efk;AIlHv@1dkJ1kspb{NvR#eRR>5|Pp)A#yds?MFp|DAz3SW*1XfI=Iv$b7<)J zYeQXhAkl9Xk}WeaaUpyo@O7_^2zk|ldsyHM*({wiVXP*~9M(6@?@mxvqcC!giYuz)MlqT39jwOb! zzi>%&KkRe-?6;<~8TiphBcV}-NnGnt+sFu1mMi?DN*q$Jf6k5e?5ca2bh{#CAc6h_ zLX@cR5Sob1xqXQE6BJWhBB}O=8(&L#$ZV}r8}x7rC>7wNv5?}dotxuF46T_cZH(I? z$`xmcxq8JX;}j4-`r1*kJEBSPH`F7PaP}GA?KIxM5PuM#AZ2|VJgGq7G+LVKIrE{Y>-uQdo@8e8?f&+M_WI{~0y7nXRGqM^%^~x?e~KT%$(^sWkfVl!r$O+*(j5cpy2U^V}KcAzA0QJP_WgP(DtxFCqj!hdrwa@|m9)A)49}hxCO*jnE8* zzq=nba0&iu(i&UO*6}t_bX4&=H(9Ad4pslZ(O6q;dclsaw~CHl{5d7?lHG+qfneJu zA>22z61qa=PIiIB1D@J!N}|^Z>$5I@9`Ol{bCPyoTwTq$zbt9?m2+pPpeCp>EF$7X zGv8r|Q5Kvky>+@@*2TX*-@Ed}mfA`|SkmUsxNoSHBJa?-*C&R(bEp(gB4jf(xPJ~w z&Yl3-bxM~MmKs-Yaf6g)QR{D#C}S~zm-o6FVG5-q8p~aSz9;(*Uu+is2|!nCF5fZR zSZDKW>DdU)ZyqTSs_}PCZsszV41uyr#5OtF&~dPzVltm&x3xfTWNLPi^N-FHu%zCo zs-XLP8%j8;7_KX9VM_dI@|}oTE4Y`e;nDs}qOnYobj-axoYEs12^CyoRc}58~fMb4DpBcocZZ(D< z*2KBnnJ^X*_?4>BU^@t#s*Z@!*F*@%6}D-Q#McRua{DVrs;~M@#=HP;c9bp*np&u9 zk6qu}=jw@x#UzwznD3)Yv4KNQIdPflp-CpC#d9|dOll<5(yeJkLlbS<$R`~uWhJ*J z{X@;p3tdQ+IHQ1)CHS9Tti5LthxI!VI&<6J;TXJ&VCM?Zq@nTAvw+TZ-nDh@SXxj5 z*gATTXIM-^dh!cR{1$GY`Q4{jtCSwJTO^Ra#3$KNs-{w9l5I=8nv0kQeoRLnOBNm1 zPSJq+5MddT%?;vIAJG5WHey9^7Tw+J1oOknk<=RTfNF8qry{6ZmZ`AdnZ-~c-P?Ce zG7x&xxVOCS>&B>pfU$-U36d70pHv}>J2iYr zzW{-vg`6KJh#&ggA)!kiXFKd4;likwx4hKF>LEvVZH00w#*M%tf&yf={+5DqZlSX0-(+V-i+}f&g6s)btKnm*kJ{(kQ%{T zQE_U+hc*p=jCB_4aOv~vaSZTvZW49NRpB~AO9lP#jmt=u3*75Ta(X=8(lPu;l4srhSk?8&E8rLb(-gK>=!9lMjqgE# zonh}W;)G-)iPTsfo*DeaFfOtu%F%;ITDqzm-maq-0jy3s1JGgV)^M`6`r~~ajOdAJBUU_%SRX{_mR}34x-VyxiT&fS{)=2tS666_J z`APA(o|c{Pt(5i9-Dz&P$=C|CF{0vA15iY?TEBYtFf&DqqHCd{OP&1sf5()ic>F8w zteI7;zB?Y()X+<7#p#=-c=PxluMAxJr=AxYn_KE08i{GqrKTT)5UkBJg(71AkvtB| zjunb!xZAvzCV4NG`yykGl-$6RrMJ8gS^_D>WO*~_>)S0q0)8}k44w~EXl)P}>aYpu z4HYDg9byhyedmjOyElY46P{a;$Qd?O230s_lt=1~LHtZZ)r)w4r#I|>>?r{Jr4gq* z^vC9H2|gbqMfXCqQsiMD3ib3Mmv|FTS@%Aip6&AMQB@W7NCeI2d}iGbAWr4l3*TUtL9;>!4>_P^v*^%w0ktSi7p27zo zyTOnlpUS51Ajyf~H?R5JQ$+cMl`~W~NoqW((~JY5nA45OE$A(;>9t^KR%nq2cf$#S zU?kt{b&Rmy*1R9!B~eGI2b@RTm^&eDki4!3iwjLXazSgg3sZ1O%q?v1<$XM|S%*hk zcCPau$@oWkxFF(PmW76T_g17^Bq8?l2r4vIH>3uNa7#?fC%vCoi_sHmRI|uY{}Hn! zQ3I4yi0E+}CTxd&Q-7+PvKwQn?It>wEWc9Wn6@4Ol$%C;lnFu{okPcU{jW3keK(sd zx7up8dUHY$Wz+ahEz<`lvmfQZw?ZO!(vUgPYVRnW&L~Gln9st1;Y5XmfT&O0BcHjs zrL-u)W~{2dwObf}YsKBNAXlF5Nzvi6Z}|eKJd&i+Jv&buVfozl2rjRcD6Fi06_nMt z8cr&|xhkuxI|#kJ6}; zcMD6QZgc({7CWmKf;MY1sF~cCUdO*lN+hu;H*K@(0=!lICztKDJffNdOxwy*bcsMu zMUQt&&5uAY`O5><#Jv!PV`r7Q-H(Dai3`rcR<=X-vW{L-y1s3YM__8zW@m+-6T=CX zWn;;F&!3j`;B+Jp%-Rez5x4gyh-$wRm-?J}`^=JF#<~nH{Gh7OIb$NZ83qV*h8Mby z7oTyj4J`7W8nm0*Czkrn*og4i9<`i>3aDp~;iN5SQ|)s0PF5>7;`-VX_N;h_{E{8O zV{>CvREy^8rWeXv+^Cl4P#H>iF=9H^q|i8v0amaniigB(I|Ng&{r4h}t=G^me4g&d zM*ka%EV5j8tA^6|wraa^NI+j@%FNlz6AcUNo5S>xcXgFR#>FP*oI~OSy2xnP`T_f*xYW-JU@hQR zkFieh=XaAe2`S$ewkqJ4z6ZzQ%hM-2b#SCPDR+w0vU}55R!~;F$qT*hIo{CAxJ8$G z)a1}Tp+CWAeq((JI1x2kat$oE%6SuK6v60jz>%6ja-vs-nqT zs#4}PGRsurB?d({6aei``~Q0fXPGQ9ly4`k<%OWQqE)rm%;;?E$%l@C$f;D{nyY=~frW4=yJ$W4X+SOd!U*$iB*z4@ZJu%MpHa?o1 zgiyC^-{`QB{~^%U-~JBpF+bv|+NIV|;-GMV+cW#WwD8yskzt5!vYUY4;IUtA_l&FR zxVCrGk5c22_Vasl`%#xdY8b|1Kfd_X`%3#)TRrRAounVElqT1c3jS&9ml?5GMF1;c z%c3RQR&VO!-||i+E$r3IEEW`<-<@-odRFlu#OqK~AtK zpC1wTz3^tXX{dq=IEI6${R8LHY#l?;5sD;g(HZX$-;OdRUX`LR6I1LinKyb}YCQxlR8);pB$b;tN{) z?u2oFbGsoufcu+pnq%o>(jz%DxX$RPX}vJE-)ZbYf1nKvg?MXi)tQ0Q8un<2l~HDB z?PXrG1qJ~fGchbFu4tNO*{$+5F+-+AK2t60i@`jO`ySD}gR%yr=^p=1lkYDCdjR>S zT8d1WziO}6MT5PqM&hG2It6P93!QX~cMpFd$Gs@*v-h1U!~~{CBtI8HstK!?z(fxM z-;gyln=6xbokF@33#|%~tZph`ZPC#=J+ddUCR7H8mka5RO*B2DC!?(Cwd}twUK)nU z)}}7%%xbGfP%&j4mFK|0SL4MI_OwSBR+NmAIb#Dh;Ac7BMVzRvC)%IP1kKTU!)nJV zJS7k7woXjjcW&thwVkt2Gak2KWGH16Xm+R|DhRDcBt^+I%3pkyE90BR2^w6Wn!;YnhD>lX-jKojEZD9xf z@PkzxVHdZ((`C=XX6;nR?^V}Z~i?(3j{tnu$Jt>B*SJ+hOV>NQ37Fl(c#T>&#|TK3&R zYTv0^>_YYAdaKbRfk6T?K*)&4?noJ?$@aWL)%M~AKlK$;{QSvyUN~ftqdnTi^?b zG*i^uhJzHwEvvm2C0op1!TMj{T$Mv&Xwu@KAd~B*&(;wvOxL}dY@qHi`=nldihQ75 zd>b~`mIL~+aA^Ob^c3xgPz*~|9OUVO%&B@+)qmGmdx!@=n0uF9!@v0ucL$os!8MI4 z1eMjGr|M5-lDvv2T`fWGJsn+0 z(5c1jA4`ry62VuQtKTCP{382aj3zc^AEMLTVrSl&tNH_kcvVA;{4(l#-Q-lCS?@c` zUqzJWhqVDVzMN?KN;ILzAeGiZAKS{B+RHLlv=cJGp9ZrZ)$-W@5Ef>q7GHjP2)*B-*`$l4dp z*{-_O!Sr+}e#y#5K-g~uI+8=&54Cl>kgyaC-O@3w#>-UZmow2fw)n ze(9MEXl5A=bmz1FRxsCDy)H|zaET}oJup&}&SZVb4B9p(ZyMLJi`k3C>=L&i*Yjva zgA5g9<>~&dPGbnA(0>gofzS5`n!$Un$I{ z@vxqo?mWj0CMIve^nV8$`<7wQUTxl?yQ0`x(}};3LN*2{ncr@St@i++O^?inj8ngp zc&A?m>wy-gtasL0*%A*Rip!)Uqa#htqR)k<#9MHCM*+eP?b+w-4`^cBE^^;G#3YC1 zvQT;$3EQ^Y`+3eb@mXSa>S<+!-`t>&ptq7heNf`3 z%+e-cpPuh#-vux$<4{Hhp+YSB^2xgWm7GAo`Ed7Fld@s!LH8@;jAFPkpu4#qyCtMw zQb}69gSW&Ijj>Pfnw$^u+pP)jlR1TUa3|Q&qRPD;jegZJ zr169Ja3_C!juGb}SuHq!AxBeY7Wh77&LCtig{Gs2a&G8D#7=2Vt;ZGO&>y@1^}WY3 zBpse2ovvVi8=)1Xto9z;{@4=YhQn%Y3kbUYi5l{72Td(b}|Q2cEKlv$>Om661e^gJ0DYBe~q;#{S(`&F$%Q{9PZ>z^e3?T;lEa;@oWH@>w9Hx zlN%W6nLgWm@U>t|4V=j5_GII5Vkk^l#oPxr*t`u?d8-nLw^N)-;AFR7@WbDY89knU z4S$(V`mB!}s%DTkTMO}+Ug&ni!5LuJ&UyITG*G!>t;6X(_t)OBW0Kr|p(9I)51N06 zCd}r43Yh)4?OE<$!*f7%~o& zyoQ|pg0*4xnC*D%B2|Nr>yT3Oe`x(&Bf-m-4x$bo~QdCPj2quVg|z?`TdZibnal>^Ie4xD+@%G8wH zh?yxa#4-miR1_R20tzCEKkobc`P|Rr_b0+1p7S{8bzb8+t|_wDnlxAKR!7^!1*^(3 z=IwAqzSSksSqDY7b$qtbI%7SBQO5@4Kmg0(xrOhPwbf@T&0rHO{4AlbLxh>{eL?B= z>Kx8}x*E#*yb{^hGLM3ZP*J_h`q6n=>5i@HWwT!%)g~!pjedV19^YpV-n`aCOvTY0 zG4yeZxHX;7jo{`rP%wk?@xnMPt8jNgJrALKkD8(3HyUOwG`{rKbUtwUJ`nQp1dIybMAUc63YhEs1)}3;Xcd<)>*?Hx>veR^ zl-%y+=rF{gaFgypn(>HXakXV*LvUibT4z--^_0t)>)u%#=}2@0m9*@8)Lb!6h^8r< z-TS<19FpH<1K=@Z!hSe!iF@zZcN{q(cb*xT3)~S%75fsIXM0TPCk!iC@Crcw%!2Ka z;TIS6QF&|W!-vtSa_Uk`KMgBm6A*5qVw)ZBv6_VY7E->U@~8gLjK8-|FV`V3)>+w2 z-!G9Cb%O4L_howKVA>yu?ewzOs@4G2tp~`R#^K+fKY<8}lcLgSnm0!!+YtM<>_;bv9Lw9I`c z;IenLZY<{uAx6Vu7`#+}Jj9sv%^5m87X$XFP==o8y@s7<-}rqUXA`}(J=Ee@RJkt_ zRr+)#4gqqqPpeoT_lOnAv>ZH0l3wmce4_}%7IE)4&w{qwC9JA#!+pdneLq=N?$6ah zD_XtObTh!8wApvwHnEP9xw&qd8K`s|MjkFdjf)tynKAy)K;qEM(Uf3hs>f{X6D(#m zFy#n0cd3Y+xORjQo6K%FP!CS~P^r??&7eFeCS#v^Qk=J$qiXNpfWv&_aNq)SYx6%c za1;+;R@>vIK|-^hEp6n$)|e7$H__Bo{rtvk)6n^l-f<*fRLK zMiZ2u+65=agCB9%GVtmM%>XumsYUOPHmqAhdqFm*B* zt@T0myb47!S5e7HkCI*NEBCuaB&ps7E&kegXI_mRs`Wg5O8R6@@G!~{ZDZ^|CQ~rj zs;;Fo`!3UH@8W184DF!p(ux%>UlV*<4pnNLlVX6l?Y zC637$=5~qfwl*_+9u_~slLViCQqv|owC?6syqeUu3ZE#ffto!_2-0<_m1Dp^Du=Q@ z9<8k&NhrbowoIL*Vv-k999m811JK(lMlS_!;bI2IYIbRG03i4gLfX zwL*vRpM_xF%>Bt>|s~a^>9Z2`d7Pnw&wvH0+7(*fwB zf!@i2)}ha5r@?Hd$Hc2BlMaE~rfPQ!WeWbqZ)SGe@*Cw=!?})%I+h*kgj~BYEl)1so8ENuR8a$irM{EgE2^`|jc%*waZnU&KA#W$}aiMb7{vmb<7 z%9m^NZV{+C^O4DfF%@b~^x}QQeK+v?n!fcGcA9abcMX)WwWo|-7Zf(EMXP2etpj#R zCO^t(RY4;-PMeQmd!ccU9A!*t1Di3sySfy)Y!SGGc^&TOlTX!PQq?mQ>>qoM7y;U> zn|2ScMfa)<#3$3=fbt6#k)5LGYg&0A@e%n@sF{xhJOw|BHFIQcsN-5ghnb)U#TzLT zJPS}a-Wa;QBvXNsn3!ifaeGIIsG8qqsOxttRm4oht5T zFL#)qFA_)>LHSz@$YV@PTb#+^8}i0SjrXp$BaGA*PL_K8Mg!8^HJCGABROzzpO<5D z_Q@KSSU#fi;^xU=JNoLGDAMqf6-pfB+I^U>IlA=+dD_aXV0ggVaZ9GuJOhhCzCT!% z&kXDwI!oYxdhF;PGYfUc&7bTkn!ZqV52G_*SP2mB$NXW3F8!RB{bc>#4_ zY3Z?&o3@l6g=?N?75*)kl)t>hb5jN7?}snTmDjw@?tiCggAr650TWp1o(s_g~RA@zQHrR`a)G-qU49SUf$i`JlI6nnzJq$``t* z3=^|aW|=Un?GXB~_Qq8pFWZQ4CF<(N+|z_k3EELhWB-5!;TE1CM}f=dffS@{=ORj; zvXJS=uU7|$G8Wu&m!WT)jY(Near=NB(CG1|-1hZK%BhX4$E~a4>M&eWoc_x2ND;{V zquGk6&OUY|p8dtfWN>YL${WB+~w!Tvd4arwAZ4?Ez<*sAgnc5^4z$~|I4rEzOK z;*+>d{PrSfTYE5p)=FaSe4|{!O3(;&POB`wH}Z6d^6KRG^d#e;{FnnS$gW+9ORWmO zOBTGh|6Y>I=N0N{3$pl|B?#~KEDwE~0rTKU(&5Lwq)eoP+{@9i3Ge}Uq1pNJ(|#T# z?^#EPtQ+^_Tf?zDysDF#@6xH!C*wT_6UqMPJWS^C+(vLrbo>G?%*}p~*Z=Vk&Exmv z9|893v(rJ#`a68s7V5}I=$`|z4#qMwqs`+541*B7y3ddeVfaZ(cI(Ss=2H6P5)$dz zo5HsFC7mhEfTI0VECCSOb6!qDbf{=;+i(Y?r7QKR<#W zf2PpxyyvI})c{Rmo&0gn)*_8aI(qx&2lNMI1AL>;bgFHm9#7EhOCmPK{lA1@a}C%g>TSaoL!dN1UvsF#R28dZsyz)$oZ zQ@&p_eBApcBROD9>n1F(@jJ1n3ig)*{98hRvae$m_T%ZS}=ijO$oq8Z!^$Behpon&AaE%bMbP zk0dT?9-@ftg{HXe5-t}}w-~Qegzt?J4D6pIX6;dXj?m6D_OsWisW-rd)KvxK0I~df zrNJE9hr3^n6>;ryl=jTxyxyfd!mC}HFMT4d4*b0S$tIAO8eK#8gOAxfd}gpkEj#B1 zmS`Ou=0nVdZXsz0m$xzwWYwY0&7P>W6Q0UNYEN1@BZ zO>9NW(q>&R+8UN%lb*ZDCrO=6!k^p+9J5?z-moIYDF1Obae$23c4*~|fs4$AIS8*Fbrg3|}*S3qxKZ@ZgfNjpVhu}_H#5GOxA#C}wtJUPJEk9K(7tQwNZbR+j1s*k_P(Mm>J%g7;UI1)|MF6r7b(1-Y@z1U zmThAEAzW0gYtjtfN7Q9D-L9;iDZEs93_U%qB}jy1@s@|e`&%@KWzX{@xCz0V`q~!b zVH|E?9m+UPrdI=rd8~Frd$?;;p3OimP=l;QLp5l(9|=x7T$DNcbdJsNJth}9$g(tm z9XD3m-5T&%?z!JsObmC>@EMz6vX;h^ zK}$3o3*RgS=Gi!$+q@srl`JlXQ3@nIwDrHxm?>GSUp5+xt{F~LRA%U|+}BZ{T-=Pd zNi$MkF|2DA%St^6PL0gz#)-x)CXgB?fqN#$_TQv5EWIV?$tx50)Z%G!rS!36Jb_@EZ|Gj@j zJJIYhNAQSm`rEQft+Pvz0Dx?tBFTr_e1LP461(6ZzMV_0SMeJal|i!j`it3UG*BWm zy(JF~I$&5I@^-3Q28Emi)ccO3p;5m_E!b8dQIVA0-0R zsTM{E#&wje`zp8>-@k?_lxN0VJ_cH@zs(6OsOVj)b)Ri}ptY@!S|bq*M$j|?2A%Bt z0mIf>9!aD+`9e{Lhe)P#0Tpo#w2dB*2!fkzocPb?<(;?lEy{(dFSH?-xUuscz;a8`lltZ~0C^NMaBm510ot9bvdl*1lyA zOc0Fq+#R~H9|&8kT(f75aLat9l~UaZ$`XMW)BLSluenMrPGX|QKkpv)VaGfuV%|Ge zL!vm33^CzOBw+j8dc@g9{umg;%Mg0u#JUGGUDlq9Gdv>onrA*QOs=H)wZkH*Os{RF z@uj;p3!jv16cNJpBTbvCpMB%-jB5aydgYr;bCKIuq&Q`Z+Yp3fF_yLK-O`Bb3 z7R^2lV$$zgU&8ZGpiXJ0H{KaQ{_i=3Mtf=Q5$2|38)T;3w!M`ynAK`8ov|OoPOzJJ zxr&LY_8WiO)8XW>AM4rO7jMHe!95sc72-SFadYs+cxoJB=yD$OXRJXyP@?HK{Eh2c z0l_Sj)ztJVT0=mXM2!xkuWH(-*dgVi1~t?WPgVbhR7e9Y>dc!h0?y0Nb(>x(o)DgB zl$U-4PD3I;2GJ%z6k=PK1gsi*b@=836xSJ(2Fwnum|E-F>{`$gtq9%_WbV&FhhU4U-crlVU?rjL65U z+XFW*Me(2)jF^^{V&|c9G_}cP^Q)huw8he_27})=!H&6_kRD%22?X&=m)}vkcSPfrpr{9xTh0k+hM_OV zNqrQ(ebz6_QOGcE6n$ZzgsW%=*FDVCA>8wb8q|9X5;vi_dm{F zy{UD|Zn2OExOZw8XyF_-%$?wVd)sE?9wLv27T-E}TPw1Rftfh>^kmgV$dPu;*RS0N ziWTz*t=*GPJ!zx79`*&&iX-md(Pz#OmEZ~knJES{3gN8FifxyNNCrM0wrL^9og)0u z<((=|v%oo9p35=90eEkD-4g6t46bv%M%O~rv4o6^AC@KM%xJPl;l+H56pV&7!aHf*g2W{q*1*wFQP83s8NLw z61h4fVvaUgg)Il80+zw(%+4;{9oAY)21KJE`NFyCCfJHsTkyT2-Q| z4q_{KUwB!)v%sKyP_^F_`t+;{H(Pn`YZl6km=FFra;nmxw`RjHCqPaZ#OhHF-5!x? zTMbt$&vxYjo_>p7cy{IS|8F6qgAe%egL(FR4xeCtIqu(hupSWigVt8(d#op^=A_Oz z{YXXDsoQ+h-x*GMO66I79Yfdd4?Dok1&2^3I`bXxgZ9=SrpG=VGxNnreI(4wt@)gR z{MZQmcyK|t9>Y_ss#G`1@Tj@~`oNf*X&P-AWt*MI=^Dj-uJPC&fswY}z!lgOBNeVn zH#E?rgNE6#thT~uq<@hd$z3Wv{T~qA(inI|34g-H%sEcnD`jWSW}|;fVM-rAc4b}O zCs^2V{^nWuCOA}yn!=oaW-R_uUGsD`8a0XU={6KS-mI)cE4?a!Pbw`olBBG)%`Zp#OsJ_7X}Vf0(_U6|4FnS+MDX3w7H4-G4K zm$;_)XXK_=o7@DSI+^zLif|$DJxgR{SxyZ#wnB~#+^Z{COuGTSY3G{iiJOUwPE>Q` zrWzx*_PrNldtD4E@-01`Flie5zG>UDf;$K56K=@k@7Cw!k2UXcZtdA6y>m1P*GoU< zLm`WAo%zj1fV`@NLTDP=p-fOq0EO8rsY1alDDvR)%P>ouC3wI+ z^X;n^vP~tgl!rwd1mw!}Z}{3FR{tf}%Q`06e1{Lyk1#tz!C1Y2uuHQ0PLmfkUm9p5 zDVXLERN+4R+=`Lv6VR3zaxyk!A#X4`1S(n$$B*!d>RX!7k$lc&^)D7QK$A2-X4EC&C%mLISnXI zHe4bunYk#o)8))0;nBt{7ZU%CUVBf}C8@nNxh-~N5hz>C_6^!Pegn${;h4eU|Lh0Q z6(g021OM|OQU135;_DBpefKq(5vq*U5vdD+k~vmAqWq+3F&Cm~mIXT$ISjmaeQ1C9 zl>IBPldbj5^yhj``t})M*wKm|zacI4PuhDxW({aMgz!#t|7!#@uJ%ndCjF^bj@!oG zuo+JSR3_SyjK8zXJmmz(;&%zsEc=YciYC0RbSm$>naMd9nQw6y-7Y#AQr`U)aRZN{ z#b4Htw)^$PgV{|X``QD26JOjK!rgRK)oZF!<3#MgP}*S2b>S;xLVXX2w*-?ckK|lb zTk5M8NEX*7AcePz{o@Q!fDyK&jcq;-JDF}s5UO(1(lqc7kdo`kgAZs4yL)%*$xCLI zI-OEMfNYV2yR_}10|cUH&6|IA)kN?B8D_LNb@hnv@{D+g7=yb7GCL&rzjxycdP0B| z#rYK}7^y^EU;YAJOS7fM^U|qH31IM`$~T&Ux|C>;ZT4PU(=M;Mz8#{fLNnE;ID9zG z98#_(hH|(;oW}jN+&@>}1Rotud^qZL6xPw~EGI!U5)V`nplEC(&%)J7t;p8tpyAp4x;FF^;Ik__`OQ!UB}GfFUSs8N?)7eLYTJAXw ztnpnU;%nLNpiJJ2M1kOqIlB(KZt1?Ag4EAL=B+X4bG_|rfEiix4!u(+jhp?FcxKRe zz3!-N4<4i@QdaLrwIr&gATrjZp~~B^-nNCIFS|pQR!R|CuFzTB zY9A=@PCq4RWH@QZ>>f}*x<_U6y_s2>ZKF0TUDCO`LO1F&K+JPJ3Y!LhQ1|5w=ACs< zUA`19@w_;IVkQT(>8 z<34b1y~fg&>a=6S1m z9&X6`Z%OzMT9VnO+i|MyR1`8~pWBMgT*ooD&494Wi9^tcanbc-t*NYDsG3!H&r|`#9*xA-Nq1>}dCZkK& zU4v)M={3)cJoBZ-dX^xh3c3eX=K6ToN%HE^vwz`7#*P);iMNev0cJr(ZijNd}*4_BJ?iXYA9h%}KG@)?&uOB8-rR7}Q_-@%t`72c??s|6zkPP%+hE+Y zZ>SNHtEi^dEVD>Icr=|A?qg^tr02q^D*6;F(x4Am95(!$UHvg#t^at~UYCE*`8hX- zw@H7pHR!%=ueGl~12rNa))5l+RVVJ|zWQR|TNwI@$N$!~O1FV%*Uv$h8uV!j;U;cB z4)iEQhrJ|S(xz+JOAzt8+Z+~&x0*uJyORW3qNcxVtyAf@L!Boya{3u?5}NDzEqeRV zQdQG-5gODS_BgyTi&-0v&CHlhO*uE=0RBCEgTPg(<(;X}fN3hU z?I0hEF=Dq&O}*KI|Gdz*s#$$kNtWXm-LfC)b{cCB{A8z*JLI^z+U6lc{@Z9Anu7qm zeO>mEAk;+6$X!BHP8#*Y)YI4_p}LXq-vEcu?J2D_jbiqVoUJi69&hkMo_!^cGo42L zl(;He5{7lkml=?Mu5UJfJO`9V=BYME_=V;r|6kVS2{dUq6?I^F+Ku>A_RAO~_qe;Y z^<&n>35%Jw%l3IqNKAYFQ9q#3kG7x5>e#sHBS3E7Pb~Ti_0piO__Jmmey+U`_xJon z&iHI5u%t^lROa>+s&O9k^1VmiNR-*!;IP$iPWvk$2TGep>zDC+<-gifC@Rwf)!2+{ zXTxtSlkC5GfPZPzCC8vij?eN3wM2`)eNiT3PCMjNrh7atnj-*aH(kVD<*L4AmvHai zbHhH)BeNnq=i1KM*FVFnQAV3FzMD=iziCZqp3o1?!OEo1ED%D$%%@buBqs>xPNC;R zor2;qmZa%|!3TNlMVJ$hm#6KSxAgMg^KecWWzt8wPg5|9{b0~ZK6%VSqazS8?b%bZ z`#1L+=i$~eiMsfBO*Bv9akqhf3ol08E^uDqTN!wD<*CR}oZk1xB=?b$xtqY!2Vu(A zO+*}jI>Jw`WN40Np{~|N$%Yyf`bMxAYiGM|FB1_D@<@%wF0dyzH4#5dnX*2PqZ>)% zc&Z+>V$Yc$-HT~cH&ld=Ahn^R(R~Sz@_n;qNXain;28>CZjl>lLJ`7-P1)?0<0>^R@)%-WkBwY&%46 zSqnJtDWvMe!1{ml&#^cwjQu6+^LiVd>V8UYKjOzW$4rk+j+$O0c-x}|(-h+~R&a8h zZzKtI%E8-}?T(YKE`2h{^VjSzu9K9vt3|D3Mj2^)`&Hhl-Gnt;cpICpo5OkNL1EFEsATBRYDPc;cA`#Jh<*sWi#6f(@Nw+scxr z7#>rwX5S8gQFd2_d!P6>BL|Y^s**NN*{7r`nAYhx*4Zz=cGKR^y^u=m1opJGHLjG< zK(L!1Sn(vxKrpBG!Mb=?&0CgVyCY?0hR9M)T5eiA`g~gzpq3pbwU|&-R-eWMz3fsQ z_Mhm496|m84Negi`dr6f`5M|^mS^k?NX+L+e{ICaHhm0?0Qt}NMqT*v-JMh4+6^Fb z5Z%YmhkqD|?Q4aqF$Z=IPWQE}?}{>h6%xQ5I=%91utsGn_KZ6({jZ?u4#~ZehtTc8 zM_khc;e=jX;(o!_)!RYA4=XH=UjH)%;?L2mRj;+*T%VkouevJD)}vM!jCWU%FmW&duD7T3j8@hdCl<3#jqMVApALU=PTg3Ic-n(EjY&FS!{LP;8Xd!p z3~eDB`f)b0EKo#P5!+WxJjYsv8?oD|`72J_4HkwXnO-pTEhg;)uj}K` zb?eS%Y_;D(alAnzhfR4aoS5*Qh39B!=&D&q**_Q~E(3~BHBaBN5t>R?G0AkzYAvK1 z+af0H<~3$ksTwhhVf$om#W>mP zb(48E3High(ZTE4jBeat0(sS25H%EdfHg~(e)n&F_kvBZ@dg!;$HEuGiwfv8~)U9W5-B4)f zw0;acGX2Y> z*?hk@HPZ&;aWo%T@-s>tU)FjNS(PjQ3L&6euhvOi@Xww9_HxRwcPC^t@C)1YWz@3u zc?{I~SWn+4&)5tsatN(yPqhvj5k1$xAg)I~q zS6H{X5JQo{NpVUVs|(V9Fl=bXTq${>G!mk$yNUS1*l>wkG>P4gK2xKti>aF`)OMNs z@=^Uh;cR%}XZFRNfxrJ;pMk+3wXnT&aM3uOg;s`viL zPVugk@lPdDHgX;DJ#{0`F5V{jqy-xks!(T_?%9C2fp;omDpQDWDyCd_j~0W86KLmc zjiZ=r#lAmO?%_12IR@D3^okCbl8I&hr_`{|tnTpg16A`Y$0G5nt9Ce~3^|n8By=@j z1soi&*N1Iq5Aa0buQC26g^1`@ zFg9jOj%B07D`tsmB^kE`+2lJcSw&b&P|bI2roTz3mv1wrAV2rb)DsVo49mQH609RJ z$KO5*)Fm5N>l#Fsk5ZZn8m&wZg)(;4i))~tVBXcjUHSW!hgax=U(_zwKJ}!t6*ddA zr%pPP@YQQ~KFL$0;Zbs$`~(1<_uLHG`HWj|!ESe1b@mD-J3p8hs!<$re3UO7d#ef% zTT6EHADGp%FQ4zw-CoeiH`wp?V@GQp+ZpMn*$$jr+{TtB2ezOQN7bX7E4E!AGxYaa zXY-_+veTN_D7P}7FP(3k@Yr6A+scC};<1?dgp|;Y;?NNZ+l~Uicj|g=qdMDJW{}W~ zk;wLsxYuLjjSRK;j}264^kf0NRruu*{^r>BYFSck(go#*5O<7;M*B>EB)>iTK5MS2 zHmWDyE+;!4QLx^Y=_>b$QhSH&5Cp#4ey}a6Xxd5;KvXYzLoktn%f(x6@h2ESNJEO| z!({P~JyU#Y`;(N*{?c1rf49|s-`=+T%e|n+Fg1~DhpuK%w%3B^@_~%QKAN_-msTz z6i_lW_KXbm(R?14()Gh#-my&G7FcnA^rKX2`^bLq`fONe6kLpri`oc z^vHF)-*9Rt6C1CkESV8Juq}@0aYSR-bjFgAPk*as) zW-|+}LL>Oj33t@Q*{4lMiQ|#RuC*4s?1w*WxTDvqu@0wnZ;pO=Zr39be;>H7to*{S zaq(ynIUIWl_+AIXF;BfGGN$G)-l~m>5j*D_&=0Pe`j2taA0cYDViEkrh3EMgE;AUw z89us!w!q9gehQW!A2&s$*3CwIK6P>%0PHMq?l{IUD^3#KS;p4WpW8o}uGw9a4HtO( zc;tok)E!ejbZ}Yxdf`HtvEEQkBaafMN(0lMc%8N5`&g3W4tY{(J7@Q~A9Sh7Q%3k| zww)k|r~R9yp^Fdd$%y-BV+zpMq=k<|Wv&8aiAka2SE2P+CRAhwbugSrMyLpA{H6p@ z1RNDOmTFjXtmL1Sw6s_%E)B48%WU$LSBuwgqoAw*4Xtqb)Wrhil;1)3@XAZNle#}= z7kVyFlXr_YD7uHRtN!ipj@?5Vx?9!cEE&KiyvnRRuTt7K$pAA)__W>b8HKjNb$;Sz zv713ltT21`GR(WOojtNck6fw2IogP@O6c_kb$~293D~vq#f)Su&<~k57t&T9aD8K` znH5b{cj4L*lnLa9f&Pg!We~@@f5|hx1~-;9mzo$Y!Uc7DqBK={whS!e4y`m*RItCB`*8AkQH_*u6DFJ!0}o%XKlN1XVf8#*{Iu2k5!!E`W#+5 z*Z2=}2sfSj$m3&J30%u^;uj6wSVXV9V&Y$?4QWE^_eTn_QGF$iAuHw=n#qT}wJA-P zOl5E7UCK+?DYDyY`q1T{ns}tQAp6LBHA+-FGxU)1yGL39<;WBSw;)ukM#GEJrW|^f zqSTr5-SAw5XGL5JK~6Gw*jHxU>QHGN`!@b}_ZnlQp){LQZ=KM(lhddiluWGEv4X#i z>4t6zN%V{&FhMV2%ixpoM3hbl`rDK@UR>5{6J)SkVpjuaEIV70z?x9-ZS;8UF#UPU z>f%qk!rqoreqmIfRfpQ7DA5|XhB`tM@tQ$YJpM`y36HGwKraofWj2$@sX{yQ8E@+8s|DNF+D>P+rR4uu?dWh)#W;B8$zxL63l;M^dv2tfb z!m~Tsw!v1Sj_~u_%SK2`$ZF< ze+JDt`U(U5A=ZQB1?P<8#zNqjKcRGGix?DK2BvzKcQwzY6RZRlUcI;Jd^lbG`IPkD zvE`6GGAwqs-*zS=tC*U29K#8~^?Vsulz&Q*US_D`v5wPzKM&q3*KUxNwd2yewf_w< z>ft7$w=o22*xZ9cuU(Oi^9N-Pz6x^uxN#K@>5UYhY8kYlHH`{0LXDWAj9Pt4bavuoOT-nizUS_vkcko_yiBnEcoFXxvuP){4wft31_hXxe8rQM#sLjDr4gz;!$;hpFd;IvS|fBioO*2A!NtTbg=o z_G?_~F(CJNdT!8(ihy`EokshDR=e!8WDLm^W*D^~#{h*q@nbmaJNTuckL%`^>9-29jyVaz2?`DFiz8F|P*NrN$1;#RVP zeu0y3hAkY|wo}pvR?lSarA8JE-Awv+?C*8fL4YDc-1B%Wdif%m!)sc8jsk{+2*yd{ z3rczoa?{$nwV42w=m;zR!uXof@zF@T6CjRx2w#(Z#N%9G8?~Q1%n3OK${RO3DI>nh z3!Ou0NtThldkuY&JMs;x2xgr_{oWH{SIpzjrwD*_p(&w|AC0|bEBsq4Dr_D zh{Q)Q{Q$x7u87YhDcA_<#*bCcTvK&7^xVATnkh{j4-!TEFe>oYBqx$o^qI1!cRccx z&P**zJU`+h_yZczp8aME^4FBS@pYflAm;~(W1pAD{99^(o6vT}6eDlIjuc}_b~)gn z;M$Ae}*XSP561H1GIybNHqH8PS46N8CbiGla_FD6ZgpNg3?`zadzi6W6PGNUxW zx^2VwggdpveIw2Z=FT2SWE~BeB!}A9KC3Wbh*ft~0HA{BUvExwfW0+-n%97EWI?9z ztm?~yzL=cm$_8{(TPHCHJlocN@|xN&jC(bEd4tQ))G0oD^KZmxbpSk+uF+U3_tNBc24g_9J?a z_$8K{aTK>?+Tv#QaLje1Ap)+4!*GP30K#n_~eMvjdrVXYI6nZSNCLN4|_B z(|vU8`1)JL*qR%m{~{N0!;Y&l2P#f~b}L9}yhE`v)K~wT2zd~YPyLi&3YkghM$Yh0 z+)zx8lKw?yw^XQnCWB|)c3a%8r!j+x(=@ddLJ|=*#!s_76cqPI(7X2~8~x0bpr4o= zckJ4Lgw`tZ z1K8KrrDT4y=Z@Gflq^D^$ELaY7)@bq>qw1EfcqO}Utq@&f?`Pd_DWBE?%s99l!4do zaDTV33rNo{hlol3ZO}MI`WxIaxep#ac#GMO@x$>s-ATjOZfd)c4MWU-fO`Q|`SpS% zYqY-L8hU3xln@|~jO~!mfV0l`LeuP33H+BC(lTi$}NLMcf;aQ~^Bc@xydTB`E3nQbVY5cH+?HH}c`o4G}mkZqRdV z$IcEfcEjvqi~~vRs;y@ebMm_!nruu&_+6`+-BIOzL@t?_#ScrjeZV1_4cU5-uUJx` zO~~pZ{L3L&k82z0--i7MEsnodgJnWeIMw8b>7?!tW7W?!Nf=@H%qbYSQFp^>E*bQO4hQ zg;ie=+8fc<`39`gN|1bHCvkkk_|klTaGD+=yUM#E=+|9wEji_}526PH8IjPalY?Vk zQ#i$1q`-|bLJ^j$9B2$ifg47WU>&U5pUR33#BXPHJ?w8e5(HJ@Tj??q+JIdeU{*&+{uv8M5Wy8BDPG zCvN_;2kZo_Y_gA3_ND%z962|gOuR@9x-6hpv}>D9qQL42YN=`mZwgG{_CFg8FJTa` zt|chYC+Ro!>IeqR5PEi!lcELddqiy^Mr zZZ!Shb|{m##u<$j9mXe8+%ikfx*xPGxgzL|r0(#M_h~aIPU^aDxMMvz-IkX^JL<>Q z^r)1f_hG%upPx0E4`kuX&7B#Dw?w(Bg{!coWp?i$8jecl~A6nlI zwDp~q*;#-|DO5pum^=6nwv4Bae`18Q+6)pk;bO}uePOh?$DkQa-(Y;uwtKY%{p1rT zmm52io{!th#d<+)zVfc#9lVpH3D-PN4A9`W((1dl<$VmdsNxJ_bbqgFPI#flo@c<` zjfI`&1s3c8SF%rk2|K{TC(N%CosD;z`3)N`ft~G~&S+>K?_nfI-nTMY6|2lS?NW5;atMITiLj$e8S z*pZd}-F91lu>ho-fkgQ$wgu3RUxvL~H*`#V3Q$vvp}HaOq29WmXG+9NehF;Kd!ekx zD?ed>xQxVHJ&sP0Qn&qWDdvT|fk4h&I1uI` zc(LaCC@@EWA+)a2j+E%>5CRL%0GycNs2nXTW?(>bSMK=Bw!+wst{o8N9rmEv_I|%E zh_XN~BHgOGckBNK-Vpa_TGZBONkdwcRU{G$I-Um5@k=Kg0NM=!JqCw@y4DALd>D1E zraivDxxEDDYF2`y$k^-AQBrB@a1H%xpKlHkTL4?+Uvb>r%dcmd=BvUEr2}}7 zW($~=u6z!5zAL^zpCFdBvOjhgt9XWr%*Si$=oes*2yWFm+>n>enRWeMc$vV6=B2M+ zAt4ZM=QEi0HMiLPpCgId%;K{0th`@b^kCc%?*Cwb?oGBuN$WlCiLzkp zjA7*&-LHMSuw4z&t@Te=y8rkbx)E8JIAaNATGh<@*qacZnOaZ}9A_TP@>A|%NJawR z-~Mo~=1e|5bdu=qujz>q=8~Mhdg%@vO3eE** z6yUdI5m6YMK?c8Vva^qz$gn)=$A8Dv0YZLh(?;#tiEC>q-E}W4VhZCz+vz5C(9qyz zne(1$etmqp6d)V#FR($_ZiUVa-)=u}N90g5i_yNgeo!?yDs0Nx&!bgX=AeeB4o2Lfj|XjeVEm4bG=Nd&F_1vQ!b) z%*|mm+bpduY4&rx`NN)=x%*S_8vw0=q^@0taZCiuUB1dG-vDOIqnDU2l_AgP1T$AV z$hL>lNiwpfOgpz!CkB2hM6mf>L-XZi}OBqWM5qp|M&qOjh26& zR_UMoK((M%h{zDeM5T(o$Y8ZaWC)X>j6#4g zWDu!h4GF-3>d6-8IoecBI zoVo=|h#y80ZK_nYS>Y5^MOQs~-H^Nj6AkmP8hfToK33pWH73MCo{)tts(AHB!L(H# z@?yHs8QP!U#gDsj{Vd3(_OdWgv1dI%oZ9o2)_m(;(=s8xuxo`NZQmAHGDES5h{t$&vdP;CZ9*|<{^7cUQoFg_TM#973##@_co`oaa>I&GNJ z`nqp>Qk@ppL)AI^ODD^x3VA;aJ;6rhy(%(z-n^b(>)=vhC?S^zY$@Oc0S}rDs^dlG zx8YL>x2_BHW(bF`mLT5frk>}%6 z*+l#ZJCd?W;@rD~bU|9bEX&aeYzq0rFteWax4lcTO0A=M0^jAPc*FBs>7D6SuUi6! zq%RawW}QjVYD=T>P7gIIk;8|&J{Ybi%~}-3?3Hr7WwTK2ix&lJvEH&_+)kUPn%3uA zAOBhUGp{B*>FabD-}qgfqz9ANw8I@Zh9b*vWn3@PZYH>7=;W;5^lbCyY_R$WRA8RM zd2-#8rBM{wm~j)=HTa$jEBuI@>_;6^U^-QP{G`LGogU8MkZ&Ycb9OT68J{~pbM82I zZ?{fHFI*-!?>|Ez$JNz*%x(Pkoa@j}+@?I9CSY}^ug*5;^V&xzIp~j{tMzGK?d{f8 zA3}x!hK{nQLZiD!R~mXUUtq|aqul(J`=gaVQ?0Y-+1J@;hkQ%y(=|U2qp3)#rcl!; zcWd0V&~G>=cq8qUO0NBBBC@|G9@XWTrG3;euXX;6;+S?2!ASZHhi8yCpNbQkqj_G| z0VqpgK6mQ{(Zo-!-cVrc)rqE~uwx_*2T#vK&6I(icXr+IFWk)0XC93uR8-KnZZQlZ zzUAN`Q;YLkyD$}eQ}U1D9RFv?Y6ij-KzmfNj>`WpeDDLjT?ql(#f-a6A>??ZGJ`7$ z@bmC}nx;;gjL=;O-xNL1NNnXRa;Jo)ayrfgiIrGyG=`Vo%lVS+Dy(~r6~EoRM9GY7E%{jCxy-$Q{!tJ_b+n}iaZoZT1$A8t%sA1 z$8!*be?Gq0$gU7Lcp?51SfvZU!TI5(8!6cbac(g!2?_qyvG^1tjUE069b)~?xD`HV z#PlLQTF;WVkT&l4tkS~+BJSXxG~(G4+JR;4vnT^q>VzVkhJ_TG`9Cnx*cAH!6ixId z;M#DDrDu2#I6rP(kI=@>2lXd>dSOHGR)B|l=KF2#boBpbb71;)UJ%4`Wk7VhzjZV+ zF0^0j#S_mN{o^k2u+_GZDnhIFd6m&v2cr;XABZHrrDelo#04he)JQ||h2(qTZ6V+I zuzwv3?bm#JaMiXi+`p(zd3$h197=KLGUpVwLtaiiv5j=IaBSKV8x=Y`7l+IuRXnZCM@1zXpjnD#( z2A_s3cNs$=lvfGQ3c?2Je0zP#XT!_&z08B4s(Z*%b0+UKh-2f{7lFq4=h~$LI=`uz zWJkrkw&eLn;rNcCwje46-4R(b^Vob_wHw!{PNCep6~Xf2B^-(sPxwCtPP5_2DN~l; z5mWr@1!0-;=xWD^)?$*%KtfJ6g{+3_>6yDrD=mt-Nf&PMR62)(dsPD~qK^B=mJ>Bo zgPQLGF{dL^|7#ZqOhM4&z6wnz75VY6VlRLz8uRjPiFV$y;^w%qUr!~@JS5ddiGv(> zuZM`Q_sK|}+LF(oWHP}HmrH6EZGdEs2&gz)HY>o;iBs|0G*o+OX}TK^-4`JxO-a%* z>!iqSu$1gl-a*F1Z_C5yE@7hW7ME0+_?SO2Ox$^EH$q}m-*b>BbgpGEP!c+WA(3EY z3`V6SCJzWx5jb;AiXF(DDLG${-?kuO&x=CLuOScw*#vjQmldvKp#p7_mPa%aMJ`ep z0zr}}HESWe?OS36n?+sby_LyoRQ`~4o!bR* zy^%{$Qlg|*M%&^5i2Uwr{%>cpDsj#+ z>i+P_t+#*lHWxvy94tn)TG=KJ;_aAQf(pfs1XTfTHI*e_%I~YcTId z?%KqpmEfu@8CHE@TML&*d~jiB6!8T_r6hvTwi(j z-!t15I0>|9WvOA1N}f5yJNAG(gD-#O7o=&vHSL}fP09Mc+RO|Qg8>qfTfZ!zOSXcQ zF|)W4APr)X3E8dJDdEd=e?HICmeZUj8In)1-9a%%$Vbjz8HnD)ou(|FMtcnBx&Q<&j!&8 z!6^Z7S@D$R3EKWQ{P|k9O6!;9>H(E4t+Pgn`o%cym8JUIXIFl#OZRsa+#5Y$KA>`J zP`{*+r`B(<`DeCx<5PzNv-A7Hcs)}L=lnU;nkH+r2dm1jeWudP-e_kW%rRkGuFW%= zJ`8PKu!gjZVC`<-OIIt_hAtdfk~4H#ZITwUy%Ij_4(xU(dD$}A>&SA&@#E1t7XRF< zi|2vRU<`)5D{r3)+J#LrP*gXd z$ukXrnqt!|iybuf{J5*5MNcU$j=j5$kw2qAv7)M1yl-U~)qHAOF=gIS@GIk)Tz`>| zUi7*8Gq{<)_Liv#(f ziQuH%8c)}B+&Wl5eh&un` za)r{@%^|XH{r`v@(bVHJGAh>Jd$cgu!*^!ylx8FU^p2^#yeL3)d@l)U6>zy&Qh;(g z#6P*bHCZ`*Lvhm9Zmwoj*CkI1PgNMhYy#yQ(g#@FB;hr zF$P24p>BU_b7p5jHqxORs{mpeT~7HrXDdJCEi6QrR2kwso*Wqvk+I(YG{5X-jm6x$ z0`NCKn`>or>LE;6sxIQ=_??;!Ys?S*yaMiqwSnsojN zim>Wc9t#DkPF=KsK#p$QRjuv;hmu~DB)k4FFwnqDzTuX`()eFM@Lq_Lxwd9<-Z{Wx za`(N2fHDnH`ZiL=s7Fx9B#YK)dQM)lJlx?@#_;- z0B|}@?9mz=JgL2jo*UL6bRT>2l*YNmrv?WjzEO+J1W+1=HKZNV?&WuI?DS(=&V;mU_e%WoipYgRSjLaRQwd=$MxxQtV8i4{GF2;4RE{qw{SP@NT;r2DakATCAAPf3_i zRXoX+ufygQOQg67!`5%LOl*GL@Y3)M;IS$s>$~(gk@JVy3;9m+006xKU|(XVdZ~4- zyaFax)q$UixLcoAm7EEBf!N;bz!MKE@>Cq6;7nkAycOyFgFDmT@;8oGJza8zLsi?G&b#E$ur*5c``a8|BX2C5GPh2HgXomEx*dpA*qu+I+#Iv9HcV?3ko(0?>)N>p2koXq&-_g{N0q5ngMT6Gu%Uwgz}n{0P>OVEotF zUD`fsJ>Fp%A8SLdj=4FuF_E{e@1M5qyYNT@7=cN}HIPsrp~Ovx<6n`J`m@`0w6!e~ z2EO(0Mv(7o1dZDZGMEFknoD^;8*fZ2o))4rY&9SkEKv5b>wdppHVv!_JYHCcsf?`t zO?**4oNrg$yT|2ov?k4x926g48o8`l1i7`3qXqEarQRgOpf3DnFqChuamI18B@sc_ zP4FqkBWfxdzUXVn*@i(`Zx`0hV0(un>v9VvKq zyl)`|y~yPzwk~kF+mhCfLT10$RJ3Jo6|8!fN374ioLDbYK5S`#I#bK{dRCfE=lTGdH{UutyBJ z@hji|6-R_iT+blW`Kw>=LzaH$5khE8N?$E?Ovx;w!w{nlk~5;>EvG6Qc6N-cokDMQhgzqr3F%$MhCmU3C*q2Da*xzMHIDniXaP zUjPhg`-@=^wau_Yc1Hi*RMp^BI7CJ ze)dxEUL;ImOHtC4F;o)=l*x^OCGLDTZ;0jR8++CCBb_+EejR;n8W!h=d?EaDlvjzL zoZbE|TK)jTEG&veIO%eSLpJi)-U|u>vB0F5xq;8VuTa;ZKCFt7RDy`NMW+bz|3V^$ zXGEv!*3nk69FKmC2~RL2S%RVv+m*5vd2Pl`)Wo)~PSAZ9Z0Nq>X|h_(Dwpd)+Ul-d z@fNJ&Y=^5mrUZVy_l?}Qig5{^sn{@2+Z?#Rj}p7f;&Lzp*YQBwN<7ag!yl?Oko&P| z2d!ThF54Dn%AG{0`=b_pi~BcPM_UN^m6z>`)hw84LZ|H^1SG_>btg=IoGsooIxV>r6k zg6CqwL#zD>zOLVK-YG>(A9W?_3XdnuWJ{`tceW80ot9Y$@u8I`L0rc^&Dq?E?USv1 zJ9z;sszo4VgV4=@^4+7JIyJ5QThH2&L9%*D7Lh1hl5rYpOlEiyVwzZz25UyntA)&O zJbf!$gEkXIZn9w_QEuluj*hvny&ZqdurkZlNw~D~)+S!A?&-ELh`J+QXD0J*O$dgQ zr~EF2^hv8Gr2}Nq)HdzR1b`=RBbFS4LO%Sk~yjUBBG5=n(gJ<2;LM5|Z{a|^F_AZ^0QH|-(nz9UVyqxVK2NUC7 ziQ^)D(qCD=)_me2|FhCDEf*59!ba=A4Gj)&7*1a>uq|YBq5XcaA&?4-LixgZ>}oyU(Vc{$$r`SEn={3 zcpWGkW;v5#vYw;eu zzq})d5s?PBuAi+N3E1(4H>*wg`q}w|32Dn8Jt1bx(RK)53xcmjvH4r`$~>f?bcs{As>>B3d zu02(3S(^>s6)gNVmAE|tl^Jr;6w(f#CzmFEINqRHG{5$t8YQXSo{|SdT6o+L5?gj= zPHkrvB)o*+#ZjKr<}Coc2hRjQ=z_2{9mRthGFkZ6o7J1Ao%cJGQ`94%W2<&eTOXo@ zM~X~-$4h;3qtBy7RV8VtMb{ytz}JNuioG!7IJr^~@{s^BPzq55^N8wps);HCR$97>|w4=(V_8O)A0TXx`T#g4dAu;yd@c`SHeGL$H2NKiXJ}*b&*l68I=-6(R;(y^cs_5}za_+fWYVLQcebf}VXVE($ z-n_)oJ6-e9DOK|ob9S`fQ6gDx$P=Bvhds`Qd^yQc(1J!ZQAW@n2AGY%h!m`s7UBW9 z$K@BIWnx(Uta6S@vIXvar?3BIucJjDt{90HdYtsiwSf~q1Yz}ZO zY_MMAvrJhR_)++hWVBK5E8pE})M~9807fgfNA8r%UdRp3{gkiRw+t7{@7^Z#< z0TkKli(L~Y*($xTDZlo~WU{4WH8Qx9Z$6;gi&rr;9jK41d6N=7{Drs%_e7OiVjLH) zQz;{~0*8-MZHJ!{)Pp=MuImPRt#4@3=p>TrzhMM_m0E(h#f)Q3Cy9Cp6V(8(*It~V z#{1xkAID705+SGgAGXWawqS+FW7VqiZnQ?5%ZNYTJU8fS z0OFw_)cFr(IFxd$=c{J(?dj<@kh@8+&kUpjbu+5g^3Hi`j1w=5F}u1xm|YW7Yv4mK z`~wu>BWL4f6;VKA1NIht*6CX4V|v~=0J2(OM-Vl%Pqm)83;||xxGNbUJ#SC72t$t~ zIy>P9w@p4#Z0>NhM=T~eEL7R;4#llFuxd!1>^J_WR;`Ty9crTO?C=9kdw92nP2#`6 z^h4zBI;`LVw;1G|_)Ev+tpv`?NJwaJZduM;yY?q6e-BBT9mZeI+s!>~Wen0NFmVsr zkM8Lc-OP`kPxAX)oGb)#D_gy$S;nJe^Y7SR4JA76X8u2nb%ej$^2NqBdvvt0f(2$z z>i0h@BUzsr2(NI{PD3ResbhYEew-`%E=BWc!OAbV24dEH(J`uNVOZMf8x#QmE{PC< zDug}zw<67UA2YrwH<2C1beY#Z2-rMiK04NnSd}@7^lEh#YtM`~-KJDpBE2zTI$7aO zq1Z-A41%^SoN1jEuhSZmi2ODa}6+Hh;g8n)3h`7*a+51F8Gc0b!1sVfBvdB zMf&*jVSnB>RUqG76Fp;GDTRh%~FjP)$?qMOP@iZA{+J z&<(2j*J9CiSEo%==z9RQG{xz}8GP`AC4cRoZJ?fF4O1KcbI(<+PS7A;kx!ncdZ7c( zhIMBi)!OK=gINAc)x0dA#u={sUAXR|zE%44)`b7(nJA#yu{;HoNpJm%=Q66TLFdZY zZAWHvbNNGvm*NwV{XWRz6!%!AdbGgs?cMb1H{nd>UW370tWC%R@<%muX7Ks0zhtnq z;p_@a*YMBqLhs28xkDpmjvW<{i5z%k{kC0uaiVgQEash>; zAx+=tjRM1NS@ZjYw1z^~xe&GiQj}WxiIKJsN2XYKgt9W16Sa%AV@;+b9(FB7k;+s+5 zhgXw@ZRqs!Oe8D6a59D(bh924u* z%R<_Cl30$475`s~)bIO)VT*w6_4N3s=(}bL=C{tvV~ryvXv$4M0-W^x##QC3Kphif zm9aW6lL6(6rX^1a~ zqHmfL(64SS7AvP0M_5-2aA%y2gG}0UY?;A(tKR@hwvOQrbq^(rUAdb*1_TrPb>2L7 zv`A#*1%jG=+IVWC!%^Vu^=MkHiF)oZ8C*H#*P#ZCyw$9}1k?hg7`>NmoR7M573%Ls z|6D|#TbgsUSdh!mtT9VbqiRpJ-GqjHl-_nz{w}=PPmrKSw7W3&Bx; zUumyXW~;ud%(W<_ezm4(@!H_^VYkvZtqqj?*7 z4T9r?@qpac_(oQn>OPZ25fUYG49t%Z>dT_puGdhVQa7bbyW3KYEwj84FpPV>3O%&TH1OYNimgbincF zHaF}eOCVm8kQ=AnSMEm8t_)gXr*{H8T?HMqS6R6efxA1ck{fJ!3Xj;qF z(y3DwDp;LxAZO?phgU77+4E1~A>FpQ35E-mD!Z0>A%Sk5qC%tJX@;2U*^BU#-~enN zc(q4wtdKz-L_|Fy@&ek<&0#lIO&*Bi>f>WW1HEZZ{5yTWtS*N_KWu`XBc>cM-M130 zR&Q^;Ta6!*o)==1-27SWu|3AlwI{MwtDI73P4-n-8~+=pGgf?MA zAWIhRlK$@S1DjvZFq6B?Jyev)#{G=p#q-s86F@9L8skff*dHDn3E-oAfmPI=%-@DD zF&pGweT%p_>P5LFtx$@NbdE46lCO*hu&_$~$*lHoAP?g@iI%v^9w8x+5A^KPtnVkXS-B7GD?haU`7O%MXQ3KGF6gT=(q-h-is z*CG!D_t(X_dTv-f5|}0Ob)ntHg)%FP!qDZklGdI1u&~fTBVqo3UN!e0@XtM2fpRu8 zj_Pd<*sbwm^7ITRsBKibZxVIH=qnvFF}*zi{MIoR3PaCYcXP--J?Fo)u9~x=l;9S- z$6A{5N;OkgYXVTArTfY1v+wA{&37#3;-Tu^TEXhlW*)=42V$P- z>xCTB`C>!uIB6Lh>|CO}R*;x6&|sy)>1TCk#~6;jEsb1Tv@zQ`@L5`wf1z0<9z$jg<5)!lV5VskS)v~b9{CuQH?V7GCFO>1jd@nFz(i>E;qrO?_(|b=fj$G z>rEE}{Q)T(CrtMX(uVi3g|#Ir0LF`H{%juw{s$@K1G&EO?eMDO(H>OL`1 z%@h&SW6mATm_SewXA zfEmaK>7n1q2Mz@|2rgI3mK2sQHp<5e@n4Fy6=x^H{x)4v8J2V zlJgkJJnFvLYF?6TM3nzXoSh2ce(g6Y?kS$XGrg0IZQ7~>bpuO7!lH>44`+WfVg6_i z6|BA1T02hv=yPdU)!fnCed%otDnHf~T~&im^Sz>&_ns4^&5v?!*^j7Dt0W@@3h1J! z@+*kSa=Qtr3lSO1nE?H`XDqZ$$JMq;`m?`P>FsZ(X9sq754^PT62Co~O5^92#tj+E z2QrN^D!16z3w#O*3(mAR7Ej!1?E&4SXbMxKk(w>%qEFCARuosE2jVjq97wmlD^~~$ z_h|m+gO@nC)RY1MU<_@?aV<4ix%EN%Iv@&jfQF5Rfa<0H;Q7&SZSeR zcVv;KHQIp{(|OWmD`$bga0KbdJv^hm<+*Q*-z=!rXN`E5>A6t#iOa8#nS^|c?P;|l zjvOtn$Z^&EddM=*gov}uaricC+2nfhl$(t zSr3Q5G#olBs;*BaOA|G~7$k-h>a?^$*t&7u{JgChvvEW{#)0LT_!oGz-clZPNt*q^ zRmF^T)FC%0~<6s;G}tJ$i?=6}aT2#-DKh`pHH zijjo8xF@T3%mN+hc%=qrS~*nwHWylC2$QK+z6pqf2!kl~sN_&v@Y}n~!hfy=sw3vY zJH5mlErbb$IOuTC?35~XxZP_9xBodaz3K*1Kpd_&;d=EMF$E4ai(aE{bl<>Q^+Vuz z@GtiBI=}Fz!kh@{wD9H;(p39*n7cY=>4=0}U~O_WVn!#s}# zX&jE7ATb>YWtIL>bYaM~62te}Wj__BBl=FYk`F>N69R{BqJ|&Jiv@SFh!VV~a;Z;s zT&;RD)I18Mcw1U^898*ZHi@Xtn^0w3Tku{n8mZ_i_}wGF8<-c+w?BxY2(W>j>)wB% zIe!8{9UcHwThU6DyLYxN)fKCe#kR~i^VziRZvomTMxP?O@A>2)rnJ8p&5aOs4fREY zU;V|7{5rX}4CJBsOa(v=SbIi)Xg{@TbxVhDQlR}?gbtiKHpkQrB$O?Dqx1bSB1fwz z+O>7|X<{nAM)iN6sGXod84wJZH=ez3*g-r`vl;*c`FYn8WU>6ld&o)F9u;jQ(J_gr zG&ArZ(qz)fgm=&N`r)@l9WJ$Pkv9jgmUmF8l`;LqW4^k^-|%A2ysdHyJi{A6*<9UY z)na)Vc6I=yW0n$XHa0sTp1H}(#3@$zmR{B~Ouh?4bp>pzQzwP5?$-Pgsr@oM=DudX z??gHE<9RoaU9R6tX&#dQ4nFC}$6HlTScPwFT#SzudxS$ZGY+jGJ1uEJo+iCEK-}Ex z(Zfe-3~X{2qD8;A6A*wW_Utb*D(v?Z9!kBYh-I5H-z!?z&0D}u-y}QMOWj3v?#;FR zR#SQH;;MzO0@M;JzHQS{*#Tsd6duP%R;$jp`Lgv*36)sRe;fL8tfGr&<3d+sv9!egvL00PKx}5K23r1N z)w7Z9pv-rLe~w+7{SbN%0Y`>p_;M-8>{xD3>agv5<`_@-lg&FPqGprnGipO;*5SjT)8W9YAY=G#%l7h4g%eYgm`zC4+`;eI^94+s!2 z?t7r-Ou4CwT|bP?wi&wb?tIR?&@3@>Lui@p_GBiRFu7*$CPFeoBAIuaa4n&e2YrWh zRKCtkO;3dh--4s>aD?alU;3b~i83UU9w*5f#4HbVU7GN?j~v78-Jfgv&Pc@@*;#Mj z*Pr;mlL6K9@ldB+%Xn_MJ8AlRrN%+B*EI2^%bC>?x|s_MX!5pa490GrKeZoirfGgS zZ#E@i@l!JKIHkQ4xW`7?dZDheb@#dr8QTZzxOB|Af7;Y|Z?)!|qha*P_GD$r2m?7$ zqp8IzlCskGs`TjLO*`=j>tJ$qK^5)DEv2#dP9+1vhG!Zm1WQ)a3Y)Qf%#c^@M}Yl_wK3MeBAW`JQs%=A&J`v1g&J{`ni2wn`bkHR0OHW5C^w zBMLl|{tCKF)8@+&HaVl5;BUZN|6j<2Q}N*vItsux=H4$+0IXXf)+>5)Ou99b2^Pac zIffIg$Zda%m#=Q68(icI2G{hhA}ymSlQ+*Kq&!Xmy&Dqc^jO=TQQ@dg82Z=mUkjH? zo!ga{Jmko_@>qkG9=MJ)M80|b@&e%zl;AVq%-wJpHe1;X*PEz{Frk_UvbSqN z;FLqtZeG5Wp!d3tXx$ZwZBZt#Ow=N^@9*^xYFi74YhCWmIbA{7lfHX%Sz?>G?vL%ad)EU7 z9dss$QF@~guuk);T#!)U2fz5wQMAAfzOqF zyGxZ1z4d9Um|@e3t%I))*FDF3qlRh8;qU@x_-n8cKFk4Gs(Qh;UvdB$q^1-Q8mm(u zMd*G?8NV~%1`$JoCbA%SF0%4;`df=Hl>MOaUIPN8%249$5 zvk&q3tq!ewq;2Mh<~cQv==JAjczZnvg)M-L<0w=?GX(zmR;&aYs|@U3!RROE2n{zn zN)?J>O^@v!?6`X?|1DDl;Q+)dyq?t$tH0ZV)*`#7Y|pu5gXXUDwHM_)zc4&LH<=+N;C@_SXPmcuZ3MbA{VN6#4=b{_6!WK)3& z(Pc9ZE@s^Cuzeh$Q0|DVo4pSrfw|5p$k5L5m^0_5aPtY1-GhS0`3Mww)hnd0b*tC~ zylp_J-`pj&=Kzlk@t+@})oF*m%vr)79v!RyyNKc^sVv?(23RE{sq{Y+_}#?GJDAkK zZn=5{G(25wLOO*wKiVW8?qcwYyoX7BT>OhY>E+!~r@p)h;&)TZPYf`U3C}b0X9`Ij zA4bZNXK!EERTcA?xeM@+mw7CKqw)xU$~>^BedXSsye9OXHwH>aad!APrqQVKi{$jJ zo2Q}3@~y4y@)%Ho$t`>$t)?B%0?Fg~Ew<^M8=3E0gD!Y$3)dvuXESz(YvvNE*n~q* zs~qCMy?w*9;tD+x?;NM4WnGd}RbP0C++O(JVGyC-n`?ykJJB)5!M!ZET8{L&h!L;d zzp3fkxN~P$!)0gwLT`c&Y7=8a7jr&SdZkAJ;zM#AI zUuI3Ja|4-O38P;?cNzDmLQ7ybYCd>hUtA`6RCO&SG0P4<2`N;WH8svC@(VYn&UTF_ zD31ldY;V8FVt+Anc8{<_;31fwq%DGmy~BK7eA?lbt@|b#S3QKC6N-acvHrw1XRpNa`mN02xm@sNQ*^C{p_`*W z%|xznK{yHGK!497q5*LaRc3iZdzy|@{54mGX7tgKz^hq{>cEuV-;gyp?DaEOvXrO& zo&hLuOK4rsEAfsuFYSC8Sxk#e!{Uv;Ej574r#UX4B=^hSeK;PzUR{9xD2F_Op5t`; zgPdGF`O#lvu2;&mKqLQYnB1EYPG3^~VR3fV&lc28_UdkLR%*h69~iHFY&7XsNgZl` z5{p@T{d9`DnnyH!@GR3VkPyDXsiq=UKKI35I0QGR#mVg=PUfuv{ERO|Ui5v`+DF+_ zy6QaJ5Zfx~Mm4f0Bufvf{iJFyuY)47nNo@>{n-vLhtNZ$wIQ%rP#SH3w6IIB_f87Fs7&re7;ufvjh=G?>f$=W~YU!SG*mS5ia!(mb|NMxn>z z4O=?8Y_IC2d5*OHqhXlY1mzd3#JN?(u)fxZayZT#);Z#*N8@Da&Z__ST3HI?B z9}F6Ls9V)Tm~6?4c?p8< z_aVPI`9f@3R|_tzpg!I_U})w-#gcsfxy$_N%dx{mRipZt3~W!mBqn2;psErXDSUE) zyj?QiBs5g4Zp*HabR9-Be!06o_U)gOkLA|d7;5sP9NhuitMMjt1+DGP9hYM6NP}3av;F2Q z#-C>|F9#@w8jcRch(DKBhI7}hp?&-b8z2zG--A~6UAVGoy-8!Sb&F;B)>KfBJTNh2 zBX#Xp(QMb3r~1?S#&lF!JH^{mI~faV4&{LAKP$7W9*H&Uk3~MSM~{S6Mkbs?@+g{o z$B~uK4K4XOe9rHU^daZ|*(^0%#a`8(@)DC99x=szF8$>B%X7nD1`N?{j{tfqr{;z# zsv6R;|BhV#M{;Rdu^;;M&|CgZQi215W98B{E$uu@lg3$45A4{(j$TR%xA-cpFJ4zc zruj0eQ%G471|){(4MfWGeg4tly=KcvoFZ>4=`*VURdfDOEAcR~ku-cLfV19MJW_)i ziQBzB!8pV}sihrr-sD)3`2~}n8v{)5q^joOPkjFcuP-f$DhD@-k8Wd+e_d1jk+?bh z)JPowW=bSSm^LQfDd~fhH`NO3-ifO_j-Oo1TF!C|K$Ur;C!kTbwuUd)CsXd)XXRt$ zmek%$7W5~33mPqbu8w%7Z}#x-PN_%8sA*XK=nB(+4`;&#x~-^LUnqZLI~N4Q1l`5C zp5jO=n*THi?452Y`+I}nca#q$#34TI6HRii`YC$7Cw7;BV|^)+zj<<@;qH#j*wJ#lXg*-GO-HHnd|14bq;m!o{O{41UKXCUzm2&_xxe0 zqF^o?9-`EydN`!)J-7JvHI;lc_o;SkkYDHft&~js~fX)6>sRw zhcX|;*IpXC?V;_1)kU?YBTZ>qEmAs$O99@k{O5hvbhY-*%s0w&~M6g%8hcPRxNr zl4h?i>qv4>-%!eJ2<>wVZEjHcs>VIJfK?YUW=8HZ%~GQ8Y!6sSa-Y#!$j3J}E+EIX zIz|`)F4%)EqpEUmfwkaqSjZQ3U0>4F6qPOP5Q}5mlhp`eio3$H^Z7zADYNr7La@S_cPiC|JMOAMn#`o8=~VJacM|9GaJhY8g&b&)%4F&u8W{)JXl& zMSk+yu5LZFhSGJ3ToaCPxwTS}#JnhaIG!x9a2MS!te_}7!P{~2BJL1|3fd!}#@Jow zM~%bTtQ@F&$5f4!!C4Icsc#~I>fv8U9?M@HSgA9>jD{Z+6b_hh@6j75ui|m`wpPm~ zPU+pYfkDs>%byfI8qFe#B+&DMWIQrx(NgWB)=N{=MTP z-&M4z0$>2P=C5FDzHw*`sks7X%NpBF^-kS=*sFQ{cMttY4= z`h0kyOUSQC`>hwiMXHYRTenn=px@)V?s`iFr_5+m(qck2IrCXk!ZQuNyb(8neSFBR z!%FdnRZ{3ePYpgN{>~sa#7T2gO`d@c776ia`J5Thbq?e6X z%YEf0ch=k@V9nrP9B_M%5G~o!*ET|TWrjn5m&dBFRYaY<|Vhd(-ADaG^eDn)bj$3mY!(dTiGp^J?xho-ZYHw@>_@V`^sPNz0+8Q#F`Q5O3w02POO=+avwkNDsWJ(bV_URyDs#)LTX;1;l7d_Bvn3EuG~ zxkod*QVw+3%Y_;>?k`~*{um_*|XD10i3tT2?2%vU61BmD*}3Ia5nFcUT+p)Aeg7( z<#0xlt=37^#~*KXFEkb1g;Ii0!lY(N4y3D+{H9dJ{K9&Ym*|DpNe3%}qO=z#JdGgm ztq5>}=&!Ni=xr)fOa-qh0?bz;esDYfpQ$})gSFqWUw<|usuMHlU!Mm=KNp)qS#IIG zsR&eWi%L@lYpnO0!k%bOO%H~gD^TmY3d>)bxXEe{T-GWv-M?`V9srBAN7@T6q-vDx z?qxjBRa`HLNc%<<&=5~ODhlok|7lm;-q zzK8Y3J|LGypYcFkXF*-u?!nlR%x3L?*XGZD27hm?@y;>jLx0fZ$|)_r-}xr-oJmCm zIrLtlhor0DxVJDY#@@Pmw%r3I(UQ;Et61J+)vGi=U?7t_xLuBzq9ThUScNs$nLF3aKQLZYGrrX}uurR%#bDMqvYk@@J%J8$Af9dm6>yY=*T|cS>)YQ>r zVWcH4REm=o706Cwc)Uruxjf|Yd8uEPVrTitW{uS!An(p?ZBV?3sa{LZaH-9mP&^w> zs7ZmNhQ;rZ?8uYHNV+LIp_+XBwgOa;tVMSE+SciQBq^CGBu|l0?~*QR0FPGk!aaDF{Pgrd7pB zC_1a-Fk$T=;U0;H`$$1^C{w7vra@A7|FaX1(&t$Wk@2)oYOrVgfA1HWLxyASmI!9LlE^c~_Ea#k1Bm`zux;dh z{8FGe86#EXu73UaAav7SCSdR+b}+#Yc1d9|?+rtV9sDiWcBO4Do>vDY&p)XNS>0U! zEnt3sKF~d8x<_k4G44i3&cMw=fsGC^s&J(nF;L?~ArRtx4sB|F-q^5F)3Ofm4C~5y ziCOy7Q1#(DzhT^IR|lBF)R9XWcu+R9D5+xtgQr z(J5GMmUf+$uLbN_K4glokLL^s9y{TzP6Va!PdW4b`p4G=_tFXG=uHRACKoJz#Jq>M zJ71$BZdR1erqeRubh%0MAwec!DAl=nNiw_=SGshEbDBk^%lC<>8;nU_rw3F00?vuFgf z;t~!GoG9EX7v!0;dM>Da&Ld*KfXmkS>a~XEa5>06DmTPf%S9$Y_i8ENYgGP}JJ_?0 zRFIkrL6CW0Hui0KWK`X7jV(89@Jrz9q}$mbFOv;NHr zYmCocwsTu6ynetI(fcC~OX#;0y|!GqHJ1}pa{4kqbi+lZd=Dh25~Iy# zvan$mhXIs9D3!S8B->X>cFj^#&^e7-%teoSHanE<-(B38q9l%U2-R`Vb^ z%<`Swwrq?rn^!9b7bE+fHrO+)Ks$?wN2C9#PE=LP(pe2(i=g)acd57Jlx?LZ1qylr z<5jW_`4Ej%wO4z2%4*Z0-~JKQ0J{^dsQ;6~6yu?sT#rC}ThaR0;v1#PK+-PR8j9NY z|Cl<@u%@Y};2ov(+brPInu{!ioad z&bJcXAL@pj>XGsbxW0q1Q&q^3o)S&Bf|;`ST9O1*#6u8a=O*gc+Z1iL!g%Hv97MIwwzNS!G0=bK371m)`$(Yf4alI~+Nw=#Q&gZWyEnBQ1Zx&>n zg(J~I_BNyEggWjM<~Tvxm2lZCEiv?lf}Jb-NgZzUsGo^hSQgff#s^`nS{)3iO^lAz z)j=2r?DYxG-qEU(FP4iDR`Ci`C!VfYQ`);aj<;m*W;!M9#vu635rcBZ${Vw-ZZT`a zRhD_2KfF5W0$u%cv8bWj0@Tpn$eFT{KTufU~O9fr-oG%#5W?Do1G;KMe*Y!}wXb<*IvoE3W+!X!*0W#_u5y7#TuQZoN-QZu8O zXl#J=>Z^&=qDYv~((^10^t=(b@2Q2NCic7~c!TD!DD3 zaGCq&3I9P;uikgtoV|i(S2eI#G3;66$zSBNkOi|e`AjWwjdMEp5HfmL4N4X+1bg$y&`b(+M>)FMHV0X0%dePNVdZh85;};5U%3INr!M) zU8+R-dbRi|tvUft#_Kr6k3~7#-Fmh`eGu~gdPu5q_jU2GfDCmS+_MU9og}SnS5^_fMD|ORtVhuNQMmR8dTx=$2Jz6%RJx3zty<2{aZ!>+z zE|oI)@aewBT>{UlZ7{we6}iDF609J#^dpm9__)aqy{YcsHe#rgKrv=5hFP1k-9251 z@LzoXuXY?Y04( z$p*i@2HH1L0O_2oq`j^7y67zqp?;Ie$+iyL+q)os?xPvupB5x^uN}SlGYCz4kFI}4 z;?Nj?s|P{sI`8pXwFr(M#SROQY<(2z6W~QJ#15TuZcZpXdbN%d`WN(;6C5X|mjUJ5 ztMP_z|5+(EF>(^8MOxUXYl|#7tfhPTMdjnG>s@S=|4IB?Zgm%BTcsb&1S+@h1wV)# zH@RM~5!ciO(20F|eouKOj&04ZY>1YXOh~9OBBupK`}i_fmDGTbHWyPgq#=nl9Xea) zVz&I82}n5_fukF-%9B8GI&YKKlsR#R7;duDewbn0XWlg*=-Cemc43zM)KFTE!LOr` zB@Q#CdqxJhDg|rjSPKt~?(qtcBz*ADj>&7|eJ^^~H+}+X;lSWUgXRtr2Tc1<`-cd0 zu&b%dAadAFy}FWy16LY3SZ|af?KgX&HiMNAwhy5JVVe^|2gV03dkBvXJ6NejB)v=D z>ma~x54Cy_jbs@w*PU*6zbjx@q1{3U9`qxc7MbbQJZIl;{#mK9(34+y@t>RG=Q2DwUrlP1hytzReC6ep8213q3N9Q_mjrVLUaH2C%UIhA1* z)w^>WT)PgmShwpe>TiQco zy2R(WV~{+J(Z$i^ZSm&^^}YBv zlR!p92>kuN#c%FraQ#HY+coq)lsyco#3TPH@qmsXlkrP*DCfCXASY;h`#MO%WMrG2 z-JWS7wM6aTvL6u%f3}OHu$-Kw{FIXi-Xs^TL1{($jD72Yy7^`Ts|HE*^uNgsp;Gt9 z$Cis-BD1g_;(0%5l;znSl`0agflgc%s~4eSHEPJoJHrR}D3E z^Nq!WLj6h!w_zEdNbdHI^HCrN|2X4a`c2NXS-1*}&Bd+eu4LW^T}}Z#6xnPIdnQhX zdS}h>z$^MHs0+;_xWu(DeToM&58O$DL9`c*!@Myw}O?@D}>SU ztZ`!dT<-1=aLwoDUEkiHRq*Qqk9jQUZItvay#8)<=h-NiE`Rk42GQKed<>gb0D{~A zz4oW0w;n5omSK=>Iik+uHBuT=9$V~t`l!z;HThhztb%1LmOIIJJ%j^Zseqi>f^>ig;<%8ZB%6%NWK1F9{>PYu(Z}!JTOqr6%f99 zVe-w-%dbu{=Fg->hM{8F(~zB?DM3;jmpoLPsxN=5UWnu$jMteoU$xtEKS)ZMJIzbW zVAAp(Jfqy5clWM*30V>VMeY~oSW~pX^vyo5W_S!}hjW@t1QRW**1Tcais>Z8UscH; zblw+$BufNR9QV|9E50M!AdA+1$TpK`r-hykX#t(0ZJdE2Z+uE*KlFUJc|wN<2a1)* zF($sui4c$sZsP?kpAPX0jdi#YyfBwFB9Gse*4nidHv*Sh`R|2aHv@cz$NhYDGI-K@L# z9;wi-lKw{;TI#4XT~*DtLOfIUQ2lTFFm5#dqKd z|1ABZL{MN%#kmxl%9rS8ILGk@Eo50Z>X$Yw|0=v9b*`0@Pb%k(rEk|3zDFbcmEbK& zAs>JBEkQ_e0-RwsW#o(6cc>V^!=;`Q9Ej5i97>UFiA**=s8?PJiArz9+@+g;gow^J zPDAejT@zNNriwQLA&8xu`#J0dWayp`aL;FLZ+-ItqFr%h-(+e!Sy4jM{KHJyHRja^*I%wW0Wg87Ky`y#ph4GjS4pm430g1 zZI>h1TGmkMBNe|~4l9r*)#T{d?mn{FVv4PAY7T(jI_d??ICgyYgpDQyROK_)Jzl5^ zJdI9pfy_u;LzdKnf(Q5{YVKSa-vO=5P{8!QZ%A6mEryTcwvY6Z+if0fl4+y78P z^h+Qwe@H1v#hoH3pxskPhtT-hZYiFjpvB z^fO=D+a9f2#R*aC8$!>emL_ap=((WN=wC?53%#%oYB1HjqB$&50$i9g7FN z=iOH}lHHTT?5)LbY{}b|inuKH)Bwd$Lq0b@0SKqXlgqZ;A2)tUeV7npYlg}aa8z-w z*%-0D%n2EAp^6fAeDhnS59P_BJ*M}~4Q(2ExbT?4lHKFt#Ks;*z}=oE9r)~bBu^sHrnULx-x;ycV+Ia+}vpSd=P(T=3WD z4-oS2-5#u;DN{BSz^zH}elCm7-b57qG$qIz1O(XUKCkwE?Y(J|HWp~g``QA)xjH&V z{!m6UI1eN`=|>h=4wR6a`%oMeOZkZ_y8M%MqV6DNB9(B|?UlC8M(-C){qEDF0m2bG zE3BFo!?0AzjvphFn$eU|KJduO&cu+-uR?$xv|BdU9bfD7yth1uhq0dlcj$-C#)UJ? zKUZuEpU;QAtTLNzec(Ml3aVO4+PtkpkH3WS8+THf9N^aY^C>|H_`wiuoZ1a#p83Ex zD`9_&;g;XyJEMYxo-$tbL!8QDjDU>5E3cHt{9RIDdJ@}y0#2tVX0O~dnoK_raF!>C zEe6XlbRl;+R$Uk5uFG19qB&CxNL>ThZ>6n`2b~hXd9aN>=nrByLe>Eub?E20{d*wn zd?ePDy%W&j589&y?Z=QxR>WJ1BK~7^g>ih%Yr%Vazt(8WtY)nl0WlCQT)VH}q`wNB#lat^*Ty;E&Y2}oQ#u43n&mLaRPoIU``B2=jt6T`$J0?cF0C+4mo zLn4o~I`#{r7GHh!0;Y5j)x)G*&>ZXPZtzrVvlu~Gg(O0U@Y4l5^?r)x{p2}h5wf1H z=y92{b*x*x{Z>fAv|pNlwnvxMgPqJR$s?*0cdqdk%j~H%IvR5*dtKEoV{Xc72+n-@ z`O^RTBn0=&f`lAUF#_VEokC_2Bhoz91t9dhRqW{rwvNC>9J8mb+j~qA68$!jsnGOM zMsssHNF^+RxP35SOos;LmyDy5Wcrz2feyp~_lqy>Za(4F^y4YIZ9vb~Uf)%EOgF6rxtSUe~*u*OwKcqwm>MC;i?;_hQC8(~(pRLHY zIOTIo|4yB&*I}G59~i!hyOIG@^S|LYGZcD7-!uz|t~EE82Jl`G3%U?jT?{z$VAVv= z`6L~v5p$I0dUD^Pj9fNGaa>vRZL8SNt9iThZl_oHLhmQe2MuX*f?c!`|2^Nt5a;pr z3v>o`J_klQk|Ibn(%!U$c~8^0AK*)K5MHi4CgX5A`|EactU32lpd9uQ6KZgyV%u z>AKB3{TTYdGr*h|f4f*t5a)rJeOsqnRKN`}97(J3TgK|!5_8J(rd+!6CnydhsowB^ z?0I$i{j%t4^N5)?~RS&o_)t7Q1FJwe>tvGt$SFk0ye*@cRSO}7V!+^ zzcf>j03+3MP(NbZ4ELp14Rf7-3;WPIh(x&)Wn_iWNWyJ*`YxeqL0iwrX{O4p`ZJ!` z<(Ns`tPQ21Q;?hVDl*Q34IkY;L?|t6&zra_}KXkaC`sq{4+&aL0iNjY9NW6= z6xQ=ddv_)5lVQz>RM;)x{BXvujNO%?D14D6^&mZ7F(t&@h?5PS>7!AqmYqMepCa4& zU)Nl5UDx2Xg8cpD30!g^7^|N>a(m52mS>aoHPO5Fr)*eqA+mKYV(qRI3)(;$sc)5Y z1{-g2GQAe)b8A|FZbCq!(9-AF&^d&-i;(Qt=8^6bhYa~fD@Z0hkM&hFLJa>lG_Ev_ zepE?+_4at63_QO=vu`}|s<+};Bs6-ceDiv#G5x)d9X=Yi*1YE=uKiMAS0Zi<`)+B~ zAY^^{LlqQUT3O@5^!`}@lL(%FWn*-VdnDrS~VbU#UB#NIbR+S()3uZ@hbROho8KtR8p^bhs6| zcN3}6k&q6Yno)xg{}&q#HYd)Y?#lX`9^Le}DXwcnDbQT}9jHVYqkCB0rY1q{E;ZO# zzjEY!r*(|zDOD4e>AlI?1QGI!-FAf}Yo~+=H=;6=JjlfT^0b3FOJdTV?v+st-fB?0x|_Ue*abFjMt+)HQ=YbzWc}v zBoUNeK-gD*oIyTyVU)WP3_dawpmfV1HLGXHT7?-$&6F1Cj!%^M-bFol>*-g{@{Ur@}tYg(%%_!SKcP@D!QqNgq24{vqDH}+MmDgDhgC-I%st7c^1 zFG7DJ@G!jXxmvQy8fAoUNsnpN%LqcMxs1rFQSdoC#vS0XpDO6bUiC<(vPJ1vc)ceJ zsxM0=pLRs{J`*^w*px+9Gg78ceV>8kwJr3m?HV1AGFAiQ9LgC_As6lu-lQvq#(_}`p#90O^i~V;MD`6xG}? zN;mNLQN4onO{Amm(p44Hl`on-A|EToNZx$ry{+Ba|1%(lZXBnNEu;K&N8cjnj6iTB zyW`#h`z?TWLgn&@!Rp$NRp|Am(ElTg**)LDR~)$u6`E1lw&~5h{QHi!#7GSXReF~` z)t{q0@Vc$tWt0mW;9jq?Zo>fMNp-7~Xqn29+1T2Ixc!~ME`Nh2YnWz`U}g8WWKq}X z!BOx9SL0pHVN40yV@IJr$U2&N&~lJ+Mhyw}Q8rDmIWeT4lf!E5jvb1@cyYKEoVOM?*+Whn2)Yn1p*H zDr$1_H7s&OoHkTUu}W2YIXSSw?Z7<_vNq~wJ-|0NuYD0EAsg)DLmC9$ywXQLv*t$S@BSf+unWg1|Z2thDgU{fo$ z-*}cdDix;rT~)O@qzxqydq{&RqGqA-J4#H_y-QlME8#pZgnD#qCY!3|E~65Z5qe#r z*T5;bB!)P|t;u=DCeG(Ko{wae|0>QM?UL$-4QvMLXfosxlZz2}h0WHaE8yfS22jRG zm(+$!jN@!h_97>c<{4nyap%YM%q17(>o{g+c_hbrE zMCS=x!8;jOWAgyn66szzRil^>dbVA@xP+!C1A+f}icsdUkw}Q&Ihlr zQW0@uslU31l6cYzwo7^BTe~dh`?bpEV?H$dbHY9JZzKt_H z5uMLR>j6!W9BNGiGTzTR8l~Vm9g!EWw=JyRT|ZsQGT~R$zf^v2YAg+YF*7sbMGJRWFargGYNCw{H!yweR692#VFy5uS0@L2ZH70em zx+_2q0b%OhLmotZ8Cxn+s978`nFQYF2x6F6u{hRtJ5GC~Jmt0;B=GhZg1DN2AA;tE zpD4%>6^S15Fmc{`&|pOhxQkVy*612^+uYM?tE;yLej3Wy7Urd(wcx$K(E> z_pQS_AN=y7#bY_%v8*r&?EKD-`R;=!5|r_|VUpDbp^2PLFzd4Lo>$B_F1BD>1mdB! zoY3gJ8ub+nsID_!JB6aNdTg^>L7@MOc!&OwxB}&EXpXRhQfTNr;7QahPE}RGT(gu`Q>5uUAFQcU0+JK3o4Q8*W+^>=9Z| zekc0LRaF6GmT@(M;BC9y?!51(4-!krh`)L{?XqJ}a|oicsk=Sj^TNak#lyQRdzjL0 zzi9zDhZns$kbi!3JR}D_dwX&sc7E3wF*);GoN5_Gc52t(bhGY161WH!2rQIdZwKrN zpUYaKa#`#gCi`|LX0E+f*J2!k4clF?`wb6*O6UeYw1Ofl4;)DD-}`)YwRQ0XZYOAT zdxp+wl;KWA5MU!lSd0BCP4kTImC4At|=lTEI8Ds)bzVOD)4il7*`l@=Oo`+pS0_=5#2q1h`O8&qVV;oZvF zg|^n@wrq1sd)9VSeex^H?(<5~c)ST%`RfQ_2~rO%6`lefF>*BTfI)= zdM!_-gseySw;l?#w>?<4GH})2JK5&4LYX_xk=ilObv)?tmekHr?^if67qQ&F3k@l| zWNZNT(^aL8ZlM|WwuaLd_5bI3xHQUgdgQSB&6?c%CiIVodWO%|a&qJ|0VhhUqFp8E zYKr40*@~utj$L9-R zzm`a^Mmc!spjJxW)|lz?((h6=GgvQ|BkAUnPA6eGh9RY&T^75xTE%#nCNcXC43`Ii z*|D#Q?Ekut4tm~3`UGWX&&4H3f*$VBj zDrhH^&s7CYFeBUQMt;o+VXT*3qNDT6(2K1W%Mq>ot=GJLtQs`d^&QnyU56G*@q2sX zU*aR)S?-0uCdpS?o<3Klqj0qN&1&GWzf?WfdF!&WFYP~PHpz;WZjzYS)rWJT%)$`f z5Ad&K!DjGh@4`^XWsVDYai}|S?v56|&^cY}KvZ8_OnvoT`K10+ZB@EjkMYSZ`&9YI zz^)Pyf%->Z!k{4Otn=#CPK4vo(UGdj)$bdi9B&C+KURG1IY+rGjWh%2Zp0+>{8C1C7a*0$nT2+N(F6?>Ki&v1j%R^xZihDDEp>dD zXeBfW^|5RI>B4(<@$BYXqiiozzU|YdQE57=*(T=1c{%xn}TzcD`^z{2!56M{o z)+yJLgG=_@avDqkJcPTqHzXDk>wn!bVR`%k85^tmWk)R2zr}9yBuu=_XkyM$)ZaFwH%& zq=(G%VtfNllz$kVohpX>DaXy?Mx?rppsGyb=fjuke7aBlnH^|M+Pait81HkK&TV1% z*?J3VMro_A30ToFf3+nMS5ZnX>NZ@1+9m7MTzE0HuKb-W(5SyvO@!wscpy0=4@>=b zfoXhBuBxccDQ7<`!Y$_aB6+R9C3ZQ%wg*}w)`Ff)D+$wz!QNF_`XLheYe7tEt|l`e zpDbf$;8exXqJ^w)+Q~F=r1pzGC1*K(N3+`j@m4xf`^W~&{N5+!4JWDv7u3U zY1d<>O4J9(6SaY{tx@;Ypb7d1amXvgPkX6vg4Kyi(EpOtY?lvBv|^85zKF4~Cml(> z-o>Y-U=*!eD$*%FqvR>u!AJ8boxfR&(^WLCb+S)S^D#W{q(T-pkWyg&T(V)yz}g3P!W#Xwt5i579ng?{DcS6N^uJ|B>C}>)T5m zp$j43g$+o?uW3niDx_^VAZeZ>r3+cmvuxzQsKX7*ONFPl1 z-SZO%uD!iS^SFTTT!TifVkJq+)SyD2rz?J|8da+rJN5@g(aC->d#Ubgb+~c&!e7x# zqI2hS$}M~k(Ox_R4!D?c`SzuAKX>PK$SGtkVk*xM+6o(pKrM&5e2#=DL7=+Zefdkc zYOIjX(M6sexc71T@Dwkr0{Ai=X1PC*SUxDk0T1VSz475L)c6*;96ZV9`FHU~1nvTY z&lJ6RC+lG}v~(7vZ9J1YuCtJjDJ+CV%9y~pB2Pn?T+VXu^r;BK9TU&KFj~Z9LNeqZ z`|*I#ns=)z2V<}y!$ef=;9IZ~uc_xnKmUh7M}esDO=})TlND+6a9j?s=-RfN~dWOji;xi5;qcUUSI#^h)YA5d&6$74fJrK3nYjT%82KY{~_PE`rcsX^{^Qg~{Pq*My7 zmwzt+`u`o{Ri4C4zm1M^P5J7~WA4r@7ko`?3jj!xq~?@O0eK;2z#c=y<^{V~90{`? zuwf)n%*2W*9~c%*XqY(diVw#)=p@T8&PGf4NbRS%@7%B3sTkb+Nq=G!u*`$YSmdTr zOhaPcPmgETVksvEPy?S2-^kF(Rqe^aJyIwy#CnD^7z2V@#8Xl#lcSKs1T1D`(cAt% zYsy}UboZH+aa;K*?WyBq;Pn2hK} zdV3&oTjnEt)Dv+zUTYDlcJ=8ZRn%llWs=iMF!$DU0>U#5pcJFMG6de{*N%CTQ+cZ7 zA~%U_z&HIMEg&DL%h$wHUIA!(#L@)%VKDCDSPhY^k3JW-a1D;{ zM{7oMWj&2s+`)z9&{DIb*N;tEox5o(r%OLv-%*?;>{Dv!{2^G%ctDywPqcbAb-!bt2lr74uc^pI0BhP>D0y|;-Fh10_#TBE@*O#LC75CNB^j^c{k+XV97I|bl$PWT*G%Y&6qdYjTa^=`NF z#ce)77&Kjq=Udoo7PbE~m?0sVmWR%aFAHHfPbf}}E zA7vjU;K@8JY1bKwztVotE(=_6A8}md14i`=)$EAR7VbC>dGefzQMt7)TDd5LTISms zThbrnI=H~*OkqTkF%p`)o^nkQQ3epQ6L!P$QdQiXpG+SmVwMK53SRlkkjE#J;?|zv zQ}?Q>Kt9CGw&LeflY3cr$*(VCFVXB7vIjLM+atQWKhqYOz``t`s#WpVvmIx`jf zqwcenzt~@g7k@`^L0_Ky2pHJZqd!vnP=MeS(e=C-O?a0(?L#s#~TwJS2 z;SFYaI&H^+q+GdqZAwf(4_pzUxNSl1%&G`3xflM@7k+|zDO?oL#=9NA1Q7lzr~x;z zqIJkk)gUq$gE{oxMFa4PrmUsMAn#(k%gHFc_&Seq!Q2#$KWp00UV*VD?;cKdRccdj z#i!I5grf(@Jlk=4E%zbZV8 zS{w@%?`h zA-Re`--HO8+~bt+AOCD^}hkVvAbt73Vkyqhx5kvMR?1*4ak^yGlyV_?FxGyd+}$67&?lO{RTE) z7jM#Y^i2s}9x?AdAvMK|t=uj73AVHiirHf~g$KmxN|2JC|65Ok)crSF%_e@|*Wm5* z{heb!)pAnX)LZkuJ8zu###tz=?<>YT@&t|X#9IP|dJ`V^}DkZ4QPPKP$XayUra8{bp04XZs9<&i=Zr0o>uzhI26* zOIqE)k*8a8@qpPXqa9>KONnq$_T4`RgHXQoH}o&2m}o$p3{+ATc|*AeQRXv+}L( zJEqKUJtdSb_d=Z2*mne{q~#fV$^ks)&gM%*23~?{C`A2QymnY+|si5dikYf>oaL{jLd9^T`I||Jq0hWEW{t`y>T=a zxtvuxVb{W#?2W+(2Dbxh4w}IIU1j z3?7^5)ydgnv&?QQ>?JCIsjDT!dnXx-8JH6cF+Dqx?eltUc#a|{ZNbo?LOv zEdM`;|M>ZMf=BR~T_?}*; zcvNJww1xC~{+v$PxOz}=+C8M_63!yy?wABcRNAcJ?~an_na?HegPZ)FCZI0 z;BO-pg5cM-VU+I@LTylmfg^3)P!_l6miLe5>RmE&EAdN>{w;Wuxdi+>x=REx<|^f$ z@@g(XCT_&{Bv++8K=u2$%33A!r-1`!W_zoAnQyPVF4M>!4OmX=oLP%9Lb7x!EbpQmP_h zO$3-*8Tt`v=)4y_i$+2UFkaN#7o}xqHE0^L32aqE_FiX>`vDDYjI!OB=-+;WH|(bZ zH4TybFP}4-nGgG^jxw7g!~QS|hPRb6qf)XF2M%NVYbkNo3u5!W=i~GOPCK4Z*~(*o za`AZj)0)E4WwLCT6`#8ml-u&2B;vNy`4bP6vlRW~Ht@1z!xtVP*324th8GPatCp+v zZUDm5-)O*w8jb(BZ~QQ{5h6CjqMzsU`|i)gf_1ZX;4Jl{JppHW>CZgOE_HFrS{Jss;1jMaK~l_%G1mEqm~OT20qyHS3J*883S4r$M0Y|A_`-Ot8n zLgYR-8h@^PyE(7lh3AjjrFpA%E{P0ZqD+JHpK+q-K=}6zT)~BKURd{Ezq>aPB1?B6z+V^K~wDQP$8x0Fe zM;kndKcx6q_(h1Jt;gtbxWe$OYm@}|{4;5wyeO>V8Z-o zxi=wQ;hcnrvwNXI>{Hs$%5-p<`uQY=*4YY^Z^1u{-}y}hbJd=Q&kh8~)jyr806(5v zBv!mBcCcBs66#w1vZaZ_P?==M+I_rg>~)PvcG58688rRYKJr zQ=eb)VV1l2bIr~zK8b&T$k_<|jjTr`gSQukFlO3;AA+v$qacad-rz#OzYSsF`&`V| zvubeTj+fxW*RK!!ELD#_f;KMu`byoqYN5DF;jTdUZr>Wre}!7jEUD17*bBdN^_Go;s1*~;wHJf8UJM?Z z44nERU!+?+Z4Z5f30^+8W-i5EL)ZhC4|%;%Jze$uKZP3heCmaqlw~HDhmHl0Riym0 zay!~@p=|e}8ec{`djI{xs5>SVOKVlEOhBBwlxX^T^S*j$oBY&7)Kml*rgnI}xBV6b z*H&g<+=?t;w7fU};9K#XSmVqzSzSu%YvulIs?ntB=J&2!_ifs>*Z2N>1tUXA%%Ws` zi+|chdxaz`+OO%i#>OsaIO970s0egLLJng;zAZp4sh)a8{ZYht3Eqn7NmXf#fz=;6 z+yxl@TNeksqu$8t{^nTKirb?EjkOOUsn=$cvu4XCM_=v#{Ze=aPn6L`RSy??)%d&z zLyyC4{TTUlEpHsiAXZ-cr6Hr!%&zlvO-&+?eRpw0ukshOmhJl|S#6IZa+#uVzXm8vqARqzwua_iCkPklkZ zKGk4Hb9vkK@u_i35l_*&=-s|};jA2f=*wj(y$$4K)ornq!wlx}^q=+#O*~U-sbfV> zsqYd!EUWWMQc!(;K7M5qJ}Eqzjy<&;BFuWmI&Me|GNw;u5stoV^zx0tv0 z5QEt1{F4*h1x;6iv-j9#13Z#qsd%yb6qG3@{*%t$5Z$bPr_dX1 zq_a~V)qZ+!ctD(s9vM}s5go)HusmYNjvVP`V6|guTJQ0?ykhXE2plcPRkR_xo`(T_GHYyZfLoE7h%=1d zSk)fBTqsavY4P$sotKjg9UIom4y&abPX&?`>uW0)gLj-o6sy)U<$%MQU-6K@kl0lq z2SQVm>)A`&y|UgIWY~Xo&m5P6mH5Eh0zAkDUzy5l*+Evas!U7z?DaFeP3b8!5`2{A z%bDL0DuPpPtt!ZhouJ4O>NL}^|JQ|@|J+*Y#06|%8-rVBq$1-X#|df+L3V?HJb3VJ z_+V(E6T95$3tRX>q@0f;9juU&4_FOIQvC*viDV;%m2k(ngp$Q! zY%p02sSP_AJ-0RdyMgoGv>csgEVv*jq>Bw5Zg%J{F>uH+{9+cbu)dj1KpZiGLwTCz7et2H{p&l~$G{ejaUXW?bq$Lx-x4bdti~6D9ImiQ& zWVvA^ay1H>jN%3gu|CgsMPGJ?MHmhkX@P`pD@HWzbcnF-~;C3P52ncMH_Ss*Xd;l>cd&zTO!~Sh?8Mo^)1A7H+(FOJbDKxGe(= z!TImik$%NmHob@q8;6E+ULfUP>u(^b+Nu}ln=rYp_m05q!R3_Kh&i7-FQajnzH-z! zA2~(~Tb;DP(dQvY?pnxyzk(f+DmmUO3(*an3^7gv@0P@Ng=SD*E8+yz7Rv({^yl?v zX$3AiT9I;m*Ne2RLl+u4v5n|LpQz(WF8%G7O}EZ&_n8R_(vh)tOs8bw2R$tr&ziY! zILor0G)5%5FQ*vlcZy^*hdxnPBgXqoei+<3yzX6F;;Akk_Ctnzv^at=yrUP9YPFy3 ztsRGuQGjA@sP_o#6{UbBcmiG{vQ!{T(wIt09%pdXYH7>-Y~~loG0fVTkWU1JV=Ju2 zMu+ww@a^yt&%S_VQLJ0GPB`xei~;sc7VS;+4v1|G{DZ-C5EDFowiC zbM64>BxV>Oxu|Xx(hZ&I{pN=WOG{=TIbeiT=rNI$SPq{8d*j*g$YNII>&GtdNx}2F ze3qxzYJ2h{^r}|UKaPGz1zKz0UEmBhMCMIAzIffcfpxE*Ejb70kG3P4Y9LoelFhTG z{GQ36r*&o9#uBU{CR7(viFETtPdB5C^WmQS-A7&le|_q^&^e>pHO~_e@*>Uf9frR+ z02^M^*&+IXCVI!nYOBfk%?(RxR-x{fR*&`hh(*leAsQEA$BfzYz-C|Fpnd!>+~W8i-A_AJ^tOQPr$yYi zlK9V@+U|@xZ1!FqRb=+Q#);~btll@;K5}Pw_glsis@@#)l>a0ZJpMZ?Mz#D2?>D;u zT{(3@blU;P`OH|*2QqYb<*&Oj#~N6f3kQ4b>=B{YfMss6&yWK$qzkOADmwM)(WoEa z>;>36WUgr$Jcov|g0OSS5CLZ2Q;ezcO;bQoPLa-S%b| zHBn4!_`B(iH;asqvWNdDu-y@Z%}3Woe{Hxbg2}NZmAdQ^z;E8FKaU&T>GBvWD2VlJ z6^Akw4~TxRplOm~5Nn8-5Q0$%!b)!yxyOy8mVg-C!`!=Xdj`O=8|A)0F5KgWckgm{sxoiW8v?-X)r?3S*MMSoU?VEUBK z0?!FCTx>{}j59d&2``&gsBQ0&JNm72@VMmRoOLs=RmB*`1I7|WCk?@np~7~M2Xx~H zVjp&ZtiG?$(ENvBQ`s{dYK_O}O(rFRdac^?K`6b`uI!nDVsO)g1VY)l$&TiTMbfq* zNjvR4f^f2-+?bv2^3a&klS2`W+}RiB^9x}!G4G@QMC9PXyT|(#S%1b{5P~$DuOJjk zvGMKU7bg?ZVwd05+yXL(1G)iXF<`r*7wP~^AWidUE)3C}1uw0ySBTS4JO*d}hVmv~ z-)z$WO?H=vba>}2=GM+DsREb<(`PWAf6WsD+eyjzrzw{ot%e?&$<4RBLKX2P4=dom zEgV~sf-ab8K$!~=r$Mx5zvo(2#V_cx_S5psxf+Y`xDg?cs=c+E-pk-!IGe}HX*ay& z8bDYquaa_PS;pY9omABw7kLsSZf#=qLV4KwPBm zr2}1gtx3^spztX|2^r{)l%?)M+uY&X(FeNps;+6CGxb49eA>zTg0MaoJ*&-lI$ecPRIOlw|_(e8-& z5unwv^xBtLgx=1t9s_3bSIzT_)1B6?aBmqkqiEBBIPVWRX|?4~0IqyfVzE!bae#q* z-;5ZIUJPAt^N4ToOF^sIirAjBl6$!W8pl%Ea%vB~S%r$*ea_abF6P4=4oqRvpsqPn z2mvDmD%Q*Za)OZiirE0j5;pDsG4(C}O#kou8?ho*DTf@Uqe@GZ^UNvfBq~f!lT{9L zh*4;pNunHkODX464#OyC8aa%d#Y}T<4r654#2CN551;Sjw|`)d=ks;H?$>=^_jO(O zm#f46=b76c=S4;~XZqH+S6BKZkehw8zf^E=O6ZT-cs<-hJr1K|y*qsCaMYH}vQ~Z} z;##FS>(aI3%vXj!1^+(F{l89kK2MiAr*h{y1#5CStZ`R0&cuSKR0uwR5sEy$?}QP- zjNr}~nCbK3VR?#weOS%Yj}W<17_phenrsQxzESZ0$4T+7wZ$y(FhI4pXhD}zqxHijvFfbpIS|Z;uvga-JhtT;$dYu&W4_XZ?7As6_I&g`-sj|JmXgq zY4go`wtwi7OsM+M69jqL{L|RRSIfKGg65<gv+95|+2YGBM-C zjSycTzC%V<*aa!h!LBLtm9o2PyemJ|{#Ab<b^Ms3oaQm>N$7T;@SwE-J|->X8vpEli?YT1=jA8S zRmOAT>lDj5tX2ad)!64uLZs#Lr>PX;JPXvOlZCFk)2oi$SuYd4CFIp({47?a5Igh% zmhX)tXf?p0yz(+%V)~f-Cufo6E3SzU>`tD|b=EL9dsyJo@d-~2G}xiHM`MPRmWvi- z9ZB9Ejg?nOek-ZI`=MY;H6*NXkWeA5~i$toA{2_;;<4k*9 zf%QQW98VwSP3EEqDY%oBvoW#=eEH{yp4+4Gwr~8!?N~XPeoa4v9o^4iyk57Ncl8w~ zgb~ic0x{;~o~|4okR5gBw2N1kNW}RHtwS|>p&N`JvjUknWF7UiWlg0$i=<*lBTE27n~v*`%p z+<`dqp||`$>rtE*bZoO zUujw>o~$?NeTXUB^T_!<&m5AQ1)zU4KK*Bqub0*tY%|)SM6UTa(&xncs^%BJYIqO2>XY}k za!ULbd}4k*xVksic?rtS$%v6715Q1?$FQ1l-~;R_ZyjdNebPybcK6{k9+naKG0jPP zhD#G-%?sEf>@S(CDQ8-%D7h`huLpERrzQ;-a8n7Yw~%kTzvr82i#pk( z3>70;v6LW>ot$2v+bCz}mMDLgvZ_YUmo$Cr}-Hf$DAo=O+v4K5yOixRN=;QIR zo3#t7UhcQsPrG9*>;)6HDC1>VIZrswIOv6@gU`sf)k!;53eO}Xbv}Bo;`?jbPCo3R z)0l-xr?~^|hkDDYV83g!S9wO@qZz7)dhPED@pYz?HAJbelZD9g5({Z+P%Muwyh)l# z#1_?GKyEL4oXdgV&kl=&??45-O)PKC((AS`g5+;`;(5dn3hh~{va3x2!&5keo7F6u zP9|EqV68Ta^ot9(JeDTx26IMAU;ooh2n%mSo4#=l@lLNY*eiT}ngeyz(M6=Ipo5k@ zCQNyMJ(_+Cw&07Alk#~t>f&DZ&D`>?Pj-FhCYK-;IU^^#;TVp4;WdfpAno^GQhW^`?x}FBzNnuU;S3o1#kCXBc1J zh@tUc2i40iJWQVo6ql`;&5k$BR2W%UD_?e>`t$K>D{?4A6Ew!f#O|6gLP^24}CcLoP1@VFf?+LjU6j+vY z1LZF4F6Y+4YAj$%8hLhyBgz!zU9At3zS%NW7^ELXJB+d(f3S_H!#!;StzK5sQ zEq5+%7q(m_!=G+>D$rlF5pmu}v2x}H^n3@#InlX6$^YHOvP=_H6rh6Qm2!6!rmOf` zMWd|lNxM+Bm*->#wLj^(dN(GM{O^5`NZElRwmbvYS6mWt?reRsW9XM@eWZEVJ@pnH z)FX{J^!wEEHiaX^T(~<+uXo^Zkhl0`RhQ;{>KpKB*`Laprm64hc8p(+E6JcmYiWsf z^$wR+h;WXfZnMLq_N^9P>hOE+!QwF^;hR|aG5ZrMv)$fCPl#uEMcr2~F+&PcMqMpa z$d4Vu;HyPp!AyvIjVPjS_$Y8;pyk$M%t$~j5Ida-;R^+NP(i%#9CC>}F)d_GdiebZ z$y^Pe%fi$OOrF+iY+jt*(AfcGSr{RtNNV$4xYmE^0u#8f5)Su!n z4(B(h^k|R0@;>IxoPny|X&iKYn@Co96n&ueuyJnou#hnv3cJLvHM`QgxLg`b-tzeB z+H0K>dI>+(yj{*b81H!6?)2SPSveAVn&#s$<$>n+xI#Bc_DeT-ny(iFz!&2dM{;J= zd)%gf*q(XG_#LUKDP5gO>4}Fq%a4++?{!%qsgwZ)k6?aOK4M)tG`Cn-7k!y!Lr6u3 zLPLhE$*I_1veDV z%`>xdnh!xv_lH=jYhNw#hFPsOY3T6r+l%hPc zr-IdbX4h@!G;xBZSAe6u%W2<|UT}pqRblq=^634HdzX$GCgW?JGog_xA_j<-f@!MlNXXcywcQd z6L&&^7O?}`9A*}VfO4%l3zp}I$^W*L@<5}$hjS6M|doic8Gy510)^s6^ z(HW+E{F)|m<)!7Bge?|~GpjSxZQAys<$kOsd4m#L=h*Hqa#>f4{c^}R5nc5w<5y46 zLrVV& zA&_|q>&YotiqT^(#|fo;?pZLRicD0(Is_Gzs84zjV{sfNE1WDyR$~gH<9oA}uCBb~ zfJ*->CkI0(Z_}hSbV347UYasZEf~6t)BT1a?h-)i`+t{Ry3|w!KW|?#XeV0`Eqr5R zuAhwBwA%g4;jKuqe~_jcC&3gy2L>C)^x8NxqS_LDqvOjAP@9Qw2wc@ERitRW9AnvUz8H0b|l+6wTg=ehM^QvTIPeJ=Ui}g{*tfaPJwPm`?Mr zif6Pd!hTxTd4nJdHN%7m%WuybEh4e@!*>=1`&mSk8Dbz9DPOh^M*EPK+d|Q8BW?jw zj`)MvPHth&PHuN&h8$n(_I<9}L2t**r!IZ0llO(`{h2ZyG@|#sL2?P}1zEN9%t*^i z=^>e`R1f~@yTBL-?aJ5c->nngZRmf;{w~`Ok}ZpMon{a({avSr6`&DL#{vYXt>eqZk+&sMfcuYG!q#YVN1wruSn}5uhMfMqp@LnN$fW7p#H^a zs14H-xstcpAFsZA@Twxpb;kZ33F?1hMNC$uWkki_L95C-M>jCf*Hx# zsFlT=R^j$WMy&=*!YxUNjdhPxDj@-D=XLF)pW6eN!l7(W$XAZs$%uiDNahhzj|^7q zMDTPz8PB~lF=1!82WwPUKAi(cd5_N$DP4HAzml#p6C!uG_x45NvYtz;-v?^bnqpt5{LXrq2o<3D!yXv*gu|Lfb+sfScX5@S6BjDDcCFB?MQV{NAw^H4K zuJ&gl>AF4imiVe%nyZ@pm7rC#FUYv>wnGtuVc4qnH(H*$m(wE(uRxEIfJAvj`v%Wh z3ur91;Gl@85`UD?-v@Hmy#YF`#-}nQC%Q>J-u&gQ#gOGR$g&u2y`8_@VT0p0K>qE` zbYv%Qzey}sxqqEm+VBgI>84)%8zD4%q&j_`b(t*fzw8nF5zaUrz=$WF0FXtFJ$0<3 z=B&DOBJOX+P_r}*r=}~q`YKHzluM9`;bC$!u@%6mmhAX$^8B?dFKhsn2@Q5hTngy| zYzrw~lBo=hSFR(!HGo57I$Pjc6uWH7`^ylOvd!_aS9Pv7YWhSULdRk zrhluyLZEuIrE&iIl1RHDNooWBC?FRY62rZ{kwk#IPxQWnVDdvo_t{`DF=zPIk}#67 zDzc8MV$BDx_xv->uCM<#{=fi;xw+bOTIc0s4VgF(sLlZX6^ZZtLrPkb_aR=1F=>`{ zDeQjM&Tk}miF(nhNu3E~xd%jdCm|QIbaQ;fd%{&3G=e*>;&v*n5c)~MgQv0!{ql=6 zFiDoI!DIrtTH1e4l}@NwFmKLg-10Nv0~mYJNXjR#FFyEJw^m@aH@tN0vSLC=Va=5M z=X|jJUCQ1r&Ao7}PdI7r80}s7(i}ptWUf~R`T?4&POGwEw!^pjZN}EGPJ3MA27>{D zB@p-q0i_R#j!Uv>D5483zoiv7szb>gdAu9s)r!lO3M+hwV79SE2JNWhHBl<*;<$fn zy4?y2l8=9^Hhp~tvll;T&(VE}Zh5ZQlRxv^*~xM>A-8-EQD?;Ok2P7NoX{BzvNjMq z5RGIY#wdc83Y9nQaz_-IUIKtJEZBXR zH-E`hG;DJq*jjPrV+7}rf@u@dRH@Lge}+X-NTBK{HNFGmW-?v(&xx`R! z!#ZB`0WKDa%g%|d{jYrao4U*Xa0XWO*k3fY^<=8S4U)Icw9*BV@#x2p%ISC$NIGikbF0@ODc*URUjwqGF`bEUy{-(cz+c@kjmY1$ zV0~>~Tc+5wxNjlSn<{9dN{lerTqfy)aI4uQ0+NNuGeeJVe^D$kfcHm7L;bD}HYzlhsEq+?dxxn@m}`lMI1S+R(G8Sp|o@7dd%^t+mP&$r( z6TgaFfSyWlE0H-GKk&Y?LDu!w%R?ky#RD(on0&|$n2FCt|Ib9cv*PU8nSx8jbYO23*i$WUx6zI?6ogCc)`&Ncd7+cB0$&1gm=ahwsG1 z$2QK@F>XN#;Ikgc^~=xR9KAMG@c0`t;_`CkANXQK2&^>E#dJ#DissnoTRTw7)wBqO zo;!}>X*%=Fq<4Vjj4VT0C95`LTfAfg{wJ+?^d4_DXwA0QW&s!^D%d6Fr zcPTmG;$wz1u^y$djnJwW*8Km)!*2Rd?VjuPsT}AD`=!Rq^o9!tFZKl0OI1}rcLp#) zH^DCAr1Z^~--MTm1_>lJT#ts9O3>Qf`9dV6T&*)DuBZ88Xel5~ui_opZbSV{Aq?f| zMy8S;qPGEW3;m-G?-`pGE7f%7F51aGAD$7lweMIi+$;icr=~?;QecYSDAm6@a zh`M07_wcgueXsH1p0Ouq!*fUu)yZVmC8T1@6WxYJ%PzHFlN8--HMVR+`AW^zWoqm#@cpnfG8MOE&xaphI1Z)5iaRrTAP>wpHb^>m7XK zp@$|&G2vo(UZ2o)=3m%*z27M&5w>!uT?Ns=O`wBI$fF4-$)bO(=%-LMH-;xdl3rZAK%*sYFyT!0FdTl?|RS zQ{K`+z?KCcxRr2qy%!4zb~=|}22VN2YX-5`y0x;Jpw=oI)zB4}-BmApx;6>H43+z^ zm9P{^Z%zgeXb*WkeG9K`t!ci}kB=K_;pMZ}P{RF<(&>nf@htW3LjdI0xs(#?nOmqk zGaFx~p_6@{;Nrwd)h}PO$=jg+No68+pJNVB@94~-1rJ#P(p7>iN73#AVk+Q<^-gis z0QS8bce0K^(j$x%vwaaR2k<&ofCBGt>Eo8(slN8j z_fsh!izmK$*Vfa(XCJMopW%5)4(76Xg?i-IN4+y+8%-cov=oP1 zSQr8@m;%V{IDMwo^6NpQ5|2W}xnKpvccC?2DIg!m={K_!YTC<|RV9|Q8oWm4#?}c3 zBW=kKDHty=$}-nmwVzl${7lGyIB*R$pCp|HJ!+?hd9PU{FSEdc+HMiD>j$t2ra$8i zH%lfepOYFEunFp!Yo_MtZ^2?zzHbAd$JO&Rv<`Z&l-71>*KNN!>|F1=xLtnxPE5T1kB!iOo04&t1ULWd z{i#ujy_P?Q(@oTwmk;WNl;Y}eP-Quql)e!K3X!&;_nF@Z-q?^HIy@nmlAgUel&@Mn_@i`IZ+Q`xpxI7Ey{sxIZ_!q%nbq-EIba9?o{ z9}VuWC_AD4`e6e;)?0i4YPZrFoth7(30dPNr@^u)um=fjgocdw*>RlEEps$k6MaGv zzpc-Ch<-R@!x*bE61Ph}wp?`jf}yYB9IwerDSWa~u&t?u8RlhrK)&dV73Z-{xZepk zq`v(f2!zAf_EykU|1@Z0i+K>o4Lkx4Vr4)>=tHEGnEnNXF54GI%jMmNDr(mpk6av- zHgwi~azSw=lt<}zPER?Y9A68-F?I%Yi2Ri!xpEYVJArZLP(M=5r@pIb<+6Hv~hw&qPhV{W7alrUa?F zO}+9H1WWNHp7rMwCe=2`GcKKbdEQ7nUgBGU7vsICm=Wdc>b zm|8R)h73#J>N&tXS8f&u;RA#IQfJc2J}+WGH~2Yc%v{W3sp!oMal)El+>s|a-V9CL zuP3!>v(ulBFjYZq9OJ8T!49_d$q6O-b;mLa(TR1my}1=u!DZosKfc45vdNgUbWSr= zFQt)q2^chMSnDI(J1m5nu6l6UgNPhweWC*wCZ5|Sp~?y=2Doe9d3We+jv}j zV|tVB$%-K(`z*%gchbvJsNi}jolKighDOFN6Bm$*Q*?dX3OZsW-#1+oJRvJLc+>8o z;q?99n~VbPt1voA!=6GnrpPS2E1FIpf-vRtvGuZ5#U#Thoi5^>6cO(!N!3|6^^8>( z_?t)2?)Ki>O+G-3+)}^vx#)v^f_Bb|){TcM9l}r}H8=o2sxGG;!S(keBtQ>4 z^liPm3h8SdqTO1Ygk7##mg2zq4w2+|+!|)|+aq|~)D(-b3mpuaG2_&3gul ziH-d%#_4|pfO*eeZR585eZ&JXy?I75)){+RS{W^N1n(eO%)r`nIQ$8QOYi9{bDhp|aJu$hukZ zbf*vpLfZDNdfA}1aL{)>?$%7@46gl+rQ7yMO(!EdW6Ln0@SnQ8=G1bBe#TSAQGv8l z%^_OIJ~zFzEQ|WaKiI_33(gVo>Mi6A9wCC;+s;uwnS5{9p~xlZ(WCUrT{J}hESjz# zAUZvRa9?)vdyFrN$KyM%8mz}W_l`rSSX4DOQc9|>0u;q--$e^@l0dZl!ky%GUf$>G z?P)UyZdeH?w$^zB(AHxSTyZDc0SDAlYyD9^gbD|@GU{1T>Yv40n9vo^+Jo}RV3+J~ z&lv8tqX~^}eW@vPMZV$#W`&E2sDq%xmTQzJh^fOU(Ja-H-poKalPH))9RcwO`P-g| zV0xcY>xSWSzf7@N#T+U=26-C9nUZT{AQx(ni7RrAs8wI@^nP`C5J9jI712vc9`UiR z46)J%`8)(54nAa=|4muyND*PCSZ)yYoqy)C+bGY2F5demFLZ^~#i(9vOQ-XJgE}!ZL zt$ScN+Ur8R!)^eiT)j^rNx(1lyly1V+5C_J|Dd*Vv4RrmJ3QxBuFCV0m7Sp+%DC*l z^1&i_sZsQsg)`Se{-vAKd}sKuhw7Bt!?EG{$zGCKG0aHZ5O)!Y4|==Nnk@AYK;DrW z&px&5Vfh5?UZ+nmRGeqkl{KVm=-{vXI)sH)5DvU8@Q_WcO((Tnw$1<;P8#p#s(V>t=@C(e*g~gx6>gc9ldH~URb*vFN)%3RDl<%Z&5~pd)S|W$M>8}qWcEO4 zzxhIblLWHXPtf&lE$X}dd0_gWF`BI9fVE;a{yDU0VP&fg8oqh2q&rD8=tpl9MEC`D^*Kf|2+7halXO7SRtQ zv7OhE39EDJqeW`1Idq%1TFX6UX9wOub9q%0QML{o9q>VmAMiESvEd4B!TuY!DjszuAoc1MPShsd zgC*P<(ixg8>s)kPYn&^Q4WIlIdwF!9>;vIeR=z=a2{-VvSM=}FcrDr=_X6Lw2jOMq zVWImFK~Gu^#GazP!ObA1xXB?gVYL?g;;z?0`-j`O9vOkn5S*)UV1Kp^Xn0O`M}MA% z{YD#5k2B@{XN!b6Fi7ysQM>e*E9*;>3G5_-Gh=H7wDy-je`^oA^jmH~=TDaY40@3C z*y~%FbP*&f1DKBHelH+SZV`CfKoGU&83GX8r-{oP-5j zo?p1&fz=BZswXNv)m{8Wx5SZe5(j zq%l+D6Tk*yU1jDw5+ob`+EME#Ri|y-gJD+%pUN|Ln7T<7=9qECIl|qj{Lr20A;a`0 zQs}MR@I*<>;~N{EH!~qd3cbsNdbGb9cHdiFZyc~7JdBQa5BDXr{V{#GHSe2#4?Y`b zFq)RcvK88CHI57{CL zD*LI^n|Wf!_QOKGO?cq9E^q7M>Z79qZpmcQ-nEu5Kka-o2gc``y@QY6{pWoziZGQy zhH#)`kI9&33*>Jp5l1R~Qlm&SSpjrdn(w9$F}`J~%qOX2>smFvrv==T)8b@ph{k0p zt`7|;%p>4dwkriNdsiV|%H|VKQhKls@)DA63(4f=@r-bpicJ@%An>i2Nyv_%i%*8~ zYDGL_r2_9U;vNJNVg=&yEtw%7Ejw`^hJE-DDTsjo_r@Yk-_*^FwFFn<thK`TsOL`zaeKh%|@ywr1s%fffST*$4b;_ z?YbOJqn#p`n2;gpC-?WiB;IANmXHz{{5&3g6xgs!%k@GFzY+y?DSE~t0hyH>4`9$cYfOP z+&ROn1tTB7n>gc@oOgVs&6ttEm(=&!(z-F;CBQlFIk%VtU~5BmfAfrEz{9iC!GM{l zBE2p|RSFner3)Bb+Z4Ks?9nD`0rXLyj~k_Vc2`pRkyKPn#^w$~o`m;r=DKnzLayns zzVD-?b=*%Y|e~)?jtoGDNkAxgWR8h=QM?}h}<6tB|KT_9Lf9PFk z5~E#xeC=~Oy`HAhlLO>Sr+07tk0J3OOIy941 zKtD->PXQS}K|E!{yKFfW$!8;QY3l6(%IL-BL23ES(NAzVIOI#oY~SXKuU=YlGjk$! z#HG$0{v-M5;FY0vZ)<(0uY;14>||2i5JgqCg`V)QI6e5Kpn{O3U_y6=$1e*cu32U)0u~d?c&Cv`HWP9WGd=9(eMVr@}f~e#&c)`$_hxj4EO6 zgFZ)V{cngnXvvhe?Le3n6Ll}Kji!56^3AdfS8fkoiAnmR#rxQ7o7R@nVjTE20iwHp zNqP|<5?^bQL8x^)7qk{;Z}`(;jX4lhI(hi}%oPv|ozAU1Yi_^UMMh=&p|(E*qa^mB zpF8UK1_Dq5-_dx*mJ!DD>l>eiv89`_-bxLr-oOxws13w`>85W)7H6mL+ zEv5ok>c-RI@ z$la3XYV+B$+K3kzKwaBcJ%FR|{ZDDZow|Yka89TE+48}HYNj>WNOZFI6Y2L52rQmjh2ENlix5;6?4SNPjFge$J#@@ElZ)qwmkQSV z9jOfojfFoA7I>;~4xkue@3J$P;nInRdk@>-#2Rd0-FjM1vO6~V9fln&rw#qrJ1%9Phb_!QY@`xgn$1@YRvU_~jF92H) zL}o9PpQI@XF$vIG@=vxZy7vwam9RNo@%17T4WeH}$sHjf8P_B^P%K&;X|Ul1n`fzA z?DfInto3P;TgU4NWP-Uus8vs=&10uvg>uRsDp;3_%7*uxL2+G&8O~hTMWMGXwLGI1 z)VQoJEYlFDUt}d?ZO9X$)9{^pog@A|WccuZoGoAdusq&0Nl zU@2XQLO)WG3@jsr4hP{ievUX(h<#KGwexpx@SYa%%1+ei@Gc#-24x<64{ivL~pX% zt2DO$vt;X1vz^k`(rn0HhbN$)=3Sz~J^NZz(F|QWFxa6Ou)eOo*I(r z@V-SXT8|!D;E(Yy+0=DOeK!1O&Mp|V3y8lmsZnyK@R*YsQidwC_UBV^)3bfI-C(Dm zzwd`*@1YeJVxuj^cDr68yngR`>rUoY8O>35!(gMJFGt*YGxdGl{sR-54hhZXrJ9nL z@SKyM$GGi_$#EBZElR4qPP~TopistPEjf#7&nw+B){BP+Ynf)bHm(PLAOkOnB`f9dX~TJF`Su?w4_BMT}|oL(=nJ^`{4;l zOy}dAmh_dVRtCo_th%*VD(0mivBwIZR`^-UHpNfIKnckBJaktw+<)dRzDnX0mH<;4 zc~fH6rFwVrYE~Byp~#El8skd`4-+viu^RZ98=OYra-+vH1!_iT0?z;hzHBou1?Eo{ ze|2vad}oNt#p7|fFbeuCSzT53hzwKxS=7BzYWhQ|S7=m0o2mI@#$oN(JKW>BTQqHy zvhOWq|N4LYyLm&&$G<-9%;X+j__~^!>T$A5&@+ZzJyUZ({EcK^z$a>l3 zxUljvostuRX%ktC{<7W85Yx!XM{Kn!M6UMtk?-?9A~z$PL!hf%u^p>jmvzeb9F}DL z%K16n@1JS+A@}1RJs5vdKGaojs=v=auIFSwwyks?V^FT#l7^a^rVA#aRuA@wAX89!F75fdDIMuzDkL||?$(v

swbeOT|#u*}4>%x|Fg29KC; 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 z zQ;6rwUjj=QXnAu%)T7L(=(CcaaOqZu1o}4&^VC)Dh*OanG?*{U>lCM-e45s~CEp#aUYpmh=L&mI2H1yIlnjvDpg%p1N!xXG@4jh`mkRTurDlCw$W7DzR*;D0xDK^mYV2>lAMRPTLMOJ` zDR+G>O&B@Gt^uqbu^`==>cU?^}~e z-a?!)(!b01;%4Tkxoj4#9*-(Z2C~SQLvp9md0yTieut3d_Y5p{YUa@c;SEq1DcGo6S%N2Yq2X!}{v4)I_zVMZ5rcI4A{0xa~;bf0XmVrh865 zR!@N&udYF`JP;%}fqT5>3sOTm!5yyXNoDZG-eKDH{|#itFIHr z5Ra2~Gz&?U$GUyYJk}qW>-%Rd3e6(yAvmvp z%eEwSyXeU$_W_?rpXy&G;nsLIBo* zPvi%^bzOLWVj*zdz^R++Zky6o2n>(`?01h8bO?OL2{K5_70S=nJ-+qp(<|l}Zie-I zIA*p_ZL7;xJ}WA!(+grKQ?qik+ca<0!`?CYR8vUh89lQ4n2htPUGWV{*bSK@G+y_c z;o%+G)x28abQ2tttEOk`$*jkLVKaLX#;on#$F)dpz8Zgyhcv+$sj#(z83amS41e9a z$YwTh+%1)7`+J8|%N5@2kd+U^(O}k`?xAMRcES?II6=W+{utxf)+TFUbK1RK{n9g+ z4*0%DcO!A6CZTDibFObU-4o|44 zR&(PGQ8FKO`5tcX!}lguW@9o4a?AGdNvVP+jg!U0cy-W`ucrck7BhN0EG55KvPz#U z39I>hB(szUw#6^f8p-V5Ssd4N=IAbpuIVzs{ZEGs@T3y~5Z0j%0F8x--x+fB(A`UK&WS%u|@!<#g7YA@uM*V5x^fb#0(jL|WYez3MT*0IZ z!|8sD5jm#u-tk)PvGqLk3%#El9Xpve;CgflZzop{ax9aRaGtY3IYWOH{;I`5jqvoX zGs%?eyzj&Hp>ZQaL1fJ_+=#zGiz(onBTtS7@|XVi@!dMHCZ)2vN75f<_6_+vgrJiSHu!1S`$77AU zbfbRHOZlz0dUiVu3l!N71(lhg2%l)6H+08PU=0K~ zVb$ya%PYgCQ1DpB0&S7F@s+2746?8cOPB@Vn&d&|P%Tiv=i{6LBDz&5z`>$rbvIk96lp3%*_ z7W?SO^9v1G_z{7G3kKi1J&~PcqewrY7^W0AAA?*N;+RyrnR(~PlsGEd_+(8r_nFwU zLXU5ql@KK)#)W*&@yNd^5q&@C-hKAj146cZ?*)e+oSS= zW9Ro6rcu~ZwVS>FP3+wX*L3EzUc{KZ!v<@7y8l6dk(WtSp^xh?LdNK%&Mp_~4LTA% z7jn~Mn%+HE?9!T){6>JrJF@MafFxx^TR+WxsdAV=&oD4F;H$JUuisrA1cBhie(P2YEG5#uo ztSgeZKchaM{E(0=;Xg;7DJeN z?1El#NfR)bu)LQ~=SEz+GXV9|2JK0oI!IPnhR4RqHm2k6wjWExp9 z67yANymP8EMFHF`K>i|Cgb<-=!ZML>_$0*amnO^w>{s%V6Sx72(QO2*Ox6#gVjdhl zCM-W#I7oO&I2yR(P~+wA4*pPKJYeyldh*?KcHTOHl_IqJX1Gkj)_&-OGkDOg(jMxaNgXj?fGUso1*=72$=c4;8 zW{xyfohDz~Rp;5qydX~KNbe+FTR{5U9`|foHQbzFNQ@SvT^8?-Z>kP*&MpR&2xjJk zzX78CwHG-QtgF8)1GMGUwLzlk7xx@W>n{y=#_N=y*jn)66+3;5F2?)7HKK~|=L8Ta zRyh7h0LQ*!f&)dW^6_^-LQ>?hiu4O#UlCx>gmdr5C^Zym3ozn||NQkmW0Z{1J_qod zUYh9W5ZLPb01eFxE`fz4?39GNZ4FXAUPgAn264KNhxmRZXRAk;4~wund+rCFo75Wt ztXHdx84~zq5bL8|x!5-kezs{68p1{;FTtL)NqKBc!Zz<7L)P?ZqupgZJTq5Mp{q@C z;W}7KflH(%_^PAQ<8f2t<%!J0Wsr?)Az0CmPJRQps_$%oGO8e?S3uDBbIA`id!&?Z zz*mla`Gx;#@aD(KpYOkdpE)_PJte1LitveEhA|G3zmW?s5L*6+=6{>%r%La+a&s~m z3D8t*y70-(#r{PuU@JIwJE%G?F0Qh@Ziovhe>y8cbH?@NO@|&=!s12@N4car{aaat zWb<%bb#n5VoQ(h$rPz^+0+GZ~f)@qHHwui3qv6hxvSvweYOzCi{x8Lpk~;6Z@a_^> zca$AUr*5Ln{Ex(z?Wq=R7A*$r@kwPnkM*tEz?D+<=#_~Z$_6_`y9I45c+Gw8D}^ru z7K(6KZFWoaQGySCh5OsC#z~Gi;He4OYHpl(?&8WIH(14ch}MwC*wc#)pqWzMda^I zjnCe<_XAuWN)OYFO*=DIVu3%&W%Av-n(!r%^zXPt{zK6n zL*l-}tBL(GT<8j~hD+YZ@)VmS7~CEq!v!U&H|FLH2O9oenWx|=y6i*dX2Z1&(J6Hc zFxP{RxY94u-MeOL7c};rkq5j?to3Cz4Dbv^alD!f)?&dCMWYnoUdtW|( z-p*p1OgOM}3~3$|_ivt?s=ZVc&*%}|y5OXI{|Zbtq(Bw1d|A+lcq?`R3`IbWTf?|i za~lP@9Cx|=<{XSV;?<1+(nu3GG0hL!BkE#xGNcj#64mk|E-Vkv;VW@fJ4ZdeX%vn# zu`L4hPY;e>(GSoR89{eme}~!!pqXuetm6;oHztn;uMHct2F{|s=Nu+JKocxPwx;KU znHx_}7k)N8ulJ<3bDTCL#Qy!yq_KABMlR(D?onCIZLgGDo?ye!@60@LN*F=FISYG5 z(W*s04OP4y*MS*`9s;_WCat{lZNOk}{Z58(9nKPHPMi-_Y>%0t`yGW8Dp+PSckvt# z>#+_6BO7Rnp7>m?vmsf(%uZLFpE^P2eDSD>jG!kAw>wU%E(FN=hzF_;IMs0@hzIxn z@EOb(n6DKIeuS*FS%O>eK2|?Y&>U%RwWNd3QLc=VKlVX>0= z{{l>MsEy1>!vE+>d>mL%xTM7v7s*Aq2G>c9Q1pn~$J% zMfSL3YIM0?2MRtzd2R;Ig*EyPo(BbfN^XRXlRXJp7D-ur!6=Iw^^~FRYxU0SomX|e zj=;_z`)vh#N+5pDqxjBQMA;E`lltNoEykW-+|&XfcKCS}r?g`JH0FZJq8T7w=VaBn zYW&NmkNzhXoS(gj*B1|b9pIdQq|S)?=d8H58gpmnYDB2OkJG{y9`-4vh{K`uozqoh z+dP>@mg{!OJ-IQ#l(Cc>loD?nFs-D>wPp>5a#yg@jghB5%*kS12(=@sJC~8p;iJy4 z4IvH~yD$7&uDl#)$=8G|AtkaZsdw=8*FK6SR=44p7i@CFnS5qb;pS7B!wL%PqiRzS z7op3m3wq`Ew+z5lzQQBJ1HvhO#U0Mzztx4gdy~L(R!E36=c*z}RZt!K6&v;CRRVe+XT|E|#Ise}f;rGH+0J)X;!~&*|aRr#mX2u9G16=Y? zi`{(&It-QjyC6c+f4QI_#Kk;~Nla848B*)GdOAXERCq=CbZ1|hUXs_2C-C9}*Ig6W zlH@)ElKo(&$KLyS0i!!2q~2(r-M+}Q!(SJkY*ht_?0DSyF{v~x5YZ(e-9>W8IQArd zNz!2U3=XI7b%)~a3T_RmuK>L`le8}Y?(HKHBBeXdruEGCwQoudIJ6b8?BclRLK(Y? zcWbSLV{E@e2)G;j2xNUZ3($`@uLJanz)Ez*8-_z&Nr*{Vd_A$Cd8Jdry@|#PH_TT}4oyT7BCw&IF$+YjI@e-V z%*C!w{*)>4;;cP4%_K+OuDxCEQMKnZ?xlV1S(^OZ@Lb`)G}NxqF|EA1e{4{}9L``; zWm24rQ;YvK*eHDYGBXc}Q7@O%elppr>EflUmdHI4Nmwio`7Yx>ky-jEP3dzLf}MEp`!^l3#cvCV$l^S-?7pd9>^n0$$DqGzv5yTNMV)V%B^qJ z1`tlvQ+PXMq*(#*1BoF#Yj8;XIe|jNc`!QoME@J&!1RM15A?2{>VU($3nFzXKJhO$ z8iyjF4GHY6<`*0Gbv42Ju+Au+*B{<$D^|AJ@LPnblan-3AheIU&D zXsO^P=n2!R1+ROf;u_l|x7&4mM=^bqmLw~q-r^eHCt81 z&~3?G4eli1Dk44j`wFxl{ec4B{F`y#UddAM)WcHV#Qrru`1jWp`0&v21E)s#3Ajzw zKaDiXLOZ^zw>BrPj0^q!w`@p*hxTK}&M#DB!l^qPk*=E?C}Vjv(T8~c+fmmT9`OT< zYf-qdlzVa$cBd6B{((amFUs02N_%zEjniUYcHBq`sYUs453lAW$*QJcnro6uh_t?k zl>Ajs%cLpiRF6cE^7L)+wY^F=8#er4`{>DrZac=JSjMGul>hjjIGQ_+nXEMb7q{XSh9aX$o5j?(s1piig9i&Z{h0&mrl?a%EyqX zZLfcJH*P0xu9%0DkhB8u1ML2-@O&mP-g@y{7KFym0<$ZYRd9!2$sl~aI)4^V?QWcf zsS{KZ2ko1V5b2kCqhyLtgTCWsKpuh}Iqy!Hy`f^HJ)$7S8%mBDfQ2tBeT&>=4#bXS z$_1f**9serQguqQ4n`*EcCd`u`(K~yijVMV5$+K`ZU0zF14Q%^Nu4^V!7e~WYtbFQ z9dC3ZMh4aOE6C7wvV|HjWDgfYmRLP31^=;Y;bo}egqx*$Z-Dc<$lJ<2%aNJ(yn7K2 zzhyj8Tg<6QS}GcyaK~GOi}O&e6QQ3TAf#oTq%lKxgChbI3ST#( zlgz`DW*o}nmNjo+o&Mi*KfQS+z{j1iz$sb<;g^!?ulmpb5#Lu`RR0D??qcrZUPqUk z5is@dlc7Pz5@AC@qH-zoA9;A}5yuu?TDS0U22Ksk9yd=fWNi_@tNVGvcHRKgV02#g zy%`iYodtvM;?vR(JaMOWITLQ7dpmQn4%IBWKl*tHsTSrLG8m2XS`^9DOi~%xp40Qaa8SrXQ}u91j_=Ff+zMJez??H;3&^rH79M2i3Jpmt^q&{4!D7 z-Fan+DH|leq8>%OGAb~xWZvNud-gT)GGF=PpVRLo=rL)tWPAAFde#k|sh%gJaterO zTHGIB?Ca`V^vkQ~E~bAKO7O~!8Yhl%66!r()23XjGr$~JTQ1KMBrm1zk%xetNZJV3cGJk;@i63wmJN?%~rp! zin=%DiKHRG4|168R%&6A4dBBq96X2h6ZfNu8Q^oV@pUcGrb@hd3#=T})c!GT^B_Ll zt-b4yE*{$e0dZU?vA|@V&VIUy{^P-sN~0Kzn(Qe585GR6|NNR8Y^QG-`}aWeOL_|g zb*@f-`!{=eHBEnZ+fu2J*OA2w(ZjR%@g<2JO6=rZwTZt-Vz^V6fYan#&@<>yzBNFR zi<1`S{!NXsms&4zE>fGpl<3AY29o?5Plp0-n({-oUrKR}M9Ih&;Pq#iX;F?S+Ai>V_d*>fpu_SSSAwM;;Sk3grv*XfUbAQhkh;uwmTm`}h z>R)TfZ?dpU+_N9q^e))_Ajpy_tnKNd01o%4E!BsOIT&U8)%Q9cj_eSje?v}#TG-nj zIn}H^A9k-KY>^Buu@FG!Idz5;8V@&iYB7gz(1i0l2&~vgE^1?o!sX`h=ANMC65h#YO0htn5?(CC||8$)cCrp7DqD@tB1G{ zWi3dK^&-#=wpWqt?Kf8@IHzhn$+LdAfn$V|Eu#|6GsYE>_#ngYlF1PdKfxl^2k7+9_dFehBaGFiu9Tb~>Dd4CTqCWk9t0>1kMCa#}Na5F`-=;;lIdcdak z?>QdPf87(iB%sd6ZMng{7Y;^q)EgiS+Ap{#t16LyFM`Ttc(7cbhIRb_vlbcbN(-jd z>Utw21X_j*pfxz6a(bM1 zVXskVYPTY}Z&y7i*#0B*siyOxV=Y(>#q}t{8#m)R*Q+mXlx0vmB5>wL?*C7Wd#Iq?_;SABx6-P8-JEsYBeJrI5 zSk&vHy7b=SOVy~a#ctQivAVz(sf3c7=)DKxsIzaaRCoN_m(=|aNc*P9xPGQ~&uZSO zfZB)e5vz6uN*7~C!#mEcNSbm?dz6gJxPfYjoCW_by@cY>v-u6aEt$J`6AZm;m>JrW zY7Tx4$h+x&lNHo}npxqOM=>I4vo*~BJ6&LU^`||(cr78hcwWh^v$**5n4gNZ&bQ77 zCN3NQio|x<-=>p|iF;$(1ji_5wlRp^(Zv!6oe2`ip%D)KPH*ny&^QljWV`lkIAb0+ z3s#DXg+r&dg^BctP_cNxtMGkza4^cqp~yuBXyE*S1Z(3wLd*6pI^*1=+ue~ z*N}Ni&h6Z`56PVpf3>4cPx_MVI{B zihe#ZYw&I=mWR0}FdlT@^Qd1mSNW8``KMd^-Z~CJo1R?3D{GT}H&ZI#80Q?0@Fwh5 zZa*yZI&M*)d*{~qn#EFYoV>C3cPo6X{t5ck*CIa>(vb(n^1orUp=7;E!p46e3_pcU zy&xpp;}f-tZxuGg|2oy(dVWhRY)F6u@N%K3wgL=y-Fi#C11O1LwL=KPwvM|9ecPN( zGq;w-t?c@g8K6l5xNt@m%r9W(WQ$s|#yfYY_BKs z^*u0ZsH+UCz9kPR;*BX(4H>i%k?F^VVT7oYdloHwr9LET+91Jqz0u9LbZ^|#iETbbDI*$c)G)c6 z29AB`M?zL_@?JhDDhQ`qwU{RxY<(Hn8{e}~ySy3N*UxEj{u`}xKkjFEqm8HIL!DUl zDbY=&LI)W-YZY2+u$ozt&S4e-(!ypav%9Sn`{|uDP<@OMlN8eyw=A*g0I82jiaCL} z1T^ag?{>$k!Wcp9LqFm^3ia#T_@M`TbY~%*h3Wmcxl;&PgrocSN_^t_rIQudbMOnZ z=-`#gvIjD>JRcQQywcqG+20{tk9D<;h*5w`$%sPM_xsG8}xG1ZItidi|DZ(W7pUs>@N?^sZx^e`36#=iS=jcsjDlb~v zS0wf^2DN=QY|V@Mn;37dh47q75ztaaC5tZhGe;UHW;jMICJ$(A5^IDR=tp$*1WhJ# zE}O!_8(-32YJA<=bqvp>$W}#;>Hg?^wodu%DenRYkr??~2Is90Lc4emsx$$+k-DE9 zV3%)osqWkokmX&A4sb4LSwu{RCiq3qoqt~e%`ev6k#JF_&(6^QY=+uy|8F|2sytcU z44+mxaz$`w!5eXW=}rPC--3oSayC&nw;2~l#Sh!V%e!9ke=b%2j*&HN0G2$`gOpr33}Z`a4TrG73C!?}iQHQKYD8cqbvKKOSH}-MGGi zvqJyNj^CWt7IYI(eoBd6@G5JRd{+81T9gyjO;|FE1^+jI{VYuG_qg|X`;?WZG$#!Reac18r~wJltezbXgY$Fkj!&e{4P z40}u*=(?*3`eOq3Se;uoO1CCdVC~ExFvP+%9`g^@}Vz#MRCOs61;{# zoc7zFBId7jWD|Gw*?}R4YG$J*iwwKS$xS=!=V>SpT4l!j zpwH4kf~7mS?hlmzr^E*@dAL{1-kQ*s$AawQ7jMvrZskPNcfYX+{nL||_NG6zYK!N| z7%Va0a4zHO0Lza^Vb9 zvV@5n1<7nWbh-9?fI zdyT#?lo7+?2itj>d?(7V!8J5AcT=@F0K> z^z8Un?8ifi0tNh6)u3}w<{N+yx;MI$zx{rwg>*CXnLlVS^KaT?@UVFoG7?qP)lzTb zUtkO+DY}%c9Pj&}-jCkSdc89e&^+!cL6ivbZudV<^B`u=soyVC-i_?gXB|-wmX4$y zqX`kuPO~Bz1-bRZRrdhhu|4fcPy;H$Q`P$MO0KWBCx+eEe)zw?lGgk`p5G7p`KGYq zZt=#CcQ(R&S4~6!j)FFuo}?S!N)g31Kqva}-=iB`JG6Ek>JjG4Zy5M)r%qBo?`PFS zsDziJ(6V)>{BLvSZLs@|uujqwDgTsoO8U;&j1gAvvS&z*VK}V)(eo z93X27cP+GJjzB`3mt0`nFzWqHPdJ--i9htVm-LNl!y*E^>EH6~-wN$gk^9g1AAC9D z?pflb?KZXC6+Rg-(uo)5FgIU(gBqn~6~ZjfEuTAs8mx5{13nRdPA<2?MBgiQKxWGC2uOk^#Ci<(|1tF~{!I4&|C_}s zhuz)WhOsGkMPZQ~XUL82#J9qU)sJ2buT zF$#mPiG)Yq(dzk}_09{}*_q>lWRcaGKy?Pp-1ZhL9utj}L}adAC^$I2GfIkv#0V_U zynBg~zBa{V&4m0e&tz=2*UqN?0l@@Cx%Z{d${hA7k(WIhmQwQ7LpxezaR47c%az5c8N(zI z4IiR*4Oa#R!=p2N>Aq0*&3p+Qt`E%2tGId2LYI@?aAO4Eq7he~eG1X2a=!a)c(5hG|mLBn<1iqoP?0eXpK#W;_RE3bs;Pgn<=j&$#T((35;26 z*Zyhkes7t{Vs!*6#uT6BR9~8e6j^HUvz*%M2?A)&t)r6M*Q4m5-hzNQp!X*Tvk<~m z3tK7l(sFJ8Dv`D0a|0oP0aE(QMhdn-rU%FU+stjRrr;Vyrf%&h?e$t65%l=x*E6C6 zBG5h_Naj-5e@AbB@&d)6PVb7Hwnxj_9WwiUjo@4s)&}(Y98`^z2u2n{x zRX|)*&R4V*LnQ}8HN**}kB45OW#p5a)WD7ojdbymIa ztSa<mNnA`Sm&$Z4gVoC;qHGT{OWySf#S&%U+(pS26_7EtiUg5T{lp z<-1tN2tdR!`eiY4p^=oAUv}eU1_EQ*eaZ#IS@ptYOb=QF!tq29rOg5_a#c$bQ=oZC z9>pw+q++|0pSlxxZ5!IkqYGlmR9`{u*ut!m#Q$5cq~aQz&g$dzR_maIr#(@yhX|Yl zv;J)%C@V%=4|LHn2evHlEm+98q%$DO<#6R>k;Zvm0I4QRKh#&S{{4EL6G!%>oV zMtDf;u3rEPf(%RPf#_gKk8(55CYnVm*$mNJIj`=(x4X`KRo!Q7x>FwJeof^3eF{uV zTWxR)RCP+nt3h=esOT%W2x2qN-H|W1>+%&PsP%4U_^~LcQnRUQ$4~$)6^%b&rjgy- zvd0IQCUxF9q|RiF`~s-KbdPdL*%TaFd~XpzEe=;7KN<8zE$jdLked4Q8n12UswF4t zf?CXJQScO~r^9CUCIIyUNP_nw2hoy6vmdtQOUW9J1I6%>Jy$$B&a zTiDJHeoeMhYfmS2#<{02?VQPY|En#8p?R~Q#Sc?x!v;}knJ;}3~^BCyoZ z1(2h*miFTye5s-~!e;!qe|ers$4=(U+Wq%Zw%+TU2arZ7#D1z;=1{(kWg>ec= zQ$p@AxuL61ppTb(f0mw-gs26xjjwlb#iLD)_X$9fu;flb(`?{HMkJHF2g_)A1A@mR zKm&;s^7fzxIR!A| zLe5$UvxzgSicf*sxf_pzW|PAfmm>4Oi5TM8cm*REmMfIf*U;w6l^n?_dN5=9^@DjO zXp&a<&6I0JBAW=?#!;gZ7Ce@xowY#&|>~e0{pgL#5|@`3Ik~GLMh-B4aF&= zr#%)~;|wh$Fl`OD)C~oL2CJsPGTu}VIZ#DsyYo=SC|clCA=JAvDAZ^7PCLa zUD*yE9Bdbp8P_+TM7`|Xq)K#a&vTrjDUB1!08W<+M6#YgZy@l;w}2^$(Q%<77oqG& zhnXskqm-9f8vvL}(9UbF*%m_>D=`JM`Jcy_{#gI-t`y)gpgcH!{d4ckgZjeh^&j0L zE_6Lje|!i&Hni-fE&5S9ZbCIbuf!TX?KqX*dov%krT0_-@6~kGHjNoutj-=b7#ESk z3?w-tG~xvLVK9YwSKjF*lcQTZJEq2$wfy>t+Z?3zooT#K7;ReQx-WlK+Ra)0aB}up zjebsE+J{qE`;JtW2CQumXgbR!-7r66HLsyXsrak-bRy57&oO?~{;ZVnDI(B48H)J8;P%hfJ&P zRe0Ypw5<){WT^dHo~vG+c?or$Zk-5i*KRiu#iglh!(e)V3Ot$JU+Q?ON#xqk&nCGN z?0eG-F!V==zkBfqC{9LE?2rIqShnf(4H=A&m7VpZ3?n!2Y{ILtvdeebX5dUAw6?iK zd;t5CYBx`>cjiL0lWe0kpTjx;r!3Zfu=CXScjhjzxqI<&FkH+lXM)naQ!&V$l4U2* zc;%5X;hrxu1B7E`Q?502w1^ROmCH$Bs%ghXZvZD00$GBWCw(0%@11;aYF%!{i zyV5ycW?&c0Wr*GCdLHJoG5gi3Gsnku#N~erpytTMn8E<${y29A_2zp!Hxyf$k|ge6GcqIa6qNrb)h9{nSEm>kUWy4e)_NY~pQq9=e6v*vI@J8kPfQO__GddIwMXdn z18#4`y9lImNM~(~ktYS;yhR0n#zLQ?ovb1ee1_Zds7W@-QrvR zSG?n^mXktv&5O5wbaGF{C=JG_ZYE-zoMa)56TaEDShn={;Eh1{(@wH6GL5Pj7v5=w z;o(t?jj6A>yzP;;28quBZTg~+nSjeKs(ya(1L(luT^am4Yy2FyQFfF!FPQ6g3H)QchS-a&^i+^&@iYJQpB+q@7diX1b9`Ig%Gtn`Q zQ(NFp1hD~>fb=EZjuF@_AzKblwXnnxu{vGWYC+5#ay>&Qf@|qcN$`;Rc#Jc8E2Tqo z4cjxWRJZJiw9MR_q!<4qp!|E*&X@DUH>tYt&G`8ZVps_4=Vw^>catNgNlA{JXV~6^ zm;2W(vn=)?rE>ID%d^e}_r}R74paTkk&FqpeX|)#{>a9^c~)J2$SSc_lknpFMG{z( zp|j+ovYEbny)l$({wVVsO}X-3=E1Tv5*fM?W9~@}g~gvoZ#?f%!40SkInAns&Z@jF z&|GmXbWjnPRSPJlx9_5;-K|ji;Vk@Tm48_)M*vedzgSpOj1HR!TA4gp4J`5gVP$J> z64WfXs2XQy=1Y7$IeT%H^Q~LF#|mw?-28{<^u~D=IX~g)jTCV?c;nIZyz6eCedC$R6`Y_j_Gb zw)NN&{#{WDI3N2PzT~SgmtxVtt48biCIJvK*VC_I7PlRVhev<&`dV z_9Z7~%46XCqnEvZK6dZx;<|^na~Gh2;@`W~d3-36L$Lyyc1#cO%b zssmjVd8=jLWh-8W*;s~LcT!0Kn)R;Z8|Oy`Je9jy{#Q6ed?=T{|Mr&+;$`UEVfy~| zlLwJAQS1&|TFS0Xd^&2Z;Tw-dE<-9tIDV6GcIpflT#@%o%rSgM$n5H7PN%9iLL2A6 z0KBlEY?kSoNMH#wFL`&v%dSANV+O@qzCOkPiM@8#>G-wHr4oPL`m~vhIA-`kGRWsZ zv48+n^x7G}L%0K33|aI`V!hgS_9cuHCg=ErU3Q9%Ozu~&Z+A+We?)e5*XfG z(JAyJzQH@hD|)YYLF`2?oQuH}cK7}xd5+bV2Zt%h81NOo#M8ckK>>;RwvIccSzCG| zrPw?a=4cF}BaEPM2J4+!$x2KFIN|s8XmeKG!W#B(TK&1RA9L zhpDmpUgi)v~FKqsRP;&59(8FUmHp;FA7?k)B zCwLU>?Y{H1`cFM$#K}zypu^lV$ky+SGv-ty35?&&0(g-fzMp@AlSQ~?oTA2n42~DE zwPDhqJX=DpTPX&avX+-3LvLZ6tN>a0nxS%;1Fz4mhsU|`iMWBeF|xi-^E)vor#14u zY<3)FSKL0u=6N~1D>z`Z7!d8guf8Y0M};2P%9{T5ZAKvQEk9UKh^YS2UiDi( zFeO-t6XNhD9yOG6xu9j@`*y|r;m?L6b@eNgBHrdtck0Z#YQNFh*o45kS&5Do`1VKt z!KT_0p({c+3R+q?%oa^*u)A|49Yt4Td9E$s1!|&2e+5P)nS`+ihK@R&(Pn}5+qD?) z->Q=7qvmHk8B6W8P|Q}shtEy13!Fn}RrQC&Nt1JS-p>fUnrVE!h_pp0R-SG8LJ2vi zt#R;L0G2we!c!-kJ4Y8uHt5No0L%#^+84I4Cn=jQi%Yu6mv6)NA|4nd3vLo1R=iYN zWL%dB?O4BlwYt(WX~!gMu`k--Vp_+9_(+!??tAtXt&(inHDL!-$g6J`K<_}dnF`?n zrg4zLx+mNh>)JnGIhdp9N`g1DmGEnGu1V_aO#8Y|ZWuoXh&eb^0(;0_cWE2C5?AVT z!;JHY+7$MvY^uj%vI_l^I+rMB-^sXj|u1viA4vbCznSOER*G?dTg9nC^|W55F5}Sc*UOU4ClU5V-3> z-<(;#%uSyV@f!JdLK)n)IazP`B?KlI>06)Cx zDpjmVDdvtZ$iz|Ej)fPdcNwVA$<+>_cJVUg-5Skna%wo*1? zw_8H{RZBsNS#zlZfc_6%Py~bb=4VRTKHlk$-jVcQD2x%$tQHwTn-z4^Nw|v(=@$KYHKHxF!8;GGui`^(X3XZKJdDErgwJ z7UV^ioIr;fPxpKu>9QJ?(sMoiB>j{3nEy|C1d(ee>S&aT4wz5hTRNHEaX;f^68qP8 znEhlM>VJe+opzYNy3C!1jsg$9v?8}PpLlpG0q6HIFS*ZvGU~2>SF~(OVS(s#dIT!O z6d_b@uw^7t6n1N04N38k7zS$jGA;8 zukdyMvY-r$=BC$-0e-a?$&bFol(g~I;~Gz_M2XwcqpT!W=Ei=17h^L%;C19Bg!qE= zj4=e>PzZJ>a)`$cYsB!Gl8HWce#C=ZsFEqGV}uPkD=Xb5(@*?SxFPSwW-*M)kY@2e z%C5lqBj4EOjkTLso;*}u9h+{LpO6k6(lfA>31!8~A6yyeH}4KA%O0w_vTF0_eDo~0 z<1$?Z#bcVPmlb6lIH3Yu?BAU1h1+!H!~$_)Rzzw=)kWZ7)bA!ZtTwz2jg1e)z4F2s zy2_=o&53d4N5&OK^Nbz^Avjfm2uUpEw`nk(`zEIP&0H&5I&*I~H@%d2*f?9K*OPoD z`byUQ&#Ws~JbkPnA=<8uCnwl;E%rEJ3K{KET~tf*hUEO7JG_zF{|neW(B|L z-Z`Y4*j89Bc$OK zG7D3oD)PQD3lH=vA1nFxTRf<>H_zg?o6Ej&D-Ye3wp(^mI0#1K?50=MwMcjJvk1*PdM;M73GtOP72Y> zUuy!JpLv-5WnM*X-HXqz0a`TiMsWI~f0rYaK$KtVsTx;zlJh-a7JZkWT8uy!tOO63 zgtbfe5+!Dfb+QaS0Cyz|jkpe+bfqdD@o{fc#k0R`?gP4`P{%&KsHVL}<7?UziDmxR zA&&^7c*)uHA5~{nhsF24uayqz>dOX|X)4@p1KkQ*lpZPGTchfzwJ9hxF*pJO+wqnb z`Q1h9)RLoBXt2VXd-|%i^^02Twc}YO8nA+v(A`s6fmdU_YXUR6e%@YtopoaSG5Gb> zc&qKl&dNRIzT8WV;>auMD^e!T5nBser0!A}TXnFQn$Rt*q7*$4z7;Z(5j$WXVr|Vp z334FEhd(C0pS+BE`Ny@Hv1u&OL{olr5#R^F@DdY2E8);EETJ^gAY8{b3$H*PoR~-C z!nuhx-=?<5Sm;%5^eAn3DuX8B%C4$ZSmpN<4Q5OPpK1@Tj-!1Mm+6&mlu3U!anNKw zMOGhwhm10~*!8*=*C?JcLE#u$gnp32!7$qH{`e)nTf_80s%g9%pQGm1$Qmf~-<_Ky6UmS6HL@-9VqzI>cJNQUYC~!qm60R*!#lp^_dWuWp^0rpMCO z^8BJ&qsG&=p#$1Z=$qTUFO}tfRdjtn-#(_Z)EgL*R(IgA17~$U=OOfrs^yBiKzdco zsohtIk&omTS2iKH*4QOS^$JMgAkS39kBK{trdAu}d3%4*+cx9$E4E7eRAHvlnQK%_ z0hp7HpSQPePwC}d{Lj&D6#-oV=ZMHoUve>d(-iR=J$Hu7y(6ZYq-DbxDku>TvQJ8a z?&PkQpBlxN4M2?^vqaWLpftXIaIZd`vs<)nZ^g6OL&NFeA$|r&3{huuPf-Y?gLOTO zu>0X8Mj0wx+urwzI5KBAuR|TxJ`AnsZbiSPc8&9ZGI9*Y<`mXEO%UIL|9qGMi8{Te zUJIuH;l5b&5gfn=LY-=@T-~ z2S1*l5HY3frp8y=BGhTJQ{+GqMh-87*U!vWQ#wQkp(SHxi=f5E`9`qSdH(h-=7Mq1 zw>PdO@Yw@)b9y-1laMtAs6`VVSEvrvc7soaeR;RaS-%+;J<%mfJ1Ni2!o8Bj!kP|m ztG?BML1)D$AkIE<8?ZCZdqvK4!F^2)M4N;zhKMIjR$Q=zn0~b(>{iAm%Yt8uSc^=2a_OS%ODmfWWDKoz6qz_eqaT1 zPzp(VDL0!O9Uz?eF2;B>&1u1MhwZ8H30^s-lu7-HBBjJEdB}4~{33-x(8Ommk1->M zn8?1h-&vf|F4}m)Z z4x|^;`ov2mi8ZB07Ett369 z^Q$=iwkjo)tl)xKZ5CMsdW@M?x#DY@0N;9)1s-kbU|uG`g#12wAI^bD+g%eVQci5C z_~Y-`xW0nwrvM2@N{1&_vL5`eH(D>7Xc;aSk%&AF}bsmIJ0BHcg;W z;o8Gxl)T67BWk9_EBfNZuE$CRop`$%gQe+eQBx{wGA&88kswZw_+HnBZFs$?_| z$eC`^Kx>k=NB>I*27`)+-AYH~m#sJfEK)AFGi~!yLnyr$elv$r>fE|Ts@2DJJVIBb zi{@f)i93Yr-P8s)kG^SobCnd?$@M_?f`~IP5005V&I%WTch$}Ho%f{haGdj6gnLJf zMLBRtDe3b9h_E$;rk|K@al2oLR#=LM7C}Bs&3^u)uWGAT%d5#sMjjhjHPM$i(2u}8 zsOkfT49SPAJp%YRwCHqC>=tbkVw78l(_w?<1JQ1c=1c7c<|GW?$oyZpi-}7*RVxZq zs;Y5=<{CU{%j%M?8o40w?J2>UUIyJ#iP6S#S4*0dp^u% z_<>=DVO;hoCpL5|QDKwtE^gf_56IB@@4!-k=W+2Q*1H0!h3vPg@~~kH1T@5iagn+I z8mmO7x?f!f_MU#)8iBr?ubot?crfs>+$Dh%b{iGV_va9@?G1v=@6w|>mDhD8d*Px7 zutpn49Y4uib8536S+n!fK-Wag?#3#kIS_O&jl%OI4dTNt&f`a;QmG};Ex3o9FsMm#rM? zDyqhhJ-B9-)4nhek0~sWgA{b$DSOB;inPxT*88!^z{l zvXnuiDU4t@x6R@ODUE9dy7=^u87{NLIS`Wb|W%t-1X~pKS4V&kAEJs)oyrYkh2|y+W(=OLI;Y-u-gPR zdpwD#9zi?txdlsU72DKasB&9u4&*KM;(6=Yv?%u zyuuT3{rijC@P>B=0b(SfBv%t(0eooOD-F8%0Qd{cBk^nC;rhZ$=S5DC>s|8;A~^=j z*1p%sc6`%$UKAlG0w--85kNc3EJFBwy{8$Zm*zR}HY`NrHv8lHm#0s=EJha#{2vZT z$063DP*m|p(NFlJIhb2AEVK6a_k zW4q3sRAZz)EwU+iOwW}NN?}{pu2^|62JmHDUrQ(KFaJC9bYXclTpJ<%!DaJt#n(QG zizPZCa&bV|1+yW0J?{HrA-v>aY$?76qlBkAOP|4_z_z9b)f)_d?!#dFabA%Z{yy53 zD$FCYk`+b9!UFOxyESx(GT%a`TZ z;s*g2{j$>q*F|*4{(88ku3F)BS!@4lEwLPLQ*Z`yErH|p?0&m%2x%wF#$M0FeUnX> zd-}}*;19qtgEz=Hxt-ZK(q7ko_6`RQtyc5^D)wrLG+3t`rjAoq zLzB%aLF@HfEg_`~fst%|gD^@XqPM_@Daa@_{`ZcItf}z@=40)*ugXcoU4(=i_hsi9ywhe6+J!86}|?zSlT$RSVTK=TRgMGpIL2$?zm$!HOky)_A^V zdj^B)UN^vzZiyz9yDujL*G`c){T)fMH!1hfi3JMNITb@w?c@F3r|x7njaSL zH|zGwP1k-g`X5%Igf_)OG<4FhQ3`2ieB=BMxu#dxEOieDNM~7w$w<}>B zt=LL)ufjmMAW8q3S>m~}zG$}TUfha?u?BW?!);0pz*-b3M+bLL)G4FgTKedBrXCFS zu08Z`{CV?Y!p6o4W_H+K?~{r}!woZRlHZc01fbP&kF1Y00m^!;r$eH)5az89^?-x%V?VWmHy0l zM1KdFG52l`6nq-Ef6fHa|D^iI)YDAj8lF%hfN}>?r^vy|EY`e8uK2VRwQ<)KlBoL< zBC@ur8%G#RZ0b_O%&JZHBq=w%TxZ{3i1yYLh6WU$SNQgudIh8lbF&DZKLLjwxPs+E z2eKigZryM22I>Ng;Bn*r6nbjS`{7}l+5KW$P+S26jj3q<0E>6ZP?p)`I#mdOO&aq}R zrV+{Afj>Cyzo(&((jT&-i?zjnp;X(gc9HvY8%XUmTpx`-*=U-hP+<$(at20Ui z*-g-CZ?s4R@{0J^^$zs*!O=LJnBjr=5-c}EFI^d+E?glaxLpojXJ~-!vw~=Ein$+o zUhU=BsK4C1@&V5YG%S1L6$>O$REo*Z=aXNn)0&>@t9jlv|0C;1Ekn!%L2y+IfHN}+ zmeM}K3&07@x^ZyS77xMI6*+yvJwXlmmS4l?W@Z4F#LZLB#+cPD;nrgnUEIXBJH~Q+ z=ssnstrjg0OeGtT^3wN0Eo%$Lg>xK-mau>!A7|D?1z}T~-PC)yeTKfjq~fvDY>D+ z3$}9?3*i;DL*dbwY+JF7$ET`e<(6kh$N_{IObi6j<0MbXx2LKe08h66Gh&AnUWN3jZXk^AKZ2j4me+B5vIHcAxsATqh=?(`(~QToF^OO>4#}`+TR0KPzxxDH>vF z6)v!pt9fV@!>r#Ji5IdJO+$wucCW@EFz1M&aD@94^vnePXmq%y9GEy9aHbr6U~uud z?V_WG@-9s#PtCSh^^cEavC8sNlZzQIj=OF>^v&+ckKcGdtWsR`=-kf`_qSfER=QKH zH55~1V9o9C-!xzEmG_ihg}}EMZpWrdgLejzfl<$fSmQ?{JA`>(_vH?10rtW`T-El5 zYowQPd;e>11EReYdbfQo*b-q%vv1f-{~ujWvg&d1Z0R>5o95-!`dQQ8I)-~}$BHA~ z-DEOa%)7lLq)n_t`C`fJF@x0-)fQjEjcUaoZ!uHJ7=*;~bN(w&g&xcJxDUQM!x70} zFPyrNWV3&>*EIg-7fI%~ErB3Zv(zBi-Sp#hsie;7LSx}_p*NJmGv(QE-uFK~>=pf} zsa}n;qA&E68cms|P7VH*HQIgRw*1ol_)8%%VeI;#vTLhRC80neO_dYufUT>bdY9$u zy_I|Kco|FPmj27U!=0l__(^_&M@3IUaQ_IR=U^=gAG4O?)z@G2sEsUV7_u+j#jK`W zG$Qqg9O2O%7fABNJ|3GwL1hS-S%MpfYn>?PcMmM6jvP(j@fdQPDAa2EZz`gI> zr_bRqaX7qYpgM^XuTK3}NublfrD7`b$eR|SDXcN}Uh?7kn-x79HJtpi@EIlQVt5_H z@;IKEUA&8D76`B#uS$D_mjV^{8qwzmow6KeOeT46ixWsQsq z{0#1bRKVAV-)gKFhC5vkB{65GhpbXz>{k=--QW|+6C*rr*fHkJtUepa=w~Z@-_)kG z*od!=90lM8veX%%k&>-SbS!`TSk`|QP}Mr=M)8lQfgMX3cJkk?+RX1qnbfLE83b}% zFkgb?C%40KyucVB#jc^W?Tx{dOo7+w$l|DDU007koXIY>OE+~w-wG$rDZGAI+h;#2 z7I+PSo)5>$K_!T z&@Q6ZhW?m!*dN+ZYWHn^L1UiTRT9^iiilOfXD^GQPqDBfp+j&WbJXut#4BbT6l3)NQ~$TKvAqW z?!myBJ7d?V$#@0+DN1)pmnexU@@@Rm2e~G?Am^sBn>8hGd|nhwBWJncldxMe0f?>l z{PbXzW1IvhNIX4Q;jaE6ClCBBI-YAp4a-qKma5(55g$n(5nq2k$rE2X^JvA*8ab6o zoU?;7`jHvK1$p09z5HYE9E{TfGX|*!H1``a+DP2_>5ZAqJ^^x~zCfGH!PakP z)*CZ?@Ta%e^NN%jB{Gh1uiT+04XvN<=_a}M(H`CEv-3LK}E7$=TCASbvijfs^F z7yj{OZaPE2k9CiDzX;=?M5+s!`K)glS}cR2VBIYYDT^M%pTfzZ_-(Goo7}YyA(vp1 z7(T*TqCvYjZ%Fe1k0{F54626n8vqYNz7Noo`^rWt*@T3#xx!hjouQ=*Iv_WlW^s~e z(QIM5yVwHCL0}ZReQ&};QN#^<`RB^;1E*V05`wgWsN3T7+J^bnNq@O=YYvC zwGAxaVzW)8;D@n=@^u%k?L{M$-AX&aAs+E=ye4)pD>&<=EpWh2R^@mt%^(W{9({DJ zkD5gk&g(k&vpseP_aSbu`nDV9$6R`6^ciu9{r+j)K3#;%=Z#9`8IDr3Uxc3is{H5= zlMHmv3V1;0$g1NmF(1jMIrCAP)pGgY`r1qAs@c}nHjP@9IrA+V-*zK(aa&?H#!S!X9sLpv`1xQSbg7ZmUQs&$J^}pqf zXvyT7wq%%TlB)1E?UTKtYmL&>0vuD;$E6t2w)54@WX$3ckiEH_9r3jGXx;vpZfvv z$%=k%l#>ZGD-GFkNg$)nHTv>d&Yn@3BAl33cwJz$F^Lo^0z_Uj+fk`=eAvj0ETNa5+d zsL3}eF$z$hUy8L1P8VUyQx~s0boMFtG3}?EQCC6MApNLf9IqrjVlqBna! zTN~22+YKIK0QEFTECdT!7JVG}~_IF8oHccwunWt3e*gg#oGuuwjAk~qf){KXRdxLx)cqdgB4ev=}y%#YR4j}YJX=g zm}#bAbC#^RNPM`1@RohH3B#;9w0}4>^q>f}m!$apaJv%8Vem@5KN>7R`|rNXV!vC= z;_n_Zt~)wdn-b50EiT>Icwt`m;PTp+*87pZKsU;G2EV+1=C74R7fhqRmHmi^GM_+Q zm{oQIb)!40N{z3Zg>XSi$W1PZpv6B$axA0P?JfE z?GvjhE>xbo%k~H%VCvfIE@q?o5qfFj$(OM^{vj!^byXx3sSxx9IFRp|TL(z1YtJnPKR^u=BZ@bz=itu~) zYyF<)38DGdw1oDZK_}$c@`spMec&K>-Z^DFa(4PS{>>!py;;xyFA3DG#^h7O$s5xqP=!AC>k(XomyIJ4im zopRP?uVruV(&=2CFP)k!c9p6Qiz^kGZLq4#=8YIJ<1HFKLU1J)q1g3;bZ)SO-ww z%oe}s!j9zH|F|(dnNR>XO?oPipxot26h+eQtwMrqF5j)(oBS@SBd?h@66SGZWb0I$ z0pvw&sQ8kUZ*F`OzhLC0p2KfYELA$iA-lU%3eq6zzrtx6 zp8t*bKGs}b7Z1xt-L3e=yDIeKK&n6bDGA#uMb`Me==AEwpGM%Ycsa4EHdZO@cj*95 zpk;l?{jlwNf6J`c>*KwI(^Cq!5tKLYc=agOLfWTi^p0yEgW$mWV>mfA#2cYW0 zS8_7gaXOUz-R_ds6dxJV@iRQywjxk%D!QxMva@f_Jj;kG#<{r-_guZ2UWe=fGH&Xd zJ*{s|uc=PSfsFd~PS$0oF*exjiOw!^h+h}@t*)UR2zAJCwS)}~MF+GK?9uFnI^+2? z^JY~Vc-c*3{P=#J94?i9a?tk$k7^*{t5eC}?F}gQ;zR{!ZeIPH)Yjd62zAi~iBJXG z@!|QqL^dUKqe@*uUll1-$8a&T5pTE5ph5dcCHUSb)$_*$haOIs;}Fu#lwmx|!uR+F zwkK|o_SU1dLL@T8kdMbY+P&DpoQwdAw4~42N^$GWt~bzz|IroPw53Dq8G1{MeW{Uz z(GTIXBMpbF!r@P-rF%W^ttNl___q%9u@1uKdxq%B@9s|V)ngALzXW~v{#Ep-Y7BC$ zXbzwC)0<@>7L7g|1=;6&bI#hnC%jh1dkg3NEhqL7^!JRjEIU;79_+p_R2xSUK*2DM z?|2huKEJ3tS5hm(KW^3-ALHE@X}epr1SY)NSjdq=qzwYQ$7mcLxrfUa-RN_vxyAzPmYq!_JZkJa?iC74R4JX^x8kU`HQy?zBL)%PG%wka32NtGv@GAr z9cx^6LGfWW4*i&zT@B=2C^OP@*c8?9`az$(h4jx>_ABEy_3JGl^40%Px$fCEZI}R} zXp6Sip{9eK+{58=ySE(6%7BCoH?4QO81O&Mbfe?`kBxEP$9vZkOc8H=6}0UQ`?9K* ztk-I`jbqKpo3A?Vm|K^}2|z3imH(`5boxag)Gj(2&0K$SUe??e$9j)-TJNS5Kgfy| zuTC%O>5DV6rakNI65g`sL+n#HjHQ<|oz@FeBYqz}lBT5gP2cgt7Px)zCM}aMF(_VR)O3 zhPqgOlOWll$Oj#2z^;sE(RcA$jmVvLpf0TB3dnU)(7C zt*pSLB~w9tuN7eJyo7jLB0z%l^r+<`Smg?LDP!}3@X=O5_Vqcn8v{?#X{U+LmF64M zw^&a*eVsaIBpWs8LKP=gmC|KK-=b&=#Crw>Jgt|au;_mr?L(A_G*X9kjO^;h9>)(Z zl#`L+UaShobZ7_^L=ta#n@7~bP{V#TR}n|b!paJd_D09h9oLY^>)!z*AvJ|PTP&#e#_)U`X$w3nxx6;L*n9J<@E z8D0&*oEbUa3%B+-pqoL&yxB9uTj6ss@31GhZ(K$>ioNBQ3v-&jB>U zbf-Hg=KNBJLZSk01;3Op{+{pB-F(g4s^@n|oA#6Jy|GKHL{$$~Y_=9!w#dYR*~Lvz z+;@LaS-LTY9l5Sa5^(zv7Ni`c?60#8^s)1#B@QNYq@BdVwtZ&W#vG8XkjlSef|VdCh4#td$nzVY{P)jv3PFRIL$jFYwK#IX0T(^7a(tToQ%V1B*jq?7W$ zoRDsX;p8q+&fsG%Lp>aAJ`79^%#qb-=o_M67 z9B-hT)brb5G}Rmz?-N8z-XE4p-6aOZy=oeul=^VWT}Y~r-lx=L8u`eO})>y|j z%ot`Eey7jpdw(83kNL}AbIzP|-sklA40cc6u z9zAU^^n`J2sT7NucUnHlroNVT?=;o6s_-3cy4;Qgo&dfdvdLU+wP{h9Q#&7iUqXGh zn!r4e|Btl+fNvXodSd*u@uFls;>^XhTz~@3R@V@^L>Pr8r2^##1)iC>ShuUQN1GL1 zanw~^BClhQR=hJ(L~>67+~ww{WL;n@zO~g{ZEn=;B$T(?R}XY=LzyL{SoB%wG`oM` ztJg&|nf_Xn5lLf^U`AI{g}4z_!n`ei#MT?PYF3xTx16|MN*PE}$f2w(vs>1p_iM-* z9iOsrs0=`yNYNOOH~<8N&vB2?S5m|)#|pQ7o!igy>NItb-^$^41lotbIc$M90Aew~ zeV1ob_%2T6H`)V2;K0Fms)X54xy{ZtlV2y)LR!{|?gmJiWkIQf@NGt1P&IOf_3K3t zt!pOkJ4bMJE0f;YR#!E{91@c1ZS#igPcM5 zk=4M3=!R_ao7`AW$-{W+q7p&n9=lV@F?d)4;sU>RA$t{)wBQvTi)0Zvz>Y}7M$nqb zuH)BuV_h%Zv*v}apTC^yt!u|TE8AD`V%4l8Q?QRuQfYZB!B7XIy)+oi2#HfEmlD99 zpW2vsGbq(~t`0Tzb_zz;y`NY<@?vDYUuW~(d_3ejnJY)7m?fJ{1TGDhSi+?0CG=C| zWOvp!_Dy=K`TP=|2x!NY3Cx1pHD~I+0rueMzb2{6`9;dE!8ot@SXb^2V-wjAZ!7taDe2JtFJj4v05Z%;yu zzQuJyDF)QQ)6?>(A@&I4_f*>HQl63~zHg`X3Lk0**&-nO@!);m3%w#4;@GS!+v*~f zHn(ugN;Y;dVh?!ul___jX@AHyA`9MEG_edjX`URB)DQ(L)Gsetn5q;`(w^l{v)=PI z>8dxlW)1XQSZ5xWknBD=_Z)j{BI4@n&<9Hl>Z@~F+*zmITRzi0PF+hQENFbHl!nmx znLB-NNClxb0ruu@+DrSSo@X!WFKM{~ZMD*u1$gaIyMJsr+pShME9fxMyVpqa*rV$4 z>h1$qjq0Q)C7~{bx@vG zqHz=YCbU^Gk7aW8&B2d`SYw#;_Er>s00G_?J#7B6($l)vh|PZU;A6M7WU>8sc+4G2 z`UFq%vLodS_o4cwc^!DvY2jMN$A``{+QF&RM>nOmcJk!pWEa8hO&m9j8-ZN?4)oFG z>R8$E}Kj7u#sIio(meJ2 z7d>@pX}QSRn~0*Sbr4k)?(-$wy!uw6;PzRUQ^HbrXHUjY86hCRBnf4}*^kcIA7bnf zcX;dlZ5rn}^T;ewwz(q9{YtRT?7*H$_{6=flp;<_z!!lFcX2A8U@q_xeK~oc2B$u- zuxodYwCy&snvbf-X@4ngX@ov1HE}&W3wb}4PWM&RJ~&MfPCaqJUokU(60PR_gxy#O z8_rI@PyT&M4-c5<`+OBg9V78akgKnnOWMrB?oM7vFR2uRo|mk=cDv-Q5!J!C`)hZ} zxd;fu9i1lX?9-nOwMNJ-bD<(^13zqEZhfgWOA_-~kA)O}z-^7j4?cM$xy* zilb%R!`#73?xwUcjwWBF_ff@N<^$3q6*Aw`(v|d0w*}SJkfDDXCy`2PKqW6FQ%%N( z&WRU`%vE~+7Fo`DII&X(sw)cpLinQn_%@HvUl=zkZ+>rFf!%6Jyn`%xieLS^n-FTe zH~+)@p5|j+eh=K34Q8SShwBFz}DVe16PA>V_1bMvBXaNHB}=(|L57q6W)Z-5nMoi zrusA=)h3w!+?)=k(71WMMn<1s=tGZ&EJCmo7jk1)^SmH3NU1~#tbTcSSEGVry{YG3!N-c?@qG!Db? zv631S|Mk{R`TnieN)XZ%FcG`%vc-&85s+@SHZ*}byJg3f6Aa?#By6O zoL55RsmmAGJ=uz_6$dC3+k00i+_5fIv?h#qV$$}md@sy$kITpI@6Xi!kWb{C(v0qb z#zXpH#jBhMDAr^x0hiSbT3<8hHNvuj_dVmF?IQ0P{00H#tpS_{UFi=u-E%_p|%f*D!Fgj3NctpN($XKPIucm9{{ zU8k&?&;^7(W$Q|^fg2o?lHd1>YB0thRfa`1u zwm}XPm5MJbA`9ugAR5usHUpPV5+#!-J$3jqLUQmAKh*w9!%$V$wsTgSbb3;8&RzZZ zI)5SVytB~pEHb=?0p`$^BD<MG;szp<@}`Gsrk`cxHk_NTXKeV!Nh$NpB2()a z0_(>3{}EX>K!I!2Fo52xi%N%Usm-%rFir2$AF6+~5d@-J#}p7@!}ikC=#{NI#Ed|0 zHk6pK+X1n!t^;bVyGuX`Pz@{Y5lWvsT@Fk<^<){moJFq?yf(Shtpewn@gaF{XrYVZ zy4}f4KUJa+(1qpCh*sI@fgowky)S*&f4IoJae9RwmWaW3y!9uVWO(bvGo=m~;}-_L zA>b9xnjgFlW-;EgeT?Cg=5&iTbo8hb!sm^w(stoUp8LW0&uN-AnI{<+P3`jB4IGDc ztzL8M20Km2*qP+v|7mNk-GwX5_(hcB-N-Keda{&LS0~J;iNC)eaJkHEihnV&c3gh5 zYX(N%={6TfC|G3-GS=+Y%M`QnBx3dji)m>I!4Dj`y>|Qt&|$(YwpZ`WD~j_AA#SKm zz%A<(+-aZ#ZdsPs;>mBarj=k>F|th(63F9i8;QqDKg7t|M4P2K!~dc4&m|*4BrLoA^b@HE6dT!ud{1_M2=&V>8(yWBMD@mDkZ& z4_Qstmws7#S~xS%aPVL=HPbJCE`tzlTImrH7QY9p`7wApqEUW483P01Msva!*woPj0R#23J;(h$#3Cs-bSCvtL>a4O?%k;Cx&ToDkS?;RD3daz6WWZoamF-03l0;&6(nx4`A($ z$ML=yWkX_vJBv}JB+C$&hu-BOQ$$*V01Jmc5@#sVy^?S0%sbT!;}%u{;qh!!{p&@0 z{bv9B?qxyB*8eU$ktR1@hpcTJw@mC382-gazEEHzf-)Lo31x{LpWp7x>4rs3;Mih^ zSTB%}EU~{`+apWJ!TY|GMGa3GaJG7LcQu0U&gayK!gWhpjICw+DE6@V`$DgjVMR+e3KKG`oOI;j1Vv%wq{*vn zG(V#`wqu{LxAtFrE5-Z0$NUEe5V2mGB^^>}-g72hqyX2NGYD=B<71` zFH3X*m0Yr6emPHmqD0stypqnx)GVYrC`NzHe83g3iA&JlChw+>J{I^x zuWrZZJem2@9CpA=YGeA4kjph=n9L~~szlt3E{ys1RRk6J&ny`5tDYnxj}GJjDSOufc9Eg=-f)6^1WW1wpTpN zc2F2_$;wy3xJ_qe_Sg*z`A>!6Vs+o46g7}-UxAjFWk^7OuQ>8f@Pq$Zf%mh7)REzN zh2=qfGcT9>A(Py0Ub~Rnz17lN^l(YKuPGCIyPEh^L`%vq&)8flUfY$WGaE6g3s%(A z;sQzE0w|^kxzv+=8)-UAiLf*;=&5XBm~#goUEk5R8nN`kOb@ncp2W)Sd5qj0oD=y& z_+fHnY&1|n!zEOx|Bl_E1we8sx z6KGIc(fdV(#bw(E{RdNueij?^x9 zxV234CA#I_LGDv^ci5u3$ZmogpDj~$;bulf9#8{$u$v0!z0J;G&;CuCt^6av1J_h& zoKvu-0ij8l%C06IHrEw>UC9p*ZA~Lt;_35L-8`r@zD`}^lx5h_a+{Fkv#qqd=N++n zvson{&iPg!`LvkRAp8gRD$ox2NBNQb1p?P51Zz>V?QeP5K)auq(jJS(WU(pQ-Cs(e z?Oo`<13-Nh;F)2`wu-yGkbmu$k@Y$2lM$9+7a}$0i#V%#QfV^+`hxl@;(juMFe(WB zs3xRBI4JuWLm5AJ9%c;J!tUP^(|Qd|Xb;}7LXUs{a6W&Tkkmua{=#}{$>ophM+<{W zrj<+)GCl&xEIbe3KYBtgn90kcTZ7_aRisB)J_hJ4qXzrolt>95#syV}?pXtn0n^~( zk{Mu}w;9edZM1s!i9B8&E^N{A)BIEGgE6OhuxnL)3T|^qhd5r(C^?1O>gw{&YIKqi z8ferV{Acz+nvendFNRq#nV&{5WO}$NTN`z&YrB3z%naUpz>vt?9N4=rG~aj_She0P zc>RkBy=r$)jjgRlciHh|m1f050-dKf61$C5ZXeukE`9Z83V&FB{Kn6?w05Ns05L2_ z6_5G^EaW`{(U^GVioeSBs&CV+M0amqb2RtJx73ic6?$J>UOga1a{e-}9VWc>Dy_R# zXzd-vygCr9{p&|J09)6;X=OVROdzXw2sDGamvyy}K=F*1!N}=P`cS$lHK4l1GS25N z#rN={b6iIb66@cJ>F+P!eL-4D?eh3G1$sY`mzf_Q9k+N=8|`5nBz?If`X$D($y@lH z>~#ljj#_38bc?H%b6wT~&j`o;#mzlIyba@=LhR+oVdI%sGRS?9)_SM;ZyD10B4GJ)^>TK5?(WNPE2QK>aqI|(bV6Q zRCfC8pblcsY_>sCb0y|xnfTZ^^^z7C=q|DWcy3%+NHFtaZMNsP#FXb4!AkGHp*wlG zd~_a|PD>t`Dm=^eR@T)X!wM+kcAuQUd2Dr^J>zm`y26Uyi&6QZfHHLkeQ z3>afgpKBqh4U*LZy;f&=!EnQ8eg>Tn3-GA&XI)UGzk~l)PJzE)t~Pcv)e>QAT_t+_ zvI5`41F~eV!$8k~Muc~Wn8O?4+VnFolSB946%(g>nDV*TQk48YsmQ@nG!Ce^f#67c zt@S>YKKFI!=)%T(IZ6v(@ed^&xF^YeRG#UN@u5EpyKsw-$OgBq=BF!}A<^7+2<>Ng zK1|p<$@^oOIwnte(!5sN?b>vEJ=|E0cM4eFTEUDbubaPp(WdjtvWkAeT(T=94FeBr zW73P_XnHF zoMW@5Zl|(cmyo8ta4P+e;N-qVBW~RPT{I$sH&lq?4`coi5_J>tN%>f6KPi=trFy}356sd|DQX+7A-p)MM)o+xhS6=AqAQ3hLs(2 zDY>sQFO@0$R0_Jpn#(aU@Sy;vbcC zU)Dz+L&Mj@;hvvvAhL1QkKk!W*qQeuyOL5s^(vm|Nhs-%wvXI7W*kglUXs!F=1y4& zdeMu%=i(9I!EWk!`PvA#TEwax{np`UEeRux%IRk%>*dHr{h;K?=w#q z0zndI$I4HpDoHTGEH7N_?9uGGG3g~I$eYX`j>|p`!N%C&?^ngi8e5X!Jk8lcY^wkg z{ny;`MlJW=_NMeaVS!HW!CNA}&6pCll4GvfjI>P00Rvtdhx4sgS%NkpK>`i*g zd7Fw&)dlTzGgj?GWWiXi=%&UZo5J+U`FR+^CU_<{97v=&6QJAku0@C~O7A#4OD$P{q_dhAr!h^RtlYofU0>OU(WjAekhSlxGr^?H&&o*Mqh8O_uX14K$$`XIbH zgm86sbP^z&kl+1NQdGd@^0iLo8X`%O!V=Vqd?8ExMsUylRD(Qp39c}3s=qv49W33E-r?V2h}F6L-3QAK*%@gRuO$|#Z%bqtpCAqsSz zZ%ivuKWVU|Xxe4Z@;O`h9GwbGe68_XGwj%Ksq@|UgPql`^9bkW{l=YFFK7w;V5245 zbLSFV+pAp>;|FdnwVPCgWV=6jDvetADV|_1c?mHZ*Vy0w+@GSi|G+)B`3;QzS(t~c z`@om3sx}bzDCTGgq5Y6Pb|&P5b?|q=R%5Q9MSSDo*(=IF7bj!dMPY)68>(uY1hvA%2sf&R!PD&usmQ8TG zp^(-Ff!uCqIDkni-S4NOQ?RC)6G#|M9MHKsQug*3nBn0dof8*|O=oAggEB;osBu0< zi@?SUjfAg*%I9t8+jJmz>2=@*M@P3=lv4VJRkSu^bMVbT>?SdlJ?mIIS)%@-EASJ% zSSR_jW4%E=0O-073)@<(JsW<%%;bJ7^!)(su@4-_HoaAp%FZlb$dx_jIK!IqvPB3> z0|&W!OaBV6t0N)zS~eF8UgTevLR%pIBNG7POQgIQOw3X2%z1cJ>V?Cx4Nd%F_U|0J zC#k<~xNz?rd?y!hIQ32eU&;kBjRVeHkgji13s}sFou7Bq{|6K+Rj0;1m9KlD64N|F zeFu7=9z7=`vb@mCtr{7z+^0Q$;-bF;iV!fUhL7hKN@D#2VFww-C@Z4+J?0F-s0Y$IPT>X zi|rSsPqT^YQX+6BUxxuG8kxsCo5o_u+~G?zj?&>QK4mjv zL8h~C9x0<_{%~U&0euY*P07bl6NUd+eZnow!yKhyqWgRobXw)DZHhZeyGk}4B44^+ z&i?um#WBvG33XUC?WiB5bWkvUvGe+SvPDJ0JY`1GK#9j5$dA{}DA=RqSwd2F2(AuV zvR{sV?hm?Su-kH(m*O5-$pyGo8sjapB-HFD{FDI!mnME|^lI@dRQpWZr~UAhPb-8^ zf#)X*#mVPZnaV8iq{JqM4Bc3 za5Thd!`A4AkN9s#>p;$J@$tRgO;ntc&jaP(a~cr^ZPL|?%!q^U>%qHMze1~vM_hNf@^Vi^ed-Cic9;9M$Y_Q=B@aojReAo8VPY-i zywQNC@=pRbFAo#vjRa%(sL~K`jm)>a-S3oKDJb>>q-%q3_DY=8$j>6DTN402lK|J4 z;qvL?gDY^Xspb0-`tq|P2Ahmyh@o>8 zw{9DoAUHSi&TZQ4PNJ~zQOru8h39C^Rrhz?1oOyTHnZ}Qn)HeyKT7COD9&9bJ3;+0au_GyLoS7jNLOw*B__Ytuyr$;kNrZy$mztpY z#mwbl^jGICDl}aA1Ynoi-nQ~vN(PF3)N*6^fSwV7wtJ8x#n_qZP#w{yDX77zlb$x+ zSj^UFwKapCDc>(!&|udoB#K&2%nuSHrgBE&PgoaE{kat+E2*{-=2mX#GT%Kw+AWR$ ziTL6D!9DY(m+-q;#V3HKFR7OSFU|nHp$o(;$4?SC6N&nMSvd<~2 z)%LMWsuQ(!as(tg#KG_or(JI$0+v3{os0!|mPi%*k#eLyD3*Dl32Re&dN4Xm= zI=nY3|IOIVr?@=4jcv8f_-p`_PZq3=t>QL^gAFz-x(e2Q-d%*UM7 zg-e*mx+OyT+RhQkSw*Or+#kGqB9yK{_WL33oF_L0#HG|jEnzkxZX>~33EcgZ z49(VJYnS0ka9v|iwr#R{{fo`99SKMd+9WgYSvE ztUpg);-p^M1IVsdH--!tI?6gC-cBy;&&dVZHH?)Nz#m!n0*z$^{Z%V272qBzq}_K1 zv_&01F7UA(-X~NGU()a7SKynFC}(|;!My1rszL9s-AOnPZrwPQmMnbNKn~UofN@=& z6#ckzr!X`7g9~96wOlP&9&XxnbNUPXS`+|Yt>L!z^ovMDn#rzXg%HknSu-aDSm|om z)bhg85^dk3-KJ)yc18oCNlAW6c3M;W^RSIPlPNs zl9ApsCnlvDU&6~G)mX3BW=tG(xP>rb#euooRFwyQcRA?29y=8yZoJaVx!tG{6>A>) ztHbVWX6?rMMA`0P^4ia~u?Jz^x<`XFp?{6`Ox_9p7?T=I(ab2Rcp@wMtuAcow}blA z=x>2qD4GgbD8qJt`flDCNYxPIReQ?MmwFnrQ)@Y?0Sd=UCQ=ngb#G@+jg9f@%x3lj zAZfkIV2^=Cmva}F!D>HUzI)1Tbocxe(!+X#NYBqb=BExiEcNt-Ti^aWNj`fB5~nGi z8p?Vjs_vQ0JSsJKBym>Sq&4lZsBG4seIjrRDaDlG?rYZgYaFh-6`K#nmNlYYr2*P! z{DK-X*K%B?=O#VnettT4zki=4R_I1Nh6^t@Gos1os+*Y^y}@Dy-*?o*hH1&ARVsQT zJ1zAFmDMv7tXOk(#23!K3{%_#V=2&$m7@|6VrAVqkTZ?g{qox&!~O-*O}hBFF!wl& zn~WGoxa0EerLNOPn(jA#zP3#_9vV~xQySIa>GHhGGaGn``s`~HJFqctPU>Fm2vEt$ zP)d#-Tbykhfis$B6ej$Z*LU!1uV;D@1{FJHkkR`Uvm=F0 z7(f~DP7g$Dvt-&L>5aNzBk<(cn|yOVU`+bb%#Hb5PfB+`>9R3mStF&Yg!$`%$qDkD zGWA%e=E!Q#?_aIsIxS@sF#&#^-PzRPlS*4y3J>N5DjI&aCY?2?fIq_FI?V?B`e$#) z!t;(P)WoZ-;{Fo%*4SI@rwrP!0y)*S`vq&g#Oe@8xG7t$E!pK z-4=JtgUpMid_)cxR&!?BYB~ zUe$164Ewj4yLzJl=0Y5O$)zPkUn7{Yr1pc^RI37g=k0Udl_lml9#XVNWF{S~%0d!CKqH zV4o#qGSJFZ!ndP3GR%*S=(tseH27mZr60ea3xvKH*7s=1bX!-Upw`(y5^ z^ZFC4%Lx2XQf&FGP+wGTA(N2l`^7f-u}cBk)+>V!3p(@hA>xf{or0@V)6M~Aad=^A z2hH!)6OAX$8wE*MJF&y(6^RBFd6`Pvvq=S`!((gTcypmCL z=YfXz^aicFYd`J~5Ilw7xquHNRu&)$!qqEbRbq7#onTIR?aX@_o@_po>%^$ttiD*& zxv7NO){7sw-B_^YM5!T%a$sa8yX`RS;o{4=&pTsZU8;6AYjMl#UaQ-`))TtEcGx?9 zR!gsbz~NcrJUJD3Ud7Dn&Tv`Vh!JonIpL#_Naqo9T8gx{u*a~6!CxmWQ|~pXH>mbxyJ0X2d|{b~Rt)?7i9|0qbBp8is7*uX?WGLMnySQ&v0IKdrmc z1Qx%qIz4tqjbS5{rtBZjcdGagz8^JF|I`*Ym;TAe0KvWKa@lM4f}*c6-2FV)d{_u_ ze4Q^;^acp-Wo*D<{18L{@RqP_ds;fW@7>tDj`uAgthxCaQK)6D-4CDahas^Grar_T zlLz=6YSj*RHOh|U4xc5Ync;}B;i%!C$gaefSZ&Q}A(4%I>l)5OY1W+V_J#$ zac0Q_T}{*ul8l4wUgr3HPD`|N#VGGtsH7 zWW)Tf&`fDg#WJLzbHQH-!h&;?uQ4`$zh~ca>VVUoc9RpnydzC@UJV^EOcg6$L`xH( zFPRpLx3_XWXabhDNvLkrpW<#@QO)%%QCl%{LeN3|v0>w$w&ND87(?;4nx=DX`XcyJ zTQJvlKz)r7u3By*+tzJl;V_(?4a=*La(taB^XGRk{Vz3M-Q@}HkyCb=!TY_PGy|NJ z!kuJJ#ghvAI1*BOl)DGxN6hdbcr)gGYpCy6L-Bo~6%Vx0e1qP1)@n~8P4D1Zvlt#* z-7bc62QYK6Xt+z+(}}w?k-w_Ki@N$%=c1~`3wdYxNL31DPwyX#g-%q1u1ndFZ$&C( zo>ZIb3jUs#Z@75hHkuNWni&S-iW7VKNw^N{%(B2my&w1Gd*gvN#)hr^w72dCgc>fF z@WW4-1ylk4nrb{74#d3o&P=*|)h{>TT2I{J3@gQ{pfFwHFZYg5xJeSdR2IL`HR=~KZ%7WUXbIUZKdt&GM4c(pK!fdVy(pFX zv=)WCc@DPvR_5{Cb6_@4UO$7YQ4Tr;td9^XA0ArMrjEM|!@}`=n9}bP?Vwz4SlhkG zb03V(4>jTBbF`)E&ez9iWLbm7#OMzd{*ff0)gvu>i~d_;g~N2aW5;*Sh+@y=5%;OTL;titx{R_Y3=3?vl&v# zKOtF=?tT{-0f%T@)&x5al@^$2eAm=kE_1r8 z(qKhubO`XmkwLvGX@RiWCX4(K#}4!%3q`!1Oa1v%$*8w+_*7|#`-Su#7cw>l_fArN zTPrRm#IsHQ9+AmZbwmHbDEnH|;+N~_M8R^%84jNqw=A`#*AozVX-i6cjHku#rLDxN1YPRxGXJ;^{)H*0U8(J(o&WVjU|-X| z_=dK(g7(3uz3$3`t*kPe=WWycd8+b{13#E2M#oji4M47E8fUV5O4JJ*Jj!k#Oj023 z@3*EDOQ5}NAy^?J>i0)E@H686B_`&E#xO}FC+>xUS(q_iI#-RaYr|irg9P|RfjAw2 zL4^hJPoD5IU~kALC7SO()7BH6$0+?px_jf$1b3);V8>*3wOTS8DNQP1Qi0p-S(N^gKlked(&+j zKDHRf_Q$FT499#Tj5-rS`sR!kL|O(xAD~Oyl3~Gh1{37MCx+{z*s7mj|WW5&i~ zYt`D#HMRa#zlXAEC?af9RtF~wd&l8uw$u?@DU-SW}#B?huh5(C^dGNkllg5p6v_hg<6c~wb|&&a2tq zmHw-U`r_ns)WK~Vrge%%)h;KeAY(C!O!zY5FNy6`;1W9e3i%I>u+E+j;g{WAzO2+G zHZhRc9gX|q>tZYe9KoWwAt>`~prM(OTu62yHD0{~Gc_~(5o|axu$N7yeS9l^;J-us zZCVKe-!^k`0<$IgVD#$X zuYIQxjww+V>jZLqkK+C5d|*$lVP(YViTbfG^t{w`XMY->?}iWh;E$q;lYNc3*l<{u zbv*o<$P+j3_4BASaf1L>ehoGtG;O&8u(%?4XUZ4UHr^nwcA7<6LXv(aJwu6T@p=u+ z3Di^xxCW%#Q~`ba;8~a=vmx4VE)VZ1iwI#&jhx=Jb)|Wwcg<3FZnjFuY=q(*>3V-& zeg_xTwRD~{z3dSweNK?|^eL&vtE@lqDD4h;7kc>Cy|&D>>IWgc+qK08D@R~1xNklZ zaK^&nHrn1&!AqnMvdxT!!n7S}GYZ>DPe#?wbtL1r@Ys8tT|1mVFsOLK2w&4~dfa$6 z_dm|*{XO)rxP)Kl+ne;%I?u}}ia(rcs#Z<5L^vu|#`Q$r!hixaMCNzPIrGqGyUpN* zHbD}<5Y{dC^z*D8kfbpzFIo54x$caR{{HahR zANU4fVs;KWFR4PEeg=z22l>3nryady4kIq)7A5s6=xogo+F9SATHgPRexuemwk5jmkc6Y;mxH&E25cVJHDGb1;ug{yDV&raqk=V#OEpMs?|5R+ z1(_Os1ReD6p>MPEhBIumJ?+>h2+0bMvpD&viV{J_|q(AcmN?ndQ2t3hsfo0*{eD zmf!f9idZW|$(@IU^ya?}6If+C5o})k{n0K$h#?5|irIy)qxV>Gkt9O-PNh>CS*kt;MNs_*xJ3DlfbvXkw%XV7&6UajJ3|Ed>b6lea!uVnhd;g5 zmQI|mW1bh0*!(2`hkx5b1#q3Acl_bTT@4@!rI0!Uk5-14OC4F@F(%yUS=@SG_G;A^ zLYb=-(Wh=uE@VL*ApEvJH8a9`Abkas^u@TE*2vae;H_^>;9b_beeHq1A`!PV+&=Yb z$u8#K2^f|)|7+%3xAC|5m>a7~w&KMLuFU#X$G+g1{KlLJO1j8)*&&CS`Gmumcua~h zwa6-J_S=|}Ad%-Rv z2NfH~3r>YEt@L6>}ZvI=}vEVZ|&6wu%lgT*EuM)Y&x%2Nh zZ_u|m9(rQi({9R&c?ePW!`+k!d;dyWj{upeV#h1lU&MMdSAEs^o z`osBXCF7d7Beo@5*Uo3k4OrOlSIb4gmQg|F+a7J%%>hf$tgC;oi-eAa*bChbm`6sd zB3Z0h;+k1ey;H})PS)#u^fYWOKh&qgN!ndgEss;z6~ugDx(1+y=hX|HHW~I1|Fw(K z{*Rpo^ku~+Sy&eR@7jZLw`nh|XnID^0!eC>AKYQsuFTdT0VLe|4lFqCq3pb!B-V2? z8m`fqNUq35p>3asX03a0KO_npYbxm21`mD;5k6XbweugYLa?Pyg+^Rd5i}m2o{9bk zwarD9+?2|4Uhi?gvbfmeb}eP@o%S3Pm`5_6s$nX8&b^#jT=nmri9>XZW!`xB*!ANM zXp*-QoH+BWNbhs?<}j^ot>&`Ue;B#GJtY;@8xtb)O~M5BardyR(S9Z6d6U12;Nt#- zIPu_c5#c?CZ*F?=7U6B806*Nb*#ikbkK;F*6(aI=eyDR&5gLvkEQSC6UNR{U!nV`q;$@B`~Af89$f4- zFXBc1T!bMOD@F#&(!oBOErT7(Se+NV;4d5YR4xCl=ubb<8`)`;k_gC!=o}I57rl&v zp5#p2w0k3o^MmLs!3fLT`mye~w@XSk9|dN;B;4YWw#L#kmTaI%q~ z#Q(weStH!+!afKpcDa369V=CzX4Ir7;LE3Kb=J%NT=#KioUw<~d44l{$?!L5KA zZd8N00#?XR<8f#m{Bs(L%lAP6cFD;Ilu>k<`$?h54)Jx8TZCW#XQCpgc8e+P>b)fE zzAE?^j6uKzbo8GUB$`V!hP*HI%0GA?=ZO>yXTyYx+emXP%`Z$U7ssJZf9*ZgcX>)$IyAV&b2Gk)ldWNZ$Z< zV;zCvsU+{c8>*#6B0eGH_F~OAA4fIohj#K{O`NLnjlvlP+%JWfBS1r=QjnVB&Dzy% zGAd-N5k~eCQBcgo?``7oA;Y~H<$j$ag;Bx34rhMD^a8bHmAMI-H%Q)|C zv=n&)rJ#E(y<6-ZOPb|#ccbm0e#q}qyrA85<5f-n7{YNs{Uq+=Z z2C?(2Y@mL^$~OmZN_EQQw7aYRmeKN!TI>F;9Np2YJa_KSv7W+~RDS+efVh~m1;T2U zsAz$Z{$B;2Ua*+cVVa$CQoK_x5TQ4SMApX_+gJchp+7}M45>92o-{>?vO;{8!?A!@ z-%@{?Sa!j^T3&9lhd}zvO`7%Ma?R!Xb4+U7tLDkZUb9S_Z2}qR(S8vohrO#h_@>BE zgH)n-ZA&b8ArijhT=Iz1pp(NT;9AWM(RX;ujky6b-cQE5&dNn05V0c%?lFJ7RA2ou zP_^jgB==%&w5GIYIdqq}pg+Fl!zI9D4P=m}jYV8ye|WBP0=Z9M@Y2TRot0AYiLC7< z4hpe{#Q|_ZS3mB+9=psH{yjpigY4BHq3_*y@m;Kqn$JQnF?JO5t}f(#ZOr}$=c{vl zPVZhFaoQP_f>%_}*;13u$G7v7_c%R4PUJl)RL$tdPxFwJ0^?SU@CqIn@e;VHGp!}~6;kLn<*c4Epe>h{J`Dkj-qYkBLAwHuDWy!Tt3e61+sgEjVk1@JT0 z#DyNK6a00>_$ooADPs9IE$VcQ|3htb#;b2hbyEAu+CvsL)1~zw(J61ONqKkq=NC9q z6I+y6qM*y}db0SD0Vj0F#sQ9P_~3Mwwf5nyKez16klFqxgC4bn3kz!7%r@=R{jQ@wJdc)y*RDWt{H{4L7yYWIO<_nID7?9}k|>>`_}v?~0Or2F%#2Q0EC3 z_;jBvAy@71Pq~&vK&cJzzF+%fgieOUZ4>}yljRp2=V+#t3PqHhtP2ymuf>TQE&M=TwfCl>?Ph%avOcP%}q4u&L(O$~xxCy)_5q z#7r?4DkwM^f|=lgu0=lA&!?$5g4_xpWauWRML(V2H9J+*$5Nw#U<_9lU*GB;A~ zO>IW*vb}6Z&fOb-e=(YNCIO9-a!tceN^{n+pYdal`=x*cgFpJ9f$xPe*QOdh5=k1TYC!DyhSRgCklqPp(R;>*jJD)xO z07+n6aO&cBAB~tcB4L{0*86;X6)Xi&^~{}UEI-AVU61QFEnjF3+Rh;T7~=~ z-fHMnTDR-o&79Yd+R$I2#nWjC3i%A0I5$^{oRk};o1eTfpv*M!8Fvbse!xo7wFHQE z)V8nazL4T)l~5l=CP@TqQ8jxj;+Ryctx4ZxacXB>VgzBe3e+qeeXT+$QP%s924PML@*m%OiWFwjJtJW zuf$Y3bMtE}?9!nj@S8Jf1S7d(2Fo+=4r5HH65K1Jz|q^S-A?|Q9(9jwt%&=UK0{ty?J(VF!pS;D|&NsUxADV893bcg+! zsJnYB1f)A+udP0`f%4Wmy#$2p4qVA{ZbeS>8#gBFEB+10c}%O5!mB)P8?1+&9o zf?B)4_j8=goC3N}gt!6oRy_MfvyH_L&a`YiJydTN=o$TvwhFcayrw=d5mw}_-@^*jcm4+!HG+!_{+Mkr$Fi|@sPgeb{o=>MUKzx|SEAdf} z{!Vt~f{|c2>Ez}JZ+}WC7 zEyL%_4{kE9>S@5XYhX>OM*jj~H1qaY#e`v*<}%K9aAVuWsp~C-mi3xcBe`w;@N`;d z^mX=Sdm;5d1T5p@tU)(-6w4td+!pmOe#7Sl)X9Xxa!ko&aOCj!dRgsDP7*K59$Xgw zh8IkJE}`>isGyIkFlqSKrSEx9e9ZkWgP!g?sNHi4F)kB@<&ryNUjh^6-=pERg~hQ3 z@*@W07khH=Kom+1FD)BW^nirQG|$88)VDv10qn4|dX);Nt=L&oaQ1yqlER;Y$oW|Z zh4;EVyR|;zA@<8lZj?(<(v(0gIh~~WZDClk3C+YioOyGa|7{0JH)p@*;X6Hi$Fy91Q|KA8FgG%L0Zo2PDnrEKrh0VkE@@ z!S_bYxre#Q3~`+=hU5C1xrC_KkAm)Y9HVC@15oQ6CT4%ZGo7|w403VVbj)*{q37yo zmT$-EXzovEl{@G1l0c3#n=v}td0f)#wM+FUfk(oN`GKdAlSa$=PulqW#kSPY*r!m? z>2TgiUTbj$YRwzwh~z_fNK@zR^TLiHeA*?gA?9hVi5BRIVY#NcS$Xdn!3ROlR>je? z;>*s~diKd%O;e$zh|PA(D~EW`<9QjSLuvLV8N+ib;3IXIOzQV=s?glGVavW= z?_a7GMl$@P89mKD!(dP>zgNq(!VS!I`y)EpSm^p)c$&AsPn}KV+w-Vsm`{nTIo}8# ze4e=efhE{&QVPn-ZQ6a6pw;01R~7NtRBinET!plea>F{X;awcp&1>i6@fWGc#gv?t z=aNQ-@!!Ol&%DJ-8`3POf95Edm9;k7JzQ1^1NMsU1r{Ct8TGU|2FarLHF7_{%bKdp z3&YNq*piU0PGS89SVvNo8UFt8C(^V*FqJ@Hl%f9uIV)%T0I8a~ojc zitsX=Q&y0&KOkq)@&JFqe30to*UA;X|^k#UGIKPoanEuJkDHW%2HQw9}Dj?^T%A8;ftwU$VIH$^L?eppPO}fS6)$*&lD) z_9MB#R~2REoikQ<{>Qnb*wz_VA6COqW?~h|E;`2*1rm=lBo0abr+ctHNT*&$*(P`&ROXi z<;{U>Y-4HZV@??@!pc^Y!&?orwRJ6Pxt?`f7K`dVNaP2#%A|DVy+npEmt^8kRkQI7 zyk<3nrtv)&il@}SauqBKawt@E9vnx|ii4EP>YejsmfD#cXGNuNZqFw>mm>lnzNQf! z^k_>Xe5xivbsR&>IxefQ)=1Q8mM%mL%g9JbA7~Z64ytO#%eE~E^>BopSSc|k>;iM8 z1(^d(w*TQY(T2e7Kem6~M%co&aaCWg62r;v9quYO87Ds~Keih6EPX8eGg|ijhO*4c z4eyraFE@`eM(&>o=~7L9OY`_L)@r{uB<{iW72$PvH=j7QgBBWik#hZT_cz+Fk@Cd; z<5A>FX80J;lt(q!=Xrw~nt3PIj%S0KN!Mmf&qj5|R8~_Ob1X_njEHN^_tnbZ`lU`D zA^??1iqT91`<5n}VeiS!gSYbFvy6`bOuV)pPz_TlP0oq?bgLBYm1cNH@m<3}EHTJy z7Kt;~=XeHnTr*i@^SlBVTfEo1^u=3W5x54#etqsA6tT1uzJ8C`63ZogqK4nCW7LyL zhz$RQWG!APIMgpW6NK`mMm9ee#6Xbmje3VeEF^jmF+qskk>cyw3gLw0!dKQF_2GGs zkH0j?3Tp{lO2rs)%9MuODDm*>g{*si>KSSZXAW_0x)Dfn6s8{(8z4Xtt$*?Kg!FZ3sT&;}&U4?RZ#GHY zGll0uX5GAx3e=?G^%l%v@Q#N>Mj7%MSRlyjdx{fmGbTu2u?TZsS-$QLSFg9JWoGpE zMyg-Y(#X6GEX&~IUGYy|S%2As^1i6b#NsPe=Il>`Vph5X>MR%4^rnYu?~3B)+%Qw& z3e)*Gs)B4TYKKni`cbP_Vk!x&Mjvdxu8eVb8e$d`l*0ZH05PAdY+cB|w2ptnHd=J( zTv2q!cE{=+!PXjzzXxNVTy!9Nw=xB?YF?im3+weR8eJ52UcmF7Fc~g)vvfYgTm1H@ zk=c>=C!IcMMR3OwvThvC503-X$T`>qz5d(68pZwCbjaXL&1FYW_p3b03FHvSi)q+H z{YlBwB^&|%3Odcd7mnWb6SthYY9O+EY-oVrEJFzR#c+g@iD*uwycD(EMq>`uXa10U zHslg1I5Z??clR!N!{A1bp!76xcbeFeS_W7@nf=3<*-XMszXAIbeNX8JUNb}?^VaPT zLv2;$nrcmQy9|<0i&6hz3E@B!C|no)Zaz53qb0*z2=tZ4FYQF5&Ki_&HK}zt-v!pN zYRD@i`q#$2=m$t#k#Z6ewGoygnOHu}V4QIYE8cGE^(1o~Nm-yh6pPl+iJYn_FrglYv4wOyaNc{pzy##E( zW10k5P?#Qd=&1yphV5i+^^^(r%GHaJ-ggvH*~3-I@Xk7}y^k+a&lK)YmMp0!3&`8~ z9p)40^Qn(wbK#`RH(Nm!SEEvE3jCce^!_5cj)o0b_6TOeR8i~t2`M(L%O|>4KE(`( zAQ957KDzl?DOObvJMVzr5AbtGPaJzqT6 z+{2oLmAaMXfsWYb1PsFcq}?-*D@YQO-BSQd6tIf5UZ^4Q`SaK=j?q!>mWN6Ch9Yo( zF_BRdQcK}|*>g$ZCYSH-UKqR-#A2Ug)S;3G38JW$uju`?ZaPPb|$Sx#bT6a=4AS)|a1UdHfx_satbdrvN zuzICs3#myJ<)OVB@G%vv2WKsZcQ=p5_TJPcFDMppilD&b+dOcY^zQ?l5Q=L~5HBzl zmw$a?u%-n)YYgM|=<2!p@CSctly{#uA{JIaKC6=+Zc|7zwqxT;yhuHFT#Y~&L-nQC z6ENbuB5y^1&Zw627$#^qB=owXFhPYPa$N}lS;Wf8d%wY3p{NHq6RF^j(U85Kpo19~ z=pTq(m9PpR6YF2#Hp5>~X-KT85=w6*6W_kJ8&c#@n{^VC-=KNT)*OKm5 zR$?BxK^_s1p$+s{1bSr^6&$>oThvTM;4PMeH{QiY%=KxpS%in9FJle#=~FSybpjfJ)vNB%e6B?g?E--ltfVg_F1u zOfXPOuUguMt{fDq&GcCiqzE?X{aK+e!ykjd_2kpQ{g!pYAmHPWv?q0Q)hM6leoj?Q@71*+=h4$ zW1xR398iK}wR=i8n$8Gfy>?9mVov+2(MCO^TUTb^E5olrgQV1hY}$u@{GvD=xEUBS z+cf<7Qdy8xekbW3&Q~8@T8`#bR<^++IX-_p+Yqdt7$`J2a207lQV>0LYhPpMTdK;A&m+%V8yco(pSFawe9`U>Smi@sFipB3^qerzi zz4wZA=u0Q<`oW&}x#I$kX2cqrFQI!ZBtG#uvBuR$BzZLGIDOzKY;$-NN^O0dn;k{< zyLFyy<%3LS`!KY!wc4vbr`}Q8a1(wN_o&(jqHacNKiv>NnAM60X6{jGh-mPGD2oB{ zdBEWC$tUk4`V$4HYWgvL%}bc3D?TP>6bshNFjmU7eILn2W(=a^e}iD;$hXr~e_t1gi}D2? zN*0Ysezfu3=IGH<5+_}2w$QK1g>3CMB4Nns`cxxuJFhaX%<>3I;&1Nu)4%R*iIX*A zlRrw8a?jPZe;X|ih=Z7)em-DXx)fe)@~}qRRLa#R4dtG%v4%BsWVXjw8VVB*=L??` z<^)L5n_xSCZig@T>iZ*qB*?Y#L-x$uRQ0vTZ_Ds0igCwu4+({wA~*Lny6hyFMvT90K6C=Vpq!K% z9S9d#^=||~t=~TktG^RnxpF!}5x=owm$3QOFc{iGgdfSeliTVwAkms9Nv%yaw#A2` zUY@IC8wm4ri?)RM5!%0YS3}5ij;$uX9UeiO6Hm(kF)aYX)dn+LSZ!pm0#blrY3!;P zlRRW8pALRz6D2vUnjp?9_Q$Ho`*z=m2imo5Z3TUzaeZ1#Y|;XQM#SP$FUUA9{zerQOPXMB3<*a1%=KNA!C_6*r{v0R%70q~fMl$gMh6MUaSnO4vYzyQ zaiLnAO3(5LmhT0B=;MT|>4esPSG=+nlgp!imN+NNY=V-HG%iQ3nr&H5vWJUK`(p+6 z%@u&>+|_WTN7e0@E`uUn6{(ukHi`wz@nMc9@sgP7C%kOMf<1J-{mGUsZ1JlUdfTKi zmHV?%YC;fY-bJ(kmU^!u;8HkU7hHW-I*hO1&IO<-;sIshbnRe4VuVofg4bAPu>T;zMDqNPDr0%0JEWOf=P5Dbp@P;I4X$ z)&{R~E#EqcHDv9SwO(4u@q3D#XlkD@>+RbCu|*00a-uI)VqPfR6yrCP(JE4XlQ47% ze*^!Ma#3Bn{tAh9xBYd$cob`kaT%%|863&3q4AalhcxobHil)NND3O|TJS7A{5m9! zg8}gO))?D7InGLJG%s}^u67F^@S20?jTV=k{$ZTLF**1Q{q+{ALTS%H{4ZlDw^T^Gy+L_;vD|UX9piA8-3x3f~_0iDnJI4xe_0RNMwJgH*+9>BF&Dqqt|-LmM=F zGT0Z=D>MDZdSCVbr@O?)8Y|pRyamRJMrhc)5EpzP6Luu^Y?jJrVVDzXG8WrMnDkGj3lK||C|f~+*~C*R6exUH|F zuS@REfcPG3R^}&Pc)BoE@}1;Y9)L2ve`JI;ZNCSL;eHi}PJFMLy<;U2AVn5WF2ZP| zHw-Kv^M1xxk|z)|=CXu7}+YM;}HZrrShYv(AL`24!R~Go#V`7kW#M_2^y}%EVPO#^&r=en`~B9gMa(w{g@) zZ1y~&aQyr;FZrzFCP>{g4m~}!I_&G>dP_QJFF~X2hTD)!GuvS8QWLllU}FtkGr1$1 zwm6+6VANZn$*GU*Xre55)Le4eq8Y%g^O|>R!4FO5g?@OdnYWcYCJ+}-!E!#R7e*GW zzyHV927H12M(yfev>ufvSdJBAIa~9VSJ?)7bOA=<%}Tru)JG(cBpuh*SY2kwqb@jn zvx2r6o;&miNjYPFkC1Y=+O9`&#Ucw)wIru!=8RNL_k{3KCGG53j32u$i1LS5k<^2- zu2DcUZJS3)#SSm>>43i&hW)bg5oYK*aVA?71k{2DJx#Ff@of1&}zx0~(?DjU^+yI^krM;F_}zGcUuwPF?DF z2O0Y0UF;tcZSq%cX{Zui^W@E9qXtHS7ln)3`|RBRb><)j^ujR-W!K<~J*d9nog!$m zu1%hb2l7%E1cSNn@817w7GwR8z82A5gaPhqhN}@jz&#$C5fJzoE~iIRD=`UQz7T- z*-DwYx3goHo7Dw+!*t7PI2^e4YbErf>3_qOj~WcR zr#)5E#=B4jO(aZoW+J_;leDf3tIm33$|Gu{H2zsA5od$2n`D&V~}x z`^Ei~{b^Bk-J3ermG*_yXL);9VW3)}C}zZ->%Iw^R!-vRK#vz(K%B-p)KKjX+{7I% zf1wABitdM=B(QC?DbGKaw=IVF-G8((o(g`0}`jiFo8nLv`*=PIqYX>A{a^zhMuj_zcU# zgxFf_Acx`aI7G)f&C3Pkl8Ld;op7c>3ZWb<266Iger&RgW8$SF^h)^1kLhnkX;>jb z-R+mQih14yci~H{8?r4p9o0_|g?mzhhQ-&D=O%TaaHUR6Lv+7kk6(37jQ)RbI5?5_ zP{W=1RH-!Xu!8tPwDqw!eEYjrG{#Rxqw_38?xw3(vA^%A@V%YGhGt@dNlDGe!K?@* zf;vJNgIs8ZzfeE4>I=7zldAvwvNS2<$Nj_XDf(%_`9$(X;5Wa>3UHCYJP~JYI*YVx zPYLiE9hP#*JBtcWURasD^O+E0m>LZ>!^+{P622;PhOWR9bqBo4CA|lW9EJQQ#43-P zfy`l1xb22_p~IhS4p$i{h1v~?8n^`IH-CJR0{)h2cXdL~p*94bi3czSS^X7d-{{WyP#6 zkCu23e=tQoVEbBq^i+Y*l>&OEZKy?cN6>P@_qXpkb+yfYwG>AM{+Ts=*1UD(*= z3c6$1ONElfnM$Po2gwM{AI84)RqseHIWXBUijidEGQ!{uT@RODtGx9C-p}WkB_I3d z?NGL`Xv!sg&y_Ue41~xjB(|QJIrQ(l!dojzE?e`Gj^HztKdSu0JZz*H6O=26|#3pDQ>B4S=)%|pS%=02vqwM<*rT(VA~Qa zLu>nwo3A@d28jZ7c7?)|oirYDK19UwLI&nn_4~mPISiZn2qK zvhoSC{iB5KwsE;K53ALMGOgd}IHLxG`W$%5Gyvqej#9KOKa=DC;H_Ax-4C)(1?ZpS zENx`|NAaIw5cQzOdRQeurPgaHx;%OQdn@vQ-C-OJen?v4*u?phRxw8^b%QWV$ z?pM=)y}bd^yU0gMNrdaayDrjwC@TExx{KnVVUod%qG;OA{qf)FJW#t@Y7p4rxlrPRTmR2&ZvF<3`XvnroC0hRg3*b1^R zFVjIm7={1lp(q@z?qPbyfK)%Ms)1MvP-ITCnH}9#xtSZb zbc6D^nscBnHsi2X9?fjg)+P{FQI+T0r$O)_zlX0&JHH@6!_F7NT1kp>h8wYwdIz}~ zcMLUuXE>gPc;Cp&c~0s_nCu+6IiLM;R6NLXNbmouo&%{R1`~RM?E@l~sd3LlpYf3` zI*D(V0Ir^MS71sDGnP-j`qdGGHN>Jlb4@W4 zjbNUv-uGKc`5OK|o`B;NO#M4T_msreUZF48QiC6&_cQ&Cf1KF~`D&c8T#2JH&3Ke!wIK;@Dd^g0Q;6a2kSgnlq@D&p|=y|<#7$MG`w z;)+d%0uJ$yPQ*310B3WX_nU^5(RDznTL3PsH*A_jfaFE!mc%=FtbS;^4$LMOG5p;+ zVVo-1bE0_6DsMSA+sTEmV`o>o`Wz;gXS zO5hqKVXTdd76ChgjrAAb1U$EIoP7VIm>SmEUJt_h)h%0R8H&svH*S0T7-xjP2@|6C z*7}@UAmia9W8RYcCxlVKMtISMav$Z?=h*V?4jqaGWBWc^61RBu{~s@!nSu7TPx9Bg z(@QM{OZhgN`>1p2XIU06^L1R4{0La!z5R->Ch)uC&)iaD;tm=u3!-iwNliQ0<7co8 z{?vJQQ|lA`HCVV;&oMhCo@{WV4JFkS$P-w($bDXJ0bnt=*c!+*gJJ*wb9`L2(+-U&;xleyxxqORv3Dj;F^S5tx zZHldb<>_K}>fhDLFJnL>$A4T`PvcmM?Z3EUpIV~7~b*^6+lGG zpnS<&eSn)`H{@J^z>JDQh2 ziQ6g!uvH7ULk?5Jf+KleaS4hf33XZiELQMtH|`aTmZ^Z5Wi&{lH#a$aKCdCW!DHuT zaqX!Gd1HvbqUXN}!+H}vhf|}>?EM&DfM$MW<1D%8z4s2ve_Vt@r!>HW#$ZwcfHg5x zE)4WV`<~Mi+&S4cBpVD=)~A@+;9}z7bz$ptgmqKjd7y63S7_rUPr~2CX{lfLf9d;t zk(fPRMY#-9BG2N7LIQi zLRt#IDX7^?J~Ek32?$zEXc@gsgs&meb`O}jFmxu9-;tJ${qKkP-qRplLE(ML1hA&* zSj(!^t~o0vv~V&qSuqH?eV0WV<^J!FDQU_l`}Qrtqzkx0!C)mb`_G5N0}?jl60f{1 znldQd+7cBaT|(14gF@$MKN^8)(OwD&ao76?!&XQh=P=j4@5?1 z%btccd3Q&+#ee2$C1Xw_wyn5T`+uA3+A>(_^X*A`vYt9W)4GrUk^my6`6dWdaHQbn zw(U6gjA;K#_sg+fyLb(w%bT5#T8*y-uvm0AerUN!0pGy+qTkzLrSkmxa{te9@mN4|inC7m+^o+~qm&6_%;*ntyKL&T>f!h4dTJJNN2)+Fmnmm*KqD zXcY6T6#{eCV8m#1I?PRK8EoT%)9vAt#kzRk);R}b-%W8Xyzw`5B!!{ms2g-%YDIhpdOzm24Q6jo+{tpWyhw6-J7Ryj*(Z|^xkrBcZ_cUT>Qqr z8}0QGekNMvmG2C+9aYoeQT_8Q+)OjB{#n!#QG*^bfZ?~5Vc3{t{XwO<9Z}r_xuwYc zC;#;_b#Y1KVW}<37BYXx=)S7R_=YR!241l8EBN(L08#V%E7dZ@?|ghpv(1lUvy(QP zx@q5JK0LVHe`~mUL8uY1E7x?WY@VH=>RTvh@d>h9=6Gv`D%Y^`&w6W!WT#`d+(u8X z>e!G#dmlhqpV$*a@f4o5m>LN9s(+>yC=9Ua2-ASC26P(AXmQ9dB&CM zE%An6@=wMY8Zdnz*J!ik{luYb6DS`NIVV;?K`Q(aw0&Iix$aJgDZxDRf|$r)?`2>B z6I>vm8-1ONs2exWUZ=GPp=*+YFj!XNS6M(?cR|w zKKyMs|Ko*(1PI*m08}Q|3`(W>HfGDXP>jP+1>$t!W$xxHg`1glnmJ4H)b7Jo`icAA z*LLyCSq%%}2jP`=gv1<8Fp0RGVy_Lwr*6P@wTU`&CB_g9GY|;W6Ut|%gvf9lwSz|1qSO#3%Sxi$b_H}9HUE!Xb@ZzjO+cusEuc-Y>dZ9}u zSgz^|9eh4GIYF^PnqdHPRc&;$l?QLUEf?QF#&aN=UFG=c8MC-qR zA+E7zn&A%N;=ujOi~qDR+`FX~hadS1Q#;Sv1~(oy7<(s^8+s(vjJSNlx8Z2fw(vBd zLUeh#?FEB5bOxT%X9ykKR>W{n5c>H$QUn7&`tJ^;kxq^+BRr&j`!W+txbCN`Dyn}l zf9U8;sJ^?pNJeqiL48H83cX;(2yb2!@Vr6fL{vYV`VcxOX}0rAK1ez_v*;9+F!44= zFWI#1zw>KtG3z`Yi@0!Nny(QFY0r?T?iSPC{w~q5=~_+P81hDm$*+K6W%1#6@4 zC?-@6zzhuz@!NO&EY9{^)%#g2r3ijOJRUyi%#HVT5olT;s?=kpNNnn|9j@?_or8u+ z(OPYt$i|_nMf@%cqQ#pK>S5XcUcd7uYD?Nr)rjYzO8Z-6ljkh1*t}OHk(ZKbcnpLd zEcb<&Ee7>E@$Tl!X0L`pI02mgp5YN}UwPZ?$36{M=xOZN_f`4RcPe}KxofW%B#8Bm zCIPGg_ZfkWiwgfK*<|C2Y>~_=0?I6VZ=o-}DrAay^bLS#nce!WGYLWhAGomiGKGg{ z9T6E)Eqw9pBuLt};QWyJFgRdon=198{O6aQ;hV5+)7cI6_@MRHaO;zfN$wR}!flIf z1C~l~;U3QO!#9a?C_kl%k$3w~;d&snoD+;WElm~9C~h=U_%pv)@@`1sP>*0R$mc?R zNyjIgWP(ESdS3{R!RZ%)G}=%q=Wz8}cbHf?h5L!u#a9x)3d@@iq)hcSAhmC!XiwUaLlL`_m4mR$ zK95(8qgd2^10Ow?P}clHLESDfuusS7M~bL*^qplA4Y?K0?c8>$HsL{i{+M{06Vvef zKV74Gb;U?NNZDC->3pl^-(KfFH0Otz-Vc8CQh4EMVa%MB6CDv;9E>Wy8MUdB4^1@r z@o{Bhos!?8AQ_z+bS(9yp@;LYdnEet-4Udm>@TA9=bc8_8rd;JD7>r)&Nd=f#@NZ? zhnkd*3UgzK?=%AEGsMlTK)Tju5|65|GN?XTvY6UpPY)Js<_GL~(r={;B0ax57;{H~ z2maG}==#H+no+57A-H^Jt5#zI@ATwGO@O4lF{s0;Gu#Z+Z{K8NhU(eeZrsqn-ze#= ziR&PI+lyHd9#X8K>7n*~mN~|!#>e2-8Sj&>A5(b#vm=Ubcxvud!_UUyKM{^nSdH!| zE)Sa<-ny3n-DYyBe~16+%-rd4*$b7B;GMR74!V@1s@-!49=T4u~?n*;F*u0)CVJLbC zMP|KRvDh8KTBZtyJQclt;$XriyaM9E8ae~cz`Ef_8OMMBB1=D4ug?a!waC$SZ09ip-K(| zQ})o!1kI!!p{H)(mzsC%E`}+K0USeAHZDN8cYwY#!$zL7NaW7>eTa49IqmW*9amvS z^WYq>bK{1cef&LUGyEtx*L~vx?= zu1l;>hS!Req~KjOmys`_8*@vzjjI41>%0a}#GYDI>&{;J9^p%t#AkoV4A()&1+p>V z-|hWi+cXTwp;|*5n;9woP7qE9Kx%LR)3n~`oei+nfpL2s-Wjjg!x1|SYyvC7&cKAx zb-YBftNGvG|1*Cd`Zn2$!zzZN=uIMx3-27?{p+ec=UElFzq?ibZPKr4%~eeZ4_yg6 zl69CIX|g#E7l-&)t2C;Ub0lR_K19ntk?@T^Z0a^=5zy6?tYl*c!X>P%%qoe0SCl#Q zP#I$&^I*{$!fyj%r1X|U6)0+72w1Z`GYAa3WE2v39UoKX#C73(ZGMw=bJfou zd#qxBb{}?s36`#bWjCa5h{$&T>v!$z1VDG-T)%w{7siYKfM1z>_bd8I8CDHr@~xTg zppq~8{;&1+KgIHA{nH$0A=Bd(4f&j?=@plB_)Pth|4jDgHhaxKYMZ$p))tv8B?#iC z@Y$u!bDuaUln+C=IXrT1v#>vdU;ETYy3s5X^{9Wj(7T@;jTmK0eF^YM`N;oKMk2Sr z8%zk?>IbxTC&h`AfD%+kP_ss9nfJ#5$XR!W-(&21&uSc7BX6vk`Z@svS`dTdkkSXC z9JBJF*jnZ}DDP>6W`WcP5Vzg%d%8fWcU-CnYl;muviKuay#3rpefU)3QyEksuRs+D>$Lsh; z)1;3jYz`XJ`a`2$cCA|@l9QTb^o92PtK|i$2AJGFG};}i{}&S4Kn>WQ_<6RL;U7%# z;Oo4s#ltkw8Tu;qMFCsWVVL1p3KIIjr%hPcK97L)y7#Xk_N@Q@_8V|k4sFXgWuV`Y z$QuJktUu`&%}lD0b#K?vG&bM1BIvjvz^6^tE{YZuMFl13*k0m+VN#^(0Z7>&hdr5lUc2T;fZFk>17shQ_*d*jC`drv#;nGvn0a4qG1#+2=j!x9R zR^P_nu3Dwr^CXyY>d+Zr1hs(uwA*-pYGFJ!?00>}x3Q@n&sC2Y3AHdu6B#D~S`)4H zO~?^(ZY%&2KK-djl{esz4yqlJ9zVXZIq46|UgO9|Wkg(_Uw=eMMEnf$ABu{tEYYFJqg;JbIt(n>}2Q5Nb$ zcgE&`?fzz;N1w3i3!inTuVFeuWmT<(ul16fzII}NM(@=WTsr%Zr8Fs?yl{{$z^DtE z*|DIPn6f5A4A0`>v7)mV!}Ng=D>3}AOGRo~2_hJX2etzMzX^opyc)^&zP$@Ku?@XR zQ42cT4?B^+96Vf@tkak=2sL!}E96PCZ!5ZxJ#NkuNsg3A#-x0ZL1OSohCWZD~Wdz0dY(ZB2c1 z;&J=>Zem|Xec1ZuUGC(9^`(q1; zq5YmfR-Cvw>9?q?<%?jQyE0YVVff#Q>P2fbd_chmWf|Nsv8ZjOj`*wMXu&M{jIuw* zSk@I%H`l%Qhcc+K87g?W(I8}gu{bgx$rOe#*>Hh->tDxur literal 0 HcmV?d00001 diff --git a/Note/images/screenshot-05.png b/Note/images/screenshot-05.png new file mode 100755 index 0000000000000000000000000000000000000000..e79e9f55b8c69410d739ed9f63b8c85eec58f6d9 GIT binary patch literal 17222 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 F{x6X!_5}a{ literal 0 HcmV?d00001 diff --git a/Note/virtmanager.org b/Note/virtmanager.org new file mode 100644 index 0000000..0dc926f --- /dev/null +++ b/Note/virtmanager.org @@ -0,0 +1,66 @@ +#+TITLE: Virt-Manager Configuration + +* Installation +#+begin_src shell + +#+end_src + +* Config +** =/etc/libvirt/libvirtd.conf= +sudo vim /etc/libvirt/libvirtd.conf + +find each of these in the file, or add them if they are not there: + +#unix_sock_group = "libvirt" +#unix_sock_rw_perms = "0770" + + +#log_filters="1:qemu" +#log_outputs="1:file:/var/log/libvirt/libvirtd.log" + +change to: + +unix_sock_group = "libvirt" +unix_sock_rw_perms = "0770" + +log_filters="1:qemu" +log_outputs="1:file:/var/log/libvirt/libvirtd.log" + +if it is not in the file, simply add it. If it is not commented out with #, then just leave it as it is and exit the file. + +Now run the following commands: + +sudo usermod -a -G libvirt $(whoami) +sudo systemctl start libvirtd +sudo systemctl enable libvirtd + + +** QEMU configuration +edit: + +sudo nano /etc/libvirt/qemu.conf + +find: + +#user = "root" +#group = "root" + +change to: + +user = "YOUR USERNAME" +group = "YOUR USERNAME" + +Restart Libvirt: + +sudo systemctl restart libvirtd + +sudo usermod -a -G kvm "YOUR USERNAME" +sudo usermod -a -G libvirt "YOUR USERNAME" + +** Network Default Switch +sudo virsh net-autostart default +sudo virsh net-start default + +** 성능향상팁 +drive는 raw, virtio, cache 모드는 writeback +network => virtio diff --git a/README.org b/README.org deleted file mode 100644 index 243b38c..0000000 --- a/README.org +++ /dev/null @@ -1 +0,0 @@ -First Init diff --git a/scripts/hyperv_mount_settings.sh b/scripts/hyperv_mount_settings.sh new file mode 100755 index 0000000..b4ca49b --- /dev/null +++ b/scripts/hyperv_mount_settings.sh @@ -0,0 +1,23 @@ +#!/bin/sh + +echo "====================================" +echo "Share Directory Mount?(y/N)?" +echo ${whoami} +read val +if [ "${val}" == "" ]; then + val="N" +fi + +if [ "${val}" == "y" ];then + echo "address(ex://192.168.1.144/d)?" + read addr + echo "user(ex:JaeUs-HV)?" + read user + echo "password?" + read pass + echo "mount point(ex:/home/jaeus/mnt)?" + read mpoint + + sudo echo "${addr} ${mpoint} cifs _netdev,nofail,username=${user},password=${pass},uid=jaeus,gid=jaeus 0 0" >> /etc/fstab +fi + diff --git a/scripts/init_script_arcolinux.sh b/scripts/init_script_arcolinux.sh new file mode 100755 index 0000000..f1b6778 --- /dev/null +++ b/scripts/init_script_arcolinux.sh @@ -0,0 +1,56 @@ +#!/bin/sh + +sudo pacman -S betterlockscreen +sudo pacman -Syu --noconfirm + +git clone https://github.com/JaeYoo-Im/myDots ~/.dotfiles +paru -S stow zsh-autosuggestions-git alacritty trayer --noconfirm +/usr/share/oh-my-zsh/tools/install.sh +rm ~/.zshrc ~/.bashrc ~/.xmonad/xmonad.hs +cd ~/.dotfiles +stow . + +# neovim +paru -S neovim --noconfirm +sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ + https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' + +nvim +PlugInstall +q +q + +# git config +git config --global user.name "JaeYoo-Im" +git config --global user.email "cpu3792@gmail.com" + +# tmux +paru -S tmux --noconfirm +git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm + +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/scripts/install_plugins.sh +TMUX_PLUGIN_MANAGER_PATH=~/.config/tmux/plugins/tpm ~/.tmux/plugins/tpm/bin/update_plugins all + +# Dynamic wallpaper +paru -S cronie --noconfirm +git clone https://github.com/adi1090x/dynamic-wallpaper.git ~/dynamic-wallpaper +cd dynamic-wallpaper +./install.sh + +# font +paru -S ttf-fira-code ttf-nanum nerd-fonts-mononoki --noconfirm + +# hangul +paru -S fcitx-hangul fcitx-configtool --noconfirm + +# enpass +paru -S enpass --noconfirm + +paru -S green-tunnel --noconfirm + +#emacs +paru -S ripgrep emacs --noconfirm +paru -S auctex texlive-most texlive-lang --noconfirm + +#seafile +paru -S seadrive-gui --noconfirm + +# etc +paru -S figlet --noconfirm diff --git a/scripts/init_script_hyperv.sh b/scripts/init_script_hyperv.sh new file mode 100755 index 0000000..8960fe2 --- /dev/null +++ b/scripts/init_script_hyperv.sh @@ -0,0 +1,15 @@ +#!/bin/sh +paru -S hyperv --noconfirm + +sudo systemctl enable hv_fcopy_daemon.service +sudo systemctl enable hv_kvp_daemon.service +sudo systemctl enable hv_vss_daemon.service + +git clone https://github.com/Microsoft/linux-vm-tools +cd linux-vm-tools/arch +./makepkg.sh +sudo ./install-config.sh + +echo "type ""Set-VM -VMName Arch-HV -EnhancedSessionTransportType HvSocket"" in powershell" + +echo xmonad >> ~/.xinitrc diff --git a/scripts/set_proxy.sh b/scripts/set_proxy.sh new file mode 100755 index 0000000..00c4164 --- /dev/null +++ b/scripts/set_proxy.sh @@ -0,0 +1,39 @@ + +echo "====================================" +echo "Proxy Setting enable(y/N)?" +read val + +if [ "${val}" == "" ]; then + echo $val +fi + +if [ "${val}" == "y" ];then + echo "address(ex:192.168.1.168)?" + read ip + echo "port(ex:3128)" + read port + proxy_addr="http://${ip}:${port}" + echo proxy address is $proxy_addr + + # zsh + echo export http_proxy=$proxy_addr >> ~/.zshrc + echo export HTTP_PROXY=$proxy_addr >> ~/.zshrc + echo export https_proxy=$proxy_addr >> ~/.zshrc + echo export HTTPS_PROXY=$proxy_addr >> ~/.zshrc + echo export ftp_proxy=$proxy_addr >> ~/.zshrc + echo export FTP_PROXY=$proxy_addr >> ~/.zshrc + echo export rsync_proxy=$proxy_addr >> ~/.zshrc + echo export RSYNC_PROXY=$proxy_addr >> ~/.zshrc + + #sudo + echo "Defaults env_keep += \"*_proxy *_PROXY\"" > ./05_proxy + sudo mv 05_proxy /etc/sudoers.d + sudo chown root:root /etc/sudoers.d/05_proxy + + #git + git config --global http.proxy $proxy_addr + git config --global https.proxy $proxy_addr +fi + + +