From 49bae9bd799e075b4bc3aba2434e2e5f3ebf7c45 Mon Sep 17 00:00:00 2001 From: "rick.chan" Date: Thu, 27 Jun 2024 00:04:00 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E9=83=A8=E5=88=86=E8=B5=84?= =?UTF-8?q?=E6=96=99=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: rick.chan --- .../LubanCat2/LubanCat2_Linux_Lite_配置.md | 236 ++++++++++++++++++ .../img/LubanCat2_Linux_Lite_配置/logo.bmp | Bin 0 -> 1843254 bytes Software/Applications/GDB/GDB_的使用.md | 2 + .../Qt/Embedded/Qt_Embedded_说明.md | 19 ++ 4 files changed, 257 insertions(+) create mode 100644 Ecology/LubanCat2/LubanCat2_Linux_Lite_配置.md create mode 100644 Ecology/LubanCat2/img/LubanCat2_Linux_Lite_配置/logo.bmp diff --git a/Ecology/LubanCat2/LubanCat2_Linux_Lite_配置.md b/Ecology/LubanCat2/LubanCat2_Linux_Lite_配置.md new file mode 100644 index 0000000..34f325e --- /dev/null +++ b/Ecology/LubanCat2/LubanCat2_Linux_Lite_配置.md @@ -0,0 +1,236 @@ +# LubanCat2 Linux Lite 配置 + +```bash +sudo touch usb0.network +sudo vim usb0.network +``` + +```usb0.network +[Match] +Name=usb0 + +[Network] +Address=192.168.137.2/24 +Gateway=192.168.137.1 +DNS=114.114.114.114 +``` + +```bash +sudo systemctl enable systemd-networkd +sudo systemctl disable NetworkManager +vim ~/.bashrc +``` + +```bashrc +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +case $- in + *i*) ;; + *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in + xterm-color|*-256color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +#force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then + if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then + # We have color support; assume it's compliant with Ecma-48 + # (ISO/IEC-6429). (Lack of such support is extremely rare, and such + # a case would tend to support setf rather than setaf.) + color_prompt=yes + else + color_prompt= + fi +fi + +if [ "$color_prompt" = yes ]; then + PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else + PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" + ;; +*) + ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then + test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" + alias ls='ls --color=auto' + alias dir='dir --color=auto' + alias vdir='vdir --color=auto' + + alias grep='grep --color=auto' + alias fgrep='fgrep --color=auto' + alias egrep='egrep --color=auto' +fi + +# colored GCC warnings and errors +#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# some more ls aliases +alias ll='ls -alF' +alias la='ls -A' +alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then + if [ -f /usr/share/bash-completion/bash_completion ]; then + . /usr/share/bash-completion/bash_completion + elif [ -f /etc/bash_completion ]; then + . /etc/bash_completion + fi +fi + +# Codespaces bash prompt theme +__bash_prompt() { + PS1='${debian_chroot:+($debian_chroot)}\[\033[00m\][\[\033[0;32m\]\u\[\033[00m\]:\[\033[1;31m\]\h\[\033[00m\]] \[\033[1;34m\]\W\[\033[00m\]\$ ' + unset -f __bash_prompt +} +__bash_prompt +export PROMPT_DIRTRIM=4 + +export GOPATH=/home/cat/go +# export GOPATH=/root/go +export GOBIN=$GOPATH/bin +export PATH=$GOBIN:/go/bin/:$PATH +``` + +```bash +cd /boot/ +sudo ln -sf dtb/rk3568-lubancat-2io.dtb rk-kernel.dtb +cd /boot/uEnv/ +sudo ln -sf uEnvLubanCat2IO.txt uEnv.txt + +ssh-keygen +touch ~/.ssh/authorized_keys +su +ssh-keygen +touch ~/.ssh/authorized_keys +``` + +```authorized_keys +ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBBcDkSuBJ+MYBB/b48FMSSWbsnHMHX4/Al94pINz9g2rR1wA5i+0uFNZRIkRNMkiwaRGeWHnL9GYQD44MHh5gjg= cy187@LAPTOP-I7CCLQLD + +``` + +![Logo](./img/LubanCat2_Linux_Lite_配置/logo.bmp) + +```bash +# 关闭/恢复图形显示器虚拟终端字符登录界面。 +sudo systemctl mask getty@tty1.service +sudo systemctl unmask getty@tty1.service + +su root +tar -xvf go1.22.4.linux-arm64.tar.gz +mkdir ~/go +mv go / +go env -w GO111MODULE=on +go env -w GOPROXY=https://goproxy.cn + +go install github.com/ramya-rao-a/go-outline@latest +go install github.com/go-delve/delve/cmd/dlv@latest +go install github.com/mdempsky/gocode@latest +go install github.com/uudashr/gopkgs/v2/cmd/gopkgs@latest +go install github.com/rogpeppe/godef@latest +go install github.com/sqs/goreturns@latest +go install github.com/cweill/gotests/gotests@latest +go install github.com/fatih/gomodifytags@latest +go install github.com/josharian/impl@latest +go install github.com/haya14busa/goplay/cmd/goplay@latest +go install honnef.co/go/tools/cmd/staticcheck@latest +go install golang.org/x/tools/gopls@latest +go install golang.org/x/tools/cmd/godoc@latest +go install golang.org/x/tools/cmd/goimports@latest +``` + +```bash +sudo apt install qt5-qmake qtbase5-dev qtbase5-dev-tools qt5dxcb-plugin qtchooser qtltools qtdeclarative5-dev qtdeclarative5-dev-tools qtdeclarative5-doc qtmultimedia5-doc qtconnectivity5-dev qtconnectivity5-doc qtgstreamer-plugins-qt5 qtgstreamer-doc qtlocation5-dev qtlocation5-doc qtquickcontrols2-5-dev qtquickcontrols2-5-doc qtscript5-dev qtscript5-doc qtvirtualkeyboard-plugin libqt5multimedia5-plugins libqt5multimediagsttools5 libqt5gstreamer-1.0-0 libqt5gstreamer-dev libqt5gstreamerquick-1.0-0 libqt5gstreamerui-1.0-0 libqt5gstreamerutils-1.0-0 libqt5multimediawidgets5 libqt5multimediaquick5 libqt5multimedia5 libqt5quick5 libqt5qml5 libqt5printsupport5 libqt5quickcontrols2-5 libqt5quickwidgets5 libqt5serialport5-dev libqt5serialport5 libqt5serialbus5-plugins libqt5serialbus5-bin libqt5serialbus5 libqt5serialbus5-dev qtmultimedia5-dev qml-module-qtmultimedia libqt5xdg-dev libqt5xml5 libqt5xmlpatterns5-dev libqt5core5a libqt5network5 libqt5gui5 libqt5quickparticles5 libqt53dquickextras5 libqt53dquickinput5 libqt5positioningquick5 libqt53dquickrender5 libqt53dquickscene2d5 libqt5virtualkeyboard5 libqt5virtualkeyboard5-dev qml-module-qtquick-virtualkeyboard qml-module-qtquick-window2 qml-module-qtquick-shapes qml-module-qtquick-scene2d qml-module-qtquick-privatewidgets qml-module-qtquick-localstorage qml-module-qtquick-extras qml-module-qtquick-dialogs qml-module-qtquick-controls2 qml-module-qtquick-controls qml-module-qt-labs-calendar qml-module-qt-labs-qmlmodels qml-module-qt-labs-folderlistmodel qml-module-gsettings1.0 qml-module-qmltermwidget qml-module-qt-labs-folderlistmodel qml-module-qt-labs-location qml-module-qt-labs-platform qml-module-qt-labs-qmlmodels qml-module-qt-labs-settings qml-module-qt-labs-sharedimage qml-module-qtcharts qml-module-qtmultimedia qml-module-qtlocation qml-module-qtpositioning qml-module-qtqml-statemachine libssl-dev libprotobuf-c-dev libprotobuf-c1 protobuf-c-compiler protobuf-compiler git cmake libasound2-dev +``` + +```bash +cd /usr/share/fonts +mkdir haoan +cd haoan + +sudo cp HARMONYOS_SANS_SC_* /usr/share/fonts/haoan +sudo chmod 644 * +sudo mkfontdir +sudo mkfontscale +sudo fc-cache +``` + +```bash +sudo apt install ./nats-server-v2.9.21-arm64.deb +# 编译 nats.c +tar -xvf nats.c-3.6.1.tar.gz +cd nats.c-3.6.1 +cmake . +make -j4 +sudo make install +sudo ldconfig + +sudo systemctl start haoan-hostcore +sudo systemctl enable haoan-hostcore + +sudo systemctl start haoan-nats +sudo systemctl enable haoan-nats +sudo ./XiaYu -platform linuxfb:fb=/dev/fb0:mmsize=1024x600 -plugin evdevtouch:/dev/input/event2 + +sudo systemctl start haoan-xiayu +sudo systemctl enable haoan-xiayu +``` diff --git a/Ecology/LubanCat2/img/LubanCat2_Linux_Lite_配置/logo.bmp b/Ecology/LubanCat2/img/LubanCat2_Linux_Lite_配置/logo.bmp new file mode 100644 index 0000000000000000000000000000000000000000..18e22979b484bdeaafa76c8b1404bc3faab096ec GIT binary patch literal 1843254 zcmeF42Yg&vdADV6V=J)BE^X;c4GAIi0HH(ZBtS?H0Rl+~9|4k(1PBQw6-Wq>ZEkW= zZ?+^iSuS$#T`uyvS6NnbQTKlT_nev0NSbn|NhA50-}U%v=FYkAdCq(9{hxE*bI!Xz z`ofbAD=jMWf-<@7iFs009U<00Izz00bbAuLMFBf$P_wd{WyKc;#a*t_yE?v;8T8I&Zxt zAAKNiVPO~qAOHafKmY3R!#p?22=zm$`gR z%?^$@MaIV>Fp1oi@`3;aAOHafKmY>cL%;-5S7-B@h7Yb>`mSvo|6>2{?;mZMec{ZC z?yiH^hx%h0;UjADJ6QzhMvvJKI?A!Id(tZa1Rwwb2tWV= z6GFiBTW{~hWs6=v_tAo)nKvz%Q4n)0o^{KtpBL=i`F$Oqs{S7u>eH__ul>AIP&zTw z_aDxGTn9{VJ-^1Wm|$(`YzX@1WzzYxjnzfZaQc6mssMg7%{;T9$bl`MJ-u?l(`w6K zw5;}Z>sNjHz~28ne|BY8$Ns+F_NX&?(KXT8x1f3p^69yDe&^=Du9$a+a#1qd@>M*$ zVDFB9y8h&lTw!9{ft&aItMC@jnx?H}_H_Brx>cWwBFSzB1Z)_)IbnC#;oaN+VPVO$ zif7sVVNu!hFPvSe&%MuQZ~}e`0SG_<0uX?}gb=XjdtYDss-^EzyKZUWO(k=t#oWr~ z-dgxb!T#Mp)bXi4_r3n#y5UQOj}|DMnCbfuB`hoF-_zE*(XlYwCdJEFi28ajH8p%h zBDr+V^oaNm?-*5mUOHP!b+|fEI_IX!d3V*8zp!b=$C`Kl+sR|)ogI6JMnwvRH1>GX z(78gVJ9Bd3iuyN8^*Mpc(fk@jEZ@8 zwzY0>*v+=d@p8?i2loDl%Zo&^*U2$5=nt@pfZOzEs5)Rx>wrRO^yuQMS1J}u zI=@t1Lg84Zs2%%CRRC30ocOnzLvWYK#*yg%Y)}lRp-P_*>DT+k3mY^Hr$SY~8S+?j z(NR@es{&Xr!1FGgZBzn`1qf5*e+WPT0uX?}q#zJn|6BY2o*m!m@9WeYAXl%P48C3N zJ~A}et7h%Fk0`|G<|qw0S`SN7PR92C{{F6}h7T+Fq$Eb<&*(hH&%WTbuX%yOaKUbN`Q%-l`aF{$t&HI1uQ}a(5b^TH-VEEd(F{0SG_<0@)%U9jAbNiwsG& zjgn{f=ntmFW2_`oWapey}RC7Z~#qK-EQXg#-T^SaMg7e7PV&s93?bb*buK%nxu zcOKgRKduU3#w0p-*1j{#(f{e<)Ez?+WmZz^n>%)-a7F#Es~oktaIc`HAFcv~h6B4R z!pemg1Rwwb2tWV=2?(4$y=2S!FYMg%jh&mn7Hj+ZwvAubL@PZ#=UpOMf3{kJ!S%ni zfs>=5;j1a_2a%MLACpD@d-1QC{Fl`HiYi1x5m+!MZB&nWfSZ@e4Z>CPteWVn7Ce3B z(sw^`ct&4ehc_m?d_V$svp5ZZuqq7$gI6zJSf{wG>XHYPg;cfQaDL~6ssJqqf05|i zS^f_FpDs|>R-hkifO+frrlu7iQT0t8<*)AHVvRBABZg;&s{qeGf5rlV7z>bYsqi}p zKmY;|xPb`l-T7TjykDY$mJ(nwwrQHuyteH5nj&6M;I}s?Eefy~sm3D47pg45aocw3`LjMOw zE2ju~!nLcX_V4=sqVnfEU(JqB`d$DnZ0DB-bG{eYG!BFS1Rwwb2;5)hjlCV0cIg;g%<&yVacdPM+AJ8TV(En*T zouBBJPHt(AAQkt` zs`14y^pw=NkI1reS1*#zesJGU`ui`t9C^KG?~3#|cY3K}$re|?N+#LCv(4)=w85ot zlS^=#ve~%!?dpk8S5(y5(?A>WCzdbte*jn#{{FrpH|Trf&|}MMU+-Me4f2gWxob)u z7(Q4l14_H?^Ok1_44+%!}~pE_O(D0jn%z zusJQ~=4jG{oXhLpq@{$1hI$7FuXcAGKCtIM8W+E#s`x(NJ>ivqhCLDHX@#~j)chIK zG-Z%F6x8gm|0#*3fHI` zS4OJMdETQ15&)U$e{0az6g25<0rc%8)c;bUiQ74^4-Q=G>upoeMf;`gsuAqk_RXe- z54jq_^GasltkEB;m$|x|Z;g*zg2B|9Rn4UH%jey>e&we&uKB&1(r2mYN5*((bP6|0 z^ri(ftQNDdO_?+i=2I=m5DEwk;n2E1Rwwb2tZ(p5=f^1O&M0szk9>#&urW9 zms{3;Zp*qajNCrIZNp!zTlq;F$T=$Je5BsaivCyQq1yM-+U|BCF-hcvvM_1e|Gk5H z_3PdhZXIVJ#7Fh=_;`x@fidl009U+qO0}d{7+_ZlrTuYbU?{kLgJ^2v?fN zZ)5ul`g$+6o?olL?9J;wx2W{FDoS6_rqJCV!^vvoJR#HBw%$YQ;XjXxu z#}7CEuOE=&b8B)gJhn7u{&Vvo`hP4}b2I;`dI?*ae`b@@+N}PnzNvR9CvE=Gcb>%h zf1tlxBb5dQY;cNQ5IG+qK9&!kKmY;|fB*#Yf>6}{>38p)SbDo@wf4NY6{cnY(KCd;)KeV>-;~JCV zO`lNz89|RfAOHafKmY>cNg%NP&p^nzu7Qm8|1Fw6X#ei-3yxbkR1fr^n+BrlSLpvZ zeie-|bcl#u?ru?Vi)PfRoOh3E0h-w67+PTsO@$8>Bqr=EYU7+_vG*FSc&b zl&9e=L~IU!FaiI|2I7B0+#^C-1JAXfTlw6l6sgVMngzzyZ4&E$je=QG|8^TTQu^Gz zJHDgXBxk*^2v2|maY_h400Izzz(f(4Z2JEP0!90OF1^J|Ys0L60|VDiov7Zr{!5x! zJ#8@`_=oCZuwDj*i%9vG&ADSu!*3qk`=iTUM_hi*9&eS~neaFCzg>#<&&B+xQGNHe zZ&nwFmU13v$4_P3Gdzs4Z?AW_{+54kGWq032_}gTjHUL@U%@;g%`^LXI zd#X+o!-kBI#x#-Xs{sD934g!A^}k9)b9)+uf&ME8_x;$-0BptQqJ73aTFiAt1e4XQ5$L|)%;E(6Ada``&xZK3qvod`K8Tk|MbGyM$OG4bHdJT?XltgJpA8my8-pT zkG@k?@#2Mb>sNictnfBd{y7fy4><|d9|MhH5yd~CzSsMRK{D0=Ug!gj)rz z0l#{8Wtx*woJzcG?rmB*qUFH2tWV=5P-lGArMgiy9jMf0-0dDDc(al{3y?8{a=Oby7_<5|7kj&TKFw& zW8|FY3bVOzX2s4eU)K^~3(KA(`J~osB`)ry-zssn8}HfiZRN*DT;yw< zPdwlzDQ}GSe^nUeIo2ND-`BB!&%f4Jy#C*iK7FFb7reW0=nIH<74SI(AOHafOiBXD^uP6t>-l^7 z#G>xbgB_Q4ced{xv+dDWCyo}Y16|MGc=LW_sr}#2{}~yb8i@IgJ^#OnH!a2#iKQ7F zyr!8C&z!2?vi=K8YF=Gkbe~Esx_vd5qAt48Rqe+5bNbQ4GgXRFBaQ==X&xMOL+F2} z{B4D0jR!e-taRC;*J@P=H*(hWdD2>5dIw0}YYr$i)K@OJd&lOls(Yxvzw6S)ZCYx4 zVd*oAW=_}iP`*WCRQj3df0tBf(K=lYs&1@b{TU4k@Kt8TJ4HpN<$?EM0t6rc0SG`K z0|H6)zn=B=l`qw7@H&Za0~~WU6GB>8Q?qL8`5R9aWUT*hb?yH@bY^%p>wD*uzcc^8 zpbeOU+H&m3yp2tNxTx$wg>9>_d@HV3KJhAUqa;?cKfS7t*7K#O3}2mn+cti=V*XQI;7#t7zh5KRMxE$H zYnHuF;Wxha;hezf|Iom2+rM`8?BN4HU%mYO#XA0R7qK?mS{|~e|GjgDY5|L@f9Y`Z z&$WDT$QZZkL7saj=0N}g5P$##5)cTi|C^Oag7*Kmi<@$)|9x9=edR+<4If^;{C#@# z2j5mLdv8#GL9#z-}^pb*!aO)9Fi7g~#(cp=A&< zRsJdw7lRQB(iYqDdAB#zy|Hrs(~YxR$ty@bLb6Tf?bz})=U}Ntc1>srOhNsx7XQfX zmwkPg_U`=W+KQK`bkrE``t>sPnK=HSP$JF7Zxiw_u71U_BZYl^ZuqSkGpfDaK5-u! z{J!3cXHM3*If$%d!g-xq>>tpIb;00bZ~2?>J~wWYh={f*@XZEAOHafwn+OZh6rVezl^P&%ML>iLYV@DZ5mU@u5VaDW^8A`2!6uc3w2X zf7~Yl-~10l2lre%f9=|tF~777W~~2}Q;)?4t!NTdtyQgQk^H&bg=S~r1px>^00I!m ze*)3+%9rKFK?iA-QS-7d` zPtKiQdhP1z>qGrv2bR?Fn$1!k_43it=gu@#%)86Zm~hN>gule0x(u54{OhRH^7T*4 z_$1Z;ru$C?aKhCnd6D} zG)msNWsLA4E39m^{|{H3eJx4ZDVuxi+LfPB?}<0p)vB_XqckA!69_;60uX>e5(4P| zX!RlqG=;|hMi;&5AI*chdEK9?J>NCM4l9{x0#W;>14|2UmOj*PU3h~_(CJ2}+}xjW z-hA8gwoP9S-UXoG3h}QgepYYK#W<*Z2B*-Sj@rh@_5`r6SM1{&!c3h)vUa*{TIp&cA2Zw!d?O0*vkO z^^&CwkPHMM009UYg^M6KM#S4;a*Ul>LLUJWY z6+p60>V0wLE4sT5yL3`$)%2&+YE8A}FVyJ*b^%CJX-P7zxTMqNy@Hx#`rq;N&ErqD zUEI2<>5s|^pCa1fD=uk$FpUG$=5KY1`HyRUr#m$`x2yAjb0ncNdgJ)Yk^YY`39S@R zU-hzs`+nlOHY{_lsx{6z9Y?5~3IY&-00bs2fxOZGUXJ|NA-fE#K-}kq%#2@+=qX9~z45;b-;TqJ4_3HfMc0>un|9EpE0< zSFOuJsDG+uXoZ#C_@6Pj45n3eXWy(TIjS>NcW50hijg z>6&r<00Sx2owJ&E5`zE)AOHafj3y9J|97_U(=UgH6xTZTWzTfAnWw$}@8Dq1siUO_ z_Wq~3&JXVU@q}(aI^6uTYghgJfuTApTKXYxB7M_u8vxQkJ7d-vqg|(vLTlG`I zq9v2uWb#4IWr0cRacHQ2Ykz;IJKaPn#-v%yfBmmZ)s+9xVDG8pm6GBrM``k02K-3( zx={be3bZ8LkwcFR4)r>Y*S!o*$~0#OjFbL%m(ny>v6{9(SIxY;cWwRK?#_eCmzBln z<&1NdT@r=>1Rwwb2qYvBME}=UzRa)A6Q}vto~@njdo(|!nt5FdSPV&NYdk$#uzK11 z!i~C9SzRYYKH*;)`74)?N}(zIJ6?H3R|=%b)tuY7`0chlt0|eln%qTtXn`;(&mbrA z^2ts&qu``p#dSyxr}_CZjQJV=Bi-*>o6W-3^J~_x{&dNlTf^18K((;w(hs(;SwpR6 zp=-RRV!cXd5nta#RzYE)Df-33D3DGCjpHg3KGfW1o0%+19 z$;b_Bem}pfibf#+^uM+F`wH6CtEaYa`f_#A{gR;JS^dXq)XYC|q5iX`$vsNu+_Yo! zSG&6oxz>K);vL9Ok~&hx2TX|mm%|$z*X?r4^13&i3=Imf8gvSk=!`Q@0uX=z1Rwx` zQ3R6de=iTFmCt=j`Mf*J=iL!!yR&@mZ7!}LuAE4$|3_KHpYaH28LypNzP@kgclYl2 zPTJd^?cdtB>tFWl_*PxTOA=JsqV>NDS4V0Vmo4i)uPGe&?)Y}Vv+vvaPkXli2rO+k0fZ~ zYjb2l$GwEd9;TGFseVybcc?5CJauN z;00bZ~4g|(g|GUMc zs$S7@;OCl$@bH139k!iGvNiwj(Zi4X(XZoBC<#unb^V_?{XfAACFDX_W;e~!!doryD-D4`6=$L5xa81QxEL<_sC3Hend$E zzn$o>@<;z$tyYa8MKd+e?M)4}Z#Z>aD+M^^Z~dVb7sLw!5P$##AdqVUqK4=!S0Y|VScp#hg{ST3Q(Aq0@a#Ud^oZ`no5?A zfM8|HQ4oLt1R#(;fpORW!wM~+kjsa|6pLO}^mO!pK9og38>X)Qcg_A!KH1;jb>e8z zlImBhH9p6)`cEq>v_ZZlvu|6s^0zKtSnqB(*8QNh1=7FujO#D+PXCA9*usHSf@OtI z*|GVrFL$?yiY=CqtDv=Uh0e(!009UKEdR~oSqdYO-{vUVCp2HHDi<1Z-nir)r%zP-m3(EvWNV|&TmA2E zJG#407v$RV7b&W$zrWi*FI+9aEawFQ2tWV=5Xdfpfcif)8H=C$CC+T|s0iB?Q% z2KqlKqI^4GD(Qdez(|-)cjtkPYkseM-rWktaY1xB68|=cplGIz*;!Qnf}@9L_xE+^ z&f^s6WQEhJqF`a^bG341$E95tFKp17N@KQ-?U!~w(K1sbWTlgHq)Bq2 zbAqRtKl*>$hA(M$$Fjm(ayEcE9aSmak~4eK8!A3sE7r9f_=PS&*JPcG3(+Ly_{{&= z-`{!k@T|J3mul)KDRXy;?@Q zalL8xwr@sFubK-tCQS%H00I!W5eX#K|7vWkuY9Rj0&%32JzLw`wl6Gwwsi88>;=dl z{lBT{PYNF{Sn#+t&*o&aVV0)E!7`t-%~YkmBQvtd#ze_znq(*HTBcEv0sRj5@Q z74z=b)Ihm(5NXQ7FSKNs5*`-;E9w&=T0x(zxxM=_WwlUHrv~OwH)}_*7aX1 zE4$5^JO4>_E9bz$ z9X{Z7VTXldPAt@aS?%l2oT?ujxTf$!*M54|L4-@EMEit-I|SDu?MDe0#vW0OU1T%_YdQ{M=njC z$g~YtPUC<4<+gwK4|5mrQ&wmTQAzpNS3Gp&&?7^Gy;hF8&}|{AspRLDmkj6subh8R z#r!+u?HYU`Zb7b&jEdE*k8Jwn-7D?$v0p`w@jLHcz3cSgEPtRK-)pc45hbd$)fpvbMF;nVEWc{)yEL^}k7R zg+-k?xoG{WPnFKOO^p~O8h@Rub(UQrqW{ynEcp=xAOHaf1R*eP`rkJcON0*&Tv0RQ zz`(V^!5+71N88n*p&rdHu7*eLgujZtGca&PSyPCz1|~aclt33*+h)^>kLY;)Dsi$2 zzr8jz)SG{*CP)dVbWCW5`E48j(scm@np;vzQjMaUn?C23E=}ollltJvs{dWUk6jlf zv!AkU<6m@jT4nc{!7e!|K=>HKV$R7}Z00bbAO#_YJon?&jn8<+D4DX9yK&O@~7#afG@8JH?RAgRAR!qRg}DuR#6OjUblz;O6Px-cBmGw z0Q*x%%a+%^LH$9U9oDUojXs5RY#Q?$E3CBR|E>LhX2H6ZpY%PCZW@Hp1*J8?6&F-F z|1OQuw!Q!x7m%PkGU}2^I=BY?Kc*D<00Izz00go{U|jY8qXlakKIruJll{Hz7cZpr`%^m!5t3m%_VGV3PotX=W(>q8cZ?vEUsQ!n#e`+rLM-_#VZ00d0iT)ePe z%RdG00`M^s3LLWZtp_J0kOG`;k{)6ioD}-MR8w-zny!%b#nrEFIq>trfvb+VRUR`e zCSUzjYJGj}PaJxDMcrF;{T9!Kod%_3w6W`NqyIe-mK)#`&`ispT-EqbH00pSIvJ&Cz=Q{$1a@ zcIC7y8d;vnFzpc)hyK1!P5rvO_O0R!i9qkDl|xgqv1; zyuYu*+3g$IMq~l~?{RF~_~r6>chr7ZThxi{@t3t=t}p|csxhI4gF!*6(v$J z?@m{6fkGO57r>&@7x~za%tWTyp_b|eGjG!zHELB(woTVzySM*+$o%p6&k*H#`@gDh zx}e-jzM8tq433UnNe7aJ`h?`JQ~v*5U-@#KMWs_#Xe%|#TjT~elKwY}x+D3Ul48|5 z+xKkU@TH3RcL|H*pYFH-^nW@I%5NY50SG`K5P|X4|B{i`O6;XVwCsfhot%y0!Qx}?VL zO986!b4|mCdwVW8BV!cbsM1XEr}V!nI8IWUwoJI$eC%@O1gT~FE6ZBm>VJO`HPpS? zuO2H?BN{b54i@S&6pEm`cJ=hZ{r_EC_5%5a#uVtHj*ff30rkH_YU3dE&*Sat+`oC< zpVkyVQ*#7qg#}+T8hgDY`UL%-o~QCF2tWV=5C}kET=oB~g1Yh-Yc=6SPd(p$__!wR z`IsMVH#QUKf6rvo+Rv(?)kzD}U@A=ueLMeotheOslYG|yHXV~jWFI*+L)mw_G?RcI zrJ$c%elK?&(RyUH6)#q$(v^#y$T{9{0o|zjKkR6(3g9mvb%br-^yQk8=Lpv*N{R1* z_AUB9OqBm2009UwlZg!vzmSrj&{7SgW9d%oDHwDCTP9*I3y9AnR7YG3KQ zIA>FX+FXNhLGkQ@Wwo!r)V572cp>BsPW2uAFJft}|K;@m%z{Jv|2u;s@Nxc@fc{VP*-u$Oj|oFo}j(a^}k@*YnYzZ0ycgnj4SR_mcEUn;n;8WyTEYP6lL|CKBqDdeWckLh^*DmsxM`#EBstz>hm|04os z`^GO@VTFp-3w|HzZDl09YG>A*C*^Z**YvIHSAY76LyvWJ?CtBjq_WE}r|5qHOke-c zC^*#oQ>75+vQ1n#lCPn9_m#`XcWnNut~Et=skqg@6LyA}SMH4%{~r&fyIJ+>TP>(j zG4BplkW-i%i1z<@Sos_R5P$##GA58z|Ld7mQ}V21ErqQY)}B4RSZiO7*_O7RZ#umH zf2)e_wFg|B>9763UakKtlXqjzhTFl|{m|7oq~*XVdXMx!(8^-O!)_C;mS zcj+W(QnU5H)~)>Qv57<{I7#<&tpA1G1pM(Q7L?7sz0{ieZKSqe#0;_HShV?<~{!w*%U!^aQ{!#rCvGzo&+@xXM-iO zr0P`%_x-qe_lQIysg2z^u=n5h?fTx)mcqfo9#;aR1CVlGEP>9DYyGc^m+a80Nh|8# zs`;Aa041|;(IQ`KSA1;emaji?Xhuidj#!QSF7m-NQl{L{|KdO1`rnCL75biS|5!fn zPP?vWS)f<&hHLbH^wsP2|Alia%jeyW{*NZZJ_H~D0SHVWfgt){LR#Uz67cRl?ldf8 zHGlLcUjMIN_CEhWT({~|$(ru1LZODlIS&^Uj@jn?UxA{D?0Fhz1VQxYI?>n^5_~fE zk?FI3Ua+M4*Lr(fUD0H!V{=r#De8aC0I8QB$mzv-@^@cYJGXvgS?wDR?ETMkrx&YD zcqmjY^4S`4&HjqZ(s+>TYBhGUKP&G~4)$LuD`fod4_qZzuAZQuYt)6{;{Vf%|M7io zTAQzY?mfD2G*wqB=QT6X|Ng@8@96(%8tg*=0uX>eo)8GA|D)w}dixRm@1yt6oD4L# zylNa}g}27slwe>>rpHVn-iKO%OewEg`d+PS>WWEfHXmOp=>J8(cJ=b{wDU4BaCxA= zd;Ad$4fZns&p5aLd;Ndu;x+}>CF@)pRp|)*iT;niQqcd=G}wm#1Rwx`JRvYq`d^bn zF0Xx~8W^P(0?YW=dL!#Umq{Aax^l@oriT6(S1upZvc;;Sggp$G>eg&yfhkD zl6|`&%(S_SLo1TFArhlb5bsa)e>^gL4gm;200I+8U_$hND8@jefJ@VCW6Wt?VCw0A z)w3jECgT>kpwa))A{PBW>Yj@J9|eRzApijgK;VWZFd_QiX7p4YV6bOX(;q9+MtVE2 z%!?K|x!Mow|94J-_@6LX6NHm-3)`QxtkM6`h|vF|?&|3OQ9$?;0uX=z1a4>o`*wa$ zbL^BAYHIh`6Z@nx?_cZ`e9D^0MRN(RUj6}17bD_+6tLEcDzSw`C0zoBc|?nx;QNw8 ziEJD7t!QXjv6V}wlKv0QYLXs_{*Nv=^#7>4I{JSU5dMS!1Rwx`8=Ao09pBMRm_;+D z+v1*MHYs)mjRb6iRXt*C3XxBWX52jI7X^)r-{Y0P4*}}xI=H0f)$SAl^}io15P1(| zo5Xy?j37HjGj7u4q78L#R=}`x4igV~_zE)rPr$O9{D-0cqpt<@|ETK~{XYr_e?kBP z5P-l9P2l{wRlBzS?Y^Dg-MizTMs0hxfBV4R|7vRZu#M79G(Oj)SH=9hcWnOZ{#`%N zuSTWg|J2+pySM(`u_JS?+Z6PAxmBW`d~)NO-&Y7w!1jNgD6%CqDPr(6iU0blm+#;8 zebsbg8W!ur@9x?Dtz#{-1_!TsQ{8*sy`lf3d;t9)@p-$Nd<@&6=AXJN&0leW95_7x zC-eUd^E8-@{|)3m90UOfKmY=ho`6<#QXY=B%uKe-maVZ{UHptoZCiD`*AGE5@6$hW z=#erv-+q*q8-DV-4=sJI7ksp3_Q_*qCyy1MJXUhz=z?>nm-rb(6V@H3saIlM<8P;A zSPv9V{PLnB<~ZBP%!S6E{{B#HXtg%KBen__Y6zy3*1Aqk!-y z1Rwwb2tXhn0efg(yLx6t{o4``(e?VjuJWZ_9sBhYAJ`Kw(XpQ&-1lRp;G~P>TnvRN zi7TPIr0P|dyAJ#GeU#A+uKzc#`9lrRE}3o8cYHSI1~CdKW~uoP&9IrdH*dDpK=!Y#*(Y{&Xn;(l^5w4rUrWu(NxhTr-~9tIOmKC?f{*?mRRZY$Q9$?;0uX=z1R#)@ zz;zALb?wXvX6X+#!yerGBbSyvZ3DgBN}8A2wpGr*$BCTS`d{300K7}f!*7_nN0s%6pHlus%7u#?P+y< zf>i;W{_nYVZgKUi)V3V%1&G!a){?1B;|nbPrSI+OxuEo~4=I@c$s4@=zrU|jy)!-6 zF7#YGpX=@Fm6HN~sQG89v_((T$nmo$>jwI}uU$QxYYUbBK>uaud*kzl{*S&+hxgI{ z(f;RKDlVK`Sw8P}n@Aykl;h}{^&B_vLGc6aZQGS#s-3FQHn0x?2tWV=5J-c-(Ze&! z=HBWaPjTDl{pek_(w{h5>`oC(|J$HrTMKOK`Y(p{f2b=VG8|ZfQ(qO$v;Yq+7I3-q zkbZ*xPoo?&`H7b?d$#{$(wbmc#@MLs>Z1F)I`-LlT}3Yw1M=^;=>K8OA1-wJ1pOcF ztLXn|8tg*=0uX?}Bq3lT=i-I+i^?8U6t|x2(GU7j`}W*_+$P)U?`sd9JKwIQDu!!V zRw%paMhyqHKdssS)`g|dZCdfM{kwm7>O{37g@y)ul{oSLVZth)oNu0XUvJx*h7X0S zX|c6m#3kemI&yLKD=&AoI8!y3RL<=TGZ~-%?b0CrKT_h69rS;+|Dpe*X|N9g2tWV= zlZ1eY9L47>TlCt14ZmgT0ytLUa%aCy`tr}m^JkWq%)VJeS*sR2ZBg0tmo0kTrlvnW z-2A_nS~p$0daA#_dsI3>_5U23|Ffy#L;AV@$*6SrGYA2XuDxxCMj5DHmbe<|b)XH| zeq75vzg^DbP7%l%f*6xG$DsdX*8$Q0(JqSqkEX#s1Rwwb2uuZ+yhR$H;lU~<*x+yAdzKDKkq*Z1!D?wM1yifPwxue;EoC`wu{cp#$T z1L}X1BBnxr!xFTG33#PLz-yQ@Cl`f-vJ!-Wh1^3^w$6X7VBM-uDfr)=GPx(DW7$Oh z#&SgafB3>5zAc3H{~qyi7o9*&_-0F)=%%Dwfo=!^?qkE*Q3jPG-PSa}@xZ_p^SD%k z+0g$+j28qT009V0G6E)Y6l}kB!0RnC9f`Lhl7L$`u(W;q^m zPg}1ahEocz|5a^Sy6`p581(-zz*P3k2lU#v>wDoCu;lt*-9U36E!ei<&%-_tO2j8M zCEhJZ=>IWy08`7lSLEURKmC0jE0??z{XZqHJ~9CT2tWV=xh7yb=g@(lY6c$ntoPb4 zdX#STerSNezMcQ#%+hZI3O_aP4@xUKxtRPX!S%nSNL}Sa0|S0$nB*zvn&u=--=OvN zwy#|Bu7JV+@)LPW;ll-cwtri{4OamsVb&9wY*^6$@$|o+wMGj9YQRn&Y(3Y9277wW zH!h+5Kao%K9Rwf%0SG|A6Y%0q?fII^#p$}6)xPH+`U(ZNvAQ-nkB!)s(k_}|qj$^a z-Fa~Df4QGaBjrSLd;Pzz@e>PX7L*iDw^{XKZKZ{_Hdal^vpU*$%bqDJM04w^9-4;n zYOMjm3^;+I25!%JxS)B@e>m(@vgZZ;AFnIW=6zkc6#8fz!parmN~VyhVC{#t1yk<|O^E8Jxrc{hyvQcy9Z5{~)YdgST4Ss(I>? zJJkGB$KOW327LLGUb?ttVac;~UZoR}!71)UhXv-(e#+usxkmp7bRG_a00bZafhkAe zx>o6uluM8=DF?R&jp0v_RDiF{5{)rDe`dvnvn%6mt>;#2@q$YiH*0ZNmu4dS1Dy1R zJ>>e~13%xn^&7jk{>}DHf3^HdGor@ZC?AQnyGdDs!ypeX4SIyuBd;z z=5Ez8ZS|EeFQ0q6mUR#^FDa)SJKF!#(b6eaBJ$!C=>I8q@sc43KmY;|NQr=r(p4+E zHpSBT2{|o3-1-QR)+v#kWCyF1H6yFl?^Nz?lMf6I_PFiZK>wBg{w~e0(${;bx2IKe z{$IO#w!8B{Z_fpn&nf8}=>NPB=i^YJK>ts&yA|d_00IzzKsE{Foya#)YKsCS*nF3S z-lwDl&1UJ6R*D4B|LFhZF2nr)$r*731Rwwb2tWV=`Afi800X?Mx@E5v!p`$I({U|B z|D*roI!ELS^nU~eI}m^X1Rwwb2tZ(x6F~o?|C75g`ad}%j(`9JAOHafKmY=hg8=#; z{h!=Z(f`RAaRdY)009U<00I!090bt+=>O!NivCZ|h$A2X0SG_<0uX?}wrvlY1)qKRF|gfB*y_F!2QROuzo5Te?)Mm&V(4fE~swM8Igc zS6pI_q=z<1xh3}s5pZ7N-*Jv9Pry9+z~28VnLW*KrE{h)m{G7{^=Gn`^Xu0KmDK*- zKPaB%m9|b4P;yU`F-0>94mJN&DWtRzvp?yji(3|!JX_~gI)P6b(6-5Un8BP`ux{li z2L`TK;o6lR^o9NpN{Ztk0D&+kRGxpw|?SIeb~TU*brx_G|n(#6dkZ9BWW4)t6+*WcecFmTnk z>O_9%luHVFFY1SrYuDo%CMN5pU5AEx2l~5vds?qvIoaKLpuKHd>-jYo&#&#cBxr}P zT|L#?b5REj4faZ2j?S>FN99-n{Pz3tgE zHIkBS4r!kLzD}vu(ihm7i=}{I+F_eyzUh6}9CrTv+<-g=NoORQ`h6@)s?x zdfBptuU)bDt*e&3ckB8u9N7DxXHM02wC_=6Vd(lmBwd&6aN<#)KY6+PaO?S|tnd+* z_O=}or7rzYMxxJ^)%_9Kk;Ijr@9sKy{_Kjw`+vG~%h%Sg`gG&sw=b`K!;+d;*H^yG zaeL09(&yGyyr{nFSOy0C)sf`H>3(h8(EpP}$p;UeiqWZo z{!jNB;dc;#K$--GhWho(eY?J2Huu)*;%8J9Jv}>H@x2xE?%1*AYiXJ_=4URDvV@q`LS4 zS*|!-}XY{5|=09FA|1sN&XDTxGrpozu>xau~U%!3R|2uYMZhPBS zwQ@UCOdGhfsO{HY9?_0XU#*ybXBPMri}1Zw3!W|o?h=o#eYo>w>CKt#^I}<$ragVU zdhd>JH!gYm!qVqdE_iBL;VlvX!ev+-v=Q897{&-U9p)m6#qFM&;s+L2y>k7k-;shk zdunl4XR~?-oYi(Z7Y8!_&E|^sv9k{jT)l8^)t(*SSzi0P>Y`_q&wWbqtZBa7l?8=W zM|*|-v^+WjK7+biD;GRXHOJM<-@k9yznnT*)75#vJAf}1?fVn?5Bq!DS1o;ScCPW_ z`^x9tvAph0*RGy%7(?#o&l~gIcUYW1*H{(0!(@2z-m8mZN%b$Oh8Xj7@jmqTxM;-6H8GLT8g8rW*`ag!M4{ka7KZDDJpF#iv=@9Ub zW;GXA%zwJXRng38BZS9Db(+do)0EoMg|G3?+;l7({Tq7}DmtR6;ln17vSz0xB~#Zm z{?N&w|m>)t8L$Ln_UG>igZB5@$5@k~`3qQlMqJ3=0(TY|-oa6|o@)iXCA`_38eWe=K2yQL~eO_Pr@-6GWaQMJ4Ixg*q zpmW+Sxq?lWkAUA>PW3u_dhv!ezgIEuPUX&fvgL7(RrkW%s0>E(F1N7^3X%5;y{qC- zG^?P#>Xq9!edXAZ!mC$L`Lp<}`GQl$XHCP0=02)}Z*tz~ex9~(%qrNj{tLamZSF*& zOodMx<9~019BFCIt97jv&$6M8nQZcKWkj)a0S)jrc{4gY_Er@=)9!WRmXR6LbR*ij z{)X!9J#lzuedVj>nd0*O!lq!u)&_q-=(p2K=D5wx%b~n4c-(pr>MCBcdHolp zBnJk3e2Y$M;SlG~HmY)wF(P{yHPpV*i^+_c#D=9ne|@2m4#%IEw`RqM%I7{+-6E=Y zgdg`l*N#BYIY}a5L);wm(1#M+@^GPBT=nveO@Da&$h_X33*Iu>BAY1e=xbG(pNUBlR-jKxaUMyW#Aa~P>k0|=Z z;+o!qOu1!HT_Xr>&ELA;Adx7$B;!*h3d}1lN~-%UZ*fD)SX*)LhKO_G9 z7y=MTkAS;(X}o0G_pZqOdE|~gqt`ZmLPlj#|6jX$dd1?mxyN^A5@Lk>m?mMfZNp!L z?M(a0Vn5UfUu9g4oKDSVs4?RHT+a(tF7!auxyt6=zIyow&YW7TFb@sattz@NGyQKB zqUz%N&z)Z894c)Z@!Zi8RJTR*o`0_{zR!g=NxLetC5r_bmz!MF(9ID#i~Ew#*HylB z|Lz}lceQwPbJQ2m-`BNf`EOdY^X!{l19&0}M_xxM9VwC)1SPL1nlZg{!980y{Q0G} zZOYoYGfOMx-|ZYDP0mVL$u=(jjXn)JwpR*{;pMRg%&Oli6B|4kpTUKt&(pL>&XC}i z*pU}6Y;+Eg64;mrTLh5?=_}3b1v*-W!Y{KH{U5m;k>Y67fG_&*y&#Kw$g`D70RKJ>8=@=94as5AET&xcZkgJ)^P_meyIw(atSj zmvYk$GxA)>a7SW52`X@+&xJInYpOl0&z`C;Exb)nfh?MrFn6Iga|ttzYBaHTam&gj z@5-zz$Lar~XPi5|)Jn@$53^8gp(L!)xTmLe^V-kJJ>+i=RMv_zA*&HStm=l!UB~+f z{G|(jMPtDG`@39@Wn^$knS_m(zPq>oqsk~cVkfw%X&mXPiml%?BMu|)MKCMcNcqkHiI@aU9h??(EqMv zd4m81#+yLXijPU6q%993cj@qsJ);$Jpt%i|lW;V0hMBSl;<1)F;TF_1TQb8Ih6JI% z_ev6kyYfw=rtwl9H3g-UH{&d5#lbcWH>j_CrKXE?^|*}Sloj6Ea`68IA>GFR`qSoV&gM~NG46kc(5cjlX5QM=_)+O(XZna$8)9T8*hfCgn!vwu!2>$Qxb<;_ zFiPsrv4Q8Mv!AlO?v0vEDU%Amzf3fGqN9Cp2vINy{wR+^k=yP930-<=7q>c$6vXAV zx2s{gUd+jo-i{1ns{FyXkH`N zW0i}+Afs{-^G~beC~L)`*!!5r1o_a)D^jCR`7&|Wh+?Fxi|)_7erj#+j}KTvi0pgEyKru$I!A1P zPw);tH4dnMu=s)Yw(UwSi%mTd+t`5s1oE6fxRr8`yVIIlh}?2B+3^jAE0?}YYubuH zHf}HWKvb0b`cz~>HGchmvx4t=1bH!_&Syx!82|wTTXJe={4l0PYDvf+aGu_=bA|SIyUCZ)7|K-NT z@5rvZrtTO%*eTQNT6|Qa*UEHhW9jSbTweS7ELZYNuB=0E8Fh_^faACCV|qm?FG#WFS>+W*Hg;S&fzU~&+!2TgD9 zr4{vWb#1fRYN)hlt41AaabcyO#r82xwr1hG*3gmB<2&+X@xpI$^(!?!xGOOOlFG}D zw*j7^u$I(hXT*%W*)gipHb)LUrhH{1cFXvvl}WS5sNh69Z*n@iq?Bt#m#G|=RKHpS zMJ@Xl+?%RD=y##ILr2^8MWqi)@#b@`0~d#ll-C-3ifFPNriEow(;sI+|GS=uxsMby z@BUYZI(W>U73ILdl{F0?&b(8`?i;ggrrh41R^yQt5ck8FZ)Pg`KjNHT|6jRcjS|^L z?UGFU4gH@sI(`TN2uw5q-z=u-lnWoWF8;_ZH?tj!tI@Om$bqayl6yNZo?o}HS4RvqMim-{r+(?a*Pp{IIJmo@a)ODl>H%`ecwo~VbmH-;Y`g=T{SA#veQg; zwcugL2>+QC6tNRI)>5ck`in7~-5~#)C!9E1tQlW32ckYZg#fKv`P&0-)OK(|=*va( z_GIH;XJxAFXtBSvfFy=yxX}L*hu8gCvmE$^r-K)FV#L|`7X6D|b45V%jfYHUl2!3vPMs>#lS^Va4XK z2PHD{I4`%_E^MeNzTbLnvTbU>9Hn}gq_u!oEx7;0(Gts0>I8g;*Qw(b*}bMB84*nH z2}-}%FPf|c&TMt;ke}oTwa&X^^H4cJzqXOn4@Yy<_FlcW>G7#ogP#)x7)P)NZ+F$G5kx|58)K zM{6ryBnbYb8LO#L#ciTU4VzkU%>z%@cZJbNYSE>XJSWA2-D1I^c(4rR+%N}S1!7yd z;Atn1S1JpBFmG@UxzzvWtF>j%SIv6IrmyVV`Oor-<~{$mYuh(Bt^KS<+*B1kLkIW^ zBpc&FhMCB{mGaVszna$A5c34L6v79UNah}^0@A>WlgBDtp`>=f_V%1#Ui*g3Lx2QC zoYypbFr5lf5@)g;(f%K~6^OG&e4zhFd5yo%F#dNG7XE|)1OgM#!bdjK%eqycR#a_i zsAVkrxu4#?i7~}LXniqfNzi9>0<*oHn!!UO_`Jf2JRmaMQEHk(;ljC9DVgf^|JAFf zBqyY5vZnuC`*UOc+th#@bH$~hp+3#_e|Y~-S1x_0Uv4;snIA?he-^W3Lvx$><&DzT zHXe?Gqn0mvLw5UXd|68Y`nsyh&N+kf;?_h6J_$xb6ut_eDQnK3ZID-_G!()+>e*9^ z!voc`RWY%2HZ}d>rPj^<6r(N{Ee5TiBds`4U-^*haPg62F-tj(4{Zp5rVam+f zDlfYO9NPb5SA5DyMod(LkW*>pzEqdr^5v+yQa0{&2Bfz91vwZ3fc_uhpSr-E{!gua zCKcyQ_gLEh(&2lo7j1!-qVKKZA-?%P{8d?{Ob^paAmz$=O%n|j;n zK$&{D`Df15;8hhna_IWN>ZR|^R(!jJjk2bJmdVB=+o`WzJ$tD6XA8^xl15n@TI+3C zwd_4w8!km4?r{Gb7dF#+zG-2}v$E3U>t(;*{qP41chL&Sg||o;RLsA#eC}-;kEupo zm7{B3&PZPRbEyiT9*9$=VfdNM(j@6f(eFjKQxI9dGpoRk2lGu8cA)Ag{e&7+#XhAqnv2 zyK-6%J{%^Wkr~Q}vg6~#{M{*l2|*4qu(bb&%g8Qj#sBwS^FytJ035Gl(EsB_n)5&a z0=XdIpIq&iwo9&LS1>5Gr8U2*WjC{AwmlXH1}iY#lDsmzn0)!@W^yS^_ooK}fviF$4PI+#zkwQg*zf2#wMr7D1%VzH*= zfy)`K;B1y3-v8fOinWe_wcz}+!rQfKv#OSdoB#Lt6ALu3R13oH+WI%EmwiC1xv3Ul zvteh$JtTLP+Opa=hGv@&HjKqzP**M=)p8YCim9_u6G_dJ$I6{!^gAyd`zGdc3?n~u zz5nQuIn_na6t1jPKy;ZX9c5?rviJA7ieXBM*B^ZK^09`xH_BJDV3HN_O>%xmA>L&& z8d0QZN9OSgPs1T~qu_jR18927N{+$c=w|tD#;gN1hH@*m3KjND_2+9@N=` z3mboA7DL<>F*WDmf}@9L$&9424LbYv>m~)STt2pHne{e73$9VDq}qxf3a0LEJcWSksD+&eh6#S%|4K{jWhE{!&WnpF-h}Q4CUb@iViB zV!C{+uHq$~p>=PA&%No~!F37k-0}_Cla*cxG1Z#Jos$(EpJ;h6>vBe_vM+cH?>s`hQ$;b211(Ao~QoTF|VI_Gr#V z!)fH!T{5R&-_GyK;-sP_Sgz~|d*N)O;*hgi1u%W3c!`s4%9r4#`nJ|HCl^&^$sVb0 zwg0yqbn~XVHDr@v@f`tAUhdK~M6Y#Cni+*OgbU6(L^iDcy<}&P_q`QUw%2R3GFn{q z@=F&tDe*`dX~*pkOE2}Cs6>`7{1rzd^D2ONYNnUzEe9WQ=e31>lfHc2O|#{=^}n)U zgYvFGFF!=ZE7)WYf7G_JCbG4#W*>8GJLbVp#Q`7B8&e)|BrPk z#{Z6G!Y2@bK#(%ubCeUAg34S+1(M!22!3 zE1U+E6SAkjzq7vTWm&Pu$N%iv{%s|j3NdSmZ9TWLV!o>uWg+C-^#78YU+(YgRLZHp zjGh+2UA_DRu9Y=&0c<+0wD6Xb$I6s)Sn%sC(Z%Hd3{{BKC!*Pt(VRKG zJr^B<;2{=vz*u(Mok-6cp>P#h#f6C}NuBu8+$ulp6=DiOt zyv?50^J^>S-rcGp?{hgS{dPNTJ!pPoA>PaPTHjq{X{Ihdc+#X{V?Y1F>&ah@01a)^(ZrrEk->$F68yCcC~D zDF34mGGjD~LDK>_CK;88@3T{d_uADnE{};hM494b+nEy!=V^5IoD750lm+w8(Ox+xaJHjF8a z*dLfBeZ3uxi{FuX`@eUgx{8O|TDQ2f#msw5J9MONo7aAJK{mPor1Ye~_wW8!oh-N~ zYb7=3sF@0H`I0*3RI(~xbwg+(+z1V4jL&Qg4&GGxXH`)a)*~?eKcis%%1;gS2aLrU zZPMUi&+^*WWusff?oq1TX}Gs5k)XX)9*EiyDi>s-PsD(zr)=Bbhw~ZSKf}Km{lBGv z{*T-|(f^|z#Qlx_kBNm3Apn8Y3D`qNG21Jbyfbsn7P)oXM1O8-o$%BpS!o}$%pKVK zAMPyH{x*ENgp0Z+KFsS(4Ng?hh@%($IUX8wx_#4EvLU>E+pNj&;#oH@uYLXD=AX8; zZVpd>J=Q9H;@srgh zb`pgoI*CG%U;!)GNq_~cAi>^INPqyr>i0i0dl!q!-MtqiKz{pME-!ZPoqOh+b7#)X zoH=vs=%zlpW}R9gwTKnR?2m*m4nN#ons-;zkyVbkC7$YQMb+2C7l(A%ub1B#>yagE z|GVc!`q{QBAA@j43ozpHx0{=)w66$@WN z00LXs9fyIl%~jTfoy`0kmdZ;j3?N%^wb6Mf2GV#&PEZe07w?)rR1P&s+BF%gJAmJHq$ zJl;}YG|7j2Ow3y9$IjGTz4W^QjpTvYnex}wWQubq3pMnu@)d;XQ|@bSTpLK@bDY$t zZzZ)mSR_g!VbsN2U;QiHJDK$?zC_&I(DmvFN204rL|Q5}(?dF=`1Pxnd}qssCl%^n zenGvikCqI+`=)&*v{ACIjik%Gqt3R6Nd1X6-Ppaeups+|u0%q0-pvJQw7k?laq?u7 zl9f2_^ZXyaTsGJKDT=zzvY;MWQ-kdjojQ=7(poOC|Kks=G*;_>gQfR9ab3J`BJ%&& zT((9_EE}nG9AhwB7DKkD0y>hix07Q-r??eiJ1W-Agh)<9Le~q@?Ki- z@^m+nGhvP&-%*lxXL!?B2B%a`9yo1nyL}$xdG71LD~2XzCdcgmNFJ*zR65Fz(~995 zf1Wbw2JPRcfU8RverbL6FZb;(Z*M=KWhq{hy$r{WZYa&aOP7S-eoJ>;z4Uv5)+K9o z$B8LAYiYg}hga`-U6J~M!7QA3jiz|wiT70yiQoIWPW>`%XW(ucwotU_W^?UhiMI%G zjQ!tbutIuLJo)BJa{aFYi|Kh(b*(zw6bAc0#ACyy5P(411iX>Z+Oi{XAP>1RE>?$o zLq)sf9B-|cZ2m533+XPj_EG87toXO^7F}19!vdDd<)-cUuK0~o5!D2fO`ezeA{j`L zhEbAzVkV06tCS_A%zJfJ3bU^%FM9Rd8GpNO_0JFNt!Qo8u9XpzK_1ajIGorWWgs2g zH%n;-#$GZ!jDuc^eiIm1VeBiLlqs5ceR?rxyd?V6_I8nIi(e<=-J+6XVl)&S-U80V z;$DWKk!Ttz9sf4PkXC3?K;07^D3EVO$(t8dJ|v^G;qX$ekUe+S++$WO{-%Bn-L?1I zL%boaC)#M7K6Om~OOhnC{jU_R%o;sxm)p5dN~*+@dHGtXqoYAPh(+QPrM%3a^}*x? z=vPR~1>^rg&1~IUMZSt|dxd`4r}SgE@qgDcUXe9&Sk=7G$Q#YwIavkP$&CM}R92h} z0SNRVme$ z>?p+*JhXpanxeWEVf&WR`I*~|86GnAbH)$Xp2*Xuynf~4 zhxhI(mi@2g!*VzYclY5w?4->2z6zqx?;VF-JMs#B*vW8Pk}0Rk=Ju^)!xT#6krjp6 z5yWUUpOZ1eDrdYm*pMh0eYSH>ooZdW;EOWRbH~Sw_PEwXap2SR6Gql!(xO!L1@beV zH#O&_v!*?uP36=P*u4J#MRG5tUpVRdAXsklj`vo8-uABB__RH_q30Q;8|qc9sQN~# z_M!KQTCwOGQPg#2qq>D52hvngcUkaZ+A>7!{}hVeSK4|EOLA{_)ohY8q{ddRo~f2^ z0COP!PsjeZO4UDusz#>f+_q%F7t)*A#Qq=1q9ttzTy_M!OY`R1N3CfNh8CkT7?xLk zEh?biggDx~p{(#;S%%@P+_+sGJ5b&?Z}3z3$(VNC@)YYs?cA0vgFJA;iBvtP$Gq!YCK!1vGZp;e!h#fY0gqC2^*LT;NtM{Z8J5t5i%%BwD@g ziZ`YhnuJo8C9Uo_WzzN9s5&=-^)gT{pOPBPL2m#1&bSyRHw9){#r~J3 zN!vA6qd|ZvlW$tN_@A{gN7{Z(zC(2AzBZ|A%@h;;!D?VnpwVw)7?jE{}gpTA~4560dq^VlV__d3UZHDVUYyAxI4urRRv zRoqD{ZJ;rN={vA;&eSBhP4x!T3g>@S*${0{*LbRpnuJcYA!W?Pa|wC8O%ZH!I> z4u=oSclS!Uy6YmLPr@}l@*+@Ubp9GId7H=8jT%mDIcmEsrDWJ72pOx=TaRsBzUV7? znJ<)W;D#APnVrdHQ@8N%NU)f|iZdgRri9!jb7(~@bA8#u|6>J|eB0D}Nm-|?qWDd% z$805Xdd;OSGutEY4reZgEeO-++*^Yn{7$H(K4O}GaNnF+rEkj_f2Hy@@LhnoCWOs( zTm#Jr9P9SIZLYQQa1Ucr0PLh#yxf|VKZ$5x2Ala>yXvQ@O5(+?oc>@Gb)DJ&mF0gG zTgaKZMVCO&lw`1u|HpJGXM&dG-y^3otpN#o0qO$8)H@+BorhuUf2|fDviAS*yv!@5 z88;D}g%&^qyT9>pFX4S#9+pmN58?x{@W(Z>Gogvk*EAkay` zSLW5re`ID`@5We~-^*lLU;UrDlX)4bml5`DBTk3*S1R&}QjShk>#Ar(W!LseCTePi zO((|qwHl?7SHR5Dw>vL=lhZjoq*7f+S_-LxlC&DOT0H-AUGkR1A0FM-P0s`iNkU~= zg`#fA!Tpu)&Z)MTRvP-J5Q0nQe=dr_UMok5v}fm()a8k_`0Z_b*H!;#an8+tRM3@6 zC`752Y`F7HRPDXBE!Htitwg+^;r6=mk?4jxBQoH%Y~PAG=_x9Aveh9Q*8Vn%3dHJ- zsW~_A-#f#loPuM#&hPp%n1kH@SLth#QSb7p_bH63lsU*kOud6YJO5AH{#Q$+ZCR2D zx7&HM3v=X@O>qf&bL7(lV$aCral=*fPb+#&_3|Gog0Y9-^we}O#aE22maa4$TDE-Q zSL9-vPBV@DpCWfohrne+z*--9722?5q;|FJoJEy??=adeB6-P6M>EkHT?swH+}VRL zb7JhUWedL?*b?bW>ug}VTrv5zidJs<5;bR>MQ(Jypixb)bP6BNsOvSI*w}l=i6bc$ znQ!T|=2S+JYox*&w}Q4M{dE}@fk*OhT=$2Fw8eFc=6zOa25oxsc%)gf4^1(S99q1h z>Yod;uMr|=h00w=PQpV#F(ju98|~!f{SbV1l0@M9hT70g+d4#`8?tA{+7f_c&6`|t zByU++5i~W{C@&6vulk?-m-eJ=T=zdpGu&XcNj3QGf74PIgjRC_bIRYdeao0&I?U8N zs63UG*vmgAY54z$>d>B2NCL=fyuVx}@dk zMg_jJc}yFi^FE)+tEf8@`#*W~oC$%;kHD#u&2n$>21!IFrG;_O^1~ws7izPf_O|_U z4iEpRZk?QMvxlX((4W{v5*iub3w(^I_EyqT(8 zXwWRYVynpHz%TRFrLUZ()}RL@?JC)d3Pith$v2C0Z_$bXB`YUk1)-8|goc(9;nYr+ zc+%n7-=|0nn16{%|OKPZvV+4Nn@;hJpH&4d0(a&jmb>6vz!m*G`ZDxthA zng4kogEtM82qZSG82t9Xe`b|yThOYiEb|5PXMRw@$IhH_i@apAx{$L$rc^FACvr*K z|Gx8X&qeO|tELs+yJ77kM~`j{G(qh^%9g+C6|c|wU(KZkk;guHnzo>d9%^IdJmz9hwrWL%rqU0^pi|?Oa{QB_kiqf}eXMrfj?mCSh z*P>}E|D^|FQ~AjcC-&eN`=Zl6Joo3bZLPbuZyB{<=7&o1Zl5&v3hx&bU%i`zCEO|M z1v^=LS7{4f<;FMSedV*;_uj^<+w@!%1!Ojc3PtvV6C>q9@xmNy-Y|XY{ZSZuu`y>Y z@kmdefK^O4v{s_2v3lL=U(76dn>IU;R!kaep+bUQK-k%n0Zp);w7I-rG305d|I}dr2L;3b5P(1r0#;M)+&)Q7sxv<#XrSYjm1Y4n zSuX=Dnzy;rL@Az^Q@PeK?E30oIWlR~+dYWJzKGT5W=5Yre)!O$wX6T{g4rJ{$-7Mr zhwMEuNidatr07`N8V7hW4ot9xvp*Ue*-K%p+t4*PtX33Im#>gUtQnkZ+%iu$q?T&A z*!dc4pF87yHbCdRb3?#1VYD5yUjmR)x2QMekZdNNhDzf zw?=KO7NNX-)4D%s`^dok$ucfwNb%*bvJ2HrXi7yBD|wmEcf)b+@ekQ$#{N&SJUAT! zmk$BodMXO2*7rFBDOA(k!^E;#%Lv~Qdj7{nmG_10fyK5h<8fE+Y1H9;>5I(*C)y{c zPq!RCIDhNLCs!{1mclOOXFXpggx=Oaa=n|t_Oqej;4S~~C>nxf+Yz&BO7dQI_>hHI z4BGU*GT8llHQd^sDg0cL*?41y36WoHn8>jEE&KS}OI|hip(yNsTXLcTl0%p77S7+> zi|Y-fn5JpEU)hwmQtg`GE}8eaviy6boH4Bk`p#Zm-J{g07;bfWV2>qRzGRfh)~$6IeFjS9*znU|EC+&p(qJB(;|Fm03J9}sC*H`;0biTyt~^am**FenLF z10>h_`7=MHCN+Gsm}WIKz}8DYQu%hgtl$-m4J%y%rPq%4U$$q}Bqp9A8&dHtsa;Lbi0Iretq3M$?wf< z(7)hpJJ7CS&5hOjc9(75@Wir3Uy&`O9T^n%svyg{=dulCyE=a%JC2~;z;Uqy@ss#}<@)0}>-3rL{0!%lgkkhB$w{h(s1jKjBwAXEH#wXdB zz&81)_-TXC{#PZWlF~p~-Nt9ykMDK`Xy2q!HTkQ2)vBCoZ-rG$zgwJhoBG$z3DBI2 zx*o&D!3J#x)r$mOLD^!pQ@%GqruNmhOh{OZqY1%IWXza7(j&``ZOvzkhhGURV8# z!0ZX7gx>yNJU1Q!D0wFRN*VjnYlZ*pJYR0r?QQ#H9%yV(n=-6j^)qdOH?QJ-TCP5Q z>g$SgZ!gTcTK1AW_YxGtbq^!7A9_5zJL>$Xdzb!fr_g;K8L_>)%d}&))4H%0j+x(M zhaEaFSIH*yq58ai{518ugN-3V4zXGm3MXEx{#rco{%+sOS8;5=&B{F#3j4F0Fn?k6X`*9w`mJ#HbdinFKWrPgtxK`W89<+L`NP}C85UsqNB z!_3lmOqqP6y0PkcnPPam-8ur{ilD3guauWpeO(I|TwZ!e*mn-S%_Elyxt6735C$3P zDu!~WF0lH-^C~`&f?_zN$6L0`!%8cOk~T{FlEJ`AyXrPQ+jqXt`-?FgVEf0K8LkZgCy(B$aTm+yAaO-4lA=g6-vm&I>zE z99FfaT@D4u_(c7jCKQb!)wEqxgYTur`!Bu7$5#-5z~x3D-ZabEK=wl<_EJLq(^u;` zsJ^#KQnm5%<2zmHr(oDbp)J-fs1(!@b7j%z-DUo@we6E+cG(UMR`+ z4s5C<+u8o%TO#t2*u695wT)hvG-^G2+Ph>1gg3F2wel&ilg*ZDxp+y`Z&Li#@Y-mT z5u+{gxerO|6OW?k`%lAbg(-#5v63mx^KczpKkGqO zFU-nX0|>izo+p42 zbpg!HTV2i_braHn;Gsz|l!%*Z3|}s0E^36i!7WKp?>LcH&tosZkwaDL%0&f40#uZ| zIhYmddC&8HW5qY1_J3RgZB?*$cj=t+znpAwdxq!RvXSsb5bKEbXd1kOVqd@Z^}Q9S zh7Nok5|?~PA1E(AJ5rLv2NzaVKBVraud7|>Xkd##1+9C{D1KAw!Lo)lb%cii1d=7- zmuqd=@KjKZ4_u|xSIvL%zn57ecM*rIyG@lW$KX6~w@2}rD2a{}-?5wNE^@iwy|b`# z`d=#xW?UsbQrFj+-u~B`=;N(B>^A)lKF8#U|L0ED8bHYt>ym_$$Jv~jFW9*~+X-?y zexLpie4D#!>33vNgzo~#T(o9%>Kl%?+6NYjw_iK^bRl&k!R${|34a{Bv*L@& z!FY4+pUMkgB{Lw!k=Wj~NQsDpcJfNQW2m(ZMH64_6fc5G#w)5U@MA|exN?zt2tw~K z(bo@aSN&hNI3;;~j0byZ3Wz_iL{oCej75|GjRU>*#3MxbBg%f|qN}h#P#4 zpcMM5MpA$7%>JJ{?{-DsEyx8sKi2e|KGo{j z_i063*pkuR`jN!ibWH?!kxrdFx@N_X^Rr$Mv@c=MS=*#AKD+93)1cwiY1j72ikTn2 zWW9~2hV1Zxd4?mHN%y(#>(kr+iz+`EMIXe5i_QKoexnciH|XsXZ+Mt`h>u$T1+zcm ze1XEKgk9@7lux<8_1HF77G~Zg`SQ@(+xO3%@i#K_RIK53!--^F5`~KOYk>n{d{-+r zkLHXYL!n){r{vreNgvq@ucWj*Kk$@Gfks?T9b6Fm-`_A+S2Qh>R<1i&rfEW|zFB@`s$g7ti}#Bx9|<3s6>YuY$MxZ1&H@|9ZS-n*t~) z7vYE6WcQl?PuT-nxaS2(g@j$9f5)0P)o&eNU#EB4ijlEhDQwG%&C8re2yX+MVrWH% zT#j8AAl#^9hK+b@&*F4DhPD<}f#PMKL}mZG`r!(#=Pk~=Q`?ipqHzYDVo%8HgN*+< z)7}$_J|tF3+SFKXX1Y=TI_V|p@o9>20quX?Eml{^9ccHC{8^>%6p); zd!|F){?{WHAD~cFZOy)E(7?8>wB5b07)aw^>0haE5Sr=J6RLer_V1YGXsvzqc#q&?| zoqdfWb<8Sz=P9?{QWEkgI*j?o$TFNh^?qkxh1}uD9Pc$$oBaMtU7sa0Y#NWOEX})H zVbY^8_AK6GY5v`NcbE7ZDS&ogSbW2`x%M%qd$MZ68a8TM)&kLm(S=VSqv$hO&5DfBpU;gg9>hpr>m{2rq3Sf-(z4~!*-=t*lC;OP^iXa+E z1pclSi#@-&6RwgkP|flm9oRclzEAD#2Tq(g)ZV^N!A~>>tCh=c1MyJV?|M_~T1qXo z&4e=Orl2+TsQJ&Vrbj{^0@Q+yr`Dg zRi87v{4b=C)}CriKBC#K9_r_dKzjn(ESR)$PWijF1B-7pOeM|oPvHqoQfoO40uZ>g z2v{v~_~0T75Eq3Hc^@@ZB28Lj~dZPzuHtNQ5$OwRp*=4sNF$t@-r{ zTZe09B%>>6k-@kYfC%>TbqE}7Hd1*Y{N@yiayrX47cGr^m|ENq39sA#xh&?avfZmfI<0Utzw00ag*0o5MGd3OW`TauObC32eg@t9fmPVYjH zUK^xlKxM2LBY9@-`gfXqRIxjA_a<%4;PfUwnA2;mZkDi4(<%Uk_=qIJiPS(_67St* z30A8kMWuYD+b z^|U!J53fjz=YBe{jzXg7dAY_~ZHcAcqNHxPJ}uW7JT)Nt?t#(wTPq!CDES@SLI%+j~7TJmj$ zlss~1@$uH(EyuPg!ePydANhf9*97;|fF}Qw-BEq9&Fdc(3h!qX6h-p?n_{#a-B^%) zb&!$d1?YL^74oW57oh3LN+*FOu3msshD61P`Tgp9StgM@*QS%&l%eRgO>W;?uka~Q zaIVNQS0Yk|o@Dfmm6y_wzn$N;zU=knkYAcA&YSsxm}6KlqMkGmE4Yhl|9i!Wd5Iiv z-BnxjtErQ3nyBeZb6HoPeSo<2irv}&b3UG`QYB40$`e&3`ua_YD!OL%@*io+$@glV zZVwbUr`1=gI#Sc1@tL)&e(pDFbkI}-#2)!5vr1YJfWW0sz#607JMuKYAJJ%Sua*4Z z{nGn3tXut`uBeSh8ZX}{C`P)o|3eRYYhm*EVfk5CE9l~(1M}3gh&MWkvdObruDsfC zvuM&w+-PSst&dun+M2Z2HaY=ad!+EB1=-gIAnb0}GU;Uil}MML)+XCi#lH=PP{w+UEVWVtvhupR^p^9K@~ae)BVD zJ6euyS+VGAfy;ep_-+Ysaqevg56pEpOZ73a^P7&WPzt7~7u38Ao%ddP5T+Yi7@~Q% zv}s&y``_zKJchs-O`k2C^GQ{Plg3y#>H?P0kg@+Y2q05im4N~RY+C=v@}k#B4TAbD zn!2~w?rL79_Vv@4|8O7Pr>Q~Re|w;;>yN9yS7bgR0D;sA_@RU5rZq(quX9TP2CyFM zwQ{@YU#iK|^tUYSz?w?cwlU})qdcj!U95|K6S@na!DkoPp=jc@@_Sjg`scfM6dv3^ zSL;a|4lmci?)vnMz%!Ifwd-i(a)H;N}IhKB{0N`}Ryz%qY2Y zHymDaVBf6zt>cz1_)A zK-(KsW|;Zzj}9~~qRxee)-?~}_g@xp$2>y&EwKNco1D*48aP%j|Gvb&6zu=8!{*QW zaIiu@)f&Uj9~|TViDej5)V8+W3f5XQ@n+W?48&vWbvXX%?Ek^*{~yD0=FAECh$_s2 zVr2vmSA@@3oJRb>DmTq0Pac2O+?nrJvmyapX~pD8EV(F-Z7#tNR`i{kJ11ptx4zTk z7YIP$ViWLYUhSISW{!|s#q*N0j^fqSrEp+_y<>;f*JZk*u+}-fmnXSw;g^Gu8j-+> zPsdwxqo&7MP?oa9);n@*O5F;@R2PA8_P-^de`>a>mwn&2m`>VAm|T!VGOlX0srFb# z+(9}Y9-}r9n^F8GH#ZbX7eEB!ieWTF*g^K+OI4&8(NT)||J;7?K&3;F#xr7<9N0HA za7hYjJ1OrWQwRgc*8f(`{j_qFmSdQq7<~4>Wyb5OW@?TcTBLpStdD6i&8`d=)~tWj zX8&t#xYMga^dS`S3Q#+0EnV>W!ig_dxl8c|v>tPbTNgw1@XV68XgaT>qtUp;N+*p+ zuYan_rGiLwChP8Vy5mGsTid}CCmK(mR==b3S0_kp?WwEbb_OI!Nd5IUY)su>mqELsCb^&~$s9db+u?E77pMfeS^#QfI zRvC#mfAQ?4dZ4C6m#7P{dfE5gbooUOHlCCUiLeay1+zaMo`5IjAF=&=$`zy1b>AX1 z&YdPWo5Y#KUNIup4FQosqSY2ho7TA;b+HGM(F#veouHDuJ4L{BI7Iiv?9$lwRY?_S zn0xhhtqsgBull+&eo5K?zG&rA?$+EKb;0M8 z(V`1;j`f0EJYoIc+Olo+vVYO!nk@f7ZzF!V;#Bqgs_wNLjk~g};N_b)JfiXVXV<)yOaCx)+Ly};KUtjj;i-8a)MshICn`$+Y3YKW*VmOC zZ{4RYQ&WSe-7wW*=JQNI8j;5hG#E}?GdC{+3`R|IyF2C7}I&zzgx#CUe zVMh)wl;mpX;yDR-VCiT0aP<6;*A^y9fUNP*d?b=w=J3fd1p+f zZ~qHmVfNLVM{N1NNaDPSj z;cGV4%#973RxSHu(d74KkGXH`Gk1)5?E2^aboGeGt{wHn4I>`A&L59{>gKG`ug%YT z*OCQ4+rMYgnKLI%GP(fK6$dFn;35%FO<-Z<<+u{X9#YAeScC5zixz%`5B3sNylIw( zuNC+1E-uKvQEf+lX85(h7Yvv6gVYT?dD3qvlO};4ms$IzAvFcf$j|a~=rY>|urUo| zpJ)g!Yt*n+%f1)nBFe^B4_b}(iL*7ZgO@;0dbUP>%&=8UzZ3L^(qZB&nQdD}EBoHs z>3O3hzOi+eMH64VVa;!}?P(BI>4NH#^^tR4dT4(rSExa6|4aQ<+A3%(>jV2{FPQyN zb+|O`;-1{-fDab?-{;gat1u3Vy{tvP8o+Uuzt8djRl+fz>R%U4ylLfabH4y|7H$K1>Z#y#`0(NDfq#{ZPbe>;EH_f{@>q-N#gYpb8DS^31uW&gWy z?oTu$Fz(qqM?ZPf*k^86H=%0YPmUa3>jbm$E?y9Tz|bY&o94Pr&jlesqpRNCXpfqE znGlh_qc^J6tZ!KJTUUr-YhBNC&#oeK86D%h01+ci!ct13!LsrH>g7Ke08LhlV{^@W zcNS@CTZV)T;6XS!BI93%t~QW8(Y9X@q8{Kfy;47@dif7!#JZ`F=+!uK#ZWQXko%+? z)TIr>#6J|;CQs{>b3*tTsv5}}Ijm;ok58XEK4LWP z``>3xkF5!O>eMmy-O38?(F5Y514(tGsMAug|0T$PSew#JpRzvp>?qPUE_oB4AM{cO zaDqviERyaA|{9`98srBWCd%aR31bTzCS$ zhHp8xwK(@>&TA!#ialYTSN5J}79xB*12PT!wx3JP4Ry}+zdCiQ#qqZ$FT^X>R2|$u zM>EK3F$Z`JT|fCs`X^`RP0hWvsmTxQge1@tUX01H=1q$#KP4Ym6{1?eXsn0?WlP%t zmM|)*vi!T7j;xaOzLo5mjd0&svwrq$$A)!}6lPy1mCMf@Lr?}0W{ST$XIWvw&s^1 z)WDvsp=19`*w~Y+1No(_TKe6>iP!5%(en~P7v9}IJN=)kH|C#~Vr&w&^wiT>#ozxd4Q6HN`97SI3r#Idg*^VBUFBVVQI zgEME%7f6@JPvZar5ExPf^zhpAtG(de!qtdd(iv0Vp!lNN{ z!-{in_xmcQZR8{rdJO5Y<_&V3o;>y{4f#gUTqYPo@zx}g12gl+4qLPGCqYd&iWCQnA$moO!H_Z-?k#}(oLWnXDK#W;6v&(4Brg|C&bk!~Gv zxSlAL#EPbH;&s|&*+dUF0PAfJ?JnWEerZ-Rem+7jKpHQVNT*M=)UNq;?u2VB%>nkc z^S9QPug6<=grH%nHKgo+$*Y&sTc-osW@28&dnb>3ewcFf&!&(nkrj)->F?3c=jl_& zykDZTOCuN__Z@tFYE`>i7sIzE_4@_0=*2J+=} zuQn@d)T_rnecR;mZ`rVRoS$@X<=fYtV@0o@eRp8r?gdkF-aqPzmrNLO&$6oj4p}Yq zbyvQJ00b@+0jn9-SO1qrx01J-k~veA>iX(mD)ESF36oP^1SNSdbD~C7QJd?Ff)hp+ z`X(qfYp2v~X_ww9lWtVsO2mRVEfI50rY!n6M;5p>NpmayMq67(S5g6k?*FR|F)U4u zHOs5MmX~26FHA7?0tPa!QQvttPbAsl&;F_S+P?-@|^y+Eeunm(2giya_LI z1iaM|l|DzJT~;De+BGZx!vzTpOUB#(+Cixx>qV|O(#))_(HJ>w>&B-fkhfmcnJO!I zg?qj{#z?Z?EfJ+`kIANWe{|(<6;WC*yKo5F|30rV)zwPyEgPSZFQ4ner(dTfXa5^9 z&82GIP?7Mv8q8^Q1bh}O&EqZgwKcyg$-C=9Jb=D(8$VoCjRM3e6o9X6U2PMi>Jbmv zr)9amt}J`(ePf=!wQ$mV_wJhS@1;&q?V2%bS3h07;?efDL+(pEIq}unvS)4eGc~K8 zTEAxWsZ+;Wj_ocj`lQwcs|%nnb!J5Ed*VGgh5!UE3;}!IwFj0=!AQFRHm<&~@{_^# zC91A{T^Hu_&u31zY4cO7w4)n3wh`db!(@*+++Ms0$g5WL6=UO(6>{>F=d;$(Sujku zCSpJbn)LTHVR)n?=yjeblNoR!Xaz_JKjN^Cgv-bJgnI(Uz&QFQq|Ao?f-qdO7(yg zWL+))v7OtpisCo<$KOdlaCMH=X>#?Kau(;@vcBfm zt;ejY(aYr`ZAJ2FB>8D~X=>b3IO(rt{O4!=#s0mE0|EYg_RPu5QLobaUq$;ld}vMl zd!MwTgX*Aa{?Bybh{vy+RsL1k|N7>5>;BS$kGar5ui3e+T;D|No#pS&Cj=mHVF+kM zqO98piO6)iJ(R_Qww3e}04 z#>i4%r4(C3cjk2a;e!hnRX(J-fXQQr+t69Y74iVTDE6Mv>DFrggmJ;F54N^$chX;& z#>j3JZ~HW$cVJ(|f|(zhGWiA#;mXPq5RLIhSh(E^-KBq(?lozgl=EeEo1Z%!bAOGn z(ECz`&hO&{I!+wgQI|1m+5-hy&sX-HVvE345q5985$NYn!3id1uGGd2o{W2DJ0(y1 z$eU`~JWF{@yONPLu3AOjdK$l#B*N%O%8WTtU#F1uubDJfeM!w~X*a`^Ez+K3?D6yw zP%HlKMEgO@dni9Bd&Gva{ciwd>v`s?(zUJI?DBW3CNbtIu4mCRE=@R}|Bn&V_PZ(w zmAlSYFJShx2X<`FK6SDwE`~&Mg7yC4x(Vj`uG(hruBr09$;+@sz5~5@+{tYH=qZz4 zvU2ISnY8x`1a_hZpj?=>g{#ToiEt=OZNZd@o&x;d9R`X`M^H@ zd`aOC8XGohy}-CCY0%pfv+^ z^0+IPF8D%6M}y0MNE&we(6|2$eDF4-S}u;I1@~r;9F{jBh4m~_x#aEtpu=d-h2H9^ zX(DO+=FzRK^}bx3CiEh_Vt=p*7{;6WSm>@ z*TDbphvn-w=i4Cv)3-0L^4q&>R6oY*?3q)O$G>U9h?mQy|HvVW{}4P=u_k-z!vE5G z0geC9o%wAiuNA#Nr+#a(E*$;j&DF~v4SpKZSkUIs#XyrEr!;tZ8%P)jY+lvcNaqzUlhznfHVfVmrf{edUW%?WQb$`Jk5M-(9`@ z`;842>n7fgyW@-U(TSz)_}=YX#;jWM?denR6Oe3;(whM`Og=(^Hul9tCv@iBTeI#P zL+UbamTg|f3+K=Jz{a(|Z#}xjWmUKK?~9Ugf731kG&R)7Jy?!6nmCg}sxP4I`z&-L z;EJ^~%L&}ymO%36AFZAzOt zV%V}pU+XdIYw7EyIOC}^MI%6lqr(N`) zr_8T>2}J5Giv#wZL!t1kZL_9*dE^r}PRad1d;1aHEohGI#(mlUezvaR@VcA{Z_^$D zHgT}k1p#&*L0)8~Gq>VfnpVikczerH+d$Lb(f`UP1RyXp2)IaJ&5dg`Qz>JkYh{~$ z^{5(N)!_8vH?+k3tNWX!O%9Y*=^D(@UZQF{BJ8SIOt#UgvH$*L`um(FlLH$$NvwX4 zw`^BPjV&7y8Ni)JV5cSQi>ZrU=i5hbF6xqa3a(5w81i&{L`_f2(JlM;ly6x3`}wmzJT>R$ybQ~%Z}HT`T>8wrpoOp+N$@-!8$R_|)!skY|7(|!L&m#d!`SXP~Pjz3(w%hBdqt>~XS{k=Bi zD|Err)J12!jp}=d9;{o4p>s6CuzACyt;e>-Xhfqbrs0>C{ck3pw-wKvY1_BEY-Z`( zeU;@jwm%mvZ~tq)rnCHdIWl5B?0;*Lbh+N{c^^J~>g#G&{J6DcyGy`VBlg+ezE9tm za$C4Nb8#0+x9m%*UGy|^Xb}=dCs)=OrP>v#n~v%y-gONHWX9r zlsxl|k7e1c!LDxsQ8Oemg%hupQKuo$@}k$yt$4qpxa`?AwY6oNBIyMM&|QGw`-}O1 z&{lTJpzc^(+a8VR)^8mvzbVC2oj&z`$K)3IfN3OIK$L44Y|3~+_SHp`ZV)c@q~ye+ znfKZ?|9xQZOc@3WS`r^F?s=Ea`(5NCE0jdVkYy#wH6X7g&HV>uZCc^0 z%JT1-nsdvPNjDTuyhbJN%n!3?grb{P=uh>Yw5FgS>xI%H`F)iY-aCED>oh*8ZST}4 zQu@IV_r)|%7hgi>yc4ka8%J@1NAB ztl-{xGv2qp=2wRg%-8+`ULGaqZJ`v!>-BV#>Jqd6T|PVYw&P@@rjYz{9%pjPBdB*X zJEZ;ZlJ(>5wtHe2e6MATCBk{$I#EId@s zSWOtcrf$oKj*dpBGlnHP<>^(U`uQ^U2&`EAyU|a*G&kezZO7dLmabRyYX3W(|8sNW zW<~oS|J*&}pL_ZCx)NRIzYh|y^tBwga>m0WAHT6A|6?ox4#@C71cn#^KZdhu-T%l1 zNDX3Nm3E5XtID-nw|32M0vxeQDflzx|Gk`=swmFALoK)(krYMhy)jZEs>9`$P``DY zlPRp6$z@D;@$a6etFAqxMH$*P>1fk>86^96mG0a&QR`JVum6AYV9~7iy6Rtadv93# zNZqEV>g&eu**T^0@bdQd14<#$o(!_q*G+qhaZ$eM6N{Lf6O$81ni^Iqe9-P4xfCC2ee^A8Z^=p2$x%N-m+*V)eDRXMmZHz*RMEJ7QE=Bu4jwr_bX!Cj( z@yu@%(0dmk3j04^nOiHPZMD@RXsAT7h3Cw8(E4}deFJ2_4$xbgJ>vJ;Rstv;23DG_>-R{Ys5P(4R1iY0f^FZ4m+7x*($Q-iTRQ0IAnYlCm z#&6&felWz#dE&$&?bWW7Benl+>UPEAhZRdCdcH}e=$njzXgCHg<)kte?xZln$FB`1 z!bQG1o(mmB`--O=ZL)(ZHJ``iMN0Mjlv2L5?SG+&(K~zY^sf5cnWYbC!I6yuS%cEW z4)^wdb-MmPy){gBi}?JPJE6-Rd%GmM>MMMT_L=bVw>YqO zsf!@=ip{mz`q6)xa2AIUfWTlU;D-wo1$5T5zi=)UE4(*xHCaemLtO6L5p%gzjhfzD*T$RU5Rwe4OI?o6$0W$L z>B%Mcij`@4D&eoXr1|t!;Kr?gXaSbKQV9RODdZ(R{vSuAD$6n}4}4YBMH8==drUWX zAaDP#S@j?BYkE7dM0)lA4=Vre2E3B>?{3|VzRpki`wW{Y&K*D8a+Gn!@~W@PJJFAX z2M16FaF#~ z7a`d_9f_C5QfoVYptSH43Lm<>>eucTUHn?RT)-a?fWROnpt`~4zLzchk^+xJwgkY9 z`MBM6M?{rxFX#UFR7KZerIhRQu2aKmJLD1VM78>p7X%;xfrtoLm2!F5|IXHQ4T|DO zHaFHRoc%FH-PdTjHo5bbxwrr2h1D-xBbJi=AF}@M|8iOW5?kYAa*>@s^Y0EHTzKx> zDM_ed8fCNJj9i=_H?Gf6=>Gid_cS+cH3@pS6vpj;8SuMy%xrDlceHt1!;#v;iGMxr z**nz**tKJpuG4mny=A~kN6qo<@~=Gir)w%J9`=9sb|&9J00M)WfVZo+ZyhId-CTeo zva5YPFL%(WGOuA4C8aHED@xuhC(o$l^fkXSzJB#DdXAGsB|Pas00NgQfy>GMkCm~q zY`NBF{kF^*Q}2`UoHHRdM6V%qg>s6W*!zEW?clKgZLP8TFN*Lpr~Ex~ZSu{fNgbPJ z?L7k*_uDnAo*Mh~t;P8tZf&tGx`MLk6w2HGvhx)qNP7fijefP>nWJ8rG4hrACVR~5 zmn{6np@Y?(7j!v_jTz3H_1$M5ec{Zq|6?~8l>MMCQu7A{AkdS58yrv!z>>VXR5Po( z>whpL>0fPGmV%Z9p%;B~(DU{wePfBNT=K1m?f(p$)tz1TPHk%Aq=`h-l=8*N5P-m? zO2F!q%Vqq(OBu>gv_Tu~d!ohZ1zFd+fSgxq5AO9fzwB~i_dkr-#kT*|Tajz1?FUg& z{6;MvKXu9idpcWsus0AjD<7BrUy}dP)|Nei%#1AfZ~f_AfF_N9 z^M-X3bcIcGbba|9jpxt)SK0p+WnZ*&u>ZRv;x7mc5d!vfpZoLKxijADoExL^tGAeh z3e32BN1>%3Mg8CtsoV6No2TgR0-AKkq{oFB)>WCBbDM&PM@&A7UHHq|HDlIQKfA8_Ilbr4`GGd}(#8Sm1&n*{ zuDZh5Gee^}M%fG41B|sAOL|&h=5flm+Sa{ycjK}nKvC3X|3tV%J>hx9T>3- zZvWfz1cfav%)U|kFlsLY$q*a1>R~_kCi9^9&YSv&4^?N3ym!U?>v6 z{!c8m?zU*+Z^7|}wf_~;-z@>l8TY)Zxep!OUzs3AGSUX84}$-_{V%uw+{_2G|JRz; zPxUHPqWyp5&|007I6?1Q>S;v}$-E!+#Et7}o=ZHz|GIr^vBHE-9QVe3dwk#qr|Kj|QoI2%$T6FT)(fRCu8~$2Y`9oU>{M5}Wmp;U`~U1&+ufkN z__Ol=*CxW%%OADteVgb$j~(5fm-)chr*B_8|7VsqF9<+jXcMp+ueot;N!}eASC7iB zRyuOjDW7`(v16N+zOS0XaWXm2oatD)@Jr7Ak7mPSxBk~$fELdFXvc{LC*cro0>TmI zY6w6eLIPHkVE?BA)QAn7{jXLjXS})kmrr@!#&v%7$O9mU46QJ>4GmPK3ilP0V{;^c&(_qX8)cU;t+-XZ>cCL#gQn; zdZC|UaGyP*dUoC6H;Hph)S^i*K5}r8D>AzaF9<*Y0^tZ)O@jTO3PU5dZ&!&z@wkzh zh_r+(|$NaS>h@Bsk`T;>F@|5H@}BX(flEDb|B7oA~w znOBCZ=e3QmLfhFskJ{#b)spWVYu@175%+ninXi68zP;^mao&ft3ZQV(UmtDSCZzE$ zKw$shqcyzREO^KE>2+JCY}-0@+t%WhOCHhr>NQLl@rsd8+_-enf9XQC-PU}oUvc(S zMd=q66lmhO*YDrE*!^@ypS&Odfgw%6+vf-N&73m%C6T%SU8!2Pa{6DLJlW*3l`1!WYMJSG%PcD ztZew_EpEYw`9{#zR?~sw7IqKEgCLnvveet(j^Lxwar(Qbl**j-X|N4oJW_P|8M4!>J zZFL96J$r|y6;>_(qosBZ<6jtfLEsV~V721Olg)F=A9OB2(YV&js8(-6WA(?}?z+D2 z4GGIvZgSlWCMj&1IEuFmSeo~;w&OdTgkifXA+yQl5P-nYCxHE*b{QJF#v?11SA9(_ zh$f~LO~MWMBw68Wk*}@lnmq1#^Jjf<-<~qxaJV+;a;V!akINVTR_40K`70~F)p4TH zmxMO?(ir};kG}A^KV9?epRP`PPZ)7eZpJ&xr+#|##>xI&~xO@=X^7G#dNg?QG~k5<7}X&pN@e4 zDQDbp4P?!l_O4y^lTW)nD4qR(`PAx`Qe8eM!ON1CJ~hJniW6RTxSG=k^}@G zaJdt(ngshlZ7oo3AM-Ogcdq^T?z&CSPM`8R)zXv34$qmOr2$tdm}kP|uWjS24uV>o z()_!(Z60yb#dA|4aqsuEB^h!T`rebq>K9i2XzVlQx09Fk7aMCce1y;QXUBEE_Ux?G zJ_0t0@YF5SraW}?XuU3s_sh|Vx@y-Y3qC(ML>o#{Bv#0> zLbYM#!r33o&wQ~h4H$n#_NZY+6K`0x^xLh+w)kAh@O9q)Ln)8Z%PI)2`?Gt;Yz^R# ze)48T^&k7p?Ri=6s+#xj8`o#-s-Jmq-!i%V9NfQR&#t*!H{~v``n6&Q>6|f7-8%B| z>kB76xVd&>K=QKfNkv~WqzHjQM!=r#&9#qd34o>mqI(ZlkH>pr(YI5zMV?==kOTp=3-AOHafKmY;|7<>d|nwseqe`BUbT1JK! zq)8$bEQjm7rzd&ZdDGzp2tWV=5P$##AOHafKw$6?a2*2o;Z_RAM*atnd`JQT2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| zfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| zfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| zfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| zfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;| zfB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U< z00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV= z5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf zKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_ z009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz z00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_< z0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb z2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$## zAOHafKmY;|fB*y_009U<00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOHaf{C^@D Bf!hE8 literal 0 HcmV?d00001 diff --git a/Software/Applications/GDB/GDB_的使用.md b/Software/Applications/GDB/GDB_的使用.md index 41e9338..fd180d1 100644 --- a/Software/Applications/GDB/GDB_的使用.md +++ b/Software/Applications/GDB/GDB_的使用.md @@ -3,6 +3,8 @@ ## 1.基本指令 ```bash +# Attach 到已运行的进程 +(gdb) attach # 设置调试目标文件(解决找不到符号或找不到文件问题) (gdb) file # 开启/关闭伪图形窗口 diff --git a/Software/Development/Environment/Qt/Embedded/Qt_Embedded_说明.md b/Software/Development/Environment/Qt/Embedded/Qt_Embedded_说明.md index 9e82bdd..edb8bc0 100644 --- a/Software/Development/Environment/Qt/Embedded/Qt_Embedded_说明.md +++ b/Software/Development/Environment/Qt/Embedded/Qt_Embedded_说明.md @@ -51,6 +51,25 @@ export QT_DEBUG_PLUGINS=1 - evdevtablet - evdevtouch +## 1.2. EGLFS + +```bash +export QT_QPA_EGLFS_KMS_CONFIG=kms_config.json +export QT_QPA_PLATFORM=eglfs +export QT_QPA_EGLFS_INTEGRATION=eglfs_kms +export QT_LOGGING_RULES=qt.qpa.*=true +export QT_QPA_EGLFS_DEBUG=1 +``` + +sudo cat /sys/kernel/debug/dri/0/summary + +QT_QPA_EGLFS_INTEGRATION: + +- eglfs_x11 +- eglfs_kms +- eglfs_emu +- eglfs_kms_egldevice + ## 2. 自启动 ### 2.1. init 方式启动