QFIphWdirty bitcorrupt bitexternal data filecompression typeextended L2 entrieslazy refcountsbitmapsraw external data  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_XSYSLINUX?1ɎѼv{RWV&x{ٻx7V x1?Gd|MPPPPbUuOv1s+Eu%8Mt f=!GPTu}u fufuQQfuQQf6|r uB|?|UArUu tF}fff>^jhutf`{fd{+fRfPSjjf`Bwfadrf`1hfaF}+f`f6|f>|f1ɇff=wAňָ/far1ּh{fx} t 1t{Boot error >7Uht :1jj1jS:1j <Bk..BƶMt9d//mntegD_ :1j @ 4-6h,#k# Kre#J#T# oa# q& # + #& #0v #~ #R*e]'#d 8#r9 # 1!# 1_"!Qi `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  ` ! !`!!! " "`""" # #`### $ $`$$$ % %`%%% & &`&&& ' '`''' ( (`((( ) )`))) * *`*** + +`+++ , ,`,,, - -`--- . .`... / /`/// 0 0`000 1 1`111 2 2`222 3 3`333 4 4`444 5 5`555 6 6`666 7 7`777 8 8`888 9 9`999 : :`::: ; ;`;;; < <`<<< = =`=== > >`>>> ? ?`??? @ @`@@@ A A`AAA B B`BBB C C`CCC D D`DDD E E`EEE F F`FFF G G`GGG H H`HHH I I`III J J`JJJ K K`KKK L L`LLL M M`MMM N N`NNN O O`OOO P P`PPP Q Q`QQQ R R`RRR S S`SSS T T`TTT U U`UUU V V`VVV W W`WWW X X`XXX Y Y`YYY Z Z`ZZZ [ [`[[[ \ \`\\\ ] ]`]]] ^ ^`^^^ _ _`___ ` ````` a a`aaa b b`bbb c c`ccc d d`ddd e e`eee f f`fff g g`ggg h h`hhh i i`iii j j`jjj k k`kkk l l`lll m m`mmm n n`nnn o o`ooo p p`ppp q q`qqq r r`rrr s s`sss t t`ttt u u`uuu v v`vvv w w`www x x`xxx y y`yyy z z`zzz { {`{{{ | |`||| } }`}}} ~ ~`~~~  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `   `à  `Ġ  `Š  `Ơ  `Ǡ  `Ƞ  `ɠ  `ʠ  `ˠ  `̠  `͠  `Π  `Ϡ  `Р  `Ѡ  `Ҡ  `Ӡ  `Ԡ  `ՠ  `֠  `נ  `ؠ  `٠  `ڠ  `۠  `ܠ  `ݠ  `ޠ  `ߠ  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  `  ` !a!!a!!a!??:1j:1j:1j7AK1j?1j?1j # -OO^:1j/cY0:1j:1j:1j 0 :1j@:1j:1j:1j   ?v:1jA0i1j:1j:1j  $8 $:1jA i1ji1ji1j 1$=B С]]̔:1j@GAi1jZ1jZ1j 27W6 uK:1j@-:1j:1j:1j  $NpE Z@!@!HcV:1j@AP1j>1j>1j 33̫ NV:1j@;1j:1j-j $HD@ @ lm :1j@̨;1j:1j-j $44&C @ pZ :1j@ ;1j:1j-j $ĄI Y@ p :1j@ Ai1j:1j:1j 5ס]f D6%D6%|:1jD6%a:1jZ1jZ1j ^ $i !F+ ?D6%:1jD6%i1ji1ji1j 'ͬVzR y"h;h;h;i1jh; =1j=1j=1j/bin/busyboxH B>}h}=1jh} i=1ji $w? ?)=1j K(Oi=1ji $r~ ؑ?)=1j K(i1ji1ji1j  Ul$l$l$i1jl$i=1ji $%Jr \Q3*=1j(=1j=1j=1j../proc/mountsAZ ވQ3*((=1j(i=1ji $qo kQ3*=1j(i1ji1ji1ji1j* Xq ]]|"@i1jt<6i1ji1ji1j/etc/init.d/devfs[0F |HHHi1jHH i=1ji $YE Q3*=1j$) 2i=1ji  $-0 ޙQ3*=1j$) Ůi?1jŮi )b(G? . ?1jB&i=1ji ,$=|m& gQ3*=1j-?)5i=1ji -$$ XQ3*=1j-?)h: =1j=1jgi 0J S<=W=1j5K1j=1j=1jld-musl-x86_64.so.1P$+ E:>*==1j*=G =1j=1jtrbi$ 27 /㠮ZUW=1jHAi1j=1j=1j 8ьZfU ؅ZUZU=1j]5Strbi=1jtrbi .$,oL ^ZU=1j]5SAi1j>1j>1j 91 c hh=1j]5Strbi=1jtrbi 2$1 ƠZU=1joSAi1ji1ji1j :`Hfئ hShS̔=1joSAi1j=1j=1j ;/t oSoȘb=1joSAi1j=1j=1j <^ ̂ɞ̂ɞ̦b=1joSAi1j=1j=1j =r t 5xSxȘb=1jxSAi1j=1j=1j >Z|LE< xxSxȘb=1jxSAi1j=1j=1j ?˴nS ĵɞ̂ɞ̦b=1jxSAi1j=1j=1j @! ZZUZU̔=1jxStrbi=1jtrbi 3$'J &`ZU=1jxStrbi=1jtrbi 4$5?5t ZU=1j)TAi1j=1j=1j AF ԹZUZU =1j)Ttrbi=1jtrbi 5$Ⱦv BZU=1j)TAi1jF1jF1j  DaC M,,u=1jfTAi1jZ1jZ1j  E1; ݴ:K:KЙ=1jfTAi1j=1j=1j F#L7x xmUU)=1jfTtrbi=1jtrbi 6$f U=1jfTAi1jZ1jZ1je Nu}Z a\Y-Y-63=1jj^ =1j=1j=1j/bin/busybox: LR`LR`LR`=1jLR` =1j=1j=1j/bin/busyboxPm mLR`LR`LR`=1jLR` =1j=1j=1j/bin/busyboxL YLR`LR`LR`=1jLR` =1j=1j=1j/bin/busyboxXxP -U`U`U`=1jU` =1j=1j=1j/bin/busyboxJT@ TU`U`$i=1jU` =1j=1j=1j/bin/busybox2 8z U`U`Kp=1jU` =1j=1j=1j/bin/busyboxrAP k˨U`U`U`=1jU` =1j=1j=1j/bin/busybox"vq U`U`U`=1jU` =1j=1j=1j/bin/busyboxZY BU`U`U`=1jU` =1j=1j=1j/bin/busybox?i tU`U`U`=1jU` =1j=1j=1j/bin/busyboxi LU`U`U`=1jU` M1j=1j=1j/bin/busyboxo רU`U`i=1jU` =1j=1j=1j/bin/busyboxl s5U`U`U`=1jU` i1j=1j=1j/bin/busybox! U`U`\s=1jU` =1j=1j=1j/bin/busybox# !U`U`U`=1jU` =1j=1j=1j/bin/busybox U`U`U`=1jU` =1j=1j=1j/bin/busybox+ o/ Zg ag ag a=1jg a =1j=1j=1j/bin/busybox^ }Ig ag ag a=1jg a$i1ji1ji1j DzCzZ =dEddh1jTm8 =1j=1j=1j/bin/busybox*@К \g ag ag a=1jg a =1j=1j=1j/bin/busybox6aC Rrg ag ag a=1jg a =1j=1j=1j/bin/busyboxr g ag ag a=1jg a =1j=1j=1j/bin/busyboxf| Kg ag ag a=1jg a =1j=1j=1j/bin/busyboxi8; g ag ag a=1jg a =1j=1j=1j/bin/busybox:P 7ިg ag ag a=1jg a K1j=1j=1j/bin/busybox0 N=g ag a4=1jg aE1jE1jE1jlibsmartcols.so.1.1.0z72 _  E1j  =1j=1j=1j/bin/busybox צ BpFapFapFa=1jpFa =1j=1j=1j/bin/busybox"<} ӨpFapFapFa=1jpFa =1j=1j=1j/bin/busybox9#} 6pFapFa=1jpFa i1j=1j=1j/bin/busyboxo pFapFal'=1jpFa =1j=1j=1j/bin/busyboxm[ PpFapFapFa=1jpFa =1j=1j=1j/bin/busyboxVo 5pFapFapFa=1jpFa =1j=1j=1j/bin/busybox:ʆ63 ǨpFapFapFa=1jpFa =1j=1j=1j/bin/busybox4} DpFapFapFa=1jpFa i1j=1j=1j/bin/busybox! J ԋpFapFa`6=1jpFa =1j=1j=1j/bin/busyboxJHT 2pFapFapFa=1jpFa N1j=1j=1j/bin/busybox#`%' rpFapFat=H=1jpFa K1j=1j=1j/bin/busyboxg JpFapFa%Q=1jpFa =1j=1j=1j/bin/busybox`J7 5pFapFapFa=1jpFa F1jF1jF1j/bin/bbsuid.%B ?AXc`Xc`Xc`F1jXc` =1j=1j=1j/bin/busybox& ̨yayaya=1jya i1j=1j=1j/bin/busyboxE] AĨyaya\|=1jya =1j=1j=1j/bin/busyboxY#, yayaya=1jya =1j=1j=1j/bin/busybox7N i%yayaya=1jya =1j=1j=1j/bin/busybox߯X ퟨyayaya=1jya =1j=1j=1j/bin/busyboxT: _yayaya=1jya =1j=1j=1j/bin/busybox\ %Iyayaya=1jya =1j=1j=1j/bin/busyboxKК[ 3Zyayaya=1jya&K1j?1j*c  3.s~ TJt8]?1jAYt =1j=1j=1j/bin/busybox3}7N maaa=1ja =1j=1j=1j/bin/busyboxt 5 Ũaaa=1ja =1j=1j=1j/bin/busybox9 9aaa=1ja =1j=1j=1j/bin/busyboxJ gaaa=1ja =1j=1j=1j/bin/busyboxVU& Saaa=1ja =1j=1j=1j/bin/busyboxx[! jaaa=1ja =1j=1j=1j/bin/busyboxT _aaa=1ja =1j=1j=1j/bin/busyboxxL DMaaa=1ja i1j=1j=1j/bin/busyboxnk%U 2aal&=1ja =1j=1j=1j/bin/busybox]v 2aaa=1ja =1j=1j=1j/bin/busybox@e#$& =.aaa=1ja =1j=1j=1j/bin/busyboxD zaaa=1ja =1j=1j=1j/bin/busybox.3] aaa=1ja =1j=1j=1j/bin/busybox` aaa=1ja =1j=1j=1j/bin/busyboxgU` Saaa=1ja =1j=1j=1j/bin/busyboxy@W Faaa=1ja =1j=1j=1j/bin/busybox:) P$ .aaa=1ja =1j=1j=1j/bin/busybox6a Paaa=1ja =1j=1j=1j/bin/busyboxTC aaa=1ja =1j=1j=1j/bin/busybox~4Z?4 aaa=1ja =1j=1j=1j/bin/busyboxxF Faaa=1ja =1j=1j=1j/bin/busybox^LZ aaa=1ja =1j=1j=1j/bin/busybox: aaa=1ja =1j=1j=1j/bin/busybox aaa=1ja K1j=1j=1j/bin/busybox~f ZaaV=1ja =1j=1j=1j/bin/busybox= ywbwbwb=1jwb =1j=1j=1j/bin/busybox  wbwbwb=1jwb =1j=1j=1j/bin/busyboxOP )wbwbwb=1jwb =1j=1j=1j/bin/busybox[)b Xwbwbwb=1jwb =1j=1j=1j/bin/busyboxp AG Awbwbwb=1jwb =1j=1j=1j/bin/busyboxTUK wbwbwb=1jwb =1j=1j=1j/bin/busyboxu 6wbwbwb=1jwb =1j=1j=1j/bin/busyboxuF[* wbwbwb=1jwb K1j=1j=1j/bin/busyboxIJV @wbwbJ`=1jwb =1j=1j=1j/bin/busybox>2n xwbwbwb=1jwb ?1j=1j=1j/bin/busybox97x (wbwb܍=1jwb =1j=1j=1j/bin/busybox; <4wbwbwb=1jwb =1j=1j=1j/bin/busyboxI fEwbwbwb=1jwb P1j=1j=1j/bin/busybox?FO }wbwbu\Z=1jwb =1j=1j=1j/bin/busybox ry8 wbwbwb=1jwb =1j=1j=1j/bin/busybox޶&c] "wbwbwb=1jwb =1j=1j=1j/bin/busyboxa|7e p9bbb=1jb =1j=1j=1j/bin/busybox: wbbb=1jb =1j=1j=1j/bin/busyboxBXQ #ਦbbb=1jb =1j=1j=1j/bin/busybox$BI Kbbb=1jb =1j=1j=1j/bin/busyboxp̴ M?bbb=1jb =1j=1j=1j/bin/busybox Fbbb=1jb =1j=1j=1j/bin/busyboxD@o ~bbb=1jbAi1jF1jF1j  J! Z,},}=1j< =1j=1j=1j/bin/busyboxLfxr5 sbbb=1jb#.j=1j.j Y$  F1=1jy =1j=1j=1j/bin/busyboxi ?7 Q٨bbb=1jb =1j=1j=1j/bin/busybox9w Ibbb=1jb@M1j?1jjN 'R{+) ję~p1?1ją| M1j=1j=1j/bin/busybox0 ͓bb^=1jb =1j=1j=1j/bin/busybox,z#L 񨦴bbb=1jb =1j=1j=1j/bin/busybox@y, bbb=1jb =1j=1j=1j/bin/busybox%5h bbb=1jb =1j=1j=1j/bin/busybox)03I Ҩbbb=1jb =1j=1j=1j/bin/busyboxQ' tbbb=1jb =1j=1j=1j/bin/busybox7HJW abbb=1jb =1j=1j=1j/bin/busyboxt\Qu =bbb=1jb =1j=1j=1j/bin/busybox*= 4bbb=1jb =1j=1j=1j/bin/busyboxK Cabbb=1jb =1j=1j=1j/bin/busybox'~D bbb=1jb =1j=1j=1j/bin/busyboxFz bbb=1jb =1j=1j=1j/bin/busybox? rrbbb=1jb =1j=1j=1j/bin/busyboxz bbb=1jb =1j=1j=1j/bin/busyboxxN dEbbb=1jb =1j=1j=1j/bin/busyboxGc=N fbbb=1jb =1j=1j=1j/bin/busybox* -bbb=1jb =1j=1j=1j/bin/busyboxb=ux bbb=1jb =1j=1j=1j/bin/busyboxtF ^kckckc=1jkc =1j=1j=1j/bin/busyboxXl &kckckc=1jkc =1j=1j=1j/bin/busybox!X ˨kckckc=1jkc =1j=1j=1j/bin/busybox] ,èkckckc=1jkc =1j=1j=1j/bin/busybox jkckckc=1jkc K1j=1j=1j/bin/busyboxWO5 BkckcqL=1jkc =1j=1j=1j/bin/busybox& [kckckc=1jkc =1j=1j=1j/bin/busybox>>-< tkckckc=1jkc i1j=1j=1j/bin/busybox O$ }kckcZ=1jkc =1j=1j=1j/bin/busybox] ʨkckckc=1jkc =1j=1j=1j/bin/busybox}"@ ;kckckc=1jkc =1j=1j=1j/bin/busybox#\H 3kckckc=1jkc =1j=1j=1j/bin/busybox ^kckckc=1jkcXGjE1jGj vKn _E1j M1j?1j?1jlibjson-c.so.5.4.0; Wx 7Ȱȓ4?1jȓ =1j=1j=1j/bin/busybox &ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxY_{ %ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxq P/ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxÎe 'ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busybox, ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxU_1.? .ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busybox/ ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxL {ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxk^i ʨcʨcʨc=1jʨc =1j=1j=1j/bin/busybox`A™ Zʨcʨcʨc=1jʨc =1j=1j=1j/bin/busyboxz, &ʨcʨcʨc=1jʨc K1j=1j=1j/bin/busyboxG,X ߅ʨcʨc:==1jʨc =1j=1j=1j/bin/busyboxbr lʨcʨcʨc=1jʨc =1j=1j=1j/bin/busybox* tccc=1jc =1j=1j=1j/bin/busyboxTj C2ccc=1jc =1j=1j=1j/bin/busybox ccc=1jc =1j=1j=1j/bin/busybox fccc=1jc =1j=1j=1j/bin/busybox1^0 ccc=1jc K1j=1j=1j/bin/busyboxo@7 $ qSccܘu9=1jcXM1j?1jvph~ ?^YsR 8UȰ?7?1jȜRAi1j?1j?1j G1b G܍܍l?1j܍ =1j=1j=1j/bin/busyboxs* ƨccc=1jcE1jE1jE1jlibnvme-mi.so.1.16.1Ay`, œE1j =1j=1j=1j/bin/busyboxhO [ ٬"d"d"d=1j"d =1j=1j=1j/bin/busyboxD3$ ?"d"d"d=1j"d i1j=1j=1j/bin/busyboxFif W"d"d`g=1j"d =1j=1j=1j/bin/busyboxׄ:] ,"d"d"d=1j"d =1j=1j=1j/bin/busybox8D "d"d"d=1j"d =1j=1j=1j/bin/busyboxc[DR "d"d"d=1j"d =1j=1j=1j/bin/busyboxrҖ _"d"d"d=1j"d =1j=1j=1j/bin/busyboxё- &"d"d"d=1j"d =1j=1j=1j/bin/busyboxT(I >"d"d"d=1j"d =1j=1j=1j/bin/busyboxR:G %i"d"d"d=1j"d =1j=1j=1j/bin/busybox&0Ѻ ;Ӭ"d"d"d=1j"d =1j=1j=1j/bin/busyboxe=/i! ld"d"d"d=1j"d =1j=1j=1j/bin/busyboxA& "d"d"d=1j"d =1j=1j=1j/bin/busybox-r`Ɵ nddd=1jd =1j=1j=1j/bin/busyboxOv ddd=1jd =1j=1j=1j/bin/busyboxLl 7ddd=1jd =1j=1j=1j/bin/busybox ddd=1jd =1j=1j=1j/bin/busyboxy*ɪ Kddd=1jd =1j=1j=1j/bin/busybox(22f ¬ddd=1jd =1j=1j=1j/bin/busyboxK h ddd=1jd =1j=1j=1j/bin/busybox^ lddd=1jd i1jF1jF1j/bin/bbsuid'Xp Xc`Xc`pX,F1jXc` =1j=1j=1j/bin/busybox SӬddd=1jd =1j=1j=1j/bin/busybox= eee=1je =1j=1j=1j/bin/busyboxj q1ͬ eee=1je =1j=1j=1j/bin/busyboxkt eee=1je =1j=1j=1j/bin/busyboxN )eee=1je =1j=1j=1j/bin/busyboxyVQ eee=1je =1j=1j=1j/bin/busyboxZyS' seee=1je =1j=1j=1j/bin/busybox"3md ixeee=1je =1j=1j=1j/bin/busyboxgVڊ ̬eee=1je =1j=1j=1j/bin/busybox 3eee=1je =1j=1j=1j/bin/busybox*K eee=1je =1j=1j=1j/bin/busyboxɭI Dެeee=1je =1j=1j=1j/bin/busyboxTV eee=1je =1j=1j=1j/bin/busyboxB ҙeee=1je =1j=1j=1j/bin/busybox7m57 ;¬eee=1je =1j=1j=1j/bin/busyboxs7S oeee=1je =1j=1j=1j/bin/busybox\#U ,eee=1je =1j=1j=1j/bin/busybox+P Ceee=1je =1j=1j=1j/bin/busybox&_ (eee=1je =1j=1j=1j/bin/busybox:4 q3eee=1je =1j=1j=1j/bin/busyboxm\ deee=1je =1j=1j=1j/bin/busybox8hE+ eeĮc=1je =1j=1j=1j/bin/busybox'd# 5eee=1je =1j=1j=1j/bin/busybox J`eee=1je =1j=1j=1j/bin/busyboxHĬ eee=1je =1j=1j=1j/bin/busybox+0>{ veee=1je =1j=1j=1j/bin/busybox&_V Ϭeee=1je =1j=1j=1j/bin/busybox#) &eee=1je =1j=1j=1j/bin/busyboxu8Ҩ eee=1je =1j=1j=1j/bin/busybox|Օ& %Meee=1je =1j=1j=1j/bin/busyboxl.4 ׭eee=1je K1j=1j=1j/bin/busyboxM͊,8 ee:=1je =1j=1j=1j/bin/busybox( Ngeee=1jeM1j?1j?1jlibcryptsetup.so.12.11.0ą3 {E̔܍a?1j܍ =1j=1j=1j/bin/busybox!qxM eee=1je =1j=1j=1j/bin/busyboxA + L$ f$ f$ f=1j$ f K1j=1j=1j/bin/busyboxGN $ f$ fdO=1j$ f =1j=1j=1j/bin/busybox'K OЬ$ f$ f$ f=1j$ f =1j=1j=1j/bin/busybox͚& @$ f$ f$ f=1j$ f =1j=1j=1j/bin/busyboxFD 6f6f6f=1j6f =1j=1j=1j/bin/busybox u6f6f6f=1j6f =1j=1j=1j/bin/busyboxgm H6f6f6f=1j6f =1j=1j=1j/bin/busybox 6f6f6f=1j6f =1j=1j=1j/bin/busyboxM 6f6f6f=1j6f =1j=1j=1j/bin/busyboxUsF@ J6f6f6f=1j6f =1j=1j=1j/bin/busyboxcI˕ 6f6f6f=1j6fAi1j=1j=1j On 1 slaO =1jO =1j=1j=1j/bin/busybox:s1 Y6f6f6f=1j6f =1j=1j=1j/bin/busyboxP-\; @6f6f6f=1j6f =1j=1j=1j/bin/busybox׽ 6f6f6f=1j6f =1j=1j=1j/bin/busybox2O ?f?f?f=1j?f =1j=1j=1j/bin/busybox)TR 9?f?f?f=1j?f =1j=1j=1j/bin/busybox<>C ֬?f?f?f=1j?f =1j=1j=1j/bin/busybox]d &?f?f?f=1j?f =1j=1j=1j/bin/busyboxCaI L8?f?f?f=1j?f =1j=1j=1j/bin/busyboxpvż&~ 4?f?f?f=1j?f K1j=1j=1j/bin/busybox w0 Ѭ?f?fXP=1j?f =1j=1j=1j/bin/busyboxRa( 0Ь?f?f?f=1j?f i1j=1j=1j/bin/busybox-9 |?f?fd>=1j?f K1j=1j=1j/bin/busybox6 /?f?fUj=1j?f =1j=1j=1j/bin/busyboxGKJ] h?f?f?f=1j?f F1jF1jF1j/bin/bbsuid ( 1Xc`Xc`Xc`F1jXc` =1j=1j=1j/bin/busyboxM"a 1HfHfHf=1jHf =1j=1j=1j/bin/busybox, |CHfHfHf=1jHf =1j=1j=1j/bin/busyboxet4t HfHfHf=1jHf =1j=1j=1j/bin/busyboxTD!P- =HfHfHf=1jHf W1j=1j=1j/bin/busybox< qHfHfLW=1jHf =1j=1j=1j/bin/busyboxO> HfHfHf=1jHf =1j=1j=1j/bin/busybox8C& HfHfHf=1jHf =1j=1j=1j/bin/busyboxhhh=1jh =1j=1j=1j/bin/busyboxcfI hhh=1jh =1j=1j=1j/bin/busybox€'x hhh=1jh{i1ji1ji1j Y x8|ڐA|Ai1j|@#i1ji1ji1j  _ |=0D|4C|+Ci1j|+CEi1ji1ji1j $H ixu9x8-i1jx8Ai1j>1j>1j $ hh>1jhAi1j=1j=1j P5R ) aa =1jaAi1j=1j=1j QՓv ` =1jai=1ji :$қU =1jaAK1j=1j=1j RB3 L܍܍!7X=1jjΉ L1j=1ji ;$| "@=1jjΉL1j=1ji =$^. ܍=1js zL1j=1ji @$Tl ܍P=1js Ai1j=1j=1j S s s =1js |ii1ji1j s ( =|FmD|FmD=1js Ai1j=1j=1j T9 g|Hs =1js Ai1j=1j=1j Uٵz ŠŠ =1j|HAi1j=1j=1j VK3 |H|H =1j|HAi1j=1j=1j Wo |H|H =1j|HAi1j=1j=1j X{- W|H|H =1j|HAi1j=1j=1j Y?|q tVŠŠ =1jŠAi1j=1j=1j Z1 w &ŠŠ =1jŠAi1j=1j=1j [b d >܍܍и=1jŠai=1ji B$?> f܍=1jŠi=1ji C$ ܍=1jŠi=1ji D$Oa~ R܍=1jAi1j=1j=1j \E!p' }}̦b=1jAi1j=1j=1j ^p ̔=1jAi1j=1j=1j _\(S 8<̔=1jAi1j=1j=1j ` +K <<̋=1j<Ai1j=1j=1j b؝8 m<<̔=1j<Ai1j=1j=1j cU;e j<<̔=1j<Ai1j=1j=1j daZi <̔=1j<Ai1j=1j=1j i$u* F =1jAi1jF1jF1j  m`S N(( (( Z'=1jAi1j=1j=1j nQQ5" u=1jAi1j=1j=1j oj8 ܍܍Z'=1ji=1ji E$H|kr Qa܍=1jAK1j=1j=1j pzC$ H200^=1j0Ai1j=1j=1j q$gk 0063=1j0Ai1j=1j=1j rU>) $0063=1j0Ai1j=1j=1j s}q 0063=1j0Ai1j=1j=1j tv_ Բ֪֪=1j֪Ai1j>1j>1j u8C LL|=1j֪Ai1j=1j=1j vm<# ֪֪|=1j֪mAi1j=1j=1j wc MG ֪֪|=1j֪Ai1ji1ji1j xޭCB hBߗߗ|=1j֪Ai1j=1j=1j yQ; <֪|=1j֪Ai1j=1j=1j z [ |=1j =1j=1j=1j../run/lockBi ܍=1jAi1j=1j=1j {s W-=1jAi1j=1j=1j |1A qw-=1j>1j=1j=1j../run.'u ʈ܍dB=1jAi1j=1j=1j }m2; ܍܍?=1j$Ai1j=1j=1j ~d46 <܍܍|=1j$=1j=1j=1j../../../etc/crontabsҧiY v܍$$=1j$=1j=1j=1j../mailI 91 ܍$$=1j$Ci1j=1j=1j  ~\N w2$$-=1j$=1j=1j=1j../if-pre-up.d/bridgenO0 L̂ɞyy=1jy xg=1jxg G$7. g ̂ɞ=1jy=1j=1j=1jifupdownh6Y ęдд=1jд=1j=1j=1jifupdown/ғ iv̨^^=1j^=1j=1j=1jifupdown6 G^^=1j^=1j=1j=1jifupdown^ eG^^=1j^=1j=1j=1jifupdown}kmK G^^=1j^Hj=1jHj ~&%* ^G=1jϛAi1j=1j=1j -o yyА=1jاAi1j=1j=1j  1Й=1jاHj=1jHj J$iJH'] ʜG=1jاHj=1jHj K$_ G=1jRHj=1jHj L$6 =1jRHj=1jHj O$tB ʹ=1jRHj=1jHj P$j9% =1jRHj=1jHj Q$8s l=1jR6Hj=1jHj R$; 4=1jRHj=1jHj S$UB V=1j6Hj=1jHj W$.<PF G=1jAi1j=1j=1j Y7 M ¿%%А=1jyAi1j=1j=1j  b%II VVА=1j7.j=1j.j [$ቃRe 1=1j=1j=1j=1jlibcap.so.2.787 w3ҷ=1j0qi=1jqiD "#% ɻ3ҷ=1j!X=1j=1j=1jlibpsx.so.2.78їX] ?3ҷ!X!X=1j!X6qi=1jqi i$T· 3ҷ=1j!Xg.j=1j.j4 5tؐ 5=1j܉A i1jE1jE1jP `w], 1̦b=1j.j=1j.j w$s:] ;5=1j'.j=1j.j x$F 5=1j\.j=1j.j y$+y=Gy |5=1ju.j=1j.j z$H_ 5=1jघ:.j=1j.j {$w 0>==1jघY.j=1j.j }$,N >==1jघ.j=1j.j ~$_օ j>==1j.j=1j.j $Mǚ f>==1j).j=1j.j $bD C>==1j{.j=1j.j $t c>==1j.j=1j.j $"K Be>==1j.j=1j.j $M+V S>==1j@.j=1j.j $`.ن W>==1jy.j=1j.j $O:q s1>==1j.j=1j.j $2o"1D P=1jȌ.j=1j.j $Z P=1jȌY.j=1j.j $uxDr #lP=1j/.j=1j.j $O P=1j.j=1j.j  $prs P=1j.j=1j.j $;K{ f_P=1j.j=1j.j $#3 =Y=1j.j=1j.j $ mx-r mY=1j.j=1j.j $철 Y=1j.j=1j.j $4 Y=1jc .j=1j.j $( Y=1j=1j=1j=1j/usr/libexec/rc/sh/functions.shRM%> Y=1j .j=1j.j $ Y=1j .j=1j.j $jTz cY=1jD.j=1j.j $ + a,. b1=1j8.j=1j.j $ / V]b1=1j8.j=1j.j $ Ƽb1=1j8).j=1j.j $.zG /b1=1j8.j=1j.j $ ? %b1=1j84 .j=1j.j $yII8 b1=1j .j=1j.j $ 5 b1=1j6.j=1j.j $*_ t=1j.j=1j.j $?"p t=1j.j=1j.j $i5W1 *t=1j.j=1j.j $Wn1' t=1j.j=1j.j $c9Hm 8t=1j"^.j=1j.j $H t=1j".j=1j.j $=PI΂ /t=1j"l.j=1j.j $:$ Ut=1j".j=1j.j $Ǖ*M} It=1j" .j=1j.j $wUl t=1j+,.j=1j.j $E ct=1j+,.j=1j.j $/ C]}=1j+,.j=1j.j $LP }=1j+,/.j=1j.j $5$Q 9}=1j+,#.j=1j.j $/q }=1j4i .j=1j.j $ſ+ U }=1j4i.j=1j.j $!v $}=1j4i.j=1j.j $9 c}=1j4iAi1j=1j=1j   }}ӓ=1j=.j=1j.j $C>c i}=1j=+.j=1j.j $JOw Z}=1j=4.j=1j.j $ce0 Kv5=1j=Ai1j=1j=1j a* lO O Ƭ~=1j=Ai1ji1ji1j $ |=1jO Ai1ji1ji1j j ``ӓ=1jO Ai1j=1j=1j /j $O O Ƭ~=1jO Ai1ji1ji1j >ZE v`JzJz~=1jO Ai1ji1ji1j Ѭə +PP~=1jO .j=1j.j $Ks ~ }=1jO @7.j=1j.j $J\9 x}=1ja.j=1j.jT *5n }=1ja.j=1j.jL &&t? %=1js7.j=1j.j %_4&f %=1js'.j=1j.j  %DZ> %=1jsGi1j=1j.j$ #HϿ %G=1js =1j=1j=1jrc-servicejn| Q%=1j.j=1j.jT *&M4 >%=1j.j=1j.j^ /&њ %=1jfi1j=1j.j4 570&(G CN%H=1j(i1j=1j.jl 6&'}1 fA%H=1j7.j=1j.j %'p qn%=1jxH.j=1j.j& 4'憈o b=1jpH.j=1j.j& G' 7k b=1jjxH.j=1j.j& Z' h] b=1jjxH.j=1j.j& m'~k4 I_b=1jxH.j=1j.j& ']|Y} {b=1jpH.j=1j.j& 'Ri \ cb=1jxH.j=1j.j& ',: tb=1jxH.j=1j.j& '2Xhr lob=1j_xH.j=1j.j& 'W~z }b=1j_xH.j=1j.j& '[w3 U=1j_xH.j=1j.j& 6n7/ =1j_pH.j=1j.j& 6yS =1jxH.j=1j.j& &6({* _=1jpH.j=1j.j& 96j c=1j'7.j=1j.j %%s =1j9SH7.j=1j.j 3%.H  O==1j9S7.j=1j.j A%z1d ֪=1j9S7.j=1j.j O%FΜ =1jBG.j=1j.j$ L6.E>b =1jB7.j=1j.j ]%Gwʈh C=1jB.j=1j.j k%ҒGY 5=1jBG.j=1j.j$ ^6Dȋ =1jKH7.j=1j.j m%k f=1j]G7.j=1j.j {% =1j]GH7.j=1j.j %Cb/: =1j]G7.j=1j.j %. |9=1jf7.j=1j.j %3I _H=1jfH7.j=1j.j %f =1jf7.j=1j.j %IC& =1jo7.j=1j.j %s- W =1jo7.j=1j.j %0t WM=1jo7.j=1j.j %@Lm8] =1jx7.j=1j.j (m *=1jx7.j=1j.j (tZ5~ DV=1jx6.j=1j.j (?m WV=1jxxH.j=1j.j& p6ߤ sV=1jxpH.j=1j.j& 6% [V=1j䓵xH.j=1j.j& 6C2 =V=1j䓵xH.j=1j.j& 64 V=1j䓵xH.j=1j.j& 6pU} V=1jxH.j=1j.j& 6KON |V=1jlxH.j=1j.j& 6Y*=P g6V=1jlAi1j=1j=1j& = i9А=1jl7.j=1j.j +(|hS^~ V=1j跩7.j=1j.j 9( Խf~ V=1j跩7.j=1j.j G(nm^ V=1j跩7.j=1j.j U(mŜ V=1j7.j=1j.j c(ơ ]V=1j7.j=1j.j q(]ca׋ =1j#7.j=1j.j (Gb) z=1j#7.j=1j.j (- #=1j۝7.j=1j.j (,Q It=1j۝@7.j=1j.j (Kj1 ;=1j۝W.j=1j.j, 6 * =1j۝7.j=1j.j (L ֎=1jA i1j=1j=1j2 Du*1* xJJЙ=1j .j=1j.j %X ދ=1j.j=1j.j %97 %=1j .j=1j.j %Ḃ<w  =1j .j=1j.j (/\ i =1j.j=1j.j (aYO f =1j .j=1j.j (c 4 =1jT%.j=1j.j  (j ĸ =1j.j=1j.j &rNw* =1j.j=1j.j (^3v N =1j .j=1j.j (%wy E =1j.j=1j.j ( s U =1j.j=1j.j ($k Jm =1j@.j=1j.j (hR.  =1j .j=1j.j (:a 8 =1j .j=1j.j (` J=1j | .j=1j.j (178 1j>1j [\B >1j@'j>1j@'j )fO H>1j7@'j>1j@'j )y`c d>1j@'j>1j@'j )9: vyk <&'>1j@'j>1j@'j ). s&'>1j'@'j>1j@'j )Fb ~&'>1j d@'j>1j@'j  )/g7 0&'>1j C@'j>1j@'j"  7nRI &'>1j >1j>1j>1jlbuF<N &'  >1j >1j>1j>1jlbu:^ u&'  >1j >1j>1j>1jlbu|# 4&'JJ>1jJ>1j>1j>1jlbu @&'JJ>1jJ@'j>1j@'j #)wO ]J8>1jJ!@'j>1j@'j  &)]IC !8>1jJ@'j>1j@'j /)\Q 8>1jE@'j>1j@'j 3)U 38>1j,@'j>1j@'j  :)P) 8>1j@'j>1j@'j F)CvW3 @O8>1j @'j>1j@'j J)j-R 8>1j@'j>1j@'jd 27$1 8;8>1j@'j>1j@'j N)yc Э8>1j@'j>1j@'j P)l A>1j3C@'j>1j@'j" N7X A>1j@'j>1j@'j R)~ "A>1j@'j>1j@'j  V)['E A>1j8@'j>1j@'j [)4n =1j@'j>1j@'j ])) FA>1j2@'j>1j@'j _)}qm +A>1j@'j>1j@'j a)g?= 9A>1j @'j>1j@'j e)<| EJ>1j@'j>1j@'j h)x J>1j3p@'j>1j@'j l)Bz{B J>1j3@'j>1j@'j m)1j3+@'j>1j@'j n)Rc 2J>1j3&@'j>1j@'j o).ʽ.2 #J>1j&@'j>1j@'j  r)hy 7J>1jt-j>1jt-j )n+ ـ.>1jw3t-j>1jt-j )A X s.>1jw>1j>1j>1j../usr/lib/os-releaseq!6-[ w.  >1j Ai1j>1j>1j o }6}6>1jtA i1j>1j>1j B :U* DD>1j}6Ai1j>1j>1j $tzXp -)>1j}66>1j>1j>1j../alpine-devel@lists.alpinelinux.org-58199dcc.rsa.pubd_ }6}6>1j}66>1j>1j>1j../alpine-devel@lists.alpinelinux.org-616ae350.rsa.pub= }6}6>1j}6=h>1j=h |)瑟 ϥ >1js=h>1j=h })DK" . >1js=h>1j=h ~)_9i ٌ >1js=h>1j=h )XU[j  >1js=h>1j=h )d [ >1j=h>1j=h ) K9 3% 3 >1j=h>1j=h )KH M >1j=h>1j=h )Oem% D>1j=h>1j=h )M%s D>1j =h>1j=h )4 mwD>1j =h>1j=h )u[ gD>1j* =h>1j=h )|c eD>1j* =h>1j=h )hCU D>1j* =h>1j=h )C^ D>1jg =h>1j=h )R< BD>1jg =h>1j=h )dJ-g -D>1jg =h>1j=h )hi D>1j =h>1j=h )$Nٙ LD>1jAi1j>1j>1j ^2\ )>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-524d27bb.rsa.pub4B 7>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-616a9724.rsa.pub5jR hd>1jAi1j>1j>1j 1. l)>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-524d27bb.rsa.pubX ?>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-616adfeb.rsa.pub {>1jAi1j>1j>1j  >1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-66ba20fe.rsa.pubZԂ (*[[>1j[Ai1j>1j>1j ,Ц p>1j[6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-5e69ca50.rsa.pubX% [[>1j[Ai1j>1j>1j . %11)>1j[6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-58cbb476.rsa.pubC} [[>1j[6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-616abc23.rsa.pub d1[[>1j[Ai1j>1j>1j Mx ,11>1jט6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-60ac2099.rsa.publξ 1טט>1jט6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-616db30d.rsa.pub ܬ b1טט>1jטAi1j>1j>1j oi 11>1jט6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-58e4f17d.rsa.pub%/ 1טט>1jט6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-616ac3bc.rsa.pub[ "W 1טט>1jטAi1j>1j>1j gF 11>1jט6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub|j-f M1>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pubL)u 1>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub' {1>1jAi1j>1j>1j ů o11)>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pubX. 1>1j6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub$+i" 21OO>1jO6>1j>1j>1j../alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pubqtj 1OO>1jOAi1j>1j>1j 2i 4..ӓ>1j at-j>1jt-j )P h.>1j t-j>1jt-j )‰ QJ a.>1j Ai1j>1j>1j Jض H^>H^>ӓ>1j 'Ai1j>1j>1j ԈP lH^>H^>ӓ>1j ')j>1j)j )4 ,8]>1j ')j>1j)j )3 ,8]>1j V'{0)j>1j)j  ),gJH ,8]>1j V'{0)j>1j)j  )}i Rz,8]>1j V'Ai1j>1j>1j R8 W ' 'ӓ>1j 'Ai1j>1j>1j >ޯ ,u],u]Z'>1j 'HH)j>1j)j& _7N' ,8]>1j '(6)j>1j)j )T* ,8]>1j ()j>1j)j^ /r7eAg)n ,8]>1j (XW)j>1j)j, 7.W ',u]>1j (LF1j>1j)j &) 8HH:r ,8]\h>1j(Ai1j>1j>1j 4\p d,u],u]u>1j,\X)j>1j)j b*JdS D,u]>1j,\x L1j>1j)jh 4K/5B +)4W&n~u>1j0e08trbi>1jtrbi )#+ 8eMu>1j8eMu F1j>1j>1jlibz.so.1.3.2~r <}<+}\h>1j<+}XF1j>1j4Ti jc*sT #<}\h>1j<+}:L1j>1ji *p~?u4 ADl|Ik>1jD>1j>1j>1jcerts/ca-certificates.crtZ> Ϻ "H^>H1 H1 >1jH1 zm-j>1jzm-j` + u H^>>1jH1 Ai1j>1j>1j ӵ4 b4Hg{Hg{>1jHC>1j>1j>1j/etc/ssl/cert.pemw!31U AHg{HCHC>1jHC>1j>1j>1j/etc/ssl/certs !zL }Hg{HCHC>1jHCAW1j>1j>1j pUe fULleLc(pU>1jLc(Ai1j>1j>1j )dN{ 2LleLle̋>1jLleAi1jZ1jZ1j U &pئئ̋>1jLleAi1j>1j>1j !5 LleLle̋>1jLleL1j>1ji q,ȉ7, aLYdC>1jL~ߗAi1j>1j>1j 8Wl wHLL~ߗ8>1jL~ߗAi1j>1j>1j Fg= PPhPh >1jP_՝Ai1j>1j>1j ]E PCPC >1jPhtrbi>1jtrbi )40 V 7PC>1jPh6trbi>1jtrbi )Ka(K g]PC>1jPhtrbi>1jtrbi )tjM rPC>1jPhotrbi>1jtrbi )ʠ>w PC>1jPzjtrbi>1jtrbi )ُt >PC>1jPz0trbi>1jtrbi )Ej3X >PC>1jPztrbi>1jtrbi )ծר zPC>1jPɞ(trbi>1jtrbi )] JPC>1jPɞ trbi>1jtrbi )i4 HTP>1jPɞtrbi>1jtrbi ) ^TP>1jPɞtrbi>1jtrbi )xQ e P>1jPɞ%trbi>1jtrbi )Q< wP>1jP1trbi>1jtrbi )rN P>1jPtrbi>1jtrbi )ѣ gP>1jP$trbi>1jtrbi )v> j dP>1jP;trbi>1jtrbi )hV P>1jPI7F1j>1jtrbi )2fs i4TX?_>1jTvK1j>1ji B7=+Ō X{#_d>1jXigi>1jgi )~ڳY =\ij>1j\JHWgi>1jgi, ,]6 \ij>1j\J0Hgi>1jgi& -&% ʂ\ij>1j\H7gi>1jgi )Y:bD] \ij>1j\4gi>1jgi ) n\>1j\yi1ji1ji1j*  (F #|@|"@|?i1j|?z.j>1jz.j )K8* ɚh>1jhAi1j>1j>1j a- WhEhE>1jhEAi1j>1j>1j ^ hEhE>1jhEz.j>1jz.j )Q oh>1jhAei1j>1j>1jf :"[ hh->1jh7i>1ji .F^Mܲ pl >1jlܝ>1j>1j>1jlibseccomp.so.2.6.0M+K l ll>1jlWi>1ji, :N1A)|C l >1jl'z.j>1jz.j JNwQ$ tL>1jp;Xiz.j>1jz.j O's5& tL>1jpD'uz.j>1jz.j )Z <'tRN>1jtIz.j>1jz.j )z^ tRN>1jtRNi1ji1ji1ji1j f{5_ ]]|Ai1jt5mPŮi?1jŮib 1Xx 19a ` ?1jBAi1j?1j?1j BT i؄ l?1j} Ai1j?1j?1j y+Nͣ T l?1j} $Ůi?1jŮi .m ?1j} $Ůi?1jŮi .MJP ?1j $Ůi?1jŮi .a$}V n ?1j $XŮi?1jŮi ..Y ?1j m Ůi?1jŮi  .Tx v> ?1j Ai1j?1j?1j ,.p  ?1j Ai1j?1j?1j .} لe e ?1j $ Ůi?1jŮi (.S  ?1j $uŮi?1jŮi +.E^ { ?1j $.Ůi?1jŮi ,. 95 ?1jq $Ůi?1jŮi -.w S ̑e ?1jq Ai1j?1j?1j >l_ Ү q |?1jq 7Ůi?1jŮi /.gg p?1jg?1jg 0.^ @ _?1j]Ai1ji1ji1j 9 m.l$l$?1jg?1jgF #&-'F 62?1j(ipri?1jpri6 I-2Q ?1j~L1j?1j?1jlibeconf.so.0.8.3[N ;~?1j~`L1j?1jpriL &d-b- 9?1j L1j?1j?1jlibblkid.so.1.1.0͛@ =['%S?1j%XL1j?1jGj 2YQr 'x?1j%?1j?1j?1jlibcom_err.so.2.1u) Ԕ,,,?1j,F(i?1j(i$ -3>.\ 7,?1j, ?1j?1j?1jlibe2p.so.2.39$ Ȝu9g5g5?1jg5H(i?1j(iH $YW&$ _u9?1jg5?1j?1j?1jlibext2fs.so.2.4O ju955?1j5(i?1j(i |ZAt = su9?1j5 ?1j?1j?1jlibss.so.2.0 0ߜu9w8w8?1jw8f(i?1j(i4 -،* u9?1j8M1j?1j?1jlibuuid.so.1.3.0F?K pĐASA'?1jSAwM1j?1jGj< [QO a^ĐA>|)?1jSA(i?1j(i 1.!_ ?٨}?M?1j1I-(i?1j(i 2.̇I7_ }?M?1j1I`(i?1j(i2 [vI D}?M?1jnI?1j?1j?1je2fsckIW~ }?M>K>K?1j>K?1j?1j?1je2fscky =|MYKLYKL?1jYKL?1j?1j?1je2fsckQ/c |MYKLYKL?1jYKL@(i?1j(i k\3{/T Dq|M?1jYKL?1j?1j?1jmke2fs}"; ¨|MbLbL?1jbL?1j?1j?1jmke2fsCmY |MbLbL?1jbL?1j?1j?1jmke2fs*s9 |MbLbL?1jbLF1j?1j?1jliblzma.so.5.8.3j5 BWV\h?1jVxwF1j?1jJi ;]1{ WS `BW\h?1jVF1j?1j?1jlibzstd.so.1.5.7y4 @f^\z0h?1j^ F1j?1jght O.)[ ;@f\z0h?1j)^_F1j?1j_i ^df `cn\_yg?1j32m F1j?1j?1j../bin/kmodk 2[ P`cn.5 zج?1j+M1j?1j'j ?.^6 Oج;2m?1j+c?1j?1j'j @.p~ Iجܱ?1j率\M1j?1j'j A.KiA ج?q?1j率'j?1j'j B.ts ج?1j率 'j?1j'j C.js? xج?1j率b'j?1j'j D. n ج?1j率%M1j?1j'j E.M جfx?1j率'j?1j'j F.T I Zج?1j'j?1j'j G.eH] įؾ!?1j'j?1j'j H.\̀W Tؾ!?1ji'j?1j'j I.hG ؾ!?1j 'j?1j'j J.Cg ؾ!?1j !'j?1j'j K.$h ~ ؾ!?1j 'j?1j'j L. mؾ!?1j ]#]1j?1j'j M.؜Jr pؾ!\~v?1j ]O'j?1j'j N.bz& E ؾ!?1j ]@'j?1j'j O.I02( ?ؾ!?1jע@M1j?1j'j P.MҞ4 jؾ! ?1jעZ'j?1j'j Q.eB #^?1jע 'j?1j'j R.6. ^?1jע'j?1j'j S. }* ^?1jע'j?1j'j T. = Y^?1j%'j?1j'j U. g u^?1j%K1j?1j'j V.[H ^r\Z?1j%M1j?1j'j W._" ^l?1j%'j?1j'j X.`1 zt^?1j% 'j?1j'j Y.` "^?1j.Q'j?1j'j Z.oqGl ^?1j.Q'j?1j'j [.p A^?1j.QE'j?1j'j \.KPoV ^?1j.Q,M1j?1j'j ].e>& nЛY?1j7'j?1j'j ^.hz GЛ?1jI'j?1j'j _.)Ym: T`Л?1jIj'j?1j'j `.`zpf !Л?1jI'j?1j'j a."q Л?1jI3'j?1j'j b.Q Л?1jI:M1j?1j'j c.}Ğ R?1jv9'j?1j'j u.#% R?1jv9U'j?1j'j v.86 R?1jv9Ui1jh1jh1j }qY P P\Xh1jP6'j?1j'j  x.{ (?1jv9*!K1j?1j'j  }.| 6?1j؈L1j?1j'jF #^\q 4L?1j؈Ai1j?1j?1j <K 8;?1jؚ-}M1j?1j'j .gf a?1jؚ-M1j?1j'j .c)s ("d?1jؚ-UuM1j?1j'j< ^U% _K`?1jؚ-M1j?1j'j .}ث VTe?1jؚ-sM1j?1j'j .XV# ܁b?1jأjag(jD1jg(j03 bhbbbri# zE ~?1jOPg(jD1jg(j* _%<6 R?1j*g(jD1jg(j_b ((k {?1j<AZ1jA1jA1j I0x c VV͸A1jMA i1jK1jK1jU Wux=. 55A1jVAF1jD1jD1j  8 v}v}\ kA1jVK1jD1jg(j .%/s 󬄱g5A1j_,AF1jA1jA1j aa6b ?_,_,dïwA1j_,AF1jA1jA1j MJ@ lGGdïwA1j_,A F1jD1jD1j; z „dïwA1j_,EF1jD1jg(j .E9>ss =l]TA1j_,F1jD1jg(jD "_ plfA1jqF1jD1jg(j .U2= -lA1jqd*F1jD1jg(j  . iL Ěl̓A1jzT,F1jD1jg(j  .wS; ̌l:A1jz+]F1jD1jg(j0 -q\ / x̌lA1jz7F1jD1jg(j .{y6 0̌lA1jz'DF1jD1jg(j$ -SF ̌l9`A1j9rF1jD1jg(j  .T+ ŘpA1jwF1jD1jg(j  .Fv OB̌p۪A1jwF1jD1jg(j  ..S E ̌pyA1jwGF1jD1jg(j$ _MCZM eĚls!A1j &HF1jD1jg(j& _Fhx ׄ̌lA1j FF1jD1jg(j$ Ua' DŽ̌hO-A1j )%F1jD1jg(j  .2Ny$G &p$A1j F1jD1jg(j .iR (p$A1j F1jD1jg(j  .d5ym) "'h4vA1j F1jD1jg(j  .T)7YM chA1j F1jD1jg(j  .ӺF9 ohA1j AF1jD1jD1j O „dïwA1jG_F1jD1jg(j .!0AP T{hPA1jGF1jD1jg(j /fXYV dyA1jGAF1jD1jD1j  ` -„dïwA1jGsF1jD1jg(j ]Vۻ =|A1jF1jD1jg(j aw)u rdx$*A1j!(Q F1jD1jg(j Ub?1Wy =Ԅp$A1j'AF1jD1jD1j  C Ą\ kA1j97G%G1jD1jg(j  /,&kO (wA1jK7"G1jD1jg(j  /1܍ i IՄ,A1jK7^H1jD1jg(j  / l=d ,A1jK7GKH1jD1jg(j& lV3W3 4yA1jK7=(H1jD1jg(j  !/m؋ L4A1jT7)H1jD1jg(j  ,/?0]vg ?F4A1jT7 H1jD1jg(j  7/dSY 9F4A1jT7(H1jD1jg(j  @/] a4A1jT7H1jD1jg(j K/X:zz ń4 A1j]8AF1jD1jD1j J6 BsĄ\kA1j]8H1jD1jg(j  S/ Lp 8]A1j]8E%H1jD1jg(j  Y/Rx j8A1j]8H1jD1jg(j  c/vmG T8EA1j]8vH1jD1jg(j i/5P {8~A1j8H1jD1jg(j p/\D7 `8A1j8%H1jD1jg(j  x/n !/ ϴ0 A1j8'H1jD1jg(j  /&BxV` 0 A1ju9,%G1jD1jg(j  /aBR Ԅ(A1ju9B"H1jD1jg(j  /R rH,o%A1ju9H1jD1jg(j  /2Nn` kC,fA1j9?H1jD1jg(j  /Яq'x ȄC0>A1j9/H1jD1jg(j  /?w % ĄC0pA1j9oH1jD1jg(j /]L/ IC0#A1j9H1jD1jg(j /b{\ RC0A1j9H5G1jD1jg(j /lK4 C A1j>=~G1jD1jg(j  fe  $iA1j>= .G1jD1jg(j  fgVN! $fA1j>=G1jD1jg(j ,f@H6L V(8DA1j>=7H1jD1jg(j  3fM\ ,9A1jPw>0H1jD1jg(j  8f:恗D 84 A1jPw>[H1jD1jg(j. VA6qG (8 A1jPw>H1jD1jg(j Ef1 8?8A1jA(G1jD1jg(j  LfR$K L$A1jAFG1jD1jg(j  WfCu $4A1jA(H1jD1jg(j  ]fNf:ti 8-A1jGB?H1jD1jg(j hfL C,K1A1jGB8G1jD1jg(j pfR ф(A1jGBG1jD1jg(j fhsv 蠄 A1jBH1jD1jg(j  f6HA0 y4LA1jB$G1jD1jg(j  f׃ (euA1jB*H1jD1jg(j  f\"e 㧄 8$gA1jIG/G1jD1jg(j  +g%#pq P$NA1jJ$G1jD1jg(j  1gjF L,(JA1j$J,$H1jD1jg(j  7g/y @P8c,A1j$JH1jD1jg(j  Ag^_µh 4e A1j$JAF1jB1jB1j(( r몂 PPfxPfx`dcnA1j-KAF1jD1jD1j ηPc &Ą&`rA1j-KH1jD1jg(j Fgø< 'D,A1j-Ko*H1jD1jg(j  Ngh @H3A1j?KAH1jD1jg(j" VrY )%Hn1A1j?K.H1jD1jg(j  Yg%< {&DՉ-A1j?K0H1jD1jg(j  eg`_ D&D}.A1jHKAF1jD1jD1j 5 v &Ą&`rA1jHKH1jD1jg(j` 0VO} 6 @&H//A1jHKN)H1jD1jg(j  rg"z2 &H3A1j'Ok!H1jD1jg(j  }g &H2A1j'O 8H1jD1jg(j g?ڛ< &Dr/A1j'OH1jD1jg(j  gL ߄&D.A1jdOAF1jD1jD1j ˚sd I&Ą&`!esA1jdOiH1jD1jg(j g(WR; ^&اA1jdOAF1jA1jA1j D( 3ءOءO`qA1jdOAF1jD1jD1j 5?+ k&Ą&`qA1jءORYH1jD1jg(j. VWp &lpA1jءOAF1jD1jD1j ӭG% /,ń/,`WoA1jءOAF1jD1jD1j  zӄ/,ń/,`WoA1jO{H1jD1jg(j> Wd`Tj /,p)xA1jOH1jD1jg(jv ;VNy k&l|qA1j@+YLkH1jD1jg(j6 )WoU &lrA1jIhYqH1jD1jg(jR )DW !U&l=tA1jIhYYH1jD1jg(j WveM9 (ф&p}A1j\MH1jD1jg(j( mW)w" 1I/,l|uA1j\AF1jD1jD1j T Ö́/,ń/,`WoA1j\H1jD1jg(jH $WRjcQ X1/,lvA1j\AF1jD1jD1j ]͒ ɴ/,ń/,`WoA1j<_/eH1jD1jg(j4 W0 O/,tEA1jE`AF1jD1jD1j m0 t/,ń/,`!esA1jE`ǢI1jD1jg(jR )e7Oo /,.U"A1jW`AF1jD1jD1j  ש/,ń/,`rA1jW`oH1jD1jg(j  gJէ2 ང/,TFA1jW`AF1jD1jD1j k /,ń/,`rA1jW`M7H1jD1jg(j g>k /,TYaEA1j`` H1jD1jg(j gxa /,TkEA1j``)%H1jD1jg(j  ge V/,P>DA1j``AF1jD1jD1j  /,ń/,`vnA1j``AF1jD1jD1j MK 6/,ń/,`oA1ji a iI1jD1jg(j6 W9Jc \ /,jMuA1ji aYI1jD1jg(jx <c{*v b//,4sA1j_dAF1jA1jA1j ".+ Wdd`vnA1j_dAF1jA1jA1j vk IkIk`vnA1j_dAF1jD1jD1j *FA RAńA`vnA1jdEI1jD1jg(j$ Wz IAKC{A1jdAF1jD1jD1j / $AńA`oA1jdzI1jD1jg(j m EńAAvA1jdAF1jD1jD1j 8d# v^AńA`vnA1j k4I1jD1jg(j gB~; 쁄Ao7|A1jIk"I1jD1jg(j  g84R [/,|A1jIkpI1jD1jg(j g=i v/,h}A1jkAF1jD1jD1j T(r AńA`oA1jkaI1jD1jg(j2 ~{R 7A}A1jkAF1jD1jD1j  S{4Xx AńA`|qA1jk'I1jD1jg(j  g)rM zAA1jlAF1jA1jA1j $i؏ >l>l`prA1jlAF1jD1jD1j $  TAńA`prA1jlH1jD1jg(jT *b= 'AHg5A1jlAF1jD1jD1j #T6H AńA`prA1j>l\H1jD1jg(j0 #{ qAH4A1j>lAF1jD1jD1j #Hp/ ӄAńA`rA1jąWoAF1jD1jD1j #ǯ`=K AńA`rA1jąWoSI1jD1jg(j ge= 3ArA1jĎo,I1jD1jg(j  [/7 PA(sA1jĎoAF1jA1jA1j #N zĠpĠp`WoA1jĠpAF1jD1jD1j ! #e2k ZJńJ`WoA1jĠpAF1jD1jD1j #= ބJńJ`oA1jĠpRH1jD1jg(j* ف;:>] G@JTHA1jĠpH1jD1jg(j tU\ քAXpNA1jĩKp(H1jD1jg(j  Yy A\WA1jZyHH1jD1jg(j  u A`[A1jyH1jD1jg(j  g !A\VA1j}|(H1jD1jg(jD "2 A\)tXA1j̆|dH1jD1jg(j4 y ੄J\hZA1j̆|MH1jD1jg(j( 7gC, ˄J\VYA1j̆|AF1jD1jD1j $P ^JńJ`oA1j̘h}zxH1jD1jg(j> K5_ )6JhWoA1j̘h}AF1jD1jD1j $}M JńJ`oA1j̘h}H1jD1jg(j HjW 8sJdhA1j̘h}AF1jD1jD1j $pB bJńJ`oA1jgd]H1jD1jg(j0 9 =JT׷HA1jy^^H1jD1jg(j0 ʆ={L XJTIA1jЂAF1jD1jD1j $)Guh gHJńJ`oA1jЂhH1jD1jg(j6 eg'K _JT(JA1jЂ^H1jD1jg(j0 B JTULA1jЋ؃AF1jD1jD1j  #q^z8 ܄JńJ`oA1jЋ؃ H1jD1jg(j CNL?E ]J`@_A1jЋ؃AF1jD1jD1j  #_-^ ;JńJ`oA1j /H1jD1jg(jX ,X/k!X ЄJh\&nA1jlAF1jD1jD1j  #3" ٯJńJ`oA1jl/9H1jD1jg(j OHAN3 =aJh kA1jlAF1jD1jD1j  #֘I# JńJ`WoA1j~HbH1jD1jg(j  Rtȓ/ ÿJdaA1j~HAF1jD1jD1j  #ng)4 4S ƄS `WoA1jqH1jD1jg(jP ( JXyMA1jqAF1jD1jD1j #bf \˄S ƄS `qA1jzI1jD1jg(j *} "S YjA1jz#I1jD1jg(j  QYe S&S GA1jz1.I1jD1jg(j  (v@f }S kA1j،oؼI1jD1jg(j pW!̊ S ə~A1j،ol>I1jD1jg(j  40~Li RyS 5vA1jAF1jD1jD1j #['v4 S ƄS `qA1jpI1jD1jg(j: xU[ S t!A1jX'I1jD1jg(j  D64 IS RA1j I1jD1jg(j  Nb N߄S A1jAF1jD1jD1j #Rw ꯄS ƄS `rA1j@_I1jD1jg(j0 ɇi^ل S UA1j@DnI1jD1jg(j8 ǢMd2 S A1j%}AF1jD1jD1j #c aS ƄS `pA1jܑY~8I1jD1jg(j WE@&D S A1jܣӘ\I1jD1jg(j0 riV XS A1jܣӘAF1jD1jD1j #E2G 餄eƄe`|qA1jܣӘAF1jD1jD1j #M+F& eƄe`|qA1jܬ"II1jD1jg(j& w>{ oe]>A1jܬ"I1jD1jg(j  f!b neԁ?A1jܬCI1jD1jg(j @eXu lS Ԝ_@A1jܬ7I1jD1jg(j o[O IƄS BA1j*g&I1jD1jg(j  }TSu g_eCA1j*g%I1jD1jg(j  L<)7b =eBA1j*gAF1jD1jD1j #Պ 8eƄe`qA1j3I1jD1jg(j 郣BB wHeԓ"@A1j3AF1jD1jD1j #%+ !!eƄe`!esA1j3 @I1jD1jg(j" AH4P e0=A1j3AF1jD1jD1j #r7 ieƄe`!esA1j<}5I1jD1jg(j =E MeRnnnA1j!<I1jD1jg(jj 5W$XQ ?5n&lA1j!I1jD1jg(jT *VK5b 2nWA1jћ_,I1jD1jg(j  ʂ7o* 4لn;XA1j=x[3I1jD1jg(j  ւHf nVYA1jFI1jD1jg(j| >A nKpA1jFI1jD1jg(j Ӣ  ❄n˾\A1jFII1jD1jg(j& vzi@ ZSn謴bA1jX/:I1jD1jg(j ^P ҫnoA1jX/O7I1jD1jg(j ?< naA1jHRI1jD1jg(j* >p n[`A1jօI1jD1jg(j tM<ս%  PR ۄwhZA1jKJI1jD1jg(j ]3 Ow[A1jK~I1jD1jg(j@  Y0 >IwШcA1j]7I1jD1jg(j %W waA1j]I1jD1jg(j N5 w[A1j]I1jD1jg(j &%8t wD\A1jfVI1jD1jg(jP (g$ rwu]A1jfV]'I1jD1jg(j  .? w8]A1j䬵I1jD1jg(j| >  OH w3HfA1jClI1jD1jg(j8 G wqA1jCuI1jD1jg(j  @ ]t}g oQkcA1jL6AF1jD1jD1j #=RȦ $QDŽQ`qA1jL6nI1jD1jg(j @ 3 YOQ%!_A1jL68I1jD1jg(j F]], tQؘ GA1jʌI1jD1jg(jL &ʧے)u2 QسGA1jʌI1jD1jg(j` 0A!] p0QHA1j\I1jD1jg(j {q\ "Q &JA1jAF1jA1jA1j !# `prA1jAF1jD1jD1j "#=ij \Lj`prA1jI1jD1jg(jr 9O\} _Q2A1jzI1jD1jg(j> %є= =Q$!A1jbI1jD1jg(j2 DmM4 <ӄQA1jzI1jD1jg(jb 1]y_Z QA1jvRmI1jD1jg(j8 ՏyO ǖ_A1j;S\_I1jD1jg(j0 j_ GA1jDAF1jD1jD1j ##T KLj`KpA1jDAF1jD1jD1j $#z^ OLj`KpA1jDH1jD1jg(j  Uq' tbA1jV KH1jD1jg(j  Zqq 8tkA1jV 1H1jD1jg(j _3A`} EtGA1jV EH1jD1jg(j$ ʐJHq Wtt!A1jV AF1jD1jD1j %#VdM0 Lj`KpA1jV &H1jD1jg(jv ;¹aHdHI >tA1j_GA F1jD1jD1j< &#A#~r~ Ȉ`pA1j`@I1jD1jg(j" ܱ۽ P A1jݝAF1jD1jD1j '#ul kȈ`?qA1jݝo6H1jD1jg(j G %vXA1jݝH1jD1jg(j fR(O 86*A1jd1AF1jB1jB1j (#c1] ٘٘`pA1jd1AF1jA1jA1j )# %_d1d1`pA1jd1AF1jD1jD1j *#V uȈ`pA1jd1oH1jD1jg(j f2} څA1jvAF1jA1jA1j +#ȾE M`pA1jvAF1jD1jD1j ,#f 6创Ȉ`pA1jvVH1jD1jg(j hdFz UFbA1jAF1jA1jA1j -#f)D> ;[[`pA1jaAF1jD1jD1j .#8 IȈ`pA1jarH1jD1jg(j eY["u HoA1jjAF1jD1jD1j /#NW3 0Ȉ`pA1jjBH1jD1jg(jn ] AKLA1jsXAF1jD1jD1j 0# gEȈE`pA1j].H1jD1jg(j zu9, IE,BA1j]AF1jD1jD1j 1#eXx5 |눤EȈE`pA1jfH1jD1jg(jx <XtV sIE햼A1jҤAF1jD1jD1j 2#?N ?*EȈE`pA1j"H1jD1jg(j  naPd @NEA1jAF1jD1jD1j 3#"cxC *9EȈE`pA1jH1jD1jg(j /1< \?EA1j[H1jD1jg(j g(} ȈE{A1j[AF1jB1jB1j 4#Ul S $= $=`pA1j[AF1jD1jD1j 5#) )EȈE`pA1j[H1jD1jg(j +J|1R KEA1jH1jD1jg(j l% IE E9B1j AF1jB1jB1j 6#]ڣ?  $= $=`pB1j $=AF1jD1jD1j 7#b}2 ~EȈE`pB1j $= H1jD1jg(jj  Fy ׄE?SB1j $=AF1jB1jB1j 8# L٘٘`pB1j[AF1jD1jD1j 9#W0 pEȈE`pB1j٘VH1jD1jg(j VXs E[B1j٘qI1jD1jg(j: k 9 ӈe B1jP(H1jD1jg(j  w9&Bw وB1jAF1jD1jD1j :#)$: EȈE`?qB1jiibpH1jD1jg(j: b4 c E)B1jiiH1jD1jg(jV +! NPB1jrY[H1jD1jg(j. L"5 y]B1jr"H1jD1jg(j  6x |B1jrAF1jD1jD1j ;#i2 8Ȉ`?qB1j{H1jD1jg(j  d.X$= :ۈETB1j{H1jD1jg(j s_67 A B1j{7I1jD1jg(j p- 7B1j`H1jD1jg(j2 c@z^3 B1jI1jD1jg(j  dy,C ʈ:NB1jAF1jD1jD1j <#_cw Ȉ`?qB1jwH1jD1jg(jx <|gh 6B1jwAF1jD1jD1j =#$| Ȉ`pB1j @"H1jD1jg(j  ua! 辈B1j =H1jD1jg(j Pyv( ȈB1j XdH1jD1jg(j4 x,X RB1jGH1jD1jg(j  K8 ?#B1jGAF1jD1jD1j >#T>'M @Ȉ`?qB1j"I1jD1jg(j  zAq B1j35I1jD1jg(j ÃHݵUK ՈgB1jxI1jD1jg(j уY|)L D9ܘB1jNjI1jD1jg(jF #7e JpB1jc"I1jD1jg(j  كJ+14}Z XB1j;8/I1jD1jg(j  h SB1j;I1jD1jg(j ? u^ 鈶DB1j +U"4I1jD1jg(j $ MХ 6B1j 4"AF1jD1jD1j ?#Mv: 房Ȉ`pB1j 4"| I1jD1jg(j  tP ~B1j 4"BI1jD1jg(j" ҿA; ∿ZB1j F #UI1jD1jg(j, "S< / ⌈B1j F #AF1jD1jD1j @#Tvr wtȈ`?qB1j F #H1jD1jg(jL &8z. "wB1j OI# I1jD1jg(j ayi B1j OI#}I1jD1jg(j tG O BB1j %&2I1jD1jg(j  c 񨈿B1j b&$I1jD1jg(j ,xCb fB1j b&I1jD1jg(j 4~qW 5]B1j b&I1jD1jg(jb 1^=, OB1j b&iI1jD1jg(j6 Q <3B1j &-I1jD1jg(j Lzi 5dB1j &AF1jD1jD1j C#JE Ȉ`pB1j$T3*I1jD1jg(jv ;kp ]B1j$T3*^I1jD1jg(j0 < 'K(^ 戛LB1j$f*AF1jD1jD1j D#Xh 8Ȉ`?qB1j$o* gI1jD1jg(j ZT6$g q_@ B1j$o*AF1jD1jD1j E#4 ˆ9Ɉ9`?qB1j(G0H1jD1jg(j Ga_z 1׈9EB1j(P0AF1jD1jD1j F#&{1 9}9Ɉ9`pB1j(P0:I1jD1jg(jj 5r/V ʈ9B1j(bZ1AF1jD1jD1j G#w\ 9Ɉ9`oB1j(k1MH1jD1jg(j( N| 9xB1j(k14H1jD1jg(j <Z,O* *\9xB1j(t1)H1jD1jg(j J3Z| @9x1#B1j(t1C H1jD1jg(j  R2 d9xlB1j(t1AF1jB1jB1j H#n,] 'M,y8,y8`rB1j(t1AF1jD1jD1j I#xjgI 9Ɉ9`rB1j(t16H1jD1jg(j uL^7 C69@B1j(N2cH1jD1jg(j2 *{. ވ9 B1j,^8-H1jD1jg(j^ /C+/2d 9tB1j,p8AF1jD1jD1j J#8 {9Ɉ9`rB1j,p8WH1jD1jg(j, r֍p _,9B1j,y8tH1jD1jg(j@  !- 9B1j,y8=H1jD1jg(j jxzٷ ퟈93QB1j, <AF1jD1jD1j K#$z /9Ɉ9`dcnB1j0<AF1jD1jD1j L#L| ڳɈڳ`dcnB1j0<H1jD1jg(j  [gx 19@V'B1j0 = {H1jD1jg(j> l_Y >pڳ@%&B1j0 =H1jD1jg(j  `, IÈ9@'B1j0@AF1jD1jD1j M#914 ڳɈڳ`prB1j0@I1jD1jg(j f c)y 0ڳ5mDB1j0@'(I1jD1jg(j  mX= \ڳ>DB1j0@I1jD1jg(j  xsfF 7ڳYaEB1j0@AF1jD1jD1j N#r+˽ 2ڳɈڳ`KpB1j0@h.I1jD1jg(j  ~V$ UڳӘB1j0@I1jD1jg(j  (| ڳǙB1j0@:I1jD1jg(j ȁ eڳB1j0SAAF1jD1jD1j O#O. 2ڳɈڳ`rB1j0SA0I1jD1jg(j  E(E [ڳTw>B1j0SAA F1jD1jD1j0 P#W-dC fˆ-ʈ-`vnB1j0SAZH1jD1jg(j. Ae *ڳB1j0SA*cH1jD1jg(j2 \* 72B1j0ƐA.H1jD1jg(jh 4)^ |oB1j4;DeH1jD1jg(j4 /;+ B1j4;DAF1jD1jD1j Q#?~ -ʈ-`vnB1j4DDZ+H1jD1jg(j KIf )< M&-|HB1j4DDH1jD1jg(j k5 xLڈB1j4zHH1jD1jg(jd 2Z yxHB1j4ԷHL>H1jD1jg(j PvW6 ^xB1j4ԷHdkH1jD1jg(j6 cgV lO|B1j8RLGYH1jD1jg(j. 15W) vx^TB1j8[KL19H1jD1jg(j ԿF E|oB1j8[KLVH1jD1jg(jR )HzA vŠB1j8[KLwH1jD1jg(j< q(cՏ ʈB1j8dLMH1jD1jg(j( 8G^ '*B1j8OBH1jD1jg(j" 49 4-h(B1j8OJH1jD1jg(j& & iV -B1j8OAF1jD1jD1j R#-Q7 I-ʈ-`|qB1j8PI1jD1jg(j ,| Z~ ᯈ-aB1j8PAF1jB1jB1j S#:mJ B1jPx*H1jD1jg(j  ]oR0 ʈ_L _ˈ_`oB1jPc{H1jD1jg(jl 6x5E _LĦ:B1jPc{܅H1jD1jg(jD "&o _Pxk?B1jPl7|AF1jD1jD1j+1 l#h _ˈ_\ lB1jPl7|AF1jD1jD1j m#0ͱ "ˈ"`RmB1jPl7|G1jD1jg(jj 5 G "B1jPl7|AF1jD1jD1j n#U%{ "ˈ"`@omB1jTtG1jD1jg(jF #Al i >"ԷNB1jT5F1jD1jg(j L w_"B1jTAF1jD1jD1j o#:Zz Q"ˈ"`RmB1jT G1jD1jg(j Dd| H \"B1jTAF1jD1jD1j p#/ sX "ˈ"\%lB1jd컚BG1jD1jg(j Qƀ0Z G"B1jd5AF1jD1jD1j q#M/w "ˈ"`@omB1jd5ѣG1jD1jg(j i0Ѕ ["6B1jdsAF1jD1jD1j r#;m q|"ˈ"\72mB1jhf-F1jD1jg(jF #bS~ۭ o"GB1jhfAF1jD1jD1j s#eX S"ˈ"`RmB1jhoF1jD1jg(j ,4w R"B1jhoAF1jD1jD1j t#F "ˈ"\%lB1jhow F1jD1jg(j @] "}B1jhoAF1jD1jD1j u# #G p"ˈ"\.lB1jlbl%$G1jD1jg(j J ׈"pB1jlblAF1jD1jD1j v#X5 we"ˈ"\72mB1jlkKG1jD1jg(j& E ꀈ"B1jlkAF1jD1jD1j w#gް "ˈ"`RmB1jlk;G1jD1jg(j 49, Lj"xMB1jltAF1jD1jD1j x#AO@ .B"ˈ"`RmB1jlt\G1jD1jg(j X_ Ɉ" B1jltAF1jD1jD1j y# 4̈4\%lB1jp1NG1jD1jg(j E/ .d 4B1jp1AF1jD1jD1j z#; r4̈4`dcnB1jp(W2F1jD1jg(j Mt5Ag È4B1jp(AF1jD1jD1j {#  4̈4\ lB1jpJF1jD1jg(jH $BA q 4B1jpJAF1jD1jD1j |#AB `4̈4`@omB1jxG1jD1jg(j l:;< Si4YsB1jxAF1jD1jD1j }#I*L` Om4̈4\%lB1j|! F1jD1jg(j~ ?̖ H4!wB1j|!E4G1jD1jg(j  4n%B1j3DG1jD1jg(j$ n ^4AB1j3AF1jD1jD1j ~#E9 Xʈ=S̈=S`RmB1j3<G1jD1jg(j  6: 4PB1jB1jAF1jD1jD1j #3/k[ 6=S̈=S`RmB1j+p~F1jD1jg(j `< ψ=S[8B1j+pAF1jD1jD1j #K03 =S̈=S\72mB1j)jG1jD1jg(j6 [\ =S\B1j)AF1jD1jD1j #m 0Qa =S̈=S`RmB1jp<G1jD1jg(j PM4 Yu=S./B1j%F1jD1jg(j  |/3pz _,B1jAF1jD1jD1j #l} В=S̈=S`@omB1jfF1jD1jg(j4 FCJT} =S1B1jAF1jD1jD1j # S$0 f=S̈=S`[&nB1jAF1jD1jD1j #Hh#D #=S̈=S`[&nB1j#6G1jD1jg(jL &'Y =SB1j#AF1jD1jD1j #.oH Ɉ=S̈=S`[&nB1j#iG1jD1jg(j6 <,^ =SB1j5DAF1jD1jD1j #sCs n=S̈=S`[&nB1j5DwG1jD1jg(j` 0!-Ec =S!B1j5DFTG1jD1jg(j, Qj ]=SjB1j>G1jD1jg(jF #g$ xj=SgC1j'G1jD1jg(j bY #=SۘC1jVAF1jD1jD1j #" F̈F`@omC1j[BF1jD1jg(j  enݐe3 :0F!C1jdAF1jD1jD1j #zR SF̈F`[&nC1jda]G1jD1jg(j )ig KFZ#C1jdAF1jD1jD1j #u LF̈F\72mC1j8G1jD1jg(j\ n4 FO-C1j8AF1jD1jD1j  #T Gs͈s\ lC1j;F1jD1jg(j  ɭg FCC1j;F1jD1jg(j  ݁2 FFC1jȵF1jD1jg(j  #WW [FuC1jȵrF1jD1jg(j  }D F0,C1jȵF1jD1jg(j  ͠>v F9iC1jȵsF1jD1jg(j  ?d RFKC1jF1jD1jg(j   \d FfC1jF1jD1jg(j  Xe ƈFxC1jF1jD1jg(j  _ڈ?=[ TFEC1jF1jD1jg(j  O ܉OC1jF1jD1jg(j  R وOC1j/ F1jD1jg(j  $vY *OeC1j/ 3F1jD1jg(j  )gyi OAC1j/ F1jD1jg(j  /!0 I eOJLC1j/ zF1jD1jg(j  44[ ,QOȽC1j/ F1jD1jg(j  9ǟ +3OC1j F1jD1jg(j  ?K )jO7;C1j {F1jD1jg(j  DZ vڈOIC1j 6F1jD1jg(j  JCU{L ZOdlC1j F1jD1jg(j  P8E ɈO#C1jj$dF1jD1jg(j  V#f OXO`C1jj$F1jD1jg(j  \O{h aGڬC1jj$rF1jD1jg(j  b  AaGC1js=${F1jD1jg(j  he7 }QaGέC1js=$eF1jD1jg(j  nŊqA{ 2aGمC1js=$F1jD1jg(j  t5Dkk p;aGC1j|z$,F1jD1jg(j  z 7O LVaGC1j|z$|F1jD1jg(j  n aG1C1j|z$F1jD1jg(j  jo SaG3C1j$F1jD1jg(j  'i XC1j1%J;F1jD1jg(j Oz aGoC1j K(F1jD1jg(j A 7?A . j C1j(\F1jD1jg(j jށ g@jC1j+F1jD1jg(j  61 /tjw}C1j,F1jD1jg(j  U/ *]jFC1j,F1jD1jg(j  B>x) jNjaC1j,qF1jD1jg(j  c7L, ۦjC1j,F1jD1jg(j  Ĕv+ ojqC1j,F1jD1jg(j  KT^ ZڈjC1jX,F1jD1jg(j  sB RjeC1jX,JF1jD1jg(j  IPn& ujC1jX,F1jD1jg(j  r* j얼C1jX,tF1jD1jg(j  En sC1j,1F1jD1jg(j  g-+ ]s4C1j,F1jD1jg(j  3NibL ˈsC1j,F1jD1jg(j  <h [sC1j,F1jD1jg(j  A osC1j, F1jD1jg(j  JI= s9C1j,F1jD1jg(j  s: 4s͌C1j,AF1jD1jD1j #30c Gs͈s\72mC1j, -G1jD1jg(j X$M 꾈s̎FC1j,AF1jD1jD1j #e4 s͈s\.lC1jB3AF1jD1jD1j #} Ȉs͈s\.lC1j36G1jD1jg(j No삅mܬ #sǙC1j3AF1jD1jD1j #Pz s͈s\.lC1j3c*G1jD1jg(j y!S|X ͈sC1j3AF1jD1jD1j #L3" _Z;Έ;\.lC1ji:NG1jD1jg(j( > L;C1j: G1jD1jg(jX HY]zn !ds]TC1j:M)G1jD1jg(j  b2?5s speC1j &J 6G1jD1jg(j `\# ]&sC1jcJ73G1jD1jg(j  n+ sLqC1jcJAF1jD1jD1j #%J /;Έ;\72mC1jcJG1jD1jg(j |k< ߈;VC1jcJAF1jD1jD1j #++ 텈;Έ;`@omC1jPRF1jD1jg(j* J& e눅;C1jPAF1jD1jD1j #&L S;Έ;\72mC1jQ2F1jD1jg(j   ӊ; C1jQ1F1jD1jg(j !G' ੈ;اC1jQ$F1jD1jg(j  (vEa ;RC1jQAF1jD1jD1j #:ӹ ;Έ;`[&nC1jMQe2G1jD1jg(j  2+ e;МMC1jMQAF1jC1jC1j # 9> "d"d\.lC1jMQAF1jD1jD1j ##Oq Z;Έ;\72mC1jMQ G1jD1jg(j }Os g;đ2C1j!QAF1jD1jD1j #<$ ;Έ;\72mC1jcG1jD1jg(j  ?(zC V;2C1jcAF1jD1jD1j #P ;Έ;\.lC1j"d~/G1jD1jg(j `x޹ @;ȐAC1j"dAF1jD1jD1j # ;Έ;\%lC1jogF1jD1jg(jb 1_^ y;C1jogAF1jD1jD1j #( /;Έ;`@omC1jog+fG1jD1jg(j Z,hZc %u;gZC1jx0hAF1jD1jD1j #j HG;Έ;\ lC1j kG1jD1jg(jx <Wx _;9WKC1jIkAF1jD1jD1j #jI%t xΈx\72mC1jIksG1jD1jg(j: g )6x @C1jIkAF1jD1jD1j #w" @ QxΈx`@omC1jk3G1jD1jg(j  IWzQՇ Cxc`C1jkAF1jD1jD1j #F% ݈xΈxdïwC1jޔlF1jD1jg(jN 'ZM5 wx|-C1jAF1jD1jD1j #} xΈxdvC1jAF1jD1jD1j #uz xΈxdvC1jH1jD1jg(j E&f *x< .C1jKH1jD1jg(j I#oe {x<2C1jK(H1jD1jg(j MM.`sR fx<C1jKVH1jD1jg(j Qk x89C1jKAF1jD1jD1j #faJ\; ތΌdvC1jKH1jD1jg(j U" ^x A); 󅌗<C1j Ɣ ,H1jD1jg(j  t^ n #U Z0lόldWtC1jJ1jD1jg(j G h@JC1j3"J1jD1jg(j  da?[ S[C1jJ1jD1jg(j [:U d>C1j!J1jD1jg(j &.; C1j!J1jD1jg(j -ї^i $C1j!J1jD1jg(j 4#˛ RvC1j!J1jD1jg(j <%wR p2C1j^J1jD1jg(j D\a QΌC1j^!J1jD1jg(j  K-4 댠E4C1j^0J1jD1jg(j T[D nKC1j^'J1jD1jg(j [7v lC1jاJ1jD1jg(j b a7 Sl`C1jاJ1jD1jg(j  Ny# lC1jاJ1jD1jg(j ic Jl!@C1jاJ1jD1jg(j p zB= lV BdlaC1j^J1jD1jg(j0 hʕHf 3͌h̾\C1j-\J1jD1jg(j0 _&j Ҵh{ZC1j46J1jD1jg(j `w> l-^C1j4J1jD1jg(j  :[lSR`C1j4.J1jD1jg(j  x} h[C1j4A F1jD1jD1j5 #q#! fЌ`*sC1jq~J1jD1jg(j !9 P`hNhYC1jqJ1jD1jg(j oc ^`hWC1jqJ1jD1jg(j #Xv `h*tXC1jq J1jD1jg(j  yHz @ߝh3XC1jȽJ1jD1jg(j JmԈ wߝhVC1j)BSJ1jD1jg(j &B4 ͌ߝhWC1j)B_J1jD1jg(j .:jB ߝd.QC1j)B`J1jD1jg(j 5.t  %fߝh`YC1j27J1jD1jg(j <<6 ߝdvSC1j2%+J1jD1jg(j  J+Qg Iߝd)TC1j2J1jD1jg(j Uj pGߝdTC1j2b(J1jD1jg(j  ] 1ߝd[RC1j;pJ1jD1jg(j hВYg d7RC1j;oJ1jD1jg(j o :dRRC1j;J1jD1jg(j w}(= xdNVC1jD"'J1jD1jg(j  `^ yWdUC1jDJ1jD1jg(j  MC FdZUC1j_1J1jD1jg(j  0N# TlkcC1jhJ1jD1jg(j $9\ lcC1jh%J1jD1jg(j  >Zq Bll_dC1jh"J1jD1jg(j  U ;ldC1jh4J1jD1jg(j :n D@l:bC1jq*J1jD1jg(j h(p], peC1jq*J1jD1jg(j &{ ? 1pFfC1jq*J1jD1jg(j < p4HfC1jq*J1jD1jg(j | jpjC1jJ1jD1jg(j ߀׏ $p$iC1j&J1jD1jg(j  Ðm ׌pjgC1jJ1jD1jg(j TV Ō`phC1j!J1jD1jg(j  鈳M `pX   |C1jEJ1jD1jg(j@  lr |ʙ~C1jEQ"J1jD1jg(j  Qtp Vˌ6vC1jEIJJ1jD1jg(j& ^ʩSȺ ||C1jJ1jD1jg(j Ztٱ x yC1j"&J1jD1jg(j  bc+ A|LC{C1j"A F1jD1jD1j> #K8I m- ь dvC1j"!J1jD1jg(j  lCS yʌxvC1j+?J1jD1jg(j u x5wC1j+ J1jD1jg(j  }'z xwC1j+C!J1jD1jg(j  XgE a_trC1j+J1jD1jg(j  F jtrC1j+"J1jD1jg(j  L? ތx#esC1j4#J1jD1jg(j  maK4 xYtC1j4J1jD1jg(j t铣 /dx5sC1j4sJ1jD1jg(j ƅu 1ڌxGYtC1j4J1jD1jg(j !oB ЌxbuC1j4J1jD1jg(j ro [x}uC1j=S#J1jD1jg(j  lx4 -xAvC1jl3:J1jD1jg(j lϽrX 삌tfcnC1jBJ1jD1jg(j W3. hÌtpC1jc,J1jD1jg(j   =tpC1jJ1jD1jg(j J<I 閌 toC1j !J1jD1jg(j   jJ w tWoC1j#;J1jD1jg(j Oe7 mu t|qC1j#*J1jD1jg(j  "S nj t3rC1j#WJ1jD1jg(j J#K  t?qC1j#ZfJ1jD1jg(j4 qi}l #O|}C1j`"J1jD1jg(j  - 8|C{C1j`'J1jD1jg(j  &2Ig i|(OzC1jB=AF1jD1jD1j # ( ь d~vC1jKzJ1jD1jg(jH $+  E 0C1jKzAF1jD1jD1j #!" 5 ь `3sC1jTJ1jD1jg(jJ %O^ c 9;C1jT)J1jD1jg(j  01  έC1jTS;J1jD1jg(j ; (: k `C1jT@J1jD1jg(j" t2V j HC1jf1=J1jD1jg(j  J~AT/t  C1j QJ1jD1jg(j* tG !Č oC1j AF1jD1jD1j #! < Ҍ `!esC1j (%J1jD1jg(j  Z S C1jJh J1jD1jg(j D#  :C1jJAF1jD1jD1j #,  Ҍ `3sC1jJfJ1jD1jg(j  dw2 f u!C1jJ#J1jD1jg(j  j\"  ̄C1j Y%tJ1jD1jg(j< O cH  ؃C1j bAF1jD1jD1j #Y !  Ҍ d~vC1j b#J1jD1jg(j  sbo-$  FC1j bA8F1jD1jD1j ## '2LB Ќ%Ռ%dWtC1j bA F1jD1jD1j5 #'-UsX 3ՌdruC1j tXJ1jD1jg(jN 'vKȺ R9bT56C1j tXP>J1jD1jg(j  |<ϵO 7bTb8C1j tX<J1jD1jg(j  - bT}8D1j(U8J1jD1jg(j 4#/ ьbT89D1j(!2{J1jD1jg(j> a{Qr [bX9D1j(!yJ1jD1jg(j> _*I \ bX:D1j(#"}J1jD1jg(j@  N%h bX;D1j(#"J1jD1jg(jB !}!Q bX D1j,n%P[J1jD1jg(j. "UKW bX?D1j,n%J1jD1jg(jD ""J XbX@D1j,%J1jD1jg(jH $"Aq /b\BD1j,(oJ1jD1jg(jJ %"Qh$Q\ L\ P 0OD1j4hD8BI1jD1jg(j $bL x 0sD1j4hD8I1jD1jg(jN 'd&ߥ9ޕ tI,D1j4hD89I1jD1jg(j $uk; I0D1j8 ;!I1jD1jg(j  $V- AI0D1j8;1aI1jD1jg(j2 & xI0D1j8;I1jD1jg(j $N # iI0|BD1j8; I1jD1jg(j  $e ֑I0D1j8;N!I1jD1jg(j  $+h.l =GI4QD1j8;tJ1jD1jg(jH $&VTu ʌI@D1j8;J1jD1jg(j $^ʋ XI@D1j8<>I1jD1jg(j  %i9 ჌I0[D1j8d>I1jD1jg(jH $&@ ׌I0 D1j8d>^I1jD1jg(j %X_ nj009DD1j8m.?\I1jD1jg(j %c=? C00BD1j8m.?gI1jD1jg(j !%_-K 04]8D1j8m.?n9I1jD1jg(j )% 3 Ԍ04oD1j8m.?I1jD1jg(j 8%ڑ& 04iD1j<?;HI1jD1jg(j& &6e9j UU04D1j<?_I1jD1jg(j &s$Hh %،04D1j<? 8I1jD1jg(j ?%k~a JV0(D1j@=H1I1jD1jg(j  N%aXt 0(ÓD1j@zH2I1jD1jg(j  [%#i= E0,4D1j@zH'5I1jD1jg(j h%+&z S0,}D1j@zH BI1jD1jg(j" 'u֜7q &+0(D1j@շH:-I1jD1jg(j  v%' t 9(D1j@շHI_I1jD1jg(j0 '{% E9(JD1j@շH!J1jD1jg(j % `9@_BD1j@շH`FJ1jD1jg(j$ 0f 98gD1j@1IH'J1jD1jg(j  %!Ȍ) ڌ98ybD1j@SLSJ1jD1jg(j* 0ާ|R r:98VD1j@SLC#J1jD1jg(j  %>xL #9@hD1j@SL#J1jD1jg(j  %r_u|L U9<4 D1j@eL?J1jD1jg(j %Wq|s 9<خ D1j@eLEJ1jD1jg(j %uڟ H9< D1j@eL4J1jD1jg(j %efQ) ,98JD1j@eL*J1jD1jg(j  %9 % 19@6D1j@nL,'J1jD1jg(j  %CQ|% B=<} D1j@nLo-J1jD1jg(j  %Bk? WB=8D1j@nL(J1jD1jg(j  % ҌB=23s B=8$D1jDM* J1jD1jg(j  G2' ZB=8?D1jDM!J1jD1jg(j  P2ۭm KzN( *KzDvD1jD4RKJ1jD1jg(j %]_ _&J1jD1jg(j  3=i onL|'+D1jL>_J1jD1jg(j 3J6 =onLd+D1jL>_`J1jD1jg(j 4D ~onP,D1jL>_~J1jD1jg(j 4nU lS PX,D1jLG`J1jD1jg(j 4+D h@DD1jPkc!J1jD1jg(j  4BaN P,D1jPc J1jD1jg(j  4OHU& 롌@RD1jPcnJ1jD1jg(j (413%? 댁PL-D1jPcxJ1jD1jg(j /4R b,J wZP.D1jP"d^J1jD1jg(j 64 ~ 1P@.D1jP"dJ1jD1jg(j >4| Pr/D1jP"dJ1jD1jg(j  F4픀ok P'/D1jP"d J1jD1jg(j  L4dʻ$ t PBf0D1jP_dJ1jD1jg(j U4@w PK0D1jP_dJ1jD1jg(j \4A Z%P]1D1jP_dJ1jD1jg(j  d4q1 5Ō%Px1D1jP_dg?J1jD1jg(j  j4hF 茊%P2D1jP_d"J1jD1jg(j  z4jm ,%T2D1jPd4J1jD1jg(j 4dn 2%@@8D1jPgg"J1jD1jg(j  4\L/ 6%TB3D1jPpgJ1jD1jg(j 40% 񲌊%T3D1jPpgPJ1jD1jg(j 4\z >%T64D1jPmhJ1jD1jg(j 4іf -%T4D1jPmhJ1jD1jg(j 45: E%Tg5D1jPhT#J1jD1jg(j  4 <+, %@D1jPhJ1jD1jg(j 4 Q%T5D1jPhJ1jD1jg(j 4IMu X%T#\6D1jPhAF1jD1jD1j ']N b֐`*sD1jPhJ1jD1jg(j 4Q8 \ D1jPhAF1jD1jD1j (h ֐dNtD1jPaiJ1jD1jg(j 0tw 瀐lD1jPaiH"J1jD1jg(j  4F PD1jT?om J1jD1jg(j  4). q ␮8D1jTHm6'J1jD1jg(j  4F (CD1jTHmAF1jD1jD1j 7_ e V֐V`*sD1jTHmJ1jD1jg(j^ /195R k`Vz D1jTHm6%J1jD1jg(j  4휼& hVD1jTZ&nAF1jD1jD1j  7, א`EYtD1jTZ&n+I1jD1jg(j  4X262 mrVLLD1jTccn\'I1jD1jg(j  5JFد VgD1jTln3I1jD1jg(j  55fpu ƮVD1jTln(I1jD1jg(j  5fċa% mːVijD1jXq>I1jD1jg(j  )5;: VD1jXqI1jD1jg(j  95[,$ VD1jXqDI1jD1jg(j  ?5DbkP *IV(D1jXpr|I1jD1jg(j  E59J jVʢD1jXpr7I1jD1jg(j K57p V{D1jXpr)I1jD1jg(j  Y5tKR &VD1jXpr6I1jD1jg(j d5} .V鬵D1jXr/I1jD1jg(j  r5,d} v ƐJD1jXr/#I1jD1jg(j  ~5ijE$ {&D1jXrX1I1jD1jg(j  57© q D1jXri(I1jD1jg(j  5~aQ hy}D1jXAv:I1jD1jg(j 5$)٩ ǷD1jX~v+I1jD1jg(j  5 B:ҷD1jXv*I1jD1jg(j  5oV $mD1jXv-8I1jD1jg(j 5k K5$lD1jX5w#I1jD1jg(j  5(9 t"$/D1jX5w5I1jD1jg(j 5 A$;D1jXrwI1jD1jg(j^ /01=2-8i $`D1jXrw{-I1jD1jg(j  5{*rޱ Z$RD1j\@{/I1jD1jg(j  6Ftx 4$D1j\R{3I1jD1jg(j  6Co{u~ I$@SD1j\R{QI1jD1jg(j* _1i.\t ߐ$%D1j\R{I1jD1jg(j  5 kR '$ D1j\R{ I1jD1jg(j  6v (D1j\[{)I1jD1jg(j  #6 | H^(%D1j\[{r7I1jD1jg(j .61+6E ݐ(WD1j\[{@I1jD1jg(j  <6kK[ (3D1j\d{JI1jD1jg(j B6YeAd e(i1D1j\d{I1jD1jg(j  J6mkoP x(<D1j\d{qI1jD1jg(j: U0y Tܐ D1j\P*1I1jD1jg(j  P6Vۆ} $"D1j\-I1jD1jg(j  ]6ʌ)v T DD1j\L,I1jD1jg(j  i6}C !ߐJ qD1j\84I1jD1jg(j u6p{h eFJD1j\CI1jD1jg(j" t1X_P+ 笐J D1j`EG;I1jD1jg(j 6G%, ~J zD1j`E!3I1jD1jg(j  6d׋ xJ jD1j`EaBI1jD1jg(j" 1q J?D1j`؃MI1jD1jg(j( 1[ kJD1j`؃,I1jD1jg(j  6Ұk !CJ 9D1j`؃gI1jD1jg(j4 1?f߮ =D1j`(I1jD1jg(j  6 ZsD1j`4I1jD1jg(j 68. ^J D1j`I1jD1jg(j 6X[  )D1j`K*I1jD1jg(j  6R rOD1j`EI1jD1jg(j$ 1y qlD1jdA0I1jD1jg(j  6:r P D1jdSI1jD1jg(j 67 \[ 8D1jdSf+I1jD1jg(j  60+r mÐD1jd\T-NI1jD1jg(j( 1/Uy MD1jd\T 9I1jD1jg(j 6m!T 9$D1jd\T2I1jD1jg(j  7Ȋ &acD1jde^=I1jD1jg(j  7Óش u*D1jde|1I1jD1jg(j  !7kz* uD1jdei+I1jD1jg(j  .7E OO[D1jd$AF1jD1jD1j 8 h9א`3sD1jdLfJ1jD1jg(j4 8XB\ QАؐ>dvD1jpm:J1jD1jg(j B7sV cvD1jp)@J1jD1jg(j" /;"Dä4] !D1jp xJ1jD1jg(j> @;1U- D1jp3nJ1jD1jg(j8 _;9@ >_]D1jtvJ1jD1jg(jD "{;{] _f> D1jt J1jD1jg(j  Q7R(S [>MD1jt#J1jD1jg(j  Z7"]T >D1jtAF1jD1jD1j Waej# >ؐ>`EYtD1jt+J1jD1jg(j c7`[R H>pjD1jt-PJ1jD1jg(j* ;oN_ 5>t92mD1jt-a%J1jD1jg(j  k7%ŕm$ >t'lD1jt-'J1jD1jg(jT *;7&=Ÿ >p kD1jt AF1jD1jD1j _ 2 CtGtGdïwD1jt AF1jD1jD1j _Ɛ -ntGtGdwD1jt AF1jD1jD1j _\[ .>ؐ>dwD1jtGL:G1jD1jg(j u7N ͐> vXD1jtGAF1jD1jD1j _\# >ؐ>dvD1jtG%I1jD1jg(j  7BI{ y>D1jtGAF1jD1jD1j _?2 f|ؐ|drwD1jt2I1jD1jg(j  7>% )>AD1jtچI1jD1jg(j b;0 gp @=>D1jt6vI1jD1jg(j< ><+nM > hD1jxy}I1jD1jg(j@  a<X f>\D1jx)I1jD1jg(j K<%>d tc|~D1jxڬAF1jD1jD1j _^ *S| | dvD1jxyAF1jD1jD1j _C97) S|ؐ|drwD1jxI1jD1jg(j D<*0 篐|TD1jxAF1jD1jD1j `q $|ؐ|drwD1jx+I1jD1jg(j k=p '|D1jxAF1jD1jD1j W7D_m Đ|ؐ|drwD1j|zвI1jD1jg(jN '{={ j|D1j|zвAF1jD1jD1j W q (|ؐ|drwD1j| I1jD1jg(j D=2V | vD1j| /I1jD1jg(j  7 NL=% H| !D1j|I1jD1jg(j 7s%N: sB|اD1j|&AF1jD1jD1j WBA$O 6Q|ؐ|dvD1j|&AF1jD1jD1j Wrg #>|ؐ|dvD1j|&RI1jD1jg(j U=ٿ5 V| =D1j| aI1jD1jg(j2 ;>h: | D1j| AF1jD1jD1j WxK=G А|ؐ|dvD1j|޶-I1jD1jg(jH $T>m'' | D1j|޶AF1jD1jD1j Wr "dwD1jv}AF1jD1jD1j WV O |ؐ|dwD1jJ1jD1jg(j  7 |"D1j:J1jJ1jJ1j qs4# (g*䰉J1j5O1jJ1jJ1j  aI ^֤StJ1j֤`K1jD1jg(j  3. _ȵQD1jPK1jK1jK1j ě &"! K1j K1jK1jK1j Bb , / EK1jEK1jD1jg(j nx>w4p UED1j(Z1jJ1jJ1j r< 8ٰ/pJ1jrn.rJ1jJ1jJ1j ]r ް۰wX۰8J1j8K1jK1jK1j NO`<2 Q555K1j5vF1jD1jg(j< >yͿ ᄺdfxD1j37O1jJ1jJ1j o5 #[\tJ1jrJ1jK1jK1jn 7!Ht@n# gȬȚ]J1j]K1jK1jK1j  fpN GȬK1jȬAi1j=1j=1j  4Z. u܍܍?:1jD6%Ai1jA1jA1j 6;8 |VV=1jg5Ai1jZ1jZ1j B) PP =1j)TAK1j=1j=1j CJ[ tاا^=1jfTAi1ji1ji1j ]/ x89x89-=1jAi1j=1j=1j aFhb E<<̔=1j<Ai1j=1j=1j e*# 8̔=1jAi1j=1j=1j fݢV ;=1jAi1j=1j=1j gH#`+ ;=1jAi1j=1j=1j hj : =1jAi1j=1j=1j jMɏF" H-=1jAi1j=1j=1j k w s~R -=1jCi1jh1jh1j ll| VP_P_ =1jAi1ji1ji1j KDUQ Zd,Dd,D-?1jO#J1jJ1jJ1j  $i y4 긜[J1j[F1jD1jD1j/boot/vmlinuz-virt’Wo B„\ kD1jAi1jD1jD1j WO [\ĺ D1jAi1jD1jD1j W#E rg|ؐ|)D1ji1jD1jg(j TL S|\ĺ D1jD1jD1jD1jlibmount.so.1.1.039-j 1T::D1j:iGjD1jGj6 ( D1j:0GjD1jGjN '( rD1j~,hiE1jiD ")] VE1jE1jE1jE1jlibnvme.so.1.16.1Ɂ5x f ծ ծ E1jծ iE1ji\ =) / E1jծ Ai1jE1jE1j WMbE 9b#b# E1jZ`'iE1jZ`'i BL;n b#E1jAi1jE1jE1j WvpD sZ'E1jAi1jE1jE1j X, 7Bb#b#Z'E1jDZ`'iE1jZ`'i 5, Fb#E1j8Z`'iE1jZ`'i  @Tĵ UAk$E1j(ciE1jci gDb6L2\ $/E1j-Ai1jE1jE1j  e=|AC 'u9u9ЯE1j6Ai1jE1jE1j ejv ,:,:иE1j \6jE1jj 5%s ,:E1j \6jE1jj 7"2G ,:E1j)6Ai1jE1jE1j eD0 -,:,:ЯE1j)64jE1jj 7BBH 4I,:E1j)6Ai1jE1jE1j ewU73 <,:,:иE1j)6 jE1jj 7 T ^,:E1j)6 jE1jj 79G e,:E1j;7Ai1jE1jE1j eN? i:i:ЯE1j;7 jE1jj 743 *,:E1j;7jE1jj 7u o,:E1j;7 jE1jj 7zh)W Vi:E1j;7Ai1jE1jE1j e i:i:иE1j;7jE1jj 7˽h3 _i:E1jDP7Ai1jE1jE1j eJ^AK hi:i:иE1jDP7l jE1jj 7b m6i:E1jDP7 jE1jj 7\d ׽i:E1jDP7Ai1jE1jE1j eao 8i:i:иE1jDP7jE1jj 7IN. 9 i:E1jM7 jE1jj 7MNnS ̮i:E1jM7Ai1jE1jE1j eZ +޼¦:¦:ЯE1jM7jE1jj 7X\ &ȼi:E1jM7jE1jj 7U# i:E1jM7l jE1jj 7Wh i:E1jV7 jE1jj 7/' i:E1jV7M jE1jj 7ɱ,} i:E1jV7x jE1jj 7g? R ¦:E1jV7 jE1jj 7ڸi +¦:E1jV7 jE1jj 7BH +¦:E1jV7 jE1jj 7qkLf i¦:E1jV7jE1jj 7* Qͼ¦:E1jhD8Ai1jE1jE1j e<^$8 #¦:¦:ЯE1jhD8 jE1jj 7:SJ J¦:E1jhD8 jE1jj 7nP.([ 0¦:E1jhD8 jE1jj 7W9hN eV¦:E1jhD8q jE1jj 7*e6 }¦:E1jq8jE1jj *h0%w 1ܼ¦:E1jq8 jE1jj *gt zJ¦:E1jq8 jE1jj  *Ƕp c¦:E1jz8Ai1jE1jE1j fu_ef X::ЯE1jz8jE1jj  * X:E1jz8jE1jj *'C# :E1jz8E1jE1jE1jvt220ݾeD k:8989E1j89njE1jj * Cr :E1j89GjE1jj * Fʼ:E1j89jE1jj *Dc2 `:E1j89jE1jj *~G܈ z:E1j89Ai1jE1jE1j 6Ğ J ::иE1j89<jE1jj  **|4- :E1ju9jE1jj  !*$# XE:E1ju9jE1jj &*kYt {:E1j9jE1jj (*'p# :E1j9E1jE1jE1jlibncursesw.so.6.6N}?99  rF!C!CE1j!Ch;jE1jj O7F-S) 1rFE1j!CE1jE1jE1jlibedit.so.0.0.77.Idi wMSLSLE1jSL`jE1jj\ ? j 1wME1jSLAi1jE1jE1j J 3::иE1j̻U& ciE1jci P.N ۭدiE1j̻U{ciE1jci +*C&! n=دiE1j WAi1jE1jE1j 'Er !] W WиE1j WciE1jci  -*|kq دiE1j WciE1jciv R/K RدiE1j7XciE1jci SB دiE1jЊ[ciE1jci pT-Mֺ }ظiE1j,^ciE1jci oU|7DG @MظiE1j5_U8ciE1jci 2*Jx CظiE1jԳbciE1jci sZV8y ظiE1jԳbXciE1jci WҨ |ظiE1j؂mhAi1jE1jE1j R % Z'E1jؔh@K ciE1jci Xb]  yE1jqciE1jci ,X. E1jP ciE1jci A*yu;d J E1j̃Ai1jE1jE1j -l иE1jciE1jci E*m9ai kE1j趶AciE1jci F*5v )E1jK ciE1jci w[x6N+ -E1jH ciE1jci GP&, -E1jpciE1jci czJ~w @-E1jXciE1jci J^mֶŠ 5 E1jN7(iE1j(i + XE1j߻7(iE1j(i и #E1j߻08(iE1j(i J*1= E1jYw(iE1j(i< ,h E1jY0(iE1j(iL !_E> %~E1jY8h(iE1j(i6 ,BdP XE1j7(iE1j(i Y*07 4E1j8x(iE1j(i> ,U_O@ M/E1jE1jE1jE1jtune2fs'f OȽȽE1jȽE1jE1jE1jdumpe2fsF} $O OȽȽE1jȽ(iE1j(i g*SV5 bOE1jȽ(iE1j(i  o*U:7 `OE1jȽG(iE1j(i$ )j㕗Δ 9OE1jȽ0h(iE1j(i6 ,Bs_ OE1j"g(iE1j(i4 ?b \OE1jjG(iE1j(i$ ?9H/ [ iBOE1js*P7(iE1j(i t*z3a OE1js*7(iE1j(i *wt OE1j(iE1j(il 6,x /OE1jX(iE1j(i W,-aiE OE1j0GjE1jGjf 3-Ae E^E1jLzE1jE1jE1jlibfdisk.so.1.1.0^ Pc jqE1j8GjE1jGj SL t5qE1j0HGjE1jGj S-I\1 [E1jE1jE1jE1jlibyaml-0.so.2.0.9SlE r  E EE1j ExgE1jxg jbM*3]m&0 Mb E1j EH7jeF1jje *ą>m $F1j$Ai1ji1ji1j $53ژ% -i1je0jF1je0j  *OZ 3(6F1j( Ai1jF1jF1j x_) i{(6(6cdF1j( Ai1jF1jF1j  +'- (9N(9NcdF1j(( Ai1jF1jF1j 7q, &(6(6lF1j(( e0jF1je0j *ǂ{ 3(6F1j(( e0jF1je0j *TV! (6F1j(e Ai1jF1jF1j d- M (6(6lF1j(e e0jF1je0j *mî (6F1j(e Me0jF1je0j *mۣ g(6F1j(e Ai1jF1jF1j BӾd (6(6cdF1j(e e0jF1je0j *:mFg I(6F1j( e0jF1je0j *gӞHE (6F1j( Ai1jF1jF1j ZkCNK ?,,lF1j(  e0jF1je0j *]' (6F1j(  e0jF1je0j *p` h},F1j( e0jF1je0j *DŽ g*,F1j( Ai1jF1jF1j Ƚ ,,cdF1j( e0jF1je0j *5> ,F1j(' [e0jF1je0j *(@T ,F1j(' Ai1jF1jF1j _#; ,,cdF1j(' je0jF1je0j *+ ,F1j(' e0jF1je0j *a-g@ ,F1j(0Ai1jF1jF1j a- ".,,cdF1j(0e0jF1je0j *5f M,F1j(0 e0jF1je0j *!x t,F1j(0ee0jF1je0j *b=u3 B,F1j(0Ai1jF1jF1j Šs ,,lF1j(9Ne0jF1je0j *B- e,F1j(9Ne0jF1je0j *xX! +,F1j(9NAi1jF1jF1j ' ,,cdF1j(9Ne0jF1je0j *!h .,F1j(9Ne0jF1je0j *ۮC 1,F1j(K i1jF1je0j *jOl.N w(6:}F1j(K:#e0jF1je0j  *?3 L(6F1j(T^e0jF1je0j *A;H cm(6F1j(TAi1jF1jF1j FHJ ,,cdF1j(T} e0jF1je0j *t2 ,F1j(]Be0jF1je0j *|p ,F1j(]Be0jF1je0j *w2 5,F1j(]Be0jF1je0j *޸c :I,F1j(]Be0jF1je0j *Vd d,F1j(o e0jF1je0j *aNw ,F1j(o i1jF1je0j *66QC9 Q,F1j(oe0jF1je0j *}Dzh ,}F1j,b,e0jF1je0j *>2 m,}F1j,kie0jF1je0j *!džH! ,}F1j,kie0jF1je0j *^| ,}F1j,kiAi1jF1jF1j OR >L0KL0KЙF1j0 Ai1jF1jF1j  pJ+k V=L]KLL]KLТF1j0iF1ji *` uP}SF1j0 iF1ji  *t 8-PBWF1j4iF1ji *-y L0KF1j4iF1ji  *b-Ѿ2 nLTLF1j4iF1ji *GDG ӆL9WKF1j4iF1ji *1y FLTLF1j4_ iF1ji *e? L9WKF1j4} iF1ji *6^ >L9WKF1j4xiF1ji *ʉj C sL9WKF1j4xiF1ji *=^o\ YoL9WKF1j4ʵiF1ji *U$ LTLF1j4ʵiF1ji *9 XLKKF1j4iF1ji *H 5LKKF1j4iF1ji *n}G LTLF1j4 iF1ji *dL GULTLF1j4 iF1ji *7Q@Ψ LTLF1j4$!qiF1ji *}"V( LTLF1j4$!iF1ji *}<c 3L]KLF1j4$!iF1ji * x L]KLF1j4$!A<i1jF1jF1j  3" KLPLPF1j4$!4 iF1ji +?#q T(tXF1j4!C iF1ji +V T(tXF1j4!iF1ji+ +r82 LۡOF1j4!fiF1ji +L3 5L]KLF1j4!Ai1jF1jF1j) SNM0 )LXPLXPF1j4!&iF1ji +0qO LPF1j4!&iF1ji  + =xn XLPF1j4$"&iF1ji  +JA\ OLPF1j4$" iF1ji +O LPF1j4$"4iF1ji +ɯz; F{LPF1j46"&iF1ji +xA LPF1j46"&iF1ji +q QLPF1j46" iF1ji +<<B LPF1j46"4iF1ji +oX*~ kLPF1j46"@iF1ji +2(` OLXPF1j46"BiF1ji +*} ]LXPF1j4?"&iF1ji +" yA LXPF1j4?"liF1ji  +)7g &L]KLF1j4?"iF1ji "+$d rLNF1j4?"iF1ji #+̗LA L]KLF1j4H #LiF1ji $+"$ ȗLfLF1j4H #iF1ji &+p %2LfLF1j4H #2iF1ji '+:{- o-LfLF1j4Z#NiF1ji (+: 2LfLF1j4Z#jiF1ji *+)O LfLF1j4Z#iF1ji ++VL_ LfLF1j4c#j iF1ji ,+Mo' LfLF1j4c#iF1ji /+  T(tXF1j4~z$NiF1ji ;+&{ )LxMF1j4~z$iF1ji =+M( ?LxMF1j4~z$<iF1ji ?+&' -LxMF1j4$NiF1ji @+n cLxMF1j4$hiF1ji C+Xu PXT(tXF1j4$ziF1ji D+<> TL?MF1j4$iF1ji F+? ^nL?MF1j4$NiF1ji G+@f L?MF1j41%iF1ji I+H_ L?MF1j41% iF1ji K+PE LT1XF1j41%iF1ji N+s_8g \T1XF1j4% iF1ji Q+X PfTF1j8%iF1ji T+ul L?MF1j8%iF1ji U+{o /L?MF1j8%Z iF1ji V+.* PWF1j8%&iF1ji Y+6 ,L?MF1j8%&iF1ji \+عl/ *T(tXF1j8%&iF1ji ^+6? L|MF1j8ϟ&iF1ji _+Jt< L|MF1j8ϟ&aiF1ji b+9: vLNF1j8ϟ& iF1ji d+̲\ WL|MF1j8ϟ&*iF1ji h+_|Hv L|MF1j8ϟ&iF1ji j+e L|MF1j8&iF1ji k+vwZ 5L|MF1j8&iF1ji l+f 3L|MF1j8'` iF1ji m+ﶢP]q PfTF1j8'p iF1ji q+z"N $L|MF1j8'iF1ji t+{ dL|MF1j8'Ai1jF1jF1j d! ZLXPLXPF1j8' iF1ji u+'̯ rT1XF1j8V'iF1ji x+_t i[LXPF1j8V'iF1ji z+w/ nMLXPF1j8V'iF1ji |+# xW6 HLXPF1j8V'iF1ji ~+}# gLXPF1j8V'iF1ji +gl} mLXPF1j8'iF1ji +b LXPF1j8'iF1ji +9^ LMF1j8'iF1ji +lS} LNF1j8'iF1ji +ӕ' MLMF1j8(1 iF1ji +q" xLMF1j8(Ai1jF1jF1j ~+z _`LXPLXP4F1j8K( iF1ji +A<? LXPF1j8K(@ iF1ji +K$t F}LXPF1j8K(iF1ji +P| LMF1j8 (iF1ji +9,Mi LMF1j8 ($ iF1ji +^y_ T1XF1j8 (iF1ji +1SX hL3NF1j82?)iF1ji +"[!]P IL3NF1j82?)NiF1ji + PfTF1j82?)iF1ji +4  %qL3NF1j82?)iF1ji +bO L3NF1j8;|)$iF1ji +J'~< PWF1j8;|)iF1ji +V'0 L3NF1j8;|)iF1ji + DL3NF1j8M)iF1ji +" DL3NF1j8M)iF1ji + ^ >PWF1j8M)tiF1ji +p# 6LpNF1j8M)R iF1ji +A}oP LpNF1j8V3*ZiF1ji +*3 $LpNF1j8V3*iF1ji + LpNF1j8V3* iF1ji +Q+n =,PfTF1j8V3* iF1ji +Y.y؄ RT(tXF1j8_p*? iF1ji +jA $LpNF1j8_p*iF1ji +A{O PfTF1j8_p*Ai1jF1jF1j  _LPLPF1j8_p*\ iF1ji +^ LPF1j8q*\ iF1ji +޽}i KLPF1j8q*\ iF1ji +&7 LPF1j8q*iF1ji +6*m !LNF1j8z'+iF1ji +9l LNF1j8z'+iF1ji +[c LNF1j8d+fiF1ji +tH/q XVP)TF1j8d+2iF1ji +~eZCd LNF1j8+niF1ji +X LNF1j8+4 iF1ji +PVA PfTF1j8+iF1ji +: 6L'OF1j8+iF1ji +#  ΔL'OF1j8,iF1ji +UVt _PfTF1j8,iF1ji +%(i L'OF1j8,LiF1ji +J;Mb 8L'OF1j8, iF1ji +nK;i PfTF1j8,iF1ji +=m! jL'OF1j8,iF1ji +{ZMe1 aPfTF1j8,iF1ji + .A _bL'OF1j<- iF1ji +=Cm \LdOF1j<-GiF1ji +ӛ PfTF1j4 PYRF1j< .|iF1ji NMVUv PPF1j< .iF1ji NYT lPPF1j<5/Ai1jF1jF1j ;Tw ثPPPPТF1j<5/iF1ji N| fPVF1j<5/A(i1jF1jF1j+ /˗ PkrSPkrSдF1j<5/iF1ji  N PPF1j<5/iF1ji  NḋN! hPPF1j<r/iF1ji  N=W D PPF1j<r/iF1ji N" ʩPPF1j<r/iF1ji NQ5 N Pb5SF1j7y KPkrSF1j@N71 iF1ji N.o 8PkrSF1j@W7iF1ji Nv> P}SF1j@W7iF1ji NC P}SF1j@W7A i1jF1jF1jG Ҷ~m wP)TP)TԽF1j@W7iF1ji N8 jP)TF1j@iD8iF1ji N l7 pIP)TF1j@iD8iF1ji Nkf \P)TF1j@r8iF1ji Nj(L JP)TF1j@r86 iF1ji N/4& QP)TF1j@{8EiF1ji N:5^ P)TF1j@{8iF1ji Ne 6P}SF1j@{86iF1ji NضTNn P)TF1j@{8iF1ji N] P)TF1j@{8iF1ji NK˄ XP)TF1j@89iF1ji N| P)TF1j@89Ai1jF1jF1j w3O PiF1ji NWK% PVF1jDJ:>iF1ji NY\ ɱPWF1jDJ:>iF1ji NS -PNVF1jD\>iF1ji ND PUF1jD\>@ iF1ji Nl(V PUF1jDe>uiF1ji N: 0xPWF1jDe>x iF1ji N3I16 SPVF1jDe> iF1ji NC9 PVF1jDn.?liF1ji NhIJiD +PNVF1jDn.?iF1ji N[) PVF1jDwk?HiF1ji N7v ;PWF1jD?iF1ji NB=ar kPVF1jD? iF1ji N\mM qPVF1jD?6 iF1ji NZ0 ~PNVF1jD"@< iF1ji NJeaw SPNVF1jD"@iF1ji N6d+ 9PNVF1jD_@ iF1ji N \PNVF1jD_@iF1ji NgR? $PNVF1jD@iF1ji O. tPNVF1jDAQ iF1ji O14! \PWF1jDAiF1ji OG{=@ dPVF1jDSAiF1ji  OVmk nPVF1jDSAiF1ji  O`& 8KPVF1jDSAiF1ji  O=V PVF1jDȐAdiF1ji Odi WPVF1jDȐA$iF1ji OC$Wyh 8PVF1jD BiF1ji OؐZ PVF1jD BiF1ji OH, GcPWF1jDGBriF1ji O [PWF1jDGBiF1ji O'ߌ PWF1jHB^ iF1ji  O@;" rPWF1jHBtiF1ji #O' ,LIF1jHBIiF1ji $OL,. T(tXF1jH& oPWF1jHFDAi1jF1jF1j  z7 T(tXT(tXТF1jHFDViF1ji ,O)8 iPWF1jHO$EiF1ji -O{ LPWF1jHO$E iF1ji .O^63yY YNPWF1jHO$EiF1ji /O?R 8TWF1jHaEiF1ji 0O~6 *PWF1jHaE4iF1ji 1ON ,@I OPWF1jHaEiF1ji 2O>?, T(tXF1jHaEiF1ji 3O8_kR΀ 0jTWF1jHaEiF1ji 4O! V TWF1jHaEiF1ji 5On/; |YT7XF1jHjEiF1ji 6O W2T7XF1jHjEiF1ji 7O TWF1jHsFQiF1ji 8Ow,w JTWF1jHsFiF1ji 9O EW jTWF1jHsFiF1ji :OE} T1XF1jHsFiF1ji ;OuQ# TWF1jHFiF1ji O\> T7XF1jHFiF1ji ?Ot@ T7XF1jHFiF1ji @OL T7XF1jHFMiF1ji AOp uT7XF1jHFiF1ji BO+ hFT(tXF1jH GfiF1ji COǣx4| nT(tXF1jHGAi1jF1jF1j& Z 4T1XT1XF1jHH$iF1ji  DO$A ^L'JF1jHHiF1ji  IOpڸf $L'JF1jHH$IiF1ji& MF}dW ~L0KF1jHH$DiF1ji$ _F`! kL0KF1jH1IIM1jJ1jJ1j SQ*}X ernԬi1KpJ1j<W1jW1jW1j._N LLLW1jLW1jW1jW1j h3bjV [lPl՝Pl՝l#W1jPl՝Z1ji1ji1ji1j B 9Rej "]]JZ1jJ/]1jZ1jZ1j `L i\)zZ1j߻4]1jZ1jZ1j `WA \t|Z1j׌-]1jZ1jZ1j `d]+ !9`Z1jW1jW1jW1j *N!=o lpppW1jpl MhZ1jMh j} HJf0Z1jމ-Z1jZ1jZ1juzÀ| S0މ-މ-Z1jމ-Z1jZ1jZ1jmtools} r̤S0--Z1j-Z1jZ1jZ1jmtools rE 7S0--Z1j-Z1jZ1jZ1jmtoolsR S0--Z1j-Z1jZ1jZ1jmtoolsY"s KS0--Z1j-MhZ1jMh m5# 瑤S0Z1j-OMhZ1jMh o+gt5  S0Z1j@.Z1jZ1jZ1jmtoolsl6T6 bkS0@.@.Z1j@.Z1jZ1jZ1jmtools 5 P7 S0@.@.Z1j@.Z1jZ1jZ1jmtools \ 閤\0@.@.Z1j@.Z1jZ1jZ1jmtoolsM:A \0@.@.Z1j@.Z1jZ1jZ1jmtools`i \0~.~.Z1j~.Z1jZ1jZ1jmtoolsL[S) I\0~.~.Z1j~.Z1jZ1jZ1jmtoolsZ^ t\0~.~.Z1j~.Z1jZ1jZ1jmtoolsь6 ;ʤ\0~.~.Z1j~.7MhZ1jMh pxH Ȥ\0Z1j~.Z1jZ1jZ1jmtoolsA` z\0 . .Z1j .Z1jZ1jZ1jmtoolsՔ# \0 . .Z1j .Z1jZ1jZ1jmtools8"\d C\0 . .Z1j .Z1jZ1jZ1jmtools J\0 . .Z1j .Z1jZ1jZ1jmtoolsFI \0 . .Z1j .Z1jZ1jZ1jmtools&{*4 ֤nZ1 . .Z1j .Z1jZ1jZ1jmtools,uc: ǤnZ1 . .Z1j .Z1jZ1jZ1jmtoolsFf BSnZ1..Z1j.Z1jZ1jZ1jmtoolsc8+ nZ1..Z1j. tMhZ1jMh< q5' ܤnZ1Z1j.Z1jZ1jZ1jmtools{ IbnZ1////Z1j//Z1jZ1jZ1jmtools< tYnZ1////Z1j//MhZ1jMh ~)Fx Պw1Z1j//Z1jZ1jZ1jmtoolshs w1////Z1j//MhZ1jMh 3J jw1Z1j// MhZ1jMh 6 dw1Z1j//PGjZ1jGj^ / .Yc aX7Z1j=6Ai1jZ1jZ1j 7ދ ySASA`Z1jSAWh1jZ1jH.i HX PT.Z1jSAi1jZ1jH.i =1¿ߙ QPXZ1jY$EH7H.iZ1jH.i 0 PZ1jbaExH.iZ1jH.i> ?U1P PZ1jbaE]7H.iZ1jH.i  n PZ1jbaE<H.iZ1jH.i Y?U J%PZ1jbaE H.iZ1jH.i  FFD TPZ1jkEKH.iZ1jH.i X aPZ1jkEH7H.iZ1jH.i Fb^ 5PZ1jkEX"H.iZ1jH.i  C"{ PZ1jkE%H.iZ1jH.i  ɔS9V dPZ1j}F+H.iZ1jH.i  Ӕw Z>Y-Z1j}FTH.iZ1jH.i ޔC !Y-Z1jI7H.iZ1jH.i א۰)g1 Y-Z1jIH.iZ1jH.i ߔR$' Y-Z1j:KA$i1jZ1jZ1j /r6 ԪRԪR)Z1j:KH.iZ1jH.i  Y-Z1jCWKH.iZ1jH.i ># {Y-Z1jCWKH.iZ1jH.i wA Y-Z1jCWKXH.iZ1jH.i Bc (Y-Z1jCWKtbH.iZ1jH.i2 H7WC Y-Z1jLKH.iZ1jH.i ǧr} MY-Z1jLKhH.iZ1jH.i ڡm7 M2Y-Z1jLKAi1jZ1jZ1j 0_S1| (ԪRԪR)Z1jLK H.iZ1jH.i 1N {ԪRZ1jUKH.iZ1jH.i C8.j} #AԪRZ1jUKH.iZ1jH.i X 6kZ1jUKxH.iZ1jH.i  Q kZ1jNH.iZ1jH.i  J,. akZ1jNH.iZ1jH.i Bi_ 4kZ1jN H.iZ1jH.i   3kZ1jN8H.iZ1jH.i c [%A kZ1jNH.iZ1jH.i Ts :kZ1jdOAi1jZ1jZ1j JD 0ԪRԪR2Z1jdOx+H.iZ1jH.i  "18 EԪRZ1jdO,H.iZ1jH.i  "=, aԪRZ1jdOH.iZ1jH.i 8 &ԪRZ1jO H.iZ1jH.i up"- kZ1jOH.iZ1jH.i "w"c >kZ1jO!H.iZ1jH.i  $Sp XkZ1jO.H.iZ1jH.i  -tn tkZ1jOAi1jZ1jZ1j  #=l ԪRԪR2Z1jOH.iZ1jH.i 9Bw& ԪRZ1jOH.iZ1jH.i :3OD ]ԪRZ1jPH.iZ1jH.i <BƯ iԪRZ1jPAi1jZ1jZ1j  -; =)Z1jP0 H.iZ1jH.i DC? ԪRZ1jP`pH.iZ1jH.i: {.6: Լ̄Z1jPPH.iZ1jH.i Gf۶% Լ̄Z1jP H.iZ1jH.i  I<J imԼ̄Z1jQH.iZ1jH.i O, 0Լ̄Z1jQH.iZ1jH.i  R_ 26 MԼ̄Z1jQH.iZ1jH.i  XD^ JԼ̄Z1jQ H.iZ1jH.i ^i Լ̄Z1jQ H.iZ1jH.i aCFt #Լ̄Z1j$MQ H.iZ1jH.i eSm} Լ̄Z1j$MQH.iZ1jH.i  hG B%Լ̄Z1j$MQ@H.iZ1jH.i nG= q Z1j$MQ'H.iZ1jH.i  r4z Z1j$MQx5H.iZ1jH.i |&3 rl Z1j$MQ 4H.iZ1jH.i 혢e x Z1j6QH.iZ1jH.it C i^s }. Z1j6QH.iZ1jH.i  "S-q  Z1jƗU` H.iZ1jH.i O Z1jƗUpH.iZ1jH.i  Jg! -O Z1jƗU H.iZ1jH.i L  Z1jV`!H.iZ1jH.i  @' Z1jVH.iZ1jH.i ]wnS Z1jM+YxH.iZ1jH.i .P'E b Z1jVhYaH.iZ1jH.i YLװk Z1jz\ZH.iZ1jH.i w2z IfFZ1jZjH.iZ1jH.i6 .&ZW FZ1ju]_H.iZ1jH.i0 . FZ1j]H.iZ1jH.i  4 {aFZ1j]@H.iZ1jH.i 'g yFZ1j]P"H.iZ1jH.i  CB5 dFZ1j -^4H.iZ1jH.i •&Z:H +FZ1j -^ H.iZ1jH.i Е9 ( jFZ1j -^@}H.iZ1jH.i@  MO FZ1j -^H.iZ1jH.i  ԕ; FZ1jm`H.iZ1jH.i ٕ~c FZ1jv aH.iZ1jH.i ܕ=>= 1FZ1jv aAH.iZ1jH.i" . GC; o[Z1jv aGH.iZ1jH.i$ .vfg IZ1jaP.H.iZ1jH.i  ޕj Z1ja H.iZ1jH.i n90 Z1ja8H.iZ1jH.i  5 Z1jbH.iZ1jH.iB !.: ZZ1jb H.iZ1jH.i 8- Z1jb H.iZ1jH.i  Z1jbH.iZ1jH.i  \[ YZ1j.cH.iZ1jH.i Q Ӈ 1kZ1j.c H.iZ1jH.i `J^f VztZ1j.c(H.iZ1jH.i  ` uP XtZ1j.cH.iZ1jH.i `wCi .tZ1j٨cH.iZ1jH.i `- tZ1j٨cH.iZ1jH.i `_Zq ,tZ1j٨cDH.iZ1jH.i `h^ tZ1j٨cH.iZ1jH.iH ƀs tZ1j٨cH.iZ1jH.i `! ctZ1jWf(H.iZ1jH.i `ݭ0 AtZ1jWf4H.iZ1jH.i  `-K% }!Z1jWfH.iZ1jH.i `lރh }!Z1j`\ TԡZ1j̩vhH.iZ1jH.i |`bOێ dԡZ1j̩v5H.iZ1jH.i ~`' HԡZ1j̩vdH.iZ1jH.i `U+(D ԡZ1j̲vh H.iZ1jH.i `?m_ VԡZ1j̲v:H.iZ1jH.i `W; ԡZ1j̲v"H.iZ1jH.i  `(T 2ԡZ1j̲vH.iZ1jH.i |&  ԡZ1j̲vH.iZ1jH.i  IԡZ1jo{H.iZ1jH.i 5\E 2<ԡZ1j H.iZ1jH.i `qW ԪRZ1j,H.iZ1jH.i `o'ECa{ +ԪRZ1j>vii1jZ1jH.i6 _nwy ԪRd,DZ1j>vLH.iZ1jH.i `06V JgԪRZ1j>v H.iZ1jH.i `>r ԪRZ1j>v H.iZ1jH.i `_ ԪRZ1jGZ1jZ1jZ1jH 7P53 '؋HԂ Z1jZ1jZ1jZ1j f;4O @FئئZ1jZ1jZ1jZ1j _-pth ؝Š؝Š:Z1j:fi1jZ1jZ1j P)d s:ll#Z1j:`Z1jZ1jZ1j gL 4y""ˈTZ1j"$h1ji1ji1j qx9^ dAdEdETh1jTi1ji1ji1j k w`[`X>i1jX>ai1ji1ji1j2 t/'* C```i1j`Pi1ji1ji1j^ z5#ި C```i1j`-i1ji1ji1j  R9L d,Dd,D`i1j`gi1ji1ji1j4 yO.,Rr vd,Dd,Dd,Di1jd,Dii1ji1ji1j6 cz끦AO DNd,Dd,Dd,Di1jd,Dti1ji1ji1j v8 chhShSi1jhS>i1ji1ji1j /%n [.h6"h-!h i1jh i1ji1ji1ji1j >As 5c]]x;i1jxr8Ti1ji1ji1j Z %xR@P) s]1j sd1jh1jh1jh1j # ʁP2P2]1j sd1jh1jh1jh1j hX߻ J#P2P23 uL}L}L}]1jlAh1jh1jh1jh1j c\@ DDD]1jlƔAh1jh1jh1jh1j ]e& D}D}D}]1jlƔ^1jh1jh1jh1j M n9 WD}D}Ԋa]1jl+@^1jh1jh1jh1j 榉;V 2*D}D}ۨc]1jl4}^1jh1jh1jh1j  9 Dk Dk d]1jlO4^1jh1jh1jh1j ZXq D}D}f`]1jlXq^1jh1jh1jh1j f# ٴDk Dk Ԯwb]1jla^1jh1jh1jh1j [z DD -^]1jls(^1jh1jh1jh1j N{_ NDk Dk 8]]1jl|e^1jh1jh1jh1j Y-Nbw Dk Dk 9^_]1jlAh1jh1jh1jh1j( n) LLL]1jlAh1jh1jh1jh1j ßk iLLL]1jl^1jh1jh1jh1j a{ 'LLk]1jlAh1jh1jh1jh1j irr LXLXLX]1jlYAh1jh1jh1jh1j  OrU 2LXLXLu]1jlY^1jh1jh1jh1j y> JLuLu ]1jlYAh1jh1jh1jh1j 3A iJHy1Hy1Hy1]1jlӘ^1jh1jh1jh1j (1 mDHpHpLx]1jlӘ^1jh1jh1jh1j og frHpHp#]1jpMAh1jh1jh1jh1j 6# LLL]1jp͊^1jh1jh1jh1j "' :LL ]1jp͊Ah1jh1jh1jh1j is YLLL]1jpAAh1jh1jh1jh1j e2 LLL]1jpA^1jh1jh1jh1j W 3LLfx]1jpA^1jh1jh1jh1j qtmXP 'fLLy]1jp~Ah1jh1jh1jh1j eTu9 HӓHӓHӓ]1jpAh1jh1jh1jh1j$ ED/ HӓHӓHӓ]1jpAh1jh1jh1jh1j hZf ÉHHH]1jp^1jh1jh1jh1j Wt HH;z]1jp^1jh1jh1jh1j &D PHӓHӓm]1jps^1jh1jh1jh1j )uH Hy1Hy1窌]1jp0*^1jh1jh1jh1j H2 $5 s8HH]1jpB^1jh1jh1jh1j ƥL\X Hy1Hy1ö]1jp][^1jh1jh1jh1j gD,c HH܍]1jpo՝^1jh1jh1jh1j +?K \HHw{]1jpx^1jh1jh1jh1j HK HHJJ]1jpAh1jh1jh1jh1j  I.] HHH]1jp^1jh1jh1jh1j ['` [HH^]1jpAh1jh1jh1jh1j %F *HVHVHV]1jpC^1jh1jh1jh1j {"o,( DHVHV]1jpCAh1jh1jh1jh1j V g WHbHbHb]1jp^1jh1jh1jh1j %$T pHbHbq{]1jp^1jh1jh1jh1j l ۓ >HbHb+}]1jp7Ah1jh1jh1jh1j X H%H%H%]1jtt^1jh1jh1jh1j +I H%H%\~]1jtt^1jh1jh1jh1j ֡} \H%H%]1jt۱Ah1jh1jh1jh1j Ŕ 1HHH]1jth^1jh1jh1jh1j q BHHO4]1jthAh1jh1jh1jh1j ! eHӓHӓHV]1jt^1jh1jh1jh1j  kHVHVv]1jtAh1jh1jh1jh1j 9 7H%H%H%]1jt]`1jh1jh1jRR h(by(by[' @E@EC_`1jC_^1jh1jh1jh1j ! y VH%H% ]1jt]Ah1jh1jh1jh1j R HHH]1jt,ע^1jh1jh1jh1j uصA 6HHӘ]1jt,עAh1jh1jh1jh1j ##C >HHHy1]1jtPˣ^1jh1jh1jh1j h$ Hy1Hy1.]1jtPˣAh1jh1jh1jh1j qg$ LcdLcdLZ']1jtk_1jh1jh1jh1j 6 zLZ'LZ'<.]1jtk_1jh1jh1jh1j vl şLZ'LZ'<,]1jtt_1jh1jh1jh1j  B 1LZ'LZ' 0HgHg@N2]1j Ah1jh1jh1jh1j מD 5;LlLlLl]1j Ah1jh1jh1jh1j y] LlLlLl]1jAh1jh1jh1jh1j Byn qLlLlLl]1j^1jh1jh1jh1j L LcdLcdIk]1j^1jh1jh1jh1j ͉A LcdLcdܸKp]1j/^1jh1jh1jh1j 9kB LcdLcdg&n]1j8^1jh1jh1jh1j f‹ա LlLlLom]1jJS^1jh1jh1jh1j u LcdLcdܔWo]1jSAh1jh1jh1jh1j r L63L63L63]1j\^1jh1jh1jh1j  C" L63L63?q]1j\^1jh1jh1jh1j pv 5L63L63~v]1jnG^1jh1jh1jh1j `> y zL63L63r]1j^1jh1jh1jh1j kr ( 1OL63L63lu]1j;^1jh1jh1jh1j \Q'P 4jL63L63?s]1jxAh1jh1jh1jh1j }}72 I'HpHpHp]1j^1jh1jh1jh1j "hP HpHp5w]1jAh1jh1jh1jh1j 1 [H:H:H1I]1j/Ah1jh1jh1jh1j 7t / HHH]1j/^1jh1jh1jh1j o QHHѼu9]1j/Ah1jh1jh1jh1j kYy DDD]1jl^1jh1jh1jh1j  , !DD ;]1jȩAh1jh1jh1jh1j ^iQ 1H UH UH U]1j^1jh1jh1jh1j ` eH UH UrL]1j^1jh1jh1jh1j Dpj VH UH UP]1jU^1jh1jh1jh1j ߨ H UH UN]1jAh1jh1jh1jh1j Q q P3H1IH1IH1I]1j^1jh1jh1jh1j kf |HHn5S]1j" ^1jh1jh1jh1j ; :HH+7X]1j+IAh1jh1jh1jh1j È [HHH]1jF^1jh1jh1jh1j GRv HH/Q]1jFAh1jh1jh1jh1j bl AH1IH1IH1I]1jO=^1jh1jh1jh1j fh H1IH1InI]1jO=^1jh1jh1jh1j U 9$HHѼuD8]1jaAh1jh1jh1jh1jj -r HHH]1js1^1jh1jh1jh1j P| D`D`и,]1js1^1jh1jh1jh1j āf DDϸL-]1j|n^1jh1jh1jh1j ,QCh_ HHи@.]1j^1jh1jh1jh1j  ;&B DDϸ5/]1j%^1jh1jh1jh1j T+ vDDϸ:/]1jb^1jh1jh1jh1j x=p NDDθpZ1]1jb^1jh1jh1jh1j вtB DD͸2]1j ^1jh1jh1jh1j )/) JD/D/ϼ3]1j^1jh1jh1jh1j 5d ^DlDlϼ+5]1j͓^1jh1jh1jh1j ܶ) DDμ3]1j ^1jh1jh1jh1j  bk FDDϼ$6]1j ^1jh1jh1jh1j Eo! DDάa]1j^1jh1jh1jh1j  a@ lD;D;ά]1j^1jh1jh1jh1j |4 DlDlϬ=]1j ?^1jh1jh1jh1j  p {D`D`аo#]1j|^1jh1jh1jh1j ? gHHѠV]1j^1jh1jh1jh1j &] DDΠ]1j03^1jh1jh1jh1j -)-X D`D`Р ]1j03^1jh1jh1jh1j X mDD͠7']1jn}^1jh1jh1jh1j %c( D/D/Ϥ[]1j^1jh1jh1jh1j < D#D#Ф ]1jT'^1jh1jh1jh1j Tj02 D#D#Ф ]1j]d^1jh1jh1jh1j W3 "=D;D;Τ4 ]1jf^1jh1jh1jh1j .'v ED;D;Τ( ]1jx^1jh1jh1jh1j I]:@ ȦDlDlϤ ]1jX^1jh1jh1jh1j OKu| DDΤ<]1j^1jh1jh1jh1j ŵ HHѨ`]1j^1jh1jh1jh1j p5A 9D`D`Ш]1jL^1jh1jh1jh1j C& lDDΨ]1j^1jh1jh1jh1j j 8 D/D/Ϩä]1j@^1jh1jh1jh1j ֍-:T "HHШ]1j@^1jh1jh1jh1j - 6 YD`D`Ш]1j}^1jh1jh1jh1j τl7 WD#D#Ьn,]1j^1jh1jh1jh1j {` yD/D/Ϭ]1jq^1jh1jh1jh1j :{ 6"DlDlϬ]1j^1jh1jh1jh1j T([ SDDϨJ8]1jf^1jh1jh1jh1j a8 (DDΰ]1j#^1jh1jh1jh1j b{\, D/D/ϴ%]1j,^1jh1jh1jh1j a 0DDδb&]1j>Z^1jh1jh1jh1j "& ?HHдV']1jG^1jh1jh1jh1j sBZg D`D`а]1jP^1jh1jh1jh1j ^ DDϰ]1jbN^1jh1jh1jh1j W DDΰ]1jbN^1jh1jh1jh1j &h}z JD#D#а ]1jt^1jh1jh1jh1j 2 OD;D;ΰ'!]1j}^1jh1jh1jh1j ?n zD`D`аK"]1j^1jh1jh1jh1j  i #HHд$]1j^1jh1jh1jh1j v_ "D;D;δK(]1j6^1jh1jh1jh1j | QDDʹb3*]1j^1jh1jh1jh1j  H; QDDδ>?)]1j^1jh1jh1jh1j K: D/D/ϼH7]1j*^1jh1jh1jh1j KR sD#D#д'+]1j*Ah1jh1jh1jh1j .\^ *HHH]1j^1jh1jh1jh1j 9, BHHjY]1jAh1jh1jh1jh1j P}r >L}L}L}]1jAh1jh1jh1jh1j xJ RL}L}L}]1j^1jh1jh1jh1j dYN +L}L},e]1jAh1jh1jh1jh1j O kL}L}L]1j^1jh1jh1jh1j In ELLPf]1jAh1jh1jh1jh1j QAN LLL]1jAh1jh1jh1jh1j na > LLL]1jP_1jh1jh1jh1j &nO( LL@64]1jP^1jh1jh1jh1j ;ORvg LLݠ]1j_1jh1jh1jh1j /W8 LLLF]1j _1jh1jh1jh1j 74: DbDbLG]1jQh1jh1jh1jh1j )q xLLn_1j@@6h1jh1jh1jh1j  ?6DbDbo_1j@RP7h1jh1jh1jh1j PwYy LL&cJ_1jD8h1jh1jh1jh1j G<8 {LL\K_1jD89h1jh1jh1jh1j .~ NDbDbr_1jDR<h1jh1jh1jh1j Y .DYDY'l_1jD<h1jh1jh1jh1j Ӵ< /LLWYt_1jD<h1jh1jh1jh1j n /DbDbJz_1jDW:>h1jh1jh1jh1j !c( DbDbZU_1jLFh1jh1jh1jh1j dp DbDbM_1jLGh1jh1jh1jh1j # *PLLo_1jPNA`1jh1jh1jh1j )Cr PVPVh_1jTZUAh1jh1jh1jh1j  D,_D,_D,_`1jP+Y`1jh1jh1jh1j -ʜo? `D,_D,_Uj`1j܆Z`1jh1jh1jh1j +B /D,_D,_j`1jܘ[`1jh1jh1jh1j Q9 D,_D,_j`1jܘ[A i1jF1jF1jo 7L%8H5 ~Xc`Xc`=1jHAi1j=1j=1j G.KN QAWW-=1jWAi1j=1j=1j H/^ לaa=1jW . ..  lost+found etc var lib bin sbin usr proc dev homemedia mnt opt  root  run  srv  sys  tmpboot ... ރ d <~ <~ <~ <~ <~ <~ <~ <~ <~ <~ <~  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ ...{.@~ N . .. repositories keys4protected_paths.d, arch |world ގ . ..<3alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub<3alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pubd3alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub  . .. logcacheempty liblocal@run mailLoptspool tmplock ަ4ծ . ..apk.log ކ*kL . ..% libc.musl-x86_64.so.1firmwaremodules-load.dsysctl.dZ mdev apkmodules$\ld-musl-x86_64.so.1 ޥ<+ ...{zE} Y ' . L..(busybox vn) . L..*acpidopenrc|chrony W+ . .., if-down.d-if-post-down.d. if-post-up.d/ if-pre-down.d0 if-pre-up.d1if-up.d ` interfaces , .+.. - .+L..bridge މ@. .+.. 1z/ .+.. ~0 .+L..bridge fK1 .+L..2dad Y4 . L..5 udhcpc.conf xck ...{Ą숀 f| . ..6 sbin7share: bin liblocallibexec -26 ...{b q5Z vw7 . ..8udhcpc misc apk dhcpcd|mkinitfskernelzoneinfod tsyslinux ?8 .7L..9default.script Ď ... o . .. ptsoshm 'EP: ...{0aE;ygY`n 2GRbzip2]clearn diff|factorhostid ipcsopenvt*split7 tailE ttyaTunzipUuptimeb ssh-agentgetconf  ssh-keygen_ scp< mdeltreeK mshowfatO mxtarQ tgz2 @ amuFormat.sh_ scp7 @5.apk.db375a6637748fa46bcb68527e2598bab47b57aa8efe69988 @5.apk.ca0a547b234bf83532fee1936ce852e0eb166e49c0f4a3db9 |5.apk.65a85f0fdcc867943656207b3b1fe812257c95167fb1a17eptimeZ viss[vlock ށ95flock lsof id last\cksum free findodirname odinstall; [lzcatmicrocommkfifoipcrm^ cmpx envpkillpscanrealpath resize setkeycodesg$showkeyl6 tacs<timeout@ tracerouteOunlink Runsharecwhoamif xxdgxzcatscanelf econftoolllddtree; mdel>  mdoctorfatA minfoD mmd` sftpassh-addc ssh-copy-idI mrenL mtoolsN mtype` Xpxelinux-options &, E ash&busyboxVchgrp` cpf datepdmesgu echovegrep~falsefdflushfsyncgetopt grephostnameioniceiostatkbd_modelinux64 lnlogin lsmknod more mountpointmpstat nicepidof pingping6printenv  reformime rmrmdir sede setserial+ stat- stty. su8 tarKunamebbsuid2kmod ܦ{ run-partsmkdirnetstatqchattrtdumpkmapmktempfatattr mv psmakemimeXchownGbase64q dnsdomainname linkh ddWchmodm dfipcalcrlsattrB arch killIbbconfig gzip lzop pipe_progress pwd revlinux32gunzipfgrepmountT catsetpriv sh (sleep 3 sync>touchJ#C trueJumountVusleep ]watchiLzcat@ rc-status yi kA ornzty\{!|zE}0,vrqی=OLm bs jX#`<k7b晁 CV- v4%i0 ޟ۩vޫ1 <\~ 4[ Jg zš 5R ؓ PcYT;~ F awkA traceroute69 tees du} fallocate seqJ bcM uniqIudhcpc6pstreefuserQbzcata cpio%shred= tops"sha3sumsNunix2dosB tree\volname` wgetawhich ssl_clientscmp_sys_resolverd ssh-keyscanessh-pkcs11-helper yx^ findssl.sh5  mbadblocks6 mcat7 mcd? mduF mmoveY isohybrid.pl3 lzpk.2d85bfbf0abe98511ec0bb565b47f23bfef8fed0c4372398@@D ҵ ... 譒Po ... )tp . L..qroot $2r . ..tblacklist.confu i386.confs aliases.conf ,v . .. Azx . .. My . ..z15min{daily|hourly}monthly~weekly CHz .y.. 9L){ .y.. @: | .y.. ނ-} .y.. hu~ .y.. ] . ..READMEcolor_prompt.sh.disabled 20locale.sh iE . L..README N . ..malpine } ... :c ... ރp ... ޹b . ..cdromfloppyusb Z> ... z ... $yU ... d ... ޖi ... ao_  ... Mg  . ..lock }I . .. ޭ<  ... H  ... ެji  ... ޞuҋ ...{1b SL!l ... ކ# .L..00-alpine.conf FY . .. bin libshare 0E ... UT ... |ͬ ... 4; .7.. ޕPW . .. miscapk 0Ǖ ... B ... x . .. miscchronydhcpcdcloud ޓOM( ... l/U ... XV ... ةT ... 7ʞ . ..Lcronmail sv .L..crontabs 3e ... }#5L blkdiscardS blkid3depmodfdiskfindfsfstrim halt ifenslave ifup initinotifyd ipipaddriprouteklogdlogread mkfs.vfatmkswapnameif pivot_rootpoweroff setconsole'slattach0swapoff4sysctl5syslogdYvconfigj zciprc-sstat service supervise-daemon+ mkfs.ext2, mkfs.ext3- mkfs.ext4 ifctrstatldconfigPdhcpcdy bootchartd&e2fsck' fsck.ext2) fsck.ext4*mke2fs o ifconfig mdevgetty1swapon7modprobe8rmmodreboothwclockipruleloadkmap^watchdogGtunctl fsckfbsplashNblockdevifquery openrc-run  rc-update start-stop-daemon apk{ nlplug-findfsV @update-extlinuxsfdiskU Dextlinux 5~ . .. ifupdown-ngrc ގDa . ..bridge dhcpforward ipv6ipv6-ra ipv6-tempaddr linkstaticbond _ѽ . ..{X/fF( ޒ . .. bin: sbinGLshXxversion yg ...{Me+}} |ƾ . ..{ b ޗBdmesg localmountmodules staticroute swapsyslogk@sshdPchronyd ޔҿhwclock killprocsmodloop mtab fsck net-onlinenetmountseedrngswclockklogdloadkmap ntpdrdateDwatchdog0crond consolefontdevfsbootmiscP@Q7@D`@+EtIR@|vWp@*e4_@ b@@XB @~@p@d]@PT@- ޔ:hostnamelocalmodulesmount-ro s6-svscan swapsysfs sysfsconflpsshd = mtab net-onlineosclockwatchdogtiny-cloud-boottiny-cloud-earlycrondloadkmap0rdate firstboot,fsck user consolefont50a058f59e2f0fd1b1fb6bcc50df4581bbbac53eb7@@@@@5.apk.52114d8630ad2559c12b7e48b376d3588b3214a3f2279709i-b@5.apk.955271119f90a34384ad3609623b764596dfa8844e3f48dd Shwclock killprocs savecache termencoding_ mdevtiny-cloud-main ޮ$W ntpdsyslogchronyddhcpcdseedrng staticroutesysctlprocfs@tiny-cloud-final0klogd networkinglnumlockdmesg functions.sh hwdrivers localmountloopback machine-id  . L..README ޓ[% . .. bootdefault nonetworkshutdownsysinit X . .. acpid bootmisc hostname hwclock modules swap sysctl syslog `tiny-cloud-boot ގ` . .. chronyd  networking sshd tiny-cloud-early tiny-cloud-main |tiny-cloud-final H8X ... {| . ..  killprocs mount-ro  savecache {  . ..devfs dmesg  hwdrivers mdev [c eendeerrorneinfo ewaitfileewarn fstabinfo get_options  is_newer_than"kill_all# mountinfo+service_set_value/service_stopped2 shell_var4veend6veinfo checkpath ebegin u,service_started- service_started_daemon3vebegin5veindenteindent eval_ecolors$@5.apk.267765772c0c05d463e808c6d89bdc630ee5f097db495063'@5.apk.76ed230babdc96a43b2ed8f391556aeeb969f7a25f6c359a(@5.apk.9bd2c23eb538737538fbb6431dbb39005ec96b678e97779a@1`5.apk.f503c245cc211f09873babb7111bdf185423e9a819bca46ad@}}Ӆ@ @/$A b yAewarnnewend$ on_ac_power% rc-depend& save_options'service_crashed*service_inactive0service_stopping1service_wasinactive7 veoutdent8vewarnteerror~S.@S@@x70@l"@U9@=tMe @fg@`ti@tu@z@@'|`@z ʩwesyslog! is_older_than(service_get_value)service_hotplugged. service_starting openrc-user9@vewendeinfoneoutdent 61: . ..<mark_service_failed= mark_service_hotplugged> mark_service_inactive?mark_service_started@ mark_service_startingAmark_service_stoppedB mark_service_stoppingC mark_service_wasinactiveDrc-abortEseedrngFswclock;mark_service_crashed FG ...{x r: J functions.shK gendepends.shL init-early.shMinit.shN openrc-run.shOopenrc-user.shP rc-cgroup.shR rc-mount.shSrunit.shUs6.shVstart-stop-daemon.shWXsupervise-daemon.shH binfmt.shR@5.apk.4bed6c0f091e3212fac2410fe6eaeb2be0829cc924755904S@5.apk.6829822522ee6c77c9832669ecf4e06afc052e5182ad3975@U@5.apk.a73938a3546afde2e4676ec53df0bf0441f8ee71e5adc240t K@Qrc-functions.shTs6-svscanboot.shIcgroup-release-agent.sh Rmodloopnetmount rootrunsvdir save-keymapssave-termencodingswclockacpidbootmiscPbinfmtcgroupsdevfs(@誄@@ @@0@Fܑ@s@E@ rxу@C@,ӓ@Iݣ@@9@VS@R PZ . ..\persistent-storage]ptpdev^usbdev[dvbdev d add-shell tDarpingrdate}setup-timezone~ setup-user update-confkillall5q setup-desktopr setup-devdt setup-dnsfbset rdevpsetup-bootableusetup-hostnamenvmesendmailObrctlsetfont nandwritensetup-apkcachew setup-keymapt badblocksi lbu_excludeudebugfs\filefragglbu `Y R .7 ..keys ޮ#  ...{eu  . ..3alpine-devel@lists.alpinelinux.org-616ae350.rsa.pub\3alpine-devel@lists.alpinelinux.org-58199dcc.rsa.pub ؈c<3alpine-devel@lists.alpinelinux.org-58cbb476.rsa.pub<3alpine-devel@lists.alpinelinux.org-58e4f17d.rsa.pub<3alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub<3alpine-devel@lists.alpinelinux.org-616adfeb.rsa.pub3alpine-devel@lists.alpinelinux.org-616ae350.rsa.pub loongarch64riscv64<3alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub3alpine-devel@lists.alpinelinux.org-524d27bb.rsa.pubk.6bbab250a64a62650b6be68da93c858b90697e210a89ba55@5.apk.80fc7eae90e783e4b502592ee646b005cad1fe2b487efc8fd l#@3alpine-devel@lists.alpinelinux.org-616abc23.rsa.pub@3alpine-devel@lists.alpinelinux.org-616a9724.rsa.pubaarch64@3alpine-devel@lists.alpinelinux.org-60ac2099.rsa.pub@3alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub<3alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pub<3alpine-devel@lists.alpinelinux.org-58199dcc.rsa.pub<3alpine-devel@lists.alpinelinux.org-616db30d.rsa.pubL3alpine-devel@lists.alpinelinux.org-66ba20fe.rsa.pubarmhfarmv7mips64ppc64les390x x86x86_64<3alpine-devel@lists.alpinelinux.org-5e69ca50.rsa.pub<3alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub3alpine-devel@lists.alpinelinux.org-616ac3bc.rsa.pub(4@X m@d@}OD@Y$T@^_,@"6@R@eu@ }@$t@:.@^@*> =x6 . ..3alpine-devel@lists.alpinelinux.org-616a9724.rsa.pub\3alpine-devel@lists.alpinelinux.org-524d27bb.rsa.pub v . ..3alpine-devel@lists.alpinelinux.org-616adfeb.rsa.pub\3alpine-devel@lists.alpinelinux.org-524d27bb.rsa.pub ޳? .L..3alpine-devel@lists.alpinelinux.org-66ba20fe.rsa.pub  .L..3alpine-devel@lists.alpinelinux.org-5e69ca50.rsa.pub {G . ..3alpine-devel@lists.alpinelinux.org-616abc23.rsa.pub\3alpine-devel@lists.alpinelinux.org-58cbb476.rsa.pub o . ..3alpine-devel@lists.alpinelinux.org-616db30d.rsa.pub\3alpine-devel@lists.alpinelinux.org-60ac2099.rsa.pub ^XP . ..3alpine-devel@lists.alpinelinux.org-616ac3bc.rsa.pub\3alpine-devel@lists.alpinelinux.org-58e4f17d.rsa.pub VPD . ..<3alpine-devel@lists.alpinelinux.org-5243ef4b.rsa.pub3alpine-devel@lists.alpinelinux.org-61666e3f.rsa.pub3alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub ޛf . ..<3alpine-devel@lists.alpinelinux.org-5261cecb.rsa.pub3alpine-devel@lists.alpinelinux.org-6165ee59.rsa.pub3alpine-devel@lists.alpinelinux.org-4a6a0840.rsa.pub l"v . L..alpine PhF . ..certsct_log_list.cnf.dist openssl.cnfXopenssl.cnf.distxcert.pemprivatect_log_list.cnf wٮ .L..ca-certificates.crt  ... v' . ..capi.soloader_attic.so padlock.soafalg.so ޟ .L.. legacy.so ` . ..certs\cert.pem HP@ . .. % . .. dbexec  . .. scripts.tar.gz  installed1 lock triggers h B ... $j ... F& . ..PWRF i .L..00000080 Cn . L..conf.d sources.dx chrony.conf ޚH .n.. ? .n.. ;&ڈ ... B&bgetentwejectnslookuphexdumpLunexpandloggernsenter< [[ccrontab less? trY mesg/ sumdwhoisQunlzop ncHbasename renicekillallg dcpastenohupreadlink{ exprWuudecodeb whonproc headlsusb; time hd nlG  mpartitionH mrdR uzX  isohybridchronycZ  keytab-lilo_  ppmtolss16a sha1passb syslinux4 mattrib8 mcheck: mcopy= mdir@ mformatB  mkmanifestE mmount  . ..T dhcpcd-hooks dhcpcd-run-hooks Pd . ..20-resolv.conf 30-hostname 50-ntp.conf01-test <  .7 .. hooks A  .  ..  15-timezone29-lookup-hostname 50-yp.conf 10-wpa_supplicant ޵; ... + . .. wheel.conf sAsysctl.dd libalpine.sh os-release engines-3dhcpcdlibapk.so.3.0.0libcrypto.so.3 libssl.so.3libseccomp.so.2.6.0 libeconf.so.0libseccomp.so.2libcom_err.so.2.1 libe2p.so.2.3libjson-c.so.5f ssh#libuuid.so.1.3.0dracut1libzstd.so.1.5.7 cryptsetupse2initrd_helperUlibsmartcols.so.1libfdisk.so.1.1.0libyaml-0.so.2bu tiny-clouddracut1libzstd.so.1.5.7( cryptsetup$ @se2initrd_helperUDlibsmartcols.so.1 }Klibext2fs.so.2/(liblzma.so.5.8.3modules-load.dlibcap.so.2.78;libkmod.so.2.5.1( libmount.so.1libblkid.so.1.1.0 ossl-modules libblkid.so.1libpsx.so.2.78 libz.so.1.3.2 libz.so.10 libzstd.so.1: libkmod.so.2libnvme-mi.so.1cdasd-functions.shlibeconf.so.0.8.3libcom_err.so.2Ylibedit.so.0.0.77$libyaml-0.so.2.0.9 libnvme.so.1\libnvme.so.1.16.1Vxlibncursesw.so.6 ޜ:Shostnamemodules nsswitch.confkpasswd servicesshadow+ networkr modprobe.dinit.dconf.dlocal.drc.conf profile.dsysctl.dw motd secfixes.dalpine-releaseY mdev.conf os-release sslssl1.1!terminfoZ ssh $tiny-cloud.conf doas.conffstabT update-extlinux.dxupdate-extlinux.conf ލ۫y runlevels#$ sysctl.conf group inittab'busybox-paths.d apkdoas.d protocolslprofilevmodules-load.dhosts mtab4udhcpcpcrontabs3 securetty acpi<mkinitfs0nvmeyperiodicissue` lbunchrony"shells) logrotate.dx opt! dhcpcd.conf$ e2scrub.conf% mke2fs.conf h+pAadjtimex( fsck.ext3C arp mkmntdirsopenrc raidautorunHPudhcpcifparseifdownroute=acpid5lsmod6modinfoifupdown rc-servicelosetupiplinkmkdosfsnologinipneighiptunnel2 switch_root4insmodz4mkinitfs ; ... mr"< . ..=T features.d  mkinitfs.conf *Y= .<..{r,_>( s?xJcryptsetup.modulesL dhcp.filesM dhcp.modulesQ ext4.modulesR f2fs.modulesSfloppy.modulesV jfs.modulesbnetwork.modulesc nfit.modulesd nvme.modulesh raid.filesw zfs.modules. gve.modules>4 9p.modulesZ@5.apk.50ea965488b04b02bdb57dee4c9a6ac1c919e64c2fbb8b62@f@5.apk.b3ce17ede19e487ae19cae4cb332f254ddba63d6d8fa1cd6@@p@5.apk.ca4d9d6271037cd3500efcbdf57ca06c40124c23c4caf270qt5.apk.294c42b5ea245b0a09814bb1c2c55d653e510b5f3207dad5 bIcryptsetup.filesKdasd_mod.modulesO ext2.modulesP ext3.modulesT gfs2.modulesU https.filesE btrfs.modulesf phy.modulesk scsi.modulesrxenpci.modulesv zfs.files0 Tpci-hyperv.modules? aoe.modulesA base.filest =1D btrfs.filesW keymap.filesZ lvm.files[ lvm.modulespwireguard.files/  mana.modules I]memdisk.modules_ nbd.filesu zfcp.modules\ memdisk.filese( ocfs2.modulesGcramfs.modulesHcryptkey.filesN ena.modulesjreiserfs.moduleslsquashfs.modulesm ubifs.modulesovirtio.modulesqwireguard.modules@4 ata.modules@V0@b@@3P@& ީ@s xfs.filest, xfs.modulesg qeth.modulesi raid.modulesn usb.modulesX kms.modulesYlvm-thin.files^ mmc.modules` nbd.modulesa network.filesB base.modulesCbootchart.filesFH cdrom.modules ޒ1 | .7 ..~groupinitramfs-init mdev.confpasswd}fstab CVs . .. config-6.18.35-0-virt vmlinuz-virtk initramfs-virt+ bootM ldlinux.sys  ldlinux.c32  libutil.c32 $ extlinux.conf$System.map-6.18.35-0-virt  libcom32.c32  mboot.c32 menu.c32  vesamenu.c32 2? . ..6.18.35-0-virt ޏCZ ...{l g . .. archcryptodrivers{ fskernel  lib; netsecuritysound\virt g} . ..x86 ސ1ي . ..cryptokernelkvm ޚ&΋ ...{`} CȒ cast5-avx-x86_64.ko.gzserpent-avx2.ko.gz$serpent-sse2-x86_64.ko.gz$sm4-aesni-avx-x86_64.ko.gz twofish-avx-x86_64.ko.gzPtwofish-x86_64-3way.ko.gz 0 nhpoly1305-avx2.ko.gz nhpoly1305-sse2.ko.gz cast6-avx-x86_64.ko.gz serpent-avx-x86_64.ko.gz$sm4-aesni-avx2-x86_64.ko.gztwofish-x86_64.ko.gzghash-clmulni-intel.ko.gzcamellia-x86_64.ko.gzaegis128-aesni.ko.gzaesni-intel.ko.gz blowfish-x86_64.ko.gz(camellia-aesni-avx-x86_64.ko.gztcamellia-aesni-avx2.ko.gz@&.@@0 @@6B0@2͹F@PXp@݊_@`}@P_p`@Ct2ֵP@2@S YxL . .. msr.ko.gz\ cpuid.ko.gz &q . ..kvm-intel.ko.gz kvm.ko.gz kvm-amd.ko.gz }o ...{~ *;rZuv9d Of . ..async_pq.ko.gz async_raid6_recov.ko.gzasync_tx.ko.gzasync_xor.ko.gzasync_memcpy.ko.gz awauthencesn.ko.gz blowfish_generic.ko.gzcast6_generic.ko.gzcast_common.ko.gz chacha.ko.gz drbg.ko.gz ecc.ko.gzecdh_generic.ko.gzechainiv.ko.gz essiv.ko.gzghash-generic.ko.gz jitterentropy_rng.ko.gz polyval-generic.ko.gzptwofish_generic.ko.gz4aegis128.ko.gz hasync_tx blowfish_common.ko.gz camellia_generic.ko.gz crc32-cryptoapi.ko.gzcrypto_engine.ko.gz md4.ko.gz pcbc.ko.gz rmd160.ko.gzsha3_generic.ko.gz wp512.ko.gz xctr.ko.gzxxhash_generic.ko.gzadiantum.ko.gz0falgif_rng.ko.gz26eaf879cf29d8@d 0+UR ctr.ko.gz,des_generic.ko.gz crc32c-cryptoapi.ko.gz fcrypt.ko.gz lz4.ko.gzmichael_mic.ko.gznhpoly1305.ko.gztwofish_common.ko.gz( xcbc.ko.gzcast5_generic.ko.gz ccm.ko.gzalgif_skcipher.ko.gzansi_cprng.ko.gz ޻ authenc.ko.gz chacha20poly1305.ko.gz gcm.ko.gz pcrypt.ko.gz seqiv.ko.gz cmac.ko.gz sha1.ko.gz aes_ti.ko.gz`algif_hash.ko.gz ޔ geniv.ko.gz hctr2.ko.gz lrw.ko.gzalgif_aead.ko.gz(blake2b_generic.ko.gz af_alg.ko.gz cryptd.ko.gz lz4hc.ko.gz serpent_generic.ko.gz$ sm4.ko.gzecdsa_generic.ko.gz$ xor.ko.gzcrypto_null.ko.gzcrypto_user.ko.gzm @jv@*j@@2`@E#t=-P@Fl/0@~ *;@">@^U@:q[@]p@b@rc n . .. acpi ata baseblock cdrom  charcrypto# dca% dma*firmware. gpuM hidW hvZhwmon] i2cginputpiommur mdmessage misc netnvdimm nvme pci ptprpmsg rtc scsi/target1 tty7 usbL vdpaRvhostWvideo_ virtgvirtiomwatchdogqxen Erf . ..acpi_pad.ko.gz battery.ko.gz button.ko.gz fan.ko.gz sbs.ko.gz sbshc.ko.gz thermal.ko.gztiny-power-button.ko.gz nfitac.ko.gz ެB .L.. nfit.ko.gz fi< .L..ata_generic.ko.gz ޳l . ..firmware_loader ޶!A .L..firmware_class.ko.gz a . .. drbd loop.ko.gz nbd.ko.gz rbd.ko.gzvirtio_blk.ko.gz xen-blkback  zramp floppy.ko.gz ޮv{ .L.. drbd.ko.gz CrF .L..xen-blkback.ko.gz Jv  .L..  zram.ko.gz Y~  .L..  cdrom.ko.gz   . ..@ nvram.ko.gzT hw_randomHhangcheck-timer.ko.gz - .  ..virtio-rng.ko.gz\rng-core.ko.gz $z . .. ccpintel padlock-sha.ko.gz!virtio0padlock-aes.ko.gz = . .. ccp.ko.gz\ccp-crypto.ko.gz X֖ . ..qat @ . ..qat_4xxx qat_commonqat_dh895xccvf W& .L..qat_4xxx.ko.gz 5 .L..intel_qat.ko.gz ޺([ .L..qat_dh895xccvf.ko.gz nu! .L.."virtio_crypto.ko.gz ޜ6# .L..$ dca.ko.gz ޢ&  :1jS:1j <Bk..BƶMt9d/egD_ :1j @ -6zY`#?ӛ#7g=# #Hi#  # H #  #H #  #H # # #  # !# T"!I( .%L..) hdma.ko.gz 2|* . ..+Lefi-qemu_fw_cfg.ko.gz H+ .*L..,efi-pstore.ko.gz 'R˂. . ../drm xE/ .. ..0clients3drm_exec.ko.gz4drm_kms_helper.ko.gz5,"drm_panel_orientation_quirks.ko.gz6 drm_shmem_helper.ko.gz7drm_ttm_helper.ko.gz8$drm_vram_helper.ko.gz9hyperv; qxl=sysfb@ tinyC ttmE vboxvideoGvirtioIvmwgfxK xen2 drm.ko.gz %q+0 ./L..1drm_client_lib.ko.gz pC ./L..D ttm.ko.gz ށjnE ./L..Fvboxvideo.ko.gz ޠ8ǁG ./L..Hvirtio-gpu.ko.gz Ef@I ./L..J vmwgfx.ko.gz ]&K ./L..Ldrm_xen_front.ko.gz جk ޜ~ .L.. bonding.ko.gz cس . ..amazongoogleintelmellanox microsoft | # . ..ena  .L.. ena.ko.gz  . ..gve D .L.. gve.ko.gz !V . ..e1000e1000e iavfixgbevflibethlibie ޚJŵ .L.. e1000.ko.gz ]O۷ .L.. e1000e.ko.gz O .L.. iavf.ko.gz ?O8 .L.. ixgbevf.ko.gz ޷1 .L.. libeth.ko.gz UD . ..libie_adminq.ko.gz\ libie.ko.gz  . .. mlx4mlx5 U . .. mlx4_en.ko.gz\mlx4_core.ko.gz Ws . ..core y .L..mlx5_core.ko.gz  . ..mana G .L.. mana.ko.gz M 6 .L.. ipvlan.ko.gz 0y. . ..fwnode_mdio.ko.gz\acpi_mdio.ko.gz K .L.. ovpn.ko.gz ޖK . .. libphy.ko.gzmdio-bus.ko.gzmdio_devres.ko.gzfixed_phy.ko.gz ޖ\ . ..ppp_async.ko.gzppp_deflate.ko.gzppp_generic.ko.gzppp_mppe.ko.gzppp_synctty.ko.gz pppox.ko.gzh pptp.ko.gzbsd_comp.ko.gz <( . .. slip.ko.gz\ slhc.ko.gz ~A. . ..$team_mode_activebackup.ko.gz$team_mode_broadcast.ko.gz$team_mode_loadbalance.ko.gz team_mode_random.ko.gzteam_mode_roundrobin.ko.gz\ team.ko.gz `O ifb.ko.gz nlmon.ko.gz tap.ko.gzethernet tun.ko.gz,virtio_net.ko.gz physlipPvmxnet3 xen-netbackeh bareudp.ko.gze4e0f024e0bd259d5cfcbad4  phy  slip@ @5.apk.79edc96c456f4d8f4801051abc0da2ed7dd1cab88e7cde07| ޙ/ veth.ko.gzl vrf.ko.gz team mdio@netconsole.ko.gz ovpnbonding dummy.ko.gz geneve.ko.gz macsec.ko.gz pppipvlan macvlan.ko.gz macvtap.ko.gzPnet_failover.ko.gzvxlan wireguard/h\@ے@:p8@)L@'!@u+@l6 fBl@c k$,>k@ {|$ | 8@Uڵ @>0ݵ JOHG |u .L.. vmxnet3.ko.gz ?L1 .L.. vxlan.ko.gz 4 .L..wireguard.ko.gz +< .L..xen-netback.ko.gz ޫC . .. nd_pmem.ko.gznd_virtio.ko.gzvirtio_pmem.ko.gz nd_btt.ko.gz M/C% . .. host target DQ . ..nvme-fabrics.ko.gz  nvme.ko.gznvme-core.ko.gz 9/  . .. nvmet-tcp.ko.gz  nvmet.ko.gz nvme-loop.ko.gz 5 . ..T controllerpci-stub.ko.gz ޓ8/# . ..pci-hyperv.ko.gz\pci-hyperv-intf.ko.gz ( . ..ptp_vmclock.ko.gz ptp_vmw.ko.gz ptp_kvm.ko.gz ކ$ . ..rpmsg_ns.ko.gzvirtio_rpmsg_bus.ko.gzrpmsg_core.ko.gz TR .L..rtc-test.ko.gz 䐝| ...{u F" .L..# libsas.ko.gz ޫ</ .L..0target_core_mod.ko.gz 1 . ..2serial ޠzIg2 .1 ..4altera_uart.ko.gz5 jsm3Paltera_jtaguart.ko.gz >t5 .2L..6 jsm.ko.gz ޹@17 . ..8common: core< hostG monIstorage H8 .7L..9usb-common.ko.gz "?۩: .7L..; usbcore.ko.gz .< .7 ..>ehci-pci.ko.gz?ehci-platform.ko.gz@ohci-hcd.ko.gzAohci-pci.ko.gzBohci-platform.ko.gzCuhci-hcd.ko.gzD xen-hcd.ko.gzExhci-hcd.ko.gzFxhci-pci.ko.gz=\ehci-hcd.ko.gz >;G .7L..H usbmon.ko.gz ު7I .7 ..Kusb-storage.ko.gzJ\ uas.ko.gz c:L . ..MPifcvfP virtio_pciOx vdpa.ko.gz bM .LL..N ifcvf.ko.gz ޻HZ P .LL..Q vp_vdpa.ko.gz T+R . ..Tvhost_iotlb.ko.gzUvhost_net.ko.gzVvhost_vdpa.ko.gzS vhost.ko.gz +=W . ..Xfbdev CSX .W ..Ycore 8vzSY .X ..[fb_sys_fops.ko.gz\syscopyarea.ko.gz]sysfillrect.ko.gz^sysimgblt.ko.gzZfb.ko.gz  ς_ . ..` cococnitro_enclavese vboxguest ?j` ._ ..a efi_secret Ya .`L..befi_secret.ko.gz :0c ._L..dnitro_enclaves.ko.gz ޭe ._L..fvboxguest.ko.gz g . ..ivirtio_dma_buf.ko.gzjvirtio_input.ko.gzkvirtio_mem.ko.gzlvirtio_vdpa.ko.gzhvirtio_balloon.ko.gz ?ԇm . ..oiTCO_wdt.ko.gzp xen_wdt.ko.gzni6300esb.ko.gz ^DIq . ..s xen-acpi-processor.ko.gztxen-evtchn.ko.gzu$xen-front-pgdir-shbuf.ko.gzvxen-gntalloc.ko.gzwxen-gntdev.ko.gzzxen-scsiback.ko.gzxT xen-pcibackrpvcalls-front.ko.gz Hګx .qL..yxen-pciback.ko.gz ޱ{ . ..| 9p~autofs@ mbcache.ko.gzbtrfs cachefiles cephconfigfscramfs dlmecryptfsefivarfs efserofsexfat ext2 ext4 f2fs fat fuse gfs2isofs jbd2 jfsPlockdnetfs nfs nfs_common nfsdnilfs2 nlsntfs3ocfs2 overlayfspstorequota romfs  smbsquashfs udf ufsvboxsf xfs binfmt_misc.ko.gz | .{L..}9p.ko.gz )7~ .{L.. autofs4.ko.gz Ǵ .{L.. btrfs.ko.gz 1Ѓ .{L..cachefiles.ko.gz fV .{L.. ceph.ko.gz ފџ5 .{L..configfs.ko.gz F .{L.. cramfs.ko.gz ޮՋ .{L.. dlm.ko.gz .: .{L..ecryptfs.ko.gz +X .{L..efivarfs.ko.gz ޺f .{L.. efs.ko.gz  .{L.. erofs.ko.gz ޿'Վ .{L.. exfat.ko.gz ސ!e .{L.. ext2.ko.gz ހO .{L.. ext4.ko.gz !D .{L.. f2fs.ko.gz ޜ : .{ .. msdos.ko.gz vfat.ko.gz fat.ko.gz u .{ ..virtiofs.ko.gz\ fuse.ko.gz XR .{L.. gfs2.ko.gz ޸3 ` .{L.. isofs.ko.gz |@ .{L.. jbd2.ko.gz j .{L.. jfs.ko.gz mq .{L.. lockd.ko.gz  - .{L.. netfs.ko.gz Dd4 .{ .. blocklayout filelayoutflexfilelayout nfsv3.ko.gz nfsv4.ko.gz nfs.ko.gz Ŷ% .L..blocklayoutdriver.ko.gz ;EC .L..nfs_layout_nfsv41_files.ko.gz ޱ .L..nfs_layout_flexfiles.ko.gz [= .{L.. grace.ko.gz 3Yw .{L.. nfsd.ko.gz ִQ .{L.. nilfs2.ko.gz ޛ .{..{F4 ]pp0 1TSnls_cp737.ko.gznls_cp850.ko.gznls_cp860.ko.gznls_cp861.ko.gznls_iso8859-14.ko.gznls_iso8859-6.ko.gznls_koi8-r.ko.gznls_koi8-ru.ko.gznls_koi8-u.ko.gzmac-iceland.ko.gz5d4mac-romanian.ko.gz34<nls_cp1250.ko.gz@@5.apk.8cece8281cfef8b883d17ce9c2e86fa2a1a2f39f7612f589t5.apk.0e1004e18a0600a69d4aadd8ddd8dcb402c4637a0fc42f21 v)enls_cp437.ko.gz(nls_cp864.ko.gznls_cp1255.ko.gznls_cp865.ko.gznls_cp874.ko.gznls_iso8859-15.ko.gznls_iso8859-2.ko.gznls_iso8859-7.ko.gznls_iso8859-9.ko.gzmac-celtic.ko.gz\mac-croatian.ko.gz@Tp@0t1p@ȾP@z`@l@F @̍ H~0nls_cp852.ko.gznls_cp862.ko.gznls_cp949.ko.gznls_cp950.ko.gznls_euc-jp.ko.gznls_iso8859-13.ko.gz,nls_iso8859-3.ko.gzmac-gaelic.ko.gzmac-inuit.ko.gznls_cp1251.ko.gznls_utf8.ko.gzmac-centeuro.ko.gzmac-cyrillic.ko.gzmac-roman.ko.gzmac-turkish.ko.gz@5.apk.0094f9c85a4585dfdbc5001487c967086bbdf9698c4ab4c9t ˼ nls_iso8859-1.ko.gz$nls_iso8859-4.ko.gznls_cp863.ko.gznls_cp866.ko.gznls_cp869.ko.gzxnls_ucs2_utils.ko.gzmac-greek.ko.gznls_ascii.ko.gz }Pfnls_cp775.ko.gznls_cp855.ko.gzPnls_iso8859-5.ko.gznls_cp857.ko.gzhnls_cp932.ko.gznls_cp936.ko.gz ҩ .{L.. ntfs3.ko.gz ިt( .{ ..cluster dlmdlmfs ocfs2_stack_o2cb.ko.gz ocfs2_stack_user.ko.gzocfs2_stackglue.ko.gz ocfs2.ko.gz  .L..ocfs2_nodemanager.ko.gz `kv$ .L..ocfs2_dlm.ko.gz ޷T .L..ocfs2_dlmfs.ko.gz ̭# .{L.. overlay.ko.gz ޣ^ .{L.. ramoops.ko.gz # .{ .. quota_v1.ko.gz quota_v2.ko.gzquota_tree.ko.gz =  .{L..  romfs.ko.gz h;  .{ ..clientcommonserver  . L.. cifs.ko.gz it . L..cifs_md4.ko.gz ?Z . L.. ksmbd.ko.gz #[ .{L..squashfs.ko.gz އx= .{L.. udf.ko.gz gS .{L.. ufs.ko.gz ޝm .{L.. vboxsf.ko.gz Y .{L.. xfs.ko.gz ލ .L.. configs.ko.gz v  . ..! crc&crypto8 ts_bm.ko.gz9 ts_fsm.ko.gz: ts_kmp.ko.gz/ lz42 math4raid66 reed_solomon.lru_cache.ko.gz l! .  ..#crc-itu-t.ko.gz$ crc16.ko.gz% crc8.ko.gz"crc-ccitt.ko.gz S& .  ..( libarc4.ko.gz)libchacha.ko.gz*$libchacha20poly1305.ko.gz+libcurve25519.ko.gz, libdes.ko.gz-<libpoly1305.ko.gz'gf128mul.ko.gz ޸#e/ .  ..1lz4hc_compress.ko.gz0\lz4_compress.ko.gz Q~2 . L..3 cordic.ko.gz |4 . L..5raid6_pq.ko.gz ޜp6 . L..7reed_solomon.ko.gz ޅ6; . ..< 802@8021qB 9pGbridge_ cepha coree ifeg ipv4 ipv6 key l2tp llc mplsmptcp netfilteru nshw openvswitch|packetsched sctpsunrpc tls unix vmw_vsockxfrm Ͽ< .; ..> psnap.ko.gz? stp.ko.gz= mrp.ko.gz @ .;L..A 8021q.ko.gz _B .; ..D9pnet_fd.ko.gzE9pnet_virtio.ko.gzF9pnet_xen.ko.gzC 9pnet.ko.gz [G .; ..I bridge.ko.gzJ netfilterHHbr_netfilter.ko.gz ގ݉:J .G..{x kNebt_arpreply.ko.gzP ebt_ip.ko.gzQ ebt_ip6.ko.gzRebt_limit.ko.gzS ebt_log.ko.gzUebt_mark_m.ko.gzVebt_nflog.ko.gzWebt_pkttype.ko.gz[ebt_vlan.ko.gz]$nft_meta_bridge.ko.gzKebt_802_3.ko.gzLebt_among.ko.gzX@5.apk.f680035224973106825f9bb901973a44c1652b73ae2bbd52t ޼u`QXebt_redirect.ko.gzYebt_snat.ko.gzZ ebt_stp.ko.gz\4nf_conntrack_bridge.ko.gzTebt_mark.ko.gz^(nft_reject_bridge.ko.gzOebt_dnat.ko.gzMt ebt_arp.ko.gz i 1 ip6t_REJECT.ko.gzip6t_SYNPROXY.ko.gzip6t_eui64.ko.gzip6t_frag.ko.gzip6t_hbh.ko.gz ip6t_ipv6header.ko.gz ip6t_rt.ko.gzip6t_srh.ko.gz0nf_dup_ipv6.ko.gzip6t_NPT.ko.gz29c6f36d7825fad506876b60de04cad21354a24@5.apk.a0d569450b50cf38a664ba4a9936475007cfc8c81d156fdft ' ip6t_mh.ko.gz(ip6t_rpfilter.ko.gz ip6t_ah.ko.gznf_defrag_ipv6.ko.gznf_reject_ipv6.ko.gznf_socket_ipv6.ko.gznf_tproxy_ipv6.ko.gznft_dup_ipv6.ko.gznft_fib_ipv6.ko.gznft_reject_ipv6.ko.gz t  .;L.. af_key.ko.gz ޴kν .; ..l2tp_eth.ko.gz l2tp_ip.ko.gzl2tp_ip6.ko.gzl2tp_netlink.ko.gzl2tp_ppp.ko.gz\l2tp_core.ko.gz  .; .. llc2.ko.gz\ llc.ko.gz Sm .; ..mpls_iptunnel.ko.gzmpls_router.ko.gzmpls_gso.ko.gz | .;L..mptcp_diag.ko.gz  .;..{ r K*ī> KS'a Ծ p4,B>z m*P ...{|ɕ tU{ELF>T@0@8 @@@@ppp 77```@z@@`{00HHH$$Std00Ptd?@ABCDGHKLNOPQRSTUVWXZ\^_`bdefghijklmnopqrstuvwxy{|}!@mwn.%~B#ҁcs}݁c{E3vg5k-q`  : zqPX#ب--F; ˏڡ] {a,IcA) c[i.:i̬b@xm XrP[YVDS`*w_tc^3\hTs稙kPkPlّOI2A{T]vǀ[c5<,!Qߠ~eoPL:<{C*uԕIMMK5<X="bv%BL <# D4x0C *Q76zH 4Wd  )2t .l / " 9OT JF !S^" .&Z !9r L .* w1e )d, $ )f 0HM t&1 dM^ m6 /$wS /} x= * bE3 y#- . z< o>* E $.K  0R *1M 27G }: V"* L;g +:R 1M !b J W (U 568;" T  B*4 H#1 Ak Z7  Q 8? &F} .$ TF^ / f80 M ; 2[ ; ]p {. O&% #E: . `R Q o.  RE p)F_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_info__errno_locationsched_yieldcap_set_syscallcap_get_boundcap_max_bitsstrlencallocstrcpycap_iab_initcap_iab_dupcap_new_launchercap_func_launchercap_freecap_initcapgetcap_dupcapsetpsx_load_syscallscap_get_proccap_set_flagcap_clear_flag__stack_chk_failsetgidcap_set_proccapgetpcap_get_pidcapsetpcap_drop_boundcap_get_ambientcap_set_ambientcap_reset_ambientcap_get_secbitscap_set_secbitscap_prctlcap_prctlwcap_set_modecap_get_modecap_comparecap_setuidcap_setgroupscap_iab_get_proccap_iab_fillcap_iab_set_proccap_launcher_callbackcap_launcher_setuidcap_launcher_setgroupscap_launcher_set_modecap_launcher_set_iabcap_launcher_set_chrootcap_launchpipe2forkexecvechdirwriteexitwaitpidcap_sizecap_copy_extcap_copy_intmemcmpcap_copy_int_checkcap_get_flagcap_clearcap_fill_flagcap_fillcap_iab_get_vectorcap_iab_set_vectorcap_iab_comparetolowerisalnumstrtoulcap_from_textcap_from_namecap_to_nameasprintfcap_to_textsnprintfcap_mode_namecap_iab_to_textcap_iab_from_textcap_proc_rootcap_iab_get_pidfopenstrncmpfgetsfclosecap_get_fdfgetxattrcap_get_filecap_get_nsownercap_set_fdfstatfremovexattrfsetxattrcap_set_filecap_set_nsownerreallocperrorfreadputcharstrcmpputs__execable_dl_loaderlibc.musl-x86_64.so.1libcap.so.2pxKD=ȍ Ѝ ؍   N \(08M@yH]PHX`Zhpxd;vh@ȎЎ؎bux E!e_ "(#0$8%@&H'P(X)`*h+p,x-T./P[0123ȏ4Џ5؏67@=PXH=pHtPuo1HlpYAWAVAUATUSR0oD0IİFptho0puN11A@A&nB;AʼnmyD}]D9~܅t@~)o1oE4$X[]A\A]A^A_fDH=YoHRoH9tH>nHt H=)oH5"oH)HH?HHHtHmmHtfD=nuGUH=lHt H=nlgH=mt H=Fmn]@ff.H=(nt&UH5nH=_FHn]8+nUSQHtHmH=?vum1JHX hH9HBH5lHuBm ˉXHXHЕH1kHZ[]þhQkHtHhHHPZATUSHt HtllHHu1FtlH9s HEH9 H9s HCH9s 1EC E EH[]A\ATIUHhSH8kHtHhL`PHHHHhPHXX[]A\ShHjHtHhHXHHP[HHUSHAPurG=t,w@=Аt==Еt\LtRkHG8Hu1H{@Hs8tH8tܸ-1HK@gkK1H{H{k1Z[]1UhSQjHu#k HH1HАhHH{ HkC " iC =& t=" t=0t Hj1HZ[]ATUSHt HАtjhHHu1BtjH9s HE(H9 H9s HC(H9s HH޹ ȆMH[]A\1%h1%h=jHHHt%SH1ɿHÅy#jۉE1E1111%bh[Ã=jSHHLT$HHLMt3IHHHWARPAXAYHÅyiۉ M1[%h[ATUSHtHH~Аtpi=ti=iHS H{tH1ɿ~U Hji1҆[]A\HuH5iH~%hH=iH5iS gHtHHp Hxgt Hh1H[AVAUATIUSHdL,%(Ll$AD$xgHHL$AH1HgI<$#HLÅu@=ht,D11ҿiA$IʼnÅy%hAݻD( DghhI<$1ҾD0I1HfHLMHgEuHD$dH+%(tpfH[]A\A]A^AWAAVAUIATIUSHdL4%(Lt$ID$NfHH1HL$AHfHL=gtGu)D11ҿjA$Åu1LLtA$Åy7fH‰ػ؉!uD-fÅuLLsef1HD0IeHLHfEuHD$dH+%(tdbADžtLADž#cHcAMAHmAAADC#D u<$u?LT$E1E1HD\$/LPj,ZYD\$LT$At"G#\tI>HADžmHDbLbHbHD[]A\A]A^A_AUAATIUSAPaH@H1HAH caHL At@wAEHa!AI<$1Ҿ1axL Åt /I<$A͉ufE1Dq`xI<$IcվA~ݾH`&LE1QE11ɺj^_a1HD`LHH ~aZ[]A\A]AQttEtAu uA_I1^IMtHtLH1^L`L`xu$t uÉ^^uZ[]A\A]A^A_ÉH=O`HHH=;`AVAUATUS_HtHJ^HHu H_1iH¾H^H^_^Ņt>AAAA]uIcD l^uMcF l H[]A\A]A^ATUSHt Ht^%@@+@t^HH=K_@+[]A\ATUSHtHHtp^t^Hk1[]A\ATUSHtHt)^t^^kC1[]A\AVAUATUSHtHAAH́t]'t^DkDc Hk(C1[]A\A]A^ATUSHtHtw]t]k4C01[]A\AUATUSQHtHHt&]E1=t]]Lc8Hk8MtA$Hu1Et0]ZL[]A\A]AUATUSQHtHIt\%@@+@t\LgHC@@+1Z[]A\A]AWAVAUATUSH(dH%(HD$1HtHI@t=\5tw\H{u)H{HtH{Pu \1AH|$[Ņuq[AA[IċD$E|$\E111H53,1ZHCDt$HuH{Hu1LЅtf{u{t9sH=[t@HK(HcS H=[s!{0ts4H=[ZHs8HtH=[VL{@MtyD$ YIHHL$ A1HǺYLH=E[ŅtCE<$1LcYLH=![LZE<$ueHSXHsPH{HXQ=Zt%11LZŅyؽA$L(XŅuH=*%YlA$D$Ht$DXyA<$ tD?ZY@+|$'ZEx?|$Ht$Xt'yA<$ tHt$1DAWD$ |$YD$A$HD$dH+%(t XH(D[]A\A]A^A_øHt-U@SHQАutfYZ[]øAVAUATUSHtH~Аu HIHuX*ADeEtYIXDeHHJ.H9s HSH9rH9sH4.H9s Q1CT шTtL TTшTtLTHHu1E[]A\A]A^ATUSHtHH5-WtWUHHDCHE1I1AMcD9tmHc֍FHRHBT A9tZHNH@HBD DA9t;HcɍFH IHBL  A9tHH@HBD FD1AS I At AoAHAP1[H]A\APH~G@HH9~V1ZY%VAVAUATUSHtdHHt\АuSA?wKI̓wA@@;@tVDDHH@H#T AE@;1cV[]A\A]A^AWAVAUATUSAQHHАu}BAԃ>wrAwjHEAw^tQV1DL?w0AAHDH@HT !D AEщT HA911UZ[]A\A]A^A_USQHt2H@Аu#tU1H{ 1TUZ[]ATUSw1HHt)Аu tkU1҉T T1U[]A\ATUSHtHАuHt ~АtTHITIHuEtTM1A9L$ËM 1ҋuA9L$ AL$A|$ 19MAL$ 1A9t$ 19}  19M ӆELST[]A\AVAUATUSHt*HАuHtzАuw AAvS@HaSIHtt TCT T CTTLS1[]A\A]A^ÉH%6RHAVAUATUSHt1cAASD9~EDAtSAtAt1AuB#l B#l B#l1҆[]A\A]A^1AWAVAUATUSHHuRIuȉuۉA[R9~̉AAAADӲA$tRAt%At8AuFC#\AE C!\ C\LC#\ AE C \C\ 3C#\AE C\T$$RT$A$1A$1H[]A\A]A^A_AWAVAUATUSAPHt!zАuHHtu̓vQAAH3QIHttQM4AtAt#Au)AF !D AF DE1AF ЉDAQAEHI uL8QZD[]A\A]A^A_ATUSHtHuHt ~tPHOHHuActP1E1t 19t ‹|1ɋt9| 19tH A Hu1H|PD[]A\ÍAH@HЉHHtrH H!pÉHc҉AHk #L7 D#D7tHk #DtATUHSHDe;EtRND9uHHO@_tt1H[]A\AUATUSHdH,%(Hl$HH?H<$0 w"1HMH?vMH$HUCN)L$$L-$J)F؅tύCItHHtL3HtHEHT$dH+%(tMH[]A\A]UHSRN1¸Hȅt%K9s 9BAȉBtX[]AVAUIATAUSHHNHHŃ{H߉HcA|AI|1A9~U117/~79Df$`~DDBAwDHHu1D1H!H릸1[]A\A]A^AVAUATUSH H|$dH%(HD$1Ht9HKHHu1z@=& t%=" t=0tHMMAA1HD$1;HٍGA Hu@tHL$EMu A_H\$H5H-HtHDH|$H\$ (H|$LF¾Hc tHD$8,uGxHPHT$L_t{A+ADH|$E1AHD$DHXH\$A=u+PJՀu,EHX+APMH\$DE AAըDE1Et$L\t5Ѓ v*HH\$ Consider upgrading libcap to name: %d=> Newer kernels also provide support for: %sQ;ZԺ0<PxDǽ =0jXD(8<iX44z`: |x3?P c k4PdT < h ; a4 l 1 8 *d Z  0 A\  > <` 3  U (N`H&Y(TgG(HGd\(X$C4zRx DBBB B(A0A8A@8A0A(B BBBdU$xHzAAA tAA*Fc(BAA {AB(EBII mAB1Ao(,1MAE AAA$XwAKA gAA( BAA wAB]Q EKSdRA(lbHfG EB^ F A($mBAA eABP%d1Ao@ "BBB D(A0I@0C(A BBBH6BEB E(D0A8IP 8C0A(B BBBѽ4$̽dBBA A(B0U(A ABB(\FBAC |AB4fBBA A(A0X(A ABB@>>4Ar@V[BBD A(D0h8M@P8A0A(A ABBTHmBHE B(D0A8DPbXB`FXAPT8D0A(B BBBDlBED A(G08L@F8A0u(C ABB  KBhO NBA G  ?4<H;\/&DB _x9D3BBB B(A0A8A@8A0A(B BBB8BBB A(A0(A BBB(8($ QFBAD {AB4P kBBA A(D@(A ABB$ NADC CAA8 BBE D(A0(A BBB@ |BBB A(A0DP0D(A BBB0 3AG dD(P )AG t AF IDH| }BBB B(A0A8G a8A0A(B BBB FH BBB B(A0A8G ~8A0A(B BBB,( ?BAA D0 DABX MPp A]< BBA A(G(D ABB >B8 OBBB A(A0?(A BBB, BAA D@s DAB,P,BAA D@s DAB$EAAA AA0BAA I AAB8)^BBI A(J=(C ABB(KFBAA ~ABDe \YAQ Q!/  @!````````` aa2aDaRa^akayaaaaaaaaaabb%b/b?bQb]bnb|bbbbbbbr W@Po  ph o$# %-%%%-%%%GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1pp9oxC  KSpph] g m  7sWWy``<}&@A@8 @@@@lll  000:JJ;KK  00HHH$$Std00Ptd666LLQtdRtd:JJ GNUGNUs>r.1SPӡ&/lib/ld-musl-x86_64.so.1@H@ABC93ET""m}= ( Y.VM[)B  _>kf^ 9t Kz /d P__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainrc_service_exists__errno_locationeerrorrc_service_in_runlevelrc_service_addstrerrorrc_service_deleterc_runlevel_existsstrcmprc_runlevel_stackrc_runlevel_unstackrc_deptree_update_neededrc_dirfdopenatebeginrc_deptree_updateeendfstatatrc_svcdirunlinkatctimeeerrornutimensatfdopenfprintffcloserc_deptree_load__stack_chk_failstrdupstderrfputsstrsepexitstrrchrgetopt_longrc_set_userrc_deptree_freerc_sysputcharsetenvgetenvrc_yesnooptindrc_stringlist_newrc_stringlist_freeeerrorxrc_stringlist_addrc_runlevel_listrc_stringlist_sortrc_services_in_runlevelstrlenmallocrc_runlevel_getewarnxlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfoNNN N(N0N8N@NHN PN XN `N hN pNxNNNNNNNNNNNNNNNNNO O!O"O# O$(O%0O&8O'@O(HO)PO*XO+`O,hO-pO.xO/O0O1O2O3O4O5O7O8O9O:O;O<O=O>O?KA PCN6JGDDDDPPX5-%-@%-hAWAVAUATAUSH8HdH,%(Hl$(H/HM.HtHXH%0E1E1HE1H )HDHA-svKgVtx+CtUU1-믃hHcHa"H|$ L Ht H-l$ AH5H=1AEH5V/H=1,a.HtHH=1,H5H=1, ,1H5H=a-..tH5H=ĺH5tH=믿 wAoAgH=I,H,D$Hc-$D9LlH5L -tWH5*L,tJH5L,t6H5 L,t"H5-LH=$S-,HD$;-D9|H5-H=AHc-LlW+Hc,H5l-H=HT1 ,H|u,H|$tHc,PHt,)+Hc,D9|ʼn݃|MtH|$L*H|$H?u*+HD$H|$+1Lt$S+H|$ HD$ +HD$ HH+H$Hxo*H4$HIu{H=H5'+l+HuH;*HuADŽtLK*HmEHuӀ|$uQEuLL2*H[Ht~K+E1I.IHH A7LL)LEA+H3H=81e)I,$HtHuH=1I)Hm  )pH|$ )MuH5+H=1+)1'H|$t6Etg)H5X+H=1*L%oEtL%L%7EtL%KH?u8Eth*)HD$ (H|$IH(L;*H|$E1L7Mu9%*H5*H=HiHLAԉ‰D$ A MvMt&I>)IuH5*H=9 &(A u"H5_*LH=1)H|$J(HD$(dH+%(t<(H8[]A\A]A^A_H1HH5>%H7HWLjE1H VH=jf.H=A)H:)H9tHf(Ht H=)H5 )H)HH?HHHtH'HtfD= )uGUH='Ht H=( 'gH='t H=p'(]@ff.H=H(t&UH5(H=H.(]8+UHHSHQA&u5'H5(HH=8tH=%1B&HH 't H5q(HH1H= &1^HH%tHHH=1&2'8%H5(HHIH=1%hZ[]ATUHSH&1HHI%tHHH=1&QA<$uH5'HH1H=>%%%H5'HHIH=1%[]A\UHSHQv&HtHf&u!HH50'H=$?HH%uH5'HH=H5H%H5H%txH5H%tdH5Hv%tPH5Hb%t[arg]Usage: rc-update [options] add [...] or: rc-update [options] del [...] or: rc-update [options] [show [...]] Options: [ %s ] %3s --%s %sout of memory %*sNOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEINFO_QUIETEERROR_QUIETdeletedelshow%s: invalid command `%s'%s: no service specified%s: `%s' is not a valid runlevel %20s |%s: the -a option is invalid with add%s: no runlevels found%s: service `%s' not found in any of the specified runlevelsProcess all runlevelsStack a runlevel instead of a serviceForce an update of the dependency treeDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modeallstackupdatehelpnocolorverbosequietuserbbbbbbbbbqb\asuChqVvU;H,dLW f4zRx $ FJ w?;*3$"$DMAGD AA(lBAD AB(oADD {AA$ADD |AAL*QBBB B(A0A8G L")8A0A(B BBB0<+oBPB I(A0H8DpHpMBBB B(D0A8Dp/8C0A(B BBB'0'u5555566-6U6f6aj6sp6uw6h|6C6V6v6q6U $ /JJo  _ M  o$#%:K& Prc-update.debug X.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o8C `K _S ]Bgq b  w0 0 } / /0066L0707J:J: J : K; M=P@ P@ @@ip_vs_sed.ko.gzip_vs_sh.ko.gzip_vs_wlc.ko.gz8ip_vs_wrr.ko.gz@ip_vs_ovf.ko.gzip_vs_lblcr.ko.gzip_vs_ftp.ko.gz hnft_dup_netdev.ko.gz( nft_reject_netdev.ko.gz*nft_synproxy.ko.gz1xt_CLASSIFY.ko.gz;xt_NFLOG.ko.gz=xt_RATEEST.ko.gzFxt_cgroup.ko.gzPxt_devgroup.ko.gzV xt_hl.ko.gzXxt_iprange.ko.gz[xt_length.ko.gzb xt_osf.ko.gzs xt_time.ko.gznf_flow_table.ko.gz0 nfnetlink.ko.gzcHxt_comment.ko.gz.69adcc6bc02048c20b4f36c6c1b80e065a70e6ce1f922040\@5.apk.4d054656ed870aa178c5be71071cac2965fa86aaef0551d1t 7wnf_nat_amanda.ko.gz nft_ct.ko.gz nft_flow_offload.ko.gz2xt_CONNSECMARK.ko.gzIxt_connbytes.ko.gz_xt_multiport.ko.gzhPxt_rateest.ko.gz jH?xt_SECMARK.ko.gzGxt_cluster.ko.gzWxt_ipcomp.ko.gzfxt_policy.ko.gzoxt_statistic.ko.gznf_conncount.ko.gznf_conntrack_broadcast.ko.gzh ޑz9 ./L..:hyperv_drm.ko.gz ; ./L..< qxl.ko.gz 4d= ./ ..?simpledrm.ko.gz>\drm_sysfb_helper.ko.gz ުƌ@ ./ ..Bcirrus-qemu.ko.gzA\ bochs.ko.gz /ܦH% . ..& ioat(qcom bm ... f6 ... 1&& .%L..' ioatdma.ko.gz bgroot:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon sys:x:3:root,bin adm:x:4:root,daemon tty:x:5: disk:x:6:root lp:x:7:lp kmem:x:9: wheel:x:10:root floppy:x:11:root mail:x:12:mail news:x:13:news uucp:x:14:uucp cron:x:16:cron audio:x:18: cdrom:x:19: dialout:x:20:root ftp:x:21: sshd:x:22: input:x:23: tape:x:26:root video:x:27:root netdev:x:28: kvm:x:34:kvm games:x:35: shadow:x:42: www-data:x:82: users:x:100:games ntp:x:123: abuild:x:300: utmp:x:406: ping:x:999: nogroup:x:65533: nobody:x:65534: klogd:x:101:klogd chrony:x:102:chrony dhcpcd:x:103: root:x:0:0:root:/root:/bin/sh bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin sync:x:5:0:sync:/sbin:/bin/sync shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown halt:x:7:0:halt:/sbin:/sbin/halt mail:x:8:12:mail:/var/mail:/sbin/nologin news:x:9:13:news:/usr/lib/news:/sbin/nologin uucp:x:10:14:uucp:/var/spool/uucppublic:/sbin/nologin cron:x:16:16:cron:/var/spool/cron:/sbin/nologin ftp:x:21:21::/var/lib/ftp:/sbin/nologin sshd:x:22:22:sshd:/dev/null:/sbin/nologin games:x:35:35:games:/usr/games:/sbin/nologin ntp:x:123:123:NTP:/var/empty:/sbin/nologin guest:x:405:100:guest:/dev/null:/sbin/nologin nobody:x:65534:65534:nobody:/:/sbin/nologin klogd:x:100:101:klogd:/dev/null:/sbin/nologin chrony:x:101:102:chrony:/dev/null:/sbin/nologin dhcpcd:x:102:103:dhcpcd:/var/lib/dhcpcd:/sbin/nologin root:::0::::: bin:!::0::::: daemon:!::0::::: lp:!::0::::: sync:!::0::::: shutdown:!::0::::: halt:!::0::::: mail:!::0::::: news:!::0::::: uucp:!::0::::: cron:!::0::::: ftp:!::0::::: sshd:!::0::::: games:!::0::::: ntp:!::0::::: guest:!::0::::: nobody:!::0::::: klogd:!:20620:0:99999:7::: chrony:!:20620:0:99999:7::: dhcpcd:!:20620:0:99999:7::: root:x:0:root bin:x:1:root,bin,daemon daemon:x:2:root,bin,daemon sys:x:3:root,bin adm:x:4:root,daemon tty:x:5: disk:x:6:root lp:x:7:lp kmem:x:9: wheel:x:10:root floppy:x:11:root mail:x:12:mail news:x:13:news uucp:x:14:uucp cron:x:16:cron audio:x:18: cdrom:x:19: dialout:x:20:root ftp:x:21: sshd:x:22: input:x:23: tape:x:26:root video:x:27:root netdev:x:28: kvm:x:34:kvm games:x:35: shadow:x:42: www-data:x:82: users:x:100:games ntp:x:123: abuild:x:300: utmp:x:406: ping:x:999: nogroup:x:65533: nobody:x:65534: klogd:x:101:klogd chrony:x:102:chrony dhcpcd:x:103:dhcpcd https://dl-cdn.alpinelinux.org/alpine/v3.24/main https://dl-cdn.alpinelinux.org/alpine/v3.24/community #https://dl-cdn.alpinelinux.org/alpine/v3.24/testing -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1yHJxQgsHQREclQu4Ohe qxTxd1tHcNnvnQTu/UrTky8wWvgXT+jpveroeWWnzmsYlDI93eLI2ORakxb3gA2O Q0Ry4ws8vhaxLQGC74uQR5+/yYrLuTKydFzuPaS1dK19qJPXB8GMdmFOijnXX4SA jixuHLe1WW7kZVtjL7nufvpXkWBGjsfrvskdNA/5MfxAeBbqPgaq0QMEfxMAn6/R L5kNepi/Vr4S39Xvf2DzWkTLEK8pcnjNkt9/aafhWqFVW7m3HCAII6h/qlQNQKSo GuH34Q8GsFG30izUENV9avY7hSLq7nggsvknlNBZtFUcmGoQrtx3FmyYsIC8/R+B ywIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwlzMkl7b5PBdfMzGdCT0 cGloRr5xGgVmsdq5EtJvFkFAiN8Ac9MCFy/vAFmS8/7ZaGOXoCDWbYVLTLOO2qtX yHRl+7fJVh2N6qrDDFPmdgCi8NaE+3rITWXGrrQ1spJ0B6HIzTDNEjRKnD4xyg4j g01FMcJTU6E+V2JBY45CKN9dWr1JDM/nei/Pf0byBJlMp/mSSfjodykmz4Oe13xB Ca1WTwgFykKYthoLGYrmo+LKIGpMoeEbY1kuUe04UiDe47l6Oggwnl+8XD1MeRWY sWgj8sF4dTcSfCMavK4zHRFFQbGp/YFJ/Ww6U9lA3Vq0wyEI6MCMQnoSMFwrbgZw wwIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAutQkua2CAig4VFSJ7v54 ALyu/J1WB3oni7qwCZD3veURw7HxpNAj9hR+S5N/pNeZgubQvJWyaPuQDm7PTs1+ tFGiYNfAsiibX6Rv0wci3M+z2XEVAeR9Vzg6v4qoofDyoTbovn2LztaNEjTkB+oK tlvpNhg1zhou0jDVYFniEXvzjckxswHVb8cT0OMTKHALyLPrPOJzVtM9C1ew2Nnc 3848xLiApMu3NBk0JqfcS3Bo5Y2b1FRVBvdt+2gFoKZix1MnZdAEZ8xQzL/a0YS5 Hd0wj5+EEKHfOd3A75uPa/WQmA+o0cBFfrzm69QDcSJSwGpzWrD1ScH3AK8nWvoj v7e9gukK/9yl1b4fQQ00vttwJPSgm9EnfPHLAtgXkRloI27H6/PuLoNvSAMQwuCD hQRlyGLPBETKkHeodfLoULjhDi1K2gKJTMhtbnUcAA7nEphkMhPWkBpgFdrH+5z4 Lxy+3ek0cqcI7K68EtrffU8jtUj9LFTUC8dERaIBs7NgQ/LfDbDfGh9g6qVj1hZl k9aaIPTm/xsi8v3u+0qaq7KzIBc9s59JOoA8TlpOaYdVgSQhHHLBaahOuAigH+VI isbC9vmqsThF2QdDtQt37keuqoda2E6sL7PUvIyVXDRfwX7uMDjlzTxHTymvq2Ck htBqojBnThmjJQFgZXocHG8CAwEAAQ== -----END PUBLIC KEY----- Running `apk --root /mnt --initdb --no-cache add alpine-base linux-virt chrony e2fsprogs openssh tzdata doas dhcpcd mount nvme-cli tiny-cloud` at 2026-06-16 21:20:58 apk-tools 3.0.6-r0, compiled for x86_64. ( 1/76) Installing alpine-baselayout-data (3.7.2-r1) ( 2/76) Installing musl (1.2.6-r2) ( 3/76) Installing busybox (1.37.0-r31) Executing busybox-1.37.0-r31.post-install ( 4/76) Installing busybox-binsh (1.37.0-r31) ( 5/76) Installing alpine-baselayout (3.7.2-r1) Executing alpine-baselayout-3.7.2-r1.pre-install Executing alpine-baselayout-3.7.2-r1.post-install ( 6/76) Installing bridge (1.5-r5) ( 7/76) Installing ifupdown-ng (0.13.0-r0) ( 8/76) Installing openrc-user (0.63.2-r0) ( 9/76) Installing libcap2 (2.78-r0) (10/76) Installing openrc (0.63.2-r0) Executing openrc-0.63.2-r0.post-install (11/76) Installing mdev-conf (4.10-r0) (12/76) Installing busybox-mdev-openrc (1.37.0-r31) (13/76) Installing alpine-conf (3.22.0-r0) (14/76) Installing alpine-keys (2.6-r0) (15/76) Installing alpine-release (3.24.1-r0) (16/76) Installing libcrypto3 (3.5.7-r0) (17/76) Installing libssl3 (3.5.7-r0) (18/76) Installing ssl_client (1.37.0-r31) (19/76) Installing zlib (1.3.2-r0) (20/76) Installing libapk (3.0.6-r0) (21/76) Installing ca-certificates-bundle (20260611-r0) (22/76) Installing apk-tools (3.0.6-r0) (23/76) Installing busybox-openrc (1.37.0-r31) (24/76) Installing busybox-suid (1.37.0-r31) (25/76) Installing scanelf (1.3.9-r1) (26/76) Installing musl-utils (1.2.6-r2) (27/76) Installing alpine-base (3.24.1-r0) (28/76) Installing chrony-common (4.8-r7) Executing chrony-common-4.8-r7.pre-install (29/76) Installing libseccomp (2.6.0-r2) (30/76) Installing chrony (4.8-r7) (31/76) Installing chrony-openrc (4.8-r7) (32/76) Installing dhcpcd (10.3.2-r0) Executing dhcpcd-10.3.2-r0.pre-install (33/76) Installing dhcpcd-openrc (10.3.2-r0) (34/76) Installing doas (6.8.2-r8) (35/76) Installing libeconf (0.8.3-r0) (36/76) Installing libblkid (2.42-r0) (37/76) Installing libcom_err (1.47.4-r0) (38/76) Installing e2fsprogs-libs (1.47.4-r0) (39/76) Installing libuuid (2.42-r0) (40/76) Installing e2fsprogs (1.47.4-r0) (41/76) Installing xz-libs (5.8.3-r0) (42/76) Installing zstd-libs (1.5.7-r2) (43/76) Installing kmod (34.2-r1) (44/76) Installing lddtree (1.27-r0) (45/76) Installing device-mapper-libs (2.03.35-r2) (46/76) Installing json-c (0.18-r1) (47/76) Installing cryptsetup-libs (2.8.6-r0) (48/76) Installing kmod-libs (34.2-r1) (49/76) Installing mkinitfs (3.14.0-r0) Executing mkinitfs-3.14.0-r0.post-install (50/76) Installing linux-virt (6.18.35-r0) (51/76) Installing libmount (2.42-r0) (52/76) Installing mount (2.42-r0) (53/76) Installing libnvmemi (1.16.1-r1) (54/76) Installing libnvme (1.16.1-r1) (55/76) Installing nvme-cli (2.16-r1) (56/76) Installing openssh-keygen (10.3_p1-r0) (57/76) Installing ncurses-terminfo-base (6.6_p20260516-r0) (58/76) Installing libncursesw (6.6_p20260516-r0) (59/76) Installing libedit (20260508.3.1-r1) (60/76) Installing openssh-client-common (10.3_p1-r0) (61/76) Installing openssh-clie/dev/cdrom /media/cdrom iso9660 noauto,ro 0 0 /dev/usbdisk /media/usb vfat noauto,ro 0 0 localhost 127.0.0.1 localhost localhost.localdomain ::1 localhost localhost.localdomain # /etc/inittab ::sysinit:/sbin/openrc sysinit ::sysinit:/sbin/openrc boot ::wait:/sbin/openrc default # Set up a couple of getty's tty1::respawn:/sbin/getty 38400 tty1 tty2::respawn:/sbin/getty 38400 tty2 tty3::respawn:/sbin/getty 38400 tty3 tty4::respawn:/sbin/getty 38400 tty4 tty5::respawn:/sbin/getty 38400 tty5 tty6::respawn:/sbin/getty 38400 tty6 # Put a getty on the serial port #ttyS0::respawn:/sbin/getty -L 115200 ttyS0 vt100 # Stuff to do for the 3-finger salute ::ctrlaltdel:/sbin/reboot # Stuff to do before rebooting ::shutdown:/sbin/openrc shutdown af_packet ipv6 # musl itself does not support NSS, however some third-party DNS # implementations use the nsswitch.conf file to determine what # policy to follow. # Editing this file is not recommended. hosts: files dns export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" export PAGER=less umask 022 # use nicer PS1 for bash and busybox ash if [ -n "$BASH_VERSION" -o "$BB_ASH_VERSION" ]; then PS1='\h:\w\$ ' # use nicer PS1 for zsh elif [ -n "$ZSH_VERSION" ]; then PS1='%m:%~%# ' # set up fallback default PS1 else : "${HOSTNAME:=$(hostname)}" PS1='${HOSTNAME%%.*}:$PWD' [ "$(id -u)" -eq 0 ] && PS1="${PS1}# " || PS1="${PS1}\$ " fi for script in /etc/profile.d/*.sh ; do if [ -r "$script" ] ; then . "$script" fi done unset script # Internet (IP) protocols # # Updated from http://www.iana.org/assignments/protocol-numbers and other # sources. # New protocols will be added on request if they have been officially # assigned by IANA and are not historical. # If you need a huge list of used numbers please install the nmap package. ip 0 IP # internet protocol, pseudo protocol number hopopt 0 HOPOPT # IPv6 Hop-by-Hop Option [RFC1883] icmp 1 ICMP # internet control message protocol igmp 2 IGMP # Internet Group Management ggp 3 GGP # gateway-gateway protocol ipencap 4 IP-ENCAP # IP encapsulated in IP (officially ``IP'') st 5 ST # ST datagram mode tcp 6 TCP # transmission control protocol egp 8 EGP # exterior gateway protocol igp 9 IGP # any private interior gateway (Cisco) pup 12 PUP # PARC universal packet protocol udp 17 UDP # user datagram protocol hmp 20 HMP # host monitoring protocol xns-idp 22 XNS-IDP # Xerox NS IDP rdp 27 RDP # "reliable datagram" protocol iso-tp4 29 ISO-TP4 # ISO Transport Protocol class 4 [RFC905] dccp 33 DCCP # Datagram Congestion Control Prot. [RFC4340] xtp 36 XTP # Xpress Transfer Protocol ddp 37 DDP # Datagram Delivery Protocol idpr-cmtp 38 IDPR-CMTP # IDPR Control Message Transport ipv6 41 IPv6 # Internet Protocol, version 6 ipv6-route 43 IPv6-Route # Routing Header for IPv6 ipv6-frag 44 IPv6-Frag # Fragment Header for IPv6 idrp 45 IDRP # Inter-Domain Routing Protocol rsvp 46 RSVP # Reservation Protocol gre 47 GRE # General Routing Encapsulation esp 50 IPSEC-ESP # Encap Security Payload [RFC2406] ah 51 IPSEC-AH # Authentication Header [RFC2402] skip 57 SKIP # SKIP ipv6-icmp 58 IPv6-ICMP # ICMP for IPv6 ipv6-nonxt 59 IPv6-NoNxt # No Next Header for IPv6 ipv6-opts 60 IPv6-Opts # Destination Options for IPv6 rspf 73 RSPF CPHB # Radio Shortest Path First (officially CPHB) vmtp 81 VMTP # Versatile Message Transport eigrp 88 EIGRP # Enhanced Interior Routing Protocol (Cisco) ospf 89 OSPFIGP # Open Shortest Path First IGP ax.25 93 AX.25 # AX.25 frames ipip 94 IPIP # IP-within-IP Encapsulation Protocol etherip 97 ETHERIP # Ethernet-within-IP Encapsulation [RFC3378] encap 98 ENCAP # Yet Another IP encapsulation [RFC1241] # 99 # any private encryption scheme pim 103 PIM # Protocol Independent Multicast ipcomp 108 IPCOMP # IP Payload Compression Protocol vrrp 112 VRRP # Virtual Router Redundancy Protocol [RFC5798] l2tp 115 L2TP # Layer Two Tunneling Protocol [RFC2661] isis 124 ISIS # IS-IS over IPv4 sctp 132 SCTP # Stream Control Transmission Protocol fc 133 FC # Fibre Channel mobility-header 135 Mobility-Header # Mobility Support for IPv6 [RFC3775] udplite 136 UDPLite # UDP-Lite [RFC3828] mpls-in-ip 137 MPLS-in-IP # MPLS-in-IP [RFC4023] manet 138 # MANET Protocols [RFC5498] hip 139 HIP # Host Identity Protocol shim6 140 Shim6 # Shim6 Protocol [RFC5533] wesp 141 WESP # Wrapped Encapsulating Security Payload rohc 142 ROHC # Robust Header Compression ethernet 143 Ethernet # Ethernet encapsulation for SRv6 [RFC8986] # The following entries have not been assigned by IANA but are used # internally by the Linux kernel. mptcp 262 MPTCP # Multipath TCP connection # Network services, Internet style # # Updated from https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml . # # New ports will be added on request if they have been officially assigned # by IANA and used in the real-world or are needed by a debian package. # If you need a huge list of used numbers please install the nmap package. tcpmux 1/tcp # TCP port service multiplexer echo 7/tcp echo 7/udp discard 9/tcp sink null discard 9/udp sink null systat 11/tcp users daytime 13/tcp daytime 13/udp netstat 15/tcp qotd 17/tcp quote chargen 19/tcp ttytst source chargen 19/udp ttytst source ftp-data 20/tcp ftp 21/tcp fsp 21/udp fspd ssh 22/tcp # SSH Remote Login Protocol telnet 23/tcp smtp 25/tcp mail time 37/tcp timserver time 37/udp timserver whois 43/tcp nicname tacacs 49/tcp # Login Host Protocol (TACACS) tacacs 49/udp domain 53/tcp # Domain Name Server domain 53/udp bootps 67/udp bootpc 68/udp tftp 69/udp gopher 70/tcp # Internet Gopher finger 79/tcp http 80/tcp www # WorldWideWeb HTTP kerberos 88/tcp kerberos5 krb5 kerberos-sec # Kerberos v5 kerberos 88/udp kerberos5 krb5 kerberos-sec # Kerberos v5 iso-tsap 102/tcp tsap # part of ISODE acr-nema 104/tcp dicom # Digital Imag. & Comm. 300 pop3 110/tcp pop-3 # POP version 3 sunrpc 111/tcp portmapper # RPC 4.0 portmapper sunrpc 111/udp portmapper auth 113/tcp authentication tap ident nntp 119/tcp readnews untp # USENET News Transfer Protocol ntp 123/udp # Network Time Protocol epmap 135/tcp loc-srv # DCE endpoint resolution netbios-ns 137/udp # NETBIOS Name Service netbios-dgm 138/udp # NETBIOS Datagram Service netbios-ssn 139/tcp # NETBIOS session service imap2 143/tcp imap # Interim Mail Access P 2 and 4 snmp 161/tcp # Simple Net Mgmt Protocol snmp 161/udp snmp-trap 162/tcp snmptrap # Traps for SNMP snmp-trap 162/udp snmptrap cmip-man 163/tcp # ISO mgmt over IP (CMOT) cmip-man 163/udp cmip-agent 164/tcp cmip-agent 164/udp mailq 174/tcp # Mailer transport queue for Zmailer xdmcp 177/udp # X Display Manager Control Protocol bgp 179/tcp # Border Gateway Protocol smux 199/tcp # SNMP Unix Multiplexer qmtp 209/tcp # Quick Mail Transfer Protocol z3950 210/tcp wais # NISO Z39.50 database ipx 213/udp # IPX [RFC1234] ptp-event 319/udp ptp-general 320/udp pawserv 345/tcp # Perf Analysis Workbench zserv 346/tcp # Zebra server rpc2portmap 369/tcp rpc2portmap 369/udp # Coda portmapper codaauth2 370/tcp codaauth2 370/udp # Coda authentication server clearcase 371/udp Clearcase ldap 389/tcp # Lightweight Directory Access Protocol ldap 389/udp svrloc 427/tcp # Server Location svrloc 427/udp https 443/tcp # http protocol over TLS/SSL https 443/udp # HTTP/3 snpp 444/tcp # Simple Network Paging Protocol microsoft-ds 445/tcp # Microsoft Naked CIFS kpasswd 464/tcp kpasswd 464/udp submissions 465/tcp ssmtp smtps urd # Submission over TLS [RFC8314] saft 487/tcp # Simple Asynchronous File Transfer isakmp 500/udp # IPSEC key management rtsp 554/tcp # Real Time Stream Control Protocol rtsp 554/udp nqs 607/tcp # Network Queuing system asf-rmcp 623/udp # ASF Remote Management and Control Protocol qmqp 628/tcp ipp 631/tcp # Internet Printing Protocol ldp 646/tcp # Label Distribution Protocol ldp 646/udp # # UNIX specific services # exec 512/tcp biff 512/udp comsat login 513/tcp who 513/udp whod shell 514/tcp cmd syslog # no passwords used syslog 514/udp printer 515/tcp spooler # line printer spooler talk 517/udp ntalk 518/udp route 520/udp router routed # RIP gdomap 538/tcp # GNUstep distributed objects gdomap 538/udp uucp 540/tcp uucpd # uucp daemon klogin 543/tcp # Kerberized `rlogin' (v5) kshell 544/tcp krcmd # Kerberized `rsh' (v5) dhcpv6-client 546/udp dhcpv6-server 547/udp afpovertcp 548/tcp # AFP over TCP nntps 563/tcp snntp # NNTP over SSL submission 587/tcp # Submission [RFC4409] ldaps 636/tcp # LDAP over SSL ldaps 636/udp tinc 655/tcp # tinc control port tinc 655/udp silc 706/tcp kerberos-adm 749/tcp # Kerberos `kadmin' (v5) # domain-s 853/tcp # DNS over TLS [RFC7858] domain-s 853/udp # DNS over DTLS [RFC8094] rsync 873/tcp ftps-data 989/tcp # FTP over SSL (data) ftps 990/tcp telnets 992/tcp # Telnet over SSL imaps 993/tcp # IMAP over SSL pop3s 995/tcp # POP-3 over SSL # # From ``Assigned Numbers'': # #> The Registered Ports are not controlled by the IANA and on most systems #> can be used by ordinary user processes or programs executed by ordinary #> users. # #> Ports are used in the TCP [45,106] to name the ends of logical #> connections which carry long term conversations. For the purpose of #> providing services to unknown callers, a service contact port is #> defined. This list specifies the port used by the server process as its #> contact port. While the IANA can not control uses of these ports it #> does register or list uses of these ports as a convienence to the #> community. # socks 1080/tcp # socks proxy server proofd 1093/tcp rootd 1094/tcp openvpn 1194/tcp openvpn 1194/udp rmiregistry 1099/tcp # Java RMI Registry lotusnote 1352/tcp lotusnotes # Lotus Note ms-sql-s 1433/tcp # Microsoft SQL Server ms-sql-m 1434/udp # Microsoft SQL Monitor ingreslock 1524/tcp datametrics 1645/tcp old-radius datametrics 1645/udp old-radius sa-msg-port 1646/tcp old-radacct sa-msg-port 1646/udp old-radacct kermit 1649/tcp groupwise 1677/tcp l2f 1701/udp l2tp radius 1812/tcp radius 1812/udp radius-acct 1813/tcp radacct # Radius Accounting radius-acct 1813/udp radacct cisco-sccp 2000/tcp # Cisco SCCP nfs 2049/tcp # Network File System nfs 2049/udp # Network File System gnunet 2086/tcp gnunet 2086/udp rtcm-sc104 2101/tcp # RTCM SC-104 IANA 1/29/99 rtcm-sc104 2101/udp gsigatekeeper 2119/tcp gris 2135/tcp # Grid Resource Information Server cvspserver 2401/tcp # CVS client/server operations venus 2430/tcp # codacon port venus 2430/udp # Venus callback/wbc interface venus-se 2431/tcp # tcp side effects venus-se 2431/udp # udp sftp side effect codasrv 2432/tcp # not used codasrv 2432/udp # server port codasrv-se 2433/tcp # tcp side effects codasrv-se 2433/udp # udp sftp side effect mon 2583/tcp # MON traps mon 2583/udp dict 2628/tcp # Dictionary server f5-globalsite 2792/tcp gsiftp 2811/tcp gpsd 2947/tcp gds-db 3050/tcp gds_db # InterBase server icpv2 3130/udp icp # Internet Cache Protocol isns 3205/tcp # iSNS Server Port isns 3205/udp # iSNS Server Port iscsi-target 3260/tcp mysql 3306/tcp ms-wbt-server 3389/tcp nut 3493/tcp # Network UPS Tools nut 3493/udp distcc 3632/tcp # distributed compiler daap 3689/tcp # Digital Audio Access Protocol svn 3690/tcp subversion # Subversion protocol suucp 4031/tcp # UUCP over SSL sysrqd 4094/tcp # sysrq daemon sieve 4190/tcp # ManageSieve Protocol epmd 4369/tcp # Erlang Port Mapper Daemon remctl 4373/tcp # Remote Authenticated Command Service f5-iquery 4353/tcp # F5 iQuery ntske 4460/tcp # Network Time Security Key Establishment ipsec-nat-t 4500/udp # IPsec NAT-Traversal [RFC3947] iax 4569/udp # Inter-Asterisk eXchange mtn 4691/tcp # monotone Netsync Protocol radmin-port 4899/tcp # RAdmin Port sip 5060/tcp # Session Initiation Protocol sip 5060/udp sip-tls 5061/tcp sip-tls 5061/udp xmpp-client 5222/tcp jabber-client # Jabber Client Connection xmpp-server 5269/tcp jabber-server # Jabber Server Connection cfengine 5308/tcp mdns 5353/udp # Multicast DNS postgresql 5432/tcp postgres # PostgreSQL Database freeciv 5556/tcp rptp # Freeciv gameplay amqps 5671/tcp # AMQP protocol over TLS/SSL amqp 5672/tcp amqp 5672/sctp x11 6000/tcp x11-0 # X Window System x11-1 6001/tcp x11-2 6002/tcp x11-3 6003/tcp x11-4 6004/tcp x11-5 6005/tcp x11-6 6006/tcp x11-7 6007/tcp gnutella-svc 6346/tcp # gnutella gnutella-svc 6346/udp gnutella-rtr 6347/tcp # gnutella gnutella-rtr 6347/udp redis 6379/tcp sge-qmaster 6444/tcp sge_qmaster # Grid Engine Qmaster Service sge-execd 6445/tcp sge_execd # Grid Engine Execution Service mysql-proxy 6446/tcp # MySQL Proxy babel 6696/udp # Babel Routing Protocol ircs-u 6697/tcp # Internet Relay Chat via TLS/SSL bbs 7000/tcp afs3-fileserver 7000/udp afs3-callback 7001/udp # callbacks to cache managers afs3-prserver 7002/udp # users & groups database afs3-vlserver 7003/udp # volume location database afs3-kaserver 7004/udp # AFS/Kerberos authentication afs3-volser 7005/udp # volume managment server afs3-bos 7007/udp # basic overseer process afs3-update 7008/udp # server-to-server updater afs3-rmtsys 7009/udp # remote cache manager service font-service 7100/tcp xfs # X Font Service http-alt 8080/tcp webcache # WWW caching service puppet 8140/tcp # The Puppet master service bacula-dir 9101/tcp # Bacula Director bacula-fd 9102/tcp # Bacula File Daemon bacula-sd 9103/tcp # Bacula Storage Daemon xmms2 9667/tcp # Cross-platform Music Multiplexing System nbd 10809/tcp # Linux Network Block Device zabbix-agent 10050/tcp # Zabbix Agent zabbix-trapper 10051/tcp # Zabbix Trapper amanda 10080/tcp # amanda backup services dicom 11112/tcp hkp 11371/tcp # OpenPGP HTTP Keyserver db-lsp 17500/tcp # Dropbox LanSync Protocol dcap 22125/tcp # dCache Access Protocol gsidcap 22128/tcp # GSI dCache Access Protocol wnn6 22273/tcp # wnn6 # # Datagram Delivery Protocol services # rtmp 1/ddp # Routing Table Maintenance Protocol nbp 2/ddp # Name Binding Protocol echo 4/ddp # AppleTalk Echo Protocol zip 6/ddp # Zone Information Protocol #========================================================================= # The remaining port numbers are not as allocated by IANA. #========================================================================= # Kerberos (Project Athena/MIT) services kerberos4 750/udp kerberos-iv kdc # Kerberos (server) kerberos4 750/tcp kerberos-iv kdc kerberos-master 751/udp kerberos_master # Kerberos authentication kerberos-master 751/tcp passwd-server 752/udp passwd_server # Kerberos passwd server krb-prop 754/tcp krb_prop krb5_prop hprop # Kerberos slave propagation zephyr-srv 2102/udp # Zephyr server zephyr-clt 2103/udp # Zephyr serv-hm connection zephyr-hm 2104/udp # Zephyr hostmanager iprop 2121/tcp # incremental propagation supfilesrv 871/tcp # Software Upgrade Protocol server supfiledbg 1127/tcp # Software Upgrade Protocol debugging # # Services added for the Debian GNU/Linux distribution # poppassd 106/tcp # Eudora moira-db 775/tcp moira_db # Moira database moira-update 777/tcp moira_update # Moira update protocol moira-ureg 779/udp moira_ureg # Moira user registration spamd 783/tcp # spamassassin daemon skkserv 1178/tcp # skk jisho server port predict 1210/udp # predict -- satellite tracking rmtcfg 1236/tcp # Gracilis Packeten remote config server xtel 1313/tcp # french minitel xtelw 1314/tcp # french minitel zebrasrv 2600/tcp # zebra service zebra 2601/tcp # zebra vty ripd 2602/tcp # ripd vty (zebra) ripngd 2603/tcp # ripngd vty (zebra) ospfd 2604/tcp # ospfd vty (zebra) bgpd 2605/tcp # bgpd vty (zebra) ospf6d 2606/tcp # ospf6d vty (zebra) ospfapi 2607/tcp # OSPF-API isisd 2608/tcp # ISISd vty (zebra) fax 4557/tcp # FAX transmission service (old) hylafax 4559/tcp # HylaFAX client-server protocol (new) munin 4949/tcp lrrd # Munin rplay 5555/udp # RPlay audio service nrpe 5666/tcp # Nagios Remote Plugin Executor nsca 5667/tcp # Nagios Agent - NSCA canna 5680/tcp # cannaserver syslog-tls 6514/tcp # Syslog over TLS [RFC5425] sane-port 6566/tcp sane saned # SANE network scanner daemon ircd 6667/tcp # Internet Relay Chat zope-ftp 8021/tcp # zope management by ftp tproxy 8081/tcp # Transparent Proxy omniorb 8088/tcp # OmniORB clc-build-daemon 8990/tcp # Common lisp build daemon xinetd 9098/tcp git 9418/tcp # Git Version Control System zope 9673/tcp # zope server webmin 10000/tcp kamanda 10081/tcp # amanda backup services (Kerberos) amandaidx 10082/tcp # amanda backup services amidxtape 10083/tcp # amanda backup services sgi-cmsd 17001/udp # Cluster membership services daemon sgi-crsd 17002/udp sgi-gcd 17003/udp # SGI Group membership daemon sgi-cad 17004/tcp # Cluster Admin daemon binkp 24554/tcp # binkp fidonet protocol asp 27374/tcp # Address Search Protocol asp 27374/udp csync2 30865/tcp # cluster synchronization tool dircproxy 57000/tcp # Detachable IRC Proxy tfido 60177/tcp # fidonet EMSI over telnet fido 60179/tcp # fidonet EMSI over TCP # Local services # valid login shells /bin/sh /bin/ash # content of this file will override /etc/sysctl.d/* usr/bin/[ usr/bin/[[ sbin/acpid usr/sbin/add-shell usr/sbin/addgroup usr/sbin/adduser sbin/adjtimex bin/arch sbin/arp usr/sbin/arping bin/ash usr/bin/awk bin/base64 usr/bin/basename bin/bbconfig usr/bin/bc usr/bin/beep sbin/blkdiscard sbin/blkid sbin/blockdev usr/sbin/brctl usr/bin/bunzip2 usr/bin/bzcat usr/bin/bzip2 usr/bin/cal bin/cat bin/chattr bin/chgrp bin/chmod bin/chown usr/sbin/chpasswd usr/sbin/chroot usr/bin/chvt usr/bin/cksum usr/bin/clear usr/bin/cmp usr/bin/comm bin/cp usr/bin/cpio usr/sbin/crond usr/bin/crontab usr/bin/cryptpw usr/bin/cut bin/date usr/bin/dc bin/dd usr/bin/deallocvt usr/sbin/delgroup usr/sbin/deluser sbin/depmod bin/df usr/bin/diff usr/bin/dirname bin/dmesg bin/dnsdomainname usr/bin/dos2unix usr/bin/du bin/dumpkmap bin/echo bin/egrep usr/bin/eject usr/bin/env usr/sbin/ether-wake usr/bin/expand usr/bin/expr usr/bin/factor usr/bin/fallocate bin/false bin/fatattr usr/sbin/fbset sbin/fbsplash bin/fdflush sbin/fdisk bin/fgrep usr/bin/find sbin/findfs usr/bin/flock usr/bin/fold usr/bin/free sbin/fsck sbin/fstrim bin/fsync usr/bin/fuser bin/getopt sbin/getty bin/grep usr/bin/groups bin/gunzip bin/gzip sbin/halt usr/bin/hd usr/bin/head usr/bin/hexdump usr/bin/hostid bin/hostname sbin/hwclock usr/bin/id sbin/ifconfig sbin/ifdown sbin/ifenslave sbin/ifup sbin/init sbin/inotifyd sbin/insmod usr/bin/install bin/ionice bin/iostat sbin/ip sbin/ipaddr bin/ipcalc usr/bin/ipcrm usr/bin/ipcs sbin/iplink sbin/ipneigh sbin/iproute sbin/iprule sbin/iptunnel bin/kbd_mode bin/kill usr/bin/killall usr/sbin/killall5 sbin/klogd usr/bin/last usr/bin/less bin/link bin/linux32 bin/linux64 bin/ln usr/sbin/loadfont sbin/loadkmap usr/bin/logger bin/login sbin/logread sbin/losetup bin/ls bin/lsattr sbin/lsmod usr/bin/lsof usr/bin/lsusb usr/bin/lzcat usr/bin/lzma bin/lzop usr/bin/lzopcat bin/makemime usr/bin/md5sum sbin/mdev usr/bin/mesg usr/bin/microcom bin/mkdir sbin/mkdosfs usr/bin/mkfifo sbin/mkfs.vfat bin/mknod usr/bin/mkpasswd sbin/mkswap bin/mktemp sbin/modinfo sbin/modprobe bin/more bin/mount bin/mountpoint bin/mpstat bin/mv sbin/nameif usr/sbin/nanddump usr/sbin/nandwrite usr/sbin/nbd-client usr/bin/nc bin/netstat bin/nice usr/bin/nl usr/bin/nmeter usr/bin/nohup sbin/nologin usr/bin/nproc usr/bin/nsenter usr/bin/nslookup usr/sbin/ntpd usr/bin/od usr/bin/openvt usr/sbin/partprobe usr/bin/passwd usr/bin/paste usr/bin/pgrep bin/pidof bin/ping bin/ping6 bin/pipe_progress sbin/pivot_root usr/bin/pkill usr/bin/pmap sbin/poweroff bin/printenv usr/bin/printf bin/ps usr/bin/pscan usr/bin/pstree bin/pwd usr/bin/pwdx sbin/raidautorun usr/sbin/rdate usr/sbin/rdev usr/sbin/readahead usr/bin/readlink usr/bin/realpath sbin/reboot bin/reformime usr/sbin/remove-shell usr/bin/renice usr/bin/reset usr/bin/resize bin/rev usr/sbin/rfkill bin/rm bin/rmdir sbin/rmmod sbin/route bin/run-parts bin/sed usr/sbin/sendmail usr/bin/seq sbin/setconsole usr/sbin/setfont usr/bin/setkeycodes usr/sbin/setlogcons bin/setpriv bin/setserial usr/bin/setsid bin/sh usr/bin/sha1sum usr/bin/sha256sum usr/bin/sha3sum usr/bin/sha512sum usr/bin/showkey usr/bin/shred usr/bin/shuf sbin/slattach bin/sleep usr/bin/sort usr/bin/split bin/stat usr/bin/strings bin/stty bin/su usr/bin/sum sbin/swapoff sbin/swapon sbin/switch_root bin/sync sbin/sysctl sbin/syslogd usr/bin/tac usr/bin/tail bin/tar usr/bin/tee usr/bin/test usr/bin/time usr/bin/timeout usr/bin/top bin/touch usr/bin/tr usr/bin/traceroute usr/bin/traceroute6 usr/bin/tree bin/true usr/bin/truncate usr/bin/tty usr/bin/ttysize sbin/tunctl sbin/udhcpc usr/bin/udhcpc6 bin/umount bin/uname usr/bin/unexpand usr/bin/uniq usr/bin/unix2dos usr/bin/unlink usr/bin/unlzma usr/bin/unlzop usr/bin/unshare usr/bin/unxz usr/bin/unzip usr/bin/uptime bin/usleep usr/bin/uudecode usr/bin/uuencode sbin/vconfig usr/bin/vi usr/bin/vlock usr/bin/volname bin/watch sbin/watchdog usr/bin/wc usr/bin/wget usr/bin/which usr/bin/who usr/bin/whoami usr/bin/whois usr/bin/xargs usr/bin/xxd usr/bin/xzcat usr/bin/yes bin/zcat sbin/zcip /var/log/acpid.log { missingok notifempty sharedscripts postrotate /etc/init.d/acpid --quiet --ifstarted restart || true endscript } #!/bin/sh # Block ifup until DAD completion # Copyright (c) 2016-2018 Kaarle Ritvanen has_flag() { ip address show dev $IFACE up | grep -q " $1 " } counter=100 while [ "$counter" -gt 0 ] && has_flag tentative && ! has_flag dadfailed; do sleep 0.2 counter=$((counter - 1)) done console tty0 tty1 tty2 tty3 tty4 tty5 tty6 tty7 tty8 tty9 tty10 tty11 hvc0 ttyS0 ttyS1 ttyS2 ttyGS0 ttyAMA0 ttyAMA1 ttyTCU0 ttyTHS0 ttyTHS1 ttymxc0 ttymxc2 # Do not overwrite /etc/resolv.conf #RESOLV_CONF="no" # Use alternative path for resolv.conf #RESOLV_CONF="/tmp/resolv.conf" # Prevent overwriting of resolv.conf on a per-interface basis #NO_DNS="eth1 wlan1" # List of interfaces where DHCP routes are ignored #NO_GATEWAY="eth1 wlan1" #!/bin/sh # script for udhcpc # Copyright (c) 2008 Natanael Copa UDHCPC="/etc/udhcpc" UDHCPC_CONF="$UDHCPC/udhcpc.conf" RESOLV_CONF="/etc/resolv.conf" [ -f "$UDHCPC_CONF" ] && . "$UDHCPC_CONF" export RESOLV_CONF export broadcast export dns export domain export interface export ip export mask export metric export staticroutes export router export subnet export PATH=/usr/bin:/bin:/usr/sbin:/sbin run_scripts() { local dir="$1" local script if [ -d "$dir" ]; then for script in "$dir"/*; do if [ -f "$script" ] && [ -x "$script" ]; then "$script" fi done fi } deconfig() { ip -4 addr flush dev $interface } is_wifi() { test -e /sys/class/net/$interface/phy80211 } if_index() { if [ -e /sys/class/net/$interface/ifindex ]; then cat /sys/class/net/$interface/ifindex else ip -4 link show dev $interface | head -n1 | cut -d: -f1 fi } calc_metric() { local base= if is_wifi; then base=300 else base=200 fi echo $(( base + $(if_index) )) } route_add() { local to=$1 gw=$2 num=$3 # special case for /32 subnets: # /32 instructs kernel to always use routing for all outgoing packets # (they can never be sent to local subnet - there is no local subnet for /32). # Used in datacenters, avoids the need for private ip-addresses between two hops. if [ "$subnet" = "255.255.255.255" ]; then ip -4 route add $gw dev $interface fi ip -4 route add $to via $gw dev $interface \ metric $(( $num + ${IF_METRIC:-$(calc_metric)} )) } routes() { [ -z "$router" ] && [ -z "$staticroutes" ] && return local iface= for iface in $NO_GATEWAY; do [ "$iface" = "$interface" ] && return done while ip -4 route del default via dev $interface 2>/dev/null; do : done local num=0 # RFC3442: # If the DHCP server returns both a Classless Static Routes option # and a Router option, the DHCP client MUST ignore the Router option. if [ -n "$staticroutes" ]; then # static routes format: dest1/mask gw1 ... destn/mask gwn set -- $staticroutes while [ -n "$1" ] && [ -n "$2" ]; do local dest="$1" gw="$2" if [ "$gw" != "0.0.0.0" ]; then route_add $dest $gw $num && num=$(( num + 1)) fi shift 2 done else local gw= for gw in $router; do route_add 0.0.0.0/0 $gw $num && num=$(( num + 1 )) done fi } resolv_conf() { local i [ -n "$IF_PEER_DNS" ] && [ "$IF_PEER_DNS" != "yes" ] && return if [ "$RESOLV_CONF" = "no" ] || [ "$RESOLV_CONF" = "NO" ] \ || [ -z "$RESOLV_CONF" ] || [ -z "$dns" ]; then return fi for i in $NO_DNS; do [ "$i" = "$interface" ] && return done echo -n > "$RESOLV_CONF.$$" if [ -n "$search" ]; then echo "search $search" >> "$RESOLV_CONF.$$" elif [ -n "$domain" ]; then echo "search $domain" >> "$RESOLV_CONF.$$" fi for i in $dns; do echo "nameserver $i" >> "$RESOLV_CONF.$$" done chmod a+r "$RESOLV_CONF.$$" if grep -q "^# Generated by resolvconf" "$RESOLV_CONF" 2>/dev/null \ && [ -x "$(command -v resolvconf)" ]; then resolvconf -a "udhcpc" < "$RESOLV_CONF.$$" rm "$RESOLV_CONF.$$" else mv -f "$RESOLV_CONF.$$" "$RESOLV_CONF" fi } bound() { ip -4 addr add $ip/$mask ${broadcast:+broadcast $broadcast} dev $interface ip -4 link set dev $interface up routes resolv_conf } renew() { if ! ip -4 addr show dev $interface | grep $ip/$mask; then ip -4 addr flush dev $interface ip -4 addr add $ip/$mask ${broadcast:+broadcast $broadcast} dev $interface fi local i for i in $router; do if ! ip -4 route show | grep ^default | grep $i; then routes break fi done if ! grep "^search $domain"; then resolv_conf return fi for i in $dns; do if ! grep "^nameserver $i"; then resolv_conf return fi done } case "$1" in deconfig|renew|bound) run_scripts "$UDHCPC/pre-$1" $1 run_scripts "$UDHCPC/post-$1" ;; leasefail) echo "udhcpc failed to get a DHCP lease" >&2 ;; nak) echo "udhcpc received DHCP NAK" >&2 ;; *) echo "Error: this script should be called from udhcpc" >&2 exit 1 ;; esac exit 0 # do daily/weekly/monthly maintenance # min hour day month weekday command */15 * * * * run-parts /etc/periodic/15min 0 * * * * run-parts /etc/periodic/hourly 0 2 * * * run-parts /etc/periodic/daily 0 3 * * 6 run-parts /etc/periodic/weekly 0 5 1 * * run-parts /etc/periodic/monthly # Aliases to tell insmod/modprobe which modules to use # Uncomment the network protocols you don't want loaded: # alias net-pf-1 off # Unix # alias net-pf-2 off # IPv4 # alias net-pf-3 off # Amateur Radio AX.25 # alias net-pf-4 off # IPX # alias net-pf-5 off # DDP / appletalk # alias net-pf-6 off # Amateur Radio NET/ROM # alias net-pf-9 off # X.25 # alias net-pf-10 off # IPv6 # alias net-pf-11 off # ROSE / Amateur Radio X.25 PLP # alias net-pf-19 off # Acorn Econet alias char-major-10-175 agpgart alias char-major-10-200 tun alias char-major-81 bttv alias char-major-108 ppp_generic alias /dev/ppp ppp_generic alias tty-ldisc-3 ppp_async alias tty-ldisc-14 ppp_synctty alias ppp-compress-21 bsd_comp alias ppp-compress-24 ppp_deflate alias ppp-compress-26 ppp_deflate # Crypto modules (see http://www.kerneli.org/) alias loop-xfer-gen-0 loop_gen alias loop-xfer-3 loop_fish2 alias loop-xfer-gen-10 loop_gen alias cipher-2 des alias cipher-3 fish2 alias cipher-4 blowfish alias cipher-6 idea alias cipher-7 serp6f alias cipher-8 mars6 alias cipher-11 rc62 alias cipher-15 dfc2 alias cipher-16 rijndael alias cipher-17 rc5 # Support for i2c and lm_sensors alias char-major-89 i2c-dev # xfrm alias xfrm-type-2-4 xfrm4_tunnel alias xfrm-type-2-50 esp4 alias xfrm-type-2-51 ah4 alias xfrm-type-2-108 ipcomp alias xfrm-type-10-41 xfrm6_tunnel alias xfrm-type-10-50 esp6 alias xfrm-type-10-51 ah6 alias xfrm-type-10-108 ipcomp6 alias sha1 sha1-generic # change to aes-i586 to boost performance alias aes aes-generic # # Listing a module here prevents the hotplug scripts from loading it. # Usually that'd be so that some other driver will bind it instead, # no matter which driver happens to get probed first. Sometimes user # mode tools can also control driver binding. # tulip ... de4x5, xircom_tulip_cb, dmfe (...) handle same devices blacklist de4x5 # At least 2.4.3 and later xircom_tulip doesn't have that conflict # xircom_tulip_cb blacklist dmfe # Intel E810+x722 RDMA driver, should be loaded explicitly and may # lead to stability issues blacklist irdma #evbug is a debug tool and should be loaded explicitly blacklist evbug # Alternate 8139 driver. Some 8139 cards need this specific driver, # though... # blacklist 8139cp # Ethernet over IEEE1394 module. In too many cases this will load # when there's no eth1394 device present (just an IEEE1394 port) blacklist eth1394 # This module causes many Intel motherboards to crash and reboot. blacklist i8xx-tco # The kernel lists this as "experimental", but for now it's "broken" blacklist via-ircc # ALSA modules to support sound modems. These should be loaded manually # if needed. For most people they just break sound support... blacklist snd-atiixp-modem blacklist snd-intel8x0m blacklist snd-via82xx-modem # we don't want use the pc speaker blacklist snd-pcsp # Alternative module to Orinoco Wireless Cards. blacklist hostap blacklist hostap_cs # framebuffer drivers blacklist aty128fb blacklist atyfb blacklist radeonfb blacklist i810fb blacklist cirrusfb blacklist intelfb blacklist kyrofb blacklist i2c-matroxfb blacklist hgafb blacklist nvidiafb blacklist rivafb blacklist savagefb blacklist sstfb blacklist neofb blacklist tridentfb blacklist tdfxfb blacklist viafb blacklist virgefb blacklist vga16fb blacklist matroxfb_base blacklist vt8623fb # blacklist 1394 drivers blacklist ohci1394 blacklist video1394 blacklist dv1394 # blacklist mISDN dirver by default as we prefer dahdi drivers blacklist hfcmulti blacklist hfcpci blacklist hfcsusb # blacklist C7 cpu freq. use acpi-cpufreq instead blacklist e_powersaver blacklist microcode # needs init config, not compatible with acpid # https://gitlab.alpinelinux.org/alpine/aports/-/issues/12999 blacklist tiny_power_button alias parport_lowlevel parport_pc alias char-major-10-144 nvram alias binfmt-0064 binfmt_aout alias char-major-10-135 rtc Welcome to Alpine! The Alpine Wiki contains a large amount of how-to guides and general information about administrating Alpine systems. See . You can setup the system with the command: setup-alpine You may change this message by editing /etc/motd. export CHARSET=${CHARSET:-UTF-8} export LANG=${LANG:-C.UTF-8} export LC_COLLATE=${LC_COLLATE:-C} This directory should contain shell scripts configuring system-wide environment on users' shells. Files with the .sh extension found in this directory are evaluated by Bourne-compatible shells (like ash, bash or zsh) when started as a login shell. # Setup a red prompt for root and a green one for users. # Symlink this file to color_prompt.sh to actually enable it. _normal=$'\e[0m' if [ "$USER" = root ]; then _color=$'\e[1;31m' _symbol='#' else _color=$'\e[1;32m' _symbol='$' fi if [ -n "$ZSH_VERSION" ]; then PS1="%{$_color%}%m [%{$_normal%}%~%{$_color%}]$_symbol %{$_normal%}" else PS1="\[$_color\]\h [\[$_normal\]\w\[$_color\]]$_symbol \[$_normal\]" fi unset _normal _color _symbol # Prevents SYN DOS attacks. Applies to ipv6 as well, despite name. net.ipv4.tcp_syncookies = 1 # Prevents ip spoofing. net.ipv4.conf.default.rp_filter = 1 net.ipv4.conf.all.rp_filter = 1 # Only groups within this id range can use ping. net.ipv4.ping_group_range=999 59999 # Redirects can potentially be used to maliciously alter hosts # routing tables. net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.all.secure_redirects = 1 net.ipv6.conf.all.accept_redirects = 0 # The source routing feature includes some known vulnerabilities. net.ipv4.conf.all.accept_source_route = 0 net.ipv6.conf.all.accept_source_route = 0 # See RFC 1337 net.ipv4.tcp_rfc1337 = 1 ## Enable IPv6 Privacy Extensions (see RFC4941 and RFC3041) net.ipv6.conf.default.use_tempaddr = 2 net.ipv6.conf.all.use_tempaddr = 2 # Restarts computer after 120 seconds after kernel panic kernel.panic = 120 # Users should not be able to create soft or hard links to files # which they do not own. This mitigates several privilege # escalation vulnerabilities. fs.protected_hardlinks = 1 fs.protected_symlinks = 1 # Disable unprivileged use of the bpf(2) syscall. # Allowing unprivileged use of the bpf(2) syscall may allow a # malicious user to compromise the machine. kernel.unprivileged_bpf_disabled = 1 #!/bin/sh # Copyright (C) 2012 Natanael Copa # # This program is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License version 2 as published # by the Free Software Foundation. See http://www.gnu.org/ for details. all_ports_exist() { local i= for i in "$@"; do [ -d /sys/class/net/$i ] || return 1 done return 0 } wait_ports() { local timeout= waitports= [ -z "$IF_BRIDGE_WAITPORT" ] && return 0 set -- $IF_BRIDGE_WAITPORT timeout="$1" shift waitports="$@" [ -z "$waitports" ] && waitports="$PORTS" while ! all_ports_exist $waitports; do [ "$timeout" -eq 0 ] && return 0 timeout=$(($timeout - 1)) sleep 1 done } all_ports() { local i= for i in /sys/class/net/*/ifindex; do i=${i%/*} i=${i##*/} case "$i" in lo|$IFACE) continue;; *) echo $i;; esac done } add_ports() { local port= for port in $PORTS; do if [ -x /etc/network/if-pre-up.d/vlan ]; then env IFACE=$port /etc/network/if-pre-up.d/vlan fi if [ -n "$IF_BRIDGE_HW" ]; then ip link set dev $port addr $IF_BRIDGE_HW fi brctl addif $IFACE $port && ip link set dev $port up done } del_ports() { local port= for port in $PORTS; do ip link set dev $port down brctl delif $IFACE $port if [ -x /etc/network/ip-post-down.d/vlan ]; then env IFACE=$port /etc/network/if-post-down.d/vlan fi done } set_bridge_opts() { [ -n "$IF_BRIDGE_AGEING" ] \ && brctl setageing $IFACE $IF_BRIDGE_AGEING [ -n "$IF_BRIDGE_BRIDGEPRIO" ] \ && brctl setbridgeprio $IFACE $IF_BRIDGE_BRIDGEPRIO [ -n "$IF_BRIDGE_FD" ] \ && brctl setfd $IFACE $IF_BRIDGE_FD [ -n "$IF_BRIDGE_GCINT" ] \ && brctl setgcint $IFACE $IF_BRIDGE_GCINT [ -n "$IF_BRIDGE_HELLO" ] \ && brctl sethello $IFACE $IF_BRIDGE_HELLO [ -n "$IF_BRIDGE_MAXAGE" ] \ && brctl setmaxage $IFACE $IF_BRIDGE_MAXAGE [ -n "$IF_BRIDGE_PATHCOST" ] \ && brctl setpathcost $IFACE $IF_BRIDGE_PATHCOST [ -n "$IF_BRIDGE_PORTPRIO" ] \ && brctl setportprio $IFACE $IF_BRIDGE_PORTPRIO [ -n "$IF_BRIDGE_STP" ] \ && brctl stp $IFACE $IF_BRIDGE_STP } all_ports_ready() { local port= for port in $PORTS; do case $(cat /sys/class/net/$IFACE/brif/$port/state) in ""|0|3) ;; # 0 = disabled, 3 = forwarding [12]) return 1;; esac done return 0 } find_maxwait() { awk '{printf("%.f\n", 2 * $0 / 100); }' \ /sys/class/net/$IFACE/bridge/forward_delay } wait_bridge() { local timeout=$IF_BRIDGE_MAXWAIT if [ -z "$timeout" ]; then timeout=$(find_maxwait) fi ip link set dev $IFACE up while ! all_ports_ready; do [ $timeout -eq 0 ] && break timeout=$(($timeout - 1)) sleep 1 done } case "$IF_BRIDGE_PORTS" in "") ;; none) PORTS="";; all) PORTS=$(all_ports);; *) PORTS="$IF_BRIDGE_PORTS";; esac [ -z "$PORTS" ] && ! env | grep -q "^IF_BRIDGE" && exit case "$MODE" in start) brctl addbr $IFACE || exit 1 wait_ports set_bridge_opts add_ports wait_bridge ;; stop) del_ports ip link set dev $IFACE down brctl delbr $IFACE || exit 1 ;; esac #!/bin/sh [ -z "$IF_BOND_MEMBERS" ] && IF_BOND_MEMBERS="$IF_BOND_SLAVES" case "$PHASE" in depend) echo "$IF_BOND_MEMBERS" ;; esac #!/bin/sh if ! [ -x /etc/network/if-pre-up.d/bridge ] && [ -e /etc/alpine-release ]; then echo 'bridge support requires "apk add bridge"' 1>&2 exit 1 fi case "$PHASE" in depend) if [ "$IF_BRIDGE_PORTS" != "none" ]; then echo "$IF_BRIDGE_PORTS" fi ;; esac #!/bin/sh # some users provide a shell fragment for the hostname property. [ -n "$IF_DHCP_HOSTNAME" ] && IF_DHCP_HOSTNAME=$(eval echo $IF_DHCP_HOSTNAME) determine_implementation() { [ -n "$IF_DHCP_PROGRAM" ] && echo "$IF_DHCP_PROGRAM" && return [ -x /sbin/dhcpcd ] && echo "dhcpcd" && return [ -x /usr/sbin/dhclient ] && echo "dhclient" && return [ -x /sbin/udhcpc ] && echo "udhcpc" && return echo "could not find a supported DHCP implementation" exit 1 } start() { case "$1" in dhcpcd) optargs=$(eval echo $IF_DHCP_OPTS) [ -n "$IF_DHCP_HOSTNAME" ] && optargs="$optargs -h $IF_DHCP_HOSTNAME" [ -n "$IF_DHCP_VENDOR" ] && optargs="$optargs -i $IF_DHCP_VENDOR" [ -n "$IF_DHCP_CLIENT_ID" ] && optargs="$optargs -I $IF_DHCP_CLIENT_ID" [ -n "$IF_DHCP_LEASETIME" ] && optargs="$optargs -l $IF_DHCP_LEASETIME" [ -n "$IF_DHCP_CONFIG" ] && optargs="$optargs -f $IF_DHCP_CONFIG" [ -n "$IF_DHCP_SCRIPT" ] && optargs="$optargs -c $IF_DHCP_SCRIPT" ${MOCK} /sbin/dhcpcd $optargs $IFACE ;; dhclient) optargs=$(eval echo $IF_DHCP_OPTS) [ -n "$IF_DHCP_CONFIG" ] && optargs="$optargs -cf $IF_DHCP_CONFIG" [ -n "$IF_DHCP_SCRIPT" ] && optargs="$optargs -sf $IF_DHCP_SCRIPT" ${MOCK} /usr/sbin/dhclient -pf /var/run/dhclient.$IFACE.pid $optargs $IFACE ;; udhcpc) optargs=$(eval echo $IF_UDHCPC_OPTS $IF_DHCP_OPTS) [ -n "$IF_DHCP_HOSTNAME" ] && optargs="$optargs -x hostname:${IF_DHCP_HOSTNAME}" [ -n "$IF_DHCP_VENDOR" ] && optargs="$optargs -V $IF_DHCP_VENDOR" [ -n "$IF_DHCP_CLIENT_ID" ] && optargs="$optargs -x 0x3d:${IF_DHCP_CLIENT_ID}" [ -n "$IF_DHCP_LEASETIME" ] && optargs="$optargs -x lease:${IF_DHCP_LEASETIME}" [ -n "$IF_DHCP_SCRIPT" ] && optargs="$optargs -s $IF_DHCP_SCRIPT" ${MOCK} /sbin/udhcpc -b -R -p /var/run/udhcpc.$IFACE.pid -i $IFACE $optargs ;; *) ;; esac } stop() { case "$1" in dhcpcd) ${MOCK} /sbin/dhcpcd -k $IFACE ;; dhclient) ${MOCK} kill -9 $(cat /var/run/dhclient.$IFACE.pid) 2>/dev/null ;; udhcpc) ${MOCK} kill $(cat /var/run/udhcpc.$IFACE.pid) ;; *) ;; esac } impl=$(determine_implementation) [ -z "$VERBOSE" ] || set -x case "$PHASE" in up) start $impl ;; down) stop $impl || true ;; *) ;; esac #!/bin/sh yesno() { case "$1" in yes|1) echo 1 ;; *) echo 0 ;; esac } [ "$PHASE" != "up" ] && exit 0 [ -z "$VERBOSE" ] || set -x [ -n "$IF_FORWARD_IPV4" ] && ${MOCK} /bin/sh -c "echo $(yesno $IF_FORWARD_IPV4) > /proc/sys/net/ipv4/conf/$IFACE/forwarding" [ -n "$IF_FORWARD_IPV6" ] && ${MOCK} /bin/sh -c "echo $(yesno $IF_FORWARD_IPV6) > /proc/sys/net/ipv6/conf/$IFACE/forwarding" [ -n "$IF_FORWARD_IPV4_MC" ] && ${MOCK} /bin/sh -c "echo $(yesno $IF_FORWARD_IPV4_MC) > /proc/sys/net/ipv4/conf/$IFACE/mc_forwarding" [ -n "$IF_FORWARD_IPV6_MC" ] && ${MOCK} /bin/sh -c "echo $(yesno $IF_FORWARD_IPV6_MC) > /proc/sys/net/ipv6/conf/$IFACE/mc_forwarding" exit 0 #!/bin/sh [ -z "$VERBOSE" ] || set -x : "${PROCFS_ROOT:=/proc}" yesno() { case "$1" in yes|1) echo 1 ;; *) echo 0 ;; esac } case "$PHASE" in up) if [ -n "$IF_IPV6_AUTOCONF" -a -e "$PROCFS_ROOT/sys/net/ipv6/conf/${IFACE}/autoconf" ]; then printf '%s\n' "$(yesno "${IF_IPV6_AUTOCONF}")" > "$PROCFS_ROOT/sys/net/ipv6/conf/${IFACE}/autoconf" fi if [ -n "$IF_IPV6_ACCEPT_RA" -a -e "$PROCFS_ROOT/sys/net/ipv6/conf/${IFACE}/accept_ra" ]; then printf '%s\n' "${IF_IPV6_ACCEPT_RA}" > "$PROCFS_ROOT/sys/net/ipv6/conf/${IFACE}/accept_ra" fi if [ -n "$IF_IPV6_DAD_TRANSMITS" -a -e "$PROCFS_ROOT/sys/net/ipv6/conf/${IFACE}/dad_transmits" ]; then printf '%s\n' "${IF_IPV6_DAD_TRANSMITS}" > "$PROCFS_ROOT/sys/net/ipv6/conf/${IFACE}/dad_transmits" fi if [ -n "$IF_IPV6_OPTIMISTIC_DAD" -a -e "/proc/sys/net/ipv6/conf/${IFACE}/optimistic_dad" ]; then ${MOCK} echo $(yesno ${IF_IPV6_OPTIMISTIC_DAD}) > "/proc/sys/net/ipv6/conf/${IFACE}/optimistic_dad" fi ;; esac #!/bin/sh : "${PROCFS_ROOT:=/proc}" start() { forwarding=$(cat "$PROCFS_ROOT/sys/net/ipv6/conf/$IFACE/forwarding") if [ "$forwarding" = 1 ]; then printf '%s\n' 2 > "$PROCFS_ROOT/sys/net/ipv6/conf/$IFACE/accept_ra" else printf '%s\n' 1 > "$PROCFS_ROOT/sys/net/ipv6/conf/$IFACE/accept_ra" fi } stop() { printf '%s\n' 0 > "$PROCFS_ROOT/sys/net/ipv6/conf/$IFACE/accept_ra" } [ -z "$VERBOSE" ] || set -x case "$PHASE" in up) start $impl ;; down) stop $impl ;; *) ;; esac #!/bin/sh : "${PROCFS_ROOT:=/proc}" start() { printf '%s\n' 2 > "$PROCFS_ROOT/sys/net/ipv6/conf/$IFACE/use_tempaddr" } stop() { printf '%s\n' 0 > "$PROCFS_ROOT/sys/net/ipv6/conf/$IFACE/use_tempaddr" } [ -z "$VERBOSE" ] || set -x case "$PHASE" in pre-up) start $impl ;; pre-down) stop $impl ;; *) ;; esac #!/bin/sh [ -n "$VERBOSE" ] && set -x is_vlan() { case "$IFACE" in *#*) return 1 ;; *:*) return 1 ;; vlan*.*) return 1 ;; vlan*) [ -z "$IF_VLAN_RAW_DEVICE" ] && return 1 IF_VLAN_ID="${IFACE#vlan}" ;; *.*) IF_VLAN_RAW_DEVICE="${IFACE%.*}" IF_VLAN_ID="${IFACE##*.}" ;; *) [ -z "$IF_VLAN_RAW_DEVICE" ] && return 1 [ -z "$IF_VLAN_ID" ] && return 1 ;; esac return 0 } onoff() { case "$1" in on|1) echo on ;; *) echo off ;; esac } case "$PHASE" in depend) # vlan-raw-device if is_vlan; then printf '%s\n' "$IF_VLAN_RAW_DEVICE" # veth-peer-name elif [ "$IF_LINK_TYPE" = 'veth' ] && [ -n "$IF_VETH_PEER_NAME" ]; then printf '%s\n' "$IF_VETH_PEER_NAME" fi ;; create) # Don't complain about an existing interface when creating it # NOTE: Double negation is important so this condition is ignored during tests if ! ${MOCK} [ ! -d /sys/class/net/"$IFACE" ]; then exit 0 fi if [ "$IF_LINK_TYPE" = 'dummy' ]; then if ${MOCK} [ ! -d /sys/module/dummy ]; then printf 'Loading dummy network interface kernel module\n' ${MOCK} modprobe dummy fi ${MOCK} ip link add "$IFACE" type dummy elif [ "$IF_LINK_TYPE" = 'veth' ]; then # Configure peer name if defined ${MOCK} ip link add "$IFACE" type veth ${IF_VETH_PEER_NAME:+peer "$IF_VETH_PEER_NAME"} elif is_vlan; then # NOTE: Early negation is important so this condition is ignored during tests if ! ${MOCK} [ -d /sys/class/net/"$IF_VLAN_RAW_DEVICE" ]; then printf 'Interface %s is missing VLAN raw device %s\n' "$IFACE" "$IF_VLAN_RAW_DEVICE" exit 1 fi if ${MOCK} [ ! -d /proc/net/vlan ]; then printf 'Loading 8021q kernel module for VLAN support\n' ${MOCK} modprobe 8021q fi IF_VLAN_OPTIONS="" if [ -n "$IF_VLAN_REORDER_HDR" ]; then value=$(onoff $IF_VLAN_REORDER_HDR) IF_VLAN_OPTIONS="reorder_hdr $value" fi if [ -n "$IF_VLAN_GVRP" ]; then value=$(onoff $IF_VLAN_GVRP) IF_VLAN_OPTIONS="$IF_VLAN_OPTIONS gvrp $value" fi if [ -n "$IF_VLAN_MVRP" ]; then value=$(onoff $IF_VLAN_MVRP) IF_VLAN_OPTIONS="$IF_VLAN_OPTIONS mvrp $value" fi if [ -n "$IF_VLAN_LOOSE_BINDING" ]; then value=$(onoff $IF_VLAN_LOOSE_BINDING) IF_VLAN_OPTIONS="$IF_VLAN_OPTIONS loose_binding $value" fi if [ -n "$IF_VLAN_BRIDGE_BINDING" ]; then value=$(onoff $IF_VLAN_BRIDGE_BINDING) IF_VLAN_OPTIONS="$IF_VLAN_OPTIONS bridge_binding $value" fi IF_VLAN_PROTOCOL=$(echo $IF_VLAN_PROTOCOL | tr "[:upper:]" "[:lower:]") case "$IF_VLAN_PROTOCOL" in 802.1ad|qinq|q-in-q) ${MOCK} ip link add link "${IF_VLAN_RAW_DEVICE}" name "${IFACE}" ${IF_LINK_OPTIONS} type vlan id "${IF_VLAN_ID}" protocol 802.1ad ${IF_VLAN_OPTIONS} ;; *) ${MOCK} ip link add link "${IF_VLAN_RAW_DEVICE}" name "${IFACE}" type vlan id "${IF_VLAN_ID}" protocol 802.1Q ${IF_VLAN_OPTIONS} ;; esac fi ;; up) # TODO: ? Move this into a function and use `set -- "$@" ...` to manage optional parameters # Configure mtu, hardware address and alias if defined ${MOCK} ip link set up dev "$IFACE" ${IF_MTU:+mtu "$IF_MTU"} ${IF_HWADDRESS:+address "$IF_HWADDRESS"} ${IF_ALIAS:+alias "$IF_ALIAS"} ;; down) # Don't complain about a nonexistent interface when downing it # NOTE: Early negation is important so this condition is ignored during tests if ! ${MOCK} [ -d /sys/class/net/"$IFACE" ]; then exit 0 fi ${MOCK} ip link set down dev "$IFACE" ;; destroy) # Don't complain about a nonexistent interface when destroying it # NOTE: Early negation is important so this condition is ignored during tests if ! ${MOCK} [ -d /sys/class/net/"$IFACE" ]; then exit 0 fi if [ "$IF_LINK_TYPE" = 'dummy' ] || [ "$IF_LINK_TYPE" = 'veth' ] || is_vlan; then ${MOCK} ip link del "$IFACE" fi ;; esac #!/bin/sh [ -z "${VERBOSE}" ] || set -x [ -z "${IF_METRIC}" ] && IF_METRIC="1" [ -n "${IF_VRF_TABLE}" ] && VRF_TABLE="table ${IF_VRF_TABLE}" [ -n "${IF_VRF_MEMBER}" ] && VRF_TABLE="vrf ${IF_VRF_MEMBER}" [ -n "${IF_METRIC}" ] && METRIC="metric ${IF_METRIC}" addr_family() { if [ "$1" != "${1#*[0-9].[0-9]}" ]; then echo "-4" elif [ "$1" != "${1#*:[0-9a-fA-F]}" ]; then echo "-6" else exit 1 fi } configure_addresses() { for addr in ${IF_ADDRESSES}; do addrfam=$(addr_family ${addr}) if [ "${IF_POINT_TO_POINT}" -a "${addrfam}" = "-4" ]; then PEER="peer ${IF_POINT_TO_POINT}" else PEER="" fi ${MOCK} ip "${addrfam}" addr add "${addr}" ${PEER} dev "${IFACE}" done } configure_gateways() { for gw in ${IF_GATEWAYS}; do addrfam=$(addr_family ${gw}) ${MOCK} ip "${addrfam}" route add default via "${gw}" ${VRF_TABLE} ${METRIC} dev "${IFACE}" onlink done } flush() { cmd="addr" arg="dev ${IFACE}" ${MOCK} ip ${cmd} flush ${arg} } case "$PHASE" in up) configure_addresses add configure_gateways add ;; down) flush ;; *) exit 0 ;; esac #!/sbin/openrc-run # Copyright (c) 2017 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. supervisor=supervise-daemon description="starts an openrc session for an user" user="${RC_SVCNAME#*.}" command="/usr/libexec/rc/bin/openrc-user" command_args="$user" notify="fd:3" # If it's rapidly failing, usually due to XDG_RUNTIME_DIR being unset, # we should just quit fast. respawn_max=3 respawn_period=5 respawn_delay=500ms start_pre() { if [ "$user" = "$RC_SVCNAME" ]; then eerror "${RC_SVCNAME} cannot be started directly. You must create" eerror "symbolic links to it for the users you want to start" return 1 fi } ELF>9@1@8 @@@@lll  p,p<p<,<<00HHH$$Std00PtdD!D!D!<<QtdRtdp,p<p< GNU GNUg؟&I T[JTC/lib/ld-musl-x86_64.so.1*@*+,9X"3M |( 8Se.B u l`F?^ "t <z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainmallocvsnprintfreallocstderrfputsfree__stack_chk_failclose__errno_locationstrerrorfprintf_exitfopengetlinestrcmppipe2sigfillsetsigprocmaskforkdup2setgidsetuidexecvpwritereadwaitpidelogsetenvgetpwnamstrdupinitgroupssigemptysetsigaddsetsigwaitlibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX>>>>>>>>> ? ? ? ? ?(?0?8?@?H?P?X?`?h?p?x??????? ?!?"?#?$?%?&?'?(?)<+>p<PX5.%.@%.hAUATUSH=HdH,%(H$HH5l.t HUH5lH}.HHu"HUH5j1/^Hh(D`DhHt0H.HHuH=%H5+..H3H=0.H3H=.Hs H=.Hs(H=-sH;-HH|$1H5H\$H=bH-H߻U.HDDt]H|$-1Ht$).H|$,H|$-Ht$ H|$-1HDD|H-H$dH+%(t,HĨ[]A\A]H1HH5B*H7HWLzE1H H=f.@H=-H-H9tH,Ht H=Y-H5R-H)HH?HHHtHE,HtfD=)-uGUH=+Ht H=,+gH=+t H=+,]@ff.H=x,t&UH5,H=WH^,]8+AWAVAUIATIUSHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH<%(H|$*HH$HLHH$D$0HD$HD$ HD$*=~ghHHc*HHt:$HLHcH$D$0HHD$HD$ HD$C*H5'H=K *!9r(H=G H5'*H +*I]HT$dH+%(t)H[]A\A]A^A_Åx%*Ë*ySH= 1Qi**y29*8q)H="'H5 H1)%*ZAWH, A1AVAAUATUSHXdH,%(H$HHHD$0H Ht$(uH HD$81H\$H5 HD$@H= u)1HHT$ItdLHH|$)H~/HT$| tH|$?#tHA)uADHuE1H|$)HJ EtHH5R H1 Ll$HHD$ H|$ IDLl$((<L$H|$H(LHt$H)x(Åy1L)'xHAuAtD(y+D(xL1(Ht$(Hk(-(|$$Ht$ D$ ' (|$$V(|$ Ht$D$$'HŅt11&1L"(uD\$''|$ HŋD$ |$$D$ LE'y$}a&H5XH12'1)1Ht$'&u}tD$|$H$HdH+%(t4&HX[]A\A]A^A_PXout of memory xasprintf: unable to format a buffer /dev/nullFailed to open /dev/null: %s/usr/libexec/rc/sh/openrc-user.sh start/usr/libexec/rc/sh/openrc-user.sh stop/bin/sh-c/etc/shells-%sdo_exec: %sopenrc-userEINFO_LOGInvalid usage. %s Invalid username %s.USERLOGNAMEHOMESHELLopenrc-user.%s;8T@A|:zRx $p FJ w?;*3$"HDBBB E(D0A8Gn8A0A(B BBB ^YCH>XBNE B(A0A8G-8A0A(B BBB8 BGA A(P(C ABBP  p<x<o  >   o$ #%<&@openrc-user.debugpv.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C 8KS ]B g qb w00}2 AD!D!<!!Dp<p,x<x,<,<,>.`@0  @ 0P  0$0ELF>@0@8 @@@@pppX X    -==8-==00HHH$$Std00Ptd"""QtdRtd-== GNU GNUCPEdfl/lib/ld-musl-x86_64.so.1 ! !"#$%&'(U{!w ν4byn2\4biC"'R ) ~ xy!j 8 / pL b" Y9  >' ^ x e _init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infogetpidcallocsprintfpsx_load_syscallspsx_syscall3psx_syscall6sched_yieldatexitpthread_atforkfree__psx_syscall__errno_locationstderrfprintfkillatoifputs__stack_chk_failpsx_set_sensitivity__wrap_pthread_create__real_pthread_createfopenreallocperrorfclosefreadstrlen__execable_dl_loaderlibc.musl-x86_64.so.1libpsx.so.2>>>>??$??& ?(?0? 8? @? H? P? X?`?h?p?#x??'???????????)????=PXH=/H/H9tH6/Ht H=/H5/H)HH?HHHtH.HtfD=/uGUH=~.Ht H=b/l.gH=.t H=.Y/]@ff.H=/t&UH5N/H=H.]8+S-H=e/HcHS/Hu'-H?/HHH51*.1[-//1/H-HHO.HHHHH H1H1HH1S.t$.=.u~I.!gHc>- .H.H.-H=PH.f-H=11u-S.[1A.S17.-).u[R6=.tH=f..^-H=g.Q-H=-D-XUSR9--t-X[]gAWAVAUATUSHH $HH$H$H$H$H$H$L$L$dL<%(L$E1H$H$D$pHD$xv',HII1LD$IHT$L $ g(L $HT$L5,LD$u1E1H,H,$L%,u E1L=, H,uE1L-,E1ZL-,tNt IDE11H-,LLL,1Ly,ARL x,U*A[]H%E1HG,LLDb,L1_*HHu1*AHD$8D$HHc ,H=),1H󪿺)1HD$P|$|$,1H=~+M~*D$u6Hk*H5 HM+H81)=4+ )1t$(t$$t$1H$q)HD$@HE1J$HT$nH9s HT$pH9rHT$nH9s HHH9s fJ$fD$N)HcHH9l$PvHHD$H+Ll$L#-*IH$II}H9HHc*HD$0MH|$0H3D$LoLuHH|$XGH|$X G=*HcHH*(H $1Ht*IH;t$0}?L M9|.LQLL!HMTHQITHQM ITHH eH<$ )HD$L!HH *IIEHIm)p)1'lD$(M}I}tD$$ 1I9] D$,D$NIL;d$@|$j(|$$tM(1ɉL$|$tD$MOD$(1H-(")(}tue|$, =(H'H= L L'=(L (L(H (Ht(t"PH5L1u`uXuP&H H5L1&LH=E1K'HcExL9~7LHHL98uHHH9tHPH5L1p&I1HH5LV&='t=' D&Nt$HHD$801H$dH+%(t%HH[]A\A]A^A_HAA1jjjjj &H8P1jjjjjjjt$H&HHSv&&1[%N%AUATAUHSAUIgH&D9c u{ltHt}u HcEH;t6gIHCpH@ Ht LHDЃ{$HgHKHHS@Hs8H{0{hu 1$HLKXLCP1ARs`$A[HA\1p$Ig LLgH#1HIlIL{ltgKZ[]A\A]zX[]A\A]ø@AU1AATUH-&&SH(dL$%(Ld$L%l%AD$ I\$pHHcHHL$HHTHT$1#11At$ AH #HTH9%HC H9s HK@H9s H9H %@H9s@u(z%C (%@H9s@uH9sH9rX%CH]%HKHCHH{u H(HCAt$ A1Hڿ 1"11AHT$"HD$dH+%(t"H([]A\A]H#H9"u#PH'#H=>H0O##%V"UH5IH=EHAWAVAUATSHH"HHE1A E1IvLp"IHu.H=  "Hz"Mt L"LJ< HپL)*"IM9sHCD%3"KD% MMwL9r 8HǾE1E1Hc!HHuH=i!LgDM9sK|5JeDtYPhzRx MYAK8 L`tA A[JAG$3)ACC [AAt4^BBB B(A0A8G L"\"H"H"A""O"C"C"J"8D0A(B BBB$x'DP B(B0B8B@J, ADB B(B0B8B@BHDPJ /AmT BBD D(B08C@H8E0O (A ABBF A(A ABB\8p}BOF H(DPS(A ABB9Qb "uAQ Q  ==o   ` o$@ #%=@GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.comment 0HH$1pp9oC KS `]@ @ gm sy2 """"=-=-=->.8@0 @0  00$0# List of /tmp directories we should clean up clean_tmp_dirs="/tmp" # Should we wipe the tmp paths completely or just selectively remove known # locks / files / etc... ? wipe_tmp="NO" # Write the initial dmesg log into /var/log/dmesg after boot # This may be useful if you need the kernel boot log afterwards log_dmesg="YES" # Save the previous dmesg log to dmesg.old # This may be useful if you need to compare the current boot to the # previous one. #previous_dmesg=no # The consolefont service is not activated by default. If you need to # use it, you should run "rc-update add consolefont boot" as root. # # consolefont specifies the default font that you'd like Linux to use on the # console. You can find a good selection of fonts in /usr/share/consolefonts; consolefont="default8x16.psf.gz" # consoletranslation is the charset map file to use. Leave commented to use # the default one. Have a look in /usr/share/consoletrans for a selection of # map files you can use. #consoletranslation="8859-1_to_uni.trans" # OpenRC will attempt each of the following in succession to mount /dev. # # 1. If there is an entry for /dev in fstab, it will be used. # 2. If devtmpfs is defined in the kernel, it will be used. # 3. If tmpfs is defined in the kernel, it will be used. # # Set this to yes if you do not want OpenRC to attempt to mount /dev. # skip_mount_dev="NO" # Sets the level at which logging of messages is done to the # console. See dmesg(1) for more info. dmesg_level="1" # Pass any arguments to fsck. # By default we preen. # Linux systems also force -C0 and -T. # If fsck_args is not specified then Linux systems also use -A # (and -R if / is rw) #fsck_args="-p" # We can also specify the passno in /etc/fstab to check # If you multiplex fsck (ie ln -s fsck /etc/init.d/fsck.late) then you can # do an fsck outside of the normal scope, say for /home. # Here are some examples:- #fsck_passno="=1 =2" #fsck_passno=">1" #fsck_passno="<2" # If passno is not enough granularity, you can also specify mountpoints to # check. This should NOT be used for the default non-multiplexed fsck, or your # system might not be checked. Additionally, it is mutually exclusive with # the fsck_passno setting. #fsck_mnt="" #fsck_mnt="/home" # Most modern fs's don't require a full fsck on boot, but for those that do # it may be advisable to skip this when running on battery. # WARNING: Do not turn this off if you have any JFS partitions. fsck_on_battery="YES" # fsck_shutdown causes fsck to trigger during shutdown as well as startup. # The end result of this is that if any periodic non-root filesystem checks are # scheduled, under normal circumstances the actual check will happen during # shutdown rather than at next boot. # This is useful when periodic filesystem checks are causing undesirable # delays at startup, but such delays at shutdown are acceptable. fsck_shutdown="NO" # fsck_abort_on_errors can be set to no to cause fsck to not abort on # errors. # This is useful when periodic filesystem checks are causing undesirable # aborts. fsck_abort_on_errors="YES" # Set CLOCK to "UTC" if your Hardware Clock is set to UTC (also known as # Greenwich Mean Time). If that clock is set to the local time, then # set CLOCK to "local". Note that if you dual boot with Windows, then # you should set it to "local". clock="UTC" # If you want the hwclock script to set the system time (software clock) # to match the current hardware clock during bootup, leave this # commented out. # However, you can set this to "NO" if you are running a modern kernel # and using NTP to synchronize your system clock. #clock_hctosys="YES" # If you do not want to set the hardware clock to the current system # time (software clock) during shutdown, set this to no. #clock_systohc="YES" # If you wish to pass any other arguments to hwclock during bootup, # you may do so here. Alpha users may wish to use --arc or --srm here. clock_args="" # If you wish to pass any options to kill_all during shutdown, # you should do so here. # # The setting is called killall5_opts because the options here are meant # to be identical to those you could pass to killall5. killall5_opts="" # If you need to delay after each kill attempt during shutdown, set the amount # of time you need to delay here. This gets passed directly to sleep in # the shell. # kill_delay=0 # Stop the unmounting of certain points. # This could be useful for some NFS related work. #no_umounts="/dir1:/var/dir2" # # Mark certain mount points as critical. # This contains a space separated list of mount points which should be # considered critical. If one of these mount points cannot be mounted, # localmount will fail. # By default, this is empty. #critical_mounts="/home /var" # Enable loadable module support when running from RAM # when OverlayFS support is available in the kernel. # 0 means default tmpfs size (50% of physical RAM). # for more information please see kernel documention at: # https://www.kernel.org/doc/Documentation/filesystems/tmpfs.txt overlay_size=0 # Linux users can define a list of modules for a specific kernel version, # a released kernel version, a main kernel version or all kernel versions. # The most specific versioned variable will take precedence. # FreeBSD users can only use the modules="foo bar" setting. #modules_2_6_23_gentoo_r5="ieee1394 ohci1394" #modules_2_6_23="tun ieee1394" #modules_2_6="tun" #modules_2="ipv6" #modules="ohci1394" # Linux users can give the modules some arguments if needed, per version # if necessary. # Again, the most specific versioned variable will take precedence. # This is not supported on FreeBSD. #module_ieee1394_args="debug" #module_ieee1394_args_2_6_23_gentoo_r5="debug2" #module_ieee1394_args_2_6_23="debug3" #module_ieee1394_args_2_6="debug4" #module_ieee1394_args_2="debug5" # You should consult your kernel documentation and configuration # for a list of modules and their options. # As far as we are aware, there are no modern linux tools or use cases # which require /etc/mtab to be a separate file from /proc/self/mounts, # so this setting should be commented out. # If it is set to yes, please comment it out and run this command: # # rc-service mtab restart # In the future, the mtab service will be removed since we are not aware # of any need to manipulate /etc/mtab as a separate file from # /proc/self/mounts. # If you have a technical reason we should keep this support, please # open an issue at https://github.com/openrc/openrc/issues and let us # know about your situation. # This setting controls whether /etc/mtab is a file or symbolic link. # mtab_is_file=no # The interfaces setting controls which interfaces the net-online # service considers in deciding whether the network is active. The # default is all interfaces that support ethernet. #interfaces="" # This setting controls whether a ping test is included in the test for # network connectivity after all interfaces are active. #include_ping_test=no # This setting is the host to attempt to ping if the above is yes. # The default is google.com. #ping_test_host=some.host.name # The timeout setting controls how long the net-online service waits # for the network to be configured. # The default is 120 seconds. # if this is set to 0, the wait is infinite. #timeout=120 # You will need to set the dependencies in the netmount script to match # the network configuration tools you are using. This should be done in # this file by following the examples below, and not by changing the # service script itself. # # Each of these examples is meant to be used separately. So, for # example, do not set rc_need to something like "net.eth0 dhcpcd". # # If you are using newnet and configuring your interfaces with static # addresses with the network script, you should use this setting. # #rc_need="network" # # If you are using oldnet, you must list the specific net.* services you # need. # # This example assumes all of your netmounts can be reached on # eth0. # #rc_need="net.eth0" # # This example assumes some of your netmounts are on eth1 and some # are on eth2. # #rc_need="net.eth1 net.eth2" # # If you are using a dynamic network management tool like # NetworkManager, dhcpcd in standalone mode, wicd, badvpn-ncd, etc, to # manage the network interfaces with the routes to your netmounts, you # should list that tool. # #rc_need="NetworkManager" #rc_need="dhcpcd" #rc_need="wicd" # # The default setting is designed to be backward compatible with our # current setup, but you are highly discouraged from using this. In # other words, please change it to be more suited to your system. # rc_need="net" # # Mark certain mount points as critical. # This contains aspace separated list of mount points which should be # considered critical. If one of these mount points cannot be mounted, # netmount will fail. # By default, this is empty. #critical_mounts="/home /var" # The convention in this file is to show the default settings commented out. # # Sometimes you want to have urandom start before "localmount" (say for crypt # swap), so you will need to customize this behavior. If you have /var on a # separate partition, make sure paths under /var are adjusted to point to # locations on your root device. # # Set skip_credit to yes or true if you do not want seed files to actually # credit the random number generator. For example, you should set this if you # plan to replicate the file system image without removing the contents of # ${seed_dir}. # # seed_dir=/var/lib/seedrng # skip_credit=no # Do not use this file to define the default route. # In all settings, multiple routes should be separated using ; or new lines. # Define static routes on Linux using iproute2. See ip(8) for syntax. #staticiproute="192.168.0.0/24 via 10.73.1.1; 192.168.1.0/24 via 10.73.1.1" # Or define static routes on Linux using route (legacy). See route(8) for syntax. #staticroute="net 192.168.0.0 netmask 255.255.255.0 gw 10.73.1.1 #net 192.168.1.0 netmask 255.255.255.0 gw 10.73.1.1" # If you are only using local swap partitions, you should not change # this file. Otherwise, you need to uncomment the below rc_before line # followed by the appropriate rc_need line. #rc_before="!localmount" # # If you are using swap files stored on local file systems, uncomment # this line. #rc_need="localmount" # # If you are using swap files stored on network file systems or swap # partitions stored on network block devices such as iSCSI, uncomment # this line. #rc_need="netmount" # This is the location of the reference file swclock uses to set the # system date and time. # This is the default path. If you are using it, you do not need to # uncomment it. If you are using the default and have /var on its own # file system, you need to add the appropriate rc_after setting. # swclock_file=/var/lib/misc/openrc-shutdowntime #!/sbin/openrc-run # Copyright (c) 2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Register misc binary format handlers" depend() { after clock procfs use modules devfs keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -vserver -wsl } start() { ebegin "Loading custom binary format handlers" "$RC_LIBEXECDIR"/sh/binfmt.sh eend $? return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. depend() { need localmount before logger after clock root sysctl keyword -prefix -timeout -wsl } : "${wipe_tmp:=${WIPE_TMP:-no}}" : "${log_dmesg:=${LOG_DMESG:-yes}}" cleanup_tmp_dir() { local dir="$1" if ! [ -d "$dir" ]; then mkdir -p "$dir" || return $? fi checkpath -W "$dir" || return 1 chmod a+rwt "$dir" 2> /dev/null cd "$dir" || return 1 if yesno $wipe_tmp; then ebegin "Wiping $dir directory" # Faster than raw find if ! rm -rf -- [!ajlq\.]* 2>/dev/null ; then # Blah, too many files find . -maxdepth 1 -name '[!ajlq\.]*' -exec rm -rf -- {} + fi # pam_mktemp creates a .private directory within which # each user gets a private directory with immutable # bit set; remove the immutable bit before trying to # remove it. [ -d /tmp/.private ] && chattr -R -a /tmp/.private 2> /dev/null # Prune the paths that are left find . -maxdepth 1 \ ! -name . \ ! -name lost+found \ ! -name quota.user \ ! -name aquota.user \ ! -name quota.group \ ! -name aquota.group \ ! -name journal \ -exec rm -rf -- {} + eend 0 else ebegin "Cleaning $dir directory" rm -rf -- .X*-lock esrv* kio* \ jpsock.* .fam* .esd* \ orbit-* ssh-* ksocket-* \ .*-unix eend 0 fi } cleanup_var_run_dir() { ebegin "Cleaning /var/run" for x in $(find /var/run ! -type d ! -name utmp \ ! -name random-seed ! -name dev.db \ ! -name ld-elf.so.hints ! -name ld-elf32.so.hints \ ! -name ld.so.hints); do # Clean stale sockets if [ -S "$x" ]; then if command -v fuser >/dev/null 2>&1; then fuser "$x" >/dev/null 2>&1 || rm -- "$x" else rm -- "$x" fi fi [ ! -f "$x" ] && continue # Do not remove pidfiles of already running daemons case "$x" in *.pid) start-stop-daemon --test --quiet \ --stop --pidfile "$x" && continue ;; esac rm -f -- "$x" done eend 0 } mkutmp() { : >"$1" # Not all systems have the utmp group chgrp utmp "$1" 2>/dev/null chmod 0664 "$1" } migrate_to_run() { src="$1" dst="$2" if [ -L $src -a "$(readlink -f $src)" != $dst ]; then ewarn "$src does not point to $dst." ewarn "Setting $src to point to $dst." rm $src elif [ ! -L $src -a -d $src ]; then ebegin "Migrating $src to $dst" if ! rmdir $src 2>/dev/null; then cp -a $src/* $dst/ rm -rf $src fi eend $? fi # If $src doesn't exist at all, just run this if [ ! -e $src ]; then ln -s $dst $src fi } clean_run() { [ "$RC_SYS" = VSERVER -o "$RC_SYS" = LXC ] && return 0 local dir # If / is still read-only due to a problem, this will fail! if ! checkpath -W /; then ewarn "/ is not writable; unable to clean up underlying /run" return 1 fi if ! checkpath -W /tmp; then ewarn "/tmp is not writable; unable to clean up underlying /run" return 1 fi # Now we know that we can modify /tmp and / # if mktemp -d fails, it returns an EMPTY string # STDERR: mktemp: failed to create directory via template ‘/tmp/tmp.XXXXXXXXXX’: Read-only file system # STDOUT: '' rc=0 dir=$(mktemp -d) if [ -n "$dir" -a -d $dir -a -w $dir ]; then mount --bind / $dir && rm -rf $dir/run/* || rc=1 umount $dir && rmdir $dir else rc=1 fi if [ $rc -ne 0 ]; then ewarn "Could not clean up underlying /run on /" return 1 fi } start() { # Remove any added console dirs if checkpath -W "$RC_LIBEXECDIR"; then rm -rf "$RC_LIBEXECDIR"/console/* fi local logw=false runw=false extra= # Ensure that our basic dirs exist if [ "$RC_UNAME" = Linux ]; then # Satisfy Linux FHS extra=/var/lib/misc if [ ! -d /run ]; then extra="/var/run $extra" fi else extra=/var/run fi for x in /var/log /tmp $extra; do if ! [ -d $x ]; then if ! mkdir -p $x; then eend 1 "failed to create needed directory $x" return 1 fi fi done if [ "$RC_UNAME" = Linux -a -d /run ]; then migrate_to_run /var/lock /run/lock migrate_to_run /var/run /run clean_run fi if checkpath -W /var/run; then ebegin "Creating user login records" local xtra= [ "$RC_UNAME" = NetBSD ] && xtra=x for x in "" $xtra; do mkutmp /var/run/utmp$x done [ -e /var/log/wtmp ] || mkutmp /var/log/wtmp eend 0 mountinfo -q -f tmpfs /var/run || cleanup_var_run_dir fi # Clean up /tmp directories local tmp= for tmp in ${clean_tmp_dirs:-${wipe_tmp_dirs-/tmp}}; do mountinfo -q -f tmpfs "$tmp" || cleanup_tmp_dir "$tmp" done if checkpath -W /tmp; then # Make sure our X11 stuff have the correct permissions # Omit the chown as bootmisc is run before network is up # and users may be using lame LDAP auth #139411 rm -rf /tmp/.ICE-unix /tmp/.X11-unix mkdir -p /tmp/.ICE-unix /tmp/.X11-unix chmod 1777 /tmp/.ICE-unix /tmp/.X11-unix if [ -x /sbin/restorecon ]; then restorecon /tmp/.ICE-unix /tmp/.X11-unix fi fi if yesno $log_dmesg; then if $logw || checkpath -W /var/log; then # Create an 'after-boot' dmesg log case "$RC_SYS" in VSERVER|OPENVZ|LXC|SYSTEMD-NSPAWN) ;; *) if yesno ${previous_dmesg:-no} && [ -e /var/log/dmesg ]; then mv /var/log/dmesg /var/log/dmesg.old fi dmesg > /var/log/dmesg chmod 640 /var/log/dmesg ;; esac fi fi return 0 } stop() { # Write a halt record if we're shutting down if [ "$RC_RUNLEVEL" = shutdown ]; then if [ "$RC_UNAME" = Linux ]; then if [ -x /sbin/halt ]; then halt -w else openrc-shutdown -w fi fi if [ "$RC_SYS" = OPENVZ ]; then yesno $RC_REBOOT && printf "" >/reboot fi fi return 0 } # vim: ft=sh #!/sbin/openrc-run # Copyright (c) 2017 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Mount the control groups." : "${cgroup_opts:="nodev,noexec,nosuid"}" depend() { keyword -docker -podman -prefix -systemd-nspawn -vserver -wsl after sysfs } cgroup1_base() { grep -qw cgroup /proc/filesystems || return 0 if ! mountinfo -q /sys/fs/cgroup; then ebegin "Mounting cgroup filesystem" local opts="${cgroup_opts},mode=755,size=${rc_cgroupsize:-10m}" mount -n -t tmpfs -o "${opts}" cgroup_root /sys/fs/cgroup eend $? fi if ! mountinfo -q /sys/fs/cgroup/openrc; then local agent="${RC_LIBEXECDIR}/sh/cgroup-release-agent.sh" mkdir /sys/fs/cgroup/openrc mount -n -t cgroup \ -o none,${cgroup_opts},name=openrc,release_agent="$agent" \ openrc /sys/fs/cgroup/openrc printf 1 > /sys/fs/cgroup/openrc/notify_on_release fi return 0 } cgroup1_controllers() { yesno "${rc_controller_cgroups:-YES}" && [ -e /proc/cgroups ] && grep -qw cgroup /proc/filesystems || return 0 while read -r name _ _ enabled _; do case "${enabled}" in 1) mountinfo -q "/sys/fs/cgroup/${name}" && continue local x for x in $rc_cgroup_controllers; do [ "${name}" = "blkio" ] && [ "${x}" = "io" ] && continue 2 [ "${name}" = "${x}" ] && continue 2 done mkdir "/sys/fs/cgroup/${name}" mount -n -t cgroup -o "${cgroup_opts},${name}" \ "${name}" "/sys/fs/cgroup/${name}" yesno "${rc_cgroup_memory_use_hierarchy:-no}" && [ "${name}" = memory ] && echo 1 > /sys/fs/cgroup/memory/memory.use_hierarchy ;; esac done < /proc/cgroups return 0 } cgroup2_base() { grep -qw cgroup2 /proc/filesystems || return 0 local base base="$(cgroup2_find_path)" mkdir -p "${base}" mount -t cgroup2 cgroup2 -o "${cgroup_opts},nsdelegate" "${base}" 2> /dev/null || mount -t cgroup2 cgroup2 -o "${cgroup_opts}" "${base}" return 0 } cgroup2_controllers() { grep -qw cgroup2 /proc/filesystems || return 0 local active cgroup_path x y cgroup_path="$(cgroup2_find_path)" [ -z "${cgroup_path}" ] && return 0 [ ! -e "${cgroup_path}/cgroup.controllers" ] && return 0 [ ! -e "${cgroup_path}/cgroup.subtree_control" ]&& return 0 read -r active < "${cgroup_path}/cgroup.controllers" for x in ${active}; do case "${rc_cgroup_mode:-unified}" in unified) echo "+${x}" > "${cgroup_path}/cgroup.subtree_control" ;; hybrid) for y in ${rc_cgroup_controllers}; do if [ "$x" = "$y" ]; then echo "+${x}" > "${cgroup_path}/cgroup.subtree_control" fi done ;; esac done return 0 } cgroups_hybrid() { cgroup1_base cgroup2_base cgroup2_controllers cgroup1_controllers return 0 } cgroups_legacy() { cgroup1_base cgroup1_controllers return 0 } cgroups_unified() { cgroup2_base cgroup2_controllers return 0 } mount_cgroups() { case "${rc_cgroup_mode:-unified}" in hybrid) cgroups_hybrid ;; legacy) cgroups_legacy ;; unified) cgroups_unified ;; esac return 0 } restorecon_cgroups() { if [ -x /sbin/restorecon ]; then ebegin "Restoring SELinux contexts in /sys/fs/cgroup" restorecon -rF /sys/fs/cgroup >/dev/null 2>&1 eend $? fi return 0 } start() { # set up kernel support for cgroups if [ -d /sys/fs/cgroup ]; then mount_cgroups restorecon_cgroups fi return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Sets a font for the consoles." depend() { need termencoding after hotplug bootmisc modules keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu -wsl } start() { ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}} consolefont=${consolefont:-${CONSOLEFONT}} consoletranslation=${consoletranslation:-${CONSOLETRANSLATION}} if [ -z "$consolefont" ]; then ebegin "Using the default console font" eend 0 return 0 fi if [ "$ttyn" = 0 ]; then ebegin "Skipping font setup (rc_tty_number == 0)" eend 0 return 0 fi local x= param= sf_param= retval=0 ttydev=/dev/tty # Get additional parameters if [ -n "$consoletranslation" ]; then param="$param -m $consoletranslation" fi # Set the console font ebegin "Setting console font [$consolefont]" [ -d /dev/vc ] && ttydev=/dev/vc/ x=1 while [ $x -le $ttyn ]; do if ! setfont $consolefont $param -C $ttydev$x >/dev/null; then retval=1 break fi : $(( x += 1 )) done eend $retval # Store the font so we can use it ASAP on boot if [ $retval -eq 0 ] && checkpath -W -m 0755 -d "$RC_CACHEDIR" 2>/dev/null; then mkdir -p "$RC_CACHEDIR"/console zcat "/usr/share/consolefonts/$consolefont" \ > "$RC_CACHEDIR"/console/font fi return $retval } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Set up the /dev directory" depend() { provide dev-mount before dev keyword -docker -podman -prefix -systemd-nspawn -vserver -wsl } mount_dev() { local action conf_d_dir devfstype msg mountopts action=--mount conf_d_dir="${RC_SERVICE%/*/*}/conf.d" msg=Mounting # Some devices require exec, https://bugs.gentoo.org/92921 # Users with such requirements can use an fstab entry for /dev mountopts="noexec,nosuid,mode=0755" if yesno ${skip_mount_dev:-no} ; then einfo "/dev will not be mounted due to user request" return 0 fi if mountinfo -q /dev; then action=--remount mountopts="remount,$mountopts" msg=Remounting fi if fstabinfo -q /dev; then ebegin "$msg /dev according to fstab" fstabinfo -q $action /dev eend $? return 0 fi if grep -q devtmpfs /proc/filesystems; then devfstype=devtmpfs mountopts="$mountopts,size=10M" elif grep -q tmpfs /proc/filesystems; then devfstype=tmpfs mountopts="$mountopts,size=10M" fi if [ -n "$devfstype" ]; then ebegin "$msg $devfstype on /dev" mount -n -t $devfstype -o $mountopts dev /dev eend $? else ewarn "This kernel does not have devtmpfs or tmpfs support, and there" ewarn "is no entry for /dev in fstab." ewarn "This means /dev will not be mounted." ewarn "To avoid this message, set CONFIG_DEVTMPFS or CONFIG_TMPFS to y" ewarn "in your kernel configuration or see ${conf_d_dir}/${RC_SVCNAME}" fi return 0 } seed_dev() { # Seed /dev with some things that we know we need if [ "${RC_SYS}" != LXC ]; then # creating /dev/console, /dev/tty and /dev/tty1 to be able to write # to $CONSOLE with/without bootsplash before udevd creates it [ -c /dev/console ] || mknod -m 600 /dev/console c 5 1 [ -c /dev/tty1 ] || mknod -m 620 /dev/tty1 c 4 1 [ -c /dev/tty ] || mknod -m 666 /dev/tty c 5 0 # udevd will dup its stdin/stdout/stderr to /dev/null # and we do not want a file which gets buffered in ram [ -c /dev/null ] || mknod -m 666 /dev/null c 1 3 # so udev can add its start-message to dmesg [ -c /dev/kmsg ] || mknod -m 660 /dev/kmsg c 1 11 fi # extra symbolic links not provided by default [ -e /dev/fd ] || ln -snf /proc/self/fd /dev/fd [ -e /dev/stdin ] || ln -snf /proc/self/fd/0 /dev/stdin [ -e /dev/stdout ] || ln -snf /proc/self/fd/1 /dev/stdout [ -e /dev/stderr ] || ln -snf /proc/self/fd/2 /dev/stderr [ -e /proc/kcore ] && ln -snf /proc/kcore /dev/core # Mount required directories as user may not have them in /etc/fstab for x in \ "mqueue /dev/mqueue 1777 ,nodev mqueue" \ "devpts /dev/pts 0755 ,gid=5,mode=0620 devpts" \ "tmpfs /dev/shm 1777 ,nodev,mode=1777 shm" \ ; do set -- $x grep -Eq "[[:space:]]+$1$" /proc/filesystems || continue mountinfo -q $2 && continue if [ ! -d $2 ]; then mkdir -m $3 -p $2 >/dev/null 2>&1 || \ ewarn "Could not create $2!" fi if [ -d $2 ]; then ebegin "Mounting $2" if ! fstabinfo --mount $2; then mount -n -t $1 -o noexec,nosuid$4 $5 $2 fi eend $? fi done } restorecon_dev() { if [ -x /sbin/restorecon ]; then ebegin "Restoring SELinux contexts in /dev" restorecon -rF /dev >/dev/null 2>&1 eend $? fi return 0 } start() { mount_dev seed_dev restorecon_dev return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Set the dmesg level for a cleaner boot" depend() { before dev modules keyword -docker -podman -lxc -prefix -systemd-nspawn -vserver -wsl } start() { if [ -n "$dmesg_level" ]; then dmesg -n$dmesg_level fi } #!/sbin/openrc-run # The first boot init service # read kernel options init_KOPT() { eval "set -- $(cat /proc/cmdline 2>/dev/null)" for opt; do case "$opt" in ssh_*=*) eval "KOPT_${opt%%=*}='${opt#*=}'" ;; esac done } start() { rm -f /etc/runlevels/*/$RC_SVCNAME init_KOPT local rc=0 ebegin "Starting ${RC_SVCNAME}" if [ -n "$KOPT_ssh_key" ] && [ ! -f "/root/.ssh/authorized_keys" ]; then einfo "Fetching ssh keys" mkdir -pm 700 /root/.ssh checkpath -fm 0600 /root/.ssh/authorized_keys case "$KOPT_ssh_key" in https://*|ftps://*|http://*) wget -q "$KOPT_ssh_key" -O /root/.ssh/authorized_keys rc=$?;; *) echo "$KOPT_ssh_key" > /root/.ssh/authorized_keys;; esac fi eend $rc } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Check and repair filesystems according to /etc/fstab" _IFS=" " depend() { after clock use dev clock modules keyword -docker -podman -jail -lxc -openvz -prefix -systemd-nspawn -timeout -vserver -uml -wsl } _abort() { yesno ${fsck_abort_on_errors:-yes} && rc-abort return 1 } # We should only reboot when first booting _reboot() { if [ "$RC_RUNLEVEL" = "$RC_BOOTLEVEL" ]; then reboot "$@" _abort || return 1 fi } _forcefsck() { [ -e /forcefsck ] || get_bootparam forcefsck } start() { local fsck_opts= p= check_extra= if [ -e /fastboot ]; then ewarn "Skipping fsck due to /fastboot" return 0 fi if _forcefsck; then fsck_opts="$fsck_opts -f" check_extra="(check forced)" elif ! yesno ${fsck_on_battery:-YES} && ! on_ac_power; then ewarn "Skipping fsck due to not being on AC power" return 0 fi if [ -n "$fsck_passno" ]; then check_extra="[passno $fsck_passno] $check_extra" if [ -n "$fsck_mnt" ]; then eerror "Only 1 of fsck_passno and fsck_mnt must be set!" return 1 fi fi ebegin "Checking local filesystems $check_extra" # Append passno mounts for p in $fsck_passno; do local IFS="$_IFS" case "$p" in [0-9]*) p="=$p";; esac set -- "$@" $(fstabinfo --passno "$p") unset IFS done # Append custom mounts for m in $fsck_mnt ; do local IFS="$_IFS" set -- "$@" "$m" unset IFS done if [ "$RC_UNAME" = Linux ]; then local skiptypes skiptypes=$(printf 'no%s,' ${net_fs_list} ${extra_net_fs_list}) [ "${skiptypes}" = "no," ] && skiptypes="" fsck_opts="$fsck_opts -T -t ${skiptypes}noopts=_netdev" if [ -z "$fsck_passno" -a -z "$fsck_mnt" ]; then fsck_args=${fsck_args:--A -p} if echo 2>/dev/null >/.test.$$; then rm -f /.test.$$ fsck_opts="$fsck_opts -R" fi fi fi trap : INT QUIT fsck ${fsck_args:--p} $fsck_opts "$@" case $? in 0) eend 0; return 0;; 1) ewend 1 "Filesystems repaired"; return 0;; 2|3) if [ "$RC_UNAME" = Linux ]; then ewend 1 "Filesystems repaired, but reboot needed" _reboot -f else ewend 1 "Filesystems still have errors;" \ "manual fsck required" _abort fi;; 4) if [ "$RC_UNAME" = Linux ]; then ewend 1 "Filesystem errors left uncorrected, aborting" _abort else ewend 1 "Filesystems repaired, but reboot needed" _reboot fi;; 8) ewend 1 "Operational error"; return 0;; 12) ewend 1 "fsck interrupted";; *) eend 2 "Filesystems couldn't be fixed";; esac _abort || return 1 } stop() { # Fake function so we always shutdown correctly. _abort() { return 0; } _reboot() { return 0; } _forcefsck() { return 1; } yesno $fsck_shutdown && start return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Sets the hostname of the machine." depend() { after clock keyword -docker -podman -lxc -prefix -systemd-nspawn -wsl } start() { local h source if read -r h _ 2> /dev/null < /etc/hostname; then source="/etc/hostname" elif [ -n "${hostname}" ]; then h=${hostname} source="/etc/conf.d/${RC_SVCNAME}" fi if [ -z "$h" ]; then einfo "Using default system hostname" return 0 fi ebegin "Setting hostname to $h from $source" hostname "$h" eend $? "Failed to set the hostname" } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. extra_commands="save show" description="Sets the local clock to UTC or Local Time." description_save="Saves the current time in the BIOS." description_show="Displays the current time in the BIOS." : "${clock_adjfile:=${CLOCK_ADJFILE}}" : "${clock_args:=${CLOCK_OPTS}}" : "${clock_systohc:=${CLOCK_SYSTOHC}}" : "${clock:=${CLOCK:-UTC}}" if [ "$clock" = "UTC" ]; then utc="UTC" utc_cmd="--utc" else utc="Local Time" utc_cmd="--localtime" fi depend() { provide clock want modules if yesno $clock_adjfile; then use root fi keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu -wsl } setupopts() { case "$(uname -m)" in s390*) utc="s390" ;; *) if [ -e /proc/devices ] && \ grep -q " cobd$" /proc/devices then utc="coLinux" fi ;; esac case "$utc" in UTC|Local" "Time);; *) unset utc_cmd;; esac } # hwclock doesn't always return non zero on error _hwclock() { local err="$(hwclock "$@" 2>&1 >/dev/null)" [ -z "$err" ] && return 0 echo "${err}" >&2 return 1 } get_noadjfile() { if ! yesno $clock_adjfile; then # Some implementations don't handle adjustments if LC_ALL=C hwclock --help 2>&1 | grep -q -e "--noadjfile"; then echo --noadjfile fi fi } rtc_exists() { local rtc= for rtc in /dev/rtc /dev/rtc[0-9]*; do [ -e "$rtc" ] && break done [ -e "$rtc" ] } start() { local retval=0 errstr="" modname setupopts if [ -z "$utc_cmd" ]; then ewarn "Not setting clock for $utc system" return 0 fi ebegin "Setting system clock using the hardware clock [$utc]" if [ -e /proc/modules ]; then if ! rtc_exists; then for x in rtc-cmos rtc genrtc; do modprobe -q $x && rtc_exists && modname="$x" && break done [ -n "$modname" ] && ewarn "The $modname module needs to be configured in" \ "${RC_SERVICE%/*/*}/conf.d/modules or built in." fi fi # Always set the kernel's time zone. _hwclock --systz $utc_cmd $(get_noadjfile) $clock_args : $(( retval += $? )) if [ -e /etc/adjtime ] && yesno $clock_adjfile; then _hwclock --adjust $utc_cmd $(get_noadjfile) : $(( retval += $? )) fi if yesno ${clock_hctosys:-YES}; then _hwclock --hctosys $utc_cmd $(get_noadjfile) $clock_args : $(( retval += $? )) fi eend $retval "Failed to set the system clock" return 0 } stop() { # Don't tweak the hardware clock on LiveCD halt. [ -n "$CDBOOT" ] && return 0 yesno ${clock_systohc:-YES} || return 0 local retval=0 errstr="" setupopts [ -z "$utc_cmd" ] && return 0 ebegin "Setting hardware clock using the system clock" "[$utc]" _hwclock --systohc $utc_cmd $(get_noadjfile) $clock_args retval=$? eend $retval "Failed to sync clocks" } save() { clock_systohc=yes stop } show() { setupopts hwclock --show "$utc_cmd" $(get_noadjfile) $clock_args } #!/sbin/openrc-run # Copyright (c) Natanael Copa # This code is licensed under BSD-2-Clause depend() { need sysfs dev before checkfs fsck after modloop keyword -vserver -lxc } # Load hardware drivers start() { # check for boot option "nocoldplug" if get_bootparam noautodetect; then ewarn "Autodetection of hardware disabled from boot cmdline" return 0 fi ebegin "Loading hardware drivers" find /sys/devices -name modalias -type f -print0 2> /dev/null | xargs -0 sort -u \ | xargs modprobe -b -a 2> /dev/null # we run it twice so we detect all devices find /sys/devices -name modalias -type f -print0 2> /dev/null | xargs -0 sort -u \ | xargs modprobe -b -a 2> /dev/null # check if framebuffer drivers got pulled in if [ -e /dev/fb0 ] && ! [ -e /sys/module/fbcon ]; then modprobe -b -q fbcon fi eend 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Kill all processes so we can unmount disks cleanly." depend() { keyword -prefix } start() { ebegin "Terminating remaining processes" kill_all 15 ${killall5_opts} sleep ${kill_delay:-0} eend 0 ebegin "Killing remaining processes" sleep ${kill_delay:-0} kill_all 9 ${killall5_opts} eend 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. conf_d_dir="${RC_SERVICE%/*/*}/conf.d" local_d_dir="${RC_SERVICE%/*/*}/local.d" description="Executes user programs in ${local_d_dir}" depend() { after * keyword -timeout } start() { local file has_errors redirect retval has_errors=0 yesno $rc_verbose || redirect='> /dev/null 2>&1' ebegin "Starting local" eindent for file in "${local_d_dir}"/*.start; do if [ -x "${file}" ]; then vebegin "Executing \"${file}\"" eval "${file}" $redirect retval=$? if [ ${retval} -ne 0 ]; then has_errors=1 fi veend ${retval} "Execution of \"${file}\" failed." fi done eoutdent if command -v local_start >/dev/null 2>&1; then ewarn "\"${conf_d_dir}/local\" should be removed." ewarn "Please move the code from the local_start function" ewarn "to executable scripts with an .start extension" ewarn "in \"${local_d_dir}\"" local_start fi eend ${has_errors} # We have to end with a zero exit code, because a failed execution # of an executable ${local_d_dir}/*.start file shouldn't result in # marking the local service as failed. Otherwise we are unable to # execute any executable ${local_d_dir}/*.stop file, because a failed # marked service cannot be stopped (and the stop function would # actually call the executable ${local_d_dir}/*.stop file(s)). return 0 } stop() { local file has_errors redirect retval has_errors=0 yesno $rc_verbose || redirect='> /dev/null 2>&1' ebegin "Stopping local" eindent for file in "${local_d_dir}"/*.stop; do if [ -x "${file}" ]; then vebegin "Executing \"${file}\"" eval "${file}" $redirect retval=$? if [ ${retval} -ne 0 ]; then has_errors=1 fi veend ${retval} "Execution of \"${file}\" failed." fi done eoutdent if command -v local_stop >/dev/null 2>&1; then ewarn "\"${conf_d_dir}/local\" should be removed." ewarn "Please move the code from the local_stop function" ewarn "to executable scripts with an .stop extension" ewarn "in \"${local_d_dir}\"" local_stop fi eend ${has_errors} # An executable ${local_d_dir}/*.stop file which failed with a # non-zero exit status is not a reason to mark this service # as failed, therefore we have to end with a zero exit code. return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Mounts disks and swap according to /etc/fstab." depend() { need fsck root use lvm modules after clock lvm modules keyword -docker -podman -jail -lxc -prefix -systemd-nspawn -vserver -wsl } start() { [ -x /sbin/mkmntdirs ] && mkmntdirs # Mount local filesystems in /etc/fstab. # The types variable must start with no, and must be a type local critical= types="noproc" x= no_netdev= rc= for x in $net_fs_list $extra_net_fs_list; do types="${types},${x}" done if [ "$RC_UNAME" = Linux ]; then no_netdev="-O no_netdev" if mountinfo -q /usr; then touch "$RC_SVCDIR"/usr_premounted fi fi ebegin "Mounting local filesystems" mount -at "$types" $no_netdev eend $? "Some local filesystem failed to mount" rc=$? if [ -z "$critical_mounts" ]; then rc=0 else for x in ${critical_mounts}; do fstabinfo -q $x || continue if ! mountinfo -q $x; then critical=x eerror "Failed to mount $x" fi done [ -z "$critical" ] && rc=0 fi return $rc } stop() { yesno $RC_GOINGDOWN || return 0 # We never unmount / or /dev or $RC_SVCDIR # Bug 381783 local rc_svcdir=$(printf '%s\n' "$RC_SVCDIR" | sed 's:/lib\(32\|64\)\?/:/lib(32|64)?/:g') local x= no_umounts_r="/|/dev|/dev/.*|/etc|/etc/.*|${rc_svcdir}" no_umounts_r="${no_umounts_r}|/bin|/sbin|/lib(32|64)?|/libexec" # RC_NO_UMOUNTS is an env var that can be set by plugins local IFS="$IFS:" for x in $no_umounts $RC_NO_UMOUNTS; do no_umounts_r="$no_umounts_r|$x" done if [ "$RC_UNAME" = Linux ]; then no_umounts_r="$no_umounts_r|/proc|/proc/.*|/run|/sys|/sys/.*" if [ -e "$rc_svcdir"/usr_premounted ]; then no_umounts_r="$no_umounts_r|/usr" fi fi no_umounts_r="^($no_umounts_r)$" # Flush all pending disk writes now sync . "$RC_LIBEXECDIR"/sh/rc-mount.sh if [ "$RC_UNAME" = Linux ] && [ -d /sys/fs/aufs ] ; then #if / is aufs we remount it noxino during shutdown if mountinfo -q -f '^aufs$' / ; then mount -o remount,noxino,rw / sync fi local aufs_branch aufs_mount_point aufs_si_id aufs_br_id branches for aufs_si_dir in /sys/fs/aufs/si*; do [ -d "${aufs_si_dir}" ] || continue aufs_si_id="si=${aufs_si_dir#/sys/fs/aufs/si_}" aufs_mount_point="$(mountinfo -o ${aufs_si_id})" branches="$aufs_si_dir/br[0-9] $aufs_si_dir/br[0-9][0-9] $aufs_si_dir/br[0-9][0-9][0-9]" for x in $branches; do [ -e "${x}" ] || continue aufs_branch=$(sed 's/=.*//g' $x) eindent if ! mount -o "remount,del:$aufs_branch" "$aufs_mount_point" > /dev/null 2>&1; then ewarn "Failed to remove branch $aufs_branch from aufs" \ "$aufs_mount_point" fi eoutdent sync done done fi # Umount loop devices einfo "Unmounting loop devices" eindent do_unmount "umount -d" --skip-point-regex "$no_umounts_r" \ --node-regex "^/dev/loop" eoutdent # Now everything else, except network filesystems as the # network should be down by this point. einfo "Unmounting filesystems" eindent local fs= for x in $net_fs_list $extra_net_fs_list; do fs="$fs${fs:+|}$x" done [ -n "$fs" ] && fs="^($fs)$" do_unmount umount --skip-point-regex "$no_umounts_r" \ "${fs:+--skip-fstype-regex}" $fs --nonetdev eoutdent return 0 } #!/sbin/openrc-run # Copyright (c) 2013-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Configures the loopback interface." depend() { after clock keyword -jail -prefix -systemd-nspawn -vserver } start() { if [ "$RC_UNAME" = Linux ]; then ebegin "Bringing up network interface lo" if command -v ip > /dev/null 2>&1; then ip addr add 127.0.0.1/8 dev lo brd + ip link set lo up else ifconfig lo 127.0.0.1 netmask 255.0.0.0 fi else ebegin "Bringing up network interface lo0" ifconfig lo0 127.0.0.1 netmask 255.0.0.0 fi eend $? } #!/sbin/openrc-run # Copyright (c) Natanael Copa # This code is licensed under BSD-2-Clause description="Generate machine-id if needed" depend() { need root dev } start() { if [ -s /etc/machine-id ] ; then return 0 fi ebegin "Generating machine-id" dd if=/dev/urandom status=none bs=16 count=1 \ | md5sum | cut -d' ' -f1 > /etc/machine-id eend $? } #!/sbin/openrc-run # Copyright (c) Natanael Copa # This code is licensed under BSD-2-Clause # script that will mount image with modules depend() { after dev-mount before checkfs fsck hwdrivers modules hwclock dev sysfs keyword -vserver -lxc } # read kernel options init_KOPT() { for opt in $(cat /proc/cmdline 2>/dev/null); do case "$opt" in modloop=*|modloop_verify=*) eval "KOPT_${opt%%=*}='${opt#*=}'" ;; esac done } mountdirs() { awk '$2 !~ /^\/(sys|proc|dev|run)/ && $2 != "/" {print $2}' /proc/mounts } find_modloop() { local dir="$1" local kver=$(uname -r) local oifs="$IFS" IFS=$'\n' set -- $(blkid "$dir"/boot/* "$dir"/*) IFS="$oifs" for line; do img=${line%%:*} verify_modloop "$img" || eerror "Failed to verify signature of $img!" mount "$img" -o loop,ro /.modloop || continue if [ -d /.modloop/modules/$kver ]; then return 0 fi umount /.modloop done return 1 } verify_modloop() { local modloop=$1 key= if ! yesno "${KOPT_modloop_verify:=yes}"; then return 0 fi for key in /etc/apk/keys/*.pub; do local sig=/var/cache/misc/${modloop##*/}.SIGN.RSA.${key##*/} if [ -f "$sig" ]; then if ! command -v openssl > /dev/null; then ewarn "Missing openssl. Modloop verification disabled!" return 0 fi einfo "Verifying modloop" openssl dgst -sha1 -verify "$key" -signature "$sig" "$modloop" \ >/dev/null 2>&1 || return 1 fi done } find_backing_file() { local dir="$1" local dev=$(df -P "$dir" | tail -1 | awk '{print $1}') cat /sys/block/${dev#/dev/}/loop/backing_file 2>/dev/null } start() { local modloop= mount_opts= modloop_dldir="/lib" init_KOPT case "$KOPT_modloop" in none) return 0;; http://*|https://*|ftp://*) modloop=$modloop_dldir/${KOPT_modloop##*/} if [ ! -f "$modloop" ]; then mkdir -p "$modloop_dldir" wget -P "$modloop_dldir" "$KOPT_modloop" || eend 1 fi ;; *) for dir in $(mountdirs); do if [ -f "$dir"/$KOPT_modloop ]; then modloop="$dir/${KOPT_modloop##/}" alpine_mnt="$dir" break fi done ;; esac ebegin "Mounting modloop $modloop" mkdir -p /.modloop if [ -n "$modloop" ]; then verify_modloop "$modloop" || eerror "Failed to verify signature of $img!" mount -o loop,ro $modloop /.modloop eend $? || return 1 else for dir in $(mountdirs); do if find_modloop "$dir"; then alpine_mnt="$dir" break fi done if [ -d /.modloop/modules/$(uname -r) ]; then eend 0 else eend 1 || return 1 fi fi #use overlayfs if available and configured if grep -q -w "overlay$" /proc/filesystems && [ ! -z ${unionfs_size+x} ]; then ewarn "Use of unionfs_size is deprecated use overlay_size instead" overlay_size="$unionfs_size" fi if grep -q -w "overlay$" /proc/filesystems && [ -n "$overlay_size" ]; then ebegin "OverlayFS detected, mounting modloop rw" [ "$overlay_size" != 0 ] && mount_ops="-o size=$overlay_size" mkdir -p /.modoverlayfs /lib/modules mount -t tmpfs $mount_ops tmpfs /.modoverlayfs mkdir -p /.modoverlayfs/modules /.modoverlayfs/work mount -t overlay -o upperdir=/.modoverlayfs/modules,lowerdir=/lib/modules:/.modloop/modules,workdir=/.modoverlayfs/work overlay /lib/modules depmod -A eend $? || return 1 else rm -rf /lib/modules && ln -sf /.modloop/modules /lib/ fi # copy firmware if there are any if [ -d $alpine_mnt/firmware ]; then ebegin "Copying firmware from $alpine_mnt/firmware" cp -R -a $alpine_mnt/firmware /lib/ eend $? elif [ -d /lib/modules/firmware ]; then rmdir /lib/firmware 2>/dev/null \ && ln -s /lib/modules/firmware /lib/ fi return 0 } stop() { local ret=0 local mnt; for mnt in /lib/modules /.modoverlayfs /.modloop; do if mountinfo --quiet "$mnt"; then ebegin "Unmounting $mnt" umount -d "$mnt" || ret=1 fi done eend $ret || return 1 } #!/sbin/openrc-run # Copyright (c) Natanael Copa # This code is licensed under BSD-2-Clause description="Loads a user defined list of kernel modules." depend() { before hwclock hwdrivers keyword -openvz -prefix -vserver -lxc } start() { yesno $rc_verbose && verbose=yes ebegin "Loading modules" eindent for f in /lib/modules-load.d/*.conf \ /usr/lib/modules-load.d/*.conf; do if ! [ -f "$f" ]; then continue fi if [ -f /etc/modules-load.d/"${f##*/}" ]; then veinfo "Ignoring $f due to /etc/modules-load.d/${f##*/}" continue fi if [ -f /run/modules-load.d/"${f##*/}" ]; then veinfo "Ignoring $f due to /run/modules-load.d/${f##*/}" continue fi veinfo "Processing $f" sed -e 's/\#.*//g' -e '/^[[:space:]]*$/d' < "$f" \ | while read module args; do modprobe -q $module $args done done if [ -f /etc/modules ]; then veinfo "Processing /etc/modules" sed -e 's/\#.*//g' -e '/^[[:space:]]*$/d' < /etc/modules \ | while read module args; do modprobe -q $module $args done fi for f in /etc/modules-load.d/*.conf; do if [ ! -f "$f" ]; then continue fi if [ -f /run/modules-load.d/"${f##*/}" ]; then veinfo "Ignoring $f due to /run/modules-load.d/${f##*/}" continue fi veinfo "Processing $f" sed -e 's/\#.*//g' -e '/^[[:space:]]*$/d' < "$f" \ | while read module args; do modprobe -q $module $args done done for f in /run/modules-load.d/*.conf; do if [ ! -f "$f" ]; then continue fi veinfo "Processing $f" sed -e 's/\#.*//g' -e '/^[[:space:]]*$/d' < "$f" \ | while read module args; do modprobe -q $module $args done done eoutdent eend $? } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Re-mount filesystems read-only for a clean reboot." depend() { after killprocs savecache keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -vserver -wsl } start() { local ret=0 # Flush all pending disk writes now sync ebegin "Remounting remaining filesystems read-only" # We need the do_unmount function . "$RC_LIBEXECDIR"/sh/rc-mount.sh eindent # Bug 381783 local rc_svcdir=$(echo $RC_SVCDIR | sed 's:/lib\(32\|64\)\?/:/lib(32|64)?/:g') local m="/dev|/dev/.*|/proc|/proc.*|/sys|/sys/.*|/run|${rc_svcdir}" x= fs= m="$m|/bin|/sbin|/lib(32|64)?|/libexec" if [ -e "$rc_svcdir"/usr_premounted ]; then m="$m|/usr" fi # RC_NO_UMOUNTS is an env var that can be set by plugins local IFS="$IFS:" for x in $no_umounts $RC_NO_UMOUNTS; do m="$m|$x" done m="^($m)$" fs= for x in $net_fs_list $extra_net_fs_list; do fs="$fs${fs:+|}$x" done [ -n "$fs" ] && fs="^($fs)$" do_unmount "umount -r" \ --skip-point-regex "$m" \ "${fs:+--skip-fstype-regex}" $fs --nonetdev ret=$? eoutdent eend $ret } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Update /etc/mtab to match what the kernel knows about" depend() { after clock before localmount need root keyword -prefix -systemd-nspawn } start() { local rc=0 ebegin "Updating /etc/mtab" if ! checkpath -W /etc; then rc=1 elif ! yesno ${mtab_is_file:-no}; then [ ! -L /etc/mtab ] && [ -f /etc/mtab ] && ewarn "Removing /etc/mtab file" einfo "Creating mtab symbolic link" ln -snf /proc/self/mounts /etc/mtab else ewarn "The ${RC_SVCNAME} service will be removed in the future." ewarn "Please change the mtab_is_file setting to no and run" ewarn "# rc-service mtab restart" ewarn "to create the mtab symbolic link." [ -L /etc/mtab ] && ewarn "Removing /etc/mtab symbolic link" rm -f /etc/mtab einfo "Creating mtab file" # With / as tmpfs we cannot umount -at tmpfs in localmount as that # makes / readonly and dismounts all tmpfs even if in use which is # not good. Luckily, umount uses /etc/mtab instead of /proc/mounts # which allows this hack to work. grep -v "^[! ]* / tmpfs " /proc/mounts > /etc/mtab # Remove stale backups rm -f /etc/mtab~ /etc/mtab~~ fi eend $rc "/etc is not writable; unable to create /etc/mtab" return 0 } #!/sbin/openrc-run # Copyright (c) 2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Delays until the network is online or a specific timeout" depend() { after modules net need sysfs provide network-online keyword -docker -podman -jail -lxc -openvz -prefix -systemd-nspawn -uml -vserver -wsl } get_interfaces() { local ifname iftype for ifname in /sys/class/net/*; do [ -h "${ifname}" ] || continue read iftype < ${ifname}/type [ "$iftype" = "1" ] && printf "%s " ${ifname##*/} done } start () { local carriers configured dev gateway ifcount infinite local carrier operstate rc ebegin "Checking to see if the network is online" rc=0 interfaces=${interfaces:-$(get_interfaces)} timeout=${timeout:-120} [ $timeout -eq 0 ] && infinite=true || infinite=false while $infinite || [ $timeout -gt 0 ]; do carriers=0 configured=0 ifcount=0 for dev in ${interfaces}; do : $((ifcount += 1)) read carrier 2> /dev/null < /sys/class/net/$dev/carrier || carrier= [ "$carrier" = 1 ] && : $((carriers += 1)) read operstate 2> /dev/null < /sys/class/net/$dev/operstate || operstate= [ -e /sys/class/net/$dev/tun_flags ] && operstate=up [ "$operstate" = up ] && : $((configured += 1)) done [ $configured -eq $ifcount ] && [ $carriers -ge 1 ] && break sleep 1 : $((timeout -= 1)) done ! $infinite && [ $timeout -eq 0 ] && rc=1 include_ping_test=${include_ping_test:-${ping_default_gateway}} if [ -n "${ping_default_gateway}" ]; then ewarn "ping_default_gateway is deprecated, please use include_ping_test" fi if [ $rc -eq 0 ] && yesno ${include_ping_test:-no}; then ping_test_host="${ping_test_host:-google.com}" if [ -n "$ping_test_host" ]; then while $infinite || [ $timeout -gt 0 ]; do ping -n -c 1 $ping_test_host > /dev/null 2>&1 rc=$? [ $rc -eq 0 ] && break sleep 1 : $((timeout -= 1)) done fi fi eend $rc "The network is offline" } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Mounts network shares according to /etc/fstab." depend() { local opts mywant="" for opts in $(fstabinfo -o -t nfs,nfs4); do case $opts in noauto) ;; *) mywant="$mywant nfsclient"; break ;; esac done after root config /etc/fstab want $mywant use afc-client amd openvpn use dns use root keyword -docker -podman -jail -lxc -prefix -systemd-nspawn -vserver -wsl } start() { local x= fs= rc= for x in $net_fs_list $extra_net_fs_list; do fs="$fs${fs:+,}$x" done ebegin "Mounting network filesystems" mount -at $fs rc=$? if [ "$RC_UNAME" = Linux ] && [ $rc = 0 ]; then mount -a -O _netdev rc=$? fi ewend $rc "Could not mount all network filesystems" if [ -z "$critical_mounts" ]; then rc=0 else for x in ${critical_mounts}; do fstabinfo -q $x || continue if ! mountinfo -q $x; then critical=x eerror "Failed to mount $x" fi done [ -z "$critical" ] && rc=0 fi return $rc } stop() { local x= fs= ebegin "Unmounting network filesystems" . "$RC_LIBEXECDIR"/sh/rc-mount.sh for x in $net_fs_list $extra_net_fs_list; do fs="$fs${fs:+,}$x" done if [ -n "$fs" ]; then umount -at $fs || eerror "Failed to simply unmount filesystems" fi eindent fs= for x in $net_fs_list $extra_net_fs_list; do fs="$fs${fs:+|}$x" done [ -n "$fs" ] && fs="^($fs)$" do_unmount umount ${fs:+--fstype-regex} $fs --netdev retval=$? eoutdent if [ "$RC_UNAME" = Linux ] && [ $retval = 0 ]; then umount -a -O _netdev retval=$? fi eend $retval "Failed to unmount network filesystems" } #!/sbin/openrc-run # Copyright (c) Natanael Copa # This code is licensed under BSD-2-Clause # # note that the spoofprotect, syncoockies and ip_forward options are set in # /etc/sysctl.conf : ${cfgfile:="/etc/network/interfaces"} : ${ifquery:="ifquery"} : ${ifstate:="/run/ifstate"} single_iface="${RC_SVCNAME#*.}" if [ "$single_iface" = "$RC_SVCNAME" ]; then single_iface= fi depend() { need localmount hostname want dev-settle after bootmisc hwdrivers modules provide net keyword -jail -prefix -vserver -docker } # find interfaces we want to start find_ifaces() { if [ -n "$single_iface" ]; then echo $single_iface return 0 fi if command -v "$ifquery" >/dev/null; then $ifquery -i "$cfgfile" --list -a return fi # fallback in case ifquery does not exist awk '$1 == "auto" {for (i = 2; i <= NF; i = i + 1) printf("%s ", $i)}' "$cfgfile" } # return the list of interfaces we should try stop find_running_ifaces() { if [ -n "$single_iface" ]; then echo $single_iface return 0 fi if command -v "$ifquery" >/dev/null; then $ifquery --state-file $ifstate -i "$cfgfile" --running return fi # fallback awk -F= '{print $2}' $ifstate } start() { local iface= ret=1 ebegin "Starting networking" eindent for iface in $(find_ifaces); do local r=0 ebegin "$iface" if ! ifup -i "$cfgfile" $iface >/dev/null; then ifdown -i "$cfgfile" $iface >/dev/null 2>&1 r=1 fi # atleast one interface needs to be started for action # to be success eend $r && ret=0 done eoutdent return $ret } stop() { local iface= # Don't stop the network at shutdown. yesno ${keep_network:-YES} && yesno $RC_GOINGDOWN && return 0 ebegin "Stopping networking" eindent for iface in $(find_running_ifaces); do ebegin "$iface" ifdown -i "$cfgfile" -f $iface >/dev/null eend $? done eoutdent return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Turns numlock on for the consoles." ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}} depend() { keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -vserver -wsl } _setleds() { [ -z "$1" ] && return 1 local dev=/dev/tty t= i=1 retval=0 [ -d /dev/vc ] && dev=/dev/vc/ while [ $i -le $ttyn ]; do setleds -D "$1"num < $dev$i || retval=1 : $(( i += 1 )) done return $retval } start() { ebegin "Enabling numlock on ttys" _setleds + eend $? "Failed to enable numlock" } stop() { yesno $RC_GOINGDOWN && return 0 ebegin "Disabling numlock on ttys" _setleds - eend $? "Failed to disable numlock" } #!/sbin/openrc-run # Copyright (c) 2014-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # Can be used on OSs that take care of the clock. description="Provides clock" depend() { provide clock } start() { # This stub function is required to avoid OpenRC warning at boot: # # * The command variable is undefined. # * There is nothing for osclock to start. # * If this is what you intend, please write a start function. # * This will become a failure in a future release. # return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Mounts misc filesystems in /proc." depend() { after clock use devfs want modules keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -vserver -wsl } start() { # Setup Kernel Support for miscellaneous Binary Formats if [ -d /proc/sys/fs/binfmt_misc ] && [ ! -e /proc/sys/fs/binfmt_misc/register ]; then if ! grep -qs binfmt_misc /proc/filesystems && modprobe -q binfmt-misc; then ewarn "The binfmt-misc module needs to be loaded by" \ "the modules service or built in." fi if grep -qs binfmt_misc /proc/filesystems; then ebegin "Mounting misc binary format filesystem" mount -t binfmt_misc -o nodev,noexec,nosuid \ binfmt_misc /proc/sys/fs/binfmt_misc eend $? fi fi return 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Mount the root fs read/write" depend() { after clock need fsck keyword -docker -podman -jail -lxc -openvz -prefix -systemd-nspawn -vserver -wsl } start() { local root_opts=",$(fstabinfo -o /)," case "$root_opts" in *,ro,*) ;; *) # Check if the rootfs isn't already writable. if checkpath -W /; then rm -f /fastboot /forcefsck else ebegin "Remounting root filesystem read/write" case "$RC_UNAME" in Linux) mount -n -o remount,rw / ;; *) mount -u -o rw / ;; esac eend $? "Root filesystem could not be mounted read/write" if [ $? -eq 0 ]; then rm -f /fastboot /forcefsck fi fi ;; esac case "$root_opts" in *,shared,*|*,rshared,*) ebegin "Making root filesystem shared" case "$RC_UNAME" in Linux) mount --make-rshared / ;; *) ewarn "Ignoring 'shared' option for / on non-linux" ;; esac eend $? "Root filesystem could not be made shared" ;; esac ebegin "Remounting filesystems" local mountpoint for mountpoint in $(fstabinfo); do case "${mountpoint}" in /*) # Don't remount swap etc. mountinfo -q "${mountpoint}" && \ fstabinfo --remount "${mountpoint}" ;; esac done eend 0 } #!/sbin/openrc-run # Copyright (c) 2016 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. supervisor=supervise-daemon command=/usr/bin/runsvdir pidfile="/var/run/${RC_SVCNAME}.pid" command_args="-P $RC_SVCDIR/sv 'log: ...........................................................................................................................................................................................................................................................................................................................................................................................................'" start_pre() { checkpath -m 0755 -o root:root -d ${RC_SVCDIR}/sv } #!/sbin/openrc-run # Copyright (c) 2025 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # We currently start the s6 supervision tree as an # openrc service. It's using ssd for now; we may # switch to supervise-daemon later. command="${RC_LIBEXECDIR}/sh/s6-svscanboot.sh" command_args="$RC_SVCDIR" command_background=yes pidfile=/var/run/s6-svscan.pid umask=022 notify=fd:4 depend() { need localmount } _stop_and_crop() { if s6-svok "$1" 2>/dev/null ; then s6-svc -dwD -kx -- "$1" fi rm -rf -- "$1/supervise" "$1/event" } stop_post() { local scandir="$RC_SVCDIR/s6-scan" servicedirs="$RC_SVCDIR/s6-services" rm -rf -- "$scandir" if test -d "$servicedirs" ; then ebegin "Cleaning stray supervised processes" for i in `ls -1 "$servicedirs"` ; do _stop_and_crop "$servicedirs/$i" & if test -d "$servicedirs/$i/log" ; then _stop_and_crop "$servicedirs/$i/log" & fi done wait eend 0 if test -d "$RC_CACHEDIR" ; then ebegin "Storing service directories in cache" rm -rf -- "$RC_CACHEDIR/s6-services" cp -pPR -- "$servicedirs" "$RC_CACHEDIR/" eend $? fi fi } #!/sbin/openrc-run # Copyright (c) 2018 Sony Interactive Entertainment, Inc. # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Save the keymap for use as early as possible" depend() { need termencoding after bootmisc clock keymaps keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu -wsl } start() { # Save the keymapping for use immediately at boot ebegin "Saving key mapping" if checkpath -W "$RC_LIBEXECDIR"; then mkdir -p "$RC_LIBEXECDIR"/console dumpkeys >"$RC_LIBEXECDIR"/console/keymap fi eend $? "Unable to save keymapping" } #!/sbin/openrc-run # Copyright (c) 2018 Sony Interactive Entertainment, Inc. # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Configures terminal encoding." ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}} : "${unicode:=${UNICODE}}" depend() { keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu -wsl use root after bootmisc clock termencoding } start() { ebegin "Saving terminal encoding" # Save the encoding for use immediately at boot if checkpath -W -m 0755 -d "$RC_CACHEDIR" 2>/dev/null; then mkdir -p "$RC_CACHEDIR"/console if yesno ${unicode:-yes}; then echo "" > "$RC_CACHEDIR"/console/unicode else rm -f "$RC_CACHEDIR"/console/unicode fi fi eend 0 } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Saves the caches OpenRC uses to non volatile storage" start() { if [ -e "$RC_SVCDIR"/clock-skewed ]; then ewarn "Clock skew detected!" if ! yesno "${RC_GOINGDOWN}"; then eerror "Not saving deptree cache" return 1 fi fi if ! checkpath -W -m 0755 -d "$RC_CACHEDIR" 2>/dev/null; then eerror "Unable to save dependency cache" if yesno "${RC_GOINGDOWN}"; then return 0 fi return 1 fi ebegin "Saving dependency cache" local rc=0 save= for x in depconfig deptree rc.log shutdowntime init.d conf.d; do [ -e "$RC_SVCDIR/$x" ] && save="$save $RC_SVCDIR/$x" done if [ -n "$save" ]; then cp -pr $save "$RC_CACHEDIR" rc=$? fi eend $rc "Unable to save dependency cache" if yesno "${RC_GOINGDOWN}"; then return 0 fi } #!/sbin/openrc-run # Copyright (c) 2007-2022 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Initializes the random number generator." depend() { after clock need localmount keyword -docker -podman -jail -lxc -openvz -prefix -systemd-nspawn -wsl provide urandom } seedrng_with_options() { set -- [ -n "${seed_dir}" ] && set -- "$@" --seed-dir "${seed_dir}" yesno "${skip_credit}" && set -- "$@" --skip-credit seedrng "$@" } start() { ebegin "Seeding random number generator" seedrng_with_options eend $? "Error seeding random number generator" return 0 } stop() { ebegin "Saving random number generator seed" seedrng_with_options eend $? "Error saving random number generator seed" return 0 } #!/sbin/openrc-run # Copyright (c) 2009-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # This script was inspired by the equivalent rc.d staticroute from NetBSD. description="Configures static routes." __nl=" " depend() { after clock provide net use network keyword -jail -prefix -vserver } pre_flight_checks() { route=route [ -s /etc/route.conf ] && return 0 if [ -n "$staticiproute" ]; then route="ip route" staticroute="$staticiproute" fi } dump_args() { # Route configuration file, as used by the NetBSD RC system if [ -s /etc/route.conf ]; then cat /etc/route.conf return $? fi case "$staticroute" in *"$__nl"*) echo "$staticroute" ;; *) ( set -o noglob IFS=';'; set -- $staticroute IFS="$__nl"; echo "$*" ) ;; esac } do_routes() { local xtra= family= [ "$RC_UNAME" != Linux ] && xtra=-q ebegin "$1 static routes" eindent pre_flight_checks dump_args | while read args; do [ -z "$args" ] && continue case "$args" in "#"*) ;; "+"*) [ $2 = "add" ] && eval ${args#*+} ;; "-"*) [ $2 = "del" -o $2 = "delete" ] && eval ${args#*-} ;; *) veinfo "$args" case "$route" in "ip route") ip route $2 $args ;; *) # Linux route does cannot work it out ... if [ "$RC_UNAME" = Linux ]; then case "$args" in *:*) family="-A inet6";; *) family=;; esac fi route $family $xtra $2 -$args ;; esac veend $? esac done eoutdent eend 0 } start() { do_routes "Adding" "add" } stop() { local cmd="delete" [ "$RC_UNAME" = Linux ] && cmd="del" do_routes "Deleting" "$cmd" } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. depend() { after clock root before localmount keyword -docker -podman -jail -lxc -openvz -prefix -systemd-nspawn -vserver -wsl } start() { ebegin "Activating swap devices" case "$RC_UNAME" in NetBSD|OpenBSD) swapctl -A -t noblk >/dev/null;; *) swapon -a >/dev/null;; esac eend 0 # If swapon has nothing todo it errors, so always return 0 } stop() { ebegin "Deactivating swap devices" case "$RC_UNAME" in NetBSD|OpenBSD) swapctl -U -t noblk >/dev/null;; *) swapoff -a >/dev/null;; esac eend 0 } #!/sbin/openrc-run # Copyright (c) 2009-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Sets the local clock to the mtime of a given file." swclock_file="${swclock_file:-/var/lib/misc/openrc-shutdowntime}" depend() { provide clock keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu -wsl } # swclock is an OpenRC built in start() { ebegin "Setting the local clock based on last shutdown time" if ! swclock "${swclock_file}" 2> /dev/null; then swclock --warn /sbin/openrc-run fi eend $? } stop() { ebegin "Saving the shutdown time" swclock --save "${swclock_file}" eend $? } #!/sbin/openrc-run depend() { after clock before bootmisc logger keyword -prefix -systemd-nspawn -vserver } start() { local quiet retval=0 status ebegin "Configuring kernel parameters" yesno $rc_verbose || quiet=-q eindent for f in /lib/sysctl.d/*.conf \ /usr/lib/sysctl.d/*.conf; do if [ -f /etc/sysctl.d/"${f##*/}" ]; then veinfo "Ignoring $f due to /etc/sysctl.d/${f##*/}" continue fi if [ -f /run/sysctl.d/"${f##*/}" ]; then veinfo "Ignoring $f due to /run/sysctl.d/${f##*/}" continue fi if [ -f "$f" ]; then vebegin "applying $f" sysctl $quiet -p "$f" status=$? if [ $status -gt 0 ]; then # Don't change retval= since we expect some package/distro provided # sysctl configurations to break, so just warn when the user wants # verbose messages vewarn "Unable to configure kernel parameters from $f" fi fi done for f in /etc/sysctl.d/*.conf; do if [ -f /run/sysctl.d/"${f##*/}" ]; then veinfo "Ignoring $f due to /run/sysctl.d/${f##*/}" continue fi if [ -f "$f" ]; then vebegin "applying $f" sysctl $quiet -p "$f" status=$? if [ $status -gt 0 ]; then retval=$(( $retval + $status )) eerror "Unable to configure kernel parameters from $f" fi fi done if [ -f /etc/sysctl.conf ]; then vebegin "applying /etc/sysctl.conf" sysctl $quiet -p /etc/sysctl.conf status=$? if [ $status -gt 0 ]; then retval=$(( $retval + $status )) eerror "Unable to configure kernel parameters from /etc/sysctl.conf" fi fi for f in /run/sysctl.d/*.conf; do if [ -f "$f" ]; then vebegin "applying $f" sysctl $quiet -p "$f" status=$? if [ $status -gt 0 ]; then retval=$(( $retval + $status )) eerror "Unable to configure kernel parameters from $f" fi fi done eoutdent eend $retval } #!/sbin/openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Mount the sys filesystem." sysfs_opts=nodev,noexec,nosuid depend() { keyword -docker -podman -lxc -prefix -systemd-nspawn -vserver -wsl } mount_sys() { grep -Eq "[[:space:]]+sysfs$" /proc/filesystems || return 1 mountinfo -q /sys && return 0 if [ ! -d /sys ]; then if ! mkdir -m 0755 /sys; then ewarn "Could not create /sys!" return 1 fi fi ebegin "Mounting /sys" if ! fstabinfo --mount /sys; then mount -n -t sysfs -o ${sysfs_opts} sysfs /sys fi eend $? } mount_misc() { # Setup Kernel Support for securityfs if [ -d /sys/kernel/security ] && \ ! mountinfo -q /sys/kernel/security; then if grep -qs securityfs /proc/filesystems; then ebegin "Mounting security filesystem" mount -n -t securityfs -o ${sysfs_opts} \ securityfs /sys/kernel/security eend $? fi fi # Setup Kernel Support for debugfs if [ -d /sys/kernel/debug ] && ! mountinfo -q /sys/kernel/debug; then if grep -qs debugfs /proc/filesystems; then ebegin "Mounting debug filesystem" mount -n -t debugfs -o ${sysfs_opts} debugfs /sys/kernel/debug eend $? fi fi # Setup Kernel Support for tracefs if [ -d /sys/kernel/tracing ] && ! mountinfo -q /sys/kernel/tracing; then if grep -qs tracefs /proc/filesystems; then ebegin "Mounting trace filesystem" mount -n -t tracefs -o ${sysfs_opts} tracefs /sys/kernel/tracing eend $? fi fi # Setup Kernel Support for configfs if [ -d /sys/kernel/config ] && ! mountinfo -q /sys/kernel/config; then if grep -qs configfs /proc/filesystems; then ebegin "Mounting config filesystem" mount -n -t configfs -o ${sysfs_opts} configfs /sys/kernel/config eend $? fi fi # set up kernel support for fusectl if [ -d /sys/fs/fuse/connections ] \ && ! mountinfo -q /sys/fs/fuse/connections; then if grep -qs fusectl /proc/filesystems; then ebegin "Mounting fuse control filesystem" mount -n -t fusectl -o ${sysfs_opts} \ fusectl /sys/fs/fuse/connections eend $? fi fi # Setup Kernel Support for SELinux if [ -d /sys/fs/selinux ] && ! mountinfo -q /sys/fs/selinux; then if grep -qs selinuxfs /proc/filesystems; then ebegin "Mounting SELinux filesystem" mount -t selinuxfs selinuxfs /sys/fs/selinux eend $? fi fi # Setup Kernel Support for persistent storage if [ -d /sys/fs/pstore ] && ! mountinfo -q /sys/fs/pstore; then if grep -qs 'pstore$' /proc/filesystems; then ebegin "Mounting persistent storage (pstore) filesystem" mount -t pstore pstore -o ${sysfs_opts} /sys/fs/pstore eend $? fi fi # set up kernel support for efivarfs if [ -d /sys/firmware/efi/efivars ] && ! mountinfo -q /sys/firmware/efi/efivars; then ebegin "Mounting efivarfs filesystem" mount -n -t efivarfs -o ${sysfs_opts} \ efivarfs /sys/firmware/efi/efivars 2> /dev/null eend 0 fi # set up kernel support for bpf filesystem if [ -d /sys/fs/bpf ] && ! mountinfo -q /sys/fs/bpf; then if grep -qs 'bpf$' /proc/filesystems; then ebegin "Mounting bpf filesystem" mount -n -t bpf -o ${sysfs_opts} bpf /sys/fs/bpf eend $? fi fi } restorecon_sys() { if [ -x /sbin/restorecon ]; then ebegin "Restoring SELinux contexts in /sys" restorecon -F /sys/devices/system/cpu/online >/dev/null 2>&1 eend $? fi } start() { mount_sys mount_misc restorecon_sys return 0 } #!/sbin/openrc-run description="Set sysfs variables from /etc/sysfs.conf and /etc/sysfs.d/*.conf" conffile=/etc/sysfs.conf confdir=/etc/sysfs.d depend() { need sysfs } setval() { local value="$1" attrib="$2" # Some fields need a terminating newline, others # need the terminating newline to be absent :-( echo -n "$value" > "$attrib" 2>/dev/null \ || echo "$value" > "$attrib" } load_conffile() { local file="$1" while read line; do local line=${line%%#*} local cmd= attrib= value= set -- $line if [ $# -eq 0 ]; then continue fi case "$1$3" in mode=) cmd=chmod attrib="$2" value="$4" ;; owner=) cmd=chown attrib="$2" value="$4" ;; *) if [ "$2" = "=" ]; then cmd=setval attrib="$1" value="$3" fi ;; esac if ! [ -e "/sys/$attrib" ]; then eerror "$attrib: unknown attribute" continue fi if [ -z "$attrib" ] || [ -z "$value" ]; then eerror "syntax error in $file: '$line'" continue fi $cmd "$value" "/sys/$attrib" done < "$file" } start() { [ -r "$conffile" -o -d "$confdir" ] || return 0 ebegin "Setting sysfs variables" for file in $confdir/*.conf $conffile; do [ -r "$file" ] || continue load_conffile "$file" || return 1 done eend 0 } #!/sbin/openrc-run # Copyright (c) 2008-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. description="Configures terminal encoding." ttyn=${rc_tty_number:-${RC_TTY_NUMBER:-12}} : "${unicode:=${UNICODE}}" depend() { keyword -docker -podman -lxc -openvz -prefix -systemd-nspawn -uml -vserver -xenu -wsl after devfs } start() { local ttydev=/dev/tty n= [ -d /dev/vc ] && ttydev=/dev/vc/ # Set terminal encoding to either ASCII or UNICODE. # See utf-8(7) for more information. local termencoding="%@" termmsg="ASCII" if yesno ${unicode:-yes}; then termencoding="%G" termmsg="UTF-8" fi ebegin "Setting terminal encoding [$termmsg]" n=1 while [ ${n} -le "$ttyn" ]; do printf "\033%s" "$termencoding" >$ttydev$n : $(( n += 1 )) done # Save the encoding for use immediately at boot if checkpath -W -m 0755 -d "$RC_CACHEDIR"; then mkdir -p "$RC_CACHEDIR"/console if yesno ${unicode:-yes}; then echo "" > "$RC_CACHEDIR"/console/unicode else rm -f "$RC_CACHEDIR"/console/unicode fi fi eend 0 } This directory should contain programs or scripts which are to be run when the local service is started or stopped. If a file in this directory is executable and it has a .start extension, it will be run when the local service is started. If a file is executable and it has a .stop extension, it will be run when the local service is stopped. All files are processed in lexical order. Keep in mind that files in this directory are processed sequentially, and the local service is not considered started or stopped until everything is processed, so if you have a process which takes a long time to run, it can delay your boot or shutdown processing. /var/log/rc.log { missingok notifempty } # Global OpenRC configuration settings # Set to "YES" if you want the rc system to try and start services # in parallel for a slight speed improvement. When running in parallel we # prefix the service output with its name as the output will get # jumbled up. # WARNING: whilst we have improved parallel, it can still potentially lock # the boot process. Don't file bugs about this unless you can supply # patches that fix it without breaking other things! #rc_parallel="NO" # Set rc_interactive to "YES" and you'll be able to press the I key during # boot so you can choose to start specific services. Set to "NO" to disable # this feature. This feature is automatically disabled if rc_parallel is # set to YES. #rc_interactive="YES" # Set to "NO" if you don't want pam_openrc autostarting user services. This # effectively disables the pam module, without the need of removing it from # the pam configuration files. #rc_autostart_user="YES" # If we need to drop to a shell, you can specify it here. # If not specified we use $SHELL, otherwise the one specified in /etc/passwd, # otherwise /bin/sh # Linux users could specify /sbin/sulogin #rc_shell=/bin/sh # Do we allow any started service in the runlevel to satisfy the dependency # or do we want all of them regardless of state? For example, if net.eth0 # and net.eth1 are in the default runlevel then with rc_depend_strict="NO" # both will be started, but services that depend on 'net' will work if either # one comes up. With rc_depend_strict="YES" we would require them both to # come up. #rc_depend_strict="YES" # rc_hotplug controls which services we allow to be hotplugged. # A hotplugged service is one started by a dynamic dev manager when a matching # hardware device is found. # Hotplugged services appear in the "hotplugged" runlevel. # If rc_hotplug is set to any value, we compare the name of this service # to every pattern in the value, from left to right, and we allow the # service to be hotplugged if it matches a pattern, or if it matches no # patterns. Patterns can include shell wildcards. # To disable services from being hotplugged, prefix patterns with "!". #If rc_hotplug is not set or is empty, all hotplugging is disabled. # Example - rc_hotplug="net.wlan !net.*" # This allows net.wlan and any service not matching net.* to be hotplugged. # Example - rc_hotplug="!net.*" # This allows services that do not match "net.*" to be hotplugged. # rc_logger launches a logging daemon to log the entire rc process to # /var/log/rc.log # NOTE: Linux systems require the devfs service to be started before # logging can take place and as such cannot log the sysinit runlevel. #rc_logger="NO" # Through rc_log_path you can specify a custom log file. # The default value is: /var/log/rc.log #rc_log_path="/var/log/rc.log" # If you want verbose output for OpenRC, set this to yes. If you want # verbose output for service foo only, set it to yes in /etc/conf.d/foo. #rc_verbose=no # By default we filter the environment for our running scripts. To allow other # variables through, add them here. Use a * to allow all variables through. #rc_env_allow="VAR1 VAR2" # By default we assume that all daemons will start correctly. # However, some do not - a classic example is that they fork and return 0 AND # then child barfs on a configuration error. Or the daemon has a bug and the # child crashes. You can set the number of milliseconds start-stop-daemon # waits to check that the daemon is still running after starting here. # The default is 0 - no checking. #rc_start_wait=100 # rc_nostop is a list of services which will not stop when changing runlevels. # This still allows the service itself to be stopped when called directly. #rc_nostop="" # rc will attempt to start crashed services by default. # However, it will not stop them by default as that could bring down other # critical services. #rc_crashed_stop=NO #rc_crashed_start=YES # Set rc_nocolor to yes if you do not want colors displayed in OpenRC # output. #rc_nocolor=NO ############################################################################## # MISC CONFIGURATION VARIABLES # There variables are shared between many init scripts # Set unicode to NO to turn off unicode support for keyboards and screens. #unicode="YES" # This is how long fuser should wait for a remote server to respond. The # default is 60 seconds, but it can be adjusted here. #rc_fuser_timeout=60 # Below is the default list of network fstypes. # # afs ceph cifs coda davfs fuse fuse.glusterfs fuse.sshfs gfs glusterfs lustre # ncpfs nfs nfs4 ocfs2 shfs smbfs # # If you would like to add to this list, you can do so by adding your # own fstypes to the following variable. #extra_net_fs_list="" ############################################################################## # SERVICE CONFIGURATION VARIABLES # These variables are documented here, but should be configured in # /etc/conf.d/foo for service foo and NOT enabled here unless you # really want them to work on a global basis. # If your service has characters in its name which are not legal in # shell variable names and you configure the variables for it in this # file, those characters should be replaced with underscores in the # variable names as shown below. # Some daemons are started and stopped via start-stop-daemon. # We can set some things on a per service basis, like the nicelevel. # These need to be exported #export SSD_NICELEVEL="0" # Or the ionice level. The format is class[:data] , just like the # --ionice start-stop-daemon parameter. #export SSD_IONICELEVEL="0:0" # Or the OOM score adjustment. #export SSD_OOM_SCORE_ADJ="0" # Pass ulimit parameters # If you are using bash in POSIX mode for your shell, note that the # ulimit command uses a block size of 512 bytes for the -c and -f # options #rc_ulimit="-u 30" # It's possible to define extra dependencies for services like so #rc_config="/etc/foo" #rc_need="openvpn" #rc_use="net.eth0" #rc_after="clock" #rc_before="local" #rc_provide="!net" # You can also enable the above commands here for each service. Below is an # example for service foo. #rc_foo_config="/etc/foo" #rc_foo_need="openvpn" #rc_foo_after="clock" # Below is an example for service foo-bar. Note that the '-' is illegal # in a shell variable name, so we convert it to an underscore. # example for service foo-bar. #rc_foo_bar_config="/etc/foo-bar" #rc_foo_bar_need="openvpn" #rc_foo_bar_after="clock" # You can also remove dependencies. # This is mainly used for saying which services do NOT provide net. #rc_net_tap0_provide="!net" # This is the subsystem type. # It is used to match against keywords set by the keyword call in the # depend function of service scripts. # # It should be set to the value representing the environment this file is # PRESENTLY in, not the virtualization the environment is capable of. # If it is commented out, automatic detection will be used. # # The list below shows all possible settings as well as the host # operating systems where they can be used and autodetected. # # "" - nothing special # "docker" - Docker container manager (Linux) # "podman" - Podman container manager (Linux) # "jail" - Jail (DragonflyBSD or FreeBSD) # "lxc" - Linux Containers # "openvz" - Linux OpenVZ # "prefix" - Prefix # "rkt" - CoreOS container management system (Linux) # "subhurd" - Hurd subhurds (to be checked) # "systemd-nspawn" - Container created by systemd-nspawn (Linux) # "uml" - Usermode Linux # "vserver" - Linux vserver # "xen0" - Xen0 Domain (Linux and NetBSD) # "xenU" - XenU Domain (Linux and NetBSD) #rc_sys="" # if you use openrc-init, which is currently only available on Linux, # this is the default runlevel to activate after "sysinit" and "boot" # when booting. #rc_default_runlevel="default" # on Linux and Hurd, this is the number of ttys allocated for logins # It is used in the consolefont, keymaps, numlock and termencoding # service scripts. rc_tty_number=12 ############################################################################## # LINUX CGROUPS RESOURCE MANAGEMENT # This sets the mode used to mount cgroups. # "hybrid" mounts cgroups version 2 on /sys/fs/cgroup/unified and # cgroups version 1 on /sys/fs/cgroup. # "legacy" mounts cgroups version 1 on /sys/fs/cgroup # "unified" mounts cgroups version 2 on /sys/fs/cgroup #rc_cgroup_mode="unified" # This is a list of controllers which should be enabled for cgroups version 2 # when hybrid mode is being used. # Controllers listed here will not be available for cgroups version 1. #rc_cgroup_controllers="" # This variable contains the cgroups version 2 settings for your services. # If this is set in this file, the settings will apply to all services. # If you want different settings for each service, place the settings in # /etc/conf.d/foo for service foo. # The format is to specify the setting and value followed by a newline. # Multiple settings and values can be specified. # For example, you would use this to set the maximum memory and maximum # number of pids for a service. #rc_cgroup_settings=" #memory.max 10485760 #pids.max max #" # # For more information about the adjustments that can be made with # cgroups version 2, see Documentation/cgroups-v2.txt in the linux kernel # source tree. #rc_cgroup_settings="" # This switch controls whether or not cgroups version 1 controllers are # individually mounted under # /sys/fs/cgroup in hybrid or legacy mode. #rc_controller_cgroups="YES" # The following setting turns on the memory.use_hierarchy setting in the # root memory cgroup for cgroups v1. # It must be set to yes in this file if you want this functionality. #rc_cgroup_memory_use_hierarchy="NO" # The following settings allow you to set up values for the cgroups version 1 # controllers for your services. # They can be set in this file;, however, if you do this, the settings # will apply to all of your services. # If you want different settings for each service, place the settings in # /etc/conf.d/foo for service foo. # The format is to specify the names of the settings followed by their # values. Each variable can hold multiple settings. # For example, you would use this to set the cpu.shares setting in the # cpu controller to 512 for your service. # rc_cgroup_cpu=" # cpu.shares 512 # " # # For more information about the adjustments that can be made with # cgroups version 1, see Documentation/cgroups-v1/* in the linux kernel # source tree. # Set the blkio controller settings for this service. #rc_cgroup_blkio="" # Set the cpu controller settings for this service. #rc_cgroup_cpu="" # Add this service to the cpuacct controller (any value means yes). #rc_cgroup_cpuacct="" # Set the cpuset controller settings for this service. #rc_cgroup_cpuset="" # Set the devices controller settings for this service. #rc_cgroup_devices="" # Set the hugetlb controller settings for this service. #rc_cgroup_hugetlb="" # Set the memory controller settings for this service. #rc_cgroup_memory="" # Set the net_cls controller settings for this service. #rc_cgroup_net_cls="" # Set the net_prio controller settings for this service. #rc_cgroup_net_prio="" # Set the pids controller settings for this service. #rc_cgroup_pids="" # Set this to YES if you want all of the processes in a service's cgroup # killed when the service is stopped or restarted. # Be aware that setting this to yes means all of a service's # child processes will be killed. Keep this in mind if you set this to # yes here instead of for the individual services in # /etc/conf.d/. # To perform this cleanup manually for a stopped service, you can # execute cgroup_cleanup with /etc/init.d/ cgroup_cleanup or # rc-service cgroup_cleanup. # If the kernel includes support for cgroup2's cgroup.kill, this is used # to reliably teardown the cgroup. # If this fails, the process followed in this cleanup is the following: # 1. send stopsig (sigterm if it isn't set) to all processes left in the # cgroup immediately followed by sigcont. # 2. Send sighup to all processes in the cgroup if rc_send_sighup is # yes. # 3. delay for rc_timeout_stopsec seconds. # 4. send sigkill to all processes in the cgroup unless disabled by # setting rc_send_sigkill to no. # rc_cgroup_cleanup="NO" # If this is yes, we will send sighup to the processes in the cgroup # immediately after stopsig and sigcont. #rc_send_sighup="NO" # This is the amount of time in seconds that we delay after sending sigcont # and optionally sighup, before we optionally send sigkill to all # processes in the # cgroup. # The default is 90 seconds. #rc_timeout_stopsec="90" # If this is set to no, we do not send sigkill to all processes in the # cgroup. #rc_send_sigkill="YES" ############################################################################## # SUPERVISE DAEMON CONFIGURATION VARIABLES # These variables sets more reasonable defaults for supervise-daemon(8). # They may be overriden on a per service basis. # Wait this number of seconds before restarting a daemon after it crashes. respawn_delay=2 # Sets the maximum number of times a daemon will be respawned during a respawn # period. If a daemon dies more than this number of times during a respawn # period, supervise-daemon(8) will give up trying to respawn it and exit. # 0 means unlimited. respawn_max=5 # Sets the length in seconds of a respawn period. respawn_period=1800 Kernel system variables configuration files Files found under the /etc/sysctl.d directory that end with .conf are parsed within sysctl(8) at boot time. If you want to set kernel variables you can either edit /etc/sysctl.conf or make a new file. The filename isn't important, but don't make it a package name as it may clash with something the package builder needs later. The file name must end with .conf, or it will not be read. The recommended location for local system settings is /etc/sysctl.d/local.conf but as long as you follow the rules for the name of the file, anything will work. see the sysctl.conf(5) man page for details of the format. This manpage can be found in the `procps-doc` package. ELF>@1@8 @@@@lll0088 -==-==00HHH$$Std00Ptd   QtdRtd-==xx GNUGNU!""ub %/lib/ld-musl-x86_64.so.1 @  "s .S 8<CM   5_init_fini__cxa_finalize__libc_start_mainsetmntenterrstrcmpgetmntentmkdirendmntentlibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info????????? ? ? ? =PX5z/%|/@%z/hAUATUSHQuH^H5Hi/IHu2HH51b/LhH5LLS/uLN/Hu::@1@8 @@@@lll  dd)99X,<<  00HHH$$Std00Ptdx%x%x%$$QtdRtd)99PP GNUGNUAC*|J}.73|_@/lib/ld-musl-x86_64.so.1 L !"$935"=X ( B Pi.^ )t < @z I(@__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainprintfstrdupstderrfputsstrsepexitstrrchrunsetenvgetopt_longoptargrc_service_resolverc_services_in_runlevelrc_stringlist_sortrc_stringlist_freerc_sysputcharrc_set_useroptindeerrorxrc_service_staterc_service_daemons_crashed__errno_locationexecvstrerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX??? ?(?0?8?@?H? P? X? `? h? p?x????????????????<! @"(@$?9ODDDDD@PX5.%.@%.hAWAVAUATUSH(H.|$ HdH%(H\$H/.HtHhH-$0E1E11H=bE1L-}.D$ D$ E1|$ HH )Hm.3C3IcDLA뾺H5H=H5H=k.H= /1.HH.D$ a1<.HD$H8H|$r.HD$HHtH;-H[H|$-+H=..HHbH-H>.1ZAD$ H5H=*$H5#H= 1|$ H5.H=1,-HtHH=1,H5H=1, ,1_-H5H= ..t!H5H=RH5}H=:m,@AHc*-HH;HuH5-H=E1,,IHu"@{HH5W-H=71P,H;+EuEu#-H;H,:B,8 u*|$ t tf Et |$ t HLL+++8:+HH5,H= H1+ EtHD$dH+%(t'+H([]A\A]A^A_H1HH5(H7HWLE1H H=f.H=+Hz+H9tH*Ht H=Q+H5J+H)HH?HHHtH*HtfD=I+uGUH=6*Ht H=*$*gH=G*t H=8* +]@ff.H=*t&UH5*H=wHv*]8+AWH5 H5w AVAUL- $ATUH-$SH8dL4%(Lt$(AHD$H4 H=h HD$H' HD$ 1D$ -?,$)H5eH= 1)H}HEHcUHt$ D$ HLH_H H= HC1(I]AHt,H4)HHuH=_ H5F&`)gH$HH5-  )IHt2A#$H H=% 1D)Q(LE1](HH I )D(PX[arg]Usage: rc-service [options] [-i] ... or: rc-service [options] -e or: rc-service [options] -l or: rc-service [options] -r Options: [ %s ] %3s --%s %sout of memory %*sEINFO_QUIETyesRC_DEBUGRC_NODEPSIN_DRYRUNNOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEERROR_QUIET%s: you need to specify a service%s: service `%s' does not exist%s: Failed executing '%s': %sset xtrace when running the commandignore dependenciestests if the service exists or notif the service is crashed run the commandif the service exists run the commandif the service is inactive run the commandif the service is not started run the commandif the service is started run the commandif the service is stopped run the commandlist all available servicesresolve the service name to an init scriptdry run (show what would happen)Display this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modedebugnodepsifcrashedifexistsifinactiveifnotstartedifstartedifstoppedlistresolvedry-runhelpnocolorverbosequietuserSdHHHH_HHHHHHHH1H=rHHH;HHHHHHHHJOHHkWHHHHHH)HHcdDe:ilr:INsSZChqVvU;$@ hzRx $P FJ w?;*3$"0DoBPB I(A0H8DpHx BBB B(A0A8D`8C0A(B BBBP!!!"B"h""""#1#\#}###### $d$D$$e$c"$i+$I6$NC$sM$SW$l\$rd$Zl$hq$C#Vy$v$q$U  99o@  >h P  o$ # %<&@rc-service.debug2;.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o<C xK@@ SP P ]Bh h g qb w00} ux%x%$%%9)9)9) <, >.@0 @0 0 0#!/bin/sh # Copyright (c) 2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # Define variables scandir="/run/openrc/s6-scan" statfile=/dev/shm/s6-svstat.${USER} color_red='\E[01;31m' color_green='\E[32m' color_yellow='\E[01;33m' # Time Modules uptimeModules() { # Given a single integer argument representing seconds of uptime... # convert uptime to a friendly human readable string: '2d 16h 58m 46s' # define a variable to keep track of the longest length uptime string uSec=${1:-0} uDay=$(( $uSec / 86400 )) uSec=$(( $uSec % 86400 )) uHour=$(( $uSec / 3600 )) uSec=$(( $uSec % 3600 )) uMin=$(( $uSec / 60 )) uSec=$(( $uSec % 60 )) [ $uDay -ne 0 ] && pDay="${uDay}d " || pDay="" [ $uHour -ne 0 ] && pHour="${uHour}h " || pHour="" [ $uMin -ne 0 ] && pMin="${uMin}m " || pMin="" [ $uSec -ne 0 ] && pSec="${uSec}s " || pSec="" parsedUptime="$( echo ${pDay}${pHour}${pMin}${pSec} | sed 's#[ \t]*$##' )" uCharCount=${#parsedUptime} } # Make sure we are running as root if [ $(id -u) != 0 ]; then printf "This command must be run as root\n" exit 1 fi # Make sure scandir exists if [ ! -d $scandir ]; then printf "%s\n" "$scandir does not exist" exit 1 fi # Make sure s6-svscan is running if ! pgrep s6-svscan >/dev/null ; then printf "s6-svscan is not running\n" exit 1 fi # If TERM is undefined (launching sstat through an ssh command) then make it vt100 if [ -z $TERM -o $TERM = "dumb" ]; then export TERM=vt100 fi # Gather list of candidate services s6-supervise may be supervising # filter for folders and symlinks at /run/openrc/s6-scan/* omitting output starting with '.' services="$(find $scandir -maxdepth 1 -mindepth 1 \( -type d -or -type l \) | awk -F'/' '{ if ( $NF !~ "^\\." ) print $NF}')" if [ -z "$services" ]; then printf "s6 found no services configured for supervision\n" exit 1 fi # Gather status for each service from s6-svstat # write to tmp file in memory for non I/O bound repetitive access rm -f $statfile 2>/dev/null for service in $services ; do echo "$service $(s6-svstat ${scandir}/${service})" >> $statfile done # Define longest string from parsed uptime (default to 7 to match string length of 'Up Time') timeStringLength=7 for uptime in $(awk '$2 == "up" {print $5}' $statfile | sort -run) do uptimeModules $uptime [ ${uCharCount} -gt $timeStringLength ] && timeStringLength=$uCharCount done # Print the status header like so... # Service Name State PID Up Time Start Time #---------------------------- ----- ----- -------------- ------------------- printf "\n" printf "%28s %5s %5s %${timeStringLength}s %19s\n" "Service Name" "State" "PID" "Up Time" "Start Time" for dashes in 28 5 5 $timeStringLength 19 ; do printf "%0.s-" $(seq 1 $dashes) ; echo -n ' ' done && printf "\n" # sshd up (pid 26300) 80373 seconds cat $statfile | \ while read line do set $line service=$1 state=$2 pid=${4/)/} time=$5 # call function to convert time in seconds and define additional variables uptimeModules $time if [ "$state" = up ]; then if [ $time -lt 30 ]; then # uptime < 30 seconds, color the whole line yellow echo -en "$color_yellow" # 1st 4 columns are printed with printf for space padding printf "%28s %5s %5s %${timeStringLength}s" $service $state $pid "$parsedUptime" # 4th column is output from date -d echo -e " $(date -d "${time} seconds ago" "+%F %T")" # reset terminal colors tput sgr0 else printf "%28s" $service # uptime > 30 seconds, color just the "state" value green echo -en "$color_green" printf " %5s" $state # reset terminal colors tput sgr0 printf " %5s" $pid printf " %${timeStringLength}s" "$parsedUptime" echo -e " $(date -d "${time} seconds ago" "+%F %T")" fi else printf "%28s" $service echo -en "$color_red" printf " %5s" $state tput sgr0 echo "" fi done # Cleanup rm -f $statfile 2>/dev/null printf "\n\n" rc-status ELF>@1@8 @@@@lll ||)99XH,H<H<  00HHH$$Std00Ptd%%%<<QtdRtd)99PP GNUGNŰO=|Ϝ%/lib/ld-musl-x86_64.so.10L012493`JXg+$2"z9 ( 2B Q^ t @<s @z (@__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainmallocstderrfputsexitstrdupstrrchraccess__errno_locationopenatstrerroreerrorxstrtokfreereadlinkatclosefstatumaskmkdiratmkfifoateerrorfchmodfchown__stack_chk_failprintfstrsepgeteuidgetgidgetopt_longoptargstrtoulstrchrsscanfgetpwuidgetpwnamgetgrgidgetgrnamrc_sysputcharsetenvrc_set_useroptindstrlenlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfo>>>>>>>>> > > > > >>???? ?(?0?8?@?H?P?X?`?h?p?x?? ?!?"?#?$?%?&?'?)?*?+?,?-?.?/@<1 @2(@4>(9EDDDDD@PX5Z.%\.@%Z.hAWAVAUATUSH8<$Ht$dH%(HD$(1L.D$*./D$HD$HH.HtHX1D$1E1|$E1D$H/1E1Ht$<$H )H-vT3DFCpH5H=U!LH HcHApH=.?7+Ht$ -HT$ :uH=w D$9!.H.H5/H=%H=.:IH.1t$ IHtIE1A>t:1HT$ H5L`-u |$ z- Lw-HHEMtFA}t?1HT$ H5L-u |$ |, La-HHŸDDL-E4H-H5".H=M1,D$1<$ H5-H=D1+ -HtHH=21+H5)H=)1+ +1,H5H=#,p-h-ttH5H=ĺH5H=+? 0D$D$AAAD=},D;<$| e HtCD$CD$HtED$D$1ۉD$D9<$HD$McJ,H+HxIH@UPt'Hŀ}/tH}/uHI9txu/L*HuD$LEPAPDL$ L$,T$t$$ZLY Ë+DxD=+K+;HD$(dH+%(t@*H8[]A\A]A^A_H1HH5j'H7HWL E1H H=+fDH=*H*H9tH.*Ht H=*H5*H)HH?HHHtH)HtfD=*uGUH=N)Ht H=b*<)gH=g)t H=X)y*]@ff.H=)t&UH5n*H=wH)]8+Q(HuH= H5&)`)ZHHt-Q)HuH= H5%n)+)ZAWAVAAUATEUDSHH$ T$8t$,D$?dH4%(H$/D(HPHHDHT$$(uAu D$( @u:D$( 0H((8uEu;/tH5a)H=1H51W(E1AHAu2*(8*'H5)H=H1'/uAHuH1H5yHD$0H'HD$HD$xHHD$ Ht H(H|$ *HL$ H5 H1HHHL$ |$}'H;D$xtH5w(H=18'|$'H|$'EH|$A H|$HHE"DHD$H1!'D$u)&8%HL$HH5'IH=:|$Ht$HA&u/&8%HL$HH5'IH=z1f&D$`%=u)|$dHL$H5o'H1H=]-&DA&H1&H51%Dl$HD$H|$0u&Hl&T$(Ht$1D&Ń?1Dz%AEu DH ,At,AtuAHH=1E%L$(@HH=1)%Ht$D9%uuw%8thr$H5c&H=HHH=1$Ht$DR%u&(%8t#$H5&H=HED$T$(Ht$D1%Ńu,$8#H5%H=kH1#?Ht$H!$u $8#HH=?HT$`%A=@u HH=0At=u HH=At=uHH=1U#`EA9AtH|$XvH5$HH==uH5$HH=HH=1M#D"t$#8"H5$H=H|$?D$,9D$duD$89D$hAtH|$XvH5J$HH=hD$`%=uH5'$HH=EHH=1"T$8t$,1"t)"8!H5#H=H1! #1#<=jSH$dH+%(t!H[]A\A]A^A_AWHuAVAUL-ATUH-SH8H5N#dL4%(Lt$(AHD$HH=HD$HHD$ 1D$ -?, !H5H=o1 H5H=1 H}HEHcUHt$ D$ HLH_HH=HC1 I]AHt,HK!HHuH=H5!gH$HH5W4!IHt2A#$H8H=@1D) LE1T HH IY!D PXout of memory %s: empty or relative path/%s: unable to open the root directory: %s%s: %s: could not open %s: %s%s: %s: unable to stat %s: %s%s: %s: symbolic link %s not owned by root%s: symbolic link destination changed%s: creating file%s: creating directory%s: mkdirat: %s%s: creating fifo%s: mkfifo: %s%s: open: %sfstat: %s: %s%s: is a directory%s: is a file%s: is a fifo%s: chmod: Too many hard links to %s%s: chmod: %s is a symbolic link%s: correcting mode%s: chmod: %s%s: chown: Too many hardlinks to %s%s: chown: %s is a symbolic link%s: correcting owner%s: chown: %s[arg]Usage: %s [options] path1 [path2] [...] Options: [ %s ] %3s --%s %s%*s%s: invalid mode '%s'%d%s: owner '%s' not foundNOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEINFO_QUIETEERROR_QUIETCreate a directory if not existsCreate/empty directoryCreate a file if not existsTruncate fileCreate a named pipe (FIFO) if not existsMode to checkOwner to check (user:group)follow symbolic links (irrelevant on linux)Check whether the path is writable or notDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modedirectory-truncatefile-truncatepipesymlinkswritablehelpnocolorverbosequietuser0fU;;;;;;;;;;;;a;V;_;;;; ;g;z;;dDfFpm:o:sWChqVvU;< X@0%R0zRx $ FJ w?;*3$"D-Ak\6IkHtBBE B(D0D8J8A0A(B BBB0,BIB I(A0H8DpTBBB B(A0A8Dp&xEWxDp@8C0A(B BBB:#[#r######$E$^$s$$$$a!d$Dt!f$F$p!mC"o$s%W %h%C$V%v %q&%U  99o 8 h>  o$# %H<&@checkpath.debug=.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o<C K8S ]Bg qb w00u} %%<0&0&L9)9)9) H<H, h>h.@0 @0 00ELF>{@1@8 @@@@lllU U  0*0:0:,<<  00HHH$$Std00Ptd###,,QtdRtd0*0:0: GNUGNÙ>^NxPX)C/lib/ld-musl-x86_64.so.1 'L'()*+,-3Ź@9ݣk$5"j- ( &HO|B cY ^ H@@@<A @z Rt !@@__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_main__environposix_spawnpstrerroreerrorx__errno_locationwaitpid__stack_chk_failprintfstrdupstderrfputsstrsepexitrc_stringlist_newaccessunsetenvstrrchrgetopt_longoptargsscanfsetmntentgetmntentstrcmprc_stringlist_addendmntentrc_sysputcharrc_set_useroptindrc_stringlist_deleterc_stringlist_freegetenvrc_yesnolibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX>>>>>>>?? ? ? ? (? 0?8?@?H?P?X?`?h?p?x?????????? ?"?#?$?%?&<) @*@@(H@'>!0:DDDDDD PX5.%.@%.hAWAVAAUATUSH8dL,%(Ll$(Ix/1H=HF/tH=1/H=AC.Im/H.HtHhH- 0E1E1H )LDH.va"R:CMbH HcH뇃UVfH5.<HT$$H~1H50-H.tIuHH=1-D:H5{H=-HD$H|$-HtiHHHD$H5HL$H-tHT$A=HL$B$u9D$$uAu9D$$}tHH,H|$7-H߽,^HD$HpL--HT$u HrH,H|$-HuH|$,H5$H=v-,IHtH5gH= ,HD$AH5 H= 1AH5-H= 1+,HtHH= 1+H5 H= 1+ s+1H5 H= +=0-(-t!H5S H=^ ĺH5> H= J+@ D95I,HHtmHLc=1,HRD|$$E9~5K|H1D|$IHT$HL$S+HL$HT$uD;t$HT$H1H*HT$HuHc+D9}tPItH߉+{*EuVH5{H= *IL*HtHpHB*L*H;u[arg]Usage: %s [options] Options: [ %s ] %3s --%s %sout of memory %*s/etc/fstab/etc/fstab does not existEINFO_QUIET%d%s: invalid passno %snone,NOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEERROR_QUIET%s: empty fstab-o %s -t %s %s %s %d Mounts the filesystem from the mountpointRemounts the filesystem based on the information in fstabExtract the block deviceShow arguments needed to mount the entryExtract the options fieldExtract or query the pass number fieldList entries with matching file system typeDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modeblockdevicemountargsoptionspassnofstypehelpnocolorverbosequietuser!Jl,MRbmop:t:ChqVvU;,pH%pCzRx $ FJ w?;*3$" DADpA0hoBIB I(A0H8DpHKBBE B(A0A8Dp*8F0A(B BBB0;!e!!!!!""N"g"|"""" M R"b"m"o"p#t#h #C"V#v#q##U  R0:8:o@ 4 >Px  o$h# %<&@fstabinfo.debug.H@0 @0 00ELF>}@1@8 @@@@lllhh @@8-8=8=@H-H=H=  00HHH$$Std00Ptd QtdRtd8-8=8= GNUGNU٧q6)BQ\YW_/lib/ld-musl-x86_64.so.1@" ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_usereerrorxstrcmprc_service_value_getprintffreerc_service_value_setlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX????????? ? ? ? ? ???8=PX5Z/%\/@%Z/hAUIATUH=SQG/I]/IHJ/HtHXH0Mu HH=DH=/H+/t/H/~ImHt}uHH=r1/H5{H.tH5yH.u3HL.H1HtfHH=Xo.H.IH5AH.tH5?H.uIUHL.HH=#TZ[]A\A]H1HH5+H7HWL%E1H VH=jf.H=A.H:.H9tH-Ht H=.H5 .H)HH?HHHtH-HtfD=-uGUH=V-Ht H=-D-gH=O-t H=@--]@ff.H=X-t&UH5-H=WH>-]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICES%s: no option specifiedservice_get_valueget_options%sservice_set_valuesave_options%s: unknown applet;p8`zRx $0 FJ w?;*3$"8D(MBEA J(A00(A DBB0  8=@=o O h?8h o$P#%*H=&@get_options.debugߏ.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KOSh]B88gPPqb w00}2   8=8-@=@-H=H- h?h/@0 @0X 0 0ELF>u@1@8 @@@@lllPP -==x-==00HHH$$Std00Ptd QtdRtd-==pp GNUGNU! n|/y4,{ţQ/lib/ld-musl-x86_64.so.1@ " ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainrc_newer_thanlibrc.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX???????=PX5/%/@%/h~:ATIUS11I4I|$/t H91[]A\øH1HH5-H7HWLE1H ^H=rfH=Q/HJ/H9tH&/Ht H=!/H5/H)HH?HHHtH.HtfD=.uGUH=.Ht H=..gH=.t H=x..]@ff.H=p.t&UH5.H=HV.]8+PX;80`zRx $ FJ w?;*3$",DEGDC mABA   ==o ?  o$8#%=&@is_newer_than.debug.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS]B  g88qb w00}  t=-=-=-?/P@0 @0P 0 0ELF>u@1@8 @@@@lllPP -==x-==00HHH$$Std00Ptd QtdRtd-==pp GNUGNUf[$ϨɳS*x/lib/ld-musl-x86_64.so.1@ " ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainrc_newer_thanlibrc.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX???????=PX5/%/@%/h~:ATIUS11I4I|$/tH91[]A\øH1HH5-H7HWLE1H ^H=rfH=Q/HJ/H9tH&/Ht H=!/H5/H)HH?HHHtH.HtfD=.uGUH=.Ht H=..gH=.t H=x..]@ff.H=p.t&UH5.H=HV.]8+PX;80`zRx $ FJ w?;*3$",DEGDC mABA   ==o ?  o$8#%=&@is_older_than.debug z.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS]B  g88qb w00}  t=-=-=-?/P@0 @0P 0 0ELF>@1@8 @@@@lllX X  @@0)0909ph,h<h<  00HHH$$Std00Ptd $ $ $,,QtdRtd0)0909 GNUGNUd)]S{ \G ȁf/lib/ld-musl-x86_64.so.1+L+,-/93r"-@I ( &B [a{^ t `< @z U9(@__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainmallocregcompregerroreerrorxstderrfputsexit__stack_chk_failprintfstrdupstrsepstrrchrrc_stringlist_newgetopt_longoptargrc_sysputcharsetenvrc_set_useroptindrealpathrc_stringlist_addfopen__errno_locationstrerrorgetlinesetmntentstrcmpgetmntentendmntentstrstrregexecfcloserc_stringlist_freeregfreegetenvrc_yesnolibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX>>>>>>>>> > > ? ? ?? ?(?0?8?@?H?P?X?`?h?p?x?????? ?!?"?#?%?&?'?(?)?*`<, @-(@/>$09_DDDDD@PX5z.%|.@%z.hAWAVAAUATUSHHdL,%(L$I/H.HtHX1H|$x1H01E1E111H3H|$R't%H=&H&u H;&1HCH@HL&H|$tH|$P'H|$e'H|$tH|$2'H|$G'H$dH+%(tN&H[]A\A]A^A_H1HH5#H7HWLdE1H H=.fH=&H&H9tH&&Ht H=&H5&H)HH?HHHtH%HtfD=&uGUH=F%Ht H=b&4%gH=g%t H= X%y&]@ff.H=%t&UH5n&H= H%]8+USHdH,%(H$H@$HtIHú HH %tPHl$HމǹH%H5&H1H=$H=nH5!9%%H$dH+%(tE$HH[]AWHAVAUL-\ATUH-SH8H5%dL4%(Lt$(AHD$HH=HD$HHD$ 1D$ -?,q#H5H=^1[#H5H=1E#H}HEHcUHt$ D$ HLH_HH=HC1#I]AHt,H#HHuH=,H5 #gH$HH5x#IHt2A#$HYH=a1D)"LE1"HH I#D[#PXout of memory %s: invalid regex `%s'[arg]Usage: %s [options] [mount1] [mount2] ... Options: [ %s ] %3s --%s %s%*sNOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEINFO_QUIETEERROR_QUIET%s: `%s' is not a mount point/proc/mountsgetmntinfo: %s/etc/fstab_netdevrootfsfstype regex to findfstype regex to skipnode regex to findnode regex to skipoptions regex to findoptions regex to skippoint regex to findpoint regex to skipprint optionsprint fstypeprint nodeis it a network deviceis it not a network deviceDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modeskip-fstype-regexskip-node-regexskip-options-regexskip-point-regexnonetdevhelpnocolorverbosequietuser0$3 $$$$$$$N$$$$O$$$$$$$$$$$$$$$H@$$$$,w$%$f:F:n:N:o:O:p:P:iste:E:ChqVvU;,HpzRx $ FJ w?;*3$"(D}AAGDA0p BIB I(A0H8DpH8BBE B(A0A8G}8C0A(B BBB-!B!W!j!}!!!!!!!!")"B"W"p"~"""f"F"n"N"o"O"p"P!i!s!t!e"E#h #Ch"V#v#q!#U  U0989oH = >   o$# %h<&@mountinfo.debug$F.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o<C KHH=S ]Bg qb w00% }UU  $ $,P$P$090)898)@9@)( h<h, >.h@0 @0 00#!/bin/sh # Detect AC power or not in a portable way # Exit 0 if on AC power, 1 if not and 255 if we don't know how to work it out # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. if [ -f /proc/acpi/ac_adapter/*/state ]; then cat /proc/acpi/ac_adapter/*/state | while read line; do case "$line" in "state:"*"off-line") exit 128;; esac done elif [ -d /sys/class/power_supply ]; then for dir in /sys/class/power_supply/*/; do [ "$(cat "${dir}/type")" != "Mains" ] && continue [ "$(cat "${dir}/online")" = 0 ] && exit 128 done elif [ -f /proc/pmu/info ]; then cat /proc/pmu/info | while read line; do case "$line" in "AC Power"*": 0") exit 128;; esac done elif command -v envstat >/dev/null 2>&1; then # NetBSD has envstat envstat -d acpiacad0 2>/dev/null | while read line; do case "$line" in "connected:"*"OFF") exit 128;; esac done elif sysctl -q hw.acpi.acline >/dev/null 2>/dev/null; then case $(sysctl -n hw.acpi.acline) in 0) exit 1;; *) exit 0;; esac else exit 255 fi [ $? != 128 ] ELF>}@1@8 @@@@lllhh @@8-8=8=@H-H=H=  00HHH$$Std00Ptd QtdRtd8-8=8= GNUGNU٧q6)BQ\YW_/lib/ld-musl-x86_64.so.1@" ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_usereerrorxstrcmprc_service_value_getprintffreerc_service_value_setlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX????????? ? ? ? ? ???8=PX5Z/%\/@%Z/hAUIATUH=SQG/I]/IHJ/HtHXH0Mu HH=DH=/H+/t/H/~ImHt}uHH=r1/H5{H.tH5yH.u3HL.H1HtfHH=Xo.H.IH5AH.tH5?H.uIUHL.HH=#TZ[]A\A]H1HH5+H7HWL%E1H VH=jf.H=A.H:.H9tH-Ht H=.H5 .H)HH?HHHtH-HtfD=-uGUH=V-Ht H=-D-gH=O-t H=@--]@ff.H=X-t&UH5-H=WH>-]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICES%s: no option specifiedservice_get_valueget_options%sservice_set_valuesave_options%s: unknown applet;p8`zRx $0 FJ w?;*3$"8D(MBEA J(A00(A DBB0  8=@=o O h?8h o$P#%*H=&@save_options.debugߏ.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KOSh]B88gPPqb w00}2   8=8-@=@-H=H- h?h/@0 @0X 0 0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_crashed.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$0ELF>}@1@8 @@@@lllhh @@8-8=8=@H-H=H=  00HHH$$Std00Ptd QtdRtd8-8=8= GNUGNU٧q6)BQ\YW_/lib/ld-musl-x86_64.so.1@" ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_usereerrorxstrcmprc_service_value_getprintffreerc_service_value_setlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX????????? ? ? ? ? ???8=PX5Z/%\/@%Z/hAUIATUH=SQG/I]/IHJ/HtHXH0Mu HH=DH=/H+/t/H/~ImHt}uHH=r1/H5{H.tH5yH.u3HL.H1HtfHH=Xo.H.IH5AH.tH5?H.uIUHL.HH=#TZ[]A\A]H1HH5+H7HWL%E1H VH=jf.H=A.H:.H9tH-Ht H=.H5 .H)HH?HHHtH-HtfD=-uGUH=V-Ht H=-D-gH=O-t H=@--]@ff.H=X-t&UH5-H=WH>-]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICES%s: no option specifiedservice_get_valueget_options%sservice_set_valuesave_options%s: unknown applet;p8`zRx $0 FJ w?;*3$"8D(MBEA J(A00(A DBB0  8=@=o O h?8h o$P#%*H=&@service_get_value.debugߏ.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KOSh]B88gPPqb w00}2   8=8-@=@-H=H- h?h/@0 @0X 0$0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_hotplugged.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0 (0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_inactive.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$0ELF>}@1@8 @@@@lllhh @@8-8=8=@H-H=H=  00HHH$$Std00Ptd QtdRtd8-8=8= GNUGNU٧q6)BQ\YW_/lib/ld-musl-x86_64.so.1@" ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_usereerrorxstrcmprc_service_value_getprintffreerc_service_value_setlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX????????? ? ? ? ? ???8=PX5Z/%\/@%Z/hAUIATUH=SQG/I]/IHJ/HtHXH0Mu HH=DH=/H+/t/H/~ImHt}uHH=r1/H5{H.tH5yH.u3HL.H1HtfHH=Xo.H.IH5AH.tH5?H.uIUHL.HH=#TZ[]A\A]H1HH5+H7HWL%E1H VH=jf.H=A.H:.H9tH-Ht H=.H5 .H)HH?HHHtH-HtfD=-uGUH=V-Ht H=-D-gH=O-t H=@--]@ff.H=X-t&UH5-H=WH>-]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICES%s: no option specifiedservice_get_valueget_options%sservice_set_valuesave_options%s: unknown applet;p8`zRx $0 FJ w?;*3$"8D(MBEA J(A00(A DBB0  8=@=o O h?8h o$P#%*H=&@service_set_value.debugߏ.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KOSh]B88gPPqb w00}2   8=8-@=@-H=H- h?h/@0 @0X 0$0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_started.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$0ELF>%@ 1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_started_daemon.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$,0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_starting.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_stopped.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$0#!/bin/sh # This is a reimplementation of the systemd binfmt.d code to register # misc binary formats with the kernel. # # See the binfmt.d manpage as well: # http://0pointer.de/public/systemd-man/binfmt.d.html # This script should match the manpage as of 2015/03/31 # Copyright (c) 2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. apply_file() { [ $# -lt 1 ] && return 0 FILE="$1" LINENUM=0 ### FILE FORMAT ### # See https://www.kernel.org/doc/html/latest/admin-guide/binfmt-misc.html while read -r line; do LINENUM=$(( LINENUM+1 )) case $line in \#*) continue ;; \;*) continue ;; '') continue ;; esac local reg=${line#*:} [ -e /proc/sys/fs/binfmt_misc/${reg%%:*} ] && echo -1 > /proc/sys/fs/binfmt_misc/${reg%%:*} echo "${line}" > /proc/sys/fs/binfmt_misc/register rc=$? if [ $rc -ne 0 ]; then printf "binfmt: invalid entry on line %d of \`%s'\n" \ "$LINENUM" "$FILE" >&2 error=1 fi done <$FILE return $rc } [ -e /proc/sys/fs/binfmt_misc/register ] || exit 0 error=0 if [ $# -gt 0 ]; then while [ $# -gt 0 ]; do apply_file "$1" shift done else # The hardcoding of these paths is intentional; we are following the # systemd spec. binfmt_dirs='/usr/lib/binfmt.d/ /usr/local/lib/binfmt.d/ /run/binfmt.d/ /etc/binfmt.d/' binfmt_basenames='' binfmt_d='' # Build a list of sorted unique basenames # directories declared later in the binfmt_d list will override earlier # directories, on a per file basename basis. # `/run/binfmt.d/foo.conf' supersedes `/usr/lib/binfmt.d/foo.conf'. # `/run/binfmt.d/foo.conf' will always be read after `/etc/binfmt.d/bar.conf' for d in ${binfmt_dirs} ; do [ -d $d ] && for f in ${d}/*.conf ; do case "${f##*/}" in systemd.conf|systemd-*.conf) continue;; esac [ -e $f ] && binfmt_basenames="${binfmt_basenames}\n${f##*/}" done # for f in ${d} done # for d in ${binfmt_dirs} binfmt_basenames="$(printf "${binfmt_basenames}\n" | sort -u )" for b in $binfmt_basenames ; do real_f='' for d in $binfmt_dirs ; do f=${d}/${b} [ -e "${f}" ] && real_f=$f done [ -e "${real_f}" ] && binfmt_d="${binfmt_d} ${real_f}" done # loop through the gathered fragments, sorted globally by filename. # `/run/binfmt.d/foo.conf' will always be read after `/etc/binfmt.d/bar.conf' for FILE in $binfmt_d ; do apply_file "$FILE" done fi exit $error # vim: set ts=2 sw=2 sts=2 noet ft=sh: #!/bin/sh # This is run by the kernel after the last task is removed from a # control group in the openrc hierarchy. # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. cgroup=/sys/fs/cgroup/openrc PATH=/bin:/usr/bin:/sbin:/usr/sbin if [ -d ${cgroup}/"$1" ]; then rmdir ${cgroup}/"$1" fi # Allow any sh script to work with einfo functions and friends # We also provide a few helpful functions for other programs to use # Copyright (c) 2007-2025 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. RC_GOT_FUNCTIONS="yes" eindent() { : $(( EINFO_INDENT = ${EINFO_INDENT:-0} + 2 )) export EINFO_INDENT } eoutdent() { : $(( EINFO_INDENT = ${EINFO_INDENT:-0} - 2 )) [ "$EINFO_INDENT" -lt 0 ] && EINFO_INDENT=0 return 0 } yesno() { [ -z "$1" ] && return 1 # Check the value directly so people can do: # yesno ${VAR} case "$1" in [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) return 0;; [Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) return 1;; esac # Check the value of the var so people can do: # yesno VAR # Note: this breaks when the var contains a double quote. local value= eval value=\"\$$1\" case "$value" in [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|[Oo][Nn]|1) return 0;; [Nn][Oo]|[Ff][Aa][Ll][Ss][Ee]|[Oo][Ff][Ff]|0) return 1;; *) vewarn "\$$1 is not set properly"; return 2;; esac } rc_runlevel() { rc-status --runlevel } _sanitize_path() { local IFS=":" p= path= for p in $PATH; do case "$p" in /usr/libexec/rc/bin|/usr/libexec/rc/sbin);; /bin|/sbin|/usr/bin|/usr/sbin);; /usr/bin|/usr/sbin);; /usr/local/bin|/usr/local/sbin);; *) path="$path${path:+:}$p";; esac done echo "$path" } # Allow our scripts to support zsh if [ -n "$ZSH_VERSION" ]; then emulate sh NULLCMD=: alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST fi # Make a sane PATH _PKG_PREFIX=/usr _LOCAL_PREFIX=/usr/local _LOCAL_PREFIX=${_LOCAL_PREFIX:-/usr/local} _PATH="/usr/libexec/rc/bin:/bin:/sbin:/usr/bin:/usr/sbin" if [ -n "$_PKG_PREFIX" ]; then _PATH="$_PATH:$_PKG_PREFIX/bin:$_PKG_PREFIX/sbin" fi if [ -n "$_LOCAL_PREFIX" ]; then _PATH="$_PATH:$_LOCAL_PREFIX/bin:$_LOCAL_PREFIX/sbin" fi _path="$(_sanitize_path "$PATH")" PATH="$_PATH${_path:+:}$_path" ; export PATH unset _sanitize_path _PREFIX _PKG_PREFIX _LOCAL_PREFIX _PATH _path for arg; do case "$arg" in --nocolor|--nocolour|-C) EINFO_COLOR="NO" ; export EINFO_COLOR ;; esac done if [ -t 1 ] && yesno "${EINFO_COLOR:-YES}"; then if [ -z "$GOOD" ]; then eval $(eval_ecolors) fi else # We need to have shell stub functions so our init scripts can remember # the last ecmd for _e in ebegin eend error errorn einfo einfon ewarn ewarnn ewend \ vebegin veend veinfo vewarn vewend; do eval "$_e() { local _r; command $_e \"\$@\"; _r=\$?; \ EINFO_LASTCMD=$_e; export EINFO_LASTCMD ; return \$_r; }" done unset _e fi #!/bin/sh . /usr/libexec/rc/sh/functions.sh exec 3>&1 >&2 if [ -z "${XDG_RUNTIME_DIR}" ]; then logger -p daemon.err "XDG_RUNTIME_DIR unset, user services cannot start." exit 1 fi sysconfdir="${XDG_CONFIG_HOME:-${HOME}/.config}/rc" cachedir="${XDG_CACHE_HOME:-${HOME}/.cache}/rc" svcdir="${XDG_RUNTIME_DIR?}/openrc" for config in "/etc/rc.conf" "$sysconfdir/rc.conf"; do if [ -e "$config" ] && ! . "$config"; then logger -p daemon.err "openrc-user: Failed loading $config" exit 1 fi done mkdir -p "$svcdir" mkdir -p "$cachedir" for runlevel in boot "${rc_default_runlevel:-default}" shutdown; do mkdir -p "$sysconfdir/runlevels/$runlevel" done case $1 in start) cp -pr "$cachedir"/* "$svcdir" 2>/dev/null openrc --user boot || exit 1 printf '\n' >&3 exec openrc --user "${rc_default_runlevel:-default}" ;; stop) cp -pr "$svcdir"/dep* "$svcdir/init.d" "$svcdir/conf.d" "$cachedir" 2>/dev/null exec openrc --user shutdown ;; *) logger -p daemon.err "no argument given to $0" && exit 1 esac ELF>|@@8 @55PPPx(200$$Std00PtdQtdRtd GNU GNU.v)DH̉H1 1@KuUUu]ס??RUWU*?KU!8 qPXdH%P01r9t t "S^^13-USHQH>g}H=?HgIHH5LH=gHu%H=%HvH5?g̶H8HH=FH9t HډgH/HމH@ Z[]H=H=~ H=H=$H=WH=*H1HH5Hf.@HHff.LDHHMuHLH$HT$ff.ff.HHHBH9uHHH HtHwLJLL̈HH$HDff.HHH@H9uHHHHtH$wHJHĈHT$HtIL$H$II?HT$HL$HD$Ht8t HHH+pHE1ff.HHt!LH)HNHuHHHL$H$II"ff.ff.HHt&LH)HNHuL^HILL$H$II&fHHt tHIHHtLLH)HuHHL@HLH HHVL06E1H H=aUZfH=HH9tHHt H=H5H)HH?HHHtHHtfD=YuGUH=Ht H=B gH=t H=]@ff.H=t&UH5H=H]8+HHH2H8ZHH0NHSHH=HpH5gxH5H HHH\[KATH5SL%lUH=B:S1g聳H;s2HHL9tHHH1H5Z:H= g辱Hʼng6 PH^AWAVAUATIUSHHH?t$ HgIT$HtH55:H1gRH޿ g|IT$HtH5:H1g(M|$(M/MIUH59H1gE1M;uIk0ImHH=9giUtH59H1g°HH=9g=HMHt/HE HHEȀ}t,H5~9H1gzHo?H5n9H1g_HUH5<9H1gIICIIT$HtH509H1g|$ gPX1PH=kAH(HHt'Hq1H9tHk0HADE9t HH1AWAVAUATUSHH $HH $H(@E1HT$HH$ H$ t$LS(Hl$dH%(H$!1H|$M M1I;qsbHk0II@9@t@:y uHB:HLaMt.MDy D1IIJ|NdF| Ft0HI넉HHt,H=\P(E1Ht$|$HH$ guH$!dH+%(tgUH(![]A\A]A^A_H=H=fH=~Pgs,H‰ZH=H=ATHUSHHdH%(H$HH=g)5{tH3H=91g8HH59{ tH5OU1H=9g{tH=91g g?H[HtnHkH59LeLg0H} u3Ht$guH=R9gM HuHT$HLH=Y91g聵H[H$dH+%(u)H []A\頷H$dH+%(tgTH[]A\ATUSHH $H0=dH%(H$(=H1Hl$(H|$(IHHH8gH1Ag/UÅyF=Uu ggQS8gSHHH=*IH5E81gӫÉǾ1gSy2g=tgR8g,SH5H58HL߉1gKSuHg=QgR8gRHH57HH=~1g11H|$=^fD$t HH=EH1H57g1HT$gRu9g= gR8g@RHIH57H]H$(dH+%(tgQH0[]A\AWIHAVEAUIATUHSHAQH=u6gQ8gQHHH=mIH5C71gAĀ} tHH=?HH5F7(0}t=HxH=HلtH5P71g辩H5t71g誩=HU(t[Ht4H t8}tH 6HH=I1H5A7gIEtRE HHLgz)=HuNt4H 8}tH 16HH=II1H5@7gAt Dg=t7=L8tL8HRH=H1H5D7g蜨ILLHD uH=g5uJ=]LZ8tL81HHH=H57g@At Dg_1=At DgL=.E%E HHLg>( Z[]A\A]A^A_À=#St;HH5'gg*uH=H H56HAg螧gAWAVAUATUSHH $HdL4%(L$xIAH\$(Hl$H=H5]7g&H|$H1H|$(H|$@HH\$HgH5YHg(u H EH54H|$@gT u'H H_H=H55g讦!HH=gw7HuH*H=H551BHg;uHH55HHg`)u HH55H=~g3D-ELt$(L=MIFL` A?tA|$tsIHu IHu"1I4$guM1I4$gu=I $E1HHL2u$I $H61E1H=H5 5g耥MveEu1D9=|H=gLc%|Ll$xE9 H1SK4Lg=LgLHtHHHHL$KHg'HHuCHt$HgHu,K HjH54H=g蹤HpHx ALHHtIBH$xdH+%(tgKHĈ[]A\A]A^A_B90H=HtHp wH tH HHt wHAUATUSHH $HdH,%(H$HIHHH=g*HtHU0HuH=31gHS0H3H=31g g,H{H53g{ HHtg1H|$Hl$HHr gH,$HH8t.HLgIŀx u@ HHLAE H$dH+%(tgJH[]A\A]AWAVAUATUSHH|$H|$ Hl$8dH%(H$1H|$8H|$PHHl$Xg%HD$ H5H$Hg+$u H H5xH|$Pgu,H bHH=DH51gsH=u.HH=g2HuH_H=H501"Hg6uH9H=H50g舡딀=p=bu!=Xu=>t0H=1g聬!H=g='Ll$8L%MIEHX A<$t{tiI|$Hu I|$Hu 1H3guB1H3gu3A|$t Hg A|$t1HH H;g˫Mmp=iH=a1g訫=\u =RH\$ HH=HkHuH= Hu"1HugZuV1HugHuF=Hut Hg).HE L.xtLV0HHHH=01gOH[hD$9|H=Bg Lc-N$D9l$I$H<$HgX"HHuVI4$HgHu)=Hu&I $HH5 /1H=@HX I4$HgHHtL=MH5T+LgLsD$H$HD$Mt`MFLLD$Ixgu7|$LD$u!HT$LHg tH|$Ix g©MvHgII1H$dH+%(tgEHĘ[]A\A]A^A_8UH-S1P9u~"HUH=p1H5'Hg1g=HHH==tHHH501ڝH5&1˝AWAVAUATUSHH9=|H==gHc9u"H(H=H5-01guD`L,D9t H\L%11;-BM4$LLgLHu;gzD8gDHMLIH=HH5/1g HLIH;HAHA9L3 HE1A9|*HBH=L1H5/g茜L$ H:LH$gtH$L$ AHgCLLI1AgYHWA?gCH HMIH=[H5.1gv1H[]A\A]A^A_H6]AUATUSHHdL$%(L$IgC1LHHH5LgWHt$HHH1HH5f/g蘗y1E&H<$H5=g蛚HHtH<$g,F1HٺH$H|$gIH=uE Hg踗Hg記uHg蠗BD,H|$g H$dH+%(tgBH[]A\A]H=H6yAWH5,AVAUATUHSHhdH%(H$X1H|$H|$g/H}g0H|$HHgb1}tH=k%g/HHg>1HmHt]LuH5I&Mn I~gu!Ht$XLgStLl$XI~Lg/HHg0HmHH5g1H|$gT0H$XdH+%(tg@Hh[]A\A]A^A_AVAAUIATUSHpdH%(HD$h1HHl$H|$H|$0HHl$8g H5]Hgu H IH58H|$0gXu'H "HcH=H5'g貘`H=u.HH=gq)HuH$H=žH5'1"Hg-u HH=H5'gMH=LH5gIHuH HH5,=tH\$Ht:HCHx AT$H[D95|H=`g*HcA91hItHgHu*=u'ILH%H5H'H=1Hx HItgHHtHAT$딸HT$hdH+%(tg>Hp[]A\A]A^ù1AUI(ATIUHSPgALHg Lc HHHCHg/ZH[]A\A]ATIUSHHtHkLH}gtH[1H[]A\AUIATUHSQg@HmHHt=LeLI|$gCu!gO@It$ HHg/HmH{u H1gAZH[]A\A]AWIAVAUIATIUHSAP`Hu5(g?LHg Lk HHHCHg.0HIHtHsLAׅtH[Lg-t1ZH[]A\A]A^A_SHHHgy.H{gU@H[L@HHt2UHSRHXHtHpH1HtHSHHX[]SHKHt HH[[SHdH%(HD$1 @H5T*HDHgHtxHX .HgHu%HD$dH+%(uaHHߺ 1[SHHT$1got#|$gmЍJ HH)˅HDHD$dH+%(tg;HH[USHdH,%(H$HH|$g:H|$g/H|$H Eg1Ht Hx1gHHU}HHt$g oH$dH+%(tg:H[]AVAιAUIATIUHSHHdH%(H$1H|$HT$}golHt?Et LEMuLHt$LgHL$LL1Hq(gҞ1H$dH+%(tg :H[]A\A]A^AUIATIUSAPH^ HkHu sHCLLH߹HkZ[]A\A]AWAVAUATUHSH8dL$%(L$(IHHEHHXHLhH5jI}guYMu H|$(1H|$Ht$(Lct(LH|$(guH}Lg>Lg<1HtHSHHoH$(dH+%(tg8H8[]A\A]A^A_AUATUHSRHGHt8HXHt/L`I|$ g8<LH}g1HtHSHHH}X[]A\A]<AUATUHHSHdH%(H$HgH H5:&H}IHgHu Lg;H5<&HguE H5)&HgzuE H58Hgbu7=t.H|$gaxH|$CgH5%H}Hg'H$dH+%(tgz7HĘ[]A\A]U1HSHQHg1H5%HH.HgHtZHH5s%[]X[]ATI USHg9LHHhAĄu Hg|:#H5,%HdH{HH5gMD[]A\ATUSHoHHt?LeH5I|$guMd$ I|$uAt$HID$HmH5$H{g3HHtHx g9HH{[]A\^[]A\HHtTAUATUHSRHXHt9L`Ml$ L8Lg9LHg1HtHSHHX[]A\A]ATIUHSgHu/8g[8HHH-HHLgHX H[]A\ùP1HH5#HH5#@H@ ZATUHSHH6gHt$IH`Hg8[LH]A\<[]A\UHSHQH6gHtHp H9tHH3HHgdHZ[]AUATUHSHQ=tF H;LegH5#LHg#C E C H[E HHkH5hLmLguR g6HU H9s HH H9s H9s HJ H9LBH@Hug1H} gH LLHHg~Hu Hgu7H[OZ[]A\A]H6PH6GUSHH $HH$0HH$8L$@L$Ht@)$P)$`)$p)$)$)$)$)$dH%(H$1H$HHHD$H$ H|$$D$0HD$g=1HMHUH=DZLD$H59!gpH$dH+%(tg2H[]HtHp wH tH HHt wHHIIH|$HT$I8HuHLH5 L1r HgHUISHHH|$HT$YHHHuHLH5] H%}uHH5Z H1lH{HgH;HuHHH5Q H@=ux uHHH5_ Hgu!HHH5 HH1H@H[]ATUHSHHH|$HT$H;IHuHHH5H1I)H5IgLgH;HHHgdH[]A\UISHHH|$HT$ H;HHuHLH5H11H5HgHgLH;H5HHgH[]AUIH5 ATUH- SHLHHT$gt+H|$tHŀ8uLH5jH1D]H;Htg2H{Hg HIHu1HH5EH1H5 0Lg4tH5bLg u2AD$AD$ $H5j0HgH5Z0uH;gH|$Hŀ8u`H5Hgu H5H5HguHT$HHH5HguH@Hx uExu?H{H5gH;HguHH5YHH1H@H[]A\A]SHHH|$HT$8uH;uH54H1-H{Hgy1HHtx u@xt@ H[HIIH|$HT$dI8HuHLH5kL11 HgHAWAVAUATUSHH $H(dH,%(H$HHH gxHtHH5tH1H5'HgcIHHCLs1HkHH{ HD$1HCg H;Hl$LHgHjHCH|$Hl$ZHŊtŃ awL HH5zg4Ll$HtLHHPxLgHD$LsHC1 LNHH5gؿHtHhL=HLgH5KLguH@  uIAEƒ wLgH LHHyg=-Lg\HL)LHgH;HHgFHgD/wLgH;HtgHD$LsHCH$dH+%(tgb+H([]A\A]A^A_AUATUSHH $HHT$IdH<%(H$H|$v8uH5$L1L9HHgS'HHugg*8g+HH5LH1AL@1HH$Hg+Ht$H$gztHg'Hu2D$0%=uH$LAńuHg~&Hgs&nH$dH+%(tg*HĸD[]A\A]AWAVAUATIUSHHT$dH<%(H$H|$58uH5$L1 tHt$Hg:TtH5L11=1H;l$s2HD$Ht$(L4LgyHutLLH!H|$gkSH$dH+%(tg,)H[]A\A]A^A_HiAWHD7E1AVAUIATUHSHHHD$H;\$&Lg\\DAăA #u/ELg& tuLc u.Et Lg t tLgyH Lc`Ls u& Lg t LgILEtjEt\LHEIL9u1ILgS~uA$L9rH-A|$ uID$AD$H9sA|$ uAD$IH[]A\A]A^A_1PXH="Pgr1gHtHp wH tH HHt wHATUHSgHt*L` HI<$g*Lg*HH[]A\=[]A\AUIATIUHSPg)H}HgHLLHHE(HCE CY[]A\A]DAWAVAUATUSHH $HhHt$IdH%(H$X1H\$XHT$HgJHH|$H\$E1HIH߾=IgHA}tH5<LgAA>u 1LgۺHH@HwHu 1H|$(Hl$  1H|$(HH\$ HT$HHHT$ LD|$-H$XdH+%(tgq%Hh[]A\A]A^A_UHHH5SQgB}HtHHHHgzZ[]HB(HB(HtHHB(tUHSRHHt?HSL HB xtL L@HH1HRH5Rgg}H[X[]UHHH5SQg|H1HtHHHgyZ[]SHHgIHu1H@ HH0g0HtH@ [ATIUSHHt)HCLHh HugSHUH[HP(UP []A\AWIHAVAUATIUSHHH $gtI4$M7HHt$Lg\Ht$HDH9s$HL+LgCHt7M)ILHI$$HuH $H;1H Hg HH9rHH[]A\A]A^A_AWAVAUATUSHH $HXdL4%(L$HMHIIMHHuH*Hv H5HgHH5z HgLH5m HgLH5` HgHU H5S HgA<$tHC H5> HgxIT$HtH5, Hg^E1E1g%HD$ HD$HD$(g$MeHD$8HD$0HD$@MpIl$H5HEH$Hg虿u`HD$HHLH$HgńH $HT$(Ht$ H|$EuH$H5jHgAH<$H5&g$u&HM HT$@Ht$8H|$0pEA0H<$H5x guA} tHU H5Hg1H|$XHD$HIF_HD$P1HD$HH$HHugHT$J:t&zHHT$g _HT$-DHU H4$HgMd$Ld$MtLH5qHgxHl$0HtHH5aHg[Lg $H$HdH+%(tgV HXH[]A\A]A^A_#HtHp wH tH HHt wHAWAVAUATUSHH $HH $HhdH%(H$X$1IH$XHHL$XH$XH$XuHL g1H|$(HHt$(MHLHCH5pHD$Hg'IHtHp Lg蟽HD$(L{HD$M1H|$XH|$0 H5 IWAEHT$HzD$0IEHD$8IEHD$@AE D$PgRHD$XH$ufHT$L AHR P3HL$Ht$ H|$@gZY|$Xt'H5LgyH4$LggM%Lt$0Ll$0HD$08tDLHHHgHuHHgH5HgMtI|$ gx!Hg豻ID$ ($XtHg藻H|$H5Hg6H|$(g^H$X$dH+%(tg|Hh$[]A\A]A^A_AWAVAUATUSHH $HDb dH%(H$1EuDHHIIHH#C H{H5#Hk0gHHu C Aj1H|$HLl$LHr g7HL,${8tHLgHLLH+uC HGH$dH+%(tghHD[]A\A]A^A_AWAVAUATUSHH $H1L dL,%(L$EHHD$HIEuL MHH|$HL|$EtQLkMtQIUH5 HT$HzgSHT$tMmHR LLLHg.uLkMu Ll$H[^IUH5~ HT$HzgHT$tMmHR LLLHgu=L{LIg軸t H[Hu,1IO HLHg"uH|$g 1{=teH$1LHgWHt$H$gku/D$0%=@uHt$H$H1HgH|$g: H$dH+%(tgXHĸ[]A\A]A^A_AWAVAUATUSARDv En~ gLMuH.IIHIEAK4AHHLHAHHLH_AHHLHq<AHHLHHHLg0E1HH~t~E1HHHLtbE1HHUHLtFE1HHCHLt*E1LLHL%tHHLgAZD[]A\A]A^A_AWAVAUATUSHH $H8H$HHH~IH5dL4%(L$(EgCHHH|$(1C Ld$(LHr g蠶H|$ Ld$ L%EHbHHIEHD$H[HEHD$><H<$g IĀxt0HH H=}tH5?1gZp H5~I4$EtGM|$(LLg^Mtr}H I$H51LD$H=LgpLLg%I|$(wA|$ t%}tuH I$H5}H= 1goVE΀}t,LD$H DL$1I$H=ܕH5goDL$M$H$LLHzuC H|$ pHC H$(dH+%(tgH8[]A\A]A^A_AWAVAUIATUSH8HdL$%(Ld$(IHtHHCLLHh HM0Hu$HUH=H5IgnH[I$1HHtHPH@HR HR0H9HBH|$HLl$tGLsHt>L{LHgc1HLLHg1MtIFLIIHxgH\$HtXLsHtOLKIA H9h0u.LHLL$gH1Ht$LHg|1MtIFLIHHD$(dH+%(tgH8L[]A\A]A^A_HH֊1yFE 0t71t,ÃFHHHuH@@1Ht SH5HgzlHtH޹H[H1[HtHp wH tH HHt wHAWAVAUATUSHH $H(H/dL$%(L$IHHEHX { H5H{gH5H{IgILL eH5H{glHHH1H|$H\$HHr gͱH5Hgݰ H|$H\$MD$MHD$;HLgHtH@ S='t/HLgHu9H=ґHH5g}k1H=HH51g]kdHXH5HgzHu|$tIU H5}Hg H5yHgJHu|$tIV H5YHgH|$HHmCH$dH+%(tgH([]A\A]A^A_À=)tSH1C(Ht Hg譯HC [UHPSPgeHHHCHZ[]ATAPUHSg2@H@(Ht HgBHC Dc0H[]A\ATIUHPSg1@HÉP(Mt LgHC Ht HgHC0H[]A\UPHSQg@H@(Ht Hg议HC HZ[]UPHSQga@H@(Ht HgqHC HZ[]USHQHG8Ht%HhHtHx1HtHUHHH{ g{(u H{0g{t ZH[]X[]HW8HAWAVAAUIATIUHSAPLG MtH H5L1ghAE(tfwupEu:H FA}0tH 3HVEtH+H5;L1g:hH;IM0H'EtHL gEiL Hg1iI]8Ht?L{A}(uUH L1H5ggAHLLH[X[]A\A]A^A_1HtAA9tZuL/~L HcM9DPt5IxtI8tH IH I@HIL@I@LA p11 tMX/IP uHHHL HJHcE QAMcL9s%ML pHHcM9tL OMIDPL 2vIDPIDPHApcvAJHcHI9r~ƅM9\PHcMuWMtuMXHcL IDPM9tILYII HJ M;DPfAI9A@ f?/AH HcAAAJHcI)H(Ix  ˚L 4J w HAPIP I@HfI@ AAHH HIHH ILAIHLH(IpI4!ItPH$FtHFLVHD_ߋVщ!A 9uA!D^IPIpHBH9uMH)D$LD$LLD$AqHIPHfoD$LD$ALAMHAVISHLEAHDDƃ@ uHx vH@ H%HB H=f?GHHHBH|8 DAIM)I9sII)A8t?tA1AAJ AAfAAAAJB AttNDD9tFFA<t2z9uH[A^<tGHwf`zuEH!H=*HIWHtHLHD$ $b$ $HT$ H=t$H$gt$H$Åx t#ŗuH=3H=ؚAVSH(tJLMIBI9IHBIHL;ΓfAH(L[A^HD$1LHHimNAHD$ fDHIPH Ht-HuHt HߺH $HoH $L@HD$H,8H@Ht*L,HH)fIB(HAAHHHttH #HXHHHHHHHHH ԒHHʒ@eHLPd^HHt>HH IH9H_HĕHAH LE111AAL$I"LL\$H L$H.L\$HHH ICHtwI[ HHHفH H H IH9/E1A21H=\ L5ݔInHϺH $LT$ H $tH $LT$8&OH $H $EIBHHܐAWIAVAUL-ATLcUIL$ LSH8ITH BBHrItN V9H~OAʃAuLNL9OLPL΋FtHFLNHDWߋVщ!A 9uD!ЉFV f?JIHcApApH9t9HHpHHI;TtfKtPHHBIDIDЃ .HvKtPVAA HArf?DBAA҃ff.ff.DBD1=~AA W9Oƃ ЈGV f?JH!)ȉBH!i)kH8[]A\A]A^A_ÉH DfDff.ff.AAuBHcH9rDAIcHHwIcAHHHqHB4HcU=cHcE1EpEPAcD|$AAEtbDE)A UD|$EwAcAECEp3HSHwAPHپfAE1W@@ UHcIH9s EAIc@HHH)ʁLtEE@<H|$HHKH)HT:H9 H?C HcH9ȸLBDBHHz DHBH9uH9<@toHvtA#H9EHH HAH)ʁLtH@wH AIAE1L1A"DT$L\$oL\$DT$HHIC I1EB%I ƸHMs (D9AM1҉Ic҅IKIsA?DAA ASASA )ЃACLIKQ ЈAAC f%A ACfES ACI{tI;tI KDHICHILXICL1fIC AACHDHfo$AL+HHq HHHx ȉ ȉ ȍH!H i)k AHEFAI9BHcAFH9HT$(DT$$L\$L$L\$DT$$HT$(x@HcD$ILPAFD$HcA upHy vfHA H%HkfIC AACH#HtICHILXICLqfo$$A#LA f?AFHILqI)HcHIMIIt6Lt~tPF~tLcM9s@IM MIM MIM D!LcM9sD)ȃLcM9s Q뱅tfFHFHFHH+AL@~HH)HfF1+L$tHA.FHN FIc FF1ANAFFfHA9}AzAfo$AO\,FL5LD$CffIHafHnHKflɁ) $K dHWHDB HcH9DRB HcH9DRfHAWAVAUATUSHH9]IH_HWHHHcIHvHHʉ Љ Љ Љ ЍP!Hci)kHD$AD$H4BAD$H9DBIcAD$ZH9DBIcHBrL5L=IlPHAAKAtEAu?Iu4DHcIlPIHiEJH LD…Icċ~AIlPLcx 1HwE1A1"BIHtL5ulP-t6;-A$HH0H8[]A\A]A^A_Ë2tV-L-vIcEu AE|$HH|$(HL$ADžxzIc$IcuHL$HH HDAEH<1HH|$<uAEA$D$,Hl$,+<HE1D~YA$D$(AsAD$(9D$,tIcHH~Aډƒ:9McB<3:H5`IcMIc$HB|3:LD$zA<$IHAE9|$gH :;:PHitFHD$HT$IcH5H8l(D$(T$,CH;:t HDiu ?HD$HT$IcH5H8؉ׅZzLL$A<$IHH7fAWAVAUATIUSHXHhH +DEH AD99IcLI;(:oՁDAHDILD$IL$$HMtHcL$A<$-LLDL\$DT$L$PL$DT$L\$AA91AăHcA)I,t9>H9oH,Hb}-u}tۉ :AD$EtZtV<-u A|$UAIL$HL$0+<-A4IT$HEE1E1@t$/H4$HT$<-HH<=:tAuuZAl$HcD$Ix-HM~|$/:tHfD$A?DL$HL$ gfff.ff.H9~ D4E8ttH95?1DL$HL$ l$ttH}HHAT$H}|$/:^HfMI<$L\$DT$L$xL$I$H5yHI8L\$DT$L$ HH=*}IHHtD$AT$H}|$/:He8I<$L\$DT$L$xL$I$H5HI8JL$DT$L\$yA-HxLD$L\$D$wHcLD$D$L\$IHEt9H5I8HL\$DT$L$L\$DT$L$D$H5A:ff.ff.ITIHA9|I3D9} HuHED#AHXD[]A\A]A^A_ÃH|$0HʾLD$HDL$DH)L\$8DT$@HL$ HT$HT$;HHL$ DT$@H9‰|$L\$8LDL$DLD$HlD$H<$McIIAT$9=gHD$HtDID$EL$HDE1u:0HL$ ADL$AH HHTDLLDD$L $LT$HL $DD$M&LLHH|$DHD$OD$x L$DHXHLH)}HH|$DD$D$x͋D$Dxf.@AWAVAUAATIUHSH(D$ HD$H$ff.HtH1HúH5/VIATUHcSHH@HHIHOHUHHHcHH Ȁ=tQu7Uu-Ht$ A1HHD$ UAtI,HHT$ 1VjU $IA H$IpHH|$HD$H?HD$HHHT$ HtRA HHt*u&HD$ Ht$8H{HHD$(>HHcϲH@[]A\A HHA HHGH8vG?wtH8[&ZHL$(HT$HHL$Ht$H=|ZVHT$Ht$ H=\ZD$7WH|$D$H8ÍN1?w HHÐHH1H8oATAH=UHSH6KH xHH1HǺ4U+HKHeHKHtIcH}aHDcxHSXHC`ǃu#IcHT$THu ǃ Hv=N~{-fHnHSHCPflHPHCC@u ǃHlH[]A\T11}r IcHuHcиH  SdH%D@01D9t#HHDA@u[É9t1Dtʁ@@tHcE1ҸHuE11H1H@tHtøÉHxHcH[HATIUHSHHH HW`H4$HwXHHT$HcxHHt$HD$HtUHHH~EHL$HH9sJIT$XH)HfHnfHnflAD$I|$`u/HH跮H1҃ A $H H[]A\HBID$D뿋xmVAWHAVAUATUSHH8HG(HT$HW8Ht$ H)HT$HD$L4HL$(tL|$LcpL|$ HCXHK`HfHnHC8HD$fHnflC H8[]A\A]A^A_f 1HC8C tHD$I+GH)IIWHc{xLLH觭I9zHxIWI)H9sÃH)IIWLcHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H$HT$D$HD$HD$ D$ 0HD$HAVUSHy-H߉S t0[]A^lHAH߉S EtHH HHChHtHKpHHpHCpHtHKhHHhH9t H螭H薭{HCpHًy HH|$H|$t D$>D$HËy HH|$H|$t D$D$HUSHHttH1HC8H9C(t11HSHH{(HsHCH9tH)ƺHSPfHC8C C1H[]H61HtH=6gH5HtH=5M H6HHC8H9C(tH߉T$ !T$ ŅtHH[pHt yHC8H9C(tH ; R1u 8HHAUATUHH=9SHH6lDHtuHCiHﺶAĸHcHHAxIAtHcHHDHHtHH[]A\A]i1HcHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$H$HT$D$HD$HD$ D$ 0HD$6HUH1S?HHuTDD9tYHC(H;C tOHPHS(1@tHHt,HD[]É|$ H=L$ DH"hA뫸ƋHxt%dH %;A0t H);tHO(H;O t HqHw(ÉgUHSHH|$EEH|$HHHH9H[]AW1AVIAULIATIUHSHHHEE1H$yIHuLB HUH9tEH)LL9IGHT$<HT$HUIH)HAH-H)IHtIHfLƅCIEH)HHH;LO y= J AAʚ;1LAAAgCt dM9HfAL)H4 9s1҄ɋHE)1҃gH#)LH)HcHHTH9@HcЉHi98H!)Hcʍ)H HD닍< uD 1DAЅu:HQI9I9sʚ;u A.uʚ;u\I9sWAtQ-VA9r]tHmt H8-tGDD)zAu?HQI9LG%HAI9u-9ɚ;vHAL9sACIHAL)H4 9sHQh@ff.IM9s EVEtgtADHEA f~{#HOD9~[|VV0)׉HDHE0 fuHO0H M9s EFE LH+HcHcHHDHкH)HHHcHH9HOHHH=o0x) AfD9ADžf M9s&EFEtD D1u 닅0 f#LH+HcHHHH)кHHHcHH9HOHDH~XDžf&0 DHAftỈLUMHHctDžfH=xH)AAff.HIIHHHH)0AHH wHt0IAA@0ILL)H~0Ap+A@I@HI)IcI9\D׸+9F 8X09 A uC9|HP 9LP¾ LLA$ Luy HP u(HcHPLHJLD5 u4 u+0X0LHPLftICM9MILCHIL9LFMff.ff.ff.ff.ff.HHIHHHH)0HH wHt 0HHLeM9t_@tI9sG0HG @0H0I9rL1H)L9HBHI)HP t3IL9rYLMA LL9tI)E0AH}HLLLLLID H>HISHGHOL)H9ѺHBIHP tIH¾H=uL'Lff.ff.HHIHHHH)0HH wHt 0HHLe@tI9sF0HF @0H0I9rHP t#H IM9s^H~TA HuL1HPLH)L9HB HH9NHc9LI뒋H HP 0~fff.ff.ff.ff.ff.HHIHHHH)0HH wHt 0HL9t%HLeM9@t$I9s$G0HGE0H}@0H0I9rL1H)L9DHHBH 8HP I)Ʌ]E)IDHM9HLMA L=HPHO tDHDD I)E1LPLHLLLA$DꋽHLLỈ HLAt}uqHPH= rLHLLHPLILHL I)E1HcHHPHLLL9LHIOLLILHMHEHP tQA A u tP0DXHD9DM HP0uHHuHH)뗋0X HP>둋0HvD0EHHHEL)H0HHcHH9~HLcSLHLHIHH!1HuHxDff.HLH)H9t9H9L1LHL!LtHff.ff.HHHt 9u[1fDHHHt9u1*ff.ff.HHHHt8t)1f.f.f.f.f.f.IIfff.ff.IH@tNMuH@At HHGAtHHfGAHHtYAVSI0fnHH FMQH^L_IMqfJLLڈGHMIJ#ff.oHHGH9uI LLL)AtH0HHHrt 0HHrt0HHfrtLf.ff.oPfpHfnHH˜frfrfBH9uMJ4K<M)AmoHGHA\HHxHHAt HHGAtHHfGAtL[A^MQH^L_IMqfJLHL[fff.ff.ff.oPfpHfnHH˜frfrfBH9uMQH^L_IMqHJLLSff.ff.ff.oPfpHfnHH˜frfrfBH9u{HHf.f.HH9HH)H)HHHH9sHH1H9Ht 1oHZHtHHII%ff.ff.LLHL9uHHH)@DDHH9uÃuSH tHtJH  IHA HH<H<L9uf.H  HuATUHSHHH}@t%t@8tA;A6A9t}(;[‰]A\)S&18[HEf.f.Htt79HHH|$HT$HHHHLcIILfff.H HJHL1H!HLHH!H Lu HHt9uHf.f.f1ff.ff. 8u Hu1)SHY-H[UHSHHXH&hHtHHHH[]H1[]AUIHATIUSHHH9t#HI<LHH)#HH[]A\A]L-HSIHHHHBHL1ƒLt/HH9 HHHHH@t-Ht u?tILHIIDHufDff.ff.ff.ff.H2HHLH)L9KH7IH IL!ILt'HL)H[f.DIH Ht8uJHHff.HHH :HH!Ht H8uL)ATIUS.HxHfHHtHLH+H[]A\UHHSH1HHH)HHDH[]Ht$ H<$t$ H<$HHPi*f.f.f.f.f1)D$)D$~tSfff.ff.tYȺHHH TfDH:tH)HHtHLHrHf.f.fDAWfE1AVAUATIUSHH)D$ )D$07ff.ff.ȺIHL|@H T B >t|C<<uE1HHL[]A\A]A^A_H;T$tHIIL9sZH $<H @8t@8sHH+ $HL$L $IHD$H$E1HD$A1HL9tHHHL9s,L A89tsII)HAHH $HGHHiH9LCT$HCHBJ4MLT$H<$IHH&LL)Ht$t HD$IGL)L9IBHHD$LME1H?HD$iHT$1LHtHL)L9nILLd$Eff.ff.ff.ff.ME1LL)L9rCD>HT HsLH+|@HtI9ICE1II9HICff.HtA:tH+$E1IHfff.ff.I9HA4@84tLl$Lt$?f.f.DH6H@uHHT$H8HT$r@&Hz@t7D@EztcxzHHH\HfPfDHH ʀ8f9uHH A HD  Dff.HH 8tJ9uHB2H#ff.ff.HH ʀ8t 9uH1HHIIH~wxtp@7@tvcfGfDvUGDvIHGHDv;HGHGHDHD>v$HGHG'HG/HG7HDHDHDHDHIHDHu HHL1)HHGH)H 5t1…x u 퍊AЉD9ttxDADAADDA9tDEyIcE1ҸHu1빋xø=tチHuظHMHMHLL$HH=IH= H=1ATUHSHxunet tStAHJu@tҁuCD#DCH1ҾHA %Kt[]A\Ë%=t=tJ9u1øø DO 179t DGʁtލquԅu Eux11A@Huݾ1$wdH%HtB@@z@1Ht w&HcAuHt HH! 18IHLMLT$MHHHu1_Aщ1<HHHcHxXHÉHHE1E1j11HcZ1YDHc8XHHHcHc!tHcXHHcHcҸHWHHWHÅtbHHc%uTu_t$ H<$AuCDT$ L$AuJIc8HHIcx}HcpWADHHYWAIc8HHIcxAtHHHHcj1E1E1HHHVHfHiCHH2i@Bfn)ifnHfbfb)$#HH wSHJgHcH##$#$01 }Ls1ATIUSH-gff.HtA8$uHLauHc1[]A\MSt1[É&SC9[vF=շvH' v@ v21w"1Ã1 ø1vÉH fЉu1HH=uHHSS9[Wи v 1aW CAATDǹAUDL%wSH=4}7HL ukVH!ЍRD)HuHz42 HH"R)AAAtt$B AH$H+LH|$ILAH|$xH$LAՅxH|$Ht$ H([]A\A]A^A_ÃMAWAVAUIATEUSHHM0$Ht$8HHT$D$,H$HL$HD$ I@H|$@HD$Ht$0cINHɉȃ?#@nLt$AIIHD$ID$,HD$ McLHT$Ht$@J+HT$ D$,uMA~GHD$ HT$HN|HD$0I|T$H|$0HT$HL)LT$UH\@I(H|$uCL|$8Ht$@L]LL$ ELHL$HT$HHH[]A\A]A^A_HD$Hȃ@H|$AĉD$,IHHHIH|$I IH|$|$,u$LVA@H|$FLt$HH[]A\A]A^A_f.DHHAWHfHnIAVH)flAUHATIUHSHHHLt$@HD$ H)D$@L@ff.HHHHHHBH9rHD$0LD$E1LL$AHD$SHL$HT$MEHLPD\$,A?DHAHDHIHI IL;d$ HH҃trE]HT$ IcD\$,L)H9T@xH\$0HELL|$8AVjLD$(HL$ HT$Y^D\$,AaIIH\E1L;d$ sxHT$HL$EMHLAqLIH>HH>AAt#DIHIL;d$ sA.IIL;d$ rAH\$0EHLL|$8AVjLD$(HL$ HT$XZ&HujMu0LAI)HHIH AuqHu>M7Iσ@/A@I)AtLE1=ILE1HKHɉʃ?v@tLAI)E1HAAYHHEMAL>HLHHHII)H?IH IcHD@HH\$0HHL$8HAVH)jLD$(HL$ HT$HH\EH?H\$@HLI L|$HAVjLD$8HL$0HT$(oH AGE1HHH[]A\A]A^A_f.f.HD@Hff.H9tHH 9u1HDHHH1uz@tttHHIIHHHHHJ HH!Lt&ff.ff.HHuf.@u HH|$.H|$HHHt9uH1f.Hff.HuH)HSAHH0HHyɚ;LT$ t$LDD$HL$L$THL$L$DL$DD$ofD$ fH~HxwfH~)D$ H1EIcHHE1ɿjHMHL$LT$^_H $tMtutd}DH0[fjEHH+D$ H)D$ uE1vLD$H1E1jH޿\ZY뒃tn맋USHH(Ht$T$ H $DD$sDD$H $T$ Hp|$1OH([]UHSHHju^et tStHBu6tƁC3DCH1HACKtH[]1HUHH54SH=4HXHHH5Ht HH[]H[]USHHHHt Ѕt;t:HcHu6Hu.`H1iCHHC1H3Hc3H[]HHH11!Hc2HÍWЃ wHH1vÉH hЉG v$vv1øf.f.HBGId/Glf/fHfW ̅tvfff.HHH# wAAff.ff.ȉDJILH#<)0 C4wø0fA@f.fH I11H([]A\A]A^A_ÐHHH!tHu1LLMtIQ EY811HL>fDff.ff.ff.HJLH+JEA6HLI9tDAtAuHBLHvHlAWE1E1E1AVAUATE1U1S1H(HotNHoLDHHHt [options] Built-in applets: %-10s %s /etc/network/ifupdown-ng.conf%s: applet not found ifupdown - %s Usage: %s %s: -%c%c --%-30s%34s For more information: man %s Global optionsthis helpshow this program's versionExecutionforceforce (de)configurationinterfaces FILEuse FILE for interface definitionsno-lockdo not use a lockfile to serialize state changesno-actdo not actually run any commandsverboseshow what commands are being runexecutor-pathexecutor-path PATHuse PATH for executor directorystate-filestate-file FILEuse FILE for statetimeouttimeout TIMEOUTwait TIMEOUT seconds for executors to complete/usr/libexec/ifupdown-ng/etc/network/interfaces/run/ifstateMatching interfacesautoonly match against interfaces hinted as 'auto'includeinclude PATTERNonly match against interfaces matching PATTERNexcludeexclude PATTERNnever match against interfaces matching PATTERNifaceauto %s %s %s no-defaults # warning: failed to unparse address %s %s %s.%s.lock%s: while opening lockfile %s: %s %s: while getting flags for lockfile: %s %s: while setting lockfile close-on-exec: %s %s: acquiring lock on %s %s: while locking lockfile: %s auto %s: could not acquire exclusive lock for %s: %s %s: cannot change state on %s (template interface) %s: (de)configuring interface %s despite config errors %s: skipping interface %s due to config errors %s: skipping %sinterface %s (already configured), use --force to force configuration %s: skipping %sinterface %s (already deconfigured), use --force to force deconfiguration %s: changing state of interface %s to '%s' %s: failed to change interface %s state to '%s' %s: could not update %s %s: could not parse %s %s: could not validate dependency tree %s: failed to apply compatibility glue %s: could not sync state %s: failed to change state for interface %s %s: unknown interface %s take interfaces downifdown [options] 8 ifdownbring interfaces upifup [options] 8 ifup"%s (%zu)" -> "%s (%zu)"requires explicitdigraph interfaces { edge [color=blue fontname=Sans fontsize=10] node [fontname=Sans fontsize=10]}%s=%s %zu%s query interface configurationifquery [options] ifquery [options] --list8 ifqueryProgram-specific optionsrunningshow configured (running) interfacesshow configured statepropertyproperty PROPERTYprint values of properties matching PROPERTYdotgenerate a dependency graphlist matching interfacespretty-printpretty print the interfaces instead of just listingallow-undefinedallow querying undefined (virtual) interfaces%s: interface required %s: could not determine value of %s for interface %s: %s %s: counter %s is not valid or not available display statistics about an interfaceifctrstat [options] ifctrstat [options] --list8 ifctrstatlist available countersno-labelprint value without counter label/sys/class/net/%s/statistics/%srx.discardrx_droppedrx.errorsrx_errorsrx.octetsrx_bytesrx.packetsrx_packetstx.discardtx_droppedtx.errorstx_errorstx.octetstx_bytestx.packetstx_packets%s: %s: output format not supported redisplay interface configurationifparse [options] ifparse [options] --all8 ifparseyaml-rawformatoutput format to useshow all interfacesnetmask%s/%zubridgebonddhcp-hostnamelinkvlanstaticloloopbackinherit%s:%zu: %s %s '%s' without interfaceiface %s: unspecified inherit targetiface %s: could not inherit from %s: not foundiface %s: could not inherit from %ss: inheritence from non-template interface not allowediface %s: could not inherit from %s%s without any other tokenscould not upsert interface %spppinheritsiface %s: could not inherit defaultsauto without interfaceskipping already included file %sbridge-portsmissing directory to sourcewhile opening directory %s: %s%s/%smissing filename to sourcematching pattern failedgatewaysource-directoryaccept_raipv6-accept-raipv6-autoconfbond-ad-sys-prioritybond-ad-actor-sys-priobond-slavesbond-membersclientdhcp-client-iddad_transmitsipv6-dad-transmitsdriver-message-levelethtool-msglvltunnel-remoteethtool-ethernet-autonegethernet-pause-autonegethtool-pause-autonegethernet-pause-rxethtool-pause-rxethernet-pause-txethtool-pause-txethtool-ethernet-portethtool-ethernet-wolgro-offloadethtool-offload-grogso-offloadethtool-offload-gsohardware-dma-ring-rxethtool-dma-ring-rxhardware-dma-ring-rx-jumboethtool-dma-ring-rx-jumbohardware-dma-ring-rx-miniethtool-dma-ring-rx-minihardware-dma-ring-txethtool-dma-ring-txhardware-irq-coalesce-adaptive-rxethtool-coalesce-adaptive-rxhardware-irq-coalesce-adaptive-txethtool-coalesce-adaptive-txhardware-irq-coalesce-pkt-rate-highethtool-coalesce-pkt-rate-highhardware-irq-coalesce-pkt-rate-lowethtool-coalesce-pkt-rate-lowhardware-irq-coalesce-rx-framesethtool-coalesce-rx-frameshardware-irq-coalesce-rx-frames-highethtool-coalesce-rx-frames-highhardware-irq-coalesce-rx-frames-irqethtool-coalesce-rx-frames-irqhardware-irq-coalesce-rx-frames-lowethtool-coalesce-rx-frames-lowhardware-irq-coalesce-rx-usecsethtool-coalesce-rx-usecshardware-irq-coalesce-rx-usecs-highethtool-coalesce-rx-usecs-highhardware-irq-coalesce-rx-usecs-irqethtool-coalesce-rx-usecs-irqhardware-irq-coalesce-rx-usecs-lowethtool-coalesce-rx-usecs-lowhardware-irq-coalesce-sample-intervalethtool-coalesce-sample-intervalhardware-irq-coalesce-stats-block-usecsethtool-coalesce-stats-block-usecshardware-irq-coalesce-tx-framesethtool-coalesce-tx-frameshardware-irq-coalesce-tx-frames-highethtool-coalesce-tx-frames-highhardware-irq-coalesce-tx-frames-irqethtool-coalesce-tx-frames-irqhardware-irq-coalesce-tx-frames-lowethtool-coalesce-tx-frames-lowhardware-irq-coalesce-tx-usecsethtool-coalesce-tx-usecshardware-irq-coalesce-tx-usecs-highethtool-coalesce-tx-usecs-highhardware-irq-coalesce-tx-usecs-irqethtool-coalesce-tx-usecs-irqhardware-irq-coalesce-tx-usecs-lowethtool-coalesce-tx-usecs-lowtunnel-keydhcp-leasetimelink-autonegethtool-link-duplexethtool-link-fecethtool-link-speedtunnel-locallro-offloadethtool-offload-lrotunnel-modeethtool-offload-rxethtool-offload-sgethtool-offload-tsoethtool-offload-txethtool-offload-ufopointopointpoint-to-pointppp-providerdhcp-scriptrx-offloadtso-offloadtunnel-ttltunnel-endpointtunnel-physdevtunnel-devtx-offloadufo-offloaddhcp-vendorvrfvrf-membervrrpvrrp-cfgvxlan-local-tunnelipvxlan-local-ipvxlan-remote-groupvxlan-peer-groupvxlan-remoteipvxlan-peer-ipsvxlan-remote-ipvxlan-svcnodeipifupdown-ng 0.13.0 Copyright (c) 2020 Ariadne Conill Copyright (c) 2020 Maximilian Wilhelm Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. This software is provided 'as is' and without any warranty, express or implied. In no event shall the authors be liable for any damages arising from the use of this software. Report bugs at .%s /bin:/usr/bin:/sbin:/usr/sbinIFACEPHASEMODEnoneMETHOD1VERBOSEINTERFACES_FILEIF_ADDRESSIF_BRIDGE_PORTSIF_ADDRESSESIF_GATEWAYSdependstartstop/etc/network/if-%s.d/bin/run-parts %screatepre-uppost-uppre-downpost-downdestroyalready configuredtransient dependencies still existifupdown: (de)configuring dependent interface %s (of %s) despite config errors ifupdown: skipping dependent interface %s (of %s) as it has config errors ifupdown: skipping dependent interface %s (of %s) -- %s ifupdown: skipping dependent interface %s (of %s) -- interface is marked as explicitly configured ifupdown: changing state of dependent interface %s (of %s) to %s ifupdown: dependency graph is broken for interface %s allow_addon_scriptsallow_any_iface_as_templateauto_executor_selectioncompat_create_interfacescompat_ifupdown2_bridge_ports_inherit_vlansimplicit_template_conversionuse_hostname_for_dhcpbridge-pvidbridge-vidsFailed to add interface "%s"compat: Missing interface stanza for bridge-port "%s" but should not create one. truefalse!!bool !!str %*s%s: %s%s %*s- %s=%sexecution of '%s': timeout after %d seconds /bin/sh-cexecute '%s': %s reading from pipe: %s ifupdown: %s: attempting to run %s executor for phase %s ifupdown-ng: %s:%zu: warning: unknown config setting %s ifupdown-ng: unable to parse %s: %s : unrecognized option: : option is ambiguous: 2>/dev/nulleval "printf %s\\\\0 x $1 $2"%x:%x:%x:%x:%x:%x:%x:%x%x:%x:%x:%x:%x:%x:%d.%d.%d.%d:0rwa-+ 0X0x(null)-0X+0X 0X-0x+0x 0xnaninfNANINF__vdso_clock_gettimeLINUX_2.6m  1%[B/SETdQsNFe]+8l{!5GVo9/F`n 8La'LgwNo error informationIllegal byte sequenceDomain errorResult not representableNot a ttyPermission deniedOperation not permittedNo such file or directoryNo such processFile existsValue too large for data typeNo space left on deviceOut of memoryResource busyInterrupted system callResource temporarily unavailableInvalid seekCross-device linkRead-only file systemDirectory not emptyConnection reset by peerOperation timed outConnection refusedHost is downHost is unreachableAddress in useBroken pipeI/O errorNo such device or addressBlock device requiredNo such deviceNot a directoryIs a directoryText file busyExec format errorInvalid argumentArgument list too longSymbolic link loopFilename too longToo many open files in systemNo file descriptors availableBad file descriptorNo child processBad addressFile too largeToo many linksNo locks availableResource deadlock would occurState not recoverablePrevious owner diedOperation canceledFunction not implementedNo message of desired typeIdentifier removedDevice not a streamNo data availableDevice timeoutOut of streams resourcesLink has been severedProtocol errorBad messageFile descriptor in bad stateNot a socketDestination address requiredMessage too largeProtocol wrong type for socketProtocol not availableProtocol not supportedSocket type not supportedNot supportedProtocol family not supportedAddress family not supported by protocolAddress not availableNetwork is downNetwork unreachableConnection reset by networkConnection abortedNo buffer space availableSocket is connectedSocket not connectedCannot send after socket shutdownOperation already in progressOperation in progressStale file handleData consistency errorResource not availableRemote I/O errorQuota exceededNo medium foundWrong medium typeMultihop attemptedRequired key not availableKey has expiredKey has been revokedKey was rejected by service          $*2?HTf$TH2Te$ HT: option requires an argument: : option does not take an argument: =ig.--.N..-XBWiW-X-X-XWWWX-X-X-X-X-X-XTX}XeM}gdM}eeeM}M}M}M}M}M}M}M}M}M}M}_M}M}M}M}_M}M}M}M}M}M}M}M}eM}_aeeeM}aM}M}M}cP`8a`M}M}&dM}bM}M}______^__0123456789ABCDEF                  ?@ʚ;_??AM(knN{?`/proc/seĘɘΘӘߘalnumalphablankcntrldigitgraphlowerprintpunctspaceupperxdigit !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|x< @@@I<` N 0 o @     `8p0/1? @ !`{B ???p@?C80?0?0`?? 8?`? DhL>4?0?? p?????{??        ( ) _ 0V90 1 x !"###$#%& -:.=/>0?1@1C2D3E4P5Q6R7S8T9Y:[;\e?f@hAiBj@kClDoBqErFuG}HIJKLLMNOPEW{|}XYZZZ[\\]^^^_`aabcdefghijklmn---PiQiRiSiTiUiViWiXiYiZi[i\i]i^i_iuvpqvwxyz{|}â̤ڦۦjn&*+Nbcdefmnop~}ύДѫҬӭ԰ձֲ y$9Oa8($3&~+*](*?*=EG***.265OK1(D/-)A)+*)C*'%$L Tt&%@?p P0 `З@‰8AVJdp~ A 0  ZuZ0ZZZZZZZu0h` (@  "'Qow|  $++++++++TVVVVVVVV+++++++++[VVVVVVVJVV1P1P1P1P1P1P1P1P$Py1P1P18P1P1P1P1P1P1P1PN1N NN$nN1&nQN$PN9S1P1P 1P1P1PS$P1\{\{\{\{\{y\{\{\-+IHx\{ +(***+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*+++++++++++++F+%+UVVVVVUVV$+ѲѲѲ׃1P1P1P1P1P11P1P1P1P1P1P1P1P1PN1P1PN1P1P1P1P1P1P1P1*++++++++++++TVVVVVVVVVVVVTVVVVVVVVVVVV *+++++++++++++**++++++++++++++++++++++++++VVl++++++++++++++++++++++++++++++++++++++++++lA++VVVVVVVVVVVVVV,V+++++++++++++++++++++ l%%%%%%%%%%%%%%%%%%%%%%%%%Vz&%%%%%%%%%%%%%%%++OVV,+VV9++UVV++OVV,+VV7u[{\++OVV9++UVV++OVV,++VV2Wo~~-~9oW~~+++++++++++++$++++++++++*+++++VVVVV9*++++++++++++++++++++++++++++++++++++++++ɬ N1$P1P1P1P1P1P1P1P1P1P1P1P1P1P1P1P1PSG++++++++++++N1P1P1P1P1P1P1P $P1P1P1P1P+++++++++++y\{\{O{\{\{\{\{\{\{\{\{\{\-++y\{\-y*\'\{\{\{ \{\{O*++++++++++++++++++H*++++++++++++++++++++++++++++++++++HVVVVVVVV+++++++++++++UVVVVVVVVVVVV$+++++++++++VVVVVVVVVVVV$++++++++++++++++VVVVVVVVVVVVVVVVV*++++++++++VVVVVVVVVV*++++++++++VVVVVVVVVV+++++++++++UVVVVVVVVVV  !"#  !"#             !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy P ߼@0?YmÇ^?=``@]/_ ? ;_ ? ======?? ???o?????_/>PCx >??|/?8<~~~?_????>????7?o?????pG@??? {? Cd{_??C ꖪ^;Z/[T;[<H[PU[ b[< o[ 5_G_S__ `<%`haaaLc Tc4\cHfc\ncpvc~ccccccePEgi(jcmhkm|sm{mmmmmm oH qs ys s s uP ud w w w w (w ]x< z z z "{ {H ;| _| | | }$ =~P ~ B GP[$@dăCH@QTZhn҇GD;HiÑT] ,^T|ɔИ`t(ƞx_&`|t E,tT I0H bĪӫPx/,Txc?H0дzRx }Z0{Z DsZQHC`ZfBOJ $gUACD AAZFJU 0ZBBB B(D0A8DP\AAC$[9P8\YBBB B(A0A8G L@LB%8A0A(B BBB$]] ] ]\\\\AW4\H\\\Dt\]BDA G  FABF ` AAB4]1BAA G I  CABH_BHE E(A0D8E@i8A0A(B BBB@aQHLX4b;BBB B(A0A8G L!8F0A(B BBBR R dddd$d8dLd`dB<td,BBA A(G I (A ABBHehBGB B(A0A8JD8A0A(B BBBQ i(i>AHC Hi:H\iBBB B(A0C8GP8C0A(B BBBQ tk 8ik2BBA A(J(A ABB _l Sl4GlH;l H\0l5BNB B(A0D8G 8A0A(B BBB@m9BJE A(A0D0A(A BBBO n 4nNBJD I(A0j(D ABB(Po4BDA iAB4| oBJA I(A0b(D ABBDUoBEB E(D0D8B@p8D0A(B BBBo$A](o;IDA iAAADoAT B A(doAI ] KF VD(ZpAFGAA@pBJE D(D0J0A(A BBB4 `qFBED A(B0q(A ABBH8 nqBBB B(A0D8G8A0A(B BBB4 'r\BBA D(A0F(A ABB8 KrBBA G(G(A ABB0 sVAFD v KAE AAA(, .seBIA UAB4X gsBAA v ABF AAB< s]JBA D(A0C(A ABBA( sPBDD BAB s4Fi4 tABAD f GBF AAB$L t>ADD rAA4t 3tBBA D(D0(C ABB u  t , tAAG L!AA uB uJD E$0 .vADG0CA,X vuBAD G0` CAB$ #wyADG0hCA8 twBLA H(J@(A ABB xlAG `C IyJD EL$ {yBBB B(A0A8G I \8A0A(B BBB<t {IBBA A(G L!&(D ABBL |BBB B(D0A8G8C0A(B BBBLT}uKJB E(A0D8GP?8A0A(B BBBATy~AAHtq~B4~ABAD l ABF AAB4~YBED D(A0}(A ABBL~RBBB B(A0A8G I!+8C0A(B BBB$H8ANA cCAp $QADA HAA$:ANA gAA1Ao,)?BDA rCBD48BHB B(D0A8GP8A0A(B BBBL|#BBB B(A0A8G I!8D0A(B BBBhB`BBB B(A0A8G L@LI7IBIVIAI 8A0A(B BBBLD…BBB B(A0A8G I 8D0A(B BBBL BBB B(A0A8G L!8A0A(B BBBHFBBB B(A0A8B@8D0A(B BBBL0:BBB B(A0A8G I 8A0A(B BBBH}BBB E(A0A8Dpn8D0A(B BBBV 3Ae I CBL=BBB B(A0A8G I 8A0A(B BBBh|(Af$/ANA \AA(FBII nAB(2RBII zAB$X=ANA jAA$@m=ANA jAA0hdAAD O DAF AAA DBBE E(D0D8B@8A0A(B BBB~ (pBFAD kDA@0T2h+<|אBBA A(G I (C ABB${-ADC ]AAH/BBJ B(F0A8F`8A0A(B BBB<0cBBA A(G L"p(C ABBLpkBBB B(A0A8G L#@8D0A(B BBB ЕtAGjA< BBA A(G I (A ABBL$BBB B(A0A8G I 8A0A(B BBBt/ $aLq'BBB B(A0A8G I 8C0A(B BBB4HeBDK [ ABE kCB/;HUbo T@S@^>K]G>_=P]G>S>v]<[>}_E_Coo>]<______``!`(`7`E`X`m`-i|````````aaa4a,aAaMaaamaaaaaaab'b;b]bzbbbbbc=c]cxccccd$dCdbd|dddde#eAegeeeeef3fSfwfffffg6gUgxgggP]K]ggggg`hghh+h#h=h6hChOhjhchUaMauamaWhOhwhohhhhhhhhhhhhhhhiohih"ii&i|`6iEiPih[ihligisiwiiiiiiiiiiiji(~(~(~(~(~(~(~(~  E8o8    o$@#h%P PhPPVQPiGQf"Q(Q~iJY@QPQLlsQ{QvnQQ\vQQfEQ RRnS>RIRYRTTlRtRRRRR,R`aS SI9SASQSXSSSWWWW( @` XWWX( @`YXXY %@`@Y`r(Y0Ys#seYUYk#pkYtYY#DYY#LS[Yc#PYY{#U-Z=Z#Z[Z[X[)YLS[d[y)n|[[q)[[[[[[\\\%\0\:\D\N\W\b\\\\\].@`P\(-YF]]-A\]-U-Z=Z-PHo&Z8\o&Z9xo&Z:o&Z;o&Z<o&Z=o&Z>s1 =GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0$1o;   C88K@@U@@h_e@@4@kEEqPPf y$8P 8  0ELF>?@ @8 @@@@lll##000>>pppddЄДДH   00HHH$$Std00Ptdp}p}p}QtdRtdЄДД0 0  GNU GNUq`0XDedTR',RG/lib/ld-musl-x86_64.so.1 \3Ź@9(ݣkvsaqIp"b_ "OkJ: YV~!I`9x ) ( )C B.nB Q*V2I[w2Ek<p7WhR^ 4y`H@j z nt 0!@`__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainmallocstderrfputsstrdupstrrchrvsnprintfrealloc__stack_chk_fail__errno_locationwaitpidwritestrerroreerrorstdoutfilenoioctlkillrc_dirfdunlinkatrc_svcdiropenatflockpipe2isattytcgetattropenptyfcntlsigfillsetsigprocmaskforkdup2accesseinfovexecl_exitpollreadecolorewarnvstrlensigemptysetsigaddsetrc_deptree_dependrc_stringlist_findrc_stringlist_freealarmewarnrc_services_in_staterc_stringlist_newrc_stringlist_addstrcmpeprefixoptargrc_service_markeerrorxstrseprc_conf_valuerc_yesnosigactionrc_service_resolvefprintfrc_service_staterc_service_schedule_startrc_runlevel_stoppingrc_runlevel_startingdlcloserc_deptree_freerc_deptree_update_neededebeginrc_deptree_updateeendfstatatctimeeerrornutimensatfdopenfcloserc_deptree_loadrc_deptree_dependsputcharrc_environ_fdunsetenveinfongetenvewarnxfputcopen_memstreamfflushferrorrc_services_scheduledrc_service_in_runlevelstatrc_set_userrealpathgetopt_longatoirc_sysrc_is_userchdiratexitrc_stringlist_splitrc_sysconfdirrc_config_loadrc_usrconfdir__environstrchrstrncmprc_runlevel_getfopengetlineunamegetpidrc_services_in_runlevelfnmatchopendirreaddirdlopendlerrordlsymclosediroptindlibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfo (08 @ H P X `hpxȜМ؜ !"#$% &('0(8)@*H+P,X-`.h/p0x123456789:ȝ;Н<؝=>?@ABCDE F(G0H8I@JHKPLXM`NhOpPxQRSTUVWXYZȞ[О\؞]^_`abcde f(g0h8i@jHkPlXm`nhoppxqstuvwxyz{ȟ|П}؟~ @H`rД?l۶۶mۆPX5k%k@%khAWE1AVAUATUSHdH%(H$x1L\$0H5HiH=^G3oeAHH~1nuH; H{Ht$`HpnŅt6n8kHSH=hH5#GH1linH=G|kH;mtkH{1kHoHu#n8#kH=FH H{YHDpAu HCnoAHD$E1Ht$DH fHKjdtz\U3DSCH5dFH=`FVZnuh{HKHcHH5FH=F=H=mm1Ҿljm1vm=m1^mH=ojSH=oj4n1AH5nH=~E1cilHtHH=lE1FiH5cEH=cE10i h1H5 EH=;EDmmt,H5DH=$EH5DH=Ejtibkt$H=EhHHuH=D1kH=Diu sk8shH=DH1hH=%!kH=DghH! HlHJH=DbkH5AHiH5tDIHgkLHiH5QDH|$XH1B L|$XLhLIUk_jtdgH5DH|$XH1 L|$XLhLHkHHtIUE1HHPHCIELH[H7hj1IH-kHt.H4Ht%Lh=H8hjHtHIHtWH3H=H` u>iH3tH=_Ht$Ht$uL'jHu H;ifH[I]Ht@H;=iH;HD$fHt$HuH;HƺHhH[LAgL8gL/gyiHD$hE1H=BHD$LL$HLL$P7fHD$8HHuH5}BH=qBg1HH=\BgHhLp4Lo H 2BHALIH1eHcLH|$8H5h?ShIHtH=A HD$ HD$@HD$@HD$(H|$(H5.?hHtLHgu&HLHLL)HAH)1!eHHH|$ hgH=oAdH=_ALfLfhpgH\$XuH5hAH=oAftH=lAdE1LD$XHt HH5^AH=PAdHtHH5FAH1 Ll$XMtLH=AfLgHT$HH5A1 |dH5 @H=@HeH5@H=@eHt$H=@eLl$XH=@LeH5>H=@ueH޺H=?`eHgLgH5CH=@eHHt]Ht$PH|$HH_fH~HT$H| u DHtHt$HH=i@dH|$HfHWeH5Q@H=:@dH|$tHt$H=3@dH$cuH$H=@qdH= @tH5L>H=>HdH=?tH5#>H=U>d1e18H=?HWu ;uH5=H==cH=?'uTbHfH5gH=z?cH5gH=k?caH|$0H551Ht$0H=D?acHt$0H=;?JcH=d:1E1;cHfHIHtH;`dH[I9LBLb1H=QfH5e4dI9HLBI}H5*fHeHH9s HH9 H9s HH9s HHٰ LH)B*H`H=w>`Htbt e/=dt&H=3>`HuauauH=9c`Ht8H=9Q`H HHdbH=9d_H==`HatkdH=7_HaÄH==bHuH==bHtYH{HD$XIH|$XH58ALbHHt?!uHE11H5dauLbEuH5dH=F=1accY OE;1'=d31H_cH=<H QcHRc$aIHLG_Hx.tHXH|$X1HH5<L|$XL+`LIaMu^H=<H1b^H5<L``Hu'H<HH=<12^L^T(HD$HIHT$MoIHgbIW1IWIG L8IL=KbLa`H5bHYbHh^D9%ya|~OrHL$P]aH4bH5$aH=;L5 W1_L=`MI6L_u$HkATEA|u(Hc`D9|2HIHuLEH=b]1HaH$xdH+%(t]HĈ[]A\A]A^A_H1HH5YH7HWL7.E1H H=@+f.H=`H `H9tHf^Ht H=_H5_H)HH?HHHtHm]HtfD= `uGUH=&\Ht H=r_\gH=]t H=>]_]@ff.H=_t&UH5_H==H^]8+Q[HuH=.H5X^ ^ZHHt-QO]HuH=.H5\XN^]ZHHt-Q]HuH=}.H5&X^]ZS/H[HtHXH[AWAVAUIATIUSHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH<%(H|$HLHH$$HD$HD$ HD$0HD$UZ=~ghHHc[HHt:$HLHcH$D$0HHD$HD$ HD$YH5VH=-\!9r(H=-H5V\H\;\I]HT$dH+%(tZH[]A\A]A^A_ATUSH dH%(H\$[D HŃ0NCBH[9HcHH-,]$]=N\yHt$ 1X9]uںHt$ YHuŋ}BXH5{]H=0,H1QX롃=[H=cU%[HT$T1W=[HT$1TWgH-+H-+=]~YH=+H5\H1WZ\H5\H=+1WDeHD$dH+%(tNXH []A\USHdH%(H\$Hl$1HVu Z8tHD$dH+%(tWH[]USARH1\X1Hމ>XtFY8t9VH\HoYH5[IAYHH[1H=*]%VX[]UH SP-X1HWYZ[]ATUSH WAHމ1DYtSþWuE@t1YYD HDUH=S*H1VpYDe[]A\AWAVAUATUSHdH,%(H$HH=RXH=RY XuH5ZH=*HEH=ZD$$YUHt$LWHT$41TTH=XHt$$1LD$4HL$L!V=Xx)11`Xu=XFX|$$x'11/Xu|$$XH$VH$H$XV1ҿH$YWYu1u2LH9T$t AD LIfR/DTD$B=THt$(RtQH5#HHRNH=RH5#NH=RH5#NPH5t#HHRzNH=RH5\#fNH=RH5N#RNH=sRH5?#>NPH53#HHGR!NPH5#HH"RNH=RH5#MH=RH5"MH=QZH5"%MUHSHQH;HtHHaOu1Z[]U1SPH_QLH=rP1HIQH߉yLH2QY[]H=w"1QH5QMH=QLu AO8ALH=c"H1N)1ZAWH"AVAUATL%DUSHGH8H5HFt AH|$ OBHT$ HDHB|$(BDMd$H$HdH+%(t?HX[]A\A]A^A_AUATUSH(dH%(HD$1=(CtH=?H=C?=Bt\H=X>H@@tH=C=H=BH50@uH5cCH= @tH5NCH=<11@t=pBuH5#CH=61$@=Auy@5GBH=B@PaAǃuR@8 t&=H5BH= H1=kH5BH=uH=t1Ҿ1@=@1@H=bB<H5PBi,H5=BlJD%jAE@?1H=HŻu }tH=Au#uHAHuH=Q<H=Au H AH-AE1H5AH=DA?HAH8tiH5zAH=1<H@H-}9HHt*EuHH=X?H;HE1I?H[H > H<E1AH j@L@H|@H5@H=@?H A@AHW@H5@H=q@Hb@>H @AH+@H4@H5e@H=>@>H!@<tU=?AH ?H?H5@H=?u>H?@>H?H?HH?H(HtH}; ArAuT <tH=+?H}tH1H=m:'H5Y/H=yAuDHmH;];tH[HuЩt'H;Lu\HH5d?H=*1=:AH3H=>k=HuH3H=>V=HuH3H=>A=HuH;:ŨnH3H=>=HUH=Y>tH3n:H?HH5>H=19H=>H?qH=>8H=>:E1Ht$H|$L=9HHH=E1H(HH5.>H}t;HUH==H5)8H=L(MtI}H5=<;MmH==9E1L o=MtHH=~;H}HI;HmcH9H9tH55H= ;H:uH=<9E1H L<IvH HT$H5.=H=G1/:81H=<H5<81H=<H5<l:=<tH5<H=V1]7H5)<HtH=:9H5<joH=<fH=;t H=6t"H5R<k.H5A<lH=0<7H=#<tHH=mtH1H=B9<u U65W:H=;H5;k5:H=;C8H4;HHt"H;[7tH;H5H[H=;7H=;1H :HHM;H5]6H:H(HtWH}7H:HHt"H;6tH;H5lH[H=:61HmHl:H=S:u61HD:H5:lHD$dH+%(tM6H(1[]A\A]À=9ATUStH=115H=f:(66t  n=9t \t H5,:H=17E=8@5B9H=9@K\8ǃue78 t$4H59H= H14H59tH=Y17H=e1e41Ҿ17=717H=J93H589eh5udH=9H5 5H= uH=8H5'5t-H=1N6H58h6=7 [61H= 0H|u ;tH=%8u1H8Hu H5[8h7H= 15H=7uH 7H7AH57H=7>6H7 6Hz7H7H@H@HHH;3 ArAux3tl=6H3tH=r1>2OHnH;S3t:H;H59 H=2 AZuDH3H=62HCUH=621ɀ=t6H 6tH57H=11:H6HHH;2H;H;2uz 3tFL%(6Mt(H5 L4tPH5 L3t[arg]Usage: %s [options] stop | start | restart | status | describe | zap Options: [ %s ] %3s --%s %s%*s--lockfdunable to exec `%s': %s fork: %s WARNING: %s will start when %s has startedCaching service dependenciesFailed to update the dependency treestat(%s): %s/deptreeclock-skewedClock skew detected with '%s'Adjusting mtime of '%s/deptree' to %src_depend_strictfailed to load deptree%s =havehasstart:IN_HOTPLUGsysinitWARNING: %s will be started in the next runlevelWARNING: %s has already been startedWARNING: %s has already started, but is inactive%s: failed to acquire lock: %sWARNING: %s is stoppingWARNING: %s is already startingERROR: %s needs service(s) , rc_parallel%s: timed out waiting for %sERROR: cannot start %s as %s would not startiprovideWARNING: %s will start when %s %s startedIN_BACKGROUNDWARNING: %s has started, but is inactiveERROR: %s failed to startstop:WARNING: %s is already stoppedWARNING: %s is already stoppingERROR: %s stopped by something elseWARNING: you are stopping a sysinit servicebootWARNING: you are stopping a boot serviceshutdownsingleERROR: cannot stop %s as %s is still uplocalmountLC_ALLERROR: %s failed to stopCannot calculate restart start dependencies on a dry-runpauseWARNING: 'pause' is deprecated; please use '--nodeps stop'/openrc-run should not be run directly openrc-run `%s': %s RC_USER_SERVICESreadpath: %sYESRC_DEBUGNOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sEINFO_VERBOSEEINFO_QUIETEERROR_QUIETHOME is unset.chdir: %sRC_RUNLEVELrc_env_allow*%s/profile.envPATH/usr/libexec/rc/bin:/bin:/sbin:/usr/bin:/usr/sbin:%s/var/cache/rcRC_CACHEDIRXDG_CACHE_HOME%s/rc%s/.cache/rc%s/tmpRC_VERSION/usr/libexec/rcRC_LIBEXECDIRRC_SVCDIRRC_TMPDIRRC_BOOTLEVEL/run/openrc/krunlevelRC_DEFAULTLEVELdefaultRC_SYSRC_UNAMErc_quietrc_verboserc_colorrc_nocolorEINFO_LOGRC_SVCNAMERC_OPENRC_PIDRC_RUNSCRIPT_PIDRC_NODEPSIN_DRYRUNrc_hotplugrc_plug_services%s: not allowed to be hotplugged/usr/lib/rc/plugins/usr/lib/rc/plugins/%sdlopen: %src_plugin_hook%s: cannot find symbol `%s'RC_CMDset xtrace when running the scriptshow what would be doneonly run commands when startedonly run commands when stoppedignore dependenciesfd of the exclusive lock from rcDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modeUSERLOGNAMESHELLXDG_RUNTIME_DIRXDG_CONFIG_HOMEXDG_STATE_HOMELANGLC_MESSAGESdescribehelpdependstatusibeforecondrestartconditionalrestartdebugifstartedifstoppednodepsuser]]] ]]]]]K]]dDsSvl:ZChqVvU;!0Xp.K<dP8%tx%dH"`),t$WPhzRx $h FJ w?;*3$"D5-Ak\J6Ikth6IkA[HBBB E(D0A8Gd8A0A(B BBB0BAA D@ AAB$(GTAAD0KAA0PsqAFB M GJF AAA$1AIC \FA(BAC ABHBBB B(A0A8G 8A0A(B BBB8$+BBD A(D0(C ABB`SAL|As$E,ADD `AA$I?ACA wAA`VJK0WBIB B(H0A8Kp4AG(LnAHG[AAHxBBB E(A0A8Gx8C0A(B BBB$IAAD yAA( AAA AADLBBB A(A0G L"(0A(A BBB$`AAF CAHbBBB B(A0A8G8A0A(B BBB8-s BBA A(DP` (C ABB(dIAA AB<_A]TFAR B Ct?AHBEB B(A0A8Gk8C0A(B BBB@p@z{ {?{^{r{{{{{{|!|&|)y.|4|D|T|yzxnxu6zAt+x,z xc|h|8p7x`xt|O}|O|O|OrqY&rqY rqY2rqYBrqY:rqY+rqY|qYuqY%v]Lw?m|l|&m|&mrO|dwZ|s|S|Dsl}|hyC{Vyvyq|Ugr 0 nДؔo  ؛P# o$h##(%&0openrc-run.debugհ.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9opC  KS ]BP#P#gh#h#(q00b00 w0000=}nnppo p}p}~~ДЄؔ؄  ؛؋   0ELF>>[@@8 @@@@lll8 8 0007<7<ppp  0000HHH$$Std00PtdQtdRtd GNU GNUBI+փg!Q7 /lib/ld-musl-x86_64.so.1 v\vwxyz{|3Ź@9(ݣkOzJx5:*\.X"m<{celQ V'( Z!a\LAB K_Bs Dq.=S'LfL'^ `H@# z 4lt 0!@__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainmallocstderrfputsstrdupvsnprintfrealloc__stack_chk_fail__errno_locationeerrorxwaitpidstrerroreerrorstrchrgetpwnamsscanfstrncmpstrcmpstrlenstrsepsigemptysetsigactionfopenewarnvfscanffcloserc_find_pidssyslogebeginvkilleendvfprintf_exitpipe2sigfillsetsigprocmaskforkdup2execvpwritereadgetenvstrrchratexitrc_yesnorc_set_useropenloggetuidgetpwuidgetopt_longoptargcap_iab_from_textstrtoulewarnunsetenvgetgrnamgetgrgidputenvpiperc_svcdirsocketbindrc_sysputcharendpwentoptindaccessgetlineeinfoveinfovnnanosleepstdoutfflushunlinkrc_service_daemon_seteinfoneindenteoutdenteindentvgetpidumasksetsidsetprioritysyscallgetgrouplistchrootchdirsetgidsetgroupscap_setuidcap_iab_set_proccap_freecap_set_secbitsprctlioctlrc_stringlist_new__environrc_stringlist_addrc_stringlist_freegetdtablesizefcntlsched_get_priority_minpthread_selfpthread_setschedparamsched_setparamrc_conf_valuememchrstrstrlibrc.so.1libeinfo.so.1libcap.so.2libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfoHPX`hpx     ȜМ؜ (08@ H!P"X#`$h%p&x'()*+,-./0ȝ1Н2؝3456789:; <(=0>8?@@HAPBXC`DhEpFxGHIJKLMNOPȞQОR؞STUVWXYZ[ \(]0^8_@`HaPbXc`dhfpgxhijklmnopqȟrПs؟tu|x y@wHv@eOUU#"""""""EDDPX5l%l@%lhAWE1E1AVAUATE1U1S1HX$H=BH$dH%(H$H1$L$DŽ$DŽ$D$DŽ$#lH$/HD$`H$H$HD$DŽ$HlHtHXH=,Hon5 55H=JAkH1mtlH=olH=$AckH$HtjlHHt?H$uH0H=L@^kMuHs H=6@CkLc 1111D$XE1A1D$tE1$D$\1$1DŽ$Ƅ$HD$hHD$(HD$PHD$HHD$@HD$8H$T$Ƅ$Ƅ$Ƅ$D$ H$HL$Ht$xD$Ƅ$D$sD$rE1H$$H `HXShD$0 |$0x5|$0/Q D$00HA HQHcHƄ$뒋D$0- D$0-wHRHcHH=k5hHD$hHGj8gH=>H H=[k?uH=>1jE1H$1L$\hH$2@u $H=u>1i1H=jH$H$H5=[iuHjH5kH=W>r$u 1$u DŽ$ $S1H=jH$H5N<h-H^jH5kH==1i1H=?jH$H5 <hHjH5jH==HjH$D$rD$ H==1hHiH5>H$H$hHH$2&H$H$HH$HQjH5=1gtH$@h $)hHHuH$H5iH==@Lc H=]<D$feHs HtH=><KgH=,<>eH3HtH=<$gEuDkH$H$H5<gH$HH$H$H1H5<ftH$g $ eHH$oHBhHhH=/he1H=hH$H59ftH=g%g $dHuHgH5hH=6<yDhƄ$yH=g?74H$dH$:uH=w $9fHdgH5hH=;Ƅ$H-7gH=;1 fƄ$HgHD$H5fH=g'AD$HfHgH=;1eL=fz1H=fH$H57eTHfH5>gH=;"HkfHD$x)HZfH$HFfHD$@H5fHD$8H$fHD$PHfHD$HHfHD$(H=eH$H571ZdH|$`HeH$H\$`HDnfH$0H5;HD$1H|$ duADŽ$H$(bd8aHH=:HH|$H5:gcEH$J:H|$fDŽ$H~dH)xHxH5_:ccH$HIH$JHL$H2:Hl1H|$00ak~}cHHH=:HHt$0H=2:b1ҾDŽ$a$0u Rc8`HH=9HHt$nau6c8|`HH=9HHcHH=9|$D$\$($$,D$t$0D$X`H59H=91$3H5$dH=y91_bHtHH=g91_H5^9H=^91_ ?_2 H5?9H=<9Ia~cvctH59H=9ĺH58H=8_k>'\Ƅ$OD$sE_Hcb$)$H$HHD$|$ru*|$su#AtAtAA !$H|$xt Ht,L|$x2Mu(HD$L8MLDHtD|$rt=H(8LL|$xHtHD$$HhHD$$LxHHD$Au |$sADDHD$H8u'HD$H u|$uH5,bH=71%`|$ tH5bH=7ြ$tH5aH=7HD$8H D$@tH5aH= 8HD$HH D$PtH5aH=(8돃$H=X81_MuH5aH=t8UH|$u$tH5aaH=d80HD$8H D$@t|$ uH5;aH=q8 HD$HH D$Pt`|$ uH5aH=8H|$@tH|$PtH5`H=8H|$8tH|$HtH5`H=8AH5`Ht>~uLdH`H5`Ht>~uLDHm`MA?~uLL#IA.<w@H?`H$HtLH5q81LH551vH=@8\HH$H$H$H5l3^HtoH_H$HtHMH571 HLH571H$HuH{^1H$1H]uH$R^|$rtEH$1H]t.HH52_H=j7LE1L$[H ^hH$t|$rtH=J71]H|$"$D$rL$H5g3L\HH1H$H$HH$]H~H$| u0D)Hu$\8&ZH5W^H=6H8H$HH$\H$,H$8#x!HH$ À HuH5.H$\LE1HD$x\HT$xH5(31H$HD$1H]H8t T$rAHtH]A|$HcH H$H$HW]HHt HHE1H1D$A9~H\$H Ê\$rH HIcH„tD$E1LH\HHD\$Au |$sAH=\DDD$s $DD$8H$t H$|$8u 1|$tH55wH|$t)Ht$H=e\""AăuZ8tE1H>\H-\HD$ EMu|$urH;Mt)LH=41#YL1H54YE~)DH=}41XD1H5d4Y|$t+t$H=]41XT$1H5C4YH; H=P41XH=0VWHXII}t)L9t VIuH=01IVH=X45WHmH EtD\$0DMDHWD$$LPDD$(H|$0G!AXAYD\$0Aum|$("Et UHt$ H=|31V1E1$E1H$E1E1Dt$(E1HD$PFt 0tD$(E1K}JD$11HDŽ$-1H$Ht$@D$H}HD$02D\$XHE1DPD$PLPDD$(H|$0P AXZE:1H|$P{VD\$XuBEt TW8t"GUHt$ H=2H1pUE1HL$0i$t .TH=9RUD$HD$@"HcEH9D$@,Et hTUHt$ H=21TfHm|$uY|$(~EtMEt  TAuHt$ H=1Ht$ DH=1E1TADt$(D$E|$8u|$t1ED$0zH|$t H|$UH|$`HL$HT$E1LH|$`qUlH|$tHt$H=Wt 111T$Ht$1LqVHtH5WLH=D1|$H=/-SH-UH=)1S$~'HD$HD$H=,$Hp1SϿ R6T|$tt$H=01lTEtDH=01UTH5VHtH=01:TH5VHtH=01T$tH=01THtHH=01S R1LH=01RSH|$t H|$S|$ t H$:Tu$T8RH51VH=Y0HSŃu$oT8QH5VH=60HP DŽ$ Q$AT$RH=/17TH='D$1T_T$1DiQu+S8Q$H5IUH=/H H5/H=/SHHt$HNj$H5/1QHR0TS8t#P$H5TH=X/H$tU1D $Pu5R8XP$$H=/IH5qT1qR$tlH5/H= /(RHHu.R8O$H5$TH=.H1RHNj$H5.1PHQH=SHtmH$HH$DQyPHc$H[H=SH$DHHQy%HSH5SDH=i. H$HOH=RSHt5Ny+Q8 OH.SH57SH=7.H H=SHt5Py+lQ8NHRH5RH= .HF H|$tk$taH|$H5-PIHu)Q8uNHT$H5RH=m#HHDH5-1]OL\PEt#DOtH5[RDH=-MAău/M8`JH$H5NH=*HAH|$@tGH|$@A1LŃuoL8 JHT$@H57NH=*HH|$PtH7HWLE1H H=fH=DHDH9tHCHt H=YDH5RDH)HH?HHHtHBHtfD=iDuGUH=AHt H=C@gH=At H=N,A)D]@ff.H=pCt&UH5DH=,HVC]8+Q@HuH=hH5Q=CBZHHt-QAHuH=3H5=BcBZSH=CHtH_BH1[HCHCHCPH=CBH=CBZAWAVAUIATIUSHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH<%(H|$HLHH$$HD$HD$ HD$0HD$E?=~ghHHco@HHt:$HLHcH$D$0HHD$HD$ HD$>H5;H=AA!9r(H=H5u;'AHNA@I]HT$dH+%(t>H[]A\A]A^A_ATUSHdH%(H\$a@D HŃt@H5AyttH9ucH2HH=*1?Ht$9=y} t2W=H5AH=H1~=H=1k=DeHD$dH+%(t=H[]A\AVAUATUSHdL,%(Ll$I>~umHLHŊ@LuHtHX Mt A$/MPHuH?HD$dH+%(LtfH?HHD$dH+%(uJH[]A\A]A^AHtHLH1H5 HB?H$HT$dH+%(t<H[]A\A]A^Åx% ?AW1AVAUATUSH(H|$dH%(H\$1ۉD$HH>1HT$H5H=u$D$@Ht$HH=\1=H5gH<LeL=1MLE1ۉ\$tM7HLh=tMtLLS=u HAD I뼸HT$dH+%(t;H([]A\A]A^A_AVH>E1AUIATUSHH dL$%(Ld$AL5>H>Hu$H1t /uH 10Hl>E1ҿ HPD`LPLPHHH@>H4>E1DHPHhHhHHPH>Ht&HPH571H;H@E1/H<HHtH) HV<HvLH= .Ld$I9s IH9s L9s HI9rHHLHH] DHDE1E1LD@HH5 LH`;u ED$ƒ0 w>1u;1HUH5481L:tILLH= 1:1-L@Lt EELLH= H<1HMHEH(HEH<}uMtLH= 1:IHMt4 1HPHC<HLpHPHHH&<HD$dH+%(t8H []A\A]A^AWHAVAUL-G,ATUH-/SH8H5;dL4%(Lt$(AHD$Ha H=f HD$HT HD$ 1D$ -?,\7H5%"H=L 1F7H}HEHcUHt$ D$ HLH_HZH= HC17I]AHt,H9HHuH=M H5649gH$HH5E9IHt2A#$HH= 1D)6LE16HH I9D9U&SHdH%(H$1HH|$96HS1҉H$H)8H$dH+%(t6HĨ[]ATIUSHdH,%(Hl$HH5H7Hu-g885HLH= H16KHH1HT$H5 5t HLH= 1m6H7H7D$HT$dH+%(t/6H[]A\AWAVAUEATUSHH|$D|$P~111 H1HD71IHHHHCH$EtDH= 1K6Et-DH5 1 6D1H= T4&7DI1A;5A>AƃA c4DDHT$ID1@H5 3t EtHP7H$"L>7H[]A\A]A^A_ËW7ySH= 1Q687y2f683H=1H5_ H14Z6ZAVHZ AUATUSHPdH%(H$HHD$(H6 HD$01H|$8H|$HD$@HD$HD$HD$HD$ M5H|$55Dl$A܃u9H|$5\$H|$ 4Dd$$AuAŃuAuAHl$HHi4HH$5]4Ņy1H$15EAut$1D2yP2x?AtDr2x'H$1!5Ht$(H=4i4|$ H$2g4|$ 4|$Ht$D$ 3HÅt11A11H$4uD\$31۽31ۃ|$x \$D$|$xD$|$ xD$ 3|$Iċ$|$ |$|$|$|$|$ |$$$A$NH$HdH+%(tn1HP[]A\A]A^PXout of memory xasprintf: unable to format a buffer SIGTERMSIGINTSIGQUIT%s: caught %s, aborting%s: waitpid: %s%s: caught unknown signal %d%s%s%u%s: `%s' is not a valid signalSIG%s: invalid timeout value in schedule '%s'%s: invalid schedule item, far too longforever%s: invalid schedule item `%s'%s: invalid schedule, `forever' appears more than once[arg]Usage: %s [options] Options: [ %s ] %3s --%s %s%*s%s: fopen `%s': %s%s: no pid found in `%s'Would send signal %d to PID %dSending signal %d to PID %d%s: failed to send signal %d to PID %d: %s/dev/nullFailed to open /dev/null: %s/bin/sh-cRC_SVCNAMERC_USER_SERVICESSSD_NICELEVEL%s: invalid nice level `%s' (SSD_NICELEVEL)SSD_IONICELEVEL%d:%d%s: invalid ionice level `%s' (SSD_IONICELEVEL)SSD_OOM_SCORE_ADJ%s: invalid oom_score_adj `%s' (SSD_OOM_SCORE_ADJ)USERHOMECould not parse iab: %sSecbits are emptyCould not parse secbits: invalid char %c%s: invalid ionice `%s'%s: invalid nice level `%s'%s: invalid oom-score-adj `%s'WARNING: -c/--chuid is deprecated and will be removed in the future, please use -u/--user instead:%d%1s%s: user `%s' not found%s: group `%s' not found%s: invalid mode `%s'WARNING: -o/--oknodo is deprecated and will be removed in the futureWARNING: -a/--startas is deprecated and will be removed in the future, please use -x/--exec or -n/--name instead%s: `%s' not a numberfd:%d%s: pipe: %ssocketready%s/supervise-%s.sock%s: socket path '%s/supervise-%s.sock' too long.NOTIFY_SOCKET%s: socket: %s%s: bind: %s%s: invalid ready '%s'.NOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEINFO_QUIETEERROR_QUIET%s: --stop needs --exec, --pidfile, --name or --user%s: --background is only relevant with --start%s: --make-pidfile is only relevant with --start%s: --stdout and --stderr are only relevant with --start%s: --stdout-logger and --stderr-logger are only relevant with --startusing --wait with --stop has no effect, use --retry instead%s: nothing to start%s: --make-pidfile is only relevant with --pidfile%s: --stdout and --stderr are only relevant with --background%s: --stdout-logger and --stderr-logger are only relevant with --background%s: do not use --stdout and --stdout-logger together%s: do not use --stderr and --stderr-logger togetherPATH%s/%s/%s%s: %s does not existusing --retry with --start has no effect, use --wait instead%s: %s0Will stop %sWill stop PID %dWill stop processes owned by UID %dWill stop processes of `%s: no matching processes found%s: nanosleep: %s%s: invalid schedule item `%d'%s: %d process refused to stop%s: %d process(es) refused to stop%s: %s is already runningWould startas user id %luas group id %luin root `%s'in dir `%s'with a priority of %dwith a process name of %sDetaching to start `%s'%s: pipe2: %s%s: fork: %s/dev/tty%s: setpriority %d: %sr+/proc/self/autogroup%d %s: autogroup nice %d: %s%s: ioprio_set %d %d: %sw/proc/self/oom_score_adj%s: oom_score_adj %d: %s%s: getgrouplist(%s, %lu)%s: chroot `%s': %s%s: chdir `%s': %s%s: unable to set groupid to %lu%s: setgroups() failed%s: unable to set userid to %luCould not releasable memory: %sCould not set iab: %sCould not set securebits to 0x%x: %sCould not set No New Privs flag: %sRC_SSD_EINFO_/usr/libexec/rc/bin/usr/libexec/rc/sbin%s: unable to open the input file for stdin `%s': %s%s: unable to open the logfile for stdout `%s': %s%s: unable to open the logging process for stdout `%s': %s%s: unable to open the logfile for stderr `%s': %s%s: unable to open the logging process for stderr `%s': %s%s: failed to close notify pipe[0]: %s%s: failed to initialize notify fd: %s%s: failed to get flags for notify fd: %s%s: failed to set flags for notify fd: %sfifootherbatchidleUnknown scheduler: %sFailed to set scheduler: %sFailed to set scheduler parameters: %s%s: failed to exec `%s': %s%s: failed to read from pipe: %swaitpid %d: %s%s: failed to start `%s'SSD_STARTWAITrc_start_wait%s: read failed '%s' READY=1%s: %s died%s: did not create a valid pid in `%s'Set the inheritable, ambient and bounding capabilitiesSet the security-bits for the programSet the No New Privs flag for the programSet an ionice class:data when startingStop daemonSet a nicelevel when startingSet OOM score adjustment when startingRetry schedule to use when stoppingStart daemondeprecated, use --exec or --nameForce daemon to backgrounddeprecated, use --userChange the PWDSet an environment stringSet the umask for the daemonChange the process groupMatch process name by interpreterCreate a pidfileMatch process namedeprecatedMatch pid found in this fileSend a different signalTest actions, don't do themChange the process userChroot to this directoryMilliseconds to wait for daemon startBinary to start/stopRedirect stdin to fileRedirect stdout to fileRedirect stderr to fileRedirect stdout to processRedirect stderr to processPrint dots each second while waitingSet process schedulerSet process scheduler priorityConfigures experimental notification behaviourDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modeHUPTRAPABRTBUSFPEKILLUSR1SEGVUSR2PIPECHLDCONTSTOPTSTPTTINTTOUURGXCPUXFSZVTALRMPROFWINCHIOPWRSYSNULLsecbitsno-new-privsioniceniceleveloom-score-adjretrystartaschuidchdirenvumaskinterpretedmake-pidfileoknodotestchrootexecstdinstdoutstderrstdout-loggerstderr-loggerprogressscheduler-prioritynotifyhelpnocolorverbosequietijճ]]]]]]]]]]]]]]h]]]]]]y]]u],] ]R]]]]]]]]]]3ʱ]ܱB]O]²β ,NHӲzI:KN:PR:Sa:bc:d:e:g:ik:mn:op:s:tu:r:w:x:0:1:2:3:4:ChqVvU;tL (@%!,(Bp)DmzRx $ FJ w?;*3$"D-Ak\6Ikt85A^QA[HWBBB E(D0A8Gd8A0A(B BBB,BAA D0 AABT$@BBB A(A0D@ 0A(A BBBE C0A(A BBB| DBDB B(A0A8D`8A0A(B BBB@BLE A(A0GP0A(A BBB0moBIB I(A0H8Dp(PnAHG[AA,|BDA D0 AABHABBB E(A0A8DP#8C0A(B BBBw^YC@+BIB A(A0G 0C(A BBB|T+BHB B(D0C8I  I Q B  H S A  O N A Z8A0A(B BBBP\[Iò5Bc~ہ':Ebzǂ1Idك!6O]@pGp 8pńʄτԄلބ <(IdzK/N9GRzSMasbUc[daeekgkiwm5noppsturwx01234̅PՅhCGVvqUhs 0 4lo  (X o$ #8%&0start-stop-daemon.debug˷.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9olC  KSX ]Bg 8q00b00 w0000<}4l4lpp 88  0((   (ELF>7I@@8 @@@@lllX!X!000AAPȩȩȩ0000HHH$$Std00PtdPPPQtdRtdPP GNU GNU[ssN13 /ngMD/lib/ld-musl-x86_64.so.1 |L|}~3Ź@9ݣkM}~ 7T`,'TM"u:%qk5Am ( \,U .`w|B %33hb :8/MtK#F E^ 4kU( z qt 0! __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainmallocstderrfputsstrdupvsnprintfrealloc__stack_chk_failwaitpid__errno_locationsyslogexeclpstrerrorstrchrgetpwnamopen_memstreamfputcfflushferrorfcloserc_service_resolveaccesssigemptysetsigfillsetsigprocmaskforksigactionexecl_exitfprintfsscanfeerrorxstrncmpstrcmpstrlenstrsepfopenewarnvfscanfrc_find_pidskilleinfoveerrorstrtolpipe2dup2execvpwritereadsetsidlocaltimestrftimerc_service_value_setgetpidsetprioritysyscallgetgrouplistendpwentchrootchdirsetgidsetgroupscap_setuidcap_iab_set_proccap_freecap_set_secbitsprctlioctlrc_stringlist_new__environrc_stringlist_addunsetenvrc_stringlist_freegetenvrc_yesnogetdtablesizefcntlsigdelsetrc_service_daemon_setalarmstrncasecmpclock_gettimeclock_nanosleeprc_service_markunlinkstrrchratexitrc_set_useropenloggetuidgetpwuidgetopt_longoptargcap_iab_from_textrc_svcdirstrtoulputenvgetgrnamgetgrgidpipesocketbindrc_sysputcharoptindumaskrc_is_usermkfiforc_service_value_getewarnmemchrstrstrlibrc.so.1libeinfo.so.1libcap.so.2libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX (08@HPX ` h p x ȬЬج ! "(#0$8%@&H'P(X)`*h+p,x-./0123456ȭ7Э8ح9:;<=>?@A B(C0D8E@FHGPHXI`JhKpLxMNOPQRSTUVȮWЮXخYZ[\]^_`a b(c0d8e@fHgPhXi`jhlpmxnopqrstuvwȯxЯyدz{~ }(|kTUU#"""""""QUUPX5{%{@%{hAWE1E1AVAUAATE1US1HdH,%(H$H\$HH/DT$LL\$`HL\$XLd$P}HtHXH=<HW~H=ZW{HہHuH5H=EWH=lW{H]}t3|H=}L%H]A~LH}tH5TLHH=WlH=8WM{HD$pHt8HH1H5P|tHT$pH5H=W1{H=#WzHD$pHtpHH ΀H;1H5 W|ȃvHT$pH5H=V1zu E1D u q ~H=VwzHD$pHt8HH~1H5P|tHT$pH5,H=V1EzH=V(zH=VHD$hzHH|$htHuTPz0|IHt>H|$huH0H=Vs{HuIt$ H=lVW{I\$ HFH=HD$0AHD$*E1H qHDHbAy v -H=}yH~Hu{8xH=VH1){HZ}H$L5~H$H5VHD$ 1H|$ zH|$ H5V,zVH$:H|$ fDŽ$k{H:x0HxH5{VzzH$MH$HL$ HNVHl1H|$8wk(VzLLH=2VH1z1D$+AE1H(SD$,HD$HSHD$HL$D$*D$)/0FH_HcHH `HcH1H={H|H5Myu =}|H{H5}H=SC1H={HT|H5Lxu =<|tHS{H5|H=S1yH=6{?uH=S1xE1Ht$p1LD$p-w_|HD$p0@H=S1x4|HzHD$1H=zH >|HzH5{RxuHzH5|H=xSEzzu 15{u { Tzq1H=NzHCzH5KwLH+zH5{H= S1H=zHyH5MKcw HyH5m{H=RHyHD$H5yH=B{D$+AHyH {H=yu1H=zyHT$LH5JvtH=]yw |$LtHXH;y9H=/y?7+Ht$x:uHT$x:uH=w D$,1wHxH5szH=;R1H=xHxH5J$vu =xH5xH= R/HxHjyH~xHD$HmxHy{HZxH5QH|$hHD$hKvHHD$pH|$pH$HT$LHyH5Q1vut H|$pu |$LuIHuHT$pH5gyH=lQ@I^ H=P'yrIv HtH=OtH=OrI6HtH=Ot=xu AFxH|$hrH|$hH5PNuH$HT$LHD$pHH5P1tt H|$pku |$LrHuHT$pH5~xH=-P@axHvHxHvHwHvHwHvHwHvHwDŽ$H$rt8qLH=OHHt$8H==Pes1ҾDŽ$8r$u .t8^qLH=PHHt$ nru6s8(qLH=OHaHuLH=OK$$$$$)av$)bvgH=FuHuHKH5*uH=wOH=uHtHH5tH=nOH5OH=~O}1AH5JvH=iO1 p5sHtHH=WO1oH5NOH=NO1o or H5/OH=,OqltttPH5NH=OĺH5NH=HI.pU D$)AH=NsoHqtoHcsH|$LlIm-HUtHyHt$H=vNH|$H6tHyHt$H=pNH5tHt>~uHfHtH5tHt>~uHFHt|$,pH=su@L5tpHItH=NnHLH5NH=s1 L5]tpH5 NH=sHL1 H=msRou)p8tmH5sH=MH |$*H=sH5M1pHT$HH5CHHD$P1oD$HxHcH HËD$HHߍH1HcH9l$H~AH|$XH5yM1 Ll$XH=nsLpLHHHD$PpH|$PpH=LnH5AH;pH1mHLEHL}~uHH9 HŊE.<w=H~qH|$`HtHH5K1 HH5J1 H=CckH] HD$pHD$hH|$hH51ImHtfH qH|$`HtHIH5_K1 HHH5LK1y H\$`HuH$n1HT$`1HhmuH|$pnH\$`1HImH=ptBHHH=JHE1HjHmH5`pH=JcH5ot8DpE1ɉLH=-pH9~H5pHH=J>HHHjH nH=nH5H9kHT$H=nH5H kHT$H=nH5JkH l1HH@H$DhH=UnH$H5\HjH yl1HYH@H$hH=nH$H54Hj Kl1Hz>@H$gH=mH$H5HKjimmL%mt D-mD-l=ljH$DHhHHu*i8t gLH=HH18g}ttH¾ HQhHt\ƄH5HHJhHi3iH|$xLH5DH1<H\$xHLhHiE1D@H=?H1SiH=:j19i1ljjf=jf=jf=ku =kRiglu$h8eH5kH=AAH=>ku =JkiE1DK|t;H|$XH5sG1)Lt$XKTIH=kLhLhD@1H";H$HeH=YkH$H5=EgH==kH58HgLH"LH-|$)H5MjH=j.ÃtRetH=F1*g01eu"11H|$xHDŽ$HD$xeH=iHt.fH=jHHH iE1LeH=ajc|$+H=wi1 g`iy$f8cH5jH=EH'DH5FH|$P1pH|$Pf=iHt$PHdH|$pu*gZf8cH5iH=EHf16fH$dH+%(tEdH1[]A\A]A^A_H1HH5`H7HWLA(E1H H=H=gHgH9tHdHt H=YgH5RgH)HH?HHHtH dHtfD=YguGUH=bHt H=fbgH=ct H=FMcg]@ff.H=et&UH5gH=MHfe]8+Q|bHuH=x5H51_ edZHHt-QcHuH=C5H5^dkdZH=g%dSH=fHtH_dH1[HfHfHfAWAVAUIATIUSHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH<%(H|$HLHH$$HD$HD$ HD$0HD$6a=~ghHHc`bHHt:$HLHcH$D$0HHD$HD$ HD$`H5]H=3Zc!9r(H=3H5f]@cHocbI]HT$dH+%(t`H[]A\A]A^A_USHdH%(H\$Hl$1Hx_ufb8tD$D$HT$dH+%(to`H[]ATUS,bD HŃtttuv}enet61^9Ee1^1^eH521aHdH521`H52E11HHdH u2`}|^H5t2H1`*aDe[]A\AVAUATUSHdL,%(Ll$I>~umHLVHŊ@Lu1HT$H5=.H[u$D$@Ht$HH=.1[H5".H5[LeL=PMLE1ۉ\$tM7HL[tMtLL[u HAD I뼸HT$dH+%(tZH([]A\A]A^A_AVH ^E1AUIATUSHH dL$%(Ld$AL5]H]Hu)$H1t /uH  1H]E1ҿ HPD`LPLPHHH]OH{]E1DHPHhHhHHPH[]Ht&HPH5-1HZH@E1/H[HHtH) HZHvLH=,.Ld$I9s IH9s L9s HI9rHHLHH] DHDmE1E1LD@HH5D,LHYu ED$ƒ0 w>1uY1HUH5,81LXtILLH=+1BY1-L@Lt EELLH=+H[1HMHEH(HEH[}uMtLH=+1XIHMt4 d1HPH[HLpHPHHHm[HD$dH+%(tWH []A\A]A^AWH7AVAUL-NKATUH-NSH8H5\dL4%(Lt$(AHD$H+H=!+HD$H+HD$ 1D$ -?,UH5L?H=+1uUH}HEHcUHt$ D$ HLH_H67H=*HC10UI]AHt,HKWHHuH=(H5mRGXgH$HH56WIHt2A#$H6H=n*1D)TLE1,UHH IXDsWATUSHdH%(HD$1HtDHIH5<HVHHu-*W8ZTHLH=)H1ZUHHHT$H5*1tTt HLH=)1#UH2VH'VD$HT$dH+%(tTH[]A\AWAVAUEATUSW~111 H1HDVE1HHH(HLuEtMDH5;)1U-V1DINj}Tt-A?t%@SMDIH5 )1sUAuAAHLlVhH^VZD[]A\A]A^A_AWAVAUATUSHHH|$dH%(HD$81AH=(E11H-WE1 TD1H5(THmHUtv`-HD$0-111HD$(HD$(HT$HD$}A2H|$E1E1D11HAƅuzE1tNDMH|$E1D11ADžu uHt$H='1RAtE1}ME1H|$Ru/LT8t"wQHt$H='H1QFIHD$HcEH9D$Ht$H=t'1cQ HmAEHD$8dH+%(tQHHD[]A\A]A^A_AUH5T,ATUSHdH%(H$HH|$uS1Ht$Iĺ HQHHA<$"tn;tbHx]Ll$1ILIJt$Ru4JcL$Ht3HHHHH9HHMHH uHH$dH+%(tPH[]A\A]AVHl&AUATUSHPdH%(H$HHD$(HH&HD$01H|$8H|$HD$@HD$HD$HD$HD$ QH|$QDl$A܃u9H|$vQ\$H|$ ZQDd$$AuAŃuAu{AHl$HHPHH$1RPŅy1H$1REAut$1DNyPNx?AtDNx'H$1QHt$(H=$]QP|$ H$8OP|$ SQ|$Ht$D$ wOHÅt11M1H$QuD\$ZP1۽31ۃ|$x \$D$|$xD$|$ xD$ P|$Iċ$|$ |$|$|$|$|$ |$$$A$NH$HdH+%(tMHP[]A\A]A^AWAVIAUATUSHdL<%(L$ID$ OH=R1NH|$HD$NH|$H"HOH=mRHT$H5"N MR1H"H|$$$Lv H=,RHT$$H5"N4LH|$$H!1KwH=QHT$$H5v"aN7PK1ډKu'KN8{KPH5QH=0"HiH5;"H=7"nMHHt#HNjOH5."1fLHUM2M8t%KOH5QH=!H1IM sOt[ P Kپ1Ju3M8J P,OH=!IH5P1L=OtgH5!H=!LHHu*%M8UJNH5`PH=!H@HNjNH5!!1YKHHLH=QPHl$8Hth5PHL$H;LyPHc|$H5OHL$H=PHH Ly# OHOH=!H5O0H&JH=OHt5 Hx=Mt0Iy&J8G5MH= H1;J=Mt=E1111&Hu J8GH=H1I1Ҿ"T=L1hG=L1JJIHLH4HtHLDH5VH1@ADtZ1Q?1HH5  jD@5^DH=?D;H51T@=)DHt$,=9DAD$,AAuDH5HAo=vV11C>Ht$@<=HD$H@BH HHHiT$@HHBMLDH4:DHH5z1?D9=eCtAxL)H9| 6CXE1A"C~29}.HH5E13?D$CH5AHcHHAH~HAH9HO¹HHHi@BHD$0HT$81HL$@HT$0?y 0?8tt D$@D$0ʋB/>iBÃu6>8$<H0BH5H1V>!uoHt$1ҿV?ع&1H$PH$P=1ҿH$P=H$P1=Ht$H=@u=@Ck<8H=AHtYE1H @HT$H<H=cA1H5=H=MA:|$tH=4A:H=j@Ht<H=H@Ht<1=PXout of memory xasprintf: unable to format a buffer caught signal %dRe-executing for %s--reexecsupervise-daemonUnable to execute supervise-daemon: %s%s%sunable to exec `%s': %s fork: %s /dev/nullFailed to open /dev/null: %s%u%s: `%s' is not a valid signalSIG%s: invalid timeout value in schedule '%s'%s: invalid schedule item, far too longforever%s: invalid schedule item `%s'%s: invalid schedule, `forever' appears more than once[arg]Usage: %s [options] Options: [ %s ] %3s --%s %s%*s%s: fopen `%s': %s%s: no pid found in `%s'Sending signal %d to PID %dFailed to send signal %d to PID %d: %sWill stop PID %d%s: no matching processes found%s: nanosleep: %s%s: invalid schedule item `%d'msmilisecondsminminuteshour/bin/sh-c%Y-%m-%d %H:%M:%Sstart_time%istart_countchild_pid%s: setpriority %d: %sr+/proc/self/autogroup%d %s: autogroup nice %d: %s%s: ioprio_set %d %d: %sw/proc/self/oom_score_adj%s: oom_score_adj %d: %s%s: getgrouplist(%s, %lu)%s: chroot `%s': %s%s: chdir `%s': %s%s: unable to set groupid to %lu%s: setgroups() failed%s: unable to set userid to %luCould not releasable memory: %sCould not set iab: %sCould not set securebits to 0x%x: %sCould not set No New Privs flag: %sRC_SSD_EINFO_PATH/usr/libexec/rc/bin/usr/libexec/rc/sbin%s: unable to open the input file for stdin `%s': %s%s: unable to open the logfile for stdout `%s': %s%s: unable to open the logging process for stdout `%s': %s%s: unable to open the logfile for stderr `%s': %s%s: unable to open the logging process for stderr `%s': %sEINFO_QUIET%s: failed to dup ready fd: %sChild command line: %s%s: failed to exec `%s': %sReceived %s from fifosig%s %dSending signal %d to %dUnable to send signal %d to %drunning health check for %shealthcheckhealth check for %s failedunhealthystopping %s, pid %dUnable to kill %d: %skilled %d processes%s, pid %d, exited with return code %d%s, pid %d, terminated by signal %drespawned "%s" too many times, exiting%s: fork: %s12sec0/var/runRC_SVCNAME%s: The RC_SVCNAME environment variable is not setRC_USER_SERVICES%s: the first argument is %s and must be %sSSD_NICELEVEL%s: invalid nice level `%s' (SSD_NICELEVEL)SSD_IONICELEVEL%d:%d%s: invalid ionice level `%s' (SSD_IONICELEVEL)SSD_OOM_SCORE_ADJ%s: invalid oom_score_adj `%s' (SSD_OOM_SCORE_ADJ)USERHOME%s: invalid health check timer %s%s: invalid health check delay %sCould not parse iab: %sSecbits are emptyCould not parse secbits: invalid char %c%s: invalid ionice `%s'%s: invalid nice level `%s'%s: invalid oom-score-adj `%s'%s: group `%s' not found%s: invalid mode `%s'Invalid respawn-max value '%s':%d%1s%s: user `%s' not foundfd:%d%s: pipe: %ssocketready%s/supervise-%s.sock%s: socket path '%s/supervise-%s.sock' too long.NOTIFY_SOCKET%s: socket: %s%s: bind: %s%s: invalid ready '%s'.Invalid respawn-delay-step value '%s'Invalid respawn-delay-cap value '%s'NOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEERROR_QUIETInvalid respawn-delay value '%s'Invalid respawn-period value '%s'XDG_RUNTIME_DIR%s/supervise-%s.pid%s/supervise-%s.ctl%s: unable to create control fifo: %sargcargv_%dpidfilerespawn_delayrespawn_delay_step%ldrespawn_delay_caprespawn_max%s/%s/%s%s: %s does not exist%s: nothing to start%s: %s is already running%s: Please decrease the value of --respawn-period to less than %ld to avoid infinite respawning%s: Please decrease the value of --respawn-delay (%ldms) to less than --respawn-delay-cap (%ldms)Detaching to start `%s'Supervisor command line: %srespawn_period%s: read failed '%s' READY=1/dev/ttyargv_%-dUnable to shut down the supervisor%s: unable to open control fifo %ssig %d%s: error writing to control fifo: %sset an initial health check delayset a health check timerSet the inheritable, ambient and bounding capabilitiesSet the security-bits for the programSet the No New Privs flag for the programSet a respawn delayIncrease the respawn delay by this amount for every retrySet maximum respawn delay when respawn-delay-step is also activeChange the PWDSet an environment stringChange the process groupSet an ionice class:data when startingStop daemonSet the umask for the daemonset maximum number of respawn attemptsSet a nicelevel when startingSet OOM score adjustment when startingMatch pid found in this fileSet respawn time periodRetry schedule to use when stoppingChroot to this directorySend a signal to the daemonStart daemonChange the process userRedirect stdin to fileRedirect stdout to fileRedirect stderr to fileRedirect stdout to processRedirect stderr to processreexec (used internally)Configures experimental notification behaviourDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modeHUPINTQUITTRAPABRTBUSFPEKILLUSR1SEGVUSR2PIPETERMCHLDCONTSTOPTSTPTTINTTOUURGXCPUXFSZVTALRMPROFWINCHIOPWRSYSNULLhealthcheck-timerhealthcheck-delaysecbitsno-new-privsrespawn-delayrespawn-delay-steprespawn-delay-capchdirenvionicestopumaskrespawn-maxniceleveloom-score-adjrespawn-periodchrootstdinstdoutstderrstdout-loggerstderr-loggernotifyhelpnocolorverbosequietDWj51EV.ɡG8MSxFGΧXǟtaA:a:D:d:e:g:I:Kk:m:N:p:R:r:s:Su:0:1:2:3ChqVvU;p%R(@TʴpPϷh'H}L9893^8zRx $И FJ w?;*3$"D -Ak\"6Ikt@ 95A^HRBBB E(D0A8Gd8A0A(B BBB$`AAD0WAA(ĴBAA ABTDBBB A(A0D@ 0A(A BBBE C0A(A BBB$|AAD@AA@BBB A(A0G0C(A BBB̸ ø^YCD4 BDB B(A0A8D`8A0A(B BBB@|׹BLE A(A0GP0A(A BBB0zoBIB I(A0H8Dp,BAA D0 AABD$TBBB E(A0A8A@8D0A(B BBBHlBBB B(A0A8D8D0A(B BBB8BNA A(G(A ABB@k+BIB A(A0G 0C(A BBB08R[ BBE B(A0A8G4lyBBB B(A0A8G L$HhBHB E(D0A8I 8C0A(B BBB@JIَKq*9Sl(E]Ñۑ "=XqΒ.26N;@EIM R W \ a fkpuza˓A>ݓD %d+efg/I6K;kAmMNWpePRtrsS֑u{012\3hCߒVvǔq֑U 0 qo8  !8 o$ !#8%ȩ&0؂ۂɋ߂K```660u supervise-daemon.debug1w.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9ohC H K88S88 ]B!!g ! !8q00b00 w0000kA}qqN PP  ȩȩ0  ELF>@h@8 @p'p'000bb  00$$Std00PtdTTQtdRtdpp GNU GNUIZ$*$C+89AW_R "HO(j B0@(,0$BDJLɃ#RL &!RSTUVWXYZ[\]^_`acdeghijklmnpqsuvwxyz{}Ek<<ϹoCQ}t_aR㧗*\GvsaW^Ub%UZ &EeH /-وS8't-X-P.-ܔC)uxk-%3 da$ XVJ}M} NVvswl9Sf2` vBZ]=7 fҮ X@:sC<]}vQK_ϓI!_)O XK}5eP.5nYd*'Y>n\ iEƹ"(tC"*KN4R ) UCh/1TW $<I+~O|FLWG9D j % A xO| T0 OgD? q`pZ _W O_ zA# d w=( U \S ad2 QE` ocH C? Yn J[6 ?5 i/ gH{ {  qG e> YC d[$ E >pA  MR l  uTQ a gt L` }ls cw~ A# g } 8<l m@ ?b I uJ4T ` ?<8   | * d` o W! hq ;? PBF Bp </ F  i [ ;C .d3M H vY J< QV q ݁t n?t {  V?_init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infostderrfputsmallocstrdupstrrchropenatfdopenfdopendirvsnprintfrealloc__stack_chk_failgetlinestrlenstrcmpreaddirfstatatunlinkatclosedirfopenregcompfcloseregerrorfprintfregexecregfreereadlinkat__errno_locationstrlcpyclear_dirfdsrc_is_userrc_set_usersetenvgetenvatexitrc_scriptdirsopen_memstreamfputcfflushferrorunamerc_scriptdirfdsrc_sysconfdirrc_usrconfdirrc_runleveldirrc_runlevel_unstackunlinkrc_svcdirrc_dirfd__assert_failmkdiratrc_runlevel_startingfaccessatrc_runlevel_stoppingrc_runlevel_getfgetsrc_runlevel_setrc_runlevel_existsrc_runlevel_stacksymlinkrc_service_resolverc_service_existsrc_service_descriptionpopenpcloserc_service_in_runlevelaccessrc_service_value_setrc_service_schedule_startsymlinkatrc_service_schedule_clearrc_service_markrc_service_adddirnamerealpathstrncmprc_service_deleterc_find_pidssscanfreadlinkgetcrc_newer_thanrc_older_thanrc_yesnostrcasecmprc_getfilefilenofstatfreadrc_service_value_getrc_proc_getentstrseprc_config_valuestrchrrc_stringlist_newrc_stringlist_addrc_runlevel_listrc_services_scheduledrc_service_extra_commandsrc_services_scheduled_byrc_deptree_loadrc_deptree_load_filerc_deptree_dependrc_config_listrc_stringlist_addurc_stringlist_deleterc_stringlist_findrc_stringlist_splitrc_stringlist_sortrc_stringlist_freerc_runlevel_stacksrc_services_in_runlevelrc_services_in_runlevel_stackedrc_services_in_staterc_service_daemon_setrenamerc_service_started_daemonrc_service_daemons_crashedfscanfkillrc_service_staterc_deptree_freerc_deptree_dependsrc_deptree_orderrc_deptree_update_neededmkdirstrerrortimefnmatchrc_config_loadrc_conf_valuetolowerrc_systoupperrc_deptree_updaterc_environ_fdlibc.musl-x86_64.so.1librc.so.1X`hpxc      V(0l8k@HPX`hpxx\u}d !"#$%&z' h(0(8)@*H+P,X-`.h/p0x12345678{f9:;<no=|>?@ A(B0C8X@DHEP[XF`GhHpIxYaJKLMNOPbQ?*<PXH=YHRH9tH&Ht H=)H5"H)HH?HHHtH=HtfD=uGUH=FHt H=b4gH=t H=zج]@ff.H=t&UH5H=_zHޮ]8+PXH=nPHH0QHu"HH=nH0SȭZP1HH@YHHt0QɬHu"H=H=^nH0zZATIUH(SmLH1HCHCHC1HHEHSHC HHCHEH[]A\S/HOHtHXH[ATA1US1t-H5sEtH5mѫHHuyH[]A\U1S1QtʼnHHu@HZ[]US1QtʼnHHuHZ[]PH=P 1H=1H:1H H ,^AWAVAUIATIUSHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH<%(H|$HLHH$$HD$HD$ HD$0HD$"=~jhHHc,HHt:$HLHcH$D$0HHD$HD$ HD$̨HH=kH0k$9r+HH=kH0NHI]HT$dH+%(tH[]A\A]A^A_AWAVAUIATIUSHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH<%(H|$HLHH$$HD$HD$ HD$0HD$=~VhHHcHHt:$HLHcH$D$0HHD$HD$ HD$@V9r+HH=@jH0֩HBI]HT$dH+%(t8H[]A\A]A^A_SH4H~HPH: uH[SHu11H?'uHHHD8 uHȀ8'u;tH[USHQHt!HHHtH;H tH[HZ[]UHSQH_HtH;HݧtH[HZ[]AUATAUSHdL,%(L$IrHHu1HXH5iHuHۥHu}H5hH\tH1HT$Hމt1HD$ H%=@uLHމFu61Hމu붳HALDH$dH+%(tEHĨ[]A\A]AV1AUATUSH`dH%(H$XHHD$H5mHD$+Ht]Hl$Iĺ HHAŅtvL HT$XHDGHHHT$XH5gH81٤1E111HHǥtKHH\HD$LH9r"H|$LHt$(IHtH\$묀;uH1LeH|$ҦHaH$XdH+%(tH`[]A\A]A^AWAVIAUIATAUHSHAPHHLDIHHyLQ{H-H9s AM>L+H9r HHZ[]A\A]A^A_AVAUATUSHH $HdH%(H$1HHH5!fH,$11H*y H3Ld$AźLkDIwH~Iu1ABD4LH;Ht.H uHHHlHL)=v뽰H$dH+%(tbH[]A\A]A^AWI1AVAAUATAUHSHdL,%(L$MHT$2IHD$`Et DH9})H9~ MtHLvHD$`1ID$ %=@uXDHEIHtALlHHt'}.tLHuMLD!LܣH$dH+%(tKHĨ[]A\A]A^A_U1SH,R;~ ǣHHHuX[]ÊÀ=ڤ*H= dH5dRH=cHt HH5cH=cHthHH5cH={1ZHm1H=lH5c>H=cHuDHH=cH0$HšH=ycH0HH=H5c1H=uH֢HߢHHX%ZÀ=HuHRUSHdH4%(H$Ht$HIHtOH۟HH}Ht$H֡H}tH޿  HHHt"HƠH=aH0HJuH4$H=bH<$H=b1Hu1H5bH=b~H|$˞uHt$H=}bXH$dH+%(tHĨ[]H=EATUHSuHL%HH;Ht0 1gƒtH HHAH HHաHEH[]A\Hdh1=ԠtH۠À=àHatHˠUSHHdH,%(Hl$HbHH5aHH1InH$HCH߉8HT$dH+%(teH[]À=7HPatH/AWAVAUATUSQ"L%/HcALtd:u 6| H1 uF4 H1 H1ɞӠ> H1HJL,Mu H gFH5Z`H=h`1 LA1%AÃuFIǃ8u8LDu A? LD1ڝAZ[]A\A]A^A_1P=11H5_Z1P11H5_ךZU1SV1H5_LHHtNMHHHHtHQ| u DHW;uHHYH=O_[]7HZ[]UH1SQbAH5_H1HtHH)HZ[]SHdH%(H$1Hu1_H?tH5o]ٛtH5]]HśtϿΚ1HT$Hމ\uD$ %=@H$dH+%(tHĠ[ATUHSH dH%(H\$H+u1vHtHH|$H5^1bIHH|$HH5]1lHl$H\$HHHA,H#EHT$dH+%(tOH []A\AV1HH52]AUATUSH dH,%(Hl$HHHD$HHD$1H$w1HމHI1Mt}H|$LHt$HtJH]Lt$Ht5H3LHCuHSHtHPHUHSHHH}uLH|$H}HT$dH+%(tEH []A\A]A^AUATUSHdH%(H$1Hu1HH?/u)H$dH+%(<Hĸ[]A\A]PHT$Hމۖu;D$0%=u+HD$HHhHT$HHމHy_HT$Hމ|uBD$0%=u2HD$HHhHT$HHމEl$Av A L1HAu5 /HAH,LO A IHL%HtkLhHH|$1LH52T Lt$L1LhLǒLD8IL:E>LTHHT$dH+%(tH([]A\A]A^A_AW1AVAUIATUSH(dL4%(Lt$IHD$őu[LL?Ät;1WLHH5SLIH1HIHu HHH5sSBLAEtHxbH|$LH3S1H5RhLd$IHILLH u?LLHILH|$HH5 R1Ll$LL9LH|$HHD$dH+%(tٍH([]A\A]A^A_USHdH%(H\$HHsHPIH5QHH1H\H$H1H߉&HT$dH+%(tSH[]AWWAVAUATUSHHH|$ 1Ht$(1T$4dL4%(L$8A1ɉ|$@H=Q$D$lHL$XHt$P$D$z3HHH=mQHt!HHT$@H5Q1t1҉T$@H5-UH=AQE1HHtCHt$PH|$XHEHt H|$XH5QuAE1HzH$H=PHD$HƄ$D$31H̋HHxHT$D1H5PӌuҋD$@T$Dt9tEtA9uHD$HH5PHHD$1xL|$HHt$lLD$lL0Eu)$t|$ltH|$Ht$lE|$4tRT$DH|$H5#P1Ld$HH$LތLu D$49$t H|$ uH|$(H|$ E1T$DH|$`H5OI1HD$`H5=SHHD$NjHHtVH|$8 H|$8t((u A$9uIH|$8H|$8uE1)uA<$AyH|$E<Ht$(|$DET$DH|$H5N1L|$HH5vRLLIMHt$PH|$XLHt9H|$XH5N:uH|$XH5BND$3L|$3WHuGH1H5T$DHHPHtHHHJHHXH|$XHtHHqH$8dH+%(tHHH[]A\A]A^A_ATUHSHHdL$%(L$IHt$cu-HD$`HMHH$"HtH$HH$dH+%(tOHĠ[]A\ATUHSHHdL$%(L$IHt$ۉ1u(HD$`HMHH$HtH$HH$dH+%(tʇHĠ[]A\SHukHH5JbuH5qNHGtH5LH3tH5LHtH5qLH u1JH5PHtH5HLH߇tH5KHˇt[AVAUATIH5#PUSHdL,%(L$IHHHHt$҆ukHl$8I<$HuIuWHtI$!DHH^IHtL)I<$HuHtIE@DI<$1׈1IEHP1H$dH+%(tHĠ[]A\A]A^U1SHH(dH,%(Hl$HHD$HD$5HHH5JH1IqH$HT$Ht$HH3HD$HT$dH+%(t`H([]AW1H5MAVAUATUSH(dL$%(Ld$IHT$H=dJOHH1HH|$HH$1HtHD$LI HD$IH|$H5JdIHt4LLLUuKHu4MtgHLH5E1>H$HHHH8HHHtHH5D1L,$HLLρHD$dH+%(t~HH[]A\A]AW1AVAUATUSHHdH%(HD$811HD$0HH1E1HD$H|$0Ht$(HrH|$0HZH|$ H5EH|$ HtH5DHuH5DH|$ HtHHT$H5*C1$zH5CH|$ IH\H5CH^u3H|$ H58,H|$H1@IH5xCH|$ MHHHT$H5B1~H|$ xIH8HtH}L~tLLHH}L%}Ha~H\$HD$8dH+%(t}HHH[]A\A]A^A_P1k}H5BZHAUIATIUSHQLLHHtHH Hux~H@HHtH3H`|H[ZH[]A\A]AU1ATUSH(dH,%(Hl$HHD$HD$~1҉IHHHH|$Ht$HH|$HtmH<$H< t< tHH5Ax}HHtH}IHv=H~HtB|+ uBD+HL{w>~H|HD$dH+%(tg{H(L[]A\A]H%zAVAUATUSH dH%(HD$1Ht$H-HIH5@H{u HCHD$H5@H|$|HHHHD$8$t9H5@H|$W|HHt8tH|$HH5x@1.H|| uDH|$HH1H5J@I]HtBHp|L#HIHLzuC<4=uL|HD$H H[H\$LHyH|H|HD$dH+%(tyH []A\A]A^ATIUHSHLHtH;{tH[[H]A\%y~{1[]A\AUIATUHSQHHtLL#LLzHCu0HSHtHPHUHSLH{H{H {1Z[]A\A]USHQHt!HHHtH;HXztH[HZ[]AUATUHSHdL,%(Ll$I{HHH$HLH=zHtHH|xH9{HD$dH+%(tkxHH[]A\A]AWAVIAUATUSHL/zI]IHHSHCHtHBIEHC1HI $IMt+I7H;HL$H$ZyH$HL$x LMHHCt"HMHKHtHAID$H]HHKHtHAID$I$LHkHNL9zM&H[]A\A]A^A_Ht8ATUSH/HHtLeH}zHyLH[]A\%yH6H-AVAUATIUHSHPyHHtyHt HHwHHvLwHމL(IMI]LHyHt^H*xHH5q<H(1HvHH=<xI$HtHH5<H1vH[+xHLvLHHHLEvMmU[L]A\A]A^%u[]A\A]A^ATIUSH0H,e0LHftIT$E1LHAHetH[]A\A]A^AWAVAUATUSLH8L)M0H|$l$pHt$ HT$HL$L $LMtI}!frMmH|$dHD$ L(M@IuHHuMmH@L0MtM>tI}H5A+euH|$L.dH|$LiIHH4$HL HD$(MtcI4$H|$4IHtAIUH0H<$/t-AQMPLL$HL$(HT$ Ht$0H|$AZA[Md$Mu?IUI6H<$t+VMPLL$HL$(HT$ Ht$0H|$h_AXH|$(PcMvuH=4*bHH5*H荼HtH@L(MtIuH|$;IHtnH4$HHIHtLH:H3HT$(4dHT$(u,PMPLL$HL$(HT$ Ht$0H|$ZYHRLbMmnH3Hct0H5H)HлHuH3H|$H8[]A\A]A^A_%/bH8[]A\A]A^A_AWIAVIAUATUDSHHHL$cdIZdH=(IJaHuHt&HeHHtFH3L IHucMtPLLLULL$LZYH[LaHL[]A\A]A^A_AVAAUIH=d(ATIUS`HuH%HdH5}'LbtH5'LbuMB`H4`HHtHKHHJHPHSHc`H=%aH5 %LHbLoaHHtHKHHJHPHSH3c_HHtHKHHJHPHSHcH-cLHat-H`HHtHKHHJHPHSHbZbH5&HH_HH5&_HH5&_HH5&_ELHHAL.bHI_H_[L]A\A]A^AWAVIAUATUSHdL$%(L$I`Hat;'a8t.r^H`HH50&HH`H81J_a1|_1HT$(H5$^u H$E1 1A`HD$H|$ E1g`HD$L;|$Hl$tOHD$ MHH5'#B<4MHHD$ H5%B^HqHHrHPHQ1HH@HiZZH=^?H]\H5!IH(ZH5!LZImHLuL.\LI ZIHt}HUH1H|$H5BL#Mt8I4$H}LHt$jZHt$uB<>=u HYMd$L|$HLYL>\L5\HmPLcYH ]L+MtH5H=肰tHZ[]AWE1AVAUATU1SHXdH%(HD$H1LD$@WHD$H5H=THD$H WE1E1HD$dHHT$H|$@Ht$8H|$@H+HD$0H|$0H5H$HVIHt8tH<$H5yVIMtI<$L,Vt$LHE1IHuLHIM\H|$0PH5LUtDMtI}LUt.LL­IHuLLI ED$ uH<$H5UHHuH5@LiUuH|$HVLHIUtHUHv|.u|su|htI}Hu|$ !HSH5LTu!H5[LHt HxHSH5:LTt@H5LTt,H5LTtH51LTH5LLuHHxHSUH|$!RH|$H|$E1THxH警-IL9tHD$B<08RCD5IAD-H}E1vH$fnoM9tHD$B<8QH $BD9IH$D(H+HYHEH5wHHD$蓫H.H@L0MM>LLcStH4$LRStMvH5HAHU HD$HEHtHP HSHU HL;MtMgMID$I|$HuHD$ QH|$t/HD$H@LMtI0I|$LD$(QLD$(M@ID$H8u?ID$It$HtHpIwIt$I<$HSI|$SLSLd$ SMAHl$LSH<$S迤1H@HH8L#MtLH5LHuMd$H@L(MtMuHL踩Hu LHMmHEHtHSHHP HEHCHRH+HL-KIuHH舩IHuIH@L MtM<$HL,HHuaI>H5?Qu|HdQH5HULH81OH5)HHuH5HHxI4$)M}H$LH<$HuLHxHuRMd$JHmQH5IHOH5L OH5 LNH5LNH+H~H5'HPIHZ&QH$QLE1IRIHHjHT$LNIGY^L(MIEHD$H$L0MI6HHt$ 螧HHIEHt$ HT$ HD$HOuH|$ H5hH|$ H5膧HtlH@HHt`H Ht$HT$(HL$ HROt HT$(HRHt$ H Ht-H5H*HtHxHuM Mv"IIuMLl$H<$rMHmyL`MOH+IHtM9OHuLID01A$OA<$uHNHUH5H81TME4$HmLL1yMAH5͡IHH+E1HtoHMLH5{1LLLeMtDID$E1L8Mt-L$MLLI $H5Y1LL$MIMd$HmIL@M84N8KHMHH51HHMH81ZLHD$1H8LAH5*נIHt5HD$L MtI$H5 L1LMd$LLQM8JHMHH51HHMH81KK1H5KH|$OKHKHD$HdH+%(t8KHX[]A\A]A^A_PXout of memory wxasprintf: unable to format a buffer ..file_regex: %s/proc/%u/cmdlineyesRC_USER_SERVICESXDG_CONFIG_HOME%s/rc%s/.config/rcXDG_CONFIG_HOME and HOME unset. %s/runlevelsXDG_RUNTIME_DIRXDG_RUNTIME_DIR unset. %s/openrcRC_SCRIPTDIRSRC_LIBEXECDIR/usr/libexec/rcRC_UNAME/etc/runlevels%s/%s/%s/run/openrc../src/librc/librc.cdirnames[dir]rc.startingrc.stoppingsoftlevelsysinit../%s%s/init.d/%s. '%s'; echo "${description%s%s}"boot/etc/init.d/procRC_OPENRC_PID/proc/self/statusenvID: 0/proc/self/ns/pid/proc/%d/ns/pid/proc/%d/proc/%d/stat/proc/%d/statusenvID:true1nofalse%s/options/%s/%s/proc/cmdline. '%s'; echo $extra_commands $extra_started_commands $extra_stopped_commandsexec=%sargv_0=%spidfile=%sdepinfo_=servicedeptree#export "'%s=%s=%sLoop detected in stacked runlevels attempting to enter runlevel %s! Ancestors: %s singlescheduled%s/daemons/%s/%s%s/daemons/%s/%03dexec= pidfile= argv_%d=%sexecargv_namepidfilechroot%s%sineedneedsmeiwantwantsmeshutdowniafterprovidedbyiprovideRC_SVCNAMERC_BOOTLEVELiusemkdir '%s': %s rc.confrc.conf.ddepconfig*.conf/etc/conf.d/rcrc_interactiverc_parallelXEN0WSLPODMANXENUSYSTEMD-NSPAWNRKTUMLVSERVERDOCKEROPENVZLXCrc_sys/proc/cpuinfo(s_context|VxID):[[:space:]]*[1-9]/proc/vz/veinfoenvID:[[:space:]]*[1-9]/proc/vz/versioncontainer=lxc/proc/1/environcontainer=rktcontainer=systemd-nspawn/run/.containerenv/.dockerenvcontainer=dockermicrosoft/proc/sys/kernel/osreleaseWSL_DISTRO_NAME/proc/sys/fs/binfmt_misc/WSLInterop/proc/xencontrol_d/proc/xen/capabilities/usr/libexec/rc/sh/gendepends.shibeforekeywordService '%s' needs non existent service '%s' brokenError: %s is the name of a real and virtual service. depinfo_%zu_service='%s' depinfo_%zu_%s_%zu='%s' fopen '%s/deptree': %s fopen '%s/depconfig': %s usesmestartedstoppedwasinactivehotpluggedfailedcrashed/usr/local/etc/usr/etc/usr/local/etc/user/usr/etc/userdaemonsoptionsexclusivetmprc_dirfd;Pil6f|#sDl܊D9`y|؎VL(4P;dsǖ7?Rj(ޗPdvL < 7`  mL ct ޠ q ( t t q4 h ~ M [ $ l r ձ Fd`|Z KDH`mݸ,@k*]߼Tͽ K L PLc>$ @#7x  8MzRx %AAH80AnPATh9In(݅QBDI ~ABA[(PBKA ~AB$'8AHC iAA$71AAC iAAD@6AtH\^BBB E(D0A8Gj8A0A(B BBBHxBBB E(D0A8GV8A0A(B BBBʈ#Aaш@A~$,3AAD jAA$T,ADA cAA8|-BBD A(G(A ABB@QBDB A(A0G 50C(A BBBDBBE E(D0K8E@g8A0A(B BBBDDNBBB A(A0G I 0A(A BBBHBGE B(D0D8I8C0A(B BBB$Ռ/ACH `AA܌ό8\0(D<AAG0AA(ppJAD ]ABC76$:tAAG0hAAHBBB B(A0A8A@h8C0A(B BBB`#CZxɐ#CZ0ԐACA v HAE DAA$0FAFA {AA NAGA,ϑBAD D@ AAB<@^BNB A(A0DP0A(A BBBL,BBA A(GE (A ABBE 7(D ABB(zAAGCA$ACD@DA$${AAD0rAA4L:BEA D(I0(C ABB4BBA A(A0(C ABB]4ArHuBBE B(A0A8D`8A0A(B BBBH$BDB E(A0A8D`8C0A(B BBB$p|AAD0sAAHBEB B(A0A8G_8D0A(B BBB05BAD Jr AAB0 BAD Jo AABL ڠA@h BBB K(A0G0C(A BBB$ WACG@zAAD !BKB B(A0A8D`8D0A(B BBB8 nBBB D(A0[(A BBBX £AT(p MBDI zAB( CBDI pABH .BBB B(A0D8I 8D0A(B BBB ڤAQ, ܤ$A\0H BAA DP DAB<| BBB A(A0D@0D(A BBB4 FBEA A(G@(D ABBH BDB B(A0A8D8D0A(B BBB@ APX 4l pBED A(D0V(D ABB4 BDA A(FP(D ABB @ zBBB A(A0DPe0A(A BBB44 ߪHBDD _ DBF OAB4l wBEA D(A0c(A ABB$ .3AAD jAA4 9BBA D(D@k(D ABBDBBE B(A0A8DP8A0A(B BBB(L)>GAA kABTx;@TBB D(D0 (D BBBF A(A BBBA(#DBDA yABL; BAA D0  AABF _  KABE Z DAB(LqBAA iAB4x<BHA k CBE ABLٮBBB B(A0A8G I!8A0A(B BBB<BBB A(A0D@0C(A BBBH@YBGB B(A0A8D8D0A(B BBB4׵BBD H(F0(C ABB4pBBA A(A0(D ABBD?BEE E(A0A8D`8D0A(B BBB<DǷKBB D(A0(D BBBL?#BEB D(D0 (A BBBF [(A BBBBBB B(A0A8GpxG`xBpcxG_xBpxI_xApJ 8A0A(B BBBF D8A0A(B BBBP`TBEE B(A0D8GPfXJ`NXAPS8D0A(B BBB8BEL D(A0(D BBBHolBBE B(A0A8GK8C0A(B BBB<<BBE A(A0D@0A(A BBB(|cABAA yABx n gJACHtBBB B(A0A8D`V8A0A(B BBB(4EAHA 8AAX` BEB B(A0C8DKXAb8C0A(B BBB00L_+ fnr~yv @rf~yv֧ާءaw 0 ox  X o$P'# %ȧlibrc.so.1.debug 5.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0$1ox; xxXCKXX UP'P' _00e00 bkqyTXX @@p p pELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111ebegin.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111eend.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111eerror.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111eerrorn.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111eindent.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111einfo.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111einfon.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111eoutdent.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111esyslog.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @AELF>(@A@8 @@@@lll(( X X 000LL < L L88<8L8L00HHH$$Std00Ptd111QtdRtd < L L GNUGNUI<f|t L"r/lib/ld-musl-x86_64.so.14@4569g"#>y_ ( E6pB S2 Z8^ t L0Lz U)__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrstrcmpecolorprintfexit__errno_locationstrtoimaxstrchreerrorxatoistrcasecmpunsetenvgettimeofdayebeginvaccessnanosleepeendvopen_memstreamfputcfputsfflushferrorstderrfcloseelogeindenteoutdenteindentveoutdentveerroreinfonewarnewarnneerrornebegineendewendeinfoveinfovnewarnvewarnvnewendvfree__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXeinfohNpNxNNNNNNN N N N N NNNNNNOOOO O(O0O8O@OHOPOXO`O hO!pO"xO#O$O%O&O'O(O)O*O+O,O.O/O0O1O2O30L5`N- L UUUPX5:.%<.@%:.hAWA1AVAUATUSH8HdL$%(L$(IH|$/H|$H.HtHXH0Mt$H5oH.uy.H.I.I.I.H.MMHHH= 1QLS-1.EoEH5&HT.tPH5H@.tMtH޿ t+KH'13H'1(Hj'1H'1H &H '1Ht$Ht)Ht H== 11Ht,HH5& 1Ht11 Ht11H|$A(H$(dH+%(t&H8D[]A\A]A^A_H1HH5#$H7HWL*E1H H=f.DH=(H(H9tH&Ht H=i(H5b(H)HH?HHHtHm&HtfD=9(uGUH=%Ht H="'%gH=&t H=&']@ff.H=&t&UH5'H=H&]8+PXeval_ecolorsGOOD='%s' WARN='%s' BAD='%s' HILITE='%s' BRACKET='%s' NORMAL='%s' veendvewendewaitfileesyslogelog%s: invalid log level `%s'%s: not enough argumentsEINFO_LOG%s: invalid timeoutWaiting for %stimed out waiting for %sout of memory eerroreerrornveinfoveinfonvewarnvewarnnvebeginveindentveoutdent%s: unknown appletalertcritdebugemergerrnonenoticepanicwarning;8`zRx $@ FJ w?;*3$"TD8BGB B(A0A8G DN 8D0A(B BBB )( U) L(Lo < HN(  o$# %8L& PX1^1c1i1o101s1x1111eval_ecolors.debug +M.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o4C (K<S( ( ]Bg q b  w0 0 % }U)U)2001111 L <(L(<0L0<8L8<HNH>P@ Q@X @A ip_set_bitmap_ip.ko.gzip_set_hash_ip.ko.gz ip_set_hash_ipmark.ko.gz ip_set_hash_ipport.ko.gz$ip_set_hash_ipportip.ko.gz$ip_set_hash_ipportnet.ko.gz ip_set_hash_net.ko.gz ip_set_hash_netnet.ko.gz<ip_set_hash_netport.ko.gz ip_set.ko.gz@5.apk.5db7b7969a3a898cff0d3b425b7bd112ae6fd8d732b77a80@@@t5.apk.8cad79d2aae1b6e615d817613b3669a028000d20d464ab52 ޚ]G ...{ _Iip_vs_dh.ko.gzip_vs_fo.ko.gzip_vs_lblc.ko.gzip_vs_lc.ko.gzip_vs_mh.ko.gzip_vs_nq.ko.gzip_vs_pe_sip.ko.gzTip_vs_rr.ko.gz ip_vs.ko.gz@@5.apk.de4d14ae3361c6d28a3073696c3a395a30d253ab36cd145c@5.apk.20365ae21fef180303434b2a2302f810bb94534b2921f14a@@5.apk.80816bc8e5dedd09abb4137a06dbe040f8726115b7f1c240t Hc` nf_conntrack_irc.ko.gznft_fib_netdev.ko.gz)nft_socket.ko.gzO xt_dccp.ko.gzqxt_tcpmss.ko.gztnf_conntrack_amanda.ko.gz@@9@5.apk.492f557195ea0ac8c4c04d0abc6a7bb8de96ab909220f937?t5.apk.159ed9863e724c05c296a81b4747c2f8f42f5e65fab7822a@G@KS @wT`@|?G\tXc@ayP@,z ޤ::&nft_reject.ko.gz.(x_tables.ko.gznft_hash.ko.gzA(xt_TCPOPTSTRIP.ko.gznft_connlimit.ko.gzDxt_addrtype.ko.gzE xt_bpf.ko.gzS xt_esp.ko.gzcxt_owner.ko.gz nf_tables.ko.gz \nfnetlink_cthelper.ko.gz297b584a174fa733911ba:@5.apk.a4c08436d4699ffddacc6d658c55d495607f737a6b97f85fA@5.apk.531acfb03a66bdc652dcc273ca47236adcf01fcb8c69e8ff@Hd5.apk.2faa0ab79205cf3c781f69bcfddc0e132fe60e2afb98aaba@4@.t@:&zT@{@ t2D-nft_xfrm.ko.gzN xt_cpu.ko.gz` xt_nat.ko.gznft_fwd_netdev.ko.gz  nft_nat.ko.gz^ xt_mark.ko.gzext_pkttype.ko.gzl xt_set.ko.gzrxt_tcpudp.ko.gzipvs$nf_conntrack_netlink.ko.gznf_conntrack_pptp.ko.gz@Th5.apk.13854cf6469658eb2692c3e3d18125582f6977974ddbb534ш@@@ADP@~` zc@zN c$rnft_masq.ko.gz' nft_reject_inet.ko.gz,nft_tunnel.ko.gzLxt_connmark.ko.gzpxt_string.ko.gzt| xt_u32.ko.gz  nf_synproxy_core.ko.gznfnetlink_osf.ko.gznft_chain_nat.ko.gz1d5ae4f88c2d19d6c402e619ab0d953691d909@8@5.apk.d79ca15eb4e135e34e41bda9f8c272cf403105402a747cbc;@5.apk.a66271795565d53a403d7a1a768397616a99bb0db3239616I@5.apk.13c9519b55910086b7f109fd9b83efd779bb932208085f40Ot5.apk.e5c3990d9f059292df505f89d6633feab5264751b88749b4tK*p@ {/@ī>0@D>@-_?@$E@G /Gnft_fib_inet.ko.gz" nft_osf.ko.gz+nft_tproxy.ko.gz0xt_CHECKSUM.ko.gz8 xt_LOG.ko.gznf_nat_tftp.ko.gz<xt_NFQUEUE.ko.gzMxt_conntrack.ko.gz] xt_mac.ko.gzgxt_quota.ko.gzipset nf_conntrack_sane.ko.gznf_flow_table_inet.ko.gzp@hE@fG@&@0@^@pe @ld40@.@@:&zP@٭@{`@@ nf_log_syslog.ko.gznf_nat_irc.ko.gzTxt_hashlimit.ko.gzZ0 xt_l2tp.ko.gznf_dup_netdev.ko.gz nfnetlink_acct.ko.gz$nfnetlink_cttimeout.ko.gz nft_log.ko.gz nf_conntrack_h323.ko.gz nf_conntrack_tftp.ko.gz nfnetlink_queue.ko.gz/xt_AUDIT.ko.gz3 xt_CT.ko.gz6xt_HMARK.ko.gz9xt_MASQUERADE.ko.gzB>@$s҃@h&@(ш @0@AD@@~P zS@h@zNc@ o@m@@ȝ ޺B7xt_IDLETIMER.ko.gzJxt_connlabel.ko.gz nf_conntrack_ftp.ko.gznf_conntrack_sip.ko.gz@0Ɔ@EMP@< @R|։@-@}N@T@@Ծ`@/@}tp@4{@ta{ *4 xt_DSCP.ko.gz5( xt_HL.ko.gz nf_nat.ko.gznf_nat_sip.ko.gz>xt_REDIRECT.ko.gz@xt_TCPMSS.ko.gzQ xt_dscp.ko.gz!nft_numgen.ko.gz#nft_queue.ko.gzjxt_recent.ko.gzk xt_sctp.ko.gzm xt_socket.ko.gznfnetlink_log.ko.gznft_compat.ko.gznft_limit.ko.gz$tnft_quota.ko.gznf_conntrack.ko.gzKS@wT@>Vtp%Wp@qX@|?G\ @}_@'a@Xc0@i@rEs@ t@ay@@,z ޘ nft_fib.ko.gz:xt_NETMAP.ko.gzB xt_TEE.ko.gzKxt_connlimit.ko.gzUxt_helper.ko.gzY xt_ipvs.ko.gz\xt_limit.ko.gzaxt_nfacct.ko.gzdxt_physdev.ko.gznxt_state.ko.gz x'|%nft_redir.ko.gzC(xt_TPROXY.ko.gz(nf_conntrack_netbios_ns.ko.gznf_nat_ftp.ko.gzi@xt_realm.ko.gzR@ xt_ecn.ko.gznf_conntrack_snmp.ko.gz <@u .;L..v nsh.ko.gz \Plw .; ..yvport-geneve.ko.gzzvport-gre.ko.gz{vport-vxlan.ko.gzxopenvswitch.ko.gz ހ9ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_stopping.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0$0ELF>%@1@8 @@@@lll hh ,<<x0-0=0=  00HHH$$Std00Ptd QtdRtd,<<pp GNUGNU7$]9i6$./lib/ld-musl-x86_64.so.1@"# ( B  ^ t z e__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainstrrchrgetenvrc_yesnorc_set_userrc_service_statestrcmpsscanfrc_service_started_daemonrc_service_daemons_crashed__errno_locationeerrorx__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXp?x???????? ? ? ? ? ????h?<WUPX5B/%D/@%B/hAW1AVAAUATUSH(H.dH%(H\$HD$/H//HtHhH-/A~HkH=t.HHt}uH5/H=]?H=j.H.t.HL=+E1.L-/D$ I7L.H +uIBD!tD$ III uH5L.uzH=$.HkIA~LcH{HT$1H5C..u1H{HT$H5'.uILHkLcL$1LH!.AH5L.uH .t .8 LH=m1-HT$dH+%(tr-H([]A\A]A^A_H1HH5*H7HWLE1H H=fH=-H-H9tHF-Ht H=q-H5j-H)HH?HHHtH,HtfD=I-uGUH=,Ht H=-,gH=,t H=N, -]@ff.H=,t&UH5,H=H,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESservice_started_daemon%dservice_crashed%s: unknown appletservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failed;44\zRx $ FJ w?;*3$"HDBDE B(A0A8D`8A0A(B BBB0r        O 4?M  e<<o  P?8 o$#%c0=&@service_wasinactive.debugY7.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KS88]Bgqb w005}ee2  !!<,<,<, 0=0- P?P/@0 @0X 0 (0ELF>@0@8 @@@@lllPP -==`-==00HHH$$Std00Ptd QtdRtd-==XX GNUGNUHZ*dT޼h/lib/ld-musl-x86_64.so.1 @ 6 "T l .   _init_fini__cxa_finalize__libc_start_mainisalnumputcharlibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info????????=PX5/%/@%/hAWAAVIAUA_ATAUSQE9~7K, Iu]tH|/AD݉F/IĿ 4/Z1[]A\A]A^A_H1HH5 -H7HWL E1H 1H=ZEDH=!/H/H9tH.Ht H=.H5.H)HH?HHHtH.HtfD=.uGUH=n.Ht H=.\.gH=W.t H=H..]@ff.H=@.t&UH5~.H=H&.]8+PX;80`zRx $ FJ w?;*3$"DDrBHE H(D0A8A@H8C0A(B BBBP>  ==o ? x o$8#%=&@shell_var.debugs.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C KSxx]B  g88qb w00}  =-=-=-?/X@0 @0P 00ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_crashed.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_failed.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@ 1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_hotplugged.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0$,0ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_inactive.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_started.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_starting.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_stopped.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_stopping.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0 (0ELF>@ 1@8 @@@@lllH H HH p,p<p<-==  00HHH$$Std00Ptd!!!QtdRtdp,p<p< GNUGNUϣ-Xaf}x_/lib/ld-musl-x86_64.so.1@"  ( B ^ t z E__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvstrrchrrc_yesnorc_set_userstrncmpstrcmprc_service_markeerrorxsscanfkill__errno_locationstrerroreerror__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXP?X?`?h?p?x???? ? ? ? ? ??????H?p<WUPX5"/%$/@%"/hAWAVAH=AUATUSH(dL$%(Ld$I//II$H/HtHXAH/L~Il$Ht}uHH=eH=r.H.t.L5/H5WL.ucIFL%+1HD$MI4$H|$.uHAtu,HIH uH.MuLH=1h.HLd.ukH=-HtYHHT$H51.u>|$ -t+".8-T$H5.H=H1-HT$dH+%(t-H([]A\A]A^A_H1HH5*H7HWLE1H H=H=-H-H9tHf-Ht H=-H5-H)HH?HHHtH-HtfD=i-uGUH=,Ht H=2-,gH=,t H=,)-]@ff.H=,t&UH5-H=OH,]8+PXRC_SVCNAME%s: no service specifiedRC_USER_SERVICESmark_%s: unknown appletRC_OPENRC_PID%d%s: failed to signal parent %d: %sservice_startedservice_stoppedservice_inactiveservice_startingservice_stoppingservice_hotpluggedservice_wasinactiveservice_failedservice_crashed;4\zRx $ FJ w?;*3$"HDBBL B(A0A8D`8A0A(B BBB         !&4  Ep<x<o o 0? P o$0 #%J=&@mark_service_wasinactive.debugNx5.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C (KoSPP]B  g0 0 qb w00}EE2 !!8!8!p<p,x<x,<, =- 0?0/@0 @0X 0$,0ELF>@1@8 @@@@lll `-`=`=p-p=p=00HHH$$Std00Ptd4 4 4 QtdRtd`-`=`= GNUGNUL4@`ڝe:_{S /lib/ld-musl-x86_64.so.1@" ( B ^ t z __cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_maingetenvsscanfkill__errno_locationstrerroreerrorx__stack_chk_faillibeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX????????? ? ? ? ? `= PX5r/%t/@%r/hHdH<%(H|$H=Y/HtRHHT$H51m/u7|$ B/t)h/8/t$H=oH1B/HT$dH+%(t.HH1HH5,H7HWLE1H H=6!H=/H.H9tH.Ht H=.H5.H)HH?HHHtHu.HtfD=.uGUH=..Ht H=r..gH='.t H=.i.]@ff.H= .t&UH5^.H=H.]8+PXRC_PID%drc-abort: failed to signal parent %d: %s;4\zRx $ FJ w?;*3$"DD p  `=h=o8 ! ?`  o$#%p=&@rc-abort.debug kk.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o,C K88!S`` ]Bgqb w00}2 34 4 P P \`=`-h=h-p=p-?/@0 @0P 00ELF>a@1@8 @@@@lll -- P+P;P;P,<<  00HHH$$Std00Ptd"""$$QtdRtdP+P;P; GNUGNU6OW[Һ _Xar/lib/ld-musl-x86_64.so.1H !93"<I ( B "61^ +t <z * @__cxa_finalize__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info_init_fini__libc_start_mainprintfstrdupstderrfputsstrsepfreeexitstrrchrgetopt_longrc_set_userrc_sysputcharsetenvoptindeerrorxopen__errno_locationstrerrorfutimensclosestatewarnsettimeofday__stack_chk_faillibrc.so.1libeinfo.so.1libc.musl-x86_64.so.1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX??? ?(?0?8?@?H? P? X? `? h? p?x??????????????< @!?P;GDDD@PX5.%.@%.hAUAATUSHH.dH%(H$H/H.HtHhH-#0E11E1H +HDH.[q-Vt]CtAUz.1h vwsH5QH=MyAcH5z/H=?1-.HtHH=-1-H5$H=$1- -1=.H5H=-..tH5H=ĺH5H=믿AHc.D9}PHÉ .EuH=1S-HߺA1v-ÃuY-8,H=xH&1-u 1-8,H=bH1,?-Ht$H,uI,8t"uQ,HH=-H1,Z4,HH=H1,HD$p1H|$HD$1HD$!,u,8+H= HQH$dH+%(t+Hĸ1[]A\A]H1HH5Z)H7HWLE1H rH=fDH=a,HZ,H9tH+Ht H=1,H5*,H)HH?HHHtHe+HtfD=),uGUH=+Ht H=+*gH=+t H=6++]@ff.H=X+t&UH5+H= H>+]8+AWH AVAUL-&ATUH-&SH8H5+dL4%(Lt$(AHD$H H= HD$H HD$ 1D$ -?,)H57 H=\ 1)H5 H= 1)H}HEHcUHt$ D$ HLH_H H= HC1)I]AHt,H)HHuH= H5'*gH$HH5g )IHt2A#$HH H=_ 1D))LE1)HH I)D)PX[arg]Usage: %s [options] Options: [ %s ] %3s --%s %sout of memory %*sNOEINFO_COLOR%s (OpenRC [%s]0.63.2) %sYESEINFO_VERBOSEEINFO_QUIETEERROR_QUIETswclock: Reference file was not specifiedswclock: open: %sswclock: futimens: %sswclock: `%s': %sswclock: settimeofday: %ssaves the timeno error if no reference fileDisplay this help outputDisable color outputDisplay software versionRun verboselyRun quietly (repeat to suppress errors)Run in user modesavewarnhelpnocolorverbosequietuserswChqVvU; <dzRx $ FJ w?;*3$"0DBIB I(A0H8Dp8xt1BEA A(G(C ABBp*!9!W!p!!!!!!s!w!h!C!V!v"q "UZes  *P;X;o  >p  o$ #%<&@swclock.debugX+eM.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9o8C 0KS]Bp p g qb w00}** ""$@"@"P;P+X;X+`;`+h <, >.@0 @0 00#!/bin/sh # Shell wrapper to list our dependencies # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. . /usr/libexec/rc/sh/functions.sh . /usr/libexec/rc/sh/rc-functions.sh config() { [ -n "$*" ] && echo "$RC_SVCNAME config $*" >&3 } need() { [ -n "$*" ] && echo "$RC_SVCNAME ineed $*" >&3 } use() { [ -n "$*" ] && echo "$RC_SVCNAME iuse $*" >&3 } want() { [ -n "$*" ] && echo "$RC_SVCNAME iwant $*" >&3 } before() { [ -n "$*" ] && echo "$RC_SVCNAME ibefore $*" >&3 } after() { [ -n "$*" ] && echo "$RC_SVCNAME iafter $*" >&3 } provide() { [ -n "$*" ] && echo "$RC_SVCNAME iprovide $*" >&3 } keyword() { local c x set -- $* while [ -n "$*" ]; do case "$1" in -containers) x="$(_get_containers)" ;; !-containers) x="$(_get_containers_remove)" ;; *) x=$1 ;; esac c="${c}${x} " shift done [ -n "$c" ] && echo "$RC_SVCNAME keyword $c" >&3 } depend() { : } _done_dirs= for _dir in $RC_SCRIPTDIRS do _dir="$_dir/init.d" [ -d "$_dir" ] || continue # Don't do the same dir twice for _d in $_done_dirs; do [ "$_d" = "$_dir" ] && continue 2 done unset _d _done_dirs="$_done_dirs $_dir" cd "$_dir" for RC_SERVICE in *; do [ -x "$RC_SERVICE" -a -f "$RC_SERVICE" ] || continue # Only generate dependencies for OpenRC scripts read one two three <"$RC_SERVICE" case "$one" in \#*/openrc-run) ;; \#*/runscript) ;; \#!) case "$two" in */openrc-run) ;; */runscript) ;; *) continue ;; esac ;; *) continue ;; esac unset one two three RC_SVCNAME=${RC_SERVICE##*/} ; export RC_SVCNAME # Compat SVCNAME=$RC_SVCNAME ; export SVCNAME ( # Save stdout in fd3, then remap it to stderr exec 3>&1 1>&2 _rc_c=${RC_SVCNAME%%.*} if [ -n "$_rc_c" -a "$_rc_c" != "$RC_SVCNAME" ]; then if [ -e "$_dir/../conf.d/$_rc_c" ]; then . "$_dir/../conf.d/$_rc_c" fi fi unset _rc_c if [ -e "$_dir/../conf.d/$RC_SVCNAME" ]; then . "$_dir/../conf.d/$RC_SVCNAME" fi [ -e /etc/rc.conf ] && . /etc/rc.conf if [ -d "/etc/rc.conf.d" ]; then for _f in "/etc"/rc.conf.d/*.conf; do [ -e "$_f" ] && . "$_f" done fi if . "$_dir/$RC_SVCNAME"; then echo "$RC_SVCNAME" >&3 if [ -n "$supervisor" ] && [ "$supervisor" = s6 ]; then need s6-svscan fi _depend fi ) done done #!/bin/sh # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. : ${CONSOLE:=/dev/console} : ${RC_LIBEXECDIR:=/usr/libexec/rc} : ${RC_CACHEDIR:=/var/cache/rc} service_present() { local p="/etc/runlevels/$1/$2" # fail if the file doesn't exist [ ! -e "$p" ] && return 1 # succeed if $RC_SYS empty, can't check further, assume script will run [ -z "$RC_SYS" ] && return 0 # fail if file contains "-$RC_SYS", because then it won't run grep -Eqi "^[[:space:]]*keyword[[:space:]].*-$RC_SYS([[:space:]]|$)" "$p" && return 1 # succeed otherwise return 0 } if [ -e "$RC_CACHEDIR"/console/unicode ]; then termencoding="%G" kmode="-u" else termencoding="(K" kmode="-a" fi # Set the SELinux label on console before everything so we dont lose output [ -x /sbin/restorecon ] && /sbin/restorecon -F /dev/console # Try and set a font and as early as we can if service_present "$RC_DEFAULTLEVEL" consolefont || service_present "$RC_BOOTLEVEL" consolefont; then printf "\033%s" "$termencoding" >"$CONSOLE" 2>/dev/null if [ -r "$RC_CACHEDIR"/console/font ] && \ command -v setfont > /dev/null 2>&1; then [ -c "$CONSOLE" ] && cons="-C $CONSOLE" setfont $cons "$RC_CACHEDIR"/console/font 2>/dev/null fi fi # Try and set a keyboard map as early as possible if service_present "$RC_DEFAULTLEVEL" loadkeys || service_present "$RC_BOOTLEVEL" loadkeys; then kbd_mode $kmode -C "$CONSOLE" 2>/dev/null if [ -r "$RC_CACHEDIR"/console/keymap ]; then loadkeys -q "$RC_CACHEDIR"/console/keymap 2>/dev/null fi fi # Ensure we exit 0 so the boot continues exit 0 #!/bin/sh # Copyright (c) 1999-2007 Gentoo Foundation # Copyright (c) 2007-2009 Roy Marples # Released under the 2-clause BSD license. . "$RC_LIBEXECDIR"/sh/functions.sh [ -r "/etc/rc.conf" ] && . "/etc/rc.conf" if [ -d "/etc/rc.conf.d" ]; then for _f in "/etc"/rc.conf.d/*.conf; do [ -e "$_f" ] && . "$_f" done fi # check for md5sum, and probably /usr too if command -v md5sum >/dev/null; then got_md5sum=true else eerror "md5sum is missing, which suggests /usr is not mounted" eerror "If you have separate /usr, it must be mounted by initramfs" eerror "If not, you should check coreutils is installed correctly" got_md5sum=false fi # By default VServer already has /proc mounted, but OpenVZ does not! # However, some of our users have an old proc image in /proc # NFC how they managed that, but the end result means we have to test if # /proc actually works or not. We do this by comparing two reads of # /proc/self/environ for which we have set the variable VAR to two # different values. If the comparison comes back equal, we know that # /proc is not working. mountproc=true f=/proc/self/environ if [ -e $f ]; then if $got_md5sum && [ "$(VAR=a md5sum $f)" = "$(VAR=b md5sum $f)" ]; then eerror "You have cruft in /proc that should be deleted" else # If they don't have md5sum, this will fail in pretty ways if # /proc isn't really mounted. Oh well, their system is busted # anyway, and they get to keep the pieces. einfo "/proc is already mounted" mountproc=false fi fi unset f if $mountproc; then ebegin "Mounting /proc" if ! fstabinfo --mount /proc; then mount -n -t proc -o noexec,nosuid,nodev proc /proc fi eend $? fi # /run is a new directory for storing volatile runtime data. # Read more about /run at https://lwn.net/Articles/436012 sys="$(openrc --sys)" if [ ! -d /run ]; then if [ "$sys" = VSERVER ]; then if [ -e /run ]; then rm -rf /run fi mkdir /run else eerror "The /run directory does not exist. Unable to continue." return 1 fi fi if [ "$sys" = VSERVER ]; then rm -rf /run/* elif ! mountinfo -q /run; then ebegin "Mounting /run" run_mount_opts="mode=0755,nosuid,nodev,nr_inodes=800k,size=20%,strictatime" if ! fstabinfo --mount /run; then if ! mount -t tmpfs -o ${run_mount_opts} tmpfs /run; then eerror "Unable to mount tmpfs on /run." eerror "Can't continue." exit 1 fi fi eend fi checkpath -d "$RC_SVCDIR" checkpath -d -m 0775 -o root:uucp /run/lock # Try to mount xenfs as early as possible, otherwise rc_sys() will always # return RC_SYS_XENU and will think that we are in a domU while it's not. if grep -Eq "[[:space:]]+xenfs$" /proc/filesystems; then ebegin "Mounting xenfs" if ! fstabinfo --mount /proc/xen; then mount -n -t xenfs xenfs /proc/xen -o nosuid,nodev,noexec fi eend $? fi if [ -d "$RC_CACHEDIR" ]; then cp -pr "$RC_CACHEDIR"/* "$RC_SVCDIR" 2>/dev/null fi echo sysinit >"$RC_SVCDIR"/softlevel [ -x /sbin/restorecon ] && /sbin/restorecon -rF /run exit 0 #!/bin/sh # Shell wrapper for openrc-run # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. verify_boot() { if [ ! -e ${RC_SVCDIR}/softlevel ]; then eerror "You are attempting to run an openrc service on a" eerror "system which openrc did not boot." eerror "You may be inside a chroot or you may have used" eerror "another initialization system to boot this system." eerror "In this situation, you will get unpredictable results!" eerror eerror "If you really want to do this, issue the following command:" eerror "touch ${RC_SVCDIR}/softlevel" exit 1 fi return 0 } sourcex() { if [ "$1" = "-e" ]; then shift [ -e "$1" ] || return 1 fi if ! . "$1"; then eerror "$RC_SVCNAME: error loading $1" exit 1 fi } apply_ulimits() { if [ $(( $# % 2 )) -eq 1 ]; then eerror "${RC_SVCNAME}: Invalid RC_ULIMIT setting" return 1 fi while [ $# -gt 0 ] ; do if ! ulimit "${1}" "${2}"; then eerror "${RC_SVCNAME}: unable to apply RC_ULIMIT settings" fi shift 2 done } sourcex "/usr/libexec/rc/sh/functions.sh" sourcex "/usr/libexec/rc/sh/rc-functions.sh" case $RC_SYS in PREFIX|SYSTEMD-NSPAWN) ;; *) yesno "$RC_USER_SERVICES" || sourcex -e "/usr/libexec/rc/sh/rc-cgroup.sh";; esac # Support LiveCD foo if sourcex -e "/sbin/livecd-functions.sh"; then livecd_read_commandline fi if [ $# != 2 ]; then eerror "$RC_SVCNAME: invalid arguments" exit 1 fi # So daemons know where to recall us if needed RC_SERVICE="$1" ; export RC_SERVICE shift # Compat SVCNAME=$RC_SVCNAME ; export SVCNAME # Dependency function config() { [ -n "$*" ] && echo "config $*" } need() { [ -n "$*" ] && echo "need $*" } use() { [ -n "$*" ] && echo "use $*" } want() { [ -n "$*" ] && echo "want $*" } before() { [ -n "$*" ] && echo "before $*" } after() { [ -n "$*" ] && echo "after $*" } provide() { [ -n "$*" ] && echo "provide $*" } keyword() { local c x set -- $* while [ -n "$*" ]; do case "$1" in -containers) x="$(_get_containers)" ;; !-containers) x="$(_get_containers_remove)" ;; *) x=$1 ;; esac c="${c}${x} " shift done [ -n "$c" ] && echo "keyword $c" } # Describe the init script to the user describe() { if [ -n "$description" ]; then einfo "$description" else ewarn "No description for $RC_SVCNAME" fi local svc= desc= for svc in ${extra_commands:-$opts} $extra_started_commands \ $extra_stopped_commands; do eval desc=\$description_$svc if [ -n "$desc" ]; then einfo "$HILITE$svc$NORMAL: $desc" else ewarn "$HILITE$svc$NORMAL: no description" fi done } # Report status _status() { if service_stopping; then ewarn "status: stopping" return 4 elif service_starting; then ewarn "status: starting" return 8 elif service_inactive; then ewarn "status: inactive" return 16 elif service_crashed; then eerror "status: crashed" return 32 elif service_started; then einfo "status: started" return 0 else einfo "status: stopped" return 3 fi } # These functions select the appropriate function to call from the # supervisor modules default_start() { local func=ssd_start case "$supervisor" in runit) func=runit_start ;; s6) func=s6_start ;; supervise-daemon) func=supervise_start ;; ?*) ewarn "Invalid supervisor, \"$supervisor\", using start-stop-daemon" ;; esac $func } default_stop() { local func=ssd_stop case "$supervisor" in runit) func=runit_stop ;; s6) func=s6_stop ;; supervise-daemon) func=supervise_stop ;; ?*) ewarn "Invalid supervisor, \"$supervisor\", using start-stop-daemon" ;; esac $func } default_status() { local func=ssd_status case "$supervisor" in runit) func=runit_status ;; s6) func=s6_status ;; supervise-daemon) func=supervise_status ;; ?*) ewarn "Invalid supervisor, \"$supervisor\", using start-stop-daemon" ;; esac $func } default_reload() { case "$supervisor" in s6) s6_reload ;; ?*) eerror "$RC_SVCNAME: undefined function 'reload'" exit 1 ;; esac } # Template start / stop / status functions # package init scripts may override these, but the bodies are as minimal as # possible, so that the init scripts can creatively wrap default_* # functions. start() { default_start } stop() { default_stop } status() { default_status } reload() { default_reload } # Start debug output yesno $RC_DEBUG && set -x # Load configuration settings. First the global ones, then any # service-specific settings. sourcex -e "/etc/rc.conf" if [ -d "/etc/rc.conf.d" ]; then for _f in "/etc"/rc.conf.d/*.conf; do sourcex -e "$_f" done fi _usr_conf=${XDG_CONFIG_HOME:-${HOME}/.config}/rc if yesno "$RC_USER_SERVICES"; then sourcex -e "$_usr_conf/rc.conf" if [ -d "$_usr_conf/rc.conf.d" ]; then for _f in "$_usr_conf"/rc.conf.d/*.conf; do sourcex -e "$_f" done fi fi _conf_d=${RC_SERVICE%/*}/../conf.d # If we're net.eth0 or openvpn.work then load net or openvpn config _c=${RC_SVCNAME%%.*} if [ -n "$_c" -a "$_c" != "$RC_SVCNAME" ]; then if ! sourcex -e "$_conf_d/$_c.$RC_RUNLEVEL"; then sourcex -e "$_conf_d/$_c" fi fi unset _c # Overlay with our specific config if ! sourcex -e "$_conf_d/$RC_SVCNAME.$RC_RUNLEVEL"; then sourcex -e "$_conf_d/$RC_SVCNAME" fi unset _conf_d # If we are configured to run in a VRF, provide a hint for that RC_VRF_EXEC="" if [ -n "$vrf" ]; then RC_VRF_EXEC="ip vrf exec $vrf" fi # Add ip netns if configured to run in a netns (netns+vrf may stack) if [ -n "$netns" ]; then RC_VRF_EXEC="ip netns exec $netns $RC_VRF_EXEC" fi if yesno "$RC_USER_SERVICES" && [ "$_usr_conf/init.d" != "${RC_SERVICE%/*}" ]; then if ! sourcex -e "$_usr_conf/conf.d/$RC_SVCNAME.$RC_RUNLEVEL"; then sourcex -e "$_usr_conf/conf.d/$RC_SVCNAME" fi fi unset _usr_conf # load service supervisor functions sourcex "/usr/libexec/rc/sh/runit.sh" sourcex "/usr/libexec/rc/sh/s6.sh" sourcex "/usr/libexec/rc/sh/start-stop-daemon.sh" sourcex "/usr/libexec/rc/sh/supervise-daemon.sh" # Load our script sourcex "$RC_SERVICE" # Set verbose mode if yesno "${rc_verbose:-$RC_VERBOSE}"; then EINFO_VERBOSE=yes export EINFO_VERBOSE fi _setup_cgroup() { grep -qs /sys/fs/cgroup /proc/1/mountinfo || return [ -w /sys/fs/cgroup ] || { yesno "$RC_USER_SERVICES" || eerror "No permission to apply cgroup settings" return } # Apply cgroups settings if defined [ "$(command -v cgroup_add_service)" = "cgroup_add_service" ] && cgroup_add_service [ "$(command -v cgroup_set_limits)" = "cgroup_set_limits" ] && cgroup_set_limits [ "$(command -v cgroup2_set_limits)" = "cgroup2_set_limits" ] && cgroup2_set_limits } case $1 in status|describe) ;; *) # Apply any ulimit(s) defined [ -n "${rc_ulimit:-$RC_ULIMIT}" ] && apply_ulimits ${rc_ulimit:-$RC_ULIMIT} _setup_cgroup ;; esac eval "printf '%s\n' $required_dirs" | while read _d; do if [ -n "$_d" ] && [ ! -d "$_d" ]; then eerror "$RC_SVCNAME: \`$_d' is not a directory" exit 1 fi done [ $? -ne 0 ] && exit 1 unset _d eval "printf '%s\n' $required_files" | while read _f; do if [ -n "$_f" ] && [ ! -r "$_f" ]; then eerror "$RC_SVCNAME: \`$_f' is not readable" exit 1 fi done [ $? -ne 0 ] && exit 1 unset _f if [ -n "$opts" ]; then ewarn "Use of the opts variable is deprecated and will be" ewarn "removed in the future." ewarn "Please use extra_commands, extra_started_commands or extra_stopped_commands." fi # Special case depend if [ "$1" = depend ]; then shift # Enter the dir of the init script to fix the globbing # bug 412677 cd ${RC_SERVICE%/*} _depend cd / return 0 fi # See if we have the required function and run it for _cmd in describe start stop status ${extra_commands:-$opts} $extra_started_commands $extra_stopped_commands; do [ "$_cmd" = "$1" ] || continue if [ "$(command -v "$1")" != "$1" ]; then case $_cmd in start|stop) exit 0;; *) eerror "$RC_SVCNAME: function '$1' defined but does not exist" exit 1;; esac break fi done # If we're in the background, we may wish to fake some commands. We do this so we can # "start" ourselves from inactive which then triggers other services to start which # depend on us. A good example of this is openvpn. if yesno $IN_BACKGROUND; then for _cmd in $in_background_fake; do if [ "$_cmd" = "$1" ]; then exit 0 fi done fi for _cmd in $extra_started_commands; do [ "$_cmd" = "$1" ] || continue if verify_boot && ! service_started; then eerror "$RC_SVCNAME: cannot '$1' as it has not been started" exit 1 fi done for _cmd in $extra_stopped_commands; do [ "$_cmd" = "$1" ] || continue if verify_boot && ! service_stopped; then eerror "$RC_SVCNAME: cannot '$1' as it has not been stopped" exit 1 fi done unset _cmd case $1 in start|stop|status) verify_boot;; esac [ "$(command -v "$1_pre")" = "$1_pre" ] && { "$1"_pre || exit $?; } "$1" || exit $? [ "$(command -v "$1_post")" = "$1_post" ] && { "$1"_post || exit $?; } [ "$(command -v cgroup_cleanup)" = cgroup_cleanup ] && [ "$1" = stop ] && yesno "${rc_cgroup_cleanup}" && cgroup_cleanup [ "$(command -v cgroup2_remove)" = cgroup2_remove ] && { [ "$1" = stop ] || [ -z "${command}" ]; } && cgroup2_remove exit 0 # Copyright (c) 2012-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. extra_stopped_commands="${extra_stopped_commands} cgroup_cleanup" description_cgroup_cleanup="Kill all processes in the cgroup" cgroup_find_path() { local OIFS name dir result [ -n "$1" ] || return 0 OIFS="$IFS" IFS=":" while read -r _ name dir; do [ "$name" = "$1" ] && result="$dir" done < /proc/1/cgroup IFS="$OIFS" printf "%s" "${result}" } # This extracts all pids in a cgroup and puts them in the cgroup_pids # variable. # It is done this way to avoid subshells so we don't have to worry about # locating the pid of the subshell in the cgroup. # https://github.com/openrc/openrc/issues/396 cgroup_get_pids() { local cgroup_procs p cgroup_pids= cgroup_procs="$(cgroup2_find_path)" if [ -n "${cgroup_procs}" ]; then cgroup_procs="${cgroup_procs}/openrc.${RC_SVCNAME}/cgroup.procs" else cgroup_procs="/sys/fs/cgroup/openrc/${RC_SVCNAME}/tasks" fi [ -f "${cgroup_procs}" ] || return 0 while read -r p; do [ "$p" -eq $$ ] && continue cgroup_pids="${cgroup_pids} ${p}" done < "${cgroup_procs}" return 0 } cgroup_running() { [ -d "/sys/fs/cgroup/unified/${RC_SVCNAME}" ] || [ -d "/sys/fs/cgroup/${RC_SVCNAME}" ] || [ -d "/sys/fs/cgroup/openrc/${RC_SVCNAME}" ] } cgroup_set_values() { [ -n "$1" ] && [ -n "$2" ] && [ -d "/sys/fs/cgroup/$1" ] || return 0 local controller h controller="$1" h=$(cgroup_find_path "$1") cgroup="/sys/fs/cgroup/${1}${h}openrc_${RC_SVCNAME}" [ -d "$cgroup" ] || mkdir -p "$cgroup" set -- $2 local name val while [ -n "$1" ] && [ "$controller" != "cpuacct" ]; do case "$1" in $controller.*) if [ -n "${name}" ] && [ -w "${cgroup}/${name}" ] && [ -n "${val}" ]; then veinfo "$RC_SVCNAME: Setting $cgroup/$name to $val" printf "%s" "$val" > "$cgroup/$name" fi name=$1 val= ;; *) [ -n "$val" ] && val="$val $1" || val="$1" ;; esac shift done if [ -n "${name}" ] && [ -w "${cgroup}/${name}" ] && [ -n "${val}" ]; then veinfo "$RC_SVCNAME: Setting $cgroup/$name to $val" printf "%s" "$val" > "$cgroup/$name" fi if [ -w "$cgroup/tasks" ]; then veinfo "$RC_SVCNAME: adding to $cgroup/tasks" printf "%d" 0 > "$cgroup/tasks" fi return 0 } cgroup_add_service() { # relocate starting process to the top of the cgroup # it prevents from unwanted inheriting of the user # cgroups. But may lead to a problems where that inheriting # is needed. for d in /sys/fs/cgroup/* ; do [ -w "${d}"/tasks ] && printf "%d" 0 > "${d}"/tasks done openrc_cgroup=/sys/fs/cgroup/openrc if [ -d "$openrc_cgroup" ]; then cgroup="$openrc_cgroup/$RC_SVCNAME" mkdir -p "$cgroup" [ -w "$cgroup/tasks" ] && printf "%d" 0 > "$cgroup/tasks" fi } cgroup_set_limits() { local blkio="${rc_cgroup_blkio:-$RC_CGROUP_BLKIO}" [ -n "$blkio" ] && cgroup_set_values blkio "$blkio" local cpu="${rc_cgroup_cpu:-$RC_CGROUP_CPU}" [ -n "$cpu" ] && cgroup_set_values cpu "$cpu" local cpuacct="${rc_cgroup_cpuacct:-$RC_CGROUP_CPUACCT}" [ -n "$cpuacct" ] && cgroup_set_values cpuacct "$cpuacct" local cpuset="${rc_cgroup_cpuset:-$RC_CGROUP_cpuset}" [ -n "$cpuset" ] && cgroup_set_values cpuset "$cpuset" local devices="${rc_cgroup_devices:-$RC_CGROUP_DEVICES}" [ -n "$devices" ] && cgroup_set_values devices "$devices" local hugetlb="${rc_cgroup_hugetlb:-$RC_CGROUP_HUGETLB}" [ -n "$hugetlb" ] && cgroup_set_values hugetlb "$hugetlb" local memory="${rc_cgroup_memory:-$RC_CGROUP_MEMORY}" [ -n "$memory" ] && cgroup_set_values memory "$memory" local net_cls="${rc_cgroup_net_cls:-$RC_CGROUP_NET_CLS}" [ -n "$net_cls" ] && cgroup_set_values net_cls "$net_cls" local net_prio="${rc_cgroup_net_prio:-$RC_CGROUP_NET_PRIO}" [ -n "$net_prio" ] && cgroup_set_values net_prio "$net_prio" local pids="${rc_cgroup_pids:-$RC_CGROUP_PIDS}" [ -n "$pids" ] && cgroup_set_values pids "$pids" return 0 } cgroup2_find_path() { if grep -qw cgroup2 /proc/filesystems; then case "${rc_cgroup_mode:-unified}" in hybrid) printf "/sys/fs/cgroup/unified" ;; unified) printf "/sys/fs/cgroup" ;; esac fi return 0 } cgroup2_remove() { local cgroup_path rc_cgroup_path cgroup_path="$(cgroup2_find_path)" [ -z "${cgroup_path}" ] && return 0 rc_cgroup_path="${cgroup_path}/openrc.${RC_SVCNAME}" [ ! -d "${rc_cgroup_path}" ] || [ ! -e "${rc_cgroup_path}"/cgroup.events ] && return 0 grep -qx "$$" "${rc_cgroup_path}/cgroup.procs" && printf "%d" 0 > "${cgroup_path}/cgroup.procs" local key populated vvalue while read -r key value; do case "${key}" in populated) populated=${value} ;; *) ;; esac done < "${rc_cgroup_path}/cgroup.events" [ "${populated}" = 1 ] && return 0 rmdir "${rc_cgroup_path}" return 0 } cgroup2_set_limits() { local cgroup_path cgroup_path="$(cgroup2_find_path)" [ -z "${cgroup_path}" ] && return 0 mountinfo -q "${cgroup_path}"|| return 0 rc_cgroup_path="${cgroup_path}/openrc.${RC_SVCNAME}" [ ! -d "${rc_cgroup_path}" ] && mkdir "${rc_cgroup_path}" [ -f "${rc_cgroup_path}"/cgroup.procs ] && printf 0 > "${rc_cgroup_path}"/cgroup.procs [ -z "${rc_cgroup_settings}" ] && return 0 echo "${rc_cgroup_settings}" | while read -r key value; do [ -z "${key}" ] && continue [ -z "${value}" ] && continue [ ! -f "${rc_cgroup_path}/${key}" ] && continue veinfo "${RC_SVCNAME}: cgroups: setting ${key} to ${value}" printf "%s" "${value}" > "${rc_cgroup_path}/${key}" done return 0 } cgroup2_kill_cgroup() { local cgroup_path cgroup_path="$(cgroup2_find_path)" [ -z "${cgroup_path}" ] && return 1 rc_cgroup_path="${cgroup_path}/openrc.${RC_SVCNAME}" if [ -f "${rc_cgroup_path}"/cgroup.kill ]; then printf "%d" 1 > "${rc_cgroup_path}"/cgroup.kill fi return } cgroup_fallback_cleanup() { ebegin "Starting fallback cgroups cleanup" local loops=0 cgroup_get_pids if [ -n "${cgroup_pids}" ]; then kill -s CONT ${cgroup_pids} 2> /dev/null kill -s "${stopsig:-TERM}" ${cgroup_pids} 2> /dev/null yesno "${rc_send_sighup:-no}" && kill -s HUP ${cgroup_pids} 2> /dev/null kill -s "${stopsig:-TERM}" ${cgroup_pids} 2> /dev/null cgroup_get_pids while [ -n "${cgroup_pids}" ] && [ "${loops}" -lt "${rc_timeout_stopsec:-90}" ]; do loops=$((loops+1)) sleep 1 cgroup_get_pids done if [ -n "${cgroup_pids}" ] && yesno "${rc_send_sigkill:-yes}"; then kill -s KILL ${cgroup_pids} 2> /dev/null fi fi eend $? } cgroup_cleanup() { cgroup_running || return 0 ebegin "Starting cgroups cleanup" cgroup2_kill_cgroup || cgroup_fallback_cleanup cgroup2_remove cgroup_get_pids [ -z "${cgroup_pids}" ] eend $? "Unable to stop all processes" return 0 } # Copyright (c) 2007 Gentoo Foundation # Copyright (c) 2007-2009 Roy Marples # Released under the 2-clause BSD license. net_fs_list=" afs ceph cifs coda davfs fuse fuse.glusterfs fuse.sshfs gfs glusterfs lustre ncpfs nfs nfs4 ocfs2 shfs smbfs " is_net_fs() { [ -z "$1" ] && return 1 # Check OS specific flags to see if we're local or net mounted mountinfo --quiet --netdev "$1" && return 0 mountinfo --quiet --nonetdev "$1" && return 1 # Fall back on fs types local t=$(mountinfo --fstype "$1") for x in $net_fs_list $extra_net_fs_list; do [ "$x" = "$t" ] && return 0 done return 1 } is_union_fs() { [ ! -x /sbin/unionctl ] && return 1 unionctl "$1" --list >/dev/null 2>&1 } get_bootparam() { local match="$1" [ -z "$match" -o ! -r /proc/cmdline ] && return 1 set -- $(cat /proc/cmdline) while [ -n "$1" ]; do [ "$1" = "$match" ] && return 0 case "$1" in gentoo=*) local params="${1##*=}" local IFS=, x= for x in $params; do [ "$x" = "$match" ] && return 0 done ;; esac shift done return 1 } get_bootparam_value() { local match="$1" which_value="$2" sep="$3" result value if [ -n "$match" -a -r /proc/cmdline ]; then set -- $(cat /proc/cmdline) while [ -n "$1" ]; do case "$1" in $match=*) value="${1##*=}" case "$which_value" in all) [ -z "$sep" ] && sep=' ' if [ -z "$result" ]; then result="$value" else result="${result}${sep}${value}" fi ;; last) result="$value" ;; *) result="$value" break ;; esac ;; esac shift done fi echo $result } need_if_exists() { for x; do rc-service --exists "${x}" && need "${x}" done } # Called from openrc-run.sh or gendepends.sh _get_containers() { local c case "${RC_UNAME}" in FreeBSD) c="-jail" ;; Linux) c="-docker -podman -lxc -openvz -rkt -systemd-nspawn -uml -vserver -wsl" ;; esac echo $c } _get_containers_remove() { local c for x in $(_get_containers); do c="${c}!${x} " done echo $c } _depend() { depend local _rc_svcname=$(shell_var "$RC_SVCNAME") _deptype= _depends= # Add any user defined depends for _deptype in config:CONFIG need:NEED use:USE want:WANT \ after:AFTER before:BEFORE \ provide:PROVIDE keyword:KEYWORD; do IFS=: set -- $_deptype unset IFS eval _depends=\$rc_${_rc_svcname}_$1 [ -z "$_depends" ] && eval _depends=\$rc_$1 [ -z "$_depends" ] && eval _depends=\$RC_${_rc_svcname}_$2 [ -z "$_depends" ] && eval _depends=\$RC_$2 $1 $_depends done } # Add our sbin to $PATH case "$PATH" in "$RC_LIBEXECDIR"/sbin|"$RC_LIBEXECDIR"/sbin:*);; *) PATH="$RC_LIBEXECDIR/sbin:$PATH" ; export PATH ;; esac # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # Declare this here so that no formatting doesn't affect the embedded newline __IFS=" " # Handy function to handle all our unmounting needs # mountinfo is a C program to actually find our mounts on our supported OS's # We rely on fuser being present, so if it's not then don't unmount anything. # This isn't a real issue for the BSD's, but it is for Linux. do_unmount() { local cmd="$1" retval=0 retry= pids=- local f_opts="-m -c" f_kill="-s " mnt= if [ "$RC_UNAME" = "Linux" ]; then f_opts="-m" f_kill="-" fi shift local IFS="$__IFS" set -- $(mountinfo "$@") unset IFS for mnt; do # Unmounting a shared mount can unmount other mounts, so # we need to check the mount is still valid mountinfo --quiet "$mnt" || continue # Ensure we interpret all characters properly. mnt=$(printf "$mnt") case "$cmd" in umount) ebegin "Unmounting $mnt" ;; *) ebegin "Remounting $mnt read only" ;; esac retry=4 # Effectively TERM, sleep 1, TERM, sleep 1, KILL, sleep 1 while ! LC_ALL=C $cmd "$mnt" 2>/dev/null; do if command -v fuser >/dev/null 2>&1; then pids="$(timeout -s KILL "${rc_fuser_timeout:-60}" \ fuser $f_opts "$mnt" 2>/dev/null)" fi case " $pids " in *" $$ "*) eend 1 "failed because we are using" \ "$mnt" retry=0;; " - ") eend 1 retry=0;; " ") eend 1 "in use but fuser finds nothing" retry=0;; *) if [ $retry -le 0 ]; then eend 1 else local sig="TERM" : $(( retry -= 1 )) [ $retry = 1 ] && sig="KILL" fuser $f_kill$sig -k $f_opts \ "$mnt" >/dev/null 2>&1 sleep 1 fi ;; esac [ $retry -le 0 ] && break done if [ $retry -le 0 ]; then retval=1 else eend 0 fi done return $retval } # Copyright (c) 2016 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # Released under the 2-clause BSD license. runit_start() { local service_path service_link service_path="${runit_service:-/etc/sv/${RC_SVCNAME}}" if [ ! -d "${service_path}" ]; then eerror "Runit service ${service_path} not found" return 1 fi service_link="${RC_SVCDIR}/sv/${service_path##*/}" ebegin "Starting ${name:-$RC_SVCNAME}" ln -snf "${service_path}" "${service_link}" local i=0 retval=1 # it can take upto 5 seconds for runsv to start while [ $i -lt 6 ] ; do if ${RC_VRF_EXEC} sv start "${service_link}" > /dev/null 2>&1; then retval=0 break fi sleep 1 && i=$(expr $i + 1) done if [ $retval -eq 1 ]; then # clean up the link else sv will keep on trying rm "${service_link}" fi eend $retval "Failed to start ${name:-$RC_SVCNAME}" } runit_stop() { local service_path service_link service_path="${runit_service:-/etc/sv/${RC_SVCNAME}}" if [ ! -d "${service_path}" ]; then eerror "Runit service ${service_path} not found" return 1 fi service_link="${RC_SVCDIR}/sv/${service_path##*/}" ebegin "Stopping ${name:-$RC_SVCNAME}" sv stop "${service_link}" > /dev/null 2>&1 && rm "${service_link}" eend $? "Failed to stop ${name:-$RC_SVCNAME}" } runit_status() { local service_path service_link service_path="${runit_service:-/etc/sv/${RC_SVCNAME}}" if [ ! -d "${service_path}" ]; then eerror "Runit service ${service_path} not found" return 1 fi service_link="${RC_SVCDIR}/sv/${service_path##*/}" sv status "${service_link}" } #!/bin/sh -e scandir="$1/s6-scan" logdir="$1/s6-logs" execlineb=`command -v execlineb` mkdir -p "$logdir" mkdir -p -m 02755 "$scandir/s6-svscan-log" echo 3 > "$scandir/s6-svscan-log/notification-fd" mkfifo -m 0600 "$scandir/s6-svscan-log/fifo" 2>/dev/null || : cat > "$scandir/s6-svscan-log/run" </dev/console # Start / stop / status functions for s6 support # Copyright (c) 2015-2025 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. # Variables that the supervisor=s6 backend understands: # command, command_args, command_args_foreground (command will be interpreted by sh) # output_logger, error_logger, output_log, error_log (the former two are mutually exclusive) # input_file, directory, chroot, umask, command_user # notify (only fd), stopsig # # Extra variables: # Timeouts: all in milliseconds, 0 for infinity, undefined for no waiting # timeout_ready: wait for the service to become up, or ready if notify=fd:X # timeout_down: wait for the service to stop # timeout_kill: if not stopped after that amount, send a SIGKILL extra_commands="restart reload ${extra_commands}" # Call this on every entry point, for readability _s6_set_variables() { name="${name:-${RC_SVCNAME}}" _execlineb="$(command -v execlineb)" _scandir="${RC_SVCDIR}/s6-scan" _servicedirs="${RC_SVCDIR}/s6-services" _service="$_scandir/$name" } _s6_available() { s6-svscanctl -- "$_scandir" 2>/dev/null } _execline_available() { test -n "$_execlineb" && "$_execlineb" -Pc 'exit 0' 2>/dev/null } _s6_sanity_checks() { if ! _s6_available ; then eerror "No supervision tree running on $_scandir" return 1 fi if ! _execline_available ; then eerror "No execlineb interpreter accessible" return 1 fi if test -n "$notify" && test "${notify##fd:}" = "$notify" ; then ewarn "Only the notify=fd method is supported - notify setting will be ignored" notify= fi if test -n "$output_logger" && test -n "$error_logger" ; then ewarn "error_logger will be used in priority over output_logger" output_logger= fi if test -n "$output_logger" && test -n "$output_log" ; then ewarn "output_logger will be used in priority over output_log" output_log= fi if test -n "$error_logger" && test -n "$error_log" ; then ewarn "error_logger will be used in priority over error_log" error_log= fi if test "${output_logger}${error_logger}" = auto ; then s6_log_arguments="${s6_log_arguments:-t s1048576 n10}" elif test -n "$s6_log_arguments" ; then ewarn "s6_log_arguments ignored because the logger was not 'auto'" s6_log_arguments= fi return 0 } _s6_force_stop() { s6-svunlink -- "$_scandir" "$name" } _s6_have_legacy_servicedir() { test -z "$command" && test -x "/var/svc.d/$name/run" } _s6_servicedir_creation_needed() { local dir="$_servicedirs/$name" conffile="{$RC_SERVICE%/*}/../conf.d/${RC_SERVICE##*/}" if ! test -e "$dir" ; then return 0 fi if ! test -d "$dir" ; then rm -f -- "$dir" return 0 fi if test "$RC_SERVICE" -nt "$dir" || test -f "$conffile" -a "$conffile" -nt "$dir" ; then _s6_force_stop rm -rf -- "$dir" return 0 fi return 1 } _s6_servicedir_create() { local logger="${output_logger}${error_logger}" dir="$_servicedirs/$name" mkdir -p -m 0700 -- "$dir" if test -n "$notify" && test "${notify##fd:}" != "$notify" ; then echo "${notify##fd:}" > "$dir/notification-fd" fi if test -n "$timeout_kill" ; then echo "$timeout_kill" > "$dir/timeout-kill" fi if test -n "$stopsig" ; then echo "$stopsig" > "$dir/down-signal" fi { # Generating execline code here because it is much easier than generating sh. # The command will still be interpreted by sh in the end. echo "#!$_execlineb -S1" if test -n "$umask" ; then echo "umask \"$umask\"" fi if test -n "$error_logger" ; then echo 'fdmove -c 2 1' elif test -n "$error_log" ; then echo "redirfd -w 2 -- \"$error_log\"" fi if test -n "$output_log" ; then echo "redirfd -w 1 -- \"$output_log\"" fi if test -n "$input_file" ; then echo "redirfd -r 0 -- \"$input_file\"" fi if test -n "$chroot" ; then echo "cd \"$chroot\" chroot ." fi if test -n "$directory" ; then echo "cd \"$directory\"" fi if test -n "$command_user" ; then echo "s6-setuidgid \"$command_user\"" fi echo "sh -c \"exec ${RC_VRF_EXEC} $command $command_args $command_args_foreground\"" } > "$dir/run" chmod 0755 "$dir/run" if test -n "$logger" ; then # TODO: get an unprivileged uid to run the logger as mkdir -m 0755 "$dir/log" mkdir -p -m 02755 "/var/log/$name" if test "$logger" = auto ; then echo 3 > "$dir/log/notification-fd" { echo "#!$_execlineb -S1" echo "s6-log -d3 -- ${s6_log_arguments} /var/log/$name" } > "$dir/log/run" else { echo '#!/bin/sh -e' echo "exec $logger" } > "$dir/log/run" fi chmod 0755 "$dir/log/run" fi chmod 0755 "$dir" } s6_start() { local servicepath r waitcommand waitname _s6_set_variables if ! _s6_sanity_checks ; then eerror "s6 sanity checks failed, cannot start service" return 1 fi servicepath="$_servicedirs/$name" if _s6_have_legacy_servicedir ; then servicepath="/var/svc.d/$name" ebegin "Starting $name (via user-provided service directory)" elif _s6_servicedir_creation_needed ; then ebegin "Starting $name" _s6_servicedir_create else ebegin "Starting $name (using cached service directory)" fi if s6-svlink -- "$_scandir" "$servicepath" ; then : ; else r=$? eend $r "Failed to s6-svlink $servicepath into $_scandir" return $r fi if test -n "$timeout_ready" ; then if test -n "$notify" ; then waitcommand='-U' waitname=ready else waitcommand='-u' waitname=up fi if s6-svwait $waitcommand -t "$timeout_ready" -- "$_service" ; then : ; else r=$? s6-svc -d -- "$_service" eend $r "Failed to become $waitname in $timeout_ready milliseconds" return $r fi fi eend 0 } s6_stop() { _s6_set_variables ebegin "Stopping $name" s6-svunlink ${timeout_down:+-t} $timeout_down -- "$_scandir" "$name" eend $? "Failed to stop $name" } s6_status() { _s6_set_variables if s6-svok "$_service" 2>/dev/null ; then s6-svstat -- "$_service" else _status fi } s6_reload() { _s6_set_variables ebegin "Reloading $name" s6-svc -h -- "$_service" eend $? "s6-svc -h command failed" } # start / stop / status functions for start-stop-daemon # Copyright (c) 2007-2015 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. ssd_start() { if [ -z "$command" ]; then ewarn "The command variable is undefined." ewarn "There is nothing for ${name:-$RC_SVCNAME} to start." ewarn "If this is what you intend, please write a start function." ewarn "This will become a failure in a future release." return 0 fi if [ -n "$ready" ]; then ewarn "Use 'notify=$ready' instead of 'ready=$ready'" notify="$ready" fi local _background= ebegin "Starting ${name:-$RC_SVCNAME}" if yesno "${command_background}"; then if [ -z "${pidfile}" ]; then eend 1 "command_background option used but no pidfile specified" return 1 fi if [ -n "${command_args_background}" ]; then eend 1 "command_background used with command_args_background" return 1 fi _background="--background --make-pidfile" fi if yesno "$start_inactive"; then local _inactive=false service_inactive && _inactive=true mark_service_inactive fi #the eval call is necessary for cases like: # command_args="this \"is a\" test" # to work properly. eval ${RC_VRF_EXEC} start-stop-daemon --start \ --exec $command \ ${chroot:+--chroot} $chroot \ ${directory:+--chdir} $directory \ ${input_file+--stdin} $input_file \ ${output_log+--stdout} $output_log \ ${error_log+--stderr} $error_log \ ${output_logger:+--stdout-logger \"$output_logger\"} \ ${error_logger:+--stderr-logger \"$error_logger\"} \ ${capabilities+--capabilities} "$capabilities" \ ${secbits:+--secbits} "$secbits" \ ${no_new_privs:+--no-new-privs} \ ${procname:+--name} $procname \ ${pidfile:+--pidfile} $pidfile \ ${command_user+--user} $command_user \ ${umask+--umask} $umask \ ${notify+--notify} $notify \ $_background $start_stop_daemon_args \ -- $command_args $command_args_background if eend $? "Failed to start ${name:-$RC_SVCNAME}"; then service_set_value "command" "${command}" [ -n "${chroot}" ] && service_set_value "chroot" "${chroot}" [ -n "${pidfile}" ] && service_set_value "pidfile" "${pidfile}" [ -n "${procname}" ] && service_set_value "procname" "${procname}" return 0 fi if yesno "$start_inactive"; then if ! $_inactive; then mark_service_stopped fi fi return 1 } ssd_stop() { local _progress= local startcommand="$(service_get_value "command")" local startchroot="$(service_get_value "chroot")" local startpidfile="$(service_get_value "pidfile")" local startprocname="$(service_get_value "procname")" command="${startcommand:-$command}" chroot="${startchroot:-$chroot}" pidfile="${startpidfile:-$pidfile}" procname="${startprocname:-$procname}" [ -n "$command" -o -n "$procname" -o -n "$pidfile" ] || return 0 yesno "${command_progress}" && _progress=--progress ebegin "Stopping ${name:-$RC_SVCNAME}" start-stop-daemon --stop \ ${retry:+--retry} $retry \ ${command:+--exec} $command \ ${procname:+--name} $procname \ ${pidfile:+--pidfile} $chroot$pidfile \ ${stopsig:+--signal} $stopsig \ ${_progress} eend $? "Failed to stop ${name:-$RC_SVCNAME}" } ssd_status() { _status } # start / stop / status functions for supervise-daemon # Copyright (c) 2016 The OpenRC Authors. # See the Authors file at the top-level directory of this distribution and # https://github.com/OpenRC/openrc/blob/HEAD/AUTHORS # # This file is part of OpenRC. It is subject to the license terms in # the LICENSE file found in the top-level directory of this # distribution and at https://github.com/OpenRC/openrc/blob/HEAD/LICENSE # This file may not be copied, modified, propagated, or distributed # except according to the terms contained in the LICENSE file. extra_commands="healthcheck unhealthy ${extra_commands}" supervise_start() { if [ -z "$command" ]; then ewarn "The command variable is undefined." ewarn "There is nothing for ${name:-$RC_SVCNAME} to start." return 1 fi if [ -n "$ready" ]; then ewarn "Use 'notify=$ready' instead of 'ready=$ready'" notify="$ready" fi ebegin "Starting ${name:-$RC_SVCNAME}" # The eval call is necessary for cases like: # command_args="this \"is a\" test" # to work properly. eval ${RC_VRF_EXEC} supervise-daemon "${RC_SVCNAME}" --start \ ${retry:+--retry} $retry \ ${directory:+--chdir} $directory \ ${chroot:+--chroot} $chroot \ ${input_file+--stdin} $input_file \ ${output_log+--stdout} ${output_log} \ ${error_log+--stderr} $error_log \ ${output_logger:+--stdout-logger \"$output_logger\"} \ ${error_logger:+--stderr-logger \"$error_logger\"} \ ${pidfile:+--pidfile} $pidfile \ ${respawn_delay:+--respawn-delay} $respawn_delay \ ${respawn_max:+--respawn-max} $respawn_max \ ${respawn_period:+--respawn-period} $respawn_period \ ${healthcheck_delay:+--healthcheck-delay} $healthcheck_delay \ ${healthcheck_timer:+--healthcheck-timer} $healthcheck_timer \ ${capabilities+--capabilities} "$capabilities" \ ${secbits:+--secbits} "$secbits" \ ${no_new_privs:+--no-new-privs} \ ${command_user+--user} $command_user \ ${umask+--umask} $umask \ ${notify+--notify} $notify \ ${supervise_daemon_args-${start_stop_daemon_args}} \ $command \ -- $command_args $command_args_foreground rc=$? if [ $rc = 0 ]; then [ -n "${chroot}" ] && service_set_value "chroot" "${chroot}" [ -n "${pidfile}" ] && service_set_value "pidfile" "${pidfile}" fi eend $rc "failed to start ${name:-$RC_SVCNAME}" } supervise_stop() { local startchroot="$(service_get_value "chroot")" local startpidfile="$(service_get_value "pidfile")" chroot="${startchroot:-$chroot}" pidfile="${startpidfile:-$pidfile}" ebegin "Stopping ${name:-$RC_SVCNAME}" supervise-daemon "${RC_SVCNAME}" --stop \ ${pidfile:+--pidfile} $chroot$pidfile eend $? "Failed to stop ${name:-$RC_SVCNAME}" } _check_supervised() { local child_pid start_time child_pid="$(service_get_value "child_pid")" start_time="$(service_get_value "start_time")" if [ -n "${child_pid}" ] && [ -n "${start_time}" ]; then return 1 fi return 0 } supervise_status() { if service_stopping; then ewarn "status: stopping" return 4 elif service_starting; then ewarn "status: starting" return 8 elif service_inactive; then ewarn "status: inactive" return 16 elif service_started; then if service_crashed; then if ! _check_supervised; then eerror "status: unsupervised" return 64 fi eerror "status: crashed" return 32 fi einfo "status: started" return 0 else einfo "status: stopped" return 3 fi } healthcheck() { return 0 } unhealthy() { return 0 } 0.63.2 # # This is a sample mdev.conf. # # Devices: # Syntax: %s %d:%d %s # devices user:group mode $MODALIAS=.* root:root 0660 @modprobe -q -b "$MODALIAS" # null does already exist; therefore ownership has to be changed with command null root:root 0666 @chmod 666 $MDEV zero root:root 0666 full root:root 0666 random root:root 0666 urandom root:root 0444 hwrandom root:root 0660 console root:tty 0600 # load frambuffer console when first frambuffer is found fb0 root:video 0660 @modprobe -q -b fbcon fd0 root:floppy 0660 kmem root:kmem 0640 mem root:kmem 0640 port root:kmem 0640 ptmx root:tty 0666 # Kernel-based Virtual Machine. kvm root:kvm 0666 # ram.* ram([0-9]+) root:disk 0660 >rd/%1 loop([0-9]+) root:disk 0660 >loop/%1 # persistent storage dasd.* root:disk 0660 */lib/mdev/persistent-storage mmcblk.* root:disk 0660 */lib/mdev/persistent-storage nbd.* root:disk 0660 */lib/mdev/persistent-storage nvme.* root:disk 0660 */lib/mdev/persistent-storage sd[a-z].* root:disk 0660 */lib/mdev/persistent-storage sr[0-9]+ root:cdrom 0660 */lib/mdev/persistent-storage vd[a-z].* root:disk 0660 */lib/mdev/persistent-storage xvd[a-z].* root:disk 0660 */lib/mdev/persistent-storage md[0-9]+ root:disk 0660 tty root:tty 0666 tty[0-9] root:root 0600 tty[0-9][0-9]+ root:tty 0660 ttyS[0-9]+ root:dialout 0660 ttyGS[0-9]+ root:root 0660 pty.* root:tty 0660 vcs[0-9]* root:tty 0660 vcsa[0-9]* root:tty 0660 # rpi bluetooth #ttyAMA0 root:tty 660 @btattach -B /dev/$MDEV -P bcm -S 115200 -N & ttyACM[0-9]+ root:dialout 0660 @ln -sf $MDEV modem ttyUSB[0-9]+ root:dialout 0660 @ln -sf $MDEV modem ttyLTM[0-9]+ root:dialout 0660 @ln -sf $MDEV modem ttySHSF[0-9]+ root:dialout 0660 @ln -sf $MDEV modem slamr root:dialout 0660 @ln -sf $MDEV slamr0 slusb root:dialout 0660 @ln -sf $MDEV slusb0 fuse root:root 0666 # mobile broadband modems cdc-wdm[0-9]+ root:dialout 0660 # dri device dri/renderD.* root:video 0666 dri/.* root:video 0660 card[0-9]+ root:video 0660 =dri/ # alsa sound devices and audio stuff pcm.* root:audio 0660 =snd/ control.* root:audio 0660 =snd/ midi.* root:audio 0660 =snd/ seq root:audio 0660 =snd/ timer root:audio 0660 =snd/ adsp root:audio 0660 >sound/ audio root:audio 0660 >sound/ dsp root:audio 0660 >sound/ mixer root:audio 0660 >sound/ sequencer.* root:audio 0660 >sound/ SUBSYSTEM=sound;.* root:audio 0660 # PTP devices ptp[0-9] root:root 0660 */lib/mdev/ptpdev # virtio-ports SUBSYSTEM=virtio-ports;vport.* root:root 0600 @mkdir -p virtio-ports; ln -sf ../$MDEV virtio-ports/$(cat /sys/class/virtio-ports/$MDEV/name) # misc stuff agpgart root:root 0660 >misc/ psaux root:root 0660 >misc/ rtc root:root 0664 >misc/ # input stuff SUBSYSTEM=input;.* root:input 0660 # v4l stuff -vbi[0-9]+ root:video 0660 vbi[0-9]+ root:video 0660 >v4l/ -video[0-9]+ root:video 0660 video[0-9]+ root:video 0660 >v4l/ -media[0-9]+ root:video 0660 media[0-9]+ root:video 0660 >v4l/ # dvb stuff dvb.* root:video 0660 */lib/mdev/dvbdev # VideoCore VC4 BCM GPU specific (as in Pi devices) vchiq root:video 0660 vcio root:video 0660 vcsm-cma root:video 0660 vc-mem root:video 0660 dma_heap/linux,cma root:video 0660 @ln -sf linux,cma dma_heap/vidbuf_cached dma_heap/system root:video 0660 @grep -q iommu /proc/iomem && ln -sf system dma_heap/vidbuf_cached # load drivers for usb devices usb[0-9]+ root:root 0660 */lib/mdev/usbdev # net devices # 666 is fine: https://www.kernel.org/doc/Documentation/networking/tuntap.txt net/tun[0-9]* root:netdev 0666 net/tap[0-9]* root:netdev 0666 SUBSYSTEM=net;INTERFACE=.*;.* root:root 600 @test -r /etc/mactab && nameif -s # zaptel devices zap(.*) root:dialout 0660 =zap/%1 dahdi!(.*) root:dialout 0660 =dahdi/%1 dahdi/(.*) root:dialout 0660 =dahdi/%1 # raid controllers cciss!(.*) root:disk 0660 =cciss/%1 cciss/(.*) root:disk 0660 =cciss/%1 ida!(.*) root:disk 0660 =ida/%1 ida/(.*) root:disk 0660 =ida/%1 rd!(.*) root:disk 0660 =rd/%1 rd/(.*) root:disk 0660 =rd/%1 # tape devices nst[0-9]+.* root:tape 0660 st[0-9]+.* root:tape 0660 # VirtualBox devices vboxguest root:root 0600 vboxuser root:root 0666 vboxdrv root:root 0600 vboxdrvu root:root 0666 vboxnetctl root:root 0600 # fallback for any!device -> any/device (.*)!(.*) root:root 0660 =%1/%2 #!/bin/sh # MDEV=dvb0.demux1 -> ADAPTER=dvb0 -> N=0 ADAPTER=${MDEV%.*} N=${ADAPTER#dvb} # MDEV=dvb0.demux1 -> DEVB_DEV=demux1 DVB_DEV=${MDEV#*.} case "$ACTION" in add|"") mkdir -p dvb/adapter${N} mv ${MDEV} dvb/adapter${N}/${DVB_DEV} ;; remove) rm -f dvb/adapter${N}/${DVB_DEV} rmdir dvb/adapter${N} 2>/dev/null rmdir dvb/ 2>/dev/null esac #!/bin/sh symlink_action() { case "$ACTION" in add) ln -sf "$1" "$2";; remove) rm -f "$2";; esac } sanitise_file() { sed -E -e 's/^\s+//' -e 's/\s+$//' -e 's/ /_/g' "$@" 2>/dev/null } sanitise_string() { echo "$@" | sanitise_file } vpd_pg80_serial() { dd if="$1" bs=1 skip=4 2>/dev/null | tr -d '\000' | sanitise_file } blkid_encode_string() { # Rewrites string similar to libblk's blkid_encode_string # function which is used by udev/eudev. echo "$@" | sed -e 's|\\|\\x5c|g' -e 's| |\\x20|g' -e 's|/|\\x2f|g' } blkid_tag() { printf '%s\n' "$1" | sed -n "s/.*[[:space:]]$2=\"\\([^\"]*\\)\".*/\\1/p" } : ${SYSFS:=/sys} # cdrom symlink case "$MDEV" in sr*|xvd*) caps="$(cat $SYSFS/block/$MDEV/capability 2>/dev/null)" if [ $(( 0x${caps:-0} & 8 )) -gt 0 ] || [ "$(cat $SYSFS/block/$MDEV/removable 2>/dev/null)" = "1" ]; then symlink_action $MDEV cdrom fi esac # /dev/block symlinks mkdir -p block if [ -f "$SYSFS/class/block/$MDEV/dev" ]; then maj_min=$(sanitise_file "$SYSFS/class/block/$MDEV/dev") symlink_action ../$MDEV block/${maj_min} fi # by-id symlinks mkdir -p disk/by-id if [ -f "$SYSFS/class/block/$MDEV/partition" ]; then # This is a partition of a device, find out its parent device _parent_dev="$(basename $(${SBINDIR:-/usr/bin}/readlink -f "$SYSFS/class/block/$MDEV/.."))" partition=$(cat $SYSFS/class/block/$MDEV/partition 2>/dev/null) case "$partition" in [0-9]*) partsuffix="-part$partition";; esac # Get name, model, serial, wwid from parent device of the partition _check_dev="$_parent_dev" else _check_dev="$MDEV" fi model=$(sanitise_file "$SYSFS/class/block/$_check_dev/device/model") name=$(sanitise_file "$SYSFS/class/block/$_check_dev/device/name") serial=$(sanitise_file "$SYSFS/class/block/$_check_dev/device/serial") # Special case where block devices have serials attached to the block itself, like virtio-blk : ${serial:=$(sanitise_file "$SYSFS/class/block/$_check_dev/serial")} : ${serial:=$(vpd_pg80_serial "$SYSFS/class/block/$_check_dev/device/vpd_pg80")} wwid=$(sanitise_file "$SYSFS/class/block/$_check_dev/wwid") : ${wwid:=$(sanitise_file "$SYSFS/class/block/$_check_dev/device/wwid")} # Sets variables LABEL, PARTLABEL, PARTUUID, TYPE, UUID depending on # blkid output (busybox blkid will not provide PARTLABEL or PARTUUID) blkid_out=$(blkid "/dev/$MDEV" 2>/dev/null) LABEL=$(blkid_tag "$blkid_out" LABEL) PARTLABEL=$(blkid_tag "$blkid_out" PARTLABEL) PARTUUID=$(blkid_tag "$blkid_out" PARTUUID) TYPE=$(blkid_tag "$blkid_out" TYPE) UUID=$(blkid_tag "$blkid_out" UUID) if [ -n "$wwid" ]; then case "$MDEV" in nvme*) symlink_action ../../$MDEV disk/by-id/nvme-${wwid}${partsuffix};; esac case "$wwid" in naa.*) symlink_action ../../$MDEV disk/by-id/wwn-0x${wwid#naa.}${partsuffix};; esac fi if [ -n "$serial" ]; then if [ -n "$model" ]; then case "$MDEV" in nvme*) symlink_action ../../$MDEV disk/by-id/nvme-${model}_${serial}${partsuffix};; sd*) symlink_action ../../$MDEV disk/by-id/ata-${model}_${serial}${partsuffix};; esac fi if [ -n "$name" ]; then case "$MDEV" in mmcblk*) symlink_action ../../$MDEV disk/by-id/mmc-${name}_${serial}${partsuffix};; esac fi # virtio-blk case "$MDEV" in vd*) symlink_action ../../$MDEV disk/by-id/virtio-${serial}${partsuffix};; esac fi # by-label, by-partlabel, by-partuuid, by-uuid symlinks if [ -n "$LABEL" ]; then mkdir -p disk/by-label symlink_action ../../$MDEV disk/by-label/"$(blkid_encode_string "$LABEL")" fi if [ -n "$PARTLABEL" ]; then mkdir -p disk/by-partlabel symlink_action ../../$MDEV disk/by-partlabel/"$(blkid_encode_string "$PARTLABEL")" fi if [ -n "$PARTUUID" ]; then mkdir -p disk/by-partuuid symlink_action ../../$MDEV disk/by-partuuid/"$PARTUUID" fi if [ -n "$UUID" ]; then mkdir -p disk/by-uuid symlink_action ../../$MDEV disk/by-uuid/"$UUID" fi # nvme EBS storage symlinks if [ "${MDEV#nvme}" != "$MDEV" ] && [ "$model" = "Amazon_Elastic_Block_Store" ] && command -v nvme >/dev/null; then n=30 while [ $n -gt 0 ]; do ebs_alias=$(nvme id-ctrl -b /dev/$_check_dev \ | dd bs=32 skip=96 count=1 iflag=fullblock 2>/dev/null \ | sed -nre '/^(\/dev\/)?(s|xv)d[a-z]{1,2} /p' \ | tr -d ' ') if [ -n "$ebs_alias" ]; then symlink_action "$MDEV" ${ebs_alias#/dev/}$partition break fi n=$((n - 1)) sleep 0.1 done fi # backwards compatibility with /dev/usbdisk for /dev/sd* if [ "${MDEV#sd}" != "$MDEV" ]; then sysdev=$(readlink $SYSFS/class/block/$MDEV) case "$sysdev" in *usb[0-9]*) # require vfat for devices without partition if ! [ -e $SYSFS/block/$MDEV ] || [ "$TYPE" = "vfat" ]; then symlink_action $MDEV usbdisk fi ;; esac fi #!/bin/sh symlink_action() { case "$ACTION" in add) ln -sf "$1" "$2";; remove) rm -f "$2";; esac } clock_name=$(cat ${SYSFS:-/sys}/class/ptp/$MDEV/clock_name 2>/dev/null | sed -e 's/ /_/g') case "$clock_name" in KVM_virtual_PTP) symlink_action $MDEV ptp_kvm ;; ptp_vmw) symlink_action $MDEV ptp_vmw ;; hyperv) symlink_action $MDEV ptp_hyperv ;; esac #!/bin/sh # mdev -s will not set SUBSYSTEM or DEVNAME so we trigger a hotplug event if [ "$SUBSYSTEM" != "usb" ] || [ "$DEVTYPE" != "usb_device" ]; then uev=/sys/bus/usb/devices/$MDEV/uevent [ -e "$uev" ] && echo "add" > "$uev" exit fi [ -n "$DEVNAME" ] || exit case "$ACTION" in add) mkdir -p "${DEVNAME%/*}" mv $MDEV $DEVNAME # autoload driver for i in /sys/$DEVPATH/*/modalias; do [ -e "$i" ] && echo $i done | xargs sort -u | xargs modprobe -a 2>/dev/null ;; remove) rm $DEVNAME ;; esac #!/sbin/openrc-run description="the mdev device manager" depend() { provide dev need sysfs dev-mount before checkfs fsck keyword -containers -vserver -lxc } _start_service () { ebegin "Starting busybox mdev" mkdir -p /dev echo "/sbin/mdev" > /proc/sys/kernel/hotplug eend $? } _start_coldplug () { ebegin "Scanning hardware for mdev" # mdev -s will not create /dev/usb[1-9] devices with recent kernels # so we manually trigger events for usb for i in $(find /sys/devices -name 'usb[0-9]*'); do [ -e $i/uevent ] && echo add > $i/uevent done # trigger the rest of the coldplug mdev -s eend $? } start() { _start_service _start_coldplug } stop() { ebegin "Stopping busybox mdev" echo > /proc/sys/kernel/hotplug eend } # what cipher to use with -e option DEFAULT_CIPHER=aes-256-cbc # Uncomment the row below to encrypt config by default # ENCRYPTION=$DEFAULT_CIPHER # Uncomment below to avoid option to 'lbu commit' # Can also be set to 'floppy' # LBU_MEDIA=usb # Set the LBU_BACKUPDIR variable in case you prefer to save the apkovls # in a normal directory instead of mounting an external media. # LBU_BACKUPDIR=/root/config-backups # Uncomment below to let lbu make up to 3 backups # BACKUP_LIMIT=3 ELF>@1@8 @@@@lll@ @   ,<<X,<<00HHH$$Std00Ptd!!!ddQtdRtd,<<PP GNUGNUZIBa9\Mշ/lib/ld-musl-x86_64.so.1"P"#$%9) "|=3" : \aT hKDv-p  <o< strcpyexitperrorstrncpy__stack_chk_failmkdirfdatasynccallocstrlen__errno_locationreadmemcmpgetoptstdoutfputslseekmallocstrcatstderr_initsplicestatfscloseopenfprintf_fini__cxa_finalizelink__libc_start_mainwriteposix_fallocatewctombfreelibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info>>>???? ?(? 0? 8? @? H? P?X?`?h?p?x????????????? ?!<$<#><PX5.%.@%.hHQR/x5hH=uH5k,e/1H5j,T/1/1 1ZH1HH5I,H7HWL E1H QH=zeDH=A/H:/H9tH.Ht H=/H5 /H)HH?HHHtHE.HtfD=.uGUH=-Ht H=.-gH=-t H=-.]@ff.H=8.t&UH5.H=H.]8+HHO(H9W ~H5'P1H=*_-ZH9HVHO@HFH6Hv~HG@Ht H9tHGHHGHHW(HwHHH9P| H@H9uHHrHHFH01AUIATIHUHSAQF-Hp1,HtkHËE LH{,HC EC(L,Et H %IcL$HC 1HDHID$8EuH UHAXL[] A\A]Z[]A\A]AVIAUIATIUSӅtCA}HcLI,yH= +b,uD) )HIE I빉[]A\A]A^AWAVAUATUSH8dH%(H$(HL$Lt$(Hl$M9AL9A!H$H9AI9A!źLH*H|$)H5f +D$(<t<tX{uEt6 $%u$/u$11A<$ALcD'y r(uD) )HID$ 뾉[]A\A]A^AUATUHSHQWt*t>1up?'HtHk VCsHHQy?CAEt.AHspHE9ENIc/xuD)E)͉Z[]A\A]AWAVAUATIUHSHHO0HtVHw8H9}M~=LcGIHHHHHH5]IHHH=$H1&HEI9D$ H;*L-*Hu,H=''z1H='1'AƅAH},1&ADžyHD'YH5'DI9IFHs&x6HH5}'D,&xI)MuD&D&A|$H=#HU,H5l1%Hu,H='H)%HE AH},H(1 &AŅy%`A|$~"HM DE(HU,1H=#H54p%HU Hu#HE H$AD$ tBtF1ۅ1Dq%t؉H$DLÅAD$ D<$EIt$pLA9ANHcAƅ ÅukdIL$pHL$HHcD$HL$y H=~D$$A9tHcH)uD~ A)f$HcH;E u DO$D$xHcûH;E u1H[]A\A]A^A_ATUSHdH%(H$1Ld$HH|$ t$H=Ld$HLd$PH$D$ #H$H=HD$xHHD$`#uH$HtD$ H$HD$8Hl$Ht$XH }HH\$HL9tNHtIHCHHsH+t$(HBHᆳHH-52HCH~ HxnHHSt_|$tA1۾HHH~ HH=t|$~H=Z HH51"H|$xM#|$ ;#1H$dH+%(tp"H[]A\PXERROR: non-linear reads are not supported (asked %zx, we are at %zx) readCD001INFO: Microsoft Joliet Level %d .%s : DIR, flags 0x%08x /ERROR: Disk needed %zd MiB (free %zd MiB) WARNING: Not extracting '%s' as it's sharing file-extents with another file %s : %zd bytes, flags 0x%08x write/dev/nullSkipped %zd bytes at the end husage: uniso [-h] Unpack ISO9660 File System from STDIN. options: -h Show this help ;d `F H93TozRx $ FJ w?;*3$"DeUUH\BEG D(B0t (D AEBE A(F ABB82gBEE D(C0L(A BBBH]kBBB B(A0A8GO8A0A(B BBBH0|!BEB B(A0D8G8C0A(B BBB8|QbBEE D(C0G(A BBB4wBBA D(D0(A ABBH<BBB B(D0D8DP8C0A(B BBB0<BHA G AABpRHI0   <<oX  > 0 o$( #%<&@GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9o<C KXXS0]B  g( ( qb w00 }2 !!d""<,<,<, <,>. @0 @0p 00$0eckd_dasd= fba_dasd= _dasdfmt() { local block="$(ls "${ROOT}sys/bus/ccw/devices/$1/block" 2>/dev/null)" local dev="${ROOT}dev/$block" if ! [ -b "$dev" ]; then echo "$dev ($1) is not a block device" >&2 else if ask_yesno "WARNING: Erase ECKD DASD $1? (y/n)" "n"; then dasdfmt -b 4096 -d cdl -yp "$dev" fi fi } eckdselect_help() { cat <<-__EOF__ Enter each available DASD's address (e.g. 0.0.02d0) to format that DASD. Enter multiple addresses separated by a space to format multiple DASDs. Enter 'all' to format all available DASDs. WARNING: Data will be lost after formatted! Enter 'done' or 'none' to finish formatting. Enter 'abort' to quit the installer. __EOF__ } show_dasd_info() { local busid= vendor= block= devtype= cutype= for busid in $@; do vendor=$(cat "${ROOT}sys/bus/ccw/devices/$busid/vendor" 2>/dev/null) devtype=$(cat "${ROOT}/sys/bus/ccw/devices/$busid/devtype" 2>/dev/null) cutype=$(cat "${ROOT}/sys/bus/ccw/devices/$busid/cutype" 2>/dev/null) block="$(ls "${ROOT}/sys/bus/ccw/devices/$busid/block" 2>/dev/null)" echo " $busid ($devtype $cutype $vendor)" done } ask_eckd(){ local prompt="$1" local help_func="$2" shift 2 local default_dasd="all" apk add --quiet s390-tools resp= while ! all_in_list "$resp" $@ "$default_dasd" "abort" "done" "none"; do echo "Available ECKD DASD(s) are:" show_dasd_info "$@" ask "$prompt" "$default_dasd" case "$resp" in 'abort') exit 0;; 'done'|'none') return 0;; '?') $help_func;; 'all') for busid in $@; do _dasdfmt $busid; done;; *) for busid in $resp; do _dasdfmt $busid; done;; esac done } check_dasd() { eckd_dasd= fba_dasd= local dasd="$(get_bootopt dasd)" for _dasd in $( echo $dasd | tr ',' ' '); do [ -e "${ROOT}/sys/bus/ccw/drivers/dasd-eckd/$_dasd" ] && eckd_dasd="$eckd_dasd $_dasd" [ -e "${ROOT}/sys/bus/ccw/drivers/dasd-fba/$_dasd" ] && fba_dasd="$fba_dasd $_dasd" done if [ -n "$eckd_dasd" ]; then ask_eckd \ "Which ECKD DASD(s) would you like to be formatted using dasdfmt? (enter '?' for help)" \ eckdselect_help "$eckd_dasd" fi } is_dasd() { local disk="${1#*\/dev\/}" dasd_type="$2" for _dasd in $(eval "echo \$${dasd_type}_dasd"); do [ -e "${ROOT}sys/bus/ccw/drivers/dasd-$dasd_type/$_dasd/block/$disk" ] && return 0 done return 1 } setup_zipl() { local mnt="$1" root="$2" modules="$3" kernel_opts="$4" local parameters="root=$root modules=$modules $kernel_opts" local dasd="$(echo $eckd_dasd $fba_dasd | tr ' ' ',')" local s390x_net="$(get_bootopt s390x_net)" [ -n "$dasd" ] && parameters="$parameters dasd=$dasd" [ -n "$s390x_net" ] && parameters="$parameters s390x_net=$s390x_net" cat > "$mnt"/etc/zipl.conf <<- EOF [defaultboot] defaultauto prompt=1 timeout=${BOOT_TIMEOUT} default=linux target=/boot [linux] image=/boot/vmlinuz-$KERNEL_FLAVOR ramdisk=/boot/initramfs-$KERNEL_FLAVOR parameters="$parameters" EOF } setup_partitions_eckd() { local blocks_per_track=12 tracks_per_cylinder=15 boot_track= swap_track= local diskdev="$1" boot_size="$2" swap_size="$3" sys_type="$4" boot_track=$(($boot_size * 1024 / 4 / blocks_per_track)) [ "$swap_size" != 0 ] && swap_track=$(($swap_size * 1024 / 4 / blocks_per_track + boot_track + 1)) local conf="$(mktemp)" if [ -n "$swap_track" ]; then cat > "$conf" <<- EOF [first,$boot_track,native] [$((boot_track + 1)),$swap_track,swap] [$((swap_track + 1)),last,$sys_type] EOF else cat > "$conf" <<- EOF [first,$boot_track,native] [$((boot_track + 1)),last,$sys_type] EOF fi fdasd -s -c "$conf" $diskdev rm $conf } # shellcheck shell=sh # shellcheck disable=SC3043 # shellcheck disable=SC2034 PREFIX=/usr PROGRAM=$(basename "$0") : "${ROOT:=/}" [ "${ROOT}" = "${ROOT%/}" ] && ROOT="${ROOT}/" [ "${ROOT}" = "${ROOT#/}" ] && ROOT="${PWD}/${ROOT}" # echo if in verbose mode vecho() { if [ -n "$VERBOSE" ]; then echo "$@" fi } # echo unless quiet mode qecho() { if [ -z "$QUIET" ]; then echo "$@" fi } # echo to stderr eecho() { echo "$@" >&2 } # echo to stderr and exit with error die() { eecho "$@" exit 1 } init_tmpdir() { local __tmpd __tmpd=$(mktemp -d "/tmp/$PROGRAM-${$}-$(date +%s)-XXXXXXXXXX") || die "Failed to create tmp dir" # Expand $__tmpd now so cleanup uses this function's local value. # shellcheck disable=SC2064,SC2154 trap "rc=\$?; rm -fr \"$__tmpd\"; exit \$rc" 0 eval "$1=\"$__tmpd\"" } cd_assert() { cd "$1" || die "Failed to cd into ${2:-$1}" } default_read() { local n read -r n [ -z "$n" ] && n="$2" eval "$1=\"$n\"" } cfg_add() { $MOCK lbu_add "$@" } # return true if given value is Y, y, Yes, yes YES etc yesno() { case $1 in [Yy]|[Yy][Ee][Ss]) return 0;; esac return 1 } # Detect if we are running Xen is_xen() { test -d /proc/xen } # Detect if we are running Xen Dom0 is_xen_dom0() { is_xen && \ grep -q "control_d" /proc/xen/capabilities 2>/dev/null } # list of all network interfaces, sorted by ifindex sorted_ifaces() { for i in "$ROOT"/sys/class/net/*; do local iface="${i##*/}" if [ -e "$i"/ifindex ]; then printf "%s\t%s\n" "$(cat "$i"/ifindex)" "$iface" fi done | sort -n | awk '{print $2}' } # list of available network interfaces that aren't part of any bridge or bond available_ifaces() { local iflist="" ifpath="" iface="" if ! [ -d "$ROOT"/sys/class/net ]; then ip link | awk -F: '$1 ~ /^[0-9]+$/ {printf "%s",$2}' return fi for iface in $(sorted_ifaces); do # skip interfaces that are part of a bond or bridge ifpath="$ROOT/sys/class/net/$iface" if [ -d "$ifpath"/master/bonding ] || [ -d "$ifpath"/brport ] || [ "$iface" = "lo" ]; then continue fi iflist="${iflist}${iflist:+ }$iface" done echo "$iflist" } # from OpenBSD installer # Ask for a password, saving the input in $resp. # Display $1 as the prompt. # *Don't* allow the '!' options that ask does. # *Don't* echo input. # *Don't* interpret "\" as escape character. askpass() { printf %s "$1 " set -o noglob $MOCK stty -echo read -r resp $MOCK stty echo set +o noglob echo } # Ask for a password twice, saving the input in $_password askpassword() { local _oifs="$IFS" IFS= while :; do askpass "Password for $1 account? (will not echo)" _password=$resp askpass "Password for $1 account? (again)" # N.B.: Need quotes around $resp and $_password to preserve leading # or trailing spaces. [ "$resp" = "$_password" ] && break echo "Passwords do not match, try again." done IFS=$_oifs } # test the first argument against the remaining ones, return success on a match isin() { local _a="$1" _b shift for _b; do [ "$_a" = "$_b" ] && return 0 done return 1 } # remove all occurrences of first argument from list formed by # the remaining arguments rmel() { local _a="$1" _b shift for _b; do [ "$_a" != "$_b" ] && printf %s "$_b " done } # Issue a read into the global variable $resp. _ask() { local _redo=0 read -r resp case "$resp" in !) echo "Type 'exit' to return to setup." sh _redo=1 ;; !*) eval "${resp#?}" _redo=1 ;; esac return $_redo } # Ask for user input. # # $1 = the question to ask the user # $2 = the default answer # # Save the user input (or the default) in $resp. # # Allow the user to escape to shells ('!') or execute commands # ('!foo') before entering the input. ask() { local _question="$1" _default="$2" while :; do printf %s "$_question " [ -z "$_default" ] || printf "[%s] " "$_default" _ask && : "${resp:=$_default}" && break done } # Ask for user input until a non-empty reply is entered. # # $1 = the question to ask the user # $2 = the default answer # # Save the user input (or the default) in $resp. ask_until() { resp= while [ -z "$resp" ] ; do ask "$1" "$2" done } # Ask for user for y/n until y, yes, n or no is responded # # $1 = the question to ask the user # $2 = the default answer # # Returns true/sucess if y/yes was responded. false othewise ask_yesno() { while true; do ask "$1" "$2" case "$resp" in y|yes|n|no) break;; esac done yesno "$resp" } # Ask for the user to select one value from a list, or 'done'. # # $1 = name of the list items (disk, cd, etc.) # $2 = question to ask # $3 = list of valid choices # $4 = default choice, if it is not specified use the first item in $3 # # N.B.! $3 and $4 will be "expanded" using eval, so be sure to escape them # if they contain spooky stuff # # At exit $resp holds selected item, or 'done' ask_which() { local _name="$1" _query="$2" _list="$3" _def="$4" _dynlist _dyndef while :; do # Put both lines in ask prompt, rather than use a # separate 'echo' to ensure the entire question is # re-ask'ed after a '!' or '!foo' shell escape. eval "_dynlist=\"$_list\"" eval "_dyndef=\"$_def\"" # Clean away whitespace and determine the default set -o noglob # shellcheck disable=SC2086 set -- $_dyndef; _dyndef="$1" # shellcheck disable=SC2086 set -- $_dynlist; _dynlist="$*" set +o noglob [ $# -lt 1 ] && resp="done" && return : "${_dyndef:=$1}" echo "Available ${_name}s are: $_dynlist." printf "Which one %s? (or 'done') " "$_query" [ -n "$_dyndef" ] && printf "[%s] " "$_dyndef" _ask || continue [ -z "$resp" ] && resp="$_dyndef" # Quote $resp to prevent user from confusing isin() by # entering something like 'a a'. # shellcheck disable=SC2086 isin "$resp" $_dynlist "done" && break echo "'$resp' is not a valid choice." done } find_modloop_media() { devnum=$(mountpoint -d /.modloop 2>/dev/null) || return test -n "$devnum" || return modloop_file=$(cat "${ROOT}sys/dev/block/$devnum/loop/backing_file") || return test -n "$modloop_file" || return # assume that device name and mount point don't contain spaces modloop_media=$(df "$modloop_file" | awk 'NR==2{print $6}') || return test -n "$modloop_media" || return echo "$modloop_media" } # Extract fully qualified domain name from current hostname. If none is # currently set, use the provided fallback. get_fqdn() { local _dn _dn=$(hostname -f 2>/dev/null) _dn=${_dn#"$(hostname -s 2>/dev/null)"} _dn=${_dn#.} echo "${_dn:=$1}" } #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: copy-modloop Copy kernel modules from modloop and unmount loopback device options: -h Show this help __EOF__ exit $1 } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) set -e if ! rc-service -q modloop status; then echo "modloop is not started" exit 1 fi if [ -n "$DO_UMOUNT" ] && [ -z "$modloop_media" ]; then modloop_media=$(find_modloop_media) fi modulesdir=/lib/modules if [ -L "$modulesdir" ]; then modulesdir=$(readlink "$modulesdir") fi cp -a "$modulesdir" /lib/modules.tmp rc-service modloop stop rm -r /lib/modules mv /lib/modules.tmp /lib/modules if [ -n "$DO_UMOUNT" ]; then umount "$modloop_media" fi #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: genfstab [-h] [-U] ROOT Generate fstab entries from mounted filesystems below ROOT. options: -h Show this help -U Use UUIDs for device identifiers __EOF__ exit $1 } die() { echo "$@" >&2 exit 1 } blkid_uuid() { local dev="$1" blkid 2>/dev/null | sed -n "s|^$dev:.* UUID=\"\\([^\"]*\\)\".*|\\1|p" } source_spec() { local dev="$1" value= i= case "$dev" in "${ROOT}"/dev/*) dev="/dev/${dev#"${ROOT}"/dev/}";; esac if [ "$uuid" -eq 1 ]; then for i in $NO_DISK_UUID; do if [ "$i" = "$dev" ]; then printf "%s" "$dev" return fi done case "$dev" in /dev/md*) printf "%s" "$dev"; return;; esac value=$(blkid_uuid "$dev") if [ -n "$value" ]; then printf "UUID=%s" "$value" return fi fi printf "%s" "$dev" } is_pseudofs() { case "$1" in autofs|binfmt_misc|bpf|cgroup|cgroup2|configfs|debugfs|devpts|devtmpfs|efivarfs|fusectl|hugetlbfs|mqueue|proc|pstore|securityfs|sysfs|tracefs) return 0 ;; esac return 1 } print_mounts() { local root="$1" local fs_spec= fs_file= fs_vfstype= fs_mntops= fs_freq= fs_passno= local mountpoint= passno= awk -v root="${root%/}/" 'substr($2 "/", 1, length(root)) == root' \ "${ROOT}proc/mounts" | \ while read -r fs_spec fs_file fs_vfstype fs_mntops fs_freq fs_passno; do if is_pseudofs "$fs_vfstype"; then continue fi mountpoint=${fs_file#"$root"} [ -n "$mountpoint" ] || mountpoint=/ case "$mountpoint" in /*) ;; *) mountpoint="/$mountpoint";; esac mountpoint=$(echo "$mountpoint" | sed -E 's:/+:/:g') if [ "$mountpoint" = / ]; then passno=1 else passno=2 fi printf "%s\t%s\t%s\t%s\t0 %s\n" \ "$(source_spec "$fs_spec")" \ "$mountpoint" \ "$fs_vfstype" \ "$fs_mntops" \ "$passno" done } uuid=0 while getopts "hU" opt; do case "$opt" in h) usage 0;; U) uuid=1;; '?') usage 1 >&2;; esac done shift $((OPTIND - 1)) [ $# -eq 1 ] || usage 1 >&2 root=$(cd "$1" 2>/dev/null && pwd -P) || die "genfstab: $1 is not a directory" print_mounts "$root" #!/bin/sh PROGRAM=setup-acf VERSION=3.22.0-r0 PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { echo "usage: $PROGRAM [-ahn] [-e email] [-l address] [PACKAGE...]" exit $1 } pkgs="acf-core acf-alpine-baselayout acf-apk-tools openssl" while getopts "ae:hl:n" opt ; do case $opt in a) pkgs=$(apk search --quiet --exact 'acf-*');; e) EMAIL="$OPTARG";; h) usage 0;; l) address="$OPTARG";; n) create_passwd=no;; '?') usage "1" >&2;; esac done shift $(expr $OPTIND - 1) while [ $# -gt 0 ]; do pkgs="$pkgs acf-$1" shift done # install packages apk add mini_httpd $pkgs || exit 1 if [ "$create_passwd" != "no" ]; then mkdir -p /etc/acf if [ -f /etc/acf/passwd ]; then mv /etc/acf/passwd /etc/acf/passwd.backup fi echo "root:x:Admin account:ADMIN" >/etc/acf/passwd chmod 600 /etc/acf/passwd acfpasswd -s root fi # setup mini_httpd and start it if [ -d /var/www/localhost/htdocs ]; then mv /var/www/localhost/htdocs /var/www/localhost/htdocs.old fi mkdir -p /var/www/localhost/ ln -s /usr/share/acf/www/ /var/www/localhost/htdocs lbu add /var/www/localhost/htdocs SSLDIR=/etc/ssl/mini_httpd SSLCNF=$SSLDIR/mini_httpd.cnf KEYFILE=$SSLDIR/server.key CRTFILE=$SSLDIR/server.crt PEMFILE=$SSLDIR/server.pem if [ -f $PEMFILE ]; then echo "$PEMFILE already exist." else mkdir -p $SSLDIR cat >$SSLCNF <<-__EOF__ [ req ] default_bits = 1024 encrypt_key = yes distinguished_name = req_dn x509_extensions = cert_type prompt = no [ req_dn ] OU=HTTPS server CN=$(hostname -f || hostname) emailAddress=${EMAIL:-postmaster@example.com} [ cert_type ] nsCertType = server __EOF__ echo "Generating certificates for HTTPS..." openssl genrsa 2048 > $KEYFILE openssl req -new -x509 -nodes -sha1 -days 3650 -key $KEYFILE \ -config $SSLCNF > $CRTFILE cat $KEYFILE >> $CRTFILE rm $KEYFILE mv $CRTFILE $PEMFILE fi cat >/etc/mini_httpd/mini_httpd.conf <<-__EOF__ nochroot dir=/var/www/localhost/htdocs user=nobody cgipat=cgi-bin** certfile=$PEMFILE port=443 ssl __EOF__ if [ -n "$address" ]; then echo "host=$address" >> /etc/mini_httpd/mini_httpd.conf fi rc-update -q add mini_httpd default rc-service mini_httpd restart # force update of dependency cache rc-update -q --update #!/bin/sh PROGRAM=setup-alpine VERSION=3.22.0-r0 PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" if [ -t 1 ]; then COLCYAN="\e[36m" COLWHITE="\e[97m" COLRESET="\e[0m" else COLCYAN="" COLWHITE="" COLRESET="" fi print_heading1() { printf "${COLCYAN}%s${COLRESET}\n" "$1" } print_heading2() { printf "${COLWHITE}%s${COLRESET}\n" "$1" } run_setup_interfaces() { local restart= [ -n "$rst_if" ] && restart="-r" if [ -n "$WIFIOPTS" ]; then setup-interfaces -w "$WIFIOPTS" $restart "$@" else setup-interfaces $restart "$@" fi } is_kvm_clock() { grep -q "kvm-clock" "$ROOT"sys/devices/system/clocksource/clocksource0/current_clocksource 2>/dev/null } is_virtual_console() { case "$(readlink "$ROOT"/proc/self/fd/0)" in /dev/tty[0-9]*) return 0;; esac return 1 } usage() { cat <<-__EOF__ usage: setup-alpine [-ahq] [-c FILE | -f FILE] Setup Alpine Linux options: -a Create Alpine Linux overlay file -c Create answer file (do not install anything) -e Empty root password -f Answer file to use for installation -h Show this help -q Quick mode. Ask fewer questions. __EOF__ exit $1 } while getopts "aef:c:hq" opt ; do case $opt in a) ARCHIVE=yes;; f) USEANSWERFILE="$OPTARG";; c) CREATEANSWERFILE="$OPTARG";; e) empty_root_password=1;; h) usage 0;; q) empty_root_password=1; quick=1; APKREPOSOPTS="-1"; HOSTNAMEOPTS="alpine";; '?') usage "1" >&2;; esac done shift $(expr $OPTIND - 1) rc_sys=$(openrc --sys) # mount xenfs so we can detect xen dom0 if [ "$rc_sys" = "XENU" ] && ! grep -q '^xenfs' /proc/mounts; then modprobe xenfs mount -t xenfs xenfs /proc/xen fi case "$USEANSWERFILE" in http*://*|ftp://*) # dynamically download answer file from URL (supports HTTP(S) and FTP) # ensure the network is up, otherwise setup a temporary interface config if ! rc-service networking --quiet status; then setup-interfaces -ar fi temp="$(mktemp)" wget -qO "$temp" "$USEANSWERFILE" || die "Failed to download '$USEANSWERFILE'" USEANSWERFILE="$temp" ;; *) [ -n "$USEANSWERFILE" ] && USEANSWERFILE=$(realpath "$USEANSWERFILE") ;; esac if [ -n "$USEANSWERFILE" ] && [ -e "$USEANSWERFILE" ]; then . "$USEANSWERFILE" fi if [ -n "$CREATEANSWERFILE" ]; then touch "$CREATEANSWERFILE" || echo "Cannot touch file $CREATEANSWERFILE" cat > "$CREATEANSWERFILE" <<-__EOF__ # Example answer file for setup-alpine script # If you don't want to use a certain option, then comment it out # Use US layout with US variant # KEYMAPOPTS="us us" KEYMAPOPTS=none # Set hostname to 'alpine' HOSTNAMEOPTS=alpine # Set device manager to mdev DEVDOPTS=mdev # Contents of /etc/network/interfaces INTERFACESOPTS="auto lo iface lo inet loopback auto eth0 iface eth0 inet dhcp hostname alpine-test " # Import a wpa_supplicant config for wifi after interface setup # WIFIOPTS="/path/to/wpa_supplicant.conf" # Search domain of example.com, Google public nameserver # DNSOPTS="-d example.com 8.8.8.8" # Set timezone to UTC #TIMEZONEOPTS="UTC" TIMEZONEOPTS=none # set http/ftp proxy #PROXYOPTS="http://webproxy:8080" PROXYOPTS=none # Add first mirror (CDN) APKREPOSOPTS="-1" # Create admin user USEROPTS="-a -u -g audio,input,video,netdev juser" #USERSSHKEY="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOIiHcbg/7ytfLFHUNLRgEAubFz/13SwXBOM/05GNZe4 juser@example.com" #USERSSHKEY="https://example.com/juser.keys" # Install Openssh SSHDOPTS=openssh #ROOTSSHKEY="ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOIiHcbg/7ytfLFHUNLRgEAubFz/13SwXBOM/05GNZe4 juser@example.com" #ROOTSSHKEY="https://example.com/juser.keys" # Use openntpd # NTPOPTS="openntpd" NTPOPTS=none # Use /dev/sda as a sys disk # DISKOPTS="-m sys /dev/sda" DISKOPTS=none # Setup storage with label APKOVL for config storage #LBUOPTS="LABEL=APKOVL" LBUOPTS=none #APKCACHEOPTS="/media/LABEL=APKOVL/cache" APKCACHEOPTS=none __EOF__ echo "Answer file $CREATEANSWERFILE has been created. Please add or remove options as desired in that file" exit 0 fi printf "\n\n" print_heading1 " ALPINE LINUX INSTALL" print_heading1 "----------------------" if [ "$ARCHIVE" ] ; then echo "Creating an Alpine overlay" init_tmpdir ROOT else PKGADD="apk add" fi # set keymap if [ "$rc_sys" != LXC ]; then if is_virtual_console || [ -n "$KEYMAPOPTS" ]; then echo print_heading2 " Keymap" print_heading2 "--------" setup-keymap ${KEYMAPOPTS} fi # set hostname echo print_heading2 " Hostname" print_heading2 "----------" setup-hostname ${HOSTNAMEOPTS} && if [ -z "$SSH_CONNECTION" ]; then if rc-service --quiet networking status; then # manually restart networking, forcing this script to wait until networking starts rc-service --quiet networking stop rc-service --quiet hostname restart rc-service --quiet networking start else rc-service --quiet hostname restart fi fi setup-devd -C mdev # just to bootstrap fi # set Interface [ -z "$SSH_CONNECTION" ] && rst_if=1 echo -e "" print_heading2 " Interface" print_heading2 "-----------" if [ -n "$INTERFACESOPTS" ]; then if [ "$INTERFACESOPTS" != none ]; then printf "%s" "$INTERFACESOPTS" | run_setup_interfaces -i fi else run_setup_interfaces ${quick:+-a} fi # setup up dns if no dhcp was configured if [ -f "$ROOT"/etc/network/interfaces ] && ! grep -q '^iface.*dhcp' "$ROOT"/etc/network/interfaces; then setup-dns ${DNSOPTS} fi # set root password if [ -z "$empty_root_password" ]; then echo print_heading2 " Root Password" print_heading2 "---------------" while ! $MOCK passwd ; do echo "Please retry." done fi # pick timezone if [ -z "$quick" ]; then echo print_heading2 " Timezone" print_heading2 "----------" setup-timezone ${TIMEZONEOPTS} fi echo rc-update --quiet add networking boot rc-update --quiet add seedrng boot || rc-update --quiet add urandom boot svc_list="cron crond" if [ -e /dev/input/event0 ]; then # Only enable acpid for systems with input events entries # https://gitlab.alpinelinux.org/alpine/aports/-/issues/12290 svc_list="$svc_list acpid" fi for svc in $svc_list; do if rc-service --exists $svc; then rc-update --quiet add $svc fi done # start up the services $MOCK openrc ${SSH_CONNECTION:+-n} boot $MOCK openrc ${SSH_CONNECTION:+-n} default # update /etc/hosts - after we have got dhcp address # Get default fully qualified domain name from *first* domain # given on *last* search or domain statement. _dn=$(sed -n \ -e '/^domain[[:space:]][[:space:]]*/{s///;s/\([^[:space:]]*\).*$/\1/;h;}' \ -e '/^search[[:space:]][[:space:]]*/{s///;s/\([^[:space:]]*\).*$/\1/;h;}' \ -e '${g;p;}' "$ROOT"/etc/resolv.conf 2>/dev/null) _hn=$(hostname) _hn=${_hn%%.*} sed -i -e "s/^127\.0\.0\.1.*/127.0.0.1\t${_hn}.${_dn:-$(get_fqdn my.domain)} ${_hn} localhost.localdomain localhost/" \ "$ROOT"/etc/hosts 2>/dev/null if [ -z "$quick" ]; then echo print_heading2 " Proxy" print_heading2 "-------" setup-proxy -q ${PROXYOPTS} fi # activate the proxy if configured if [ -r "$ROOT/etc/profile" ]; then . "$ROOT/etc/profile" fi if ! is_kvm_clock && [ "$rc_sys" != "LXC" ] && [ "$quick" != 1 ]; then echo print_heading2 " Network Time Protocol" print_heading2 "-----------------------" setup-ntp ${NTPOPTS} fi echo print_heading2 " APK Mirror" print_heading2 "------------" setup-apkrepos ${APKREPOSOPTS} # Now that network and apk are operational we can install another device manager if [ "$rc_sys" != LXC ] && [ -n "$DEVDOPTS" -a "$DEVDOPTS" != mdev ]; then setup-devd ${DEVDOPTS} fi # lets stop here if in "quick mode" if [ "$quick" = 1 ]; then exit 0 fi echo print_heading2 " User" print_heading2 "------" setup-user ${USERSSHKEY+-k "$USERSSHKEY"} ${USEROPTS:--a -g 'audio input video netdev'} for i in "$ROOT"home/*; do if [ -d "$i" ]; then lbu add $i fi done setup-sshd ${ROOTSSHKEY+-k "$ROOTSSHKEY"} ${SSHDOPTS} root_keys="$ROOT"/root/.ssh/authorized_keys if [ -f "$root_keys" ]; then lbu add "$ROOT"/root fi if is_xen_dom0; then echo print_heading2 " Xen" print_heading2 "-----" setup-xen-dom0 ${XENDOM0OPTS} fi if [ "$rc_sys" = "LXC" ]; then exit 0 fi echo print_heading2 " Disk & Install" print_heading2 "----------------" diskmode_file=$(mktemp /tmp/alpine-install-diskmode.XXXXXXXXXX) || die 'Failed to create temporary diskmode file' DEFAULT_DISK=none \ setup-disk -w "$diskmode_file" -q ${DISKOPTS} || exit diskmode=$(cat "$diskmode_file" 2>/dev/null) # setup lbu and apk cache unless installed sys on disk if [ "$diskmode" != "sys" ]; then setup-lbu ${LBUOPTS} setup-apkcache ${APKCACHEOPTS} if [ -L "$ROOT"/etc/apk/cache ]; then apk cache sync fi fi #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" etc="$ROOT"etc proc="$ROOT"proc usage() { cat <<-__EOF__ usage: setup-apkcache [-h] [DIR] Setup apk caching. If DIR is not specified user will be asked for location. options: -h Show this help __EOF__ exit $1 } is_mounted() { if [ "$1" = "/" ]; then # In a chroot we may not find this mount point in /proc/mounts return 0 fi awk '{print $2}' "$proc"/mounts | grep -q "^$1$" } find_fstab_mount_point() { local dir="$1" local res= if ! [ -r "$etc"/fstab ]; then return fi while [ -n "$dir" ]; do res=$(awk "\$2 == \"$dir\" {print \$2}" "$etc"/fstab) if [ -n "$res" ]; then echo $res return fi dir=${dir%/*} done } # figure out mount point find_mount_point() { local dir="$(find_fstab_mount_point "$1")" if [ -d "$dir" ] && [ "$dir" != "/" ]; then echo $dir return fi local dir="$1" while [ -n "$dir" ] && ! [ -d "$dir" ]; do dir=${dir%/*} done local fs_id="$(stat -f -c %i "${dir:-/}")" local parent="${dir%/*}" while [ -n "$dir" ] && [ "$(stat -f -c %i "$parent/")" = "$fs_id" ]; do dir=$parent parent=${parent%/*} done [ -z "$dir" ] && dir=/ echo $dir } # get device for a given mount point get_dev_from_mountpoint() { local mnt="$1" local fstab="$2" awk "\$2 == \"$mnt\" {print \$1}" "$fstab" } get_mount_opts_from_mountpoint() { local mnt="$1" local fstab="$2" awk "\$2 == \"$mnt\" {gsub(/,/, \" \", \$4); print \$4}" "$fstab" } has_mount_opt() { local searchfor="$1" local mnt="$2" local fstab="$3" local opts="$(get_mount_opts_from_mountpoint "$mnt" "$fstab")" local opt= for opt in $opts; do if [ "$opt" = "$searchfor" ]; then return 0 fi done return 1 } is_mounted_ro() { has_mount_opt ro "$1" "$proc"/mounts } # get the fstype of the given mount point mount_fstype() { # we only want the last mount in case there are several awk -v mnt="$1" '$2 == "/" {fstype = mnt} END {print fstype}' \ "$proc"/mounts } apk_cache_help() { cat <<-__EOF__ Packages installed from network can be cached locally to be available during boot, before the network is started. Specifying a directory here will make apk cache the packages locally in this directory. Enter 'none' if you do not want to cache packages from network. __EOF__ } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $(( OPTIND - 1 )) # try auto detetect what we suggest suggestion= if [ -L "$etc"/apk/cache ]; then suggestion=$(readlink "$etc"/apk/cache) fi if [ -z "$suggestion" ] && [ -f "$etc"/lbu/lbu.conf ]; then . "$etc"/lbu/lbu.conf if [ -n "$LBU_MEDIA" ]; then suggestion=/media/$LBU_MEDIA/cache fi fi if [ -z "$suggestion" ] && [ -L /dev/usbdisk ]; then suggestion=/media/usb/cache fi if [ -z "$suggestion" ] && [ "$(mount_fstype /)" != "tmpfs" ]; then suggestion=/var/cache/apk fi if [ -z "$suggestion" ]; then suggestion=none fi cachedir="$1" resp= while [ $# -eq 0 ] && [ -z "$cachedir" ]; do ask "Enter apk cache directory (or '?' or 'none')" "$suggestion" cachedir="$resp" if [ "$cachedir" = "?" ]; then apk_cache_help cachedir= fi done if [ "$cachedir" = "none" ]; then exit 0 fi case "$cachedir" in /*) ;; *) cachedir="${PWD#${ROOT%/}}/$cachedir";; esac mount=$(find_mount_point "$cachedir") cleanup= if ! is_mounted "$mount"; then # remove noauto that setup-lbu might have added if has_mount_opt noauto "$mount" "$etc"/fstab; then fstabtmp=$(mktemp) awk -v mnt="$mount" \ '$2 != mnt {print $0} $2 == mnt { sub(/noauto,|,noauto/, "", $4); sub(/^noauto$/, "defaults", $4); print $0 }' "$etc"/fstab > "$fstabtmp" mv "$fstabtmp" "$etc"/fstab fi mount "$mount" || exit 1 elif is_mounted_ro "$mount"; then mount -o remount,rw "$mount" || exit 1 cleanup="remount" fi mkdir -p "$ROOT$cachedir" if [ -L "$etc"/apk/cache ]; then rm -f "$etc"/apk/cache fi mkdir -p "$etc"/apk ln -s "$cachedir" "$etc"/apk/cache case "$cleanup" in umount) umount "$mount";; remount) mount -o remount,ro "$mount";; esac #!/bin/sh PROGRAM=setup-apkrepos PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" : ${MIRRORS_URL:=https://mirrors.alpinelinux.org/mirrors.txt} if [ "$ROOT" != "/" ]; then apk_root_opt="--root $ROOT" fi get_hostname_from_url() { local n="${1#*://}" echo ${n%%/*} } get_mirror_count() { set -- $MIRRORS echo $# } ask_setup_method() { local cstate="enable" if [ -z "$community_prefix" ]; then cstate="disable" fi cat <<-__EOF__ (f) Find and use fastest mirror (s) Show mirrorlist (r) Use random mirror (e) Edit ${ROOT}etc/apk/repositories with text editor (c) Community repo $cstate (skip) Skip setting up apk repositories __EOF__ ask "Enter mirror number or URL:" $1 printf "\n" } add_random_mirror() { local i=0 local count=$(get_mirror_count) if [ ${count:-0} -eq 0 ]; then echo "Warning! no mirror found" >&2 return 1 fi local random_mirror_index="$(awk -v count=$count 'BEGIN {srand(); printf("%.0f", rand() * count)}')" printf %s "Picking random mirror..." for mirror in $MIRRORS; do if [ $i -eq $random_mirror_index ]; then break fi i=$(( $i + 1 )) done add_mirror $mirror } time_cmd() { local start="$(cut -d ' ' -f1 /proc/uptime)" $@ >&2 || return awk -v start=$start -v end=$(cut -d ' ' -f1 /proc/uptime) \ 'BEGIN {print end - start; exit}' } find_fastest_mirror() { local url= local arch="$(apk --print-arch)" for url in $MIRRORS; do # warm up the dns cache $MOCK nslookup $(get_hostname_from_url $url) >/dev/null 2>&1 local time="$(time_cmd wget --spider -q -T 5 -t 1 \ ${url%/}/edge/main/$arch/APKINDEX.tar.gz)" if [ -n "$time" ]; then echo "$time $url" fi done | tee /dev/stderr | sort -nk1,1 | head -n1 | cut -d' ' -f2 } add_fastest_mirror() { echo "Finding fastest mirror... " local fastest="$(find_fastest_mirror)" if [ -z "$fastest" ]; then echo "Warning! No mirror found" >&2 return 1 fi add_mirror "$fastest" } # For every main/ repo, enable corresponding community/ repo add_community_mirrors() { for repo in $(grep '^[^#].*/main$' "$APKREPOS_PATH" 2>/dev/null); do crepo="${repo%%/main}/community" if ! grep -qx -- "$crepo" "$APKREPOS_PATH"; then echo ">>> Enabling repository $crepo" echo "$crepo" >> "$APKREPOS_PATH" fi done } # show mirrors show_mirror_list() { local mirror i=0 [ -z "$MIRRORS" ] && return echo "" echo "Available mirrors:" for mirror in $MIRRORS; do i=$(($i + 1)) echo "$i) $(get_hostname_from_url $mirror)" done echo "" } add_from_list() { local mirror_index="$1" if [ $mirror_index -lt 1 ] || [ $mirror_index -gt $(get_mirror_count) ]; then return 1 fi set $MIRRORS eval "mirror=\${$mirror_index}" add_mirror "$mirror" } get_alpine_release() { # use the main version already configured, or get the version from /etc/alpine-release local version="$(grep -Eom1 '[^/]+/main/?$' "${ROOT}"etc/apk/repositories 2>/dev/null | grep -Eo '^[^/]+' \ || cat "${ROOT}"etc/alpine-release 2>/dev/null)" case "$version" in *_git*|*_alpha*) release="edge";; [0-9]*.[0-9]*.[0-9]*) # release in x.y.z format, cut last digit release=v${version%.[0-9]*};; v[0-9]*.[0-9]*) # release in vx.y format, keep as is release="${version}";; *) # fallback to edge release="edge";; esac } add_mirror() { local mirror="$1" mkdir -p "${APKREPOS_PATH%/*}" echo "${mirror%/}/${release}/main" >> $APKREPOS_PATH echo "${community_prefix}${mirror%/}/${release}/community" >> $APKREPOS_PATH echo "Added mirror $(get_hostname_from_url $mirror)" } add_from_url() { mkdir -p "${APKREPOS_PATH%/*}" echo "$1" >> $APKREPOS_PATH echo "" >> $APKREPOS_PATH } edit_repositories() { local md5="$(md5sum $APKREPOS_PATH 2>/dev/null)" mkdir -p "${APKREPOS_PATH%/*}" ${EDITOR:-vi} "$APKREPOS_PATH" # return true if file changed test "$(md5sum $APKREPOS_PATH 2>/dev/null)" != "$md5" } usage() { cat <<-__EOF__ usage: setup-apkrepos [-ch] [-f|-r|-1|REPO...] setup-apkrepos -o Setup apk repositories options: -c Enable the community repo -f Detect and add fastest mirror -h Show this help -o Only enable a community repo for every defined repo -r Add a random mirror and do not prompt -1 Add first mirror on the list (normally a CDN) Option -o cannot be used with options -c, -f, -r or -1. __EOF__ exit $1 } community_prefix="#" add_fastest=false add_first=false add_random=false add_community_repos=false while getopts "c1fhor" opt; do case $opt in c) community_prefix="" if $add_community_repos; then usage "1" >&2 fi ;; f) add_fastest=true if $add_first || $add_random || $add_community_repos; then usage "1" >&2 fi ;; 1) add_first=true if $add_fastest || $add_random || $add_community_repos; then usage "1" >&2 fi ;; h) usage 0;; o) add_community_repos=true if $add_first || $add_fastest || $add_random \ || [ $community_prefix != "#" ]; then usage "1" >&2 fi ;; r) add_random=true if $add_first || $add_fastest || $add_community_repos; then usage "1" >&2 fi ;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) if [ -z "$MIRRORS" ]; then MIRRORS=$(wget -qO- $MIRRORS_URL) fi APKREPOS_PATH="${ROOT}"etc/apk/repositories if [ -r "$APKREPOS_PATH" ]; then APKREPOS=$(cat "$APKREPOS_PATH") fi get_alpine_release changed=false if [ $# -gt 0 ] && ! $add_community_repos; then # replace the apk repos with the specified ones rm -f "$APKREPOS_PATH" mkdir -p "${APKREPOS_PATH%/*}" for i; do echo "$i" >> "$APKREPOS_PATH" && changed=true done fi if $add_first; then set -- $MIRRORS if [ $# -eq 0 ]; then echo "Warning! No mirror found" >&2 exit 1 fi add_mirror "$1" || exit changed=true fi if $add_random; then add_random_mirror || exit changed=true fi if $add_fastest; then add_fastest_mirror || exit changed=true fi if $add_community_repos; then add_community_mirrors || exit changed=true fi if $add_first || $add_random || $add_fastest || $add_community_repos; then interactive=false else interactive=true fi while $interactive && ! $changed; do if [ -z "$MIRRORS" ]; then MIRRORS=$(wget -qO- $MIRRORS_URL) fi ask_setup_method ${APKREPO_DEFAULT_ANSWER:-1} case "$resp" in skip) break;; [0-9]*) add_from_list $resp && changed=true;; /*|http://*|ftp://*|https://*) add_from_url "$resp" \ && changed=true;; s) show_mirror_list | more;; r|"r c") add_random_mirror && changed=true;; f|"f c") add_fastest_mirror && changed=true;; e) edit_repositories && changed=true;; c) case "$community_prefix" in "#") community_prefix=""; cstate="enabled";; "") community_prefix="#"; cstate="disabled";; esac printf "Community repository %s\n\n" "$cstate" ;; esac case "$resp" in *c) community_prefix=""; printf "Community repository enabled\n";; esac done if $changed; then printf %s "Updating repository indexes... " apk update --quiet $apk_root_opt && echo "done." fi #!/bin/sh # shellcheck shell=sh # shellcheck disable=SC3043 PREFIX=/usr : "${LIBDIR:=$PREFIX/lib}" # shellcheck source=/dev/null . "$LIBDIR/libalpine.sh" version=3.22.0-r0 files_to_move="boot efi apks syslinux.cfg .alpine-release" read_only_mounts= umounts= uninstalls= destdir= arch=${APK_ARCH:-$(apk --print-arch 2>/dev/null || uname -m)} default_bootloader() { case "$arch" in x86|x86_64) echo syslinux;; *) echo none;; esac } : "${BOOTLOADER:=$(default_bootloader)}" cleanup_tmpdata() { if [ -d "$destdir" ] && [ -d "$destdir/.new" ]; then rm -rf "$destdir"/.new fi } cleanup_mounts() { local i= cd_assert / sync sleep 1 for i in $read_only_mounts; do mount -o remount,ro "$i" || echo "Warning: Failed to remount as read-only. Is modloop mounted?" done read_only_mounts="" if [ -n "$umounts" ]; then # shellcheck disable=SC2086 umount $umounts umounts="" fi } cleanup_installs() { if [ -n "$uninstalls" ]; then apk del --quiet $uninstalls uninstalls="" fi } cleanup() { cleanup_tmpdata cleanup_mounts cleanup_installs } trap cleanup EXIT trap "exit 2" INT TERM QUIT # find device for mountpoint find_dev() { local mnt="${1%/}" # strip trailing / awk "\$2 == \"$mnt\" {print \$1}" /proc/mounts } # check if given device is on usb bus on_usb_bus() { local dev="$1" local sysdev [ -e /sys/block/"$dev" ] || return 1 sysdev="$(readlink -f /sys/block/"$dev"/device)" test "${sysdev##*/usb[0-9]}" != "$sysdev" } # check if given dir is read-only is_read_only() { local tmpfile tmpfile="$(mktemp -p "$1" 2>/dev/null)" [ -z "$tmpfile" ] && return 0 rm -f "$tmpfile" return 1 } # find what disk this partition belongs to find_disk_dev() { local i sysfsname sysfsname="${1#/dev/}" sysfsname=$(printf '%s\n' "$sysfsname" | sed 's:/:!:g') # cciss/c0d0 -> cciss!c0d0 if [ -e /sys/block/"$sysfsname" ]; then printf "/dev/%s\n" "$(printf '%s\n' "$sysfsname" | sed 's:!:/:g')" return 0 fi for i in /sys/block/*/"$sysfsname"; do [ -e "$i" ] || continue echo "$i" | cut -d/ -f4 | sed -e 's:!:/:g' -e 's:^:/dev/:' return 0 done return 1 } find_syslinux_cfg() { # find where new syslinux.cfg is for i in boot/syslinux/syslinux.cfg syslinux.cfg; do if [ -e "$1"/$i ]; then echo "$i" return 0 fi done return 1 } fix_syslinux_kernel() { local destdir="$1" syslinux_cfg="$2" old="$3" new="$4" echo "Fixing $syslinux_cfg: kernel $old -> $new" sed -i -e "/^\s*[Kk][Ee][Rr][Nn][Ee][Ll]\s/s|$old|$new|" \ "$destdir/$syslinux_cfg" } fix_syslinux_initrd() { local destdir="$1" syslinux_cfg="$2" old="$3" new="$4" echo "Fixing $syslinux_cfg: initrd $old -> $new" sed -i -e "/^\s*[Ii][Nn][Ii][Tt][Rr][Dd]\s/s|$old|$new|" \ -e "/^\s*[Aa][Pp][Pp][Ee][Nn][Dd]\s/s|initrd=$old|initrd=$new|" \ "$destdir/$syslinux_cfg" } check_syslinux_config() { local destdir="$1" syslinux_cfg="$2" local i k f initrds line fname flavor new if [ -z "$syslinux_cfg" ]; then die "Could not find any syslinux.cfg. Aborting" fi # kernels while IFS= read -r i; do [ -n "$i" ] || continue k="${destdir%/}/${i#/}" f=${k##*/} if [ -e "$k" ] && [ "${f#vmlinuz}" != "$f" ]; then continue fi if [ -e "${k%/*}"/vmlinuz-"$f" ] && [ -n "$fix_syslinux_cfg" ]; then fix_syslinux_kernel "$destdir" "$syslinux_cfg" "$i" "${i%/*}"/vmlinuz-"$f" elif ! [ -e "$k" ]; then echo "Warning: $syslinux_cfg: kernel $k was not found" printf ' Run %s -f -c "%s" to fix\n' "$0" "$destdir" fi done <<-EOF $(awk 'tolower($1) == "kernel" {print $2}' "$destdir"/"$syslinux_cfg") EOF #initramfs initrds=$(awk 'tolower($1) == "initrd" {gsub(",", " "); for (i=2; i<=NF; i++) print $i}' \ "$destdir"/"$syslinux_cfg") while IFS= read -r line; do for i in $line; do case $i in initrd=*) initrds=${i#initrd=};; esac done done <<-EOF $(awk 'tolower($1) == "append" {print $0}' "$destdir"/"$syslinux_cfg") EOF for i in $initrds; do if [ -e "$destdir"/"$i" ]; then continue fi fname=${i##*/} flavor=${fname%.gz} new=${i%/*}/initramfs-$flavor if [ -e "$destdir"/"$new" ] && [ -n "$fix_syslinux_cfg" ]; then fix_syslinux_initrd "$destdir" "$syslinux_cfg" "$i" "$new" else echo "Warning: initrd $i was not found. System will likely not boot" printf ' Run %s -f -c "%s" to fix\n' "$0" "$destdir" fi done } check_syslinux() { syslinux_cfg=${syslinux_cfg:-$(find_syslinux_cfg "$destdir")} [ -n "$syslinux_cfg" ] && vecho "Found $syslinux_cfg" check_syslinux_config "$destdir" "$syslinux_cfg" } install_syslinux() { local dest="$1" parent_dev="$2" echo "Making $dest bootable..." if ! [ -x "$(which syslinux)" ]; then apk add --quiet syslinux || die "Failed to install syslinux" uninstalls="syslinux" fi # we need to unmount the device before we can run syslinux cleanup_mounts fsync "$dest" syslinux "$dest" if [ -b "$parent_dev" ]; then dd if=/usr/share/syslinux/mbr.bin of="$parent_dev" status=none else echo "Warning: Could not find the parent device for $dest" fi } install_bootloader() { local dest="$1" parent_dev="$2" case "$BOOTLOADER" in none) ;; syslinux) install_syslinux "$dest" "$parent_dev" ;; *) die "Bootloader \"$BOOTLOADER\" not supported" ;; esac } version_check() { local new_dir="$1" old_dir="$2" # check if its same version local to_version to_version="$(cat "$new_dir"/.alpine-release)" if [ -n "$upgrade" ] && [ -e "$old_dir"/.alpine-release ]; then local from_version from_version="$(cat "$old_dir"/.alpine-release)" if [ -z "$force" ] && [ -n "$to_version" ] && [ "$from_version" = "$to_version" ]; then die "Source and target seems to have same version ($from_version). Aborting." fi echo "Upgrading $dest from $from_version to $to_version" else echo "Installing $dest to $to_version" fi } usage() { cat <<-__EOF__ $PROGRAM $version usage: $PROGRAM [-fhUusv] SOURCE [DEST] $PROGRAM -c DIR Copy the contents of SOURCE to DEST and make DEST bootable. SOURCE can be a directory or a ISO image. DEST can be a mounted directory or a device. If DEST is ommitted /media/usb will be used. Options: -f Force overwrite existing files. Will overwrite syslinux.cfg if upgrade. -h Show this help. -k fix kernel and initrd name in syslinux.cfg if needed. -U Replace current alpine_dev in syslinux.cfg with UUID if UUID found. -u Upgrade mode. Keep existing syslinux.cfg and don't run bootloader. -s Force run bootloader, even if upgrade mode. -v Verbose mode. Display whats going on. -c Check syslinux.cfg in destination DIR. Use with -f to fix. Environment: BOOTLOADER=syslinux|none Defaults to syslinux on x86, none elsewhere. __EOF__ exit 1 } while getopts "c:fhkUusv" opt; do case "$opt" in c) check_syslinux="$OPTARG";; f) force=1; fix_syslinux_cfg=1;; h) usage;; k) fix_syslinux_cfg=1;; U) replace_alpine_dev=1;; u) upgrade=1;; s) force_bootloader=1;; v) VERBOSE=1; export VERBOSE;; \?) usage;; *) usage;; esac done shift $((OPTIND - 1)) src=${1} dest=${2:-/media/usb} if [ -n "$check_syslinux" ]; then destdir="$check_syslinux" check_syslinux exit 0 fi [ -z "$src" ] && usage # find target device if [ -d "$dest" ]; then dest=${dest%/} # strip trailing / if ! awk '{print $2}' /proc/mounts | grep -q "^$dest\$"; then mount "$dest" || die "Failed to mount $dest" umounts="$umounts $dest" elif [ -n "$force_bootloader" ] && [ "$BOOTLOADER" != none ]; then die "Cannot run bootloader on mounted device" else nosyslinux=1 fi destdir="$dest" dest=$(find_dev "$destdir") elif [ -b "$dest" ]; then destdir="/media/${dest##*/}" mkdir -p "$destdir" mount "$dest" "$destdir" || die "Failed to mount $dest on $destdir" umounts="$umounts $destdir" fi # remount as rw if needed if is_read_only "$destdir"; then vecho "Remounting $destdir as read/write" mount -o remount,rw "$dest" || die "Failed to remount $destdir as rw" read_only_mounts="$read_only_mounts $destdir" fi # fish out label, uuid and type eval "$(blkid "$dest" | cut -d: -f2-)" vecho "Using $dest as target (mounted on $destdir)" # find parent device (i.e sda) dev="$dest" while [ -L "$dev" ]; do dev=$(readlink -f "$dev") done parent_dev=$(find_disk_dev "$dev") # check if this files exist and not in upgrade mode if [ -z "$upgrade" ] && [ -z "$force" ]; then for i in $files_to_move; do [ -e "$destdir"/"$i" ] && die "$destdir/$i already exists. Use -u to upgrade." done fi # remove partial upgrades if any rm -rf "$destdir"/.new "$destdir"/.old mkdir -p "$destdir"/.new || die "Failed to create $destdir/.new" # copy data from source to .new if [ -f "$src"/.alpine-release ]; then srcdir="${src%/}" version_check "$srcdir" "$destdir" for i in $files_to_move; do if [ -e "$srcdir"/"$i" ]; then vecho "Copying $srcdir/$i to $destdir/.new/" cp -dR "$srcdir"/"$i" "$destdir"/.new/ fi done else vecho "Extracting $src to $destdir/.new/" case "$src" in https://*|http://*|ftp://*) ${WGET:-wget} -O - "$src" | (cd_assert "$destdir"/.new; exec ${UNISO:-uniso}) \ || die "Failed to download or extract $src" echo "" ;; *) (cd_assert "$destdir"/.new; exec ${UNISO:-uniso}) < "$src" \ || die "Failed to download or extract $src" ;; esac version_check "$destdir/.new" "$destdir" fi if [ "$BOOTLOADER" = syslinux ]; then # find where new syslinux.cfg is syslinux_cfg=$(find_syslinux_cfg "$destdir"/.new) [ -n "$syslinux_cfg" ] && vecho "Found $syslinux_cfg" # abort early in case unexpected trouble if [ -z "$syslinux_cfg" ]; then die "Could not find any syslinux.cfg on new iso?" fi fi # make sure files are really there before we replace existing vecho "Flushing cache..." sync vecho "Replacing existing files..." mkdir -p "$destdir"/.old || die "Failed to create $destdir/.old" # move current files to .old for i in $files_to_move; do if [ -e "$destdir"/"$i" ]; then mv "$destdir"/"$i" "$destdir"/.old/ || die "Failed to move $destdir/$i to $destdir/.old/" fi done # keep any existing syslinux.cfg if [ "$BOOTLOADER" = syslinux ]; then if [ -e "$destdir"/.old/"$syslinux_cfg" ]; then mv "$destdir"/.old/"$syslinux_cfg" "$destdir"/.new/"$syslinux_cfg" elif [ -e "$destdir"/.old/syslinux.cfg ] \ && [ -e "$destdir"/.new/boot/syslinux/syslinux.cfg ]; then echo "Warning: moving syslinux.cfg to boot/syslinux/syslinux.cfg" >&2 mv "$destdir"/.old/syslinux.cfg "$destdir"/.new/boot/syslinux if [ -z "$force_bootloader" ]; then echo " You might need run: syslinux $dest" >&2 fi fi fi # move .new to current for i in $files_to_move; do if [ -e "$destdir"/.new/"$i" ]; then mv "$destdir"/.new/"$i" "$destdir"/ \ || die "Failed to move $destdir/.new/ to $destdir" fi done if [ "$BOOTLOADER" = syslinux ] \ && { [ -n "$replace_alpine_dev" ] || [ -z "$upgrade" ]; } \ && [ -n "$UUID" ]; then sed -E -i -e "s/alpine_dev=[^ \t:]+/alpine_dev=UUID=$UUID/" \ "$destdir"/"$syslinux_cfg" fi # verify syslinux.cfg if [ "$BOOTLOADER" = syslinux ]; then check_syslinux fi # cleanup [ -z "$keep_old" ] && rm -rf "$destdir"/.old "$destdir"/.new # If we only copy then we are done. if [ -n "$upgrade" ] && [ -z "$force_bootloader" ]; then exit 0 fi # prevent running syslinux on mounted device if [ -n "$nosyslinux" ] && [ "$BOOTLOADER" != none ]; then echo "Warning: Can not run bootloader on a mounted device" echo " You might need run bootloader manually" exit 0 fi install_bootloader "$dest" "$parent_dev" #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-desktop [-h] [gnome|plasma|xfce|xfce-wayland|mate|sway|lxqt] Install a standard desktop options: -h Show this help __EOF__ exit $1 } prefer_gtk_dark() { if [ -e "$ROOT"/etc/gtk-3.0/settings.ini ]; then return fi mkdir -p "$ROOT"/etc/gtk-3.0 cat >"$ROOT"/etc/gtk-3.0/settings.ini <<-EOF [Settings] gtk-application-prefer-dark-theme=1 EOF } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) if [ $# -gt 1 ]; then usage "1" >&2 fi if [ $# -eq 0 ]; then users=$(awk -F: '{if ($3<65000 && $3 >= 1000) print $1}' "$ROOT"/etc/passwd 2>/dev/null) if [ -z "$users" ]; then setup-user -g "audio,video,netdev" fi fi de="$1" valid_desktops="xfce xfce-wayland gnome plasma mate sway lxqt none" if [ $# -eq 1 ] && ! isin "$de" $valid_desktops; then echo "$de is not a valid desktop" >&2 usage "1" >&2 fi shift while ! isin "$de" $valid_desktops; do ask "Which desktop environment? ('gnome', 'plasma', 'xfce', 'mate', 'sway', 'lxqt' or 'none')" none de="$resp" done case "$de" in none) exit 0 ;; mate) setup-xorg-base mate-desktop-environment ${BROWSER:-firefox} \ gvfs \ lightdm \ lightdm-gtk-greeter \ polkit \ dbus \ dbus-x11 \ font-dejavu \ "$@" rc-update add dbus rc-update add lightdm ;; xfce) prefer_gtk_dark setup-xorg-base xfce4 ${BROWSER:-firefox} \ elogind \ gvfs \ lightdm \ lightdm-gtk-greeter \ polkit-elogind \ xfce4-screensaver \ xfce4-terminal \ font-dejavu \ "$@" rc-update add lightdm ;; xfce-wayland) prefer_gtk_dark setup-wayland-base xfce4 ${BROWSER:-firefox} \ adwaita-icon-theme \ elogind \ greetd-gtkgreet \ gvfs \ labwc \ polkit-elogind \ xfce4-screensaver \ xfce4-terminal \ "$@" rc-update add dbus rc-update add greetd if ! grep -q ^rc_need "$ROOT"/etc/conf.d/greetd 2>/dev/null; then echo 'rc_need="seatd dbus"' >> "$ROOT"/etc/conf.d/greetd fi if ! grep -q xfce4-wayland "$ROOT"/etc/greetd/environments 2>/dev/null; then echo "xfce4-wayland" >> "$ROOT"/etc/greetd/environments fi addgroup greetd seat ;; lxqt) setup-xorg-base ${BROWSER:-firefox} \ lxqt-desktop \ lximage-qt \ obconf-qt \ pavucontrol-qt \ arandr \ sddm \ font-dejavu \ dbus \ dbus-x11 \ openbox \ elogind \ polkit-elogind \ gvfs \ udisks2 \ adwaita-qt \ oxygen \ "$@" rc-update add dbus rc-update add sddm rc-update add elogind ;; gnome) setup-wayland-base ${BROWSER:-firefox} "$@" # apk info needs community repos which are enabled with setup-wayland-base apk add $(apk info --quiet --depends gnome gnome-apps-core) rc-update add gdm ;; plasma) setup-wayland-base ${BROWSER:-firefox} "$@" # apk info needs community repos which are enabled with setup-wayland-base apk add $(apk info --quiet --depends plasma-desktop-meta kde-applications-base) rc-update add sddm ;; sway) setup-wayland-base ${BROWSER:-firefox} \ brightnessctl \ font-dejavu \ foot \ grim \ i3status \ sway \ swaybg \ swayidle \ swaylockd \ util-linux-login \ wl-clipboard \ wmenu \ xwayland \ "$@" ;; *) usage "1" >&2 ;; esac rc-update del acpid users=$(awk -F: '{if ($3<65000 && $3 >= 1000) print $1}' "$ROOT"/etc/passwd 2>/dev/null) if [ -z "$users" ]; then echo "WARNING: You need to create a user account. Please run: setup-user" >&2 echo "" >&2 fi #!/bin/sh -e PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" prog="${0##*/}" usage () { cat </dev/null || : rc-update delete --quiet --quiet mdevd sysinit 2>/dev/null || : fi } enable_mdevd () { apk add --quiet mdevd mdevd-openrc rc-update add --quiet mdevd sysinit rc-update add --quiet mdevd-init sysinit rc-update add --quiet hwdrivers sysinit rc-service --ifstopped mdevd start if "$1" ; then rc-service mdevd-init start rc-service hwdrivers --ifstopped start fi } disable_udev () { if rc-service --exists udev ; then rc-service --ifstopped --quiet udev-postmount stop rc-service --ifstarted --quiet udev stop rc-update delete --quiet --quiet udev-postmount default 2>/dev/null || : rc-update delete --quiet --quiet udev-settle sysinit 2>/dev/null || : rc-update delete --quiet --quiet udev-trigger sysinit 2>/dev/null || : rc-update delete --quiet --quiet udev sysinit 2>/dev/null || : fi } enable_udev () { apk add --quiet eudev udev-init-scripts udev-init-scripts-openrc rc-update add --quiet udev sysinit rc-update add --quiet udev-trigger sysinit rc-update add --quiet udev-settle sysinit rc-update add --quiet udev-postmount default rc-service --ifstopped udev start rc-service --ifstopped udev-trigger start rc-service --ifstopped udev-settle start rc-service --ifstopped udev-postmount start } coldplug=false while getopts "hC" opt ; do case $opt in h) usage 0;; C) coldplug=true ;; '?') usage 1 >&2;; esac done shift $((OPTIND - 1)) devd="$1" if test -n "$devd" ; then interactive=false else interactive=true fi until isin "$devd" mdev mdevd udev ; do ask "What program should manage /dev? [mdev|mdevd|udev]" mdev devd="$resp" done if "$interactive" ; then if ask_yesno "Scan the hardware to populate /dev? [y|n] (Say yes if you're running this script for the first time.)" n ; then coldplug=true else coldplug=false fi fi case "$devd" in mdev) disable_mdevd ; disable_udev ; enable_mdev $coldplug ;; mdevd) disable_mdev ; disable_udev ; enable_mdevd $coldplug ;; udev) disable_mdev ; disable_mdevd ; enable_udev $coldplug ;; esac #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-dns [-h] [-d DOMAINNAME] [IPADDR...] Setup ${ROOT}etc/resolv.conf DNS settings options: -h Show this help -d specify search domain name The optional IPADDR are a list of DNS servers to use. __EOF__ exit $1 } while getopts "d:n:h" opt; do case $opt in d) DOMAINNAME="$OPTARG";; h) usage 0;; n) NAMESERVERS="$OPTARG";; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) conf="${ROOT}etc/resolv.conf" if [ -f "$conf" ] ; then domain=$(awk '/^domain/ {print $2}' $conf) dns=$(awk '/^nameserver/ {printf "%s ",$2}' $conf) elif fqdn="$(get_fqdn)" && [ -n "$fqdn" ]; then domain="$fqdn" fi if [ -n "$DOMAINNAME" ]; then domain="$DOMAINNAME" elif [ $# -eq 0 ]; then ask "DNS domain name? (e.g 'bar.com')" "$domain" domain="$resp" fi if [ -n "$NAMESERVERS" ] || [ $# -gt 0 ];then dns="$NAMESERVERS" else ask "DNS nameserver(s)?" "${dns% }" dns="$(echo $resp | tr ',' ' ')" fi if [ -n "$domain" ]; then mkdir -p "${conf%/*}" echo "search $domain" > $conf fi if [ -n "$dns" ] || [ $# -gt 0 ] && [ -f "$conf" ]; then sed -i -e '/^nameserver/d' $conf fi for i in $dns $@; do mkdir -p "${conf%/*}" echo "nameserver $i" >> $conf done #!/bin/sh PROGRAM=setup-hostname PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-hostname [-h] [HOSTNAME] Sets the system hostname. options: -h Show this help Sets hostname to HOSTNAME or prompt if unspecified. __EOF__ exit $1 } # http://en.wikipedia.org/wiki/Hostname#Restrictions_on_valid_host_names valid_hostname() { # check length if [ "${#1}" -gt 255 ]; then echo "Hostname '$1' is too long." >&2 return 1 fi case "$1" in # check that it only contains valid chars *[!0-9a-zA-Z.-]*) echo "Hostname must only contain letters (a-z A-Z), digits (0-9), '.' or '-'" >&2 return 1 ;; # must not start with - or . -*) echo "Hostname must not start with a '-'" >&2; return 1;; .*) echo "Hostname must not start with a '.'" >&2; return 1;; esac return 0 } while getopts "hn:" opt; do case $opt in h) usage 0;; n) name="$OPTARG";; '?') usage "1" >&2;; esac done shift $(( $OPTIND - 1 )) if [ -z "$name" ] && [ $# -eq 1 ]; then name="$1" fi # if name is set, then we run non-interactively if [ -n "$name" ] && ! valid_hostname "$name"; then exit 1 fi HOST="$name" while [ -z "$name" ]; do HOST=$(hostname) ask "Enter system hostname (fully qualified form, e.g. 'foo.example.org')" "$HOST" if valid_hostname "$resp"; then HOST="$resp" break fi done mkdir -p "$ROOT/etc" echo "$HOST" > "$ROOT/etc/hostname" #!/bin/sh PREFIX=/usr : "${LIBDIR:=$PREFIX/lib}" # shellcheck disable=SC1091 . "$LIBDIR/libalpine.sh" MAPDIR="$ROOT/usr/share/bkeymaps" if [ -f "$ROOT/etc/conf.d/loadkmap" ]; then # shellcheck source=/dev/null . "$ROOT/etc/conf.d/loadkmap" variant=$(basename "$KEYMAP") variant="${variant%%.*}" fi usage() { cat <<-__EOF__ usage: setup-keymap [-h] [LAYOUT [VARIANT]] Sets the system keymap layout and variant. options: -h Show this help Sets keymap to LAYOUT (and VARIANT) or prompt if unspecified. __EOF__ exit "$1" } show_layouts() { output="" for file in "$MAPDIR"/*; do base=$(basename "$file") output="$output${base%.bmap.gz} " done print_column "$output" } show_variants() { output="" for file in "$MAPDIR/$1"/*; do base=$(basename "$file") output="$output${base%.bmap.gz} " done print_column "$output" } print_column() { # shellcheck disable=SC3043 local terminal_width max_word_length number_of_columns words i word if [ -z "$1" ]; then echo "Error: No data to display." >&2 return 1 fi terminal_width=$(stty size 2>/dev/null | cut -d' ' -f2) if [ -z "$terminal_width" ] || [ "$terminal_width" -eq 0 ]; then terminal_width=80 fi max_word_length=$(echo "$1" | awk '{for(i=1;i<=NF;i++) x = (length($i) > x ? length($i) : x)} END {print x}') number_of_columns=$((terminal_width / (max_word_length + 1))) if [ "$number_of_columns" -eq 0 ]; then number_of_columns=1 fi words=$1 i=0 for word in $words; do printf "%-${max_word_length}s " "$word" i=$((i + 1)) if [ $((i % number_of_columns)) -eq 0 ]; then printf "\n" fi done if [ $((i % number_of_columns)) -ne 0 ]; then printf "\n" fi } find_variant() { # shellcheck disable=SC3043 local variant="$1" for file in "$MAPDIR/$layout/$variant.bmap"*; do [ -f "$file" ] && return 0 done return 1 } select_layout() { while true; do if [ -z "$layout" ] || ! [ -d "$MAPDIR/$layout" ]; then layout=none fi show_layouts echo "" resp= ask "Select keyboard layout:" "$layout" echo "" if [ "$resp" = "abort" ] || [ "$resp" = "none" ] ; then goodbye 0 fi # shellcheck disable=SC2086 set -- $resp layout="$1" variant="$2" if [ -d "$MAPDIR/$layout" ] ; then return 0 fi done } setup_mapfile() { # shellcheck disable=SC3043 local name conf name=$(basename "$1") conf="$ROOT/etc/conf.d/loadkmap" mkdir -p "$ROOT/etc/keymap" mkdir -p "$ROOT/etc/conf.d/" if cp "$1" "$ROOT/etc/keymap/$name" ; then [ -f "$conf" ] && sed -i '/^KEYMAP=/d' "$conf" echo "KEYMAP=/etc/keymap/$name" >> "$conf" # we actually load the keymap now rc-service loadkmap restart rc-update --quiet add loadkmap boot goodbye 0 fi } select_variant() { while true; do show_variants "$layout" if [ ! -f "$MAPDIR/$layout/$variant.bmap" ] ; then variant="" fi echo "" ask "Select variant (or 'abort'):" "$variant" echo "" variant="$resp" if [ "$variant" = "abort" ] || [ "$variant" = "none" ]; then break; fi if find_variant "$variant"; then setup_mapfile "$file" fi done } goodbye() { apk del --quiet --no-progress .setup-keymap-deps exit "$1" } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $((OPTIND - 1)) trap 'goodbye 1' INT apk add --quiet --virtual .setup-keymap-deps kbd-bkeymaps deflayout="$1" defvariant="$2" while true; do if [ -n "$deflayout" ]; then if [ "$deflayout" = "none" ]; then goodbye 0 fi layout="$deflayout" unset deflayout else select_layout fi if [ -n "$defvariant" ]; then variant="$defvariant" fi # if variant is defined, this could match, otherwise we'll have to choose a variant if find_variant "$variant"; then setup_mapfile "$file" else # if there is only one variant, just pick it count=0 for file in "$MAPDIR/$layout"/*; do [ -f "$file" ] && count=$((count + 1)) done if [ "$count" -eq 1 ]; then setup_mapfile "$MAPDIR/$layout/"* continue fi select_variant fi done #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-lbu [-hq] [MEDIA] Setup lbu media settings. MEDIA is optional mountpoint under /media options: -h Show this help -q Quietly pick best suggestion. Only prompts user if unsure. __EOF__ exit $1 } get_filesystem_type() { local mountpoint="$1" shift awk "\$2==\"$mountpoint\" {print \$3}" "$@" 2>/dev/null } get_dev() { local mountpoint="$1" shift awk "\$2==\"$mountpoint\" {print \$1}" "$@" 2>/dev/null } is_in_fstab() { test -n "$(get_filesystem_type $1 "$ROOT"/etc/fstab)" } is_mounted() { test -n "$(get_filesystem_type $1 "$ROOT"/proc/mounts)" } is_iso9660() { local fs for fs in $(get_filesystem_type $1 "$ROOT"/proc/mounts "$ROOT"/etc/fstab); do if [ "$fs" = "iso9660" ]; then return 0 fi done return 1 } set_media() { local media="${1%/}" # strip trailing / local mnt=/media/$media case "$media" in LABEL=*|UUID=*) mkdir -p $ROOT/media/$media;; esac if [ -d "$media" ] && [ "${media#/media/}" != "$media" ]; then mnt="$media" media=${mnt#/media/} fi if [ "$ROOT" = "/" ] && ! [ -d "$mnt" ]; then echo "$mnt: not a directory" >&2 exit 1 fi # set LBU_MEDIA in /etc/lbu/lbu.conf if [ -f "${ROOT}"etc/lbu/lbu.conf ]; then sed -e "/^\#\?[[:space:]]*LBU_MEDIA=.*/s/.*/LBU_MEDIA=$media/" \ -i "${ROOT}"etc/lbu/lbu.conf if ! egrep -q '^LBU_MEDIA=' "${ROOT}"etc/lbu/lbu.conf; then echo "LBU_MEDIA=$media" >> "${ROOT}"etc/lbu/lbu.conf fi else mkdir -p "${ROOT}"etc/lbu echo "LBU_MEDIA=$media" >> "${ROOT}"etc/lbu/lbu.conf fi # append to fstab if its missing if ! is_in_fstab $mnt; then case "$media" in LABEL=*|UUID=*) dev=$(findfs $media) ;; *) dev=$(get_dev $mnt "$ROOT"/proc/mounts) ;; esac if [ -z "$dev" ]; then echo "$media: Could not find device" >&2 exit 1 fi # get TYPE=... LABEL=... UUID=... from blkid eval $(blkid $dev | awk -F: '{print $2}') if [ -z "$TYPE" ]; then echo "$media: Could not find filesystem type" >&2 exit 1 fi if [ -n "$UUID" ]; then UUID="UUID=$UUID" fi # use LABEL= if it was specifically selected, otherwise use UUID case "$media" in LABEL=*|UUID=*) UUID="$media";; esac mkdir -p "$ROOT"/etc printf "%s\t%s\t%s\tnoauto,ro 0 0\n" "${UUID:-$dev}" "$mnt" "$TYPE" >> "$ROOT"/etc/fstab fi # hack in case we have alpine_dev mounted on /media/usbdisk but # lbu is stored on /media/usb # Otherwise we get issues when we do lbu commit. if [ "$media" = "usb" ] && is_mounted /media/usbdisk; then mount --move /media/usbdisk /media/usb elif [ "$media" = "usbdisk" ] && is_mounted /media/usb; then mount --move /media/usb /media/usbdisk fi } while getopts "hq" opt; do case $opt in h) usage 0;; q) quiet=1;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) # check if MEDIA option was given if [ -n "$1" ]; then if [ "$1" = "none" ]; then exit fi set_media "$1" exit fi alternatives= suggestion="none" for dir in /media/*; do [ -d "$dir" ] || continue if is_iso9660 "$dir"; then continue fi alternatives="$alternatives, '${dir#/media/}'" if is_mounted "$dir"; then suggestion=${dir#/media/} [ -n "$quiet" ] && media=$suggestion fi done if findfs "LABEL=APKOVL" >/dev/null; then suggestion="LABEL=APKOVL" case ", $alternatives, " in *"'LABEL=APKOVL'"*) ;; *) alternatives="$alternatives, 'LABEL=APKOVL'" ;; esac fi # strip leading , + space alternatives=${alternatives#, } # if nothing is mounted (or boot from cdrom) usbmnt=$(awk '$1 == "/dev/usbdisk" {print $2}' /proc/mounts) if [ -z "$suggestion" ] && [ -n "$usbmnt" ]; then suggestion=${usbmnt#/media/} if [ -n "$quiet" ] && [ -e /dev/usbdisk ]; then media=$suggestion fi fi while [ -z "$media" ]; do ask "Enter where to store configs ($alternatives or 'none')" "$suggestion" media="$resp" case "$media" in none|LABEL=*) break;; esac if [ -d "/media/$media" ]; then break fi echo "/media/$media is not a directory. Please try again." media= done if [ "$media" = "none" ]; then exit 0 fi set_media "$media" #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" conf="$ROOT/etc/ssmtp/ssmtp.conf" usage() { cat <<-EOF usage: setup-mta [-h] [SMTPSERVER] Setup SMTP server for outgoing email options: -h Show this help If SMTPSERVER is not prompted user will be prompted EOF exit $1 } cfgval() { awk -F= "/^$1/ {print \$2}" $conf 2>/dev/null } setcfg() { local key="$1" local value="$2" mkdir -p "${conf%/*}" sed -i "s/^\\(\\#\\)*$key=.*/$key=$value/" "$conf" 2>/dev/null if ! grep -q "^$key=" "$conf" 2>/dev/null; then echo "$key=$value" >> "$conf" fi } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $(( $OPTIND - 1 )) mailhub="$1" if [ -f "$conf" ] ; then mailhub=$(cfgval mailhub) fi domain=$(hostname -d $hostname 2>/dev/null) if [ -z "$mailhub" ] ;then if [ -n "$domain" ] ; then mailhub="smtp.$domain" else mailhub=smtp fi fi res= while [ $# -eq 0 ] && [ "$res" != "221" ]; do ask "Outgoing mail server? (e.g 'smtp.isp.com')" "$mailhub" mailhub="$resp" if ! ask_yesno "Test connection? (y/n)" y; then break fi res=$(printf "quit\r\n\n" | nc $mailhub 25 | awk '/^221/ {print $1}') [ "x$res" = "x221" ] && echo "Connection to $mailhub is ok." done apk add ssmtp setcfg mailhub $mailhub setcfg FromLineOverride YES #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat >&$(( $1 + 1 ))<<-__EOF__ usage: setup-ntp [-h] [busybox|openntpd|chrony|none] Setup NTP time synchronization options: -h Show this help User is prompted if no NTP daemon is specified __EOF__ exit $1 } while getopts "hc:" opt; do case $opt in c) resp="$OPTARG";; h) usage 0;; '?') usage 1;; esac done shift $(( $OPTIND - 1 )) : ${resp:=$1} while [ $# -eq 0 ] && ! isin "$resp" busybox openntpd chrony none abort; do if date -d "$resp" >/dev/null 2>&1; then $MOCK date -s "$resp" else # display current time before asking for NTP client date fi ask "Which NTP client to run? ('busybox', 'openntpd', 'chrony' or 'none')" busybox done pkgs="$resp" case "$resp" in none|abort) exit 0 ;; busybox) pkgs='' svc=ntpd ;; chrony) if apk info --installed --quiet acf-core; then pkgs="$pkgs acf-chrony" fi svc=chronyd ;; openntpd) svc=openntpd ;; *) echo "setup-ntp: '$resp' is not a supported NTP client" >&2 usage 1 ;; esac # force synchronous time-sync before network access $MOCK busybox ntpd -qnN -p pool.ntp.org >/dev/null [ -z "$pkgs" ] || apk add --quiet $pkgs rc-update add $svc default rc-service $svc start #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-proxy [-hq] [PROXYURL] Setup http proxy options: -h Show this help -q Quiet mode If PROXYURL is not specified user will be prompted. __EOF__ exit $1 } while getopts "hp:q" opt; do case "$opt" in q) quiet=1;; h) usage 0;; p) ROOT=$OPTARG;; '?') usage "1" >&2;; esac done shift $(( $OPTIND - 1)) proxyurl="$1" PROFILE="$ROOT/etc/profile.d/proxy.sh" if [ -f "$PROFILE" ] ; then . $PROFILE fi suggest=${http_proxy:-none} while [ $# -eq 0 ]; do case "$proxyurl" in http://*|https://*) break;; none) break;; esac ask "HTTP/FTP proxy URL? (e.g. 'http://proxy:8080', or 'none')" $suggest proxyurl=$resp done if [ "$proxyurl" = "none" ]; then rm -f "$PROFILE" else mkdir -p "${PROFILE%/*}" cat >"$PROFILE" <<-__EOF__ # this file was generated with and might get overwritten by setup-proxy export http_proxy=$proxyurl export https_proxy=$proxyurl export ftp_proxy=$proxyurl export no_proxy=localhost __EOF__ # busybox wget does not handle http proxies well apk add --quiet --no-progress wget fi if [ -z "$quiet" ] && [ "$proxyurl" != "none" ]; then cat <<-__EOF__ To make changes active please do login again or source $PROFILE with ". $PROFILE" __EOF__ fi #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-sshd [-h] [-k authorized key] [openssh | dropbear | none] Setup sshd daemon options: -h Show this help -k Authorized key for root (HTTP(S)/FTP URL, the public key itself or 'none') __EOF__ exit $1 } root_login_help() { cat <<-__EOF__ Valid options are: yes root will be able to login with password or ssh key no root will not be allowed to login with ssh prohibit-password root will be able to login with ssh key but not with password __EOF__ } set_sshd_config() { local key="$1" value="$2" sed -i -E -e "s/^#?\s*$key.*/$key $value/" \ "$ROOT"/etc/ssh/sshd_config 2>/dev/null if ! grep -q -w "^$key" "$ROOT"/etc/ssh/sshd_config; then echo "$key $value" >> "$ROOT"/etc/ssh/sshd_config fi } get_sshd_config() { local key="$1" value="$2" awk -v key="$key" '$1 == key {print $2}' "$ROOT"/etc/ssh/sshd_config } authorized_key="$SSH_KEY" while getopts "hc:k:" opt; do case $opt in h) usage 0;; c) sshdchoice="$OPTARG";; # backwards compat k) authorized_key="$OPTARG";; '?') usage "1" >&2;; esac done shift $(( $OPTIND - 1 )) case "$1" in openssh|dropbear|none) sshdchoice="$1" ;; "") [ -z "$sshdchoice" ] && interactive=1;; *) usage "1" >&2;; esac while [ -n "$interactive" ] && ! isin "$sshdchoice" openssh dropbear none; do ask "Which ssh server? ('openssh', 'dropbear' or 'none')" openssh sshdchoice="$resp" done if [ "$sshdchoice" = "none" ]; then exit 0 fi pkgs="$sshdchoice" if [ "$sshdchoice" = "openssh" ] && apk info --quiet --installed acf-core; then pkgs="$pkgs acf-openssh" fi apk add --quiet $pkgs users=$(awk -F: '{if ($3<65000 && $3 >= 1000) print $1}' \ "$ROOT"/etc/passwd 2>/dev/null) if [ "$sshdchoice" = "openssh" ] && [ -z "$authorized_key" ] && [ -z "$users" ]; then suggest=prohibit-password while [ -n "$interactive" ]; do ask "Allow root ssh login? ('?' for help)" "$suggest" case "$resp" in '?') root_login_help continue ;; "al "*) suggest="https://gitlab.alpinelinux.org/${resp#* }.keys" continue ;; "gl "*) suggest="https://gitlab.com/${resp#* }.keys" continue ;; "gh "*) suggest="https://github.com/${resp#* }.keys" continue ;; yes|no|prohibit-password) set_sshd_config PermitRootLogin "$resp" break ;; http://*|https://*) authorized_key="$(wget -qO- "$resp")" || { echo "Failed to fetch key from '$resp'" continue } break ;; esac done suggest=none while [ -n "$interactive" ] && [ "$(get_sshd_config PermitRootLogin)" != "no" ]; do ask "Enter ssh key or URL for root (or 'none')" "$suggest" case "$resp" in "al "*) suggest="https://gitlab.alpinelinux.org/${resp#* }.keys" continue ;; "gl "*) suggest="https://gitlab.com/${resp#* }.keys" continue ;; "gh "*) suggest="https://github.com/${resp#* }.keys" continue ;; http://*|https://*) authorized_key="$(wget -qO- "$resp")" || { echo "Failed to fetch key from '$resp'" continue } break ;; none) break ;; *) if printf "%s\n" "$resp" | ssh-keygen -l -f - >/dev/null; then authorized_key="$resp" break fi ;; esac done fi # ask "Enter ssh key or URL for $username (or 'none')" none svc= case "$sshdchoice" in openssh) svc=sshd;; dropbear) svc=dropbear;; esac if [ -n "$svc" ]; then rc-update add $svc default rc-service $svc start fi if [ -n "$authorized_key" -a "$authorized_key" != "none" ]; then # if the argument is an HTTP(S)/FTP URL, try to fetch the file contents case "$authorized_key" in http*://*|ftp://*) key_url="$authorized_key" authorized_key="$(wget -qO- "$key_url")" || die "Failed to fetch key from '$key_url'" ;; esac umask 077 mkdir -p "$ROOT"/root/.ssh echo "$authorized_key" >> "$ROOT"/root/.ssh/authorized_keys fi #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" zroot="$ROOT"usr/share/zoneinfo usage() { cat <<-__EOF__ usage: setup-timezone [-h] [-k|-i] [TIMEZONE] Sets the timezone for the system. options: -h Show this help -i Install tzdata and symlink instead of making a copy -k Keep previous copies of tzdata TIMEZONE is relative $zroot. If TIMEZONE is not specified user will be prompted. __EOF__ exit $1 } show_tz_list() { local i z= list= local path="$zroot/$1" [ -d "$path" ] || return 1 for i in $(find $path/ -maxdepth 1); do case $i in *.tab|*/) continue;; esac if [ -d "$i" ]; then z="$z ${i##*/}/" else z="$z ${i##*/}" fi done ( cd_assert $path && ls --color=never -Cd $z ) } setup_tz() { local zonepath="$1" if ! $INSTALL_TZDATA; then local zone="${zonepath#*/zoneinfo/}" local zdir="${zonepath%/*}"/ zdir="${zdir#*/zoneinfo/}" if ! $KEEP_TZDATA; then rm -rf "${ROOT}"etc/zoneinfo fi mkdir -p "${ROOT}"etc/zoneinfo/$zdir cp "$zonepath" "${ROOT}"etc/zoneinfo/$zdir/ zonepath=/etc/zoneinfo/$zone fi rm -f "${ROOT}"etc/localtime ln -s "$zonepath" "${ROOT}"etc/localtime } INSTALL_TZDATA=false KEEP_TZDATA=false while getopts "hikz:" opt; do case $opt in h) usage 0;; i) INSTALL_TZDATA=true;; k) KEEP_TZDATA=true;; z) ZONE="$OPTARG";; # backwards compat '?') usage "1" >&2;; esac done shift $(( $OPTIND - 1)) if [ -z "$ZONE" ]; then ZONE="$1" fi if [ "$ZONE" = "none" ]; then exit 0 fi if $INSTALL_TZDATA; then pkg=tzdata apkdel= else pkg="--force --virtual .setup-timezone tzdata" apkdel=".setup-timezone" fi apk add --no-progress --quiet $pkg || die "Failed to install tzdata package" if [ -n "$apkdel" ]; then trap "exit 1" INT TERM HUP trap "apk del --no-progress --quiet $apkdel" EXIT fi if [ -L "${ROOT}"etc/localtime ]; then default_timezone=$(readlink "${ROOT}"etc/localtime) default_timezone=${timezone#*/zoneinfo/} else default_timezone=UTC fi if [ -n "$ZONE" ]; then [ -f "$zroot/$ZONE" ] || die "'$ZONE' is not a valid timezone on this system" setup_tz "$zroot"/"$ZONE" else while true; do show_tz_list echo "" ask "Which timezone are you in? (or '?' or 'none')" "$default_timezone" timezone=$(printf %s "$resp" | sed 's/\/\+/\//g; s/\/$//') case "$timezone" in none|abort) break;; ""|"?") continue;; esac while [ -d "$zroot/$timezone" ]; do show_tz_list "$timezone" echo "" ask "What sub-timezone of '$timezone' are you in? (or '?')" zone=$(printf %s "$resp" | sed 's/\/\+/\//g; s/\/$//') case "$zone" in ""|"?") continue;; esac default_timezone="$timezone" timezone="$timezone/$zone" done if [ -f "$zroot/$timezone" ]; then setup_tz "$zroot/$timezone" break fi echo "'$timezone' is not a valid timezone on this system" done fi #!/bin/sh PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" usage() { cat <<-__EOF__ usage: setup-user [-h] [-a] [-u] [-f FULLNAME] [-g GROUPS] [-k SSHKEY] [USERNAME] Create user account options: -a Create admin user. Add to wheel group and set up doas -h Show this help -f Set full name for user -g Comma or space separated list of groups to add user to -k ssh key or URL to ssh key (eg. https://gitlab.alpinelinux.org/user.keys) or 'none' for no key -u Unlock the user automatically (eg. creating the user non-interactively with an ssh key for login) If USERNAME is not specified user will be prompted. __EOF__ exit $1 } filter_ssh_keys() { # authorized_keys lines may start with an options field: # https://man.openbsd.org/sshd#AUTHORIZED_KEYS_FILE_FORMAT grep -E '^([^[:space:]]+[[:space:]]+)?(ecdsa|rsa|ssh|sk-ecdsa|sk-ssh)-' } retrieve_ssh_keys() { wget -q -O - "$1" | filter_ssh_keys } contains_ssh_key() { echo "$1" | filter_ssh_keys > /dev/null } while getopts "af:g:hk:u" opt; do case $opt in a) admin=1;; h) usage 0;; f) fullnameopt="$OPTARG";; g) groups="$OPTARG";; k) keysopt="$OPTARG";; u) forceunlock=1;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) if [ -z "$admin$fullnameopt$groups$keysopt$forceunlock" ] && [ "$1" = "none" ]; then exit 0 fi if [ $# -gt 1 ]; then usage "1" >&2 elif [ $# -eq 1 ]; then username="$1" else interactive=1 fi while true; do fullname="$fullnameopt" if [ -n "$interactive" ] && [ -z "$username" ]; then if [ -n "$fullname" ]; then suggest=${fullname:+$(echo "$fullname" | sed -E 's/^(.).*\s+(.*)/\1\2/' | tr '[:upper:]' '[:lower:]')} else suggest=no fi # dont suggest something that has failed before if [ "$suggest" = "$failed_username" ]; then suggest= fi ask "Setup a user? (enter a lower-case loginname, or 'no')" $suggest case "$resp" in no) exit 0;; *) username="$resp";; esac fi if [ -n "$interactive" ] && [ -z "$fullnameopt" ]; then ask "Full name for user $username" ${lastfullname:-$username} fullname="$resp" lastfullname="$resp" fi if [ -n "$fullname" ]; then adduser -g "$fullname" -D "$username" && break else adduser -D "$username" && break fi if ! [ -n "$interactive" ]; then exit 1 fi failed_username="$username" username= done while [ -n "$interactive" ] && ! $MOCK passwd "$username"; do echo "Please retry." done if [ -n "$interactive" ] && [ -z "$keysopt" ]; then suggest=none while true; do ask "Enter ssh key or URL for $username (or 'none')" $suggest case "$resp" in al) suggest="https://gitlab.alpinelinux.org/$username.keys" continue ;; gl) suggest="https://gitlab.com/$username.keys" continue ;; gh) suggest="https://github.com/$username.keys" continue ;; none) break ;; https://*|http://*) sshkeys=$(retrieve_ssh_keys "$resp") ;; *) sshkeys="$resp" ;; esac if contains_ssh_key "$sshkeys"; then break fi echo "Did not find any key in '$resp'" done else case "$keysopt" in https://*|http://*) sshkeys=$(retrieve_ssh_keys "$keysopt");; none) sshkeys="" ;; *) sshkeys="$keysopt";; esac if [ -n "$sshkeys" ] && ! contains_ssh_key "$sshkeys"; then echo "Could not find any keys in '$resp'" >&2 exit 1 fi fi if [ -n "$sshkeys" ] && [ "$sshkeys" != "none" ]; then ssh_directory="$ROOT"/home/$username/.ssh ( umask 077 mkdir -p "$ssh_directory" echo "$sshkeys" > "$ssh_directory"/authorized_keys ) $MOCK chown -R $username:$username "$ssh_directory" fi if [ -n "$groups" ] && [ "$groups" != "none" ]; then for i in $(echo $groups | tr ',' ' '); do $MOCK addgroup "$username" "$i" || exit done fi if [ -n "$admin" ]; then apk add doas mkdir -p "$ROOT"/etc/doas.d echo "permit persist :wheel" >> "$ROOT"/etc/doas.d/20-wheel.conf $MOCK addgroup "$username" "wheel" || exit fi if [ -n "$forceunlock" ]; then $MOCK passwd -u "$username" || exit fi #!/bin/sh usage() { cat <<-__EOF__ usage: setup-wayland-base [-h] [PKG..] Set up system to use Wayland options: -h Show this help Installs and enables elogind, enables community repository, enable udev and install the packages PKG if specified. __EOF__ exit $1 } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) # For every main/ repo, enable corresponding community/ repo setup-apkrepos -o apk add elogind polkit-elogind "$@" setup-devd udev for service in cgroups dbus; do rc-service "$service" start rc-update add "$service" done #!/bin/sh # simple script to setup basic xen dom0 # kernel modules mkdir -p "$ROOT"/etc for mod in xen_netback xen_blkback xenfs xen_pciback xen_wdt tun; do if modprobe $mod; then grep -q -w $mod "$ROOT"/etc/modules 2>/dev/null || echo $mod >> "$ROOT"/etc/modules fi done # install packages apk add --quiet xen $@ # setup and start services for svc in xenstored xenconsoled xenqemu; do if rc-service --exist "$svc"; then rc-update --quiet add "$svc" default rc-service "$svc" start fi done #!/bin/sh usage() { cat <<-__EOF__ usage: setup-xorg-base [-h] [PKG..] Set up system to use Xorg options: -h Show this help Installs xorg-server, enables community repository, enable udev and install the packages PKG if specified. __EOF__ exit $1 } while getopts "h" opt; do case $opt in h) usage 0;; '?') usage "1" >&2;; esac done shift $(($OPTIND - 1)) # For every main/ repo, enable corresponding community/ repo setup-apkrepos -o apk add xorg-server xf86-input-libinput xinit eudev mesa-dri-gallium "$@" setup-devd udev #!/bin/sh VERSION=3.22.0-r0 PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" # set up temp dir init_tmpdir TMPD LBUCACHE="$TMPD/lbucache" usage() { cat <<-__EOF__ $PROGRAM $VERSION usage: $PROGRAM [-a|--all] [-i|--initd] [-l|--list] [-h|--help] options: -a, --all Select all updated files -i, --initd Use all new init.d scripts -l, --list List updated files -h, --help Show this help __EOF__ exit $1 } is_modified() { [ -f "$LBUCACHE" ] || lbu status -a | awk '{print $2}' > "$LBUCACHE" test -n "$( ( echo "$1" ; cat "$LBUCACHE" ) | sort | uniq -d)" } is_initd() { echo "$1" | grep etc/init.d/ > /dev/null } args=$(getopt -o ailh --long all,initd,list,help -n "$PROGRAM" -- "$@") if [ $? -ne 0 ]; then usage "1" >&2 fi eval set -- "$args" while true; do case $1 in -a|--all) aflag="-a";; -i|--initd) iflag="-i";; -l|--list) lflag="-l";; -h|--help) usage 0;; --) shift; break;; '?') usage "1" >&2;; esac shift done if which vimdiff >/dev/null; then vflag=", Vimdiff old new" vflag2="/v" fi for apknew in $(find "$ROOT/etc" -name '*.apk-new') ; do p="${apknew%.apk-new}" f="${p#${ROOT}/}" if [ "$lflag" ] ; then # just list the file if [ "$aflag" ] || is_modified "$f" ; then echo "$p" fi elif [ "$aflag" ] || is_modified "$f" ; then if [ "$iflag" ] && is_initd "$f" ; then echo "Autoupdating $p" mv "$apknew" "$p" continue fi diff -u "$p" "$apknew" # ask user what to do with the file unset resp while [ -z "$resp" ] ; do echo "New $p available:" ask "Quit, Next, Show diff, Edit new${vflag}, Zap new, Use new (q/n/s/e${vflag2}/z/u)" s case "$resp" in q) exit;; n) continue;; s) diff -u "$p" "$apknew" | ${PAGER:-less} unset resp ;; e) ${EDITOR:-vi} "$apknew" ; unset resp;; v) if [ "$vflag" ]; then vimdiff "$p" "$apknew" fi unset resp;; z) rm "$apknew";; u) mv "$apknew" "$p";; *) unset resp;; esac done else # auto update echo "Autoupdating unchanged $p" mv "$apknew" "$p" fi done #!/bin/sh -e # update-kernel # # Kernel and firmware update script for Alpine installations set up # with setup-bootable # # Copyright (c) 2014 Timo Teräs # Copyright (c) 2014-2021 Kaarle Ritvanen PREFIX=/usr : ${LIBDIR=$PREFIX/lib} . "$LIBDIR/libalpine.sh" SCRIPT=update-kernel VIRTUAL=.tmp-$SCRIPT SUPERUSER= [ $(id -u) -eq 0 ] && SUPERUSER=Y if [ -z "$SUPERUSER" ] && [ -z "$FAKEROOTKEY" ]; then exec fakeroot "$0" "$@" fi ARCH= BUILDDIR= FLAVOR= MEDIA= MNTDIR= PACKAGES= MKINITFS_ARGS= REPOSITORIES_FILE=/etc/apk/repositories KEYS_DIR=/etc/apk/keys CACHE_DIR=/etc/apk/cache SIGNALS="HUP INT TERM" tmpdir= features= modloopfw= error() { echo "$SCRIPT: $1" >&2 } usage() { [ "$2" ] && error "$2" $outfh local opts="[-F ]... [-p ]..." local dest_args="[-a ] " local outfh=2 [ $1 -eq 0 ] && outfh=1 cat >&$outfh <<-__EOF__ usage: $SCRIPT $opts [$dest_args] $SCRIPT -f $opts $dest_args $SCRIPT -b $opts [$dest_args] Options: -a|--arch Install kernel for specified architecture -b|--build-dir Install custom-built kernel -e|--modloopfw Install extra firmware in modloop -f|--flavor Install kernel of specified flavor -F|--feature Enable initfs feature -p|--package Additional module or firmware package -s|--modloopsign Sign modloop with abuild key -v|--verbose Verbose output -k|--apk-pubkey Include given key in initramfs -K|--hostkeys Include host keys in initramfs -C|--compression Initramfs compression (see mkinitfs for options) -M|--media Boot media directory layout -d|--keys-dir Override directory of trusted keys for apk -c|--cache-dir Override cache directory --repositories-file apk repositories file On low-memory systems, you may want to point the TMPDIR environment variable to a storage-backed directory. __EOF__ exit $1 } QUIET_OPT="--quiet" OPTS=$(getopt -l arch:,build-dir:,flavor:,feature:,modloopfw:,help,package:,modloopsign,verbose,apk-pubkey:,hostkeys,compression:,media,repositories-file:,keys-dir:,cache-dir: \ -n $SCRIPT -o a:b:e:f:F:hp:svk:KC:Md:c: -- "$@") || usage 1 eval set -- "$OPTS" while :; do case "$1" in -a|--arch) shift ARCH=$1 ;; -b|--build-dir) shift BUILDDIR=$1 ;; -f|--flavor) shift FLAVOR=$1 ;; -F|--feature) shift features="$features $1" ;; -e|--modloopfw) shift modloopfw="$modloopfw $1" ;; -h|--help) echo "$SCRIPT 3.22.0-r0" usage 0 ;; -p|--package) shift PACKAGES="$PACKAGES $1" ;; -s|--modloopsign) MODLOOPSIGN=1 ;; -v|--verbose) QUIET_OPT= ;; -k|--apk-pubkey) shift APK_PUBKEY="$1" ;; -K|--hostkeys) MKINITFS_ARGS="$MKINITFS_ARGS -K" ;; -C|--compression) shift MKINITFS_ARGS="$MKINITFS_ARGS -C $1" ;; -M|--media) MEDIA=yes ;; -d|--keys-dir) shift KEYS_DIR="$1" ;; -c|--cache-dir) shift CACHE_DIR="$1" ;; --repositories-file) shift REPOSITORIES_FILE=$1 ;; --) break ;; esac shift done DESTDIR=$2 [ "$BUILDDIR" -a "$FLAVOR" ] && \ usage 1 "Cannot specify both build directory and flavor" if [ -z "$DESTDIR" ]; then [ "$ARCH" ] && \ usage 1 "Cannot specify architecture when updating the current kernel" [ "$FLAVOR" ] && \ usage 1 "Cannot specify flavor when updating the current kernel" [ "$SUPERUSER" ] || \ usage 1 "Specify destination directory or run as superuser" while read MOUNT; do set -- $MOUNT [ $2 = /.modloop ] || continue DESTDIR=$(dirname $(busybox losetup $1 | cut -d " " -f 3)) MNTDIR=$(dirname "$DESTDIR") break done < /proc/mounts if [ -z "$MNTDIR" ]; then error "Module loopback device not mounted" exit 1 fi fi remount() { mount $1 -o remount "$MNTDIR" } ignore_sigs() { trap "" $SIGNALS } clean_up() { set +e ignore_sigs if [ "$SUPERUSER" ] && [ -z "$FAKEROOTKEY" ]; then apk del $QUIET_OPT $VIRTUAL fi rm -fr $tmpdir } sign_modloop() { local in="$1" local abuild_conf="${ABUILD_CONF:-"/etc/abuild.conf"}" [ -f "$abuild_conf" ] && . "$abuild_conf" local abuild_home="${ABUILD_USERDIR:-"$HOME/.abuild"}" local abuild_userconf="${ABUILD_USERCONF:-"$abuild_home/abuild.conf"}" [ -f "$abuild_userconf" ] && . "$abuild_userconf" local privkey="$PACKAGER_PRIVKEY" local pubkey="${PACKAGER_PUBKEY:-"${privkey}.pub"}" MODLOOPSIG=${in##*/}.SIGN.RSA.${pubkey##*/} echo "Signing: $in" openssl dgst -sha1 -sign "$privkey" \ -out "$tmpdir/$MODLOOPSIG" \ "$in" } trap clean_up EXIT $SIGNALS if [ "$SUPERUSER" ] && [ -z "$FAKEROOTKEY" ]; then apk add $QUIET_OPT --update-cache -t $VIRTUAL mkinitfs squashfs-tools kmod fi if [ -z "$features" ]; then . "$ROOT"/etc/mkinitfs/mkinitfs.conf fi if [ -z "$FLAVOR" ]; then FLAVOR=$(uname -r | cut -d - -f 3-) [ "$FLAVOR" ] || FLAVOR=vanilla fi [ "$ARCH" ] || ARCH=$(apk --print-arch) tmpdir=$(mktemp -dt $SCRIPT.XXXXXX) ROOTFS=$tmpdir/root BOOT=$ROOTFS/boot CACHE_DIR_OPT="--cache-dir $CACHE_DIR" if ! [ -e "$CACHE_DIR" ]; then CACHE_DIR_OPT= fi _apk() { local cmd="$1" shift apk $cmd $QUIET_OPT $CACHE_DIR_OPT -p $ROOTFS --arch "$ARCH" \ --keys-dir $KEYS_DIR \ --repositories-file "$REPOSITORIES_FILE" $* } extra_pkgs() { local res="$(_apk search -x $1)" if [ "$res" ]; then echo $* fi } # set up the root and get the APKINDEX for search _apk add --initdb --update-cache if [ "$BUILDDIR" ]; then case "$ARCH" in arm*|aarch64*) _install="zinstall dtbs_install" ;; riscv64) _install="zinstall dtbs_install" ;; *) _install="install" ;; esac mkdir -p $BOOT make -C "$BUILDDIR" $_install firmware_install modules_install \ INSTALL_MOD_PATH=$ROOTFS \ INSTALL_PATH=$BOOT \ INSTALL_DTBS_PATH='$ROOTFS/usr/lib/linux-$(KERNELRELEASE)' else if [ -z "$PACKAGES" ]; then PACKAGES="$(extra_pkgs "xtables-addons-$FLAVOR")" fi PACKAGES="$PACKAGES linux-$FLAVOR linux-firmware" fi _apk add --no-scripts alpine-base $PACKAGES if [ -n "$APK_PUBKEY" ]; then mkdir -p "$ROOTFS"/etc/apk/keys cp "$APK_PUBKEY" "$ROOTFS"/etc/apk/keys/ fi KVER_FLAVOR= [ "$FLAVOR" = vanilla ] || KVER_FLAVOR=-$FLAVOR KVER=$(basename $(ls -d $ROOTFS/lib/modules/*"$KVER_FLAVOR")) DTBDIR=$ROOTFS/boot/dtbs-$FLAVOR [ -d "$DTBDIR" ] || DTBDIR=$ROOTFS/usr/lib/linux-$KVER [ -d "$DTBDIR" ] || DTBDIR=$ROOTFS/boot find $ROOTFS/lib/modules \ -name \*.ko.gz -exec gunzip {} + \ -o -name \*.ko.xz -exec unxz {} + \ -o -name \*.ko.zst -exec unzstd --rm {} + $MOCK depmod -b $ROOTFS "$KVER" STAGING=$tmpdir/boot MODLOOP=$tmpdir/modloop MODIMG=modloop-$FLAVOR mkdir $MODLOOP $STAGING cp -a $ROOTFS/lib/modules $MODLOOP mkdir -p $MODLOOP/modules/firmware find $ROOTFS/lib/modules -type f -name "*.ko*" | xargs modinfo -k $KVER -F firmware | sort -u | while read FW; do for f in "$ROOTFS"/lib/firmware/$FW "$ROOTFS"/lib/firmware/$FW.xz "$ROOTFS"/lib/firmware/$FW.zst; do if ! [ -e "$f" ]; then continue fi target="$MODLOOP/modules/firmware/${f#*/lib/firmware}" if [ -d "$f" ]; then mkdir -p "${target%/*}" cp -a "$f" "${target%/*}" continue fi install -pD "$f" "$target" # copy also all potentially associated files f=${f%.zst} f=${f%.xz} for _file in "${f%.*}".*; do install -pD "$_file" "$MODLOOP/modules/firmware/${_file#*/lib/firmware/}" done done done # install extra firmware files in modloop (i.e. not detected by modinfo) for _xfw in $modloopfw; do if [ -f "$ROOTFS/lib/firmware/$_xfw" ]; then install -pD "$ROOTFS/lib/firmware/$_xfw" \ "$MODLOOP"/modules/firmware/"$_xfw" else echo "Warning: extra firmware \"$_xfw\" not found!" fi done # wireless regulatory db if [ -e "$ROOTFS"/lib/modules/*/kernel/net/wireless/cfg80211.ko* ]; then _apk add --no-scripts wireless-regdb for _regdb in "$ROOTFS"/lib/firmware/regulatory.db*; do [ -e "$_regdb" ] && install -pD "$_regdb" "$MODLOOP"/modules/firmware/"${_regdb##*/}" done fi # include bluetooth firmware in modloop if [ -e "$ROOTFS"/lib/modules/*/kernel/drivers/bluetooth/btbcm.ko* ]; then for _btfw in "$ROOTFS"/lib/firmware/brcm/*.hcd*; do install -pD "$_btfw" \ "$MODLOOP"/modules/firmware/brcm/"${_btfw##*/}" done fi # include sof firmware when available if [ -e "$ROOTFS"/lib/firmware/intel/sof ]; then mkdir -p "$MODLOOP"/modules/firmware/intel cp -RP "$ROOTFS"/lib/firmware/intel/sof* "$MODLOOP"/modules/firmware/intel/ fi case $ARCH in armhf) mksfs="-Xbcj arm" ;; armv7|aarch64) mksfs="-Xbcj arm,armthumb" ;; x86|x86_64) mksfs="-Xbcj x86" ;; *) mksfs= esac mksquashfs $MODLOOP "$STAGING/$MODIMG" $MKSQUASHFS_OPTS -comp xz -exit-on-error $mksfs if [ -n "$MODLOOPSIGN" ]; then sign_modloop "$STAGING/$MODIMG" MKINITFS_ARGS="$MKINITFS_ARGS -s $tmpdir/$MODLOOPSIG" fi $MOCK mkinitfs $MKINITFS_ARGS -q -b $ROOTFS -F "$features base squashfs" \ -o "$STAGING/initramfs-$FLAVOR" "$KVER" for file in System.map config vmlinuz; do cp "$BOOT/$file-$KVER" "$STAGING" 2>/dev/null \ || cp "$BOOT/$file-$FLAVOR" "$STAGING" 2>/dev/null \ || cp "$BOOT/$file" "$STAGING" 2>/dev/null \ || { echo "Failed to copy $file-$KVER, $file-$FLAVOR or $file" >&2; exit 1; } done if [ "$MNTDIR" ]; then ignore_sigs umount /.modloop remount -w fi mkdir -p "$DESTDIR"/${MEDIA:+boot/} mv $STAGING/* "$DESTDIR"/${MEDIA:+boot/} if [ -d "$DTBDIR" ]; then _opwd=$PWD case "$MEDIA,$FLAVOR" in yes,rpi*) _dtb="$DESTDIR/" ;; yes,*) _dtb="$DESTDIR/boot/dtbs-$FLAVOR" ;; *,*) _dtb="$DESTDIR/dtbs/dtbs-$FLAVOR" ;; esac mkdir -p "$_dtb" _dtb=$(realpath "$_dtb") cd_assert "$DTBDIR" find -type f \( -name "*.dtb" -o -name "*.dtbo" \) | cpio -pudm "$_dtb" 2> /dev/null cd_assert "$_opwd" fi if [ "$MNTDIR" ]; then set +e sync remount -r mount -o loop "$DESTDIR/$MODIMG" /.modloop fi exit 0 -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA1yHJxQgsHQREclQu4Ohe qxTxd1tHcNnvnQTu/UrTky8wWvgXT+jpveroeWWnzmsYlDI93eLI2ORakxb3gA2O Q0Ry4ws8vhaxLQGC74uQR5+/yYrLuTKydFzuPaS1dK19qJPXB8GMdmFOijnXX4SA jixuHLe1WW7kZVtjL7nufvpXkWBGjsfrvskdNA/5MfxAeBbqPgaq0QMEfxMAn6/R L5kNepi/Vr4S39Xvf2DzWkTLEK8pcnjNkt9/aafhWqFVW7m3HCAII6h/qlQNQKSo GuH34Q8GsFG30izUENV9avY7hSLq7nggsvknlNBZtFUcmGoQrtx3FmyYsIC8/R+B ywIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvNijDxJ8kloskKQpJdx+ mTMVFFUGDoDCbulnhZMJoKNkSuZOzBoFC94omYPtxnIcBdWBGnrm6ncbKRlR+6oy DO0W7c44uHKCFGFqBhDasdI4RCYP+fcIX/lyMh6MLbOxqS22TwSLhCVjTyJeeH7K aA7vqk+QSsF4TGbYzQDDpg7+6aAcNzg6InNePaywA6hbT0JXbxnDWsB+2/LLSF2G mnhJlJrWB1WGjkz23ONIWk85W4S0XB/ewDefd4Ly/zyIciastA7Zqnh7p3Ody6Q0 sS2MJzo7p3os1smGjUF158s6m/JbVh4DN6YIsxwl2OjDOz9R0OycfJSDaBVIGZzg cQIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr8s1q88XpuJWLCZALdKj lN8wg2ePB2T9aIcaxryYE/Jkmtu+ZQ5zKq6BT3y/udt5jAsMrhHTwroOjIsF9DeG e8Y3vjz+Hh4L8a7hZDaw8jy3CPag47L7nsZFwQOIo2Cl1SnzUc6/owoyjRU7ab0p iWG5HK8IfiybRbZxnEbNAfT4R53hyI6z5FhyXGS2Ld8zCoU/R4E1P0CUuXKEN4p0 64dyeUoOLXEWHjgKiU1mElIQj3k/IF02W89gDj285YgwqA49deLUM7QOd53QLnx+ xrIrPv3A+eyXMFgexNwCKQU9ZdmWa00MjjHlegSGK8Y2NPnRoXhzqSP9T9i2HiXL VQIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwlzMkl7b5PBdfMzGdCT0 cGloRr5xGgVmsdq5EtJvFkFAiN8Ac9MCFy/vAFmS8/7ZaGOXoCDWbYVLTLOO2qtX yHRl+7fJVh2N6qrDDFPmdgCi8NaE+3rITWXGrrQ1spJ0B6HIzTDNEjRKnD4xyg4j g01FMcJTU6E+V2JBY45CKN9dWr1JDM/nei/Pf0byBJlMp/mSSfjodykmz4Oe13xB Ca1WTwgFykKYthoLGYrmo+LKIGpMoeEbY1kuUe04UiDe47l6Oggwnl+8XD1MeRWY sWgj8sF4dTcSfCMavK4zHRFFQbGp/YFJ/Ww6U9lA3Vq0wyEI6MCMQnoSMFwrbgZw wwIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA3v8/ye/V/t5xf4JiXLXa hWFRozsnmn3hobON20GdmkrzKzO/eUqPOKTpg2GtvBhK30fu5oY5uN2ORiv2Y2ht eLiZ9HVz3XP8Fm9frha60B7KNu66FO5P2o3i+E+DWTPqqPcCG6t4Znk2BypILcit wiPKTsgbBQR2qo/cO01eLLdt6oOzAaF94NH0656kvRewdo6HG4urbO46tCAizvCR CA7KGFMyad8WdKkTjxh8YLDLoOCtoZmXmQAiwfRe9pKXRH/XXGop8SYptLqyVVQ+ tegOD9wRs2tOlgcLx4F/uMzHN7uoho6okBPiifRX+Pf38Vx+ozXh056tjmdZkCaV aQIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoSPnuAGKtRIS5fEgYPXD 8pSGvKAmIv3A08LBViDUe+YwhilSHbYXUEAcSH1KZvOo1WT1x2FNEPBEFEFU1Eyc +qGzbA03UFgBNvArurHQ5Z/GngGqE7IarSQFSoqewYRtFSfp+TL9CUNBvM0rT7vz 2eMu3/wWG+CBmb92lkmyWwC1WSWFKO3x8w+Br2IFWvAZqHRt8oiG5QtYvcZL6jym Y8T6sgdDlj+Y+wWaLHs9Fc+7vBuyK9C4O1ORdMPW15qVSl4Lc2Wu1QVwRiKnmA+c DsH/m7kDNRHM7TjWnuj+nrBOKAHzYquiu5iB3Qmx+0gwnrSVf27Arc3ozUmmJbLj zQIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAvBxJN9ErBgdRcPr5g4hV qyUSGZEKuvQliq2Z9SRHLh2J43+EdB6A+yzVvLnzcHVpBJ+BZ9RV30EM9guck9sh r+bryZcRHyjG2wiIEoduxF2a8KeWeQH7QlpwGhuobo1+gA8L0AGImiA6UP3LOirl I0G2+iaKZowME8/tydww4jx5vG132JCOScMjTalRsYZYJcjFbebQQolpqRaGB4iG WqhytWQGWuKiB1A22wjmIYf3t96l1Mp+FmM2URPxD1gk/BIBnX7ew+2gWppXOK9j 1BJpo0/HaX5XoZ/uMqISAAtgHZAqq+g3IUPouxTphgYQRTRYpz2COw3NF43VYQrR bQIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwXEJ8uVwJPODshTkf2BH pH5fVVDppOa974+IQJsZDmGd3Ny0dcd+WwYUhNFUW3bAfc3/egaMWCaprfaHn+oS 4ddbOFgbX8JCHdru/QMAAU0aEWSMybfJGA569c38fNUF/puX6XK/y0lD2SS3YQ/a oJ5jb5eNrQGR1HHMAd0G9WC4JeZ6WkVTkrcOw55F00aUPGEjejreXBerhTyFdabo dSfc1TILWIYD742Lkm82UBOPsOSdSfOdsMOOkSXxhdCJuCQQ70DHkw7Epy9r+X33 ybI4r1cARcV75OviyhD8CFhAlapLKaYnRFqFxlA515e6h8i8ih/v3MSEW17cCK0b QwIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwR4uJVtJOnOFGchnMW5Y j5/waBdG1u5BTMlH+iQMcV5+VgWhmpZHJCBz3ocD+0IGk2I68S5TDOHec/GSC0lv 6R9o6F7h429GmgPgVKQsc8mPTPtbjJMuLLs4xKc+viCplXc0Nc0ZoHmCH4da6fCV tdpHQjVe6F9zjdquZ4RjV6R6JTiN9v924dGMAkbW/xXmamtz51FzondKC52Gh8Mo /oA0/T0KsCMCi7tb4QNQUYrf+Xcha9uus4ww1kWNZyfXJB87a2kORLiWMfs2IBBJ TmZ2Fnk0JnHDb8Oknxd9PvJPT0mvyT8DA+KIAPqNvOjUXP4bnjEHJcoCP9S5HkGC IQIDAQAB -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAutQkua2CAig4VFSJ7v54 ALyu/J1WB3oni7qwCZD3veURw7HxpNAj9hR+S5N/pNeZgubQvJWyaPuQDm7PTs1+ tFGiYNfAsiibX6Rv0wci3M+z2XEVAeR9Vzg6v4qoofDyoTbovn2LztaNEjTkB+oK tlvpNhg1zhou0jDVYFniEXvzjckxswHVb8cT0OMTKHALyLPrPOJzVtM9C1ew2Nnc 3848xLiApMu3NBk0JqfcS3Bo5Y2b1FRVBvdt+2gFoKZix1MnZdAEZ8xQzL/a0YS5 Hd0wj5+EEKHfOd3A75uPa/WQmA+o0cBFfrzm69QDcSJSwGpzWrD1ScH3AK8nWvoj v7e9gukK/9yl1b4fQQ00vttwJPSgm9EnfPHLAtgXkRloI27H6/PuLoNvSAMQwuCD hQRlyGLPBETKkHeodfLoULjhDi1K2gKJTMhtbnUcAA7nEphkMhPWkBpgFdrH+5z4 Lxy+3ek0cqcI7K68EtrffU8jtUj9LFTUC8dERaIBs7NgQ/LfDbDfGh9g6qVj1hZl k9aaIPTm/xsi8v3u+0qaq7KzIBc9s59JOoA8TlpOaYdVgSQhHHLBaahOuAigH+VI isbC9vmqsThF2QdDtQt37keuqoda2E6sL7PUvIyVXDRfwX7uMDjlzTxHTymvq2Ck htBqojBnThmjJQFgZXocHG8CAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAlEyxkHggKCXC2Wf5Mzx4 nZLFZvU2bgcA3exfNPO/g1YunKfQY+Jg4fr6tJUUTZ3XZUrhmLNWvpvSwDS19ZmC IXOu0+V94aNgnhMsk9rr59I8qcbsQGIBoHzuAl8NzZCgdbEXkiY90w1skUw8J57z qCsMBydAueMXuWqF5nGtYbi5vHwK42PffpiZ7G5Kjwn8nYMW5IZdL6ZnMEVJUWC9 I4waeKg0yskczYDmZUEAtrn3laX9677ToCpiKrvmZYjlGl0BaGp3cxggP2xaDbUq qfFxWNgvUAb3pXD09JM6Mt6HSIJaFc9vQbrKB9KT515y763j5CC2KUsilszKi3mB HYe5PoebdjS7D1Oh+tRqfegU2IImzSwW3iwA7PJvefFuc/kNIijfS/gH/cAqAK6z bhdOtE/zc7TtqW2Wn5Y03jIZdtm12CxSxwgtCF1NPyEWyIxAQUX9ACb3M0FAZ61n fpPrvwTaIIxxZ01L3IzPLpbc44x/DhJIEU+iDt6IMTrHOphD9MCG4631eIdB0H1b 6zbNX1CXTsafqHRFV9XmYYIeOMggmd90s3xIbEujA6HKNP/gwzO6CDJ+nHFDEqoF SkxRdTkEqjTjVKieURW7Swv7zpfu5PrsrrkyGnsRrBJJzXlm2FOOxnbI2iSL1B5F rO5kbUxFeZUIDq+7Yv4kLWcCAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnC+bR4bHf/L6QdU4puhQ gl1MHePszRC38bzvVFDUJsmCaMCL2suCs2A2yxAgGb9pu9AJYLAmxQC4mM3jNqhg /E7yuaBbek3O02zN/ctvflJ250wZCy+z0ZGIp1ak6pu1j14IwHokl9j36zNfGtfv ADVOcdpWITFFlPqwq1qt/H3UsKVmtiF3BNWWTeUEQwKvlU8ymxgS99yn0+4OPyNT L3EUeS+NQJtDS01unau0t7LnjUXn+XIneWny8bIYOQCuVR6s/gpIGuhBaUqwaJOw 7jkJZYF2Ij7uPb4b5/R3vX2FfxxqEHqssFSg8FFUNTZz3qNZs0CRVyfA972g9WkJ hPfn31pQYil4QGRibCMIeU27YAEjXoqfJKEPh4UWMQsQLrEfdGfb8VgwrPbniGfU L3jKJR3VAafL9330iawzVQDlIlwGl6u77gEXMl9K0pfazunYhAp+BMP+9ot5ckK+ osmrqj11qMESsAj083GeFdfV3pXEIwUytaB0AKEht9DbqUfiE/oeZ/LAXgySMtVC sbC4ESmgVeY2xSBIJdDyUap7FR49GGrw0W49NUv9gRgQtGGaNVQQO9oGL2PBC41P iWF9GLoX30HIz1P8PF/cZvicSSPkQf2Z6TV+t0ebdGNS5DjapdnCrq8m9Z0pyKsQ uxAL2a7zX8l5i1CZh1ycUGsCAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA0MfCDrhODRCIxR9Dep1s eXafh5CE5BrF4WbCgCsevyPIdvTeyIaW4vmO3bbG4VzhogDZju+R3IQYFuhoXP5v Y+zYJGnwrgz3r5wYAvPnLEs1+dtDKYOgJXQj+wLJBW1mzRDL8FoRXOe5iRmn1EFS wZ1DoUvyu7/J5r0itKicZp3QKED6YoilXed+1vnS4Sk0mzN4smuMR9eO1mMCqNp9 9KTfRDHTbakIHwasECCXCp50uXdoW6ig/xUAFanpm9LtK6jctNDbXDhQmgvAaLXZ LvFqoaYJ/CvWkyYCgL6qxvMvVmPoRv7OPcyni4xR/WgWa0MSaEWjgPx3+yj9fiMA 1S02pFWFDOr5OUF/O4YhFJvUCOtVsUPPfA/Lj6faL0h5QI9mQhy5Zb9TTaS9jB6p Lw7u0dJlrjFedk8KTJdFCcaGYHP6kNPnOxMylcB/5WcztXZVQD5WpCicGNBxCGMm W64SgrV7M07gQfL/32QLsdqPUf0i8hoVD8wfQ3EpbQzv6Fk1Cn90bZqZafg8XWGY wddhkXk7egrr23Djv37V2okjzdqoyLBYBxMz63qQzFoAVv5VoY2NDTbXYUYytOvG GJ1afYDRVWrExCech1mX5ZVUB1br6WM+psFLJFoBFl6mDmiYt0vMYBddKISsvwLl IJQkzDwtXzT2cSjoj3T5QekCAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvaaoSLab+IluixwKV5Od 0gib2YurjPatGIbn5Ov2DLUFYiebj2oJINXJSwUOO+4WcuHFEqiL/1rya+k5hLZt hnPL1tn6QD4rESznvGSasRCQNT2vS/oyZbTYJRyAtFkEYLlq0t3S3xBxxHWuvIf0 qVxVNYpQWyM3N9RIeYBR/euXKJXileSHk/uq1I5wTC0XBIHWcthczGN0m9wBEiWS 0m3cnPk4q0Ea8mUJ91Rqob19qETz6VbSPYYpZk3qOycjKosuwcuzoMpwU8KRiMFd 5LHtX0Hx85ghGsWDVtS0c0+aJa4lOMGvJCAOvDfqvODv7gKlCXUpgumGpLdTmaZ8 1RwqspAe3IqBcdKTqRD4m2mSg23nVx2FAY3cjFvZQtfooT7q1ItRV5RgH6FhQSl7 +6YIMJ1Bf8AAlLdRLpg+doOUGcEn+pkDiHFgI8ylH1LKyFKw+eXaAml/7DaWZk1d dqggwhXOhc/UUZFQuQQ8A8zpA13PcbC05XxN2hyP93tCEtyynMLVPtrRwDnHxFKa qKzs3rMDXPSXRn3ZZTdKH3069ApkEjQdpcwUh+EmJ1Ve/5cdtzT6kKWCjKBFZP/s 91MlRrX2BTRdHaU5QJkUheUtakwxuHrdah2F94lRmsnQlpPr2YseJu6sIE+Dnx4M CfhdVbQL2w54R645nlnohu8CAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAq0BFD1D4lIxQcsqEpQzU pNCYM3aP1V/fxxVdT4DWvSI53JHTwHQamKdMWtEXetWVbP5zSROniYKFXd/xrD9X 0jiGHey3lEtylXRIPxe5s+wXoCmNLcJVnvTcDtwx/ne2NLHxp76lyc25At+6RgE6 ADjLVuoD7M4IFDkAsd8UQ8zM0Dww9SylIk/wgV3ZkifecvgUQRagrNUdUjR56EBZ raQrev4hhzOgwelT0kXCu3snbUuNY/lU53CoTzfBJ5UfEJ5pMw1ij6X0r5S9IVsy KLWH1hiO0NzU2c8ViUYCly4Fe9xMTFc6u2dy/dxf6FwERfGzETQxqZvSfrRX+GLj /QZAXiPg5178hT/m0Y3z5IGenIC/80Z9NCi+byF1WuJlzKjDcF/TU72zk0+PNM/H Kuppf3JT4DyjiVzNC5YoWJT2QRMS9KLP5iKCSThwVceEEg5HfhQBRT9M6KIcFLSs mFjx9kNEEmc1E8hl5IR3+3Ry8G5/bTIIruz14jgeY9u5jhL8Vyyvo41jgt9sLHR1 /J1TxKfkgksYev7PoX6/ZzJ1ksWKZY5NFoDXTNYUgzFUTOoEaOg3BAQKadb3Qbbq XIrxmPBdgrn9QI7NCgfnAY3Tb4EEjs3ON/BNyEhUENcXOH6I1NbcuBQ7g9P73kE4 VORdoc8MdJ5eoKBpO8Ww8HECAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAyduVzi1mWm+lYo2Tqt/0 XkCIWrDNP1QBMVPrE0/ZlU2bCGSoo2Z9FHQKz/mTyMRlhNqTfhJ5qU3U9XlyGOPJ piM+b91g26pnpXJ2Q2kOypSgOMOPA4cQ42PkHBEqhuzssfj9t7x47ppS94bboh46 xLSDRff/NAbtwTpvhStV3URYkxFG++cKGGa5MPXBrxIp+iZf9GnuxVdST5PGiVGP ODL/b69sPJQNbJHVquqUTOh5Ry8uuD2WZuXfKf7/C0jC/ie9m2+0CttNu9tMciGM EyKG1/Xhk5iIWO43m4SrrT2WkFlcZ1z2JSf9Pjm4C2+HovYpihwwdM/OdP8Xmsnr DzVB4YvQiW+IHBjStHVuyiZWc+JsgEPJzisNY0Wyc/kNyNtqVKpX6dRhMLanLmy+ f53cCSI05KPQAcGj6tdL+D60uKDkt+FsDa0BTAobZ31OsFVid0vCXtsbplNhW1IF HwsGXBTVcfXg44RLyL8Lk/2dQxDHNHzAUslJXzPxaHBLmt++2COa2EI1iWlvtznk Ok9WP8SOAIj+xdqoiHcC4j72BOVVgiITIJNHrbppZCq6qPR+fgXmXa+sDcGh30m6 9Wpbr28kLMSHiENCWTdsFij+NQTd5S47H7XTROHnalYDuF1RpS+DpQidT5tUimaT JZDr++FjKrnnijbyNF8b98UCAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAnpUpyWDWjlUk3smlWeA0 lIMW+oJ38t92CRLHH3IqRhyECBRW0d0aRGtq7TY8PmxjjvBZrxTNDpJT6KUk4LRm a6A6IuAI7QnNK8SJqM0DLzlpygd7GJf8ZL9SoHSH+gFsYF67Cpooz/YDqWrlN7Vw tO00s0B+eXy+PCXYU7VSfuWFGK8TGEv6HfGMALLjhqMManyvfp8hz3ubN1rK3c8C US/ilRh1qckdbtPvoDPhSbTDmfU1g/EfRSIEXBrIMLg9ka/XB9PvWRrekrppnQzP hP9YE3x/wbFc5QqQWiRCYyQl/rgIMOXvIxhkfe8H5n1Et4VAorkpEAXdsfN8KSVv LSMazVlLp9GYq5SUpqYX3KnxdWBgN7BJoZ4sltsTpHQ/34SXWfu3UmyUveWj7wp0 x9hwsPirVI00EEea9AbP7NM2rAyu6ukcm4m6ATd2DZJIViq2es6m60AE6SMCmrQF wmk4H/kdQgeAELVfGOm2VyJ3z69fQuywz7xu27S6zTKi05Qlnohxol4wVb6OB7qG LPRtK9ObgzRo/OPumyXqlzAi/Yvyd1ZQk8labZps3e16bQp8+pVPiumWioMFJDWV GZjCmyMSU8V6MB6njbgLHoyg2LCukCAeSjbPGGGYhnKLm1AKSoJh3IpZuqcKCk5C 8CM1S15HxV78s9dFntEqIokCAwEAAQ== -----END PUBLIC KEY----- -----BEGIN PUBLIC KEY----- MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtfB12w4ZgqsXWZDfUAV/ 6Y4aHUKIu3q4SXrNZ7CXF9nXoAVYrS7NAxJdAodsY3vPCN0g5O8DFXR+390LdOuQ +HsGKCc1k5tX5ZXld37EZNTNSbR0k+NKhd9h6X3u6wqPOx7SIKxwAQR8qeeFq4pP rt9GAGlxtuYgzIIcKJPwE0dZlcBCg+GnptCUZXp/38BP1eYC+xTXSL6Muq1etYfg odXdb7Yl+2h1IHuOwo5rjgY5kpY7GcAs8AjGk3lDD/av60OTYccknH0NCVSmPoXK vrxDBOn0LQRNBLcAfnTKgHrzy0Q5h4TNkkyTgxkoQw5ObDk9nnabTxql732yy9BY s+hM9+dSFO1HKeVXreYSA2n1ndF18YAvAumzgyqzB7I4pMHXq1kC/8bONMJxwSkS Ym6CoXKyavp7RqGMyeVpRC7tV+blkrrUml0BwNkxE+XnwDRB3xDV6hqgWe0XrifD YTfvd9ScZQP83ip0r4IKlq4GMv/R5shcCRJSkSZ6QSGshH40JYSoiwJf5FHbj9ND 7do0UAqebWo4yNx63j/wb2ULorW3AClv0BCFSdPsIrCStiGdpgJDBR2P2NZOCob3 G9uMj+wJD6JJg2nWqNJxkANXX37Qf8plgzssrhrgOvB0fjjS7GYhfkfmZTJ0wPOw A8+KzFseBh4UFGgue78KwgkCAwEAAQ== -----END PUBLIC KEY----- 3.24.1 Welcome to Alpine Linux 3.24 Kernel \r on \m (\l) https://secdb.alpinelinux.org/v3.24/main.json https://secdb.alpinelinux.org/v3.24/community.json NAME="Alpine Linux" ID=alpine VERSION_ID=3.24.1 PRETTY_NAME="Alpine Linux v3.24" HOME_URL="https://alpinelinux.org/" BUG_REPORT_URL="https://gitlab.alpinelinux.org/alpine/aports/-/issues" # This file specifies the Certificate Transparency logs # that are to be trusted. # Google's list of logs can be found here: # www.certificate-transparency.org/known-logs # A Python program to convert the log list to OpenSSL's format can be # found here: # https://github.com/google/certificate-transparency/blob/master/python/utilities/log_list/print_log_list.py # Use the "--openssl_output" flag. # This file specifies the Certificate Transparency logs # that are to be trusted. # Google's list of logs can be found here: # www.certificate-transparency.org/known-logs # A Python program to convert the log list to OpenSSL's format can be # found here: # https://github.com/google/certificate-transparency/blob/master/python/utilities/log_list/print_log_list.py # Use the "--openssl_output" flag. # # OpenSSL example configuration file. # See doc/man5/config.pod for more info. # # This is mostly being used for generation of certificate requests, # but may be used for auto loading of providers # Note that you can include other files from the main configuration # file using the .include directive. #.include filename # This definition stops the following lines choking if HOME isn't # defined. HOME = . # Use this in order to automatically load providers. openssl_conf = openssl_init # Comment out the next line to ignore configuration errors config_diagnostics = 1 # Extra OBJECT IDENTIFIER info: # oid_file = $ENV::HOME/.oid oid_section = new_oids # To use this configuration file with the "-extfile" option of the # "openssl x509" utility, name here the section containing the # X.509v3 extensions to use: # extensions = # (Alternatively, use a configuration file that has only # X.509v3 extensions in its main [= default] section.) [ new_oids ] # We can add new OIDs in here for use by 'ca', 'req' and 'ts'. # Add a simple OID like this: # testoid1=1.2.3.4 # Or use config file substitution like this: # testoid2=${testoid1}.5.6 # Policies used by the TSA examples. tsa_policy1 = 1.2.3.4.1 tsa_policy2 = 1.2.3.4.5.6 tsa_policy3 = 1.2.3.4.5.7 # For FIPS # Optionally include a file that is generated by the OpenSSL fipsinstall # application. This file contains configuration data required by the OpenSSL # fips provider. It contains a named section e.g. [fips_sect] which is # referenced from the [provider_sect] below. # Refer to the OpenSSL security policy for more information. # .include fipsmodule.cnf [openssl_init] providers = provider_sect # List of providers to load [provider_sect] default = default_sect # The fips section name should match the section name inside the # included fipsmodule.cnf. # fips = fips_sect # If no providers are activated explicitly, the default one is activated implicitly. # See man 7 OSSL_PROVIDER-default for more details. # # If you add a section explicitly activating any other provider(s), you most # probably need to explicitly activate the default provider, otherwise it # becomes unavailable in openssl. As a consequence applications depending on # OpenSSL may not work correctly which could lead to significant system # problems including inability to remotely access the system. [default_sect] # activate = 1 #################################################################### [ ca ] default_ca = CA_default # The default ca section #################################################################### [ CA_default ] dir = ./demoCA # Where everything is kept certs = $dir/certs # Where the issued certs are kept crl_dir = $dir/crl # Where the issued crl are kept database = $dir/index.txt # database index file. #unique_subject = no # Set to 'no' to allow creation of # several certs with same subject. new_certs_dir = $dir/newcerts # default place for new certs. certificate = $dir/cacert.pem # The CA certificate serial = $dir/serial # The current serial number crlnumber = $dir/crlnumber # the current crl number # must be commented out to leave a V1 CRL crl = $dir/crl.pem # The current CRL private_key = $dir/private/cakey.pem # The private key x509_extensions = usr_cert # The extensions to add to the cert # Comment out the following two lines for the "traditional" # (and highly broken) format. name_opt = ca_default # Subject Name options cert_opt = ca_default # Certificate field options # Extension copying option: use with caution. # copy_extensions = copy # Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs # so this is commented out by default to leave a V1 CRL. # crlnumber must also be commented out to leave a V1 CRL. # crl_extensions = crl_ext default_days = 365 # how long to certify for default_crl_days= 30 # how long before next CRL default_md = default # use public key default MD preserve = no # keep passed DN ordering # A few difference way of specifying how similar the request should look # For type CA, the listed attributes must be the same, and the optional # and supplied fields are just that :-) policy = policy_match # For the CA policy [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional # For the 'anything' policy # At this point in time, you must list all acceptable 'object' # types. [ policy_anything ] countryName = optional stateOrProvinceName = optional localityName = optional organizationName = optional organizationalUnitName = optional commonName = supplied emailAddress = optional #################################################################### [ req ] default_bits = 2048 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca # The extensions to add to the self signed cert # Passwords for private keys if not present they will be prompted for # input_password = secret # output_password = secret # This sets a mask for permitted string types. There are several options. # default: PrintableString, T61String, BMPString. # pkix : PrintableString, BMPString (PKIX recommendation before 2004) # utf8only: only UTF8Strings (PKIX recommendation after 2004). # nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings). # MASK:XXXX a literal mask value. # WARNING: ancient versions of Netscape crash on BMPStrings or UTF8Strings. string_mask = utf8only # req_extensions = v3_req # The extensions to add to a certificate request [ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = AU countryName_min = 2 countryName_max = 2 stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = Some-State localityName = Locality Name (eg, city) 0.organizationName = Organization Name (eg, company) 0.organizationName_default = Internet Widgits Pty Ltd # we can do this but it is not needed normally :-) #1.organizationName = Second Organization Name (eg, company) #1.organizationName_default = World Wide Web Pty Ltd organizationalUnitName = Organizational Unit Name (eg, section) #organizationalUnitName_default = commonName = Common Name (e.g. server FQDN or YOUR name) commonName_max = 64 emailAddress = Email Address emailAddress_max = 64 # SET-ex3 = SET extension number 3 [ req_attributes ] challengePassword = A challenge password challengePassword_min = 4 challengePassword_max = 20 unstructuredName = An optional company name [ usr_cert ] # These extensions are added when 'ca' signs a request. # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # An alternative to produce certificates that aren't # deprecated according to PKIX. # subjectAltName=email:move # Copy subject details # issuerAltName=issuer:copy # This is required for TSA certificates. # extendedKeyUsage = critical,timeStamping [ v3_req ] # Extensions to add to a certificate request basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] # Extensions for a typical CA # PKIX recommendation. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer basicConstraints = critical,CA:true # Key usage: this is typical for a CA certificate. However since it will # prevent it being used as an test self-signed certificate it is best # left out by default. # keyUsage = cRLSign, keyCertSign # Include email address in subject alt name: another PKIX recommendation # subjectAltName=email:copy # Copy issuer details # issuerAltName=issuer:copy # DER hex encoding of an extension: beware experts only! # obj=DER:02:03 # Where 'obj' is a standard or added object # You can even override a supported extension: # basicConstraints= critical, DER:30:03:01:01:FF [ crl_ext ] # CRL extensions. # Only issuerAltName and authorityKeyIdentifier make any sense in a CRL. # issuerAltName=issuer:copy authorityKeyIdentifier=keyid:always [ proxy_cert_ext ] # These extensions should be added when creating a proxy certificate # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # An alternative to produce certificates that aren't # deprecated according to PKIX. # subjectAltName=email:move # Copy subject details # issuerAltName=issuer:copy # This really needs to be in place for it to be a proxy certificate. proxyCertInfo=critical,language:id-ppl-anyLanguage,pathlen:3,policy:foo #################################################################### [ tsa ] default_tsa = tsa_config1 # the default TSA section [ tsa_config1 ] # These are used by the TSA reply generation only. dir = ./demoCA # TSA root directory serial = $dir/tsaserial # The current serial number (mandatory) crypto_device = builtin # OpenSSL engine to use for signing signer_cert = $dir/tsacert.pem # The TSA signing certificate # (optional) certs = $dir/cacert.pem # Certificate chain to include in reply # (optional) signer_key = $dir/private/tsakey.pem # The TSA private key (optional) signer_digest = sha256 # Signing digest to use. (Optional) default_policy = tsa_policy1 # Policy if request did not specify it # (optional) other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional) digests = sha1, sha256, sha384, sha512 # Acceptable message digests (mandatory) accuracy = secs:1, millisecs:500, microsecs:100 # (optional) clock_precision_digits = 0 # number of digits after dot. (optional) ordering = yes # Is ordering defined for timestamps? # (optional, default: no) tsa_name = yes # Must the TSA name be included in the reply? # (optional, default: no) ess_cert_id_chain = no # Must the ESS cert id chain be included? # (optional, default: no) ess_cert_id_alg = sha256 # algorithm to compute certificate # identifier (optional, default: sha256) [insta] # CMP using Insta Demo CA # Message transfer server = pki.certificate.fi:8700 # proxy = # set this as far as needed, e.g., http://192.168.1.1:8080 # tls_use = 0 path = pkix/ # Server authentication recipient = "/C=FI/O=Insta Demo/CN=Insta Demo CA" # or set srvcert or issuer ignore_keyusage = 1 # quirk needed to accept Insta CA cert not including digitalsignature unprotected_errors = 1 # quirk needed to accept negative responses possibly not protected extracertsout = insta.extracerts.pem # Client authentication ref = 3078 # user identification secret = pass:insta # can be used for both client and server side # Generic message options cmd = ir # default operation, can be overridden on cmd line with, e.g., kur # Certificate enrollment subject = "/CN=openssl-cmp-test" newkey = insta.priv.pem out_trusted = apps/insta.ca.crt # does not include keyUsage digitalSignature certout = insta.cert.pem [pbm] # Password-based protection for Insta CA # Server and client authentication ref = $insta::ref # 3078 secret = $insta::secret # pass:insta [signature] # Signature-based protection for Insta CA # Server authentication trusted = $insta::out_trusted # apps/insta.ca.crt # Client authentication secret = # disable PBM key = $insta::newkey # insta.priv.pem cert = $insta::certout # insta.cert.pem [ir] cmd = ir [cr] cmd = cr [kur] # Certificate update cmd = kur oldcert = $insta::certout # insta.cert.pem [rr] # Certificate revocation cmd = rr oldcert = $insta::certout # insta.cert.pem # # OpenSSL example configuration file. # See doc/man5/config.pod for more info. # # This is mostly being used for generation of certificate requests, # but may be used for auto loading of providers # Note that you can include other files from the main configuration # file using the .include directive. #.include filename # This definition stops the following lines choking if HOME isn't # defined. HOME = . # Use this in order to automatically load providers. openssl_conf = openssl_init # Comment out the next line to ignore configuration errors config_diagnostics = 1 # Extra OBJECT IDENTIFIER info: # oid_file = $ENV::HOME/.oid oid_section = new_oids # To use this configuration file with the "-extfile" option of the # "openssl x509" utility, name here the section containing the # X.509v3 extensions to use: # extensions = # (Alternatively, use a configuration file that has only # X.509v3 extensions in its main [= default] section.) [ new_oids ] # We can add new OIDs in here for use by 'ca', 'req' and 'ts'. # Add a simple OID like this: # testoid1=1.2.3.4 # Or use config file substitution like this: # testoid2=${testoid1}.5.6 # Policies used by the TSA examples. tsa_policy1 = 1.2.3.4.1 tsa_policy2 = 1.2.3.4.5.6 tsa_policy3 = 1.2.3.4.5.7 # For FIPS # Optionally include a file that is generated by the OpenSSL fipsinstall # application. This file contains configuration data required by the OpenSSL # fips provider. It contains a named section e.g. [fips_sect] which is # referenced from the [provider_sect] below. # Refer to the OpenSSL security policy for more information. # .include fipsmodule.cnf [openssl_init] providers = provider_sect # List of providers to load [provider_sect] default = default_sect # The fips section name should match the section name inside the # included fipsmodule.cnf. # fips = fips_sect # If no providers are activated explicitly, the default one is activated implicitly. # See man 7 OSSL_PROVIDER-default for more details. # # If you add a section explicitly activating any other provider(s), you most # probably need to explicitly activate the default provider, otherwise it # becomes unavailable in openssl. As a consequence applications depending on # OpenSSL may not work correctly which could lead to significant system # problems including inability to remotely access the system. [default_sect] # activate = 1 #################################################################### [ ca ] default_ca = CA_default # The default ca section #################################################################### [ CA_default ] dir = ./demoCA # Where everything is kept certs = $dir/certs # Where the issued certs are kept crl_dir = $dir/crl # Where the issued crl are kept database = $dir/index.txt # database index file. #unique_subject = no # Set to 'no' to allow creation of # several certs with same subject. new_certs_dir = $dir/newcerts # default place for new certs. certificate = $dir/cacert.pem # The CA certificate serial = $dir/serial # The current serial number crlnumber = $dir/crlnumber # the current crl number # must be commented out to leave a V1 CRL crl = $dir/crl.pem # The current CRL private_key = $dir/private/cakey.pem # The private key x509_extensions = usr_cert # The extensions to add to the cert # Comment out the following two lines for the "traditional" # (and highly broken) format. name_opt = ca_default # Subject Name options cert_opt = ca_default # Certificate field options # Extension copying option: use with caution. # copy_extensions = copy # Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs # so this is commented out by default to leave a V1 CRL. # crlnumber must also be commented out to leave a V1 CRL. # crl_extensions = crl_ext default_days = 365 # how long to certify for default_crl_days= 30 # how long before next CRL default_md = default # use public key default MD preserve = no # keep passed DN ordering # A few difference way of specifying how similar the request should look # For type CA, the listed attributes must be the same, and the optional # and supplied fields are just that :-) policy = policy_match # For the CA policy [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional # For the 'anything' policy # At this point in time, you must list all acceptable 'object' # types. [ policy_anything ] countryName = optional stateOrProvinceName = optional localityName = optional organizationName = optional organizationalUnitName = optional commonName = supplied emailAddress = optional #################################################################### [ req ] default_bits = 2048 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca # The extensions to add to the self signed cert # Passwords for private keys if not present they will be prompted for # input_password = secret # output_password = secret # This sets a mask for permitted string types. There are several options. # default: PrintableString, T61String, BMPString. # pkix : PrintableString, BMPString (PKIX recommendation before 2004) # utf8only: only UTF8Strings (PKIX recommendation after 2004). # nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings). # MASK:XXXX a literal mask value. # WARNING: ancient versions of Netscape crash on BMPStrings or UTF8Strings. string_mask = utf8only # req_extensions = v3_req # The extensions to add to a certificate request [ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = AU countryName_min = 2 countryName_max = 2 stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = Some-State localityName = Locality Name (eg, city) 0.organizationName = Organization Name (eg, company) 0.organizationName_default = Internet Widgits Pty Ltd # we can do this but it is not needed normally :-) #1.organizationName = Second Organization Name (eg, company) #1.organizationName_default = World Wide Web Pty Ltd organizationalUnitName = Organizational Unit Name (eg, section) #organizationalUnitName_default = commonName = Common Name (e.g. server FQDN or YOUR name) commonName_max = 64 emailAddress = Email Address emailAddress_max = 64 # SET-ex3 = SET extension number 3 [ req_attributes ] challengePassword = A challenge password challengePassword_min = 4 challengePassword_max = 20 unstructuredName = An optional company name [ usr_cert ] # These extensions are added when 'ca' signs a request. # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # An alternative to produce certificates that aren't # deprecated according to PKIX. # subjectAltName=email:move # Copy subject details # issuerAltName=issuer:copy # This is required for TSA certificates. # extendedKeyUsage = critical,timeStamping [ v3_req ] # Extensions to add to a certificate request basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] # Extensions for a typical CA # PKIX recommendation. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer basicConstraints = critical,CA:true # Key usage: this is typical for a CA certificate. However since it will # prevent it being used as an test self-signed certificate it is best # left out by default. # keyUsage = cRLSign, keyCertSign # Include email address in subject alt name: another PKIX recommendation # subjectAltName=email:copy # Copy issuer details # issuerAltName=issuer:copy # DER hex encoding of an extension: beware experts only! # obj=DER:02:03 # Where 'obj' is a standard or added object # You can even override a supported extension: # basicConstraints= critical, DER:30:03:01:01:FF [ crl_ext ] # CRL extensions. # Only issuerAltName and authorityKeyIdentifier make any sense in a CRL. # issuerAltName=issuer:copy authorityKeyIdentifier=keyid:always [ proxy_cert_ext ] # These extensions should be added when creating a proxy certificate # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # An alternative to produce certificates that aren't # deprecated according to PKIX. # subjectAltName=email:move # Copy subject details # issuerAltName=issuer:copy # This really needs to be in place for it to be a proxy certificate. proxyCertInfo=critical,language:id-ppl-anyLanguage,pathlen:3,policy:foo #################################################################### [ tsa ] default_tsa = tsa_config1 # the default TSA section [ tsa_config1 ] # These are used by the TSA reply generation only. dir = ./demoCA # TSA root directory serial = $dir/tsaserial # The current serial number (mandatory) crypto_device = builtin # OpenSSL engine to use for signing signer_cert = $dir/tsacert.pem # The TSA signing certificate # (optional) certs = $dir/cacert.pem # Certificate chain to include in reply # (optional) signer_key = $dir/private/tsakey.pem # The TSA private key (optional) signer_digest = sha256 # Signing digest to use. (Optional) default_policy = tsa_policy1 # Policy if request did not specify it # (optional) other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional) digests = sha1, sha256, sha384, sha512 # Acceptable message digests (mandatory) accuracy = secs:1, millisecs:500, microsecs:100 # (optional) clock_precision_digits = 0 # number of digits after dot. (optional) ordering = yes # Is ordering defined for timestamps? # (optional, default: no) tsa_name = yes # Must the TSA name be included in the reply? # (optional, default: no) ess_cert_id_chain = no # Must the ESS cert id chain be included? # (optional, default: no) ess_cert_id_alg = sha256 # algorithm to compute certificate # identifier (optional, default: sha256) [insta] # CMP using Insta Demo CA # Message transfer server = pki.certificate.fi:8700 # proxy = # set this as far as needed, e.g., http://192.168.1.1:8080 # tls_use = 0 path = pkix/ # Server authentication recipient = "/C=FI/O=Insta Demo/CN=Insta Demo CA" # or set srvcert or issuer ignore_keyusage = 1 # quirk needed to accept Insta CA cert not including digitalsignature unprotected_errors = 1 # quirk needed to accept negative responses possibly not protected extracertsout = insta.extracerts.pem # Client authentication ref = 3078 # user identification secret = pass:insta # can be used for both client and server side # Generic message options cmd = ir # default operation, can be overridden on cmd line with, e.g., kur # Certificate enrollment subject = "/CN=openssl-cmp-test" newkey = insta.priv.pem out_trusted = apps/insta.ca.crt # does not include keyUsage digitalSignature certout = insta.cert.pem [pbm] # Password-based protection for Insta CA # Server and client authentication ref = $insta::ref # 3078 secret = $insta::secret # pass:insta [signature] # Signature-based protection for Insta CA # Server authentication trusted = $insta::out_trusted # apps/insta.ca.crt # Client authentication secret = # disable PBM key = $insta::newkey # insta.priv.pem cert = $insta::certout # insta.cert.pem [ir] cmd = ir [cr] cmd = cr [kur] # Certificate update cmd = kur oldcert = $insta::certout # insta.cert.pem [rr] # Certificate revocation cmd = rr oldcert = $insta::certout # insta.cert.pem ELF>@0@8 @.. dd.>>` . > >00$$Std00Ptd QtdRtd.>> GNUGNUS5>?OST9cw|7 F   ^  t _ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infobind_enginev_check?????>@PXH=/H/H9tH/Ht H=/H5/H)HH?HHHtH}/HtfD=/uGUH=F/Ht H=b/4/gH=//t H=f /Y/]@ff.H=/t&UH5N/H='H.]8+1HHH%PX;8LzRx 0  +>>o( px  o $#% >@capi.so.debugX!nx.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.rela.dyn.relr.dyn.init.text.fini.eh_frame_hdr.eh_frame.init_array.fini_array.dynamic.got.data.bss.gnu_debuglink 0$1o(; ((CKppxU_ek++q  D>.>. > .?/@@0 @0P 00ELF>F@01@8 @@@@lll  p,p<p<0,<<@@00HHH$$Std00Ptd| | | 44QtdRtdp,p<p< GNU GNUS8q5/lib/ld-musl-x86_64.so.1$D$%&9 -"f<=.#C a_ syIOE]  |< @poll__register_frame_info__errno_location__cxa_finalizestrlen_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__stack_chk_failatoi__deregister_frame_infoSSL_connectSSL_set1_hostSSL_CTX_set_default_verify_pathsTLS_client_methodOPENSSL_init_sslSSL_CTX_newSSL_set_hostflagsSSL_set_fdSSL_set_verifySSL_newSSL_writeSSL_get_errorSSL_readSSL_CTX_freeSSL_ctrlstderrERR_print_errors_fpERR_clear_errorexitprintfgetoptoptarg_init_finierrx__libc_start_mainlibssl.so.3libcrypto.so.3libc.musl-x86_64.so.1OPENSSL_3.0.0 +p +p>>>???? ?(? 0? 8? @? H? P?X?`?h?p?x????????????? ?!?"?#<% @'>p<PX5.%.@%.hAWAVE1AUAATAU1SH(dH%(H\$HHHDh/tQnt3It=ht#?uҾ$suH=/ 8 ` oo oo $ #%<&@GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9o8C K#So P`o @o8 8 `yB  ~ 002 z| | 4 p<p,x<x,<,<,@>.0@0 @0 00$0#!/bin/sh poweroff # enter the cron options CRON_OPTS="-c /etc/crontabs" KLOGD_OPTS="" # Absolut path to the keymap which should be loaded using loadkmap. #KEYMAP="/usr/share/keymaps/xkb/us.map.gz" # By default ntpd runs as a client. Add -l to run as a server on port 123. NTPD_OPTS="-N -p pool.ntp.org" # Set the ntp server here NTP_HOST=pool.ntp.org SYSLOGD_OPTS="-t" #WATCHDOG_OPTS="-t 30" WATCHDOG_DEV="" #!/sbin/openrc-run name="busybox acpid" command="/sbin/acpid" command_args="$ACPID_OPTS -f" pidfile="/run/acpid.pid" command_background=true start_stop_daemon_args="-g wheel -k 027" depend() { need dev localmount after hwdrivers modules keyword -vserver -lxc } #!/sbin/openrc-run name="busybox $RC_SVCNAME" command="/usr/sbin/$SVCNAME" pidfile="/run/$RC_SVCNAME.pid" command_args="$CRON_OPTS -f" command_background=true depend() { need localmount need logger } #!/sbin/openrc-run name="busybox klogd" command="/sbin/klogd" command_args="${KLOGD_OPTS} -n" command_user="klogd" pidfile="/run/klogd.pid" command_background=true capabilities="^cap_syslog" depend() { need clock hostname localmount logger before net keyword -vserver -lxc } #!/sbin/openrc-run description="Applies a keymap for the consoles." depend() { provide keymaps need localmount keyword -openvz -prefix -uml -vserver -xenu -lxc } start() { [ -z "$KEYMAP" ] && return 0 ebegin "Setting keymap" zcat "$KEYMAP" | loadkmap eend $? } stop() { return 0 } #!/sbin/openrc-run name="busybox $RC_SVCNAME" command="/usr/sbin/$RC_SVCNAME" command_args="${NTPD_OPTS:--N -p pool.ntp.org} -n" command_user="ntp" pidfile="/run/$SVCNAME.pid" command_background=true capabilities="^cap_sys_time,^cap_net_bind_service" depend() { need net provide ntp-client use dns } #!/sbin/openrc-run depend() { need net after firewall keyword -vserver -lxc } start() { if [ -z "$NTP_HOST" ] ; then eerror "Please set NTP_HOST in /etc/conf.d/rdate" return 1 fi ebegin "Running busybox rdate" rdate "$NTP_HOST" eend $? } #!/sbin/openrc-run description="Message logging system" name="busybox syslog" command="/sbin/syslogd" command_args="${SYSLOGD_OPTS} -n" pidfile="/run/syslogd.pid" command_background=true start_stop_daemon_args="-g wheel -k 027" depend() { need clock hostname localmount provide logger } #!/sbin/openrc-run name="busybox watchdog" command="/sbin/watchdog" command_args="${WATCHDOG_OPTS} -F ${WATCHDOG_DEV}" pidfile="/run/watchdog.pid" command_background=true depend() { need dev after hwdrivers } start_pre() { if ! [ -n "$WATCHDOG_DEV" ]; then eerror "WATCHDOG_DEV is not set" return 1 fi } ELF>@1@8 @@@@lll -==`h-h=h=00HHH$$Std00Ptd ,,QtdRtd-== GNUGNUކ0V:U@s/lib/ld-musl-x86_64.so.1@V"eC6 =' .jq J P execvstrrchrperror__stack_chk_failunlinksymlinkmalloclstatgetuid_init_fini__cxa_finalizeerrxstrcmp__libc_start_mainfreelibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_infox????????? ? ? ? ? ????p?=PX5J/%L/@%J/hAVAUAATL%,USHH>dH,%(H$HH5HHp/AH}H5xM/Åun.L%r,H5bu]I,$HHt$H.uD$ %=u H.HH=;.=IH5,1e.HIILH.t I<$HuHH5 1!.H$dH+%(u0HĠHDH[]A\A]A^H$dH+%(t-HĠ[]A\A]A^H1HH5+H7HWLE1H H=:%DH=.H-H9tH-Ht H=-H5-H)HH?HHHtH]-HtfD=-uGUH=,Ht H=r-,gH=-t H=-i-]@ff.H=-t&UH5^-H=H,]8+S/H,HtHXH[AVIAUIATAUnHcSHHR,HH LkH1HA9~ IHT1HHD+H;Q,H;+Hg,[]A\A]A^PX/bin/busybox--installOnly root can install symlinks/bin/bbsuidUse --install to install symlinks%s is not a valid applet/bin/mount/bin/umount/bin/su/usr/bin/crontab/usr/bin/passwd/usr/bin/traceroute/usr/bin/traceroute6/usr/bin/vlock;,H8 p*zRx $ FJ w?;*3$"DA[8`}BEE D(G0Y(F BBBThBBE H(A0G8 0J(A BBBE `0C(A BBBp}   ==o  X?P o$h#%h=&@GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9o,C KS]BPPghhqb w00o}2  ,(!(!=-=- = -H h=h-X?X/@0 @0P 00$0#!/bin/sh scan_dirs() { scanelf -qS "$@" | while read SONAME FILE; do TARGET="${FILE##*/}" LINK="${FILE%/*}/$SONAME" case "$FILE" in /lib/*|/usr/lib/*|/usr/local/lib/*) ;; *) [ -h "$LINK" -o ! -e "$LINK" ] && ln -sf "$TARGET" "$LINK" esac done return 0 } # eat ldconfig options while getopts "nNvXvf:C:r:" opt; do : done shift $(( $OPTIND - 1 )) [ $# -eq 0 ] || scan_dirs "$@" ELF>@1@8 @@@@lll hh P-P=P=@x-x=x=00HHH$$Std00Ptd!!!QtdRtdP-P=P= GNUGNUNu}X9:U/lib/ld-musl-x86_64.so.1!\)fUa92$")  _# Q@? X`=y :h=rp=k @(@ eexitsetlocalefopenoptindperrorputs__stack_chk_failstdin__errno_locationgetoptstdoutnl_langinfooptargstderr_initfwritefreadfprintf_finiiconviconv_open__cxa_finalizememmove__libc_start_mainferrorlibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_infoP=0X=@@X?`?h?p?x????? ? ? ? ? ????????`=h=p= @(@P?PX5*/%,/@%*/hAWAVAUATUSHH $H11dL4%(L$IAH6LDM/tBlt,ct܃fH/ʃstŃtuyH-q/H=H.1dHteHt`HH.HD$HHH5.H=s,HuhHH51t.H=?..1H5.HuU.HHu>.HbHH5a떋.D9uIcH eAI 11T$ A9HHI<ƀ?-uuH 7L-+I H5+-IH1HL$PH$L$HD$HL$HD$@HD$PL|$HH)H<H=v L{-HD$PHD$ PH|$HL$HHT$PHD$`Ht$@LD$`k-Hl-8THuvL$H5HD$<0LL$XLL$(,HT$ +D$ J,B,H$dH+%(t|+D$ HĘ[]A\A]A^A_H1HH5Q)H7HWL(E1H H=f.H=+H+H9tH>+Ht H=q+H5j+H)HH?HHHtH*HtfD=i+uGUH=*Ht H=+|*gH=*t H=n *)+]@ff.H=*t&UH5+H=/ H*]8+PXUTF-8, UTF-16BE, UTF-16LE, UTF-32BE, UTF32-LE, UCS-2BE, UCS-2LE, WCHAR_T, US_ASCII, ISO8859-1, ISO8859-2, ISO8859-3, ISO8859-4, ISO8859-5, ISO8859-6, ISO8859-7, ...f:t:cslWCHAR_Ticonv: destination charset %s: iconv: source charset %s: -(stdin)rbiconv: %s: iconv: write error;4\zRx $ FJ w?;*3$"LDBBB B(A0A8G L)8A0A(B BBB0  eP=X=o U 8?  oox=&@GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9o@C KUS]B gb m005seey2 !!8!8!P=P-X=X-`=`- x=x-8?8/@0 @0p 00$0#!/bin/sh exec /lib/ld-musl-x86_64.so.1 --list "$@" # See chrony.conf(5) for more information about usable directives. # Include configuration files with the ".conf" suffic from /etc/chrony/conf.d. confdir /etc/chrony/conf.d # Use four public NTP servers from the pool.ntp.org project. If this # host has a static public IP address, please consider joining the pool: # https://www.ntppool.org/join.html pool pool.ntp.org iburst # Include configuration files with the ".sources" suffix from # /etc/chrony/sources.d. They can only contain the "peer", "pool" and "server" # directives and must have all lines terminated by a newline. sourcedir /etc/chrony/sources.d # Specify file containing keys for NTP authentication. # keyfile /etc/chrony/chrony.keys # Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/chrony.drift # Save NTS keys and cookies. ntsdumpdir /var/lib/chrony # Uncomment the following line to turn logging on. # log measurements statistics tracking # Specify directory for log files. logdir /var/log/chrony # Stop bad estimates upsetting machine clock. maxupdateskew 100.0 # Enable kernel synchronisation (every 11 minutes) of the real-time clock. # Note that it can't be used along with the 'rtcfile' directive. rtcsync # Step the system clock instead of slewing it if the adjustment is larger than # one second, but only in the first three clock updates. makestep 1.0 3 # Disable UDP command port - no remote chronyc access and no UDP access for # unprivileged users; control remains available via the Unix socket. cmdport 0 /var/log/chrony/*.log { missingok nocreate sharedscripts postrotate /usr/bin/chronyc cyclelogs > /dev/null 2>&1 || true endscript } # Configuration for /etc/conf.d/chronyd #cfgfile="/etc/chrony/chrony.conf" # chronyd takes some time to perform a second fork, by enabling this # option chronyd is deamonized through start-stop-daemon(1) thereby # significantly reducing the startup time. #FAST_STARTUP=no # Configuration dependant options : # -s - Set system time from RTC if rtcfile directive present. # -r - Reload sample histories if dumponexit directive present. # # The combination of "-s -r" allows chronyd to perform long term averaging of # the gain or loss rate across system reboots and shutdowns. #command_args="" # vrf e.g 'vrf-mgmt' #vrf="" #!/sbin/openrc-run description="NTP daemon" # CFGFILE is here for backward compatibility only (Alpine <3.24). : ${cfgfile:="${CFGFILE:-/etc/chrony/chrony.conf}"} command="/usr/sbin/chronyd" # ARGS is here for backward compatibility only (Alpine <3.24). command_args="-f $cfgfile -F 1 $command_args $ARGS" pidfile="/run/chrony/chronyd.pid" required_files="$cfgfile" depend() { need net after firewall provide ntp-client ntp-server use dns } start_pre() { if [ -c /dev/rtc ]; then grep -q '^rtcfile' "$cfgfile" && command_args="$command_args -s" fi grep -q '^dumponexit$' "$cfgfile" && command_args="$command_args -r" if yesno "${FAST_STARTUP:-no}"; then # this option makes it stay in foreground and let openrc do the tracking, # so we have to set pidfile to a dir that exists earlier. # the reason this is not the default is because there is no 'readiness', # self-backgrounding chrony waits for time to sync before continuing, # and this form does not. command_args="$command_args -n" command_background=true pidfile=/run/chronyd.pid fi if [ -n "$vrf" ]; then command_args="vrf exec $vrf $command $command_args" command=ip fi } # A sample configuration for dhcpcd. # See dhcpcd.conf(5) for details. # Allow users of this group to interact with dhcpcd via the control socket. #controlgroup wheel # Inform the DHCP server of our hostname for DDNS. #hostname # Use the hardware address of the interface for the Client ID. #clientid # or # Use the same DUID + IAID as set in DHCPv6 for DHCPv4 ClientID as per RFC4361. # Some non-RFC compliant DHCP servers do not reply with this set. # In this case, comment out duid and enable clientid above. duid # Persist interface configuration when dhcpcd exits. persistent # vendorclassid is set to blank to avoid sending the default of # dhcpcd-::: vendorclassid # A list of options to request from the DHCP server. option domain_name_servers, domain_name, domain_search option static_routes, classless_static_routes # Respect the network MTU. This is applied to DHCP routes. option interface_mtu # Request a hostname from the network option host_name # Most distributions have NTP support. #option ntp_servers # A ServerID is required by RFC2131. require dhcp_server_identifier # Generate SLAAC address using the Hardware Address of the interface #slaac hwaddr # OR generate Stable Private IPv6 Addresses based from the DUID slaac private ELF>@@8 @ II0E0E0E:; { { {00$$Std00Ptdl l QtdRtd0E0E0E:: GNU GNUn7'ձ~ogAu[_@_ĕS^ dt7 B1-s7"q\mM 3?[) |~LfX`9X{mNCD*%&1I qF  &*_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infogetenvOSSL_PARAM_locateOSSL_PARAM_set_utf8_ptrOSSL_PARAM_set_intOSSL_LIB_CTX_freeOSSL_provider_initOSSL_LIB_CTX_new_child__stack_chk_failCRYPTO_mallocCRYPTO_clear_freeCRYPTO_zallocBF_cbc_encryptBF_set_keyBF_ecb_encryptBF_ofb64_encryptBF_cfb64_encryptCAST_cbc_encryptCAST_set_keyCAST_ecb_encryptCAST_ofb64_encryptCAST_cfb64_encryptRAND_priv_bytes_exDES_set_odd_parityDES_ecb_encryptDES_set_key_uncheckedDES_ofb64_encryptDES_cfb64_encryptDES_cfb_encryptDES_xcbc_encryptOSSL_PARAM_locate_constOSSL_PARAM_get_size_td2i_ASN1_TYPEASN1_TYPE_get_int_octetstringASN1_TYPE_freeOSSL_PARAM_set_size_tASN1_TYPE_newASN1_TYPE_set_int_octetstringi2d_ASN1_TYPERC2_cbc_encryptRC2_set_keyRC2_ecb_encryptRC2_ofb64_encryptRC2_cfb64_encryptOSSL_PARAM_get_uintCRYPTO_memdupMD4_InitMD4_FinalMD4_UpdateRIPEMD160_InitRIPEMD160_FinalRIPEMD160_UpdateWHIRLPOOL_InitWHIRLPOOL_FinalWHIRLPOOL_UpdateOSSL_PARAM_get_octet_stringOSSL_PARAM_get_uint64EVP_MD_CTX_newEVP_DigestInit_exEVP_DigestUpdateEVP_DigestFinal_exEVP_MD_get_sizeEVP_MD_CTX_freeCRYPTO_freeOSSL_PARAM_construct_utf8_stringENGINE_finishENGINE_by_idENGINE_initENGINE_freeEVP_CIPHER_freeEVP_CIPHER_up_refEVP_CIPHER_fetchEVP_get_cipherbynameEVP_MD_freeEVP_MD_up_refEVP_MD_fetchEVP_get_digestbynameOSSL_PARAM_construct_octet_stringOSSL_PARAM_construct_endEVP_MAC_CTX_set_paramsEVP_MAC_fetchEVP_MAC_CTX_freeEVP_MAC_CTX_newEVP_MAC_freeOSSL_PARAM_modifiedstrcmpOPENSSL_strcasecmpOSSL_PARAM_set_uintOSSL_PARAM_set_octet_ptrOSSL_PARAM_set_octet_stringRAND_bytes_exlibcrypto.so.3libc.musl-x86_64.so.1OPENSSL_3.0.3OPENSSL_3.0.0#+p +pXyy?zH(}0}8}@}H}P}X}`}h} p} x} } } }}}}}}}}}}}}}}~~~~ ~!(~"0~#8~$@~%H~&P~'X~(`~)h~*p~+x~,~-~.~/~0~1~2~3~4~5~6~7~8~9~:~;~<=>@A B(C0D8E@FHGPIXJ`KhLpMxNOPQRSTUVWXYZ[\]^0EB!333g!ww!!!BAlC! !!B@UUB!B!@!! !B!!BݻUU UUUAUUUUPUUUUUUUAUUUAUUUUUUU UUTUUT**UUUPUUUP *ETUPXH=_H_H9tH]Ht H=_H5_H)HH?HHHtH]HtfD=i_uGUH=\Ht H=2_\gH=_t H=6_)_]@ff.H=(\t&UH5_H=H\]8+AVIAUATU S?0u"g*xt Iƽ IE1AAgt0gtgX9sMHcII[L]A\A]A^Ã=^lAWH=AVAUATUSVu^_[HH D 1A~@H#HA~u5H=~^gHHHHH!Hͩt.HH!;:uH=D^g~H<:H[tu1L%"^Ml$ MHt[D3EtSA:tC1A~@HHH A~uA!D$A!T$ AD$AT$ <:H[tu1 1AL$AL$ IM9uAGu1AW$H=]gHH]H hX[]A\A]A^A_1wHcHxÃ01 ÃA1Ãa1ÍWw ÍWw Ã01 f.LDuDHÐ1H H ÐI1HGA1GenuAineIA ntelA AuthAentiA cAMDA ua=rSA¸A AAr6LI¸D8AArAAAfnAu2@uu%=pt=Pus AtwAA AArt1fnArf~%=Pu_O Wf~ȃr2GW_O t$_$As 1%=t&g?tgA!?!GI DLL Ðff.H1Hs#Ht HHuÐff.Ht HvHHHvHHuHuÐff.H1M1HtMHu*LL_HL3L3^M HEÐff.DHD2HvDHuHH?ÐfffffffffEfEfEfEfEfEfEfEH1H1H1H1M1M1M1M1HD$Ð@IHI1AAA:E ff.1D)AAA:AMRHuLÐff.IHIHL$1AAA:E 1D)AAA:AIt!1D)AD9AH)MuHD$H)Ð@H1HtVIIrIuB@ff.HrLHHHtIDHHIHuM1ÐH1HtVIIrIuB@ff.HrLHHHtIDHHIHuM1H1Hu3tH 3t1H{6HESHH5HUHuH5qHUHu,H5H$Vu1sH5H VtH5~HpUHtH5sHUtHH5bGUHøHtgCH߉QT[SHgHTH[非AWE1AVE1AUE1ATE1U1SH8L/VL 0VHt$HD$D$L"VHD$H5&VD$H|$H= VHT$ HVHL$(H VHD$DETA .A9HD$AAH@wH*NcIAAxtY HH9[HH9MHH9?HH91ML9#ML9HD$H@ML9EtLUEtL UEtL U|$tH=UEtH5U@tH T|$HTD$H0H@(HA D$HIAIAIAHD$EtLlTEtL hTEtLdT|$tH=^TEtH5ZT@tH VT|$tHPTH\$(Ll$ Hl$Ld$g9HHu1^RH;1H19HLqRHtHH;g$H;Lg"H}IEH8[]A\A]A^A_1%SHщH1%SHAHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$HAHD$HD$ HD$1D $D$0RHD$dH+%(tPH%1 %R1%R1%R1%RHRHt11E1A@鐜A@A@oA@ANA@A-SHg??t)+H5+OHt BHH[SHg蜞H߹ [Hy%PUHS1APg>tO4H5OpPHHt0gaU1ɾPAAHߺ@g8Y^HZ[]UHS1APgn>tR6H5PHHt3gU@PAAHߺ@g̭Y^HZ[]UHS1APg>tR8H5zOHHt3gU@PAAHߺg`Y^HZ[]UHS1APg=tR:H5/OHHt3g0U@PAAHߺgY^HZ[]AWLG AVIAUIATIUHSHHI?v?DMlI4I|LD$L)L)@I@AHAMLD$HHHHiHt(DMlLLLE H)H)HAALH[]A\A]A^A_PHHHHLZAWAVAUATUSHLwXL9r:L)IIHHL$1ۊMlI4I<LHLH9\$sH[]A\A]A^A_AWAVIAUIATIUHSH(dH%(H\$HLL$D$I?v8I4I|LL$@L)L)LE I@HsKLL$HHHHiHt"LLL$LE LH)H)H4KD$HD$dH+%(tKH([]A\A]A^A_AWIAVAUIATIUS@H(H9dH,%(Hl$HHFLL$D$HtFPAD$lH)HI$LLIIMD$ PLL$KH9ZYHGLL$뵋D$A$HD$dH+%(tJH([]A\A]A^A_HMH%HHE1A@A@A@ՖA@A鴖A@A铖SHg9t),H5LHIHt RHH[SHgH߹![HH%KUHS1APg=9tO5H5HJHHt0gaU1ɾPAAHߺ@g螨Y^HZ[]UHS1APg8tR7H5HmJHHt3gU@PAAHߺ@g2Y^HZ[]UHS1APgh8tR9H5HJHHt3gU@PAAHߺgƧY^HZ[]UHS1APg7tR;H5HIHHt3g0U@PAAHߺgZY^HZ[]AWLG AVIAUIATIUHSHHI?v?DMlI4I|LD$L)L)@I@AHAGLD$HHHHiHt(DMlLLLE H)H)HAAGH[]A\A]A^A_PHHHHHZAWAVAUATUSHLwXL9r:L)IIHHL$1ۊMlI4I<LHFH9\$sH[]A\A]A^A_AWAVIAUIATIUHSH(dH%(H\$HLL$D$I?v8I4I|LL$@L)L)LE I@H9GLL$HHHHiHt"LLL$LE LH)H)HFD$HD$dH+%(t FH([]A\A]A^A_AWIAVAUIATIUS@H(H9dH,%(Hl$HHFLL$D$HtFPAD$lH)HI$LLIIMD$ PLL$FH9ZYHGLL$뵋D$A$HD$dH+%(tFEH([]A\A]A^A_H3H H H HCUHSHQgt}H5HEHucHSHHt%Hh1HH$E~ HEg:HH=g)1Ҿy19g%1Z[]E1A@@龐A@A@@靐A@A@|A@A@[SHgH߹D[HFH%EUHS1Qg@3t/7H5H1CHHtHHHPHZ[]AWAVMAUIATIUHSHHLL$D|$Pg21A1҉ClEHS`D ClMtLLHgu$tHKPHC H H9s HHHtUL9cHt5grH^H==ga1Ҿi19g]6HLHHt KlHt$HH[]A\A]A^A_黜H1[]A\A]A^A_HjHHjHAWAAVIAUIATIULS1AQg1tA(H5HCCHHt"ATL@AUELHgY^ZH[]A\A]A^A_SHg(H߹[I@dSHgH߹[I@?SHgH߹[I@SHgH߹[I@SHgtH߹[I@@SHgGH߹1I@[HRHHAWAVAUATUSHLwXL9r:L)IIHHL$1ۊMlI4I<LH?H9\$sH[]A\A]A^A_1PHHH@H\?YAWAVAUIATIUHSHHH@HtLG HHLILG I?v?DMlItI<LD$L)L)@I@AHAgVLD$HHHHiHt(DMlLLLE H)H)HAAgVH[]A\A]A^A_AWAVIAUIATIUHSH(dH%(H\$HLL$D$I?v8I4I|LL$@L)L)LE I@HZ@LL$HHHHiHt"LLL$LE LH)H)H@D$HD$dH+%(t>H([]A\A]A^A_AWIAVAUIATIUS@H(H9dH,%(Hl$HHFLL$D$HtFPAD$lH)HI$LLIIMD$ PLL$?H9ZYHGLL$뵋D$A$HD$dH+%(t=H([]A\A]A^A_AWHLLO AVIAUIATUSH8H9dH,%(Hl$(HD$'HFHLE1M9MDLT$Ht$'IH|$&C>T$&RPlHD$RLL$LD$>DCt=Iă!֊T$7 CT=Y^LT$HD$LL$L$^H)IIH9HG5HD$(dH+%(t<H8[]A\A]A^A_AWLO IAVAUIATIUHSHHI?vHAPElI4I|L)L)@LI@PLL$+=AYAZLL$HHHHiHt.LLLM H)H)PElLP<ZYH[]A\A]A^A_HHHHaH9HA@A@SHg@HARA@PgY^[HHHAWAVIAUIATIUHSHAQI?vIClI4.LC @I|-L)HL)L@I@PHP9_AXHHHHiHt7LLLC H)H)NJClHL@PHPb9Y^Z[]A\A]A^A_UHHSHHQF9HMH@H9HEsHHH9s  H9sH9HUH@HH9s HH9 H9s HEH9rHEHZ[]HHHATUSH0dH%(HD$(1HHH>Hg•t\H5?H8HtNHHE9u:gHH= g1Ҿg19g1sH5H8HU1HT$HPHT$xH{PHPHt$17HHHT$KPHt$H8HcH;SPHt$Hg蔕HD$xtW=tC:tXgHTH=(g11Ҿ9g1H/Hǃ(Hǃ@ HǃA81gE1H`H=g1Ҿh19g}HI8EHHHCHHT$(dH+%(t7H0[]A\AWAVIAUATUSH(dH%(H\$Hgt\H5H18HtNIH$6u:gHSsH=g1Ҿh91g1H5H7H5HI7HL 1MtI\$H\$E1HtL}L|$HtH\$MtL|$Mt A|$u Ht}tgHD\6IHugHwIx@tK:=t?(t5gHFH=Ѫg119g1ANPIV L6u4LK6gXHH=~gG1Ҿ HHLA5Mt xHID$ HD$H9D$tLLs5Åx EtHcHE L5ygH_HT$dH+%(t5H([]A\A]A^A_E1A@MA@A@,A@A@( A@A@@A@AɀA@A騀ULE1SHARg tYHH[]^Z1[]ULE1SHARgВtYHH[]3Z1[]SHgd#t)4H5P3Ht rHH[SHgH߹)[H^%4S1g#t[H5:4HHt<gZj@1PAAH߾gbHǃXZH[S1g"t^H5ͧ.4HHt?gj@HPAA@gHǃXZH[S1g%"t^ H5]3HHt?(guj@HPAA@(g肑Hǃ(XZH[S1g!t^"H5N3HHt?@gj@HPAA@@gHǃ@XZH[S1gE!t^%H5}2HHt?gjHPAA@g袐HǃXZH[S1g t^'H5 n2HHt?g=jHPAA@g2HǃXZH[AWLG AVIAUIATIUHSHHI?v?DMlI4I|LD$L)L)@I@AHA2LD$HHHHiHt(DMlLLLE H)H)HAA1H[]A\A]A^A_HHPw]/ZAWAVAUATUSHLwXL9r:L)IIHHL$1ۊMlI4I<LHl0H9\$sH[]A\A]A^A_AWAVIAUIATIUHSH(dH%(H\$HLL$D$I?v8I4I|LL$@L)L)LE I@H0LL$HHHHiHt"LLL$LE LH)H)Hn0D$HD$dH+%(t.H([]A\A]A^A_AWIAVAUIATIUS@H(H9dH,%(Hl$HHFLL$D$HtFPAD$lH)HI$LLIIMD$ PLL$ .H9ZYHGLL$뵋D$A$HD$dH+%(t.H([]A\A]A^A_HHHHE1A(1+zE1A1zULE1SHARgstYHH[]鿉Z1[]ULE1SHARg7tYHH[]铉Z1[]SHgt)-H5M,Ht 2HH[SHg'|H߹"[H%5.S1ghtMuH5.HHt.(gU jE1PA1ɾ(HgˋXZH[S1g tMwH5-HHt.g jE1PA1ɾHglXZH[H HxUSHdH%(HD$1Hu HH>tHH5H*HtYHH+ugVHdH$H9CHt(g5HCH=ڠg$1ҾilH5 H*HtkHHG+ugHLH$H9CPt:gHեH=lg1Ҿm19g1!H5|H*HtoxtgrHHPHpHHPHH$Hu+g;HIH=g*1ҾsoHH5H|)Ht/xtgHUHPHpHHP H5ŸH8)HHspH)gHH=<g1ҾgHT$dH+%(t)H[]UHH5WSHHQ*Ht%HsHH(ug Hy8H5HO*HtHHsPHE(u7gHԣH=g11Ҿh9g1DH5H)Hu(HH'ugHmZ[]E1A1'uULE1SHARg芇tYHH[]{Z1[]ULE1SHARgOtYHH[]PZ1[]HtQH%'1SHg_wH߹H[H{%m)S1gtM7H5W9)HHt.gIjE1PA1ɾHgXZH[AVAUIATIUHSHPdH%(HD$H1H\$HH@v=IgHLIHgFIHgGHLd$HH+H9s HH9rI9s I,H9s HLHȀ06HL9uIg7H@HIg#FujHL9uI$g HH޺@I$gE@HgHD$HdH+%(t&HP[]A\A]A^AWAVAUIATIUSHHHHdL4%(Lt$8IHt HEL9DHA@D+H$HAHD$AClHIDM9sI@I9I1M)IHO(L\$LLHLL$gDHt$LLH<$gaWL\$LL$OSZPHHHHgYZH"AWMAVAAUMATIUHSHHgtEH5ŖHK"Ht)SLHMt$XELHHD$g"XZHD$H[]A\A]A^A_UHS1QgLt/0H5_H= HHtHHHPHZ[]SHgoH߹>[HH%!H:ATIUSHgkxH5H!HtQIl$HHtNHX1I$HHx ~0H HvH{ Hv H{ 5giHH=jgX1Ҿy19gT1[]A\HyAWIAVMAUMATIUHSHARgT$@Cl11Hs` ЈClMtLLHg3|u,ht&C@wHKPHC H H9s HHHtWL9cHt7gHeH=gs1Ҿi19go1.HLHHtKlLHgZ[]A\A]A^A_HjHHjHAWMAVMAUIATIUH5&SHASHt1H4t#AZMMLLH[]A\A]A^A_mjgHH=g11h9g}Z1[]A\A]A^A_ùSHg6 tH%[1ɺ@XSHg t)H5U\Ht HH[ùH*\%|AUIATIUHSHAPg Ivu1LHxtHZ[]A\A]Vge tH5\Y%1ZùSHg3 tHz[1ɺ@U~SHg t)H5`Ht HH[ùHT`%yAUIATIUHSHAPg Ivu1LHMtHZ[]A\A]Vgb tH5`Y%1Zù*SHg0 tH'[1ɺ@@R}SHg t)H5Ht *HH[ùH%vAUIATIUHSHAPg I?vu1LHJtH@Z[]A\A]Vg_ tH5Y%1ZHHWHH5qzHtHHY%lZATIUHHܐSHH6H?1HI$H}uH5HHH}t1LHH4[]A\UHSHQH?gdH{HHgVu1H5gHHuH5WHHu*Hs(H{ HuHs8H{0HtH5H|HuHs@H#Z[]AWAVAUIATUHSHHdL$%(Ld$xIgtLLHAƅt:H{ u;gH$H=Tgu1Ҿ91gqE1H{0u(gDHH=g31ҾH{g%VL{(HD$HC@HD$HC8HD$HC0HD$ HC H\$8HD$(HIu+gHP?H=g1Ҿ1Ht$HuE1Ht$(LLEtHT$Ht$ L.t1HL\tH|$~HAHD$H9g(HLH=g1Ҿ91g]1Ht$LKEHT$HL,1HLIL;|$rI9s ID-H9rL9s H+I9s H@wLHHH߾@g輾LkHD$xdH+%(tHĈD[]A\A]A^A_SHHgpRH{0rH5<H{ Hs(sH܌H߹1[USHPH/H+Z[]SHgthH5HMHtH[HtSH]H[}H5a%UHSQH?Hu1[Hu8H}0HHH8HP0gVu HHu(H} HK(HS gVtHuH{gQtHE@HC@HZ[]H~HVWHH5#,HtHHY%ZATwIUHH׋SHH6H?R1HI$H}u|H5sHHH}t1LHH[]A\UHSHAPH?gQ_HurH}tH{(HHgQu1SH5HsHu(H5H^HtYHs H{H[]HsH{HuZ[]AUIATIUHSHAPgtILHBt:H{u:guH+H=gd1Ҿ91g`1?H{u(g4HH=Kg#1ҾH{(gQIHu(gHH=g1ҾzHT+gH{H=܉g1ҾKHH9s+gHIH=g1ҾHHu1Q1LHtHS HsHtHSHsHt1LH1HZ[]A\A]SHH(g5NH{;H5HsH{<HoH߾@[ATUSHHdH%(H$1H|$8H;g\1HHIH5H|$8HL Ht$8H{(gHNu H{(guMH$dH+%(t~HĐ[]A\USHPH/H+HZ[]>UHS1Qgt*0H5@eHHt H(HHZ[]HtSHH[FH5%UHSQH?Hu1SHu H}HHH HPgQu HHuH}HKHSgQtHu(H{(gLtHZ[]øAWHAVAAUATUHSO7xhD`xXp|$xl1DHt|$x`11ʉ|$xd1щ|$xX1|$x\1|$xP1΁3333|$11։111ʉ1сUUUU11p|xT|$xH|$ċxLEDX|$ȋx@|$̋xD|$Ћx8|$ԋx<|$؋x0|$܋x4|$x(|$x,|$x |$x$|$x|$x|$x|$DPD@ D(xH&A11EEAAA?B3B3 EAA A?A?B3B3AAB3AAA?B3AA ?A?B33A1A1ADEA?B33DA A??3DB33D?3DA A??3B3DT$A1A1ADEA A??B3EAAA?B3B3ADT$A1DD3D?D3DA A??D3F3E1D\$ADDE1 ??3DAA?3B11D3D?3HH8v"@1HH)HHg 181H)HHHCHCPg 1H@CXgA$CAD$CAD$C AD$ []A\H1HH#EgHHܺvT2HBf.fISUATAUAVAWH(IMIIMH1H1H@oO@M)H4IMLd$L\$EEKESE[ D$DL$DT$ED\$ fE1ԉE!EЋ^AxjE1EAEfnEfɋE1̉E!E_ӋFAVE1ۉVEA Efn EËE1ĉE!EWЋ^ Ap $E1VEAEfEڋE1܉E!EO ӋFAνE1ۉV EAEf EыE1ԉE!EGЋ^A|E1VEAEfEȋE1̉E!E_ӋFA*ƇGE1ۉVEA Ef EËE1ĉE!EWЋ^AF0E1VEAEfEڋE1܉E!EOӋF AFE1ۉVEAEf EыE1ԉE!EG Ћ^$AؘiE1V EAEfEȋE1̉E!E_$ӋF(AïDE1ۉV$EA Ef EËE1ĉE!EW(Ћ^,A±[E1V(EAEfEڋE1܉E!EO,ӋF0A\E1ۉV,EAEf EыE1ԉE!EG0Ћ^4A"kE1V0EAEfEȋE1̉E!E_4ӋF8AÓqE1ۉV4EA Ef EËE1ĉE!EW8Ћ^fDff.ff.ff.1ATIUHSHHH5<9HtxueH@I$H;m1H5<HHHu?xu-Hx|HHtHcH;uv1H1g[]A\SHH1H{HCH1HS[UHSHQH~Hu H{Hu$uuH{R1HCHEHHEHCHEZ[]ATUSHdH%(HD$1Hu HH>tHIHWHHu1HH5;HHtxuH{g/tHuH$LHCHHu1H}Ht xtHH;ugs1H;gsHT$dH+%(t4H[]A\HHGSHHL1H{HCHa1HS[UHSHQH~Hu H{Hu$ubuH{1HCHEHHEHCHEZ[]AUIATIUHSHPHLLHHCHZ[]A\A]ATUSHdH%(HD$1Hu HH>tHIHWHHu1wHH59HHtxug{rHUH $LHg@H;u1H} Ht xtHH;ugCr1H;g:rHT$dH+%(tH[]A\UHSHPgIHkH+Z[]HHGAWIAVIAUATULSHHH|$L $dL,%(L$8L$HtHHu)H58HIHtxt1gLxMu"H58HIHt xuLpHu"H58HHHt xuHhMH\$t+1LH578HL|$p HH|$HL|$HMt&1H5@8HLsL HI(H<$t'1H57HH$EL HI(Ht&1H57HHL HI(Mt,H$H5R6HLL HI(H LHH|$Ht$HrH$8dH+%(tiHH[]A\A]A^A_AWMAVMAUATIUHSHHHL$Hu&H57L0HHtxHXH56L IHtxLhHu H}HuKBHLLH}HH1Ht HXHEH+H}u83jLME1jLHT$gZYuH}1HE1H[]A\A]A^A_H>ucATE1UHSHH;t2HC HuIcAHDCDЅuH(McILECE[]A\Ht:ATIUHH5SH˹p3HHEtL#[]A\1HHf.USATAVAWHHH<E]MU H9AAAADAA1BxjA!DVA1DAA1BVA!DVA1D AA1Bp $A!DV A1DAA1BνA!DVA1DAA1B|A!DVA1DAA1B*ƇGA!DVA1D AA1BF0A!DVA1DAA1BFA!DV A1DAA1BؘiA!DV$A1DAA1BDA!DV(A1D AA1B[A!DV,A1DAA1B\A!DV0A1DAA1B"kA!DV4A1DAA1BqA!DV8A1D AA1BCyA!DVH5+HtH5 +HtH5*HtZ[]HAWAH5*AVIAUMATMUHSHARNHt$DHeugaH4939H5*HHtLHǃ*u:gaH89H=Y*ga11Ҿh9ga1H5g*HHt*HHHŲugFaH8?H52*HuHt.HHHugaHT8EVH5)H2Ht.HHHBug`H8KH5)HHt.HHHug`H7QH5u&HHt+LHHug@`H7VH5C)HlHt+LHH_ug`HN7[PH5%H,Hu+LHHug_H7` Z[]A\A]A^A_H:H2HHHچHt3t*SHH5(Hxy11҉HSx[AWAVAUATUSH(GlHT$LD$LL$u(g_H5H='g_1Ҿr[HoXHpII΅Ht$HtL9uHL$I9ru:g^Hr5'H=b'g^1Ҿf91g^1H1HHH)L M9sg[^H54H=vg?^H49뉍PuHv I< H1CT L9s A HLL$LH1HHtg]H4J,HHHLPug]Hu4Pt$H5W&H{xU11HsxHD$HL$HClt HspLKxIHRLjPHL$(gH ug]H3aeH{`t HL$Hs`HH{LD$g I IIL#|$E1H9k`ukClu Ll$MtWI9sg\Hq3toHHLHHSPug\HB3x1IIHC`MClu:L9|$u3I9s+gB\H3H=$g1\1ҾjI)MM9sg \H2Mt=HLLHHT$Pug[H2L|$L)|$H|$uHD$L(1H|$$HL$Hs`HH{LD$g uH([]A\A]A^A_AWAVIAUIATIUSHAPHoXg;t:Clu:g9[H1H=#g([1Ҿr91g$[1{ptgZH1tHs`H{Hg 0HC`Hu 1I}H9tgZHH1I9sgZH,1 HHLHHSPu+g\ZH0H= #gKZ1Ҿf1Hs`ImL{`I9t8MuMgZH0H="gY1ҾkHHkLHHHPugYH\0]CluHK`I9sFgYH60Hs`LHgy ueH=+"glY1Ҿj?I9s I H9 L9s HD I9s LH1HC`IEHK`Z[]A\A]A^A_AUATUSARGlu(gXH\/H=!gX1ҾrEILMu1H L9s:gXH/H=e!gX1Ҿj91gX1HHILLPu(gcXH.H=!gRX1ҾfI$Elg}p]tADHH9rH)I$HH9qH)I$HHH9QH)ILmxI$Z[]A\A]UHSHVg袘t9Elu7gWH-0H=O gW1Ҿr19gW1 1ɸH Z[]AWIAVMAUIATIUHSLARg/t9Elu7g.WH-BH=gW1Ҿr91gW1xI9s(gVH,GH=gV1ҾjHHLLHPu(gVH,LH=^gV1ҾfI$Z[]A\A]A^A_AUATUHH5~SHHQHt%HsPHug@VH+[;H5EHoHtN@slHǃu:gVH+`H=gU11Ҿh9gU1tH5H IHtHH57HHt9Ht$HugSHu)LCl|$ƒ ЈClH5HCHtbHt$Hu:gSH')H=WgS11Ҿg9gS1|$Cl ЈClH5VḤHt%HspH*ug3SH(H5THHt+HHUugRHt(HH5HRHtWHt$HugRH6( HSXD$Ht9rgRH(HT$dH+%(tˣH[]USHdH%(HD$1HHH>t{HgtXH5(HHtYHHVu7gQH)H=gQ1Ҿg19gQ1H$H9CHtclHCHHT$dH+%(tH[]H9WPuHv8PgQH&H=-gnQ11m9gjQ1ZLO OlIHI9s I H9s L9s H I9LHHI9s I H9L9sI9rLHHѸAW1IE1AVMAUMATIUHSHARL$@HG`Gl D ЈGlg薑Mt{@tDLLHgu1Clt&C@wHKPHC H H9s HHMt_Cl u;H9kHt9g7PH%'H=g&P1Ҿi19g"P5HkHHHLHtKlYLH[]A\A]A^A_Z1[]A\A]A^A_HjHHjHHHHVHvjMIHHHHHVHvjMIHtHA SHD$sOl@AsOl HHOlHOPHL$HHwHHDG@HWXHtHHg$H[IHII0HH)L H9HGI3I9s I H9 L9s H I9s LHHII)II#IHIHt{HIH4I9s8RgNH&FH=gpN11Ҿ 9glN1YH2HH9s HH9 H9s HH9s HII1IH)H9s HQH9t(gMHc%aH=ZgM1Ҿ =LIHLIHI9r7gMH$%kH=gM1Ҿd19gM10HA:<tgvMH$pII)I9rHZILHLD$LD\$LL$tMw&t=uVLL$H7ILT$tw w+u!H)HLL$H7ILT$D\$1AUIH5ATIUHSHAPHt$LHugLH7$7H5HHtJLHu:gPLH#H=g?L11Ҿh9g;L1H5HYHt&HǃnugKH# H5HHu-HHHރ(ugKHW#&TZ[]A\A]HzHH)H1H1H H1HH?AWAVAUATUSHHT$H$0L$@dH%(H$1HD$@H9HFH9Hu1H$8HIMIHD$I)IL'u$Ht HD$IL!Mt1AoH1HLHt$("OMFM=H5xH{IIHHD$hLHAHI)؃?LLhHH9LLCD$11E1I9s`LHt$LHT$L1IHII!~I?Ht$HT$M I!BHzHI!ID!AL JH!HD$8E1DAЉHHyBt( HH IA AAD!!H @HD!! CDH!L9u1H$dH+%(tH[]A\A]A^A_AV1AUATUSLd$0HL/It$I9rWHBL*ILIHHeHLIWHLL HH!I)HM*RLt$@PATIH []A\A]A^AWH1AVAUATIUSH8IHLl$p@L$LH9HD$HHIDT HAMփ|$xtL)L)HLHHT HIøH9HF1HD$H9t$tCLHT$(Ht$ jHt$ HT$(DHD$HHH@2|@HH D$I!LIIHHI!I?M!L)H ILl$pHt$LHL$HL\$xH8[]A\A]A^A_1H8[]A\A]A^A_PXOPENSSL_ia32capnameOpenSSL Legacy Providerbuildinfo3.5.7statusPBKDF1provider=legacyPVKKDFCAST5-ECBCAST5-CBC:CAST-CBC:CAST:1.2.840.113533.7.66.10CAST5-OFBCAST5-CFBBF-ECBBF-CBC:BF:BLOWFISH:1.3.6.1.4.1.3029.1.2BF-OFBBF-CFBRC2-ECBRC2-CBC:RC2:RC2-128:1.2.840.113549.3.2RC2-40-CBC:RC2-40RC2-64-CBC:RC2-64RC2-CFBRC2-OFBRC4:1.2.840.113549.3.4RC4-40RC4-HMAC-MD5DESX-CBC:DESXDES-ECB:1.3.14.3.2.6DES-CBC:DES:1.3.14.3.2.7DES-OFB:1.3.14.3.2.8DES-CFB:1.3.14.3.2.9DES-CFB1DES-CFB8MD4:1.2.840.113549.2.4WHIRLPOOL:1.0.10118.3.0.55RIPEMD-160:RIPEMD160:RIPEMD:RMD160:1.3.36.3.2.1providers/implementations/ciphers/cipher_blowfish.cproviders/implementations/ciphers/cipher_cast5.cproviders/implementations/ciphers/cipher_des.ckeylenivlenpaddingnumupdated-ivkeybitsproviders/implementations/ciphers/cipher_rc2.calgorithm-id-paramsalg_id_paramproviders/implementations/ciphers/cipher_rc4.cproviders/implementations/ciphers/cipher_rc4_hmac_md5.ctlsaadmackeytls-versiontlsaadpadproviders/implementations/ciphers/cipher_tdes_common.cdecrypt-onlyproviders/implementations/digests/md4_prov.cproviders/implementations/digests/ripemd_prov.cproviders/implementations/digests/wp_prov.cproviders/implementations/kdfs/pbkdf1.cpasssaltiterpropertiesdigestproviders/implementations/kdfs/pvkkdf.cSHA1enginecipherproviders/common/provider_util.cproviders/common/provider_ctx.cyestruenofalseoffmodeproviders/implementations/ciphers/ciphercommon.caeadcustom-ivctstls-multihas-randkeyblocksizetls-macuse-bitstls-mac-sizetagtlsivfixedtlsivinvtaglentlsivgeniv-generatedproviders/implementations/ciphers/ciphercommon_block.cproviders/implementations/digests/digestcommon.cxofalgid-absentssl/record/methods/tls_pad.c@@@@@@@@@hHHHH@@@@@@@@@@@@@@@@@@(       @233#313des_initdes_get_ctx_paramsrc2_keybits_to_magicrc2_get_ctx_paramsrc2_magic_to_keybitsrc2_set_ctx_paramsrc4_hmac_md5_get_ctx_paramsrc4_hmac_md5_set_ctx_paramsossl_tdes_get_paramsossl_tdes_get_ctx_paramstdes_initkdf_pbkdf1_do_derivekdf_pbkdf1_derivekdf_pvk_derivekYG9,ܞ֞ОƞN8"֢Тʢ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@                            @@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @@ @ @ @ @@ @ @@ @B@B@B@@@BB@BBB@B@@@@BBB@BB@BB@@            ossl_cipher_generic_initivossl_cipher_generic_set_ctx_paramsossl_cipher_generic_get_ctx_paramsossl_cipher_generic_cipherossl_cipher_generic_stream_finalossl_cipher_generic_stream_updateossl_cipher_generic_block_finalossl_cipher_generic_block_updatecipher_generic_init_internalossl_cipher_var_keylen_set_ctx_paramsossl_cipher_generic_get_paramsossl_cipher_unpadblockossl_cipher_trailingdataossl_digest_default_get_params;l , "  , @ T h |   0 @ ! ! P" "( #< #P $d h$x p$ $ Y% v% +($ 3(8 C(L )h ')| /) 7) ?) R) p) ) ) ) *< 6*X * + w+ +(,p,!-..l.... /+/L/m//,/H90|01}182`V2x23f4\n4pv4~444$5B5c55(5<5P5d56/7?7$O7@77858Z88 8@8T9C9": ;D;==P=d=x===>!>U>n>9?|???? BD`DtDDE7EXEE E@E\Fx~FF^GG>H@HhiIIIJXKKKKKKK(L\HLLL MiMqM,yM@OlPPQ/QNQ$sQ@QhSWW W8 WP Xh 7X ?X X Y!/Y0!7YD!Yp!Y!Z![!"[!2["[x"["["\"M\"d\"\$#\H#\\#]x#]#P]#g]#]#]$],$^H$^\$S^x$j^$^$^$^$^%_0%_\%Q`%b%Dc%Yc&c0&cL&+dx&3d&;d&id&d&|e '3g\'gx'&h'Bh'h'h(i@(iT("ih(G|(()ŐH))Ę) * 4*Ú`*x*P**+P+D+`+z+m+q+v++$,;\,,8,<,A,A(-O|--- .4.$H..\.7p.A.K.X.d.q.}.*/@/T//////0 0|00k1,1t1112=2f|2v222203343*H3`3fx3333(4t4zRx 8BEB A(F0r(D BBBPXVzOIB B(A0A8A@O8A0A(B BBBA| ~ v nh$b <`Pldh4G (a_4kTk8hh  ,4APAVHlBEE E(D0C8Dp8A0A(B BBBG$8Ldzx!!!>A|%AR0iADD u(H0[(A DAA0  lADD u(K0[(A DAA0TClADD u(K0[(A DAA0{lADD u(K0[(A DAADBFE E(D0D8GP8F0A(B BBB&A\D,eBBB B(A0A8DPG8F0A(B BBBDdIBBE E(D0D8D`8F0A(B BBBPBEB E(D0A8I`mhjpOhA`q8F0A(B BBBXL(@<4T$h.!|;!H!U>A|w%AR0iADD u(H0[(A DAA0lADD u(K0[(A DAA0DlADD u(K0[(A DAA0x% lADD u(K0[(A DAAD] BFE E(D0D8GP8F0A(B BBB A\D  eBBB B(A0A8DPG8F0A(B BBBDT BBE E(D0D8D`8F0A(B BBBP!BEB E(D0A8I`mhjpOhA`q8F0A(B BBB" ! !, !D !$X !ADD AA 0" :"! G"! T"! a" O" ="%AR$ F"HADC }AA\< f"BBE E(D0D8GP 8D0A(B BBBF D8C0A(B BBB #DB I #DB IP #wBEE E(D0D8D@kHOPPHA@A8D0A(B BBB( *#%ARD 3#%AR` <#%AR| E#%AR N#%AR W#"A\ Y#D ^#eBBB B(A0A8DPG8F0A(B BBB0 {#$C`DH #BBB E(D0D8GP8F0A(B BBBD $BBE E(D0D8D`8F0A(B BBBP $BEB E(D0A8I`mhjpOhA`q8F0A(B BBBT, -%9BPE E(A0A8IplxN@xApG8F0A(B BBB\ &BIB E(D0D8GPKXp`MXBPsXP`GXAPD8F0A(B BBB x& l& `& T&4H&H<&\0&!(p=&4A]L GAAE&\J&BBE E(D0D8E@HHPGHB@HHPGHA@A8F0A(B BBB$&AKG tAA8'L '`&0t&0BAA DP# AABH(BBE B(A0A8D`n8A0A(B BBB-+7+!D+!0Q+!D^+!Xk+!0lx++AGE K GAE ACA0o++AGE K GAE ACAf+>A|+%AR$ +mAxH fAD$4+pAxI hAD$\,pAxI hAD$f,pAxI hAD$,pAxI hAD$,pAxI hADD>-BFE E(D0D8GP8F0A(B BBBD-!KUD\-eBBB B(A0A8DPG8F0A(B BBBD-BBE E(D0D8D`8F0A(B BBBPv.BEB E(D0A8I`mhjpOhA`q8F0A(B BBB@.T.h.|...0.,AGE K GAF ACA0.,AGE K GAF ACA$.>A|@.%AR$\._AxI WAD$/_AxI WADI/=/(1/]AAD0TAA$b1AKG AA("20<)2+AGE K GAE ACA0p 2+AGE K GAE ACA2"2%AR$+2_AxI WAD@b2.BGE D(D0D 0A(A BBBH@L3BBB E(D0A8G8A0A(B BBB$7mAAK ]AA_7lk}77A\7A\7P,7BEE E(D0D8GPlXM`UXAPI8A0A(B BBB$7HADC }AA7%AR7(7BDA AB~8r8D,d8BEE E(D0D8E@8A0A(B BBBt*9DB I9DB I\9BEE E(D0J8E@\ 8R0A(B BBBF t8C0A(B BBB T9 H9!A_<M9PK9>A|lm94p9LBED D(E0q(A ABB 9'A\ F C9{9!A_ 9 ~9>A|<94P9LBED D(E0q(A ABB 9'A\ F C99!A_99>A| 94 9LBED D(E0q(A ABB X9'A\ F C|999.A` F F(9~BIK dAB$5:ADD AAH:BBB E(A0D8J8D0A(B BBBd =LAJ$P=AAD LAA==4ArU=%FL(^=yADA pAA = =4=.A` F F(T=~BIK dAB0=ADE _ LAE WAA8T>BED D(E0(C ABB?MAF0 @BFA J AAB$@r@AAD OAA$hf@CADC xAA@%FL$@qADA hAA@@@@%BEE B(A0D80A(B BBB@@SfBEE B(A0D8I0A(B BBB(e BDD AB(f BDD ABHugBEE H(A0A8D8A0A(B BBBH( j-BBE H(A0A8D 8A0A(B BBB<t nQKLA A(G@(F ABBA o ( oBDE AB [p1D !pKAB B(B0B8D`EEEEEE(T!oLBB OEED!̆!x)(!0DDD AB!)Ag$!aADD UAA,"BAA D0 AABL"`"t")Ag$"aADD UAA4"ԉ;BED D(D0a(A ABB,"׉BAA D0 AAB$ #ADD NAAH#|\#lHp#]BEE B(A0D8G8A0A(B BBBP#BEE B(D0D8GPXK`OXAPZ8A0A(B BBB,$ˌjHDD UABA0@$MGDK eABA<t$(AAB B(B0EEEED$ӕ$֕$ԕ $ʕ % % ,% @% T% h% (|%ALFAA(%AEA AA%H%BLE E(D0D8E@`8A0A(B BBB4&H&ۘ\&Ϙp&Ø&&9OhAX&ȘBBB B(A0A8D`hEpFxAO`8A0A(B BBBH';ZBBE E(D0A8E@78A0A(B BBB8\'IRBBA A(B0C(A ABB$'_^ADD RAAD'BEE E(D0D8E@8A0A(B BBB8(6&BBA K(G0(A ABB(D( AAD0AA$p(AAD0AA(Mv\()BJE E(D0D8E@ 8G0A(B BBBF A8C0A(B BBB)DB I,)֥DB IH)ʥ$DM Rd)ҥ$DM R)ڥbF[) V)b^v)٦)ڦA)p8 *5BLD D(E0(A ABBH*ߨ\*ӨHp*٨EBBB B(A0A8G)8A0A(B BBBH*ҪBDB A(A0Y8G@AHBPI0A(A BBB`+\BGB B(D0A8Dp& 8A0A(B BBBE F8A0A(B BBB!  *)L) )-=N12N11N1l1N106R86k7676-6 =AQ==}@Q==?Q==>Q===Q==j=Q=CCC C  CNONNN:NN^M[W7\V\\  hbh=hgec Idc clZm5ml,jh ih h"-6 =F DKQ[KSbK hlKgKeKdKcKbK`aK@`K@uK@tK@s-K@r?K@pGK@qOK@vfK@wmK@xzK@oK@nK@mK@lK@kK@jK@iK@y Kz$Ky'0..&y b. b ?O6Z/..&y A. b ?O6ZO/..&oy . b ?O6Z...&oy . b ?O6Z5[44&y 3 b ?O6ZU5[44&y 3 b ?O6Z4[44&oy 3 b ?O6Z4[44&oy 3 b ?O6Z;;yv<~:Y: W: >9 69 G;;y<~:Y: U: >9 69 G;;y<~:Y: 4: >9 69 G;;y<~:Y: : >9 69 G;;oy =~:Y: 9 >9 69 G;;oy/=~:Y: 9 >9 69 G__oyBr]] B ] ] ^^LJ^J3JJy I F {D DD~LJ^J3JJy I F {D DDLJ^J3JJoy I F {D DDKJ^J3JJoy I F {D DD.KJ^J3JJoy cI F {D DDJJ^J3JJoy EI F {D DDQ6QPPPy P b ?O[Q6QPPPy jP b ?O#VUUUUy nU T R )R!R`aa```` K`cbbbaaa Kafcccbbb Kb 0E8Eo( (    o ooo$#% {legacy.so.debugsp1.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0$1o$; (( C( ( KoXo0gq{ @ @ M@ l   l+0E0E8E8E@E@E5  { {}}  ELF>@@8 @$$000000__X00000$$Std00PtdoooQtdRtdPP GNU GNU&{ʀpf "@b E@A  Al 3PIdB H#   H!R/12 ! `GQd !"#$&()*+,-./023589:;<>?@ADEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdegiklmoprstuvwxyz{|}~ +Cg j,,C,aa*!S&),),S ,wq- pb_G 4Q#tBvsi,ע"0v)kFMQ-P'gn*ĒvE7m҉ !">cdqD6 l)s)|fcHؼQfU-@H WN{T,]N,-_j/}"g,i,QYMd`%5]R iv ݆N1;xKly ~'#Pʉ@ "s,Y0[y F+ɲY09ח(jXoU#xDqcEqVDhO}oJ%,/q%ַŧNǧNMsn C PN ͧN9@}q7" 5F    ^ b q S  {   0S% > @j `_ yP 0 `' l @ M  1 `fy @ W @a P= z$ @ /j   p^b @(   pu p< 8^  0 { $' X} 0 U  0V P   =, p _ 0 < tlb 0]  =o 0^6F 67 @ (  b~ 5   vs  <f @S k   M `h h $Q P\ b  8T   V  w& ^v 6 0  w< `[) @G 8 `=P.  j @x 6 @`FTy `< t 1aA   W_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infoadler32_zadler32adler32_combineadler32_combine64get_crc_tablecrc32_zcrc32crc32_combine_gen64crc32_combine_gencrc32_combine_opcrc32_combine64crc32_combinememcpymemsetdeflateSetDictionarydeflateGetDictionarydeflateResetKeepdeflateResetdeflateSetHeaderdeflatePendingdeflateUseddeflatePrimedeflateTunedeflateBound_zdeflateBounddeflatedeflateParamsdeflateEnddeflateInit2_deflateInit_deflateCopyinflateBackInit_inflateBack__stack_chk_failinflateBackEndinflateResetKeepinflateResetinflateReset2inflateInit2_inflateInit_inflatePrimeinflateinflateEndinflateGetDictionaryinflateSetDictionaryinflateGetHeaderinflateSyncinflateSyncPointinflateCopyinflateUndermineinflateValidateinflateMarkinflateCodesUsedzlibVersionzlibCompileFlagszErrormallocfreecompressBound_zcompressBounduncompress2_zuncompress2uncompress_zuncompressgzclosegzclose_wgzclose_rstrlenfcntllseekgzopengzopen64gzdopengzbuffergzrewindgzseek64gzseekgztell64gztellgzoffset64gzoffsetgzeofgzerrorgzclearerr__errno_locationstrerrorgzreadgzfreadgzgetcgzgetc_gzungetcgzgetsmemchrgzdirectmemmovegzwritegzfwritegzputcgzputsgzvprintfvsnprintfgzprintfgzflushgzsetparamslibc.musl-x86_64.so.1libz.so.1ZLIB_1.2.0ZLIB_1.2.0.2ZLIB_1.2.0.8ZLIB_1.2.2ZLIB_1.2.2.3ZLIB_1.2.2.4ZLIB_1.2.3.3ZLIB_1.2.3.4ZLIB_1.2.3.5ZLIB_1.2.5.1ZLIB_1.2.5.2ZLIB_1.2.7.1ZLIB_1.2.9ZLIB_1.2.12ZLIB_1.3.1.2ZLIB_1.3.2                 J'T2$_T8$l_'$yl3$y4$3$ 4$ 5$ 1$ 2$ 1$'$\~$2$'(m0Z8W@HP^Xg`hp?xvw0(i&ȞО ؞I 2[ j  < (n0D8`@QHP{X+`4hp)xF_OxȟHП8؟sjPX                 f.@H=oHoH9tHnHt H=aoH5ZoH)HH?HHHtH=nHtfD=9ouGUH=mHt H=omgH=mt H=~Cmn]@ff.H=nt&UH5nH=?CHvn]8+f.AWHHDAVHAUATUSHD$H;HHHHHD$H`Ht$HHD$Ht$HPf.DrHDjDbLjZIDZJMLDRDJMLDBDzLLHHIHJ<JLH|$HD$H49zJIHt$HD$MLrMLLLHHHHIHHL$LHD$H95H/ H|$Ht$ILH)HHHHiI)H/ HHH)HHHHiH)HH|$HD$HH|$HHD$[]A\HA]A^L A_Ht HD$H1HILH9uHD$IIH/ LGHD$HHD$H)HHHT$[H]A\HiA]A^H)HHL A_LHHHGHD$[]A\HA]A^H=HA_HGHH HHHHHL$HHHHt$HHT$HD$DwHDoDgLo_ID_WMLDWDOMLDGDLLHHIHJ WLHL$HD$H4 OWIHt$HD$MwLMLLLHHHHIHLHD$H;|$8Ht$HT$HL$@t8HBHHHH)H|HD$HT91HILH9uHD$LHt$H/ HLH)HHHHiI)HD$HHH)HHHHiH)Ht$~[]A\A]A^A_@ff.%iIHHH◆pAIHHIEH?HHH)HiH)H/ LHHH)ILLH)HHHHiI)JHHtHwHHHGHH=HGH=HHGHH f.IHHH◆pAIHHIEH?HHH)HiH)H/ LHHH)ILLH)HHHHiI)JHHtHwHHHGHH=HGH=HHGHH f.f.f.f.fHyH;HAWHAVAUATUH-QSHH.?HHHH-(HLPL Ðff.H@22H@HLH1H2BHDH1H2JHLH1H2BHDH1H2JHLH1H2BHDH1H2JHLH1H2BHDH1L9RJ\Ht4H;H-Jf.HH@2sH@tH1H9u[]H1A\A]A^A_ff.HH@2sH@tH1HuAIHHHD$E1E1E1L\$E1H5H|$Hl$HT$H@L3 L3zDEAH3ZML3ZD ALL3R D<H(MD4AHT$пDADf LHcǃHHHD3 HHHD3L#Lc[]A\J&H9sfH{`H1\HC`H{`HA\HC`AWAVAUATUSHHDoPLDE%fDHD@ESPHKhDAA)A)9r_H{`)ȍ0J4/H9HH9t [)L))艃;,s,HAXH;DOEDHHs`]Ɖ,LC`D)‰EBDAAD1D>D!ȉ_DBAD#sXAAD1L[xD!ȉICL[pD8fGE)AOAx   Hx , Hp ADffAtEHqB8f DpD DA)֍B| Dt AA9rIHK`PDAHKxD1#AD#[XHQHKpD:fFdI>EtVE9HIEFIv`DH9ZHH9H$E)KI>H$D)o HWHW(IEHwD1I>DD) WHGHG(Dd$ A)AHI9@sI@2I>_8EfhA)A9sIAVPH9D9AG܅A~PI9@sI@A4IVIK*H)ʹH9HG)9AG9@@tS1H[]A\A]A^A_H9HH9DDd$ 1A)AVPIF`A9rsAdž(HHH)H9H9s H9HIAFPADI;@fEIvhEL)LI9rc)H4AH9HH9HHxIA(w A(EE;,sE,I>IF`HJ<HL)H9H9s H9LIA,AVPA)DD9AGAʉA,I9FЃt'LIv`1HkII>ILHڋI@A9Iv`!@.II>@Adž8EfhA)A9,Iv`A~PA,A)9AGA,Adž8bI~`H))IH4AH9HH9HGA(w A(AI>EfP_HA;,wA,kJ/H9>fH H9;fDIy9ƒILIv`H豐II>bDH9(HH9DH9;HH9.sniHG8HtH;8t f.@*t09t+q.D~H@EH҉1҉1=@Ht[H@tTHHtMHW8HtOH;:t fR*t@9t;q>D~H@EHÐf.1D1@AWAVAUATUSH[HXPLg8IA\$0;IA$AD$0AD$P9uWA$I|$x11f GHEAD$PADŽ$HADŽ$IDŽ$ADŽ$,)IEuImAELM}A$\$ fDA$I\$`H,$A$E$MT$xML$p|ED$XA$ff.ff.ff.pE43A!1։D!ډA$A,rfC,yfAr9uA$LH,$ADŽ$JA$9\$ A$A$,A$I$HADŽ$I$1ADŽ$ImEuA\$0H[]A\A]A^A_A|$*ufD111HwAHpE ^ HC8H)H}`HsV.HE`HC8H"+H@ HE0D:BtD:BjHzHPfDD:GD:GD:GD:GD:GD:GHD8uH9s D:GtHH))׉9@ HGr  Hr  Hr ADf'f ǃ)9 H1H)HxHs`1HxH;HHDX ElF@HHs((HC(HSHpHs( HC(U`HKHpHs(4HC(HKHpHs(@H{(HC(HSHHHK(HC(HSHHHK(HC(HSHHHK(HC(HSHHHK( t HS(HKHHrHs(HC(HSHHHK(CqnH{(#CHS(HsH}`V+HE`HC8H1H)HxHs`HOwH;HHDP CEHuHsLH}`H)H*HE`HC81H{x11f GH+ǃH%ǃHHǃǃ,OU  HHHHwHnHefATUSHQHcIAg IL$89IyLuk9tQH`%HHfn fnCCfafpfafցHD[]A\@DD$ LH $a(At$H $H+HDD$ 8(3DD$ HyxH $11f GH)H $DD$ ǁHǁ(1@HcHcH=#$HHHTH9T7fDADHH $$H $DD$ Aff.ATUSHDHw8HFDfHtHHPSHHs8HFxHtHH{PSHHs8HFpHtHH{PSHHs8HF`HtHH{PSHHs8H{PSHHC8Aqt![]A\f.ffAWAVAUATUSHHD$PH81|$XpHHG0AH@qHHNEAEAAA@RAD$D;A 1A'Au AHA HPDL$ DDEźPU@HH!HxHHǀHH1H)PHDH]8AMH+FfnىsPCXBfnºfnDfbD{0HC*H}PHC8DcTH!fnfbflU@sPH}PHC`U@H}PHCpU@AMH}PHCxHǃ@U@HCH4HsH{`H{pH{xHHDHHDID$ CHH[]A\A]A^A_%%DAAA|JAE1HxHGHHyxHGPHG@wH[]A\A]A^A_@H!CHH@0HE0 %f.HE1AQR$HÐff.ATUHHS!HH9H9s HFpH9oLf8PEoFEoF E oF0E0oF@E@oFPEPoF`H}PE`U@HHOHPHHHPHǀHH1HH)PHH]8L9aI9I$HHLH)H׺HI$HH)΁PHHHH+sPH}PU@sPH}PHC`U@H}PHCpU@H}PHCxU@H{`HCHaH{pVH{xKHBIt$`I$@H9HH9A!A$HSP.A$A+$,9It$pH{pHH9HH9E!It$xH{xHH9HH9!I|$ I+|$H{IT$(H{ It$ H92HH9 H{HI$A$ H9HH9c HHX H Hp H H 1[]A\ÐHEpH9>*fDIt$pH{pHH9H9HH9I9I$PH9ͱH9XHH9K鱱DH9/HH9"鑱DH9HH9qDH9zHH9mQDH D%  H91ApHHFATUSHG@HG0HtiHOPHHtzIԉHHH|HC8@h8P?EL$ED\$111D\$ID$ IE`AD$??f.D$ ED$ EAD$N?ED|$DAHAT$A%D%HAHHŃEuAfDDgE$HAw!EnDAHSAHHʼnAD$ HH LD\$HT$X.|$ D\$AD$G?H\$HAfAD$H?A D$= Mut$LAE I]E]Il$PE|$XAE MuI]E]Il$PE|$XD$AD$=??ADŽ$IfED$dEAD$L?|$t$AD$`)98)A9D$@ A$ EHYAIE0AD$Q?$DD$I]E]AE A\$D\$Ht$4I|$ fl$4At$D\$ID$ ff.AD$8?ID$0HtH@E11AAD$AD$ H9HWE$D|$IE0AD$Q?bf|$At$DIL$H)9)At$<>HAT$\9F‹t$9G))ƍx1AT$\t$Hwff.AHH9uET$\Mt>EAD$fE$D|$AD$R?$@I H9L\f.E9D/ff.HAHHD9JEu9E11@AD$P?$fAfAaAADA9r3fDff.DHAIL9EufE11&fD>HZA A!hff.ff.ff.ff.ff.EDHAAHDHD!DЉHBB A9rDDDRA)HE$117@ff.ff.HAHHŃEuED|$@ED|${LH)AD$\5fDID$0HtHhAD$t AD$tAD$7?11I@AHHAHH HA$A$A$w HE$D|$IE0AD$Q?A HHH5H9MHE$D|$IE0AD$Q?YfAAl$@0EHD|$AD$G?|$ fDE$D|$@AET$`ED$dAD$K?a@E9uD'f.HAHHD9FEuDAID$0Al$\Hth At$t AD$AD$9?E11DAv=\Dff.ff.HAHHŃ!EuADE$E)!AD$\HAD$\&AD+|$DIE(ID$(EED$EI9l$ `Hc$D|$IE0AD$Q?]ADE$E)!HAD$`AD$B?AD$\|$ < E11JEHD|$$At HHID$0Ht @HAT$HHHHB!BHHH)HHHHHH)H9HɜE$D|$IE0AD$Q?3HEWHHIE0D|$AD$Q?$ADE)E1HAAHAA DA9A$B<fȃfED9uA$KAIA9AD)ff.HAHHD9EuYD\$I|$ HމL$D\$L$ID$ ;A@TH'E$D|$IE0AD$Q?DDQHH I;D$ WD|$E11D\$I|$ Ht$4l$4DD\$ID$ _H?E$D|$IE0AD$Q?uH9IHH9<,uf.ADŽ$1AD$E?|AAA9DfDHAIL9EuEL$LDT$DH)D\$I|$ EeD\$DT$AT$ID$ IE`AD$O?A|$D|$11ADE)E1HAAHAAxA AAEA%@EDHAAHHD‰!H QD E9rDqA)HE$A)At$\HEAωwGH56)H~H9HLF1HfADH9uADŽ$I$X1AD$xI$fHnI$I$M$flMD$xLT$AD$hD\$D\$LT$HɗL$EIE0D|$AD$Q?IAD$O?4AD$I?AED$dIT$0Ht HHAD$t AD$kAD$6?11YDz,D\$Ht$4I|$ fl$4AT$D\$ID$ ցADE)H+AOHAELAAA$LADŽ$AD$F?AE$1.DT$D\$D$MuI]AE E]$Il$PE|$XAl$8u AD$8D\$111AHt$41fD\$4HID$ D\$1AD$5?ID$ AD$O?D|$11hI$XM$AD$x I$I$I$IT$hMD$xD\$,LL$ HL$Ht$0 Ht$HL$LL$ D\$,WHfED|$IE0AD$Q?gHAD$8AL$8HEW$D|$IE0AD$Q?#D\$I|$ Ht$4fl$4D\$ID$ gHIE$D|$IE0AD$Q?ED|$e9]E1D\$111ET$AD$D\$ID$ IE`AD$??E11EWH\$D|$<$H=MD$|D\$I$AD$|A$ID$pA$HH} D\$EHۓD|$D|$E11AD$=?118nfDUSHHRu>Hw8HFHHtHHPSHHs8H{PSHHC8H[]ffAUIATUSHHo8ËU@tWIHtOuD)HuHI9rcL9s HI9mLE@UDHuHHH)LH9s@IL9rWMtE@AEH[]A\A]fIH9svmfH9sHH9samDPmff.AUATAUSHuzH_8HISCu6=>?t6DDHL.uZCH[]A\A]=>?u)111mDLH^H9C t뾐fCR?fHt[H@tTHHtMHG8HtH;8uH4?v f@t1Hp0FHf.AWAVAUATUSHdH%(H\$HDCHk8AEuX}S?_HUPES?HFHLHD$HHH9uHUPAHT$1EXA)6D@u,)ljA 9H@to:wDžtS1f.}S?uXHUPES?uXHHUP91@ǃ‰DCELAA yL1,fD)ƉD@HD9s?@t:1uă@ƃHD9rff.AMLkL)SLkDu1AtEL{(EHLkL{(DuE??HD$dH+%(HD[]A\A]A^A_fDLD9sqH12D9r1GL1E1AfA[APE11@HtKH@tDHHt=HW8HtH;:uJv1A?uRX1f.AVAUATIHUSM,$HLn8H~PS@HHHxHHHǀH1H)HMEHMt#AM8H{PS@IHI9ML9s HCpI9 hoA$oCAD$oC AD$ oC0AD$0oC@AD$@oCPAD$PoC`AD$`L9HI9?IEH}HLHHEH)IH)΁HHIXLeIUhH9r.IH9r"H)HXHUhIUpH)HXHUpIH)HXHMt&IuHAU@I9slIH9LILEH1Il$8[]A\A]A^ID$pH9fDI9IH9ffL9sHI9sfDH{PHSHaf\ffDHtKH@tDHHt=HW8HtH;:urvǂf.Ht[H@tTHHtMHW8HtH;:uJ4?vBtt B1@B1f.HtkH@tdHHt]HW8HHtH;:uJv fHcHC?t-L?uۋ+r\HHR\HfHt[H@tTHHtMHW8HHtH;:urv fHHXH)Hf.Hf.f.f.f.f.fDAWfALAVAUATUSHHHt$ LL$dH%(H$1)D$`)D$pt)Ht$ HH4NfHfDL`H9uHD$`AfxuaHAuHD$HP@H@@D$1H$dH+%(Hĸ[]A\A]A^A_AaHD$`AAHE9tfxtLL$~HL$`ff.ff.q)bHL9utELABL$A9AFD9AB11f$Ht$bD$H$ff.ff.fHHfHI9uLL$ Ld$1tE@ff.ff.AAftTifALfTHH9uL$D$(AA4EeD$HD$8HD$0D$OD$ND$(H+H\$P1H|$XDd$E11҃Hl$@D$HD$,H|$Ћ\$EE)E1GH9r9H|$8)D GH|$0EIAvfDHI9[]A\A]A^f.AӉD4$  ։4f0E/ ։4f0EAAD AAfHI90D AAaHI9D 1AA3I]I9DAEMAHI9D0AЉD$ AWAVAUATUHS4DDf 0AA)D9HG(LOf0LPLW(AHG(HWD1LPLW(D 4)D0AD[]f0A\A]4A^A_D4I1L5AHTDDBDDD D)f09 HG(HOLPLW(HG(1HWLPLW( 4DD)AD4f0; LND0EVA ADCEDAHLD!YEA E EA)A9}MHG(HOfD0LhLo(DHG(D1HOLhLo(D4D)ALEHQ4Bt}HF+EEAE EA)A9HO(LGfD0HYH_(EHO(D1LGHYH_(ED4DD)AAL4Eڃ7HDIEXAA)AE D A9}OHO(LWfD0LaLg(E HO(D1LGLaLg(ED4DD)ETAHDfD0DD4DEH~+D҉A DD)fD0D9HG(HOLPLW(DHG(D1HOLPLW(D4D)AD4f0mfHwfDD46f4}ED4DfDLH ٴH5E1HLJ4Hh HH H H HZHX Hp H fD0H HL@ff.E1E1HfDXfD@H9uHH@ ff.ff.E1E1HfDHfDPH9uE1H HFfDf.ff.11HfHfpH9ufLJ(fLJ @ff.UHISHH4qf 0 ~IHO(Hwf0HyH{(HC(1HKHxH{(@44) f0H߉4GHC(HSHHHK(@,HC(HSHHHK(H,HC(HSHHHK(ш HC(HSHHHK(ш,Ht+H{(H{L9r-I9s I(H9#GHL?Hk(H[]@H/I9sFf4t5~)HG(0HWHpHw( 4f0fDHG(0HWHpHw( HG(1HWHpHw( 1f0LJ44Qf 0 ~KHW(HOf0HrHw(HG(1HWHpHw( 4)у f0J4 ~?HW(HOHrHw(HG(1HWHpHw( 1ҋ4f0H4t2~)HG(0HWHpHw( 4f0HG(0HWHpHw( HG(1HWHpHw( 1f0LJ4AUIIIATAHJUSH(HA…H?IXrIX LLD$I LL$DT$H $Ip LA` LHsAx HdI LD$LL$DT$H $H5fA ,HHuIHpHII HH HH9AH9r EA4At$A0  IM( I}LAfA0ME(IE(IMA1L@ME(@<A4)HAA` A4Ex  IM(D MMLQfA0MU(A IE(IME1LPMU(D A4)HA4 EDIM( I}LQfA0MU(IE(A1IMLPMU(@<A4)AHDύBA4 AMMAD I}(fA0LWMU(A 9IM(E1I}LQMU(D E4D)AIL ~A4ITrIE(IMfA0LXM](@<IE(A1IMLXM](@<A4)AHDIfA0A4L9AE D ǃ xHITff.t f8HHH9ufAu=fAu2fAu'IfDHH9af>tGXH9r EA4AT$A0҃ IM( IuHyfA0I}(IE(IMA1HxI}(@4A4)HfA0H5xLHwA4}HILE1E1HfDPfDXH9uHI@ ff.ff.E1E1HfD@fDHH9u1I I fA @ff.11HfHfpH9ufADž(fAADž AEuEH([]A\A]HBHH H9oEfDLLLH(L[]A\A]HcHH@LHD$$HHH A 5D  A7 01ff. HSD@D @4 HD@D < HD@D u'f9 [Hr(fv(H~sf fHYs0Hcf.WHAdwH)HHÐff.%DH%׬AWAVAUATUSHHdL %(L$IM2IH&HIIHu HfHl$DLL$IEpHbHHD$`)D$P0AąLL$Lt$(11D$0LL$D$D$0T$uH9HFÉD$0H)ÅuI9IFljD$I)1MH@tD$HD$(HL)IET$DEH$dH+%(uHĘD[]A\A]A^A_A7SHHdH%(H\$HHH$H$HHD$dH+%(uH[A%ĩ@A%L@HHH HHD8 HHHHHH9HBÐ%f.AWAVAUATUSHdH%(H$1HTHIIIHt H:M1I/HMuLD$xfHT$H5`pLD$H|$D$HD$`)D$PAŅLD$D$01LD$(uH9HFʼnD$0H)ŋD$uH9HFÉD$H)1H|$!‹D$0tL$T$H|$HI)IH)HH)I7T$ttJuHt@AH$dH+%(u2HĘD[]A\A]A^A_@MAAfUSHH(HdH,%(Hl$HHt$HD$HHL$HD$NHD$HEHD$HHD$dH+%(u H([]t@HdH%(HD$1H $HHT$dH+%(uH4@HdH%(HD$1H $HHT$dH+%(uH@HtOt %4@%f.f.AWAVAUATUSHHIHH=IHH\E1L%\AExAEH uIE(AIDžMe`AE@$u#=fff.0AE`AFIt\PЀ v+~~~HHNCHHC@NH9HH9)HT$H7H|$,H@PHMx)ff.AUATUHS1HDV1HQËD9sEDSt]uH@t4uULD+HDeL)HUV]xA)HDeL)HEt)H[]A\A]DA)HDeL)HEHED1H[]A\A]fDHOHHD+DeL)HEH[]A\A]HNf}DtRHHNHHDHNHD$ 6HD+DeD$ L)A)HDžEXL)EHHE1De@SHCHt[u7Ht>sHt uSXtʋu1[H NH|[DC(HHC8HruC(Hs8HHߍctHC8HC1fSH8f.HCp1HH9~׉Ɖ)H)HKHs;HCpHt-űSXt tHt HCpHu1[ÐAWIAVE1AUAATUSHH(dL$%(Ld$ImT$Hs9FЉII9I (H9LHL$HCxHkD);LD$LHkIH)I9.&IM9DACĉD${{XtSHtoC(t$9rbLH߉LD$+LD$Iff.L9s H.I9 %I (DHLD$LD$L< 2CXuaHD$dH+%(uZH(L[]A\A]A^A_HL$LHLD$1l$LD$IHtfC\ђX$ff.HOGxtt OLATI1U1SH~Ht1H{puHLHt[]A\H(u1Sxtu2SLtՒ8HH fff.fHKH@HyOHЋQxIt tQLtqAV1I1SHHH(LD$HD$~LD$Mt`HD$I@H@p7HtFH{puSHLHLD$LD$1IH1DHaJH1H(H[A^HLD$Ht$HD$Ht$LD$HL$~@ff.SHdH%(HD$1HHOGxt tGLt|11Hst5HCHCHPHSHT$dH+%(uHH[fDH{pu!Ht$HoHtD$HuҸfD%Zf.Hx~OkUSHHNHCxtt CL11HH{pC(;4tb9HSHC8H9HBHC;@jHCHC\HCH[]@jH]HC8HD0HC@(HCHHY@ff.fHHH9Vfff.ff.AHHH9K8r;HGHa돸fH%HOGxtt GLAWAVAUATA1USHH(Ht$1H{pA Ll$ROD5M9LD$LLLLL$Y LsLsLD$)A) H|$MŅtjA9L{ AFLALLIHt HL)DuLM9jM9s K7I9OD5\fD1DH(t C\MHD$I9t&AH([]A\A]A^A_fHH(1[]A\A]A^A_7fHtKOt1@WHuuHH|$%H|$1@Hf1fff.ATUSHOuzG(HuH1{xH@11 H{ l{HAEuB[]A\HH{8H{0׌DffUSHHo,|-:HC0H{@tk(1H[]f.HD$HC8Hfs`HBHǃHjpADKdPJY^u6C,S@HǃC(mHC8HHCSH{8̋H{0‹HBH#H|$fff.AWAVAUATAUSHHO(k@8HH-fDHcHH)‰E@CL{9Gy} u CL}.HHH[]A\A]A^A_fChtD t~HChAADžtpEt:E1ADHŃ,A9uA0ff.1H[]A\A]A^A_HHsH9HT$H4$uHT$H4$HHHcHsHsH9sQH)@E{H9CLHOyf.DDEHC8Ds(HDHCfHHsH9(HxAH8Ch1USHHHCpS(H{0H9HOHO1/DHtHS(HH9LHC01HH+HkHCpH)HCpuH[]@1ofDHAWIAVAUATUSHHw(HT$;H{p`C(HH9D$Lt$|HHH))ՉAM9ABMBHL9EJ'I9O,'LML5HkM)01HUk(MMH{0rHHjLLl$AfDI)M9DHAC1u+HSűCLt-Ld$M)I!#f.1H[]A\A]A^A_HtۋC(HH9D$5DO,'I9L9DHD$H[]A\A]A^A_@1Hp1DKL]HD$L)LOxW(HHW0H9r1@S1HEH{0t/H*HC0H9C([fDH1[fff.HtSyuJOxtGLt%zM`gBH獢40pbMQ 7RsCXi C˲AӝSc!e<+os943cl$RìRpFz~e=:ʵ!O@һjb0-C IJ 25ZS`tJq0Ò>K"a %[CA\ak{<Dn1Vk;P/k,rW 9O}}A@_(c8-J33RwR(xop9&~b #&Bs)`_nYƀUفv \N0 ^Q,sh#ʳe;$O|@+E}l9g0 Lĥw573`VJ\tJ >M_'㻂FAdbk]&hD,:}4n*mU;wUICW%}ҖD(ֆYf:~0t-y>6iűR.WIu x x&\?&hG%/aseYHvه/5k\VT X#vꌎɗA'z*>QFGОdUq6z P4MpU4a刀&w/pe[7!$qEנ$`g'X!R@7 PėV^ott+3=ty2&GM#eDdg̅N HbD57TT7vsi%"EfCD[Uf<2uQ69(êWll"Feu NR(UL#ܯ?G|42W"\RW@ɄpK@ntSy>X,7 lgkKr{pytⷩ>&4,zH8kjylV~-c9QH+ၢbMF0ZQIeT{.n5rF|yϨڃ@Sͻ AP 2b9,^%.~FXuMi b_V]FA:J tz)_"(> 5J6 X#dmruN;`'P5 Gllō ">2 u۹rg^ !t+ o7&<28uj]gVwr8|v``k_'TH5DHC ˏb\ 0.Jý|Xnջ @ ME֖_إ w^ 9ɗ Rޅ[LKi'Yк"őLp ى^Bǽpn>< mf!z&Dq3hZEZNtRǡYf4:s1f-a?&q&Cx 4*s,׋ar~<`&ɿ@24˨!\ܺk3%BtYfē3:8L$Ah/^v=s$  dűoJs XxLK$TGj[YP`gMK[8Л,Xat:w?YaX,9m󲵏:8u Z&cb.A [~œ ;OcYR 5 y=tp2,fU+L ujJF\M!-.sőNH^_8v`DzO?r/+wd)LwX:6:8{ǰ<:`mLj [:=9 dY̆=AWH=/=a4bɊ}4CQZU44:6ɲ΋n34 3yc3;%γoB["3ӯ'L Ći,ˋ'FPE't"'z- 1 M|1 j'V uc)v3)~)N(hO.%). p.wD\/R..O;MuH *umȈ(up{a6u9rۏ)^rIWrArrq {r Gإ{UCk{J {*T|"|so3|+y4x|K4h֕\Shf^~3uf>a-JgߨaRDfa?aׄ_ O:]ֿOp[(MqOOHNHq,Ha)HIw):bH*WA.0AJcҼAu{8Ar#FKÙ+DFYhOFsFCR+Rf$dR<꯴p\=oR԰U7ePѲU\]J|UU=.\>̡^I\^eH\\f_Z[)=[?dߦ[grv?[(`?aZVSnA~´i24~aV\7dž2dhĔ\ d|c9PX zxeD+*ǺpJ.{b'ztLW%U%^<:^}Uufҕ>y@.;eJ̥{c5rE gq߿_p/sS_(;ʺo_n4s]?/6O6MޣKi-wFn/1޾+DNOJ>ږ. ^cwhΒ~ΔT[j/?<~LvflFE>t"3xX |j 61Ϗ\Z[,RA} *nН-C']2\V(oέzMa=BmB&9m(TZX}!0xly8?$SDh@g:HQ8xJi8 !CDݴ9H`I|#d]PY4&)fh ~yLMz؄K7;)xuok{=T) R?YV+q[= a.&9؁ ]MUz$vʔOZe *:KJI0-cڸ jqah)MD>ӋSjDGsz̻mIEͶԈABoAvے KDOSdm Rz)`!8>-)LN必!JWl% $=hI^jPGۏ'4n#S-彜)U[>/Bb1z+mSf(DVې C[X fGmKz D^Sz>ђ)O]cm+>ՠt)KoDlSmO(zh.CṟjqGi ۔-&SbDdz/?m #LfU)g>+#'a幮j%:ꁡI#&P𭘟nbl{3*!?⡿Yh<廷@%x>)6)~/d:\m9z-D}ES`ۖ4xapE ڟsáA 7z}mM1dSDu)Iv>׹2(AS?J V9{ۚlEUR EVOIS<ڞP%Ml]{%ERhr?!պ(lk^`X-wdЦ)[n ŷ+B܉f/g~bAGn(?#̪RjbE{{'lDFOŽ _ڜIJ,K5CE RǒlGLZ{ك)O0?(C ?>(G9' }TlC~{ݱE:MR<;"xOQژ{KH?{#ulvlRnE2(1?'ujfspi+7Ҟb4ˠ/p`-i`-y ).djehl?%|((E+Rllo{!+&Iښb2MAaXꐞ%.RE #{ߨ7lAgdD](E ?6Q$lIZmD  ۂc۝-g|)jmIEin$s8%H4ϻl0H{]M =!9RdW>4ѓeSH^lp!Z%F3lKpbo*h&we٨&aĄ㴷퍐 Oo&YZo5 K*n{XJ'\=n ?QQ׵gU";xNV?2'CJ6nfؖ7Z֕^T"bsS 8MWi}iK9MK '=0^4/n.Cju;g!jchL L衏hR !0j\GU62O$@?k~H;";" UWxka)QOް\VgMnxg{?C!|. *q{uխ`D)^ ;aKW$"zsH~~fs 7)wD`vE@-a ,G)(ט$R ;̺jNJ_(i.G 3aCEu+ eS4B=c*!؈!dRǡ 41?*S؉ r=o)ۏ"z>@bPTEa9E>P)3ێzQ8copU`.V;! ȱ;C(ڍb? :a0W;R?.(sڌx&N3##A'Օ` 0 "y2O3P0&'qՔg&ԗ r1BzXLMc !M1X&1Ԗr S {grM &"}K<@2a%)א)|Jϣ <3'%Qבp2Bɱ3!$W֒C }$hbI$h֓}Ȏ03W~RH Bs%#lџy!Ċ4SCrDb F)Fŵ4#S0ў yR(lssE-pޓF" 8+@"Нa5 *q3G8Q5"-pМI6\ !ӚvB,cwcAc!ӛv16v\S@Ir-.#uCA77"` Ҙуt"B72/ Pҙq70w,aQ mjp5c飕d2yҗ+L |~-d jHqA}mQDžӃVlkdzbeO\lcc=  n;^iLA`rqgjm Zjz  ' }Dңhi]Wbgeq6lknv+ӉZzJgo߹ホCՎ`~ѡ8ROggW?K6H+ L J6`zA`Ugn1yiFafo%6hRw G "/&U;( Z+j\1е,[d&c윣ju m ?6grWJz+{8 Ғ |! ӆBhn[&wowGZpj;f\ eibkaElx TN³9a&g`MGiIwn>JjѮZf @;7SŞϲG0򽽊º0S$6к)WTg#.zfJah]+o*7 Z- deflate 1.3.2 Copyright 1995-2026 Jean-loup Gailly and Mark Adler  = invalid block typeinvalid stored block lengthsinvalid code lengths setinvalid literal/lengths setinvalid distances setinvalid literal/length codeinvalid distance codeinvalid distance too far backinvalid bit length repeatunknown compression methodunknown header flags setincorrect header checkinvalid window sizeheader crc mismatchincorrect data checkincorrect length check1.3.2need dictionarystream endfile errorstream errorinsufficient memorybuffer errorincompatible versionout of memory: %s%s%scompressed data errorunexpected end of filestate corruptstalled write on gzprintftoo many length or distance symbolsinvalid code -- missing end-of-blockinternal error: inflate stream corruptrequest does not fit in an intrequest does not fit in a size_tout of room to push charactersinternal error: deflate stream corruptrequested length does not fit in intstring length does not fit in int)(p*((((((+(((((((-.     xPRPP0Q`QMpNpMPRHHHSN O`S0OOIIHLlLJJSg[M0Y9gPY     @@ !1Aa  0@`K #+3;CScsA@!  @a`10  @`Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O `Psp0  ` @ X ;x8 h( H T+t4  d$ D \ S|< l,  L R#r2  b" B Z Cz: j*  J V@3v6 f& F  ^ c~> n. N `Qq1  a! A Y ;y9 i)  I U+u5  e% E ] S}= m-  M S#s3  c# C [ C{; k+  K W@3w7 g' G  _ c? o/ O inflate 1.3.2 Copyright 1995-2026 Mark Adler   0@`  0@`  (08@P`p        L,l\<|B"bR2r J*jZ:zF&fV6vN.n^>~A!aQ1q I)iY9yE%eU5u M-m]=}   S S  3 3  s s    K K  + +  k k     [ [  ; ;  { {     G G  ' '  g g     W W  7 7  w w     O O  / /  o o     _ _  ? ?     @ `P0pH(hX8xD$dT4tC#c      |SSSSSSSSSSSSSSSSSSSSSSSSSS:-SSSSSS!SSSSSSSSSSSSSSSSSSSSԋSSSSSSSSSNjSSSS;P0`   h$0LDTDTd@Th|4Tt 4lDL 4 4 4 p 4 ( < P $d D T P D t $ ` d% % +4--../0$081L$RRdS@T|TWWTZPZd$[x[T\aTbbc`ikr4w`xtyDz{$0Th$|Tdt D0TDdXlD4<tTtD$@4dDx4$ DpTD0Dtd<Txd4DԠ<TDlĪDHԯTD4zRx ȼaBLF E(A0A8 0A(B FBEA ] 0E(B IBOA ^ 0A(B EBOL 0F(B BBB\|TNEB B(A0H85 0A(E BBBO C8X|lx40Pl,AJ TG|D BIB B(A0D8 0A(E BBBA ,8\BAA ` ABI h< dBBB B(A0A8G@/ 8A0A(B BBBF Y 8A0A(B BBBA @8 HBBA A(G0o (A ABBF H`0xd BBB I(A0C8GPw 8A0A(B BBBE  8A0D(B BBBA 8A0A(B BBBH$BBB B(A0A8GP8C0A(B BBBH,BBE B(A0C8DP 8C0A(B BBBI x2PlH}BBB B(A0C8DP 8A0A(B BBBA $ `J DEP 4x 8LhBAA  ABE G AEK ( AG Q DC A6 bhvLBBA A(D0 (C ABBI D (F CBBA @dFT'hd|BBB B(A0A8DP 8A0A(B BBBA  8A0A(B BBBI ʴP0PBAC D0  DABE ,8,BAA  ABK dh&BBB B(A0A8DP] 8A0A(B BBBK i 8A0A(B BBBE $DJF O, BAG  ABB   8<h|AA o ABH pN Hx,BBB B(A0A8G 8C0A(B BBBE 6XTDD BBB B(A0D8P 0A(B BBBJ 0L BGC D0  AABH  40 N 4D G  S( $ AG p AG TF, (BAA  ABD < !P !Ld 0" BBB B(A0A8D{ 8A0A(B BBBE  ( `BWAAG y CAJ 8 BBEA A(D0 (C ABBJ < |08X CBBD A(D0D (A ABBI  ChH CBBB B(A0A8DPF 8D0A(B BBBG  FV< FjBBB G(A0 (A BBBH H r0h HV| HIf I JhH JBLB B(A0A8J 8A0A(B BBBH  O( HP}D0 PNBB B(A0A8w 0A(B BBBJ Lx \QBBB B(A0A8D 8A0A(B BBBA $ V.p G PY< X-BBB A(A0 (A BBBK D0_OHBB B(A0D8 0A(I BHBF xcA(e.AJI  AAE  epf@LgBKH A(DP (A ABBA ~ (D ABBE HmNf L lnnn$n n LnyBBB B(A0A8GL 8D0A(B BBBA $oMAD ~ CA H p \p pp/ pLpBBB B(A0A8GU 8D0A(B BBBE (hqlAAG@X CAA q<D q A 4q<D q A Tq$HlrBBB B(A0A8DP 8D0A(B BBBA u u 4ujBAA S ABF FABu>(,(vgz G `HF Xv  GW y G |xx8x(xaWc F GIHH0y,y 8yS yT fL8yBBD D(G@ (H OBBI Q (A ABBA z<zBEB D(C0] (A BBBD 8{D0 E 0{RBAH G0A  AABI ,0\H ~BBA D(F@ (A ABBF c (A ABBG q (F ABBD AF I Z F HoAmHBEE H(A0A8G`f 8D0A(B BBBH 4`8T oFE o ABD `F 4ԂqHJ@]H@Z DBH AD { AG X0TWCG  AAE x4BBB B(F0A8G`H`s 8A0A(B BBBC U 8C0A(B BBBA `ĆSq \0 BAA ] ABD 4AAG0j AAK M8K@G8A0`TpBBB B(D0A8GP 8F0A(B BBBC  8A0A(B BBBH (AAG  AAE |08KEB B(A0A8GPi 8A0A(B BBBH Q 8A0A(B BBBE XHPd`PЌsaz M J$0u]I iAHH 0dHJ0JC0cAB( AAD0 AAK 0,^CF u ABA `P`DxnGF A(G@ (C ABBD h (A ADBH xpG A ,v]GG b AAA `HdBBA A(D0 (D ABBH F(A AEB(LAAD  CAE @10PQLL LF FF F F F[ mhmhnVVWVV.WVVVW4J 0 !o`  p o8ooo$$$#%0GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_d.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0$1o`; `` CKo$$Xo88Tgpq$${00@0@0w@!!00? oottxp 00 P 0$ELF>@4@8 @XXZZ   88   (;00$$Std00PtdhXhXhXQtdRtd   P%P% GNU GNUX(?@BCDEFGHIJLOQRTUVWXYZ[\]^_`abdfghijklmnopqrsuvwz{}     !"#$%&'(*+,-./0124579:<=?@ABCDFGHIJKLMNOPQSTVWXZ[]^_`cdfghijklmnpqrsuvxz{|}~"R$kYӣ;xUN~F'2Sh6ch`$HSW}JŝQ3N4 ޽:q(B@FQW†G,d']vY1鵅ѓGU䫄;`9cDu4 gwag,C %gY o'7d=aGI9= 31üo2Uf]l"F=r]sD2WQs=58<·\#l9i#$-s"ѿ6NfK]ܧA-'daxTQ'`|p*84jrO>QGuwɱ+@ynYF `xn !b419m'"Z3$$]Om pkAKV')3o*Ak#jKdav]A R߳<&8Eנ?3zGWDl܋ҾoSm/(0k+؜DՒo9)H9[M4GkD}cg!ϝ¢l^$o TN} *z%Փ]Gl@Jԭ-,P* 7U"Q*k;xAVGL&%=M-x sw#9Mvw-T2cʏ{s7GYS Py)A[pW>ԣ(5\Nd竽O±Nxup{F;7IE3QAXeIuc\ųv,rAѠ{#iLoYzF! !}n. վngl"iFu}y瑚BoQ*&n+;-5"`[m)v?FY4⻎sk( ;D;Qxs qeѬ=(Yo\-=5߇';У壶C+z^>JF=swaЌaPz syi!5׿̑]@*8U768 䣥tr%$월` roURek&aZw'bJ!s+URL5@Gz4oY!4cְ) c\/z'gu%OU0eF2eCn, "%'#` y$d "(!Qz%F+$&%f$(#%F%C ="R##NI&y"l(!$8f%#"z2 $ 2 N #0% $%*.&# ( HN M$j'r_&A%G#'~6%o&F$I3$#rT'' X%[ fq $( $#$3"%*&D% H$n%%]!#Y2(%";@#$ 2/&!v#"" 'r"P S { "#-%6 L  ,Y s  |  ;M]  Cz  W =l] 2hF '  Q-C <" ^ZW& X .Q ]  ?v  ^ R)P 33b }  o?-! a l  ,g ; 6<& ; n R :D |A&v 2 k  P PJ 9G m <  KV&_ Ql@!' G!P J' %{ C  qkn (3 "Z" (N  ]6@ ] "  $ / 7+i 0 K" #C! |x  7s 0  @  ?\ Xy N 8 `G' C' WP $G%d >% c   \ SB BO C& D  oQ .a~ B  I m " _# _ X@ (& 1 $ f  )/ f (  .T9 r   W Kx 4?;8    CB H ? ( EQV 7 *z C q ,Q  ίm{& >Y  y+Y! }  XX  Z @ ~] " & D)  R*  .  A;>  v&/' v Q ـ3 t8es \ ) U/5'PF  } o$2 F\' > Ԯ gps (  ojl ) jO [  7) 7xe p_(  CV m  c  lX  |`   (i e9# i'   ic  Ir+  IG' ;^hF Z 0  \   KpW  @( BA  (v     I3 CLmU r 4 # 7  .0 ίy"  0  V@ (D& Y9 u' y   >! Rx 7&  W dw  D { D 8 -s! }!@P  SgI ]>S iz  k71J %42  Ap  ;K (   ^uf Z2;  e |# ' 2Dr L"  (.18 c6' vOx  /v  i PI LT  & j Ar: z |@ $  pGT&  ׆7! z h8   l y>yH <.( 7P   s7$  E b(* \H! D" 5#d3 Q'`F " Qz 4& WA P M D" I&% j k0 1 )% Z lB_  < (9 Z d qVV rs  R} "" R  =Z O e  !P"  Z!? o 'ev 20]  5  53 W q DQXF# _ A*" 6  0 2f ^& -Q G   4 pO3< c ? g  *]   5H9' eD qEX' D (d $~ W_1 l g    r3 & ` O p#! ~c =R R M )A  e  I 1( G    , O /]l# !  6F   '"Z j  p mu' 6 M- `B  l* R  h  ,  7< Y Ag# oXA 7q!  6Z VS@ (O  W 5!  $Pmn VD| O gUd hrW H$  gz0V 8( B( b;  H`zH j  (  ', +;N *W G .: B-  H d    h[#   '   8%  jr%   0TFz ;g   I% #g hq9  Z * L  gl *  9dQ 1%  2h& ''@(" = ,"  dF  :@l  '! C`  A x7u L8 b     6%( =  - S 2 UE:  < O0 Z_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infoapk_digest_calcapk_digest_alg_lenapk_blob_compare__stack_chk_failrealloc__assert_failapk_digest_ctx_updateapk_blob_hash_seedmemcmpcallocadb_freeadb_resetadb_w_init_dynamicadb_w_init_staticadb_r_rootadb_r_intadb_r_blobadb_r_objadb_r_rootobjadb_ro_kindadb_ro_valadb_ro_intadb_ro_blobadb_ro_objadb_ro_cmpadb_ro_cmpobjadb_ra_findadb_w_rootadb_w_blob_vecadb_w_blobadb_w_intadb_w_copyadb_w_adbadb_wo_initadb_wo_init_valadb_wo_freeadb_wo_resetadb_wo_resetdbadb_w_objadb_w_rootobjadb_w_fromstringadb_w_arradb_wo_fromstringadb_wo_valadb_wo_copyobjadb_wo_val_fromstringadb_wo_intadb_wo_blobadb_wo_blob_rawadb_wo_objadb_wo_arradb_wa_appendreallocarrayadb_wa_append_objadb_wa_append_fromstringadb_wa_sortqsort_radb_wa_sort_uniqueadb_s_field_by_name_blobstrlenadb_s_field_by_namestrcmpadb_s_field_substadb_c_headeradb_c_blockadb_c_block_dataapk_stream_copyadb_c_block_copyapk_digest_ctx_initapk_digest_ctx_finalapk_digest_ctx_freeadb_trust_write_signaturesapk_sign_startapk_signadb_c_adbadb_c_createadb_trust_verify_signatureapk_verify_startapk_verifyapk_istream_from_blobadb_m_blobadb_m_processapk_istream_mmapapk_istream_readapk_istream_peekapk_istream_read_maxmallocapk_istream_segmentapk_istream_skipapk_istream_zlibapk_ostream_zlibadb_parse_compressionstrchrnulstrncmpstrtoladb_decompressapk_istream_getadb_compressadb_all_schemasapk_blob_push_fmtapk_blob_pushedapk_blob_push_blobapk_error_stradb_walk_adb_apk_serializer_initapk_ctx_get_trustapk_serializer_cleanupapk_blob_pull_hexdumpapk_blob_sortapk_blob_tokenizeapk_blob_spnapk_blob_rsplitapk_blob_splitapk_blob_push_hexdumpapk_blob_fmtapk_blob_pull_uintapk_version_compareapk_version_validateapk_dep_parseapk_version_op_stringisalnumapk_get_human_size_unitapk_dep_splitapk_blob_cspnschema_dependencyadb_wo_pkginfoapk_blob_pull_digestadb_pkg_field_indexschema_indexschema_idbschema_packageschema_package_adb_arrayschema_package_adbschema_pkginfoschema_dir_arrayschema_scriptsschema_string_arrayschema_dirschema_aclschema_file_arrayschema_fileschema_xattr_arrayschema_pkginfo_arrayschema_dependency_arrayschema_tags_arrayapk_atom_initapk_hash_initapk_atom_freeapk_hash_freeapk_atomize_dupapk_hash_get_hashedapk_balloc_alignedapk_hash_insert_hashedapk_atom_nullapk_blob_hashapk_balloc_initapk_balloc_destroyapk_balloc_aligned0apk_balloc_dupapk_balloc_cstrapk_blob_cstrstrdupapk_blob_dupmemrchrapk_blob_containsmemmemapk_blob_starts_withapk_blob_ends_withvsnprintfapk_blob_push_uintapk_blob_push_base64apk_blob_push_hashapk_blob_push_hash_hexapk_blob_pull_charapk_blob_substapk_blob_pull_blob_matchapk_blob_pull_base64apk_pkg_version_comparestrcasecmp_apk_array__freeapk_filename_is_hiddenapk_dir_foreach_config_fileapk_out_fmtapk_out_progress_noteapk_db_run_scriptapk_pkg_cmp_displayapk_print_indented_lineapk_print_indented_groupapk_print_indented_fmtapk_print_indented_endapk_print_indented_wordsapk_print_indentedapk_foreach_genid_apk_array_emptyapk_pkg_foreach_matching_dependencyapk_pkg_foreach_reverse_dependency_apk_array_growapk_print_indented_initapk_solver_precache_changesetapk_db_select_repoapk_progress_weightapk_progress_startapk_progress_item_startapk_cache_downloadapk_progress_item_endapk_progress_endapk_solver_commit_changesetapk_db_check_world_apk_array_copyapk_fmt_human_sizestdoutfflushstdinfgetcapk_db_cache_activeapk_db_install_pkgapk_db_fire_triggersapk_ipkg_run_scriptapk_db_write_configsyncapk_solver_print_errorsapk_db_arch_compatibleapk_db_get_pinning_mask_reposapk_solver_commitapk_solver_solve_apk_array_resize_apk_array_balloc_apk_array_bcloneapk_string_array_qsortapk_get_build_timegetenvstrtoullapk_trust_load_keyapk_ctx_initapk_trust_initapk_out_resetstderrapk_id_cache_initapk_ctx_freeapk_id_cache_freeapk_trust_freefcloseapk_ctx_prepareapk_out_configure_progressaccessopenatmkdirat__errno_locationgetuidapk_make_dirsfdopenapk_dir_foreach_fileapk_ctx_get_id_cacheapk_id_cache_reset_rootfdapk_digest_alg_strapk_digest_alg_by_strapk_digest_alg_by_lenapk_digest_from_blobEVP_MD_freeEVP_DigestEVP_MD_CTX_newEVP_MD_CTX_freeEVP_MD_CTX_set_flagsEVP_DigestInit_exapk_digest_ctx_resetapk_digest_ctx_reset_algEVP_MD_CTX_resetEVP_DigestUpdateEVP_DigestFinal_exapk_pkey_freeEVP_PKEY_freeapk_pkey_loadBIO_new_fpPEM_read_bio_PrivateKeyPEM_read_bio_PUBKEYBIO_freei2d_PublicKeyEVP_sha512CRYPTO_freeEVP_DigestSignInitEVP_DigestSignFinalEVP_DigestVerifyInitEVP_DigestVerifyFinalapk_crypto_initatexitEVP_MD_fetchapk_package_array_qsortfnmatchbsearchapk_repoparser_parseapk_ipkg_add_script__apk_istream_from_filestrerrorapk_write_fully_exitapk_name_array_qsortstrrchrapk_deps_from_adbapk_ipkg_assign_scriptapk_pkg_write_index_headerapk_blob_push_depsapk_istream_get_delimapk_blob_pull_depsapk_extract_v2_controlapk_repoparser_set_fileapk_pkg_installapk_fsdir_getapk_id_cache_resetapk_hash_delete_hashedapk_db_query_nameapk_db_get_nameapk_name_sorted_providersapk_db_dir_prepareapk_db_dir_unrefapk_db_dir_refapk_db_dir_queryapk_db_dir_getstrchrapk_db_dir_update_permissionsapk_extract_warning_strapk_pkg_replaces_dirapk_db_file_querystrstrapk_pkg_replaces_fileapk_fs_extractapk_db_pkg_upgradableapk_pkg_get_installedapk_version_matchapk_db_pkg_addapk_pkgtmpl_resetapk_pkgtmpl_initapk_pkgtmpl_from_adbapk_pkgtmpl_freeapk_repo_index_cache_urlapk_repo_package_urlstrlcpyapk_pkg_substapk_ostream_to_file_safeapk_istream_from_fd_url_if_modifiedapk_progress_istreamapk_istream_teeapk_extractutimensatapk_db_read_overlayapk_db_layer_nameapk_db_initapk_repoparser_initapk_db_closeapk_pkg_uninstallapk_repoparser_freemountapk_db_get_tag_idapk_pkgtmpl_add_infoapk_db_index_readapk_url_sanitizeapk_url_local_filefstatatapk_hash_foreachapk_last_path_segmentapk_process_initapk_process_forkumaskfchdirgetgidunsharemkdirchrootexecveapk_process_runapk_db_cache_foreach_itemfstatapk_db_permanentapk_db_get_pkgapk_script_typeapk_db_get_pkg_by_namememchrapk_fileinfo_getapk_db_get_file_ownerapk_db_index_read_fileapk_db_repository_checkapk_db_foreach_matching_nameapk_db_sorted_namesapk_db_sorted_installed_packagesapk_ostream_to_fileapk_pkg_write_index_entryunlinkatapk_db_openfstatfsapk_variable_setfaccessat_Exitwaitpidflocksigactionalarmsetmntentgetmntentendmntentapk_istream_from_fdapk_blob_from_fileapk_tar_parseapk_deps_write_layerapk_script_typesapk_tar_write_entryapk_ostream_write_stringapk_db_foreach_sorted_nameapk_trust_key_by_nameapk_blob_from_istreamapk_extract_v2apk_extract_v2_metaapk_id_cache_resolve_uidapk_id_cache_resolve_gidapk_fileinfo_hash_xattrapk_istream_verifyapk_pathbuilder_pushbapk_pathbuilder_popapk_extract_v3fsdir_ops_uvolrenameatfchownatfchmodatapk_ostream_to_fdsymlinkatmknodatfsetxattrstrnlenapk_process_spawnmunmapfutimensmemmovefgetpwentendpwentfgetgrentendgrentgetpidapk_istream_get_maxapk_io_bufsizeflistxattrfgetxattrreadlinkatlseekfdopendirreaddirclosedirapk_dir_foreach_file_sortedapk_ostream_counterapk_ostream_fmtapk_ostream_copy_metaapk_io_url_istreamapk_id_cache_resolve_userapk_id_cache_resolve_groupinflateEndinflateinflateInit2_deflatedeflateEnddeflateInit2_fetchIO_closefetchIO_readfetchConnectionCacheClosefetchStringifyURLfetchParseURLfetchXGetfetchLastErrCodefetchFreeURLapk_io_url_check_certificatefetch_check_certificateapk_io_url_set_timeoutfetchTimeoutapk_io_url_set_redirect_callbackfetchRedirectMethodapk_io_url_initfetchConnectionCacheInitapk_pkg_subst_validateapk_version_result_mask_blobapk_deps_addapk_deps_delapk_blob_pull_depapk_dep_from_pkgapk_dep_is_providedapk_dep_is_materializedapk_dep_analyzeapk_blob_push_depapk_deps_writeapk_dep_from_adbapk_pkg_readmemfd_createfcntlapk_pkg_match_genidfilenoioctlfputsfputcvfprintfstrcpyapk_out_log_argvgmtime_rstrftimeapk_progress_updatepipe2posix_spawn_file_actions_initposix_spawn_file_actions_adddup2posix_spawnpposix_spawn_file_actions_destroyapk_process_cleanuppollapk_process_istreamapk_query_field_by_nameapk_query_fieldsapk_query_fieldapk_query_printable_fieldapk_query_parse_optionapk_serializer_queryapk_serializer_lookupapk_package_serializeapk_query_match_serializeapk_query_who_ownsapk_query_matchesstrpbrkapk_query_packagesapk_query_runapk_query_mainoptgroup_query_descapk_serializer_jsonapk_serializer_yamlapk_ser_format_numericgmtimeapk_solver_set_name_flagsapk_tar_write_paddingapk_version_result_maskfscanfinet_ptonfetch_infofetch_parseuintisxdigittolowerfetch_default_portgetservbynamentohsfetch_default_proxy_portfetch_reopenfetch_bindgetaddrinfofetch_connectsocketgettimeofdayfetchRestartCallsgetsockoptfreeaddrinfofetchCopyURLfetch_cache_getfetch_cache_putfetch_sslTLS_client_methodSSL_CTX_newSSL_CTX_ctrlSSL_CTX_set_default_verify_pathsSSL_CTX_get_cert_storeX509_LOOKUP_fileX509_STORE_add_lookupX509_load_crl_fileX509_STORE_set_flagsSSL_CTX_load_verify_locationsSSL_CTX_set_verifySSL_CTX_use_certificate_chain_fileSSL_CTX_use_PrivateKey_fileSSL_newSSL_set_fdSSL_ctrlSSL_connectERR_peek_errorERR_peek_last_errorSSL_get1_peer_certificateX509_check_hostSSL_get_current_cipherSSL_CIPHER_get_nameX509_get_subject_nameX509_NAME_onelineX509_get_issuer_namefetch_readSSL_readSSL_get_errorfetch_getlnfetch_writeselectSSL_writesendfetch_closeSSL_shutdownSSL_set_connect_stateSSL_freeSSL_CTX_freeX509_freefetch_add_entryfetch_urlpath_safefetchInitURLListfetchAppendURLListfetchFreeURLListfetch_netrc_authfopengetpwuidfetch_no_proxy_matchstrncasecmpfetchIO_unopenfetchIO_writefetchXGetHTTPfetchGetfetchPutfetchPutHTTPfetchStatfetchStatHTTPfetchListfetchListHTTPfetchMakeURLstrncpyfetchXGetURLfetchGetURLfetchPutURLfetchStatURLfetchListURLfetchUnquotePathfetchUnquoteFilenamefetchDebugfetchAuthMethodvasprintfsetsockoptsetlocalestrptimetimegmfetchGetHTTP___environlibssl.so.3libcrypto.so.3libz.so.1libc.musl-x86_64.so.1libapk.so.3.0.0OPENSSL_3.0.0/( +pn(#( +pn($55(5(}XIIIII,IxJJl8Xh <x.}}(}8}H}hGO )$P12 z`zz,z`1z3zMk (0s8J@&H PX2`nhpxdDT HlS   ( 0 8@HPX.`*hpdx/ 1"?D ;    ( 0 8 O@ H P X s` h $p 0x  X   g     =       !!!{!] !(!0!8!@!H!9P! X!!`!eh!"p!#x!%!!,!!!!!!$!!!!!%!-X3-!&!"'"("" ")("0"-8"*@"H"P"+X",`"-h"ip"x"."""/"0"/"E"p"""F"L""~"2"3"@###K#4 #w(#v0#58#6@#7H#P#X#|`#8h#p#x#9#:#;#<#\#=#>#?#@#A##B##C#D##E$F$G$$H $I($J0$8$@$,H$P$KX$E`$Lh$(p$x$$3$`$M$N$$^$h$$$O$P$A$$%[%Q%%" %3(%!0%R8%8@%H%SP%TX%`%Uh%p%+x%V%W%%%X%%%Y%Z%[%\%]%|%^%T%%=&_&`& &a &a(&b0&c8&d@&eH&P&X&`&h&p&fx&&g&h& &&t&&&&V&i&j&&k&Y& &'l''y'P 'm('0'n8'j@'nH'oP'UX'`'ph'p'mx'q''r's't'u'v'w'$'i'''2'x'w'y'(z({((| (}((Y0(8(@(~H(P(X(`(rh(p(x((((((((_((#(((6((q())))()W0)8)@)H)P)X)`)+h)p)x))))7))N)):)))))))))6**** *(*0*88*@*H*QP*CX*`*h*p*x****x**7***_*******4*+++f+ +(+0+S8+@+H+P+yX+`+ h+p+Bx+>++Z+++++++++++ +:++,>,,P ,(,)0,u8,9@,(H,P,1X,`,h,p,x,Z,^,,,,,,,!,c,,u,,,',X---- -(-0-8-@-RH-P-0X-I`-)h-p-x-N---------g---[--@-?-..b.. .(.0.8.@.hH.P.X.`.h.p.x....q......k..c. ....A//// /(/K0/8/@/H/P/MX/'`/oh/p/x/z/r///////v//`/// GC@@@@ޣWUU(wwQUQ5:Q@06`CPXH=QsHJsH9tHcHt H=!sH5sH)HH?HHHtHdHtfD=ruGUH=^aHt H=boLagH=ot H=For]@ff.H=^t&UH5rH=H]]8+HG0`H`%?uHGHH@H)1Á1HHH9OrHGH11H9tHHHHTHHЋHR7L@H8AAVAUAATUSHH׃tVucHk HkFHAMAD#uHt-HH._uD 3HD^Il$HI$1[]A\A]A^AUATUSH(dH%(H\$HHu1@kH@u@k@tLD$@&LcMtMA,$@]Ht$HL$AD$HCHH9s HH9 H9s HH9s HwH{ Hs(HT$HL$it{LHT$dH+%(t%cH([]A\A]ATIUHHSHHJDII!I)tHS1LHHH{LH{K H>HH9ss{uH N~jH5r\H=x\Gu C H9sC H{\Hu H ~oH5)\H=?\eHCLCH1L9tDHuHCHCHMH9s H<H9 H9s H<H9s HHHHEHC[L]A\AUIպATIULSHHt$ Ht$ ccu$LHNcuLHH;cH[]A\A]H?w*1E1H L7H!ЉILH!LH HF@HHAWAVIAUATIUSHXHT$HL$$uH^E1E11Ht$LDLD$HLHXLH[]A\A]A^A_L9l$tH;HsI_HL{ۉ1At$HIT$(L IM9IIYHD$C9+L9u~DCI|$ME1LL9\$tVIRLL$8LD$HI2L\$@HT$0LT$(H|$ eLL$8u1LT$(L\$@H|$ LD$HIH|$0IHD$HLuCeH H;\$[M :XH@IUHXIEL(HPH+LD$LLD{HT$LCAHXL[]A\A]A^A_H(dH%(HD$1H4$HT$Ht HHT$dH+%(tN_H(PXH pzH5XH=YPbDH)HHH)1H9tTH)HHvDuHHv(HHH9rHHH9HCAUATUSHQH?HtaC1;ks2HC(IIJ<(L'HC(LH9teLM$$HH{e1H߹ Z[]A\A]AUATU1SHR;ks9HC(IIJ<(L'HC(LH9tneLM$$H?HHHCX[]A\A]H(A1IdH4%(Ht$HH$ 1Hd$HD$EAIQ(AqHAA$1H9tHHHRHHt$ALϺ?HD$dH+%(tC]1H(I1 IpAP A@$1HvHG@É%= t=0t.=HD1ҹH1Ht1ҹH1HtHÉA%=t0=tK=um1E1Ht^DLA1E1rHtH5SH={T#IH9Wt H du?H5SH=T{]HA͉HZHŠ<w <wa<HLjf[HLAU[HT$HdH+%(I<$HPDHډ[L]A\A]A^HT$LaHT$(HaDHt$(H|$SHT$HdH+%(t'H tPH5RH=SYHP[]A\A]A^AWAVAUATUSHL~A<vH Bt(H5RH=$S#IL9t H t)H5qRH=S$\nGIAջ9BD$ D$ 9sVLZAu|$ uEu*|$ t#/DL$ DLL.VDL$ tEt AG91H[]A\A]A^A_AUIATUSHXHJ7dH%(H\$HHHl$HH;YaH{AuHT$(HKBaSHt$(HQHT$HdH+%(tWHX[]A\A]AWAVAUATUSH8dH%(HD$(HG8tH rXH5QH=Q'H@ H@8t H {rYH5PH=QZIH;BtH Rr[H5PH=QI^uI_AA9s5A,HT$LI_LHQ~D}݉Hl$AE9r8HL _HLPt HLPtHD$(dH+%(t>VH8[]A\A]A^A_HwPHGpSH`dH%(HD$X1v H qH5OH=P^YHD$IAHHD$1HD$HD$ID9tHrH:HHH8HpDH|$HH=vD$@H=vfD$HD$1Ht(T$HD$APLL HT$XdH+%(t UH`[HH4$HT$H [HH(Ht$dH%(HD$HH tHt$ 0- Hvt$Ht$ HT$dH+%(teTH(UHAWAVAUATSHXdL%(LEAH9DIIw/ AA0wc0R1HUDL(]MHL<IGHHHHH)1ҹDLxHDAI1ҹDLKHDAI1ҹDLHDAIH9tHH$%H)HtHLHELD$E1IAII9s8DLEH}HMLM1҅OHT$dH+%(tEFH([]A\A]AWIAVIHAUIATUSHH(dH,%(Hl$LbHD$HT$HHv{kHt$HHAċD$D|xLLLHjx:1LHHY?x%DHu H:H5RH0yHT$dH+%(t:EH([]A\A]A^A_AWAVIAUATUSHHH8dL,%(Ll$(IIH߉D$ DŅMtGH|$CHL$LHL>H|$IuFIDAMH|$K1LHLN>Ņx8T$ 1Ht-HD$(dH+%(u-H8HH5Q[]A\A]A^A_ HD$(dH+%(tDH8[]A\A]A^A_UIHAWIAVAUIATSH8dL4%(LuIHu?HH9tHH$HH$"1LL$ILIWIOLLAąIE I] HH;1HHSHƅHH9HsHH9s H9s HK H9rCLHDž?uoAwHLLHuJHHL=u/HHLHHaHxH A~tAAFHEdH+%(tFBHeD[A\A]A^A_]HvÃ~uuGATIUHSHDHUHMH1GHHL1HC[]A\USHP:HkHPZ[E]AWAVAUATUSH8HT$dH%(HD$(H~IθHLA8HHGLgHIH$L;$$H}It$EtM$$uIULD$IMH|$[uIT$H9uAuHL$HHLD$ uIVHuHDt됸HT$(dH+%(t@H8[]A\A]A^A_AWAVAUATIU1SHHL$H|$p"Ht$HT$LD$ LL$(dH%(H$1H|$t HD$@h0HT$Ht$AE1HHH5HUL{u?&%?L{DHHIƃt]tHA?ID$H|$ LHM|$Ht$pQA1AA 1u-H|$HMHT$pL1;@ tfALLH|$8n:HLHT$(AxQHHt$HT$HxHHHAEuuAI|$u#A1ID$ID$EADDH$dH+%(tk>HD[]A\A]A^A_I1 IL KE1LLAUATUHSH7H:dH%(H$HC1H|$HHkEuHl$H{C1H|$xHIEHSHH|$HBHSHt$(H|$xBSHt$(H7H$dH+%(t=Hĸ[]A\A]AWAVAUATUSHH8HL$LD$(dH%(H$(1HHAHM#< HH1Ey D%EMuL-HH]HHExBH{:ADB.oBEtA9YEHHHHHLD$(HL$HMHÅ#HhB1H$"E1H|$H$HD$ t HD$D`0AExMHt$0H}7Aƅ]A|$0ADB.ID$4EtAA91ED$H>H=wDL|$8HT$HL4AHH9D$D$8u?/%?ƋD$HL)IƃH!7LuHEILHHh6AƅHHE8-HUHMHt$ H|$(Aƅ1AHuHUH|$HA 6LHHAAƅD$HHh=H=vAEu5HT$ H|$LIHE17AED$HD$H1LHHHD$[2HT$LHAՉ T$hxD$hH|$Aƅx9LH߉;AAƅEAAEtAuEtH}uAAEt+AtH}@1HEHEEt { xDs H-H$(dH+%(t=9AH8[]A\A]A^A_11Ҿ%1@־%2 xw HG0`AUATIUSHdH%(H\$H:9HL)HuH5S4L4(HH5/4L4ui}tI}tVHL-HIEe Et<1HH}`5H$:u$AUH9I9}1;uC1 fHT$dH+%(t7H[]A\A]ATUSHdH%(H\$HfD$HIH߾:HʼnH=H5@3H\<u{Et$HHEHP D$HL9r(DH|$0I6IT$ 1H߉HR$HuDH{Hl$0:HHl0AT$HE1 HsL JHH{9H H{I|$uHHE1HPDLHH$hdH+%(HpH[]A\A]A^^H$hdH+%(HpDLH[]A\A]A^ID$HtHT$hH{D H/ AL$HHEHP@KEd$DH{+AHH$hdH+%(u2HEDHH@HHp[]A\A]A^H$hdH+%(t3Hp[]A\A]A^AVIHAUATUHSHH0H_DedH4%(H$(HT$<HEHu7Ht$(H|$1HHHP@HH|$4uHËD$ H9r'L9sHCHHE HPHtH0LH$(dH+%(t2H0[]A\A]A^AWHAVAUATIUSH6Ml$dH<%(H$HAL$u Hh ?Lt$(H)HD$Lt$ u?L=B7IH9t HtI4HH=D@H1H|$H5-2IEAt$LPLHT$HHL$ ,7LHIEP0It;uL,IwI|$L?HH\$o.IT$0LHII}I-AOAHAH5-162HD$H9s,H(~,HL$AH1H5,2HL$HH(HR3H -Ho,Et Dk.HH5BHH|$HH5,11H|$HH5,11LHT$HL$ H5LHIEP01H$dH+%(t0H[]A\A]A^A_UIHHAUATI̹SHHHdH%(HE1H0ƅHH=wGHHHHH)H9tHH$%H)HtHLHL$HLL1HIH=vHw HC0HPLLu1HE11L wHIEH 3H 4H(HEdH+%(t.He[A\A]]%,ATUSHH H4$HT$dH%(H$1tJHHHH=w0HT$IHHHp.H|$tHLHq,H$dH+%(t.H []A\%3AUATUSHHP3HII3AXL[H]LHA\A]%%SH0dH%(H\$(HHt$HT$ Ht$H|$H At,t8E11H|$Ht$2uHt$HT$HG'뭸HT$(dH+%(t:-H0[ATIHUSH@dH4%(H$8HIHL$=,4*tbH$HD$tNHHHƸHw3HT$8Ht$ HHT$(,H|$tHT$L2H$8dH+%(tx,H@[]A\ATUSHH@dL$%(Ld$8I"2H\$HLd$HLL$(LD$HH jEE.u11uHl$Ht$HT$ Hc(H2@HN(Ht$(HT$0Hc'HD$HtH)H#DL$(LD$ LHߋL$H'1+HL$8dH+ %(t+H@[]A\ATUSHH dL$%(Ld$I-1H\$HLd$Hu18HH|$&HD$HtH)HHH`'LH1o+HL$dH+ %(t*H []A\ATAUHS"DHH"H¸H9r1H9[]A\UHSHP"AXHHH[H&1]%*UHSHP"AXHHH[H&1]%*SHHH4$H HT$:$H<$uHHO*H[SHHH4$HHT$#H<$uHH*H[AUATUSHHAP/HII/LHHLh1¸t1Z[]A\A]ATIHUHHSH%tHHL[]A\%'[%]A\UHHSH8dH4%(Ht$(HHL$HT$LD$(*t D$Шu"H|$Ht$E11ɺ-ÅtH|$Ht$ V%uHT$HL$H!|$t0HT$HL$ H!HcT$tH HD$(dH+%(tc(H8[]AWIAVAUATUSHHHt$,HIH,HII,Mu 11HHEMu5HLtlH|$HM[L]1A\H!$A]A^A_%"(.H @tH 4RMAH#ATLAUP1H|$('H H[]A\A]A^A_HtQATIUHSH:$t-E11ɺHHL,uHHL[]A\%U%[$]A\ø$AUH z:IATUSHHH8dL$%(Ld$(IHl$LL$IL(uLLH\1H  H|$Ht$ H-HHcH&HT$(dH+%(tl&H8[]A\A]H?tFUH1ɺSHIPHsH?S+H;HsIH#.1H}Z[]1UHAUATISHXHuHUHdH %(HMHH9tHH$H HL$H(Ht$H}H,&H}Hu't%HuHUH}uHuL7HUdH+%(t`%He[A\A]]ATUSHHpH$HL$dH%(HD$h1t t-mH|$tvH<$~oHt$HT$HD$H0H<$'~LLd$THLH$H|$t+LH;H"t3H$HL$, 0ҁt ‰H$HT$hdH+%(to$Hp[]A\ÍW13w@H@AHc8HGHWH7'HH5*/%l)H%J*AVAUATIUHSHOHHHQHMLkIHHLLHtHfH;Hu,HH@L9s H(I9 I9s I,H9s HLHLHCHLHk)HCH[]A\A]A^H1HrUSHRH?HtHtH/*H1H߹X[]AVIAUIIATIUSHGHHDL!H0H9Ws9HoH9HCH}HHHHDHHkHJD(L!ILc[]A\A]A^SHq+HH1HH[UHպSHAPJ+H9s HH9 H9s HTH9s HHHHHY[]UHպSHHQ*H9s HH9 H9s HTH9s HHHZ[]Hu H=0;UHSHAP|7u YH[]%**HH9s HH9 H9s HTH9s HHHZ[]ATIUHSHkHt,H9s HH9 H9s HTH9s HHHE1H[L]A\AUIATIULSHHAQH*1Ht6MtHI\$H)I$HuITHHH)HMHUZ[]A\A]SHHHHw)HH)H[EAVMAUIATMUHSH_1҅x HI^ILH)HI,$I\$[]A\A]A^HHH)H9t11HHA1AA9~"iQ-Hiғ51 -P"BH։ttu.1V1N11iQ-iғ5111ik녉 1i5‰1ú%PH9Hu H%W$OUHHHH9SHAPHN,$u)Z[]H9HHP$Z1H9|H)PHHH#1Z@Ɖ1UHSHHHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$HHHD$HD$ H$D$0HD$D#HH9r11HHL$dH+ %(t@H[]AUIATIUHSHAPH{t;H;HsIILL2 u1EH HKH}tŸ1Z[]A\A]HHHWIHtL;xt8HH(HQ HkHH9sL;:u H5eH9ru H D틐u ꉐH@ h(HHP(HBHkHH9s(uH= H9xu HH q(HHxt 0HHx;HHP(*LbHkLI9I<$IH[]A\A]A^A_AWAVAUATUSRHGLpI,I9IH@L`HLI9sLI4$uIHF tHkHHH9s%HA+H@@8tHIH~I$H@(D(LxMkMM9sI?IX[]A\A]A^A_HGHt,H7Ht$SHHu1 HH9C[1HH1HtH2HtPZUSAPHHuHGHXHHuHFHhH{hHhH uYHH{h[]%;Z[]Ày%H(1L LdH%(HD$1T$HT$LCH|$t$H5-QH _ j^_HT$dH+%(tH(AWAVAUATUSHH $HH $H(H-mHcGHDdL,%(L$ L/L$M}HD$1L4$HD$9.t1fAG u(HII1HѾLH Hu1HxIUAG8I8B!t#~HcCLHQ 1LD1 HcSLD~LH9 11l L Y =LLH5* 1^HcCMH|$H HL1IHcC1ILHt4{*H$ dH+%(tZH( []A\A]A^A_UHSHQH?HuHCHU@R)H6Ht tZ[]UHSHARHW(HtHH5f 17E1C0LK({uAXH{H[HD 11]%X[]AWAVAUIATUHSH^AQD&MkIL9srCtfLHtHCL&LxD0Mt {`IHH&HHhCtHH}EV1AWH5 I_AXHXH}[]A\A]A^A_%SAWAVAULnATUSHHdH%(H$8HHkLHD$L;l$AEMeAD$(k @IL$hH|$8AD$(HHD$ID$8H Hk1 H5 HHS(HH5 HHH5 H IL$LyLHLH9sH2HHvF(D1IK7HD$L;|$soILpINAV(9u-IVhHHT$ HT$ HHAf((t$H@@IVhH5C HL@1AN(IHHV 1 HS(H5S H>HCD0HhMkN|5L9L;e}ELY$?Hk(HD$LDHELpDMt'DL$,DT$ L\$DL$,DT$ L\$IHEH#HHhEtHPH{H5 1ASARAVH H=nAID$HhL|L9 HEH@HHHHH9HuHD;tHrDHV6HkHH9sL;"u ztHHBLPDH"#Mt.D\$,LT$ HT$HL$D\$,LT$ HT$HL$H2L "HhBtL HH{HJ@HRLAH ARHhASP1VH5vH HH{ IbH$8dH+%(t HH[]A\A]A^A_Ã:AWAVAUATIUHSH]H(L?uHH j DmIJ+HD$H;\$HCHHxLiD1H;@L!?Hk(MAMtt$LL$Zt$LL$IH{H!HHHhGtHI|$AR1AQEVH5&AU1bHW!MtHKL A!HLRhAtL 8H3I|$HN@HvLAHVhH H5AUAVP1ARH H}y }t1EH([]A\A]A^A_AVAUIATL%UHSHdH%(H\$ӃtL%H{]4ˠH$3IL1 LHu H$LHHHnL ÉH$LHH} H<$aHD$dH+%(tH[]A\A]A^tHGH@xh.ATUHH9SHG%9rI̾I$HNjPHHlH\[]A\AWAVAAUIATE1USHL{HHHT$1LD$dH%(HD$8HH|$ Hh8H HkIHD$L;|$@LT$(EuHL$H|$ H.1IOHtHAEuIH@EuiAG@u]I?HtUAWHq@HO@HHk(MvH6V1qH MHyQHHh1H vIHtHR@HQ@HrH HAWHk(MV1QMHHhH21HXZHXhHHH|$ H~AIH|$ HD$8dH+%(tyHHD[]A\A]A^A_HGHH9uG@tHt H HHHGWff%f9tF FAWAVAUATIUHSHLuT$H|$0dH%(H$1HFD(LxMkMM9sgI_|$tI9tQHtLuC#u5Ht+HHHtH$HD$x$I딋$1Mn8Ⱦ v1$A~8~H1L1$H|$xHLH|$0HID$E1HXHkHHD$ HD$0HD$H;\$ lL{|$t L9;OMFA8A#%ILHlHD$HA~8~GIG@VH1LpHPIGHhP$D$$D@1H It$tH|$hHT$(HT$(H|$HLHL$HHt$t>AsH5[LHIG@LHLIGHHhP1RH+ZYH|$ID$tHD$hD$pHH|$0DDD$tH$dH+%(tHĨ[]A\A]A^A_AWAVAUATUSHH(Ht$HT$dH%(H$HH|$PH$1Hu H (H5+H= H$Ht$HH8HD$ Aąt H|$HH5)1 HD$LHMEE1II1D\$ E1H$MkIL9sZHHAHHt%D$ HH9t%#uLHtHBL$ H+H롋$ v1H$$D`8A#HfuH>ALκH=A>H 0IHxAH~H1LLHELHLNDH6DLHLVHAAuHfuH$x8DLFLHHWDLHLQHpA8DLHLZHAL$AMt;L@L<H $IЃy8~H|$H511H@LHHHH $IЃy8~+L HyL H|$H11:LKE!Hf@ H=1HH8HH8ƒ߃Y Ht=Ht$Hjt H$x8~H|$H{11p1H@$H$Ht$H|$PHXHHD$E1DT$$H@L`HkLHD$0L;d$0PM,$E1Mt IEAx AAL$H$HMt$D$ IB8LT$8HD$($D@1iLT$8HHuH MtIVMu$Iv@LIUIu@LM9utAD$@t@Iu@LAfAA#uzLqAD$At$ff%f9Iu@L^EHT$HLLHL$@LT$8LT$8HL$@HT$HtotsLRiHtdAz8AD$vLJhHH6%V1Hk(HHP1H|$H*H mLLAz8~VAD$I~@LJhH2Iu@wH?%Hk(WvH6HV1HP1H|$XH0ID$I$HHHDH$H9u/AD$@ufu#urHt L LI$H$Ll$PLLHvH@ uIT$I4$LHE1ALID$Ht%HHHtAT$? ЈLH$D|$$IH|$PD$$HD$$AąHD$E1H@D0LhMkMM9IEHt|LxMtsItfG%9rTIHNjE1HOHލPLLLIAHIIiD$$A E11DD$ Ht$HHHrH߃AL+AE AtI}8H51B~Aum1H=v1AƅxUH$ E1HL$H)H uH|$ H5ADEgL-EtBLhA~LH$D 1HUIHuL-UHH D0@ tHDt$ H$@H $Iуy8~3WEL1RHP(P1H|$(D,H +u)AL11RHzAVH|$Y^AH$dH+%(t#H(D[]A\A]A^A_AWAVAUIATIUSHxHdH,%(H$hHHX8HFHPHkHH9sHJHtHHLt$01H|$@ Ll$0HHH5>Hl$8H|$@HQHLKID$LhHkLHD$L;l$=I]H'HC@AmH|$hHHKLHD1HhfWHT$XH5/LH5'1H|$@H|$@HsHH|$0u8H5LHCHH|$@H5HH1H|$@HsHH|$0Hs(H|$0HHs H|$0HnH{2Ld$0DDA#$u-u)fuH|$0H5tH|$@H5n0A$Hr*H|$0H5BH|$@H5^1Eu#tH|$0H5jH|$@H5zˉL1HAuaA;$sLHk(A#t3H|$0H5 HcH|$@Hk(IIHH|$@0HCH@D HhIIL9sQHEH9tBt9H5_LHUH|$@H5GHB@HRL@Hh1HHC(HhHkHHD$H;l$HEAH@L`HLHD$L;d$I$HEH;u I9D$H9uEt I;D$H|$0H5HELPDH MtD\$,}LT$ D\$,LT$ HML HqhEtL I$H|$@HJ@HRLAH ARHhASP1VH5H E1IHHl$0H|$@|HHH|$XuHHHsHI|$`uH|$@H51,H$hdH+%(tHx[]A\A]A^A_AVAUATIUHSHH L7dH%(HD$1HHt!I~8H1H5GHLHHHD$LHHÅu ZH|$HD$dH+%(tH []A\A]A^%MAUATUSAPIGHuy`LlH9HD'IHFḦ́yG%H9uE1HLIHIDAAhH9sHH)III|1ZL[]A\A]USHQH9taOHH9B1 H…uH5HsH@HH9s H<H9 H9s H<H9s HHZ[]ËO@A>C‹Hc%ATIUHSHy0HݺLHsZHt1ҁHhH[]A\ATUSHylD'Et]DH׺HHu HsD AHH@D`H9s H (H9 H9s H .H9s HHHHH[]A\H6H?%fSHuIH=YGHuH48t 1HHuH[SHH?yHH[S1HHH=wHSHCHHHPH1[UHSHRH?G%9rHEHNjPH\X[]1SHHHHHHHHHQH{8/HHPC8C0@8HHCPHHHCXǃHǃHHǃf%Hǃ f @fH HH HHHHH[%SHHHtHG0PHHPHJHHHHHx~H{`HtH[%ATUHo8S@HHffuf% fƒ`@u ЈDc AtC(t C(AtHHuHHH{xH51HuHsxHt Hu ADc Hu'HsHHu HǃHHw!?/t HǃuHsx 1yZC(t4HsxHsx 1y 8HHHC(tEE‹C( s u0H t#H1H5HpC!1AH5ysH5\1AH5gy38H0H]H1H5 HrH5~?HC`E1C! tAHHJ, HtAH5H2tHHIHH51[]A\UHSAQ u^HHH Hu(LL VHjH541T_AXIHH| HZ[]SPHPyHH[H@w@HHATIUH-S1H|Ht Lt HHu1[]A\Ã1@w@HS8ð t@tATIUHSHZ„uC2@kH@L9s H4 I9 I9s I4 H9s HL[]A\PH==H=0H=Z%"@w,H@HcHHHHH P^H5WH=hG1AVAUIATAU@SHHdL4%(Lt$ID$@qE1HL$LIHSLȸuD#DC1HT$dH+%(tAH[]A\A]A^1ATUSH@7HGH{ILcMt8Lc;u1!@1H{Ht[]A\À?t11QH`u1Z1USQ@u H H5H=*HHot!@91H{Hu@+1Z[]SHH!1HC[Q?u H H5H={HYȸDZUSHdH%(HD$1D$@?u H vH5-H=KHHHHT$Hvt 1}@;O1҈CHD$dH+%(tLH[]SHH1HC[AUATAUHHSHhdH%(HD$X1ey3H5+H-HH111HEtmIHM11D$ @LHD$Ht$HUAŅTH\$E1IcH|$IHL$ Hu,H9s HEH9rH9s HD$(H9s D$1EH|$H5xOH}Le HD$XdH+%(tHh[]A\A]ATIUSHHt+Md$@`11H{MHu@+1[]A\PHȸDZATIUSHH.t+Md$@11H{MHqu@+1[]A\PHȸDZH=P1H511H51HV1H51H6H!ZIʀvA!HH AHH 1H9}DM9r,1MtIIqMtH)HHI8IpSB"tHH9} DM9r1MtIIqMtH)HHI8Ip[IʀvA!HH AHH 1H9}DM9r*H1MtIIqMtH)HHI8IpSB"uHH9} DM9s1MtIIqMtH)HHI8Ip[HH~D7Hωƒ v tHHHG0`H`HS_PD[HǶH1HvW:HG>HMtAH6H?%H6H?%AWAVAUIATIUSAQH^Ht0HkL|L9sBH]IuhHtHIL$ID$LHI<$AX[]A\A]A^A_Z1[]A\A]A^A_UHHW.SHAQHGHuHX GH}Hu C:HS>H}HuHAXH[]%`Z[]ATIH USHHHֺ5uCHsLHH[]A\ATAUHSH@S<vS;AHD SH9sHH9 H9s HH9s HH[]A\S1HHtH[HhHHHr H@ V:H>H>HHPHHIHHLH%qHHwHP B:H>HHHH%LAWAVAUATUSHxL`H4$ HT$Ml$~&HA4$LH Y1x1A$LHLq)LcLHHuOl H(#IA;$sLH8uHcIlHH[]A\A]A^A_SHHH4$HT$HXtHXHu HXH4$HT$HH[H6HVH.H.HHPHHIHHLH%HHHwHHJH.H%HGH.H@ HHGHHHH%UAAIHA$%HSHdH4%(HuLHLI H9tHH$H)%tHLHD$H8PDXD@ Et'HP H9s H< H9 H9s H<H9s HHLI()H@HUdH+%(tH]SHH>HvqH{HsH[%y%sH%UHHSHPHGHx9kC1Z[]1%USHHdH,%(Hl$HHL$@t$HHD$: HߋuH=qQHHu HH=H(HHouH} t.H=HH@U HE HHHH=HHHD$dH+%(tH[]ATUSHHH$0H$8L$@L$Ht@)$P)$`)$p)$)$)$)$)$dH%(H$1uŅxrH$HH$HD$H|$H$ D$0HD$HcHv HډHt$"H9H$dH+%(t_H[]A\USHdH,%(H$Hn8.H|$HI1HoHt$HH¾HDHcs%USAPH.HHhHH{hUuYHH{h[]%qZ[]HHHA u#JDB2t@HGDH@1SHu*H߾.\HǰHtH5[HH~ Hπ<>/tHSH_hHH[HAUIATISHH?W9rHHNjPHLdLl[A\A]HUIHSQ +t,H!t)#tv>-t@u/ I@HV 8/u HHHHHHHH;HXHHHZ1[]1AVIHr1AUIHHATUHպSHdL$%(Ld$IH$HH1 HHC.L9s H(I9 I9s I,H9s HLHIHD+.@kLsHCA|u#IhtH4HA|IhG%9rIhHNjPH\HD$dH+%(tHH[]A\A]A^AWIAVAUIATUHLSHHHF HdL4%(Lt$8IHL$(P:L|$ HT$HP>HT$HPTHL$HHD$HHL$HHHu/LLLHGHT$HHH(HD$8dH+%(t HHH[]A\A]A^A_UHSHRH?G%9rHEHNjPH\X[]PH1ZAWAVAUATUS1HHGdL<%(L$I(LhHLI9IEH@D LpMkMM9sDAFI>G G(u$uwH|ÃHLGIIEH@ D LpMkMM9s4I>G(u$uwH|ÃHLGII@IWHBHHH9sXHHIHq HkHH9sH>E1HDO(HHI Hq HkHH9sH>E1HDG(HH$dH+%(t<19sHT1HJ(H1[]A\A]A^A_HHHHA H H9s H9tHHAUIATISHH?W9rvHHNjPHLdLl[A\A]HGHHATIUHSHH?LHHH[]A\%UHSHRH?G%9rHEHNjPH\X[]HtSSHHH%H(HHHHBHH9s H90tHHr1[1UHSHRH?G%9rfHEHNjPH\X[]AWL=AVAUE1ATIUSHH_HodL4%(L$IHT$XLHT$xH|$XHHHLLfHD$HD$HkC4H|$THt+HHDHHHiE9l$AD$IIuHT$8LA L$PH1HD$PD9r.DH|$8AHHHHYID$H8t2HSHCH9tHu HHHHkHS HH$dH+%(tHĨ1[]A\A]A^A_AWLAVAUATIUHSHHHXHCL9@u AD$< HHHLL9H9D/A+uHǀ?/ugLD$It$=H $H $LD$uAH8uH11A+uAD$< tHIt$= HsH[H3H1[]A\A]A^A_ËH9s!H 6PH5lH=z t7USHVHXtI|tHhH 7HHXHhHSHRHEHh1ɉ|y Z1[][X[]UHSQH9Xt,HmHXHuHhHhHZ[]UHSHAP3H`HSHHHE(H@HHHxH=OH|$(H^HS(H;tMH|$(GLHT$(HL$0HWHT$0Ht$0HD$(HyHT$(HHCLt$0HD$(LxIHD$'HT$(HTHD$(Lt$0IL;|$ICuH=#=HL$(HHL$HzSHC.H|$HHbH=9H|$HHHSH;tH|$a1{v]H=HH|$(H@{@@nHH|$(HHH=H|$(HLHT$(HL$0HHT$0Ht$0HD$(H!IH5XHHD$PIHxH|$PHt$HLIHH$RLP`H$ZY8$ts :$r$$LH gHEAO< IEHp$Ht$(HHD$xHT$xH9T$(HD$(L ID$.A|$HD$XHD$HH$H$HD$PH$ID$.IWHH$H$HHD$8HHHt$`HL$8HHAD$HtHEHxu IE @<<w H$H$H$HH$tHH$@ uH$H$LtHD$@x8~GHIM LVHfy:tLH>VH'1P1LL$hH|$xQ_AXH$$H$H$H$P0yncIU H5fz:tH5aIH>Hy@HILOLPHht$`1VH5RHH$AH o$ue$t[H$H$H uH6&H$H$H ]tI9 Ht9H$MHL$8HD$H|$`HD$Ht$HT$H|$0H$H$H$L$H $H$HT$HT$H$H$H4$P8uYHD$0H$H$H8G%9r HL$XHL$XHHD$0H8PHHLHl(HT$8H|$`L+HD$(LHD$ fH$dH+%(t|$H[]A\A]A^A_HǘAWIAVAUATIUHSQHHLIIHNHHHuiIHHtl1HHChL9s H(I9 I9s I,H9s HLHHLD+hHHCIHCHCAZH[]A\A]A^A_SHG u HH 7Hc HC[AVAUATUSHH $H0dH%(H$(1f~:FILELjHjHLLMt)AMAUAut@HD$LPuLLHuK<@H$(dH+%(tTH0[]A\A]A^fN8uAUATUSHH $H8HF(dL$%(L$(AHV ,HHBHᆳHF H-52HF(fF:ft]HAu>N< LA@ u0HF>I勏HjLjH<HD$LPLHsDHV1HCcC=/L9s H(I9 I9s IT-H9s HLHHLD+>Hfk:I$LsHC0HC A$,fC8HC HC(Hu1K<HCE1HL$/HLtB<B:HꋏLjLjHAL$AT$LA4$t@HD$LP tGHz8x8H$(HHH5ϹIHHx81H$dH+%(tHĸ[]A\A]AUATIUSHRHn Ln(HEHu HEHu&HvHxòtL9h(t HLH]X[]A\A]AWAVAUATUSHH $HHT$8IIdH,%(H$HHD$ H8HD$HHD$ @ ÉD$D$8D$dHt!utH}H 41IF(HHHL$HHD$PD$8 ؈D$cH\$PH9\$HD$|$cHHC H:HL$@uPE1AHD$(DL$<*AP<у ɈPHL$(IHx+LT$@L\$(H$A$M$RLPLHCLhIDHD$h_AXL;l$XMMAAtIHD$@II.HL$0H$HD$(H$AAH$H$HtyHLL$hH$HH$L$P8LL$huEH$UHuH|$pL~HD$pH$HD$x,E1LL$hHuWEt,H$L$dH$H$H$P0A&H$H$H$LtՃ|$<t2H$DD$hH$H$H$P0DD$hHD$ x8~OH=EtHHK Lfy:tLOH>1RHP1LL$@H|$XǩY^|$8OHC H$H$HPܭH$H$I$HT$H4$HHT$-A$(HCHLk HBHᆳHH-52HCI;]uQ1M} IU IEIuI9t,HuM}HT$(H~IwHT$(tM?Ht LMHs L#HD$pI~(`HpIF(H$dH+%(tH[]A\A]A^A_H8dL %(LL$(IHHHL$H$HT$HHLD$I.HT$(dH+%(tH8AWIAVAUATUSHHXHoHT$8LudL$%(L$HLgH>I$HD$H8HD$nHD$ AGHT$(tIOAWLAGI[L+LA}/tEt <v;<t7HH5YL&tH5;L uLHD$x8x4HE@HMHwH5VLHLHhAW1AUH|$ XZAH5L5HuH5L HD$HuC0%=@@H|$ Ht$(HL$@LD$P/Tu!HD$ E1Ll$@HD$PHD$(Ll$HHD$XHt$@HT$HLJHugH|$HtKHE@HMHH5LHLt$(HhD$(P1H|$ )AAZA[E1UHt$@H1L2 HLkHD$0C0%= HCHD$HHaE1HL$pLD$`HT$hHHt$h/HD$`LL$pLL$x@Ht$pHT$xL[HtyI;$XtLh8M$hA$|t%AuI}H m\E1E$|AUIuH|$`LyHt HHD$Hu,HE@HMHyLHLWHhst$8D$8PHL$PLD$XLHt$@HT$HOIHuHT$PHL$XLHt$0 IH@HLPLT$ LQLT$ I$@$tcHD$x8yHU@IB@H5^HMLJLpHްHHhPIBHhLT$0P13H|$0LT$@H UHU@IB@HMLJLpHHHhPIBHhP3H|$0H51AH L9HD$x8~H H|$11HyqK,s0LLDS(H}IEH|$A$HIIHT$8Dž~lt AAHD$x8xpH$!HMH5HHE@HhLHLR13HׯH|$ Y^%tE1=AMAuH|$tHD$@pHP@@s`HSbLAtGC0%=u8HkHHH$H$H$A}{`HSbLAAMAHMH5HHE@HhLHLR13HϮH|$ XZHD$x8~H|$L11H_H|$ Ht$(HLHqK,S(Ls0DLIIE(IE HhHtHm(LLIu HLHFHH(OE1HC HH%IGPL9TH$HdH+%(t'HXD[]A\A]A^A_H;5t.HHBHH9s H90tHH9ðATIUHSH~DHu1LHH@?Hk(A#ftHS@HE@H:HrHL@tH[]A\AWAVAUATUSHLnMLnHMHHHvPjuLLLHLeIH~H}(LcHƸIL9sHI9s I9s HI9.LLIL9s HI9 I9s IH9rHL󤊃A<uIEHttAƅ1H{ IUHUh?H{(HUhIE(H{0HUhIE H{@HUhIE(LIE8HHPHtPHHHLLIEIU@LHxIE(D0LxMkMM9s(IOIL,$IH4$HL$HT$HxfӀx1#IE(L`HkI,H$L;$$sSAD$I$HjHB I}IE(D0LxMkMM9sI?HIIIE (L`HkLI9pI$I}LpLIE(LxHkLH$L;<$sI?LIaI뱋 AfAuffAfuHI9tIAtft I}uc+HCH IE(HPHkHH9sH HI HSHt-HJ(HA H4H9s HHLi1IUL*HCHfE1HL[]A\A]A^A_AWIAVAUATUSHxH_DoPdL4%(L$hIHl$`HHL#LH(HHL$HIc;LLiH $B+eHD$HtWHT$H|$HؚH|$Ht$H B+PЉB+ B+HD$ LE1HD$HAHD$@HD$D$8D9rbH|$DHT$Ht$H$ uAH$AOPHHH $Ht AE1AHqEt=A|$8x5Hi$I|$8EHH5TLH@1H$hdH+%(t~HxD[]A\A]A^A_HIHLHt xLH O%sHt$HH9uH8AUIATMUHSLQH9u0AHHLHHtLvH9ЃiFRu2NhLFpH֦1LLHHt:Hcy11H)I<MHHLH1҅OZ[]A\A]AWAVAUATUSHH $HHHHIdL<%(L$IHT$tgHHAHL$AHL$HLHL$AΞAE1AHAH$H$AMMnHD$H$AHp1AH^ASMu%H<$IH5F1AH8E1HEE1@ $|$H$mIH=HD$HEH$|$@$HLELAH|$LH DHt$HHUH|$pIŋ$HT$hHt3*HH$H$H$H|$hL.A=u$Eu+$|$11H$֘D$ HtH$dH+%(tHD[]A\A]A^A_AWAVAUATUHH=SHHdH%(H\$8H蕾HvHXHIIIHL$LLHurH|$Ht$HL$LD$(/Iu{ xIC @Ht$HT$ 1HH|$(u H@ H<HT$(HL$0HHvHLHHT$8dH+%(tHH[]A\A]A^A_Åt,H͢t(H PH5ǢH=ҢޝHAUATIUSHP1H3H{x^H{(OH{h@H{HP1H NH5.0H'H5ՎH NH5|@ HH5#H3H(-H-HPHHߡHH`It$8HHHwHHHhHpHHHHHHHHHlHǃǃH(ΒHZ[]A\A]ATLUSHHH*HBHHPL9tH01˚HUHHjH苾H-HHqHHH^HPHHH`>H`Hh+HhHpHpHHH0HHHҽHH͝HHHH(yH{OH{(EH{H;H{h1HHt.HE111H uH1HxGx []A\%3[]A\UHAVAUATSHdH%(HE1HqIIIԻ:@ueA;seHcLHk(IIL@3HcLHk(IILA;rʃAA<$@uLL}IEHIUHHH)H9tHH$%H)HtHLHD$HL@@M9s K (I9 M9s K ,I9s LLLHI(H@HHcHk(AHcHk(AIAP 1HEdH+%(t(He[A\A]A^]AWAVAUATUHSHL'H=IHt$T$dH%(H$HD$0HT$8H|$v D$ID$8H$HHD$D$"$ D$"|$D$!D$#E1$1D$E11Ht$0HT$8HL$HH|$HT$HD$HH$tMt LH,|$xL$H $2|$u $!Hu!|$!tH$HHHt HHH$H/H`$ D$"$HD$Px:7D(HHH$HD$PHL$PHT$HDHT$HE…HuD$!tH$H\H|$#As&Ae%AR;AFAMAfA HEJcHAZAaHL$HHt$P1|D$HD$hHt$XH|$hH ԥ@Ht$XH(HT$`AH$@HH$Mt LHHt$HHT$PH$HI0MgMt H|$Hċ:H|$HD$$ H|$H:H|$HD$(H|$H|H=D$,艴H|$HHtH$H|$H fDŽ$D$L$(HL$T$$t$,>AMu ID$(PIGGMHT$HHL$PLHI!MhHt$|H|$H|$|utD$|D$}t$|HT$~L?HH|$H1HtH|$H WfHT$PHt$HHŠ? Јjst+St-fu1HH9Exu耋߀HUB$u4HE@$t*fDŽ$PH|$PDHHD$x yk]H|$HH5G1@AFAaARAZL$H|$E1HH5HD$@ H$H|$MH$dH+%(tH[]A\A]A^A_1ATIUHSHc_Px8Hi۸HHt5HHVH(H[UPLH}]A\% []A\AWAVAUATUSHH $HdL4%(L$IHHILLHD$(MHLH$HD$XHCHT$`HݖH@LAVp1L$hLD$pDHHD$hHT$pIHD$(HHHHL$ HD$XZVE1HL$X/HLuHD$XHhHD$`HHl$HHHL$HD$LCHiHI9seIRhIJpL$H|$XHt$`ܒL$u8IIHLL$uL$(HfA BPyI¸HHLȉIIH$IHLL(HD$0H}HT$8H9D$`t H$HD$`k HD$L$(LH<$L)HD$0HD$@ECHiHD$ HHD$HHD$(AHtLLH ALDT$OLH Li͸.DT$OHt$H$D$XN< ID$(HL$M0AH|$fAEA HD$@EI HD$8I(H$I8HD$0I@HD$8IHHD$ HPLHXCAHx0tz@$utHt$HT$TAH$HxK1ɋ|$THT$hH$u.H$1IHH+$R0H9~Hi+1H$dH+%(t@H[]A\A]A^A_SHH5kHH{[AWIAVAUMATIUSH H/I8 $HHt$Lu8dH%(H$ LˉD$0 $HD$y IEH$ H$ H1H$HIuE1LH$8Åt)HL$HUI1HH RH\$(LD$H|$0HB$01Hc$0HcH)H9s H|$(Ht 0D$D$$0MtdHc$0MHߑH ޑH)H|010AHcHc$0II)L9sH|$(Ht0A衸D$01H菸H$8u8ۉ HL$HiIH5L1ډA$\H=4xE!A$dA$׋A%DH5ݐH=ݐH5ܐH=ڐH5H=ҐƮE11ҹ@H5H=̂}t)tA$xLH=˂E11ҹPH5pH=h%yHXE11HH A$u>H=6tE1P1H5H=΍ H= tH=IH=uHH<$LH_H=׏H$8x~Hct$HQH$ dH+%(tHĨ []A\A]A^A_1xHAT IUSH@dH%(H$81H<$Ht$H57D$ۊy1A$1D$HE11Hb~xHt$t1QA$H$ًuH$H9D$uH$H9D$ tHE1H~1}ÉWH$8dH+%(tH@[]A\ÊAWAVAUATE1USQL?AG$up.H^IHkHH9s[C?tKHHk(Lu9A8x/HLI8H5ЊD1HJhHڍ~AHZD[]A\A]A^A_À~vHHǰHHF1AWAVAUATUSHhdH%(HD$XF0%=HHIIHhH߾.HHHH}H9t{H¾.H)HƌIHt_H{ԆAǃtMHIFHt$HL)HD$H${Ht$L{HtHxHtHM DL~HD$XdH+%(tقHh1[]A\A]A^A_ATUSHH`H4$HHT$dH,%(Hl$XHl$Hm{ HzHH;{HtHpHtH$HL$HʼHD$XdH+%(tFH`1[]A\AWAVAUATUSHH $HXHt$IHHL$(dH%(H$H1MuHLHML1ILHLD$8/u Ld$8Ll$@H|$8Ht$@H HD$@HT$/H@D$THt Ld$8Ll$@HD$HHD$H;\$D$8DHHLIHH@LhHLHD$ L;l$ shM}M9guXHD$(I9uJL6HT$8MHL$@H|$ |x"HT$LD$HHHLHotIH?E1H$HdH+%(tyHXL[]A\A]A^A_AWE11AVAUAATIUSHHDdH,%(H$HHL$HuCL;HMt$)HL$(HMHM%xAt$HDIHAH$dH+%(tH1[]A\A]A^A_AUATUHSHH8dL$%(Ld$(IH4HHLD$H/u$1Hl$H$HD$H\$ ;/uHH뺸HI$H蜮HtH@H@HT$(dH+%(t H8[]A\A]D11ft*A9v%HsH!Hk( HtHftH8Ë1#t,#EHsHHiH u1AWAVAUATUSHH $H(HHt$HHމT$HL$ LD$(dL,%(L$L/D$8D$wM1H$H$HD$H$H$D$$HD$(H$HEH$H,eH$vH$LHH$H$H$tADžuWEt uE$t/H$$$H$H$}E1DADPyHKH54{HHC@HhLHLP1RH {H|$uZYH$dH+%(t2{H(D[]A\A]A^A_USHHxdH,%(Hl$hgH|$H\$H1l$`Hv+HH|$ HcH|$HT$HD$rHT$hdH+%(tzHx[]HH?1G$@u4u t"HH8PH5z1tZAWAVAUIATUHSHHXHL$H|$(dH%(HD$H1HAHH7zHD$ HD$(HD$t6Et1HB@H8HppvHD$0HE@H8HpZvHD$8HtHE@IE@H8Hp4vHD$0Mu`Et[LeMtJHL$HL{1ɺLHHLHL$~{HH{E1~LHlIff%?@fAItPI~Iv INL`IHwH>ININ I9sHT$I<$I6HT$I1IuL9Eu~LD$HL$LHALHA褬Et%L9t11LHLHz1Ld$ HLDLLH脷<utHuHtHL$ HߺqHHH5x8st1Iv|$L9euHD$H;$@uI~tILfLMu,A|$8I|$8H,x1H5rufHE111LHH )sH,sE1LdD0A$uAtAE(H51u 1Hpy_HlH1 pyH@(t AǃHB t$1B pHHgH@(ШpE1HDDp(j H1pAŅycD0AqE1A@u~EHT$HuH5v H5vXjADžuCH|$HHt$PGH|$8HHT$@HHD$8nH|$PAxq EDDAuiH5kDODHHEuuDH5:fDL$HHH袦L$ADžuuAA ucH5uDHt H5uD111HaHHH5aHgAEuuEDcjEtEuEAE(DH AD$A ǃE)u=HUku0H`et#H5VjHHdE)LH5tLnHL`M4M9sI<$IZ1LHdHL`M4M9sSI<$+HD$HHT$PHt$8H|$HH <ftHt$8HT$@LcIE)uiHHuNH 0t1HYH1L )tH APH57jL'tJoAYAZ1ҾHLE1D;HDMcD$8L$HD$H8HD$ HHD$HD$P 1@DD$D$(IiƸ rnt411LHgA=t uMiB3E1DL$,LHT$8LAHL5qoDL$,AI$H|$ H5n1A$L5pkD$ L5pD$(1LM$A$H)iifHuE1AAE1EHDL$,H$|$8P$Hid1H\$HDL$,H=$HAD$wF1H|$`HHNDL$,H|$PHT$PHD$X~]DL$,ADD IcHitEtEtL5oEt L5oEHD$x8x;DbLH5kRHqE$P1H|$0M$B_Y^EtAIĸaIcHHiD$( AD$PtĨtL$ H(11H|$iE)utHHHH5o]H`tfE(uH5H3ct3}8x-H ntH nH|$HpH5uj1G^t3}8x-H ntH pnH|$HpH58j1 ^HhE1i\H-nD0AAH-qnH-NnH-nDaH|$HHjiIH5b1]H^H$dH+%(tbHD[]A\A]A^A_AWAVAUATE1UHS1HdH%(H$1H|$xLl$xM󫋅Lr A6DVb H1gAADžyE[H5d`H5^DIF`IF tH5inDg`H5cnDU`11Hh[IFEuH5nH5nD`IH=vDCEHHLzHYH5zL蠂L螂DAD$I AHcHHHL$ HHD$8HL$8H9L$ ?HD$ LAD$0Ld$0AIB|$xIpJ$HLD$(芕N$LD$(IH\MHE1HD$(M9K|18uIHD$(Ipu1:H$Kt10ILD$XL\$PH$H$HD$pIGLL$@HxhH$DŽ$H$HD$h*H|$hHo\H=)mH|$hHU\IG@H|$hH0HP?\H=nH|$hH%\IH|$hH$HD$H4$HT$5_H=wn螂H|$hH[HD$(H8胂H|$hH[H|$hHx[LL$@L\$PH$LL$HKT18LL\$@_L\$@LL$HLD$XlA{uACD$0HLIMpI8IH$H|$hHD$HL$pHt$HHL$(HD$HT$HD$hXHT$(HL$pHHHT$hcLHHHD$hHHL$pwILpMM9s3M>LLD$(H5qIALLVLD$(ȺH56wLHD$ E1LstI}AHw~ADžDEI]AHw11H#^H~AI}EEEHw~EA}AE^AFI AiH$dH+%(t"]Hĸ[]A\A]A^A_AVAUATUSH@ t1EHxxtHL`8@(t<H5 e]H5hp],y#HiH5N\L1W1 tqH5gZHH=wNHLhMtM9s-IEHIHpHX}H5`uHD}H@}HHDyu YH"iH5~[LH11V[]A\A]A^AWAVAUATIUSHHHH$HL$dH%(H$81HLv1E1IHD$HHD$L;t$skM.LM~H|$H蒊*LHD$ bHu/HT$ HuHL$LL$HwEu HT8HAIEu1LS(LhLl$8H ]HL9^E1I9tOLHtVHKMqhLL9sZH9HL$LLT$ H|$LL$(^H|$HL$LT$ LL$(tH1HHL$LL$u I|1H$8dH+%(tYHH[]A\A]A^A_1ËW1uHuG <%AWAVAUIATIUSHHHo@D}A?L6A>.u/L9aHt/At }tMHppAH5fL[Ut AD}EH}IF1H JdH$H4HHt$UHt$H<$IHTH duC|>.uHcۊ\uqHHucI|$ TH}Kt>]H<]HHEШ8I,$CH}.CHOHCLpMu DH5eH^uHLHL[]A\A]A^A_H5}eH^SH}G[ƃHCH@ HttIT$ HLH[]A\A]A^A_CHHCL0MVH5eH&^u+I|$  H{8^HS0It$ L T1eH5dH]uHs0LHLHCH@(Ht0I$:.tLLHH[]A\A]A^A_ H[]A\A]A^A_AUATUSHXdH%(HD$H1GPt HIԃutru@Gcu^IH`HWcC2{p(HD$HdH+%(GHXH{pLL[]A\A]%WMjCu}ZH{p]HsH{`Ht{u$HD$HdH+%(HX[]A\A]%,OHD$HdH+%(HX[]A\A]%(NƒSu ucuW\tXHt$H{`U]T$C8t)T$Hs H|$YCC(t1Ht Ctmt t%HH{pHpTCHtHHH{`fXCCtr=C uaHt$H{`"THL$BHr Hz(8t)$T$HD$HHIHHLHYt71CCCu uKH{p[usH{`xMHT$HdH+%(tSHX[]A\A]1AWAVAUATUSHHL7dL<%(L$ILUHH{u{tH{u HHHCHl$1(HHk@Ht$T$F0L$$H\$D$ f fD$$uH|$xRt$%H|$h RL"NH1LIH%ZKHLH5 HdQŅuu!CHtuD$$ШPEtu D$ tŁu 1D$$ EH$YH|$xdYH|$hYYH{8Y1HHSH3H3HSH$dH+%(tQHĸ[]A\A]A^A_SHH_@H $LD$Ht\KuRHѿHH5~_wWu6CCf%f fCuKHЈCHC HHQH[ATIUSH0dH,%(Hl$(HHL$HjHJuVH|$~Ht$>#tH|$LL$LD$H W2StHL$LD$ LHt$HT$JHD$(dH+%(tPH01[]A\1Åy  xw HG0`AWAVAUATIUSHLHXdH,%(Hl$HHULC0THHJOLC(THHl$(HMLHC,AXL$@H1cPHD$@D9DHETLL$LD$HH iHQuiHL|$Lt$Ll$ G%9r+NHHNjAčPHkL|LtLl[HH1HT$HdH+%(t!OHX[]A\A]A^A_U:HAWAVIAUATISHHLo@HdH%(HE1IIH@SIH'SI>HHNHEIHXIIVLHHIRH8HHHH~GIRHHHIHH~+fIHft=wЀf= tfu ft HuHFHHI@HHIIL)H9tHH$%H)HtHLHD$HH9s H<H9 H9s H<H9s HBDH IFLHLP(b82IFLx(Mu 1HLA1HLHxEHLHAHxH}y0VHEdH+%(t{LHe؉[A\A]A^A_]1AU8ATUHSH(H_@dH%(H$1H|$0HH}HD$(HULH$GGH{xHT$IŻsTLH|$(HHH4$LCFLHL4FHH\$Ht$&IDHHT$L@H=mRMH=bRHH@HL$(HHH?H]H@HD$hdH+%(tDHxH[]A\A]A^A_AWAVAUATUSHH $HH $HLDgEdH%(H$ HGLL$HH$LHJD$CH&dLL$HcHEHL$(L IHL$HMLAWLPLL$LDDH!LAXAYW<Ht$1ҋ=H$hLL$L@HD$H1MHRH$ dH+%(tAHĸ []A\A]A^A_AUAATAԉUHoSHHAPHEy :)1uHE1DDH9Z[]A\A]AWIAVA1AUAՉHwATUSAPH=t:8t/AuE1DDIw|9tZ[]A\A]A^A_S/H<1Ht H)HPHH[AWAVAUATUSHH $HH $HDHLnH<$HAHT$LD$dL<%(L$ MMtQH/HHD$ HT$(^LT$ L\$(H$IHLASARHt$HLL$h_AXHËE0%=@t.Au%1HD(?t8DAU0%=`w=@t'w;-u/m=t>=<HDCx 14$uV8DAt1M1HށDODy8DAE:IAH=g1HU H|$H8IEE}LPDEE^1HD>#MtSLLHD$HT$LT$L\$H<$IHLASARHt$HL$ZYIE1HDLD=BHDLK7$yAAAHM@HD=6D8AYE1Au>U(M,HDD$E1R6U0At $HD}9tAE0%=HH8HD1BD$xHLhHkLHD$L;l$sSI}At H|$ H5J 9H|$ u E1HIMIU|$Y9yAI릋|$=AE0%=t6HE8 $HT$0HDHD$@HD$01HD$HHD$8F9tAH$ dH+%(t5<H D[]A\A]A^A_QHHw;y =51ZATAUSHwHHdH,%(H$HT$4t 4!3\$ uD9d$$u 19l$(H$dH+%(ti;HĠ[]A\ATIUHSD$ HLHHnH{LHHCfC[]A\%AAWAVAUATUSHH $HHF0%HT$HHAMdL,%(L$8M̀~`u8=@uL>6w - =`t=t H{L;EL>=@u;LL|$AUIDATHL7HD$(K,LS(s0PZY\L?LHmH$8dH+%(uCH@(HT$MMHHDHH[]A\A]A^A_H$8dH+%(t9HH[]A\A]A^A_11øAWAVAUIATUHSHH8 LL$dH%(H$( HLD$8H$Ht$ HT$(HaGHL$0H@HD$1HD$@19Hپ@1H$H0G9LD$HM8H$H$H|$H9uE1HT$H|$HH?9t/6LHFH58IH}8133H|$H1uH$( dH+%(t8H8 []A\A]A^A_11AWAVAUATUSHXdH%(H\$HHHH.IIIMξ/H/4HtHhIM @H|$1H64\8HÅE1L!GHLHL$H5E udME1HL$HH5ELÅtE1E11HH5EL%Mu%E1E11HH5ELt뿻HD$HdH+%(t=7HX[]A\A]A^A_USHH $HdH%(H$HHH=fD$H|$=(t1tZSHT$E1E11H5HE5Hl$E1E11HH5DHuE1E11HH5DHH$dH+%(tX6H[]P1ZSHHcH7H=n6HѾH{6HC1C[AWAVAUATUHSHQHL8HGLhMtM9s,I}HtHtL'HL)Ӆu LI1Z[]A\A]A^A_SHHHP0Ht H5O.H{y'?H5HC[AWHI1AVIAUATIUSAPHwH>L)HH\Hy(taHtaHtXHI$LLL)HP(t@HHt0I$HL)HPM$LLHHAP t HHu1ZH[]A\A]A^A_HOH1DIHH0AHDHIDHHtGAWAVAUIATUSHHHt$Hz(u H 4U\H5BH=B7HHOL"1H1HH\IHHtyIHEHt$LM)LP(uUHUJDJTHt HuH9uHH1HHH9tHHHEH@0HtLMHuH[]A\A]A^A_ËG t xw 1҅OHG0 HG0`H`W1ËG 1҅OHGHHHFHG@H9HG1Ht*SHH8HG0PH H™HDH)C@CP[H8H8HGH1HHDHtH=t H9ptH1ATIUHSH8HG0PHH~H}HHLB4H)]XH[]A\ATUHSHdL$%(Ld$IHt$D$4HL3HD$dH+%(tL2H[]A\UHoHSHXH@dH%(H\$HHtTH{XuMHt$H1Hs@T$8t)T$HH|$6t H.1HC@H8C 1҅OHT$HdH+%(t1HX[]S_9[UHSQ_ 8~2H81ZN[]HB1ATUHSH|HtHtL'8LHHu[H]A\USHPo HwH4{8B2HY81ZN[]AVAUATUSH dH%(HD$1f?Hl$II@H/uqI\$A4$H H4E$$MkIL9s.L3HL2-LHHSsHHL/HG7HD$dH+%(t0H []A\A]A^H6H?%6HvH%6y%~9H8dH%(HD$(HFHH$H%?HD$HHHHD$H%?HD$7HD$(dH+%(tw/H8U1S1Q4x!H5C[.HHu0HZ[]ATIUHSHHH-HÈHt2Ht)CHSLHHH4uHCH1[]A\AUATUSVDo EHLgHHwHL)Hv(H)΃IHHHL .I4,L#Hs LgL9t;HC0HSHHSH)PHYH[HE]A\A]HHCAZD[]A\A]Q8+Hy R'HZSHdH%(H$HHt$4uHD$`HHD$PHCWH$dH+%(t-HĠ[Ë8땋8QHt%Aо1H;-HtHx11H;-ܸZ1AT1LJUSH HcdH%(H\$HD$ GHL$D$HGH|$Hp,HuOH|$X5H{Dd$HD$HŋG%9r+HCHNjPHDdHlHD$dH+%(t,H 1[]A\UHHSV4H}HËG%9r+HEHNjPH\1Z[]AVIAUIATUHSHH %HLhIH@fXH9s HH9 H9s HTH9s HHHAHHP*KTOdIt$HHDуHI$ITItHHDIT$[]A\A]A^E1AUATIUSQDH59HtQHH64Ht*HDh1Ht H(HHLLH*Z[]A\A]%*X[]A\A]ATIUHSH8HG0PHH~I|$@HHdHHcH[]A\E1AUATIUSQDH5N9FHtQHH,Ht*HDh1Ht Hc'HHLL5H*Z[]A\A]%:(X[]A\A]AVAUATUSHH $HdL$%(L$AA11҉H0u1DHމ[.t9#8uEuZ/H%HtH9tH)HPHwHH|$b#DDHt$FxDHމ-H$dH+%(tu)H[]A\A]A^AUIATAUHS1QH9s/HItDH))Htm"HcHZH[]A\A]HcGxHHW HtI@0LIPIpLLVUISHnI1H^MPH M)MIhIXI@0Ip8MXHL9sHIMHHHFH+FA@P1HF1HI@I+[H)]LIP@U1SHAPIH.HʹL^LVLNH+H; HkHHS@HL[LSLKHC0Hs8LCX2!H3HSH9tH)Hg#HCH+H)CXHZ[]AWIAVAUAATUSHQHvAHAHPpHHtt1H3HSLKLCHHN HuHULMLEHE0H]8L}@DmHH9t(H)LIAąxEEy Hs( HHH9uHHU&HJp9tHH9u)H%HJ(;uBHH9u؉]1HLS@LKHLCPHSXL]HGHHC0LHSHSL[Hs8LS@LKHLCPs H&L` HtH HcZ[]A\A]@% H81HtHHH=Hÿ PH=Z%H`y%c S1HHtH[AUIATIԺUHH SHHLAPH uH{HhHIH LL uHC@ H LLuHCHH0HPHFH  LLu'HHcHHHh1Z[]A\A]ËH9s!H %PH5~H=Ht7SHH`dH%(HD$X1Ht$H$=T$HD$HپHIHHLHHT$XdH+%(t!H`[SHH?W9rHHNjD$PHkHHD$ GHG[HGHPHHH9sH H9yuHyuH1HHFHUHSHQiHHEH(HHHHP(H}t<HHHH H0HHKHPHXH Z[]AUATUSQH^H H~tBHCHSHBHᆳHCH-52HCHtH0H) HIEt9HsHK HSHLlHNH1HSHS L9sH}HH{(LH-HHk(mHHZHHk8HCH}HtsHL9uHa1IT$X[]A\A]UHH@HHdH%(HEHH9tHH$HĀHL$xHT$HHH9tHH$HH$1HLL$HBhH 3IH9s HrmH9rH5H9sH9s Bhtest.LL^@HVHHoH1IQHHIA@HHHHDžHDžIAHxw1HH/LHHH ^Lt,H~"HH=' pHuHUdH+%(t AVAUIATIUSH0H<$Ht$dH,%(Hl$(LH|$HH KH<$Ht$LLD$t>H|$Ht$ IHL$t9H|$Ht$ ‰ Ѓu$1҉؃A$HUHU11I$ID$HEHEAEHD$(dH+%(tH0[]A\A]A^HHBHkHH9sHH9tHHVHPH(HF$HD$H(H?HGHHkHH9s(H90tHqHkDHTHPAWAVAUATIUSHXdH,%(Hl$HHH-H?MIAIt$HL$I<$It$1MH|$Ht$HL$LD$(HT$AŅD$ШtH|$(Ht$0E17AH|$Ht$ LL$8LD$H ÅtEtuHt$8HT$@LHt$HT$ L@IHtEHT$0I(Ht$(?6۹HH1D D$L}HUE]1H1I$ID$HD$HdH+%(tHX[]A\A]A^A_AVAUIATDUHS1H dL4%(Lt$IH}~YHDLH-H}t9H<$t2D$LEH D$ HD$0$HD$3H 맻HD$dH+%(t(H []A\A]A^AUHATUHHSHHhdL$%(Ld$XILl$HH|$HD$@Ll$HL$@LHT$PH(HT$Md$HHD$HH1L#HSCHD$XdH+%(taHh[]A\A]HHIQЃHtH>HuÄtL9u0uHAHH{HAHvHH>L@Hv%ÊGHt4HVH9u+H<u;HF@HLGLHpL%CH(dH%(HD$HtqIHHHH;JutNGHR(HBHkHH9s,H;tHH@Ht$HT$HLHD$문HT$dH+%(t H(ATIUHSHBtH?OI$HxhHH6AD$~t'Ht"H߃?Hk(HHID$Hxt9A|$~HHHID$H[]A\H0HP%[]A\Ht[AVAUIATLbUMHSHkLI9s/M9tH HzLLHIo[]A\A]A^AWAVAUATUSHHH<$HT$HL$LD$dL,%(L$8E1HLvEHl$8HkLI9AtAFD9HD$(Hl$0EtHt$HT$H|$(H4$LH|$(HHT$(HL$0HHT$0Ht$0HD$(HuA!HT$(H|$!xDl$(IOH$8dH+%(tHHD[]A\A]A^A_A%1:tUUHպSHQx51HHLxH5HZ[]AWAVIAUATIUSHHQLHIIHu DLjLHI(LLIH߹H1L#HS@kX[]A\A]A^A_AVHNhAUATIUHSH@H?dL4%(Lt$8I֋RLl$HcHEAF9rDLLHLLH HD$ HD$0$HD$H HD$8dH+%(tH@[]A\A]A^UHS1QHHHfAG IG8L'Ll$(H$LIL$H5D$ ID$@LAhH 8 L4Hap1AYAZHu E1DžHD$L(uLŅy@xv.|$ H5 WyE1Hy{11ҋH5E'H5yVA8p8HID$@LLHID$VH5RHtH|$HHh1s_AX!H5Zx!H5d!H5p? !H5K!H5&@E1y(|$ Ht$(1BuŅAHD$HP0Hp8{HEt ? 1A8D|$~QHH J4ID$@HPDID$L@h@tH V11RH H|$ZYL @tL 9IT$LD$HHpHhJ4JHE1Z|H#;8E1H IL$H5HID$@HhLHLPRHSD$ 4HeH|$ 1H AAxEt|$ Ht$(1H$(dH+%(tQH8D[]A\A]A^A_AUATUHH=SH(dL$%(L$ILl$HD$Ll$7H|$H[H|$HHHH=H|$H$HEHxhH|$H H=dH|$HHE@H|$H0HPHEHH8t0H=.H|$HHEHH|$H0HPH=aH|$H H|$HH=0H|$HT H|$HH=H|$H#HEpH|$H0HP H=|H|$HHEhH|$H0HPH=PH|$HHEPH|$H0HPHEXH8t0H=eH|$HHEXH|$H0HPsHE`H8t0H=+H|$HOHE`H|$H0HP9Ht1H=H|$H H|$HfHExH8t0H=wH|$HHExH|$H0HPft1H=A|H|$H H|$H=`KH|$HoH|$uA|$u AD$HL$LHT$HaLHHHD$HHL$yA|$uRAD$GHUH5LuHU(H5LuHU H5[Lt릸H$dH+%(t*H([]A\A]SHxHߺH5M[$[HG@HV@H9tHJH8HHp%USAPH_HnH9t%HhH{hHNu*YHH{h[]%j¸t1Z[]HHATIUSHH;~u1IL$uHVt f9rf9rIl$XHH}u!I|$HsHhHhTH;nXuHhH}HuHHtHCHxhHKXH9HqHHdu:[]A\ø1HHHFH9GAWAVAUATUSQLwAt1L~At IHI(L`HkLI9s HLt E IAI(L`HkLI9s,LL[tAA9brIAcIUXH:t 1H9SXZ[]A\A]A^A_1øËE:@0Htu1ø9sAW1AVLvAUAATUSH8GH<$HL$ D$ LD$(IHD$L;t$IH@HhHHHD$H;l$H]At H{uHA t tDHuHCD LxMkMM9sAt AGtIH$LHDtHL$(H$LHHD$ Ѓ|$ ttI(H8[]A\A]A^A_AW1AVIAUMATAUHSHFH $LL$uDL}mHkLI9s1H$LLUDuIHL$H$LLAՅtH[]A\A]A^A_AWIAVIAUAATIUSAPHGIHDHp ID$(HhHkHH9sHEMLDLHHpX[]A\A]A^A_IHIJLHHwJHtD/HMLI9s K H9 L9s J I9s LALfEECDøÅx f7D7H8HG0 SHdH%(H\$Hu5H{C2HT1uD$fvCCHT$dH+%(t H[AWAVAUATUSRLw0MG HAA [Iv D`HtINIc1HH1HHkdH11Eu A9^uA9FtxLmAFE1A^H51LA9}ILAHx1HD9}L LLH=yM X[]A\A]A^A_HFATIUHSHHwH>t HLHH~H޿  H[]A\%ATIUHSH HdH%(H\$HHx(tH$HKHL$Hx(HEHxH@ }tHHD$dH+%(tJH HL[]A\%HHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$H$HD$HD$ D$0HD$HT$dH+%(tHËG H8y  xG HG0`HBv%YHJHBH}HS/H:HtHXH[AWAAVAUIATIUSH?QHk(L31Mt LLHLLtHA H9uAZD[]A\A]A^A_ÅuH1H%HxH*HIHAL H*X 1/rYH uLcLO~yH1H%LHZ%|ATUSHH $HH dL$%(L$IHHxuH1HPH9~h@t@:tO@@t@/uJMtIHDAIH|$A)HVP1LH|_AXuHHHHH$dH+ %(t<H[]A\SG Hƒu5 G H=HtH5vHuc C tMH=]Hu7H=]mHtH5PHpHt HAH<HC[1GAVIAUATUHSHH$0H$8L$@L$Ht@)$P)$`)$p)$)$)$)$)$dH<%(H$HÊE LeMuL.e H$LH$HD$H|$H$ D$0HD$nS9{H5HcH|<HT$H5L1LLH=M H$dH+%(t"H[]A\A]A^ATIUHSHHHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1HtdH$$HD$HD$ D$0HD$HuH{C t H{H{ HHL>c H4H{(t8H{(HLHH$$HD$HD$ D$0HD$HD$dH+%(tH[]A\ATUH1SHpdH%(H\$hHHu(HD$HH=FNHHt.H H{tH H}(H541HH|$Ht$ H|$HHHL$H}(HT$H1H5THD$hdH+%(tHp[]A\H>II1HʹI0MHIP IP0LF0AVAUATUSHHo(dH%(H$HG0H9HFHH9oHHDhEtWLOLG 1HH@H|$HtxLcHt$DLL9tDH1҉PHkH$dH+%(u,H;H1[]A\A]A^H$dH+%(tH[]A\A]A^ATIUHSHHwHH@ H{8LH9HFHHG0PH~HCH[]A\SHHw H1HP0[Hw(1HW0%SHHw0HC HC01HC([HtVHwMLIHVSIH^L^1IPH/L)I@0LMIXMXIp8MP@IPH[HI1I0APSHHHT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$HHHD$HD$ $D$0HD$~1HCHD$dH+%(tH[AUAATIUHSHHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$HHHD$LHD$ $D$0HD$ELEÍ@AEʼnE -A| u1ۉ]HD$dH+%(t2H[]A\A]ÃtSH5d1H1HC[AUIATIUSHHoG 9r)AH )H51WH?HT$EJT%LL$HH9|"S EH HH5o1VLDH5H1;CCH1[]A\A]UHSHH8dH%(HD$(1Ht H HD$H\$ Ht$H|$H tHt$HT$HHD$(dH+%(tH8[]UHSHH$0H$8L$@L$Ht@)$P)$`)$p)$)$)$)$)$dH%(H$1H$HHHD$H\$H$ H$D$0HD$HHHHH$dH+%(tH[]Ë~SH[HH)tHt?*u u HÀ?*uHAWIAVAUATULSH(AH$HL$H)It/IH~fAAI\IGHD$HIH|$ I)L H|$HIt;1{ {H{$H{H{CH H{ H{Z[]AVIAUIATUSHH`dL$%(Ld$XIHl$H1ҋ3Hs HsHMu HL MM1HLH{HAʾHTH{ KH{BDHT$XdH+%(tH`[]A\A]A^USHdH%(H$H H{@HtHG0PH{HkXH{H{1ҋ{Hy ʾ8tKX1CʃuH|$HS^H|$pw HJ@if=~ HC%HYu1H9h 1YHtt#HK0H{8LD$1H H5ECX%uH{@tC\DH$dH+%(tHĘ[]ATUSHH dH%(HD$1H|$fD$CfD$ fD$$CD$CD$$#D$#D$H~f|$t.@u)HS8s1H{^IEuH{$f|$t2HS8sH^IH uH{D$f|$udH{Hu(H{@HSHH=ttBK\L@Hvu%:Uu HEHHHHCH8HptHT1HSxX[]A\A]A^A_HBXH8t>USHVHGXH9H0HP9h$sHSh$HHHY[]X[]ÀQu3SHH tH{@HsXS0HCCP@ЃCQ1[1SHHH4$HHT$HpHT$H$HHH4$HHT$pHu HȀ</tH@HtH@H4$HT$HH[H1H@H~(uBUHSHRHHG%9rHEHHNjPH\C(X[]HtSHHH{H1[1ATIUS.H^HkHH9sCu H3LgH[]A\H1H@@SHHHF@HNdH%(H$HH|$LHDHh1HH{H$dH+%(tH[SHH~hH{[HeH`8H`(H` AVAUATIUSHHdH,%(H$H6H]mHkHH9sqHCL LhD0Mt {fIHH L@hCtH H|$AU1AVHHI|$HXZI|$5H$dH+%(tH[]A\A]A^UHSHRH?G%9rxHEHNjPH\X[]uSHPH[Hv(HtuR1Y1Hw9F$sF$HAHHAWAVL5AUIATIUH-DSIQHA,^LHLHHHHHLuCHH$uƸZ[]A\A]A^A_ATH rIUSHH0dH,%(Hl$(Hպfu HYLd$H\$ 1Ht$H|$H Nt-H|$Ht$zy1HsHH HD$(dH+%(tH0H[]A\ATHUHպSHH 2H0H|$LL$HH4$Ht$dL$%(Ld$(MIt#H|$Ht$ ڵx.0Hs#A$H<$Ht$H=HHuHT$(dH+%(teH0[]A\HcHHcBH bzH)HHHAWAVAUATUSHH $HH $HHHFL6H^Hh@dL$%(L$8 IID$t$HHID$LLP t$ӽHHID$IuLIE@H8t1@t)HH}IE@HH0HPIEpH8t/s)dHHDIEpHH0HPIEHH8t/ s) +HH IEHHH0HP]IEPH8t/ s) HHIEPHH0HP$IEXH8t/ s) HHIEXHH0HPIE`H8t/ s) HH`IE`HH0HPIEhH8t/ s) GHH'IEhHH0HPyIExH8t/s)HHIExHH0HP@It+s%ջHHIH\It+s%HHIH'It+s%kHHKIHfAt,s&5HHAHIE8t-s'HHID$Iu1LPIE(8t0s*ʺHHID$Iu(LPIE 8t-s'HHqID$Iu 1LPIE08t-s'[HH;ID$Iu01LPAv3s-$HHAH@@IE88tmsgHHIE8Hߋ0HD$HD$LxI I9s"IHHL$IH0HPHL$H}wHHWHVI}t?A@@۳H$8HHH1THHiE1E;s4ALs"IcHHiI I(.AHH sbLLHtQ1ALHL$8Lzu. HHkH$8HHH!sO!VHH6H5Mt$ t$LLL ƃ HH"ɰ"D$ HHHIEH@LpIHD$L;t$IH@LxHLHD$L;|$IH@ LHHkLHD$L;L$sdAAuWI?|$tHtFLL$(LL˲LL$(t,t$ I?LL$(uLI?LLAT$ LL$(IIhI;HMmMu1ŀ |D$DIIDD$L|$6HHHIE(LpIHD$L;t$MLfD$6I@ LD$P:H>HHLD$I@L@M M9s[ILD$LLL$ PH.HHķT$6H߉D$HD$8HHIt$LܭLD$LL$ IIPHstI8thHHIHߋ0ILxI I9s#I?HL$IHHHL$HBM}0I1LH8HH9utxHL$HHHL$1I?IL9uHE1LHI|0tHثJ<\HH IIuHfAt,s&HHoAHI8t0s*WHH7ID$1LIP#HHH HHGAy HH)At HH At HHHH$8 dH+%(tDD$HH []A\A]A^A_AWAVAUATIUSHHHndH%(H$1H|$H HEHL$PH }HL$XHHHT$(HHT$8HV@HT$@HT$HT$HEt AD$ RE1 t4ShI|$htu$HH{ Hs:AH}tEu H|$(ID$1Lc(HS`D(LxHD$8HD$IMM9I7L9fEt H~tH #uIHH}t*H;tHu^Et<1Hs(Lat)ƃHHLSpugEt1ƃHt$HI?-I1HS`Hu1.H|$p1CH$HHt$`)D$`SxH$dH+%(tHĨ[]A\A]A^A_HH~(HtH1HAH9sHH9rHH)HtH4HHà UHH3SHARHcHqqpH*AYHLrH[H]H#H5H^HH=IRG(q%%HHHǺx?HxH봀pppHmHLrHֺ`HHkcHHPH1H9Gqpg(wH5ۥHtCH5Ht6H5ѫHٰt)H5HŰ1҅t C(% ЉC(1qZ[]H8dH%(HD$(1HT$RH`HD$H8H4$HL$tHA tHHHD$ $HT$(dH+%(t@H8AVIAUATIUHSHLjH?t,At#1DHH$HuHUHyH}t,At&HHHuHUHFH}(HtHLLn*ѭHHHH[1]A\A]A^AWAVAUIATIHUHSHHLD$LHII HH1L3L{HS(HuUHA$HL$LHPHw/}/u)HCHHLHk-HC(Hu 1HCHCH1[]A\A]A^A_AWAVAUATUSHH $HhLhL$IH.H$IIdH%(H$X1L$H$HL$H$HFL$L$L$Hu HF HA$t0A9u*1H$IID$H50yIiH W)D$0HL$@IΨt"LL$IHhLL$IAHDHD$HD$HHD$LhH;l$LULLT$ H|$ LHT$(HT$HD$ īH|$(LT$tH|$ D$Yt'H{8LH1H5^HD$XD$HHD$p)D$`AF%A9rLaIA(D$`HPHkAADHT$pITAD$HL$0LL<ŅuPHD$@LhHkLI9sNIUHuI1H|$` Ht$`H$H<$AׅtԉHhLHt$02H|$@HLHD$@AD$uHH$H$H$AHHD1HD$H;\$;Ƅ$ L3AD$tQA>/uKHT$`ALLHT$H$XH$tHt$H<$AׅƄ$ A$tfDŽ$L1H$XHVƄ$H$H$H$H$HgH$H5L*LH$WHL$ LD$HL$H$HHT$0H$H$by $)D$0(D$0HT$PI(Ht$H$%H$H1D$ H$$I|$ u<$u2Ht$0HT$8LyH$Ht2H$H H$IH5nuJ$ u71H|$p$Ht$`H<$)D$`Aׅu$uHH$XdH+%(t/Hh[]A\A]A^A_AWIAVAUATUSH˹ HhdH%(H$X1H|$0Ht$IhNH$HD$(HD$HQHD$HitH{ tH=HD$ HqAHD$(HFHHH1H9GL5LIH nLt$HLt$PNH|$HAċ7tbH )HʤHD$HHߋ0JHD$HHhL|L9LmHI}hHHn1AE(H|$P7H (HYHD$PHߋ0HD$PHhL|L9sILmH|$XHIE@IULHDHJh1HɠHHAHmH|$HH|$PLt$HH$XdH+%(tHhD[]A\A]A^A_USHAPIH cŅxH;H 67HeHHBH H9sHHZ[]AWAVAUIATUHSH(dL$%(Ld$It*HD$dH+%(H(L[]A\A]A^A_.H~uHFc/HkHL$HLHD$EÅHD$LE100HD$HXL/tH PZðAUIATIUHSHAQHOHHQHLH{HHuH;?y=HpHPL̘1(HK(EVHIUDC0H51_AXZ[]A\A]AWIAVIAUATEUHSHHHHH $LD$PLLHIHHuTI~ ͗HHt}DpH@L9s J 0I9 I9s K 7H9s HLLLHH At.H@u%HxߢH<$Ht$DcDHCHS1H[]A\A]A^A_ù1II0IxH5§IP %[H%91Hw(G0AWAVAUATUSHH $HH $HH $HE1HT$(HD$(Ht$ L$dL,%(L$x0L/G0Lt$H#H|$ 8#Ld$0Hl$ HLHGE1|$tHt$8H|$0>@uE1]uH|$0Ht$8H WܟD$ AD$@wH;?x+HK(ATH21t$`DC0H5}DL$`L[]VHD$H8-u=H|$@LH|$PHt$XH ԫUuE1H|$@LD$PuH|$@Ht$HLL$`H u;H;?HK(HAQ1t$PDC0H5ПDL$PAZA[QH|$PHt$XH uHt$X awE11H|$PttTH$x HL$hHT$`ILHԓHcȅEHt$PHT$XIH{As+H|$0Ht$8H ߪH|$0Ht$8H AtkH|$0Ht$8H ȝAtEA}x.HK(LHzV1t$@DC0H5uDL$@D_AXMALHHD$88@tEuj!HT$0LHIHT$ZuH|$0Ht$8H tE1>H|$0Ht$8H Y[uAtL%HAt L%)H$xHL$8HT$0IL8HLchMtB4w/uILD$ HL$(|$tQLHHL$LD$LD$HL$u.A}HK(ERH5UDC0HLMu"L[ LD$HLMLHAL$x LIپLeLQD$LHH|$vfD$vӜHcL$Ll$hHL$`Ht$PH|$`H <tPHt$PHT$XH|$vT$vLMLS HD$xLD$HHHAuH|$v1H$x0dH+%(tQHĈ0[]A\A]A^A_UHSHH5Qt3H5Ht(H5JHϛHHDH)HZ[]AVAUATUHSHL.HIIHuLHHtH1HL1HAID$L#HkSHt HAąx HA}uDeHEHIcP[H]A\A]A^Htt1ETE 1MtAHt$?Hk(fuHt 1D #M\ D@ƉHK փ D9HAMkIL9CH0HLD$(HD$HD$LD$(HID$HXLHFMkIL9sH0HHD$HD$HHAD$ D$A;Et@E`E` AD$XA]HLI9s2IH@ D LhMkMM9sIuHIIH8[]A\A]A^A_HAWAVIAUIATUSHQHFH@HhLdL9sHuLHAHC(HhHkHH9s-HEH@L`MIHvIO+sHCH9Eu,HC@HM@HPHH9HqHHrtuti)uSA@u1H}H{u7)uDD)Ѕ~IM~I HL$Ш t HL&HS@HsLHHHC((LhHkLI9s*IuH\$ LIHT$ Ht$(IuHL$(HC(LhHkLI9MLHLIHvH wH$LfA|$\$H$1H5H cL$IMHHPI9tQH0HVHN(Hr@HVHR8HQ HkHH9sH=dH9zt H:LVLW8HH@HIHpHFI9tHHxHvHMH$IH$IT$HH9tI4$H\Md$IHD$0L,$(HkH,$I9sL1H$IXH$H$LIH$IT$HH9tI$HHpMd$I͋CCC HD$0HkH$$H\$HB$H$H9sH HI(Ht tJHHD$1H5LH.aHD$1H5$HaH$HHR(Ht[ڈ\$H$ ʈSH$H9$rHD$1H5H`HD$1H5H`$H$dH+%(tgH[]A\A]A^A_H`HD7tHH9rHH0HHuH9r H@0SH dH%(H\$HHt$H|$H|$`HHT$Ht$HD$uHHHD$HT$HD$dH+%(tGfH H[ATAULSH@HtHֺd_HuHuH5jH  _HuHuH5jH) _IcH{|1ɾ U(H{lU,H{tU0H{dHU81ɾ HlHH5NynH1H H1 HH=u[Hc]A\AWAVAUATUSHHHt$8HT$@HL$0dH%(H$1H 18E1E1H$LL$E1HdL $LL$(H$H$H$LL$DT$PH$HHD$ H]$=$u|$PD$PH$H5xhtDŽ$L$E1H$H$H D$|L$0LL$pD$HH$sHD$H IH$HHD$hDHT$H|$0HhbHH${D$T LIhDH|$0LH`H$kHD$xYH$H HD$X?HH$PHD$`%HH$PI I H$XHH,H|$hHI!́I HH|$hHI8I H$ЋD$|LL$pL HD$L$L$(H$ HD$HH$0D$T$8D$x$<D$X%$@HD$`H$HHI!I L$P$Z$`tt$MLCWHc1H$LWHynLIH$H$Hy L+LVLHHPxH;VHpYxK HIؾ0H|$xHt$HxHuHt$H.1Mt'HS LHiVs HXH$dH+%(t=YH[]A\A]A^A_ATIUSHH+L9tFHHCH{HBHᆳHH-52HCXH{(U`HHI`Hm[]A\AUAATAUH0SHQQHtHu HHv<_<.t] <-0< v^H9s79Iu E;u|$,vu|$Lv9sǸHT$hdH+%(tSHx[]A\A]A^A_Ãσ wXHOHcHHhHgHgHgHgHgH`HgHlHgHg11H9~5 >t HH[]A\A]A^A_SH5@dH)XHtxT3H5 dHMKPtH5 dH4K%[ø8 S_HHt @ [UIЉ SHHdH%(HD$81HT$Ht$ H1D$LcXH$tSHsmGt H[(HuHT$8dH+%(tNHH[]AWAVAAUAATUHSHHH|$dH%(H$1tHH=b$K 1H`JH$KHT$X1 HH$Dt$\HL$(HD$`vWD$$tHoSBH=bGIEtHH=b1JHFA8uAHD$8Hl$(HD$HuU }D "SÃkMt0A<$t)uLOtLH=b1J.UHucG-HE8\$0H|$1D$4 HHEAHcHD$8HD$HH$DD$1H<$GHT$8HD$@H+T$HH+D$PiHHT$FT$DD$IDžyn<1H|$0AuDAuA?uSH8RtFf|$6jAu5D$6t.L$HL$$D$HLT$$ tA|MHm(fH|$(Gu 1^At#1-I߀1IFHHup MH|$JDupHEhH$dH+%(tKHĨH[]A\A]A^A_Åx9|H=Zk5PkHPkHuRHHH8kPxH.kHuYAWHAVAUAATIUSHH-kH$HGHD$HH]hA$L9uqLHQuaH4$H{QuLHt$H{hQu9HI$OQu UpD9uEu L5ejLcHH[]A\A]A^A_Hht =7juAW1AVE1AUE1ATIUSHHH-jHtzHChAMHT$L$LHHEhHPL$HT$A9 i~ D95iHt LL=iHUxDHALHiLcxHiHH[]A\A]A^A_AWAVAUAATIUSHAP"PHHCX=K1ɾ!HHCHPHkHH=]HtHDH=]Gu]HLIFLHLHuH]H5]#H5]HFtԾ LiJ1H5g]HoMH5U1&CLsHH=]AHHuH=]CGH=e]AHHDI'H=\H-\GL=\tIEt$HH=1]1zDLH=:]1hDHL\@t HH52]LLNt!LH57]HGH81KH{HlDHC@H1I3HljK D1H{@L7FHu LH5\H{@KupJHH tHHH u)%=t=t=tHLP}H{@>HCPHH=\)@Hu^Et H=\ CL9CE1H{PLHAt'=^StHKHHEu1H{@`OHJH= \H1BH{PSH11HJH=\HH1aBH(MH{PJ11HJH=[HH1,BHLeHJH=Z[]A\A]A^A_AWAVAUATUSHHdH%(HD$81HHG0IHHHt'H9Hw(HHGHDI)^0HI^(}L%=A<$tH|$1?Ic$HD$AAD$AF fD$A<$t0ft+HD$(H$.1H|$w<taf|$tI~@HutH<$1Y?HT$HD$ H+T$(H+D$0iHIT$ =T$ IDžynA?u HIuHH#JHu;I~@4EtuAF 4AF *=1AV A>HHqAHy%<8{HFIeHT$8dH+%(tiCHH[]A\A]A^A_AUATUSHAPHu 5?HCHHC1HsHsHSHH)HsBLHHtxHLcLkHK|% HJT%HSH;Su:HuGH,H9rHL=Hu; HCHkrHi6HKHpHs(HH)H)HSHCHS011CD%HK0Z[]A\A]AWAVAUIATUHSHHL5:dH%(H$1A>t! H|$H1H|$(<IcHD$(E1HCA>IcMHHHTHH=v HH|$1HTH<L|$(L+|$L|$8HD$0H+D$ xHD$@H@BIHD$@L|$8:My n1HD$11AEHT$HLD$8x{?LL$AA9uwHF*d?:I}@I1AHtHKEHA}@HH:;HuA eyA?IHH)IH$dH+%(t@HL[]A\A]A^A_USHQH@Htg;H{@=H{@:H{HHtT<H{PHtD;mAH{hHt$IH{`rGH{hGH_GZ[]AWAAVI/AUATIHUHSHGHH5JBHxFhH5NH`FPIH5aGE1H>Ft H9<IEID$A?@t%@%u |$tH  :tHIM}J<; ;HHtBI$It$HH9r`Hip$HT$I|$H8;9HT$Hu$H8F8 cwIL$ID$HL IL$Ii$8I\$HT$LHGIvH{GIHGIHGHT$AHIH9s J*H9 H9s J.H9s HLHB(/}@Mo@%uV|$tOHB8%ELHW< P0BAEEMoHp0PW< OBD9`8tUHB8HMpHB81H H(Hǃ0I$1H[]A\A]A^A_1HGHHGAWAVIAUATUSHQL&L'L9gs,Ii8HK7Hu 6 LcHCLi+81WlsHi8H{IvLHL{IVMHDIHtI8HI;.rHtHCHJ(CL#1Z[]A\A]A^A_U1SHQH{H;+sHi8HHCyC1HCHZ[]ATUSHH $HdH,%(H$HH=IRo5HtZHH|$1H.:69=#H|$H5O;HHH=Q1 8H=R5HHt$m?<HHH H1H|$HQ8=l|H5AMLAH5QLAtHIHu2HHtHHH6uUH5fQLbAtVH5QLNAH5QL6AHHH IHuHHHH}1H87=~EH=PIHHtSHH1HP8X7=pƅH=P1B6 H791H*9H$dH+%(tl9H[]A\AWAVAUATUSHXdH,%(Hl$HHH=P2IHuH=vP2IHu1H5JL?H5HIHD$(LHH$ HID$HHDHD$AL<,w(HHrIHHs HÊ<,wIM)IFL9sLLLL)H6I%|$L/L>HHD$Hx 1(5IHtyH=qHT$H|$8LH|$L)I9uRL9t$rKDDLctH4$H|$L<u'Dt1BD<8B2D<()t;gL{HT$HdH+%(tZ7HX[]A\A]A^A_SHGHHtH?H[%>AUI ATIUHSHAP3HtL(L`HhHXZ[]A\A]HGHtH? Ht HGH? ÍG< w@GÍG<w@GÍW@ǃ7CP/H;PZAVIAUL,ATIUSH@+@tZ@L>HHuE@%u-{pŃt2{`t$ tH M9tIHAl$H[H]A\A]A^ATIUHSHHt1HHFHFH55JHb1uLHH[]A\%c9H5JH;1tH:HH1[]A\H1%*>UHH5ISHAP0uYHH[]%/H5IH0tH}:HH1Z[]ATIUHSHHt1HHFHFH5[IH0uLHH[]A\%Y/H59IHa0tH:HH[]A\AUIATIUHSHH5HAQH0uAXLLHH[]A\A]%.=H5HH/tH9HHZ[]A\A]AWAVAUATUSHHtHH uHX9@HHvH;9HH01HL$MMljII8,HL$HHu HuH |;H;HHuH:LH1H10L1HH10H{L1H10L1HH10HH[]A\A]A^A_É߃A<v'G< v !1@>wH@HøUH8SQ.Hu#HH:HuH91HHHHZ[]AU8ATUSHdH%(H\$H+Hu GHŀ;/tH5@H0.uH87H H5-IH.tH5IH-u{:uH5 FHH:H5EHH:;/u{/t@H6HHH5HH8H$Htk8@ufH}HHHHuHg6H58:u!HpHHTHlHtĀ8@uH$HXH$E1;[uyLk]Lw8HtbP:wZHHsJL`LH)HHvH5HH0L,$HLf2L$$9HB#<:vItIB%J#H$HrIA$<:uDHI|$ *H$t 61HD$dH+%(t.HH[]A\A]SHH6H[%5ATIUHS4HHtHLH7HHr7HH[]A\H1%/UHSQP4HHtHH0HH07HHZ[]AUIATIUSQ4HtHHLL-H6Z[]A\A]AVIAUIATIHUS3Ht HLLLH,H6[]A\A]A^AWAVAUATAUSQHH2*HxH)HHD;A?v F|%HIHLrmA%uDsD6tDkD6tD%DpH@PFA$HP0FHAvBD%ZH[]A\A]A^A_USQ+'HHt,/H(HtHx4HH3HHZ[]AWAVAUATUSHLLH( )LKLLL$H(LI(LHD$(LHD$L(HJD% Hl$HHl$HH'IH@sLL$tR@tH5>HBuH5D HDHLD;tLQ3AVHHBWAUPAWVP@tH5>HBuH5D HDHLuD;tL2RHHBAVAUPAWVHL1(H0H(L[]A\A]A^A_ÍG  SHl$HuH^$Ht`8t[H0HHtJ8uH5>H3uHl#H5>H%t Hi31H[SHHtHd1Hu]HA-uLH5>H%uH5AH=A"H5\>H%uH5AH=A[1[SHH?{ tH5!1!H{1H[%1P"H.PZSHHHT$@HL$HLD$PLL$Xt:)D$`)L$p)$)$)$)$)$)$dH%(HD$(1H$HT$D$HD$HD$0H|$D$0HD$  !Ht$Hu" HHc*H|$H01u HT$(dH+%(t(H[H?%*UHSQZ)H]H5 @Hx${/tH%{1um{.ugCPиwWH; uIKʃ0 w;s0 w-{0 w@00kdk ʍD2ЉE8Z[]AWAVIAUATAUHSH(HuHMHt|LAtLEE1L-pH}twEeAtmH]M}A?@t+ t%L$IH@|$D$19D$tA?u;:u{HÉtu 1IIIHD[]A\A]A^A_HAt$ HL$ ]&HAVAUATUHH5L>SHHdH%(HD$1H&'qL,$L)#1IH@HH<*"IHLH5WIv\yIHH y ?@<>@x ?@<>@x׃??@<>P@xItMIutI@= H W?@41@0 ??@41P@p)H5Vf@==?? PHL,Mt<1LHHH5<HD$dH+%(u%HL[]A\A]A^%],HD$dH+%(t$H[]A\A]A^ATIH5<UHSHӺHH#H{ukte<:tHtXH_:H;,HtAH,HHt0:H,HHLHHH[]A\%+[]A\HtV~u tHHVH5;mSHH=;Ht8tHHH5;[ [AWIAVAUATUSHH|$ Ht$pHT$PLD$dH%(H$1MLǾdB+H|$AH/+H|$CH+H|$vHD$x*H|$iHD$4*HD$hMtHt LE1,HD$Xd$XD$XE1D$XD\$hD\$4D\$xMH\$ AD$E1E1DL$\DT$lDT$@uHF&H|$tQH|$vE1A/*H|$4HA*Hu"H|$6*HEA E1E1H56HD$D$(t L|$tHH|$8D9 D$HH3MLDH|$8HDD2IH Mt|$(u|$8L1HH59AILL7H5:L1A<$1L=uH$HD$Hv&AT$8PK~4Ht$LZtuHD&HHIDHL%uL E1LDD$H:LHD$`HQ(Ht$L$HL$`H11LDH$A9taL$M9t"LHH=v LL)L$LH4H)I<1|$4tHLH1H=8o}LMt7H|$ H54Dt!HT$pMMHH57H1HT$pLH1H57|$xtH57H1|$hH0HH$H$H$!k$HPPk$L$LHcH$HcP$P$P$lHPHPD$L H'71,LH1H H547LH5=7H1LH5C|$@utxuukH$uW{uLuCH=6Ht8tHH55H-JHvHHt%HЅuHHSHH55+H #HH=|6FIHtK8tFH5o6H!uLLHHH5P6LH5T6H1H=Q6H5T6HH$tH€8uHI6H1H H~H596H1xH5:6H1g}1Hc=tW/=@=--=tB===t=z|$@u|$4H=51uH!U8P|$11L$\E1Ht$HHD$HD$HD$(|$8&HB!U8P|$4#11E1E1HT$HHD$HD$HD$(L$8H$H@ H LHcHH$H54 D$l믺 H$H$HH$:ZHD$(oL$H54L$L#I~H$A~*uIIL$I]H H$[H$?-IHH H$'II9H$?/ HH$HH$:UM)HD$L9DI1IIEHD$LH$1HD$@W"H>"H5O0HD$H7"H$H|$@H5+3HHu?H$H|$@H5#3HHuH$H|$@H53H¿HT$@Ht$H!H|$H H|$@fH$HD$HmE8v =3TMt Lc L$|$4tu8LH=21oA<$/u$LCLHHt$`L~ LIHuH-A$A|$ufA$u[A9$uKHLu;Ht$`I$u$HsI|$|!HI$g!H I$ H(I$(HbHH)}8LHH$H51QD$8Du8AuHD$@Au=HD$H9 uH(uE8IHHtAAuqA0thAo=vZHMt6H;\$ u 1LD$@1 HD$\L$\9L$XHuHDpH|$(t$H|$tHL$H9L$(HD$(HD$H|$t'HD$LHtH|$t H;D$t HD$H|$PtHD$PHL$HHL$HHHHHHD$ H L9} HCHD$ HL$L H(D$8HAăA!ċD$lAD!Aā}80u4HH0HEH5 H1H{IHu^H(D$8H HEf H5LAFHD$IF@vIHtH9\$ t HFL_Mt L!E8-=wqEtH$HLlHLf@HHHH;\$ t HMt LHt H E1H$dH+%(tpHL[]A\A]A^A_AWAVAUATUSH(dH%(HD$10t HH,jIIE1MCH{Ht9HcC(H;C t/Hcs(HC K'H)L9IGHsH9H H9{0{,Hk@HxL9|L{uZH9ksH HHHCHkHHH;HC HHS@HtH)HS@1҉S(LHK8HH;'wHHxiHxHt$H HC8HHD$8@t@;t 'uC,H;H9HGH9ksH{H HHCHkHsH;HHC HHHC8HS@H)HC8HxH)HS@HuHH;Ht$nHu!H;Ht$UHuO|$ t FHu?|$ u81C(C &H9s H H9s HHII)C(MtL {0t}1C0MuhHT$dH+%(tH([]A\A]A^A_ATIHUHSHILHH[H54+]A\uH1%PH~H=+H01ZATIHUHSHHILHH5+!HǸHtz1[]A\AWAVAUATUSHH $HH $HHH|$HdL,%(L$8 IH)cLBHHHCH-0H$HLeHLH4$I|$I$HuyI$Hu`A9$uPHI$u7H$8 dH+%(H|$HH Hu[]A\A]A^A_% Hm-(A{ HHx^ HMHE1E1LH&HD$Hu,EtH}5 H}KH^EHEHDD$E1E1HD$ L|$8H|$L)K4'| HH1IH$H$MAEA8 wH @HcHE1@(@"uA @>@>@"A@"i@>w@"Uu@>^@"<A5@"A @"A@"@=G@>@"!LD$ L"LHHT$ HHD$(H|$LL$(IQH+T$ HAnum_bucketsptr!"adb error"i > 0 && i < o->schema->num_fields(schema->kind == ADB_KIND_OBJECT || schema->kind == ADB_KIND_ARRAY)schema->kind == ADB_KIND_OBJECT || schema->kind == ADB_KIND_ARRAY!"invalid object field kind"*schema->fields[0].kind == ADB_KIND_OBJECTitem_schema == tmpl->scheman <= max_vec_sizeo->schema->kind == ADB_KIND_OBJECTo->schema == src->schemao->db == no->dbo->schema->kind == ADB_KIND_OBJECT || o->schema->kind == ADB_KIND_ARRAYnonedeflateADBADBdADBc(unknown)OKADB block, size: %lu, compat: %d, ver: %dsig v%02x h%02x %02xdata block, size: %luunknown block %d, size: %lu%.*s=(%d bytes)(%ld bytes)%lo!%.*s%s%.*s%s%.*sinfopathsscriptstriggersreplaces-prioritytriggerpre-installpost-installpre-deinstallpost-deinstallpre-upgradepost-upgradeacltargetmodeuserdescriptionpkgname-specversionhasheslicenseoriginmaintainerurlrepo-commitbuild-timeinstalled-sizefile-sizeprovider-prioritydependsprovidesreplacesinstall-ifrecommendslayertagsmatch0123456789abcdefghijklmnopqrstuvwxyzQ1X1${lib/apk/commit_hooks.detc/apk/commit_hooks.d%s/%sSkipping: %s %sExecuting /%s %sexecuting %s %sExecuting %s %s * %s: %s%s%s%s%.*s%s (virtual)note:please select one of the 'provided by' packages explicitlyprovided by:%s (no such package)required by:world[%s%s%s%.*s%.*s]%s-%.*s[%s%s%s%.*s]satisfies:breaks: %s%.*s (%.*s -> %.*s) %s%.*s (%.*s)Downloading %d packages...download(%*i/%i) Downloading %s-%.*s%s-%.*s: %sERROR: disk space will be freedadditional disk space will be used(?)InstallingPurgingUpdating pinning[APK unavailable, skipped] ReinstallingReplacingUpgradingDowngradingOK:ERRORS;../src/commit.cNot committing changes due to missing repository tags.NOTE: Consider running apk upgrade with --prune and/or --available. The following packages are no longer available from a repositoryThe following packages will be REMOVEDThe following packages will be DOWNGRADEDThe following NEW packages will be installedThe following packages will be upgradedThe following packages will be reinstalledNeed to download %.*s of packages.After this operation, %.*s of %s.Do you want to continue [Y/n]? Proceeding with upgrade...(%*i/%i)%s %s %s%.*s (%.*s)%s %s %s%.*s (%.*s -> %.*s)syncing disks.../proc/2/stat%d error%s;%s %d packages, %d dirs, %d files, %.*s%s %.*s in %d packagesunable to select packages:error:uninstallablearch:depends:provides:install_if:masked in:--no-networkconflicts:Huh? Error reporter did not find the broken constraints. pre-commitpost-commitSOURCE_DATE_EPOCH.apk-new${arch}/${name}-${version}.apk${name}-${version}.${hash:8}.apketc/apk/cache/usr/sbin/uvolUnable to open root: %s--usermode not allowed as rootUse --usermode to allow creating database as non-rootvar/log/apk.logvar/logUnable to open log: %sAPK_PATH=/usr/sbin:/usr/bin:/sbin:/binlib/apk/keysetc/apk/keysunknownsha1sha256sha512sha256-160../src/crypto_openssl.c!"valid alg"dctx->alg != APK_DIGEST_NONE%s: %s .list../src/apk_defines.hnum <= hdr->numg:q:R:Z:F: = replaces_priorityfailed to read repositories: %s: %s Installing file to %s%s%s%s%s-%.*s: failed to commit %s%s%s: %sfailed to update directory %s: %sWARNING: (not removing)%s-%.*s: ignoring malicious file %s%s-%.*s: %.*s: no dirent in archive%s-%.*s: %.*s: no hard link target (%s) in archive%s-%.*s: overwriting %s owned by %s-%.*s.%s-%.*s: trying to overwrite %s owned by %s-%.*s.%s-%.*s: failed to preserve %s: %s%s-%.*s: failed to extract %s: %s%s (dir)://Repository %.*s has %d packages without hashAPKINDEX.${hash:8}.tar.gz%.*s/fetch %.*slib/apk/dblib/apk/db-uvol../src/database.c!"invalid layer"noarchThis apk-tools is too old to handle installed packagesFDB format error (line %d, entry '%c')%.*s/%.*s/%stest:/proc/self/fd/%d%s: process init: %sAPK_SCRIPT%s=%sAPK_PACKAGE%s: fork: %sfchdir0 %d 1/proc/self/uid_mapdeny/proc/self/setgroups/proc/self/gid_map/proc/devunsharechrootexecvevar/cache/apkThe repository tag for world dependency '%s%.*s' does not exist${name}%s-%.*s: unable to cache packageNot continuing due to stale/unavailable repositories. Use --force-missing-repositories to continue.fetchingopening from cacheupdating and openingupdatingare not installablemight not function properlyUnable to setup the cacheInvalid open flags (internal error)Unable to lock databaseUnable to read databaseetc/apk/archx86_64APK_ARCHdev/null/proc/self/proc/sys/vm/memfd_noexeclib/apk/db/lockWaiting for repository lock+etc@etc/init.d!etc/apketc/apk/protected_paths.d/proc/mountsrootfsUnable to find cache directory mount pointetc/apk/worldscripts.tarscripts.tar.gzetc/apk/repositorieslib/apk/repositories.detc/apk/repositories.d%s %.*s: %sThis apk-tools is OLD! Some packages %s.The indexes contain broken packages which %s.-Refusing to write db without write lock!System state may be inconsistent: failed to write database: %s.SIGN..PKGINFO.INSTALLDESCRIPTIONAPKINDEXdatahash xattrs mtime permission owner/.apk.user.uvol(%s)uvol(%s): %s: uvol run exec error: %screatewriteremovedown../src/hash.ch->ops->compare_item != NULL%s.tmp.%d%s.tmpetc/passwdetc/group../src/io.cctx.index < ARRAY_SIZE(source)/proc/self/fdfile:nobody1.3.2Citest_-. * failed to prepare dirs for hook scripts: failed to execute: %s/%s-%.*s.%sdev/zerodev/randomdev/urandomdev/console%s-%.*s: failed to create initial device nodes: %s%sExecuting %s-%.*s.%s%s-%.*s.%s: %s%sC: P: V: A: S: I: T: U: L: o: m: t: c: k:D:i:pkgnamepkgverpkgdescdependinstall_ifbuilddateprovider_priority7%3i%% 8%lu %s%.1f %s%.*s*%.*sTERMdumbAPK_PROGRESS_CHARLANGUTF-8█#7[%s] Running `%Y-%m-%d %H:%M:%S` at %s %lu/%lu %s %*s%.*sKiBMiBGiBTiBexited with error %dkilled by signal %dstopped by signal %dcontinuedstatus unknown %x,%s/installedbroken-filesbroken-scriptbroken-xattrsystemowner not found'%s' is not a valid world dependency, format is name(@tag)([<>~=]version)*%s*?*query failed: %s%s:%d: undefined variable: %.*sAPKINDEX.tar.gzPackages.adbset-default%s:%d: invalid option: %.*s%s:%d: invalid variable definition: %.*sndxv2v3%s:%d: unrecogized keyword: %.*s%s:%d: invalid url: %.*sjsonyaml%#lo../src/serialize_json.cdt->nest < ARRAY_SIZE(dt->end)sizeof pad >= 2*dt->nest%llu":../src/serialize_query.cdt->nest < ARRAY_SIZE(dt->flags) ../src/serialize_yaml.csizeof pad >= 2*dt->indent- # # empty object-?:,[]{}#&*!|>'"%@`|# %d items#%%SCHEMA: %08Xustar ustar%.*s/%.*slinkpathSCHILY.xattr.APK-TOOLS.checksum.SHA1././@LongLink-r<=<~>=>~><? %4095s tcphttphttpslooking up %sFETCH_BIND_ADDRESSconnecting to %s:%dfailed to bind to '%s'//etc/apk/cert.pem//etc/apk/cert.key//etc/apk/ca.pem//etc/apk/crl.pemCould not load CRL file %s SSL_CLIENT_CERT_FILESSL_CLIENT_KEY_FILEUsing client cert file: %sUsing client key file: %sCould not load client certificate %s Could not load client key %s TLS server name indication extension failed for host %s SSL_NO_VERIFY_HOSTNAMEVerify hostnameSSL connection established using %s Certificate subject: %sCertificate issuer: %sNETRC$NETRC specifies a file name longer than PATH_MAXHOME%s/.netrcmachineloginlogin name in .netrc is too long (exceeds %d bytes)passwordpassword in .netrc is too long (exceeds %d bytes)accountNO_PROXYno_proxyhttp:https:/@:@%s%s%s%s%s%s%s:%d%s%s%s%s%s%s%s%s%shttps_proxyHTTPS_PROXYhttp_proxyHTTP_PROXYHTTP%s:%s%s: Basic %s basic:Proxy-AuthorizationHTTP_PROXY_AUTHCONNECT %s:%d HTTP/1.1 Host: %s:%d requesting %s://%s%s%s %s://%s%s HTTP/1.1 %s %s HTTP/1.1 Cache-Control: no-cache %.3s, %02d %.3s %4ld %02d:%02d:%02d GMTIf-Modified-Since: %s Host: %s HTTP_AUTHHTTP_REFERERautoReferer: %s://%s%s Referer: %s HTTP_USER_AGENTUser-Agent: %s libfetch/2.0Range: bytes=%lld- server requires authorizationkeep-alivebytes %a, %d %b %Y %H:%M:%S GMT%A, %d-%b-%y %H:%M:%S GMT%a %b %d %H:%M:%S %Y%d redirect to %schunkedGETfetchPutHTTP(): not implemented HEADConnectionContent-LengthContent-RangeLast-ModifiedLocationTransfer-EncodingWWW-Authenticateadb_wa_sortadb_wa_append_fromstringadb_wa_append_objadb_wa_appendadb_wo_arradb_wo_objadb_wo_blob_rawadb_wo_blobadb_wo_copyobjadb_w_blob_vecadb_w_erroradb_ra_findadb_ro_cmpadb_ro_cmpobjadb_ro_objadb_ro_kindadb_w_rawBϮ'l     >?456789:;<=  !"#$%&'()*+,-./0123ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/>  2 (kthreadd) apk_solver_commit_changeset @x`hphapk_digest_ctx_finalapk_digest_ctx_updateapk_digest_ctx_reset_algapk_digest_alg_to_evpJHJJHkkkkkkkkkkHPjjjjjjjjjjjjjjjjjjjjjjjjjjHHjoooooonnnnnnnnnnnnnnnnnnnnqMM1P1P1P1P1P1P1P1P1PO}OO/..//./apk_db_layer_name_apk_array_truncateU6Rapk_hash_delete_hashedapk_dir_foreach_config_file#   0 )`))"A))))Cj)))lib/apk/exec_apk_array_truncatefile is unchangedunexpected end of fileDNS: non-recoverable failureDNS: address family for host not supportedDNS: transient error (try again later)DNS: no address for hostDNS: name does not existTLS: unspecified errorTLS: server hostname mismatchTLS: server certificate not trustedTLS: client certificate not trustedTLS: handshake failed (client cert needed?)invalid URL (check your repositories file)HTTP 400: Bad RequestHTTP 401: UnauthorizedHTTP 403: ForbiddenHTTP 404: Not FoundHTTP 405: Method Not AllowedHTTP 406: Not AcceptableHTTP 407: Proxy Authentication RequiredHTTP 408: TimeoutHTTP 500: Internal Server ErrorHTTP 501: Not ImplementedHTTP 502: Bad GatewayHTTP 503: Service UnavailableHTTP 504: Gateway TimeoutHTTP: unrecognized server errorcrypto errorcryptographic algorithm not supportedcryptographic key format not recognizedsigning failureUNTRUSTED signatureBAD signaturefile format is invalid or inconsistentfile format is obsolete (e.g. missing embedded checksum)file format not supported (in this applet)package name is invalidpackage version is invaliddependency format is invalidADB compression not supportedADB header errorincompatible ADB versionADB schema errorADB block errorADB signature block errorADB integrity errorADB schema error (no fromstring)ADB schema limit reachedADB package formatv2 database format errorv2 package format errorv2 package integrity errorv2 index format errorcould not find a repo which provides this package (check repositories file and run 'apk update')package name specification is invalidpackage mentioned in index not found (try 'apk update')file integrity errorcache not availableuvol manager not availableuvol erroruvol not supported with --rootremote server returned error (try 'apk update')file not extractedrepositories file syntax errorunsupported repositories file keywordundefined repositories file variableinternal buffer too small)Fq#Gs)Qc >fv#;Vs +DWp@x)Hn:@F(((*)*W)n))))***all-matchesavailableFfieldsformatfrominstalledmatchRrecursivesearchsummarizeupgradableworldorphaned &+38DIQXcgny ,<OQueryErrorPath-TargetOwnerPackageNameVersionHashDescriptionArchLicenseOriginMaintainerURLCommitBuild-TimeInstalled-SizeFile-SizeProvider-PriorityDependsProvidesReplacesInstall-IfRecommendsLayerTagsContentsTriggersScriptsReplaces-PriorityStatusRepositoriesDownload-URLReverse-DependsReverse-Install-Ifqueryerrorpath-targetownerpackagenameversionhashdescriptionarchlicenseoriginmaintainerurlcommitbuild-timeinstalled-sizefile-sizeprovider-prioritydependsprovidesreplacesinstall-ifrecommendslayertagscontentstriggersscriptsreplaces-prioritystatusrepositoriesdownload-urlreverse-dependsreverse-install-ifser_json_start_indentser_json_indentser_q_start_indent ser_yaml_start_indentser_yaml_indentrrrrrrqyyxyyyyyyyyyyyyyyyyy'{z3{G{'{z'{{{ |{{{{{{|{|{alphabetaprerccvssvngithgp  #%¹@@aijƵG 2ksABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/SunMonTueWedThuFriSatJanFebMarAprMayJunJulAugSepOctNovDec;1hhhhhhi( i<5iPijk8l(|l<Ennnn5oo4olppp$qqKrsr$r<rPrlrostu`Hvwwx$x<xyT{||<}\}} ~D ~` ~t 5~ ? I s !FL!!ŀ!!s"("SP"8""""2"0#h####8$ω$$$+%Zd%%%e&P&Ɣd&Քx&&&&ŗ0'˗D'T'9 (ѝX(((ȟ(Ο()4)lh)a))))T*D*d**T**~+o+˦+w,Ƨ,,T,r,,,,,-,-ǪT-=-Y--.R<.h..4.. /= /H4/gH/p//֮//0Q080Gl000200N1$1Mp1Ӷ1 1͸2P2 d2*x242P223Ǽ\3x3$3q3~33P4˿x4!45t5Y53$6O86d6q66X77'X8888 9/ 9L9x9 9q999: $:@:l::::;";9(;X;p;;;;: <4<P<h<<</<=,=X= p=a=$== ===)>9,>D@>OT>Ph>^|>j>v>?D8?d?? ??O?t?50@P@d@x@@@@@@EAM0ASXAAAA;ApB$B8BTBBBB8C`CxCCC;DGDrDDlDDAD D$DEQ\EEEE0FFXF F Fr G G XG G8 Gu4HHH\HHII`ItIII(JtJIJ K4 8K'L(Lq(DLY,Lo.L.L/0M22MJ3M3M!5 N6XN8N>N>NX?OCxOCOHOHO9I(PII c$c8cMhccMcǢdDd~dsdĤe,e|e^eueϨf4f5`fefĩfΪ g gDglg'gghkPhlhhh,i @iԵi۵iƶi8jjXjjkGTB>pE>W>p>>???8*@dCAAȍA;BABFB(eBD7ClC DȎXDD:FLFtFF Gȏ@G܏uGGG iKpKLԐDLQL_L0LDLhMMNhO4OHO\OpIPP̒Q$RpRSTTUx0WfWfhf|gghܕr8sPt u̖}uu u< vhGvkx̗zrz,z@z\@{H{{{И{r||$X}H}P~V~y~ܙ_Pd|Ěs |X~l,Tܑ$x\ĝ(B<]T[Ȟfܞ8H*0XKtʟܠ]P<8 Lh A\aj-d@|ԣ 0}^ܤ4`zRx N0NDNXNlNNNN8NBBE A(A0|(A BBB40OBBA A(DP(A ABB(0OBDG  DB4\P]BJD D(G@{(A ABBQD`8QBBE B(D0A8D} 8G0A(B BBBE U8D0A(B BBB RJD0E$R#AA[@RTRe4h1SpBBA A(D0_(A ABB4iSZBBA C(D0G(A ABBSD0TTT],\T @TCLzA(dKU(BDD UABGUOaY~U{UAMuUAM4oUpBED D(A0T(A ABBT,UdBBB A(A0D 0I(D BBBB n0A(A BBBDVBBB B(A0A8DP8A0A(B BBB8bW~BEA A(Dj(A ABBHWcBBB B(A0A8DpH8C0A(B BBBTXHE lXADpAY D [YD0~(ZVAC MD F\D]B(<]HBDF sABHX] A^d\]'4xo]~BBA C(D0k(A ABB]AM] ]AM(] AC BGH ({^ (<q^*BDD WAFho^1KE4^BBA A(A0(C ABB4^[BBA A(D0J(A ABB$_$AFD JHA$_QAAB EAA(@:_]BAA KFB$lk_nAAA cAA$_rAAA gAA4_BBA A(A0(D ABB`fA] `PAG, &aD@D bDAB8` 6beBEE D(A0L(A BBB4 _bMBED A(C0w(A ABB4 tbBEA D(B0(A ABB bJD E4$ %cBBD I(DP(A ABBD\ cBEH E(A0A8L`8A0A(B BBB\ md"BBE B(A0A8Jp 8K0A(B BBBE Z8C0A(B BBB( /eAF BGM (0 fdgDD qAB$\ g#AAD SAHH g/BBB B(A0A8Dp8A0A(B BBBH g(BBB B(D0C8G8D0A(B BBB i$80 iBBA D(G(A ABBLl ]jRBBB B(A0A8J18C0A(B BBB _n Zn Un4 Qn BBD A(D@(A ABB00 $oBAA D0 DAB4d pAAE  DAE hAA p pBBB A(A0G} 0D(A BBBE ^ 0J(A BBBE  0A(A BBBB `0A(A BBB@4rBIB A(D0J0A(A BBBHx%sBEB B(D0A8Gv8A0A(B BBB$quGAI DI/ v0vBAA J CAB4v4HvBBBA E(G0Y(D DHBvAD@A0hwBGA G AAB,wBAA G` AAB,xBAA G@ AAB(4 y9BDD kAB$`-y+ADD HJJ$0y+ADD HJJ3y?AG uARy?AG uA4qyWBBA E(H0~(A ABB4(y:BGG W ABF AFB$`yAGDPCAlZzBEB B(A0A8GPk 8F0D(D IBBF \XO`EhApQPD8A0A(B BBB8z\GDD t ABF AFBA44zBLA A(J`(A ABB(lo{OGKG mDAA${AC DH 0'|BAC G AAB|  |  |4| 8H|BBB D(D0(A BBBa}$^}5AAD lAA8k}vBEH D(A0Z(A BBB}AZ$}IAIE wAA(@}IAIG uAA8l}gODE HDAF yAA(~RBDD ADB44~jBED D(K0I(A ABB f~&Aa8(p~NBEE D(D0p(C BBBd~x~  $)AME SAALG'IR( .ADJAA48`BED D(E0E(A ABBpO1D`y F _0SpFRJHA(Ӂ@GPD HLAk(>@GPD HLA DRAJAh0|6CHeBBB E(A0A8D8A0A(B BBBՄJzA4?MBDA A(A0}(A ABB@0TBBB A(A0D@0A(A BBBDtHBAD  DBF T DBF PAB   $ 2AAE hAAH4pBEB E(A0A8DPQ8A0A(B BBBDֈBBB B(A0A8A@8A0A(B BBBc8RbA%WG0MAAB v HAF AAA0 DpD0@8I@G8A0ZPhBBB B(A0A8G L@I@q8A0A(B BBB$8;ADD oAA0KVADE n HLF AAAPmBBB E(A0D8F@gHDPNHB@G8E0A(B BBBplŋBBB F(A0A8G\OBBJFACQ|8A0A(B BBBlQKBB B(D0D8H` hDpDxIH UhBpAxDJ`^8A0A(B BBBA<PmBBE H(D0D@0A(A BBB(HBAG zABl+BBE E(D0A8KDESPxC\AQ8D0A(B BBB@NlTϒBGB B(D0D8GODIf~CNA]8A0A(B BBBp BGB B(A0A8J WOHQwMCGHHQIHGXOILAh8D0A(B BBB\dʟ]BBB E(D0A8GFACQ8A0A(B BBB<ǤBGB D(D0IP0C(A BBBU4GBBA A(B0(D ABB$PsAAD jAAx$(PBDD BAB(+BAA yAB xeG] A]0 Ħ3Aq$L ۦ:ADD nAAt #H A( {NBAE BAB0 yAHB t(E0P(B `AA !%Ac,!(@!;BDH iABl!!,! \BDD LCB!5)Ab!FVzY<!BBE D(E0I@l0A(A BBB(4"ԬpDAC dAB`"&JX$x"&gAAA aAA"eAT"_AA$"AAD0CA"AT8#BBD I(Ia(C ABB(T#?QBDC DAB#dAZ(#hQBDC DAB#AZ#XHO#ѯzH$xxH,$&@$/T$"h$DL$ $ $ $$$ڰ $Ұ \%ʰ{BBB E(D0A8B@O 8A0A(B BBBB A8C0A(B BBB0p%SAHE v DAF AAA(%KBKF tAB(%#fBDD XAB%]AT&W,&I>@&s%DT&BBB B(A0A8DP8D0A(B BBB&NAG DA&+6&M!&Z& &lAX E '#A\8'% L'$`'-AIF ZAA'!$'AFG0AA0'4BAA J CAB'vAAG(I 0,(@3AAB \ HAF AAA`(?5t(`:Ax(~(AQ((yJBED zBB((JGA CAA<)!BII A(I0D@0D(A BBBHX)BEB E(A0G8D8D0A(B BBB$):ADD nAA) AKH)BBB B(A0A8I8C0A(B BBB0*,(D*JBED zBBp*/ (*'+BDD XAB$*&:ADD nAA*8[FQA$*w:ADD nAAH+BIB E(D0A8G8C0A(B BBBDh+BIB B(D0D8DP8C0A(B BBB+ػ-OY0+|AAD i CAE AAA$+5BADA yAA$$,OADE zAALL,xBBB B(A0A8G L)P8A0A(B BBB$,8AAD oAA$,AGGPAAH,BBB B(A0A8G8C0A(B BBB48- BBA A(DP(A ABBp-f$Ab4-nBHD A(L0c(C ABB$-bADE UAA(-AAIAA.=BBB B(A0A8G L$$D$O$A$$J$S$B$k$H$C$H$a$8A0A(B BBB.9 D.1BEB B(D0D8A@8D0A(B BBB.0AnP/BBB A(A0G I s D L d0A(A BBBl/ H/BBA A(G I s E W z(A ABB// `/BBB B(D0D8Dpp 8D0A(B BBBF K8D0A(B BBB8X0RBEA D(D@8(D ABBH0BBA A(G L!S!E!V!(A ABB40r[BBD A(D0G(A ABBp1BBB B(A0A8G L$M$D$^$B$$H$S$A$18A0A(B BBB1eD@`1BEB B(A0A8JDLAIWB4 GDEE ONDTXOIB`DSADSA8D0A(B BBBp2:(2qBDD cABH2%BBB B(A0A8DP8D0A(B BBBH2BEB B(A0A8G8D0A(B BBBH37<\3rED D(D0(A ABBAL3XBBB B(A0A8G L$w8D0A(B BBBH3BBB B(A0K8D8A0A(B BBB84v8WY8P4BGD A(D0(A ABB44BHA  ABF AAB$4AC K H47*BBB B(A0D8G 8A0A(B BBB854L5hBDD A KBF AFB\58RBBB B(A0A8G L$s$C$F$A$m8A0A(B BBB5*#AaH613BEB E(D0A8G 8C0A(B BBBL60`6BIA G CAB6 D6BBB B(D0A8A@{8D0A(B BBB6T$H7d BBB B(A0A8D8C0A(B BBB0P7$BAA G{ CABL7}BBB B(A0A8G I!8D0A(B BBBH7BGB E(D0A8G8C0A(B BBB4 8pBBA D(G`(A ABBX8;l8 `\8XGBBB B(A0A8G L$$C$S$A$`8D0A(B BBB(8?AALAA 9ClUH$9BBB E(A0D8G8D0A(B BBBHp9`BDB B(A0A8D8A0A(B BBB9yAw49kBBA A(D0(A ABBH:BBB A(D0 (A BBBE X(A BBBp\:\BBB B(A0A8G L$ $I$O$B$$P$V$A$8D0A(B BBBH:BGB B(D0D8I8C0A(B BBB8;hBBB A(A0X(A BBBHX;>BBB B(D0A8J 8A0A(B BBB;;&; BBB E(D0A8GP 8J0A(B BBBB C 8G0A(B BBBB  8A0A(B BBBB W8A0A(B BBBp`<)!BBA A(D (K ABBF ] (A ABBF X (A ABBF (A ABB<#H<#BBB B(A0A8J8C0A(B BBB4= %yAD rA,T=y%BDA DP CAB=%=%H=%BBB B(I0A8Jn8A0A(B BBB(=2'AH DGI $>)88>)BGA D(G(C ABBHt>A*BBB B(A0D8DP8A0A(B BBBH> ,BBD A(B0 (D DBBE Q(A ABB ?,'FX<(?,BBA A(G L"x(C ABBDh?.jJDJ R FAE ` AAF AAA ?%.STE NIJ?.AT$?.=AID lAAD@.hBBE E(A0E8D@C8C0A(B BBBH`@.BJB B(D0A8G8D0A(B BBB@/BBB B(A0A8G L@LAADB^ABAAABiAAAdAHB\AAA8C0A(B BBB40A1jBEF E(H0I(A ABBDhA1BEG K(G0A8B@U8C0A(B BBBA1$AbtA1SBBB B(A0A8G L@LBnBBBWBBBBBBZBAB8D0A(B BBBDB5-Ak0\B5BDA M} AAB(BO6KBDD xABtBn6QBBB B(A0A8G I!!H!a!A!D 8J0A(B BBBB e8A0A(B BBB4CG7HC67\C%7HpC7CBBB E(A0D8J8A0A(B BBBC8C7HC7@BBB B(A0A8D%8C0A(B BBB00D8AAG I AAdD9AE|Dy9.AlDD9eBBB B(A0D8D@I8A0A(B BBBD9:AxDD9BJE B(D0A8B@8D0A(B BBBDE*:3HXEI:BBB E(A0A8DP8A0A(B BBBE:E:E:E:E:F:F: 0F: DF:=ShA`F:tF:F: F:'(F:9BDD kAB,F:cBCF F0M AAB$ G:AEDpAA4Gk;AL$PG];+ADA _DAxG`;(G_;?BAD pDB$Gr;4AAD hDA<G~;BBB A(A0DP0A(A BBB H< 4H<HH < \HAHC oAA(HlzEBD A(A0Y (A ABBF A(A ABB(J>=BDD oABHJ>zEBD A(A0Y (A ABBF A(A ABBDJ>BBB A(A0G I 0A(A BBB4DK?QBED D(C0u(D ABB|K?QRzALK?BBB B(A0A8G L"{8C0A(B BBB(K6ABDD ABLA@(LAZNHE D(F0,(A BBBA0lLB+ADE L IAE ACA(LB;IDD fAAA$LB0ADD aDA(LB_BHD MABT MC BBE D(A0GP 0F(A BBBE y0A(A BBBxMC< MCHDlD$MBDACE yAADMDBEB E(A0A8D@8D0A(B BBB( NkErLAC ^AAA4LNEOAAG CAF `AA4NFBBA A(DPr(A ABBNG:AsDN1GBBB B(A0A8D`8A0A(B BBB8 OGcDHE A(D0E(A BBB8\OHBDA A(G(C ABBOHLOHBBB B(A0A8G L*8C0A(B BBBO[(BBA A(A0(A ABB0X*\AC  <PX]BBE D(A0D`0C(A BBBX^Pv0YX^AHX#_BBB B(D0A8Dz8A0A(B BBBDYm`BBE E(D0FPLp\Pc0C(A BBB8PY`BNA G(G(A ABBYZagYaCYaD04YlbBDD  ABM AAB<ZbaGBE E(G0~(A BBBAHDZ c5BBB B(A0A8G8D0A(B BBBZc (Zc]HID DAAADZdBBJ B(D0A8G@|8A0A(B BBBD[zdBFB I(D0Ip`_p\0A(A BBB$`[d;ADC pAA$[ efAAD ]AAD[GeBBB B(A0A8D@8A0A(B BBB[e3( \fADD0tAAH8\ihFBBB B(A0D8D*8A0A(B BBBH\ciBBB B(A0A8Js8A0A(B BBB$\ljAFDP\AA@\lBLE A(D0N0C(A BBB,<]_nRGDD yABA$l]nlAAD@cAA]nBBB B(A0A8G I  O!J B  H!Y B z E!S A  A!H!G!X P8D0A(B BBB8,^r BBA K(G(A ABBh^v%A] E A^v'0^vTAAB c HAF [AA,^vTDA ABAL_wbBB B(A0A8A@8A0A(B BBBAP_xd_x%Hx_x/BDF E(A0A8Lp8A0A(B BBBD_syBDE E(D0F8LPg8A0A(B BBBD `ypBEE E(D0A8B@M8A0A(B BBBT`ymh`Dz|`@z `6zpAD iAD`zBBB B(A0A8A@8A0A(B BBB(`7{RFDD {AB,$a]{BDD D@g GABTa{GpaH|aO|0ak|A[Dal|mBHB E(D0A8H@A8D0A(B BBBa|Db}BAA G I z F U B t AABXb}Atb3~@b%~}BEB A(D0G_0A(A BBB0b^9BDD J  AAB0ccBAF D AAB4c Hc&T\cBBB A(A0G 0C(A BBBE `0A(A BBB(cFBDD xABc΁AWcˁdǁA\,dɁ_YAAHd  \d AJA8dBED D(G(A ABBd\!GXA4daBED A(G@(C ABB$e΃ADGPwAA(8e,ADGAAdexeGRAe&He"BGB B(A0D8D`8A0A(B BBBeͅ*EW8fۅ BJE D(D0(A BBB$LfuAAD lAA@tfBEE A(A0G0A(A BBB(fzAAGnAA0fڈBFC G@ AABgM(,g@sBDI `AB$XgVAHA FDA8gIBE D(D0(A BBBg4g0gg hAT((hVNDD xCAA$Th!AG I A|h DhBBB B(A0A8A@8A0A(B BBB4h6IKAD p AAB AAAAiG<GqA,igAG xALiɌ (`iIGDD vAAAi݌&F\A(i5BDA jABi ivANeA j9AQ(j7BGB B(D0A8J8A0A(B BBBlțl˛0@lJME r RDO yF AAAlxD@s8mBEB D(D0(C BBBDDmBBB E(G0D8GP8C0A(B BBBLmBBB B(A0A8G L#m8C0A(B BBBHmEBEB B(A0A8O8D0A(B BBB$(n`AAE VAA\PnODBBB E(A0D8D`n 8D0A(B BBBE 8C0A(B BBB(n3AC BF n" nAQ$ oDAIG mDA4o1"RG@Lo;BED D(E0Q8H@T8B0C(A ABBDoBEE B(D0D8DP8A0A(B BBBo()o= p3 p)BBB B(A0A8G L@L`LaaMaWaAaaFaXaBa;aFaWaBaK aHaS 8C0A(B BBB$pSaADK NAA8pBBB A(D0(D BBB qBFs F AA44qAJ0d DI f FF JAlqۯqʯq$qkAAD0bAAqA$q`7AID fAADroBEE B(A0I8DP8C0A(B BBB(\r8_BID LABrk_A]r*Ahr*Ahrʱr$sADD MAA$,svAAA pAATs"D]lsAMszba E q(sQBDD CB0sBDA Gp CAB,tmBAD GpX CAB4tNALTt=PYlt3t%tA]$tAADPAA,tô|BAI Gpb CAB(uYBDD KAB(4u4vP Hv\5\v}:pv:AxLvMEB B(D0D8DpR8A0A(B BBBALvKBE E(A0A8D@l8A0A(B BBBA,w60@w53AAB \ HAF AAAtw4 w-w'/ wBMAG|D<wkUEE D(A0|(A BBBAxԻH(xܻQBEB E(D0A8A@28A0A(B BBB(txw]GD GAAx,x0Hxd ,x[vLDA `ABA( yPBDA EABT8yŽLBB A(D0 (D BBBE A(A BBBAHyqyBBA D(A0V (G ABBE A(A ABBHy}BBB A(A0Z (G BBBE A(A BBB((zϾBIA ABTzhz%A_\zIEE E(D0D8GPSGP8A0A(B BBBz BEB B(D0D8E@u 8A0A(B BBBE  8D0D(B BBBE g 8G0A(B BBBE A8A0A(B BBBt{ 6H{BmBBB B(A0A8GQ8A0A(B BBB{c{U?{AD0xD(|*BDD  DLXH| BBB B(A0A8J H K d A 8A0A(B BBB|&JWL|BIB B(A0D8J}8A0A(B BBB( }]BDA RAB48}6sBEI I(H0H(D ABBp}q2Hi} AY(}<BDE mAB(}<BAD qAB4~$AAE  GAE GAAH8~BGB B(A0A8Dw8A0A(B BBB~r~>?~iAW$~kqAAD`hAA~<Az$AY<+OP$TAADPAA|Z TAGADBHE E(I0A8DPn8D0A(B BBB^ZAX,#Aa$HAKD`{AAHpXBBE E(A0D8N)8D0A(B BBB*Ѐ0NaD5BIB E(D0A8DP8D0A(B BBBD0TDE E(D0A8GP8A0A(B BBBHx_ BBB E(D0A8E@8A0A(B BBBHāBBB B(A0A8D8A0A(B BBB8BBA A(E0(A ABBHLBBB E(A0D8J8D0A(B BBB$8AAD zAAHBEJ B(G0D8DP8A0A(B BBB D BBE B(A0A8D@8A0A(B BBB$h>ACD sAA4BAA G I  AABHȃBBB B(A0A8D8A0A(B BBBAU40;BJD D(E0[(A ABBh|4AY8BEF D(A0i(D BBB4KxBDD w ABF jAB4 0HWAKE K GAF jAA4|{BDD w ABF mABHvBED D(L0O (M ABBF m(A ABBHCBBB B(A0A8DP'8D0A(B BBBL 9$`._AIA QAA8eBGA A(D@(D ABBĆAT(>BDD pAB $ 6ADA mAA4HDBED A(F0i(C ABB8OBEE G(A0s(A BBBDBBB B(G0A8A@8D0A(B BBB$DAAA ~AAt,uBBB B(A0A8U` hKpBxABAB ~hLpBxABAR`D8D0A(B BBBAԈ}As E C{6AoAY (AJALy $`nADA AAD BBE B(G0D8DP8D0A(B BBBЉ(D cTBBB A(K0G@ 0D(A BBBF Z0A(A BBB4@2BKD { ABF AAB x\lh E AA\yBEB B(A0A8GHHOn' 8D0A(B BBBHBBB B(A0A8D`8A0A(B BBB(Hz1BGD UHBt vAZ(zGBGD vABh̋DBBB B(A0A8G L@IA 8E0A(B BBBF 8A0A(B BBB!! .  "1"1"1"1 #1#1&#1@@  K6 1a#0 $0  6 p 1 x 1<$x9J00*;*!++++taVLxX>LBKYH M$:0c"}.*/$a\QH6PP6VW6T#U#Ip#L1A_6Df6i#px#o#mq6t4*c{6k6};LlWO!%7)7-717a\pcc$hjhIih*fIihuiHVKPPpNPtM@X@g@u@@@@indxidbpckgu)ppckg"""""00K6 13#7K6 13##04`0Q.07#0>#@0C# 14 14H# 1u)T# 1K60a#0i#0H# 11 1p# 1x# 1# 1# 1#0#`0# 0# 0#0#####$0$ .GGGsIv`[y#(/(>(H(^(   oW |( `9 ooPoo$$#h%03X&XXX60e060606?RSA512RSA256RSADSA""" ##&#"ee emhee e[g  libapk.so.3.0.0.debugia.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0$1o; =CWW|(Ko$$(XoPP@g`9qh{Z  e8 hXhXrr8      0 00h 3h3 h33-----BEGIN CERTIFICATE----- MIIH0zCCBbugAwIBAgIIXsO3pkN/pOAwDQYJKoZIhvcNAQEFBQAwQjESMBAGA1UE AwwJQUNDVlJBSVoxMRAwDgYDVQQLDAdQS0lBQ0NWMQ0wCwYDVQQKDARBQ0NWMQsw CQYDVQQGEwJFUzAeFw0xMTA1MDUwOTM3MzdaFw0zMDEyMzEwOTM3MzdaMEIxEjAQ BgNVBAMMCUFDQ1ZSQUlaMTEQMA4GA1UECwwHUEtJQUNDVjENMAsGA1UECgwEQUND VjELMAkGA1UEBhMCRVMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCb qau/YUqXry+XZpp0X9DZlv3P4uRm7x8fRzPCRKPfmt4ftVTdFXxpNRFvu8gMjmoY HtiP2Ra8EEg2XPBjs5BaXCQ316PWywlxufEBcoSwfdtNgM3802/J+Nq2DoLSRYWo G2ioPej0RGy9ocLLA76MPhMAhN9KSMDjIgro6TenGEyxCQ0jVn8ETdkXhBilyNpA lHPrzg5XPAOBOp0KoVdDaaxXbXmQeOW1tDvYvEyNKKGno6e6Ak4l0Squ7a4DIrhr IA8wKFSVf+DuzgpmndFALW4ir50awQUZ0m/A8p/4e7MCQvtQqR0tkw8jq8bBD5L/ 0KIV9VMJcRz/RROE5iZe+OCIHAr8Fraocwa48GOEAqDGWuzndN9wrqODJerWx5eH k6fGioozl2A3ED6XPm4pFdahD9GILBKfb6qkxkLrQaLjlUPTAYVtjrs78yM2x/47 4KElB0iryYl0/wiPgL/AlmXz7uxLaL2diMMxs0Dx6M/2OLuc5NF/1OVYm3z61PMO m3WR5LpSLhl+0fXNWhn8ugb2+1KoS5kE3fj5tItQo05iifCHJPqDQsGH+tUtKSpa cXpkatcnYGMN285J9Y0fkIkyF/hzQ7jSWpOGYdbhdQrqeWZ2iE9x6wQl1gpaepPl uUsXQA+xtrn13k/c4LOsOxFwYIRKQ26ZIMApcQrAZQIDAQABo4ICyzCCAscwfQYI KwYBBQUHAQEEcTBvMEwGCCsGAQUFBzAChkBodHRwOi8vd3d3LmFjY3YuZXMvZmls ZWFkbWluL0FyY2hpdm9zL2NlcnRpZmljYWRvcy9yYWl6YWNjdjEuY3J0MB8GCCsG AQUFBzABhhNodHRwOi8vb2NzcC5hY2N2LmVzMB0GA1UdDgQWBBTSh7Tj3zcnk1X2 VuqB5TbMjB4/vTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFNKHtOPfNyeT VfZW6oHlNsyMHj+9MIIBcwYDVR0gBIIBajCCAWYwggFiBgRVHSAAMIIBWDCCASIG CCsGAQUFBwICMIIBFB6CARAAQQB1AHQAbwByAGkAZABhAGQAIABkAGUAIABDAGUA cgB0AGkAZgBpAGMAYQBjAGkA8wBuACAAUgBhAO0AegAgAGQAZQAgAGwAYQAgAEEA QwBDAFYAIAAoAEEAZwBlAG4AYwBpAGEAIABkAGUAIABUAGUAYwBuAG8AbABvAGcA 7QBhACAAeQAgAEMAZQByAHQAaQBmAGkAYwBhAGMAaQDzAG4AIABFAGwAZQBjAHQA cgDzAG4AaQBjAGEALAAgAEMASQBGACAAUQA0ADYAMAAxADEANQA2AEUAKQAuACAA QwBQAFMAIABlAG4AIABoAHQAdABwADoALwAvAHcAdwB3AC4AYQBjAGMAdgAuAGUA czAwBggrBgEFBQcCARYkaHR0cDovL3d3dy5hY2N2LmVzL2xlZ2lzbGFjaW9uX2Mu aHRtMFUGA1UdHwROMEwwSqBIoEaGRGh0dHA6Ly93d3cuYWNjdi5lcy9maWxlYWRt aW4vQXJjaGl2b3MvY2VydGlmaWNhZG9zL3JhaXphY2N2MV9kZXIuY3JsMA4GA1Ud DwEB/wQEAwIBBjAXBgNVHREEEDAOgQxhY2N2QGFjY3YuZXMwDQYJKoZIhvcNAQEF BQADggIBAJcxAp/n/UNnSEQU5CmH7UwoZtCPNdpNYbdKl02125DgBS4OxnnQ8pdp D70ER9m+27Up2pvZrqmZ1dM8MJP1jaGo/AaNRPTKFpV8M9xii6g3+CfYCS0b78gU JyCpZET/LtZ1qmxNYEAZSUNUY9rizLpm5U9EelvZaoErQNV/+QEnWCzI7UiRfD+m AM/EKXMRNt6GGT6d7hmKG9Ww7Y49nCrADdg9ZuM8Db3VlFzi4qc1GwQA9j9ajepD vV+JHanBsMyZ4k0ACtrJJ1vnE5Bc5PUzolVt3OAJTS+xJlsndQAJxGJ3KQhfnlms tn6tn1QwIgPBHnFk/vk4CpYY3QIUrCPLBhwepH2NDd4nQeit2hW3sCPdK6jT2iWH 7ehVRE2I9DZ+hJp4rPcOVkkO1jMl1oRQQmwgEh0q1b688nCBpHBgvgW1m54ERL5h I6zppSSMEYCUWqKiuUnSwdzRp+0xESyeGabu4VXhwOrPDYTkF7eifKXeVSUG7szA h1xA2syVP1XgNce4hL60Xc16gwFy7ofmXx2utYXGJt/mwZrpHgJHnyqobalbz+xF d3+YJ5oyXSrjhO7FmGYvliAd3djDJ9ew+f7Zfc3Qn48LFFhRny+Lwzgt3uiP1o2H pPVWQxaZLPSkVrQ0uGE3ycJYgBugl6H8WY3pEfbRD0tVNEYqi4Y7 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFgzCCA2ugAwIBAgIPXZONMGc2yAYdGsdUhGkHMA0GCSqGSIb3DQEBCwUAMDsx CzAJBgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJ WiBGTk1ULVJDTTAeFw0wODEwMjkxNTU5NTZaFw0zMDAxMDEwMDAwMDBaMDsxCzAJ BgNVBAYTAkVTMREwDwYDVQQKDAhGTk1ULVJDTTEZMBcGA1UECwwQQUMgUkFJWiBG Tk1ULVJDTTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALpxgHpMhm5/ yBNtwMZ9HACXjywMI7sQmkCpGreHiPibVmr75nuOi5KOpyVdWRHbNi63URcfqQgf BBckWKo3Shjf5TnUV/3XwSyRAZHiItQDwFj8d0fsjz50Q7qsNI1NOHZnjrDIbzAz WHFctPVrbtQBULgTfmxKo0nRIBnuvMApGGWn3v7v3QqQIecaZ5JCEJhfTzC8PhxF tBDXaEAUwED653cXeuYLj2VbPNmaUtu1vZ5Gzz3rkQUCwJaydkxNEJY7kvqcfw+Z 374jNUUeAlz+taibmSXaXvMiwzn15Cou08YfxGyqxRxqAQVKL9LFwag0Jl1mpdIC IfkYtwb1TplvqKtMUejPUBjFd8g5CSxJkjKZqLsXF3mwWsXmo8RZZUc1g16p6DUL mbvkzSDGm0oGObVo/CK67lWMK07q87Hj/LaZmtVC+nFNCM+HHmpxffnTtOmlcYF7 wk5HlqX2doWjKI/pgG6BU6VtX7hI+cL5NqYuSf+4lsKMB7ObiFj86xsc3i1w4peS MKGJ47xVqCfWS+2QrYv6YyVZLag13cqXM7zlzced0ezvXg5KkAYmY6252TUtB7p2 ZSysV4999AeU14ECll2jB0nVetBX+RvnU0Z1qrB5QstocQjpYL05ac70r8NWQMet UqIJ5G+GR4of6ygnXYMgrwTJbFaai0b1AgMBAAGjgYMwgYAwDwYDVR0TAQH/BAUw AwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFPd9xf3E6Jobd2Sn9R2gzL+H YJptMD4GA1UdIAQ3MDUwMwYEVR0gADArMCkGCCsGAQUFBwIBFh1odHRwOi8vd3d3 LmNlcnQuZm5tdC5lcy9kcGNzLzANBgkqhkiG9w0BAQsFAAOCAgEAB5BK3/MjTvDD nFFlm5wioooMhfNzKWtN/gHiqQxjAb8EZ6WdmF/9ARP67Jpi6Yb+tmLSbkyU+8B1 RXxlDPiyN8+sD8+Nb/kZ94/sHvJwnvDKuO+3/3Y3dlv2bojzr2IyIpMNOmqOFGYM LVN0V2Ue1bLdI4E7pWYjJ2cJj+F3qkPNZVEI7VFY/uY5+ctHhKQV8Xa7pO6kO8Rf 77IzlhEYt8llvhjho6Tc+hj507wTmzl6NLrTQfv6MooqtyuGC2mDOL7Nii4LcK2N JpLuHvUBKwrZ1pebbuCoGRw6IYsMHkCtA+fdZn71uSANA+iW+YJF1DngoABd15jm fZ5nc8OaKveri6E6FO80vFIOiZiaBECEHX5FaZNXzuvO+FB8TxxuBEOb+dY7Ixjp 6o7RTUaN8Tvkasq6+yO3m/qZASlaWFot4/nUbQ4mrcFuNLwy+AwF+mWj2zs3gyLp 1txyM/1d8iC9djwj2ij3+RvrWWTV3F9yfiD8zYm1kGdNYno/Tq0dwzn+evQoFt9B 9kiABdcPUXmsEKvU7ANm5mqwujGSQkBqvjrTcuFqN1W8rB2Vt2lh8kORdOag0wok RqEIr9baRRmW1FMdW4R58MD3R++Lj8UGrp1MYp3/RgT408m2ECVAdf4WqslKYIYv uu8wd+RU4riEmViAqhOLUTpPSPaLtrM= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICbjCCAfOgAwIBAgIQYvYybOXE42hcG2LdnC6dlTAKBggqhkjOPQQDAzB4MQsw CQYDVQQGEwJFUzERMA8GA1UECgwIRk5NVC1SQ00xDjAMBgNVBAsMBUNlcmVzMRgw FgYDVQRhDA9WQVRFUy1RMjgyNjAwNEoxLDAqBgNVBAMMI0FDIFJBSVogRk5NVC1S Q00gU0VSVklET1JFUyBTRUdVUk9TMB4XDTE4MTIyMDA5MzczM1oXDTQzMTIyMDA5 MzczM1oweDELMAkGA1UEBhMCRVMxETAPBgNVBAoMCEZOTVQtUkNNMQ4wDAYDVQQL DAVDZXJlczEYMBYGA1UEYQwPVkFURVMtUTI4MjYwMDRKMSwwKgYDVQQDDCNBQyBS QUlaIEZOTVQtUkNNIFNFUlZJRE9SRVMgU0VHVVJPUzB2MBAGByqGSM49AgEGBSuB BAAiA2IABPa6V1PIyqvfNkpSIeSX0oNnnvBlUdBeh8dHsVnyV0ebAAKTRBdp20LH sbI6GA60XYyzZl2hNPk2LEnb80b8s0RpRBNm/dfF/a82Tc4DTQdxz69qBdKiQ1oK Um8BA06Oi6NCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYD VR0OBBYEFAG5L++/EYZg8k/QQW6rcx/n0m5JMAoGCCqGSM49BAMDA2kAMGYCMQCu SuMrQMN0EfKVrRYj3k4MGuZdpSRea0R7/DjiT8ucRRcRTBQnJlU5dUoDzBOQn5IC MQD6SmxgiHPz7riYYqnOK8LZiqZwMR2vsJRM60/G49HzYqc8/5MuB1xJAWdpEgJy v+c= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF7zCCA9egAwIBAgIIDdPjvGz5a7EwDQYJKoZIhvcNAQELBQAwgYQxEjAQBgNV BAUTCUc2MzI4NzUxMDELMAkGA1UEBhMCRVMxJzAlBgNVBAoTHkFORiBBdXRvcmlk YWQgZGUgQ2VydGlmaWNhY2lvbjEUMBIGA1UECxMLQU5GIENBIFJhaXoxIjAgBgNV BAMTGUFORiBTZWN1cmUgU2VydmVyIFJvb3QgQ0EwHhcNMTkwOTA0MTAwMDM4WhcN MzkwODMwMTAwMDM4WjCBhDESMBAGA1UEBRMJRzYzMjg3NTEwMQswCQYDVQQGEwJF UzEnMCUGA1UEChMeQU5GIEF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uMRQwEgYD VQQLEwtBTkYgQ0EgUmFpejEiMCAGA1UEAxMZQU5GIFNlY3VyZSBTZXJ2ZXIgUm9v dCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANvrayvmZFSVgpCj cqQZAZ2cC4Ffc0m6p6zzBE57lgvsEeBbphzOG9INgxwruJ4dfkUyYA8H6XdYfp9q yGFOtibBTI3/TO80sh9l2Ll49a2pcbnvT1gdpd50IJeh7WhM3pIXS7yr/2WanvtH 2Vdy8wmhrnZEE26cLUQ5vPnHO6RYPUG9tMJJo8gN0pcvB2VSAKduyK9o7PQUlrZX H1bDOZ8rbeTzPvY1ZNoMHKGESy9LS+IsJJ1tk0DrtSOOMspvRdOoiXsezx76W0OL zc2oD2rKDF65nkeP8Nm2CgtYZRczuSPkdxl9y0oukntPLxB3sY0vaJxizOBQ+OyR p1RMVwnVdmPF6GUe7m1qzwmd+nxPrWAI/VaZDxUse6mAq4xhj0oHdkLePfTdsiQz W7i1o0TJrH93PB0j7IKppuLIBkwC/qxcmZkLLxCKpvR/1Yd0DVlJRfbwcVw5Kda/ SiOL9V8BY9KHcyi1Swr1+KuCLH5zJTIdC2MKF4EA/7Z2Xue0sUDKIbvVgFHlSFJn LNJhiQcND85Cd8BEc5xEUKDbEAotlRyBr+Qc5RQe8TZBAQIvfXOn3kLMTOmJDVb3 n5HUA8ZsyY/b2BzgQJhdZpmYgG4t/wHFzstGH6wCxkPmrqKEPMVOHj1tyRRM4y5B u8o5vzY8KhmqQYdOpc5LMnndkEl/AgMBAAGjYzBhMB8GA1UdIwQYMBaAFJxf0Gxj o1+TypOYCK2Mh6UsXME3MB0GA1UdDgQWBBScX9BsY6Nfk8qTmAitjIelLFzBNzAO BgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOC AgEATh65isagmD9uw2nAalxJUqzLK114OMHVVISfk/CHGT0sZonrDUL8zPB1hT+L 9IBdeeUXZ701guLyPI59WzbLWoAAKfLOKyzxj6ptBZNscsdW699QIyjlRRA96Gej rw5VD5AJYu9LWaL2U/HANeQvwSS9eS9OICI7/RogsKQOLHDtdD+4E5UGUcjohybK pFtqFiGS3XNgnhAY3jyB6ugYw3yJ8otQPr0R4hUDqDZ9MwFsSBXXiJCZBMXM5gf0 vPSQ7RPi6ovDj6MzD8EpTBNO2hVWcXNyglD2mjN8orGoGjR0ZVzO0eurU+AagNjq OknkJjCb5RyKqKkVMoaZkgoQI1YS4PbOTOK7vtuNknMBZi9iPrJyJ0U27U1W45eZ /zo1PqVUSlJZS2Db7v54EX9K3BR5YLZrZAPbFYPhor72I5dQ8AkzNqdxliXzuUJ9 2zg/LFis6ELhDtjTO0wugumDLmsx2d1Hhk9tl5EuT+IocTUW0fJz/iUrB0ckYyfI +PbZa/wSMVYIwFNCr5zQM378BvAxRAMU8Vjq8moNqRGyg77FGr8H6lnco4g175x2 MjxNBiLOFeXdntiP2t7SxDnlF4HPOEfrf4htWRvfn0IUrn7PqLBmZdo3r5+qPeoo tt7VMVgWglvquxl1AnMaykgaIZOQCo6ThKd9OyMYkomgjaw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFuzCCA6OgAwIBAgIIVwoRl0LE48wwDQYJKoZIhvcNAQELBQAwazELMAkGA1UE BhMCSVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8w MzM1ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290 IENBMB4XDTExMDkyMjExMjIwMloXDTMwMDkyMjExMjIwMlowazELMAkGA1UEBhMC SVQxDjAMBgNVBAcMBU1pbGFuMSMwIQYDVQQKDBpBY3RhbGlzIFMucC5BLi8wMzM1 ODUyMDk2NzEnMCUGA1UEAwweQWN0YWxpcyBBdXRoZW50aWNhdGlvbiBSb290IENB MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAp8bEpSmkLO/lGMWwUKNv UTufClrJwkg4CsIcoBh/kbWHuUA/3R1oHwiD1S0eiKD4j1aPbZkCkpAW1V8IbInX 4ay8IMKx4INRimlNAJZaby/ARH6jDuSRzVju3PvHHkVH3Se5CAGfpiEd9UEtL0z9 KK3giq0itFZljoZUj5NDKd45RnijMCO6zfB9E1fAXdKDa0hMxKufgFpbOr3JpyI/ gCczWw63igxdBzcIy2zSekciRDXFzMwujt0q7bd9Zg1fYVEiVRvjRuPjPdA1Yprb rxTIW6HMiRvhMCb8oJsfgadHHwTrozmSBp+Z07/T6k9QnBn+locePGX2oxgkg4YQ 51Q+qDp2JE+BIcXjDwL4k5RHILv+1A7TaLndxHqEguNTVHnd25zS8gebLra8Pu2F be8lEfKXGkJh90qX6IuxEAf6ZYGyojnP9zz/GPvG8VqLWeICrHuS0E4UT1lF9gxe KF+w6D9Fz8+vm2/7hNN3WpVvrJSEnu68wEqPSpP4RCHiMUVhUE4Q2OM1fEwZtN4F v6MGn8i1zeQf1xcGDXqVdFUNaBr8EBtiZJ1t4JWgw5QHVw0U5r0F+7if5t+L4sbn fpb2U8WANFAoWPASUHEXMLrmeGO89LKtmyuy/uE5jF66CyCU3nuDuP/jVo23Eek7 jPKxwV2dpAtMK9myGPW1n0sCAwEAAaNjMGEwHQYDVR0OBBYEFFLYiDrIn3hm7Ynz ezhwlMkCAjbQMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUUtiIOsifeGbt ifN7OHCUyQICNtAwDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBCwUAA4ICAQAL e3KHwGCmSUyIWOYdiPcUZEim2FgKDk8TNd81HdTtBjHIgT5q1d07GjLukD0R0i70 jsNjLiNmsGe+b7bAEzlgqqI0JZN1Ut6nna0Oh4lScWoWPBkdg/iaKWW+9D+a2fDz WochcYBNy+A4mz+7+uAwTc+G02UQGRjRlwKxK3JCaKygvU5a2hi/a5iB0P2avl4V SM0RFbnAKVy06Ij3Pjaut2L9HmLecHgQHEhb2rykOLpn7VU+Xlff1ANATIGk0k9j pwlCCRT8AKnCgHNPLsBA2RF7SOp6AsDT6ygBJlh0wcBzIm2Tlf05fbsq4/aC4yyX X04fkZT6/iyj2HYauE2yOE+b+h1IYHkm4vP9qdCa6HCPSXrW5b0KDtst842/6+Ok fcvHlXHo2qN8xcL4dJIEG4aspCJTQLas/kx2z/uUMsA1n3Y/buWQbqCmJqK4LL7R K4X9p2jIugErsWx0Hbhzlefut8cl8ABMALJ+tguLHPPAUJ4lueAI3jZm/zel0btU ZCzJJ7VLkn5l/9Mt4blOvH+kQSGQQXemOR/qnuOf0GZvBeyqdn6/axag67XH/JJU LysRJyU3eExRarDzzFhdFPFqSBX/wge2sY0PjlxQRrM9vwGYT7JZVEc+NHt4bVaT LnPqZih4zR0Uv6CPLy64Lo7yFIrM6bV8+2ydDKXhlg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDQTCCAimgAwIBAgITBmyfz5m/jAo54vB4ikPmljZbyjANBgkqhkiG9w0BAQsF ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 b24gUm9vdCBDQSAxMB4XDTE1MDUyNjAwMDAwMFoXDTM4MDExNzAwMDAwMFowOTEL MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv b3QgQ0EgMTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALJ4gHHKeNXj ca9HgFB0fW7Y14h29Jlo91ghYPl0hAEvrAIthtOgQ3pOsqTQNroBvo3bSMgHFzZM 9O6II8c+6zf1tRn4SWiw3te5djgdYZ6k/oI2peVKVuRF4fn9tBb6dNqcmzU5L/qw IFAGbHrQgLKm+a/sRxmPUDgH3KKHOVj4utWp+UhnMJbulHheb4mjUcAwhmahRWa6 VOujw5H5SNz/0egwLX0tdHA114gk957EWW67c4cX8jJGKLhD+rcdqsq08p8kDi1L 93FcXmn/6pUCyziKrlA4b9v7LWIbxcceVOF34GfID5yHI9Y/QCB/IIDEgEw+OyQm jgSubJrIqg0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC AYYwHQYDVR0OBBYEFIQYzIU07LwMlJQuCFmcx7IQTgoIMA0GCSqGSIb3DQEBCwUA A4IBAQCY8jdaQZChGsV2USggNiMOruYou6r4lK5IpDB/G/wkjUu0yKGX9rbxenDI U5PMCCjjmCXPI6T53iHTfIUJrU6adTrCC2qJeHZERxhlbI1Bjjt/msv0tadQ1wUs N+gDS63pYaACbvXy8MWy7Vu33PqUXHeeE6V/Uq2V8viTO96LXFvKWlJbYK8U90vv o/ufQJVtMVT8QtPHRh8jrdkPSHCa2XV4cdFyQzR1bldZwgJcJmApzyMZFo6IQ6XU 5MsI+yMRQ+hDKXJioaldXgjUkK642M4UwtBV8ob2xJNDd2ZhwLnoQdeXeGADbkpy rqXRfboQnoZsG4q5WTP468SQvvG5 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFQTCCAymgAwIBAgITBmyf0pY1hp8KD+WGePhbJruKNzANBgkqhkiG9w0BAQwF ADA5MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6 b24gUm9vdCBDQSAyMB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTEL MAkGA1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJv b3QgQ0EgMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK2Wny2cSkxK gXlRmeyKy2tgURO8TW0G/LAIjd0ZEGrHJgw12MBvIITplLGbhQPDW9tK6Mj4kHbZ W0/jTOgGNk3Mmqw9DJArktQGGWCsN0R5hYGCrVo34A3MnaZMUnbqQ523BNFQ9lXg 1dKmSYXpN+nKfq5clU1Imj+uIFptiJXZNLhSGkOQsL9sBbm2eLfq0OQ6PBJTYv9K 8nu+NQWpEjTj82R0Yiw9AElaKP4yRLuH3WUnAnE72kr3H9rN9yFVkE8P7K6C4Z9r 2UXTu/Bfh+08LDmG2j/e7HJV63mjrdvdfLC6HM783k81ds8P+HgfajZRRidhW+me z/CiVX18JYpvL7TFz4QuK/0NURBs+18bvBt+xa47mAExkv8LV/SasrlX6avvDXbR 8O70zoan4G7ptGmh32n2M8ZpLpcTnqWHsFcQgTfJU7O7f/aS0ZzQGPSSbtqDT6Zj mUyl+17vIWR6IF9sZIUVyzfpYgwLKhbcAS4y2j5L9Z469hdAlO+ekQiG+r5jqFoz 7Mt0Q5X5bGlSNscpb/xVA1wf+5+9R+vnSUeVC06JIglJ4PVhHvG/LopyboBZ/1c6 +XUyo05f7O0oYtlNc/LMgRdg7c3r3NunysV+Ar3yVAhU/bQtCSwXVEqY0VThUWcI 0u1ufm8/0i2BWSlmy5A5lREedCf+3euvAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMB Af8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSwDPBMMPQFWAJI/TPlUq9LhONm UjANBgkqhkiG9w0BAQwFAAOCAgEAqqiAjw54o+Ci1M3m9Zh6O+oAA7CXDpO8Wqj2 LIxyh6mx/H9z/WNxeKWHWc8w4Q0QshNabYL1auaAn6AFC2jkR2vHat+2/XcycuUY +gn0oJMsXdKMdYV2ZZAMA3m3MSNjrXiDCYZohMr/+c8mmpJ5581LxedhpxfL86kS k5Nrp+gvU5LEYFiwzAJRGFuFjWJZY7attN6a+yb3ACfAXVU3dJnJUH/jWS5E4ywl 7uxMMne0nxrpS10gxdr9HIcWxkPo1LsmmkVwXqkLN1PiRnsn/eBG8om3zEK2yygm btmlyTrIQRNg91CMFa6ybRoVGld45pIq2WWQgj9sAq+uEjonljYE1x2igGOpm/Hl urR8FLBOybEfdF849lHqm/osohHUqS0nGkWxr7JOcQ3AWEbWaQbLU8uz/mtBzUF+ fUwPfHJ5elnNXkoOrJupmHN5fLT0zLm4BwyydFy4x2+IoZCn9Kr5v2c69BoVYh63 n749sSmvZ6ES8lgQGVMDMBu4Gon2nL2XA46jCfMdiyHxtN/kHNGfZQIG6lzWE7OE 76KlXIx3KadowGuuQNKotOrN8I1LOJwZmhsoVLiJkO/KdYE+HvJkJMcYr07/R54H 9jVlpNMKVv/1F2Rs76giJUmTtt8AF9pYfl3uxRuw0dFfIRDH+fO6AgonB8Xx1sfT 4PsJYGw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIBtjCCAVugAwIBAgITBmyf1XSXNmY/Owua2eiedgPySjAKBggqhkjOPQQDAjA5 MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24g Um9vdCBDQSAzMB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkG A1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJvb3Qg Q0EgMzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABCmXp8ZBf8ANm+gBG1bG8lKl ui2yEujSLtf6ycXYqm0fc4E7O5hrOXwzpcVOho6AF2hiRVd9RFgdszflZwjrZt6j QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQWBBSr ttvXBp43rDCGB5Fwx5zEGbF4wDAKBggqhkjOPQQDAgNJADBGAiEA4IWSoxe3jfkr BqWTrBqYaGFy+uGh0PsceGCmQ5nFuMQCIQCcAu/xlJyzlvnrxir4tiz+OpAUFteM YyRIHN8wfdVoOw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIB8jCCAXigAwIBAgITBmyf18G7EEwpQ+Vxe3ssyBrBDjAKBggqhkjOPQQDAzA5 MQswCQYDVQQGEwJVUzEPMA0GA1UEChMGQW1hem9uMRkwFwYDVQQDExBBbWF6b24g Um9vdCBDQSA0MB4XDTE1MDUyNjAwMDAwMFoXDTQwMDUyNjAwMDAwMFowOTELMAkG A1UEBhMCVVMxDzANBgNVBAoTBkFtYXpvbjEZMBcGA1UEAxMQQW1hem9uIFJvb3Qg Q0EgNDB2MBAGByqGSM49AgEGBSuBBAAiA2IABNKrijdPo1MN/sGKe0uoe0ZLY7Bi 9i0b2whxIdIA6GO9mif78DluXeo9pcmBqqNbIJhFXRbb/egQbeOc4OO9X4Ri83Bk M6DLJC9wuoihKqB1+IGuYgbEgds5bimwHvouXKNCMEAwDwYDVR0TAQH/BAUwAwEB /zAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0OBBYEFNPsxzplbszh2naaVvuc84ZtV+WB MAoGCCqGSM49BAMDA2gAMGUCMDqLIfG9fhGt0O9Yli/W651+kI0rz2ZVwyzjKKlw CkcO8DdZEv8tmZQoTipPNU0zWgIxAOp1AE47xDqUEpHJWEadIRNyp4iciuRMStuW 1KyLa2tJElMzrdfkviT8tQp21KW8EA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdzCCAl+gAwIBAgIIXDPLYixfszIwDQYJKoZIhvcNAQELBQAwPDEeMBwGA1UE AwwVQXRvcyBUcnVzdGVkUm9vdCAyMDExMQ0wCwYDVQQKDARBdG9zMQswCQYDVQQG EwJERTAeFw0xMTA3MDcxNDU4MzBaFw0zMDEyMzEyMzU5NTlaMDwxHjAcBgNVBAMM FUF0b3MgVHJ1c3RlZFJvb3QgMjAxMTENMAsGA1UECgwEQXRvczELMAkGA1UEBhMC REUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCVhTuXbyo7LjvPpvMp Nb7PGKw+qtn4TaA+Gke5vJrf8v7MPkfoepbCJI419KkM/IL9bcFyYie96mvr54rM VD6QUM+A1JX76LWC1BTFtqlVJVfbsVD2sGBkWXppzwO3bw2+yj5vdHLqqjAqc2K+ SZFhyBH+DgMq92og3AIVDV4VavzjgsG1xZ1kCWyjWZgHJ8cblithdHFsQ/H3NYkQ 4J7sVaE3IqKHBAUsR320HLliKWYoyrfhk/WklAOZuXCFteZI6o1Q/NnezG8HDt0L cp2AMBYHlT8oDv3FdU9T1nSatCQujgKRz3bFmx5VdJx4IbHwLfELn8LVlhgf8FQi eowHAgMBAAGjfTB7MB0GA1UdDgQWBBSnpQaxLKYJYO7Rl+lwrrw7GWzbITAPBgNV HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFKelBrEspglg7tGX6XCuvDsZbNshMBgG A1UdIAQRMA8wDQYLKwYBBAGwLQMEAQEwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3 DQEBCwUAA4IBAQAmdzTblEiGKkGdLD4GkGDEjKwLVLgfuXvTBznk+j57sj1O7Z8j vZfza1zv7v1Apt+hk6EKhqzvINB5Ab149xnYJDE0BAGmuhWawyfc2E8PzBhj/5kP DpFrdRbhIfzYJsdHt6bPWHJxfrrhTZVHO8mvbaG0weyJ9rQPOLXiZNwlz6bb65pc maHFCN795trV1lpFDMS3wrUU77QR/w4VtfX128a961qn8FYiqTxlVMYVqL2Gns2D lmh6cYGJ4Qvh6hEbaAjMaZ7snkGeRDImeuKHCnE96+RapNLbxc3G3mB/ufNPRJLv KrcYPqcZ2Qt9sTdBQrC6YB3y/gkRsPCHe6ed -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICFTCCAZugAwIBAgIQPZg7pmY9kGP3fiZXOATvADAKBggqhkjOPQQDAzBMMS4w LAYDVQQDDCVBdG9zIFRydXN0ZWRSb290IFJvb3QgQ0EgRUNDIFRMUyAyMDIxMQ0w CwYDVQQKDARBdG9zMQswCQYDVQQGEwJERTAeFw0yMTA0MjIwOTI2MjNaFw00MTA0 MTcwOTI2MjJaMEwxLjAsBgNVBAMMJUF0b3MgVHJ1c3RlZFJvb3QgUm9vdCBDQSBF Q0MgVExTIDIwMjExDTALBgNVBAoMBEF0b3MxCzAJBgNVBAYTAkRFMHYwEAYHKoZI zj0CAQYFK4EEACIDYgAEloZYKDcKZ9Cg3iQZGeHkBQcfl+3oZIK59sRxUM6KDP/X tXa7oWyTbIOiaG6l2b4siJVBzV3dscqDY4PMwL502eCdpO5KTlbgmClBk1IQ1SQ4 AjJn8ZQSb+/Xxd4u/RmAo0IwQDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBR2 KCXWfeBmmnoJsmo7jjPXNtNPojAOBgNVHQ8BAf8EBAMCAYYwCgYIKoZIzj0EAwMD aAAwZQIwW5kp85wxtolrbNa9d+F851F+uDrNozZffPc8dz7kUK2o59JZDCaOMDtu CCrCp1rIAjEAmeMM56PDr9NJLkaCI2ZdyQAUEv049OGYa3cpetskz2VAv9LcjBHo 9H1/IISpQuQo -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFZDCCA0ygAwIBAgIQU9XP5hmTC/srBRLYwiqipDANBgkqhkiG9w0BAQwFADBM MS4wLAYDVQQDDCVBdG9zIFRydXN0ZWRSb290IFJvb3QgQ0EgUlNBIFRMUyAyMDIx MQ0wCwYDVQQKDARBdG9zMQswCQYDVQQGEwJERTAeFw0yMTA0MjIwOTIxMTBaFw00 MTA0MTcwOTIxMDlaMEwxLjAsBgNVBAMMJUF0b3MgVHJ1c3RlZFJvb3QgUm9vdCBD QSBSU0EgVExTIDIwMjExDTALBgNVBAoMBEF0b3MxCzAJBgNVBAYTAkRFMIICIjAN BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAtoAOxHm9BYx9sKOdTSJNy/BBl01Z 4NH+VoyX8te9j2y3I49f1cTYQcvyAh5x5en2XssIKl4w8i1mx4QbZFc4nXUtVsYv Ye+W/CBGvevUez8/fEc4BKkbqlLfEzfTFRVOvV98r61jx3ncCHvVoOX3W3WsgFWZ kmGbzSoXfduP9LVq6hdKZChmFSlsAvFr1bqjM9xaZ6cF4r9lthawEO3NUDPJcFDs GY6wx/J0W2tExn2WuZgIWWbeKQGb9Cpt0xU6kGpn8bRrZtkh68rZYnxGEFzedUln nkL5/nWpo63/dgpnQOPF943HhZpZnmKaau1Fh5hnstVKPNe0OwANwI8f4UDErmwh 3El+fsqyjW22v5MvoVw+j8rtgI5Y4dtXz4U2OLJxpAmMkokIiEjxQGMYsluMWuPD 0xeqqxmjLBvk1cbiZnrXghmmOxYsL3GHX0WelXOTwkKBIROW1527k2gV+p2kHYzy geBYBr3JtuP2iV2J+axEoctr+hbxx1A9JNr3w+SH1VbxT5Aw+kUJWdo0zuATHAR8 ANSbhqRAvNncTFd+rrcztl524WWLZt+NyteYr842mIycg5kDcPOvdO3GDjbnvezB c6eUWsuSZIKmAMFwoW4sKeFYV+xafJlrJaSQOoD0IJ2azsct+bJLKZWD6TWNp0lI pw9MGZHQ9b8Q4HECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU dEmZ0f+0emhFdcN+tNzMzjkz2ggwDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEB DAUAA4ICAQAjQ1MkYlxt/T7Cz1UAbMVWiLkO3TriJQ2VSpfKgInuKs1l+NsW4AmS 4BjHeJi78+xCUvuppILXTdiK/ORO/auQxDh1MoSf/7OwKwIzNsAQkG8dnK/haZPs o0UvFJ/1TCplQ3IM98P4lYsU84UgYt1UU90s3BiVaU+DR3BAM1h3Egyi61IxHkzJ qM7F78PRreBrAwA0JrRUITWXAdxfG/F851X6LWh3e9NpzNMOa7pNdkTWwhWaJuyw xfW70Xp0wmzNxbVe9kzmWy2B27O3Opee7c9GslA9hGCZcbUztVdF5kJHdWoOsAgM rr3e97sPWD2PAzHoPYJQyi9eDF20l74gNAf0xBLh7tew2VktafcxBPTy+av5EzH4 AXcOPUIjJsyacmdRIXrMPIWo6iFqO9taPKU0nprALN+AnCng33eU0aKAQv9qTFsR 0PXNor6uzFFcw9VUewyu1rkGd4Di7wcaaMxZUa1+XGdrudviB0JbuAEFWDlN5LuY o7Ey7Nmj1m+UI/87tyll5gfp77YZ6ufCOB0yiJA8EytuzO+rdwY0d4RPcuSBhPm5 dDTedk+SKlOxJTnbPP/lPqYO5Wue/9vsL3SD3460s6neFE3/MaNFcyT6lSnMEpcE oji2jbDwN/zIIX8/syQbPYtuzE2wFg2WHYMfRsCbvUOZ58SWLs5fyQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGFDCCA/ygAwIBAgIIG3Dp0v+ubHEwDQYJKoZIhvcNAQELBQAwUTELMAkGA1UE BhMCRVMxQjBABgNVBAMMOUF1dG9yaWRhZCBkZSBDZXJ0aWZpY2FjaW9uIEZpcm1h cHJvZmVzaW9uYWwgQ0lGIEE2MjYzNDA2ODAeFw0xNDA5MjMxNTIyMDdaFw0zNjA1 MDUxNTIyMDdaMFExCzAJBgNVBAYTAkVTMUIwQAYDVQQDDDlBdXRvcmlkYWQgZGUg Q2VydGlmaWNhY2lvbiBGaXJtYXByb2Zlc2lvbmFsIENJRiBBNjI2MzQwNjgwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKlmuO6vj78aI14H9M2uDDUtd9 thDIAl6zQyrET2qyyhxdKJp4ERppWVevtSBC5IsP5t9bpgOSL/UR5GLXMnE42QQM cas9UX4PB99jBVzpv5RvwSmCwLTaUbDBPLutN0pcyvFLNg4kq7/DhHf9qFD0sefG L9ItWY16Ck6WaVICqjaY7Pz6FIMMNx/Jkjd/14Et5cS54D40/mf0PmbR0/RAz15i NA9wBj4gGFrO93IbJWyTdBSTo3OxDqqHECNZXyAFGUftaI6SEspd/NYrspI8IM/h X68gvqB2f3bl7BqGYTM+53u0P6APjqK5am+5hyZvQWyIplD9amML9ZMWGxmPsu2b m8mQ9QEM3xk9Dz44I8kvjwzRAv4bVdZO0I08r0+k8/6vKtMFnXkIoctXMbScyJCy Z/QYFpM6/EfY0XiWMR+6KwxfXZmtY4laJCB22N/9q06mIqqdXuYnin1oKaPnirja EbsXLZmdEyRG98Xi2J+Of8ePdG1asuhy9azuJBCtLxTa/y2aRnFHvkLfuwHb9H/T KI8xWVvTyQKmtFLKbpf7Q8UIJm+K9Lv9nyiqDdVF8xM6HdjAeI9BZzwelGSuewvF 6NkBiDkal4ZkQdU7hwxu+g/GvUgUvzlN1J5Bto+WHWOWk9mVBngxaJ43BjuAiUVh OSPHG0SjFeUc+JIwuwIDAQABo4HvMIHsMB0GA1UdDgQWBBRlzeurNR4APn7VdMAc tHNHDhpkLzASBgNVHRMBAf8ECDAGAQH/AgEBMIGmBgNVHSAEgZ4wgZswgZgGBFUd IAAwgY8wLwYIKwYBBQUHAgEWI2h0dHA6Ly93d3cuZmlybWFwcm9mZXNpb25hbC5j b20vY3BzMFwGCCsGAQUFBwICMFAeTgBQAGEAcwBlAG8AIABkAGUAIABsAGEAIABC AG8AbgBhAG4AbwB2AGEAIAA0ADcAIABCAGEAcgBjAGUAbABvAG4AYQAgADAAOAAw ADEANzAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIBAHSHKAIrdx9m iWTtj3QuRhy7qPj4Cx2Dtjqn6EWKB7fgPiDL4QjbEwj4KKE1soCzC1HA01aajTNF Sa9J8OA9B3pFE1r/yJfY0xgsfZb43aJlQ3CTkBW6kN/oGbDbLIpgD7dvlAceHabJ hfa9NPhAeGIQcDq+fUs5gakQ1JZBu/hfHAsdCPKxsIl68veg4MSPi3i1O1ilI45P Vf42O+AMt8oqMEEgtIDNrvx2ZnOorm7hfNoD6JQg5iKj0B+QXSBTFCZX2lSX3xZE EAEeiGaPcjiT3SC3NL7X8e5jjkd5KAb881lFJWAiMxujX6i6KtoaPc1A6ozuBRWV 1aUsIC+nmCjuRfzxuIgALI9C2lHVnOUTaHFFQ4ueCyE8S1wF3BqfmI7avSKecs2t CsvMo2ebKHTEm9caPARYpoKdrcd7b/+Alun4jWq9GJAd/0kakFI3ky88Al2CdgtR 5xbHV/g4+afNmyJU72OwFW1TZQNKXkqgsqeOSQBZONXH9IBk9W6VULgRfhVwOEqw f9DEMnDAGf/JOC0ULGb0QkTmVXYbgBVX/8Cnp6o5qtjTcNAuuuuUavpfNIbnYrX9 ivAwhZTJryQCL2/W3Wf+47BVTwSYT6RBVuKT0Gro1vP7ZeDOdcQxWQzugsgMYDNK GbqEZycPvEJdvSRUDewdcAZfpLz6IHxV -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFdDCCA1ygAwIBAgIQVW9l47TZkGobCdFsPsBsIDANBgkqhkiG9w0BAQsFADBU MQswCQYDVQQGEwJDTjEmMCQGA1UECgwdQkVJSklORyBDRVJUSUZJQ0FURSBBVVRI T1JJVFkxHTAbBgNVBAMMFEJKQ0EgR2xvYmFsIFJvb3QgQ0ExMB4XDTE5MTIxOTAz MTYxN1oXDTQ0MTIxMjAzMTYxN1owVDELMAkGA1UEBhMCQ04xJjAkBgNVBAoMHUJF SUpJTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZMR0wGwYDVQQDDBRCSkNBIEdsb2Jh bCBSb290IENBMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAPFmCL3Z xRVhy4QEQaVpN3cdwbB7+sN3SJATcmTRuHyQNZ0YeYjjlwE8R4HyDqKYDZ4/N+AZ spDyRhySsTphzvq3Rp4Dhtczbu33RYx2N95ulpH3134rhxfVizXuhJFyV9xgw8O5 58dnJCNPYwpj9mZ9S1WnP3hkSWkSl+BMDdMJoDIwOvqfwPKcxRIqLhy1BDPapDgR at7GGPZHOiJBhyL8xIkoVNiMpTAK+BcWyqw3/XmnkRd4OJmtWO2y3syJfQOcs4ll 5+M7sSKGjwZteAf9kRJ/sGsciQ35uMt0WwfCyPQ10WRjeulumijWML3mG90Vr4Tq nMfK9Q7q8l0ph49pczm+LiRvRSGsxdRpJQaDrXpIhRMsDQa4bHlW/KNnMoH1V6XK V0Jp6VwkYe/iMBhORJhVb3rCk9gZtt58R4oRTklH2yiUAguUSiz5EtBP6DF+bHq/ pj+bOT0CFqMYs2esWz8sgytnOYFcuX6U1WTdno9uruh8W7TXakdI136z1C2OVnZO z2nxbkRs1CTqjSShGL+9V/6pmTW12xB3uD1IutbB5/EjPtffhZ0nPNRAvQoMvfXn jSXWgXSHRtQpdaJCbPdzied9v3pKH9MiyRVVz99vfFXQpIsHETdfg6YmV6YBW37+ WGgHqel62bno/1Afq8K0wM7o6v0PvY1NuLxxAgMBAAGjQjBAMB0GA1UdDgQWBBTF 7+3M2I0hxkjk49cULqcWk+WYATAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQE AwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAUoKsITQfI/Ki2Pm4rzc2IInRNwPWaZ+4 YRC6ojGYWUfo0Q0lHhVBDOAqVdVXUsv45Mdpox1NcQJeXyFFYEhcCY5JEMEE3Kli awLwQ8hOnThJdMkycFRtwUf8jrQ2ntScvd0g1lPJGKm1Vrl2i5VnZu69mP6u775u +2D2/VnGKhs/I0qUJDAnyIm860Qkmss9vk/Ves6OF8tiwdneHg56/0OGNFK8YT88 X7vZdrRTvJez/opMEi4r89fO4aL/3Xtw+zuhTaRjAv04l5U/BXCga99igUOLtFkN SoxUnMW7gZ/NfaXvCyUeOiDbHPwfmGcCCtRzRBPbUYQaVQNW4AB+dAb/OMRyHdOo P2gxXdMJxy6MW2Pg6Nwe0uxhHvLe5e/2mXZgLR6UcnHGCyoyx5JO1UbXHfmpGQrI +pXObSOYqgs4rZpWDW+N8TEAiMEXnM0ZNjX+VVOg4DwzX5Ze4jLp3zO7Bkqp2IRz znfSxqxx4VyjHQy7Ct9f4qNx2No3WqB4K/TUfet27fJhcKVlmtOJNBir+3I+17Q9 eVzYH6Eze9mCUAyTF6ps3MKCuwJXNq+YJyo5UOGwifUll35HaBC07HPKs5fRJNz2 YqAo07WjuGS3iGJCz51TzZm+ZGiPTx4SSPfSKcOYKMryMguTjClPPGAyzQWWYezy r/6zcCwupvI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICJTCCAaugAwIBAgIQLBcIfWQqwP6FGFkGz7RK6zAKBggqhkjOPQQDAzBUMQsw CQYDVQQGEwJDTjEmMCQGA1UECgwdQkVJSklORyBDRVJUSUZJQ0FURSBBVVRIT1JJ VFkxHTAbBgNVBAMMFEJKQ0EgR2xvYmFsIFJvb3QgQ0EyMB4XDTE5MTIxOTAzMTgy MVoXDTQ0MTIxMjAzMTgyMVowVDELMAkGA1UEBhMCQ04xJjAkBgNVBAoMHUJFSUpJ TkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZMR0wGwYDVQQDDBRCSkNBIEdsb2JhbCBS b290IENBMjB2MBAGByqGSM49AgEGBSuBBAAiA2IABJ3LgJGNU2e1uVCxA/jlSR9B IgmwUVJY1is0j8USRhTFiy8shP8sbqjV8QnjAyEUxEM9fMEsxEtqSs3ph+B99iK+ +kpRuDCK/eHeGBIK9ke35xe/J4rUQUyWPGCWwf0VHKNCMEAwHQYDVR0OBBYEFNJK sVF/BvDRgh9Obl+rg/xI1LCRMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD AgEGMAoGCCqGSM49BAMDA2gAMGUCMBq8W9f+qdJUDkpd0m2xQNz0Q9XSSpkZElaA 94M04TVOSG0ED1cxMDAtsaqdAzjbBgIxAMvMh1PLet8gUXOQwKhbYdDFUDn9hf7B 43j4ptZLvZuHjw/l1lOWqzzIQNph91Oj9w== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg Q2xhc3MgMiBSb290IENBMB4XDTEwMTAyNjA4MzgwM1oXDTQwMTAyNjA4MzgwM1ow TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw HgYDVQQDDBdCdXlwYXNzIENsYXNzIDIgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB BQADggIPADCCAgoCggIBANfHXvfBB9R3+0Mh9PT1aeTuMgHbo4Yf5FkNuud1g1Lr 6hxhFUi7HQfKjK6w3Jad6sNgkoaCKHOcVgb/S2TwDCo3SbXlzwx87vFKu3MwZfPV L4O2fuPn9Z6rYPnT8Z2SdIrkHJasW4DptfQxh6NR/Md+oW+OU3fUl8FVM5I+GC91 1K2GScuVr1QGbNgGE41b/+EmGVnAJLqBcXmQRFBoJJRfuLMR8SlBYaNByyM21cHx MlAQTn/0hpPshNOOvEu/XAFOBz3cFIqUCqTqc/sLUegTBxj6DvEr0VQVfTzh97QZ QmdiXnfgolXsttlpF9U6r0TtSsWe5HonfOV116rLJeffawrbD02TTqigzXsu8lkB arcNuAeBfos4GzjmCleZPe4h6KP1DBbdi+w0jpwqHAAVF41og9JwnxgIzRFo1clr Us3ERo/ctfPYV3Me6ZQ5BL/T3jjetFPsaRyifsSP5BtwrfKi+fv3FmRmaZ9JUaLi FRhnBkp/1Wy1TbMz4GHrXb7pmA8y1x1LPC5aAVKRCfLf6o3YBkBjqhHk/sM3nhRS P/TizPJhk9H9Z2vXUq6/aKtAQ6BXNVN48FP4YUIHZMbXb5tMOA1jrGKvNouicwoN 9SG9dKpN6nIDSdvHXx1iY8f93ZHsM+71bbRuMGjeyNYmsHVee7QHIJihdjK4TWxP AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFMmAd+BikoL1Rpzz uvdMw964o605MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAU18h 9bqwOlI5LJKwbADJ784g7wbylp7ppHR/ehb8t/W2+xUbP6umwHJdELFx7rxP462s A20ucS6vxOOto70MEae0/0qyexAQH6dXQbLArvQsWdZHEIjzIVEpMMpghq9Gqx3t OluwlN5E40EIosHsHdb9T7bWR9AUC8rmyrV7d35BH16Dx7aMOZawP5aBQW9gkOLo +fsicdl9sz1Gv7SEr5AcD48Saq/v7h56rgJKihcrdv6sVIkkLE8/trKnToyokZf7 KcZ7XC25y2a2t6hbElGFtQl+Ynhw/qlqYLYdDnkM/crqJIByw5c/8nerQyIKx+u2 DISCLIBrQYoIwOula9+ZEsuK1V6ADJHgJgg2SMX6OBE1/yWDLfJ6v9r9jv6ly0Us H8SIU653DtmadsWOLB2jutXsMq7Aqqz30XpN69QH4kj3Io6wpJ9qzo6ysmD0oyLQ I+uUWnpp3Q+/QFesa1lQ2aOZ4W7+jQF5JyMV3pKdewlNWudLSDBaGOYKbeaP4NK7 5t98biGCwWg5TbSYWGZizEqQXsP6JwSxeRV0mcy+rSDeJmAc61ZRpqPq5KM/p/9h 3PFaTWwyI0PurKju7koSCTxdccK+efrCh2gdC/1cacwG0Jp9VJkqyTkaGa9LKkPz Y11aWOIv4x3kqdbQCtCev9eBCfHJxyYNrJgWVqA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWTCCA0GgAwIBAgIBAjANBgkqhkiG9w0BAQsFADBOMQswCQYDVQQGEwJOTzEd MBsGA1UECgwUQnV5cGFzcyBBUy05ODMxNjMzMjcxIDAeBgNVBAMMF0J1eXBhc3Mg Q2xhc3MgMyBSb290IENBMB4XDTEwMTAyNjA4Mjg1OFoXDTQwMTAyNjA4Mjg1OFow TjELMAkGA1UEBhMCTk8xHTAbBgNVBAoMFEJ1eXBhc3MgQVMtOTgzMTYzMzI3MSAw HgYDVQQDDBdCdXlwYXNzIENsYXNzIDMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEB BQADggIPADCCAgoCggIBAKXaCpUWUOOV8l6ddjEGMnqb8RB2uACatVI2zSRHsJ8Y ZLya9vrVediQYkwiL944PdbgqOkcLNt4EemOaFEVcsfzM4fkoF0LXOBXByow9c3E N3coTRiR5r/VUv1xLXA+58bEiuPwKAv0dpihi4dVsjoT/Lc+JzeOIuOoTyrvYLs9 tznDDgFHmV0ST9tD+leh7fmdvhFHJlsTmKtdFoqwNxxXnUX/iJY2v7vKB3tvh2PX 0DJq1l1sDPGzbjniazEuOQAnFN44wOwZZoYS6J1yFhNkUsepNxz9gjDthBgd9K5c /3ATAOux9TN6S9ZV+AWNS2mw9bMoNlwUxFFzTWsL8TQH2xc519woe2v1n/MuwU8X KhDzzMro6/1rqy6any2CbgTUUgGTLT2G/H783+9CHaZr77kgxve9oKeV/afmiSTY zIw0bOIjL9kSGiG5VZFvC5F5GQytQIgLcOJ60g7YaEi7ghM5EFjp2CoHxhLbWNvS O1UQRwUVZ2J+GGOmRj8JDlQyXr8NYnon74Do29lLBlo3WiXQCBJ31G8JUJc9yB3D 34xFMFbG02SrZvPAXpacw8Tvw3xrizp5f7NJzz3iiZ+gMEuFuZyUJHmPfWupRWgP K9Dx2hzLabjKSWJtyNBjYt1gD1iqj6G8BaVmos8bdrKEZLFMOVLAMLrwjEsCsLa3 AgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFEe4zf/lb+74suwv Tg75JbCOPGvDMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAACAj QTUEkMJAYmDv4jVM1z+s4jSQuKFvdvoWFqRINyzpkMLyPPgKn9iB5btb2iUspKdV cSQy9sgL8rxq+JOssgfCX5/bzMiKqr5qb+FJEMwx14C7u8jYog5kV+qi9cKpMRXS IGrs/CIBKM+GuIAeqcwRpTzyFrNHnfzSgCHEy9BHcEGhyoMZCCxt8l13nIoUE9Q2 HJLw5QY33KbmkJs4j1xrG0aGQ0JfPgEHU1RdZX33inOhmlRaHylDFCfChQ+1iHsa O5S3HWCntZznKWlXWpuTekMwGwPXYshApqr8ZORK15FTAaggiG6cX0S5y2CBNOxv 033aSF/rtJC8LakcC6wc1aJoIIAE1vyxjy+7SjENSoYc6+I2KSb12tjE8nVhz36u dmNKekBlk4f4HoCMhuWG1o8O/FMsYOgWYRqiPkN7zTlgVGr18okmAWiDSKIz6MkE kbIRNBE+6tBDGR8Dk5AM/1E9V/RBbuHLoL7ryWPNbczk+DaqaJ3tvV2XcEQNtg41 3OEMXbugUZTLfhbrES+jkkXITHHZvMmZUldGL1DPvTVp9D0VzgalLA8+9oG6lLvD u79leNKGef9JOxqDDPDeeOzI8k1MGt6CKfjBWtrt7uYnXuhF0J0cUahoq0Tj0Itq 4/g7u9xN12TyUb7mqqta6THuBrxzvxNiCp/HuZc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFaTCCA1GgAwIBAgIJAJK4iNuwisFjMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV BAYTAlNLMRMwEQYDVQQHEwpCcmF0aXNsYXZhMRMwEQYDVQQKEwpEaXNpZyBhLnMu MRkwFwYDVQQDExBDQSBEaXNpZyBSb290IFIyMB4XDTEyMDcxOTA5MTUzMFoXDTQy MDcxOTA5MTUzMFowUjELMAkGA1UEBhMCU0sxEzARBgNVBAcTCkJyYXRpc2xhdmEx EzARBgNVBAoTCkRpc2lnIGEucy4xGTAXBgNVBAMTEENBIERpc2lnIFJvb3QgUjIw ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCio8QACdaFXS1tFPbCw3Oe NcJxVX6B+6tGUODBfEl45qt5WDza/3wcn9iXAng+a0EE6UG9vgMsRfYvZNSrXaNH PWSb6WiaxswbP7q+sos0Ai6YVRn8jG+qX9pMzk0DIaPY0jSTVpbLTAwAFjxfGs3I x2ymrdMxp7zo5eFm1tL7A7RBZckQrg4FY8aAamkw/dLukO8NJ9+flXP04SXabBbe QTg06ov80egEFGEtQX6sx3dOy1FU+16SGBsEWmjGycT6txOgmLcRK7fWV8x8nhfR yyX+hk4kLlYMeE2eARKmK6cBZW58Yh2EhN/qwGu1pSqVg8NTEQxzHQuyRpDRQjrO QG6Vrf/GlK1ul4SOfW+eioANSW1z4nuSHsPzwfPrLgVv2RvPN3YEyLRa5Beny912 H9AZdugsBbPWnDTYltxhh5EF5EQIM8HauQhl1K6yNg3ruji6DOWbnuuNZt2Zz9aJ QfYEkoopKW1rOhzndX0CcQ7zwOe9yxndnWCywmZgtrEE7snmhrmaZkCo5xHtgUUD i/ZnWejBBhG93c+AAk9lQHhcR1DIm+YfgXvkRKhbhZri3lrVx/k6RGZL5DJUfORs nLMOPReisjQS1n6yqEm70XooQL6iFh/f5DcfEXP7kAplQ6INfPgGAVUzfbANuPT1 rqVCV3w2EYx7XsQDnYx5nQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1Ud DwEB/wQEAwIBBjAdBgNVHQ4EFgQUtZn4r7CU9eMg1gqtzk5WpC5uQu0wDQYJKoZI hvcNAQELBQADggIBACYGXnDnZTPIgm7ZnBc6G3pmsgH2eDtpXi/q/075KMOYKmFM tCQSin1tERT3nLXK5ryeJ45MGcipvXrA1zYObYVybqjGom32+nNjf7xueQgcnYqf GopTpti72TVVsRHFqQOzVju5hJMiXn7B9hJSi+osZ7z+Nkz1uM/Rs0mSO9MpDpkb lvdhuDvEK7Z4bLQjb/D907JedR+Zlais9trhxTF7+9FGs9K8Z7RiVLoJ92Owk6Ka +elSLotgEqv89WBW7xBci8QaQtyDW2QOy7W81k/BfDxujRNt+3vrMNDcTa/F1bal TFtxyegxvug4BkihGuLq0t4SOVga/4AOgnXmt8kHbA7v/zjxmHHEt38OFdAlab0i nSvtBfZGR6ztwPDUO+Ls7pZbkBNOHlY667DvlruWIxG68kOGdGSVyCh13x01utI3 gzhTODY7z2zp+WsO0PsE6E9312UBeIYMej4hYvF/Y3EMyZ9E26gnonW+boE+18Dr G5gPcFw0sorMwIUY6256s/daoQe/qUKS82Ail+QUoQebTnbAjn39pCXHR+3/H3Os zMOl6W8KjptlwlCFtaOgUxLMVYdh84GuEEZhvUQhuMI9dM9+JDX6HAcOmz0iyu8x L4ysEr3vQCj8KWefshNPZiTEUxnpHikV7+ZtsH8tZ/3zbBt1RqPlShfppNcL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFjTCCA3WgAwIBAgIEGErM1jANBgkqhkiG9w0BAQsFADBWMQswCQYDVQQGEwJD TjEwMC4GA1UECgwnQ2hpbmEgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9y aXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJPT1QwHhcNMTIwODA4MDMwNzAxWhcNMjkx MjMxMDMwNzAxWjBWMQswCQYDVQQGEwJDTjEwMC4GA1UECgwnQ2hpbmEgRmluYW5j aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MRUwEwYDVQQDDAxDRkNBIEVWIFJP T1QwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDXXWvNED8fBVnVBU03 sQ7smCuOFR36k0sXgiFxEFLXUWRwFsJVaU2OFW2fvwwbwuCjZ9YMrM8irq93VCpL TIpTUnrD7i7es3ElweldPe6hL6P3KjzJIx1qqx2hp/Hz7KDVRM8Vz3IvHWOX6Jn5 /ZOkVIBMUtRSqy5J35DNuF++P96hyk0g1CXohClTt7GIH//62pCfCqktQT+x8Rgp 7hZZLDRJGqgG16iI0gNyejLi6mhNbiyWZXvKWfry4t3uMCz7zEasxGPrb382KzRz EpR/38wmnvFyXVBlWY9ps4deMm/DGIq1lY+wejfeWkU7xzbh72fROdOXW3NiGUgt hxwG+3SYIElz8AXSG7Ggo7cbcNOIabla1jj0Ytwli3i/+Oh+uFzJlU9fpy25IGvP a931DfSCt/SyZi4QKPaXWnuWFo8BGS1sbn85WAZkgwGDg8NNkt0yxoekN+kWzqot aK8KgWU6cMGbrU1tVMoqLUuFG7OA5nBFDWteNfB/O7ic5ARwiRIlk9oKmSJgamNg TnYGmE69g60dWIolhdLHZR4tjsbftsbhf4oEIRUpdPA+nJCdDC7xij5aqgwJHsfV PKPtl8MeNPo4+QgO48BdK4PRVmrJtqhUUy54Mmc9gn900PvhtgVguXDbjgv5E1hv cWAQUhC5wUEJ73IfZzF4/5YFjQIDAQABo2MwYTAfBgNVHSMEGDAWgBTj/i39KNAL tbq2osS/BqoFjJP7LzAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAd BgNVHQ4EFgQU4/4t/SjQC7W6tqLEvwaqBYyT+y8wDQYJKoZIhvcNAQELBQADggIB ACXGumvrh8vegjmWPfBEp2uEcwPenStPuiB/vHiyz5ewG5zz13ku9Ui20vsXiObT ej/tUxPQ4i9qecsAIyjmHjdXNYmEwnZPNDatZ8POQQaIxffu2Bq41gt/UP+TqhdL jOztUmCypAbqTuv0axn96/Ua4CUqmtzHQTb3yHQFhDmVOdYLO6Qn+gjYXB74BGBS ESgoA//vU2YApUo0FmZ8/Qmkrp5nGm9BC2sGE5uPhnEFtC+NiWYzKXZUmhH4J/qy P5Hgzg0b8zAarb8iXRvTvyUFTeGSGn+ZnzxEk8rUQElsgIfXBDrDMlI1Dlb4pd19 xIsNER9Tyx6yF7Zod1rg1MvIB671Oi6ON7fQAUtDKXeMOZePglr4UeWJoBjnaH9d Ci77o0cOPaYjesYBx4/IXr9tgFa+iiS6M+qf4TIRnvHST4D2G0CvOJ4RUHlzEhLN 5mydLIhyPDCBBpEi6lmt2hkuIsKNuYyH4Ga8cyNfIWRjgEj1oDwYPZTISEEdQLpe /v5WOaHIz16eGWRGENoXkbcFgKyLmZJ956LYBws2J+dIeWCKw9cTXPhyQN9Ky8+Z AAoACxGV2lZFA4gKn2fQ1XmxqI1AbQ3CekD6819kR5LLU7m7Wc5P/dAVUwHY3+vZ 5nbv0CO7O6l5s9UCKc2Jo5YPSjXnTkLAdc0Hz+Ys63su -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiTCCAg+gAwIBAgIQH0evqmIAcFBUTAGem2OZKjAKBggqhkjOPQQDAzCBhTEL MAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UE BxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMT IkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwMzA2MDAw MDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdy ZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09N T0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBFQ0MgQ2VydGlmaWNhdGlv biBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQDR3svdcmCFYX7deSR FtSrYpn1PlILBs5BAH+X4QokPB0BBO490o0JlwzgdeT6+3eKKvUDYEs2ixYjFq0J cfRK9ChQtP6IHG4/bC8vCVlbpVsLM5niwz2J+Wos77LTBumjQjBAMB0GA1UdDgQW BBR1cacZSBm8nZ3qQUfflMRId5nTeTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjEA7wNbeqy3eApyt4jf/7VGFAkK+qDm fQjGGoe9GKhzvSbKYAydzpmfz1wPMOG+FDHqAjAU9JM8SaczepBGR7NjfRObTrdv GDeAU/7dIOA1mjbRxwG55tzd8/8dLDoWV9mSOdY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF2DCCA8CgAwIBAgIQTKr5yttjb+Af907YWwOGnTANBgkqhkiG9w0BAQwFADCB hTELMAkGA1UEBhMCR0IxGzAZBgNVBAgTEkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4G A1UEBxMHU2FsZm9yZDEaMBgGA1UEChMRQ09NT0RPIENBIExpbWl0ZWQxKzApBgNV BAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMTE5 MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBhTELMAkGA1UEBhMCR0IxGzAZBgNVBAgT EkdyZWF0ZXIgTWFuY2hlc3RlcjEQMA4GA1UEBxMHU2FsZm9yZDEaMBgGA1UEChMR Q09NT0RPIENBIExpbWl0ZWQxKzApBgNVBAMTIkNPTU9ETyBSU0EgQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCR 6FSS0gpWsawNJN3Fz0RndJkrN6N9I3AAcbxT38T6KhKPS38QVr2fcHK3YX/JSw8X pz3jsARh7v8Rl8f0hj4K+j5c+ZPmNHrZFGvnnLOFoIJ6dq9xkNfs/Q36nGz637CC 9BR++b7Epi9Pf5l/tfxnQ3K9DADWietrLNPtj5gcFKt+5eNu/Nio5JIk2kNrYrhV /erBvGy2i/MOjZrkm2xpmfh4SDBF1a3hDTxFYPwyllEnvGfDyi62a+pGx8cgoLEf Zd5ICLqkTqnyg0Y3hOvozIFIQ2dOciqbXL1MGyiKXCJ7tKuY2e7gUYPDCUZObT6Z +pUX2nwzV0E8jVHtC7ZcryxjGt9XyD+86V3Em69FmeKjWiS0uqlWPc9vqv9JWL7w qP/0uK3pN/u6uPQLOvnoQ0IeidiEyxPx2bvhiWC4jChWrBQdnArncevPDt09qZah SL0896+1DSJMwBGB7FY79tOi4lu3sgQiUpWAk2nojkxl8ZEDLXB0AuqLZxUpaVIC u9ffUGpVRr+goyhhf3DQw6KqLCGqR84onAZFdr+CGCe01a60y1Dma/RMhnEw6abf Fobg2P9A3fvQQoh/ozM6LlweQRGBY84YcWsr7KaKtzFcOmpH4MN5WdYgGq/yapiq crxXStJLnbsQ/LBMQeXtHT1eKJ2czL+zUdqnR+WEUwIDAQABo0IwQDAdBgNVHQ4E FgQUu69+Aj36pvE8hI6t7jiY7NkyMtQwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB /wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAArx1UaEt65Ru2yyTUEUAJNMnMvl wFTPoCWOAvn9sKIN9SCYPBMtrFaisNZ+EZLpLrqeLppysb0ZRGxhNaKatBYSaVqM 4dc+pBroLwP0rmEdEBsqpIt6xf4FpuHA1sj+nq6PK7o9mfjYcwlYRm6mnPTXJ9OV 2jeDchzTc+CiR5kDOF3VSXkAKRzH7JsgHAckaVd4sjn8OoSgtZx8jb8uk2Intzna FxiuvTwJaP+EmzzV1gsD41eeFPfR60/IvYcjt7ZJQ3mFXLrrkguhxuhoqEwWsRqZ CuhTLJK7oQkYdQxlqHvLI7cawiiFwxv/0Cti76R7CZGYZ4wUAc1oBmpjIXUDgIiK boHGhfKppC3n9KUkEEeDys30jXlYsQab5xoq2Z0B15R97QNKyvDb6KkBPvVWmcke jkk9u+UJueBPSZI9FoJAzMxZxuY67RIuaTxslbH9qh17f4a+Hg4yRvv7E491f0yL S0Zj/gA0QHDBw7mh3aZw4gSzQbzpgJHqZJx64SIDqZxubw5lT2yHh17zbqD5daWb QOhTsiedSrnAdyGN/4fy3ryM7xfft0kL0fJuMAsaDk527RH89elWsn2/x20Kk4yl 0MC2Hb46TpSi125sC8KKfPog88Tk5c0NqMuRkrF8hey1FGlmDoLnzc7ILaZRfyHB NVOFBkpdn627G190 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIB9zCCAX2gAwIBAgIQBiUzsUcDMydc+Y2aub/M+DAKBggqhkjOPQQDAzA9MQsw CQYDVQQGEwJVUzESMBAGA1UEChMJQ2VydGFpbmx5MRowGAYDVQQDExFDZXJ0YWlu bHkgUm9vdCBFMTAeFw0yMTA0MDEwMDAwMDBaFw00NjA0MDEwMDAwMDBaMD0xCzAJ BgNVBAYTAlVTMRIwEAYDVQQKEwlDZXJ0YWlubHkxGjAYBgNVBAMTEUNlcnRhaW5s eSBSb290IEUxMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE3m/4fxzf7flHh4axpMCK +IKXgOqPyEpeKn2IaKcBYhSRJHpcnqMXfYqGITQYUBsQ3tA3SybHGWCA6TS9YBk2 QNYphwk8kXr2vBMj3VlOBF7PyAIcGFPBMdjaIOlEjeR2o0IwQDAOBgNVHQ8BAf8E BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQU8ygYy2R17ikq6+2uI1g4 hevIIgcwCgYIKoZIzj0EAwMDaAAwZQIxALGOWiDDshliTd6wT99u0nCK8Z9+aozm ut6Dacpps6kFtZaSF4fC0urQe87YQVt8rgIwRt7qy12a7DLCZRawTDBcMPPaTnOG BtjOiQRINzf43TNRnXCve1XYAS59BWQOhriR -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFRzCCAy+gAwIBAgIRAI4P+UuQcWhlM1T01EQ5t+AwDQYJKoZIhvcNAQELBQAw PTELMAkGA1UEBhMCVVMxEjAQBgNVBAoTCUNlcnRhaW5seTEaMBgGA1UEAxMRQ2Vy dGFpbmx5IFJvb3QgUjEwHhcNMjEwNDAxMDAwMDAwWhcNNDYwNDAxMDAwMDAwWjA9 MQswCQYDVQQGEwJVUzESMBAGA1UEChMJQ2VydGFpbmx5MRowGAYDVQQDExFDZXJ0 YWlubHkgUm9vdCBSMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANA2 1B/q3avk0bbm+yLA3RMNansiExyXPGhjZjKcA7WNpIGD2ngwEc/csiu+kr+O5MQT vqRoTNoCaBZ0vrLdBORrKt03H2As2/X3oXyVtwxwhi7xOu9S98zTm/mLvg7fMbed aFySpvXl8wo0tf97ouSHocavFwDvA5HtqRxOcT3Si2yJ9HiG5mpJoM610rCrm/b0 1C7jcvk2xusVtyWMOvwlDbMicyF0yEqWYZL1LwsYpfSt4u5BvQF5+paMjRcCMLT5 r3gajLQ2EBAHBXDQ9DGQilHFhiZ5shGIXsXwClTNSaa/ApzSRKft43jvRl5tcdF5 cBxGX1HpyTfcX35pe0HfNEXgO4T0oYoKNp43zGJS4YkNKPl6I7ENPT2a/Z2B7yyQ wHtETrtJ4A5KVpK8y7XdeReJkd5hiXSSqOMyhb5OhaRLWcsrxXiOcVTQAjeZjOVJ 6uBUcqQRBi8LjMFbvrWhsFNunLhgkR9Za/kt9JQKl7XsxXYDVBtlUrpMklZRNaBA 2CnbrlJ2Oy0wQJuK0EJWtLeIAaSHO1OWzaMWj/Nmqhexx2DgwUMFDO6bW2BvBlyH Wyf5QBGenDPBt+U1VwV/J84XIIwc/PH72jEpSe31C4SnT8H2TsIonPru4K8H+zMR eiFPCyEQtkA6qyI6BJyLm4SGcprSp6XEtHWRqSsjAgMBAAGjQjBAMA4GA1UdDwEB /wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBTgqj8ljZ9EXME66C6u d0yEPmcM9DANBgkqhkiG9w0BAQsFAAOCAgEAuVevuBLaV4OPaAszHQNTVfSVcOQr PbA56/qJYv331hgELyE03fFo8NWWWt7CgKPBjcZq91l3rhVkz1t5BXdm6ozTaw3d 8VkswTOlMIAVRQdFGjEitpIAq5lNOo93r6kiyi9jyhXWx8bwPWz8HA2YEGGeEaIi 1wrykXprOQ4vMMM2SZ/g6Q8CRFA3lFV96p/2O7qUpUzpvD5RtOjKkjZUbVwlKNrd rRT90+7iIgXr0PK3aBLXWopBGsaSpVo7Y0VPv+E6dyIvXL9G+VoDhRNCX8reU9di taY1BMJH/5n9hN9czulegChB8n3nHpDYT3Y+gjwN/KUD+nsa2UUeYNrEjvn8K8l7 lcUq/6qJ34IxD3L/DCfXCh5WAFAeDJDBlrXYFIW7pw0WwfgHJBu6haEaBQmAupVj yTrsJZ9/nbqkRxWbRHDxakvWOF5D8xh+UG7pWijmZeZ3Gzr9Hb4DJqPb1OG7fpYn Kx3upPvaJVQTA945xsMfTZDsjxtK0hzthZU4UHlG1sGQUDGpXJpuHfUzVounmdLy yCwzk5Iwx06MZTMQZBf9JBeW0Y3COmor6xOLRPIh80oat3df1+2IpHLlOR+Vnb5n wXARPbv0+Em34yaXOp/SX3z7wJl8OSngex2/DaeP0ik0biQVy96QXr8axGbqwua6 OV+KmalBWQewLK8= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGWzCCBEOgAwIBAgIRAMrpG4nxVQMNo+ZBbcTjpuEwDQYJKoZIhvcNAQELBQAw WjELMAkGA1UEBhMCRlIxEjAQBgNVBAoMCURoaW15b3RpczEcMBoGA1UECwwTMDAw MiA0ODE0NjMwODEwMDAzNjEZMBcGA1UEAwwQQ2VydGlnbmEgUm9vdCBDQTAeFw0x MzEwMDEwODMyMjdaFw0zMzEwMDEwODMyMjdaMFoxCzAJBgNVBAYTAkZSMRIwEAYD VQQKDAlEaGlteW90aXMxHDAaBgNVBAsMEzAwMDIgNDgxNDYzMDgxMDAwMzYxGTAX BgNVBAMMEENlcnRpZ25hIFJvb3QgQ0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAw ggIKAoICAQDNGDllGlmx6mQWDoyUJJV8g9PFOSbcDO8WV43X2KyjQn+Cyu3NW9sO ty3tRQgXstmzy9YXUnIo245Onoq2C/mehJpNdt4iKVzSs9IGPjA5qXSjklYcoW9M CiBtnyN6tMbaLOQdLNyzKNAT8kxOAkmhVECe5uUFoC2EyP+YbNDrihqECB63aCPu I9Vwzm1RaRDuoXrC0SIxwoKF0vJVdlB8JXrJhFwLrN1CTivngqIkicuQstDuI7pm TLtipPlTWmR7fJj6o0ieD5Wupxj0auwuA0Wv8HT4Ks16XdG+RCYyKfHx9WzMfgIh C59vpD++nVPiz32pLHxYGpfhPTc3GGYo0kDFUYqMwy3OU4gkWGQwFsWq4NYKpkDf ePb1BHxpE4S80dGnBs8B92jAqFe7OmGtBIyT46388NtEbVncSVmurJqZNjBBe3Yz IoejwpKGbvlw7q6Hh5UbxHq9MfPU0uWZ/75I7HX1eBYdpnDBfzwboZL7z8g81sWT Co/1VTp2lc5ZmIoJlXcymoO6LAQ6l73UL77XbJuiyn1tJslV1c/DeVIICZkHJC1k JWumIWmbat10TWuXekG9qxf5kBdIjzb5LdXF2+6qhUVB+s06RbFo5jZMm5BX7CO5 hwjCxAnxl4YqKE3idMDaxIzb3+KhF1nOJFl0Mdp//TBt2dzhauH8XwIDAQABo4IB GjCCARYwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE FBiHVuBud+4kNTxOc5of1uHieX4rMB8GA1UdIwQYMBaAFBiHVuBud+4kNTxOc5of 1uHieX4rMEQGA1UdIAQ9MDswOQYEVR0gADAxMC8GCCsGAQUFBwIBFiNodHRwczov L3d3d3cuY2VydGlnbmEuZnIvYXV0b3JpdGVzLzBtBgNVHR8EZjBkMC+gLaArhilo dHRwOi8vY3JsLmNlcnRpZ25hLmZyL2NlcnRpZ25hcm9vdGNhLmNybDAxoC+gLYYr aHR0cDovL2NybC5kaGlteW90aXMuY29tL2NlcnRpZ25hcm9vdGNhLmNybDANBgkq hkiG9w0BAQsFAAOCAgEAlLieT/DjlQgi581oQfccVdV8AOItOoldaDgvUSILSo3L 6btdPrtcPbEo/uRTVRPPoZAbAh1fZkYJMyjhDSSXcNMQH+pkV5a7XdrnxIxPTGRG HVyH41neQtGbqH6mid2PHMkwgu07nM3A6RngatgCdTer9zQoKJHyBApPNeNgJgH6 0BGM+RFq7q89w1DTj18zeTyGqHNFkIwgtnJzFyO+B2XleJINugHA64wcZr+shncB lA2c5uk5jR+mUYyZDDl34bSb+hxnV29qao6pK0xXeXpXIs/NX2NGjVxZOob4Mkdi o2cNGJHc+6Zr9UhhcyNZjgKnvETq9Emd8VRY+WCv2hikLyhF3HqgiIZd8zvn/yk1 gPxkQ5Tm4xxvvq0OKmOZK8l+hfZx6AYDlf7ej0gcWtSS6Cvu5zHbugRqh5jnxV/v faci9wHYTfmJ0A6aBVmknpjZbyvKcL5kwlWj9Omvw5Ip3IgWJJk8jSaYtlu3zM63 Nwf9JtmYhST/WSMDmu2dnajkXjjO11INb9I/bbEFa0nOipFGc/T2L/Coc3cOZayh jWZSaX5LaAzHHjcng6WMxwLkFM1JAbBzs/3GkDpv0mztO+7skb6iQ12LAEpmJURw 3kAP+HwV96LOPNdeE4yBFxgX0b3xdxA61GU5wSesVywlVP+i2k+KYTlerj1KjL0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICZTCCAeugAwIBAgIQeI8nXIESUiClBNAt3bpz9DAKBggqhkjOPQQDAzB0MQsw CQYDVQQGEwJQTDEhMB8GA1UEChMYQXNzZWNvIERhdGEgU3lzdGVtcyBTLkEuMScw JQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxGTAXBgNVBAMT EENlcnR1bSBFQy0zODQgQ0EwHhcNMTgwMzI2MDcyNDU0WhcNNDMwMzI2MDcyNDU0 WjB0MQswCQYDVQQGEwJQTDEhMB8GA1UEChMYQXNzZWNvIERhdGEgU3lzdGVtcyBT LkEuMScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxGTAX BgNVBAMTEENlcnR1bSBFQy0zODQgQ0EwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATE KI6rGFtqvm5kN2PkzeyrOvfMobgOgknXhimfoZTy42B4mIF4Bk3y7JoOV2CDn7Tm Fy8as10CW4kjPMIRBSqniBMY81CE1700LCeJVf/OTOffph8oxPBUw7l8t1Ot68Kj QjBAMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI0GZnQkdjrzife81r1HfS+8 EF9LMA4GA1UdDwEB/wQEAwIBBjAKBggqhkjOPQQDAwNoADBlAjADVS2m5hjEfO/J UG7BJw+ch69u1RsIGL2SKcHvlJF40jocVYli5RsJHrpka/F2tNQCMQC0QoSZ/6vn nvuRlydd3LBbMHHOXjgaatkl5+r3YZJW+OraNsKHZZYuciUvf9/DE8k= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDuzCCAqOgAwIBAgIDBETAMA0GCSqGSIb3DQEBBQUAMH4xCzAJBgNVBAYTAlBM MSIwIAYDVQQKExlVbml6ZXRvIFRlY2hub2xvZ2llcyBTLkEuMScwJQYDVQQLEx5D ZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxIjAgBgNVBAMTGUNlcnR1bSBU cnVzdGVkIE5ldHdvcmsgQ0EwHhcNMDgxMDIyMTIwNzM3WhcNMjkxMjMxMTIwNzM3 WjB+MQswCQYDVQQGEwJQTDEiMCAGA1UEChMZVW5pemV0byBUZWNobm9sb2dpZXMg Uy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MSIw IAYDVQQDExlDZXJ0dW0gVHJ1c3RlZCBOZXR3b3JrIENBMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEA4/t9o3K6wvDJFIf1awFO4W5AB7ptJ11/91sts1rH UV+rpDKmYYe2bg+G0jACl/jXaVehGDldamR5xgFZrDwxSjh80gTSSyjoIF87B6LM TXPb865Px1bVWqeWifrzq2jUI4ZZJ88JJ7ysbnKDHDBy3+Ci6dLhdHUZvSqeexVU BBvXQzmtVSjF4hq79MDkrjhJM8x2hZ85RdKknvISjFH4fOQtf/WsX+sWn7Et0brM kUJ3TCXJkDhv2/DM+44el1k+1WBO5gUo7Ul5E0u6SNsv+XLTOcr+H9g0cvW0QM8x AcPs3hEtF10fuFDRXhmnad4HMyjKUJX5p1TLVIZQRan5SQIDAQABo0IwQDAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBQIds3LB/8k9sXN7buQvOKEN0Z19zAOBgNV HQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQEFBQADggEBAKaorSLOAT2mo/9i0Eidi15y sHhE49wcrwn9I0j6vSrEuVUEtRCjjSfeC4Jj0O7eDDd5QVsisrCaQVymcODU0HfL I9MA4GxWL+FpDQ3Zqr8hgVDZBqWo/5U30Kr+4rP1mS1FhIrlQgnXdAIv94nYmem8 J9RHjboNRhx3zxSkHLmkMcScKHQDNP8zGSal6Q10tz6XxnboJ5ajZt3hrvJBW8qY VoNzcOSGGtIxQbovvi0TWnZvTuhOgQ4/WwMioBK+ZlgRSssDxLQqKi2WF+A5VLxI 03YnnZotBqbJ7DnSq9ufmgsnAjUpsUCV5/nonFWIGUbWtzT1fs45mtk48VH3Tyw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0jCCA7qgAwIBAgIQIdbQSk8lD8kyN/yqXhKN6TANBgkqhkiG9w0BAQ0FADCB gDELMAkGA1UEBhMCUEwxIjAgBgNVBAoTGVVuaXpldG8gVGVjaG5vbG9naWVzIFMu QS4xJzAlBgNVBAsTHkNlcnR1bSBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTEkMCIG A1UEAxMbQ2VydHVtIFRydXN0ZWQgTmV0d29yayBDQSAyMCIYDzIwMTExMDA2MDgz OTU2WhgPMjA0NjEwMDYwODM5NTZaMIGAMQswCQYDVQQGEwJQTDEiMCAGA1UEChMZ VW5pemV0byBUZWNobm9sb2dpZXMgUy5BLjEnMCUGA1UECxMeQ2VydHVtIENlcnRp ZmljYXRpb24gQXV0aG9yaXR5MSQwIgYDVQQDExtDZXJ0dW0gVHJ1c3RlZCBOZXR3 b3JrIENBIDIwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC9+Xj45tWA DGSdhhuWZGc/IjoedQF97/tcZ4zJzFxrqZHmuULlIEub2pt7uZld2ZuAS9eEQCsn 0+i6MLs+CRqnSZXvK0AkwpfHp+6bJe+oCgCXhVqqndwpyeI1B+twTUrWwbNWuKFB OJvR+zF/j+Bf4bE/D44WSWDXBo0Y+aomEKsq09DRZ40bRr5HMNUuctHFY9rnY3lE fktjJImGLjQ/KUxSiyqnwOKRKIm5wFv5HdnnJ63/mgKXwcZQkpsCLL2puTRZCr+E Sv/f/rOf69me4Jgj7KZrdxYq28ytOxykh9xGc14ZYmhFV+SQgkK7QtbwYeDBoz1m o130GO6IyY0XRSmZMnUCMe4pJshrAua1YkV/NxVaI2iJ1D7eTiew8EAMvE0Xy02i sx7QBlrd9pPPV3WZ9fqGGmd4s7+W/jTcvedSVuWz5XV710GRBdxdaeOVDUO5/IOW OZV7bIBaTxNyxtd9KXpEulKkKtVBRgkg/iKgtlswjbyJDNXXcPiHUv3a76xRLgez Tv7QCdpw75j6VuZt27VXS9zlLCUVyJ4ueE742pyehizKV/Ma5ciSixqClnrDvFAS adgOWkaLOusm+iPJtrCBvkIApPjW/jAux9JG9uWOdf3yzLnQh1vMBhBgu4M1t15n 3kfsmUjxpKEV/q2MYo45VU85FrmxY53/twIDAQABo0IwQDAPBgNVHRMBAf8EBTAD AQH/MB0GA1UdDgQWBBS2oVQ5AsOgP46KvPrU+Bym0ToO/TAOBgNVHQ8BAf8EBAMC AQYwDQYJKoZIhvcNAQENBQADggIBAHGlDs7k6b8/ONWJWsQCYftMxRQXLYtPU2sQ F/xlhMcQSZDe28cmk4gmb3DWAl45oPePq5a1pRNcgRRtDoGCERuKTsZPpd1iHkTf CVn0W3cLN+mLIMb4Ck4uWBzrM9DPhmDJ2vuAL55MYIR4PSFk1vtBHxgP58l1cb29 XN40hz5BsA72udY/CROWFC/emh1auVbONTqwX3BNXuMp8SMoclm2q8KMZiYcdywm djWLKKdpoPk79SPdhRB0yZADVpHnr7pH1BKXESLjokmUbOe3lEu6LaTaM4tMpkT/ WjzGHWTYtTHkpjx6qFcL2+1hGsvxznN3Y6SHb0xRONbkX8eftoEq5IVIeVheO/jb AoJnwTnbw3RLPTYe+SmTiGhbqEQZIfCn6IENLOiTNrQ3ssqwGyZ6miUfmpqAnksq P/ujmv5zMnHCnsZy4YpoJ/HkD7TETKVhk/iXEAcqMCWpuchxuO9ozC1+9eB+D4Ko b7a6bINDd82Kkhehnlt4Fj1F4jNy3eFmypnTycUm/Q1oBEauttmbjL4ZvrHG8hnj XALKLNhvSgfZyTXaQHXyxKcZb55CEJh15pWLYLztxRLXis7VmFxWlgPF7ncGNf/P 5O4/E2Hu29othfDNrp2yGAlFw5Khchf8R7agCyzxxN5DaAhqXzvwdmP7zAYspsbi DrW5viSP -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFwDCCA6igAwIBAgIQHr9ZULjJgDdMBvfrVU+17TANBgkqhkiG9w0BAQ0FADB6 MQswCQYDVQQGEwJQTDEhMB8GA1UEChMYQXNzZWNvIERhdGEgU3lzdGVtcyBTLkEu MScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxHzAdBgNV BAMTFkNlcnR1bSBUcnVzdGVkIFJvb3QgQ0EwHhcNMTgwMzE2MTIxMDEzWhcNNDMw MzE2MTIxMDEzWjB6MQswCQYDVQQGEwJQTDEhMB8GA1UEChMYQXNzZWNvIERhdGEg U3lzdGVtcyBTLkEuMScwJQYDVQQLEx5DZXJ0dW0gQ2VydGlmaWNhdGlvbiBBdXRo b3JpdHkxHzAdBgNVBAMTFkNlcnR1bSBUcnVzdGVkIFJvb3QgQ0EwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQDRLY67tzbqbTeRn06TpwXkKQMlzhyC93yZ n0EGze2jusDbCSzBfN8pfktlL5On1AFrAygYo9idBcEq2EXxkd7fO9CAAozPOA/q p1x4EaTByIVcJdPTsuclzxFUl6s1wB52HO8AU5853BSlLCIls3Jy/I2z5T4IHhQq NwuIPMqw9MjCoa68wb4pZ1Xi/K1ZXP69VyywkI3C7Te2fJmItdUDmj0VDT06qKhF 8JVOJVkdzZhpu9PMMsmN74H+rX2Ju7pgE8pllWeg8xn2A1bUatMn4qGtg/BKEiJ3 HAVz4hlxQsDsdUaakFjgao4rpUYwBI4Zshfjvqm6f1bxJAPXsiEodg42MEx51UGa mqi4NboMOvJEGyCI98Ul1z3G4z5D3Yf+xOr1Uz5MZf87Sst4WmsXXw3Hw09Omiqi 7VdNIuJGmj8PkTQkfVXjjJU30xrwCSss0smNtA0Aq2cpKNgB9RkEth2+dv5yXMSF ytKAQd8FqKPVhJBPC/PgP5sZ0jeJP/J7UhyM9uH3PAeXjA6iWYEMspA90+NZRu0P qafegGtaqge2Gcu8V/OXIXoMsSt0Puvap2ctTMSYnjYJdmZm/Bo/6khUHL4wvYBQ v3y1zgD2DGHZ5yQD4OMBgQ692IU0iL2yNqh7XAjlRICMb/gv1SHKHRzQ+8S1h9E6 Tsd2tTVItQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBSM+xx1 vALTn04uSNn5YFSqxLNP+jAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQENBQAD ggIBAEii1QALLtA/vBzVtVRJHlpr9OTy4EA34MwUe7nJ+jW1dReTagVphZzNTxl4 WxmB82M+w85bj/UvXgF2Ez8sALnNllI5SW0ETsXpD4YN4fqzX4IS8TrOZgYkNCvo zMrnadyHncI013nR03e4qllY/p0m+jiGPp2Kh2RX5Rc64vmNueMzeMGQ2Ljdt4NR 5MTMI9UGfOZR0800McD2RrsLrfw9EAUqO0qRJe6M1ISHgCq8CYyqOhNf6DR5UMEQ GfnTKB7U0VEwKbOukGfWHwpjscWpxkIxYxeU72nLL/qMFH3EQxiJ2fAyQOaA4kZf 5ePBAFmo+eggvIksDkc0C+pXwlM2/KfUrzHN/gLldfq5Jwn58/U7yn2fqSLLiMmq 0Uc9NneoWWRrJ8/vJ8HjJLWG965+Mk2weWjROeiQWMODvA8s1pfrzgzhIMfatz7D P78v3DSk+yshzWePS/Tj6tQ/50+6uaWTRRxmHyH6ZF5v4HaUMst19W7l9o/HuKTM qJZ9ZPskWkoDbGs4xugDQ5r3V7mzKWmTOPQD8rv7gmsHINFSH5pkAnuYZttcTVoP 0ISVoDwUQwbKytu4QTbaakRnh6+v40URFWkIsr4WOZckbxJF0WddCajJFdr60qZf E2Efv4WstK2tBZQIgx51F9NxO5NQI1mg7TyRVJ12AMXDuDjb -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC2zCCAmCgAwIBAgIQfMmPK4TX3+oPyWWa00tNljAKBggqhkjOPQQDAzBIMQsw CQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlELVRS VVNUIEJSIFJvb3QgQ0EgMSAyMDIwMB4XDTIwMDIxMTA5NDUwMFoXDTM1MDIxMTA5 NDQ1OVowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEiMCAG A1UEAxMZRC1UUlVTVCBCUiBSb290IENBIDEgMjAyMDB2MBAGByqGSM49AgEGBSuB BAAiA2IABMbLxyjR+4T1mu9CFCDhQ2tuda38KwOE1HaTJddZO0Flax7mNCq7dPYS zuht56vkPE4/RAiLzRZxy7+SmfSk1zxQVFKQhYN4lGdnoxwJGT11NIXe7WB9xwy0 QVK5buXuQqOCAQ0wggEJMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFHOREKv/ VbNafAkl1bK6CKBrqx9tMA4GA1UdDwEB/wQEAwIBBjCBxgYDVR0fBIG+MIG7MD6g PKA6hjhodHRwOi8vY3JsLmQtdHJ1c3QubmV0L2NybC9kLXRydXN0X2JyX3Jvb3Rf Y2FfMV8yMDIwLmNybDB5oHegdYZzbGRhcDovL2RpcmVjdG9yeS5kLXRydXN0Lm5l dC9DTj1ELVRSVVNUJTIwQlIlMjBSb290JTIwQ0ElMjAxJTIwMjAyMCxPPUQtVHJ1 c3QlMjBHbWJILEM9REU/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdDAKBggqhkjO PQQDAwNpADBmAjEAlJAtE/rhY/hhY+ithXhUkZy4kzg+GkHaQBZTQgjKL47xPoFW wKrY7RjEsK70PvomAjEA8yjixtsrmfu3Ubgko6SUeho/5jbiA1czijDLgsfWFBHV dWNbFJWcHwHP2NVypw87 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFqTCCA5GgAwIBAgIQczswBEhb2U14LnNLyaHcZjANBgkqhkiG9w0BAQ0FADBI MQswCQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlE LVRSVVNUIEJSIFJvb3QgQ0EgMiAyMDIzMB4XDTIzMDUwOTA4NTYzMVoXDTM4MDUw OTA4NTYzMFowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEi MCAGA1UEAxMZRC1UUlVTVCBCUiBSb290IENBIDIgMjAyMzCCAiIwDQYJKoZIhvcN AQEBBQADggIPADCCAgoCggIBAK7/CVmRgApKaOYkP7in5Mg6CjoWzckjYaCTcfKr i3OPoGdlYNJUa2NRb0kz4HIHE304zQaSBylSa053bATTlfrdTIzZXcFhfUvnKLNE gXtRr90zsWh81k5M/itoucpmacTsXld/9w3HnDY25QdgrMBM6ghs7wZ8T1soegj8 k12b9py0i4a6Ibn08OhZWiihNIQaJZG2tY/vsvmA+vk9PBFy2OMvhnbFeSzBqZCT Rphny4NqoFAjpzv2gTng7fC5v2Xx2Mt6++9zA84A9H3X4F07ZrjcjrqDy4d2A/wl 2ecjbwb9Z/Pg/4S8R7+1FhhGaRTMBffb00msa8yr5LULQyReS2tNZ9/WtT5PeB+U cSTq3nD88ZP+npNa5JRal1QMNXtfbO4AHyTsA7oC9Xb0n9Sa7YUsOCIvx9gvdhFP /Wxc6PWOJ4d/GUohR5AdeY0cW/jPSoXk7bNbjb7EZChdQcRurDhaTyN0dKkSw/bS uREVMweR2Ds3OmMwBtHFIjYoYiMQ4EbMl6zWK11kJNXuHA7e+whadSr2Y23OC0K+ 0bpwHJwh5Q8xaRfX/Aq03u2AnMuStIv13lmiWAmlY0cL4UEyNEHZmrHZqLAbWt4N DfTisl01gLmB1IRpkQLLddCNxbU9CZEJjxShFHR5PtbJFR2kWVki3PaKRT08EtY+ XTIvAgMBAAGjgY4wgYswDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUZ5Dw1t61 GNVGKX5cq/ieCLxklRAwDgYDVR0PAQH/BAQDAgEGMEkGA1UdHwRCMEAwPqA8oDqG OGh0dHA6Ly9jcmwuZC10cnVzdC5uZXQvY3JsL2QtdHJ1c3RfYnJfcm9vdF9jYV8y XzIwMjMuY3JsMA0GCSqGSIb3DQEBDQUAA4ICAQA097N3U9swFrktpSHxQCF16+tI FoE9c+CeJyrrd6kTpGoKWloUMz1oH4Guaf2Mn2VsNELZLdB/eBaxOqwjMa1ef67n riv6uvw8l5VAk1/DLQOj7aRvU9f6QA4w9QAgLABMjDu0ox+2v5Eyq6+SmNMW5tTR VFxDWy6u71cqqLRvpO8NVhTaIasgdp4D/Ca4nj8+AybmTNudX0KEPUUDAxxZiMrc LmEkWqTqJwtzEr5SswrPMhfiHocaFpVIbVrg0M8JkiZmkdijYQ6qgYF/6FKC0ULn 4B0Y+qSFNueG4A3rvNTJ1jxD8V1Jbn6Bm2m1iWKPiFLY1/4nwSPFyysCu7Ff/vtD hQNGvl3GyiEm/9cCnnRK3PgTFbGBVzbLZVzRHTF36SXDw7IyN9XxmAnkbWOACKsG koHU6XCPpz+y7YaMgmo1yEJagtFSGkUPFaUA8JR7ZSdXOUPPfH/mvTWze/EZTN46 ls/pdu4D58JDUjxqgejBWoC9EV2Ta/vH5mQ/u2kc6d0li690yVRAysuTEwrt+2aS Ecr1wPrYg1UDfNPFIkZ1cGt5SAYqgpq/5usWDiJFAbzdNpQ0qTUmiteXue4Icr80 knCDgKs4qllo3UCkGJCy89UDyibK79XH4I9TjvAA46jtn/mtd+ArY0+ew+43u3gJ hJ65bvspmZDogNOfJA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIC2zCCAmCgAwIBAgIQXwJB13qHfEwDo6yWjfv/0DAKBggqhkjOPQQDAzBIMQsw CQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlELVRS VVNUIEVWIFJvb3QgQ0EgMSAyMDIwMB4XDTIwMDIxMTEwMDAwMFoXDTM1MDIxMTA5 NTk1OVowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEiMCAG A1UEAxMZRC1UUlVTVCBFViBSb290IENBIDEgMjAyMDB2MBAGByqGSM49AgEGBSuB BAAiA2IABPEL3YZDIBnfl4XoIkqbz52Yv7QFJsnL46bSj8WeeHsxiamJrSc8ZRCC /N/DnU7wMyPE0jL1HLDfMxddxfCxivnvubcUyilKwg+pf3VlSSowZ/Rk99Yad9rD wpdhQntJraOCAQ0wggEJMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFH8QARY3 OqQo5FD4pPfsazK2/umLMA4GA1UdDwEB/wQEAwIBBjCBxgYDVR0fBIG+MIG7MD6g PKA6hjhodHRwOi8vY3JsLmQtdHJ1c3QubmV0L2NybC9kLXRydXN0X2V2X3Jvb3Rf Y2FfMV8yMDIwLmNybDB5oHegdYZzbGRhcDovL2RpcmVjdG9yeS5kLXRydXN0Lm5l dC9DTj1ELVRSVVNUJTIwRVYlMjBSb290JTIwQ0ElMjAxJTIwMjAyMCxPPUQtVHJ1 c3QlMjBHbWJILEM9REU/Y2VydGlmaWNhdGVyZXZvY2F0aW9ubGlzdDAKBggqhkjO PQQDAwNpADBmAjEAyjzGKnXCXnViOTYAYFqLwZOZzNnbQTs7h5kXO9XMT8oi96CA y/m0sRtW9XLS/BnRAjEAkfcwkz8QRitxpNA7RJvAKQIFskF3UfN5Wp6OFKBOQtJb gfM0agPnIjhQW+0ZT0MW -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFqTCCA5GgAwIBAgIQaSYJfoBLTKCnjHhiU19abzANBgkqhkiG9w0BAQ0FADBI MQswCQYDVQQGEwJERTEVMBMGA1UEChMMRC1UcnVzdCBHbWJIMSIwIAYDVQQDExlE LVRSVVNUIEVWIFJvb3QgQ0EgMiAyMDIzMB4XDTIzMDUwOTA5MTAzM1oXDTM4MDUw OTA5MTAzMlowSDELMAkGA1UEBhMCREUxFTATBgNVBAoTDEQtVHJ1c3QgR21iSDEi MCAGA1UEAxMZRC1UUlVTVCBFViBSb290IENBIDIgMjAyMzCCAiIwDQYJKoZIhvcN AQEBBQADggIPADCCAgoCggIBANiOo4mAC7JXUtypU0w3uX9jFxPvp1sjW2l1sJkK F8GLxNuo4MwxusLyzV3pt/gdr2rElYfXR8mV2IIEUD2BCP/kPbOx1sWy/YgJ25yE 7CUXFId/MHibaljJtnMoPDT3mfd/06b4HEV8rSyMlD/YZxBTfiLNTiVR8CUkNRFe EMbsh2aJgWi6zCudR3Mfvc2RpHJqnKIbGKBv7FD0fUDCqDDPvXPIEysQEx6Lmqg6 lHPTGGkKSv/BAQP/eX+1SH977ugpbzZMlWGG2Pmic4ruri+W7mjNPU0oQvlFKzIb RlUWaqZLKfm7lVa/Rh3sHZMdwGWyH6FDrlaeoLGPaxK3YG14C8qKXO0elg6DpkiV jTujIcSuWMYAsoS0I6SWhjW42J7YrDRJmGOVxcttSEfi8i4YHtAxq9107PncjLgc jmgjutDzUNzPZY9zOjLHfP7KgiJPvo5iR2blzYfi6NUPGJ/lBHJLRjwQ8kTCZFZx TnXonMkmdMV9WdEKWw9t/p51HBjGGjp82A0EzM23RWV6sY+4roRIPrN6TagD4uJ+ ARZZaBhDM7DS3LAaQzXupdqpRlyuhoFBAUp0JuyfBr/CBTdkdXgpaP3F9ev+R/nk hbDhezGdpn9yo7nELC7MmVcOIQxFAZRl62UJxmMiCzNJkkg8/M3OsD6Onov4/knF NXJHAgMBAAGjgY4wgYswDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUqvyREBuH kV8Wub9PS5FeAByxMoAwDgYDVR0PAQH/BAQDAgEGMEkGA1UdHwRCMEAwPqA8oDqG OGh0dHA6Ly9jcmwuZC10cnVzdC5uZXQvY3JsL2QtdHJ1c3RfZXZfcm9vdF9jYV8y XzIwMjMuY3JsMA0GCSqGSIb3DQEBDQUAA4ICAQCTy6UfmRHsmg1fLBWTxj++EI14 QvBukEdHjqOSMo1wj/Zbjb6JzkcBahsgIIlbyIIQbODnmaprxiqgYzWRaoUlrRc4 pZt+UPJ26oUFKidBK7GB0aL2QHWpDsvxVUjY7NHss+jOFKE17MJeNRqrphYBBo7q 3C+jisosketSjl8MmxfPy3MHGcRqwnNU73xDUmPBEcrCRbH0O1P1aa4846XerOhU t7KR/aypH/KH5BfGSah82ApB9PI+53c0BFLd6IHyTS9URZ0V4U/M5d40VxDJI3IX cI1QcB9WbMy5/zpaT2N6w25lBx2Eof+pDGOJbbJAiDnXH3dotfyc1dZnaVuodNv8 ifYbMvekJKZ2t0dT741Jj6m2g1qllpBFYfXeA08mD6iL8AOWsKwV0HFaanuU5nCT 2vFp4LJiTZ6P/4mdm13NRemUAiKN4DV/6PEEeXFsVIP4M7kFMhtYVRFP0OUnR3Hs 7dpn1mKmS00PaaLJvOwiS5THaJQXfuKOKD62xur1NGyfN4gHONuGcfrNlUhDbqNP gofXNJhuS5N5YHVpD/Aa1VP6IQzCP+k/HxiMkl14p3ZnGbuy6n/pcAlWVqOwDAst Nl7F6cTVg8uGF5csbBNvh1qvSaYd2804BC5f4ko1Di1L+KIkBI3Y4WNeApI02phh XBxvWHZks/wCuPWdCg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEMzCCAxugAwIBAgIDCYPzMA0GCSqGSIb3DQEBCwUAME0xCzAJBgNVBAYTAkRF MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMMHkQtVFJVU1QgUm9vdCBD bGFzcyAzIENBIDIgMjAwOTAeFw0wOTExMDUwODM1NThaFw0yOTExMDUwODM1NTha ME0xCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxJzAlBgNVBAMM HkQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgMjAwOTCCASIwDQYJKoZIhvcNAQEB BQADggEPADCCAQoCggEBANOySs96R+91myP6Oi/WUEWJNTrGa9v+2wBoqOADER03 UAifTUpolDWzU9GUY6cgVq/eUXjsKj3zSEhQPgrfRlWLJ23DEE0NkVJD2IfgXU42 tSHKXzlABF9bfsyjxiupQB7ZNoTWSPOSHjRGICTBpFGOShrvUD9pXRl/RcPHAY9R ySPocq60vFYJfxLLHLGvKZAKyVXMD9O0Gu1HNVpK7ZxzBCHQqr0ME7UAyiZsxGsM lFqVlNpQmvH/pStmMaTJOKDfHR+4CS7zp+hnUquVH+BGPtikw8paxTGA6Eian5Rp /hnd2HN8gcqW3o7tszIFZYQ05ub9VxC1X3a/L7AQDcUCAwEAAaOCARowggEWMA8G A1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFP3aFMSfMN4hvR5COfyrYyNJ4PGEMA4G A1UdDwEB/wQEAwIBBjCB0wYDVR0fBIHLMIHIMIGAoH6gfIZ6bGRhcDovL2RpcmVj dG9yeS5kLXRydXN0Lm5ldC9DTj1ELVRSVVNUJTIwUm9vdCUyMENsYXNzJTIwMyUy MENBJTIwMiUyMDIwMDksTz1ELVRydXN0JTIwR21iSCxDPURFP2NlcnRpZmljYXRl cmV2b2NhdGlvbmxpc3QwQ6BBoD+GPWh0dHA6Ly93d3cuZC10cnVzdC5uZXQvY3Js L2QtdHJ1c3Rfcm9vdF9jbGFzc18zX2NhXzJfMjAwOS5jcmwwDQYJKoZIhvcNAQEL BQADggEBAH+X2zDI36ScfSF6gHDOFBJpiBSVYEQBrLLpME+bUMJm2H6NMLVwMeni acfzcNsgFYbQDfC+rAF1hM5+n02/t2A7nPPKHeJeaNijnZflQGDSNiH+0LS4F9p0 o3/U37CYAqxva2ssJSRyoWXuJVrl5jLn8t+rSfrzkGkj2wTZ51xY/GXUl77M/C4K zCUqNQT4YJEVdT1B/yMfGchs64JTBKbkTCJNjYy6zltz7GRUUG3RnFX7acM2w4y8 PIWmawomDeCTmGCufsYkl4phX5GOZpIJhzbNi5stPvZR1FDUWSi9g/LMKHtThm3Y Johw1+qRzT65ysCQblrGXnRl11z+o+I= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEQzCCAyugAwIBAgIDCYP0MA0GCSqGSIb3DQEBCwUAMFAxCzAJBgNVBAYTAkRF MRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNVBAMMIUQtVFJVU1QgUm9vdCBD bGFzcyAzIENBIDIgRVYgMjAwOTAeFw0wOTExMDUwODUwNDZaFw0yOTExMDUwODUw NDZaMFAxCzAJBgNVBAYTAkRFMRUwEwYDVQQKDAxELVRydXN0IEdtYkgxKjAoBgNV BAMMIUQtVFJVU1QgUm9vdCBDbGFzcyAzIENBIDIgRVYgMjAwOTCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAJnxhDRwui+3MKCOvXwEz75ivJn9gpfSegpn ljgJ9hBOlSJzmY3aFS3nBfwZcyK3jpgAvDw9rKFs+9Z5JUut8Mxk2og+KbgPCdM0 3TP1YtHhzRnp7hhPTFiu4h7WDFsVWtg6uMQYZB7jM7K1iXdODL/ZlGsTl28So/6Z qQTMFexgaDbtCHu39b+T7WYxg4zGcTSHThfqr4uRjRxWQa4iN1438h3Z0S0NL2lR p75mpoo6Kr3HGrHhFPC+Oh25z1uxav60sUYgovseO3Dvk5h9jHOW8sXvhXCtKSb8 HgQ+HKDYD8tSg2J87otTlZCpV6LqYQXY+U3EJ/pure3511H3a6UCAwEAAaOCASQw ggEgMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFNOUikxiEyoZLsyvcop9Ntea HNxnMA4GA1UdDwEB/wQEAwIBBjCB3QYDVR0fBIHVMIHSMIGHoIGEoIGBhn9sZGFw Oi8vZGlyZWN0b3J5LmQtdHJ1c3QubmV0L0NOPUQtVFJVU1QlMjBSb290JTIwQ2xh c3MlMjAzJTIwQ0ElMjAyJTIwRVYlMjAyMDA5LE89RC1UcnVzdCUyMEdtYkgsQz1E RT9jZXJ0aWZpY2F0ZXJldm9jYXRpb25saXN0MEagRKBChkBodHRwOi8vd3d3LmQt dHJ1c3QubmV0L2NybC9kLXRydXN0X3Jvb3RfY2xhc3NfM19jYV8yX2V2XzIwMDku Y3JsMA0GCSqGSIb3DQEBCwUAA4IBAQA07XtaPKSUiO8aEXUHL7P+PPoeUSbrh/Yp 3uDx1MYkCenBz1UbtDDZzhr+BlGmFaQt77JLvyAoJUnRpjZ3NOhk31KxEcdzes05 nsKtjHEh8lprr988TlWvsoRlFIm5d8sqMb7Po23Pb0iUMkZv53GMoKaEGTcH8gNF CSuGdXzfX2lXANtu2KZyIktQ1HWYVt+3GP9DQ1CuekR78HlR10M9p9OB0/DJT7na xpeG0ILD5EJt/rDiZE4OJudANCa1CInXCGNjOCd1HjPqbqjdn5lPdE2BiYBL3ZqX KVwvvoFBuYz/6n1gBp7N1z3TLqMVvKjmJuVvw9y4AyHqnxbxLFS1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDljCCAn6gAwIBAgIQC5McOtY5Z+pnI7/Dr5r0SzANBgkqhkiG9w0BAQsFADBl MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv b3QgRzIwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBlMQswCQYDVQQG EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzIwggEi MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDZ5ygvUj82ckmIkzTz+GoeMVSA n61UQbVH35ao1K+ALbkKz3X9iaV9JPrjIgwrvJUXCzO/GU1BBpAAvQxNEP4Htecc biJVMWWXvdMX0h5i89vqbFCMP4QMls+3ywPgym2hFEwbid3tALBSfK+RbLE4E9Hp EgjAALAcKxHad3A2m67OeYfcgnDmCXRwVWmvo2ifv922ebPynXApVfSr/5Vh88lA bx3RvpO704gqu52/clpWcTs/1PPRCv4o76Pu2ZmvA9OPYLfykqGxvYmJHzDNw6Yu YjOuFgJ3RFrngQo8p0Quebg/BLxcoIfhG69Rjs3sLPr4/m3wOnyqi+RnlTGNAgMB AAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMB0GA1UdDgQW BBTOw0q5mVXyuNtgv6l+vVa1lzan1jANBgkqhkiG9w0BAQsFAAOCAQEAyqVVjOPI QW5pJ6d1Ee88hjZv0p3GeDgdaZaikmkuOGybfQTUiaWxMTeKySHMq2zNixya1r9I 0jJmwYrA8y8678Dj1JGG0VDjA9tzd29KOVPt3ibHtX2vK0LRdWLjSisCx1BL4Gni lmwORGYQRI+tBev4eaymG+g3NJ1TyWGqolKvSnAWhsI6yLETcDbYz+70CjTVW0z9 B5yiutkBclzzTcHdDrEcDcRjvq30FPuJ7KJBDkzMyFdA0G4Dqs0MjomZmWzwPDCv ON9vvKO+KSAnq3T/EyJ43pdSVR6DtVQgA+6uwE9W3jfMw3+qBCe703e4YtsXfJwo IhNzbM8m9Yop5w== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICRjCCAc2gAwIBAgIQC6Fa+h3foLVJRK/NJKBs7DAKBggqhkjOPQQDAzBlMQsw CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu ZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3Qg RzMwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBlMQswCQYDVQQGEwJV UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQu Y29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgRzMwdjAQBgcq hkjOPQIBBgUrgQQAIgNiAAQZ57ysRGXtzbg/WPuNsVepRC0FFfLvC/8QdJ+1YlJf Zn4f5dwbRXkLzMZTCp2NXQLZqVneAlr2lSoOjThKiknGvMYDOAdfVdp+CW7if17Q RSAPWXYQ1qAk8C3eNvJsKTmjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/ BAQDAgGGMB0GA1UdDgQWBBTL0L2p4ZgFUaFNN6KDec6NHSrkhDAKBggqhkjOPQQD AwNnADBkAjAlpIFFAmsSS3V0T8gj43DydXLefInwz5FyYZ5eEJJZVrmDxxDnOOlY JjZ91eQ0hjkCMHw2U/Aw5WJjOpnitqM7mzT6HtoQknFekROn3aRukswy1vUhZscv 6pZjamVFkpUBtA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDjjCCAnagAwIBAgIQAzrx5qcRqaC7KGSxHQn65TANBgkqhkiG9w0BAQsFADBh MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBH MjAeFw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVT MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j b20xIDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEcyMIIBIjANBgkqhkiG 9w0BAQEFAAOCAQ8AMIIBCgKCAQEAuzfNNNx7a8myaJCtSnX/RrohCgiN9RlUyfuI 2/Ou8jqJkTx65qsGGmvPrC3oXgkkRLpimn7Wo6h+4FR1IAWsULecYxpsMNzaHxmx 1x7e/dfgy5SDN67sH0NO3Xss0r0upS/kqbitOtSZpLYl6ZtrAGCSYP9PIUkY92eQ q2EGnI/yuum06ZIya7XzV+hdG82MHauVBJVJ8zUtluNJbd134/tJS7SsVQepj5Wz tCO7TG1F8PapspUwtP1MVYwnSlcUfIKdzXOS0xZKBgyMUNGPHgm+F6HmIcr9g+UQ vIOlCsRnKPZzFBQ9RnbDhxSJITRNrw9FDKZJobq7nMWxM4MphQIDAQABo0IwQDAP BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAdBgNVHQ4EFgQUTiJUIBiV 5uNu5g/6+rkS7QYXjzkwDQYJKoZIhvcNAQELBQADggEBAGBnKJRvDkhj6zHd6mcY 1Yl9PMWLSn/pvtsrF9+wX3N3KjITOYFnQoQj8kVnNeyIv/iPsGEMNKSuIEyExtv4 NeF22d+mQrvHRAiGfzZ0JFrabA0UWTW98kndth/Jsw1HKj2ZL7tcu7XUIOGZX1NG Fdtom/DzMNU+MeKNhJ7jitralj41E6Vf8PlwUHBHQRFXGU7Aj64GxJUTFy8bJZ91 8rGOmaFvE7FBcf6IKshPECBV1/MUReXgRPTqh5Uykw7+U0b6LJ3/iyK5S9kJRaTe pLiaWN0bfVKfjllDiIGknibVb63dDcY3fe0Dkhvld1927jyNxF1WW6LZZm6zNTfl MrY= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICPzCCAcWgAwIBAgIQBVVWvPJepDU1w6QP1atFcjAKBggqhkjOPQQDAzBhMQsw CQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cu ZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBHMzAe Fw0xMzA4MDExMjAwMDBaFw0zODAxMTUxMjAwMDBaMGExCzAJBgNVBAYTAlVTMRUw EwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5jb20x IDAeBgNVBAMTF0RpZ2lDZXJ0IEdsb2JhbCBSb290IEczMHYwEAYHKoZIzj0CAQYF K4EEACIDYgAE3afZu4q4C/sLfyHS8L6+c/MzXRq8NOrexpu80JX28MzQC7phW1FG fp4tn+6OYwwX7Adw9c+ELkCDnOg/QW07rdOkFFk2eJ0DQ+4QE2xy3q6Ip6FrtUPO Z9wj/wMco+I+o0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBhjAd BgNVHQ4EFgQUs9tIpPmhxdiuNkHMEWNpYim8S8YwCgYIKoZIzj0EAwMDaAAwZQIx AK288mw/EkrRLTnDCgmXc/SINoyIJ7vmiI1Qhadj+Z4y3maTD/HMsQmP3Wyr+mt/ oAIwOWZbwmSNuJ5Q3KjVSaLtx9zRSX8XAbjIho9OjIgrqJqpisXRAL34VOKa5Vt8 sycX -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICGTCCAZ+gAwIBAgIQCeCTZaz32ci5PhwLBCou8zAKBggqhkjOPQQDAzBOMQsw CQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJjAkBgNVBAMTHURp Z2lDZXJ0IFRMUyBFQ0MgUDM4NCBSb290IEc1MB4XDTIxMDExNTAwMDAwMFoXDTQ2 MDExNDIzNTk1OVowTjELMAkGA1UEBhMCVVMxFzAVBgNVBAoTDkRpZ2lDZXJ0LCBJ bmMuMSYwJAYDVQQDEx1EaWdpQ2VydCBUTFMgRUNDIFAzODQgUm9vdCBHNTB2MBAG ByqGSM49AgEGBSuBBAAiA2IABMFEoc8Rl1Ca3iOCNQfN0MsYndLxf3c1TzvdlHJS 7cI7+Oz6e2tYIOyZrsn8aLN1udsJ7MgT9U7GCh1mMEy7H0cKPGEQQil8pQgO4CLp 0zVozptjn4S1mU1YoI71VOeVyaNCMEAwHQYDVR0OBBYEFMFRRVBZqz7nLFr6ICIS B4CIfBFqMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MAoGCCqGSM49 BAMDA2gAMGUCMQCJao1H5+z8blUD2WdsJk6Dxv3J+ysTvLd6jLRl0mlpYxNjOyZQ LgGheQaRnUi/wr4CMEfDFXuxoJGZSZOoPHzoRgaLLPIxAJSdYsiJvRmEFOml+wG4 DXZDjC5Ty3zfDBeWUA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFZjCCA06gAwIBAgIQCPm0eKj6ftpqMzeJ3nzPijANBgkqhkiG9w0BAQwFADBN MQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQsIEluYy4xJTAjBgNVBAMT HERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwHhcNMjEwMTE1MDAwMDAwWhcN NDYwMTE0MjM1OTU5WjBNMQswCQYDVQQGEwJVUzEXMBUGA1UEChMORGlnaUNlcnQs IEluYy4xJTAjBgNVBAMTHERpZ2lDZXJ0IFRMUyBSU0E0MDk2IFJvb3QgRzUwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCz0PTJeRGd/fxmgefM1eS87IE+ ajWOLrfn3q/5B03PMJ3qCQuZvWxX2hhKuHisOjmopkisLnLlvevxGs3npAOpPxG0 2C+JFvuUAT27L/gTBaF4HI4o4EXgg/RZG5Wzrn4DReW+wkL+7vI8toUTmDKdFqgp wgscONyfMXdcvyej/Cestyu9dJsXLfKB2l2w4SMXPohKEiPQ6s+d3gMXsUJKoBZM pG2T6T867jp8nVid9E6P/DsjyG244gXazOvswzH016cpVIDPRFtMbzCe88zdH5RD nU1/cHAN1DrRN/BsnZvAFJNY781BOHW8EwOVfH/jXOnVDdXifBBiqmvwPXbzP6Po sMH976pXTayGpxi0KcEsDr9kvimM2AItzVwv8n/vFfQMFawKsPHTDU9qTXeXAaDx Zre3zu/O7Oyldcqs4+Fj97ihBMi8ez9dLRYiVu1ISf6nL3kwJZu6ay0/nTvEF+cd Lvvyz6b84xQslpghjLSR6Rlgg/IwKwZzUNWYOwbpx4oMYIwo+FKbbuH2TbsGJJvX KyY//SovcfXWJL5/MZ4PbeiPT02jP/816t9JXkGPhvnxd3lLG7SjXi/7RgLQZhNe XoVPzthwiHvOAbWWl9fNff2C+MIkwcoBOU+NosEUQB+cZtUMCUbW8tDRSHZWOkPL tgoRObqME2wGtZ7P6wIDAQABo0IwQDAdBgNVHQ4EFgQUUTMc7TZArxfTJc1paPKv TiM+s0EwDgYDVR0PAQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcN AQEMBQADggIBAGCmr1tfV9qJ20tQqcQjNSH/0GEwhJG3PxDPJY7Jv0Y02cEhJhxw GXIeo8mH/qlDZJY6yFMECrZBu8RHANmfGBg7sg7zNOok992vIGCukihfNudd5N7H PNtQOa27PShNlnx2xlv0wdsUpasZYgcYQF+Xkdycx6u1UQ3maVNVzDl92sURVXLF O4uJ+DQtpBflF+aZfTCIITfNMBc9uPK8qHWgQ9w+iUuQrm0D4ByjoJYJu32jtyoQ REtGBzRj7TG5BO6jm5qu5jF49OokYTurWGT/u4cnYiWB39yhL/btp/96j1EuMPik AdKFOV8BmZZvWltwGUb+hmA+rYAQCd05JS9Yf7vSdPD3Rh9GOUrYU9DzLjtxpdRv /PNn5AeP3SYZ4Y1b+qOTEZvpyDrDVWiakuFSdjjo4bq9+0/V77PnSIMx8IIh47a+ p6tv75/fTM8BuGJqIz3nCU2AG3swpMPdB380vqQmsvZB6Akd4yCYqjdP//fx4ilw MUc/dNAUFvohigLVigmUdy7yWSiLfFCSCmZ4OIN1xLVaqBHG5cGdZlXPU8Sv13WF qUITVuwhd4GTWgzqltlJyqEI8pc7bZsEGCREjnwB8twl2F6GmrE52/WRMmrRpnCK ovfepEWFJqgejF0pW8hL2JpqA15w8oVPbEtoL8pU9ozaMv7Da4M/OMZ+ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFkDCCA3igAwIBAgIQBZsbV56OITLiOQe9p3d1XDANBgkqhkiG9w0BAQwFADBi MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3 d3cuZGlnaWNlcnQuY29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3Qg RzQwHhcNMTMwODAxMTIwMDAwWhcNMzgwMTE1MTIwMDAwWjBiMQswCQYDVQQGEwJV UzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNlcnQu Y29tMSEwHwYDVQQDExhEaWdpQ2VydCBUcnVzdGVkIFJvb3QgRzQwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQC/5pBzaN675F1KPDAiMGkz7MKnJS7JIT3y ithZwuEppz1Yq3aaza57G4QNxDAf8xukOBbrVsaXbR2rsnnyyhHS5F/WBTxSD1If xp4VpX6+n6lXFllVcq9ok3DCsrp1mWpzMpTREEQQLt+C8weE5nQ7bXHiLQwb7iDV ySAdYyktzuxeTsiT+CFhmzTrBcZe7FsavOvJz82sNEBfsXpm7nfISKhmV1efVFiO DCu3T6cw2Vbuyntd463JT17lNecxy9qTXtyOj4DatpGYQJB5w3jHtrHEtWoYOAMQ jdjUN6QuBX2I9YI+EJFwq1WCQTLX2wRzKm6RAXwhTNS8rhsDdV14Ztk6MUSaM0C/ CNdaSaTC5qmgZ92kJ7yhTzm1EVgX9yRcRo9k98FpiHaYdj1ZXUJ2h4mXaXpI8OCi EhtmmnTK3kse5w5jrubU75KSOp493ADkRSWJtppEGSt+wJS00mFt6zPZxd9LBADM fRyVw4/3IbKyEbe7f/LVjHAsQWCqsWMYRJUadmJ+9oCw++hkpjPRiQfhvbfmQ6QY uKZ3AeEPlAwhHbJUKSWJbOUOUlFHdL4mrLZBdd56rF+NP8m800ERElvlEFDrMcXK chYiCd98THU/Y+whX8QgUWtvsauGi0/C1kVfnSD8oR7FwI+isX4KJpn15GkvmB0t 9dmpsh3lGwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB hjAdBgNVHQ4EFgQU7NfjgtJxXWRM3y5nP+e6mK4cD08wDQYJKoZIhvcNAQEMBQAD ggIBALth2X2pbL4XxJEbw6GiAI3jZGgPVs93rnD5/ZpKmbnJeFwMDF/k5hQpVgs2 SV1EY+CtnJYYZhsjDT156W1r1lT40jzBQ0CuHVD1UvyQO7uYmWlrx8GnqGikJ9yd +SeuMIW59mdNOj6PWTkiU0TryF0Dyu1Qen1iIQqAyHNm0aAFYF/opbSnr6j3bTWc fFqK1qI4mfN4i/RN0iAL3gTujJtHgXINwBQy7zBZLq7gcfJW5GqXb5JQbZaNaHqa sjYUegbyJLkJEVDXCLG4iXqEI2FCKeWjzaIgQdfRnGTZ6iahixTXTBmyUEFxPT9N cCOGDErcgdLMMpSEDQgJlxxPwO5rIHQw0uA5NBCFIRUBCOhVMt5xSdkoF1BN5r5N 0XWs0Mr7QbhDparTwwVETyw2m+L64kW4I1NsBm9nVX9GtUw/bihaeSbSpKhil9Ie 4u1Ki7wb/UdKDd9nZn6yW0HQO+T0O/QEY+nvwlQAUaCKKsnOeMzV6ocEGLPOr0mI r/OSmbaz5mEP0oUA51Aa5BuVnRmhuZyxm7EAHu/QD09CbMkKvO5D+jpxpchNJqU1 /YldvIViHTLSoCtU7ZpXwdv6EM8Zt4tKG48BtieVU+i2iW1bvGjUI+iLUaJW+fCm gKDWHrO8Dw9TdSmq6hN35N6MgSGtBxBHEa2HPQfRdbzP82Z+ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFiDCCA3CgAwIBAgIIfQmX/vBH6nowDQYJKoZIhvcNAQELBQAwYjELMAkGA1UE BhMCQ04xMjAwBgNVBAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZ IENPLixMVEQuMR8wHQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMB4XDTE0 MTEyNjA1MTMxNVoXDTQwMTIzMTE1NTk1OVowYjELMAkGA1UEBhMCQ04xMjAwBgNV BAoMKUdVQU5HIERPTkcgQ0VSVElGSUNBVEUgQVVUSE9SSVRZIENPLixMVEQuMR8w HQYDVQQDDBZHRENBIFRydXN0QVVUSCBSNSBST09UMIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEA2aMW8Mh0dHeb7zMNOwZ+Vfy1YI92hhJCfVZmPoiC7XJj Dp6L3TQsAlFRwxn9WVSEyfFrs0yw6ehGXTjGoqcuEVe6ghWinI9tsJlKCvLriXBj TnnEt1u9ol2x8kECK62pOqPseQrsXzrj/e+APK00mxqriCZ7VqKChh/rNYmDf1+u KU49tm7srsHwJ5uu4/Ts765/94Y9cnrrpftZTqfrlYwiOXnhLQiPzLyRuEH3FMEj qcOtmkVEs7LXLM3GKeJQEK5cy4KOFxg2fZfmiJqwTTQJ9Cy5WmYqsBebnh52nUpm MUHfP/vFBu8btn4aRjb3ZGM74zkYI+dndRTVdVeSN72+ahsmUPI2JgaQxXABZG12 ZuGR224HwGGALrIuL4xwp9E7PLOR5G62xDtw8mySlwnNR30YwPO7ng/Wi64HtloP zgsMR6flPri9fcebNaBhlzpBdRfMK5Z3KpIhHtmVdiBnaM8Nvd/WHwlqmuLMc3Gk L30SgLdTMEZeS1SZD2fJpcjyIMGC7J0R38IC+xo70e0gmu9lZJIQDSri3nDxGGeC jGHeuLzRL5z7D9Ar7Rt2ueQ5Vfj4oR24qoAATILnsn8JuLwwoC8N9VKejveSswoA HQBUlwbgsQfZxw9cZX08bVlX5O2ljelAU58VS6Bx9hoh49pwBiFYFIeFd3mqgnkC AwEAAaNCMEAwHQYDVR0OBBYEFOLJQJ9NzuiaoXzPDj9lxSmIahlRMA8GA1UdEwEB /wQFMAMBAf8wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQDRSVfg p8xoWLoBDysZzY2wYUWsEe1jUGn4H3++Fo/9nesLqjJHdtJnJO29fDMylyrHBYZm DRd9FBUb1Ov9H5r2XpdptxolpAqzkT9fNqyL7FeoPueBihhXOYV0GkLH6VsTX4/5 COmSdI31R9KrO9b7eGZONn356ZLpBN79SWP8bfsUcZNnL0dKt7n/HipzcEYwv1ry L3ml4Y0M2fmyYzeMN2WFcGpcWwlyua1jPLHd+PwyvzeG5LuOmCd+uh8W4XAR8gPf JWIyJyYYMoSf/wA6E7qaTfRPuBRwIrHKK5DOKcFw9C+df/KQHtZa37dG/OaG+svg IHZ6uqbL9XzeYqWxi+7egmaKTjowHz+Ay60nugxe19CxVsp3cbK1daFQqUBDF8Io 2c9Si1vIY9RCPqAzekYu9wogRlR+ak8x8YF+QnQ4ZXMn7sZ8uI7XpTrXmKGcjBBV 09tL7ECQ8s1uV9JiDnxXk7Gnbc2dg7sq5+W2O3FYrf3RRbxake5TFW/TRQl1brqQ XR4EzzffHqhmsYzmIGrv/EhOdJhCrylvLmrH+33RZjEizIYAfmaDDEL0vTSSwxrq T8p+ck0LcIymSLumoRT2+1hEmRSuqguTaaApJUqlyyvdimYHFngVV3Eb7PVHhPOe MTd61X8kreS8/f3MboPoDKi3QWwH3b08hpcv0g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFVzCCAz+gAwIBAgINAgPlk28xsBNJiGuiFzANBgkqhkiG9w0BAQwFADBHMQsw CQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEU MBIGA1UEAxMLR1RTIFJvb3QgUjEwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAw MDAwWjBHMQswCQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZp Y2VzIExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjEwggIiMA0GCSqGSIb3DQEBAQUA A4ICDwAwggIKAoICAQC2EQKLHuOhd5s73L+UPreVp0A8of2C+X0yBoJx9vaMf/vo 27xqLpeXo4xL+Sv2sfnOhB2x+cWX3u+58qPpvBKJXqeqUqv4IyfLpLGcY9vXmX7w Cl7raKb0xlpHDU0QM+NOsROjyBhsS+z8CZDfnWQpJSMHobTSPS5g4M/SCYe7zUjw TcLCeoiKu7rPWRnWr4+wB7CeMfGCwcDfLqZtbBkOtdh+JhpFAz2weaSUKK0Pfybl qAj+lug8aJRT7oM6iCsVlgmy4HqMLnXWnOunVmSPlk9orj2XwoSPwLxAwAtcvfaH szVsrBhQf4TgTM2S0yDpM7xSma8ytSmzJSq0SPly4cpk9+aCEI3oncKKiPo4Zor8 Y/kB+Xj9e1x3+naH+uzfsQ55lVe0vSbv1gHR6xYKu44LtcXFilWr06zqkUspzBmk MiVOKvFlRNACzqrOSbTqn3yDsEB750Orp2yjj32JgfpMpf/VjsPOS+C12LOORc92 wO1AK/1TD7Cn1TsNsYqiA94xrcx36m97PtbfkSIS5r762DL8EGMUUXLeXdYWk70p aDPvOmbsB4om3xPXV2V4J95eSRQAogB/mqghtqmxlbCluQ0WEdrHbEg8QOB+DVrN VjzRlwW5y0vtOUucxD/SVRNuJLDWcfr0wbrM7Rv1/oFB2ACYPTrIrnqYNxgFlQID AQABo0IwQDAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4E FgQU5K8rJnEaK0gnhS9SZizv8IkTcT4wDQYJKoZIhvcNAQEMBQADggIBAJ+qQibb C5u+/x6Wki4+omVKapi6Ist9wTrYggoGxval3sBOh2Z5ofmmWJyq+bXmYOfg6LEe QkEzCzc9zolwFcq1JKjPa7XSQCGYzyI0zzvFIoTgxQ6KfF2I5DUkzps+GlQebtuy h6f88/qBVRRiClmpIgUxPoLW7ttXNLwzldMXG+gnoot7TiYaelpkttGsN/H9oPM4 7HLwEXWdyzRSjeZ2axfG34arJ45JK3VmgRAhpuo+9K4l/3wV3s6MJT/KYnAK9y8J ZgfIPxz88NtFMN9iiMG1D53Dn0reWVlHxYciNuaCp+0KueIHoI17eko8cdLiA6Ef MgfdG+RCzgwARWGAtQsgWSl4vflVy2PFPEz0tv/bal8xa5meLMFrUKTX5hgUvYU/ Z6tGn6D/Qqc6f1zLXbBwHSs09dR2CQzreExZBfMzQsNhFRAbd03OIozUhfJFfbdT 6u9AWpQKXCBfTkBdYiJ23//OYb2MI3jSNwLgjt7RETeJ9r/tSQdirpLsQBqvFAnZ 0E6yove+7u7Y/9waLd64NnHi/Hm3lCXRSHNboTXns5lndcEZOitHTtNCjv0xyBZm 2tIMPNuzjsmhDYAPexZ3FL//2wmUspO8IFgV6dtxQ/PeEMMA3KgqlbbC1j+Qa3bb bP6MvPJwNQzcmRk13NfIRmPVNnGuV/u3gm3c -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICCTCCAY6gAwIBAgINAgPluILrIPglJ209ZjAKBggqhkjOPQQDAzBHMQswCQYD VQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIG A1UEAxMLR1RTIFJvb3QgUjMwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAw WjBHMQswCQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2Vz IExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjMwdjAQBgcqhkjOPQIBBgUrgQQAIgNi AAQfTzOHMymKoYTey8chWEGJ6ladK0uFxh1MJ7x/JlFyb+Kf1qPKzEUURout736G jOyxfi//qXGdGIRFBEFVbivqJn+7kAHjSxm65FSWRQmx1WyRRK2EE46ajA2ADDL2 4CejQjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW BBTB8Sa6oC2uhYHP0/EqEr24Cmf9vDAKBggqhkjOPQQDAwNpADBmAjEA9uEglRR7 VKOQFhG/hMjqb2sXnh5GmCCbn9MN2azTL818+FsuVbu/3ZL3pAzcMeGiAjEA/Jdm ZuVDFhOD3cffL74UOO0BzrEXGhF16b0DjyZ+hOXJYKaV11RZt+cRLInUue4X -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICCTCCAY6gAwIBAgINAgPlwGjvYxqccpBQUjAKBggqhkjOPQQDAzBHMQswCQYD VQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2VzIExMQzEUMBIG A1UEAxMLR1RTIFJvb3QgUjQwHhcNMTYwNjIyMDAwMDAwWhcNMzYwNjIyMDAwMDAw WjBHMQswCQYDVQQGEwJVUzEiMCAGA1UEChMZR29vZ2xlIFRydXN0IFNlcnZpY2Vz IExMQzEUMBIGA1UEAxMLR1RTIFJvb3QgUjQwdjAQBgcqhkjOPQIBBgUrgQQAIgNi AATzdHOnaItgrkO4NcWBMHtLSZ37wWHO5t5GvWvVYRg1rkDdc/eJkTBa6zzuhXyi QHY7qca4R9gq55KRanPpsXI5nymfopjTX15YhmUPoYRlBtHci8nHc8iMai/lxKvR HYqjQjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW BBSATNbrdP9JNqPV2Py1PsVq8JQdjDAKBggqhkjOPQQDAwNpADBmAjEA6ED/g94D 9J+uHXqnLrmvT/aDHQ4thQEd0dlq7A/Cr8deVl5c1RxYIigL9zC2L7F8AjEA8GE8 p/SgguMh1YQdc4acLa/KNJvxn7kjNuK8YAOdgLOaVsjh4rsUecrNIdSUtUlD -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIB3DCCAYOgAwIBAgINAgPlfvU/k/2lCSGypjAKBggqhkjOPQQDAjBQMSQwIgYD VQQLExtHbG9iYWxTaWduIEVDQyBSb290IENBIC0gUjQxEzARBgNVBAoTCkdsb2Jh bFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMTIxMTEzMDAwMDAwWhcNMzgw MTE5MDMxNDA3WjBQMSQwIgYDVQQLExtHbG9iYWxTaWduIEVDQyBSb290IENBIC0g UjQxEzARBgNVBAoTCkdsb2JhbFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wWTAT BgcqhkjOPQIBBggqhkjOPQMBBwNCAAS4xnnTj2wlDp8uORkcA6SumuU5BwkWymOx uYb4ilfBV85C+nOh92VC/x7BALJucw7/xyHlGKSq2XE/qNS5zowdo0IwQDAOBgNV HQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUVLB7rUW44kB/ +wpu+74zyTyjhNUwCgYIKoZIzj0EAwIDRwAwRAIgIk90crlgr/HmnKAWBVBfw147 bmF0774BxL4YSFlhgjICICadVGNA3jdgUM/I2O2dgq43mLyjj0xMqTQrbO/7lZsm -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICHjCCAaSgAwIBAgIRYFlJ4CYuu1X5CneKcflK2GwwCgYIKoZIzj0EAwMwUDEk MCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBDQSAtIFI1MRMwEQYDVQQKEwpH bG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWduMB4XDTEyMTExMzAwMDAwMFoX DTM4MDExOTAzMTQwN1owUDEkMCIGA1UECxMbR2xvYmFsU2lnbiBFQ0MgUm9vdCBD QSAtIFI1MRMwEQYDVQQKEwpHbG9iYWxTaWduMRMwEQYDVQQDEwpHbG9iYWxTaWdu MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAER0UOlvt9Xb/pOdEh+J8LttV7HpI6SFkc 8GIxLcB6KP4ap1yztsyX50XUWPrRd21DosCHZTQKH3rd6zwzocWdTaRvQZU4f8ke hOvRnkmSh5SHDDqFSmafnVmTTZdhBoZKo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYD VR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUPeYpSJvqB8ohREom3m7e0oPQn1kwCgYI KoZIzj0EAwMDaAAwZQIxAOVpEslu28YxuglB4Zf4+/2a4n0Sye18ZNPLBSWLVtmg 515dTguDnFt2KaAJJiFqYgIwcdK1j1zqO+F4CYWodZI7yFz9SO8NdCKoCOJuxUnO xwy8p2Fp8fc74SrL+SvzZpA3 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDXzCCAkegAwIBAgILBAAAAAABIVhTCKIwDQYJKoZIhvcNAQELBQAwTDEgMB4G A1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjMxEzARBgNVBAoTCkdsb2JhbFNp Z24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMDkwMzE4MTAwMDAwWhcNMjkwMzE4 MTAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSMzETMBEG A1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBAMwldpB5BngiFvXAg7aEyiie/QV2EcWtiHL8 RgJDx7KKnQRfJMsuS+FggkbhUqsMgUdwbN1k0ev1LKMPgj0MK66X17YUhhB5uzsT gHeMCOFJ0mpiLx9e+pZo34knlTifBtc+ycsmWQ1z3rDI6SYOgxXG71uL0gRgykmm KPZpO/bLyCiR5Z2KYVc3rHQU3HTgOu5yLy6c+9C7v/U9AOEGM+iCK65TpjoWc4zd QQ4gOsC0p6Hpsk+QLjJg6VfLuQSSaGjlOCZgdbKfd/+RFO+uIEn8rUAVSNECMWEZ XriX7613t2Saer9fwRPvm2L7DWzgVGkWqQPabumDk3F2xmmFghcCAwEAAaNCMEAw DgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFI/wS3+o LkUkrk1Q+mOai97i3Ru8MA0GCSqGSIb3DQEBCwUAA4IBAQBLQNvAUKr+yAzv95ZU RUm7lgAJQayzE4aGKAczymvmdLm6AC2upArT9fHxD4q/c2dKg8dEe3jgr25sbwMp jjM5RcOO5LlXbKr8EpbsU8Yt5CRsuZRj+9xTaGdWPoO4zzUhw8lo/s7awlOqzJCK 6fBdRoyV3XpYKBovHd7NADdBj+1EbddTKJd+82cEHhXXipa0095MJ6RMG3NzdvQX mcIfeg7jLQitChws/zyrVQ4PkX4268NXSb7hLi18YIvDQVETI53O9zJrlAGomecs Mx86OyXShkDOOyyGeMlhLxS67ttVb9+E7gUJTb0o2HLO02JQZR7rkpeDMdmztcpH WD9f -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFgzCCA2ugAwIBAgIORea7A4Mzw4VlSOb/RVEwDQYJKoZIhvcNAQEMBQAwTDEg MB4GA1UECxMXR2xvYmFsU2lnbiBSb290IENBIC0gUjYxEzARBgNVBAoTCkdsb2Jh bFNpZ24xEzARBgNVBAMTCkdsb2JhbFNpZ24wHhcNMTQxMjEwMDAwMDAwWhcNMzQx MjEwMDAwMDAwWjBMMSAwHgYDVQQLExdHbG9iYWxTaWduIFJvb3QgQ0EgLSBSNjET MBEGA1UEChMKR2xvYmFsU2lnbjETMBEGA1UEAxMKR2xvYmFsU2lnbjCCAiIwDQYJ KoZIhvcNAQEBBQADggIPADCCAgoCggIBAJUH6HPKZvnsFMp7PPcNCPG0RQssgrRI xutbPK6DuEGSMxSkb3/pKszGsIhrxbaJ0cay/xTOURQh7ErdG1rG1ofuTToVBu1k ZguSgMpE3nOUTvOniX9PeGMIyBJQbUJmL025eShNUhqKGoC3GYEOfsSKvGRMIRxD aNc9PIrFsmbVkJq3MQbFvuJtMgamHvm566qjuL++gmNQ0PAYid/kD3n16qIfKtJw LnvnvJO7bVPiSHyMEAc4/2ayd2F+4OqMPKq0pPbzlUoSB239jLKJz9CgYXfIWHSw 1CM69106yqLbnQneXUQtkPGBzVeS+n68UARjNN9rkxi+azayOeSsJDa38O+2HBNX k7besvjihbdzorg1qkXy4J02oW9UivFyVm4uiMVRQkQVlO6jxTiWm05OWgtH8wY2 SXcwvHE35absIQh1/OZhFj931dmRl4QKbNQCTXTAFO39OfuD8l4UoQSwC+n+7o/h bguyCLNhZglqsQY6ZZZZwPA1/cnaKI0aEYdwgQqomnUdnjqGBQCe24DWJfncBZ4n WUx2OVvq+aWh2IMP0f/fMBH5hc8zSPXKbWQULHpYT9NLCEnFlWQaYw55PfWzjMpY rZxCRXluDocZXFSxZba/jJvcE+kNb7gu3GduyYsRtYQUigAZcIN5kZeR1Bonvzce MgfYFGM8KEyvAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTAD AQH/MB0GA1UdDgQWBBSubAWjkxPioufi1xzWx/B/yGdToDAfBgNVHSMEGDAWgBSu bAWjkxPioufi1xzWx/B/yGdToDANBgkqhkiG9w0BAQwFAAOCAgEAgyXt6NH9lVLN nsAEoJFp5lzQhN7craJP6Ed41mWYqVuoPId8AorRbrcWc+ZfwFSY1XS+wc3iEZGt Ixg93eFyRJa0lV7Ae46ZeBZDE1ZXs6KzO7V33EByrKPrmzU+sQghoefEQzd5Mr61 55wsTLxDKZmOMNOsIeDjHfrYBzN2VAAiKrlNIC5waNrlU/yDXNOd8v9EDERm8tLj vUYAGm0CuiVdjaExUd1URhxN25mW7xocBFymFe944Hn+Xds+qkxV/ZoVqW/hpvvf cDDpw+5CRu3CkwWJ+n1jez/QcYF8AOiYrg54NMMl+68KnyBr3TsTjxKM4kEaSHpz oHdpx7Zcf4LIHv5YGygrqGytXm3ABdJ7t+uA/iU3/gKbaKxCXcPu9czc8FB10jZp nOZ7BN9uBmm23goJSFmH63sUYHpkqmlD75HHTOwY3WzvUy2MmeFe8nI+z1TIvWfs pA9MRf/TuTAjB0yPEL+GltmZWrSZVxykzLsViVO6LAUP5MSeGbEYNNVMnbrt9x+v JJUEeKgDu+6B5dpffItKoZB0JaezPkvILFa9x8jvOOJckvB595yEunQtYQEgfn7R 8k8HWV+LLUNS60YMlOH1Zkd5d9VUWx+tJDfLRVpOoERIyNiwmcUVhAn21klJwGW4 5hpxbqCo8YLoRT5s1gLXCmeDBVrJpBA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICCzCCAZGgAwIBAgISEdK7ujNu1LzmJGjFDYQdmOhDMAoGCCqGSM49BAMDMEYx CzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRwwGgYDVQQD ExNHbG9iYWxTaWduIFJvb3QgRTQ2MB4XDTE5MDMyMDAwMDAwMFoXDTQ2MDMyMDAw MDAwMFowRjELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYtc2Ex HDAaBgNVBAMTE0dsb2JhbFNpZ24gUm9vdCBFNDYwdjAQBgcqhkjOPQIBBgUrgQQA IgNiAAScDrHPt+ieUnd1NPqlRqetMhkytAepJ8qUuwzSChDH2omwlwxwEwkBjtjq R+q+soArzfwoDdusvKSGN+1wCAB16pMLey5SnCNoIwZD7JIvU4Tb+0cUB+hflGdd yXqBPCCjQjBAMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1Ud DgQWBBQxCpCPtsad0kRLgLWi5h+xEk8blTAKBggqhkjOPQQDAwNoADBlAjEA31SQ 7Zvvi5QCkxeCmb6zniz2C5GMn0oUsfZkvLtoURMMA/cVi4RguYv/Uo7njLwcAjA8 +RHUjE7AwWHCFUyqqx0LMV87HOIAl0Qx5v5zli/altP+CAezNIm8BZ/3Hobui3A= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWjCCA0KgAwIBAgISEdK7udcjGJ5AXwqdLdDfJWfRMA0GCSqGSIb3DQEBDAUA MEYxCzAJBgNVBAYTAkJFMRkwFwYDVQQKExBHbG9iYWxTaWduIG52LXNhMRwwGgYD VQQDExNHbG9iYWxTaWduIFJvb3QgUjQ2MB4XDTE5MDMyMDAwMDAwMFoXDTQ2MDMy MDAwMDAwMFowRjELMAkGA1UEBhMCQkUxGTAXBgNVBAoTEEdsb2JhbFNpZ24gbnYt c2ExHDAaBgNVBAMTE0dsb2JhbFNpZ24gUm9vdCBSNDYwggIiMA0GCSqGSIb3DQEB AQUAA4ICDwAwggIKAoICAQCsrHQy6LNl5brtQyYdpokNRbopiLKkHWPd08EsCVeJ OaFV6Wc0dwxu5FUdUiXSE2te4R2pt32JMl8Nnp8semNgQB+msLZ4j5lUlghYruQG vGIFAha/r6gjA7aUD7xubMLL1aa7DOn2wQL7Id5m3RerdELv8HQvJfTqa1VbkNud 316HCkD7rRlr+/fKYIje2sGP1q7Vf9Q8g+7XFkyDRTNrJ9CG0Bwta/OrffGFqfUo 0q3v84RLHIf8E6M6cqJaESvWJ3En7YEtbWaBkoe0G1h6zD8K+kZPTXhc+CtI4wSE y132tGqzZfxCnlEmIyDLPRT5ge1lFgBPGmSXZgjPjHvjK8Cd+RTyG/FWaha/LIWF zXg4mutCagI0GIMXTpRW+LaCtfOW3T3zvn8gdz57GSNrLNRyc0NXfeD412lPFzYE +cCQYDdF3uYM2HSNrpyibXRdQr4G9dlkbgIQrImwTDsHTUB+JMWKmIJ5jqSngiCN I/onccnfxkF0oE32kRbcRoxfKWMxWXEM2G/CtjJ9++ZdU6Z+Ffy7dXxd7Pj2Fxzs x2sZy/N78CsHpdlseVR2bJ0cpm4O6XkMqCNqo98bMDGfsVR7/mrLZqrcZdCinkqa ByFrgY/bxFn63iLABJzjqls2k+g9vXqhnQt2sQvHnf3PmKgGwvgqo6GDoLclcqUC 4wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAdBgNV HQ4EFgQUA1yrc4GHqMywptWU4jaWSf8FmSwwDQYJKoZIhvcNAQEMBQADggIBAHx4 7PYCLLtbfpIrXTncvtgdokIzTfnvpCo7RGkerNlFo048p9gkUbJUHJNOxO97k4Vg JuoJSOD1u8fpaNK7ajFxzHmuEajwmf3lH7wvqMxX63bEIaZHU1VNaL8FpO7XJqti 2kM3S+LGteWygxk6x9PbTZ4IevPuzz5i+6zoYMzRx6Fcg0XERczzF2sUyQQCPtIk pnnpHs6i58FZFZ8d4kuaPp92CC1r2LpXFNqD6v6MVenQTqnMdzGxRBF6XLE+0xRF FRhiJBPSy03OXIPBNvIQtQ6IbbjhVp+J3pZmOUdkLG5NrmJ7v2B0GbhWrJKsFjLt rWhV/pi60zTe9Mlhww6G9kuEYO4Ne7UyWHmRVSyBQ7N0H3qqJZ4d16GLuc1CLgSk ZoNNiTW2bKg2SnkheCLQQrzRQDGQob4Ez8pn7fXwgNNgyYMqIgXQBztSvwyeqiv5 u+YfjyW6hY0XHgL+XVAEV8/+LbzvXMAaq7afJMbfc2hIkCwU9D9SGuTSyxTDYWnP 4vkYxboznxSjBF25cfe1lNj2M8FawTSLfJvdkzrnE6JwYZ+vj+vYxXX4M2bUdGc6 N3ec592kD3ZDZopD8p/7DEJ4Y9HiD2971KE9dJeFt0g5QdYg/NA6s/rob8SKunE3 vouXsXgxT7PntgMTzlSdriVZzH81Xwj3QEUxeCp6 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIBADANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAwMFoXDTM3MTIzMTIz NTk1OVowgYMxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjExMC8GA1UE AxMoR28gRGFkZHkgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIw DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAL9xYgjx+lk09xvJGKP3gElY6SKD E6bFIEMBO4Tx5oVJnyfq9oQbTqC023CYxzIBsQU+B07u9PpPL1kwIuerGVZr4oAH /PMWdYA5UXvl+TW2dE6pjYIT5LY/qQOD+qK+ihVqf94Lw7YZFAXK6sOoBJQ7Rnwy DfMAZiLIjWltNowRGLfTshxgtDj6AozO091GB94KPutdfMh8+7ArU6SSYmlRJQVh GkSBjCypQ5Yj36w6gZoOKcUcqeldHraenjAKOc7xiID7S13MMuyFYkMlNAJWJwGR tDtwKj9useiciAF9n9T521NtYJ2/LOdYq7hfRvzOxBsDPAnrSTFcaUaz4EcCAwEA AaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYE FDqahQcQZyi27/a9BUFuIMGU2g/eMA0GCSqGSIb3DQEBCwUAA4IBAQCZ21151fmX WWcDYfF+OwYxdS2hII5PZYe096acvNjpL9DbWu7PdIxztDhC2gV7+AJ1uP2lsdeu 9tfeE8tTEH6KRtGX+rcuKxGrkLAngPnon1rpN5+r5N9ss4UXnT3ZJE95kTXWXwTr gIOrmgIttRD02JDHBHNA7XIloKmf7J6raBKZV8aPEjoJpL1E/QYVN8Gb5DKj7Tjo 2GTzLH4U/ALqn83/B2gX2yKQOC16jdFU8WnjXzPKej17CuPKf1855eJ1usV2GDPO LPAvTK33sefOT6jEm0pUBsV/fdUID+Ic/n4XuKxe9tQWskMJDE32p2u0mYRlynqI 4uJEvlz36hz1 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICVDCCAdugAwIBAgIQZ3SdjXfYO2rbIvT/WeK/zjAKBggqhkjOPQQDAzBsMQsw CQYDVQQGEwJHUjE3MDUGA1UECgwuSGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJlc2Vh cmNoIEluc3RpdHV0aW9ucyBDQTEkMCIGA1UEAwwbSEFSSUNBIFRMUyBFQ0MgUm9v dCBDQSAyMDIxMB4XDTIxMDIxOTExMDExMFoXDTQ1MDIxMzExMDEwOVowbDELMAkG A1UEBhMCR1IxNzA1BgNVBAoMLkhlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJj aCBJbnN0aXR1dGlvbnMgQ0ExJDAiBgNVBAMMG0hBUklDQSBUTFMgRUNDIFJvb3Qg Q0EgMjAyMTB2MBAGByqGSM49AgEGBSuBBAAiA2IABDgI/rGgltJ6rK9JOtDA4MM7 KKrxcm1lAEeIhPyaJmuqS7psBAqIXhfyVYf8MLA04jRYVxqEU+kw2anylnTDUR9Y STHMmE5gEYd103KUkE+bECUqqHgtvpBBWJAVcqeht6NCMEAwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUyRtTgRL+BNUW0aq8mm+3oJUZbsowDgYDVR0PAQH/BAQD AgGGMAoGCCqGSM49BAMDA2cAMGQCMBHervjcToiwqfAircJRQO9gcS3ujwLEXQNw SaSS6sUUiHCm0w2wqsosQJz76YJumgIwK0eaB8bRwoF8yguWGEEbo/QwCZ61IygN nxS2PFOiTAZpffpskcYqSUXm7LcT4Tps -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFpDCCA4ygAwIBAgIQOcqTHO9D88aOk8f0ZIk4fjANBgkqhkiG9w0BAQsFADBs MQswCQYDVQQGEwJHUjE3MDUGA1UECgwuSGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl c2VhcmNoIEluc3RpdHV0aW9ucyBDQTEkMCIGA1UEAwwbSEFSSUNBIFRMUyBSU0Eg Um9vdCBDQSAyMDIxMB4XDTIxMDIxOTEwNTUzOFoXDTQ1MDIxMzEwNTUzN1owbDEL MAkGA1UEBhMCR1IxNzA1BgNVBAoMLkhlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNl YXJjaCBJbnN0aXR1dGlvbnMgQ0ExJDAiBgNVBAMMG0hBUklDQSBUTFMgUlNBIFJv b3QgQ0EgMjAyMTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAIvC569l mwVnlskNJLnQDmT8zuIkGCyEf3dRywQRNrhe7Wlxp57kJQmXZ8FHws+RFjZiPTgE 4VGC/6zStGndLuwRo0Xua2s7TL+MjaQenRG56Tj5eg4MmOIjHdFOY9TnuEFE+2uv a9of08WRiFukiZLRgeaMOVig1mlDqa2YUlhu2wr7a89o+uOkXjpFc5gH6l8Cct4M pbOfrqkdtx2z/IpZ525yZa31MJQjB/OCFks1mJxTuy/K5FrZx40d/JiZ+yykgmvw Kh+OC19xXFyuQnspiYHLA6OZyoieC0AJQTPb5lh6/a6ZcMBaD9YThnEvdmn8kN3b LW7R8pv1GmuebxWMevBLKKAiOIAkbDakO/IwkfN4E8/BPzWr8R0RI7VDIp4BkrcY AuUR0YLbFQDMYTfBKnya4dC6s1BG7oKsnTH4+yPiAwBIcKMJJnkVU2DzOFytOOqB AGMUuTNe3QvboEUHGjMJ+E20pwKmafTCWQWIZYVWrkvL4N48fS0ayOn7H6NhStYq E613TBoYm5EPWNgGVMWX+Ko/IIqmhaZ39qb8HOLubpQzKoNQhArlT4b4UEV4AIHr W2jjJo3Me1xR9BQsQL4aYB16cmEdH2MtiKrOokWQCPxrvrNQKlr9qEgYRtaQQJKQ CoReaDH46+0N0x3GfZkYVVYnZS6NRcUk7M7jAgMBAAGjQjBAMA8GA1UdEwEB/wQF MAMBAf8wHQYDVR0OBBYEFApII6ZgpJIKM+qTW8VX6iVNvRLuMA4GA1UdDwEB/wQE AwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAPpBIqm5iFSVmewzVjIuJndftTgfvnNAU X15QvWiWkKQUEapobQk1OUAJ2vQJLDSle1mESSmXdMgHHkdt8s4cUCbjnj1AUz/3 f5Z2EMVGpdAgS1D0NTsY9FVqQRtHBmg8uwkIYtlfVUKqrFOFrJVWNlar5AWMxaja H6NpvVMPxP/cyuN+8kyIhkdGGvMA9YCRotxDQpSbIPDRzbLrLFPCU3hKTwSUQZqP JzLB5UkZv/HywouoCjkxKLR9YjYsTewfM7Z+d21+UPCfDtcRj88YxeMn/ibvBZ3P zzfF0HvaO7AWhAw6k9a+F9sPPg4ZeAnHqQJyIkv3N3a6dcSFA1pj1bF1BcK5vZSt jBWZp5N99sXzqnTPBIWUmAD04vnKJGW/4GKvyMX6ssmeVkjaef2WdhW+o45WxLM0 /L5H9MG0qPzVMIho7suuyWPEdr6sOBjhXlzPrjoiUevRi7PzKzMHVIf6tLITe7pT BGIBnfHAT+7hOtSLIBD6Alfm78ELt5BGnBkpjNxvoEppaZS3JGWg/6w/zgH7IS79 aPib8qXPMThcFarmlwDB31qlpzmq6YR/PFGoOtmUW4y/Twhx5duoXNTSpv4Ao8YW xw/ogM4cKGR0GQjTQuPOAF1/sdwTsOEFy9EgqoZ0njnnkf3/W9b3raYvAwtt41dU 63ZTGI0RmLo= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICwzCCAkqgAwIBAgIBADAKBggqhkjOPQQDAjCBqjELMAkGA1UEBhMCR1IxDzAN BgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5kIFJl c2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxRDBCBgNVBAMTO0hl bGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgRUNDIFJv b3RDQSAyMDE1MB4XDTE1MDcwNzEwMzcxMloXDTQwMDYzMDEwMzcxMlowgaoxCzAJ BgNVBAYTAkdSMQ8wDQYDVQQHEwZBdGhlbnMxRDBCBgNVBAoTO0hlbGxlbmljIEFj YWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgQ2VydC4gQXV0aG9yaXR5 MUQwQgYDVQQDEztIZWxsZW5pYyBBY2FkZW1pYyBhbmQgUmVzZWFyY2ggSW5zdGl0 dXRpb25zIEVDQyBSb290Q0EgMjAxNTB2MBAGByqGSM49AgEGBSuBBAAiA2IABJKg QehLgoRc4vgxEZmGZE4JJS+dQS8KrjVPdJWyUWRrjWvmP3CV8AVER6ZyOFB2lQJa jq4onvktTpnvLEhvTCUp6NFxW98dwXU3tNf6e3pCnGoKVlp8aQuqgAkkbH7BRqNC MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFLQi C4KZJAEOnLvkDv2/+5cgk5kqMAoGCCqGSM49BAMCA2cAMGQCMGfOFmI4oqxiRaep lSTAGiecMjvAwNW6qef4BENThe5SId6d9SWDPp5YSy/XZxMOIQIwBeF1Ad5o7Sof TUwJCA3sS61kFyjndc5FZXIhF8siQQ6ME5g4mlRtm8rifOoCWCKR -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIGCzCCA/OgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBpjELMAkGA1UEBhMCR1Ix DzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNhZGVtaWMgYW5k IFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkxQDA+BgNVBAMT N0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1dGlvbnMgUm9v dENBIDIwMTUwHhcNMTUwNzA3MTAxMTIxWhcNNDAwNjMwMTAxMTIxWjCBpjELMAkG A1UEBhMCR1IxDzANBgNVBAcTBkF0aGVuczFEMEIGA1UEChM7SGVsbGVuaWMgQWNh ZGVtaWMgYW5kIFJlc2VhcmNoIEluc3RpdHV0aW9ucyBDZXJ0LiBBdXRob3JpdHkx QDA+BgNVBAMTN0hlbGxlbmljIEFjYWRlbWljIGFuZCBSZXNlYXJjaCBJbnN0aXR1 dGlvbnMgUm9vdENBIDIwMTUwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoIC AQDC+Kk/G4n8PDwEXT2QNrCROnk8ZlrvbTkBSRq0t89/TSNTt5AA4xMqKKYx8ZEA 4yjsriFBzh/a/X0SWwGDD7mwX5nh8hKDgE0GPt+sr+ehiGsxr/CL0BgzuNtFajT0 AoAkKAoCFZVedioNmToUW/bLy1O8E00BiDeUJRtCvCLYjqOWXjrZMts+6PAQZe10 4S+nfK8nNLspfZu2zwnI5dMK/IhlZXQK3HMcXM1AsRzUtoSMTFDPaI6oWa7CJ06C ojXdFPQf/7J31Ycvqm59JCfnxssm5uX+Zwdj2EUN3TpZZTlYepKZcj2chF6IIbjV 9Cz82XBST3i4vTwri5WY9bPRaM8gFH5MXF/ni+X1NYEZN9cRCLdmvtNKzoNXADrD gfgXy5I2XdGj2HUb4Ysn6npIQf1FGQatJ5lOwXBH3bWfgVMS5bGMSF0xQxfjjMZ6 Y5ZLKTBOhE5iGV48zpeQpX8B653g+IuJ3SWYPZK2fu/Z8VFRfS0myGlZYeCsargq NhEEelC9MoS+L9xy1dcdFkfkR2YgP/SWxa+OAXqlD3pk9Q0Yh9muiNX6hME6wGko LfINaFGq46V3xqSQDqE3izEjR8EJCOtu93ib14L8hCCZSRm2Ekax+0VVFqmjZayc Bw/qa9wfLgZy7IaIEuQt218FL+TwA9MmM+eAws1CoRc0CwIDAQABo0IwQDAPBgNV HRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUcRVnyMjJvXVd ctA4GGqd83EkVAswDQYJKoZIhvcNAQELBQADggIBAHW7bVRLqhBYRjTyYtcWNl0I XtVsyIe9tC5G8jH4fOpCtZMWVdyhDBKg2mF+D1hYc2Ryx+hFjtyp8iY/xnmMsVMI M4GwVhO+5lFc2JsKT0ucVlMC6U/2DWDqTUJV6HwbISHTGzrMd/K4kPFox/la/vot 9L/J9UUbzjgQKjeKeaO04wlshYaT/4mWJ3iBj2fjRnRUjtkNaeJK9E10A/+yd+2V Z5fkscWrv2oj6NSU4kQoYsRL4vDY4ilrGnB+JGGTe08DMiUNRSQrlrRGar9KC/ea j8GsGsVn82800vpzY4zvFrCopEYq+OsS7HK07/grfoxSwIuEVPkvPuNVqNxmsdnh X9izjFk0WaSrT2y7HxjbdavYy5LNlDhhDgcGH0tGEPEVvo2FXDtKK4F5D7Rpn0lQ l033DlZdwJVqwjbDG2jJ9SrcR5q+ss7FJej6A7na+RZukYT1HCjI/CbM1xyQVqdf bzoEvM14iQuODy+jqk+iGxI9FghAD/FGTNeqewjBCvVtJ94Cj8rDtSvK6evIIVM4 pcw72Hc3MKJP2W/R8kCtQXoXxdZKNYm3QdV8hn9VTYNKpXMgwDqvkPGaJI7ZjnHK e7iG2rKPmT4dEw0SEe7Uq/DpFXYC5ODfqiAeW2GFZECpkJcNrVPSWh2HagCXZWK0 vm9qp/UsQu0yrbYhnr68 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFajCCA1KgAwIBAgIQLd2szmKXlKFD6LDNdmpeYDANBgkqhkiG9w0BAQsFADBP MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 ZC4xGzAZBgNVBAMMEkhpUEtJIFJvb3QgQ0EgLSBHMTAeFw0xOTAyMjIwOTQ2MDRa Fw0zNzEyMzExNTU5NTlaME8xCzAJBgNVBAYTAlRXMSMwIQYDVQQKDBpDaHVuZ2h3 YSBUZWxlY29tIENvLiwgTHRkLjEbMBkGA1UEAwwSSGlQS0kgUm9vdCBDQSAtIEcx MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEA9B5/UnMyDHPkvRN0o9Qw qNCuS9i233VHZvR85zkEHmpwINJaR3JnVfSl6J3VHiGh8Ge6zCFovkRTv4354twv Vcg3Px+kwJyz5HdcoEb+d/oaoDjq7Zpy3iu9lFc6uux55199QmQ5eiY29yTw1S+6 lZgRZq2XNdZ1AYDgr/SEYYwNHl98h5ZeQa/rh+r4XfEuiAU+TCK72h8q3VJGZDnz Qs7ZngyzsHeXZJzA9KMuH5UHsBffMNsAGJZMoYFL3QRtU6M9/Aes1MU3guvklQgZ KILSQjqj2FPseYlgSGDIcpJQ3AOPgz+yQlda22rpEZfdhSi8MEyr48KxRURHH+CK FgeW0iEPU8DtqX7UTuybCeyvQqww1r/REEXgphaypcXTT3OUM3ECoWqj1jOXTyFj HluP2cFeRXF3D4FdXyGarYPM+l7WjSNfGz1BryB1ZlpK9p/7qxj3ccC2HTHsOyDr y+K49a6SsvfhhEvyovKTmiKe0xRvNlS9H15ZFblzqMF8b3ti6RZsR1pl8w4Rm0bZ /W3c1pzAtH2lsN0/Vm+h+fbkEkj9Bn8SV7apI09bA8PgcSojt/ewsTu8mL3WmKgM a/aOEmem8rJY5AIJEzypuxC00jBF8ez3ABHfZfjcK0NVvxaXxA/VLGGEqnKG/uY6 fsI/fe78LxQ+5oXdUG+3Se0CAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAdBgNV HQ4EFgQU8ncX+l6o/vY9cdVouslGDDjYr7AwDgYDVR0PAQH/BAQDAgGGMA0GCSqG SIb3DQEBCwUAA4ICAQBQUfB13HAE4/+qddRxosuej6ip0691x1TPOhwEmSKsxBHi 7zNKpiMdDg1H2DfHb680f0+BazVP6XKlMeJ45/dOlBhbQH3PayFUhuaVevvGyuqc SE5XCV0vrPSltJczWNWseanMX/mF+lLFjfiRFOs6DRfQUsJ748JzjkZ4Bjgs6Fza ZsT0pPBWGTMpWmWSBUdGSquEwx4noR8RkpkndZMPvDY7l1ePJlsMu5wP1G4wB9Tc XzZoZjmDlicmisjEOf6aIW/Vcobpf2Lll07QJNBAsNB1CI69aO4I1258EHBGG3zg iLKecoaZAeO/n0kZtCW+VmWuF2PlHt/o/0elv+EmBYTksMCv5wiZqAxeJoBF1Pho L5aPruJKHJwWDBNvOIf2u8g0X5IDUXlwpt/L9ZlNec1OvFefQ05rLisY+GpzjLrF Ne85akEez3GoorKGB1s6yeHvP2UEgEcyRHCVTjFnanRbEEV16rCf0OY1/k6fi8wr kkVbbiVghUbN0aqwdmaTd5a+g744tiROJgvM7XpWGuDpWsZkrUx6AEhEL7lAuxM+ vhV4nYWBSipX3tUZQ9rbyltHhoMLP7YNdnhzeSJesYAfz77RP1YQmCuVh6EfnWQU YDksswBVLuT1sw5XxJFBAJw/6KXf6vb/yPCtbVKoF6ubYfwSUTXkJf2vqmqGOQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFzzCCA7egAwIBAgIUCBZfikyl7ADJk0DfxMauI7gcWqQwDQYJKoZIhvcNAQEL BQAwbzELMAkGA1UEBhMCSEsxEjAQBgNVBAgTCUhvbmcgS29uZzESMBAGA1UEBxMJ SG9uZyBLb25nMRYwFAYDVQQKEw1Ib25na29uZyBQb3N0MSAwHgYDVQQDExdIb25n a29uZyBQb3N0IFJvb3QgQ0EgMzAeFw0xNzA2MDMwMjI5NDZaFw00MjA2MDMwMjI5 NDZaMG8xCzAJBgNVBAYTAkhLMRIwEAYDVQQIEwlIb25nIEtvbmcxEjAQBgNVBAcT CUhvbmcgS29uZzEWMBQGA1UEChMNSG9uZ2tvbmcgUG9zdDEgMB4GA1UEAxMXSG9u Z2tvbmcgUG9zdCBSb290IENBIDMwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK AoICAQCziNfqzg8gTr7m1gNt7ln8wlffKWihgw4+aMdoWJwcYEuJQwy51BWy7sFO dem1p+/l6TWZ5Mwc50tfjTMwIDNT2aa71T4Tjukfh0mtUC1Qyhi+AViiE3CWu4mI VoBc+L0sPOFMV4i707mV78vH9toxdCim5lSJ9UExyuUmGs2C4HDaOym71QP1mbpV 9WTRYA6ziUm4ii8F0oRFKHyPaFASePwLtVPLwpgchKOesL4jpNrcyCse2m5FHomY 2vkALgbpDDtw1VAliJnLzXNg99X/NWfFobxeq81KuEXryGgeDQ0URhLj0mRiikKY vLTGCAj4/ahMZJx2Ab0vqWwzD9g/KLg8aQFChn5pwckGyuV6RmXpwtZQQS4/t+Tt bNe/JgERohYpSms0BpDsE9K2+2p20jzt8NYt3eEV7KObLyzJPivkaTv/ciWxNoZb x39ri1UbSsUgYT2uy1DhCDq+sI9jQVMwCFk8mB13umOResoQUGC/8Ne8lYePl8X+ l2oBlKN8W4UdKjk60FSh0Tlxnf0h+bV78OLgAo9uliQlLKAeLKjEiafv7ZkGL7YK TE/bosw3Gq9HhS2KX8Q0NEwA/RiTZxPRN+ZItIsGxVd7GYYKecsAyVKvQv83j+Gj Hno9UKtjBucVtT+2RTeUN7F+8kjDf8V1/peNRY8apxpyKBpADwIDAQABo2MwYTAP BgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBQXnc0e i9Y5K3DTXNSguB+wAPzFYTAdBgNVHQ4EFgQUF53NHovWOStw01zUoLgfsAD8xWEw DQYJKoZIhvcNAQELBQADggIBAFbVe27mIgHSQpsY1Q7XZiNc4/6gx5LS6ZStS6LG 7BJ8dNVI0lkUmcDrudHr9EgwW62nV3OZqdPlt9EuWSRY3GguLmLYauRwCy0gUCCk MpXRAJi70/33MvJJrsZ64Ee+bs7Lo3I6LWldy8joRTnU+kLBEUx3XZL7av9YROXr gZ6voJmtvqkBZss4HTzfQx/0TW60uhdG/H39h4F5ag0zD/ov+BS5gLNdTaqX4fnk GMX41TiMJjz98iji7lpJiCzfeT2OnpA8vUFKOt1b9pq0zj8lMH8yfaIDlNDceqFS 3m6TjRgm/VWsvY+b0s+v54Ysyx8Jb6NvqYTUc79NoXQbTiNg8swOqn+knEwlqLJm Ozj/2ZQw9nKEvmhVEA/GcywWaZMH/rFF7buiVWqw2rVKAiUnhde3t4ZEFolsgCs+ l6mc1X5VTMbeRRAc6uk7nwNT7u56AQIWeNTowr5GdogTPyK7SBIdUgC0An4hGh6c JfTzPV4e0hz5sy229zdcxsshTrD3mUcYhcErulWuBurQB7Lcq9CClnXO0lD+mefP L5/ndtFhKvshuzHQqp9HpLIiyhY6UFfEW0NnxWViA0kB60PZ2Pierc+xYw5F9KBa LJstxabArahH9CdMOA0uG0k7UvToiIMrVCjU8jVStDKDYmlkDJGcn5fqdBb9HxEG mpv0 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4 WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+ 0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ 3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5 ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq 4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICGzCCAaGgAwIBAgIQQdKd0XLq7qeAwSxs6S+HUjAKBggqhkjOPQQDAzBPMQsw CQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJuZXQgU2VjdXJpdHkgUmVzZWFyY2gg R3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBYMjAeFw0yMDA5MDQwMDAwMDBaFw00 MDA5MTcxNjAwMDBaME8xCzAJBgNVBAYTAlVTMSkwJwYDVQQKEyBJbnRlcm5ldCBT ZWN1cml0eSBSZXNlYXJjaCBHcm91cDEVMBMGA1UEAxMMSVNSRyBSb290IFgyMHYw EAYHKoZIzj0CAQYFK4EEACIDYgAEzZvVn4CDCuwJSvMWSj5cz3es3mcFDR0HttwW +1qLFNvicWDEukWVEYmO6gbf9yoWHKS5xcUy4APgHoIYOIvXRdgKam7mAHf7AlF9 ItgKbppbd9/w+kHsOdx1ymgHDB/qo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0T AQH/BAUwAwEB/zAdBgNVHQ4EFgQUfEKWrt5LSDv6kviejM9ti6lyN5UwCgYIKoZI zj0EAwMDaAAwZQIwe3lORlCEwkSHRhtFcP9Ymd70/aTSVaYgLXTWNLxBo1BfASdW tL4ndQavEi51mI38AjEAi/V3bNTIZargCyzuFJ0nN6T5U6VR5CmD1/iQMVtCnwr1 /q4AaOeMSQ+2b1tbFfLn -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYDCCA0igAwIBAgIQCgFCgAAAAUUjyES1AAAAAjANBgkqhkiG9w0BAQsFADBK MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScwJQYDVQQDEx5JZGVu VHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwHhcNMTQwMTE2MTgxMjIzWhcNMzQw MTE2MTgxMjIzWjBKMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MScw JQYDVQQDEx5JZGVuVHJ1c3QgQ29tbWVyY2lhbCBSb290IENBIDEwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQCnUBneP5k91DNG8W9RYYKyqU+PZ4ldhNlT 3Qwo2dfw/66VQ3KZ+bVdfIrBQuExUHTRgQ18zZshq0PirK1ehm7zCYofWjK9ouuU +ehcCuz/mNKvcbO0U59Oh++SvL3sTzIwiEsXXlfEU8L2ApeN2WIrvyQfYo3fw7gp S0l4PJNgiCL8mdo2yMKi1CxUAGc1bnO/AljwpN3lsKImesrgNqUZFvX9t++uP0D1 bVoE/c40yiTcdCMbXTMTEl3EASX2MN0CXZ/g1Ue9tOsbobtJSdifWwLziuQkkORi T0/Br4sOdBeo0XKIanoBScy0RnnGF7HamB4HWfp1IYVl3ZBWzvurpWCdxJ35UrCL vYf5jysjCiN2O/cz4ckA82n5S6LgTrx+kzmEB/dEcH7+B1rlsazRGMzyNeVJSQjK Vsk9+w8YfYs7wRPCTY/JTw436R+hDmrfYi7LNQZReSzIJTj0+kuniVyc0uMNOYZK dHzVWYfCP04MXFL0PfdSgvHqo6z9STQaKPNBiDoT7uje/5kdX7rL6B7yuVBgwDHT c+XvvqDtMwt0viAgxGds8AgDelWAf0ZOlqf0Hj7h9tgJ4TNkK2PXMl6f+cB7D3hv l7yTmvmcEpB4eoCHFddydJxVdHixuuFucAS6T6C6aMN7/zHwcz09lCqxC0EOoP5N iGVreTO01wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB /zAdBgNVHQ4EFgQU7UQZwNPwBovupHu+QucmVMiONnYwDQYJKoZIhvcNAQELBQAD ggIBAA2ukDL2pkt8RHYZYR4nKM1eVO8lvOMIkPkp165oCOGUAFjvLi5+U1KMtlwH 6oi6mYtQlNeCgN9hCQCTrQ0U5s7B8jeUeLBfnLOic7iPBZM4zY0+sLj7wM+x8uwt LRvM7Kqas6pgghstO8OEPVeKlh6cdbjTMM1gCIOQ045U8U1mwF10A0Cj7oV+wh93 nAbowacYXVKV7cndJZ5t+qntozo00Fl72u1Q8zW/7esUTTHHYPTa8Yec4kjixsU3 +wYQ+nVZZjFHKdp2mhzpgq7vmrlR94gjmmmVYjzlVYA211QC//G5Xc7UI2/YRYRK W2XviQzdFKcgyxilJbQN+QHwotL0AMh0jqEqSI5l2xPE4iUXfeu+h1sXIFRRk0pT AwvsXcoz7WL9RccvW9xYoIA55vrX/hMUpu09lEpCdNTDd1lzzY9GvlU47/rokTLq l1gEIt44w8y8bckzOmoKaT+gyOpyj4xjhiO9bTyWnpXgSUyqorkqG5w2gXjtw+hG 4iZZRHUe2XWJUc0QhJ1hYMtd+ZciTY6Y5uN/9lu7rs3KSoFrXgvzUeF0K+l+J6fZ mUlO+KWA2yUPHGNiiskzZ2s8EIPGrd6ozRaOjfAHN3Gf8qv8QfXBi+wAN10J5U6A 7/qxXDgGpRtK4dw4LTzcqx+QGtVKnO7RcGzM7vRX+Bi6hG6H -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFZjCCA06gAwIBAgIQCgFCgAAAAUUjz0Z8AAAAAjANBgkqhkiG9w0BAQsFADBN MQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0MSowKAYDVQQDEyFJZGVu VHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwHhcNMTQwMTE2MTc1MzMyWhcN MzQwMTE2MTc1MzMyWjBNMQswCQYDVQQGEwJVUzESMBAGA1UEChMJSWRlblRydXN0 MSowKAYDVQQDEyFJZGVuVHJ1c3QgUHVibGljIFNlY3RvciBSb290IENBIDEwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC2IpT8pEiv6EdrCvsnduTyP4o7 ekosMSqMjbCpwzFrqHd2hCa2rIFCDQjrVVi7evi8ZX3yoG2LqEfpYnYeEe4IFNGy RBb06tD6Hi9e28tzQa68ALBKK0CyrOE7S8ItneShm+waOh7wCLPQ5CQ1B5+ctMlS bdsHyo+1W/CD80/HLaXIrcuVIKQxKFdYWuSNG5qrng0M8gozOSI5Cpcu81N3uURF /YTLNiCBWS2ab21ISGHKTN9T0a9SvESfqy9rg3LvdYDaBjMbXcjaY8ZNzaxmMc3R 3j6HEDbhuaR672BQssvKplbgN6+rNBM5Jeg5ZuSYeqoSmJxZZoY+rfGwyj4GD3vw EUs3oERte8uojHH01bWRNszwFcYr3lEXsZdMUD2xlVl8BX0tIdUAvwFnol57plzy 9yLxkA2T26pEUWbMfXYD62qoKjgZl3YNa4ph+bz27nb9cCvdKTz4Ch5bQhyLVi9V GxyhLrXHFub4qjySjmm2AcG1hp2JDws4lFTo6tyePSW8Uybt1as5qsVATFSrsrTZ 2fjXctscvG29ZV/viDUqZi/u9rNl8DONfJhBaUYPQxxp+pu10GFqzcpL2UyQRqsV WaFHVCkugyhfHMKiq3IXAAaOReyL4jM9f9oZRORicsPfIsbyVtTdX5Vy7W1f90gD W/3FKqD2cyOEEBsB5wIDAQABo0IwQDAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQU43HgntinQtnbcZFrlJPrw6PRFKMwDQYJKoZIhvcN AQELBQADggIBAEf63QqwEZE4rU1d9+UOl1QZgkiHVIyqZJnYWv6IAcVYpZmxI1Qj t2odIFflAWJBF9MJ23XLblSQdf4an4EKwt3X9wnQW3IV5B4Jaj0z8yGa5hV+rVHV DRDtfULAj+7AmgjVQdZcDiFpboBhDhXAuM/FSRJSzL46zNQuOAXeNf0fb7iAaJg9 TaDKQGXSc3z1i9kKlT/YPyNtGtEqJBnZhbMX73huqVjRI9PHE+1yJX9dsXNw0H8G lwmEKYBhHfpe/3OsoOOJuBxxFcbeMX8S3OFtm6/n6J91eEyrRjuazr8FGF1NFTwW mhlQBJqymm9li1JfPFgEKCXAZmExfrngdbkaqIHWchezxQMxNRF4eKLg6TCMf4Df WN88uieW4oA0beOY02QnrEh+KHdcxiVhJfiFDGX6xDIvpZgF5PgLZxYWxoK4Mhn5 +bl53B/N66+rDt0b20XkeucC4pVd/GnwU2lhlXV5C15V5jgclKlZM57IcXR5f1GJ tshquDDIajjDbp7hNxbqBWJMWxJH7ae0s1hWx0nzfxJoCTFx8G34Tkf71oXuxVhA GaQdp/lLQzfcaFpPz+vCZHTetBXZ9FRUGi8c15dxVJCO2SCdUyt/q4/i6jC8UDfv 8Ue1fXwsBOxonbRJRBD0ckscZOf85muQ3Wl9af0AVqW3rLatt8o+Ae+c -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF8TCCA9mgAwIBAgIQALC3WhZIX7/hy/WL1xnmfTANBgkqhkiG9w0BAQsFADA4 MQswCQYDVQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6 ZW5wZS5jb20wHhcNMDcxMjEzMTMwODI4WhcNMzcxMjEzMDgyNzI1WjA4MQswCQYD VQQGEwJFUzEUMBIGA1UECgwLSVpFTlBFIFMuQS4xEzARBgNVBAMMCkl6ZW5wZS5j b20wggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDJ03rKDx6sp4boFmVq scIbRTJxldn+EFvMr+eleQGPicPK8lVx93e+d5TzcqQsRNiekpsUOqHnJJAKClaO xdgmlOHZSOEtPtoKct2jmRXagaKH9HtuJneJWK3W6wyyQXpzbm3benhB6QiIEn6H LmYRY2xU+zydcsC8Lv/Ct90NduM61/e0aL6i9eOBbsFGb12N4E3GVFWJGjMxCrFX uaOKmMPsOzTFlUFpfnXCPCDFYbpRR6AgkJOhkEvzTnyFRVSa0QUmQbC1TR0zvsQD yCV8wXDbO/QJLVQnSKwv4cSsPsjLkkxTOTcj7NMB+eAJRE1NZMDhDVqHIrytG6P+ JrUV86f8hBnp7KGItERphIPzidF0BqnMC9bC3ieFUCbKF7jJeodWLBoBHmy+E60Q rLUk9TiRodZL2vG70t5HtfG8gfZZa88ZU+mNFctKy6lvROUbQc/hhqfK0GqfvEyN BjNaooXlkDWgYlwWTvDjovoDGrQscbNYLN57C9saD+veIR8GdwYDsMnvmfzAuU8L hij+0rnq49qlw0dpEuDb8PYZi+17cNcC1u2HGCgsBCRMd+RIihrGO5rUD8r6ddIB QFqNeb+Lz0vPqhbBleStTIo+F5HUsWLlguWABKQDfo2/2n+iD5dPDNMN+9fR5XJ+ HMh3/1uaD7euBUbl8agW7EekFwIDAQABo4H2MIHzMIGwBgNVHREEgagwgaWBD2lu Zm9AaXplbnBlLmNvbaSBkTCBjjFHMEUGA1UECgw+SVpFTlBFIFMuQS4gLSBDSUYg QTAxMzM3MjYwLVJNZXJjLlZpdG9yaWEtR2FzdGVpeiBUMTA1NSBGNjIgUzgxQzBB BgNVBAkMOkF2ZGEgZGVsIE1lZGl0ZXJyYW5lbyBFdG9yYmlkZWEgMTQgLSAwMTAx MCBWaXRvcmlhLUdhc3RlaXowDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMC AQYwHQYDVR0OBBYEFB0cZQ6o8iV7tJHP5LGx5r1VdGwFMA0GCSqGSIb3DQEBCwUA A4ICAQB4pgwWSp9MiDrAyw6lFn2fuUhfGI8NYjb2zRlrrKvV9pF9rnHzP7MOeIWb laQnIUdCSnxIOvVFfLMMjlF4rJUT3sb9fbgakEyrkgPH7UIBzg/YsfqikuFgba56 awmqxinuaElnMIAkejEWOVt+8Rwu3WwJrfIxwYJOubv5vr8qhT/AQKM6WfxZSzwo JNu0FXWuDYi6LnPAvViH5ULy617uHjAimcs30cQhbIHsvm0m5hzkQiCeR7Csg1lw LDXWrzY0tM07+DKo7+N4ifuNRSzanLh+QBxh5z6ikixL8s36mLYp//Pye6kfLqCT VyvehQP5aTfLnnhqBbTFMXiJ7HqnheG5ezzevh55hM6fcA5ZwjUukCox2eRFekGk LhObNA5me0mrZJfQRsN5nXJQY6aYWwa9SG3YOYNw6DXwBdGqvOPbyALqfP2C2sJb UjWumDqtujWTI6cfSN01RpiyEGjkpTHCClguGYEQyVB1/OpaFs4R1+7vUIgtYf8/ QnMFlEPVjjxOAToZpR9GTnfQXeWBIiGH/pR9hNiTrdZoQ0iy2+tzJOeRf1SktoA+ naM8THLCV8Sg1Mw4J87VBp6iSNnpn86CcDaTmjvfliHjWbcM2pE38P1ZWrOZyGls QyYBNWNgVYkDOnXYukrZVP/u3oDYLdE41V4tC5h9Pmzb/CaIxw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIECjCCAvKgAwIBAgIJAMJ+QwRORz8ZMA0GCSqGSIb3DQEBCwUAMIGCMQswCQYD VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3ppZ25vIFJvb3QgQ0EgMjAwOTEfMB0G CSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5odTAeFw0wOTA2MTYxMTMwMThaFw0y OTEyMzAxMTMwMThaMIGCMQswCQYDVQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3Qx FjAUBgNVBAoMDU1pY3Jvc2VjIEx0ZC4xJzAlBgNVBAMMHk1pY3Jvc2VjIGUtU3pp Z25vIFJvb3QgQ0EgMjAwOTEfMB0GCSqGSIb3DQEJARYQaW5mb0BlLXN6aWduby5o dTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOn4j/NjrdqG2KfgQvvP kd6mJviZpWNwrZuuyjNAfW2WbqEORO7hE52UQlKavXWFdCyoDh2Tthi3jCyoz/tc cbna7P7ofo/kLx2yqHWH2Leh5TvPmUpG0IMZfcChEhyVbUr02MelTTMuhTlAdX4U fIASmFDHQWe4oIBhVKZsTh/gnQ4H6cm6M+f+wFUoLAKApxn1ntxVUwOXewdI/5n7 N4okxFnMUBBjjqqpGrCEGob5X7uxUG6k0QrM1XF+H6cbfPVTbiJfyyvm1HxdrtbC xkzlBQHZ7Vf8wSN5/PrIJIOV87VqUQHQd9bpEqH5GoP7ghu5sJf0dgYzQ0mg/wu1 +rUCAwEAAaOBgDB+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G A1UdDgQWBBTLD8bfQkPMPcu1SCOhGnqmKrs0aDAfBgNVHSMEGDAWgBTLD8bfQkPM Pcu1SCOhGnqmKrs0aDAbBgNVHREEFDASgRBpbmZvQGUtc3ppZ25vLmh1MA0GCSqG SIb3DQEBCwUAA4IBAQDJ0Q5eLtXMs3w+y/w9/w0olZMEyL/azXm4Q5DwpL7v8u8h mLzU1F0G9u5C7DBsoKqpyvGvivo/C3NqPuouQH4frlRheesuCDfXI/OMn74dseGk ddug4lQUsbocKaQY9hK6ohQU4zE1yED/t+AFdlfBHFny+L/k7SViXITwfn4fs775 tyERzAMBVnCnEJIeGzSBHq2cGsMEPO0CYdYeBvNfOofyK/FFh+U9rNHHV4S9a67c 2Pm2G2JwCz02yULyMtd6YebS2z3PyKnJm9zbWETXbzivf3jTo60adbocwTZ8jx5t HMN1Rq41Bab2XD0h7lbwyYIiLXpUq3DDfSJlgnCW -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICWTCCAd+gAwIBAgIQZvI9r4fei7FK6gxXMQHC7DAKBggqhkjOPQQDAzBlMQsw CQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYD VQQDEy1NaWNyb3NvZnQgRUNDIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIw MTcwHhcNMTkxMjE4MjMwNjQ1WhcNNDIwNzE4MjMxNjA0WjBlMQswCQYDVQQGEwJV UzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1NaWNy b3NvZnQgRUNDIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwdjAQBgcq hkjOPQIBBgUrgQQAIgNiAATUvD0CQnVBEyPNgASGAlEvaqiBYgtlzPbKnR5vSmZR ogPZnZH6thaxjG7efM3beaYvzrvOcS/lpaso7GMEZpn4+vKTEAXhgShC48Zo9OYb hGBKia/teQ87zvH2RPUBeMCjVDBSMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8E BTADAQH/MB0GA1UdDgQWBBTIy5lycFIM+Oa+sgRXKSrPQhDtNTAQBgkrBgEEAYI3 FQEEAwIBADAKBggqhkjOPQQDAwNoADBlAjBY8k3qDPlfXu5gKcs68tvWMoQZP3zV L8KxzJOuULsJMsbG7X7JNpQS5GiFBqIb0C8CMQCZ6Ra0DvpWSNSkMBaReNtUjGUB iudQZsIxtzm6uBoiB078a1QWIP8rtedMDE2mT3M= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFqDCCA5CgAwIBAgIQHtOXCV/YtLNHcB6qvn9FszANBgkqhkiG9w0BAQwFADBl MQswCQYDVQQGEwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYw NAYDVQQDEy1NaWNyb3NvZnQgUlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5 IDIwMTcwHhcNMTkxMjE4MjI1MTIyWhcNNDIwNzE4MjMwMDIzWjBlMQswCQYDVQQG EwJVUzEeMBwGA1UEChMVTWljcm9zb2Z0IENvcnBvcmF0aW9uMTYwNAYDVQQDEy1N aWNyb3NvZnQgUlNBIFJvb3QgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IDIwMTcwggIi MA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDKW76UM4wplZEWCpW9R2LBifOZ Nt9GkMml7Xhqb0eRaPgnZ1AzHaGm++DlQ6OEAlcBXZxIQIJTELy/xztokLaCLeX0 ZdDMbRnMlfl7rEqUrQ7eS0MdhweSE5CAg2Q1OQT85elss7YfUJQ4ZVBcF0a5toW1 HLUX6NZFndiyJrDKxHBKrmCk3bPZ7Pw71VdyvD/IybLeS2v4I2wDwAW9lcfNcztm gGTjGqwu+UcF8ga2m3P1eDNbx6H7JyqhtJqRjJHTOoI+dkC0zVJhUXAoP8XFWvLJ jEm7FFtNyP9nTUwSlq31/niol4fX/V4ggNyhSyL71Imtus5Hl0dVe49FyGcohJUc aDDv70ngNXtk55iwlNpNhTs+VcQor1fznhPbRiefHqJeRIOkpcrVE7NLP8TjwuaG YaRSMLl6IE9vDzhTyzMMEyuP1pq9KsgtsRx9S1HKR9FIJ3Jdh+vVReZIZZ2vUpC6 W6IYZVcSn2i51BVrlMRpIpj0M+Dt+VGOQVDJNE92kKz8OMHY4Xu54+OU4UZpyw4K UGsTuqwPN1q3ErWQgR5WrlcihtnJ0tHXUeOrO8ZV/R4O03QK0dqq6mm4lyiPSMQH +FJDOvTKVTUssKZqwJz58oHhEmrARdlns87/I6KJClTUFLkqqNfs+avNJVgyeY+Q W5g5xAgGwax/Dj0ApQIDAQABo1QwUjAOBgNVHQ8BAf8EBAMCAYYwDwYDVR0TAQH/ BAUwAwEB/zAdBgNVHQ4EFgQUCctZf4aycI8awznjwNnpv7tNsiMwEAYJKwYBBAGC NxUBBAMCAQAwDQYJKoZIhvcNAQEMBQADggIBAKyvPl3CEZaJjqPnktaXFbgToqZC LgLNFgVZJ8og6Lq46BrsTaiXVq5lQ7GPAJtSzVXNUzltYkyLDVt8LkS/gxCP81OC gMNPOsduET/m4xaRhPtthH80dK2Jp86519efhGSSvpWhrQlTM93uCupKUY5vVau6 tZRGrox/2KJQJWVggEbbMwSubLWYdFQl3JPk+ONVFT24bcMKpBLBaYVu32TxU5nh SnUgnZUP5NbcA/FZGOhHibJXWpS2qdgXKxdJ5XbLwVaZOjex/2kskZGT4d9Mozd2 TaGf+G0eHdP67Pv0RR0Tbc/3WeUiJ3IrhvNXuzDtJE3cfVa7o7P4NHmJweDyAmH3 pvwPuxwXC65B2Xy9J6P9LjrRk5Sxcx0ki69bIImtt2dmefU6xqaWM/5TkshGsRGR xpl/j8nWZjEgQRCHLQzWwa80mMpkg/sTV9HB8Dx6jKXB/ZUhoHHBk2dxEuqPiApp GWSZI1b7rCoucL5mxAyE7+WL85MB+GqQk2dLsmijtWKP6T+MejteD+eMuMZ87zf9 dOLITzNy4ZQ5bb0Sr74MTnB8G2+NszKTc0QWbej09+CVgI+WXTik9KveCjCHk9hN AHFiRSdLOkKEW39lt2c0Ui2cFmuqqNh7o0JMcccMyj6D5KbvtwEwXlGjefVwaaZB RA+GsCyRxj3qrg+E -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFojCCA4qgAwIBAgIUAZQwHqIL3fXFMyqxQ0Rx+NZQTQ0wDQYJKoZIhvcNAQEM BQAwaTELMAkGA1UEBhMCS1IxJjAkBgNVBAoMHU5BVkVSIEJVU0lORVNTIFBMQVRG T1JNIENvcnAuMTIwMAYDVQQDDClOQVZFUiBHbG9iYWwgUm9vdCBDZXJ0aWZpY2F0 aW9uIEF1dGhvcml0eTAeFw0xNzA4MTgwODU4NDJaFw0zNzA4MTgyMzU5NTlaMGkx CzAJBgNVBAYTAktSMSYwJAYDVQQKDB1OQVZFUiBCVVNJTkVTUyBQTEFURk9STSBD b3JwLjEyMDAGA1UEAwwpTkFWRVIgR2xvYmFsIFJvb3QgQ2VydGlmaWNhdGlvbiBB dXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQC21PGTXLVA iQqrDZBbUGOukJR0F0Vy1ntlWilLp1agS7gvQnXp2XskWjFlqxcX0TM62RHcQDaH 38dq6SZeWYp34+hInDEW+j6RscrJo+KfziFTowI2MMtSAuXaMl3Dxeb57hHHi8lE HoSTGEq0n+USZGnQJoViAbbJAh2+g1G7XNr4rRVqmfeSVPc0W+m/6imBEtRTkZaz kVrd/pBzKPswRrXKCAfHcXLJZtM0l/aM9BhK4dA9WkW2aacp+yPOiNgSnABIqKYP szuSjXEOdMWLyEz59JuOuDxp7W87UC9Y7cSw0BwbagzivESq2M0UXZR4Yb8Obtoq vC8MC3GmsxY/nOb5zJ9TNeIDoKAYv7vxvvTWjIcNQvcGufFt7QSUqP620wbGQGHf nZ3zVHbOUzoBppJB7ASjjw2i1QnK1sua8e9DXcCrpUHPXFNwcMmIpi3Ua2FzUCaG YQ5fG8Ir4ozVu53BA0K6lNpfqbDKzE0K70dpAy8i+/Eozr9dUGWokG2zdLAIx6yo 0es+nPxdGoMuK8u180SdOqcXYZaicdNwlhVNt0xz7hlcxVs+Qf6sdWA7G2POAN3a CJBitOUt7kinaxeZVL6HSuOpXgRM6xBtVNbv8ejyYhbLgGvtPe31HzClrkvJE+2K AQHJuFFYwGY6sWZLxNUxAmLpdIQM201GLQIDAQABo0IwQDAdBgNVHQ4EFgQU0p+I 36HNLL3s9TsBAZMzJ7LrYEswDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMB Af8wDQYJKoZIhvcNAQEMBQADggIBADLKgLOdPVQG3dLSLvCkASELZ0jKbY7gyKoN qo0hV4/GPnrK21HUUrPUloSlWGB/5QuOH/XcChWB5Tu2tyIvCZwTFrFsDDUIbatj cu3cvuzHV+YwIHHW1xDBE1UBjCpD5EHxzzp6U5LOogMFDTjfArsQLtk70pt6wKGm +LUx5vR1yblTmXVHIloUFcd4G7ad6Qz4G3bxhYTeodoS76TiEJd6eN4MUZeoIUCL hr0N8F5OSza7OyAfikJW4Qsav3vQIkMsRIz75Sq0bBwcupTgE34h5prCy8VCZLQe lHsIJchxzIdFV4XTnyliIoNRlwAYl3dqmJLJfGBs32x9SuRwTMKeuB330DTHD8z7 p/8Dvq1wkNoL3chtl1+afwkyQf3NosxabUzyqkn+Zvjp2DXrDige7kgvOtB5CTh8 piKCk5XQA76+AqAF3SAi428diDRgxuYKuQl1C/AH6GmWNcf7I4GOODm4RStDeKLR LBT/DShycpWbXgnbiUSYqqFJu3FS8r/2/yehNq+4tneI3TqkbZs0kNwUXTC/t+sX 5Ie3cdCh13cV1ELX8vMxmV2b3RZtP+oGI/hGoiLtk/bdmuYqh7GYVPEi92tF4+KO dh2ajcQGjTa3FPOdVGm3jjzVpG2Tgbet9r1ke8LJaDmgkpzNNIaRkPpkUZ3+/uul 9XXeifdy -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEFTCCAv2gAwIBAgIGSUEs5AAQMA0GCSqGSIb3DQEBCwUAMIGnMQswCQYDVQQG EwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFTATBgNVBAoMDE5ldExvY2sgS2Z0LjE3 MDUGA1UECwwuVGFuw7pzw610dsOhbnlraWFkw7NrIChDZXJ0aWZpY2F0aW9uIFNl cnZpY2VzKTE1MDMGA1UEAwwsTmV0TG9jayBBcmFueSAoQ2xhc3MgR29sZCkgRsWR dGFuw7pzw610dsOhbnkwHhcNMDgxMjExMTUwODIxWhcNMjgxMjA2MTUwODIxWjCB pzELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRUwEwYDVQQKDAxOZXRM b2NrIEtmdC4xNzA1BgNVBAsMLlRhbsO6c8OtdHbDoW55a2lhZMOzayAoQ2VydGlm aWNhdGlvbiBTZXJ2aWNlcykxNTAzBgNVBAMMLE5ldExvY2sgQXJhbnkgKENsYXNz IEdvbGQpIEbFkXRhbsO6c8OtdHbDoW55MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8A MIIBCgKCAQEAxCRec75LbRTDofTjl5Bu0jBFHjzuZ9lk4BqKf8owyoPjIMHj9DrT lF8afFttvzBPhCf2nx9JvMaZCpDyD/V/Q4Q3Y1GLeqVw/HpYzY6b7cNGbIRwXdrz AZAj/E4wqX7hJ2Pn7WQ8oLjJM2P+FpD/sLj916jAwJRDC7bVWaaeVtAkH3B5r9s5 VA1lddkVQZQBr17s9o3x/61k/iCa11zr/qYfCGSji3ZVrR47KGAuhyXoqq8fxmRG ILdwfzzeSNuWU7c5d+Qa4scWhHaXWy+7GRWF+GmF9ZmnqfI0p6m2pgP8b4Y9VHx2 BJtr+UBdADTHLpl1neWIA6pN+APSQnbAGwIDAKiLo0UwQzASBgNVHRMBAf8ECDAG AQH/AgEEMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUzPpnk/C2uNClwB7zU/2M U9+D15YwDQYJKoZIhvcNAQELBQADggEBAKt/7hwWqZw8UQCgwBEIBaeZ5m8BiFRh bvG5GK1Krf6BQCOUL/t1fC8oS2IkgYIL9WHxHG64YTjrgfpioTtaYtOUZcTh5m2C +C8lcLIhJsFyUR+MLMOEkMNaj7rP9KdlpeuY0fsFskZ1FSNqb4VjMIDw1Z4fKRzC bLBQWV2QWzuoDTDPv31/zvGdg73JRm4gpvlhUbohL3u+pRVjodSVh/GeufOJ8z2F uLjbvrW5KfnaNwUASZQDhETnv0Mxz3WLJdH0pmT1kvarBes96aULNmLazAZfNou2 XjG4Kvte9nHfRCaexOYNkbQudZWAUWpLMKawYqGT8ZvYzsRjdT9ZR7E= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICNTCCAbqgAwIBAgIQI/nD1jWvjyhLH/BU6n6XnTAKBggqhkjOPQQDAzBLMQsw CQYDVQQGEwJDSDEZMBcGA1UECgwQT0lTVEUgRm91bmRhdGlvbjEhMB8GA1UEAwwY T0lTVEUgU2VydmVyIFJvb3QgRUNDIEcxMB4XDTIzMDUzMTE0NDIyOFoXDTQ4MDUy NDE0NDIyN1owSzELMAkGA1UEBhMCQ0gxGTAXBgNVBAoMEE9JU1RFIEZvdW5kYXRp b24xITAfBgNVBAMMGE9JU1RFIFNlcnZlciBSb290IEVDQyBHMTB2MBAGByqGSM49 AgEGBSuBBAAiA2IABBcv+hK8rBjzCvRE1nZCnrPoH7d5qVi2+GXROiFPqOujvqQy cvO2Ackr/XeFblPdreqqLiWStukhEaivtUwL85Zgmjvn6hp4LrQ95SjeHIC6XG4N 2xml4z+cKrhAS93mT6NjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBQ3 TYhlz/w9itWj8UnATgwQb0K0nDAdBgNVHQ4EFgQUN02IZc/8PYrVo/FJwE4MEG9C tJwwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2kAMGYCMQCpKjAd0MKfkFFR QD6VVCHNFmb3U2wIFjnQEnx/Yxvf4zgAOdktUyBFCxxgZzFDJe0CMQCSia7pXGKD YmH5LVerVrkR3SW+ak5KGoJr3M/TvEqzPNcum9v4KGm8ay3sMaE641c= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFgzCCA2ugAwIBAgIQVaXZZ5Qoxu0M+ifdWwFNGDANBgkqhkiG9w0BAQwFADBL MQswCQYDVQQGEwJDSDEZMBcGA1UECgwQT0lTVEUgRm91bmRhdGlvbjEhMB8GA1UE AwwYT0lTVEUgU2VydmVyIFJvb3QgUlNBIEcxMB4XDTIzMDUzMTE0MzcxNloXDTQ4 MDUyNDE0MzcxNVowSzELMAkGA1UEBhMCQ0gxGTAXBgNVBAoMEE9JU1RFIEZvdW5k YXRpb24xITAfBgNVBAMMGE9JU1RFIFNlcnZlciBSb290IFJTQSBHMTCCAiIwDQYJ KoZIhvcNAQEBBQADggIPADCCAgoCggIBAKqu9KuCz/vlNwvn1ZatkOhLKdxVYOPM vLO8LZK55KN68YG0nnJyQ98/qwsmtO57Gmn7KNByXEptaZnwYx4M0rH/1ow00O7b rEi56rAUjtgHqSSY3ekJvqgiG1k50SeH3BzN+Puz6+mTeO0Pzjd8JnduodgsIUzk ik/HEzxux9UTl7Ko2yRpg1bTacuCErudG/L4NPKYKyqOBGf244ehHa1uzjZ0Dl4z O8vbUZeUapU8zhhabkvG/AePLhq5SvdkNCncpo1Q4Y2LS+VIG24ugBA/5J8bZT8R tOpXaZ+0AOuFJJkk9SGdl6r7NH8CaxWQrbueWhl/pIzY+m0o/DjH40ytas7ZTpOS jswMZ78LS5bOZmdTaMsXEY5Z96ycG7mOaES3GK/m5Q9l3JUJsJMStR8+lKXHiHUh sd4JJCpM4rzsTGdHwimIuQq6+cF0zowYJmXa92/GjHtoXAvuY8BeS/FOzJ8vD+Ho mnqT8eDI278n5mUpezbgMxVz8p1rhAhoKzYHKyfMeNhqhw5HdPSqoBNdZH702xSu +zrkL8Fl47l6QGzwBrd7KJvX4V84c5Ss2XCTLdyEr0YconosP4EmQufU2MVshGYR i3drVByjtdgQ8K4p92cIiBdcuJd5z+orKu5YM+Vt6SmqZQENghPsJQtdLEByFSnT kCz3GkPVavBpAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAU 8snBDw1jALvsRQ5KH7WxszbNDo0wHQYDVR0OBBYEFPLJwQ8NYwC77EUOSh+1sbM2 zQ6NMA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQwFAAOCAgEANGd5sjrG5T33 I3K5Ce+SrScfoE4KsvXaFwyihdJ+klH9FWXXXGtkFu6KRcoMQzZENdl//nk6HOjG 5D1rd9QhEOP28yBOqb6J8xycqd+8MDoX0TJD0KqKchxRKEzdNsjkLWd9kYccnbz8 qyiWXmFcuCIzGEgWUOrKL+mlSdx/PKQZvDatkuK59EvV6wit53j+F8Bdh3foZ3dP AGav9LEDOr4SfEE15fSmG0eLy3n31r8Xbk5l8PjaV8GUgeV6Vg27Rn9vkf195hfk gSe7BYhW3SCl95gtkRlpMV+bMPKZrXJAlszYd2abtNUOshD+FKrDgHGdPY3ofRRs YWSGRqbXVMW215AWRqWFyp464+YTFrYVI8ypKVL9AMb2kI5Wj4kI3Zaq5tNqqYY1 9tVFeEJKRvwDyF7YZvZFZSS0vod7VSCd9521Kvy5YhnLbDuv0204bKt7ph6N/Ome /msVuduCmsuY33OhkKCgxeDoAaijFJzIwZqsFVAzje18KotzlUBDJvyBpCpfOZC3 J8tRd/iWkx7P8nd9H0aTolkelUTFLXVksNb54Dxp6gS1HAviRkRNQzuXSXERvSS2 wq1yVAb+axj5d9spLFKebXd7Yv0PTY6YMjAwcRLWJTXjn/hvnLXrahut6hDTlhZy BiElxky8j3C7DOReIoMt0r7+hVu05L0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDtTCCAp2gAwIBAgIQdrEgUnTwhYdGs/gjGvbCwDANBgkqhkiG9w0BAQsFADBt MQswCQYDVQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUg Rm91bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9i YWwgUm9vdCBHQiBDQTAeFw0xNDEyMDExNTAwMzJaFw0zOTEyMDExNTEwMzFaMG0x CzAJBgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYDVQQLExlPSVNURSBG b3VuZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEdsb2Jh bCBSb290IEdCIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA2Be3 HEokKtaXscriHvt9OO+Y9bI5mE4nuBFde9IllIiCFSZqGzG7qFshISvYD06fWvGx WuR51jIjK+FTzJlFXHtPrby/h0oLS5daqPZI7H17Dc0hBt+eFf1Biki3IPShehtX 1F1Q/7pn2COZH8g/497/b1t3sWtuuMlk9+HKQUYOKXHQuSP8yYFfTvdv37+ErXNk u7dCjmn21HYdfp2nuFeKUWdy19SouJVUQHMD9ur06/4oQnc/nSMbsrY9gBQHTC5P 99UKFg29ZkM3fiNDecNAhvVMKdqOmq0NpQSHiB6F4+lT1ZvIiwNjeOvgGUpuuy9r M2RYk61pv48b74JIxwIDAQABo1EwTzALBgNVHQ8EBAMCAYYwDwYDVR0TAQH/BAUw AwEB/zAdBgNVHQ4EFgQUNQ/INmNe4qPs+TtmFc5RUuORmj0wEAYJKwYBBAGCNxUB BAMCAQAwDQYJKoZIhvcNAQELBQADggEBAEBM+4eymYGQfp3FsLAmzYh7KzKNbrgh cViXfa43FK8+5/ea4n32cZiZBKpDdHij40lhPnOMTZTg+XHEthYOU3gf1qKHLwI5 gSk8rxWYITD+KJAAjNHhy/peyP34EEY7onhCkRd0VQreUGdNZtGn//3ZwLWoo4rO ZvUPQ82nK1d7Y0Zqqi5S2PTt4W2tKZB4SLrhI6qjiey1q5bAtEuiHZeeevJuQHHf aPFlTc58Bd9TZaml8LGXBHAVRgOY1NK/VLSgWH1Sb9pWJmLU2NuJMW8c8CLC02Ic Nc1MaRVUGpCY3useX8p3x8uOPUNpnJpY0CQ73xtAln41rYHHTnG6iBM= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICaTCCAe+gAwIBAgIQISpWDK7aDKtARb8roi066jAKBggqhkjOPQQDAzBtMQsw CQYDVQQGEwJDSDEQMA4GA1UEChMHV0lTZUtleTEiMCAGA1UECxMZT0lTVEUgRm91 bmRhdGlvbiBFbmRvcnNlZDEoMCYGA1UEAxMfT0lTVEUgV0lTZUtleSBHbG9iYWwg Um9vdCBHQyBDQTAeFw0xNzA1MDkwOTQ4MzRaFw00MjA1MDkwOTU4MzNaMG0xCzAJ BgNVBAYTAkNIMRAwDgYDVQQKEwdXSVNlS2V5MSIwIAYDVQQLExlPSVNURSBGb3Vu ZGF0aW9uIEVuZG9yc2VkMSgwJgYDVQQDEx9PSVNURSBXSVNlS2V5IEdsb2JhbCBS b290IEdDIENBMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAETOlQwMYPchi82PG6s4ni eUqjFqdrVCTbUf/q9Akkwwsin8tqJ4KBDdLArzHkdIJuyiXZjHWd8dvQmqJLIX4W p2OQ0jnUsYd4XxiWD1AbNTcPasbc2RNNpI6QN+a9WzGRo1QwUjAOBgNVHQ8BAf8E BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUSIcUrOPDnpBgOtfKie7T rYy0UGYwEAYJKwYBBAGCNxUBBAMCAQAwCgYIKoZIzj0EAwMDaAAwZQIwJsdpW9zV 57LnyAyMjMPdeYwbY9XJUpROTYJKcx6ygISpJcBMWm1JKWB4E+J+SOtkAjEA2zQg Mgj/mkkCtojeFK9dbJlxjRo/i9fgojaGHAeCOnZT/cKi7e97sIBPWA9LUzm9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYDCCA0igAwIBAgIUeFhfLq0sGUvjNwc1NBMotZbUZZMwDQYJKoZIhvcNAQEL BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMSBHMzAeFw0xMjAxMTIxNzI3NDRaFw00 MjAxMTIxNzI3NDRaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDEgRzMwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQCgvlAQjunybEC0BJyFuTHK3C3kEakEPBtV wedYMB0ktMPvhd6MLOHBPd+C5k+tR4ds7FtJwUrVu4/sh6x/gpqG7D0DmVIB0jWe rNrwU8lmPNSsAgHaJNM7qAJGr6Qc4/hzWHa39g6QDbXwz8z6+cZM5cOGMAqNF341 68Xfuw6cwI2H44g4hWf6Pser4BOcBRiYz5P1sZK0/CPTz9XEJ0ngnjybCKOLXSoh 4Pw5qlPafX7PGglTvF0FBM+hSo+LdoINofjSxxR3W5A2B4GbPgb6Ul5jxaYA/qXp UhtStZI5cgMJYr2wYBZupt0lwgNm3fME0UDiTouG9G/lg6AnhF4EwfWQvTA9xO+o abw4m6SkltFi2mnAAZauy8RRNOoMqv8hjlmPSlzkYZqn0ukqeI1RPToV7qJZjqlc 3sX5kCLliEVx3ZGZbHqfPT2YfF72vhZooF6uCyP8Wg+qInYtyaEQHeTTRCOQiJ/G KubX9ZqzWB4vMIkIG1SitZgj7Ah3HJVdYdHLiZxfokqRmu8hqkkWCKi9YSgxyXSt hfbZxbGL0eUQMk1fiyA6PEkfM4VZDdvLCXVDaXP7a3F98N/ETH3Goy7IlXnLc6KO Tk0k+17kBL5yG6YnLUlamXrXXAkgt3+UuU/xDRxeiEIbEbfnkduebPRq34wGmAOt zCjvpUfzUwIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB BjAdBgNVHQ4EFgQUo5fW816iEOGrRZ88F2Q87gFwnMwwDQYJKoZIhvcNAQELBQAD ggIBABj6W3X8PnrHX3fHyt/PX8MSxEBd1DKquGrX1RUVRpgjpeaQWxiZTOOtQqOC MTaIzen7xASWSIsBx40Bz1szBpZGZnQdT+3Btrm0DWHMY37XLneMlhwqI2hrhVd2 cDMT/uFPpiN3GPoajOi9ZcnPP/TJF9zrx7zABC4tRi9pZsMbj/7sPtPKlL92CiUN qXsCHKnQO18LwIE6PWThv6ctTr1NxNgpxiIY0MWscgKCP6o6ojoilzHdCGPDdRS5 YCgtW2jgFqlmgiNR9etT2DGbe+m3nUvriBbP+V04ikkwj+3x6xn0dxoxGE1nVGwv b2X52z3sIexe9PSLymBlVNFxZPT5pqOBMzYzcfCkeF9OrYMh3jRJjehZrJ3ydlo2 8hP0r+AJx2EqbPfgna67hkooby7utHnNkDPDs3b69fBsnQGQ+p6Q9pxyz0fawx/k NSBT8lTR32GDpgLiJTjehTItXnOQUl1CxM49S+H5GYQd1aJQzEH7QRTDvdbJWqNj ZgKAvQU6O0ec7AAmTPWIUb+oI38YB7AL7YsmoWTTYUrrXJ/es69nA7Mf3W1daWhp q1467HxpvMc7hU6eFbm0FU/DlXpY18ls6Wy58yljXrQs8C097Vpl4KlbQMJImYFt nh8GKjwStIsPm6Ik8KaN1nrgS7ZklmOVhMJKzRwuJIczYOXD -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYDCCA0igAwIBAgIURFc0JFuBiZs18s64KztbpybwdSgwDQYJKoZIhvcNAQEL BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMiBHMzAeFw0xMjAxMTIxODU5MzJaFw00 MjAxMTIxODU5MzJaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDIgRzMwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQChriWyARjcV4g/Ruv5r+LrI3HimtFhZiFf qq8nUeVuGxbULX1QsFN3vXg6YOJkApt8hpvWGo6t/x8Vf9WVHhLL5hSEBMHfNrMW n4rjyduYNM7YMxcoRvynyfDStNVNCXJJ+fKH46nafaF9a7I6JaltUkSs+L5u+9ym c5GQYaYDFCDy54ejiK2toIz/pgslUiXnFgHVy7g1gQyjO/Dh4fxaXc6AcW34Sas+ O7q414AB+6XrW7PFXmAqMaCvN+ggOp+oMiwMzAkd056OXbxMmO7FGmh77FOm6RQ1 o9/NgJ8MSPsc9PG/Srj61YxxSscfrf5BmrODXfKEVu+lV0POKa2Mq1W/xPtbAd0j IaFYAI7D0GoT7RPjEiuA3GfmlbLNHiJuKvhB1PLKFAeNilUSxmn1uIZoL1NesNKq IcGY5jDjZ1XHm26sGahVpkUG0CM62+tlXSoREfA7T8pt9DTEceT/AFr2XK4jYIVz 8eQQsSWu1ZK7E8EM4DnatDlXtas1qnIhO4M15zHfeiFuuDIIfR0ykRVKYnLP43eh vNURG3YBZwjgQQvD6xVu+KQZ2aKrr+InUlYrAoosFCT5v0ICvybIxo/gbjh9Uy3l 7ZizlWNof/k19N+IxWA1ksB8aRxhlRbQ694Lrz4EEEVlWFA4r0jyWbYW8jwNkALG cC4BrTwV1wIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB BjAdBgNVHQ4EFgQU7edvdlq/YOxJW8ald7tyFnGbxD0wDQYJKoZIhvcNAQELBQAD ggIBAJHfgD9DCX5xwvfrs4iP4VGyvD11+ShdyLyZm3tdquXK4Qr36LLTn91nMX66 AarHakE7kNQIXLJgapDwyM4DYvmL7ftuKtwGTTwpD4kWilhMSA/ohGHqPHKmd+RC roijQ1h5fq7KpVMNqT1wvSAZYaRsOPxDMuHBR//47PERIjKWnML2W2mWeyAMQ0Ga W/ZZGYjeVYg3UQt4XAoeo0L9x52ID8DyeAIkVJOviYeIyUqAHerQbj5hLja7NQ4n lv1mNDthcnPxFlxHBlRJAHpYErAK74X9sbgzdWqTHBLmYF5vHX/JHyPLhGGfHoJE +V+tYlUkmlKY7VHnoX6XOuYvHxHaU4AshZ6rNRDbIl9qxV6XU/IyAgkwo1jwDQHV csaxfGl7w/U2Rcxhbl5MlMVerugOXou/983g7aEOGzPuVBj+D77vfoRrQ+NwmNtd dbINWQeFFSM51vHfqSYP1kjHs6Yi9TM3WpVHn3u6GBVv/9YUZINJ0gpnIdsPNWNg KCLjsZWDzYWm3S8P52dSbrsvhXz1SnPnxT7AvSESBT/8twNJAlvIJebiVDj1eYeM HVOyToV7BjjHLPj4sHKNJeV3UvQDHEimUF+IIDBu8oJDqz2XhOdT+yHBTw8imoa4 WSr2Rz0ZiC3oheGe7IUIarFsNMkd7EgrO3jtZsSOeWmD3n+M -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFYDCCA0igAwIBAgIULvWbAiin23r/1aOp7r0DoM8Sah0wDQYJKoZIhvcNAQEL BQAwSDELMAkGA1UEBhMCQk0xGTAXBgNVBAoTEFF1b1ZhZGlzIExpbWl0ZWQxHjAc BgNVBAMTFVF1b1ZhZGlzIFJvb3QgQ0EgMyBHMzAeFw0xMjAxMTIyMDI2MzJaFw00 MjAxMTIyMDI2MzJaMEgxCzAJBgNVBAYTAkJNMRkwFwYDVQQKExBRdW9WYWRpcyBM aW1pdGVkMR4wHAYDVQQDExVRdW9WYWRpcyBSb290IENBIDMgRzMwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQCzyw4QZ47qFJenMioKVjZ/aEzHs286IxSR /xl/pcqs7rN2nXrpixurazHb+gtTTK/FpRp5PIpM/6zfJd5O2YIyC0TeytuMrKNu FoM7pmRLMon7FhY4futD4tN0SsJiCnMK3UmzV9KwCoWdcTzeo8vAMvMBOSBDGzXR U7Ox7sWTaYI+FrUoRqHe6okJ7UO4BUaKhvVZR74bbwEhELn9qdIoyhA5CcoTNs+c ra1AdHkrAj80//ogaX3T7mH1urPnMNA3I4ZyYUUpSFlob3emLoG+B01vr87ERROR FHAGjx+f+IdpsQ7vw4kZ6+ocYfx6bIrc1gMLnia6Et3UVDmrJqMz6nWB2i3ND0/k A9HvFZcba5DFApCTZgIhsUfei5pKgLlVj7WiL8DWM2fafsSntARE60f75li59wzw eyuxwHApw0BiLTtIadwjPEjrewl5qW3aqDCYz4ByA4imW0aucnl8CAMhZa634Ryl sSqiMd5mBPfAdOhx3v89WcyWJhKLhZVXGqtrdQtEPREoPHtht+KPZ0/l7DxMYIBp VzgeAVuNVejH38DMdyM0SXV89pgR6y3e7UEuFAUCf+D+IOs15xGsIs5XPd7JMG0Q A4XN8f+MFrXBsj6IbGB/kE+V9/YtrQE5BwT6dYB9v0lQ7e/JxHwc64B+27bQ3RP+ ydOc17KXqQIDAQABo0IwQDAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIB BjAdBgNVHQ4EFgQUxhfQvKjqAkPyGwaZXSuQILnXnOQwDQYJKoZIhvcNAQELBQAD ggIBADRh2Va1EodVTd2jNTFGu6QHcrxfYWLopfsLN7E8trP6KZ1/AvWkyaiTt3px KGmPc+FSkNrVvjrlt3ZqVoAh313m6Tqe5T72omnHKgqwGEfcIHB9UqM+WXzBusnI FUBhynLWcKzSt/Ac5IYp8M7vaGPQtSCKFWGafoaYtMnCdvvMujAWzKNhxnQT5Wvv oxXqA/4Ti2Tk08HS6IT7SdEQTXlm66r99I0xHnAUrdzeZxNMgRVhvLfZkXdxGYFg u/BYpbWcC/ePIlUnwEsBbTuZDdQdm2NnL9DuDcpmvJRPpq3t/O5jrFc/ZSXPsoaP 0Aj/uHYUbt7lJ+yreLVTubY/6CD50qi+YUbKh4yE8/nxoGibIh6BJpsQBJFxwAYf 3KDTuVan45gtf4Od34wrnDKOMpTwATwiKp9Dwi7DmDkHOHv8XgBCH/MyJnmDhPbl 8MFREsALHgQjDFSlTC9JxUrRtm5gDWv8a4uFJGS3iQ6rJUdbPM9+Sb3H6QrG2vd+ DhcI00iX0HGS8A85PjRqHH3Y8iKuu2n0M7SmSFXRDw4m6Oy2Cy2nhTXN/VnIn9HN PlopNLk9hM6xZdRZkZFWdSHBd575euFgndOtBBj0fOtek49TSiIp+EgrPk2GrFt/ ywaZWWDYWGWVjUTR939+J399roD1B0y2PpxxVJkES/1Y+Zj0 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIClDCCAhqgAwIBAgIILCmcWxbtBZUwCgYIKoZIzj0EAwIwfzELMAkGA1UEBhMC VVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9T U0wgQ29ycG9yYXRpb24xNDAyBgNVBAMMK1NTTC5jb20gRVYgUm9vdCBDZXJ0aWZp Y2F0aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEyMTgxNTIzWhcNNDEwMjEyMTgx NTIzWjB/MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hv dXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjE0MDIGA1UEAwwrU1NMLmNv bSBFViBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49 AgEGBSuBBAAiA2IABKoSR5CYG/vvw0AHgyBO8TCCogbR8pKGYfL2IWjKAMTH6kMA VIbc/R/fALhBYlzccBYy3h+Z1MzFB8gIH2EWB1E9fVwHU+M1OIzfzZ/ZLg1Kthku WnBaBu2+8KGwytAJKaNjMGEwHQYDVR0OBBYEFFvKXuXe0oGqzagtZFG22XKbl+ZP MA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUW8pe5d7SgarNqC1kUbbZcpuX 5k8wDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2gAMGUCMQCK5kCJN+vp1RPZ ytRrJPOwPYdGWBrssd9v+1a6cGvHOMzosYxPD/fxZ3YOg9AeUY8CMD32IygmTMZg h5Mmm7I1HrrW9zzRHM76JTymGoEVW/MSD2zuZYrJh6j5B+BimoxcSg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF6zCCA9OgAwIBAgIIVrYpzTS8ePYwDQYJKoZIhvcNAQELBQAwgYIxCzAJBgNV BAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4GA1UEBwwHSG91c3RvbjEYMBYGA1UE CgwPU1NMIENvcnBvcmF0aW9uMTcwNQYDVQQDDC5TU0wuY29tIEVWIFJvb3QgQ2Vy dGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIyMB4XDTE3MDUzMTE4MTQzN1oXDTQy MDUzMDE4MTQzN1owgYIxCzAJBgNVBAYTAlVTMQ4wDAYDVQQIDAVUZXhhczEQMA4G A1UEBwwHSG91c3RvbjEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMTcwNQYDVQQD DC5TU0wuY29tIEVWIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgUlNBIFIy MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAjzZlQOHWTcDXtOlG2mvq M0fNTPl9fb69LT3w23jhhqXZuglXaO1XPqDQCEGD5yhBJB/jchXQARr7XnAjssuf OePPxU7Gkm0mxnu7s9onnQqG6YE3Bf7wcXHswxzpY6IXFJ3vG2fThVUCAtZJycxa 4bH3bzKfydQ7iEGonL3Lq9ttewkfokxykNorCPzPPFTOZw+oz12WGQvE43LrrdF9 HSfvkusQv1vrO6/PgN3B0pYEW3p+pKk8OHakYo6gOV7qd89dAFmPZiw+B6KjBSYR aZfqhbcPlgtLyEDhULouisv3D5oi53+aNxPN8k0TayHRwMwi8qFG9kRpnMphNQcA b9ZhCBHqurj26bNg5U257J8UZslXWNvNh2n4ioYSA0e/ZhN2rHd9NCSFg83XqpyQ Gp8hLH94t2S42Oim9HizVcuE0jLEeK6jj2HdzghTreyI/BXkmg3mnxp3zkyPuBQV PWKchjgGAGYS5Fl2WlPAApiiECtoRHuOec4zSnaqW4EWG7WK2NAAe15itAnWhmMO pgWVSbooi4iTsjQc2KRVbrcc0N6ZVTsj9CLg+SlmJuwgUHfbSguPvuUCYHBBXtSu UDkiFCbLsjtzdFVHB3mBOagwE0TlBIqulhMlQg+5U8Sb/M3kHN48+qvWBkofZ6aY MBzdLNvcGJVXZsb/XItW9XcCAwEAAaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNV HSMEGDAWgBT5YLvU49U09rj1BoAlp3PbRmmonjAdBgNVHQ4EFgQU+WC71OPVNPa4 9QaAJadz20ZpqJ4wDgYDVR0PAQH/BAQDAgGGMA0GCSqGSIb3DQEBCwUAA4ICAQBW s47LCp1Jjr+kxJG7ZhcFUZh1++VQLHqe8RT6q9OKPv+RKY9ji9i0qVQBDb6Thi/5 Sm3HXvVX+cpVHBK+Rw82xd9qt9t1wkclf7nxY/hoLVUE0fKNsKTPvDxeH3jnpaAg cLAExbf3cqfeIg29MyVGjGSSJuM+LmOW2puMPfgYCdcDzH2GguDKBAdRUNf/ktUM 79qGn5nX67evaOI5JpS6aLe/g9Pqemc9YmeuJeVy6OLk7K4S9ksrPJ/psEDzOFSz /bdoyNrGj1E8svuR3Bznm53htw1yj+KkxKl4+esUrMZDBcJlOSgYAsOCsp0FvmXt ll9ldDz7CTUue5wT/RsPXcdtgTpWD8w74a8CLyKsRspGPKAcTNZEtF4uXBVmCeEm Kf7GUmG6sXP/wwyc5WxqlD8UykAWlYTzWamsX0xhk23RO8yilQwipmdnRC652dKK QbNmC1r7fSOl8hqw/96bg5Qu0T/fkreRrwU7ZcegbLHNYhLDkBvjJc40vG93drEQ w/cFGsDWr3RiSBd3kmmQYRzelYB0VI8YHMPzA9C/pEN1hlMYegouCRw2n5H9gooi S9EOUCXdywMMF8mDAAhONU2Ki+3wApRmLER/y5UnlhetCTCstnEXbosX9hwJ1C07 mKVx01QT2WDz9UtmT/rx7iASjbSsV7FFY6GsdqnC+w== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICjTCCAhSgAwIBAgIIdebfy8FoW6gwCgYIKoZIzj0EAwIwfDELMAkGA1UEBhMC VVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQKDA9T U0wgQ29ycG9yYXRpb24xMTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZpY2F0 aW9uIEF1dGhvcml0eSBFQ0MwHhcNMTYwMjEyMTgxNDAzWhcNNDEwMjEyMTgxNDAz WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hvdXN0 b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNvbSBS b290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IEVDQzB2MBAGByqGSM49AgEGBSuB BAAiA2IABEVuqVDEpiM2nl8ojRfLliJkP9x6jh3MCLOicSS6jkm5BBtHllirLZXI 7Z4INcgn64mMU1jrYor+8FsPazFSY0E7ic3s7LaNGdM0B9y7xgZ/wkWV7Mt/qCPg CemB+vNH06NjMGEwHQYDVR0OBBYEFILRhXMw5zUE044CkvvlpNHEIejNMA8GA1Ud EwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUgtGFczDnNQTTjgKS++Wk0cQh6M0wDgYD VR0PAQH/BAQDAgGGMAoGCCqGSM49BAMCA2cAMGQCMG/n61kRpGDPYbCWe+0F+S8T kdzt5fxQaxFGRrMcIQBiu77D5+jNB5n5DQtdcj7EqgIwH7y6C+IwJPt8bYBVCpk+ gA0z5Wajs6O7pdWLjwkspl1+4vAHCGht0nxpbl/f5Wpl -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF3TCCA8WgAwIBAgIIeyyb0xaAMpkwDQYJKoZIhvcNAQELBQAwfDELMAkGA1UE BhMCVVMxDjAMBgNVBAgMBVRleGFzMRAwDgYDVQQHDAdIb3VzdG9uMRgwFgYDVQQK DA9TU0wgQ29ycG9yYXRpb24xMTAvBgNVBAMMKFNTTC5jb20gUm9vdCBDZXJ0aWZp Y2F0aW9uIEF1dGhvcml0eSBSU0EwHhcNMTYwMjEyMTczOTM5WhcNNDEwMjEyMTcz OTM5WjB8MQswCQYDVQQGEwJVUzEOMAwGA1UECAwFVGV4YXMxEDAOBgNVBAcMB0hv dXN0b24xGDAWBgNVBAoMD1NTTCBDb3Jwb3JhdGlvbjExMC8GA1UEAwwoU1NMLmNv bSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFJTQTCCAiIwDQYJKoZIhvcN AQEBBQADggIPADCCAgoCggIBAPkP3aMrfcvQKv7sZ4Wm5y4bunfh4/WvpOz6Sl2R xFdHaxh3a3by/ZPkPQ/CFp4LZsNWlJ4Xg4XOVu/yFv0AYvUiCVToZRdOQbngT0aX qhvIuG5iXmmxX9sqAn78bMrzQdjt0Oj8P2FI7bADFB0QDksZ4LtO7IZl/zbzXmcC C52GVWH9ejjt/uIZALdvoVBidXQ8oPrIJZK0bnoix/geoeOy3ZExqysdBP+lSgQ3 6YWkMyv94tZVNHwZpEpox7Ko07fKoZOI68GXvIz5HdkihCR0xwQ9aqkpk8zruFvh /l8lqjRYyMEjVJ0bmBHDOJx+PYZspQ9AhnwC9FwCTyjLrnGfDzrIM/4RJTXq/LrF YD3ZfBjVsqnTdXgDciLKOsMf7yzlLqn6niy2UUb9rwPW6mBo6oUWNmuF6R7As93E JNyAKoFBbZQ+yODJgUEAnl6/f8UImKIYLEJAs/lvOCdLToD0PYFH4Ih86hzOtXVc US4cK38acijnALXRdMbX5J+tB5O2UzU1/Dfkw/ZdFr4hc96SCvigY2q8lpJqPvi8 ZVWb3vUNiSYE/CUapiVpy8JtynziWV+XrOvvLsi81xtZPCvM8hnIk2snYxnP/Okm +Mpxm3+T/jRnhE6Z6/yzeAkzcLpmpnbtG3PrGqUNxCITIJRWCk4sbE6x/c+cCbqi M+2HAgMBAAGjYzBhMB0GA1UdDgQWBBTdBAkHovV6fVJTEpKV7jiAJQ2mWTAPBgNV HRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFN0ECQei9Xp9UlMSkpXuOIAlDaZZMA4G A1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAIBgRlCn7Jp0cHh5wYfGV cpNxJK1ok1iOMq8bs3AD/CUrdIWQPXhq9LmLpZc7tRiRux6n+UBbkflVma8eEdBc Hadm47GUBwwyOabqG7B52B2ccETjit3E+ZUfijhDPwGFpUenPUayvOUiaPd7nNgs PgohyC0zrL/FgZkxdMF1ccW+sfAjRfSda/wZY52jvATGGAslu1OJD7OAUN5F7kR/ q5R4ZJjT9ijdh9hwZXT7DrkT66cPYakylszeu+1jTBi7qUD3oFRuIIhxdRjqerQ0 cuAjJ3dctpDqhiVAq+8zD8ufgr6iIPv2tS0a5sKFsXQP+8hlAqRSAUfdSSLBv9jr a6x+3uxjMxW3IwiPxg+NQVrdjsW5j+VFP3jbutIbQLH+cU0/4IGiul607BXgk90I H37hVZkLId6Tngr75qNJvTYw/ud3sqB1l7UtgYgXZSD32pAAn8lSzDLKNXz1PQ/Y K9f1JmzJBjSWFupwWRoyeXkLtoh/D1JIPb9s2KJELtFOt3JY04kTlf5Eq/jXixtu nLwsoFvVagCvXzfh1foQC5ichucmj87w7G6KVwuA406ywKBjYZC6VWg3dGq2ktuf oYYitmUnDuy2n0Jg5GfCtdpBC8TTi2EbvPofkSvXRAdeuims2cXp71NIWuuA8ShY Ic2wBlX7Jz9TkHCpBB5XJ7k= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICOjCCAcCgAwIBAgIQFAP1q/s3ixdAW+JDsqXRxDAKBggqhkjOPQQDAzBOMQsw CQYDVQQGEwJVUzEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMSUwIwYDVQQDDBxT U0wuY29tIFRMUyBFQ0MgUm9vdCBDQSAyMDIyMB4XDTIyMDgyNTE2MzM0OFoXDTQ2 MDgxOTE2MzM0N1owTjELMAkGA1UEBhMCVVMxGDAWBgNVBAoMD1NTTCBDb3Jwb3Jh dGlvbjElMCMGA1UEAwwcU1NMLmNvbSBUTFMgRUNDIFJvb3QgQ0EgMjAyMjB2MBAG ByqGSM49AgEGBSuBBAAiA2IABEUpNXP6wrgjzhR9qLFNoFs27iosU8NgCTWyJGYm acCzldZdkkAZDsalE3D07xJRKF3nzL35PIXBz5SQySvOkkJYWWf9lCcQZIxPBLFN SeR7T5v15wj4A4j3p8OSSxlUgaNjMGEwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSME GDAWgBSJjy+j6CugFFR781a4Jl9nOAuc0DAdBgNVHQ4EFgQUiY8vo+groBRUe/NW uCZfZzgLnNAwDgYDVR0PAQH/BAQDAgGGMAoGCCqGSM49BAMDA2gAMGUCMFXjIlbp 15IkWE8elDIPDAI2wv2sdDJO4fscgIijzPvX6yv/N33w7deedWo1dlJF4AIxAMeN b0Igj762TVntd00pxCAgRWSGOlDGxK0tk/UYfXLtqc/ErFc2KAhl3zx5Zn6g6g== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFiTCCA3GgAwIBAgIQb77arXO9CEDii02+1PdbkTANBgkqhkiG9w0BAQsFADBO MQswCQYDVQQGEwJVUzEYMBYGA1UECgwPU1NMIENvcnBvcmF0aW9uMSUwIwYDVQQD DBxTU0wuY29tIFRMUyBSU0EgUm9vdCBDQSAyMDIyMB4XDTIyMDgyNTE2MzQyMloX DTQ2MDgxOTE2MzQyMVowTjELMAkGA1UEBhMCVVMxGDAWBgNVBAoMD1NTTCBDb3Jw b3JhdGlvbjElMCMGA1UEAwwcU1NMLmNvbSBUTFMgUlNBIFJvb3QgQ0EgMjAyMjCC AiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBANCkCXJPQIgSYT41I57u9nTP L3tYPc48DRAokC+X94xI2KDYJbFMsBFMF3NQ0CJKY7uB0ylu1bUJPiYYf7ISf5OY t6/wNr/y7hienDtSxUcZXXTzZGbVXcdotL8bHAajvI9AI7YexoS9UcQbOcGV0ins S657Lb85/bRi3pZ7QcacoOAGcvvwB5cJOYF0r/c0WRFXCsJbwST0MXMwgsadugL3 PnxEX4MN8/HdIGkWCVDi1FW24IBydm5MR7d1VVm0U3TZlMZBrViKMWYPHqIbKUBO L9975hYsLfy/7PO0+r4Y9ptJ1O4Fbtk085zx7AGL0SDGD6C1vBdOSHtRwvzpXGk3 R2azaPgVKPC506QVzFpPulJwoxJF3ca6TvvC0PeoUidtbnm1jPx7jMEWTO6Af77w dr5BUxIzrlo4QqvXDz5BjXYHMtWrifZOZ9mxQnUjbvPNQrL8VfVThxc7wDNY8VLS +YCk8OjwO4s4zKTGkH8PnP2L0aPP2oOnaclQNtVcBdIKQXTbYxE3waWglksejBYS d66UNHsef8JmAOSqg+qKkK3ONkRN0VHpvB/zagX9wHQfJRlAUW7qglFA35u5CCoG AtUjHBPW6dvbxrB6y3snm/vg1UYk7RBLY0ulBY+6uB0rpvqR4pJSvezrZ5dtmi2f gTIFZzL7SAg/2SW4BCUvAgMBAAGjYzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0j BBgwFoAU+y437uOEeicuzRk1sTN8/9REQrkwHQYDVR0OBBYEFPsuN+7jhHonLs0Z NbEzfP/UREK5MA4GA1UdDwEB/wQEAwIBhjANBgkqhkiG9w0BAQsFAAOCAgEAjYlt hEUY8U+zoO9opMAdrDC8Z2awms22qyIZZtM7QbUQnRC6cm4pJCAcAZli05bg4vsM QtfhWsSWTVTNj8pDU/0quOr4ZcoBwq1gaAafORpR2eCNJvkLTqVTJXojpBzOCBvf R4iyrT7gJ4eLSYwfqUdYe5byiB0YrrPRpgqU+tvT5TgKa3kSM/tKWTcWQA673vWJ DPFs0/dRa1419dvAJuoSc06pkZCmF8NsLzjUo3KUQyxi4U5cMj29TH0ZR6LDSeeW P4+a0zvkEdiLA9z2tmBVGKaBUfPhqBVq6+AL8BQx1rmMRTqoENjwuSfr98t67wVy lrXEj5ZzxOhWc5y8aVFjvO9nHEMaX3cZHxj4HCUp+UmZKbaSPaKDN7EgkaibMOlq bLQjk2UEqxHzDh1TJElTHaE/nUiSEeJ9DU/1172iWD54nR4fK/4huxoTtrEoZP2w AgDHbICivRZQIA9ygV/MlP+7mea6kMvq+cYMwq7FGc4zoWtcu358NFcXrfA/rs3q r5nsLFR+jM4uElZI7xc7P0peYNLcdDa8pUNjyw9bowJWCZ4kLOGGgYz+qxcs+sji Mho6/4UIyYOf8kpIEFR3N+2ivEC+5BB09+Rbu7nzifmPQdjH5FCQNYA+HLhNkNPU 98OwoX6EyneSMSy4kLGCenROmxMmtNVQZlR4rmA= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDcjCCAlqgAwIBAgIUPopdB+xV0jLVt+O2XwHrLdzk1uQwDQYJKoZIhvcNAQEL BQAwUTELMAkGA1UEBhMCUEwxKDAmBgNVBAoMH0tyYWpvd2EgSXpiYSBSb3psaWN6 ZW5pb3dhIFMuQS4xGDAWBgNVBAMMD1NaQUZJUiBST09UIENBMjAeFw0xNTEwMTkw NzQzMzBaFw0zNTEwMTkwNzQzMzBaMFExCzAJBgNVBAYTAlBMMSgwJgYDVQQKDB9L cmFqb3dhIEl6YmEgUm96bGljemVuaW93YSBTLkEuMRgwFgYDVQQDDA9TWkFGSVIg Uk9PVCBDQTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC3vD5QqEvN QLXOYeeWyrSh2gwisPq1e3YAd4wLz32ohswmUeQgPYUM1ljj5/QqGJ3a0a4m7utT 3PSQ1hNKDJA8w/Ta0o4NkjrcsbH/ON7Dui1fgLkCvUqdGw+0w8LBZwPd3BucPbOw 3gAeqDRHu5rr/gsUvTaE2g0gv/pby6kWIK05YO4vdbbnl5z5Pv1+TW9NL++IDWr6 3fE9biCloBK0TXC5ztdyO4mTp4CEHCdJckm1/zuVnsHMyAHs6A6KCpbns6aH5db5 BSsNl0BwPLqsdVqc1U2dAgrSS5tmS0YHF2Wtn2yIANwiieDhZNRnvDF5YTy7ykHN XGoAyDw4jlivAgMBAAGjQjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQD AgEGMB0GA1UdDgQWBBQuFqlKGLXLzPVvUPMjX/hd56zwyDANBgkqhkiG9w0BAQsF AAOCAQEAtXP4A9xZWx126aMqe5Aosk3AM0+qmrHUuOQn/6mWmc5G4G18TKI4pAZw 8PRBEew/R40/cof5O/2kbytTAOD/OblqBw7rHRz2onKQy4I9EYKL0rufKq8h5mOG nXkZ7/e7DDWQw4rtTw/1zBLZpD67oPwglV9PJi8RI4NOdQcPv5vRtB3pEAT+ymCP oky4rc/hkA/NrgrHXXu3UNLUYfrVFdvXn4dRVOul4+vJhaAlIDf7js4MNIThPIGy d05DpYhfhmehPea0XGG2Ptv+tyjFogeutcrKjSoS75ftwjCkySp6+/NNIxuZMzSg LvWpCz/UXeHPhJ/iGcJfitYgHuNztw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICOjCCAcGgAwIBAgIQQvLM2htpN0RfFf51KBC49DAKBggqhkjOPQQDAzBfMQsw CQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQDEy1T ZWN0aWdvIFB1YmxpYyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBFNDYwHhcN MjEwMzIyMDAwMDAwWhcNNDYwMzIxMjM1OTU5WjBfMQswCQYDVQQGEwJHQjEYMBYG A1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQDEy1TZWN0aWdvIFB1YmxpYyBT ZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBFNDYwdjAQBgcqhkjOPQIBBgUrgQQA IgNiAAR2+pmpbiDt+dd34wc7qNs9Xzjoq1WmVk/WSOrsfy2qw7LFeeyZYX8QeccC WvkEN/U0NSt3zn8gj1KjAIns1aeibVvjS5KToID1AZTc8GgHHs3u/iVStSBDHBv+ 6xnOQ6OjQjBAMB0GA1UdDgQWBBTRItpMWfFLXyY4qp3W7usNw/upYTAOBgNVHQ8B Af8EBAMCAYYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNnADBkAjAn7qRa qCG76UeXlImldCBteU/IvZNeWBj7LRoAasm4PdCkT0RHlAFWovgzJQxC36oCMB3q 4S6ILuH5px0CMk7yn2xVdOOurvulGu7t0vzCAxHrRVxgED1cf5kDW21USAGKcw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFijCCA3KgAwIBAgIQdY39i658BwD6qSWn4cetFDANBgkqhkiG9w0BAQwFADBf MQswCQYDVQQGEwJHQjEYMBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQD Ey1TZWN0aWdvIFB1YmxpYyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBSNDYw HhcNMjEwMzIyMDAwMDAwWhcNNDYwMzIxMjM1OTU5WjBfMQswCQYDVQQGEwJHQjEY MBYGA1UEChMPU2VjdGlnbyBMaW1pdGVkMTYwNAYDVQQDEy1TZWN0aWdvIFB1Ymxp YyBTZXJ2ZXIgQXV0aGVudGljYXRpb24gUm9vdCBSNDYwggIiMA0GCSqGSIb3DQEB AQUAA4ICDwAwggIKAoICAQCTvtU2UnXYASOgHEdCSe5jtrch/cSV1UgrJnwUUxDa ef0rty2k1Cz66jLdScK5vQ9IPXtamFSvnl0xdE8H/FAh3aTPaE8bEmNtJZlMKpnz SDBh+oF8HqcIStw+KxwfGExxqjWMrfhu6DtK2eWUAtaJhBOqbchPM8xQljeSM9xf iOefVNlI8JhD1mb9nxc4Q8UBUQvX4yMPFF1bFOdLvt30yNoDN9HWOaEhUTCDsG3X ME6WW5HwcCSrv0WBZEMNvSE6Lzzpng3LILVCJ8zab5vuZDCQOc2TZYEhMbUjUDM3 IuM47fgxMMxF/mL50V0yeUKH32rMVhlATc6qu/m1dkmU8Sf4kaWD5QazYw6A3OAS VYCmO2a0OYctyPDQ0RTp5A1NDvZdV3LFOxxHVp3i1fuBYYzMTYCQNFu31xR13NgE SJ/AwSiItOkcyqex8Va3e0lMWeUgFaiEAin6OJRpmkkGj80feRQXEgyDet4fsZfu +Zd4KKTIRJLpfSYFplhym3kT2BFfrsU4YjRosoYwjviQYZ4ybPUHNs2iTG7sijbt 8uaZFURww3y8nDnAtOFr94MlI1fZEoDlSfB1D++N6xybVCi0ITz8fAr/73trdf+L HaAZBav6+CuBQug4urv7qv094PPK306Xlynt8xhW6aWWrL3DkJiy4Pmi1KZHQ3xt zwIDAQABo0IwQDAdBgNVHQ4EFgQUVnNYZJX5khqwEioEYnmhQBWIIUkwDgYDVR0P AQH/BAQDAgGGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAC9c mTz8Bl6MlC5w6tIyMY208FHVvArzZJ8HXtXBc2hkeqK5Duj5XYUtqDdFqij0lgVQ YKlJfp/imTYpE0RHap1VIDzYm/EDMrraQKFz6oOht0SmDpkBm+S8f74TlH7Kph52 gDY9hAaLMyZlbcp+nv4fjFg4exqDsQ+8FxG75gbMY/qB8oFM2gsQa6H61SilzwZA Fv97fRheORKkU55+MkIQpiGRqRxOF3yEvJ+M0ejf5lG5Nkc/kLnHvALcWxxPDkjB JYOcCj+esQMzEhonrPcibCTRAUH4WAP+JWgiH5paPHxsnnVI84HxZmduTILA7rpX DhjvLpr3Etiga+kFpaHpaPi8TD8SHkXoUsCjvxInebnMMTzD9joiFgOgyY9mpFui TdaBJQbpdqQACj7LzTWb4OE4y2BThihCQRxEV+ioratF4yUQvNs+ZUH7G6aXD+u5 dHn5HrwdVw1Hr8Mvn4dGp+smWg9WY7ViYG4A++MnESLn/pmPNPW56MORcr3Ywx65 LvKRRFHQV80MNNVIIb/bE/FmJUNS0nAiNs2fxBx1IK1jcmMGDw4nztJqDby1ORrp 0XZ60Vzk50lJLVU3aPAaOpg+VBeHVOmmJ1CJeyAvP/+/oYtKR5j/K3tJPsMpRmAY QqszKbrAKbkTidOIijlBO8n9pu0f9GBj39ItVQGL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFcjCCA1qgAwIBAgIUZNtaDCBO6Ncpd8hQJ6JaJ90t8sswDQYJKoZIhvcNAQEM BQAwUTELMAkGA1UEBhMCSlAxIzAhBgNVBAoTGkN5YmVydHJ1c3QgSmFwYW4gQ28u LCBMdGQuMR0wGwYDVQQDExRTZWN1cmVTaWduIFJvb3QgQ0ExNDAeFw0yMDA0MDgw NzA2MTlaFw00NTA0MDgwNzA2MTlaMFExCzAJBgNVBAYTAkpQMSMwIQYDVQQKExpD eWJlcnRydXN0IEphcGFuIENvLiwgTHRkLjEdMBsGA1UEAxMUU2VjdXJlU2lnbiBS b290IENBMTQwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDF0nqh1oq/ FjHQmNE6lPxauG4iwWL3pwon71D2LrGeaBLwbCRjOfHw3xDG3rdSINVSW0KZnvOg vlIfX8xnbacuUKLBl422+JX1sLrcneC+y9/3OPJH9aaakpUqYllQC6KxNedlsmGy 6pJxaeQp8E+BgQQ8sqVb1MWoWWd7VRxJq3qdwudzTe/NCcLEVxLbAQ4jeQkHO6Lo /IrPj8BGJJw4J+CDnRugv3gVEOuGTgpa/d/aLIJ+7sr2KeH6caH3iGicnPCNvg9J kdjqOvn90Ghx2+m1K06Ckm9mH+Dw3EzsytHqunQG+bOEkJTRX45zGRBdAuVwpcAQ 0BB8b8VYSbSwbprafZX1zNoCr7gsfXmPvkPx+SgojQlD+Ajda8iLLCSxjVIHvXib y8posqTdDEx5YMaZ0ZPxMBoH064iwurO8YQJzOAUbn8/ftKChazcqRZOhaBgy/ac 18izju3Gm5h1DVXoX+WViwKkrkMpKBGk5hIwAUt1ax5mnXkvpXYvHUC0bcl9eQjs 0Wq2XSqypWa9a4X0dFbD9ed1Uigspf9mR6XU/v6eVL9lfgHWMI+lNpyiUBzuOIAB SMbHdPTGrMNASRZhdCyvjG817XsYAFs2PJxQDcqSMxDxJklt33UkN4Ii1+iW/RVL ApY+B3KVfqs9TC7XyvDf4Fg/LS8EmjijAQIDAQABo0IwQDAPBgNVHRMBAf8EBTAD AQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUBpOjCl4oaTeqYR3r6/wtbyPk 86AwDQYJKoZIhvcNAQEMBQADggIBAJaAcgkGfpzMkwQWu6A6jZJOtxEaCnFxEM0E rX+lRVAQZk5KQaID2RFPeje5S+LGjzJmdSX7684/AykmjbgWHfYfM25I5uj4V7Ib ed87hwriZLoAymzvftAj63iP/2SbNDefNWWipAA9EiOWWF3KY4fGoweITedpdopT zfFP7ELyk+OZpDc8h7hi2/DsHzc/N19DzFGdtfCXwreFamgLRB7lUe6TzktuhsHS DCRZNhqfLJGP4xjblJUK7ZGqDpncllPjYYPGFrojutzdfhrGe0K22VoF3Jpf1d+4 2kd92jjbrDnVHmtsKheMYc2xbXIBw8MgAGJoFjHVdqqGuw6qnsb58Nn4DSEC5MUo FlkRudlpcyqSeLiSV5sI8jrlL5WwWLdrIBRtFO8KvH7YVdiI2i/6GaX7i+B/OfVy K4XELKzvGUWSTLNhB9xNH27SgRNcmvMSZ4PPmz+Ln52kuaiWA3rF7iDeM9ovnhp6 dB7h7sxaOgTdsxoEqBRjrLdHEoOabPXm6RUVkRqEGQ6UROcSjiVbgGcZ3GOTEAtl Lor6CZpO2oYofaphNdgOpygau1LgePhsumywbrmHXumZNTfxPWQrqaA0k89jL9WB 365jJ6UeTo3cKXhZ+PmhIIynJkBugnLNeLLIjzwec+fBH7/PzqUqm9tEZDKgu39c JRNItX+S -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICIzCCAamgAwIBAgIUFhXHw9hJp75pDIqI7fBw+d23PocwCgYIKoZIzj0EAwMw UTELMAkGA1UEBhMCSlAxIzAhBgNVBAoTGkN5YmVydHJ1c3QgSmFwYW4gQ28uLCBM dGQuMR0wGwYDVQQDExRTZWN1cmVTaWduIFJvb3QgQ0ExNTAeFw0yMDA0MDgwODMy NTZaFw00NTA0MDgwODMyNTZaMFExCzAJBgNVBAYTAkpQMSMwIQYDVQQKExpDeWJl cnRydXN0IEphcGFuIENvLiwgTHRkLjEdMBsGA1UEAxMUU2VjdXJlU2lnbiBSb290 IENBMTUwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQLUHSNZDKZmbPSYAi4Io5GdCx4 wCtELW1fHcmuS1Iggz24FG1Th2CeX2yF2wYUleDHKP+dX+Sq8bOLbe1PL0vJSpSR ZHX+AezB2Ot6lHhWGENfa4HL9rzatAy2KZMIaY+jQjBAMA8GA1UdEwEB/wQFMAMB Af8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBTrQciu/NWeUUj1vYv0hyCTQSvT 9DAKBggqhkjOPQQDAwNoADBlAjEA2S6Jfl5OpBEHvVnCB96rMjhTKkZEBhd6zlHp 4P9mLQlO4E/0BdGF9jVg3PVys0Z9AjBEmEYagoUeYWmJSwdLZrWeqrqgHkHZAXQ6 bkU6iYAZezKYVWOr62Nuk22rGwlgMU4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICODCCAb6gAwIBAgIJANZdm7N4gS7rMAoGCCqGSM49BAMDMGExCzAJBgNVBAYT AkpQMSUwIwYDVQQKExxTRUNPTSBUcnVzdCBTeXN0ZW1zIENPLixMVEQuMSswKQYD VQQDEyJTZWN1cml0eSBDb21tdW5pY2F0aW9uIEVDQyBSb290Q0ExMB4XDTE2MDYx NjA1MTUyOFoXDTM4MDExODA1MTUyOFowYTELMAkGA1UEBhMCSlAxJTAjBgNVBAoT HFNFQ09NIFRydXN0IFN5c3RlbXMgQ08uLExURC4xKzApBgNVBAMTIlNlY3VyaXR5 IENvbW11bmljYXRpb24gRUNDIFJvb3RDQTEwdjAQBgcqhkjOPQIBBgUrgQQAIgNi AASkpW9gAwPDvTH00xecK4R1rOX9PVdu12O/5gSJko6BnOPpR27KkBLIE+Cnnfdl dB9sELLo5OnvbYUymUSxXv3MdhDYW72ixvnWQuRXdtyQwjWpS4g8EkdtXP9JTxpK ULGjQjBAMB0GA1UdDgQWBBSGHOf+LaVKiwj+KBH6vqNm+GBZLzAOBgNVHQ8BAf8E BAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjAVXUI9/Lbu 9zuxNuie9sRGKEkz0FhDKmMpzE2xtHqiuQ04pV1IKv3LsnNdo4gIxwwCMQDAqy0O be0YottT6SXbVQjgUMzfRGEWgqtJsLKB7HOHeLRMsmIbEvoWTSVLY70eN9k= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDdzCCAl+gAwIBAgIBADANBgkqhkiG9w0BAQsFADBdMQswCQYDVQQGEwJKUDEl MCMGA1UEChMcU0VDT00gVHJ1c3QgU3lzdGVtcyBDTy4sTFRELjEnMCUGA1UECxMe U2VjdXJpdHkgQ29tbXVuaWNhdGlvbiBSb290Q0EyMB4XDTA5MDUyOTA1MDAzOVoX DTI5MDUyOTA1MDAzOVowXTELMAkGA1UEBhMCSlAxJTAjBgNVBAoTHFNFQ09NIFRy dXN0IFN5c3RlbXMgQ08uLExURC4xJzAlBgNVBAsTHlNlY3VyaXR5IENvbW11bmlj YXRpb24gUm9vdENBMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBANAV OVKxUrO6xVmCxF1SrjpDZYBLx/KWvNs2l9amZIyoXvDjChz335c9S672XewhtUGr zbl+dp+++T42NKA7wfYxEUV0kz1XgMX5iZnK5atq1LXaQZAQwdbWQonCv/Q4EpVM VAX3NuRFg3sUZdbcDE3R3n4MqzvEFb46VqZab3ZpUql6ucjrappdUtAtCms1FgkQ hNBqyjoGADdH5H5XTz+L62e4iKrFvlNVspHEfbmwhRkGeC7bYRr6hfVKkaHnFtWO ojnflLhwHyg/i/xAXmODPIMqGplrz95Zajv8bxbXH/1KEOtOghY6rCcMU/Gt1SSw awNQwS08Ft1ENCcadfsCAwEAAaNCMEAwHQYDVR0OBBYEFAqFqXdlBZh8QIH4D5cs OPEK7DzPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3 DQEBCwUAA4IBAQBMOqNErLlFsceTfsgLCkLfZOoc7llsCLqJX2rKSpWeeo8HxdpF coJxDjrSzG+ntKEju/Ykn8sX/oymzsLS28yN/HH8AynBbF0zX2S2ZTuJbxh2ePXc okgfGT+Ok+vx+hfuzU7jBBJV1uXk3fs+BXziHV7Gp7yXT2g69ekuCkO2r1dcYmh8 t/2jioSgrGK+KwmHNPBqAbubKVY8/gA3zyNs8U6qtnRGEmyR7jTV7JqR50S+kDFy 1UkC9gLl9B/rfNmWVan/7Ir5mUf/NVoCqgTLiluHcSmRvaS0eg29mvVXIwAHIRc/ SjnRBUkLp7Y3gaVdjKozXoEofKd9J+sAro03 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID3TCCAsWgAwIBAgIBADANBgkqhkiG9w0BAQsFADCBjzELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xMjAwBgNVBAMTKVN0YXJmaWVs ZCBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5MDkwMTAwMDAw MFoXDTM3MTIzMTIzNTk1OVowgY8xCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6 b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFyZmllbGQgVGVj aG5vbG9naWVzLCBJbmMuMTIwMAYDVQQDEylTdGFyZmllbGQgUm9vdCBDZXJ0aWZp Y2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC ggEBAL3twQP89o/8ArFvW59I2Z154qK3A2FWGMNHttfKPTUuiUP3oWmb3ooa/RMg nLRJdzIpVv257IzdIvpy3Cdhl+72WoTsbhm5iSzchFvVdPtrX8WJpRBSiUZV9Lh1 HOZ/5FSuS/hVclcCGfgXcVnrHigHdMWdSL5stPSksPNkN3mSwOxGXn/hbVNMYq/N Hwtjuzqd+/x5AJhhdM8mgkBj87JyahkNmcrUDnXMN/uLicFZ8WJ/X7NfZTD4p7dN dloedl40wOiWVpmKs/B/pM293DIxfJHP4F8R+GuqSVzRmZTRouNjWwl2tVZi4Ut0 HZbUJtQIBFnQmA4O5t78w+wfkPECAwEAAaNCMEAwDwYDVR0TAQH/BAUwAwEB/zAO BgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFHwMMh+n2TB/xH1oo2Kooc6rB1snMA0G CSqGSIb3DQEBCwUAA4IBAQARWfolTwNvlJk7mh+ChTnUdgWUXuEok21iXQnCoKjU sHU48TRqneSfioYmUeYs0cYtbpUgSpIB7LiKZ3sx4mcujJUDJi5DnUox9g61DLu3 4jd/IroAow57UvtruzvE03lRTs2Q9GcHGcg8RnoNAX3FWOdt5oUwF5okxBDgBPfg 8n/Uqgr/Qh037ZTlZFkSIHc40zI+OIF1lnP6aI+xy84fxez6nH7PfrHxBy22/L/K pL/QlwVKvOoYKAKQvVR4CSFx09F9HdkWsKlhPdAKACL8x3vLCWRFCztAgfd9fDL1 mMpYjn0q7pBZc2T5NnReJaH1ZgUufzkVqSr7UIuOhWn0 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIID7zCCAtegAwIBAgIBADANBgkqhkiG9w0BAQsFADCBmDELMAkGA1UEBhMCVVMx EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxJTAjBgNVBAoT HFN0YXJmaWVsZCBUZWNobm9sb2dpZXMsIEluYy4xOzA5BgNVBAMTMlN0YXJmaWVs ZCBTZXJ2aWNlcyBSb290IENlcnRpZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTA5 MDkwMTAwMDAwMFoXDTM3MTIzMTIzNTk1OVowgZgxCzAJBgNVBAYTAlVTMRAwDgYD VQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMSUwIwYDVQQKExxTdGFy ZmllbGQgVGVjaG5vbG9naWVzLCBJbmMuMTswOQYDVQQDEzJTdGFyZmllbGQgU2Vy dmljZXMgUm9vdCBDZXJ0aWZpY2F0ZSBBdXRob3JpdHkgLSBHMjCCASIwDQYJKoZI hvcNAQEBBQADggEPADCCAQoCggEBANUMOsQq+U7i9b4Zl1+OiFOxHz/Lz58gE20p OsgPfTz3a3Y4Y9k2YKibXlwAgLIvWX/2h/klQ4bnaRtSmpDhcePYLQ1Ob/bISdm2 8xpWriu2dBTrz/sm4xq6HZYuajtYlIlHVv8loJNwU4PahHQUw2eeBGg6345AWh1K Ts9DkTvnVtYAcMtS7nt9rjrnvDH5RfbCYM8TWQIrgMw0R9+53pBlbQLPLJGmpufe hRhJfGZOozptqbXuNC66DQO4M99H67FrjSXZm86B0UVGMpZwh94CDklDhbZsc7tk 6mFBrMnUVN+HL8cisibMn1lUaJ/8viovxFUcdUBgF4UCVTmLfwUCAwEAAaNCMEAw DwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFJxfAN+q AdcwKziIorhtSpzyEZGDMA0GCSqGSIb3DQEBCwUAA4IBAQBLNqaEd2ndOxmfZyMI bw5hyf2E3F/YNoHN2BtBLZ9g3ccaaNnRbobhiCPPE95Dz+I0swSdHynVv/heyNXB ve6SbzJ08pGCL72CQnqtKrcgfU28elUSwhXqvfdqlS5sdJ/PHLTyxQGjhdByPq1z qwubdQxtRbeOlKyWN7Wg0I8VRw7j6IPdj/3vQQF3zCepYoUz8jcI73HPdwbeyBkd iEDPfUYd/x7H4c7/I9vG+o1VTqkC50cRRj70/b17KSa7qWFiNyi2LSr2EIZkyXCn 0q23KXB56jzaYyWf/Wi3MOxw+3WKt21gZ7IeyLnp2KhvAotnDU0mV3HaIPzBSlCN sSi6 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFkzCCA3ugAwIBAgIUQ/oMX04bgBhE79G0TzUfRPSA7cswDQYJKoZIhvcNAQEL BQAwUTELMAkGA1UEBhMCQ0gxFTATBgNVBAoTDFN3aXNzU2lnbiBBRzErMCkGA1UE AxMiU3dpc3NTaWduIFJTQSBUTFMgUm9vdCBDQSAyMDIyIC0gMTAeFw0yMjA2MDgx MTA4MjJaFw00NzA2MDgxMTA4MjJaMFExCzAJBgNVBAYTAkNIMRUwEwYDVQQKEwxT d2lzc1NpZ24gQUcxKzApBgNVBAMTIlN3aXNzU2lnbiBSU0EgVExTIFJvb3QgQ0Eg MjAyMiAtIDEwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDLKmjiC8NX vDVjvHClO/OMPE5Xlm7DTjak9gLKHqquuN6orx122ro10JFwB9+zBvKK8i5VUXu7 LCTLf5ImgKO0lPaCoaTo+nUdWfMHamFk4saMla+ju45vVs9xzF6BYQ1t8qsCLqSX 5XH8irCRIFucdFJtrhUnWXjyCcplDn/L9Ovn3KlMd/YrFgSVrpxxpT8q2kFC5zyE EPThPYxr4iuRR1VPuFa+Rd4iUU1OKNlfGUEGjw5NBuBwQCMBauTLE5tzrE0USJIt /m2n+IdreXXhvhCxqohAWVTXz8TQm0SzOGlkjIHRI36qOTw7D59Ke4LKa2/KIj4x 0LDQKhySio/YGZxH5D4MucLNvkEM+KRHBdvBFzA4OmnczcNpI/2aDwLOEGrOyvi5 KaM2iYauC8BPY7kGWUleDsFpswrzd34unYyzJ5jSmY0lpx+Gs6ZUcDj8fV3oT4MM 0ZPlEuRU2j7yrTrePjxF8CgPBrnh25d7mUWe3f6VWQQvdT/TromZhqwUtKiE+shd OxtYk8EXlFXIC+OCeYSf8wCENO7cMdWP8vpPlkwGqnj73mSiI80fPsWMvDdUDrta clXvyFu1cvh43zcgTFeRc5JzrBh3Q4IgaezprClG5QtO+DdziZaKHG29777YtvTK wP1H8K4LWCDFyB02rpeNUIMmJCn3nTsPBQIDAQABo2MwYTAPBgNVHRMBAf8EBTAD AQH/MA4GA1UdDwEB/wQEAwIBBjAfBgNVHSMEGDAWgBRvjmKLk0Ow4UD2p8P98Q+4 DxU4pTAdBgNVHQ4EFgQUb45ii5NDsOFA9qfD/fEPuA8VOKUwDQYJKoZIhvcNAQEL BQADggIBAKwsKUF9+lz1GpUYvyypiqkkVHX1uECry6gkUSsYP2OprphWKwVDIqO3 10aewCoSPY6WlkDfDDOLazeROpW7OSltwAJsipQLBwJNGD77+3v1dj2b9l4wBlgz Hqp41eZUBDqyggmNzhYzWUUo8aWjlw5DI/0LIICQ/+Mmz7hkkeUFjxOgdg3XNwwQ iJb0Pr6VvfHDffCjw3lHC1ySFWPtUnWK50Zpy1FVCypM9fJkT6lc/2cyjlUtMoIc gC9qkfjLvH4YoiaoLqNTKIftV+Vlek4ASltOU8liNr3CjlvrzG4ngRhZi0Rjn9UM ZfQpZX+RLOV/fuiJz48gy20HQhFRJjKKLjpHE7iNvUcNCfAWpO2Whi4Z2L6MOuhF LhG6rlrnub+xzI/goP+4s9GFe3lmozm1O2bYQL7Pt2eLSMkZJVX8vY3PXtpOpvJp zv1/THfQwUY1mFwjmwJFQ5Ra3bxHrSL+ul4vkSkphnsh3m5kt8sNjzdbowhq6/Td Ao9QAwKxuDdollDruF/UKIqlIgyKhPBZLtU30WHlQnNYKoH3dtvi4k0NX/a3vgW0 rk4N3hY9A4GzJl5LuEsAz/+MF7psYC0nhzck5npgL7XTgwSqT0N1osGDsieYK7EO gLrAhV5Cud+xYJHT6xh+cHiudoO+cVrQkOPKwRYlZ0rwtnu64ZzZ -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl YyBHbG9iYWxSb290IENsYXNzIDIwHhcNMDgxMDAxMTA0MDE0WhcNMzMxMDAxMjM1 OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDIwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCqX9obX+hzkeXaXPSi5kfl82hVYAUd AqSzm1nzHoqvNK38DcLZSBnuaY/JIPwhqgcZ7bBcrGXHX+0CfHt8LRvWurmAwhiC FoT6ZrAIxlQjgeTNuUk/9k9uN0goOA/FvudocP05l03Sx5iRUKrERLMjfTlH6VJi 1hKTXrcxlkIF+3anHqP1wvzpesVsqXFP6st4vGCvx9702cu+fjOlbpSD8DT6Iavq jnKgP6TeMFvvhk1qlVtDRKgQFRzlAVfFmPHmBiiRqiDFt1MmUUOyCxGVWOHAD3bZ wI18gfNycJ5v/hqO2V81xrJvNHy+SE/iWjnX2J14np+GPgNeGYtEotXHAgMBAAGj QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS/ WSA2AHmgoCJrjNXyYdK4LMuCSjANBgkqhkiG9w0BAQsFAAOCAQEAMQOiYQsfdOhy NsZt+U2e+iKo4YFWz827n+qrkRk4r6p8FU3ztqONpfSO9kSpp+ghla0+AGIWiPAC uvxhI+YzmzB6azZie60EI4RYZeLbK4rnJVM3YlNfvNoBYimipidx5joifsFvHZVw IEoHNN/q/xWA5brXethbdXwFeilHfkCoMRN3zUA7tFFHei4R40cR3p1m0IvVVGb6 g1XqfMIpiRvpb7PO4gWEyS8+eIVibslfwXhjdFjASBgMmTnrpMwatXlajRWc2BQN 9noHV8cigwUtPJslJj0Ys6lDfMjIq2SPDqO/nBudMNva0Bkuqjzx+zOAduTNrRlP BSeOE6Fuwg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDwzCCAqugAwIBAgIBATANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UEBhMCREUx KzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnByaXNlIFNlcnZpY2VzIEdtYkgxHzAd BgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50ZXIxJTAjBgNVBAMMHFQtVGVsZVNl YyBHbG9iYWxSb290IENsYXNzIDMwHhcNMDgxMDAxMTAyOTU2WhcNMzMxMDAxMjM1 OTU5WjCBgjELMAkGA1UEBhMCREUxKzApBgNVBAoMIlQtU3lzdGVtcyBFbnRlcnBy aXNlIFNlcnZpY2VzIEdtYkgxHzAdBgNVBAsMFlQtU3lzdGVtcyBUcnVzdCBDZW50 ZXIxJTAjBgNVBAMMHFQtVGVsZVNlYyBHbG9iYWxSb290IENsYXNzIDMwggEiMA0G CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC9dZPwYiJvJK7genasfb3ZJNW4t/zN 8ELg63iIVl6bmlQdTQyK9tPPcPRStdiTBONGhnFBSivwKixVA9ZIw+A5OO3yXDw/ RLyTPWGrTs0NvvAgJ1gORH8EGoel15YUNpDQSXuhdfsaa3Ox+M6pCSzyU9XDFES4 hqX2iys52qMzVNn6chr3IhUciJFrf2blw2qAsCTz34ZFiP0Zf3WHHx+xGwpzJFu5 ZeAsVMhg02YXP+HMVDNzkQI6pn97djmiH5a2OK61yJN0HZ65tOVgnS9W0eDrXltM EnAMbEQgqxHY9Bn20pxSN+f6tsIxO0rUFJmtxxr1XV/6B7h8DR/Wgx6zAgMBAAGj QjBAMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBS1 A/d2O2GCahKqGFPrAyGUv/7OyjANBgkqhkiG9w0BAQsFAAOCAQEAVj3vlNW92nOy WL6ukK2YJ5f+AbGwUgC4TeQbIXQbfsDuXmkqJa9c1h3a0nnJ85cp4IaH3gRZD/FZ 1GSFS5mvJQQeyUapl96Cshtwn5z2r3Ex3XsFpSzTucpH9sry9uetuUg/vBa3wW30 6gmv7PO15wWeph6KU1HWk4HMdJP2udqmJQV0eVp+QD6CSyYRMG7hP0HHRwA11fXT 91Q+gT3aSWqas+8QPebrb9HIIkfLzM8BMZLZGOMivgkeGj5asuRrDFR6fUNOuIml e9eiPZaGzPImNC1qkp2aGtAw4l1OBLBfiyB+d8E9lYLRRpo7PHi4b6HQDWSieB4p TpPDpFQUWw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIEYzCCA0ugAwIBAgIBATANBgkqhkiG9w0BAQsFADCB0jELMAkGA1UEBhMCVFIx GDAWBgNVBAcTD0dlYnplIC0gS29jYWVsaTFCMEAGA1UEChM5VHVya2l5ZSBCaWxp bXNlbCB2ZSBUZWtub2xvamlrIEFyYXN0aXJtYSBLdXJ1bXUgLSBUVUJJVEFLMS0w KwYDVQQLEyRLYW11IFNlcnRpZmlrYXN5b24gTWVya2V6aSAtIEthbXUgU00xNjA0 BgNVBAMTLVRVQklUQUsgS2FtdSBTTSBTU0wgS29rIFNlcnRpZmlrYXNpIC0gU3Vy dW0gMTAeFw0xMzExMjUwODI1NTVaFw00MzEwMjUwODI1NTVaMIHSMQswCQYDVQQG EwJUUjEYMBYGA1UEBxMPR2ViemUgLSBLb2NhZWxpMUIwQAYDVQQKEzlUdXJraXll IEJpbGltc2VsIHZlIFRla25vbG9qaWsgQXJhc3Rpcm1hIEt1cnVtdSAtIFRVQklU QUsxLTArBgNVBAsTJEthbXUgU2VydGlmaWthc3lvbiBNZXJrZXppIC0gS2FtdSBT TTE2MDQGA1UEAxMtVFVCSVRBSyBLYW11IFNNIFNTTCBLb2sgU2VydGlmaWthc2kg LSBTdXJ1bSAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAr3UwM6q7 a9OZLBI3hNmNe5eA027n/5tQlT6QlVZC1xl8JoSNkvoBHToP4mQ4t4y86Ij5iySr LqP1N+RAjhgleYN1Hzv/bKjFxlb4tO2KRKOrbEz8HdDc72i9z+SqzvBV96I01INr N3wcwv61A+xXzry0tcXtAA9TNypN9E8Mg/uGz8v+jE69h/mniyFXnHrfA2eJLJ2X YacQuFWQfw4tJzh03+f92k4S400VIgLI4OD8D62K18lUUMw7D8oWgITQUVbDjlZ/ iSIzL+aFCr2lqBs23tPcLG07xxO9WSMs5uWk99gL7eqQQESolbuT1dCANLZGeA4f AJNG4e7p+exPFwIDAQABo0IwQDAdBgNVHQ4EFgQUZT/HiobGPN08VFw1+DrtUgxH V8gwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL BQADggEBACo/4fEyjq7hmFxLXs9rHmoJ0iKpEsdeV31zVmSAhHqT5Am5EM2fKifh AHe+SMg1qIGf5LgsyX8OsNJLN13qudULXjS99HMpw+0mFZx+CFOKWI3QSyjfwbPf IPP54+M638yclNhOT8NrF7f3cuitZjO1JVOr4PhMqZ398g26rrnZqsZr+ZO7rqu4 lzwDGrpDxpa5RXI4s6ehlj2Re37AIVNMh+3yC1SVUZPVIqUNivGTDj5UDrDYyU7c 8jEyVupk+eq1nRZmQnLzf9OxMUP8pI4X8W0jq5Rm+K37DwhuJi1/FwcJsoz7UMCf lo3Ptv0AnVoUmr8CRPXBwp8iXqIPoeM= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFjTCCA3WgAwIBAgIQQAE0jMIAAAAAAAAAATzyxjANBgkqhkiG9w0BAQwFADBQ MQswCQYDVQQGEwJUVzESMBAGA1UEChMJVEFJV0FOLUNBMRAwDgYDVQQLEwdSb290 IENBMRswGQYDVQQDExJUV0NBIENZQkVSIFJvb3QgQ0EwHhcNMjIxMTIyMDY1NDI5 WhcNNDcxMTIyMTU1OTU5WjBQMQswCQYDVQQGEwJUVzESMBAGA1UEChMJVEFJV0FO LUNBMRAwDgYDVQQLEwdSb290IENBMRswGQYDVQQDExJUV0NBIENZQkVSIFJvb3Qg Q0EwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQDG+Moe2Qkgfh1sTs6P 40czRJzHyWmqOlt47nDSkvgEs1JSHWdyKKHfi12VCv7qze33Kc7wb3+szT3vsxxF avcokPFhV8UMxKNQXd7UtcsZyoC5dc4pztKFIuwCY8xEMCDa6pFbVuYdHNWdZsc/ 34bKS1PE2Y2yHer43CdTo0fhYcx9tbD47nORxc5zb87uEB8aBs/pJ2DFTxnk684i JkXXYJndzk834H/nY62wuFm40AZoNWDTNq5xQwTxaWV4fPMf88oon1oglWa0zbfu j3ikRRjpJi+NmykosaS3Om251Bw4ckVYsV7r8Cibt4LK/c/WMw+f+5eesRycnupf Xtuq3VTpMCEobY5583WSjCb+3MX2w7DfRFlDo7YDKPYIMKoNM+HvnKkHIuNZW0CP 2oi3aQiotyMuRAlZN1vH4xfyIutuOVLF3lSnmMlLIJXcRolftBL5hSmO68gnFSDA S9TMfAxsNAwmmyYxpjyn9tnQS6Jk/zuZQXLB4HCX8SS7K8R0IrGsayIyJNN4KsDA oS/xUgXJP+92ZuJF2A09rZXIx4kmyA+upwMu+8Ff+iDhcK2wZSA3M2Cw1a/XDBzC kHDXShi8fgGwsOsVHkQGzaRP6AzRwyAQ4VRlnrZR0Bp2a0JaWHY06rc3Ga4udfmW 5cFZ95RXKSWNOkyrTZpB0F8mAwIDAQABo2MwYTAOBgNVHQ8BAf8EBAMCAQYwDwYD VR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBSdhWEUfMFib5do5E83QOGt4A1WNzAd BgNVHQ4EFgQUnYVhFHzBYm+XaORPN0DhreANVjcwDQYJKoZIhvcNAQEMBQADggIB AGSPesRiDrWIzLjHhg6hShbNcAu3p4ULs3a2D6f/CIsLJc+o1IN1KriWiLb73y0t tGlTITVX1olNc79pj3CjYcya2x6a4CD4bLubIp1dhDGaLIrdaqHXKGnK/nZVekZn 68xDiBaiA9a5F/gZbG0jAn/xX9AKKSM70aoK7akXJlQKTcKlTfjF/biBzysseKNn TKkHmvPfXvt89YnNdJdhEGoHK4Fa0o635yDRIG4kqIQnoVesqlVYL9zZyvpoBJ7t RCT5dEA7IzOrg1oYJkK2bVS1FmAwbLGg+LhBoF1JSdJlBTrq/p1hvIbZv97Tujqx f36SNI7JAG7cmL3c7IAFrQI932XtCwP39xaEBDG6k5TY8hL4iuO/Qq+n1M0RFxbI Qh0UqEL20kCGoE8jypZFVmAGzbdVAaYBlGX+bgUJurSkquLvWL69J1bY73NxW0Qz 8ppy6rBePm6pUlvscG21h483XjyMnM7k8M4MZ0HMzvaAq07MTFb1wWFZk7Q+ptq4 NxKfKjLji7gh7MMrZQzvIt6IKTtM1/r+t+FHvpw+PoP7UV31aPcuIYXcv/Fa4nzX xeSDwWrruoBa3lwtcHb4yOWHh8qgnaHlIhInD0Q9HWzq1MKLL295q39QpsQZp6F6 t5b5wR9iWqJDB0BeJsas7a5wFsWqynKKTbDPAYsDP27X -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFQTCCAymgAwIBAgICDL4wDQYJKoZIhvcNAQELBQAwUTELMAkGA1UEBhMCVFcx EjAQBgNVBAoTCVRBSVdBTi1DQTEQMA4GA1UECxMHUm9vdCBDQTEcMBoGA1UEAxMT VFdDQSBHbG9iYWwgUm9vdCBDQTAeFw0xMjA2MjcwNjI4MzNaFw0zMDEyMzExNTU5 NTlaMFExCzAJBgNVBAYTAlRXMRIwEAYDVQQKEwlUQUlXQU4tQ0ExEDAOBgNVBAsT B1Jvb3QgQ0ExHDAaBgNVBAMTE1RXQ0EgR2xvYmFsIFJvb3QgQ0EwggIiMA0GCSqG SIb3DQEBAQUAA4ICDwAwggIKAoICAQCwBdvI64zEbooh745NnHEKH1Jw7W2CnJfF 10xORUnLQEK1EjRsGcJ0pDFfhQKX7EMzClPSnIyOt7h52yvVavKOZsTuKwEHktSz 0ALfUPZVr2YOy+BHYC8rMjk1Ujoog/h7FsYYuGLWRyWRzvAZEk2tY/XTP3VfKfCh MBwqoJimFb3u/Rk28OKRQ4/6ytYQJ0lM793B8YVwm8rqqFpD/G2Gb3PpN0Wp8DbH zIh1HrtsBv+baz4X7GGqcXzGHaL3SekVtTzWoWH1EfcFbx39Eb7QMAfCKbAJTibc 46KokWofwpFFiFzlmLhxpRUZyXx1EcxwdE8tmx2RRP1WKKD+u4ZqyPpcC1jcxkt2 yKsi2XMPpfRaAok/T54igu6idFMqPVMnaR1sjjIsZAAmY2E2TqNGtz99sy2sbZCi laLOz9qC5wc0GZbpuCGqKX6mOL6OKUohZnkfs8O1CWfe1tQHRvMq2uYiN2DLgbYP oA/pyJV/v1WRBXrPPRXAb94JlAGD1zQbzECl8LibZ9WYkTunhHiVJqRaCPgrdLQA BDzfuBSO6N+pjWxnkjMdwLfS7JLIvgm/LCkFbwJrnu+8vyq8W8BQj0FwcYeyTbcE qYSjMq+u7msXi7Kx/mzhkIyIqJdIzshNy/MGz19qCkKxHh53L46g5pIOBvwFItIm 4TFRfTLcDwIDAQABoyMwITAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB /zANBgkqhkiG9w0BAQsFAAOCAgEAXzSBdu+WHdXltdkCY4QWwa6gcFGn90xHNcgL 1yg9iXHZqjNB6hQbbCEAwGxCGX6faVsgQt+i0trEfJdLjbDorMjupWkEmQqSpqsn LhpNgb+E1HAerUf+/UqdM+DyucRFCCEK2mlpc3INvjT+lIutwx4116KD7+U4x6WF H6vPNOw/KP4M8VeGTslV9xzU2KV9Bnpv1d8Q34FOIWWxtuEXeZVFBs5fzNxGiWNo RI2T9GRwoD2dKAXDOXC4Ynsg/eTb6QihuJ49CcdP+yz4k3ZB3lLg4VfSnQO8d57+ nile98FRYB/e2guyLXW3Q0iT5/Z5xoRdgFlglPx4mI88k1HtQJAH32RjJMtOcQWh 15QaiDLxInQirqWm2BJpTGCjAu4r7NRjkgtevi92a6O2JryPA9gK8kxkRr05YuWW 6zRjESjMlfGt7+/cgFhI6Uu46mWs6fyAtbXIRfmswZ/ZuepiiI7E8UuDEq3mi4TW nsLrgxifarsbJGAzcMzs9zLzXNl5fe+epP7JI8Mk7hWSsT2RTyaGvWZzJBPqpK5j wa19hAM8EHiGG3njxPPyBJUgriOCxLM6AGK/5jYk4Ve6xx6QddVfP5VhK8E7zeWz aGHQRiapIVJpLesux+t3zqY6tQMzT3bR51xUAV3LePTJDL/PEo4XLSNolOer/qmy KwbQBM0= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDezCCAmOgAwIBAgIBATANBgkqhkiG9w0BAQUFADBfMQswCQYDVQQGEwJUVzES MBAGA1UECgwJVEFJV0FOLUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFU V0NBIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMDgwODI4MDcyNDMz WhcNMzAxMjMxMTU1OTU5WjBfMQswCQYDVQQGEwJUVzESMBAGA1UECgwJVEFJV0FO LUNBMRAwDgYDVQQLDAdSb290IENBMSowKAYDVQQDDCFUV0NBIFJvb3QgQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQCwfnK4pAOU5qfeCTiRShFAh6d8WWQUe7UREN3+v9XAu1bihSX0NXIP+FPQQeFE AcK0HMMxQhZHhTMidrIKbw/lJVBPhYa+v5guEGcevhEFhgWQxFnQfHgQsIBct+HH K3XLfJ+utdGdIzdjp9xCoi2SBBtQwXu4PhvJVgSLL1KbralW6cH/ralYhzC2gfeX RfwZVzsrb+RH9JlF/h3x+JejiB03HFyP4HYlmlD4oFT/RJB2I9IyxsOrBr/8+7/z rX2SYgJbKdM1o5OaQ2RgXbL6Mv87BK9NQGr5x+PvI/1ry+UPizgN7gr8/g+YnzAx 3WxSZfmLgb4i4RxYA7qRG4kHAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV HRMBAf8EBTADAQH/MB0GA1UdDgQWBBRqOFsmjd6LWvJPelSDGRjjCDWmujANBgkq hkiG9w0BAQUFAAOCAQEAPNV3PdrfibqHDAhUaiBQkr6wQT25JmSDCi/oQMCXKCeC MErJk/9q56YAf4lCmtYR5VPOL8zy2gXE/uJQxDqGfczafhAJO5I1KlOy/usrBdls XebQ79NqZp4VKIV66IIArB6nCWlWQtNoURi+VJq/REG6Sb4gumlc7rh3zc5sH62D lhh9DrUUOYTxKOkto557HnpyWoOzeW/vtPzQCqVYT0bf+215WfKEIlKuD8z7fDvn aspHYcN6+NOSBB+4IIThNlQWx0DeO4pz3N/GCUzf7Nr/1FNCocnyYh0igzyXxfkZ YiesZSLX0zzG5Y6yU8xJzrww/nsOM5D77dIUkR8Hrw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICQjCCAcmgAwIBAgIQNjqWjMlcsljN0AFdxeVXADAKBggqhkjOPQQDAzBjMQsw CQYDVQQGEwJERTEnMCUGA1UECgweRGV1dHNjaGUgVGVsZWtvbSBTZWN1cml0eSBH bWJIMSswKQYDVQQDDCJUZWxla29tIFNlY3VyaXR5IFRMUyBFQ0MgUm9vdCAyMDIw MB4XDTIwMDgyNTA3NDgyMFoXDTQ1MDgyNTIzNTk1OVowYzELMAkGA1UEBhMCREUx JzAlBgNVBAoMHkRldXRzY2hlIFRlbGVrb20gU2VjdXJpdHkgR21iSDErMCkGA1UE AwwiVGVsZWtvbSBTZWN1cml0eSBUTFMgRUNDIFJvb3QgMjAyMDB2MBAGByqGSM49 AgEGBSuBBAAiA2IABM6//leov9Wq9xCazbzREaK9Z0LMkOsVGJDZos0MKiXrPk/O tdKPD/M12kOLAoC+b1EkHQ9rK8qfwm9QMuU3ILYg/4gND21Ju9sGpIeQkpT0CdDP f8iAC8GXs7s1J8nCG6NCMEAwHQYDVR0OBBYEFONyzG6VmUex5rNhTNHLq+O6zd6f MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2cA MGQCMHVSi7ekEE+uShCLsoRbQuHmKjYC2qBuGT8lv9pZMo7k+5Dck2TOrbRBR2Di z6fLHgIwN0GMZt9Ba9aDAEH9L1r3ULRn0SyocddDypwnJJGDSA3PzfdUga/sf+Rn 27iQ7t0l -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFszCCA5ugAwIBAgIQIZxULej27HF3+k7ow3BXlzANBgkqhkiG9w0BAQwFADBj MQswCQYDVQQGEwJERTEnMCUGA1UECgweRGV1dHNjaGUgVGVsZWtvbSBTZWN1cml0 eSBHbWJIMSswKQYDVQQDDCJUZWxla29tIFNlY3VyaXR5IFRMUyBSU0EgUm9vdCAy MDIzMB4XDTIzMDMyODEyMTY0NVoXDTQ4MDMyNzIzNTk1OVowYzELMAkGA1UEBhMC REUxJzAlBgNVBAoMHkRldXRzY2hlIFRlbGVrb20gU2VjdXJpdHkgR21iSDErMCkG A1UEAwwiVGVsZWtvbSBTZWN1cml0eSBUTFMgUlNBIFJvb3QgMjAyMzCCAiIwDQYJ KoZIhvcNAQEBBQADggIPADCCAgoCggIBAO01oYGA88tKaVvC+1GDrib94W7zgRJ9 cUD/h3VCKSHtgVIs3xLBGYSJwb3FKNXVS2xE1kzbB5ZKVXrKNoIENqil/Cf2SfHV cp6R+SPWcHu79ZvB7JPPGeplfohwoHP89v+1VmLhc2o0mD6CuKyVU/QBoCcHcqMA U6DksquDOFczJZSfvkgdmOGjup5czQRxUX11eKvzWarE4GC+j4NSuHUaQTXtvPM6 Y+mpFEXX5lLRbtLevOP1Czvm4MS9Q2QTps70mDdsipWol8hHD/BeEIvnHRz+sTug BTNoBUGCwQMrAcjnj02r6LX2zWtEtefdi+zqJbQAIldNsLGyMcEWzv/9FIS3R/qy 8XDe24tsNlikfLMR0cN3f1+2JeANxdKz+bi4d9s3cXFH42AYTyS2dTd4uaNir73J co4vzLuu2+QVUhkHM/tqty1LkCiCc/4YizWN26cEar7qwU02OxY2kTLvtkCJkUPg 8qKrBC7m8kwOFjQgrIfBLX7JZkcXFBGk8/ehJImr2BrIoVyxo/eMbcgByU/J7MT8 rFEz0ciD0cmfHdRHNCk+y7AO+oMLKFjlKdw/fKifybYKu6boRhYPluV75Gp6SG12 mAWl3G0eQh5C2hrgUve1g8Aae3g1LDj1H/1Joy7SWWO/gLCMk3PLNaaZlSJhZQNg +y+TS/qanIA7AgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUtqeX gj10hZv3PJ+TmpV5dVKMbUcwDwYDVR0TAQH/BAUwAwEB/zAfBgNVHSMEGDAWgBS2 p5eCPXSFm/c8n5OalXl1UoxtRzANBgkqhkiG9w0BAQwFAAOCAgEAqMxhpr51nhVQ pGv7qHBFfLp+sVr8WyP6Cnf4mHGCDG3gXkaqk/QeoMPhk9tLrbKmXauw1GLLXrtm 9S3ul0A8Yute1hTWjOKWi0FpkzXmuZlrYrShF2Y0pmtjxrlO8iLpWA1WQdH6DErw M807u20hOq6OcrXDSvvpfeWxm4bu4uB9tPcy/SKE8YXJN3nptT+/XOR0so8RYgDd GGah2XsjX/GO1WfoVNpbOms2b/mBsTNHM3dA+VKq3dSDz4V4mZqTuXNnQkYRIer+ CqkbGmVps4+uFrb2S1ayLfmlyOw7YqPta9BO1UAJpB+Y1zqlklkg5LB9zVtzaL1t xKITDmcZuI1CfmwMmm6gJC3VRRvcxAIU/oVbZZfKTpBQCHpCNfnqwmbU+AGuHrS+ w6jv/naaoqYfRvaE7fzbzsQCzndILIyy7MMAo+wsVRjBfhnu4S/yrYObnqsZ38aK L4x35bcF7DvB7L6Gs4a8wPfc5+pbrrLMtTWGS9DiP7bY+A4A7l3j941Y/8+LN+lj X273CXE2whJdV/LItM3z7gLfEdxquVeEHVlNjM7IDiPCtyaaEBRx/pOyiriA8A4Q ntOoUAw3gi/q4Iqd4Sw5/7W0cwDk90imc6y/st53BIe0o82bNSQ3+pCTE4FCxpgm dTdmQRCsu/WU48IxK63nI1bMNSWSs1A= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFdDCCA1ygAwIBAgIPAWdfJ9b+euPkrL4JWwWeMA0GCSqGSIb3DQEBCwUAMEQx CzAJBgNVBAYTAkZJMRowGAYDVQQKDBFUZWxpYSBGaW5sYW5kIE95ajEZMBcGA1UE AwwQVGVsaWEgUm9vdCBDQSB2MjAeFw0xODExMjkxMTU1NTRaFw00MzExMjkxMTU1 NTRaMEQxCzAJBgNVBAYTAkZJMRowGAYDVQQKDBFUZWxpYSBGaW5sYW5kIE95ajEZ MBcGA1UEAwwQVGVsaWEgUm9vdCBDQSB2MjCCAiIwDQYJKoZIhvcNAQEBBQADggIP ADCCAgoCggIBALLQPwe84nvQa5n44ndp586dpAO8gm2h/oFlH0wnrI4AuhZ76zBq AMCzdGh+sq/H1WKzej9Qyow2RCRj0jbpDIX2Q3bVTKFgcmfiKDOlyzG4OiIjNLh9 vVYiQJ3q9HsDrWj8soFPmNB06o3lfc1jw6P23pLCWBnglrvFxKk9pXSW/q/5iaq9 lRdU2HhE8Qx3FZLgmEKnpNaqIJLNwaCzlrI6hEKNfdWV5Nbb6WLEWLN5xYzTNTOD n3WhUidhOPFZPY5Q4L15POdslv5e2QJltI5c0BE0312/UqeBAMN/mUWZFdUXyApT 7GPzmX3MaRKGwhfwAZ6/hLzRUssbkmbOpFPlob/E2wnW5olWK8jjfN7j/4nlNW4o 6GwLI1GpJQXrSPjdscr6bAhR77cYbETKJuFzxokGgeWKrLDiKca5JLNrRBH0pUPC TEPlcDaMtjNXepUugqD0XBCzYYP2AgWGLnwtbNwDRm41k9V6lS/eINhbfpSQBGq6 WT0EBXWdN6IOLj3rwaRSg/7Qa9RmjtzG6RJOHSpXqhC8fF6CfaamyfItufUXJ63R DolUK5X6wK0dmBR4M0KGCqlztft0DbcbMBnEWg4cJ7faGND/isgFuvGqHKI3t+ZI pEYslOqodmJHixBTB0hXbOKSTbauBcvcwUpej6w9GU7C7WB1K9vBykLVAgMBAAGj YzBhMB8GA1UdIwQYMBaAFHKs5DN5qkWH9v2sHZ7Wxy+G2CQ5MB0GA1UdDgQWBBRy rOQzeapFh/b9rB2e1scvhtgkOTAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUw AwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAoDtZpwmUPjaE0n4vOaWWl/oRrfxn83EJ 8rKJhGdEr7nv7ZbsnGTbMjBvZ5qsfl+yqwE2foH65IRe0qw24GtixX1LDoJt0nZi 0f6X+J8wfBj5tFJ3gh1229MdqfDBmgC9bXXYfef6xzijnHDoRnkDry5023X4blMM A8iZGok1GTzTyVR8qPAs5m4HeW9q4ebqkYJpCh3DflminmtGFZhb069GHWLIzoBS SRE/yQQSwxN8PzuKlts8oB4KtItUsiRnDe+Cy748fdHif64W1lZYudogsYMVoe+K TTJvQS8TUoKU1xrBeKJR3Stwbbca+few4GeXVtt8YVMJAygCQMez2P2ccGrGKMOF 6eLtGpOg3kuYooQ+BXcBlj37tCAPnHICehIv1aO6UXivKitEZU61/Qrowc15h2Er 3oBXRb9n8ZuRXqWk7FlIEA04x7D6w0RtBPV4UBySllva9bguulvP5fBqnUsvWHMt Ty3EHD70sz+rFQ47GUGKpMFXEmZxTPpT41frYpUJnlTd0cI8Vzy9OK2YZLe4A5pT VmBds9hCG1xLEooc6+t9xnppxyd/pPiL8uSUZodL6ZQHCRJ5irLrdATczvREWeAW ysUsWNc8e89ihmpQfTU2Zqf7N+cox9jQraVplI/owd8k+BsHMYeB2F326CjYSlKA rBPuUBQemMc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFpTCCA42gAwIBAgIUZPYOZXdhaqs7tOqFhLuxibhxkw8wDQYJKoZIhvcNAQEM BQAwWjELMAkGA1UEBhMCQ04xJTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dp ZXMsIEluYy4xJDAiBgNVBAMMG1RydXN0QXNpYSBHbG9iYWwgUm9vdCBDQSBHMzAe Fw0yMTA1MjAwMjEwMTlaFw00NjA1MTkwMjEwMTlaMFoxCzAJBgNVBAYTAkNOMSUw IwYDVQQKDBxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMuMSQwIgYDVQQDDBtU cnVzdEFzaWEgR2xvYmFsIFJvb3QgQ0EgRzMwggIiMA0GCSqGSIb3DQEBAQUAA4IC DwAwggIKAoICAQDAMYJhkuSUGwoqZdC+BqmHO1ES6nBBruL7dOoKjbmzTNyPtxNS T1QY4SxzlZHFZjtqz6xjbYdT8PfxObegQ2OwxANdV6nnRM7EoYNl9lA+sX4WuDqK AtCWHwDNBSHvBm3dIZwZQ0WhxeiAysKtQGIXBsaqvPPW5vxQfmZCHzyLpnl5hkA1 nyDvP+uLRx+PjsXUjrYsyUQE49RDdT/VP68czH5GX6zfZBCK70bwkPAPLfSIC7Ep qq+FqklYqL9joDiR5rPmd2jE+SoZhLsO4fWvieylL1AgdB4SQXMeJNnKziyhWTXA yB1GJ2Faj/lN03J5Zh6fFZAhLf3ti1ZwA0pJPn9pMRJpxx5cynoTi+jm9WAPzJMs hH/x/Gr8m0ed262IPfN2dTPXS6TIi/n1Q1hPy8gDVI+lhXgEGvNz8teHHUGf59gX zhqcD0r83ERoVGjiQTz+LISGNzzNPy+i2+f3VANfWdP3kXjHi3dqFuVJhZBFcnAv kV34PmVACxmZySYgWmjBNb9Pp1Hx2BErW+Canig7CjoKH8GB5S7wprlppYiU5msT f9FkPz2ccEblooV7WIQn3MSAPmeamseaMQ4w7OYXQJXZRe0Blqq/DPNL0WP3E1jA uPP6Z92bfW1K/zJMtSU7/xxnD4UiWQWRkUF3gdCFTIcQcf+eQxuulXUtgQIDAQAB o2MwYTAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFEDk5PIj7zjKsK5Xf/Ih MBY027ySMB0GA1UdDgQWBBRA5OTyI+84yrCuV3/yITAWNNu8kjAOBgNVHQ8BAf8E BAMCAQYwDQYJKoZIhvcNAQEMBQADggIBACY7UeFNOPMyGLS0XuFlXsSUT9SnYaP4 wM8zAQLpw6o1D/GUE3d3NZ4tVlFEbuHGLige/9rsR82XRBf34EzC4Xx8MnpmyFq2 XFNFV1pF1AWZLy4jVe5jaN/TG3inEpQGAHUNcoTpLrxaatXeL1nHo+zSh2bbt1S1 JKv0Q3jbSwTEb93mPmY+KfJLaHEih6D4sTNjduMNhXJEIlU/HHzp/LgV6FL6qj6j ITk1dImmasI5+njPtqzn59ZW/yOSLlALqbUHM/Q4X6RJpstlcHboCoWASzY9M/eV VHUl2qzEc4Jl6VL1XP04lQJqaTDFHApXB64ipCz5xUG3uOyfT0gA+QEEVcys+TIx xHWVBqB/0Y0n3bOppHKH/lmLmnp0Ft0WpWIp6zqW3IunaFnT63eROfjXy9mPX1on AX1daBli2MjN9LdyR75bl87yraKZk62Uy5P2EgmVtqvXO9A/EcswFi55gORngS1d 7XB4tmBZrOFdRWOPyN9yaFvqHbgB8X7754qz41SgOAngPN5C8sLtLpvzHzW2Ntjj gKGLzZlkD8Kqq7HK9W+eQ42EVJmzbsASZthwEPEGNTNDqJwuuhQxzhB/HIbjj9LV +Hfsm6vxL2PZQl/gZ4FkkfGXL/xuJvYz+NO1+MRiqzFRJQJ6+N1rZdVtTTDIZbpo FGWsJwt0ivKH -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICVTCCAdygAwIBAgIUTyNkuI6XY57GU4HBdk7LKnQV1tcwCgYIKoZIzj0EAwMw WjELMAkGA1UEBhMCQ04xJTAjBgNVBAoMHFRydXN0QXNpYSBUZWNobm9sb2dpZXMs IEluYy4xJDAiBgNVBAMMG1RydXN0QXNpYSBHbG9iYWwgUm9vdCBDQSBHNDAeFw0y MTA1MjAwMjEwMjJaFw00NjA1MTkwMjEwMjJaMFoxCzAJBgNVBAYTAkNOMSUwIwYD VQQKDBxUcnVzdEFzaWEgVGVjaG5vbG9naWVzLCBJbmMuMSQwIgYDVQQDDBtUcnVz dEFzaWEgR2xvYmFsIFJvb3QgQ0EgRzQwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAATx s8045CVD5d4ZCbuBeaIVXxVjAd7Cq92zphtnS4CDr5nLrBfbK5bKfFJV4hrhPVbw LxYI+hW8m7tH5j/uqOFMjPXTNvk4XatwmkcN4oFBButJ+bAp3TPsUKV/eSm4IJij YzBhMA8GA1UdEwEB/wQFMAMBAf8wHwYDVR0jBBgwFoAUpbtKl86zK3+kMd6Xg1mD pm9xy94wHQYDVR0OBBYEFKW7SpfOsyt/pDHel4NZg6ZvccveMA4GA1UdDwEB/wQE AwIBBjAKBggqhkjOPQQDAwNnADBkAjBe8usGzEkxn0AAbbd+NvBNEU/zy4k6LHiR UKNbwMp1JvK/kF0LgoxgKJ/GcJpo5PECMFxYDlZ2z1jD1xCMuo6u47xkdUfFVZDj /bpV6wfEU6s3qe4hsiFbYI89MvHVI5TWWA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICMTCCAbegAwIBAgIUNnThTXxlE8msg1UloD5Sfi9QaMcwCgYIKoZIzj0EAwMw WDELMAkGA1UEBhMCQ04xJTAjBgNVBAoTHFRydXN0QXNpYSBUZWNobm9sb2dpZXMs IEluYy4xIjAgBgNVBAMTGVRydXN0QXNpYSBUTFMgRUNDIFJvb3QgQ0EwHhcNMjQw NTE1MDU0MTU2WhcNNDQwNTE1MDU0MTU1WjBYMQswCQYDVQQGEwJDTjElMCMGA1UE ChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAxMZVHJ1c3RB c2lhIFRMUyBFQ0MgUm9vdCBDQTB2MBAGByqGSM49AgEGBSuBBAAiA2IABLh/pVs/ AT598IhtrimY4ZtcU5nb9wj/1WrgjstEpvDBjL1P1M7UiFPoXlfXTr4sP/MSpwDp guMqWzJ8S5sUKZ74LYO1644xST0mYekdcouJtgq7nDM1D9rs3qlKH8kzsaNCMEAw DwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQULIVTu7FDzTLqnqOH/qKYqKaT6RAw DgYDVR0PAQH/BAQDAgEGMAoGCCqGSM49BAMDA2gAMGUCMFRH18MtYYZI9HlaVQ01 L18N9mdsd0AaRuf4aFtOJx24mH1/k78ITcTaRTChD15KeAIxAKORh/IRM4PDwYqR OkwrULG9IpRdNYlzg8WbGf60oenUoWa2AaU2+dhoYSi3dOGiMQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFgDCCA2igAwIBAgIUHBjYz+VTPyI1RlNUJDxsR9FcSpwwDQYJKoZIhvcNAQEM BQAwWDELMAkGA1UEBhMCQ04xJTAjBgNVBAoTHFRydXN0QXNpYSBUZWNobm9sb2dp ZXMsIEluYy4xIjAgBgNVBAMTGVRydXN0QXNpYSBUTFMgUlNBIFJvb3QgQ0EwHhcN MjQwNTE1MDU0MTU3WhcNNDQwNTE1MDU0MTU2WjBYMQswCQYDVQQGEwJDTjElMCMG A1UEChMcVHJ1c3RBc2lhIFRlY2hub2xvZ2llcywgSW5jLjEiMCAGA1UEAxMZVHJ1 c3RBc2lhIFRMUyBSU0EgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCC AgoCggIBAMMWuBtqpERz5dZO9LnPWwvB0ZqB9WOwj0PBuwhaGnrhB3YmH49pVr7+ NmDQDIPNlOrnxS1cLwUWAp4KqC/lYCZUlviYQB2srp10Zy9U+5RjmOMmSoPGlbYJ Q1DNDX3eRA5gEk9bNb2/mThtfWza4mhzH/kxpRkQcwUqwzIZheo0qt1CHjCNP561 HmHVb70AcnKtEj+qpklz8oYVlQwQX1Fkzv93uMltrOXVmPGZLmzjyUT5tUMnCE32 ft5EebuyjBza00tsLtbDeLdM1aTk2tyKjg7/D8OmYCYozza/+lcK7Fs/6TAWe8Tb xNRkoDD75f0dcZLdKY9BWN4ArTr9PXwaqLEX8E40eFgl1oUh63kd0Nyrz2I8sMeX i9bQn9P+PN7F4/w6g3CEIR0JwqH8uyghZVNgepBtljhb//HXeltt08lwSUq6HTrQ UNoyIBnkiz/r1RYmNzz7dZ6wB3C4FGB33PYPXFIKvF1tjVEK2sUYyJtt3LCDs3+j TnhMmCWr8n4uIF6CFabW2I+s5c0yhsj55NqJ4js+k8UTav/H9xj8Z7XvGCxUq0DT bE3txci3OE9kxJRMT6DNrqXGJyV1J23G2pyOsAWZ1SgRxSHUuPzHlqtKZFlhaxP8 S8ySpg+kUb8OWJDZgoM5pl+z+m6Ss80zDoWo8SnTq1mt1tve1CuBAgMBAAGjQjBA MA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFLgHkXlcBvRG/XtZylomkadFK/hT MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQwFAAOCAgEAIZtqBSBdGBanEqT3 Rz/NyjuujsCCztxIJXgXbODgcMTWltnZ9r96nBO7U5WS/8+S4PPFJzVXqDuiGev4 iqME3mmL5Dw8veWv0BIb5Ylrc5tvJQJLkIKvQMKtuppgJFqBTQUYo+IzeXoLH5Pt 7DlK9RME7I10nYEKqG/odv6LTytpEoYKNDbdgptvT+Bz3Ul/KD7JO6NXBNiT2Twp 2xIQaOHEibgGIOcberyxk2GaGUARtWqFVwHxtlotJnMnlvm5P1vQiJ3koP26TpUJ g3933FEFlJ0gcXax7PqJtZwuhfG5WyRasQmr2soaB82G39tp27RIGAAtvKLEiUUj pQ7hRGU+isFqMB3iYPg6qocJQrmBktwliJiJ8Xw18WLK7nn4GS/+X/jbh87qqA8M pugLoDzga5SYnH+tBuYc6kIQX+ImFTw3OffXvO645e8D7r0i+yiGNFjEWn9hongP XvPKnbwbPKfILfanIhHKA9jnZwqKDss1jjQ52MjqjZ9k4DewbNfFj8GQYSbbJIwe SsCI3zWQzj8C9GRh3sfIB5XeMhg6j6JCQCTl1jNdfK7vsU1P1FeQNWrcrgSXSYk0 ly4wBOeY99sLAZDBHwo/+ML+TvrbmnNzFrwFuHnYWa8G5z9nODmxfKuU4CkUpijy 323imttUQ/hHWKNddBWcwauwxzQ= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFszCCA5ugAwIBAgIUEwLV4kBMkkaGFmddtLu7sms+/BMwDQYJKoZIhvcNAQEL BQAwYTELMAkGA1UEBhMCVE4xNzA1BgNVBAoMLkFnZW5jZSBOYXRpb25hbGUgZGUg Q2VydGlmaWNhdGlvbiBFbGVjdHJvbmlxdWUxGTAXBgNVBAMMEFR1blRydXN0IFJv b3QgQ0EwHhcNMTkwNDI2MDg1NzU2WhcNNDQwNDI2MDg1NzU2WjBhMQswCQYDVQQG EwJUTjE3MDUGA1UECgwuQWdlbmNlIE5hdGlvbmFsZSBkZSBDZXJ0aWZpY2F0aW9u IEVsZWN0cm9uaXF1ZTEZMBcGA1UEAwwQVHVuVHJ1c3QgUm9vdCBDQTCCAiIwDQYJ KoZIhvcNAQEBBQADggIPADCCAgoCggIBAMPN0/y9BFPdDCA61YguBUtB9YOCfvdZ n56eY+hz2vYGqU8ftPkLHzmMmiDQfgbU7DTZhrx1W4eI8NLZ1KMKsmwb60ksPqxd 2JQDoOw05TDENX37Jk0bbjBU2PWARZw5rZzJJQRNmpA+TkBuimvNKWfGzC3gdOgF VwpIUPp6Q9p+7FuaDmJ2/uqdHYVy7BG7NegfJ7/Boce7SBbdVtfMTqDhuazb1YMZ GoXRlJfXyqNlC/M4+QKu3fZnz8k/9YosRxqZbwUN/dAdgjH8KcwAWJeRTIAAHDOF li/LQcKLEITDCSSJH7UP2dl3RxiSlGBcx5kDPP73lad9UKGAwqmDrViWVSHbhlnU r8a83YFuB9tgYv7sEG7aaAH0gxupPqJbI9dkxt/con3YS7qC0lH4Zr8GRuR5KiY2 eY8fTpkdso8MDhz/yV3A/ZAQprE38806JG60hZC/gLkMjNWb1sjxVj8agIl6qeIb MlEsPvLfe/ZdeikZjuXIvTZxi11Mwh0/rViizz1wTaZQmCXcI/m4WEEIcb9PuISg jwBUFfyRbVinljvrS5YnzWuioYasDXxU5mZMZl+QviGaAkYt5IPCgLnPSz7ofzwB 7I9ezX/SKEIBlYrilz0QIX32nRzFNKHsLA4KUiwSVXAkPcvCFDVDXSdOvsC9qnyW 5/yeYa1E0wCXAgMBAAGjYzBhMB0GA1UdDgQWBBQGmpsfU33x9aTI04Y+oXNZtPdE ITAPBgNVHRMBAf8EBTADAQH/MB8GA1UdIwQYMBaAFAaamx9TffH1pMjThj6hc1m0 90QhMA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAqgVutt0Vyb+z xiD2BkewhpMl0425yAA/l/VSJ4hxyXT968pk21vvHl26v9Hr7lxpuhbI87mP0zYu QEkHDVneixCwSQXi/5E/S7fdAo74gShczNxtr18UnH1YeA32gAm56Q6XKRm4t+v4 FstVEuTGfbvE7Pi1HE4+Z7/FXxttbUcoqgRYYdZ2vyJ/0Adqp2RT8JeNnYA/u8EH 22Wv5psymsNUk8QcCMNE+3tjEUPRahphanltkE8pjkcFwRJpadbGNjHh/PqAulxP xOu3Mqz4dWEX1xAZufHSCe96Qp1bWgvUxpVOKs7/B9dPfhgGiPEZtdmYu65xxBzn dFlY7wyJz4sfdZMaBBSSSFCp61cpABbjNhzI+L/wM9VBD8TMPN3pM0MBkRArHtG5 Xc0yGYuPjCB31yLEQtyEFpslbei0VXF/sHyz03FJuc9SpAQ/3D2gu68zngowYI7b nV2UqL1g52KAdoGDDIzMMEZJ4gzSqK/rYXHv5yJiqfdcZGyfFoxnNidF9Ql7v/YQ CvGwjVRDjAS6oz/v4jXH+XTgbzRB0L9zZVcg+ZtnemZoJE6AZb0QmQZZ8mWvuMZH u/2QeItBcy6vVR/cO5JyboTT0GFMDcx2V+IthSIVNg3rAZ3r2OvEhJn7wAzMMujj d9qDRIueVSjAi1jTkD5OGwDxFa2DK5o= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFWjCCA0KgAwIBAgIQT9Irj/VkyDOeTzRYZiNwYDANBgkqhkiG9w0BAQsFADBH MQswCQYDVQQGEwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxJTAjBgNVBAMMHFVDQSBF eHRlbmRlZCBWYWxpZGF0aW9uIFJvb3QwHhcNMTUwMzEzMDAwMDAwWhcNMzgxMjMx MDAwMDAwWjBHMQswCQYDVQQGEwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxJTAjBgNV BAMMHFVDQSBFeHRlbmRlZCBWYWxpZGF0aW9uIFJvb3QwggIiMA0GCSqGSIb3DQEB AQUAA4ICDwAwggIKAoICAQCpCQcoEwKwmeBkqh5DFnpzsZGgdT6o+uM4AHrsiWog D4vFsJszA1qGxliG1cGFu0/GnEBNyr7uaZa4rYEwmnySBesFK5pI0Lh2PpbIILvS sPGP2KxFRv+qZ2C0d35qHzwaUnoEPQc8hQ2E0B92CvdqFN9y4zR8V05WAT558aop O2z6+I9tTcg1367r3CTueUWnhbYFiN6IXSV8l2RnCdm/WhUFhvMJHuxYMjMR83dk sHYf5BA1FxvyDrFspCqjc/wJHx4yGVMR59mzLC52LqGj3n5qiAno8geK+LLNEOfi c0CTuwjRP+H8C5SzJe98ptfRr5//lpr1kXuYC3fUfugH0mK1lTnj8/FtDw5lhIpj VMWAtuCeS31HJqcBCF3RiJ7XwzJE+oJKCmhUfzhTA8ykADNkUVkLo4KRel7sFsLz KuZi2irbWWIQJUoqgQtHB0MGcIfS+pMRKXpITeuUx3BNr2fVUbGAIAEBtHoIppB/ TuDvB0GHr2qlXov7z1CymlSvw4m6WC31MJixNnI5fkkE/SmnTHnkBVfblLkWU41G sx2VYVdWf6/wFlthWG82UBEL2KwrlRYaDh8IzTY0ZRBiZtWAXxQgXy0MoHgKaNYs 1+lvK9JKBZP8nm9rZ/+I8U6laUpSNwXqxhaN0sSZ0YIrO7o1dfdRUVjzyAfd5LQD fwIDAQABo0IwQDAdBgNVHQ4EFgQU2XQ65DA9DfcS3H5aBZ8eNJr34RQwDwYDVR0T AQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAYYwDQYJKoZIhvcNAQELBQADggIBADaN l8xCFWQpN5smLNb7rhVpLGsaGvdftvkHTFnq88nIua7Mui563MD1sC3AO6+fcAUR ap8lTwEpcOPlDOHqWnzcSbvBHiqB9RZLcpHIojG5qtr8nR/zXUACE/xOHAbKsxSQ VBcZEhrxH9cMaVr2cXj0lH2RC47skFSOvG+hTKv8dGT9cZr4QQehzZHkPJrgmzI5 c6sq1WnIeJEmMX3ixzDx/BR4dxIOE/TdFpS/S2d7cFOFyrC78zhNLJA5wA3CXWvp 4uXViI3WLL+rG761KIcSF3Ru/H38j9CHJrAb+7lsq+KePRXBOy5nAliRn+/4Qh8s t2j1da3Ptfb/EX3C8CSlrdP6oDyp+l3cpaDvRKS+1ujl5BOWF3sGPjLtx7dCvHaj 2GU4Kzg1USEODm8uNBNA4StnDG1KQTAYI1oyVZnJF+A83vbsea0rWBmirSwiGpWO vpaQXUJXxPkUAzUrHC1RVwinOt4/5Mi0A3PCwSaAuwtCH60NryZy2sy+s6ODWA2C xR9GUeOcGMyNm43sSet1UNWMKFnKdDTajAshqx7qG+XH/RU+wBeq+yNuJkbL+vmx cmtpzyKEC2IPrNkZAJSidjzULZrtBJ4tBmIQN1IchXIbJ+XMxjHsN+xjWZsLHXbM fjKaiJUINlK73nZfdklJrX+9ZSCyycErdhh2n1ax -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFRjCCAy6gAwIBAgIQXd+x2lqj7V2+WmUgZQOQ7zANBgkqhkiG9w0BAQsFADA9 MQswCQYDVQQGEwJDTjERMA8GA1UECgwIVW5pVHJ1c3QxGzAZBgNVBAMMElVDQSBH bG9iYWwgRzIgUm9vdDAeFw0xNjAzMTEwMDAwMDBaFw00MDEyMzEwMDAwMDBaMD0x CzAJBgNVBAYTAkNOMREwDwYDVQQKDAhVbmlUcnVzdDEbMBkGA1UEAwwSVUNBIEds b2JhbCBHMiBSb290MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxeYr b3zvJgUno4Ek2m/LAfmZmqkywiKHYUGRO8vDaBsGxUypK8FnFyIdK+35KYmToni9 kmugow2ifsqTs6bRjDXVdfkX9s9FxeV67HeToI8jrg4aA3++1NDtLnurRiNb/yzm VHqUwCoV8MmNsHo7JOHXaOIxPAYzRrZUEaalLyJUKlgNAQLx+hVRZ2zA+te2G3/R VogvGjqNO7uCEeBHANBSh6v7hn4PJGtAnTRnvI3HLYZveT6OqTwXS3+wmeOwcWDc C/Vkw85DvG1xudLeJ1uK6NjGruFZfc8oLTW4lVYa8bJYS7cSN8h8s+1LgOGN+jIj tm+3SJUIsUROhYw6AlQgL9+/V087OpAh18EmNVQg7Mc/R+zvWr9LesGtOxdQXGLY D0tK3Cv6brxzks3sx1DoQZbXqX5t2Okdj4q1uViSukqSKwxW/YDrCPBeKW4bHAyv j5OJrdu9o54hyokZ7N+1wxrrFv54NkzWbtA+FxyQF2smuvt6L78RHBgOLXMDj6Dl NaBa4kx1HXHhOThTeEDMg5PXCp6dW4+K5OXgSORIskfNTip1KnvyIvbJvgmRlld6 iIis7nCs+dwp4wwcOxJORNanTrAmyPPZGpeRaOrvjUYG0lZFWJo8DA+DuAUlwznP O6Q0ibd5Ei9Hxeepl2n8pndntd978XplFeRhVmUCAwEAAaNCMEAwDgYDVR0PAQH/ BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wHQYDVR0OBBYEFIHEjMz15DD/pQwIX4wV ZyF0Ad/fMA0GCSqGSIb3DQEBCwUAA4ICAQATZSL1jiutROTL/7lo5sOASD0Ee/oj L3rtNtqyzm325p7lX1iPyzcyochltq44PTUbPrw7tgTQvPlJ9Zv3hcU2tsu8+Mg5 1eRfB70VVJd0ysrtT7q6ZHafgbiERUlMjW+i67HM0cOU2kTC5uLqGOiiHycFutfl 1qnN3e92mI0ADs0b+gO3joBYDic/UvuUospeZcnWhNq5NXHzJsBPd+aBJ9J3O5oU b3n09tDh05S60FdRvScFDcH9yBIw7m+NESsIndTUv4BFFJqIRNow6rSn4+7vW4LV PtateJLbXDzz2K36uGt/xDYotgIVilQsnLAXc47QN6MUPJiVAAwpBVueSUmxX8fj y88nZY41F7dXyDDZQVu5FLbowg+UMaeUmMxq67XhJ/UQqAHojhJi6IjMtX9Gl8Cb EGY4GjZGXyJoPd/JxhMnq1MGrKI8hgZlb7F+sSlEmqO6SWkoaY/X5V+tBIZkbxqg DMUIYs6Ao9Dz7GjevjPHF1t/gMRMTLGmhIrDO7gJzRSBuhjjVFc2/tsvfEehOjPI +Vg7RE+xygKJBJYoaMVLuCaJu9YzL1DV/pqJuhgyklTGW+Cd+V7lDSKb9triyCGy YiGqhkCyLmTTX8jjfhFnRR8F/uOi77Oos/N9j/gMHyIfLXC0uAE0djAA5SN4p1bX UB+K+wb1whnw0A== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICjzCCAhWgAwIBAgIQXIuZxVqUxdJxVt7NiYDMJjAKBggqhkjOPQQDAzCBiDEL MAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNl eSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMT JVVTRVJUcnVzdCBFQ0MgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAwMjAx MDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNVBAgT Ck5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVUaGUg VVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBFQ0MgQ2VydGlm aWNhdGlvbiBBdXRob3JpdHkwdjAQBgcqhkjOPQIBBgUrgQQAIgNiAAQarFRaqflo I+d61SRvU8Za2EurxtW20eZzca7dnNYMYf3boIkDuAUU7FfO7l0/4iGzzvfUinng o4N+LZfQYcTxmdwlkWOrfzCjtHDix6EznPO/LlxTsV+zfTJ/ijTjeXmjQjBAMB0G A1UdDgQWBBQ64QmG1M8ZwpZ2dEl23OA1xmNjmjAOBgNVHQ8BAf8EBAMCAQYwDwYD VR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjA2Z6EWCNzklwBBHU6+4WMB zzuqQhFkoJ2UOQIReVx7Hfpkue4WQrO/isIJxOzksU0CMQDpKmFHjFJKS04YcPbW RNZu9YO6bVi9JNlWSOrvxKJGgYhqOkbRqZtNyWHa0V1Xahg= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF3jCCA8agAwIBAgIQAf1tMPyjylGoG7xkDjUDLTANBgkqhkiG9w0BAQwFADCB iDELMAkGA1UEBhMCVVMxEzARBgNVBAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0pl cnNleSBDaXR5MR4wHAYDVQQKExVUaGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNV BAMTJVVTRVJUcnVzdCBSU0EgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTAw MjAxMDAwMDAwWhcNMzgwMTE4MjM1OTU5WjCBiDELMAkGA1UEBhMCVVMxEzARBgNV BAgTCk5ldyBKZXJzZXkxFDASBgNVBAcTC0plcnNleSBDaXR5MR4wHAYDVQQKExVU aGUgVVNFUlRSVVNUIE5ldHdvcmsxLjAsBgNVBAMTJVVTRVJUcnVzdCBSU0EgQ2Vy dGlmaWNhdGlvbiBBdXRob3JpdHkwggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIK AoICAQCAEmUXNg7D2wiz0KxXDXbtzSfTTK1Qg2HiqiBNCS1kCdzOiZ/MPans9s/B 3PHTsdZ7NygRK0faOca8Ohm0X6a9fZ2jY0K2dvKpOyuR+OJv0OwWIJAJPuLodMkY tJHUYmTbf6MG8YgYapAiPLz+E/CHFHv25B+O1ORRxhFnRghRy4YUVD+8M/5+bJz/ Fp0YvVGONaanZshyZ9shZrHUm3gDwFA66Mzw3LyeTP6vBZY1H1dat//O+T23LLb2 VN3I5xI6Ta5MirdcmrS3ID3KfyI0rn47aGYBROcBTkZTmzNg95S+UzeQc0PzMsNT 79uq/nROacdrjGCT3sTHDN/hMq7MkztReJVni+49Vv4M0GkPGw/zJSZrM233bkf6 c0Plfg6lZrEpfDKEY1WJxA3Bk1QwGROs0303p+tdOmw1XNtB1xLaqUkL39iAigmT Yo61Zs8liM2EuLE/pDkP2QKe6xJMlXzzawWpXhaDzLhn4ugTncxbgtNMs+1b/97l c6wjOy0AvzVVdAlJ2ElYGn+SNuZRkg7zJn0cTRe8yexDJtC/QV9AqURE9JnnV4ee UB9XVKg+/XRjL7FQZQnmWEIuQxpMtPAlR1n6BB6T1CZGSlCBst6+eLf8ZxXhyVeE Hg9j1uliutZfVS7qXMYoCAQlObgOK6nyTJccBz8NUvXt7y+CDwIDAQABo0IwQDAd BgNVHQ4EFgQUU3m/WqorSs9UgOHYm8Cd8rIDZsswDgYDVR0PAQH/BAQDAgEGMA8G A1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEMBQADggIBAFzUfA3P9wF9QZllDHPF Up/L+M+ZBn8b2kMVn54CVVeWFPFSPCeHlCjtHzoBN6J2/FNQwISbxmtOuowhT6KO VWKR82kV2LyI48SqC/3vqOlLVSoGIG1VeCkZ7l8wXEskEVX/JJpuXior7gtNn3/3 ATiUFJVDBwn7YKnuHKsSjKCaXqeYalltiz8I+8jRRa8YFWSQEg9zKC7F4iRO/Fjs 8PRF/iKz6y+O0tlFYQXBl2+odnKPi4w2r78NBc5xjeambx9spnFixdjQg3IM8WcR iQycE0xyNN+81XHfqnHd4blsjDwSXWXavVcStkNr/+XeTWYRUc+ZruwXtuhxkYze Sf7dNXGiFSeUHM9h4ya7b6NnJSFd5t0dCy5oGzuCr+yDZ4XUmFF0sbmZgIn/f3gZ XHlKYC6SQK5MNyosycdiyA5d9zZbyuAlJQG03RoHnHcAP9Dc1ew91Pq7P8yF1m9/ qS3fuQL39ZeatTXaw2ewh0qpKJ4jjv9cJ2vhsE/zB+4ALtRZh8tSQZXq9EfX7mRB VXyNWQKV3WKdwrnuWih0hKWbt5DHDAff9Yk2dDLWKMGwsAvgnEzDHNb842m1R0aB L6KCq9NjRHDEjf8tM7qtj3u1cIiuPhnPQCjY/MiQu12ZIvVS5ljFH4gxQ+6IHdfG jjxDah2nGN59PRbxYvnKkKj9 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFRzCCAy+gAwIBAgIJEQA0tk7GNi02MA0GCSqGSIb3DQEBCwUAMEExCzAJBgNV BAYTAlJPMRQwEgYDVQQKEwtDRVJUU0lHTiBTQTEcMBoGA1UECxMTY2VydFNJR04g Uk9PVCBDQSBHMjAeFw0xNzAyMDYwOTI3MzVaFw00MjAyMDYwOTI3MzVaMEExCzAJ BgNVBAYTAlJPMRQwEgYDVQQKEwtDRVJUU0lHTiBTQTEcMBoGA1UECxMTY2VydFNJ R04gUk9PVCBDQSBHMjCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAMDF dRmRfUR0dIf+DjuW3NgBFszuY5HnC2/OOwppGnzC46+CjobXXo9X69MhWf05N0Iw vlDqtg+piNguLWkh59E3GE59kdUWX2tbAMI5Qw02hVK5U2UPHULlj88F0+7cDBrZ uIt4ImfkabBoxTzkbFpG583H+u/E7Eu9aqSs/cwoUe+StCmrqzWaTOTECMYmzPhp n+Sc8CnTXPnGFiWeI8MgwT0PPzhAsP6CRDiqWhqKa2NYOLQV07YRaXseVO6MGiKs cpc/I1mbySKEwQdPzH/iV8oScLumZfNpdWO9lfsbl83kqK/20U6o2YpxJM02PbyW xPFsqa7lzw1uKA2wDrXKUXt4FMMgL3/7FFXhEZn91QqhngLjYl/rNUssuHLoPj1P rCy7Lobio3aP5ZMqz6WryFyNSwb/EkaseMsUBzXgqd+L6a8VTxaJW732jcZZroiF DsGJ6x9nxUWO/203Nit4ZoORUSs9/1F3dmKh7Gc+PoGD4FapUB8fepmrY7+EF3fx DTvf95xhszWYijqy7DwaNz9+j5LP2RIUZNoQAhVB/0/E6xyjyfqZ90bp4RjZsbgy LcsUDFDYg2WD7rlcz8sFWkz6GZdr1l0T08JcVLwyc6B49fFtHsufpaafItzRUZ6C eWRgKRM+o/1Pcmqr4tTluCRVLERLiohEnMqE0yo7AgMBAAGjQjBAMA8GA1UdEwEB /wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBSCIS1mxteg4BXrzkwJ d8RgnlRuAzANBgkqhkiG9w0BAQsFAAOCAgEAYN4auOfyYILVAzOBywaK8SJJ6ejq kX/GM15oGQOGO0MBzwdw5AgeZYWR5hEit/UCI46uuR59H35s5r0l1ZUa8gWmr4UC b6741jH/JclKyMeKqdmfS0mbEVeZkkMR3rYzpMzXjWR91M08KCy0mpbqTfXERMQl qiCA2ClV9+BB/AYm/7k29UMUA2Z44RGx2iBfRgB4ACGlHgAoYXhvqAEBj500mv/0 OJD7uNGzcgbJceaBxXntC6Z58hMLnPddDnskk7RI24Zf3lCGeOdA5jGokHZwYa+c NywRtYK3qq4kNFtyDGkNzVmf9nGvnAvRCjj5BiKDUyUM/FHE5r7iOZULJK2v0ZXk ltd0ZGtxTgI8qoXzIKNDOXZbbFD+mpwUHmUUihW9o4JFWklWatKcsWMy5WHgUyIO pwpJ6st+H6jiYoD2EEVSmAYY3qXNL3+q1Ok+CHLsIwMCPKaq2LxndD0UF/tUSxfj 03k9bWtJySgOLnRQvwzZRjoQhsmnP+mg7H/rpXdYaXHmgwo38oZJar55CJD2AhZk PuXaTH4MNMn5X7azKFGnpyuqSfqNZSlO42sTp5SjLVFteAxEy9/eCG/Oo2Sr05WE 1LlSVHJ7liXMvGnjSG4N0MedJ5qq+BOS3R7fY581qRY27Iy4g/Q9iY/NtBde17MX QRBdJ3NghVdJIgc= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICQDCCAeWgAwIBAgIMAVRI7yH9l1kN9QQKMAoGCCqGSM49BAMCMHExCzAJBgNV BAYTAkhVMREwDwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UECgwNTWljcm9zZWMgTHRk LjEXMBUGA1UEYQwOVkFUSFUtMjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3ppZ25vIFJv b3QgQ0EgMjAxNzAeFw0xNzA4MjIxMjA3MDZaFw00MjA4MjIxMjA3MDZaMHExCzAJ BgNVBAYTAkhVMREwDwYDVQQHDAhCdWRhcGVzdDEWMBQGA1UECgwNTWljcm9zZWMg THRkLjEXMBUGA1UEYQwOVkFUSFUtMjM1ODQ0OTcxHjAcBgNVBAMMFWUtU3ppZ25v IFJvb3QgQ0EgMjAxNzBZMBMGByqGSM49AgEGCCqGSM49AwEHA0IABJbcPYrYsHtv xie+RJCxs1YVe45DJH0ahFnuY2iyxl6H0BVIHqiQrb1TotreOpCmYF9oMrWGQd+H Wyx7xf58etqjYzBhMA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0G A1UdDgQWBBSHERUI0arBeAyxr87GyZDvvzAEwDAfBgNVHSMEGDAWgBSHERUI0arB eAyxr87GyZDvvzAEwDAKBggqhkjOPQQDAgNJADBGAiEAtVfd14pVCzbhhkT61Nlo jbjcI4qKDdQvfepz7L9NbKgCIQDLpbQS+ue16M9+k/zzNY9vTlp8tLxOsvxyqltZ +efcMQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICzzCCAjGgAwIBAgINAOhvGHvWOWuYSkmYCjAKBggqhkjOPQQDBDB1MQswCQYD VQQGEwJIVTERMA8GA1UEBwwIQnVkYXBlc3QxFjAUBgNVBAoMDU1pY3Jvc2VjIEx0 ZC4xFzAVBgNVBGEMDlZBVEhVLTIzNTg0NDk3MSIwIAYDVQQDDBllLVN6aWdubyBU TFMgUm9vdCBDQSAyMDIzMB4XDTIzMDcxNzE0MDAwMFoXDTM4MDcxNzE0MDAwMFow dTELMAkGA1UEBhMCSFUxETAPBgNVBAcMCEJ1ZGFwZXN0MRYwFAYDVQQKDA1NaWNy b3NlYyBMdGQuMRcwFQYDVQRhDA5WQVRIVS0yMzU4NDQ5NzEiMCAGA1UEAwwZZS1T emlnbm8gVExTIFJvb3QgQ0EgMjAyMzCBmzAQBgcqhkjOPQIBBgUrgQQAIwOBhgAE AGgP36J8PKp0iGEKjcJMpQEiFNT3YHdCnAo4YKGMZz6zY+n6kbCLS+Y53wLCMAFS AL/fjO1ZrTJlqwlZULUZwmgcAOAFX9pQJhzDrAQixTpN7+lXWDajwRlTEArRzT/v SzUaQ49CE0y5LBqcvjC2xN7cS53kpDzLLtmt3999Cd8ukv+ho2MwYTAPBgNVHRMB Af8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQUWYQCYlpGePVd3I8K ECgj3NXW+0UwHwYDVR0jBBgwFoAUWYQCYlpGePVd3I8KECgj3NXW+0UwCgYIKoZI zj0EAwQDgYsAMIGHAkIBLdqu9S54tma4n7Zwf2Z0z+yOfP7AAXmazlIC58PRDHpt y7Ve7hekm9sEdu4pKeiv+62sUvTXK9Z3hBC9xdIoaDQCQTV2WnXzkoYI9bIeCvZl C9p2x1L/Cx6AcCIwwzPbGO2E14vs7dOoY4G1VnxHx1YwlGhza9IuqbnZLBwpvQy6 uWWL -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFsDCCA5igAwIBAgIQFci9ZUdcr7iXAF7kBtK8nTANBgkqhkiG9w0BAQUFADBe MQswCQYDVQQGEwJUVzEjMCEGA1UECgwaQ2h1bmdod2EgVGVsZWNvbSBDby4sIEx0 ZC4xKjAoBgNVBAsMIWVQS0kgUm9vdCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTAe Fw0wNDEyMjAwMjMxMjdaFw0zNDEyMjAwMjMxMjdaMF4xCzAJBgNVBAYTAlRXMSMw IQYDVQQKDBpDaHVuZ2h3YSBUZWxlY29tIENvLiwgTHRkLjEqMCgGA1UECwwhZVBL SSBSb290IENlcnRpZmljYXRpb24gQXV0aG9yaXR5MIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEA4SUP7o3biDN1Z82tH306Tm2d0y8U82N0ywEhajfqhFAH SyZbCUNsIZ5qyNUD9WBpj8zwIuQf5/dqIjG3LBXy4P4AakP/h2XGtRrBp0xtInAh ijHyl3SJCRImHJ7K2RKilTza6We/CKBk49ZCt0Xvl/T29de1ShUCWH2YWEtgvM3X DZoTM1PRYfl61dd4s5oz9wCGzh1NlDivqOx4UXCKXBCDUSH3ET00hl7lSM2XgYI1 TBnsZfZrxQWh7kcT1rMhJ5QQCtkkO7q+RBNGMD+XPNjX12ruOzjjK9SXDrkb5wdJ fzcq+Xd4z1TtW0ado4AOkUPB1ltfFLqfpo0kR0BZv3I4sjZsN/+Z0V0OWQqraffA sgRFelQArr5T9rXn4fg8ozHSqf4hUmTFpmfwdQcGlBSBVcYn5AGPF8Fqcde+S/uU WH1+ETOxQvdibBjWzwloPn9s9h6PYq2lY9sJpx8iQkEeb5mKPtf5P0B6ebClAZLS nT0IFaUQAS2zMnaolQ2zepr7BxB4EW/hj8e6DyUadCrlHJhBmd8hh+iVBmoKs2pH dmX2Os+PYhcZewoozRrSgx4hxyy/vv9haLdnG7t4TY3OZ+XkwY63I2binZB1NJip NiuKmpS5nezMirH4JYlcWrYvjB9teSSnUmjDhDXiZo1jDiVN1Rmy5nk3pyKdVDEC AwEAAaNqMGgwHQYDVR0OBBYEFB4M97Zn8uGSJglFwFU5Lnc/QkqiMAwGA1UdEwQF MAMBAf8wOQYEZyoHAAQxMC8wLQIBADAJBgUrDgMCGgUAMAcGBWcqAwAABBRFsMLH ClZ87lt4DJX5GFPBphzYEDANBgkqhkiG9w0BAQUFAAOCAgEACbODU1kBPpVJufGB uvl2ICO1J2B01GqZNF5sAFPZn/KmsSQHRGoqxqWOeBLoR9lYGxMqXnmbnwoqZ6Yl PwZpVnPDimZI+ymBV3QGypzqKOg4ZyYr8dW1P2WT+DZdjo2NQCCHGervJ8A9tDkP JXtoUHRVnAxZfVo9QZQlUgjgRywVMRnVvwdVxrsStZf0X4OFunHB2WyBEXYKCrC/ gpf36j36+uwtqSiUO1bd0lEursC9CBWMd1I0ltabrNMdjmEPNXubrjlpC2JgQCA2 j6/7Nu4tCEoduL+bXPjqpRugc6bY+G7gMwRfaKonh+3ZwZCc7b3jajWvY9+rGNm6 5ulK6lCKD2GTHuItGeIwlDWSXQ62B68ZgI9HkFFLLk3dheLSClIKF5r8GrBQAuUB o2M3IUxExJtRmREOc5wGj1QupyheRDmHVi03vYVElOEMSyycw5KFNGHLD7ibSkNS /jQ6fbjpKdx2qcgw+BRxgMYeNkh0IkFch4LoGHGLQYlE535YW6i4jRPpp2zDR+2z Gp1iro2C6pSe3VkQw63d4k3jMdXH7OjysP6SHhYKGvzZ8/gntsm+HbRsZJB/9OTE W9c3rkIO3aQab3yIVMUWbuF6aC74Or8NpDyJO3inTmODBCEIZ43ygknQW/2xzQ+D hNQ+IIX3Sj0rnP0qCglN6oH4EZw= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICKzCCAbGgAwIBAgIKe3G2gla4EnycqDAKBggqhkjOPQQDAzBaMQswCQYDVQQG EwJVUzETMBEGA1UECxMKZW1TaWduIFBLSTEUMBIGA1UEChMLZU11ZGhyYSBJbmMx IDAeBgNVBAMTF2VtU2lnbiBFQ0MgUm9vdCBDQSAtIEMzMB4XDTE4MDIxODE4MzAw MFoXDTQzMDIxODE4MzAwMFowWjELMAkGA1UEBhMCVVMxEzARBgNVBAsTCmVtU2ln biBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMSAwHgYDVQQDExdlbVNpZ24gRUND IFJvb3QgQ0EgLSBDMzB2MBAGByqGSM49AgEGBSuBBAAiA2IABP2lYa57JhAd6bci MK4G9IGzsUJxlTm801Ljr6/58pc1kjZGDoeVjbk5Wum739D+yAdBPLtVb4Ojavti sIGJAnB9SMVK4+kiVCJNk7tCDK93nCOmfddhEc5lx/h//vXyqaNCMEAwHQYDVR0O BBYEFPtaSNCAIEDyqOkAB2kZd6fmw/TPMA4GA1UdDwEB/wQEAwIBBjAPBgNVHRMB Af8EBTADAQH/MAoGCCqGSM49BAMDA2gAMGUCMQC02C8Cif22TGK6Q04ThHK1rt0c 3ta13FaPWEBaLd4gTCKDypOofu4SQMfWh0/434UCMBwUZOR8loMRnLDRWmFLpg9J 0wD8ofzkpf9/rdcw0Md3f76BB1UwUCAU9Vc4CqgxUQ== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICTjCCAdOgAwIBAgIKPPYHqWhwDtqLhDAKBggqhkjOPQQDAzBrMQswCQYDVQQG EwJJTjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNo bm9sb2dpZXMgTGltaXRlZDEgMB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0g RzMwHhcNMTgwMjE4MTgzMDAwWhcNNDMwMjE4MTgzMDAwWjBrMQswCQYDVQQGEwJJ TjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBUZWNobm9s b2dpZXMgTGltaXRlZDEgMB4GA1UEAxMXZW1TaWduIEVDQyBSb290IENBIC0gRzMw djAQBgcqhkjOPQIBBgUrgQQAIgNiAAQjpQy4LRL1KPOxst3iAhKAnjlfSU2fySU0 WXTsuwYc58Byr+iuL+FBVIcUqEqy6HyC5ltqtdyzdc6LBtCGI79G1Y4PPwT01xyS fvalY8L1X44uT6EYGQIrMgqCZH0Wk9GjQjBAMB0GA1UdDgQWBBR8XQKEE9TMipuB zhccLikenEhjQjAOBgNVHQ8BAf8EBAMCAQYwDwYDVR0TAQH/BAUwAwEB/zAKBggq hkjOPQQDAwNpADBmAjEAvvNhzwIQHWSVB7gYboiFBS+DCBeQyh+KTOgNG3qxrdWB CUfvO6wIBHxcmbHtRwfSAjEAnbpV/KlK6O3t5nYBQnvI+GDZjVGLVTv7jHvrZQnD +JbNR6iC8hZVdyR+EhCVBCyj -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDczCCAlugAwIBAgILAK7PALrEzzL4Q7IwDQYJKoZIhvcNAQELBQAwVjELMAkG A1UEBhMCVVMxEzARBgNVBAsTCmVtU2lnbiBQS0kxFDASBgNVBAoTC2VNdWRocmEg SW5jMRwwGgYDVQQDExNlbVNpZ24gUm9vdCBDQSAtIEMxMB4XDTE4MDIxODE4MzAw MFoXDTQzMDIxODE4MzAwMFowVjELMAkGA1UEBhMCVVMxEzARBgNVBAsTCmVtU2ln biBQS0kxFDASBgNVBAoTC2VNdWRocmEgSW5jMRwwGgYDVQQDExNlbVNpZ24gUm9v dCBDQSAtIEMxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz+upufGZ BczYKCFK83M0UYRWEPWgTywS4/oTmifQz/l5GnRfHXk5/Fv4cI7gklL35CX5VIPZ HdPIWoU/Xse2B+4+wM6ar6xWQio5JXDWv7V7Nq2s9nPczdcdioOl+yuQFTdrHCZH 3DspVpNqs8FqOp099cGXOFgFixwR4+S0uF2FHYP+eF8LRWgYSKVGczQ7/g/IdrvH GPMF0Ybzhe3nudkyrVWIzqa2kbBPrH4VI5b2P/AgNBbeCsbEBEV5f6f9vtKppa+c xSMq9zwhbL2vj07FOrLzNBL834AaSaTUqZX3noleoomslMuoaJuvimUnzYnu3Yy1 aylwQ6BpC+S5DwIDAQABo0IwQDAdBgNVHQ4EFgQU/qHgcB4qAzlSWkK+XJGFehiq TbUwDgYDVR0PAQH/BAQDAgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQEL BQADggEBAMJKVvoVIXsoounlHfv4LcQ5lkFMOycsxGwYFYDGrK9HWS8mC+M2sO87 /kOXSTKZEhVb3xEp/6tT+LvBeA+snFOvV71ojD1pM/CjoCNjO2RnIkSt1XHLVip4 kqNPEjE2NuLe/gDEo2APJ62gsIq1NnpSob0n9CAnYuhNlCQT5AoE6TyrLshDCUrG YQTlSTR+08TI9Q/Aqum6VF7zYytPT1DU/rl7mYw9wC68AivTxEDkigcxHpvOJpkT +xHqmiIMERnHXhuBUDDIlhJu58tBf5E7oke3VIAb3ADMmpDqw8NQBmIMMMAVSKeo WXzhriKi4gp6D/piq1JM4fHfyr6DDUI= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDlDCCAnygAwIBAgIKMfXkYgxsWO3W2DANBgkqhkiG9w0BAQsFADBnMQswCQYD VQQGEwJJTjETMBEGA1UECxMKZW1TaWduIFBLSTElMCMGA1UEChMcZU11ZGhyYSBU ZWNobm9sb2dpZXMgTGltaXRlZDEcMBoGA1UEAxMTZW1TaWduIFJvb3QgQ0EgLSBH MTAeFw0xODAyMTgxODMwMDBaFw00MzAyMTgxODMwMDBaMGcxCzAJBgNVBAYTAklO MRMwEQYDVQQLEwplbVNpZ24gUEtJMSUwIwYDVQQKExxlTXVkaHJhIFRlY2hub2xv Z2llcyBMaW1pdGVkMRwwGgYDVQQDExNlbVNpZ24gUm9vdCBDQSAtIEcxMIIBIjAN BgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAk0u76WaK7p1b1TST0Bsew+eeuGQz f2N4aLTNLnF115sgxk0pvLZoYIr3IZpWNVrzdr3YzZr/k1ZLpVkGoZM0Kd0WNHVO 8oG0x5ZOrRkVUkr+PHB1cM2vK6sVmjM8qrOLqs1D/fXqcP/tzxE7lM5OMhbTI0Aq d7OvPAEsbO2ZLIvZTmmYsvePQbAyeGHWDV/D+qJAkh1cF+ZwPjXnorfCYuKrpDhM tTk1b+oDafo6VGiFbdbyL0NVHpENDtjVaqSW0RM8LHhQ6DqS0hdW5TUaQBw+jSzt Od9C4INBdN+jzcKGYEho42kLVACL5HZpIQ15TjQIXhTCzLG3rdd8cIrHhQIDAQAB o0IwQDAdBgNVHQ4EFgQU++8Nhp6w492pufEhF38+/PB3KxowDgYDVR0PAQH/BAQD AgEGMA8GA1UdEwEB/wQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBAFn/8oz1h31x PaOfG1vR2vjTnGs2vZupYeveFix0PZ7mddrXuqe8QhfnPZHr5X3dPpzxz5KsbEjM wiI/aTvFthUvozXGaCocV685743QNcMYDHsAVhzNixl03r4PEuDQqqE/AjSxcM6d GNYIAwlG7mDgfrbESQRRfXBgvKqy/3lyeqYdPV8q+Mri/Tm3R7nrft8EI6/6nAYH 6ftjk4BAtcZsCjEozgyfz7MjNYBBjWzEN3uBL4ChQEKF6dk4jeihU80Bv2noWgby RQuQ+q7hv53yrlc8pa6yVvSLZUDp/TGBLPQ5Cdjua6e0ph0VpZj3AYHYhX3zUVxx iN66zB+Afko= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICDzCCAZWgAwIBAgIUbmq8WapTvpg5Z6LSa6Q75m0c1towCgYIKoZIzj0EAwMw RzELMAkGA1UEBhMCQ04xHDAaBgNVBAoTE2lUcnVzQ2hpbmEgQ28uLEx0ZC4xGjAY BgNVBAMTEXZUcnVzIEVDQyBSb290IENBMB4XDTE4MDczMTA3MjY0NFoXDTQzMDcz MTA3MjY0NFowRzELMAkGA1UEBhMCQ04xHDAaBgNVBAoTE2lUcnVzQ2hpbmEgQ28u LEx0ZC4xGjAYBgNVBAMTEXZUcnVzIEVDQyBSb290IENBMHYwEAYHKoZIzj0CAQYF K4EEACIDYgAEZVBKrox5lkqqHAjDo6LN/llWQXf9JpRCux3NCNtzslt188+cToL0 v/hhJoVs1oVbcnDS/dtitN9Ti72xRFhiQgnH+n9bEOf+QP3A2MMrMudwpremIFUd e4BdS49nTPEQo0IwQDAdBgNVHQ4EFgQUmDnNvtiyjPeyq+GtJK97fKHbH88wDwYD VR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwCgYIKoZIzj0EAwMDaAAwZQIw V53dVvHH4+m4SVBrm2nDb+zDfSXkV5UTQJtS0zvzQBm8JsctBp61ezaf9SXUY2sA AjEA6dPGnlaaKsyh2j/IZivTWJwghfqrkYpwcBE4YGQLYgmRWAD5Tfs0aNoJrSEG GJTO -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIFVjCCAz6gAwIBAgIUQ+NxE9izWRRdt86M/TX9b7wFjUUwDQYJKoZIhvcNAQEL BQAwQzELMAkGA1UEBhMCQ04xHDAaBgNVBAoTE2lUcnVzQ2hpbmEgQ28uLEx0ZC4x FjAUBgNVBAMTDXZUcnVzIFJvb3QgQ0EwHhcNMTgwNzMxMDcyNDA1WhcNNDMwNzMx MDcyNDA1WjBDMQswCQYDVQQGEwJDTjEcMBoGA1UEChMTaVRydXNDaGluYSBDby4s THRkLjEWMBQGA1UEAxMNdlRydXMgUm9vdCBDQTCCAiIwDQYJKoZIhvcNAQEBBQAD ggIPADCCAgoCggIBAL1VfGHTuB0EYgWgrmy3cLRB6ksDXhA/kFocizuwZotsSKYc IrrVQJLuM7IjWcmOvFjai57QGfIvWcaMY1q6n6MLsLOaXLoRuBLpDLvPbmyAhykU AyyNJJrIZIO1aqwTLDPxn9wsYTwaP3BVm60AUn/PBLn+NvqcwBauYv6WTEN+VRS+ GrPSbcKvdmaVayqwlHeFXgQPYh1jdfdr58tbmnDsPmcF8P4HCIDPKNsFxhQnL4Z9 8Cfe/+Z+M0jnCx5Y0ScrUw5XSmXX+6KAYPxMvDVTAWqXcoKv8R1w6Jz1717CbMdH flqUhSZNO7rrTOiwCcJlwp2dCZtOtZcFrPUGoPc2BX70kLJrxLT5ZOrpGgrIDajt J8nU57O5q4IikCc9Kuh8kO+8T/3iCiSn3mUkpF3qwHYw03dQ+A0Em5Q2AXPKBlim 0zvc+gRGE1WKyURHuFE5Gi7oNOJ5y1lKCn+8pu8fA2dqWSslYpPZUxlmPCdiKYZN pGvu/9ROutW04o5IWgAZCfEF2c6Rsffr6TlP9m8EQ5pV9T4FFL2/s1m02I4zhKOQ UqqzApVg+QxMaPnu1RcN+HFXtSXkKe5lXa/R7jwXC1pDxaWG6iSe4gUH3DRCEpHW OXSuTEGC2/KmSNGzm/MzqvOmwMVO9fSddmPmAsYiS8GVP1BkLFTltvA8Kc9XAgMB AAGjQjBAMB0GA1UdDgQWBBRUYnBj8XWEQ1iO0RYgscasGrz2iTAPBgNVHRMBAf8E BTADAQH/MA4GA1UdDwEB/wQEAwIBBjANBgkqhkiG9w0BAQsFAAOCAgEAKbqSSaet 8PFww+SX8J+pJdVrnjT+5hpk9jprUrIQeBqfTNqK2uwcN1LgQkv7bHbKJAs5EhWd nxEt/Hlk3ODg9d3gV8mlsnZwUKT+twpw1aA08XXXTUm6EdGz2OyC/+sOxL9kLX1j bhd47F18iMjrjld22VkE+rxSH0Ws8HqA7Oxvdq6R2xCOBNyS36D25q5J08FsEhvM Kar5CKXiNxTKsbhm7xqC5PD48acWabfbqWE8n/Uxy+QARsIvdLGx14HuqCaVvIiv TDUHKgLKeBRtRytAVunLKmChZwOgzoy8sHJnxDHO2zTlJQNgJXtxmOTAGytfdELS S8VZCAeHvsXDf+eW2eHcKJfWjwXj9ZtOyh1QRwVTsMo554WgicEFOwE30z9J4nfr I8iIZjs9OXYhRvHsXyO466JmdXTBQPfYaJqT4i2pLr0cox7IdMakLXogqzu4sEb9 b91fUlV1YvCXoHzXOP0l382gmxDPi7g4Xl7FtKYCNqEeXxzP4padKar9mK5S4fNB UvupLnKWnyfjqnN9+BojZns7q2WwMgFLFT49ok8MKzWixtlnEjUwzXYuFrOZnk1P Ti07NEPhmg4NpGaXutIcSkwsKouLgU9xGqndXHt7CMUADTdA43x7VF8vhV929ven sBxXVsFy6K2ir40zSbofitzmdHxghm+Hl3s= -----END CERTIFICATE----- ELF>h@@8 @@@@lllRR```RR000`` @  00HHH$$Std00Ptdkkk\\QtdRtd GNU GNU, X/J9&ෙ/lib/ld-musl-x86_64.so.10 9 0 ! ! !"#$&'()*,-./0123!bM4eXqDXq'b վ k*g-,P*se2Ux՜XqOm]l(9(9-x)o'(0kK~ kP3,   Q   +R'Ws } "8 BMk1 =  ? \ i V=~' [u  \L ?T_" S@nD  Cu}C   : 7   q4c   .  L K ol wlFk2` 4|M  h[l g~E(m R5 X w%W  .>09  }U V H B /P $W1$2_' BfmUh u?hy'yt,= |R  EP br^ 8 F~ !d1 e  30 ( `(! @( (c(  а (z ((@( (@(($@ xf O' P(P ( `(__register_frame_infostrftimecalloc__errno_locationfgetxattrinflateEndgetenvstrcasecmp__cxa_finalizemallocstrncmpstrleninflateInit2__ITM_deregisterTMCloneTableinflate_ITM_registerTMCloneTableaccessgetpidstdoutunlinkatbsearch__stack_chk_failstderrfputcflistxattrumaskstrptimereadlinkatgmtime_r__assert_failgetuidfnmatchmemcmpopenatstrnlenmemchrstrcmpstrchrprintfmemrchr__deregister_frame_infoapk_print_indented_groupapk_fileinfo_getapk_blob_pull_blob_matchapk_blob_pull_uintapk_progress_item_endapk_db_write_configadb_wo_resetapk_dep_is_materializedapk_version_matchapk_fs_extractapk_digest_alg_by_lenapk_deps_addapk_pkgtmpl_initadb_w_objapk_digest_alg_lenapk_serializer_lookupapk_db_dir_unrefapk_dep_is_providedapk_istream_from_blobadb_wo_objadb_m_processapk_ctx_freeapk_blob_push_hexdumpapk_fmt_human_sizeapk_last_path_segmentadb_walk_adbadb_compressapk_progress_startapk_serializer_queryadb_c_headerapk_db_repository_checkadb_r_rootobjapk_pkg_substschema_file_array_apk_array__freeadb_all_schemasapk_io_url_check_certificateadb_wo_intapk_istream_read_apk_array_copyapk_digest_from_blobapk_extract_v2_controlapk_blob_splitapk_db_layer_nameapk_blob_tokenizeapk_pkg_write_index_entryapk_ctx_get_id_cacheadb_ra_findapk_digest_ctx_freeapk_dir_foreach_fileapk_ostream_to_fdapk_serializer_cleanupapk_balloc_cstrapk_db_dir_queryadb_decompressschema_packageapk_db_closeapk_blob_pull_depadb_wa_append_objschema_fileapk_out_fmtapk_istream_from_fdapk_ostream_zlibapk_progress_endapk_digest_alg_by_strapk_digest_alg_stradb_trust_write_signaturesadb_wo_fromstringapk_extract_v2_metaapk_solver_solveapk_query_match_serializeapk_print_indented_initadb_wo_blob_rawadb_c_block_copyadb_wo_pkginfoapk_hash_initapk_blob_containsadb_ro_blobapk_db_pkg_addapk_get_build_timeapk_db_openapk_pkg_get_installedapk_db_foreach_matching_nameadb_ro_objschema_scriptsapk_extractapk_db_foreach_sorted_nameapk_blob_push_blobadb_wo_val_fromstring_apk_array_bcloneapk_db_file_queryapk_progress_weightapk_db_dir_refapk_db_select_repoapk_blob_compare_finiadb_wa_appendschema_dependency_arrayapk_ctx_initadb_w_arradb_wo_arradb_ro_intapk_pkg_foreach_reverse_dependencyapk_blob_starts_withschema_string_arrayapk_digest_ctx_updateschema_idbapk_db_get_pkg_by_nameapk_balloc_dupapk_pathbuilder_pushbapk_dir_foreach_file_sortedapk_db_sorted_namesadb_w_copyschema_dirapk_blob_fmtoptgroup_query_desc_apk_serializer_init_apk_array_emptyapk_istream_teeapk_query_who_ownsadb_wo_resetdbapk_db_dir_prepareadb_w_init_staticapk_digest_ctx_initapk_blob_from_fileapk_io_url_initapk_repo_package_urlschema_aclapk_balloc_alignedapk_db_check_worldapk_pathbuilder_popapk_atomize_dupapk_blob_rsplitapk_db_dir_update_permissionsadb_wo_freeapk_digest_calcapk_pkg_cmp_displayapk_db_cache_foreach_itemapk_repo_index_cache_urlapk_query_parse_optionapk_string_array_qsortapk_ctx_get_trustapk_blob_push_depschema_pkginfo_array_apk_array_growapk_extract_warning_strschema_dir_arrayadb_wo_init_valadb_wo_copyobjadb_wa_append_fromstringadb_parse_compressionapk_tar_write_paddingapk_name_sorted_providersadb_wo_valapk_blob_sortapk_istream_from_fd_url_if_modifiedapk_filename_is_hiddenschema_indexadb_c_adbapk_trust_load_keyapk_io_url_set_timeoutapk_print_indented__apk_istream_from_fileadb_s_field_by_name_blobapk_blob_substapk_serializer_yamlapk_print_indented_endapk_tar_write_entryapk_hash_foreachapk_solver_print_errorsapk_balloc_destroyapk_id_cache_resolve_userapk_solver_set_name_flagsapk_blob_pull_charapk_pkgtmpl_freeadb_wo_blobapk_blob_hashapk_ostream_to_fileadb_w_init_dynamicapk_id_cache_resolve_groupapk_blob_pull_digestapk_crypto_initapk_progress_istreamadb_w_rootobjapk_blob_pushedapk_hash_insert_hashedapk_url_local_fileapk_dep_splitadb_c_createapk_query_matchesapk_deps_delapk_balloc_initapk_foreach_genidapk_atom_nullschema_xattr_arrayapk_package_array_qsortapk_istream_get_delimapk_db_initapk_ostream_counterapk_db_permanentapk_solver_precache_changesetapk_db_get_nameadb_freeapk_db_dir_getadb_s_field_by_nameapk_digest_ctx_finalapk_out_resetapk_db_cache_activeapk_tar_parseadb_c_block_dataapk_version_validateapk_query_mainadb_w_adbschema_pkginfoapk_progress_item_startapk_solver_commitadb_ro_kindapk_out_log_argvapk_version_op_stringadb_wo_initapk_db_query_nameadb_w_blob_vecadb_w_rootapk_dep_from_pkgapk_ctx_prepareapk_version_compareapk_hash_get_hashedapk_solver_commit_changesetapk_pkg_readapk_pkg_match_genidapk_db_index_read_fileapk_db_pkg_upgradableadb_s_field_substadb_ro_valschema_package_adb_arrayapk_io_url_set_redirect_callbackapk_hash_freeapk_blob_ends_withapk_query_packagesadb_pkg_field_indexapk_ostream_to_file_safeadb_w_blobapk_error_stradb_resetuncompressexitsignalputsputcharisattyputenvstrtoulrealpathexecvpfwriteatoimktimesetvbuf__libc_start_mainlibapk.so.3.0.0libz.so.1libc.musl-x86_64.so.1XXXXXXXXHдgg 8@HPX`hpx     ȷзط (0 8!@"H#P$X%`&h'p(x)*+,-./012ȸ3и4ظ56789:;<= >(?0@8A@BHCPDXE`FhGpHxIJKLMNOPQRȹSйTعUVWXYZ[\] ^(_0`8a@bHcPdXe`fhhpixjklmnopqrsȺtкuغvwxyz{|}~ (08@HPX`hpxȻлػ (08@HPX`hpxȼмؼ (08@HPX`hpxȽнؽ(08@HPX`hpxȾоؾ (08@HPX` h p x  ȿпؿ3@1"@'*$а!,+. #`0)@%/(&  0?XEc#b#"bcI$I$IlPX5 W% W@% WhAWHPAVAUATUSHdH%(H$HH5CjHD$=0jR[H=c^*[1H=Šٌ ЈˌYf1@ fG;a[H=OH5iZH5 y^ i^H=V<XH= ZH;+ZH53IH;Xt 1HjI|$E1gxHiHu|1DEHsIHt$pLL!L H|$x~LHt$pH|$pHt$0L$x@ Lt$pDd$xt IvAL$I>gHiHtAE1L-oiMtTHsPAu"H/AE$Ňft]UH.iIE(HtH=i1ɺH5hH= UHHuH51ҿVIHu1H5VIIgHL$HLU;H|$pHt$LL$ LD$H|$H DYHt$HD$HH~ HȀ< tH|$pLL$ LD$pHt$xH YtLHT$xHD$pHH~ HȀ< tHT$xHt$ H=KHL$pHT$( UƄ$H$H|$pH|$p' t,u,H$$H=$=HL$pHH55 IE0LPuHLl$0H\$pHH HT$xH|$pLH\$pD$x Hl$pDt$xÅtVtuuH]EtHfHHpYtv;uHfHt@ ubH|$H S1H_H="1SH=fH5 g2LHH5 |E1H]AFH=BfHl$u_}t#HMHcH51H=LS,1H=H12SH=eH5tgBH5%H=eRH5YH= UÅH5dH=ST1H@HH=R=߃t=H=neUÅt*SHH5HH=1bRB1THeHH=eH5XP0XH=dVR1DH=dHt,XH=VH|$yYcc9NÅHH$dH+%(t)THĸ[]A\A]A^A_H=X H=+Y H=^Y H=Y H=Y H=Yx H=J[k H=}[^ H=[Q H=[D H=V\7 H=\* H=\ H=\ H="] H=U] H=] H=] H=] H=!^ H=T^ H=^ H=^ H=^ H= _ H=3at H=fag H1HH5kLH7HWLE1H SH=|gH=QaHJaH9tH&QHt H=!aH5aH)HH?HHHtH}QHtfD= auGUH=PHt H=VPgH=Vt H=pV`]@ff.H=Mt&UH5`H=HM]8+HaHщHH=aH@(ATIUHStλHwpH׻Sul1hL濜=PH=v,ÉOH}8LHIH51kN!H@H@H8H(HPH딉[]A\SH=aiNSH=n%hTAWIH oAVAUATUSHH(H?IwHT$NOD$D$1D$ ;D$IoE1D$<HSLK@LH(H>HD$80HjPH9D$8u"HMHL1H5O>@HH(D$HD$0H$HD$8H$l>H|$HH$H$<H$m@Ht$H|$HAHD$0HphHHt$i?Ht$H|$HHPAHD$8H|$HHpHvAH|$HH$@c@H|$HDA>u A8xHиH5}L1=AM~Lt$HIHD$1HT$ HLDH}8H$L@IL;|$<M'.LCHts1LV?ud1HHD$ t hHT$ LHCd>LHHLIH5k1=L>1H}LHD$ H|$ HLd$( BH|$(tH|$  D$YH}uL .LAL LlLHL1H5ݳ|< H|$L?uH|$H@H}t.H4$HOCHt$0H|$O?uH|$0@HHT$1BH|$ÀyCH3H<$HD$BH$dH+%(t<>Hĸ[]A\A]A^A_S1HHt<H[AVAUIATUSHG0_H$dH+%(LH$HĨD1[H=]A\A]A^A_%?@HtVLSM@{HD$LT$AI@@8LHcHCHHHLLT$I"H $@D1H=>H$dH+%(t:HĨ[]A\A]A^A_AUATUSHH $HdH%(H$HGHX C< tjHIHw.H`tTL)f{:tL^H|$HK>1LM.HKx:XLIQE1HHj^_H$dH+%(t:H[]A\A]Gu P.1Z1ATIHW0USHG(HHH~ HȀ|0/tH{H;HLHCE1HH< 6HsH{1҉7[]A\AWAVAUATUSHH $HXHhdH%(H$H1It#H4I~8AH56MHIHՋ@8G8HH\$ HD$01HD$@EHT$8Ll$D$HuH|$1AHE1HDH$H;,$HM9/t'A~8HH51I~85zHQHT$H7HT$LD$HHD$@I9s I H9rL9s H I9s H=wLHH|G/tHHDH/HL$@H|$A HCAE<<wHLH54H$HdH+%(t7HXD[]A\A]A^A_ATUSỈH @HHcHg<O<O<@GHvH A|$8~LEMI|$81H1CXHWHtI$H9|Hu=H{hI$HG%9rHChHNjPLd[1]A\ATUSHPdH%(H\$HH" H̓w*H HcHC 1HT$H5ޖH^HD$Ht8u H|$* Ht$H7HT$Hu1HC:uHCHunF ƒHE‰F u1Ht H_HC Hk(XKOKF H1CC )K HT$HdH+%(t\HP[]A\øw3H HcHO 1ÀO fOfOO f:tif8tbATUSHGHL&HHP(I,$LHrC<@u0}8~HK>H}811HtMK<@HsL[1]A\1AVAUIHATUSMhHL'fufG>u_I$M$HhHEL9tUxu t!C tHEs1C HxE0HmHHH~LCC ueC tDI$HH5A$t!1I}8HH5I$L1]A\A]A^%[]A\A]A^SHHu%H?HHa1H5ZH8C qH1A EZ1[ÀgH 5HcHON(1ÀOH HHH!H@H"HHHHvH fHVHH @Ã=IL ~LHG@HwH=4HHHh1%`I9MHtqUSQtdHGHH=Hph1t7HC@H=HP01tHCpH=˒HP01Z []%IX[]AWAVAUATUHSHH^HHHH|$dL%(L$8IȃHAIu!HE@H}HHHwh1H=A%=fH~HuH=41HhHkHkHDHD$H;l$H|$(H\$8HHt$AH|$HHD$(H\$0H|$LL(HL$0LHHT$(ZH HT$0HH|$0HD$(vpH=|H$8dH+%(t;HH[]A\A]A^A_HG=fGH@h~HH=61%HIHW@IH=#HrHQHH1HUHAWAVAUATSHH $HH $HxH L/IHdL$%(LeIH9Iu IDž'H1H=wGHHHHH)H9tHH$%H)HtHLH\$HHHIHHH83HAH=6HA4$HP 1IE8E1HxIpMl$HpA$L%4 IDHhL;hpM}A?/t%HLHH/HLEHHHLHAHHt7H1HPHHpHHhHHP(HHu(HxL1AHH5K=D~?HB@HJH`LHDHhHtHǎLH=1pRuHAD$%A9$rHLHIA$HA $ITIA4$t@Ml$H LA$M|M9sIEIHxHhA|$y LjHtHHP(HCHEdH+%(tHeD[A\A]A^A_]AWAVAUATUSHF8dL4%(L$LhCL7fqf%f fqOt3H$dH+%(CHĸLH[]A\A]A^A_ HZE1L1ILL$ H=L\$0LL$ gI=H=1=>Mwu!IG@IHHHwh1H=B1ILpIHD$L;t$s9I=R>HD$ ~IGH=Hph1H|$ IH=sIW H<$H LH"Hx==HD$Fu*IG@IHHHwh1H=n==HHD$#HHD$IGH=cHph14IGH@LpIHD$ L;t$ sjI>HHtSHV HBHkHH9s=IOH9u.@u(HF@HvH=ՆLD$HHHh1HIH=gsIGH<$H LH s IGPH5ۇLHPHHH,HD$ H|$PyEuRAEtKHH9u8A0H$dH+%(u0HĸHH[]A\A]A^A_% H$dH+%(t HĸD[]A\A]A^A_HHøw[H HcHq1ÀO,O,qN(Hdžxրq̀O,ǀqAUATUSAPL.L'IEHhhI$HHXhH/u&HHo uIuI|$Y[]A\A]%Z[]A\A]AWIAVAUATLpUHSHQF8LhH7G(fpHxu/G,t Hdžx<HH%H HxdH5H{ LLIHH HHC VH{ H 7H HC L`MRHt$PL\$hASLD$8HL$0H|$PH0H xzmIH,H$XdH+%(tCHh1[]A\A]A^A_AWAVAUATUSHH $HHLl$0dH<%(H$xHHELH$ D$H9Lt$pHT$PLLH|$PH|$PAH$fDŽ$H$D9 H$DLAsH$L$pL$L\$LHH$D$ @H$HH|$ Ld$($H$H|$HD$ HHH|$H %$HMPH}1IH$P1ATH|$LEXt$H|$( XZkH$xdH+%(t-HĈ[]A\A]A^A_AWHAVAUATLf8USH8LhdH<%(H|$(HHL$ qHpHD$ oy+ÉH|H5sLH1-VHD$ HhHDHD$1H;l$2H]HSH$H9tH$H|1LHHh1HC@1H|LL@1H{t,@@@HW|1LH1M E1E;Ls(ME1AE#uAI(E;rAI¸IRAL lEuL IzLT$ME1LD\$IMRH{P1XZLT$D\$H$H1H|$ yHD$(dH+%(tH8[]A\A]A^A_HH%u1F01AVAUATUSHPHhdL,%(Ll$HIDDtHAHA}8HiHH9s@ERt1A}8~*HMXLMx1I}8LE`HzP1ZYHŸ릋DH zD t*H|$Hz1@<HHuH mzA}8~D1I}81H~zZHD$HdH+%(tHPD[]A\A]A^SHHu%H?HHww1H5ppH8 CAH׃<1҃ k1[Ày%ø#ʃH5HcHUHSHQOH=yHuH=yHtH5zH8u eK(Z1[]ÉȊO OOOO ff1AWAVAUATUSHH $HWAt$ IH$H5PyT$(H$dL<%(L$L?)D$PIG8HD$HHD$8HD$`H$Ht.H@Ht$hH|$8HD$xHD$hHHD$p~IHXHHD$H;\$H+1Ht HBHD$@E1Hl$HH|$@~71H|$@HT$hLHH|$htH|$8Ht$hAEt%A8xH|$HHDx1H5JnHcHD$81t$HXHkHHD$D$ D$,H;\$H+HHIH7toHELhHLHD$ L;l$ sRIUt?HR@ID$@H:HrHL@tt$,1H|D$IH^|$tEA1HL$PLIt)A8xH]wH|$H5/m11J|$\tAG8|$(uIB tHfwxA~H|$Hw11FIHt$PLÅ|$(LKA8~H|$HGw11H=dwYH=}wLxHcH~LcH5JH9s H H9 H9s H H9s HHH EwHJ 1HLH84H|$H4w1H5kQH|$`UH|$8H8HD$`?AH$dH+%(tuH[]A\A]A^A_AWAVAUIATUSHHLhH$I$L9tH{8Hv1H5kLE}AUEAut AEt7tH$8uALL$ $L$ toI$u AL$ H޺H= AL$ HuAE;Hs1jH@HkHH9sـxuH=@HxHII9s.MEE#$tHcHkDLNLLH9tHHRLJHLHcH9s H ]H5tuH=uH9t H$8t-AEuAEH4$LHLAmu/AHLoI9$tH 1H[]A\A]A^A_HHAHมʃw"H HcHulp 1ÀqfpHdžx ހpHHGHH뼋pHdžxf%fpUHH=uSHRHFHph1U}~8HC@H=onHP016}~HCpH=3oHP01X []%UHSHRHFXH0HtHPH=n1HCH=~tHph1}~HC@H=mHP01X []%CAUATUHSHHHhdL$%(Ld$IH@8HWG` CH{u HHCH;uHCHHLHHH$HpHx Aąx#H$HhLlL9s4HuHHH}8HoHH5f1PH<$y`HD$dH+%(tHD[]A\A]UHSHR~-wH} CHE@HwhH=5nHH1PsHXH[H]%PHhH~81D@DLHI9tH HD(D,0ASARV1RHq 1V1H8AWAVAUATU1SHZHxdL,%(Ll$hIHHD$H;\$L#1H|$ 1ҿLl$LH|$HxAA}8~7LqEy D!I11HiLI}8Ey!EyLHq11I}8HXHD$hdH+%(tHx[]A\A]A^A_IȸwLH 4HcHO1H+ H$HF(LGHjH1F(ATLg8USHhHHiHH9s8CRt)HKXLKx1LLC`HmP1ZYHø[1]A\AUATUHSARHOLhG'Ht9uE1LO:u~8u HApHGHHtAXH[H]A\A]IHHHLL}8~(KH}8L o1LoHo1HHLLAZ1[]A\A]HHz(AWAVAUIATUSHH(HL`8x8HJh1HoL1rB8Hk(HHHB0z:HL$H@@Ht$LLxLT$Ls(HIFHXhH-LHIF@LLHPH.jHL$ QHt$ HV1AWLT$(ARUPDAE)HnP1H@H(1[]A\A]A^A_1S1HHtH[Ã>AVAUATUHSHH~H}IILLIHVuDLH?tLHLLH{8H0n1H1 1[]A\A]A^øAWAVAUATIU1SH^QLu9HUHK H@H!HEHcHHH@H| HxHcHHH8ugwHڃ0H|PHHHHcMHHk0LhHcHTPHH HcHH@= 1Z[]1uSHH H{P[%SHHH 1H{Pd1H@^1[AWAVAUATUSHH $HdH,%(H$HH$IIHD$@H|$h1H5LHD$8IHH=vIv ID$0LPEISHhHD$LH$HHmb^tE1"H<$ HZgtH<$HH߉RAD$hE11DD$H $LHaAŅDD$EE1HT$HH$HcDHD$@HD$ 8 ux uE9uHHAHD$ HT$밅u|,huH1A9|HT$HL$@HHHT$8`Ht@Ht | uHHHHP@AHD$8HD$HD$@AHHP(AmHT$H~cHD$ 8-x HHLcHD$ HT$B|4htA&HL$1HP AMBD4hL$҅t=L$Ht$H|$8E1HT$ !H|$8HI` DD$'H|$t,HT$ :#u"HHt$HP0AuH|$Ht$ LL$(LD$H dNu1HT$(H|$W1H|$Ht$ LL$XHD$HLD$HH dHD$PHD$XHD$`u0HT$ HD$|:uHHT$PAHD$H D$D$XE1H|$HtfEt HcDh Hcŀ|huH1HPAHcDhHHt$HHHT$PP8AEt HcDhHD$XHt\HT$` |uDmIcDDhB'uH~<|'u5HHHT$`HD$XHHt$X1HHT$`P@AuHE1E1A8H|$(tHHt$(HHT$0P0AuE5HHP(D$H D$Ey A|$ xED$ ID$0LPH$dH+%(t1oHĸ[]A\A]A^A_AWAVAUATLbUHSQM)HHHHH)H9tHH$%H)HtHLHt$INhH:HH 9HHHH)H9tHH$%H)HtHLH@Ht$INhHJHHHqHHHH)H9tHH$%H)HtHLHHt$INhHHHHS^HHHH)H9tHH$%H)HtHLHt$INhH HHHHHH)H9tHH$%H)HtHLHt$INhHBHHLHHHH)H9tHH$%H)HtHLHt$INhHHHHHHH)H9tHH$%H)HtHLHt$INhH0HHHHHH)H9tHH$%H)HtHLHt$INhHGHH`FqHHHH)H9tHH$%H)HtHLHt$H`HINhHHH H,UH HHHXHHHHHH!HH`HH`H`I~8IvhI~xI~h&H(HH0HBH8:Aǃ~H0H8HH(HIqHC((LhHkLI9sLHxKHL=IHC (LhHkLI9sLHKKHL IDǃH(AV[]A\A]A^A_ÉHv(Ht Ps1Z1øw?H5ZvHcHHO1HfO(HOfO(HOfO(S1HHtH[AWIHAVIAUATE1USH(HT$^LHhQHDH$H;,$LmLLHXHHHD$H;\$srH L9iucAG(ftEfu5u5HAXH8t+H0HPHL$LHL$Ht x(ttHt$AHHHLH(D[]A\A]A^A_B tQHB8uHUHSHVAuHIH1sKH}hHHC1Z[]1AWAVIAUATUSHHHHhH$H|$8dH%(H$81t0H{u)HE@$ uHIH5":1I~8H3Htq1H$HL(xQH$H3HHC !ADžy-H H>H59II~81BeLkMtLH(HIH$LxIHD$1D$D$ L;|$I1HL$XL(H$H.y.A~8H $HCHH5=91I~8qH;H$H9C H<$LD$(1HT$0HHt$0/HD$([HL$xE1E1Ht$(HT$0HտHD$ Ht_A~8~H $HG11I~8 HD$ MtLhHH@XH8H0HPHP@(1H4$HT$ Hy/ H $H<H57II~81D$ZA~8~H $H7G11I~8eHD$ MtLhHH@XH8tH0HPH@(D$ I&|$9HsHt IAH=1oH:H|$`I1HFH|$xDŽ$HD$XL$cHHHH$H$HHP1L1ǾHSIHtg1:H$H$PH$HHFHHt$DŽ$xH$H.L$H$LH$hHt$1Ht$XLLHHCt$xL$11LIEE}LPDEEy+DHEH55HI~81zC(u6Iv8H|$8cHHL$81HH|$8L$Pt!A~8xH0EH551I~8H{uE1,A~8~DD$ $1I~8H=E1AH$8dH+%(t/HHD[]A\A]A^A_USHH8dH<%(H|$(HHl$HH{H8HD$(dH+%(tʿH81[]HHHNHwH%S1HHtAH[UHAWAVAUATSHHHdL<%(L}LH=<H5HL,HLH)H9tHH$L%H)HtHLHt$HܵLHHh8LHH)H9tHH$L%H)HtHLHt$HLHH}߾LHH)H9tHH$AL)MtJL,Ht$LH%HH}HHHHźpH~LA?#tH=B8H0HLHIL HHtH0L8HH H(( HPL)PH5PIHpH{H AwHD~AweH@HHHɽDHHH@HH=hҁu%H0H8Zf=ufHhH{HUH{HUH{HhŹH}H}1HUdH+%(tHe[A\A]A^A_]Ã-ATLf8USw'HH fkHHcHHO1HHC(HS0H(Hˆr1HH@LH5X0HH/HoHHCHS |1HHf@LH50[]A\øƇ1GUHAWMAVAUATISHHH HHdL,%(LmMHHHPH9tHH$HH$HHt$H(HH0cHH(HHƁH)H9tHH$%H)HtHLHt$H HHXL1ɺ/LL8LruL8L@H8H@H :?u AH@1HLLH/@t,L/LZHtL8L@A&HHLPHPB8 (tIL;H|HXHPLHXHtH HXHxE1H(DH HXADžpH(H DHL(L8HH8H@ xHHHLH nAHEdH+%(tHeD[A\A]A^A_]UHAWAVAUIATSHHH8dL4%(LuIHCH1H LH`H )H$H9tHH$HH$@indxHCHHT$HHHoHHHH)H9tHH$%H)HtHLHt$HHHH@ HHHH)H9tHH$%H)HtHLHCxHt$HHHHHCHHHH)H9tHH$%H)HtHLHHt$HHHHH"HW;H{tH3t7Hu%HU;H5*I}81!AjK()1HHE1H1ҿ@HH3H1HE1E1indxH`HHHsHAt-ճH H.H5)II}81UHHzTH HǸH1HIFHAHHHHH9HL0HE11LADžsHHHH9L7LLH HHADž~\A}8~LH711I}8'H DwHH`qH21HHfDžHH1HLHH>HHADžytH5(HH HHHH1LL>HHSHK ,y.A}8xwLK DCLI}8H7H5D'11LaHHMHHUuA}8~LH,611I}8ZHH֮tCҁu7%ADLH@+H5i&II}81H1Het%H;7H5&1I}8H{DfH@HHtHSHK H@HH@lH@DzHsIupH&HHH߮ADžu/A}8~MADI}8DH2511ӭ%)HS6H5%HI}81HHH`HEdH+%(tHeD[A\A]A^A_]HHS1HHtXH[AVLcAUIATIUHS1HEHUH}uHHL9u1ZHщHLmҁu%HˉljH3H6H5 $LIIEHX 1H []A\A]A^UHAWAVAUATSHxHpdH%(H]1ۅlHAHxHDHhH10HHHH)H9tHH$%H)HtHLHt$HpE1HצHHLIcHxLDHHx^HH`H`HpHHHHHLHHUEtIcH;haH3HD3HEdH+%(t^He؉[A\A]A^A_]UHAWAVAUATSHHL7LdL,%(LmIIH#MLIEH3HE1HXHHPAą 1HE1HىpH@Aąt)AH21I~8Hj3H5W!LRLHxHp]HhH`=ФHL{ HHH)H9tHH$%H)HtHLHt$LHzHH$HHHH)H9tHH$%H)HtHLHt$LHҞHHHXHPHɧHIHxHpHHhH`HqH 1ZLH]HxHpH B125HhH`H 1  Mu p@HHHHSpqH{PHЦHEdH+%(tHeD[A\A]A^A_]UHSHRH?G%9rHEHNjPH\X[]AUATAUSH8dH%(H\$(H&HLn8woH YHcH|HPuH8H5ZH]H H/HxHxHkHLL$LD$HH &HuHH/Ht$HT$H=ItPvED$HH@(Ht$HT$H=QkuD$0E1oLD$L$L1H /H5HkH.HtH.HxHLL$LD$HH &HuHH.H5SL;Ht$HT$H=u+LD$L$LH.H5AHcHt$ H*HHAąt/ڥLD$ L$Hp.IH5L1UHH H 舃HD$(dH+%(teH8D[]A\A]UHAWAVIAUATSHHXHhdL$%(LeL'LHhHHCpE1HhH@1XHH8HpHx\R`w)@*7%tHHH HH(OH8LLHQLH8E1HHIH HP3fDžHDžIHHA>t4LHDžHHzHHH@HcH{ HHH H8HLnL(1H8AT$LAD$HPHtPH8HHQHLH81HE1H(HDžp f%fHHf%HhXHfȤHxHHHpHxQHh~H0HI|$81H2AH*1DH0LE1HC HH`HHH)H9tHH$%H)HtHLHHt$H`HHPHHǢHHHH)H9tHH$%H)HtHLHt$LH`LHHLQH@LH8%=u"1H2LHHYMt%LxHpLHx1MtAWLHHPHHHPuL[HHLHHHHLHHut8 HhX1bH`LLL#H{pL\HEdH+%(tI\He[A\A]A^A_]AWAE1AVAUATUHDSHdL$%(L$IHL$LÅD$8%=@urL H0H.0HPAH2HHH}HLDE1HHHnDH0H$dH+%(tKH[]A\A]A^A_UHF8HAWAVE1AUL-GOATSHHHXdL$%(LeIH2HBH1HxL#HIA}t"LHLHH|t EtAt!LAMl븀HHCHH9tHH$HH$(pckgHC HT$HHHOBHHHH)H9tHH$%H)HtHLHt$LHHHLHHHH)H9tHH$%H)HtHLHt$HH=HH|GHHHH)H9tHH$%H)HtHLHCPHt$HHHHH HHHH)H9tHH$%H)HtHLHt$HH{pHHHXtHhuIHUHH HHHHH#1AH5Dž(H@HuHHǃHHHDžADžHHLADžHsH 1y>D8AD HKHH#IH51DE1H1HADžH{H Η7H1HhADžHCLpMM9s0IHL2LAIH(u Hǃ(LctH(u Hǃ(H( H\HHHLHHHHsHHHH)H9tHH$%H)HtHLHt$HHAHH`IcDH`AHHHHHĕAuHH`H HHHH)H9tHH$%H)HtHLHt$L`HHHILИH LxI I9s(I?HILHHHL՚LL+HHMLHLHLHK(HS0HxHHHH9s HH9rH9s HH9s H@wHt ^HsHuELLI$LI$LADžSLkLIt$pHIAH=HHHHsH 1AcH HChD9HHDAHH@wH}H0fǃ0HHHXD9H@H`DH`H`HHH`HHHHHHHDDĘH21 LHIHHHHAAUI$E|$LPDEH6HEt)DHHH5q H1 H yHH8H }H{yHΉHPHCx ДHEdH+%(tHeD[A\A]A^A_]PXFailed to load signing key: %s: %sERROR: no-yesnoautoPermanently redirected to %sWARNING: %s: unrecognized option '%.*s'%s: ambiguous option '%.*s'%s: option '%.*s' does not expect argument (got '%s')%s: option '%.*s' expects an argument%s: invalid argument for option '%.*s': '%s'%s: setting option '%.*s' failedx86_64apk-tools 3.0.6-r0, compiled for x86_64./etc/apk/config/etc/apk/interactiveapk_APK_CONFIG/lib/apk/configcommand line'%s' is not an apk command. See 'apk --help'.Failed to open apk database: %s1.3.2Help decompression failedAPKGLOBALGENERATIONCOMMITQUERYHelp not foundadbdumpYou tried to add a non-repository package to system, but it would be lost on next reboot. Enable package caching (apk cache --help) or use --force-non-repository if you know what you are doing.name([<>~=]version)name(@tag)([<>~=]version)world%Y%m%d.%H%M%S%s: bad package specifiervirtual meta packagecreating empty virtual package'%s' is not a valid %s dependency, format is %sadd hash=- mode=%o uid=%d gid=%d%s + mode=%o uid=%d gid=%d%s %c %.*s /audit does not support usermode!%s: relative path skipped.+etc @etc/init.d -dev -home -lib/apk -lib/rc/cache -proc -root -run -sys -tmp -var unable to read protected path file: %s: %s/bin/busybox/bin/bbsuid/bin/busybox-extrasauditdeleting %ssynccleanpurgedownloadbad dependency: %sUnable to select packages. Run apk fix.cacheNo such package: %sWorld updated, but the following packages are not removed due to: %s:delfailed to preserve %s: %sError opening destination '%s': %sExtracting %s...extractPurging %sDownloading %s-%.*s%s-%.*s: %scoffeeGo and fetch your own coffee.fetch*%.*s: unable to select package (or its dependencies)%Y-%m-%d %H:%M:%Sfixing directory %sFailed to fix directory permissionsPackage '%s' not foundfix%s-%.*s%s - %.*s%s-%.*s %s: %s: %s: %.*s %s-%.*s %s: %.*s symlink target %s: Could not find owner package%s %sis owned by %s-%.*s descriptionwebpage%s-%.*s installed size: %.*s depends onprovides%s-%.*s is required by: %s-%.*s contains: %s%s%s %s-%.*s triggers: %s: trigger has auto-install rule%s-%.*s affects auto-installation of: replaceslicenseinfo<%s> %s %.*s %s-%.*s %.*s {%.*s}{%s} (%.*s) [installed] [upgradable from: %s-%.*s] %.*s <%.*s> list%s%s%s:%.*s %s%s%s%s:%.*s %s%s%s%s%s%s:%s %smanifestquery failed: %s%s policy: %.*s: %s/installed %.*s%s%.*spolicyqueryOK:ERRORS;%.*s [%.*s]%d unavailable, %d stale;%s %d distinct packages availableupdateAPK_PREUPGRADE_TOKENAPK_SELFUPGRADE_TOKEN/proc/self/exeIgnored invalid preupgrade dependencies from: %sFailed to perform initial preupgrade, continuing with a full upgrade.This simulation might not reliable as a preupgrade is available.Preupgrading:Continuing with the main upgrade transaction:APK_PREUPGRADE_TOKEN=laiNgeiThu6ip1TfAPK_SELFUPGRADE_TOKEN=laiNgeiThu6ip1Tf--no-self-upgradePANIC! Failed to re-execute new apk-tools!Not continuing with upgrade due to missing repository tags.../src/apk_defines.hnum <= hdr->numsearchinstalled: packages: %d dirs: %d files: %d bytes: %lu triggers: %d available: names: %d packages: %d atoms: num: %d statsOKverify<Available:Installed:%*s %s%s-%.*s%*s %s %.*s %.*sversion ##%SCHEMA: adbgenadbsignlib/apk/db/scripts.tarlib/apk/db/triggerslib/apk/db/installedinstalled.adbconvdb%s: %u packagesconvndxdigraph "apkindex" { rankdir=LR; node [shape=box]; "%s" [style=dashed, color=red, fontcolor=red, shape=octagon]; "%s-%.*s" -> "%s" [arrowhead=%s,style=dashed,color=red,fontcolor=red,label="%s%s%s%.*s"]; normal "%s-%.*s" -> "%s" [color=red]; "%s-%.*s" -> "%s-%.*s"[color=red,arrowhead=inv,label="%s",invdiamonddotWARNING: No provider for the dependencies: Will not write binary index to console. Use --force-binary-stdout to override.File '%s' is unaccessible%s: indexed from old index%s: indexed new packageAPKINDEXDESCRIPTIONIndex generation failed: %sTotal of %d unsatisfiable package names. Your repository may be broken.Index has %d packages (of which %d are new) = hash '%s' not recognized or allowed--rewrite-arch is removed, use instead: --pkgname-spec '%s/${name}-${version}.apk'${name}Please specify --output FILE--filter-spec requires --index%s: not matching package name specification '%.*s'%d errors, not creating indexIndex creation failed: %sbuilddatecommitdatahashdependinstall_ifmaintaineroriginpackagerpkgdescpkgnamepkgverprovider_priorityreplaces_prioritysizeurlmkndxinfo field '%s' has invalid value: %srootfailed to process directory '%s': %d3.0.0_pre13.0.0_pre3missing key or value: %sinvalid info field: %.*smissing script type: %sinvalid script type: %.*sfailed to load script: %.*s: %s%s: special file ignoredrequired info field '%s' not providedfile directory '%s': %sfailed to create package: %smkpkg,,,,,,*-5-D-T-]-k------------/.).5.L.e.r........///-/6/H/j/}/////D/[/h/{///ccompressionsign-keyclean-protectedcommit-hooksinitramfs-diskless-bootoverlay-from-stdinscriptsssimulateallow-untrustedarchcachecache-dircache-max-agecache-packagescache-predownloadcheck-certificatefforceforce-binary-stdoutforce-broken-worldforce-missing-repositoriesforce-no-chrootforce-non-repositoryforce-old-apkforce-overwriteforce-refreshhhelpiinteractivekeys-dirlegacy-infologfilenetworkpreserve-envpretty-printpreupgrade-dependsprint-archprogressprogress-fdpurgeqquietrepositories-fileXrepositoryrepository-configprootroot-tmpfssynctimeoutUupdate-cacheuvol-managervverboseVversionwaitx][oF/gMNF&bnGVw4J,IS"e+V7ٙUSK1GtPd}v6OnF~^¯/? ן'>=XQV:"J4Ԫ$(J4|,hU|JU%YQk y4γrhL0Dr3VAyU{?luV ")f W5Ϟ͐W,X l֋*IU)eSʳb8:MjE|⏕Z:j J372_:Ay@'+ WPTi`N N7v9|.>ϣB}~r!T$4E,Nw|7+)@ Nfha$h<ͧӓ:=e;~}Vr2K#"q duY4mjhs]*cF;762mf<7{56accPz*EkTQOTBVR:Uz&*5~rWCMP[m1M5qv ѢY]vh <[ɷ?tyP۲8˝aX D:o48 Ł[ rk$ !@G΁Yy06ïH 5.:*Dp⦑>RUUVM9Gc`bWleT-RPXcӌY]_>؄]r=(@7@) J6V徝x֚?+ <*R' 8*Jc|,M"p: "WnG*uUπI^ѯ\s 6jfeA pmh,WI<:LϞvRu`lJV$TLH(fT'༂sxZPyF]+pfV]iea/#4y jwWћMtRӁ-ϧnH2[QE c h!M'F<=M8c}2S.HSdL: * 9DIX+QFϹ*F& wA-IsLtgH"b BE~4))H I=Y8UJK 00l Ap1 $g*?]_ˉt2]>eD:$Ą#WkGZeUk!攐<~ēHv0xﵘպyE S@}.d__htJ:4,T҆0'ȵscŠ)͸g$^/1B_٪YѷЪ2P@XhU.''~VD ,^aAǺ*$Enqޕ\fS?"OrO|SVTGUp uz8}zx]*;~D#)FNϦdig"u*|!-&Ɂ{" *ߟ0 *J`KHA­{~O1/ɣLa2o2Oc4"lSf\%NPJ֑f#{uq $NX)*KAt>Iom0O]dr},y^:BeLƥbVHH䡁&eBO1WB+LAkM$dqƜILE2x!^D7xAe)zCQ7-xP~9Ɋ g@wB՘;Ve@PS@ƪ1\#* a +'VZ;5%zB6&5,[iD)`V P3;CY&Sƿh-*"7c1-l<Q¹)V`_.b V&[[U&5fW7ãx4D xvz>cEe5`fFQxu_' d9ԃBxhrs7<5)$N2 ?ARfU3~b͚%g7kS _E>n="YG/~O'h`@K5(?D AmZ>4AԩGS(\PW[OI|ɉ'P5r9 @ lFs@Xy׼n&G;U6xLp)-cq|/,Vd+v1f;:(JU $=YG̱@OX|3 'B vΓm 6h &؂WiˠfYxmq\,3r^}Cg&w00x?yJ=:Fϸ6paaHfi$!ɢ@pM]Ɂm%iGd#Juv-6YPKz O-\႖*1 }B ?×w!a_̰ͮN*JΕ(X }zbjCEF~xp[(MV(]ƣ;Ļ8B%z-avTG wL:æNĕe \QjfeYd7ZN݉C^e~ycDFsvcXP%u:S+Mvtlp虢+9IUjt/ٛ@81O0 c?i9%`਌;h)IJ'S/Z]Z:ӟ3dfgƀq++mTR%m G.%< A 0c?sRk!L80 ڣjjpho`o'C)5 rlOalI[iBMGe,._L=Z.E~Q v$|w," 8;X4ߥ)iJ+IaZ?"^S[JqIOY*מCEU +On]u/{P8CN7:/U(+ɱ\S:EgdSዖev5nm f,kwҼ%$ٿxD؂AM-Q̵+`qUC?@⻏Na2٠*-hIXa_Hc C%a2ACU|\`tKtQ׽ _-<]¶JI E==x~'42ij-!Rh+3@Wy7i>o a"EO0=zDt4qm+|0K1zYb%QwwYA >% ;d$ɭcą )5~N꺂y&/9\t?&_&{_'@(׻wǭ ߍk'd0zWq~Hk)zB=>ܵ;eT:My {D,̻ SH,q(h Khó♗t>a&mt ER'(|1uu~m%nfdf2[}wm{ok}L `Wj~W\s*Ρ۽Q@'8g~'[NF8Gp(;B9CZX3/i Ee*. > ?iًq}<%EhXckURz)Ԭ[(xʽEcO8zF$U+q0s̭Y9:> /Q*D(n>K @,`(te:2 ^brcboE4kcl-4.~~#v=/YR6(D$ֺVq6L@zS4d](Lo? T1A"?MhR1w*|]3iJ9 (_}Z'YüU/hsʵ' &v?/W&z5$4PTPc1\K[! w dl,&Q]U!pZkge.^F݇*,? }ypiV^na8 =0iI ƹJ( ذPCW7Ȳuz?|p1߯4BŋL"OB:çapB:z8_њ 4Ʀd(, o$sPAA XCBAH $BBH A(A0 (N BBBF A(A BBB z%HAF 0 , %@ n&88T &QCA [ FAF AAAAH &sBBB B(A0D8QJ8A0A(B BBB 'SgY R( 6(ZAC e0 x$ d+BBB B(A0A8G` 8G0A(B BBBE  8G0A(B BBBF `8D0A(B BBB  2  2fH 2\BBA A(B0@ (A ABBF A(A ABBH(2BEB B(H0D8D@Z8C0A(B BBB4t-5BBA A(DP(C ABB \5BBB B(A0A8GKBGJ`8C0A(B BBB$s6)F_d<6BBB B(A0A8GoHHJKGYC8C0A(B BBB\19BBB B(A0A8G L##D#_#A#l8F0A(B BBBk T: BIB B(E0A8DpxHIxApF8C0A(B BBBt n<  R<PS "(j q@?`j0q*< sA }A AA A8 AAAAAAA88AA D=A Aj4KbCkapk.debug4.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.gnu_debuglink 0HH$1ll9oTC K!!S55]BxRxRgRRXq``b`` w0`0`}O'O'00; kk\0q0qح؝    h# (ELF>!@Q@8 @@@@lll 66000BBB XMXMXM00HHH$$Std00Ptd,6,6,6TTQtdRtdBBB  GNUGNUUR@J:f/lib/ld-musl-x86_64.so.1X)92h 'u"S=g  E], L@Ma ZPM  Po 3%fflushexitpathconfsetlocaleoptindputs__errno_locationconfstrgetoptstdoutmallocstderr_initfprintf_fini__cxa_finalizeerrxstrcmp__libc_start_mainferrorsysconffreelibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_infoB"Bp" B$(B$0B#8B#@B#`B0xB0B0B 1B1B31BK1C`1 Cp18C1PC1hC1C1C1C1C1C1C2D2(D.2@D>2XDQ2pDa2Dq2D2D2D2D0E0E10E%1HE:1`ER1xEg1Ew1E2E2E2E2F2 F38F3PF"3hF1F1F1F1F-3F2F"2GE2(G2@G2XG2pG53GH3GY3G1G1G1H2Hh20Hx2HHh3`H3xH3H3H3H3H3H3I3 I48I4PI54hIL4Ig4Iy4I4I4I4I4J4(J4@J4XJ5pJ%5J-5J75JB5JO5JZ5Kk5K|50K5HK5`K5xK5K5K5K6K5K5L6 L58L5PL5hL6L5L2L5L6L 6L6M!6PP8O@OHOPOXO`OhOpOxO O O O O OOOOOOOOO@MPM P0OPX5 /% /@% /hAWAVAUATUHSHL&H5h/HFH>/tau:0Hc/)Ѓ=/HTutH*H1~LL"H!L5Y!MD$ 1L+D=/MEuT$ LH.T$ uhC@@:t$ tALHAƅyD=i/tH3HtH=H1- H=\-EuLH5OH_D uHH5J1-H+H-H-H[]A\A]A^A_H1HH5+H7HWLRE1H H=>)fH=.H-H9tH-Ht H=-H5-H)HH?HHHtH5-HtfD=-uGUH=,Ht H=r-,gH=,t H=,-]@ff.H=-t&UH5~-H=H,]8+Q=-HWtH71H= ,HH= 1,1ZPXH5 PHIIH1H=),c,=-tH1HH= %+H= 1%+PHwH?1ZATUHSH ,1ҋsHIz+Hu6=,A$tt/t(HKHH5Z 1+H;HX1[]A\AUATUHSV+1118Iŋ}0+HtqIH+HHu LH5 h1ɋ}LHAM*Ht7= ,tHuHH= 1* H*H.+1$A}tHUH5 1*Z[]A\A]USHQ*1{0H:*Hu}t%HSH5 1*H;H@1Z[]PX%s = %lu Usage: %s system_var %s -a %s path_var pathname %s -a pathname %s = %ld pathconf(%s, %ld)Can't allocate %zu bytes%s = %s confstr(%ld)sysconf(%ld)aundefined%s: invalid variable type%s: unknown variablePATHPOSIX2_BC_BASE_MAXPOSIX2_BC_DIM_MAXPOSIX2_BC_SCALE_MAXPOSIX2_BC_STRING_MAXPOSIX2_COLL_WEIGHTS_MAXPOSIX2_EXPR_NEST_MAXPOSIX2_LINE_MAXPOSIX2_RE_DUP_MAXPOSIX2_VERSION_POSIX_AIO_LISTIO_MAX_POSIX_AIO_MAX_POSIX_ARG_MAX_POSIX_CHILD_MAX_POSIX_LINK_MAX_POSIX_MAX_CANON_POSIX_MAX_INPUT_POSIX_MQ_OPEN_MAX_POSIX_MQ_PRIO_MAX_POSIX_NAME_MAX_POSIX_NGROUPS_MAX_POSIX_OPEN_MAX_POSIX_PATH_MAX_POSIX_PIPE_BUF_POSIX_SSIZE_MAX_POSIX_STREAM_MAX_POSIX_TZNAME_MAX_POSIX2_C_BINDPOSIX2_C_DEVPOSIX2_CHAR_TERMPOSIX2_FORT_DEVPOSIX2_FORT_RUNPOSIX2_LOCALEDEFPOSIX2_SW_DEVPOSIX2_UPECLK_TCK_POSIX_JOB_CONTROL_POSIX_SAVED_IDS_POSIX_VERSION_POSIX_CHOWN_RESTRICTED_POSIX_NO_TRUNC_POSIX_VDISABLEPAGESIZE_POSIX_ASYNCHRONOUS_IO_POSIX_FSYNC_POSIX_MAPPED_FILES_POSIX_MEMLOCK_POSIX_MEMLOCK_RANGE_POSIX_MEMORY_PROTECTION_POSIX_MESSAGE_PASSING_POSIX_MONOTONIC_CLOCK_POSIX_PRIORITY_SCHEDULING_POSIX_SEMAPHORES_POSIX_SHARED_MEMORY_OBJECTS_POSIX_SYNCHRONIZED_IO_POSIX_TIMERS_POSIX_SYNC_IOLOGIN_NAME_MAX_POSIX_THREADS_POSIX_BARRIERS_POSIX_READER_WRITER_LOCKS_POSIX_SPIN_LOCKSIOV_MAXPAGE_SIZE_XOPEN_SHMFILESIZEBITSATEXIT_MAXGETGR_R_SIZE_MAXGETPW_R_SIZE_MAX_PHYS_PAGES_AVPHYS_PAGES_NPROCESSORS_CONF_NPROCESSORS_ONLNCHAR_BITINT_MINLONG_BITLONG_MINSCHAR_MAXSCHAR_MINSHRT_MINUCHAR_MAXUINT_MAXULONG_MAXUSHRT_MAXWORD_BIT;P lAn XzRx $p FJ w?;*3$"D=8Av\]0AAHxq-AO(qBAD fAB4BBA D(A0(A ABB$VQAAD HAAH0|BBB B(A0D8KPh8A0D(B BBB"p"$$###00c0 1c131K1 `1p11i111111122 .2>2Q2a2q22220$0%1&%1':1(R1*g1+w1,2/202_21223433"3a1111-32"2E222253H3Y31112h2x2h33333 33334454L4 g4y444 4 4G4C445%5<-575^B5 O5WZ5Ek5F|5U5V5S5T555655@655565256 66!6  3%BBox 0 O oo{XM& PGCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9o8C Kxx0S ]Bg b  m0 0 s3%3%y200*,6,6T66|BBBB B B8 XMXMOOPP PPx 0P$PELF> @A@8 @@@@lll 000p;pKpK;KK00HHH$$Std00Ptd`1`1`1QtdRtdp;pKpK GNU GNU}p˪oW<$`/lib/ld-musl-x86_64.so.1FPFGI)9{)hJWuH"` 4R)  [> zqAnq59f xt ,  KK K& .exitendprotoenthtonsstrlcpygetpwentsetserventgetnetbyaddrgetpwuidgetprotobynumbergetusershellgetgrgidinet_ntopwarnxgetgrentendnetent__stack_chk_failputcharputspentether_atoninet_ptongetnetbynameendpwentgetspentether_ntoagetpwnamgetaddrinfowarn__errno_locationendgrentsetprotoentgetgrnaminet_networkstdoutinet_makeaddrgethostbyaddrfputcfputsendhostentendusershellstrtoulendspentvprintfgethostentgetspnamgetservbynamestderr_initgetprotoentsethostentsetnetentether_hosttonether_ntohoststrchrfprintf_finisetusershellgethostbyname2__cxa_finalizegetprotobynameendserventstrcmp__libc_start_maingetservbyportgetnetentntohssnprintfgetserventlibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_infopK!xK@!K0K0K0K0K0K1K1PP P0(P,0P 18P+@P1HP)PP1XP+`P1hP+pP#1xP+P,1P'P51P&P<1P%PF1P$PO1P["PV1P!MMMMMNNNN N (N 0N 8N @NHNPNXN`NhNpNxNNNNNNNNNNNN N!N"N#N$N%O&O'O(O) O*(O+0O,8O-@O.HO/PO0XO1`O2hO3pO4xO5O6O7O8O9O:O;O<O=O>O@OAOBOCODOEKFKHM?PX5-%-@%-hAUATUSHQ~LLfAH-/H}LHt#.uHEHZD[]A\A]HH=P1M/H; H1HH5X+H7HWL\ E1H @H=iT@H=0H0H9tH.Ht H=/H5/H)HH?HHHtH-HtfD=/uGUH=,Ht H=.,gH=O-t H=@-y/]@ff.H=H.t&UH5n/H=H..]8+AUIATAUSQ-AuF,Ht HA,1>,HHt+ItH,uHH,A9~-ǻ,Z[]A\A]ATUSt I?,Ht8H5^)H]+I<A,HtH5=)HH9+91~,[]A\ATUSHdH%(HD$10 v1AHI,1 H0HHL+Hu;"tH$:uI$HT$dH+%(t9+H[]A\PO1HWw(w LODGH7H= *HATIUHSHHLD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$HHHD$HD$ $ D$0HD$*HHHtHH= 1L)ݿ )HD$dH+%(t$*H[]A\USHPHo*H{H H5 RDH 1ULH[]AVAUAATUSHdL$%(Ld$I,)Auh)HtbHsI(Ht7HZI(Ht7HmI"Ht7HI&@@8 @@@@lll _8_8```ll0z00Pz00HHH$$Std00Ptdhhh  QtdRtd0z00 GNU GNUjOGHfYφ/lib/ld-musl-x86_64.so.1a0labcdefghij9Ź@5ݣkʼn3.GHo&Cc"rbsM +! < {i#O^k< 9 ;[Y0~vwQ"'BB3eU \I \X! }Jr !!exitreaddirexecvpefopenoptindstrlcpystrrchrclosedirinitgroupswarnx__stack_chk_failunlinkmkdirreallocstrtollmemchrtolowergetpidkillstrdupsysloggetpwnamcallocgetppidfutimensstrlenungetcsigemptysetwritevwarn__errno_locationtcsetattrreadmemcmptouppergetoptfstatgetgrnamgetpwuid_rgetsidfputsstrtok_rsetresgidfclosemalloclstatgetgidasprintfopendirgetspnamgetenvsetresuidstrlcatoptargstderrgetgroupsgetuidexecve_initexplicit_bzerostrtoullfilenogethostnamegetcwdcryptrenamesigactionscandirgeteuidclock_gettimebcopystrchr_finialphasorttcgetattr__cxa_finalizeerrxstrsepstrcmpstrerror__libc_start_maindirfdferrorsetenvwritevfprintfsnprintfsysconfreallocarrayfree___environlibc.musl-x86_64.so.1__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_info (08 @ H P X `hpxȍЍ؍ !"#$% &('0(8)@*H+P,X-`.h/p0x123456789:Ȏ;Ў<؎=>?@ABCDE F(G0H8I@JHKPLXM`NhOpPxQSTUVWXYZ[ȏ\Џ]؏^_`aecjR0WU TPX5l%l@%lhAWAVAUATUSHH $HH $HHE1E1dH%(H$8!1L$L$DT$$~IHtH>uH5@jH=AnH=DE1E1g#E1g-lHALm2n!Ct3L/g61@suL%>oH$ HHD$mH5?Aƒ@T$D$kHcT$EHcD$M,MDt$$l1LLt 1L1vmH=nHt$$H5R@pAAxnD$)Mt Et{D tuHT$(Ht$@t H5@H|$(H5@1jH=@jHt8u HD$(H@(DH$L$ډމkH5?IEHL$pVMMPT$(EHt$!_AXu-HD$pH5>@tH5 ?H=?1iH=>,jiH5m?H=s?H=q?tH=\?IuL$8ALjD9~H5 ALkH=vb\$$HL$8MuPIEPT$(MAHt$$ZYtZHD$(H5>ULH1j1Ҿ1gKtLIjH=ZwHl$8uu"Et H5>HD$(H8g<*H=>hHtHiHlH=luH<HlH}t)H5W>H=K>liu H?>LHT$0Ht$pHHD$0HuH5e>Sx jH5b>u HD$0pH8h`H5H>1KiH5=H==hZH$8HliHH<HEIEu'HD$0LVH5=LHD$(H1iHT$0Ht$(HgHH}tH5#=H==8hu-H5hkH=<huHPkH5$=8HLLg$hLH5F;8uH5_=1f1*hH1HH5=dH7HWL1E1H 5H=^IfH=iHiH9tHgHt H=iiH5biH)HH?HHHtHfHtfD=iiuGUH=fHt H=h fgH=wft H=VBhf)i]@ff.H=ht&UH5iH=BHg]8+UHSHHt$(HT$0HL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(H\$HbH=7H6gHHHH$$HD$HD$ D$0HD$AghHhHH5Q7H1'ehHD$dH+%(tdH[]AWAVAUATUSHH $HH $HE1dH%(H$x$1H\$pH$+hH\$(Hl$HD$Dd$8E1HD$HL$DeHDH9H'H 'H9HNHk)HD$H'cIHHD$LH)HHD$H]H'HH(Ht$(HHk(HHk(M,H$LH9D$t H|$eHD$LIDH9NLl$(I\Lt$A"IcH <D$0Hc g<E1D\$ D\$H=gbHcЃ uf t#t@ tB BDt$A1L$x H=fb umfE1Һ DbfVf t~^\|"ui2AgD$ D=fDAL$H=%fbeL$ƒ uct6 # BeH=]4p1 Et"AwH=V41L$G1H$H$H9 A1H|$PH$D$\DŽ$@|$O@ @ M9At@|$O aw2At@DD$OAt@FD$OIA}sA}EXEtEuH|$0H$dH+%(tpDH$H[]A\A]A^A_AVAUIATIH5FUHSH`dH%(H\$XHH|$EIƋD$1AI9v Ht$LCHL$L9t[9uVH?H9u A>"t=I93HH9u A>"tH9źM1HHctHHHt4H3HҺL HEAHT$XdH+%(tHCH`[]A\A]A^UHAWAVAUATSHH $HHxHpdH%(HE1HtH?u D/DHt1IE1HH=<UBIHuL5;LeDHHPHHHH)H9tHH$%H)HtHLH|$LLE1HHBHH`LLLXHhBHhHXHBƄ%/Jt&BH`ƄHpHxLhAbC(H0HH!Pt A7HxHH@H<uBHHHHHH)H9tHH$%H)HtHLHxH\$HHHHsHHL{AHpHH=@A}LBIH{BIIHpHhHHLHHH+HDžLHHDž?HH5AIHQL-ATAEt 8uHEdH+%(t?Heظ[A\A]A^A_]AUATLcUSHdH<%(H|$H=}@HHtgH?Ht6HHxLgHH<$uH?9tƉwAHD$dH+%(uRHH[]A\A]%*AL>HHIHH9} H%AHD$dH+%(t>H[]A\A]AV1AUATUSHdH,%(H$HD$u"H|$,gÃt|$~H?HuH5[L`A$H'L`<*H$?tHH$1=H龀H|$1HL$v=H$H|$gHuJ^?8u+H5HU1>H51V=H51>LH.>H$IHu>->LL>t HH5U1l>H5뀃t߾,g?H$dH+%(t<HĐ[]A\A]A^AWAVAUATUSHH4$Hl$(HT$HH dH%(H$1<H1H$L$.>IAău5HH=HD<IDžtTAuC= uLH)Hv tHH=1=D >(IcHL9rD=EuH1LL)H<HtHH=B1=)L;HHl$H5HAH:HHAtAt,pHL$ HHgH $H|$ tHc<Ht$ HH1E;HL$HH9\$t3}"H!"HH51A :H\H$dH+%(t:Hĸ[]A\A]A^A_ATUSH dL$%(Ld$I;1;uRHT$Ht$ ߉xt:APH1Lt$DL$9Z=YHT$dH+%(t9H []A\ATAUSH0dH%(H\$(H9u{1Ht$8tH $HcHT$HHH $Hɚ;~HHʚ;H $HT$HT$HD$HD$Hɚ;~HHʚ;HD$HT$HD:HT$(dH+%(t%9H0[]A\AUATIUSHxdH%(H$h1HHt$H1H=A$u:u?s:8H=r:H$h uH|$`AtH$h1=:Ã:Iă8tH$hH51H97H$hHH17=w^1ҾH19ÃtEH^9uE,$9Hm8E,$H$hH7ʻH$7uH5_18$tH5G1,7D$6A9uف$uH$ H $(t5H$0H $8t#Ht$ H6uH=1811Ht$0!6tH$ HT$ H9u HD$(H9$(|H$0LD$0L9u HD$8H9$8|HcHL$(HHT$ Hɚ;~HHʚ;HT$ HL$(HL$8LHD$0Hɚ;~HHʚ;HD$0HL$8H9u HD$(H9$($H;t$0uHD$8H9$8~H=1E5A$H$hdH+%(t5Hx[]A\A]SHdH<%(H$H|$t%H|$86u178H$dH+%(te5H[PXdoas: at %s, line %d unallowed character NUL in column %dunterminated quotes in column %dunterminated escape in column %dtoo long lineinput error reading configcan't allocate rulecan't allocate rulescan't combine nopass and persistcan't have two setenv sectionscan't allocate strlistsyntax errormemory exhausteddenypermitcmdargsnologkeepenvsetenvusage: doas [-Lns] [-C config] [-u user] command [args] doas is not enabled, %scould not open config file %sfstat("%s")%s is writable by group or other%s is not owned by root%s/%slstat("%s") nopass(failed)doas: executed without argv unknown user+C:Lnsu:getpwuid_r failedno passwd entry for selfcan't get groupsSHELLsetresuidpermit%s not installed setuid/etc/doas.conf/etc/doas.dcommand not permitted for %s: %sAuthentication requiredPATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binfailed to set PATH '%s'no passwd entry for targetsetresgidinitgroups%s ran command %s as %s from %s%s: command not foundDOAS_USERHOMELOGNAME%s=%sDISPLAYTERM%s: /dev/ttyinvalidtoo smalltoo large/usr/local/bin:/bin:/usr/bin.execvp: : path too long /bin/sh/proc/self/fdgetpwnamAuthentication failed? doas (%.32s@%.32s) password: tty required for %sa tty is requiredreadpassphrasefailed auth for %s/proc/%d/statfailed to open: %sread: %sNUL in: %s/run/doas/%d-%d-%d-%llu-%d/run/doas/run/doas/.tmp-%dfstattimestamp uid, gid or mode wrongclock_gettimetimestamp too far in the future cmt '"yylex               ;  (HUPW|0R@d f^}h`5H P4qPd_(FxX >H x]zRx $P FJ w?;*3$"(DADGAAPpӾ BBB B(A0A8G L@LI 8C0A(B BBBX"AAH$^sADD0gAA(AAJAAL44BBB B(A0A8G L! 8A0A(B BBB pAGCHBBE B(D0A8F8A0A(B BBBD\BBB G(D0D8A@8A0A(B BBB\<PnBBB B(A0A8G L@LCCECTCBCCGCUCAC([[BDI HAB(BHA ABVA]HYBBB B(A0A8J8A0A(B BBB8\!BEI A(G(D ABB(BAD AB]AAG,BEE D(D0 (!A_DHXKBBB B(A0A8G/8A0A(B BBBDBBE K(D0D0A(A BBB,rAC \Q L/BBD A(D@{ (D ABBF I(A ABBDlBDB A(A0G 0A(A BBBH@BDB B(A0A8G "8A0A(B BBB8BAA D@UHPPLHF@b AAB,<BIA DP AAB8lQBGD C(G1(C ABB oAGeA'P'FaKa{eRaVa7b[a` aa ia  \X08o k ،H o$# %& dd1d9d"Cd"GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9oC  KkSH ]Bg q b  w0 0 ,8}\X\X`` hh ii00z88z@@z z،| H 0ELF>.@(b@8 @@@@lll @@@ [[[P0 [[[@@00HHH$$Std00Ptd0K0K0KddQtdRtd[[[PP GNU GNUnv1$I<9 y/lib/ld-musl-x86_64.so.1;\;<=?@)93J(6QYp > "u 5d | C_J bD0p]R=17 Ok=[.[a7 a_init_fini__cxa_finalize__libc_start_mainstderrfprintffputsstrstrstrncpystrlensnprintfasprintffreeexit__stack_chk_failgetenvstrncmpstrdupremovecallocputchargetopt_longoptargoptindstrcmpgetuidstrrchrstrndupgetpwuidmkstempperrorforkexeclp__errno_locationstrerrorwaitpidaccessmkdirstdoutscanfstrcpygetdtablesizenftw__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_infoeconf_getExtValueeconf_readConfigeconf_readFileeconf_freeArrayeconf_readDirsHistoryeconf_newIniFileeconf_newKeyFile_with_optionseconf_getKeyseconf_freeExtValueeconf_errLocationeconf_writeFileeconf_getPatheconf_errStringeconf_getGroupseconf_freeFilelibeconf.so.0libc.musl-x86_64.so.1LIBECONF_0.7LIBECONF_0.6LIBECONF_ALPHALIBECONF_0.2LIBECONF_0.4XXXXXXXXL'L'] L'L')8^@^H^P^X^`^h^p^x^ ^ ^ ^ ^ ^^^^^^^^^^^^____ _(_0_ 8_!@_"H_#P_$X_%`_&h_'p_(x_)_*_+_,_-_._/_0_2_3_4_5_6_7_8_9_:[;[<a=a@0^1[`PX5 >% >@% >hAWAAVE1AUATE1UH=]'S1HdL,%(Ll$xIDd$,L%!'H\$0>H= 'H=A>H=k'H!A>H=W'H@>H@H&H$LD$,H I?LH&=Ãht dft)cL%?밃uyuk`@H=_@>1H`&H5k(H=B@>bH=-@E1S1 Hu?H$7H=5:H^H5&1?==A~%+7?~u#H59H=%=" H<$H5%H-%K=trH<$H%H5%H%H5%HH(H5%HH%H5%HH!%H5%HoH/<$Hcm>I|?/.$<H>HuH5 9H=I% HD$H=>=Hc>ILHHL$<H|$HD$<Ht$H|$H)F;H>HHc=I| <H]>HrEtAHD$H=3><1HT$H5$H=>;8H=>H==Q<1H =H=H5$H==;=H=":HupH=$:HtH|$0;H=i$y:H,:F;Ht8HD$H|$0;HD$Hx  ;HD$0HuH|$0H=$:Hu"HT$0H5#H=<:y+3H=#9H:H<H H|$04;H=<H=<~Hc%<H5#MlLh:tH5#LO:u1LHk H5^#L':<$uEtHH=E<:H= <9H+<HtTH=< H=<m:H <[EH=<N:H="9H;IHuH56H= 9H=; :L1H;H5b"H=;d9yH55H=k 9H5x;E1L\$8>/uLHH=V;P863 I11APH Q;H=2;ATL9;H";8AYAZu H= ;N8t9H5 HH=!7H$Hu H H$(C$Lt$bH-XXXXXXLD$bHD$p8H=!tL=8HuH=!7H8IHt"/H7Hx7HD$HuH5l4H=_8aH=O!7IHuL- 7uH=/!6uyHT$H4$H=97H4t7H5HH1LLL1?778Q6LH5 HH16HL$X1҉H $H6uT78tH= J6&T$XAAt!H=\3H5 1j6A;H|$8LHL5t#7H=3H5H1)6L5EtH|$8N61HT$@Ht$PH|$@H|$HH|$PH|$XH=8l6uH4$H|$8HT$HT6t,6H=2H59H15AP1H=38%6u0+68u%H=8T6tH= 51H=75=7fD$bH1D$dH 7H7H1H554HH=E51LH=h`5t$H51H=T5H5L4H5NL5tH5L4j>H#7H5,7H=13H7H|$8H56$5H|$8Dv4H|$H4H|$@4H5L{4fD$bH=6D$d4<$H6At"HH5>HV61H=U674H5sH=?614yH5t0H=&g4&1H=64u;1H=64t<$t"H5H5H=!01931H=53H5H|$b{3tsH5H|$be3tT=5uKHy5H=/H5121Ht$bH=G?3tH5/H=33뀀=65t?H=%5_2ÅtH=,2H5H=4/H51U21E Hl$bH5QH11H=42H5H~2ttH5 Hj2tS=4uJH=.H51H~411HH=NF2tH5.H=92녀=<4:0H=14 H5P1ÅtH=1H3H=.H51?11H5L1ÅH31Ht$X8/uH5-H=1/uH=G*HH;'2H E*11H"*L+*IH=*PS'ZYt.Et.H=)|H5$H='1[]A\PXeconftoolUsage: %s COMMAND [OPTIONS] <. | > If (begins with "/") is given, only this file will be parsed. Otherwise different files in /etc /usr/vendor and */.suffix.d/ directories will be parsed. COMMANDS: show reads all snippets for .conf (in /usr/etc and /etc), and prints all groups,keys and their values. The root directories is /. It can be set by the environment variable $ECONFTOOL_ROOT cat prints the content of the files and the name of the file in the order as it has been read. syntax checks the syntax, prints parsing errors and returns 1 if an error has been found (otherwise 0). edit starts the editor $EDITOR (environment variable) where the groups, keys and values can be modified and saved afterwards. -f, --full: copy the original configuration file to /etc instead of creating drop-in files. --use-home: only has an effect if the user is root. chooses the root home directory instead of /etc. revert reverts all changes to the vendor versions. Basically deletes the config file and snippet directory in /etc. -y, --yes: assumes yes for all prompts and runs non-interactively. general Options: --comment : Character which starts a comment. ('#' default). --delimiters : Characters which separates key/value entries. ("=" default). e.g. --delimiters="= \t" e.g. --delimiters=spaces regarding all spaces %s%sPARSING_DIRS=%s:%sOut of memory! ERROR: couldn't allocate new key_file: %s ECONFTOOL_ROOT%s (line %d): %s Vendor config directory: %s Config directory for local changes: %s Basename: %s Suffix: %s ---------------------------------- Path: %s %s = %s Syntax is OK =# /tmpvi/usr/etcTry '%s --help' for more information. hfyuc:d:Invalid number of Arguments spaces \t \f\n \r\vCurrently only works with a dot in the filename and a suffix! /etc/%s.d%s/%sXDG_CONFIG_HOME%s/.configshowsyntaxedit90_econftool.confTMPDIRmkstemp() failedout of memory!EDITORfork() failedCouldn't execute %s: %s waitpidExited, status: %d mkdir() failedThe file %s/%s already exists! Do you really want to overwrite it? Yes [y], no [n] %2sDidn't read correctly yWriting file %s to %s revert/etc/%sCould not find %s or a snippet directory Delete file %s? Yes [y], no [n] remove() failedFile %s deleted! Delete directory %s? Yes [y], no [n] nftw() failedDirectory %s deleted! catThe cat command does not makes sense for parsing a single file. Please use the show command instead. Unknown command! fullhelpyesuse-homecommentdelimiters/tmp/econftool-X;d $Z *$+\1p  zRx $X FJ w?;*3$"D5AD`BEE B(A0A8D@q8D0A(B BBBFD04BAA  DBF FAB AF0yA,ZHL@D]BDB A(A0D`0A(A BBB4BDD M(A0G(A AABlBEE B(D0J8I PVBVNA8C0A(B BBB// 7[[o  ? ^ oo oo( $# %6[& `JfJhJyKu KcKdGCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_r.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9oHC K ?So( ( `o `oyB  ~  0 0 77@@0 0K0KdKK0[[[[[[ [[@^^`` aa 0aaELF>@ @8 @ KKppp$$PPPp (((00$$Std00Ptd0s0s0sQtdRtdPPP GNU GNUd.Cg.q7k():f- V`$Al1 *@FH#-./123456789:;<=?@ABDEGIJKMNPQRSTVWXYZ[]^`abdeghijklm9Nޚ^T[MgGE #######1q"KiA- ܆Yl?ZOz=G_7moɟTٮy*]U8W4 hL B0Iz=>EcqA)*ŮF\[cGV9{Y_ H=.!?[o))"'W32I3%1FMdO)NǗe>XJ7"F  [Q C{x_t ^  XD Hs& n4  eWq2 Fx E=&! Ji7Ws A4 A 0O f0 >Y sGx D<c ^F Fw e C4h z0 I; W  I5d @ k=< X0 _ >4 g. P1 AC d4  :b hWL @' DB m>'  E') J0 PIs  Fw N4  ,0. ?O J9} 0p 9 /: ?& Kb~ : f> x4 dHy Jd Y4  e n Gy_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infostrlenasprintffree__stack_chk_failstrdupstrcmpreallocstrndupmallocsnprintftolowerfopenfprintffputcstpcpystrncpystrsepfputsfcloseeconf_errStringeconf_errLocationeconf_requireOwnereconf_requireGroupeconf_requirePermissionseconf_followSymlinkseconf_reset_security_settingseconf_newKeyFilecalloceconf_newKeyFile_with_optionsstrncmpeconf_newIniFileeconf_comment_tageconf_delimiter_tageconf_set_comment_tageconf_set_delimiter_tageconf_mergeFileseconf_writeFile__errno_locationeconf_getPatheconf_getGroupseconf_getKeyseconf_getIntValuestrtoleconf_getIntValueDefeconf_getInt64Valuestrtolleconf_getInt64ValueDefeconf_getUIntValuestrtouleconf_getUIntValueDefeconf_getUInt64Valuestrtoulleconf_getUInt64ValueDefeconf_getFloatValuestrtofeconf_getFloatValueDefeconf_getDoubleValuestrtodeconf_getDoubleValueDefeconf_getStringValueeconf_getStringValueDefeconf_getBoolValueeconf_getBoolValueDefeconf_setIntValueeconf_setInt64Valueeconf_setUIntValueeconf_setUInt64Valueeconf_setFloatValueeconf_setDoubleValueeconf_setStringValueeconf_setBoolValueeconf_freeArrayeconf_set_conf_dirseconf_freeFilelstatdirnamerealpathstrchrstrrchrgetlineeconf_readFileWithCallbackeconf_readFilestrcpyalphasortscandireconf_readDirsHistoryWithCallbackeconf_readDirsHistorybasenameeconf_readConfigWithCallbackeconf_readConfigeconf_readDirsWithCallbackeconf_readDirseconf_setExtValueeconf_freeExtValueeconf_getExtValuelibc.musl-x86_64.so.1libeconf.so.0LIBECONF_0.2LIBECONF_ALPHALIBECONF_0.3LIBECONF_0.4LIBECONF_0.5LIBECONF_0.6LIBECONF_0.7LIBECONF_0.8   <IL'W]$dWL'$sWL'$sL'$L'$L'$ L' ^(08@HPX`h pAx  Kg P dȞО?؞I (i08Q@HPX`0hTpx !"-#$=%&Jȟ'П(؟)*<+,PPXH=HH9tHHt H=H5H)HH?HHHtH~HtfD=uGUH=}Ht H=b}gH=?~t H=U0~Y]@ff.H=t&UH5NH=TH~]8+G  øHt Hk!HHSHHt'?[u"x~|]uH؊P]tHH[SH;tH@t#H4~H HyHfuH[UHSHH56NHdH%(HD$1H}t'Hk8HEH|Ht}HEH$HT1HT$dH+%(ti|H[]UHSHH5MHHdH%(HD$1H}t'Hk8HEH|Htr}HEH$HT1HT$dH+%(t{H[]UHSHH5FMHdH%(HD$1H|t'Hk8HEH|Ht|HEH$HT1HT$dH+%(tr{H[]UHSHH5LHHdH%(HD$1H$|t'Hk8HEH|Ht{|HEH$HT1HT$dH+%(tzH[]UHSHZ dH%(H\$HHH56L{t'Hk8HEH|Ht{HEH$HT1HT$dH+%(ttzH[]UHSHdH%(H\$HHH5K {t'Hk8HEH|Htw{HEH$HT1HT$dH+%(tyH[]ATUHH=KSHHtH|zIĸMt#Hk8HEH|Ht{HELd1[]A\AWAVMAUIATIUHSAQHtH׀:uH=JzHøHtmMt E1A<$u(HzNH}H ztIH8M9u!H}LyuH`zM>1HPzZ[]A\A]A^A_AWIAVAUE1ATIUS1APoXA9}&IGPIcLL4LyDDIDAHuNuEIPHcAGXHyHIGPIcGXHuAGX1HlLH xHEHZH[]A\A]A^A_AWIIAVAUATUSHH(HwLd$`L$hLD$|$p H)t;@t`tHH1HHk8I7HnH~H5>IHxy HxIGHxHD$Hk8I?Ho HG(HtMu,L%"I#MMH LH5H16x$H LH1H5HxHxILH9wu>HLT$H?Hk8L$wH=LT$L$IIGHpIwIwHVHD$LHk8IHB(IֈJ0MuH5"HLLIwItI9sHI9s >uIGHLL)LpMk8M7uIFHt HvHI^Ht HvHInMtLvIF 11IF H([]A\A]A^A_ATUHSHk8L'H5bGIH=SGH]I$zvH=>GHCivC0HC1HCHC []A\AWAVIAUATUHSHH(L.LfH|$LLdL<%(L|$MLD$8Mt LA>uH=FuIHu  HuHrvHsID$HCI9r,HLHsHk8zuHHtMk8MHEH5rBN, LqHEJt HHEMH5dBHJT 1qHELHPH,HEJt HHH޿ IqL;uaHEJ4 J| 8qnH޿ Jq;LlqA}[uA|]t)HxoIHt#[HxLof] LpIHLH5A1+pL2q>H|$H|$7pƄ$H|$H5MApHHUH5,A1Hoʀx0tH5 AH1oHHp>H|$H|$oƄ$H|$H5@ pHwHUH5@1H9oH|$Hsmu'HE@(H|$H5>umHHuH5C>H8mu HE@)ú H5/>HlLmkIE0HdH{ lHD$HH|$H5=lLmIIcu8I}0HFHcAE8HVlHUIE0HB0HHcR8LLlGlIE뒺 H5=HkLm-kIE@HH{ kHD$HH|$H59=4lLmIIcuHI}@HtDFHcAEHHkHUIE@HB@HGHcRHLLlkIE1HH-lA H5<H+kuLmH{ QkIE`Lk Lk1HT$dH+%(tgjH []A\A]A^ú#=%Zk1HtG1HtGHt@wHt@wAWAVAUATUSHHH|$HdH,%(H$HuHuHD$E1L0SHhiIHD$L MtTCE1H{Ml$ fAD$Ml$Ml$M,$H}Hk8:iHD$HuL1jHD$HHEHtH8H5:E1jHHtH8H5:E1iuzE1L;msqMk8L}H5i:MIH$HiH$uGHD$pIOMOLMGAw(HIAw HD$HD$Ht$J<0AZA[HD$E1L,$MLL$E1HHD$0HD$pHD$ L9{t(MrHHL$HtH<iSHD$Ht$Ll$(H8HD$PHk$8HHD$HK'HD$XHD$(H;EHkD$(8HUHt$PHHD$@HHT$`HD$8HH<0Ht$8hHT$`Lt$HH $H;L$Xs_HrI~HL$hHT$`ghHT$`HL$hu0I~hHEHT$@H|HuH=9gIFUI8HK'HL$LBIHk8LJL4HJr(r Ht$@H|$0HT$HHt$0L_AXHD$(K'H$L;{tJHD$O4'HHHLHMk8L@Lt$p(p Ht$@H|$0HHt$0LY^HD$8I!HD$E1HHD$L;mIk8HUH57L2IL,gHKE1I9t&Ik8HHL$ LH8gtaHL$ ILk$$8HD$LIOMOMGLLd$pHD$ LAw(Aw Ht$(H|$0LXZH$HH$I?H<$tHk4$8H|$4fHD$HD$H$HHXHXH\$H1H$dH+%(t`eH[]A\A]A^A_ATUSHdH%(H$HtZHHHt$IH)fy'fH¸:t,%T$ @uLHHCH$dH+%(tdHĠ[]A\H HuH=L6%CeHHHXE1AWAVE1AUIATIUSHAPL LD9sX~sHCPH55J< euII$I}HPH4I$dIEHHu.M<$1J HCPJ<dJDHu1Z[]A\A]A^A_AWAVAUIATUSHHt1HM*H!HL$HHHt>uH=4dIHt-IEE1E1H$HscHHu6LdIk8IELH8cuB#IIL9$$uLVdMuHHd~I~E1b1HHHD$HHtM9t7B<;t+Ik8IEHL$H$HxCcH$HL$HHIHtLuHc1H[]A\A]A^A_AWAVAUATUSH(dH%(H\$HIHIIHt HbHHMeIuLLD$HLSH?cuaMtWbHt$1H1EHkD$8II|$aHL$AI9L$tU"ttD HD$dH+%(tdaH([]A\A]A^A_øHtUDSHAQau+Z[]AWAVAUATUSH(dH%(H\$HIHIIHt HaHHMeIuLLD$HL,HbubMtXaHt$1H1EHkD$8II|$V`HL$II9L$tU"ttHD HD$dH+%(t<`H([]A\A]A^A_øHtULSHAQ`uH+Z[]AWAVAUATUSH(dH%(H\$HIHIIHt Hp`HHaMeIuLLD$HLH`uaMtW`Ht$1H1EHkD$8II|$=_HL$AI9L$tU"ttD HD$dH+%(t_H([]A\A]A^A_øHtUDSHAQ!_u+Z[]AWAVAUATUSH(dH%(H\$HIHIIHt HI_HH:MeIuLLD$HLH_ubMtXy_Ht$1H1EHkD$8II|$^HL$II9L$tU"ttHD HD$dH+%(t]H([]A\A]A^A_øHtULSHAQI]uH+Z[]AWAVAUATUSH(dH,%(Hl$HIHIIHt H ^HHM&IvLLD$HLH߉^uFMt<Q^1Ht$HkD$8II|$^HD$AEI9D$u HD$dH+%(t\H([]A\A]A^A_øHt)SHHD$ ]D$ uH[AWAVAUATUSH(dH%(H\$HIHIIHt H]HHMeIuLLD$HLH]upMtf7]Ht$H1EHkD$8II|$>\HD$AI9D$t'E"tt'Wɲf.E„E HD$dH+%(t[H([]A\A]A^A_øHt)SHHD$\D$uH[AWAVAUATUSHdH%(H\$HIHIIHt H[HHMuIuILHLXHD\u7Mt-Hk$8I|Htv[1HI$ 1I$HD$dH+%(tZH[]A\A]A^A_ATUSHt-MH[ÃuMtL[HE1HE[]A\AWAVAUATUSHdH%(H\$H=IHIIHt HZHHM&IvILHLBH.[MHk$8II|$ZZHII|$IHE'HA1uLZHt"H=*H9tH=*H9uAE^A0uLpZHEt"H=*H9tH=*H9uAEH=y*H9ŸDL@ZHD$dH+%(tXH[]A\A]A^A_øHtUDSHAQYu@+Z[]ATU SHL$ HtVHtL:tGHHIHt HXHHHLD$ LH=UHH߉YH[]A\ATU SHHL$HtVHtL:tGHHIHt HXHHxHLD$LH=XHH߉YH[]A\ATU SHL$ HtVHtL:tGHHIHt HXHHHLD$ LH=]HH߉XH[]A\ATU SHHL$HtVHtL:tGHHIHt HWHHHLD$LH=`H!H߉XH[]A\ATU SHD$ HtVHtL:tGHHIHt HWHHHLD$ LH=cHH߉WH[]A\ATU SHD$HtVHtL:tGHHIHt HVHHHLD$LH=lH/H߉&WH[]A\AUATU SAPHtWHtM:tHHIIHHt H0VHH!HMLH=zHH߉VZ[]A\A]AUATU SAPHtWHtM:tHHIIHHt HUHHHMLH=HHH߉?VZ[]A\A]Ht-UHSHQH}Ht HVH VZ1[]1AUATIUSAPH=~VHtT111ɉ5_VHHI|t1tAVՍ]HcH< TIH)VMt#1IL19~I<TIDH1Z[]A\A]HATU1SHH?tMH;H;ks>Lk8HJ|'1UHJ| #UHJ| UHJ| UTH{ HtTH{0SH{PSH{@SH{`THT[1]A\1AWAVAUATULSHHH|$HH$HH$HL$dL$%(L$M{Su A| =eTu$A%=V =TtTA9$4 =TtTA9$ =Tts$#xTA HASIHRH$(HRLASA $@#TA Hu;/u1LHAՄus 1HQHD$Hu"HAzRHD$H< HD$HT$HL2uH##HT$E1AFH|$H5#Ll$xAL$/RHD$8H H<$tDD$'H $D$&9@t8D$&"D$'utD$&D$'HԈD$'D$& D$'D$&H|$QIF HuH|$8QUH$1E1HDŽ$E1AFPHl$@H$Ld$0zHT$xHKH1HT$PH|$xH5"eQH|$PQEIH|$QI96HD$HB4(|QHHtH9tA~)u¾"HIWQ"HHD$X$PHD$`A4$@(HMH|$XBH$HK1HT$PH$H5HD$HLHt29t-Hl1H|H5H|IHII.Ld$JD%Ht8uH| II1HL bJL% HtX9tSHLe 9tHMuHHHE '1H} H5LHZLSIInH$PH=I5IH|$zHHIH'H|$IEt*HD$HH8,HHD$H1H|$&AH$dH+%(tgGHD[]A\A]A^A_HtHtHt HtAVIAUIATIH5UHSHLD$L $ GÅu.L $LD$LLLHÅtH}eGHEH[]A\A]A^E1E1%~GUHAWAAVAUE1ATSHHEH}HPHEHELHhHE0LEHEHE@H`HEHHXE sE(rdH%(HE1LmL.H}]IMA8LMtsAtl<.toL&GHHHHH)H9tHH$%H)HtHLLd$HIA$.I|$L)EH;LcLEAHPJtHHuFH}IFHI~FKT7HuHDHHHH)H9tHH$%H)HtHLLt$IL|DHuHx/kDHH_DH}u2H}H5pDADžHEsH(rH)LXHUH}LL`HhAǸ LrH}DIEIEHIEL`LMeMDHMH}HHuDYIu GH8DHEE1L8IEMdE8D`McILCIHuL1EHEHA1҃}8uaHDHxNCIHuLDHEE1LLCHHBH5pHBE1M&MV,9U8~HEHUH<CHUIHE1OL&E1LEM9LHPHMHuHH@H߉%?H[]A\A]A^A_AWIAVMAUMATIUHSHH|$>HHHuH=C:?LHMuH=+"?MMHHCG@LjjP5<@jj$$H|$HzH@H߉a>H[]A\A]A^A_AWAVAUATUSHH1H8Ht$Ll$xdL4%(Lt$(L$HL$ HL$H HMDyHHMDa)DI(DQ8Ht$ HD$EHQ0~ AVAUAWq@AVAU$QASATDAQIAPWLD$HHH@Ll$MH;=1HIEHHMeI$HthL3Hx I.=LIHEHtHx =LH=u H}u?HIT$H3H<Ņu:HHu1.@A~t L'=I|$h=]L=HT$(dH+%(t\<H8[]A\A]A^A_AWIAVAUE1ATIUHSH1HXH$LD$ LL$(HD$H$HD$H$HD$dH%(HD$H1Ht$@Ht$8Ht$0H?uH5 A;AƅMtA<$uSHExH~ Hx@;LuAFH;1H= IIF@HH<I$I1MuL= HEH|$@HP`Ht(HtILH5T 1 <:LH5I HtHLH5/ 1;LH5t 1;HEH|$8HP`Ht0HtIH H5 1;FH H5 HtHH H5 1g;H H5 1O;yH|$@;A]HEH|$0HP`Ht0HtIH h H5N 1;FH P H5? HtHH8 H5! 1:H H5b 1:yH|$@&;H|$8^LuA~8uQAF891H|$@HIF0HP1:H|$8H#:H|$0HC:HCPA;LHt$ L 8;t$ PLD$(HL$HHT$@H AƅtEtH}9HEH|$@f:H|$8[:H|$0P:HD$HdH+%(t8HXD[]A\A]A^A_Hjjt$(8H(AWAVAUIH5T ATIUHSH8HD$pLt$xHL$LD$L$LL$ HD$o8HUB8HT$(o8HT$(LHHB01HCMuH= 8LHMuH= 8L 9LD$HHL$ HT$HC9Ht$Lt$xL$D$pH8[]A\A]A^A_H8[]A\A]A^A_AWMAVAUIH5E ATIUHSHH $LD$}7LuAF871LIF0HHPMuH=7LHMuH=7L 9LHHCP8jjPLD$pHT$(Ht$ H H[]A\A]A^A_AWAVAUATUSH(dL,%(Ll$IHL7HHHwHLD$LŅLkd$8IEM} HD$K|&7HJ|" 7L3HD$MHtH6IFHu ^1INMtL6IF Hu1IV MuH{ W7MtL6HC Hu1HC HIUJT (HD$dH+%(t5H([]A\A]A^A_HtQUSHRH/H}Ht H6H;6H{6H{6H{ 6XH[]%6AWAVAUATAUSH(dH%(H$HHHILD$HHwH?iAą(4HHHLkl$8M.I}Ht s5HH}I} Ht ]5HH} I~ Ht G5HH}1IE(H|$I}HEHu1Hu51HD$HMHu1Hl$HH4H|$Ƅ$5H1HD$8"H+H}4H;HEH/Hu4AH|$4HE`L;LuJ4I?J4H;IH?tLHHHH,;4HELH|$H5*r4IHuL+H4I}31IEHHHH$dH+%(t,3H(D[]A\A]A^A_PX%d%ld%u%lu%.*g_none_%s %s%s%c%syestruenofalsew%s%c"%s" %c%s Unknown libeconf error %iJOIN_SAME_ENTRIES=1PYTHON_STYLE=1PARSING_DIRS=:CONFIG_DIRS=ROOT_PREFIX=;#rbe.d..%s/%s/%s%s%s/run/etcSuccessUnknown errorOut of memoryConfiguration file not foundGroup not foundKey not foundKey is NULL or has empty valueError creating or writing to a fileParse errorMissing bracketMissing delimiterEmpty section nameText after sectionConf file list is NULLWrong boolean value (1/0 true/false yes/no)Given key has NULL valueFile has wrong ownerFile has wrong groupFile has wrong file permissionsFile has wrong dir permissionsFile is a sym link which is not permittedUser defined parsing callback has failedGiven argument is NULLGiven option not foundValue cannot be converted;RI@hy}ѱ4|0lƵ<xm Hݹ¼(6$J8RLo` )4>,H@    ;@ = d e ( p  P t ( 4 ` T C 4P dT5$dx XtTt,xzRx %0&D,5As`EBA@$|k{ADN0eAA$|ADN0fAA${ADN0eAA$e|ADN0fAA$AFD0tAA$DAFD0tAA(lmTBAK BABDBBE E(D0D8B@8A0A(B BBBDBEB E(D0A8D@8D0A(B BBBH(d<BHB B(A0A8G`8A0A(B BBB(tTZBAD OAB`BBE B(A0D8G`j 8A0A(B BBBB Z8A0A(B BBBDбBBE B(D0D8K@p8A0A(B BBB4L!\BED A(A0E(D ABB$E&ADD ZAA8CJBBB H(D0-(D BBBHQBBB B(A0D8G8A0A(B BBB4:TWL `t  4BJI C(A0(A ABB@BBB A(I0DP0A(A BBB@*T& h |  BBB B(A0A8GTJaBqCdB|CbADZAm8A0A(B BBB04BBAA G AABhd|qBE E(D0A8E@F@A8A0A(B BBBAH*bBBB E(A0A8DPF8A0A(B BBBD0@BBB B(A0A8D`8C0A(B BBB(x&KDE NAAADBBB B(A0A8D`8C0A(B BBB('KDE OAAADBBB B(A0A8D`8C0A(B BBB(`a&KDE NAAAD[BBB B(A0A8D`8C0A(B BBB('KDE OAAAD BBB B(A0A8D`8C0A(B BBB H 4KG _AADl BBB B(A0A8D`8C0A(B BBB 4KG _AAD BBB B(A0A8DP8C0A(B BBB( "BBAA zABHL 8BBB B(A0A8DPs8C0A(B BBB( z'KDE OAAA, uwBAF D0c CAB, xBAF D0d CAB,$ wBAF D0c CAB,T KxBAF D0d CAB, yBAF D0e CAB, yBAF D0e CAB4 %sBBA F(B0](C ABB4 `sBBA F(B0](C ABB(T 5FDD _CAA4 BBD A(B0(A ABB, KAC CBA  BBB B(A0D8JKDG[ BBGW 1EAGa8D0A(B BBBt < qBEE K(D0D@G0C(A BBB : ( 2AC BJM d BEE E(I0D8DP_XD`AhFpBxBGGNPO8C0A(B BBBdpBEE E(I0D8DP]XB`AhFpBxBGGNPO8C0A(B BBB|BGB B(A0A8Lpc xBBCB BxBHBBEEAQp8A0A(B BBB\XBEB E(D0D8IPKAXU8D0A(B BBBDDB B(D0J\; BBB L(D0D8Dp 8A0A(B BBBE D8A0A(B BBBT8BEB L(D0D8DPXH`BhApXPD8A0A(B BBBHa.BBB B(A0F8D`8C0A(B BBB(CWFAD @DAHn7BBB B(G0A8G8D0A(B BBB ppppq*q8qWq{qqqqqqqr+r@rUrurrrrrs3I kPXo@   oo oo$#%(GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.gnu.version.gnu.version_d.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0$1o; P C@@KoXo4 gq{   qKkk2pp/0s0suuTPPXX`` ((   0 %ELF>@A@8 @ 000tt<LLX<LL00$$<LLStd00Ptd 1 1 1QtdRtd<LLHH GNU GNU+c!U+fQXx&$X Dݎ$ i$%'()+,-./0234568A>Ժc?,<[暝527Edk0wy |4=)˹"L?l(>=TXe[wC"hR ) O ~j @ $#W >)a ) w&  &,PWpP9 (2 ' / "Fp )( (& ( C (R "  " % U'd "NxP '_init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infostrtoul__errno_locationgetuidgeteuidgetgidgetegidprctlsecure_getenvfopenfilenofcntlstrerrorfclose__stack_chk_failet_list_locket_list_unlockset_com_err_gettexterror_table_nameerror_message_et_list_et_dynamic_list__tls_get_addrstrcpystrlenstrcatstderrfputsfputcvfprintfisattytcgetattrfflushadd_error_tablemallocfreeadd_to_error_tableremove_error_tableinit_error_tablecom_err_vacom_errreset_com_err_hookcom_rightcom_right_rstrncpyinitialize_error_table_rfree_error_tablelibc.musl-x86_64.so.1libcom_err.so.2NNNNNNNNNN N N N O OOO, O(O80O8O$@OHOPO5XO`O-hO)pOxOOOOOO3OOOO4O*OOO O!O"O#L PXH=/H/H9tHN/Ht H=/H5/H)HH?HHHtH.HtfD=/uGUH=N.Ht H=b/<.gH=.t H=.Y/]@ff.H=/t&UH5N/H=H.]8+SHdH%(HD$1`/vH=-Ht0H1H-3/H$8u D.8t15//€΀/M--9uU--9uCE11111 -t)H=3,HtH53H-H.H=.Hu#H=H5 d-He.HHtx-ÅxvǾ1-y?`-8`,H=).H5 H1,H=. -1H .߉1C-y -HD$dH+%(tM,H[11H-H=-HH5-HL HH?tHHcAVuAUATU@S@HVIuo+HH{@,H+HHtHPHJL1u9Z'H:,HHtAHPHJL1u9Z~)HH,,H,HYH[]A\A]+H=*6+H5d HH*MtYLQ+HI+HI+IDHv HL+H+HtH5 H*H=***H9tHc~ؾdH0ӈA ~ؾ H0ӈA0AH=)W*HZH[]A\A]AWAVIAUIATIUSHXH*dL<%(L|$HIHH*MtHL*HH=0 *Mt#L)HH*H޿ G*MtLLH{*{)t+Ht$ *u D$tuH޿ )H޿ )HD$HdH+%(t@)HXH[]A\A]A^A_%!)UHSQ(Hø Htn)tH))HcPH)HkHHHM*t&H})H=2*HH5 H1(O)1Z[]H%(ATUHS)L%+)I$o1HtiHKHHuH9quPHtHI$H#))t&H}x(H=)HH5 H1,((1BHHs)t&H}7(H=X)HH5g H1'u([]A\ÅHuRHtMATI(UHSp' Ht%HPL`HPH+(HhH X H1H[]A\1H' HHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$H@'H8u H HH$$HHD$HD$ HD$D$0&HD$dH+%(t&HH&HHuH=@H8HH&H +HHHHHt)HPHJH9HczHH9~ HH)HHHHtIHxLGI97LcOMI9~+UHL)SHHPHHH4D&D+HZ[]HAUATUSHAPHHtHxH97t=HHIAH(z%HtHPHhHP1Dh L`HHX[]A\A]HuSHI&HHu[PXCOMERR_DEBUGCOMERR_DEBUG_FILEa/dev/ttyCouldn't set FD_CLOEXEC on debug FILE: %s Unknown code : add_error_table: %s (0x%p) remove_error_table: %s (0x%p) remove_error_table FAILED: %s (0x%p) ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_;  4Wa54dxe4zRx  -AD A@Th|FHBDA E(L0 (D ABBB (D ABBH3 BBE E(D0A8D8D0A(B BBB$(AIA AAP[ (dQBAD AB,dVID xCBA- "G2(,RbGG YAAA4XaBBA A(E0O(A ABBCGR  )LLo8 H  ` 8 o$#%LP$GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.gnu.hash.dynsym.dynstr.rela.dyn.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.tbss.init_array.fini_array.dynamic.got.data.bss.comment 0$1o88; HHpC K` ` 8U_ e  k))q00  y 1 111L<L<L<L<xNx>P@ P@ 0@,@ELF>@a@8 @ @@@ pXpXpX0 [[[00$$Std00PtdEEE$$QtdRtdpXpXpX GNU GNUD96)9ۨ8EFVDG?H H x0^F#0 `$?@ABCDEFGHJKLMORSTUVWXYZ[\]^_`ab7с=q'jcXUk6afe-aIP &ksJ]ĘgSTޑ3^WtGI'` =_6AqAE$J-sm-\{j{ %zXC" d* jfR ) ;aZ lAj n S. :10 O/V o%[ ." :$Z 87 /H! ' ''  !# i. #K` =. ).P $ 5 (k`s $  9>Y '" %3 / 1' #Yq 0z> * 5 #' j3B _&N *C_init_fini_ITM_deregisterTMCloneTable_ITM_registerTMCloneTable__cxa_finalize__deregister_frame_info__register_frame_infoss_rl_completion_ss_tablestrcmpstdoutfputsfflushsignallongjmpstrlenstrncmpmallocstrcpyss_self_identifyss_subsystem_namess_subsystem_versiondlcloseinitialize_ss_error_table_ret_ss_error_tableinitialize_ss_error_table_et_listss_add_info_diropendir__errno_locationclosedirreallocss_delete_info_dirss_delete_invocationfree__stack_chk_failss_execute_commandss_abort_subsystemss_quitss_namess_errorcom_err_vass_parsess_execute_liness_listensigemptysetsigaddsetsigprocmasksetjmpfgetsstrchrss_perrorss_unimplementedss_set_promptss_get_promptss_add_request_tabless_delete_request_tabless_safe_getenvgetuidgeteuidgetgidgetegidprctlsecure_getenvss_page_stdinsigdelset_ss_pager_nameexeclpreadwriteexitss_pager_createpipeforkdup2ss_list_requestsfdopenfprintffputcfclosewaitss_helpsprintfstrcatss_get_readlinedlopendlsymss_create_invocationcallocss_std_requestslibcom_err.so.2libc.musl-x86_64.so.1libss.so.2HZ_hZ`ZNZN[N([NZ@_@ZHH[Zh[Kx]]^]]]]B]]]]] ] ]C] ] ]Y] ^^^^ ^(^D0^8^O@^H^\P^X^`^h^Vp^x^^^^^^^^ ^G^I^!^"^#^$^P^%^&_'_(_)_* _X(_+0_,8_]@_-H_.P_QX_/`_0h_1p_2x_A_3_4_5_U_6_7_8_9_:_L_;_<_=_>pXW3M?T`PXH=?H?H9tH>Ht H=?H5?H)HH?HHHtHE>HtfD=?uGUH=v=Ht H=b?d=gH==t H=%=Y?]@ff.H=>t&UH5N?H=%H>]8+uHh@HHt H5\1AWHcAAVIAUATUSH8H=HHLk@IEHLHhIDSLCHD$LuMtpLH9Ht_HT$(Ht$DT$$HL$LD$=LD$HL$DT$$HT$(AuIHK0DLDHC U1HC HH IZAm H8D[]A\A]A^A_Hb?HPxHtH;SHx8HHw=H[%;PX PHV;H0<H5[<H=7>:AUATUHSAPuB==H>H@@H=HH8115=H==Lc%=H=HtH;uMH=Hc=H pH5=HAHHk=HuHBHk=Hzta1ɉ T=L+LHL;u1LC<Hx:HHt LH :H=HH<J1ZH[]A\A]H;HcH=EHHHPH01%9Hx;HcHHH8%:H^;HcHHHx%9HGXHt*1SHHWhHWpHWxHH':1HKX[SHHHx5HtHHH9tH:HcHL$Hh:Hu :tH:I|$(1IHH|uAvHcH9IHu 6ID$(1HKDf:x8KDHtHH/81E[]A\A]A^H9ATHcIUHSHHHX(H;Ht&H9uHSHHSHu HҸm A$[]A\ATHcUSHHt9dH,%(Hl$HHHH{89H{@9H{(H7HtHT$79HC`HtHH9HD$dH+%(t 8H[]A\AVAUAATUHSHdH%(HD$1HTIHHuA|$A HcH7H$HHt*HJ HHDDeHA 9HD$dH+%(tk7HD[]A\A]A^HD8HcHHǀ1%77H8ATHcUSHHL Hh LR8HHux6HHt^LH6PH"8H|6H1Ht2AtHf (HTEt HHňBf)H[]A\ATIUHSHHL$8LD$@LL$Ht7)D$P)L$`)T$p)$)$)$)$)$dH%(HD$1H$$HD$HD$ D$0HD$5HLHHH5H^7HD$dH+%(t5H[]A\AWIAVAAUATIUSAPd5Hu6H1DHc015E1HE1H8PHÊ< t< tAuHH<"uK5Hu&H6E11I< LIc1LcAHHHt'5HHtIc1AHHHLHJHCA$uH1D15tI\$"u A|$"uI\$PIHHIHA$P< N<"tHE/HZ[]A\A]A^A_USHcH(dH%(HD$1< uH< tH1HUSHV.e.9u8;.[.9u&E11111Y.t YH[]%-Z1[]ATUSHdH%(H$0 u1.HT$X11/H|$X/1Ht$X/H/H;Hu'H=VI/HHtH H/HH1H1.1PHt$x.~FHcHl$HPv . uHH-Hy ۃtHH)u.8.HdH<%(H|$H-u +.u.<$u1-u y. ..D$HT$dH+%(t+-HAWAVAUATUHcSH8dH<%(H$(H|$(V,H|$(,1Ht$(H$a.9-HD$,yH==,oAH56-HHuH=,D-:1H$-L%?-H5HI$HH1j,I$HLp@IHL`M<$MAl$AI?HtEH|$*-H|$HHD$/-HD$ElItHH= -IA~H޿ E1,AE)H޿ ,D9uI|$H,H޿ g,I 8IH,H|$$+Ht$+H$(dH+%(t+H8[]A\A]A^A_Ãu%#,AWHcAVAUATIUSHHH+HL<ЃtJMg L+Hx(Hw*H HHHLL1H5 +IG(Hu1Ҿm H[]A\A]A^A_%)E1H8ubLHIf)H5 Hf*It$HX*H5 HH*1H1K+HAw+EIG(Il$N,0ML+HHD$+HL$H|y)HHWHB 1(H5 H(It$H)H1(HH[]A\A]A^A_%*H*Hx )HHuH )Ńtu@1D()!*H Hc0g(HD[]A\A]A^A_%X*DO*17)9uH[]A\A]A^A_AUHcATUSRH)HH,H}XaH=] )HHt#8CH5P Hc)+H H)Hx(IHHHLT':Hn)IHtIĀ;uMtL1H߾(HHtL^)HH5 HH]X(H5 HHEhu(H5 HHEpa(H5 HHExM(H5 HH6(HtHUHH5 H(Ht H'HHHE`X[]A\A]AWE1AVMAUIATUSH(H'EHt$HT$HHL$&IH]$1LHu!&HH!E1LHL~&HHH|uuHH#'IH1L{7 ^jrmW]f07G:f/u,^z_ȃ݉EEEn qI'!֯_xw w![ĨQ]vEzꩈk"ԩx饗>aĀwum۶?SO!?#D\p: :(D^^;D{ѣG#&OxvkE[ѰaC8͛7G|嗈_1cbGq~rJDVsE|駈;qe!ZntZ\z饈> q".bDAA";;Dp@ >C+hҤ q#N
b„ 뮻c!|G q}!:w޽;A{b Ď;}A,\>}:}yx'[lA"-[G|ڵk#9W_}cƌA1bD}}oѢE Co͛7#~a 7܀VB\tE|tRı={6OG̜9qg"nFĽދ(,,DC9#zhڴ)b͚5 3 nģ>4hbʔ)[oq#~W4iYf۷#x %\6lb}qW ~DvW^y%wA,^q1 ^xĹ瞋;v,G7m6Dqq1VZ~ѥK֭[?bĉqi!BN@qYg!Zlشi'Dddd 7nXhkA9s ڴiFz!ċ/_CE̚5 1|p#ڊSX(?gB ,|BWw" F,d_c:k @X `!t rXhNfy ,$|1jt, =YYg1nw߀ n}pwܰKQ {n̵!ōx 7x?{;7`07^ t)70grd!7C!F37~֌ȆqۗܰF ܘrCǍxrÙȍ4n0'pc9&n$@qxFnAȍa(7n_Ow(OC!I. )(0@AG!d (QhLݜ:z+)R0GܚgSgS@ۗC &S(h_6L:z ՚oQ)H]Bڍ3H RPRH6̢p|M ;(( B#| (| (SCABn!t 7m 2 }(̾ ;Bn ^)ShGa UPR8Kt:ҙHROA>PS (|nDs+ί6(hS\B3 v*PCar."(@jQxtBc? E OR@4paB _(fQ@^JU/@W t1wPoyjgUT5, j7ZTϐVGz+kTi!TSm{.ZEw6Q# hHwJ<efTHIFm@w؉.y#Cy'k邞 =y4ӕ7!E@,]T:|*ARyt;'uH Lz5tiɤI $H'Y@ ];~? n|0@ҦtD7ߞtepS(iZ5҄.!H[|uk'%Үb{>#ҹCHK#Ho${Z衤>$UͶ;LblDP@~(jD`"PJE@e\/7US*-Ta"pKDය@U犠:)7S_$YPTF"PY"@)pnTڳ"PtA/upT0DPM#C*rtPOna\2}Dҿ8Gjn"p/EPۋ'UYU"Pg@+uTי"PA5/W@SD.n$uT¯"PDַ@\"2^n v"pim#z"PD6k@wAIf?\P"PO4Fn|TwTj_Df%?)&-=dҒaK&?,͵drђUKf,]dҒ4K&-D-L L#b т ӨpF (jcWG3̼@*an H )L wH0*GtC sB ̘ 9T0ZxaVjha,PA B =` @ r0*X¼P U ,h@-0j`JX\TsB?^0*aiVh0Q  @0*_0,U F5Ll@O`*UU:PCpD% e@3*@`\Tc @ LY~*U(hWCJ=` H@QlZX+0Ղ 0[` o@΀jUÌk!W#  0F7 XN5u*<ԀQ,U(^ +` /@M *xԸ3#EĀ7 pqz^'dhb l# N턶Ċb ?36čn81m;ca41d!^&k%ױ-ѐxc'&l6ŗĕ9lW\Nl9m/`ib̕lc"ΜvƧĚ籭qfk7>'6ǥĝq!l{f!=mClB<ڄb҃&94vFbW6I|z?'_FG:SUg[ejMW6sĭA[ƶK %l%6ıl,'=mg=s21m24vM'bTm~&m_ĸYl|B9ӈud[j;I'Mbg5ql$m|ߎlmfi 1tFGWg;#blKN<݂ئz3U[׫ؾAgvlb֚I}&[7s6W!qlwB>^*!G-6xVǎ'&m߉']֌|;fo_0blK~i?c[Jw^[L~ l/vXbvGbbZlýM߅?-7x~?N#Mwq}"oɶ&'پ o6"k{Xzml#mao(,?R޹ s kyZi(+[X<0wP@@I6 .UXT?0@  $wmxcM~Q@fAO 0HA~AZ1,E[o"r``a҂@Aan*= p N)(*a 3/yy/A:̉̀CtFn}Z`˦-NmҼɐ@쎁"}E%6A6Qsp@v_kVO? WyOέ8ez["/sOǎ2_>KxguR7a {r?36/w{G^Ȫ?*Č]TfT=wH><Ն?0c^~b< `8P0{ۿhO8|ឞV휜+oP^jw'T<*䡹WU<7;~p^ɀ#՛G׊3p!FYfrڷ)5\=8n ȭk/-SҿtЀ={?u)?´u:WaNMQiNܒ=;_XtпVӵ9W=ksrm?'oϼȾ^l/Z"9^tNkQ+9/g#J}:߇YM'EgZZH8 E_G:]ǭl__u@ie }pL<ҸJ3+-+ɬDf\0Ӌ~Ñ~^@8R]H/cw&cnd6u(=+ϬB}[?x~!Uk$a4Z# kyIX#-HvyiK3\ySI̋ScЃ̴;^屃7g#g-\w2]8gřZ# kIX#EUk$a Z#qE?NB-_HAwrԌϧzqOH|Ԍ"ײjq&,U3ak\FHj$Ԫ5FRHܳMkq0y 1a Ļw޿&yqf]:y7ǟL G.Hav8yGjqNOYyku_x~_/ zka;5zfzf!I'6pWO8 ,EɓTckl=_G>Tw.{w Ўk9*8 ~UkpZ_fauh˼uyش~ aYlu9'2/Cp,6B$6=iGg,\/xO7)xp?ha$em sPp6= U.s-8|I( N ѻC!% eOIn{-H]S/J:\cOv+{D݈&kq~L(Ӷ}\{"/ -.afnY7x*9=mC*B.Z2ߓB#f0)kRq]-ktV8rR{>ݷɡw5W93~PuL쨮Dݬv`~>=?.]fg:]GNarKY5c"a7KWLWcuMJH_Ej/'EY/=Y߇=.K]0pz8^aJISvvȩA79/ m"U,y lOolSߛ5U26J-vx`kIB]#v4Lmh]Xxa6-{ДVJPRވ_} "PT%ٶNC!2L @c GE҈>z5 x㲪L/yȕxpYVSKz^$oCH~;6F^a73+Ȟ.ًz :! +V^wӿ0yԨb;„nE_VqG[j6‘üHT`Ca?*4Q_9RQ55m& +O&UMl=ϟtiCГ'~T1VѠ3S=g;3v>4ҍ pWKŜ!N j lP멢.kOϜ wS=&o>]Sg2ykSܯfuڷytqfwSw 7}j: `Tg'O26|ŞLꚔ]ɓ渃2hftMj9GiC)>2L/KAOiڌ؀j> {a?2PMd+ˣa-o̅T_V,N={&o;ذ懂ѰɓNprGzroO{+d ݑ\[oNuVُ5m 㹷SFC敗\RׁEu`ӼHb=@5cl֖iAwHՆlʝ7ohd6);qa\*< y Q€$ CՐLB ҂."8 *BDD$5Ay)#({O܋~7^tUunݪA;+hZw8ͤ|nƞv$NP>xZ5{:L^J/:K==*,"ZeZNpIݤ.Q S>{μ@@- 3Et 'P)*'6?ԟ#Q6[Mt)ϛk2U]>Vת4Ӈf$.FaU*5&XIjJ?ZQǨe&ZIk3)M*QP%NwOTIO&gi2ݛ27/\=R'cj]2Mj61Ry29V++}LoG٧vjWlz !cZf&z#LB²1-Z[ FZ֪%mZf?Qieܲ.ÿ'#`sMPOQ: 1NfXA%#?nGm V4u4 %$!\T7ZbQNf^nR uՆ֯Tˠy/iHNyYoR&j ϳie[ j*I;T?y}I5*z(:=Q5_V3}6A}ݻYM".*V$mgQ<`ާg}[1x޹KK=~M)A;*rWc.Є%!0+ΥURDJ6\lEy*ߦND/BQUFGژnqpi%zNVUeXl[Ϯ"W?p=_'xsYybnk5MT=k@K)k=w2uUEܥ9N!sJÆ >!馢҂b__=.>C #;Z?>bZKꓥteK Z%̅݉^^^0Z ,X|ff> Y+y~X@秬U@vDeh -aOvWVطG;`}[N.og,~ӚNodVf70OJ/_VSĘΖ&t6snPsxmÿf9foVmSVQK\'n=2%OH毁9pȿ ek^۲"ǘXҹ` o%[ƚ%7{?Ei_"F/`/ [g_E/5|$z7XvgOȾ}9޲cƒfG1;q}_DO6޺} ˞WQk^?ڲ_'{+lU_` dciHYbi͸wZEi8>Igbc|=]6 Ei~6Wk5f߈*Kĵ_nfAOWƯbÙ -w^OXm<Cvm&{%a7|ucV.aa>BCUGϲveKG7 Uuz-guzM_/I3e6m^l\铎,}b=Ċe^թ'Ǽ=\T?b0!?ͦ]1WLރ~tVϮ蝁k3X?5mimf >Ś\Ĩv^вfX0Ap2嚾e}&4t}"=>F6p2mνHȋ/"]IHﷹߝ,L3HMotJ&LgK0K̟Yrۮ%,tNy5W3f_\.-_}[zQn~Eқ-6k'ovcˬo9،UFlN2=X7}o>י"cLgKu*SrLص{VK*fӯ_ưJf^⊲ކ-,~vQu%tbȩWULFn$}nh=Ή hwt- ]ɻ@l~wy =Qbۭ5vgH4p5o{ǴCO\mabOy=L_ez߱1RzZEHr O1K{ 왢.FԥZb@,En(]4Ø=v̾ف)s+pfy+s|:qy\oNQ q-Uā27_ 8<9 `׭x` BȌCj1m]FwQ?&@YA?x8k4#HqV{ڔkܥQ.]+9ןr8_9pc·[YQY^QV>0iB}%u&s#"' _ʣr_T> 0˿tuf?=YCrO_03q|vN^oayE-/ \,.wK˲ygA2厐u͒^?HDl H.nhέ(} qYoI%>{1R]2|_v QJe"v'ʺ"eӀ[>)))RBݺe)]ٹB}_ΨJVLH}GIMcYn76"~zPL^I]ׄ^9%%tVZˮȶ _qI(+)rjI[fZQ5j qe+7`906 x,lS;NP/g@f@spf6 ~Bn৤~R'yn&! (g>_<2/TͼQ"3ܛe< Z Ûe 7 = 8~ ~Xs{[Nw(+tu`<,/abs0;}8tпqq~`뿖q\Xƹ~>r3cA*U9p{s]݌sCG32f_I/8mv^GƹkS1O`gqA9A{s=oe1W08;_pA/ۄO`Oa뿉q"\\s2p7:A'O9菊߁q;\ƹ~\mssaAJ/9]m\.\\|ƹs2asFߞq?q\͌s1qa+A&u?w6-3f뿁qsg3tGpпAcZ8߃q?q8\ƹBƹٌsw'd뿎^>37V&j`^HS1)ʹXMSs: #v1YnVViiQcKQb-ya_RFтs&><4_ΜfÙCOB?{3:¿K?/ooNOtEft? {J_\ 4F:7?߅NC?%[XGӟyw/ Nqoޫйנs{GކMG.DQ( 3N :Cigӿ_(;_+-ǣ?DtWӿ^ J @:k/D:{?('FDG$:DtWo3J&6_N߆N::y/C/+1?# ~o_NWtAVtӟNBt+W{? [OA:_N+$ Q@:#韀N:w:O K¿[˄~O[:C4:韉N=_$;3/ mN<:#_N:;/_%5N_tN~?:_# .+_ iE[^aG-:韂N:gtW':G@7Ѝt8A7) Y Mh߮ܮܮܮ ܮ"tnntnW1EO ؕv$:CFt'C: ,dF?߈N$tgӿDŽob'VâHt?韄NߍN¿I ?'aWF:7:w: o? Nw[Atg: ¿MK\+ZwۡA߄N4tgӿG.ûI??N>:[/_%mCjt?4t/E 6/rfw@jt?~/:~tӿF  W GnB7qЍy\C9:k@w*v'tcO@VtSF7ޗD7ޗB!{aw@?tǡӟN.:KЍy_(;_+=NǠ?qgӟNWIqn?qnjeC7Ѝt'E:_+¿CKW G;N:#C7>Gn|  N/CJk?2N?tG? tq 8&X >v$q 8nC7οЍo|&%_._-cvwG:c韆Nlt #Dt?Tts_NjA9/CIt_D+::_ =:NXt?_'/ ߄CBY?? >G? 4t:k¿K Z(tӟNDtC9: *o:n̫G7գэyƼz_/ۅ}%煿@=1F?~:L7 fXo',NtӟN2 6/t (k{:Ⱦ-ѹ]й}ѹ_(;` {cЍntƠ7:u E¿[˄fN`tǢ?~: L7/_!?lNtӟN:s_NŸ/[T˅J?|'?~/:_NZ/_* 0:18Ѝq@7>ǁn| N/CV= v$:NtO :-QE8:OCߏNRtc/_% [ D":C7Z/_& vt?D:+ E_,B XNtӟN2:s_N¿I W v|WtN~?:_#¿MK\O Ghw@?!OF?{_Nz/¿G I[8tG?xxc^E,:Ѝ|-_"R e7NPtOF.:Ѝ&&%_._-GQtq8n@7??_ W v;t?G):k?_ *1vtF7Ѝt8A7Ѝ/m_*Rk?b8A7Ѝ|Qtc(1_ݘ/*¿CKW GbwB7拢EэE7B7onnnnnnn%kPw?( h .G?{э_(;v+tq 8nC7οЍo¿V !?%f xtG?LtAy/_&G{-N<1 ݘnwB7; N'G{n#nwB7;?/@o"-e_!g?lN4:yA?D}b7sK1OG?E?>{ztN7?Ttӿ _$2\ 7d_N,:OC? ~?:! N݁?? =݇3>),OwSNg4Џ:qIN:C1:Aw W  :=1OG߇N0D{׫~}[|=ׇ\XO6z??1W|D vrq)X~5oTwn?'a^|&?哰|c}[G{k7_~իfpOq/\=9 Γ,nǻz'zﳏr Oro8.\d7 z.ٟ~ X|p]=ٟ]=oo5ECswu=ʽйॾOv܎ab=1w]sיJMNX yF[9[19s2R5ć̞>'Ԝفu%fNJO5+'e2/^ Y!19~o _^LvΜlonY24&˗7?Loj7'A|3r]ޜܬ9w3˗m|vf3SfyukIV9;vVo_7Ɵ\fyCbrs y˄޹!1sfϮ+$n<&?( (Wo]ð|]zu0Fk%u:qu Z.ѹ_WǹTWSe3_z쮛!y]ݽ}\:Ź]\}bU׹۟%O>pS;CЋ7?љ 7;O?:fYE!{X;)_}!չ߸Թ2W-j`(r'|o|foZ( u!~ۊy;ps)ƟIx]zg:w. rqo]εKe)7ʵWZ8?};Evcw'??[2~gO@u8?U?~Wy?\_ܷ=/e:w_vGw^;/M[8~:).|dລ+cniԴQ4ݸ$4.m x"b5j| ,S#'nI肺[,ƶn`BXxߥygR3Ȍ+Ҡyu瓨ޜmW:] 8q=̡#~i$4d?,Ηw䊦'W==l7Ծ/D/\#E{Ɲ.hU=^v13zjrӫF|`꺴'||_** yټӱ^}A_v{ku#ɏ+_>k8l%Ƿ.D%?UM^g&n[_|ZSb2:o+*x8ǒښ vMpeygĿ_K]~`ncXc9&.7WMoĀ>:0[4辣MpBG_Y||32ŔMݻ>wnycegB~>]p':#E>zmUCǟ]z[80zi8b]=[VAi R<9h0k S>vݲFj<{l_o817_$e*l~ݤecXj-_\>v/ۊ<޳+yO6( ~ ?3FfJ24ߒ] xU~4HpqmW0\phAANҁ&NtC"D=mdOe|~!H:<TtW0᱃ {έ]]Kߧνs[J^|GFA`AM~nS܃?ߋܨ;7<Ѱr=`%$'x;V6PKcUYWz7 1P%GvD<ǑycUƪ7z 4/Ro֑]g4>[/0M8i 48ӑpqZis7: 5BK5RGIIHAUROQp{UTi߁_GW|ah̼%b~!""{ӳ4ѳ[ ^k O}X;Re^+ƝO#1צ{Q)߃?AKΧQ)c-~JL)qǜ7u\χ` ByTGF$ǘNv4;.'Ƙ$lLBqcr*&!ǜӅ1] !|lBGF?tC=5ԻϽָ׼ =SZ^zLqj{q3y9qϤf;=SZ^zLqj{q3y9qϤ&vgޅָw g^V[){YqKo{8ey9⸗f;g^V[){YqKo{8ey9⸗&IKXsZ]s#}{-P!t^T@zOIz7={JB{}Pᚫ$D_gEӕ{QgCzOIz={JB{Pᚫ$D_7rOWEP{rPSz\%!齘> [(-GDZJ˨R}R}`.JA\s/rOWE${C$D_7JB{^r7\\s὆,!kg,* B{=]{P) WPS+Gk^̫}MվʧP "3;@ ._I?(˗h5!jB=4jM,WǀWkO&PE=I?~t~+4_]߫CCI?~t~kj?]3C퇋.o6P!~4.mMC{C~p~_5O }h}nϸIP#Slޮ`Aҁovoa.mC:Pk:PKjvWt~?(@= _j?ϩv֦j?0 j~gPu?Joi|2Ov B%! Bl(P *Pc@^=v2}~+zOIzV5WIzQܛk.JB]s'὆,!k3\s%rOWEz}{F5WI~z/վ:AjHK]i9(Q * W E)RPIRp0JA\so=䞮܋~P) WPS޳5WIz=䞮܋ިP) W@zOIz/ JB{){r/,P) WQSKEK^G~qqFj_z7vZʌ4Jv &Qd77nA>ZH n\Ot_8Kbk)ǐwOo߸I,GӶqd) [)wgr$Z^ -US:v-tb6KoO8>5j1\ [<2 ȖsCK^3K&`j15:X$-bŐٖk8{} bV/1 ]C &[rC)pAQ4bܑ`"J=vh%'?&[ƄCyPN#ÓlldVC*NQX>))r)_Ԡ3 ŭH+#^!^KI=cGޛo-GܶĶB7L&A {IB'$op *NvI:kߖ*ǥDJo2ahBU.82oZS,miCC;IoP"Ms*EkKI\JCt^t63eRN*ZsE㇟ Zy$ECGY7F;K/ghosd>H< jGxM>8Ȓ/[Zp6hcfڍ[p fly/l!L(^\'g)>xts' 2[zI|ȶm˺W$K ;;AF>Snii(^ f !p)6Z$}ӦǎP~1O $wJ2_ե%[C1sh2'uJf)]Z:wP_WחF6+i/oo-vAzӍ7Y=V_YZ,//E]Y* ,tUI^OW96/W(rW=Oohz:S>ڽV2RY."%ݾ"9s='gaYiiO~{4*uk^2'ۙ=Te^zsK]=#32s2 g`Nזmֵkm+oy?]*mS|fwzC]~S9O6p ʫMglEo KKj{ðmxxV>Y ],Fq۟_R*O[]f]\}Mz$(u;`۳'_ %Ĭ+^ߛܹݝnt.,'oٕo}Y$"cB_M²Z[XPءK7q7un׶Gjg{|nk氌!'7PSYKɒBvـzd7 >\귇_Kvc]k f׃}|4 M x0-KOC/[$੆hpx_o/O#))wՀ?%`QP.&@@"8H|$x?$x"Ӎјo# x;Ag}_gSgu>'|]ߣꢿLxo_&o^i[T ZAyDOvShy69#7GqLij UqW~8Lqs?-kc&C G Gf[hvzpjO}1'\lW|I<p^_<a|K{݆[el>5&q9kXTy"Jsd]2.!u<~gl~ ʘ&o+`ge)+*{:gwNF)tD{9q,ŵuɡ\N8{~oLMV3p`mWg'N-_d|^&x#z$t$Zn~%?۰\Ox`:ĠI8)VN7Gcvv]äJ,? J\,gFǝ+㯉u\=;4rN.8  wssE}#]kЁ-IL zp>{V|O{,NS-hOl/p-(ZPmhCm{K$;%[ػ%oL.q-v-WAV},nR=Oe_Y*HI8FqyI;OYs̵Ξ3{=?'fZjעܜ34q^<8S8>}U`O jN1odgkYy/X? 7 __TA*hׁC_!o0~=#{i?HQ32w ?oo&?$s/%f&ڷ5Ѿ}M~?Ts/7*kZe;W~o ~WS8gI, Zh[h-߁5U,_RM-d _zwK?O]-hߡ=h?h6onVw~k+퇃tG>_V TUvUYU~U _?%?E?sib5ϫe >:OX]յZ]k=炿 I ת}0OW_Zw־C~2_1m_F.6ofc0K%o ~bMg~QMϪRWc_.o}ZoRK!G?% _o}ڏ? s%uo[Gh߷~OSW moo}w[~g(?σNvϳd;s7 3jN]76u_F?^6w~k{퇃O_wiz=ׯ}zo~ I_ Fw7rоAm~ Cl5? ~d}//-;?yjwp~SG9j/lINwrҾCG67w~mg9kYǁH k / o@ @'?_ j..2'+5~wmV  s I#6~Fm0ts^b+ ;7z=X~3 T>rվ#O? Bg8nnڟrگ}7wk?tG> o=_C~ 7o}O;{j;?y/'W~m/7~s/w??_ fM߷6&ڟ "׃_yk[NoP,uI!jjS4~o~,{[hG>?_,K_v/WmzʹLʹ ~"? % wj͵? k s_ V[?ߢm[hߣ}[h?4W-?M_oR-R-7iJZi= 7?߬k~oZa?<ǃ?o?!mFhX헀?%oG}_W |<O_wiO~oo +k_M?bg32h?3FO?M߀_9Vw~X?O>AςWݴMݴ/7:ݵ]mk#~!/ k{hvо퇃~:#'+{jCO~zO"o_o}8w~O_炿 E/ҾG/f[?$^Vo~Od? M_o o}퇁4 |W߮{~Zo?9{? U_oGuhQwo?S_;Qno7 Q_~oWm~ #<𗁿_+&i:I :Is\WOi@??_I9&گ}dO~,? 7_1f)گ)o  ~THվKj?Xx9{ ?߸~o_?'1~~N2O7}w?Fw~4[iai=;?o?Aگ6H΃t ~_s G/{+OwJ~t퇂 ~2OC~t3 ~_ : ?|kdj1S!ڏ/&K.~o0X>_6*KYo,GrC_eѾ ~Y6|lgk?2[I/-߁?گ6TC4T(c"׃_r_5GN9Kô0Lô7L' ~/;C߂oz~`~&% e{ ׾pw?io?9|3( >8Ҿ( _ : ~|;k;_ڏ?l~) 𯀟XhVK_ vߢPoRBG? eo(WFk~}Fk?xcOwU틴^"G G?'Gk~1}1ڏ? , B׃_wӋ_X_σhߡD%*~/:_V {rj{j?D}qw}qڏ?A?RWC%_o=kw~&Oeo( ϟi !ρMԾDO~Dw?QOSW_/|{Cs i  _.<`ꃵ9߂=^So5Dh  ?EPwjPw0_jw{ ~ap s~/9\Նk3[_/gGhg~Cۀ~ ~4k ~2-Fj?`{ڏ? Xw?(:JGiQo~g?O5ZGkhWoρ\c_p*co;\׀ Rگ, _ N|j?|Xgm,w6Ni8Wzw~ǃ? g3R"NFj!-O? s~k+~=| ~';瘠B_b+N~][~?y;Gz}'j?l1 w2I'iIگ2Iu?~6O ~7Y&kd9O6٧h?hMo~(} ,W?TWǂ?o0 ~9y~9گ~K; j?\}گ~Sۃ ~_? eo i.k"W]??hׂd-~,~ڏ&1o? 43ϺDhW]oG ? yc/~گT ?˴wX˴ o~W 3_fπ,˵-{˵_?l𗃟A~ZVh(O1Fho}*gԾJZ//\_pKo ~w?8~XRگo~'{?/?YZWk *?9oFh7p?Y? ]~/Vj ~*Zi:N+2[gKq3N)M}&1ǃ_c?[^ dNS_?Aon~ bۀ>Oݨ76jFܨoW~M/In~Mگ~K;? ( _h٬7k!-C~4kO,^#~ '}sl~-/Euhko? X?y+A_:AU ? t?oJ~DL~cہe_ܪb[_qk9eimoMi? T_ n ࿸]oG۵v ~??)/=? Uvh/C;yysssm_ک;_y? ~w??$?.إvi. G ~"[vk27_?ݣh7]O) ~/Wj^'cݧi>O o~ ??Gd'_vk~#[ K_~گ{@-h?{?DG:WjA78o _ v {9Wi!W?o~$O~$WL~mO ~wXo~گ~Sc J;h#=3_z{~/zTjKۃ ~_?o/?1tLŏi1/ ? U_?2ǵ_?8')ws'kH_#Y0𧁿R'_~~8\W _S_8ER_/E-< _ V?{R;'?NiS/~JNiS|?x~YOkiO^s{Gw>Vbm2 V/gVo.x{>?Z#ϳz-'Ycz ]QVꋬnw׭zVofu{nw+[=ឞIk}a07Ys?Nzn,<=~]k=ϦV_V9+Va/S>1e޺Y?׵G|Bum|<쳺}?r[7G7o^oYXo ޹z2z'M/O,wz镜՜^\k8kk9[8=Nܼ>Naz30N`z[{}MLw;;=9EӻZWq=>vs:Y?9v~sf"of?N?k˘˙97Cwkz-7못?tw'sw]>t#Lqvz}>~Nf@ߝ>̋~f_ǘL鱦uj 8=N_d>8}q=/1m/3W^+M/JNO0^Mqm8^ Mo{E3gzzk7MoN7Syuz6y^߷,!s}H_s`ϓuxyw 3'˅y|/Š%u5O6@@k/q臵Gm'r2 f$c]PPu0ʱX?{M^Uځn.w78爄 uW0Ka4q4 hC =Y98D?o._ M u*A?CgD?ǡ?/@G{[@ſfa ~(ƈ~Ps$ǡM~!F~Q,WaFM h qgAGONPh:G/-H_)8pI()aAHKc? ~t&{@b' Xb?/paOt?!PbJF9 E1bT?z;?~}~](P`A8h =8nBۢextq3?&lZmmyٙ41- -`bd45fLh`Lefabq` j* B l % ؘCYxs 2Rs@ `;P@$#Q<ST%),3{;gZ !epz#k̈]ff%S|g}y!kNvgˡ- kֵa]g[ٮ]>5NQk\tarVk$"3%~5p<[*dsge~Γw%DI7޷ {7GRuTi?.庼zvہ9nV>W(6QlA5u ||:|®KnkujQbƵO*wj)%~GL>3=kTGL}fM]]]_l[Mo:l-`-_f7N7x͍R<4YĤMoDΕs(ÇjS3ø bV7? 5fJ$^z#q[|ή7¢Ty}9n}wQf;dc9+6ޟlbo՛wזV~`q1eLLǴR(LKS RRRS$v ip_set_hash_ipmac.ko.gz ip_set_hash_mac.ko.gz$ip_set_hash_netiface.ko.gz$ip_set_hash_netportnet.ko.gzip_set_list_set.ko.gzip_set_bitmap_port.ko.gzip_set_bitmap_ipmac.ko.gzo*@.`@qc(zA@G+Q8Q£XP9;;iҦxw9KzkZsͲ"4S}wV巀[}/-,ݖH[%Jmu|5'r$~M}V: 9W]=K6_"lP{iqFrkW[,{D~rHNv6 ŏ<;w M|#4~֭1|˲9q4tA'|^x }fS.'Q,Taafw('[_g,6S!-J$uBK'ȉ}u<n&21Urn6~F&~Zw5Ka] eO{h94|sR'F);_ȣ.+}6vMͲ[Ig)|9!/ד]amߺWX$h?2eiNd L-]Im(m.ұT>:BsF2I<+*z wQWۤ ID[;Tֶ͵ͳnsR/9XQ$B@ T5L$BR+xR62fJ!~-/Pr@ȉmc}PFN8Xx?t'K퇆9uBk_oYfի|LבFڿJ 'u [rɫ^L,|=StrqV4h&igݛ%LDQFPCp PW|p2e5> IXѧ=xႳ\p|"YD.]ڦj| v_M:;9-ZۄL0ۚpf2"SAE.`7d/݈n^X@Ly L53J\A M`c+f?e|up9}^}$_O9J\0/ݐMҙxWj_}e"`+kpgy] ~_,HG?=ï/!RiBѰ܅!DDx}X"f'!R&I٤ Vfo Cd;G;{[԰<>a;p9җ)0"/ͱ ^I}(}u̇uXs T [S7b*7ˇgF:/bƔDFq~R\p?}J!OuHiϵ˼f"X"]G:VHn#3i=`cR;KI\UP>+@;@DGugGjrMpUv Xxy|,N.`WSypD9J$9[1]@ɴ]w tj|_]!l>cŇfeU̠tD㦺Go W-m <%MVֶ3&-m#Q F+ނ]zZ`PDS:K1 v~>7Hpӭz7c[;&kJyPCSRiּ5Jlh:VfpG+x]G`e.{SyjEQq=0=e&b (E|#Vg3ڥ# M}Z[cVPN&4[E)}ťfgY"$pIȇ\jT^ djo5NijS9o5_>JumAkǎjy|"_1keyo_D: 4IByg:cd)=TaFd_A Wtr@MaY,P; XY쒩sYݣ>UCeЇFNS|h ]{t KEq@Bd*y`74ySoň5&~BRC A!RdzE;@ 0" h_Zhڤ,mr!}EC`cYng Ss`Dna ͹:η#Oa5. oK!>KTcۥ[kߑ$`p=v]vvGD<[ 3Pw HEs8t m JX6eyE_N(>ZP) ^HŬrJM??( Y}`HY9#ȷ7,cl4P1+*yӠ= l&mh 1xwh>21:k.X{OF'VkN{2 {(|U A"g+siZc:K[ 9tMCvVo:A!J _,0Fm7d5uu@ؿm 2Z!;C,jЀ 5H2vEn˦G--psB@XA"9h\HMGh5*![ƇpGGf٘™҃{3ܮh5fw>c>D>eihwMC,HL #p0wF93ʱ;!eJ )+0M%,'L{ B@@C`9U]о;65 :?$cGi| f@~VB}(ze!{,gŽ16# $~U,_PebI7gE9D\6 /: 2f7-GV 7e,*hXlDbȞeg#s<{m7}8iWKPlA-v`=ʅ ¯@yQ%w v-g zV `geئRxVK)ǸmBYJUi1?F/mUHl͎SoНw*ji6b%OYG 0ۥ#2+Ek,zH5aQxuDvq%W(Q4Rmf1I~}| r`H@/۷ȟ`M|/^[M1z9IL O% LNlۙJ^n<3 A}q]X)TܢJfxy(ZxU.z~ƋMWN x_>dž5FFQ.k$"/Uϰ5âYċb(dI$@*S !z>P1;Բ9Q]ԮOmrZ}gͶK'J{YE#[UE@M 5G;-\0wttu]/j=·" `>]3uQ8=tZRG9jFMWl+uUGyf0fb0a|U'11°c'rRyl%l;2: Ϳr9Exu MyNʽx6\#z;ɴ Ǩ;Zhcq ih_#8 %H^IL,(C*-Z%DN#SW (3fx!uR] s~!v%8j/fcFh8̰-Ʋ=:Ց fc uV=K!0I;ےR=Ά'\IDbOWd 9v%H|uߣ`1u{u׃x BtߖVȎ$BT*?@4?FEw2@S s=Q,XٌV=V5U_ !$ůB>̾0Hf1A (GŒ6&Y/Ff +=FY@e#uߥ/xDeK22'NЂFx?ۙ_aSŸcF"]$r {'-:*F  6  ibY/^fI78[ա;s3 5[dpCnߚS7C>3JURn2+у-j{VAzG 54©usRh7+C%} vZ'*J8.MTK/s=Ls:͙Y,5H>©n)VzhE矫f*'KuJIB]v(bB5z΋#!@1W?D: : JB=`bֲPL渄WWv-[EP9JC R:}A?,Z\j Sh>ijU[,f؍C_P4^ҀRR^I2+ѕ jى#6UG%J1xcgq%;c><1k8.C'}@leDؑ+Hѓkӽ[:^Ugse&r7QNaRS#o9n_3?A=%m]HańK]teh'B;bZE\pQjHgoSF!}}}QU'ӄ Yw-U^1cUQ#W0>$[{ոg4Q 9{di%簛~t ퟜQ 3'OŔ<9ȿ^fS̨fMчH>RCz'2F6ލR1heb0H ։vi]m󉏺""DDZ4U{7bO++[",,%XE D !֣z}Wr7Y^Bs6q2h0ŭM,;~ o OﯡSn|'hLo@qlYCB6y6Q{kv.jaDyn8m-m rc?g6AYBGy9n3aCձƽhl7`HS. {ĹCix {9 &G7=Nd^=qa贴'>z6fԡZ[jzMqL. nԨ:R\ߓFc!Q( 2t"XǬ]dlڟk+T ).UHEZͿTWd:WH|S9 T[1ܹ=cXv&_KBgߧg/-A%[NC4_p=ྥ,٣|n ^t7I.Y[#B[%f↏f*:cqۚ!ymcap 1\ j]WTTLY,NJP;Xpf^59487XL$Vc'x{ l|q!n$k>Z iPLr;C=^[Փy١gBvB =CcŝmQqo$eOh^_} ^!@&?iŠ}Q[([3CEg9r$o΀9).6r|fma~\yRI0lǏb>LP|21#Ad#i2n,ݺs\bؾ"F)-b,iߞɦZׯي3#We/:A^m^%]lh6;Ҧml#o{jsČu!0P$3e(C?ybHWcح '<_\@j/"X"9(ڂ~ހwב!Jq2@b]L媺69X^'My1R]0g^IJ]zU޹vl`FV/IQ\D*o(?|"GMj@:s?0|7 Om_l OVH8gR _74l_>WcߙYmN:}m7}ywj5o|b:C:F{IXW]xja=jpҬdAğ [^;o8]YʴL5TbjǹV0qG Yˤ:)9)+Zr-tMlhjry|8StFYSU-_x@E=BpUEԋS߹%8)m*oQ{Z_VUТʄ9SʥX䭽ejt &ojAj]&w駖 - \M o`qW'k2T(u$j]{W uזq.X"Z}\YĤ[Em]qI'<.1f'*ݍU^΀+a!iť6 i1K , <%\(Ը=Jj BUa$v[qսkIP30- ܞ%&~InXbj\&&ɕXn\ȆIZ0QV1)m#$pDdئK,u) I^]oǤCi-nD{JKA7lGtt#9 r\&S1  KLwU^cҍuSnv 44;BT₆Z ف=2St=޺}@% lpHjybxƙJ& ]T;˝tjj+ʇG.LHιwjO;1gS0w>ǀT,q.rܞz[m̂204KiQ{[30:O>H7jB6s ^W@4ԛhÖzH:@jRE՗ǧ;H0獴) 5Wci^^>~{1=Ǥ.,wf[sIRIǞ>c7م>Oj+u%No{1fjD\+]gk4Ckc?06|j?@;`(Ot^gY媮&ūJ ħ?S?'**Az[t JP8N*,!($*AUXk\ Swu܋\Gc/͟NZ= EտxXc;U{H n:Y5^!k+t6] K=NFlLqhƪZR`[է*!OɁ(4fG\dJ ϙߨiG~CLJ ,6<)./՝Pӿ_x#F 諬s.iT?>ݍ(ϣ7._uIwb=$x['R7i_`47}KR|i0 4K͐lktY\Wh&]PKu3/ mv+2Un?P,Rѭy7^s8ٵO>JUwU/|{[ڽ0?#ƈ2XYqi0 4`L7C҇_>' hguF|.## g6{{Htc-lXU̢}Ș7㗩mz1:7y^|UM:GXES36S<<֯bNEBNȋjf{f)&C']kydXjA(FOy>6Ǹ9l/l sd{a3GxBh\hgq*i꾧y"*<0(Y|2SR%Jԡ/\8/R'^.2նʡzWң_ UGgQѷr܀|J %'{jUWY_PkpUκ_<^k?F\a$'ʛJ~ O/+e*7SդS>:v"ěZ $y[s]\Xbx[@[*,'tT_-?;1zInj;u/*ݽ(\z\X k+QzlQQe4vtك[ߏp~7uCu\/sQ_ ȧGT>II|Όz-霄xg'*6 ^'^_d@{ߧܯ׫1yjU *'FWH^PzYN|]@Z K\M*=\Pr_7F7 0 _'wﱞ|Ю9_reys_s9yKTgTa906Wr$>?}~oK*¦>axf=3aqF!.Héem@|P~*Pmy/`a>uxнvAп\C;;S*swC{_&yRUp԰SBC:{]ϸ ]/.$,xI7)VNCG,rnMďy.IKTd4_H5k2 "]Z)9Aƕt')r21+{z]冻f51z[n=qziʇv3\_r|]ML=tJ|/=^޺E`vyлEC<鷸 4~S/=4qƵu.Mp:,/w2&y:*/Ifq8NGr{ ׹ht1{һWaI<Ư1mF툋[`-'¹߰W-זA\tkGBBǜ뇑;)?_W]Q p3˺6q޿7\&N.vk*?_OQ}^7mTųT>Joms{mz͵_Vz,ݽ1{;A8-XGYvrNr; 148'ӆaS9n^S׵ugO&pm~ `KouoaԻ6 ލp ?>3ze|d3̴u7ϽKMtM<=N ^L޻aSnnHn? 2.׸nSwvÓDUnxM?da3^3Xw^nD { g{w2s]pæv+?ܰOTᗠ?۝߼WFun~sI$0F Ae:9ĿqOW9?_G㺝x{sWWmӠf\v3/ s&E*38ϐ<^R\rა[D*i{^ [hN#De-: %}>(9c_3ɸ,cTR2ø*y܊xR 痹?Tb:߿ӱ[a)k&)_䷸x4Q/Run׸bYKdMU58:˺"rX8kg#e ϱ7x+Z;ίu6ĶFN|s73G MsHOҟ/\/;䞷FOEog 㬍~{z !fCW;Թc~ ׯFMEu'23i r[HNd,yro.(eozyso e?{0sn)w}EsUol琖?DSCM,Ϝy͢e/#^;4zZ7y/)6..(67<g̛cãƅ9kDx̨'xqM;cG6 < 1^Z)yջSTV}"*4/7VGCf曆4W EΈ#&6;gtq㝢|&l 2aHx#2T;d̘q9kĄ̀ՉqcF5;0嚯ZE#NфD?U)++)syaKi )·hw^R7M-(wKEH"[X}$7ˋr}x/56_+|RR+D 5+WxD3^oq3έ"?̗ŷZ^cj[qwT;Sj\D&1i6n1#&*6|*82;<(wsΙ&?1duވ3GL6R"2$(zo^ ϼ9aI^eY͜/nܜ{{29f̈Wm*r g5J]h gWK9Pl>@(3o+UZq3߻h6BnY{|ۇl߽ ]ג |1c}o?h`W_"jbo(~p0x .e|m=W)c?ie+|?uJ^ͬ/|2nnLus/ڢ*Ku/[Xl3A^(OސQfLn__r75n2D쯑6F`FΑvDZwg1 7ةR@\r/ im >E ThMO_'Dz;[! T\ /ϖxqr,|=%oπ|Gf7jG889W]Ύr|05)_>:s- W%b{".Q^._yQB݄tssx5ˉs|>oɗ|/gKᦨWhQZ'>)߀_ <Xܳ)ޫ /tNR,?,jWV-tBmi|x-Su-o Biwx\5m~o-8{?k/9%݇x<%x39GO.%r[=g跳 oGX{z߅;{gJgx)n:<%~u,~;_czN/xSp7M.^Ap9 K2\>h%~rq}FW98}=q,7n ;5^_Es?֙ ><_? 58Y=AHK?#ӓ\?u/zDo{[k.)Mx)M0Q]噎xtwF¼3w0I-dB[e^J|d\*d^JVdr,\QMcy7[E.I)a)SSby_߉Oi DOX~+/oyTj, U,Zm1N-n[uʸ1!b;rK,_ C'd?9K28-`ώ"{c|Xuqbˣy܌o![гvw&~T#=, ^=[3?>г')MOg7 ߠG{85_H?Fg%$l5=;A~4㥶TOOn|>jeӖ?dB+O.ӳ ;EM|=,·Jl!=#[{ߒ F@zB>䷂w ~zFbuO#g&>bggz]ȏ$sӓAm=\ >Г!?__Bk QN[ qѿr|8p.*1Wx-O#~s /iyWC߶]i):!.E==k"?/B5տ"fzpm<=w5S_"e|Eob\zRnjx I-t"uHY3-|_bn:A|EV ?x='-§t)N"'m"Of+,[{b/yE [mޱ`|5%Nl#2Otx|kw,BN~Ǡqz"?)+xթAZoxY?,g ߈~X:0yYCJ`N~-^g?3Ct"g/* :2XYڇ-z3yE= “ ,cо0~/[{#:]`ѳ߶w뉱ހ~fz; qηo G㶝V7K{/a-cC~G/A>/V[ϡ(TܗV-y|W;kq,Q=[x/@*#(:_=5clѳ@Ou`,acv8R;("8~_b^@_b:TP\c5fV[fyIq~z>GO$Dz۲JHyydG(ҿ_ '}̰hU6' ;ťFQ?se^XЎ}=~v㖢n:X7e۾qPwJ5ᢸ"%sgTW+J*y6h\Dw" ;4nEOGh6d,Q<2D +?s\ ?W)7 r2g;F]E| ܩ> 9A:c &@WYRe?%?2.麰la^ I/&/Eg ─9 1h``t,@^ϧa0h(t ԮΑZd.# R3JhU2cMX jb C"KE) 'YȚd.W5X- Xb${%c/X@"EG8.-M8 pqخ"֗ċt;,W fOyWA#5A SOb+8g,;ǘ \hfE/)6orcV^•NT7s#eƈTTR6o532? K蜬nn'e+ *gqL5!nƙ:F^J7(s+㕯$l^+ *r]kp iތU^N%NOsHyW`8;b[Gme62ӼdvWpZu*KcN/zhGO J|VeEdW}Bf]tPT[>WzVH2ov8"`q:"ioÈ,EʊK\0zJɎhڱvZE**ˊJo:c掩%q\2GB_M)&4-Hh*^Pѐ4hmQZ/U z.Ͷ(n_Zd ,{ Z _w-Mb0?Yh lwZ(~l`>ܨ3.GE~?#)OQ|&m?QoQ\'ůR\~iS|pc?=#L񩊿,U}N?KP`=w6 NsMEM{zDrpSI{6-={N/TiuOU\o~Cb]ɱ%BɟQ48+~ߣ+xf>R|Q|2OVkuy5;2k%8"#r8|\;|"Mw+X[俲?`?,<%%kT|E&ŊU ~$+Jt%o@J9'~lI*+T:?yp5NOg⒞-ĥF\Q*_u_z%(y?5qqstzfGbUOx|/n/O)~ߦz\P\kK?owVŧ+>_f_ަoP+>N',yKiwR|⃴~oO!_V=/R\g:9JGNFKz^U-zZE*O(-_(zQ,T\'m3~_^BqΧ|Wqί,zGኛG(1§(M?ǫώW=;n]ҳ]T[gCX=P3C?Z|Jz} =/R|~k%|XXB}='(=kI~W4yJOXyy?qO^)i1JO%4?%=!JޜVuvEO[?_}tlzyǔcѾ](ǻO_7_g+ޤM?up[!~}}JJ7,(l(!y~_ay9jQO:ˬξ|DsU\,zc|=u|.Q:7(d{!^<?^QqҴkaurܥ^'ot7~uur|>Gc''}Px_Tzŷ*>R,˒}Ѓ=Gߐzz^cmE~J[_&vߕo7vz2g3]q]UJη-N.uWoxqKqog+Eآ'_q2u}SqݾE~i~u{s|p:G)_u?y:K{vXyBtyGzx3C=uV\ zBpS\{DQq(=yS-<~bp:/T:fXU:nCIvśoO;%z}~5âDE~ߔ||^~*w>P\?|O~ثsĴ_V+-<'Og7#~zNU/W\ŏUvou=y(=8o+yݾ>W\(~z?N@sVy_u{LqW?y]q/N}|~(!vtq_+(]\ YM_sPz~W,z2t s⺾V\)gE݊z:38?땼o?X4,?MN~\9pzS\oS}{uϬߋ,fzuPqogy@}=c-~n/򺽤*-Cq^*;08ދ-(UE>Kq]郂9(8=gO\Ń])|I:,-6z~z5t_ ߪ7Xqmƒ3|;:(33Ci+ˢ SqY`߶ie> ߱*;XeHpy u?0wgUyu%~}_m穊24XJ>fnSjf,A/_仑pwde*>@?4u‰x/xq<o1}s[⽞d>#.OpOP 1Uw(>Xq|d|M\\}M".VPgf=}g$ULWgNJG3(y\JOz7\R<%)w!~O `=o(yپCҏ|W-IAOjiӕKy5!(07%yO-k=I^_ȒI4rU&NԎ'zzXs[ٯ0Bhyo.֋go kP s-P:`osPGqM$ſQrɊx)=o6U')JOO7t}xS ůSz2[g)Uq=^Vz@WAG*~3FJ~_(>A Jw>U>xc|w)?QH"T+y^S\Oz*=z|JW)G/Vz+~ҳTrw*REJO~[_UkMug(=?7*u*=NoV|[Q٪vşP|[;WIw+>Q1mŽ?>+=2<ÊJUZ*^)MwR]C/Qz+_%SR|ғJ>SMg)WxVN̗$%4oMN$/}b"E>\_zy@25ķcؖL#NK[CqwYX0IDy33 E&`/" 3Y H2'IѹOVG|Ϡ!/詸_ ŵ,ŵ~_I_~ŵRuQqZZruy(nxZZŵ:u=٬xS 8w(Q|٧/!ŵ~*ni_{*E+MIoI_I@=k1L J'#~r@t6S19; N '82tʳ%2o+qMܟo5ʗMl/I|9z,IuߋO|' ߃ G)h |^EwďD&am17`4ķ$^?߂"/GC\CKcM8j|#huDl&~54O y[go';A|Neؿ[O|-&Ի߉vUXo >⛇xO%4|nID4,Hsx`haNj_yx ?Njyhb18y wx xcO!~x'b"as_>Uğ_@cjB"|);^IF58ૉ!^_  ^D ěu [ ;'a"x z້C|^/#~<'~JRyaJb,_.~ğO&jG/"|1 Rˉ?5ǃ*π&^kOFu%~  /B^N3ĿI<?[&E֋K|2>k~,,`J#F|<60<ė !؝== ދ;xw,#M|%pGOy xOO nS׀8?x+Vx>b◂/% rIO[I%x Wq{_M| |6[%~2Fnu/ |37-ēຕoAN'~vLįG1Go\"~qO&lߔMGal߼o}vpo/پ%x oپy}87e7;}3,po~ ^G|?87g8ޱ}3 }Spo&b_7SwgfOpoپm1}3;zپ9훃e&پ9پpo&`7p}gcl߬g~pogf<}/x!l\Ϳ}s587ׂ}OC }s2}s 87/òxo$^&#~87og"po.g}l|l87} s}Hpo}87gfqu{NlOgl훗c)7gl߼훋پy?87W}s587׀}3 Zl }훥l,gf87烳}#pog.poփ}[pogfff287}3پ훭پKپy87gfOpo^lLgpoւ}}sC(W?Spog3l|}پy?}'pogf?,l}?87پ9훃پy~wwpoUl|Bvׂ}پ.87}s87a67W}.po Gپul]l߬?ĿĿĿgf }훗v岿xo'>[=Tl߼ 훋پy?Rˉ~Bq DUēWox?#^K|Fo"^e[| |;wwz;7'nn/{K}nA+bǂ'L8'_l[5iď>NۀNxOi཈w 9ׂE/% +C'<'W'/">|1Rˉ_x5x W|5%k/_K|9:n/XQK<kuķo[ۉ|wOE=້C<|/?!r0O%>-iOD|$PBǂw'~xO{?<LOL<\/I|W'^>5>Jwx xK P?-M7DKj{|1K+ k5~o"Mo& ^ 6#~&go!^ 9v;/IooM| +Z_'Mį&_(C;WFdX׋ſD<G!Ŀx7o,MSĿDJ_-Mį&׉Ŀc|'| s'Ewo !9OG<ćWJ_J~W$ x GWs x>:kH<~mu/&7sBׂo'*wC-ķ#~_~R_/\ _.߽# 8xEěo^A)9ׁ#4xg||)C\.+' k"|5kVD[G\5Rx#%8NqYDx3q٧EqJpg+wXPr':S-"~Og@EA>"~LwC>"JbcgI|<sTE^͏yyQ[?*R2IǶ? ->`<k-u$?,s>[-s';-w?T=y^W-G#cNBOȇH^a[3,#[o7ȏȳJsLȳJ[Xߤ#,WrXH ,'"[DWZCV[ٿCYُ#_,YGagz? yX}yZO=?gy3T܏cnq' zm<p'' <4&b2`=<<!t[fe,ˬAay"yo + IgԐ؏ŲH<7d_7XOɿ =/0aݼc ~\!䯅yN![~_*=[:/1!cR.$]!ȳzyE;#qqca!{ş4!EEO[}zZ`]=$?N}Ŀ{EuV]kb׳!0G)v\"v:4Ǣ7=#Sm~GA.>ܢĖ+fEQ_߬!=f C+k(/_jX?,Ů_8n5WG>C[Y|qyN=qy/ŵ}sɧŽsgFQCUFR:҈{3B={28^_e<֣9=N\s:;aa. ysTşe1 ⲯVz>mh/eN'w8^̓7Q[dqهS3|wx!N?4"gH%F\3:Nq9i}?2> TnPoP>%ѮZy_vwȇHJ-N{Yپ?}A߳ l&!:=o$g{D=B&wd,9$NYEy_ ~n<}ZkhYQy~j1zNO Ok;֯]8}Zgu!qLzYSߊ2@BeȜ #s +qaqqnQEa{q,RZ);[9G)N,.*)px"=+˓X=y%.-ϭ5BJE%y3tN{IU_XPORC#:8ELrՖ](&|i[D<\_볈s/uԀu! %`|oYҟ=΋@ﲤ5G zGczLd/",_Ob9Ŕa~zH~ 7J؀%7.G|,<p)>8_?Ԓp}[|9 /%~r,g]VQB$Wjvۉ8ן/F ]vğLrW[OEÓ %xIYj?{'q?b/[œc9Kk汜_~ZBŏԜ?1 FN_ /߸c?& %=7z[%ҧ{O?1ыZ'6ڛߐZ 7K_EOF@ǭ/?Bt%2? %TL~DKތo?a?/?i@g?w%j/4nLrg%? D~ {kb|/{\M X65i{aG1iդ׏ G$\E5 }g٤i#"́%&JWl+1!cpvM],enQiaqȬ@M8Ɯi~HL(8)sܟmyiҊx'u;I$:`r+E|5==V3F}KƗw\=3?L}Y?gN/՟n _wVy/+3l?gf~=ٵ}My|96ˋ-9]1覴Ƶ_y堏.\};wkkn &<й?V~C{-]Hq)MgOcqnnݞC}TͳW.FWBӋs+*"Hq~$fsELF>@1@8 @@@@lllp p  @-@=@=PX-X=X=00HHH$$Std00PtdD D D $$QtdRtd@-@=@= GNUGNU.hh1U?u/lib/ld-musl-x86_64.so.1L93*"| 0 J /DIf  =P=6 @ |#(@__cxa_finalizefprintf__deregister_frame_info_ITM_registerTMCloneTable_ITM_deregisterTMCloneTable__register_frame_infoseccomp_syscall_resolve_num_archseccomp_arch_resolve_name_finiseccomp_syscall_resolve_name_archseccomp_arch_nativeseccomp_syscall_resolve_name_rewrite_initexitoptindputsgetoptoptargstderratoi__libc_start_mainlibseccomp.so.2libc.musl-x86_64.so.1x????????? ? ? ? ? ???P= @(@p?@=PX5J/%L/@%J/hAUAATE1UHSQZ/HHDm/~'at Att!H=/b/Åu Hc/D9| H}HtPЀ v<-u*H1/߉.HHuH=a.&Et..H=H1z.Z1[]A\A]H1HH5C,H7HWLQE1H H=f.DH=.H.H9tHV.Ht H=.H5z.H)HH?HHHtH .HtfD=y.uGUH=-Ht H=".-gH=-t H=-9.]@ff.H=-t&UH5..H=oH-]8+PXH5 PH1H=*7-\-PXusage: %s [-h] [-a ] [-t] | UNKNOWNa:ht%d ; <dzRx $ FJ w?;*3$"D'AAH4`dBED D(A0(C ABB [k  |@=H=o  X?@ x o$X #%X=&@GCC: (Alpine 15.2.0) 15.2.0.shstrtab.note.gnu.property.note.gnu.build-id.interp.gnu.hash.dynsym.dynstr.rela.dyn.rela.plt.relr.dyn.init.text.fini.rodata.eh_frame_hdr.eh_frame.init_array.fini_array.data.rel.ro.dynamic.got.data.bss.comment 0HH$1ll9o<C (KSxx]B@ @ gX X qb w00L}||2 BD D $h h @=@-H=H-P=P-X=X-X?X/@0 @0p 00$0# Echo the interface flags, reason and message options if [ "$reason" = "TEST" ]; then # General variables at the top set | while read line; do case "$line" in interface=*|pid=*|reason=*|protocol=*|profile=*|skip_hooks=*) echo "$line";; esac done # Interface flags set | while read line; do case "$line" in ifcarrier=*|ifflags=*|ifmetric=*|ifmtu=*|ifwireless=*|ifssid=*) echo "$line";; esac done # Old lease set | while read line; do case "$line" in old_*) echo "$line";; esac done # New lease set | while read line; do case "$line" in new_*) echo "$line";; esac done # Router Advertisements set | while read line; do case "$line" in nd[0-9]*_*) echo "$line";; esac done exit 0 fi # Generate /etc/resolv.conf # Support resolvconf(8) if available # We can merge other dhcpcd resolv.conf files into one like resolvconf, # but resolvconf is preferred as other applications like VPN clients # can readily hook into it. # Also, resolvconf can configure local nameservers such as bind # or dnsmasq. This is important as the libc resolver isn't that powerful. resolv_conf_dir="$state_dir/resolv.conf" nocarrier_roaming_dir="$state_dir/roaming" NL=" " : ${resolvconf:=resolvconf} if command -v "$resolvconf" >/dev/null 2>&1; then have_resolvconf=true else have_resolvconf=false fi build_resolv_conf() { cf="$state_dir/resolv.conf.$ifname" # Build a list of interfaces interfaces=$(list_interfaces "$resolv_conf_dir") # Build the resolv.conf header= if [ -n "$interfaces" ]; then # Build the header for x in ${interfaces}; do header="$header${header:+, }$x" done # Build the search list domain=$(cd "$resolv_conf_dir"; \ key_get_value "domain " ${interfaces}) search=$(cd "$resolv_conf_dir"; \ key_get_value "search " ${interfaces}) set -- ${domain} domain="$1" [ -n "$2" ] && search="$search $*" [ -n "$search" ] && search="$(uniqify $search)" [ "$domain" = "$search" ] && search= [ -n "$domain" ] && domain="domain $domain$NL" [ -n "$search" ] && search="search $search$NL" # Build the nameserver list srvs=$(cd "$resolv_conf_dir"; \ key_get_value "nameserver " ${interfaces}) for x in $(uniqify $srvs); do servers="${servers}nameserver $x$NL" done fi header="$signature_base${header:+ $from }$header" # Assemble resolv.conf using our head and tail files [ -f "$cf" ] && rm -f "$cf" [ -d "$resolv_conf_dir" ] || mkdir -p "$resolv_conf_dir" echo "$header" > "$cf" if [ -f /etc/resolv.conf.head ]; then cat /etc/resolv.conf.head >> "$cf" else echo "# /etc/resolv.conf.head can replace this line" >> "$cf" fi printf %s "$domain$search$servers" >> "$cf" if [ -f /etc/resolv.conf.tail ]; then cat /etc/resolv.conf.tail >> "$cf" else echo "# /etc/resolv.conf.tail can replace this line" >> "$cf" fi if change_file /etc/resolv.conf "$cf"; then chmod 644 /etc/resolv.conf fi rm -f "$cf" } # Extract any ND DNS options from the RA # Obey the lifetimes eval_nd_dns() { eval rdnsstime=\$nd${i}_rdnss${j}_lifetime if [ -n "$rdnsstime" ]; then ltime=$(($rdnsstime - $offset)) if [ "$ltime" -gt 0 ]; then eval rdnss=\$nd${i}_rdnss${j}_servers if [ -n "$rdnss" ]; then new_rdnss="$new_rdnss${new_rdnss:+ }$rdnss" fi fi fi eval dnssltime=\$nd${i}_dnssl${j}_lifetime if [ -n "$dnssltime" ]; then ltime=$(($dnssltime - $offset)) if [ "$ltime" -gt 0 ]; then eval dnssl=\$nd${i}_dnssl${j}_search if [ -n "$dnssl" ]; then new_dnssl="$new_dnssl${new_dnssl:+ }$dnssl" fi fi fi # Break when we don't have either [ -z "$rdnsstime" ] && [ -z "$dnssltime" ] && return 1 j=$(($j + 1)) return 0 } add_resolv_conf() { conf="$signature$NL" warn=true # Loop to extract the ND DNS options using our indexed shell values i=1 j=1 while true; do eval acquired=\$nd${i}_acquired [ -z "$acquired" ] && break eval now=\$nd${i}_now [ -z "$now" ] && break offset=$(($now - $acquired)) while true; do eval_nd_dns || break done i=$(($i + 1)) j=1 done [ -n "$new_rdnss" ] && \ new_domain_name_servers="$new_domain_name_servers${new_domain_name_servers:+ }$new_rdnss" [ -n "$new_dnssl" ] && \ new_domain_search="$new_domain_search${new_domain_search:+ }$new_dnssl" # Derive a new domain from our various hostname options if [ -z "$new_domain_name" ]; then if [ "$new_dhcp6_fqdn" != "${new_dhcp6_fqdn#*.}" ]; then new_domain_name="${new_dhcp6_fqdn#*.}" elif [ "$new_fqdn" != "${new_fqdn#*.}" ]; then new_domain_name="${new_fqdn#*.}" elif [ "$new_host_name" != "${new_host_name#*.}" ]; then new_domain_name="${new_host_name#*.}" fi fi # If we don't have any configuration, remove it if [ -z "$new_domain_name_servers" ] && [ -z "$new_domain_name" ] && [ -z "$new_domain_search" ]; then remove_resolv_conf return $? fi if [ -n "$new_domain_name" ]; then set -- $new_domain_name if valid_domainname "$1"; then conf="${conf}domain $1$NL" else syslog err "Invalid domain name: $1" fi # If there is no search this, make this one if [ -z "$new_domain_search" ]; then new_domain_search="$new_domain_name" [ "$new_domain_name" = "$1" ] && warn=true fi fi if [ -n "$new_domain_search" ]; then new_domain_search=$(uniqify $new_domain_search) if valid_domainname_list $new_domain_search; then conf="${conf}search $new_domain_search$NL" elif ! $warn; then syslog err "Invalid domain name in list:" \ "$new_domain_search" fi fi new_domain_name_servers=$(uniqify $new_domain_name_servers) for x in ${new_domain_name_servers}; do conf="${conf}nameserver $x$NL" done if $have_resolvconf; then [ -n "$ifmetric" ] && export IF_METRIC="$ifmetric" printf %s "$conf" | "$resolvconf" -a "$ifname" return $? fi if [ -e "$resolv_conf_dir/$ifname" ]; then rm -f "$resolv_conf_dir/$ifname" fi [ -d "$resolv_conf_dir" ] || mkdir -p "$resolv_conf_dir" printf %s "$conf" > "$resolv_conf_dir/$ifname" build_resolv_conf } remove_resolv_conf() { if $have_resolvconf; then "$resolvconf" -d "$ifname" -f else if [ -e "$resolv_conf_dir/$ifname" ]; then rm -f "$resolv_conf_dir/$ifname" fi build_resolv_conf fi } # For ease of use, map DHCP6 names onto our DHCP4 names case "$reason" in BOUND6|RENEW6|REBIND6|REBOOT6|INFORM6) new_domain_name_servers="$new_dhcp6_name_servers" new_domain_search="$new_dhcp6_domain_search" ;; esac if $if_configured; then if $have_resolvconf && [ "$reason" = NOCARRIER_ROAMING ]; then # avoid calling resolvconf -c on CARRIER unless we roam mkdir -p "$nocarrier_roaming_dir" echo " " >"$nocarrier_roaming_dir/$interface" "$resolvconf" -C "$interface.*" elif $have_resolvconf && [ "$reason" = CARRIER ]; then # Not all resolvconf implementations support -c if [ -e "$nocarrier_roaming_dir/$interface" ]; then rm -f "$nocarrier_roaming_dir/$interface" "$resolvconf" -c "$interface.*" fi elif $if_up || [ "$reason" = ROUTERADVERT ]; then add_resolv_conf elif $if_down; then remove_resolv_conf fi fi # Set the hostname from DHCP data if required # A hostname can either be a short hostname or a FQDN. # hostname_fqdn=true # hostname_fqdn=false # hostname_fqdn=server # A value of server means just what the server says, don't manipulate it. # This could lead to an inconsistent hostname on a DHCPv4 and DHCPv6 network # where the DHCPv4 hostname is short and the DHCPv6 has an FQDN. # DHCPv6 has no hostname option. # RFC4702 section 3.1 says FQDN should be prefered over hostname. # # As such, the default is hostname_fqdn=true so that a consistent hostname # is always assigned. : ${hostname_fqdn:=true} # If we used to set the hostname, but relinquish control of it, we should # reset to the default value. : ${hostname_default=(none)} # Some systems don't have hostname(1) _hostname() { if [ -z "${1+x}" ]; then if [ -r /proc/sys/kernel/hostname ]; then read name /dev/null 2>/dev/null; then hostname elif sysctl kern.hostname >/dev/null 2>&1; then sysctl -n kern.hostname elif sysctl kernel.hostname >/dev/null 2>&1; then sysctl -n kernel.hostname else return 1 fi return $? fi if [ -w /proc/sys/kernel/hostname ]; then echo "$1" >/proc/sys/kernel/hostname elif [ -n "$1" ] && command -v hostname >/dev/null 2>&1; then hostname "$1" elif sysctl kern.hostname >/dev/null 2>&1; then sysctl -w "kern.hostname=$1" >/dev/null elif sysctl kernel.hostname >/dev/null 2>&1; then sysctl -w "kernel.hostname=$1" >/dev/null else # May fail to set a blank hostname hostname "$1" fi } is_default_hostname() { case "$1" in ""|"$hostname_default"|localhost|localhost.localdomain) return 0;; esac return 1 } need_hostname() { # Always load the hostname variable for future use hostname="$(_hostname)" is_default_hostname "$hostname" && return 0 case "$force_hostname" in [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|1) return 0;; esac if [ -n "$old_fqdn" ]; then if ${hfqdn} || ! ${hshort}; then [ "$hostname" = "$old_fqdn" ] else [ "$hostname" = "${old_fqdn%%.*}" ] fi elif [ -n "$old_host_name" ]; then if ${hfqdn}; then if [ -n "$old_domain_name" ] && [ "$old_host_name" = "${old_host_name#*.}" ] then [ "$hostname" = \ "$old_host_name.$old_domain_name" ] else [ "$hostname" = "$old_host_name" ] fi elif ${hshort}; then [ "$hostname" = "${old_host_name%%.*}" ] else [ "$hostname" = "$old_host_name" ] fi else # No old hostname false fi } try_hostname() { [ "$hostname" = "$1" ] && return 0 if valid_domainname "$1"; then syslog info "Setting hostname: $1" _hostname "$1" else syslog err "Invalid hostname: $1" fi } set_hostname() { hfqdn=false hshort=false case "$hostname_fqdn" in [Yy][Ee][Ss]|[Tt][Rr][Uu][Ee]|1) hfqdn=true;; ""|[Ss][Ee][Rr][Vv][Ee][Rr]) ;; *) hshort=true;; esac need_hostname || return 0 if [ -n "$new_fqdn" ]; then if ${hfqdn} || ! ${hshort}; then try_hostname "$new_fqdn" else try_hostname "${new_fqdn%%.*}" fi elif [ -n "$new_host_name" ]; then if ${hfqdn}; then if [ -n "$new_domain_name" ] && [ "$new_host_name" = "${new_host_name#*.}" ] then try_hostname "$new_host_name.$new_domain_name" else try_hostname "$new_host_name" fi elif ${hshort}; then try_hostname "${new_host_name%%.*}" else try_hostname "$new_host_name" fi elif ! is_default_hostname "$hostname"; then try_hostname "$hostname_default" fi } # For ease of use, map DHCP6 names onto our DHCP4 names case "$reason" in BOUND6|RENEW6|REBIND6|REBOOT6|INFORM6) new_fqdn="$new_dhcp6_fqdn" old_fqdn="$old_dhcp6_fqdn" ;; esac if $if_configured && $if_up && [ "$reason" != ROUTERADVERT ]; then set_hostname fi # Sample dhcpcd hook script for NTP # It will configure either one of NTP, OpenNTP or Chrony (in that order) # and will default to NTP if no default config is found. # Like our resolv.conf hook script, we store a database of ntp.conf files # and merge into /etc/ntp.conf # You can set the env var NTP_CONF to override the derived default on # systems with >1 NTP client installed. # Here is an example for OpenNTP # dhcpcd -e NTP_CONF=/usr/pkg/etc/ntpd.conf # or by adding this to /etc/dhcpcd.conf # env NTP_CONF=/usr/pkg/etc/ntpd.conf # or by adding this to /etc/dhcpcd.enter-hook # NTP_CONF=/usr/pkg/etc/ntpd.conf # To use Chrony instead, simply change ntpd.conf to chrony.conf in the # above examples. : ${ntp_confs:=ntp.conf ntpd.conf chrony.conf} : ${ntp_conf_dirs=/etc /etc/chrony /usr/pkg/etc /usr/local/etc} ntp_conf_dir="$state_dir/ntp.conf" # If NTP_CONF is not set, work out a good default if [ -z "$NTP_CONF" ]; then for d in ${ntp_conf_dirs}; do for f in ${ntp_confs}; do if [ -e "$d/$f" ]; then NTP_CONF="$d/$f" break 2 fi done done [ -e "$NTP_CONF" ] || NTP_CONF=/etc/ntp.conf fi # Derive service name from configuration if [ -z "$ntp_service" ]; then case "$NTP_CONF" in *chrony.conf) ntp_service=chronyd;; *) ntp_service=ntpd;; esac fi # Debian has a separate file for DHCP config to avoid stamping on # the master. if [ "$ntp_service" = ntpd ] && command -v invoke-rc.d >/dev/null 2>&1; then [ -e /var/lib/ntp ] || mkdir /var/lib/ntp : ${ntp_service:=ntp} : ${NTP_DHCP_CONF:=/var/lib/ntp/ntp.conf.dhcp} fi : ${ntp_restart_cmd:=service_condcommand $ntp_service restart} ntp_conf=${NTP_CONF} NL=" " build_ntp_conf() { cf="$state_dir/ntp.conf.$ifname" # Build a list of interfaces interfaces=$(list_interfaces "$ntp_conf_dir") header= servers= if [ -n "$interfaces" ]; then # Build the header for x in ${interfaces}; do header="$header${header:+, }$x" done # Build a server list srvs=$(cd "$ntp_conf_dir"; key_get_value "server " $interfaces) if [ -n "$srvs" ]; then for x in $(uniqify $srvs); do servers="${servers}server $x$NL" done fi fi # Merge our config into ntp.conf [ -e "$cf" ] && rm -f "$cf" [ -d "$ntp_conf_dir" ] || mkdir -p "$ntp_conf_dir" if [ -n "$NTP_DHCP_CONF" ]; then [ -e "$ntp_conf" ] && cp "$ntp_conf" "$cf" ntp_conf="$NTP_DHCP_CONF" elif [ -e "$ntp_conf" ]; then remove_markers "$signature_base" "$signature_base_end" \ "$ntp_conf" > "$cf" fi if [ -n "$servers" ]; then echo "$signature_base${header:+ $from }$header" >> "$cf" printf %s "$servers" >> "$cf" echo "$signature_base_end${header:+ $from }$header" >> "$cf" else [ -e "$ntp_conf" ] && [ -e "$cf" ] || return fi # If we changed anything, restart ntpd if change_file "$ntp_conf" "$cf"; then [ -n "$ntp_restart_cmd" ] && eval $ntp_restart_cmd fi } add_ntp_conf() { cf="$ntp_conf_dir/$ifname" [ -e "$cf" ] && rm "$cf" [ -d "$ntp_conf_dir" ] || mkdir -p "$ntp_conf_dir" if [ -n "$new_ntp_servers" ]; then for x in $(uniqify $new_ntp_servers); do echo "server $x" >> "$cf" done fi build_ntp_conf } remove_ntp_conf() { if [ -e "$ntp_conf_dir/$ifname" ]; then rm "$ntp_conf_dir/$ifname" fi build_ntp_conf } # For ease of use, map DHCP6 names onto our DHCP4 names case "$reason" in BOUND6|RENEW6|REBIND6|REBOOT6|INFORM6) new_ntp_servers="$new_dhcp6_sntp_servers" new_ntp_servers="$new_ntp_servers${new_ntp_servers:+ }$new_dhcp6_ntp_server_addr" new_ntp_servers="$new_ntp_servers${new_ntp_servers:+ }$new_dhcp6_ntp_server_fqdn" ;; esac if $if_configured; then if $if_up; then add_ntp_conf elif $if_down; then remove_ntp_conf fi fi #!/bin/sh # dhcpcd client configuration script # Handy variables and functions for our hooks to use ifname="$interface${protocol+.}$protocol" from=from signature_base="# Generated by dhcpcd" signature="$signature_base $from $ifname" signature_base_end="# End of dhcpcd" signature_end="$signature_base_end $from $ifname" state_dir=/run/dhcpcd/hook-state _detected_init=false : ${if_up:=false} : ${if_down:=false} : ${syslog_debug:=false} # Ensure that all arguments are unique uniqify() { result= for i do case " $result " in *" $i "*);; *) result="$result${result:+ }$i";; esac done echo "$result" } # List interface config files in a directory. # If dhcpcd is running as a single instance then it will have a list of # interfaces in the preferred order. # Otherwise we just use what we have. list_interfaces() { ifaces= for i in $interface_order; do for x in "$1"/$i.*; do [ -f "$x" ] && ifaces="$ifaces${ifaces:+ }${x##*/}" done done for x in "$1"/*; do [ -f "$x" ] && ifaces="$ifaces${ifaces:+ }${x##*/}" done uniqify $ifaces } # Trim function trim() { var="$*" var=${var#"${var%%[![:space:]]*}"} var=${var%"${var##*[![:space:]]}"} if [ -z "$var" ]; then # So it seems our shell doesn't support wctype(3) patterns # Fall back to sed var=$(echo "$*" | sed -e 's/^[[:space:]]*//;s/[[:space:]]*$//') fi printf %s "$var" } # We normally use sed to extract values using a key from a list of files # but sed may not always be available at the time. key_get_value() { key="$1" shift if command -v sed >/dev/null 2>&1; then sed -n "s/^$key//p" $@ else for x do while read line; do case "$line" in "$key"*) echo "${line##$key}";; esac done < "$x" done fi } # We normally use sed to remove markers from a configuration file # but sed may not always be available at the time. remove_markers() { m1="$1" m2="$2" in_marker=0 shift; shift if command -v sed >/dev/null 2>&1; then sed "/^$m1/,/^$m2/d" $@ else for x do while read line; do case "$line" in "$m1"*) in_marker=1;; "$m2"*) in_marker=0;; *) [ $in_marker = 0 ] && echo "$line";; esac done < "$x" done fi } # Compare two files. comp_file() { [ -e "$1" ] && [ -e "$2" ] || return 1 if command -v cmp >/dev/null 2>&1; then cmp -s "$1" "$2" elif command -v diff >/dev/null 2>&1; then diff -q "$1" "$2" >/dev/null else # Hopefully we're only working on small text files ... [ "$(cat "$1")" = "$(cat "$2")" ] fi } # Compare two files. # If different, replace first with second otherwise remove second. change_file() { if [ -e "$1" ]; then if comp_file "$1" "$2"; then rm -f "$2" return 1 fi fi cat "$2" > "$1" rm -f "$2" return 0 } # Compare two files. # If different, copy or link depending on target type copy_file() { if [ -h "$2" ]; then [ "$(readlink "$2")" = "$1" ] && return 1 ln -sf "$1" "$2" else comp_file "$1" "$2" && return 1 cat "$1" >"$2" fi } # Save a config file save_conf() { if [ -f "$1" ]; then rm -f "$1-pre.$interface" cat "$1" > "$1-pre.$interface" fi } # Restore a config file restore_conf() { [ -f "$1-pre.$interface" ] || return 1 cat "$1-pre.$interface" > "$1" rm -f "$1-pre.$interface" } # Write a syslog entry syslog() { lvl="$1" if [ "$lvl" = debug ]; then ${syslog_debug} || return 0 fi [ -n "$lvl" ] && shift [ -n "$*" ] || return 0 case "$lvl" in err|error) echo "$interface: $*" >&2;; *) echo "$interface: $*";; esac if command -v logger >/dev/null 2>&1; then logger -p daemon."$lvl" -t dhcpcd-run-hooks "$interface: $*" fi } # Check for a valid name as per RFC952 and RFC1123 section 2.1 valid_domainname() { name="$1" [ -z "$name" ] || [ ${#name} -gt 255 ] && return 1 while [ -n "$name" ]; do label="${name%%.*}" [ -z "$label" ] || [ ${#label} -gt 63 ] && return 1 case "$label" in -*|_*|*-|*_) return 1;; *[![:alnum:]_-]*) return 1;; "$name") return 0;; esac name="${name#*.}" done return 0 } valid_domainname_list() { for name do valid_domainname "$name" || return $? done return 0 } # With the advent of alternative init systems, it's possible to have # more than one installed. So we need to try to guess what one we're # using unless overridden by configure. detect_init() { _service_exists="" _service_cmd="" _service_status="" [ -n "$_service_cmd" ] && return 0 if $_detected_init; then [ -n "$_service_cmd" ] return $? fi # Detect the running init system. # As systemd and OpenRC can be installed on top of legacy init # systems we try to detect them first. status="" : ${status:=status} if [ -x /bin/systemctl ] && [ -S /run/systemd/private ]; then _service_exists="/bin/systemctl --quiet is-enabled \$1.service" _service_status="/bin/systemctl --quiet is-active \$1.service" _service_cmd="/bin/systemctl \$2 --no-block \$1.service" elif [ -x /usr/bin/systemctl ] && [ -S /run/systemd/private ]; then _service_exists="/usr/bin/systemctl --quiet is-enabled \$1.service" _service_status="/usr/bin/systemctl --quiet is-active \$1.service" _service_cmd="/usr/bin/systemctl \$2 --no-block \$1.service" elif [ -x /sbin/rc-service ] && { [ -s /libexec/rc/init.d/softlevel ] || [ -s /run/openrc/softlevel ]; } then _service_exists="/sbin/rc-service -e \$1" _service_cmd="/sbin/rc-service \$1 -- -D \$2" elif [ -x /usr/sbin/invoke-rc.d ]; then _service_exists="/usr/sbin/invoke-rc.d --query --quiet \$1 start >/dev/null 2>&1 || [ \$? = 104 ]" _service_cmd="/usr/sbin/invoke-rc.d \$1 \$2" elif [ -x /sbin/service ]; then _service_exists="/sbin/service \$1 >/dev/null 2>&1" _service_cmd="/sbin/service \$1 \$2" elif [ -x /usr/sbin/service ]; then _service_exists="/usr/sbin/service \$1 $status >/dev/null 2>&1" _service_cmd="/usr/sbin/service \$1 \$2" elif [ -x /bin/sv ]; then _service_exists="/bin/sv status \$1 >/dev/null 2>&1" _service_cmd="/bin/sv \$2 \$1" elif [ -x /usr/bin/sv ]; then _service_exists="/usr/bin/sv status \$1 >/dev/null 2>&1" _service_cmd="/usr/bin/sv \$2 \$1" elif [ -e /etc/slackware-version ] && [ -d /etc/rc.d ]; then _service_exists="[ -x /etc/rc.d/rc.\$1 ]" _service_cmd="/etc/rc.d/rc.\$1 \$2" _service_status="/etc/rc.d/rc.\$1 status >/dev/null 2>&1" else for x in /etc/init.d/rc.d /etc/rc.d /etc/init.d; do if [ -d $x ]; then _service_exists="[ -x $x/\$1 ]" _service_cmd="$x/\$1 \$2" _service_status="$x/\$1 $status >/dev/null 2>&1" break fi done if [ -e /etc/arch-release ]; then _service_status="[ -e /var/run/daemons/\$1 ]" elif [ "$x" = "/etc/rc.d" ] && [ -e /etc/rc.d/rc.subr ]; then _service_status="$x/\$1 check >/dev/null 2>&1" fi fi _detected_init=true if [ -z "$_service_cmd" ]; then syslog err "could not detect a useable init system" return 1 fi return 0 } # Check a system service exists service_exists() { if [ -z "$_service_exists" ]; then detect_init || return 1 fi eval $_service_exists } # Send a command to a system service service_cmd() { if [ -z "$_service_cmd" ]; then detect_init || return 1 fi eval $_service_cmd } # Send a command to a system service if it is running service_status() { if [ -z "$_service_cmd" ]; then detect_init || return 1 fi if [ -n "$_service_status" ]; then eval $_service_status else service_command $1 status >/dev/null 2>&1 fi } # Handy macros for our hooks service_command() { service_exists $1 && service_cmd $1 $2 } service_condcommand() { service_exists $1 && service_status $1 && service_cmd $1 $2 } # We source each script into this one so that scripts run earlier can # remove variables from the environment so later scripts don't see them. # Thus, the user can create their dhcpcd.enter/exit-hook script to configure # /etc/resolv.conf how they want and stop the system scripts ever updating it. for hook in \ /etc/dhcpcd.enter-hook \ /usr/lib/dhcpcd/dhcpcd-hooks/* \ /etc/dhcpcd.exit-hook do case "$hook" in */*~) continue;; esac for skip in $skip_hooks; do case "$hook" in */"$skip") continue 2;; */[0-9][0-9]"-$skip") continue 2;; */[0-9][0-9]"-$skip.sh") continue 2;; esac done if [ -f "$hook" ]; then . "$hook" fi done # Start, reconfigure and stop wpa_supplicant per wireless interface. # # This is only needed when using wpa_supplicant-2.5 or older, OR # when wpa_supplicant has not been built with CONFIG_MATCH_IFACE, OR # wpa_supplicant was launched without the -M flag to activate # interface matching. if [ -z "$wpa_supplicant_conf" ]; then for x in \ /etc/wpa_supplicant/wpa_supplicant-"$interface".conf \ /etc/wpa_supplicant/wpa_supplicant.conf \ /etc/wpa_supplicant-"$interface".conf \ /etc/wpa_supplicant.conf \ ; do if [ -s "$x" ]; then wpa_supplicant_conf="$x" break fi done fi : ${wpa_supplicant_conf:=/etc/wpa_supplicant.conf} wpa_supplicant_ctrldir() { dir=$(key_get_value "[[:space:]]*ctrl_interface=" \ "$wpa_supplicant_conf") dir=$(trim "$dir") case "$dir" in DIR=*) dir=${dir##DIR=} dir=${dir%%[[:space:]]GROUP=*} dir=$(trim "$dir") ;; esac printf %s "$dir" } wpa_supplicant_start() { # If the carrier is up, don't bother checking anything [ "$ifcarrier" = "up" ] && return 0 # Pre flight checks if [ ! -s "$wpa_supplicant_conf" ]; then syslog warn \ "$wpa_supplicant_conf does not exist" syslog warn "not interacting with wpa_supplicant(8)" return 1 fi dir=$(wpa_supplicant_ctrldir) if [ -z "$dir" ]; then syslog warn \ "ctrl_interface not defined in $wpa_supplicant_conf" syslog warn "not interacting with wpa_supplicant(8)" return 1 fi wpa_cli -p "$dir" -i "$interface" status >/dev/null 2>&1 && return 0 syslog info "starting wpa_supplicant" driver=${wpa_supplicant_driver:+-D}$wpa_supplicant_driver err=$(wpa_supplicant -B -c"$wpa_supplicant_conf" -i"$interface" \ "$driver" 2>&1) errn=$? if [ $errn != 0 ]; then syslog err "failed to start wpa_supplicant" syslog err "$err" fi return $errn } wpa_supplicant_reconfigure() { dir=$(wpa_supplicant_ctrldir) [ -z "$dir" ] && return 1 if ! wpa_cli -p "$dir" -i "$interface" status >/dev/null 2>&1; then wpa_supplicant_start return $? fi syslog info "reconfiguring wpa_supplicant" err=$(wpa_cli -p "$dir" -i "$interface" reconfigure 2>&1) errn=$? if [ $errn != 0 ]; then syslog err "failed to reconfigure wpa_supplicant" syslog err "$err" fi return $errn } wpa_supplicant_stop() { dir=$(wpa_supplicant_ctrldir) [ -z "$dir" ] && return 1 wpa_cli -p "$dir" -i "$interface" status >/dev/null 2>&1 || return 0 syslog info "stopping wpa_supplicant" err=$(wpa_cli -i"$interface" terminate 2>&1) errn=$? if [ $errn != 0 ]; then syslog err "failed to stop wpa_supplicant" syslog err "$err" fi return $errn } if [ "$ifwireless" = "1" ] && \ command -v wpa_supplicant >/dev/null 2>&1 && \ command -v wpa_cli >/dev/null 2>&1 then case "$reason" in PREINIT) wpa_supplicant_start;; RECONFIGURE) wpa_supplicant_reconfigure;; DEPARTED|STOPPED) wpa_supplicant_stop;; esac fi # Configure timezone : ${localtime:=/etc/localtime} set_zoneinfo() { [ -z "$new_tzdb_timezone" ] && return 0 zoneinfo_dir= for d in \ /usr/share/zoneinfo \ /usr/lib/zoneinfo \ /var/share/zoneinfo \ /var/zoneinfo \ ; do if [ -d "$d" ]; then zoneinfo_dir="$d" break fi done if [ -z "$zoneinfo_dir" ]; then syslog warning "timezone directory not found" return 1 fi zone_file="$zoneinfo_dir/$new_tzdb_timezone" if [ ! -e "$zone_file" ]; then syslog warning "no timezone definition for $new_tzdb_timezone" return 1 fi if copy_file "$zone_file" "$localtime"; then syslog info "timezone changed to $new_tzdb_timezone" fi } # For ease of use, map DHCP6 names onto our DHCP4 names case "$reason" in BOUND6|RENEW6|REBIND6|REBOOT6|INFORM6) new_tzdb_timezone="$new_dhcp6_tzdb_timezone" ;; esac if $if_configured && $if_up; then set_zoneinfo fi # Lookup the hostname in DNS if not set lookup_hostname() { [ -z "$new_ip_address" ] && return 1 # Silly ISC programs love to send error text to stdout if command -v dig >/dev/null 2>&1; then h=$(dig +short -x $new_ip_address) if [ $? = 0 ]; then echo "$h" | sed 's/\.$//' return 0 fi elif command -v host >/dev/null 2>&1; then h=$(host $new_ip_address) if [ $? = 0 ]; then echo "$h" \ | sed 's/.* domain name pointer \(.*\)./\1/' return 0 fi elif command -v getent >/dev/null 2>&1; then h=$(getent hosts $new_ip_address) if [ $? = 0 ]; then echo "$h" | sed 's/[^ ]* *\([^ ]*\).*/\1/' return 0 fi fi return 1 } set_hostname() { if [ -z "${new_host_name}${new_fqdn_name}" ]; then export new_host_name="$(lookup_hostname)" fi } if $if_up; then set_hostname fi # Sample dhcpcd hook for ypbind # This script is only suitable for the Linux version. ypbind_pid() { [ -s /var/run/ypbind.pid ] && cat /var/run/ypbind.pid } make_yp_conf() { [ -z "${new_nis_domain}${new_nis_servers}" ] && return 0 cf=/etc/yp.conf."$ifname" rm -f "$cf" echo "$signature" > "$cf" prefix= if [ -n "$new_nis_domain" ]; then if ! valid_domainname "$new_nis_domain"; then syslog err "Invalid NIS domain name: $new_nis_domain" rm -f "$cf" return 1 fi domainname "$new_nis_domain" if [ -n "$new_nis_servers" ]; then prefix="domain $new_nis_domain server " else echo "domain $new_nis_domain broadcast" >> "$cf" fi else prefix="ypserver " fi for x in $new_nis_servers; do echo "$prefix$x" >> "$cf" done save_conf /etc/yp.conf cat "$cf" > /etc/yp.conf rm -f "$cf" pid="$(ypbind_pid)" if [ -n "$pid" ]; then kill -HUP "$pid" fi } restore_yp_conf() { [ -n "$old_nis_domain" ] && domainname "" restore_conf /etc/yp.conf || return 0 pid="$(ypbind_pid)" if [ -n "$pid" ]; then kill -HUP "$pid" fi } if $if_configured; then if $if_up; then make_yp_conf elif $if_down; then restore_yp_conf fi fi #!/sbin/openrc-run description="DHCP Client Daemon" command="/sbin/dhcpcd" command_args="-q -B ${command_args:-}" command_background="true" pidfile="/run/dhcpcd/pid" depend() { provide net need localmount use logger network after bootmisc modules before dns } start_pre() { checkpath -d /run/dhcpcd } # See doas.conf(5) and doas.d(5) for configuration details. # Configuration here may be overridden by /etc/doas.d/*.conf if files exist. # Uncomment to allow group "wheel" to become root. # permit persist :wheel # e2scrub configuration file # Uncomment to enable automatic periodic runs of e2scrub_all # (either via cron or via a systemd timer) # periodic_e2scrub=1 # e-mail destination used by e2scrub_fail when problems are found with # the file system. # recipient=root # e-mail sender used by e2scrub_fail when problems are found with # the file system. # sender=e2scrub@host.domain.name # Snapshots will be created to run fsck; the snapshot will be of this size. # snap_size_mb=256 # Set this to 1 to enable fstrim for everyone. # fstrim=0 # Arguments passed into e2fsck. # e2fsck_opts="-vtt" # Set this to 1 to have e2scrub_all scrub all LVs, not just the mounted ones. # scrub_all=0 [defaults] base_features = sparse_super,large_file,filetype,resize_inode,dir_index,ext_attr default_mntopts = acl,user_xattr enable_periodic_fsck = 0 blocksize = 4096 inode_size = 256 inode_ratio = 16384 [fs_types] ext3 = { features = has_journal } ext4 = { features = has_journal,extent,huge_file,flex_bg,metadata_csum,metadata_csum_seed,64bit,dir_nlink,extra_isize,orphan_file } small = { blocksize = 1024 inode_ratio = 4096 } floppy = { blocksize = 1024 inode_ratio = 8192 } big = { inode_ratio = 32768 } huge = { inode_ratio = 65536 } news = { inode_ratio = 4096 } largefile = { inode_ratio = 1048576 blocksize = -1 } largefile4 = { inode_ratio = 4194304 blocksize = -1 } hurd = { blocksize = 4096 inode_size = 128 warn_y2038_dates = 0 } #!/bin/sh # Copyright 2007-2013 Gentoo Foundation # Copyright 2007-2013 Mike Frysinger # Copyright 2014-2015 Natanael Copa # Distributed under the terms of the GNU General Public License v2 argv0=${0##*/} version=1.27 : "${ROOT:=/}" [ "${ROOT}" = "${ROOT%/}" ] && ROOT="${ROOT}/" [ "${ROOT}" = "${ROOT#/}" ] && ROOT="${PWD}/${ROOT}" version() { exec echo "lddtree-${version}" } error() { echo "${argv0}: $*" 1>&2 ret=1 return 1 } # functions for scanelf backend elf_rpath_scanelf() { # shellcheck disable=SC2317 scanelf -qF '#F%r' "$@" } elf_interp_scanelf() { # shellcheck disable=SC2317 scanelf -qF '#F%i' "$@" } elf_needed_scanelf() { # shellcheck disable=SC2317 scanelf -qF '#F%n' "$@" } elf_specs_scanelf() { # %a = machine (EM) type # %M = EI class # %D = endian # %I = osabi # With glibc, the NONE, SYSV, GNU, and LINUX OSABI's are compatible. # LINUX and GNU are the same thing, as are NONE and SYSV, so normalize # GNU & LINUX to NONE. #442024 #464380 # shellcheck disable=SC2317 scanelf -BF '#F%a %M %D %I' "$1" | \ sed -E 's: (LINUX|GNU)$: NONE:' } # functions for binutils backend elf_rpath_binutils() { # shellcheck disable=SC2317 objdump -x "$@" | awk '$1 == "RUNPATH" { if($2!="") {runpath=$2;} } $1 == "RPATH" { if($2!="") {rpath=$2;} } END { if(runpath!="") {print runpath;} else {print rpath;} }' } elf_interp_binutils() { # readelf -p .interp ouputs: # # String dump of section '.interp': # [ 0] /lib/ld-musl-x86_64.so.1 # # shellcheck disable=SC2317 readelf -p .interp "$1" | sed -E -n '/\[\s*[0-9]\]/s/^\s*\[.*\]\s*(.*)/\1/p' } elf_needed_binutils() { # shellcheck disable=SC2317 objdump -x "$@" | awk '$1 == "NEEDED" { line=line sep $2 ; sep="," } END { print line }' } elf_specs_binutils() { # get Class, Data, Machine and OS/ABI. # the OS/ABI 'GNU', 'System V' and 'Linux' are compatible so normalize # shellcheck disable=SC2317 readelf -h "$1" \ | awk -F: '$1 ~ /Class|Data|Machine|OS.ABI/ {gsub(/^ +/, "", $2); print $2}' \ | sed -E -e 's/UNIX - (System V|Linux|GNU)/UNIX/' \ | tr '\n' ' ' } # elf wrapper functions elf_rpath() { elf_rpath_$BACKEND "$@"; } elf_interp() { elf_interp_$BACKEND "$@"; } elf_needed() { elf_needed_$BACKEND "$@"; } elf_specs() { elf_specs_$BACKEND "$1"; } unset lib_paths_fallback for p in "${ROOT}"lib* "${ROOT}"usr/lib* "${ROOT}"usr/local/lib*; do lib_paths_fallback="${lib_paths_fallback}${lib_paths_fallback:+:}${p}" done c_ldso_paths_loaded='false' find_elf() { _find_elf='' local elf="$1" needed_by="$2" interp= if [ "${elf}" != "${elf##*/}" ] && [ -e "${elf}" ] ; then _find_elf=${elf} return 0 else check_paths() { local elf="$1" local pathstr="$2" IFS=: # shellcheck disable=SC2086 set -- $pathstr unset IFS local path pe for path ; do : "${path:=${PWD}}" if [ "${path#"${ROOT}"}" = "${path}" ]; then path="${ROOT}${path#/}" fi pe="${path%/}/${elf#/}" if [ -e "${pe}" ] ; then if [ "$(elf_specs "${pe}")" = "${elf_specs}" ] ; then _find_elf=${pe} return 0 fi fi done return 1 } if [ "${c_last_needed_by}" != "${needed_by}" ] ; then c_last_needed_by="${needed_by}" c_last_needed_by_rpaths=$(elf_rpath "${needed_by}" | \ sed -E -e 's|:| |g' -e "s:[$](ORIGIN|\{ORIGIN\}):${needed_by%/*}:") fi if [ -n "${c_last_needed_by_rpaths}" ]; then check_paths "${elf}" "${c_last_needed_by_rpaths}" && return 0 fi if [ -n "${LD_LIBRARY_PATH}" ] ; then check_paths "${elf}" "${LD_LIBRARY_PATH}" fi if ! ${c_ldso_paths_loaded} ; then c_ldso_paths_loaded='true' c_ldso_paths= read_ldso_conf() { local line p for p ; do # if the glob didnt match anything #360041, # or the files arent readable, skip it [ -r "${p}" ] || continue while read -r line ; do case ${line} in "#"*) ;; "include "*) read_ldso_conf "${line#* }" ;; *) c_ldso_paths="$c_ldso_paths:${ROOT}${line#/}";; esac done <"${p}" done } local _oldpwd="$PWD" # the 'include' command is relative if cd "$ROOT"etc 2>/dev/null; then interp=$(elf_interp "${needed_by}") local ldso_conf="${ROOT}"etc/ld.so.conf case "$interp" in */ld-musl-*) ldso_conf="${interp%.so*}" ldso_conf="${ROOT}"etc/${ldso_conf##*/}.path ;; esac if [ -r "$ldso_conf" ]; then read_ldso_conf "$ldso_conf" fi cd "$_oldpwd" || return fi fi if [ -n "${c_ldso_paths}" ] ; then check_paths "${elf}" "${c_ldso_paths}" && return 0 fi check_paths "${elf}" "${lib_paths_ldso:-${lib_paths_fallback}}" && return 0 fi return 1 } list_existing_file() { if [ -e "$1" ]; then echo "$1" else echo "$1: Not found." >&2 fi } # echo all intermediate symlinks and return the resolved path in # global variable _resolv_links resolv_links() { _resolv_links="$1" _list_files="$2" local oldpwd="$PWD" [ "$_list_files" = yes ] && list_existing_file "${_resolv_links}" cd "${_resolv_links%/*}" || return while [ -L "$_resolv_links" ]; do _resolv_links=$(readlink "$_resolv_links") case "$_resolv_links" in /*) _resolv_links="${ROOT}${_resolv_links#/}" cd "${_resolv_links%/*}" || break ;; */*) cd "${_resolv_links%/*}" || break ;; esac _resolv_links=$(pwd -P)/${_resolv_links##*/} [ "$_list_files" = yes ] && list_existing_file "${_resolv_links}" done cd "$oldpwd" || return } show_elf() { local elf="$1" indent="$2" parent_elfs="$3" local rlib lib libs local resolved find_elf "${elf}" resolved=${_find_elf} elf=${elf##*/} ${LIST} || printf "%${indent}s%s => " "" "${elf}" case ",${parent_elfs}," in *,${elf},*) ${LIST} || printf "!!! circular loop !!!\n" return ;; esac parent_elfs="${parent_elfs},${elf}" if ${LIST} ; then resolv_links "${resolved:-$1}" yes else resolv_links "${resolved:-$1}" no printf "%s" "${resolved:-not found}" fi resolved=${_resolv_links} if [ "${indent:-0}" -eq 0 ] ; then local elf_specs interp full_interp elf_specs=$(elf_specs "${resolved}") interp=$(elf_interp "${resolved}") # ignore interpreters that do not have absolute path [ "${interp#/}" = "${interp}" ] && interp= [ -n "${interp}" ] && interp="${ROOT}${interp#/}" if ${LIST} ; then [ -n "${interp}" ] && resolv_links "${interp}" yes else printf "%s" " (interpreter => ${interp:-none})" fi if [ -r "${interp}" ] ; then # Extract the default lib paths out of the ldso. lib_paths_ldso=$( strings "${interp}" | \ sed -nr -e "/^\/.*lib/{s|^/?|${ROOT}|;s|/$||;s|/?:/?|:${ROOT}|g;p}" | \ tr '\n' ':' ) fi full_interp=${interp} interp=${interp##*/} # If we are in non-list mode, then we want to show the "duplicate" interp # lines -- first the header (interp=>xxx), and then the DT_NEEDED line to # show that the ELF is directly linked against the interp. # If we're in list mode though, we only want to show the interp once. ${LIST} && allhits="${allhits},${interp}" fi ${LIST} || printf "\n" [ -z "${resolved}" ] && return libs=$(elf_needed "${resolved}") local my_allhits if ! ${SHOW_ALL} ; then my_allhits="${allhits}" allhits="${allhits},${libs}" fi oifs="$IFS" IFS=, # shellcheck disable=SC2086 set -- ${libs} IFS="$oifs" for lib; do lib=${lib##*/} # No need for leading comma w/my_allhits as we guarantee it always # starts with one due to the way we append the value above. case "${my_allhits}," in *,${lib},*) continue;; esac # If the interp is being linked against directly, re-use the existing # full path rather than perform a search for it. When systems symlink # the interp to a diff location, we might locate a different path, and # displaying both doesn't make sense as it doesn't match the runtime -- # the ldso won't load another copy of ldso into memory from the search # path, it'll re-use the existing copy that was loaded from the full # hardcoded path. if [ "${lib}" = "${interp}" ]; then rlib=${full_interp} else find_elf "${lib}" "${resolved}" rlib=${_find_elf} fi show_elf "${rlib:-${lib}}" $(( ${indent:-0} + 4)) "${parent_elfs}" done } usage() { cat <<-EOF Display ELF dependencies as a tree Usage: ${argv0} [options] ELFFILE... Options: -a, --all Show all duplicated dependencies -h, --help Show this help output -l, --flat Display output in a flat format --no-auto-root Do not automatically prefix input ELFs with ROOT -R, --root ROOT Use this ROOT filesystem tree -V, --version Show version information -x, --debug Run with debugging EOF } SHOW_ALL=false SET_X=false LIST=false AUTO_ROOT=true if ! OPTS=$(getopt -n "$argv0" -o "ahlR:Vx" -l "all,help,list,no-auto-root,root:,version,debug" -- "$@"); then usage >&2 exit 1 fi eval set -- "$OPTS" while true; do case "$1" in -a|--all) SHOW_ALL=true;; -x|--debug) SET_X=true;; -h|--help) usage; exit 0;; -V|--version) version;; -R|--root) shift; ROOT="$1";; -l|--list) LIST=true;; --no-auto-root) AUTO_ROOT=false;; --) shift; break;; esac shift done if [ -z "$1" ]; then usage >&2 exit 1 fi ${SET_X} && set -x if which scanelf >/dev/null 2>&1; then BACKEND=scanelf elif which objdump >/dev/null 2>&1 && which readelf >/dev/null 2>&1; then BACKEND=binutils else error "This tool needs either scanelf or binutils (objdump and readelf)" exit 1 fi ret=0 for elf ; do unset lib_paths_ldso unset c_last_needed_by if ${AUTO_ROOT} && [ -z "${elf##/*}" ] ; then elf="${ROOT}${elf#/}" fi if [ ! -e "${elf}" ] ; then error "${elf}: file does not exist" elif [ ! -r "${elf}" ] ; then error "${elf}: file is not readable" elif [ -d "${elf}" ] ; then if $LIST; then echo "${elf}" else error "${elf}: is a directory" fi else allhits="" [ "${elf##*/*}" = "${elf}" ] && elf="./${elf}" show_elf "${elf}" fi done exit ${ret} kernel/net/9p kernel/fs/9p kernel/drivers/block/aoe/*.ko* kernel/drivers/ata/*.ko* /bin/busybox /bin/sh /sbin/modprobe /lib/mdev /sbin/apk /etc/modprobe.d/*.conf /sbin/nlplug-findfs kernel/drivers/block/loop.ko* kernel/drivers/gpu/drm/tiny/simpledrm.ko* kernel/fs/overlayfs /sbin/bootchartd /usr/bin/ac /usr/bin/last /usr/bin/lastcomm /usr/sbin/dump-utmp /usr/sbin/dump-acct /usr/sbin/accton /usr/sbin/sa /sbin/btrfs kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/crypto/xxhash_generic.ko* kernel/fs/btrfs kernel/drivers/cdrom kernel/fs/isofs kernel/fs/cramfs /crypto_keyfile.bin /sbin/cryptsetup kernel/crypto/* kernel/arch/*/crypto/* kernel/drivers/md/dm-crypt.ko* kernel/drivers/md/dm-integrity.ko* kernel/drivers/s390/block/dasd* /usr/share/udhcpc/default.script kernel/net/packet/af_packet.ko* kernel/drivers/net/ethernet/amazon kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/fs/ext4 kernel/fs/ext2 kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/fs/ext4 kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/fs/ext4 kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/fs/crypto/fscrypto kernel/fs/f2fs kernel/drivers/block/floppy.ko* kernel/fs/gfs2 /usr/bin/ssl_client kernel/fs/jfs /etc/keymap/* kernel/drivers/char/agp kernel/drivers/gpu kernel/drivers/i2c kernel/drivers/video kernel/arch/x86/video/fbdev.ko* kernel/drivers/gpu/drm/vc4/vc4.ko* /usr/sbin/thin_check /sbin/lvm kernel/drivers/md/dm-mod.ko* kernel/drivers/md/dm-snapshot.ko* kernel/drivers/md/dm-cache.ko* kernel/drivers/md/dm-raid.ko* kernel/drivers/md/dm-thin-pool.ko* kernel/drivers/md/dm-mirror.ko* kernel/drivers/md/dm-writecache.ko* /usr/bin/memdiskfind kernel/drivers/mtd/devices/phram.ko* kernel/drivers/mtd/mtdblock.ko* kernel/drivers/mmc kernel/drivers/regulator /usr/sbin/nbd-client kernel/drivers/block/nbd.ko* /usr/share/udhcpc/default.script /usr/bin/ssl_client /etc/ssl/cert.pem /etc/ssl/certs/ca-certificates.crt kernel/drivers/net/ethernet kernel/drivers/net/phy kernel/net/packet/af_packet.ko* kernel/drivers/net/hyperv kernel/drivers/net/vmxnet3 kernel/drivers/virtio/virtio_pci.ko* kernel/drivers/net/virtio_net.ko* kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/drivers/acpi/nfit/* kernel/drivers/nvdimm/* kernel/drivers/nvme kernel/drivers/pci/controller/vmd.ko* kernel/fs/ocfs2 kernel/drivers/phy kernel/drivers/s390/net/qeth* /etc/mdadm.conf /sbin/mdadm kernel/drivers/md/raid* kernel/drivers/block/cciss* kernel/drivers/block/sx8* kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/fs/reiserfs kernel/drivers/scsi/* kernel/drivers/message/fusion kernel/fs/squashfs kernel/fs/ubifs kernel/drivers/usb/host kernel/drivers/usb/storage kernel/drivers/usb/dwc2 kernel/drivers/usb/dwc3 kernel/drivers/hid/usbhid kernel/drivers/hid/hid-apple.ko* kernel/drivers/hid/hid-asus.ko* kernel/drivers/hid/hid-cherry.ko* kernel/drivers/hid/hid-cougar.ko* kernel/drivers/hid/hid-generic.ko* kernel/drivers/hid/hid-lenovo.ko* kernel/drivers/hid/hid-logitech.ko* kernel/drivers/hid/hid-microsoft.ko* kernel/drivers/hid/hid-roccat.ko* kernel/drivers/hid/hid-semitek.ko* kernel/fs/fat kernel/fs/nls kernel/drivers/block/virtio* kernel/drivers/virtio kernel/drivers/net/virtio_net* kernel/drivers/char/hw_random/virtio-rng* kernel/drivers/char/virtio_console* kernel/fs/fuse/virtiofs* kernel/drivers/gpu/drm/virtio /usr/bin/wg /etc/wireguard/initrd.conf kernel/drivers/net/wireguard/wireguard.ko* kernel/drivers/pci/xen-pcifront.ko* /sbin/xfs_repair kernel/arch/*/crypto/crc32* kernel/crypto/crc32* kernel/fs/xfs kernel/drivers/s390/scsi/zfcp* /usr/sbin/zfs /usr/sbin/zpool extra/avl extra/nvpair extra/spl* extra/unicode extra/zcommon extra/zfs* extra/zpios features="ata base cdrom ext4 keymap kms mmc nvme raid scsi usb virtio" #!/bin/sh # # Bootchart logger script # Ziga Mahkovec # # Modified heavily for Alpine Linux bootcharting # Timo Teras # # This script is used for data collection for the bootchart # boot performance visualization tool (http://www.bootchart.org). # # This script is tied to Alpine Init scripts and charts the # bootup procedure only. # VERSION=3.14.0-r0 PATH="/sbin:/bin:/usr/sbin:/usr/bin:$PATH" # Configuration for bootchartd, the bootchart logger script. SAMPLE_PERIOD=0.2 PROCESS_ACCOUNTING="yes" BOOTLOG_DEST=/var/log/bootchart.tgz LOGDIR=/bootchart EXIT_PROC="mingetty agetty rungetty getty fgetty" # Monitoring commands # shellcheck disable=SC2034 log_cmd_1="cat /proc/stat" # shellcheck disable=SC2034 log_target_1=proc_stat.log # /proc/diskstats is available in 2.6 kernels # shellcheck disable=SC2034 log_cmd_2="cat /proc/diskstats" # shellcheck disable=SC2034 log_target_2=proc_diskstats.log # shellcheck disable=SC2034 log_cmd_3="cat /proc/[1-9]*/stat 2>/dev/null" # shellcheck disable=SC2034 log_target_3=proc_ps.log # Uncomment this line for diskless stations #log_cmd_4="cat /proc/net/dev" #log_target_4=proc_netdev.log max_log=3 exit_proc_running() { # EXIT_PROC is a whitespace-separated list of process names for pidof. # shellcheck disable=SC2086 pidof $EXIT_PROC >/dev/null } do_logging() { # Enable process accounting if configured if [ "$PROCESS_ACCOUNTING" = "yes" ]; then [ -e kernel_pacct ] || : > kernel_pacct accton kernel_pacct > /dev/null fi # open file descriptors i=1 while [ $i -le $max_log ]; do eval target=\"\$log_target_$i\" if [ -z "$target" ]; then max_log=$i break fi fd=$((2 + i)) eval "exec $fd"'>> "$target"' eval "log_fd_$i=\$fd" i=$((i + 1)) done not_stop_logging=true while $not_stop_logging && ! exit_proc_running; do if [ -r /proc/uptime ]; then # Write the time (in jiffies). read -r uptime < /proc/uptime uptime=${uptime%% [0-9]*} uptime=${uptime%.*}${uptime#*.} i=1 while [ $i -le $max_log ]; do cmd= eval "fd=\$log_fd_$i" eval "cmd=\$log_cmd_$i" { echo "$uptime" # Log the command output eval "$cmd" echo } >&"$fd" i=$((i + 1)) done fi sleep $SAMPLE_PERIOD done # close file descriptors i=1 while [ $i -le $max_log ]; do eval "fd=\$log_fd_$i" eval "exec $fd>&-" i=$((i + 1)) done [ -e kernel_pacct ] && accton off > /dev/null } # Stop the boot logger. The lock file is removed to force the loggers in # background to exit. Some final log files are created and then all log files # from the tmpfs are packaged and stored in $BOOTLOG_DEST. finalize() { # Stop process accounting if configured pacct= [ -e kernel_pacct ] && pacct=kernel_pacct # Write system information # Log some basic information about the system. ( echo "version = $VERSION" echo "title = Boot chart for $( hostname | sed q ) ($( date ))" echo "system.uname = $( uname -srvm | sed q )" if [ -f /etc/alpine-release ]; then echo "system.release = $( sed q /etc/alpine-release )" elif [ -f /etc/gentoo-release ]; then echo "system.release = $( sed q /etc/gentoo-release )" elif [ -f /etc/SuSE-release ]; then echo "system.release = $( sed q /etc/SuSE-release )" elif [ -f /etc/debian_version ]; then echo "system.release = Debian GNU/$( uname -s ) $( cat /etc/debian_version )" elif [ -f /etc/frugalware-release ]; then echo "system.release = $( sed q /etc/frugalware-release )" elif [ -f /etc/pardus-release ]; then echo "system.release = $( sed q /etc/pardus-release )" else echo "system.release = $( sed 's/\\.//g;q' /etc/issue )" fi # Get CPU count cpucount=$(grep -c '^processor' /proc/cpuinfo) if [ "$cpucount" -gt 1 ] && grep -q 'sibling.*2' /proc/cpuinfo; then # Hyper-Threading enabled cpucount=$((cpucount / 2)) fi if grep -q '^model name' /proc/cpuinfo; then echo "system.cpu = $( grep '^model name' /proc/cpuinfo | sed q )"\ "($cpucount)" else echo "system.cpu = $( grep '^cpu' /proc/cpuinfo | sed q )"\ "($cpucount)" fi echo "system.kernel.options = $( sed q /proc/cmdline )" ) >> header # Package log files if [ "$pacct" ]; then tar -zcf "$BOOTLOG_DEST" header "$pacct" ./*.log else tar -zcf "$BOOTLOG_DEST" header ./*.log fi rm -rf "$LOGDIR" } case "$1" in start-initfs) mkdir -p "$LOGDIR" ( cleanup=true trap "not_stop_logging=false" USR1 trap "cleanup=false; not_stop_logging=false" USR2 cd "$LOGDIR" || exit do_logging if $cleanup; then sleep $SAMPLE_PERIOD finalize fi ) & echo $! > "$LOGDIR"/bootchart.pid ;; stop-initfs) NEWROOT="$2" [ -x "$NEWROOT"/sbin/bootchartd ] || cp -a /sbin/bootchartd "$NEWROOT"/sbin rm -rf "${NEWROOT:?}$LOGDIR" PID=$(cat "$LOGDIR"/bootchart.pid) kill -USR2 "$PID" wait "$PID" mv "$LOGDIR" "$NEWROOT" ;; start-rootfs) ( trap "not_stop_logging=false" USR1 cd "$LOGDIR" || exit do_logging finalize ) & shift exec "$@" ;; esac exit 0 #!/bin/sh sysconfdir="${SYSCONFDIR:-/etc/mkinitfs}" datadir="${DATADIR:-/usr/share/mkinitfs}" config="$sysconfdir"/mkinitfs.conf init="$datadir"/initramfs-init fstab="$datadir"/fstab passwd="$datadir"/passwd group="$datadir"/group mdev="$datadir"/mdev.conf startdir=$PWD initfscomp=gzip feature_files() { local dir="$1" local suffix="$2" local glob file fdir for f in $features; do for fdir in $features_dirs; do [ -f "$fdir/$f.$suffix" ] || continue sed -e '/^$/d' -e '/^#/d' -e "s|^/*|$dir|" "$fdir/$f.$suffix" | while IFS= read -r glob; do # shellcheck disable=SC2086 for file in $glob; do if [ -d "$file" ] && [ ! -L "$file" ]; then find "$file" -type f elif [ -e "$file" ]; then echo "$file" fi done done break done done } initfs_base() { local i for i in dev proc sys usr/sbin usr/bin run .modloop usr/lib/modules \ media/cdrom etc/apk media/floppy media/usb newroot; do mkdir -p "$tmpdir/$i" || return 1 done ln -s usr/bin usr/sbin usr/lib "$tmpdir"/ local oldpwd="$PWD" cd "${basedir}" || return 1 feature_files "$basedir" files \ | xargs lddtree -R "$basedir" -l --no-auto-root \ | sed -e "s|^$basedir||" | sort -u \ | cpio --quiet -pdm "$tmpdir" || return 1 # copy init cd "$startdir" || return 1 install -m755 "$init" "$tmpdir"/init || return 1 # copy modloop signature if [ -n "$modloop_sig" ]; then install -Dm644 "$modloop_sig" \ "$tmpdir/var/cache/misc/${modloop_sig##*/}" fi for i in "$fstab" "$passwd" "$group" "$mdev"; do install -Dm644 "$i" "$tmpdir/etc/${i##*/}" || return 1 done cd "$oldpwd" || return 1 } find_kmod_deps() { awk -v prepend="/lib/modules/$kernel/" -v modulesdep="${basedir}lib/modules/$kernel/modules.dep" ' function recursedeps(k, j, dep) { if (k in visited) return; visited[k] = 1; split(deps[k], dep, " "); for (j in dep) recursedeps(dep[j]); print(prepend k); } BEGIN { if (modulesdep == "") modulesdep="modules.dep"; FS = ": "; while ( (getline < modulesdep) > 0) { if (substr($0,1,1) == "/") { gsub(prepend, "", $1); gsub(prepend, "", $2); } deps[$1] = $2; } } { mod[$0] = 1; } END { for (i in mod) recursedeps(i); }' } find_kmods() { local oldpwd="$PWD" cd "$kerneldir" || return 1 for file in $(feature_files "${kerneldir}/" modules); do echo "${file#"${kerneldir%/}"/}" done | find_kmod_deps cd "$oldpwd" || return 1 } initfs_kmods() { [ -z "$nokernel" ] || return 0 local file rm -rf "$tmpdir"/lib/modules # make sure we have modules.dep if ! [ -f "$kerneldir"/modules.dep ]; then depmod -b "${basedir}" "$kernel" fi local oldpwd="$PWD" cd "${basedir}" || return 1 for file in $(find_kmods); do echo "${file#/}" # DO NOT return with 1 if there are no custom modules for initramfs done | sort -u | cpio --quiet -pdm "$tmpdir" mkdir -p "$tmpdir/lib/modules/$kernel/" for file in modules.order modules.builtin modules.builtin.modinfo; do if [ -f "$kerneldir/$file" ]; then cp "$kerneldir/$file" "$tmpdir/lib/modules/$kernel/" fi done depmod "$kernel" -b "$tmpdir" cd "$oldpwd" || return 1 } initfs_firmware() { [ -z "$nokernel" ] || return 0 rm -rf "$tmpdir"/lib/firmware mkdir -p "$tmpdir"/lib/firmware find "$tmpdir"/lib/modules -type f -name "*.ko*" -exec modinfo -k "$kernel" -F firmware -- {} + | sort -u | while read -r FW; do for fname in "$FW" "$FW.zst" "$FW.xz"; do if [ -e "${basedir}/lib/firmware/$fname" ]; then local IFS=/ cur_path=lib/firmware # Copy the firmware while preserving symlinks to avoid duplication # shellcheck disable=SC2086 set -- $fname while [ "$#" -gt 0 ]; do cur_path=$cur_path/$1 shift if [ -L "$basedir/$cur_path" ] && [ ! -L "$tmpdir/$cur_path" ]; then mkdir -p "$tmpdir/${cur_path%/*}" cp -pP "$basedir/$cur_path" "$tmpdir/${cur_path%/*}/" # shellcheck disable=SC2046 set -- $(readlink -- "$basedir/$cur_path") "$@" cur_path=${cur_path%/*} fi done mkdir -p "$tmpdir/${cur_path%/*}" cp -pP "$basedir/$cur_path" "$tmpdir/${cur_path%/*}/" break fi done done return 0 } initfs_apk_keys() { mkdir -p "$tmpdir"/etc/apk/keys [ "$hostkeys" ] && cp "/etc/apk/keys/"* "$tmpdir"/etc/apk/keys/ if [ -d "${basedir}etc/apk/keys" ]; then cp "${basedir}etc/apk/keys/"* "$tmpdir"/etc/apk/keys/ fi } initfs_custom_files() { # shellcheck disable=SC2086 # word splitting is required for file in ${custom_files:-}; do if [ -f "$basedir"/$file ]; then mkdir -p "$tmpdir"/${file%/*} cp "$basedir"/$file "$tmpdir"/$file fi done } initfs_cpio() { if [ -n "$list_sources" ]; then (cd "$tmpdir" && find . | sort) return fi rm -f "$outfile" if [ -n "$SOURCE_DATE_EPOCH" ]; then # normalize timestamps find "$tmpdir" -exec touch -h -d "@$SOURCE_DATE_EPOCH" {} + fi umask 0077 (cd "$tmpdir" && find . | sort | cpio --quiet --renumber-inodes -o -H newc | $comp) > "$outfile" } cmd_exists() { local cmd="$1" if ! command -v "$cmd" >/dev/null 2>&1; then echo "Command \"$cmd\" is not available." exit 1 fi } usage() { cat <&2; exit 1;; esac done shift $(( OPTIND - 1 )) if [ -e "$config" ]; then # shellcheck disable=SC1090 . "$config" fi [ -n "$myfeatures" ] && features="$myfeatures" if [ -n "$list_features" ]; then for dir in $features_dirs; do for i in "$dir"/*.files "$dir"/*.modules; do [ -e "$i" ] || continue file=${i##*/} echo "${file%.*}" done done | sort -u exit 0 fi basedir="${basedir%/}/" [ "${basedir}" = "${basedir#/}" ] && basedir="${PWD}/${basedir}" if [ -z "$nokernel" ]; then [ -n "$1" ] && kernel="$1" [ -z "$kernel" ] && kernel=$(uname -r) kerneldir="${basedir}lib/modules/$kernel" kflavor=${kernel##*-} [ "$kflavor" = "$kernel" ] && kflavor=vanilla else kflavor=generic fi if [ -z "$outfile" ]; then outfile="${basedir}boot/initramfs-${kflavor}" fi if [ -z "$nokernel" ] && [ ! -d "$kerneldir" ]; then echo "$kerneldir does not exist or is not a directory" exit 1 fi if [ -n "$DEBUG_KMOD" ]; then find_kmods exit 0 fi if [ -z "$tmpdir" ]; then tmpdir=$(mktemp -d /tmp/mkinitfs.XXXXXX) else mkdir -p "$tmpdir" fi if [ -z "$keeptmp" ]; then [ -d "$tmpdir" ] && rm -rf "${tmpdir:?}"/* fi if [ -z "$list_sources" ] && [ -z "$quiet" ]; then echo "creating $outfile for $kernel" fi complevel_gzip="${complevel_gzip:--9}" complevel_xz="${complevel_xz:--9}" complevel_zstd="${complevel_zstd:--19}" complevel_lz4="${complevel_lz4:--12}" case "$initfscomp" in gzip) comp="$(command -v pigz 2>/dev/null || echo gzip) $complevel_gzip" ;; xz) cmd_exists xz; comp="xz -C crc32 -T0 $complevel_xz" ;; zstd) cmd_exists zstd; comp="zstd -T0 $complevel_zstd" ;; lz4) cmd_exists lz4; comp="lz4 --favor-decSpeed -lz $complevel_lz4" ;; none) comp="cat";; *) echo "Initramfs compression \"$initfscomp\" not supported!"; exit 1 ;; esac initfs_base \ && initfs_kmods \ && initfs_firmware \ && initfs_apk_keys \ && initfs_custom_files \ && initfs_cpio rc=$? # cleanup if [ -z "$keeptmp" ]; then [ -d "$tmpdir" ] && rm -rf "$tmpdir" fi exit $rc /dev/cdrom /media/cdrom iso9660 noauto,ro 0 0 /dev/fd0 /media/floppy vfat noauto 0 0 /dev/usbdisk /media/usb vfat noauto 0 0 root:x:0:root tty:x:5: disk:x:6:root lp:x:7:lp kmem:x:9: wheel:x:10:root floppy:x:11:root console:x:17: audio:x:18: cdrom:x:19: dialout:x:20:root input:x:23: tape:x:26:root video:x:27:root netdev:x:28: kvm:x:34:kvm shadow:x:42: ping:x:999: nogroup:x:65533: nobody:x:65534: $MODALIAS=.* root:root 0660 @modprobe -q -b "$MODALIAS" # load frambuffer console when first frambuffer is found fb0 root:root 0660 @modprobe -q -b fbcon # ram.* ram([0-9]*) root:root 0660 >rd/%1 loop([0-9]+) root:root 0660 >loop/%1 # persistent storage dasd.* root:root 0660 */lib/mdev/persistent-storage mmcblk.* root:root 0660 */lib/mdev/persistent-storage nbd.* root:root 0660 */lib/mdev/persistent-storage nvme.* root:root 0660 */lib/mdev/persistent-storage sd[a-z].* root:root 0660 */lib/mdev/persistent-storage sr[0-9]+ root:root 0660 */lib/mdev/persistent-storage vd[a-z].* root:root 0660 */lib/mdev/persistent-storage xvd[a-z].* root:root 0660 */lib/mdev/persistent-storage ttyACM[0-9] root:root 0660 @ln -sf $MDEV modem ttyUSB[0-9] root:root 0660 @ln -sf $MDEV modem ttyLTM[0-9] root:root 0660 @ln -sf $MDEV modem ttySHSF[0-9] root:root 0660 @ln -sf $MDEV modem slamr root:root 0660 @ln -sf $MDEV slamr0 slusb root:root 0660 @ln -sf $MDEV slusb0 # dri device card[0-9] root:root 0660 =dri/ # alsa sound devices and audio stuff pcm.* root:root 0660 =snd/ control.* root:root 0660 =snd/ midi.* root:root 0660 =snd/ seq root:root 0660 =snd/ timer root:root 0660 =snd/ adsp root:root 0660 >sound/ audio root:root 0660 >sound/ dsp root:root 0660 >sound/ mixer root:root 0660 >sound/ sequencer.* root:root 0660 >sound/ # PTP devices ptp[0-9] root:root 0660 */lib/mdev/ptpdev # virtio-ports SUBSYSTEM=virtio-ports;vport.* root:root 0600 @mkdir -p virtio-ports; ln -sf ../$MDEV virtio-ports/$(cat /sys/class/virtio-ports/$MDEV/name) # misc stuff agpgart root:root 0660 >misc/ psaux root:root 0660 >misc/ rtc root:root 0664 >misc/ # v4l stuff vbi[0-9] root:root 0660 >v4l/ video[0-9]+ root:root 0660 >v4l/ media[0-9]+ root:root 0660 >v4l/ # dvb stuff dvb.* root:root 0660 */lib/mdev/dvbdev # load drivers for usb devices usb[0-9]+ root:root 0660 */lib/mdev/usbdev # zaptel devices zap(.*) root:root 0660 =zap/%1 # fallback for any!device -> any/device (.*)!(.*) root:root 0660 =%1/%2 root:x:0:0:root:/root:/bin/sh lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin nobody:x:65534:65534:nobody:/:/sbin/nologin -virt \ xSUN<ELP(J*)B I[&5Iyɀ:#x8>F*҂Ђ/y#R笝szN~w滗}9?^k^{g'99KZ -Z͝J*kfK8 5ɚh@Fx+gd#: DcϾ1ֱSN\QcX#n8+nx`=+O*6y}s\ή}V8|Q˻6VAY9}lyZ KE6w.tFԗtGB9}!LΥ; lZfF>q,vZD"=:#տ\  0n"."ڮX#߉D31l0QvjO (Au ; 6Ol|v?rHR9TZ}(!H`DTR9!Xi J*HeX0 Х>. {XK ?ML4x| L]FSꤕR9-`[2AtulP[.DH?]Wzl|&6-h=EHk/uް8 DwawmCFkԞ્^ZdVgXŰ:8ױdjIhXt1 ߤAZigjw%T.N;y34K tk¦vb蛥S[sN1l#k Qk>3bfNL'3J f v"c;9F|!] /N-i~_H߂sKsVտ"O_m.dn5[([Ź5P[sܚqU&/z /mpnpB>z.De[Ű[Ű[NBNSq/\ }eiU?tQXs6ìw9QTd|w ;G%'%\@HoI`,I51X,>ibXz*_?!*Kn5'U-qh?/I?=(0QIՂx7)Q qW%ٿT%K;v?'&9$8U-JJ11DEI񆥫?k$z'36 IƋ"rԘp@o6BSpӒj1i$73,w 7ѩFXp .J`9F`x|',rB`,p|"&ʱ0ٕ! sboWMT .['KTݫ|Zr[|[@Φ-/}z.:eԺABNT]3gg3!.f7oi]o#٦#M*keެӼ.7~K֓OqAܿB@S11tJ(·ˉn4;~wc?G/x >2DV^\0 D'/ȩ3BhFi,M"^ 4aX~q >05]S2LsorU뒖A8VDa:Y:MA0Tfh XHZO( LUys0ohSܬ yǫWae. =%oR>+NPoR,L`tC>Bz@ b(u5Pm%H-a~SsݒAs,b\IV%XT3kdJSS@&'Y?/Ku@N:Ԓ/^FJqB<DŽ%H5%Ȥ$  es"5' y۬`~p5%UJ4E9Opsٺ) q9S#g Շ \|^v!Ŷk׼ !K /L#r51B9 fGy1iWW'Z9+KG.p]3fSښp85߅ 46f3j\Г&RjuQ1O_ִ`̞6 9klWeEns<ⷡmPSg )2Kʽ%.g9;'70Fsb9\oqq``NO1K|ڈV-v3'8 .VGfJ);53s&A弳Г)qz<9]㴕Ab?ܼ(qVTR9,4"厡S-q{wO4rUhp:\BANzcr=btS8QsjwM'1~/a[TzQ)+B~62O*Er\/Jί=8(-44%-%5ϿZMOlC|=og>ɇ鈻|Y*(^pXf8xZ*īޠZZFfZoB# ǀ!XԗZ/ሷ[OJ-fBF&͈-焘# .7bN,q{#:oA% p>OI>"@\xNR?ȿ_{{7R[HuNjErd䋄4~K ] n`Y䋈דM"&uGLHF C]b |$HyE?|$%^I  “o2]`r"br{c|Hߞ+0RE$xOC|aP15Ľbu#'wpmDܛ wWmNsݣ8VİjGX/}0 &֮iZ8e~="6 ?\}wO6v"4#0Oax$Q8. !צLDAR2;4V$tGs90Ga=t.ь xq|"}~C}jd=YcGEb2/:IAB|^( NgwB,Fng3{_olq}ݤ8qI!Ӱ:W+Jvqޫ EY#З+_at`+dy=;No3$iw=?:ʮ{1vr_a}]CjƟ29r-#Oy߃gVv+7D uPG%_Z&܎R\6*ky\|tU./sWw e1N301Y &s%#&ߝ#&G32O 3:u0w Y%$IN xkW5 lrFs۳uՁ确 c.SKb$EwP"pOyWA)bxkЍrKɬP?䩟Ge@]H|p4DiY *zBG;zoSiȿʿ vF)3VGjC".vY" _?ƅ)ZY>do 姫)UR}SEkA^ϧY,_5(2Uh'/ڹ|4UhR.kMmKZȻ]By%ʻ($(c :y|=)q]C Uӕ;4eڤL*CCnm6 YQCG#KvkA Xno 9kO1Gvri{2tO۞ 3@N*D=}0eVS#4.wnek5n)mVo1|}S#+1Z|t@5 qGO1jl" )%~ȑ=]ÂDU&U yO SztxQx`N3p<& 5̈́}| Ÿlk: ! gCaF2SGbl~ DA8V_W_Q?Q-*xHw]7¿ŸAj>/^ѝx0FASWIN>y'~vE?, #I9>;)Q*Tv=I>CEek>f4OHW 1Dv>᧩/T_b?1?*;(4Ϭ+oBP"Ā. J1hv-vxiݑ` 5e∢TTrbʄ r5eLvozS3q+\4^e i S=7ΎC1'1|qx/& _iv.2=8'nѱ*!3`?e8{z9^ :/ƴ~?ZzS,t7sûvX;ta< W S~&S~OI<{y1?bc+^gC|5i6yU'Ax? F| Tī@Y<^󛅈a^<#> _5i '? - ?lnv BplWc;ۡtۡ/plcc;c;xp6O>JYF>]gFɶ bFLCmS 9$j@ðn[uk)IdztDI֔4[,c ym[?$xpOm<Nޘn2$6"%[,0/Y1sKwi2;7YoW  )EĩOgéO>vR?q?qS=ԙP9=Otn8>E#^dPjOǃsU˰nı̞_+m_f.mQw} W!G? }/jA~F~? g&N2N}Jo sᅵhG/WAd>W+`~q G_oOc}?9ްxsEWS72}zGAW 5G?'ўyQF?ٹ%@ 4F%d~# 7F !2/7>?e =C n?,ϹixN}gO8s\V'[l{rBYx2;an?˩ߧ=G]'.,]UŊJ!jOwMBQ7DI#rgEG YIv@n'fީ*(/x!NCef U͋^'߿o7N,ރҢ8TP+ 'ts=A?lTi1-|JljXpsM:feߦ]a[FR~|fK lDf5{ MzІ%#=c燞nkbպJFzHLڞOړ͎y7[7i_xtnf}Б[?w7-֡1[bŒFg2hmMٹڼI7tuNqs۾ݫ\scސ o4*B;V{Y/?h5!GMzӲ7?kCc?7|7{gSf5\zPӔǑS=_ڶ"tgi+^3=Tsퟢ=za%͍=t\n?_ؘ&\Nܲybz%?355:s}Eȕ5)sLOV(8֗|3gC/ouv*{{on(stcm[*>h{Jd&o$i < HZp xSUOFIE"7B "u)r)ep@B&6%` |UsEV-T_8{t_rk#{ݩh4rSLx X"ȣyKjc%;rrTN1osB%(tl1SH!#hl<p?s]wⱙI+^վNvKs9%~TW-EΒ~=O0{ɿ-ihKN%^ ݺg|w;=|~8`w9eix/1{ /,-[]^8JɣW+O%"^meKi}鱹ϬV_cO[v=JzӠtR~Rtpζ; fg%V?I97QimG} z, \JWp);x1H6d$G618%ie|G]ю+n^4oo~5{Yh+ϯfFjEh+ϯf7:ڎFjIG#^y~E6bwcG^y~6a]o'Yu6s16mmgŲZ{+VWbB/Ker$qeBL"`TZXhLV|E:ײB~c%3kf2&B.I -eUV~^x&P'1h3Df[kj Zj bF5DMzs;D44"+Q0?geT -]' m Uv&~~b">+xZKMMMbQI80^ ove yI 鑋O_=? dE>]fVEhЗ?/oi);_*!d#8HLż^e]v1H?M!#§I0-xlSz~49mjVg)k+RhC=e W%.0Ga'|D--I/ $%Q~c,5,Y$r!V-7.ϟڤOW:ңK%8|QZWT) .wf0Zځ+) 2{ .St{KcslcE#sd(%g<lOa__l.wRew|^\+q3"rUPH7 Bg!!R'A1L1E~Z5{KkFE]j..':i s[1H&$_^daGS6MzF[/ƣTbkJqP)$!Jk #fWH̼ rۙgbXIȗWwy3٦Ki_r^Q?e/R;RGHݥG4,b7S <?sG5BC~ ')麐 V!Ow܍b^C*"c]H=lҞeUU^vy{<}D|+ _ȷANZĭNme#7 D>|sCDD26u#eY Z$߸R-yxi*bi|9dO "(y ȴ/@*lFÐr}Rg3WT6E&feuI:c'pe&7%(#Fo4Q]n'зzQ_c/ދw9S v \@~>F>dΝαDHKv@sy=*v$$6CޔGכdrh_:v*@c'^#] YMׁ|cA xL_DލJ 7gқ ףDv2\{ 3}~o?K;`Y}p Ps?ӽ*zG%.LHϋX|vXڻS+Z3~uȻb3qKxH8?H~X߃NemYtdJp}a"(7Ś[7,P}S P~g%*c-@Bj~!_'TqCT=ރz娟FkoAvGlg9c(nz.pp'Pܘ|O]F_[^'AݬgQXqFS׬S6PR'kWV??lj^PrZWp?T6w׊W|_gN+M_Cvkh(@vy=vT_+A82|x~}g6_V!}OpﴠGE Z|,^|HԠ~{lT|\[ *UYHKxfCgzeh_'L\}ft. 2_6dz.dzOHg/#86á#3jى[k \mf8zsުDza# WHO'M]HRo$[ԁr[~#KQr$?t^A 乨D(e|H_jA8a@vcH>صow v{:INfS: <#u p{9 !B#z 3r7 pTfμ02I1l6:G]QQxf숆]fwS5EOg{X^e>I', |1`g! /0H&8nb`g'[/$~y88; y8|<_F7/KW>'xf 쬂a^o?XanYΆ=^9 #yL?">wni'<ﬕ㣇~< GOd7-8>Nʝ! {$b8{g< lA0_q?~!AQXz3. kJx(WEۣ}ZL|}=ԓ%vrRb d}xS >`gL `?'g>' /k1Qߎk`GHEBa)CW?П'g dŐ;zW5^sz}ÇTuvU.p۝(˟O܂.]x0tղRJ% ɟgov1^pl(F %2^")$JYʋcL4ՖNI#-vs:{ᒪng_Cv;4?.Pf+k9د*E^Qw׃8q!?u;nQqpܯ8݋q"ԎqAW Z ;&a(ҧ}@8}GHxPF=8_\5q, Fc>}!O@|<I k"e._B`8~a/&t_k̝z_S+!_+u_MnA_ <8>Q <h,? \6cp88|: D&V>hܾqD|?x4pSl/|9? s8p s8oMNS9~t7F.^#=??Y8~Bo^q c8ayr?qvIg89*Ypx%}s|. jq>p~;8g_ |no7?qv?w?x3o~DGؾ'8^7p+ ;Ox[q?p#O7q8'sq#[?p[?p?,We񻶀 F&eN┸qE]G 1:Vk) ]Ɔkla-"8HfM&3ZEM]}^ދK]#Wށ$w"=?#] .kuG跐nL@lOA6\tGw.< ]8^:@:@L$)0R ?޷avn=::<c9Qb[ >s&s8H_o[L ؔ5QfLƐfPeiCV *f5nhC!/\Tqx D+4Ćk4w\q K)ׇ\: E6O:waC=![}ÀW@;A)(_ rm/,)_1<+Y';|9ZnX~/*+o'נ.zW]q<]܉һ@&Vx1?Fsl% 9N$u~߂V ~ٓGmO$/#>r /˗u>~+-L/ = 0ol`F%:`p=KEMv: ͷiTPa?`/AW?|Qoe._Cд,@:7ŲV EMl,_ݑ&]%] Ky Wec欖IoEΙd*ÑA1Eէ̱*KrQT':`M^(_@.ǏɌM;^r$ljPWnZRSOsy>`8zHඵۗgXҸK;%o+%^|_x?F=PٔX֤LIyE_R3٬VHF‚/ζwy C[ &o7͵ݥ c#u|TI|2)pSBu:ohm.y!E F^HZNl%\7l [puɶ/vF?V XkZ#nO j2#Qk4wu-(JҧmʨF-j⵮yrCp̵┄=?a͹cX:HFzON_3n9 T+}5Ow U7{3-뻲ҟ[ s_[Vҩf^(PXp' MM YSZ'~ׯE5y[Y1}Sw#UݍNp<'.WVW8v*Uʸψ\ \UAfZˡK6%F˅~ 3 } 3034;oc}ڶW{GFH9Ì5Oa>?3{sν>Kf"1Gҕ~:SF TG]SP8YXc5 Ũ3ftXM+i{ܓe2W?³{זcvrMsQM*bɢk&-(a{2Gn++;>Uuԛ]9|gqkzFsgƕe再ُmSjSL'tF^7QW~Y0E26wbsߋ8o43~PٕWBGRCpy [e4vVe*y%&K]UŖUĘWb̏ 2T0olQe!jD)٤'ʬ%iy"E>M d<Ɋz%͢Y&kT7?nJ ULEE|l3ۍIwe8Vcq~ 3u3oaL%61))W7ڋM:RKEmEMyI3 q3n?mV/=Ceъ%"KQlvlPw9|BoZ.#Wڕ$SHNI ee-O GSg:3OU-W aW|_O(|T ]d,Ķ(䯂(* gޝ3wuI#_^T4Svrkڽy8OlX{yv|Z|ԁ}~9ltOunjeoLt:tz mxٌ%OogZG08b]Ix~pF}ןo)6?D Ku%v+*L2>C9%"r˟:6K%M%6537ZZX2Go(|ą$ oACO;M?9F^7jnn?,v4l{C'GhI:?z^y2&J8@oXf9^5z?hjFfjFf+PoQo{2?<<xBYXR"D} fsS^Ntc-|nJyMWG}7)f`5#XV3Ռ`5#XV3]7卨7 }޾1 <<xB_4H 0y[N#) /ho"jaʼnObU!B08>i9 q "bb+D'{!x#V*aS*C勫x_& \_PgF,Z D?g+ MPr^A([8 s%K۰Ө P݋:0oGY`LK"߷O4Qwa3lE's-): o-<·jN]xo-[ (4}y,ќ! i- 6" j @׆;!(C8Pma czYл* ey<A$$EKAa05k ςMA *@p=vDaXT'=&s(`.8 % )Sx*̭(5R=~KePdȎ"7 (PZaI2hPdȉB )PY*=d}KL8 Z6AH>" .4o9){o4~w!/&Bew%c7G2{?񉍕}.w7r)e|ӱuP0Ylg诤=ԝk':~g3! \'t\ Y hSP7-Xu;aNX{l'=3' 2^-K qx L ؈6‍99,Cu1@M 88@44 \ 5ǭ#xB#< o))^UŹ\Ix?2Hԛ㏒xjeo%h|Y)\BᲢB @#yuB= vi8%_]&Ke vIY22floVFX dAW+Yл,x8[pl)P8zsCy)_ H4Gh<ˡ^|Z@b$0EHhS0JT+sLR0mbGt7>r#>rツ,MR4 :]~+; |1bR*h60z}sOnw~3=ε=u5`ێK7[ Ix.)soYzK1a̼˚^wį="H"sTwteYHRR,$jn2 I~u4 )$!IIECO9$-եނCRV#R^sْ9(e oo{ۧߴ\ "E} %(^}(IJxCRxE*tIGz4[QupMn/+}Rri6Rf!wS-Rf!7dI% 9tNiwH$>ioQ;לTLJf]ɧemn)0CP̀\(Rbj~}XZRy/YP010x'ǯ_)?*Z^ӑMiͮJMUV ?,.+?.)|:[٥~d:'J8P *8Q#en2)wg@ה\8YX OY Y~hs$nwj^9IE&*W,9 9cTCg.^$ 37X" xQ#G5it:uG=!wx3tq2K=F\ܿi\ҭWRV#M<80ي`5 Ƚn蘡1WցABNׯ6=ٞ@ZZ`,:- Φ?V ɖW'x{sO.KScJEK˩C%KXKd#A,TB=YtY\GT(3+agDd]-LF|P> B~P<&qTƠctZ9qq+0WL2)AbcJ}vcO_s[:k1ĐY3BȬ Rܡ@ 1)*FVW~W|4D ĵ>3Q'NR,xYJw)u{L;?Iw?LOҡҺJ7iX3ylKU;ʵt44Sd9ZB<=wi޻x#ԃ)SCc!7^V jY6蘮n>+X6Zݞ=cг:vSRsu 藶MKz4*c80s ѽv oaIǺ w{xN,t@\:~-cDcl1g_e[6t:l02۬!$z.-|tۣXyؘuw%aD 8Oz7YU7210@޷z`_ߐD}߲H3{p\~.?"]fݦ1[MFָq񱴾2& Zq66b&񆨥t996Jc4(K(J/Ș3uf7 @D2U@{h&yJ=@蝔&JO h-d@8wQlW(PPQz;{Hiz6B}(!'QS)+VOuΧt5fJo@?2D/"^Miƿ_+kĿD L_e?dQ/{zk@ݔ WkDfJϢb)o!}~lCн4qSб!dn \9*\I,|᥇ ! =ehejjjitǵ?VVj +Ro?zg6gu`Κ﬽מ5{fή<ܧxߗ%GZp1ƽ|[X}m.S~F߀u _Et:q:b;uy2 勐nӶ)^V";5W]u9*<+VSL|!uyHSwvC6CnєY\ ƓFie ]/cL.g`++Ҟ :-i!к0pZs=~$;H_vH:"7|M֐l[5=г_+$O.0_ts]) ^ȇuy+Ӿ| )Eo$:]"a]uo,GQ?YP%a7eG:AAC WFcq-$:wl"L7{?ơ|dtB#m1z!|v+ȹ|B|ZCi{b_/DoѓzxDb秲_Ly+3=&ǯ#A~м~~ S! ChҮNN$Ƌ'I;v[e*i>y U8y4Mg`}hyoRrE$f˸< }?zy&WX;A-UWY>z]'|X?Nڮ_yB/;6d㚶 dQ]!y"d1O,:+`PA2>ƃ>5R\OnS7}[:E)Ѿs)O#Sk -D>}ҦxQ,KߦW۰Hx ¾H@Qt ,NE\kŵs7kոSdz>o_cާO2~Ü@F][} C{\I!!s%N"S?|vmmM?j?#6"9MDb[mѼyJ珃_*w3~ |f>|q(mNv{m1-5>Eد@-߂h_W(wೃyv'4hn0ik`,gx^ځg2 >q7x.g<uklpl2ܩ߆Cԯj7d}!D^F!&Py߹.$wCߍ|VHy[$ʳaC\p-[OIF]GL>Nmy6<lMkc"r6ȟG%ϳ~?/˟׀O70ס]ιgĶg~Ķm H3GJ`\:okZ^;ݾlF~uZ ~ۂXi|5zl=m'wWBv;MZ3 _izj/ A9yB݂aߐ1,-~5;[_jM ͩL#yhFUFyhJ#*Wȯȷ>̀)yٷ}6t6,55M~Ii6װZeQqW(o X^ѼZIV,*{Se^nJMe)lخ,*:9}-0rJ^9OW#-+ƩjWSTx*+Q/Vk ғ&EX^XFjY53 7`!]t#r j>%cXK5V1Ziף%_# [~2y <4oQq%*Oȏ?I7:ؗ7>yp>o'/ #<2Oo𨿨wr7p?iGjpN1zMxMI[I8]҅pz$P[$ Dfa.ߩCz1&>߱7 <. %0> [%R? 8p?P?"cc+pVh}fTׁg0#@;1Yw@j#3(h70 =Ga8T`^医0T2^KW2)x-Ahh2|'|6; |!㉸%e7dWOfnθ|= bC_o`+c4_#Gnׁ(FƧz;1ƻ' ;39eg#ׁ1><}3ln$\ߍ-3~VS#|_,%s"*BxQ%+£ IC]>n%;->ރv^AC ߖNpՄS$0o{j}I8[KX?#m&os ~;>Ol3x<ک?Qϼ5_t:qjjzs}>*ѧ?/³wRLi9G> &|#;.Oj?L#|$; p3v#~E8gN /.gDOg* ~c\rLJpڞNjnu 8; ?K8j?xJCǕ%\ƙ >ׂƺ弍GxY>rO|Ч uпǓNfNEpZ/y&/ׁalr<ɸ0. a7ၳ}r>!/)+lbib\K<a͟ ~+ΰJE>.s6")UxJ|aƗi1rUQ&к+t+N23Mve\/asb(?DptJqivV\nsUrOqU%I@ÊKɼ<ť5.24T{!tSiy"cGaUiWx]t`llmQ eWYr{v1/8Qes0fEo9Ȓur1Fp}d}Dؑeರ/|F߶6l}Ez9l)LOc,B6mS-7<1j#Qv^s,~?ia\7T_ba?t2XїI7>`ϓG(/^xoEH_ޞH>OMYڮ>n"M`sv ^?`Wwyi vxdC-V9Kߗ̻h+v[5Ln7~c eyONܨꕑv^<۽W_J|wъ'{}b[ũBG_tֆ7iq x4۸͇v;e?~cc? ?.5|DwﻧͩS%Y6~Ԣo^vM}5׋?i3ݻyq)߹5eG~vvj} v3ߨ vx gudu^u_> #\6;۫aƕ BF]t[?ф=W%%l?9ź1sO\rEf%|/j6w!a]NnouC?޲-S!7؏W7{(j֎5Cgy,.iҭw>I86cSY<ԘW^)-LmoW;\TUwMtȱ6$18w"1uƄf?F[h4m[m|{V} +ZA/yw0&v9;6!1G ='K폙H)%wg\͔p#(7N_?ݩpʞ/cGKx(>Y$OMw|x8cAf4x0.8H1dPQp\E*UF"UX:"9U8\*jh˛|&KδsS/+9XmG`Η*qʼn^dx |0!^,Lb#N?d;2|i@hCWwjxr>Xu>ur 4}8|N 7`oifB:e\ţMMeViRrKȥ̆Ҥ+tM49Bi[eh9PsbDRiQϊMTfZ`D;@bySD}Rn`X\W@ pv1pn`C%'X' !v,5uLR? [ kNB&Z9M I8_>KI`>|q||xQc*L3nB'&H./q)#"2A :m/Y|\P#8y 'U@d#ZD`Ht/U@IZ)QgdU/pz4zyYeWAgˌu^3(hoPISC &.L 1IB|lǿ9h 8jU,JR=B; &U^1FQwXN$쀌)kJkv/I0K,80/!$Hy9M"4$5a[M"K Dd;&/z4/@l.)⁊H}c I{M A5D=C-l啨)ՅnXp$1;b, F)jC%j/y}$dda$ ;nR* `]!v8M؀(ðls({8f@E9_D1aZiB ?xm\8}f#| 4? 6 m4?Аh~i &VL&Lbl*U喏rw(CvUfx,h  C5@5,|i2,Cc41pSfJE>r1GM͒Y%4dfACzdx,O?,ς6RߍS{;%mD6ٹ68kQG` a%2|)0W)LRo| \Z(.IKB9  &0r|: |$؆@kw=D.DJ\_-%j| ~Ҍp7IP(Jvj! M1TheSE%TQ~$Q'tq"8]HNFaGx㨵bRl_’DiQ(QZ@ZZ*撂)x^J @y@qG@i`,/̝b5b-7ņ φ륙BCwё%l!'l„ 4*7~'#ssMG[p0psaӈ)u};Ny6\o /]3`XWժB^@Y_Z/VJEU*b%&W:`v>XuԦX:@v 0 j-@ WKcer܏ NR9*Ǫ`(`3xd١O5k,vSMJ&xONyߡ%y\J*;ч@ |>--(ղx17Kz{127kzl B\v>2"W? 1 6RгhK' =R_HYi#F-^?=8woL,h^y)~%&IcUɴ+nh+/7!kX~0}} H#7Z;yu6R][ْLAjK<DZa.TR?H Ma|>Xx▷O`>ui W c#.#yB nYuh]z4_g'5:lZU^֯w}w`]ͺ*%a+唺D١w?f@cw2Zyq0*헯ӻUs,w]=G%u } -GZ\:9 )=ȒM-_'p4+54k{D{A t7K@\}D mȺhgn$sŤfK.±.ypՠ K)@7Lx޹{ԃàsU zJϳu%zv0B%S4/X`PDѮN>:{ݿ}++zP5fAk:BIqa>v |l?//j_)u[CO*-y^d\:]^xWejJMQzRV#=Am`\^v?N:sg0삩uGJy`it|ε,zhz%6JBGvr#.y{#JȺ{)t#-_F<~UQЭJ+.\ICc]eT0- RR$]UߢUjUJֽRfT[(i40gri,O>!JV\욶esB-2S=*7T𲸡)BFv fGfc2tUUTJB5bq {"XuBq 9~=7 ee X 쮞M,^Rp;ԱlaC]qD ._1*1 Ymy5bnklK/M9/T`7%-IBSAnEꅆ?;$^H0yɔ)ygQh5 :͒P^Nyy ǭ˳9+ СXs 5;0N|'~Qqti/ *I;5i!c}N:&|U"Gcl|6B8Kwz6jScV`2V: G??6p!{a0! r FÆ~KWR!lztgn쇸 CѰg _m7I[}t~ 1|OM|2l<Ǘ^+7p i+088 Y3j~sO1Uh: lG覒G7}5u7jau$E?{g^5Qh̭T<O ^(=Q1Q 2TI (SxE{QAnYM>=GZ{M#fv/ul_N 2Bf-)*Kű I+y\S{ZľJ.1{ulJG DϋVF9f Z9ס^!:-f9>")%_NFEZc ]&IR3<_kd!AMvAR!rٰ}[Byr\3n4y щ׉-F&Cך< qMY6u 9|#;|\?>^'~~e 2|oh䕚n![! !kFw!\jؒz֔ÐӍ N'4>0>PT&)X'#|g); [:/KO"WrZ~@v38S YIxpӳȐךrt:Ytf[j1_Y-D?A8Mꉆ,#!x?űcwaD~t7+Ĝ<s&g@I~8Kȹr~C9r-C!?,ѓvJ{,˳_t`_ igz#2+`{)#4N^ E󢙆\A' OK-6evzX >'IP1L!|M!mICm4sQM =HZttza现aadyVzwfL~ڵ"ő3_)GsIvn>`G瑸I+ ~b2|;8=M$M_dѯkE#9z*G/v[ϲ~`jfzNYEK޼dqYDtf@~$&i['[cgec)عԧYklӧ9TeYKAe8n':Q&ҧ˱{,KlѮ\aa"/ z͢^ O ]VI|.'VUOWW7inn]Skꢟq P}w{Hד5u}3}}vO}V:w:*wtA757Xq }W!>M~?@[D.%Ð-3MDqع!@F P ;9\$rjSnBզD6y˕|O,Ygc1uC\N^ag֞wO5 g c 8tYeV#K^RTV]:66F-wj&ĪqjyZ'n"ZQ+bՊ8"^HP+լljL hAԀ\vSmx W68qk w[z s> 7Ne k< U }tG1>x:x iOa|lbUb+(k#zkgپUp@Di>%_`j^-tA+ (G5ݨ')ƃSesTgz^ypkE] vNԔ| P> ۲ښ3jί"g_O!ؗgJ_> lˇ\Y~b̺(ލ, qHɇܿ†#r:ll6 ڑF?7mNt4.6^>ӆ?m_kp^x47/ǫMж9X\Q9jAZmnlq{͢R1kX?avinYNP)vY2I~Z0TKk:oRձEy9E q8Xhk]}fdgxJKE>fx2 ˊUcm||etE])甫(Uo", jwbM"sz;PrO`߲nV,6-`QJ!I)*Rs=ٞk^*=]Uyh^^Oߛ%澫4x9zzW:vX|LcԚa/fjci+Ϲe7'XuCw 6xO7jamKD/6.j,- Ox;CwJxW¯&7 0y oH5N7"&DxS"o![ǭ'4nqK#.i2 q|qh>Ӹ'm 4nqo>~3O79[S򿉰.gkkk~umZZ߯~j'knlLT³ ? z\7<΄N}Zr r>F_%᯸뿙Ӹ6@~ q[mwѧq;H8[Ix>w4nm7Nv ok}\=b㹜po q .Uu:N?ƦD3! K8=_MkD?pՄ%|iov@8|Dp>T1xy6kl^룮r9C ~÷y<-$}F'ӆN\Fʧ2pO"I|h=)N~WFݸ~3~!2q'M\8F2>׉(wc|l83> OgſțG?y|ցG<><>y|Ox㏁lΌ_kQ?xb#c;)Oe,xQ`"ie|x:x(QK6s?^x{4x1 ^x$^]x:?.Dۏ1|6o21~ |o01_dKWO8:W0 |%g+ zK0vʼnw13C0`A'W3Ha5Ia|$Y?^\d\@d_81}30x8G29ޚ3GgIGaTƗ 3 xC?5ؾ>Ÿ& +B?yE<{\syPo֚q>{n/%M_rsnA)'@zx6?|9Or^0Zk?ݘ@^ksmbe7_b<_RGm`0^gc_Xֻa##T+bDئr>~p{V5k”pXWE)ӌu:9YKW~1*4 /xX 2Ԣ]lE*G1$~ƺ ?^`/S6?{#ǟ?UQL/'[Xo ԃ׋m _?UGSmͫ: m?gO[׷`+%,[~qRic/!#eFs_u]TX%&ijA?1>xڏohc {:N?PGs4Zt8C5t 戞朤Uhjpw@aBd?W n3{tt?߁DpUIjyOoXw_4>uFCk\;427OO]\a ~=ɡ^'5X`_/}L_>9iƻcz뿟ƑNlw|o+7F-Mda{m3˚CO:bYh. Y3aӽ7|~Ι]"°vm6Q">.wґ /}DQ6dcHߌ}i}N:qlLԆCߘ'lyGV'v-;`IVa=!ҧOyxO?Hjv`kcVvܪ~8Mo;qRSղi] xEy$0 duV`+D2G!"ɄL3a@À2Ƭֻoh&]eYua FՅɭ>5]ӏ!KߧN:WϩY}Sz#6I:# ΈP:K@o-@yuuX6tpG/zu_?}蚩]1zCNurCD~≖c̝m G<}pjʝ ב.J SU\(\kTT!]y:U ׻GWt7N;sG?DFpZ#Nk [o\ZiqԪT'Ö>E2Ba˄oϣ0:5 ϭ; *u8u.e[_+0Vʶo]q;*JӑS?JgH;]~rLɊc ۭ#Bt1U0*o 5"a9w(s}] 8Nx܍a LUƲ2)V96 a e=eKlac X3X&p*!lagLXlѯ-)<YRKWHNf5b/ipu" /DfqZNkY'|.b)lXJള8:u'p)Cˏ^pNh/F[፦o{F1{X֝Y&Ej}D=6cKԌe݆eM5P{m:fXmX&pjnM{XmX&pj٪ J3uI1?c; Ulg!cYaé}ЀpZ*cYaé}pZ*cYaé}XpZ*cYaé}pZ*cYaé?l-U{lR˺ ˤN?idk*cXmX&pj6[KU?TƲn2)3TCZ*cY`Z*!l-g,åTMCR*cY`‘o)CTg [g"=%nOG;ǠSt*NE财¢phKiZ*>/Hcl >;f.g_&ԣ8eH:W/˟Cj` JŕXe4-UuCKZPVMᐽ.sZ8jcj)7pҲx*/xmSބ"1o6xyD o80, -w[l32l_)Mb W5k<ܚ"MYE/!yBR}BGĩjf{|p7-֚5G7y6/k-5Y"?ۇ=(,7%o}_S>x&5c*_/GK^ߐ vUZ^J~:N<ߓC"ߓ1ߋ ?\; m~ȋy 9#UةXc.k.f=k qfAZ'q1d|1fDıEJ^|~h/%[B_kF0XRgA9ֹw{Ʒ\jkp=Jh52Y|uk$( `s%LT4a׾I_f4kaq_f{g'-lf&TW=tv"|nʲw㑅S7Uwyܓi7RuK*F[A*".[Nrw6\nrIu0 6!P/sVupt:Ä9GU*_ G¿AԅZ(t׿$;vciӇY+]ngzf H|YǥA GBȔN9 y+4p?t/FW۽ӣDWo{Xma8zN@xN=!p) ?ޅGwqDԖ:-Qz ;7 Oaa\\#st_@~kLIG rrA* u olFnE4FĿG:}`)£FxFF ¿ t x&~x JrO $oUL /r!|NoLIz7Proo?A) /cY$?5߸]xo`\Se#6u&cLRrGr7w* q(D Ԯ$%;Q_HVPvx~( dyu6I}}07&MBFH$Q,IOH|Hg0UUXOMx z:ʏnl'1}tn(~&>Hvt;uT_٘F}`uЧx%I|f/]!br9H> (u1wPm?+q̣R>|N'(;O.^l8mD͐N Wt/5`'vȕԇqYS[2#wwEQzĿR]A/V'N}gK/A7*/'? WQ+(.r@KrէMүD31_ )_D|88[C|I$#JWe,euT=zj%PElT{j=BVoy?ӿRΰ*A9d=ROyH~ڢRO$?iyl˟+t(! q*`Ws{q|FJgBD~~H\/<;w$\G<;I>:UFڳp;Oq8?]qq|_g6)3MnG/!1+xJJ"*q (^,6^zz5KVTJj*"bg &)MG鿯46P6>t+'oИSK|wHKs'0'O|dw~JϑT4DG2͡p1WP~/^&*g?9p߄d.:J/)-ť397᥷ 2s$ <A+3g dNG 獑-wQ(na d; bD AcGJ!09 WB4뭰spNQȯRC|qG!-/Q7 Is7\o$s&-}!i t?l 7E%%Gj Egh=rr "? '; r-=L )9 _t[<['? ~I"SdoQ}5pAQ} HGԓpxR Cܵr;J>E>I%ȕnF4n j f ZFxIЮFh,qۡ] 64!o֐Ր_;Ԡ?QC) j OƖ; W[f+vy}~r5̱{NS؇~ n*f͵Ux\bOvXuqx8{Bfy>is;@MG=>.#6e+,# IB Q@HXTC PHC程9w2'0xHJ#V_bjܑRMշ6Q+@ub#rcyVq}ж^mVٹYoӖo&ۧ6h*Ye3e.P^7%ϢPrNL/乔LGQJ>jؿ]~iߤaY h߫a 5akhwhhؿ_f h]n 4aDRu]q%! Hd 12ddXA$B X_͠JYjTVVU}_u<<8x*7_71~S7~W8?-Ɔڷ3Ծ xǃ׫\OG ~ W37&V_k? Xǀ?/?~ gaFoF/[? k͌Xn8ǁB+C߃oj}{{h?D?O Fڷ1վj1ু?2__o@hߥh/C t瀿 4 ߭4~bCgׂ O|FoH߿'߀?iL̴} Ic7oX}~:%* ̵\]͵ -B,Bǃ?b"-`}OK[j?$3/ wo`} +[i3׀7־ݭZ?|+C߃of6og6 ~"gDMߺh?(S~!7 m6վyS;5~Ǧ?'?Nw~F35f_L?9o'od~#O'߀?_ii#O k}wl}g_ R79-ߤ۴оO 퇁 H'?% O-RZjo[ҾC+~p+' ~K "k^mP}_o}:hC?9? eo}G;j' d灿 IANڏr~'_~ #__[kߩCZk?'?n# ~6ڷj}6me>O w :kY~8cM+]o}7wv~oc~Uu~ ~6%:w + ݴM>ns~,#l𗂿%FmoV9m?WGߨmiߵ~_~߃]ܵ]3%o^ߩC? )S׃5'={hC.~O??o7zj?S < ;M:hU~: [?Yo7Ҿ;xi?Kǃ w zk[~G? W W7Ѿ|G_ R𷀿3׀~ڏ_0g#?}w}ώ~J_/߃oIIAS׀7u־mgw~0 J+?=~ov~_*|{{k?_QO?B+_ 6?nwѾWv~$)g_b?'߀#7~ڷ}ǮU{* |nڷ}nM<9Gߨmk߽t~/~>eW_Y[h3@~J @G~Wm ~ i,H˃_! ik]?g*7s_oC{hmw>'~ h)D^! ~$)g_b׀ c_7jqCG ~6/;?E0i~ׄi+? Mڷ ~pk?xg_jw3 oS-{j߽{j Ig_a/[ҾC/~'? "?={Ao~PcO"#? e~\g~Q/< [վ}_{~P_'~!G-~oONO!G__kߥ;~O%/ w ~ڷ}p? lK_ &V/0 sk{j{Kj{jznCi^+kwZ׾ c߂o}HEj? R< ?~ ~(Fi=J]?83Wh[Fk!Z?$3/! o3?}Ao=Hރ~O ׂ_6q?nk`W_!σ4F1~P~ _ 6[ ;jybH?oѾ; ~!?/ }w}ߡg_ R7~aOa/>k 7&3\kq; ~OE?#0B>#q?4?O}_o}xkSC?9wHоg$3/ wo}D{'j?(QQূ?B+_WIڷNҾS$i?okO{~d['k%Y!}|7MѾsRpǀ ~)uSo}TwL~ী?/sw Fjq}Gj?| ~6%:w + Gi(OQ_ &_ UƣdGkh9[)kҴo}4wO~_o8FMh~_?|ڷ}ױ4Vǀg)_}i8q/9U{o4^kcǂWI[k}ӵ__?Cwо{?O >.7~L;gj/S}(_J7jO~ ?A ~._V?2KYx'?rWx&ja='j{* |Iڷ}IUU{N~io7MӴ?g*7s_o4]ͧktw>'~ h)G^9~$)g_b׀ c_7jqsG ~6/;?E:{Bƿ`uۥ~T7H2HƯg/f?=*Fh'i?1=?o1GU:)Ni?a2\ƿc2Z?am2hK̠ٴp63[WhU45?/a#=shC}rhG1ae?3iմj3+`G%K}.W~U.Oc:Ɵ+w"?ah[ΣChn2!oO]ig>ͧ?b225?kό1ow^C{ь22DƟ9^H.3 3:_3*kiZ?x-Ռ?3!+quiWw`?p;Agh^cj_ B6r?Ox iZ!^x{ ܮx{!Et B8)K񿲁oo _,pqǻGC`Pu!p:, ux,pJh;%t? \t?B)_>P.^.['1x,po}Ը/ -4!~_0/p\we?Z[*?!Y{G|o;"n;#^ p"~%AP7|'53u6D׿4fxk 5;@\?uE|2p?G< ĝ B|qo >PďLCG"^ < cx-?p;JF$<+Wp;1Ǹ/?&p\zJ q xp\'׿8`Á[\8kq_>T׿<_ ׿ x<nDkIWA)j?<Oa~D|9lS"L&ij# |#wy~J;@U^xO~6rko"_Auĝ# 6x7x'W'}!~#uyey x/<.^x\Ep?wx7wx!.?>qyyA|A!>S|mmnSi ]j)P?.:"..8;%ၸ\^/m|WmZE##x(P<"~BWwﶥbW8U|QcpިtqFj.A ODF%$I*&F2jV5ǚHQ0}TDu|XM˞ mvۇpVo06{|%Ul\V7+0֨1P NK"d#Kaas5z6NQuFo W#1Y 9,L3fKK,[^.:NQ08b4z֤:<戸Xs.IH^6 ѱi/CØ-_cjGZ".yZQxp#~2c8y<8uq?/['yrL~,G1% q$$5ݪ7~Ӿ9δ=7;̴ҦkVòCJh&l*hq:`;o5]Ps7S"߿"m;G1Axteܺ7;\7Y#+[73L[M;{gq=/P꡽9<˟cX|% z .* %317BJ!+DmL+<^|\کhǒߍ__2SO0Balʚ'( ̴6tQ}uw-#|eʺ>_?B=|oݟA'qLjxbZhekϥAK8(Z٘Fvj۲̥A r )|dK6yxyxuji;ɮMxNcy<2/g{+Zض<''eFo2mGxdWlu? [6(ij?S+-$6r7Ib#OR{9/->ޔzjy#Fuq;xvS U%D[^_Rhޱ9gCR?ݼO];h%Kvp7u:t96v-u_ڥqH䚏O`{oɊO]?.wxY3V5Ӻ6 v+SW]eXw䶷f sqAw2X?wDoNO#~:6uý~og61vEg {rWwե(B݁Cv՞/rp_T:0 wRڞ̙]_8ꕒG.XRn mɼ-cVt۾{@m7~u'.fV/@UIUyuQKawUpWvf.x?5.du]ϱ);W%JwJܲdƍaGmYn`ɣfVxk~yaW/ +qʧw7-Ɬ17?{SujCF"5_\ XUߟn HIe . !45[eeYwߴR3I)553_55??4SSy[iTjwg3y<{o~˜9sfžH?q#_w2_eA|%BAV88|:&;:}?k?d`ae۝A7XOhtkϏSq}AnkBBG^MK]"K-{)z TjNKebJ-yN9rwyL,r7MSIo .VZ]*m~_%Xl׎'Ò*F-D.Gp~3zΠ^;?#, RgQy{ }<29ipv_ƑQ72D\p.H"k7MW8V;ecnd2.E.][W'N!RV&_ Ų#$8uBţYaJh!*/d/Ή_7WbyLzD,`2RY%n-sRvTgTm/OƳYee (;14G,lXv;{V ]º}_Zl8N,HT̕#Ge<1* (=:/>enɺY%lзKW')* yteCeY#+ۣ5ⴽ#GHcbu3W")#EOC>G$pۢ F~oKX]-e ͗D30%Jc5#fDɆڒ_|ׯcNaOnoVRH?U;pdL4:B_8T~nPp%n,Q(`B/[9S?FFfϭ_ZU -ٍ.!'>@,.(0 }uy1 ||ἯD̢/fP}l{u^w , )pk"W!N_|}ڹ{)b\~)"pw(\G kL[UGnBQ!q dF-D-!ďZ@ls=. x )B*D |B5)q! >W|aZ Vn[xᏀ;{(_~3|“_D.`4r= :~ޏx뻣2spBA[P1l;/ބgc'֛Qb6OA`D Ut;? Sn+5{"݅΁zAD< x (B%e Jct\:OR80iۯHT3 jDo&շ'Nr-){8X9R_zzATO $ZsTY=bOMw&n{|j~[BʎV;vQdά*TP&qPKv#rzK~OQ'!0~rHuWkpC*8~%F/ND[r=+3zz]y_O^g9?Tݻ>T9Gsxa-xfF8{>cLcp<@g/R鞈%^-(d_e uͅ8On/~ Kߏi^N (OIM笣|z|N¡^$;?Ӏ?B xnȸ |,ߐyN~{传d\IVSy{pL6RoE!>k#U Uox հ?V/$iouY;5Tk -70v"v*0ў V2Zc!g`>x;t7u:яXyyn㱢[ IVt/(_'%zA7WͫOj-߅P|팠dϧGGߝksT#uZ' @TSvQv}#OАS_A١R#֔'}޷﷓ߙ:N5vB؀J[) +ggх[JQ펼Pʟkf[rX^i ^x}ObJJ5''5#,AVW"~lV8b;Zw+'}R8yɉכCPǸmv"M2h́9 Նjc+*,D8C',^W ٝB>>9'5q e ó#4kLgN9;;0D013|Y)Q}샴?/X" û)%Yāot G0EXTO$Ѭ\z> &y۩eVĮ~8v\;ygx! ?Q*iwTh]s_%?F%~WlN`K?S<Ȑu8^}KT15O֝qU?<8e;iOo M*"A<) ڪ r?y?OW5W?ʪ]8|eliBm>G so=Tacph"aTa% :v?[YPoۼW}'Zώnv[՞b_:6ym5s/+dqgܖgGngZ໇ξ?MkZSNFZ<]ώ=ؚ7vWoVJIjz8΋_MwU9-}$/;[VfEgL; 6G\.x˩++jüׇ%Z`vE?:Ug޺ֿr##olⱒ1WDgv>Ǜ2r;7ham1'o].YCVx!?Z:[hyn͝3:`[PҤ9ؖ7:$>v͇~w O ?<1N?._)a0A{I\ XTڞ" (z7T&ADAQ㍎b0& B!/[aMTRSԳb>{9[߷{5 OVXPz4QuZnn{\{UIIEy',ωxx ˓b)O^YEʷ,ߚ{`VbtX̦7[1\_Sf 'HK?Ss}S4#Uj|[4߫FkZP5mДԍu"qWir]r&no6Te(w;;7HyS>q=6=ԗ':pdz`+ǫݷƝ}3O3)-nҰi|W2M`j'q>nd/4uTW^&'}O֥_>9#};))؍:F.C+~Hq]yn5:s\|Vvc^i G*`0{hl!umuwmyZo| jv֯aXf bs9Lc,'t,dWјL.` mp:Em27=l<Xw C?.ӧ;6䑯>VZIWm%?ܺnLn)3!7Xӯڗ$t;n3^S^Z_?$o$ xq9Gw&_SM_,jOY! .O; 7tBu7|}ٺ{KabM %`:%|{w x]4zHɀ<W\NHL; ؅pS)/Lׇ71i?]\+Ь$3&5z9>IEnw[}o<>k~O o"|aq,K4U_m#TɧF]o>L=3d<^<АYKڳGF1>J1G>A#-|B ^ =CpLJlh4(5-ȷ*^FHUS$$Ÿ0ݹ8}{>DΑ|p|gIg(n;"4y&l-[Kt獓d:y>4ݠ~B ! )Cy#]-z X쎀5^;W!})FIdʯ5=mi:_>Cf<5wu&2ಧr^ȿLf4 COz4|&&0@150S~Җ o黩9ބGz|x,*H2Y#{u7v }^'? ݙog oWA()# 4. ͙xCsz ޘ\}Toa_X>{떩ŨX1{8Ke5sa]O|]ޕzd"/ػ=(g9j^=c2˳Rfczx[9[k< b,* Hoc>X}g3j~󑫗/d_/qHL]yyQm2k| } -ruCsXf{ɫP2T1_KƟupk[Rgȯ-VovTyU7o0`:L"=t)>4]}Aa~L!'QmGN^cLX Bi"Mj@k46b;ImЩؖ=P}p?G\ds"`g1:M MΘiZ4`@4=#<`?x+ ߬OMo d.W˳8PU+AeԪ[Ax< |xfzi&[;B<i3|{YV|Z/6{qࣼjP,0Ygw%?X ~:cyW%+qZ -xf"ߴZ~WM?o&]';&i Dղ:6+?ðoS~HQv?S) (>_{Qfh!qijuKh߽gEl6X,u/PP_\ϖH3g4͠~9>@kf`;?Ucvŭ? [f߃#Oxֽ@|*~e~x|& px O>g1g2~=՜%Ͼgp<~ Mx.xfPsG<'x\q|7oP,q$~N'-תjq,*msZ[!0iCb]s=]ե#,DْiJP]tN [3]~3!VMSpaXAW.83YIhSŦ-NEQj293rU7+qe$Y,zEcm A1Ei)cX.O@j}!x~G60%)q ry&r|* Vvj'Xx`}&P?6~RyU} m=s?l TNhuM{OTOG7-+|k)C!k~#)ocf?)~U ,[~:NƟۧp)8KGvs!㲺5g;:(aaʳ?n~޻ڏ'OGdF[;&js,lugv:}Ew>=JЊy>u+[Pe}8;!ګlqے*6ɡRG^^ҷ-WGRRy>䎐&59]%%_+xoש] [aǁO^ ^sP;dyMf~dJ R_6sυ^vӴGE u苍k@Z{LQʤ>OvNMԏii >]R5kguYwwƊ#Ftq͔Y:⻾5gȌiI[|XZoele;9v]Oϝ8\׮VAY_yc\_h)nE^{ivfI&6diD}1e|]e|[ӈxc/t^?fiv:L̏"ufiv?G_nvCͽk4;HQN5FGƚN4;Eݟwqɸ2ܙ%oܩ2Ϭ3k Pl̬P74߳(!V]%4+#cn# =wH؋tYȋY)';p4,;p#'Й?<U+[ 8IּkɜdۓOƤ5=a?uw*91XCO)a(0gn{eϗZkg0/MscUU%r^c]1ϥ˵`G'Vy.'s cͩfeڲaz3m"ϕ,pE])^'Z*Wdm|&((+wH$W0d~r+ymgw93=)VGK3;O&v}[;mTAСR6r oZ*ʂߝKF@r%~u</\ !}WZ(1c --݈{ Ά4>IM3ZM_|KtrH<.wZ4xN~KNzii<):Qo#2ٝVG'.^KK|a-rvu:+& Nz q$QZ4_7>4KD$B~O4{49CnH3_|($0F&2d7%Y6f$`I;!"c^ 7\V7OoF2 bw x7[ SODSp1X81X? p3nG /Cp3:oi]>Lpr$=o Buj|{ C&r$x(`RO8 z08" },бy$"x$3;%x>~DH p܂`; x=s H&ڤ#w<# .=|4!"­-3HVUyL>y*x2OR_xŏ+> 8 K1t\Ġ StrQ"4sl]W 4>ES"]: :JM]  2P_D80iu!A?+U|#!K$KA;2J6 T_^EKb򨝷.A]6`n`zi/'Xë(Td"?Qh$gAs= Y~`Ar+pɳ"8Av"~Vxp(\8=f*$va\!c;Ϩ]?oOus>xNxU֨5{f 4yf$ ~OCc@e}Y l~q2@n: Em3@a:ЛY*s!{QZ^Q]M}w%7w *?݉g|+'_V?jGlgxek&G Q9EP=O/=֡ϮCaPieX1<򯫌kH)['_?֯,>N+TJ8 _ v-k xy/ǎ*ܦ::Sɩ[!yKAX~]'U7 oc=X{S_x;jEe~풁K_yy~Q=I&8T xTm\Tv^J<눧pi)܋C%wڭǍku/XL϶3d^W]$3;ixt%GT/6:FM7ޔ\G^N^pObu| WDDQ֩COa66\.elwTcH{/屑z繱7/Y`L~ޱZv/wq\{M79P >\kqt2WeDa/GV˳2JC#:dKAzи|(ώYa}P~6@W_+կ[̷ŇC}z5GC;OT⌇\ U_'- 18$ͫBj#leqO"M6U隨M2C:NyAj5v!4s0.A,kѐ?C6?rVG` SNKv?@ڝy.FU::NwWtbH^"!Y~E'=KtݯL#_$\$jA*5뚡]3H;8]>ɒڃ Y $kQס-m6Ɂdi}_ 5`}i~Ubk4S$kvڧv_qi|ƺ}-;_dF}?&BZGɷGEkDaħ"faAn3g{&ÒQC/앗Roa?wB'p|_9/9y?ǿߕWߋ>?dzw??~~$ǟ ~<ǟ>_׹5o녛㣀q|Sr|,8>^ 8Wp|w8 scp] zf8#"g OհOFn^Ss%ܸ\g$BD$ ~t!C5E>Rv aw'`$/P6C;I9$,v6gEɞȻT7@>^l8@t,WӪ;I.M2ma m1`pNgM/_GT:_Hا) J#OB l}'/& }6y>^A v>.&{=68~ ',I X g‚?R&x0$/oB_ FO߼B!XFjF(eֈDYYw޷D=o븮+_e3.]-΋{֋Z 7zBUEuX|/$>|yCngM\ω Xo5-ڰv~x{meyʗGlYxbÅgw6Klp>y3gSv?s''/lRa3,IN-bcJ򹊧+>QR)?3Um>,=Bl[9,SF߸Tޅe#MƝ{%:LhZwVXg:= UZp۱70(bC*\O48XG$ PplA3)_N{uvp Q[TOJ5ZG-]{}8p@~瓽k>eC.1%caO8#_Hpj(H9u\DWbhXggN?bNo9w}l?~݂9?0$ci}! V̀~ ۔rUh " Bv+jQFGE*"2!hhLWh_ 14.F9mx>rz4fMty56&cdc&dhlf{0W\r\fIKfia^TBh"o˝6nv͚^c1awJ`)bNav鱥M6jŋm\^f3Ns QLXo*;4&qۼ.q- ִ1IIAY-&ϫ6hXs!U\ui|Zb7TS[MX<^d/4-ݹ}~Y^^3}]̅D= mna+,vnGdžÑO[Q)˴(4o򧦷h?x,gp sy.z>$&oPa_m\7](L8N73z5!#暽>K3}?d",qCyJDN>6;^ u#L=iab{ݙkwí$&ZmzA9l&c@+<`TΆЋV®x@o9c .ڂ񎣈q]$'ϟ|m' ,N|ϥ:w 퇡s|h%bZ@9Ch5A'Y u&>tc!skdw̵FzHr: vVA>{$]$,5;~ Udl["xcCg(K*ׯ,I4 KFS$%cBnܒ=YHYVAdI&KXr?KO[Rr㖔<$x^Y$(qϏ>侞TKRSH0pE;;|o%.K:5@͏^tW rޒSS;;;|C?ޖϙE{X8y0 l8Tf}Qh1' 6603[ɻVi9ir^.vj`Ԑ=1FLJ,P !%!dRlPlΫ ً=%=];(xh1h)-!%HI R2)FJ·MɮW.=T#`GLFl lE]>0rXjMz)ۙx҈" Kı+xVmAefqQ}E'x^5V~GQA-&ssQr$֪<ԠB3 } ij? kkGȭ?M< {rX V 2 @@!*Ȓ.Պji@UM*Պl=V0{ #5C/ԛ*k_ GXRUGV]@#DT=mŁSxˮ2ք\m} !XQFopz@@n~d3v.;XyE}' ; o:!jcjߩ QTN r |iYdu 5!Ac/Y#p1Ed leĜs@O*'ȅ娇VlZAQ>IO )S;Jvy[$E|U|'4εx\sZ'x5?3 f?\OFk|EpL4#uѓ(i:/K}+7 *f`nk 8HCMP{( M#|2jDv%5g4-P $8uHCC]7.}?C %Hb2?SM0~@!luGi)@Ǩ!QO$Xx5`˔ R6xL® /9LfQ8J|A=O/G+%|Qz/q_!!^"n*gycO2LTLZh@k&|]o(\NOJ[xV3}$|ݞ->Gӓ\OvSy@U><&{Dw-y$ %|/y=oPN/Rv&gD\ z"{EB ~;u$rIkaqO:B`3#_ %}wN$}O!}%ų! $ ioQ >HΚk=)ѵJ#a|RC_?5Ըp9^SKTxM G.$r6.c)~ a$W'q_Yk{z!Eu+ W8^5ߤ&g'='Qb]|{M!aAVAvR:|N݃7MJ8^jp>a5ſO>wzW@Hh3d 1Kyc7UD!a0] ;zӯFO@s|i87K_GD9{sO2L Į˷D0]{yr j(_P(wռEa?)a"!kDoȇaC=E؍V5I^>RoᇿoϿmIvv.pQUia7 &#tP]ՄT|af&fHTDCib_nZJe+Νo~{=|qϴ~l3W?&Ix0{]>R |'3Zȇᧁ!c _ὁ%5٠Vx! ;ƃGt k']k Q}a&?ݵ A|6 arM7TEx`G*'T!|3pzNpi{xogg/PAn3] |{}dM~W!(o"#W>WƼi7ȟc $Ї]^?{%`ד7+y&ؓo} ko}xN6 /v2s;Dg=}Bn-J=|r#pK=ߞ!^`[myL-^Eyy{K6͗^sM%<]uԒgW*]؝^qk®(ˎ+5W\A'$8BJ.YLYq,IlB~A|ҏΰMqȥmӚo쳤\dsrLf!WM%[i]ʷ̥a\)Kqq@gtLKQe_ҽq8kظX>Xҳ6[zFQ5 kظ߈+wb[#F;"Zg͓<:.Ȼ뺂ۚ3h,:֒b7Jу* ӳ(`mp%I JSw{ 6#(QG|xJm ێUJ𗁧x>.2V B;Gx O^Ax)g!\Jm +W9#~wPcQ>$kY].;;6NBn/p6Cn&(HQ[ Z~8 N~BSN~w8s]F߱;߱qw!p~ƣ N|)l+_ ^E^uk  _ '|=|ߧ@8{~5Q8 ?Lx3߄ "G9rp6 ~Kx-]GsglYl_Kx%p?]]#ݗg>dzk:4S_]G::MwC#/D;D|F7CQy?&$~79Ry/Ώkv8sv^87c;݋v@'qı%cW"Xh!ߋ8ֿqı=}G_8ı8ֿ_Hıı"8!X$7u8>_gW ? >7ȝsD"ނ$n>bħ!^oA܈`_\OEmۡW[7 qkP|ıEIXDq}!>7q>x.݅8'!r=D}Czf"eXc=" p;|<Ӟz)Gaqͱc;:c;#~d_;ad:[<#s#~Wx#{/g{CC3 e  ճ*WϮA6'#` gnEx=d gD?$qe➫ukx~_\P9xAuq C ֿCq e|Qf8^ZA>zٹ qas L[2}.ϗCȑ:ZT+}o"J6hsSy\y\9 .d>\[|{!Bܬ~,@KC)&s<غ^A]yvSay%ɚnqNkߩtZ LDQؙ9 ;l5b4>fL9߫2!K:N <:@8],բ쨂P؜Ź~[ҳ^ 3C g#g!} zO"߯c'2?@Wg ҟR<\?e<@ "(©ydZVN/54nǣ{D ҧ}#o_5ufm8 ]N'!=5A4>!=959 D בymvP;Cz!}%&׿^x\*hZtiptmh@ \qsO©"N#Ad rȯ~9Mjw`gz_:/K  .vq-/ [/+ݩE-i3b*L ~f;.!_[?Vi@{ ;PٸGۛkk#-T_%CD>}PǿOIRɃ`WMWx@$QRM]͐jH7<棙 jSh|E6tvPt%SW7?9֭/]9'>U*ZViT˞*Jv[g1."[ߛ-z*+}V=dAQS?:}[q1N?ӻrl Oָf.hѯXmXR۴ҶV-/ecg Kc!so<;fpۓڼv;rlRUT.~jUyWZned`S74v9.cn׍W{35?`Ј6դ_n<^qaMwh t.y*𥮖UN-sHs95ڹl{zB; z>~yCʥ/jy2_^3T/?:l_kjJ^T|xoNf|<.nISޡyMyP \lS%k'V~TqMgE1U6m>ƽbûw#&qD/m0lHujD. ygƄ{LcWߞz6}7'_p%K/Qriz Go5tL[8iLfZ]j4gV/\ |Tտy-(-bVIDyQO/dޅ@KDEZ+J[~j?+J Bx6 VAo3'{!@ؽ3̙sN.}tػ&I&h%-p\ Y/F#Jf(A^+p$ya/|',{é9X7T4-Rn""ag3LڰPvvNI™3NHtRg f;U{"#ٞM܇pUnpUp87i7n ncT:k_GҪo}SWʎ#̑y(¤㑝3ȾehGM.1WM/;'1ϠY;EO^O3H׵)ƼS9C%Cs5ʌ<5yR<5Ŝ4O5Iѳ(e3y%Z`tcC[`'1=<.zzb;zŜ4O5qK(eKMޒ׹F-GGk[SoWٗZՑog5 wL`%rq9`2R¥w=:m ǤæS6|5.Rw118)2pIu?3({k"^: 5Z[+x[+xg[+xI&@{7Hf(c%Ĥ2mF~/SJ&8BGo\!Ԫj^Q0Kh=|#-R3G)oJ}7>՛RMOij|t2H*iRhL qigAgVAgvoi%tӽlU~S}rj[+rFSכvۊF LKɑ4%6k ^iv٫ۉ@o*[?YzՆ1oYГK@Gn ?Ycl^/_6i"]=gfW'۷lQt Cr<<<KC'6}^=zj6ͩaﺬt:?O ֚J\kjgNn&>&m LB$=!̄'x,vڵMlcI1r.)3)5wnoP\ Z|I\oKd0eg-rcu`Taf/5Xꐂ^wcf%5MJȗO˞<.:/۞龀[.,zp!"X# \ dvxg ֡Z͡}{[Nas KQZg 77$+SLI~@:%*&*b"햨 I-*6S ;]ٙ,3:yT역ž|12*$ ř;)׎f#Y~"]Q W*, nOk|͕Y"J.(y *!1>~zbR/fy.zy]X%p[T U[H HAY "r\mOY2aC(E?+d-9麪Ӵi^TOO۸gE|huA(ݫLi_{|K 48d+*&@LD7_W-Rk*d =8=BaƳoҜW!$z}֏ SI!bZeo$N\KC]KJA5`NƳ;w}ykc%kԿu|Wg|vMM55_ C!?JFb=w{%kZm_ȯ,|I}yo#Le4%0ݏL .Owy陚Z$*+~D  3fIK'֗xigO1i-DxY(`%(1ox;o஀BSJ<@> 8NgM"x  8LTg>-{WB:s.5k]p`:^ꩶmYc  V}gSu}DwGvt^M+_K2o;?!߸\Wl|HI+n-[oID&I/ZS!3<g_|T QE;4!bf~4E{m=*."mƨx&j|4Q_'Qo\1I ;`tv`[`TċM(1{-O ` [I\D19pN@ݡ gB^6 OpzlOdT|?%}_i(%_֥9; Y8Kt^-L3j>!vBK:Q1]o<h &AWL@1W&~љGcQcvX p1TGV@=gsͷg>h쿈?Iȑ%1w"yN\HNBr,0w__y8Z8y _>-4-Qqh.0@Qfe5m&W'3n,5!,oe.7>N/)_܋L^)c<ЋCcn>;T>_gyޮx_13#nW󕭙>z ōQܘܕ޲kw2y=oD'NEqbFg^3?vW#:~cq]>NL=s?|?~ˈ7 V)XtLߗ{ϐbĞ}kګhly9VY;Y:k'kȟ#Z&gc{9_}ZwVȯxkmg-SƷtY>.YH~θzt%ʿ i0 AJǯLүM:~z~EWތd'Cir!Yhjcy5]'L7v v=x/p7WzG./Ǭ^}Fc x+#64 K@#}.&1}x|W$kSD-a QAy"_ |}+ Fx)Cx›Ҍ*޾.Nj߇8x S>ǑK@4~|ɥLĂEQ#L}}@$Z&Jjn/u+}1#ŀokwn2'i2SHq)q|xoփr=@NӧѢHDGrxC~Q(5##2tG$8 JĖ"CPF{%h5G+*"ޥge$^,i|X(9򥀾(L@ r;=XpGǾ5fŗz[iTE~_#l}ٮz/-98{>.5t7- mm_vk$Ŀ@|2!>A<cD<}mF<9@< /"x@ɈCNދxjG|'{_#u-)+#񲁟,~^o"OO{އ:rOEx+dz^oF{@?dzv9~./ŽS61<8?-?~./f8yvfv㳳#@|.?ɳrtPۯi.گxvۀ_>Kh?e_5h],;$j^}Ml~lD9CnO~;(<,+ JrK h6=F_\(CFnމlJ%U crЕ=ɒGޣ;TqE>K/3@7 [mxqmoѥ9s?9s^ϟ}oק5ҹɟWCSqiV0 Xzٟb`l2iu :/4?aۼWgӠ0BgM۫\gi`0 ~ӠL$߻]9#`d?YF+c?wwUJ4o<6p܂aNƯ#%_>ݟɀ E 3,Ac# XQԁS0fq؟B/:_ ;Q/~kgi/`_8/Mᡅ?=n8b*#D ~y=e1b{?~݌Pۏ-@t7hS=@euf_?Z|LTyV322411d3EȣŵP'Y~nRzV1EW^9;rZM16+,\aO|k,Xc:/w&] xs<5sL~+o~tbKtE smg0{Ӳ0mP,Ø][ܷ^P vG? Kx|qyܠSLT֦K]n]hV /ta݃^\^x!dݤw[Vv\p|MZ[טItgNmïv69V..ϯڗ?a:a;x[ ʖP˵BḘ_vHy̏o)ZnW _._w?xuT~qYjiS]PF4Ws<Ol>q%4;eSSy,(Z0 %mbCUO.ˊi|@AAʫ`;sns3@Yw͎3_9{νgLa1:VC7f&x#& ~@*j8 6ȿv Tveٝ^_~':-9y(VOlX:ٖK6~5MFcNBC*W *(=e|mVUy &_8Ȯ*򣗻b9-_>Г_\WW k⧥zޒ _D&]BW&CDϴ|J3МsakR ,_FθDzE 3W8<=,xKV?-#z"qH\ `~|4d%a#~?dGȉSX&v/v@V~P 3 OJj`FRҦ䜡J f$Jj`FR=% PJ0#P?䜡J f$'3:C):CsZg(%TgPVrP 3 jPrP 3 RrP 3 TrP 3 VrP 3 #&P4S S!׫,χ\ @ _)JEY=}/_UE ԨW8+Ӳ8>+D5 ^~Czk|?;o\ 4y$d@|WCMr[I3=Kܑ}<H;ZDD8M'Ӊ,WMwEm Azޟ }J3#8E]I#}{/ 79yOqU6nXB-.'333͏qqqIm}] S7Bw̥I&KX;Ηd[_}?&.X bwBɼcxq#5m Jߊ&{jcSS C~ 5_W!o~vDDnD~1,λK_+>^bdd*#HE3M 3Iؼ|1M5{ @pdI􁺨QM\hEd6!?Uw| $*m@O'-)QPg)$.@^Ex3XǣƗ q?Y;R$.' i@0|^}R|SD)0Li Sʒ*C-eqydH*1-׈#^YXdf8L '>I.}K|p @׾oIWW q -qX?O׺+ ^1χ@)?wLٞ"}rhn1j]1*hZh$DVrQ[a#*Z'V43iGU I\ZGb=ގLQ& vB郮 `e)a'bA{Ld?8K@ȇ-D<aaR= {t%p݃3K7& 4a3y]n_LBj\؉\i^ wtfDqq;]ͯ9swrZas=넩*2vtq 1f͞gSSOӰyGMÎG9 :vMvmQ)ٶ4Of}wno=טs\.c^氧p<l{\$#=Ök>6%Yip]3g$q56sngnv?yTm d6׿0auiEBiКvh96|&'-FiV_y\N=isÇK?l|c8!n]c3Ӛpe0\q;M.Fh "] 'nM }6V.Ah,\f_ˍj|7ˌ4PHEtOKퟻiZs=isYg?u96u+Ϛncϱfk|@wDj?2~pȝ!$lkAcrVm9td/Y3iB4e7=;LUV7.à^?{.O.psX=srZ|fX ه/әck / {Z' ¨JܠpURji[{NW+FwZzgn1OnohFJ9V.V>g^rC]qMR7!sܭYuYXOP9lVGZ3KWؾHөG8(u{s/_wM7<FƟ!rLxV2`|< "? "f_8YZ+sۥnnꦬmQ.{7d}q3NwV5v"Iɓu LC|+4nĤ~{qhV#4o#޸Bوx -l퀷 }3m0< }+` 6_"yD68X~{~"l6daW3 \A4h">_w%g%_fUo␱l%߱E>jVI)3;g!~,(#1];@'#~Xx9~@qA A:݁ s zoy+nb٧ x*#G|OnD X|flbp򱈂Tq! kd8σ>3Ƌ8T>$ jo}Xc;3˂ V6${u(t@8@,3GZXO0; 1tݱ+k#~C>-6A cl xSp]~`?l}moELHI"&j5{6[@O;~0;1Ϸ!c@A`|_)DoL ×(ƂyάCcuN¥!_[Fsx9Djz0br;g)P!AilN{oћ2ʱό=G$|rpOc"{5n;qR9/i#lb4I5+KL\9L%dd%0g]C)ۖvdٵѹ;>nЉAl~ʖ9BTV06|t]0ZgmQmZRc<(/>FzO~se!9 = ˺0U?;@nF3x*̓M&] ^ौK w1 ₠n|_U# Ђ  -hI #ɫe7 E9ky!WQ% %ڃ}smW=4hۆoCނF@/Ikop?SKmw^+b|Z<.9zVoP4EHgtջY/]d_H/{F<~WV'v~F:=aH SɉHϫYiV ;ZзFw#Bgt( ?)x$H3)wY) m0ܿ)ЃΤ H.o2Mr <`*, %$M\+V݈@יּ+H+g{<`aOula藄4}HC_0h?- }/ $ 0u⥡v_qɅkgRG[-Ilg=gsA8yr,yHbjMtrs6kÖ粊 p ^rmf] 2| < '+B"%Z<AJh!PPxjpPy5Y)H8ֹL(Èzwsћor}=S%}Ru/Y˿5-yZ0o+K\h)fHCJ/3=c2uFyXUr/PQ\ggWD"(D٠\P1TEXe*Zc xDE=Z9j6ըQS+D⫦ A-~3ǜw~wf Smӹ@> 璒T<%_.W锑y+?i== \\W7|o'0;2yG*^3`>Q70P9n +;~S`f2`cn`H<+!9ᅤ9oTǽX3VÙǭT/c?GR2`| H>fXe凲KY|+ʗgTٯy?9qʏfr\kv={ay8>chƅ^)t=c.Rjc#XfuS*{v(Pߩ]veNG>|:y xyz;a=(G[#GI\h3xN7[Ic <<|S3CY"Rp|)p<7 WK-o[kȷ_'~#{M!GAV~8 S'ς&?~"9Wkq\{O~\̇K1ZgeW׉%Et_!{"_M |8o/#FM>\܏0 @'B q?Vr-> 9yx>H>@jhq <ҁ|у|^y%(/a;AlxYrǥu M?^}aAe>M4:IO6̵gRRR2aKNbK 32%CZbՐNIдZnT궡rwo4_3oSKh䖭ڏxkSBJz614A-(-{nc+7 yS"tO1~Q9e' "prjsfE{"G;)z{|8n]Es>yf2svyaQΞUס®4ܧ5C=xF^ߺY/.bo˟t0xw].4VNlڂOg%eEv~ƙ;N𨮙|S ikwo]ޯL2OM {l?yK>einm|@x9y;iIg{S΂e!߸|vmɰ=<Sܺrseʢ=X=z>ŶgOГaouB!ó5߱bB "-5kV'z!8}ڌsVL.+z(/q]3uG&4?@OK~%C{o|_Ʊ1/N\I=dbakwL5UĄ%qw] xe-A trhkC R@Tir1$Y$)!hуU]+Ҋ\*,(̟S'<̛w|706Eptp9铴#bXp ʮSS>䡏nnR*`}l~icCDj6}P0ܰ_u 5 `pyj BB[}8)rB*qTÎL4Zƹ5Π0r fB6rP߆#z^j sy=N]4!Iu SPwz6xA0^sSBBnBhP%ͅ$ >ڝjCʠ]t sTNv,.(Xč Xq5,C7@^cEԠK=x,: amY:OXba3d1Ln7۳]L'r=^f NJLϦ:/.,πR5Uӆ9zm>c@yfvcݰң/f]s{\<:EۑG.otX;ni_]De]X'\qF܇=DWEo+5!t;:w|/V:<ޞ|3x[)\Kh~:׳5 2I,DWh mF%;0}PU?:~Y|шxٝZr,TXVVM=_|D8Aj}㏞[#P? o-S5v|;e05x+;BzY+l|;}?g5ڽezr1m7rsٌf-oZšk#M[ fM0E&lU:N˰xsԄfMRKڶmG})USc>{!yS"[ iK]i;PDuq(f8-}?Ho6ш3FO'm`Ph@/ mex^Č4gdw(mEP؃BLZsʹm@ !x$g z>lë%.K*ή͒5{pɷ7ﳥhNhZ廖f1ҥn$Q6ԍ$W8YAn$Q6U7([&2u#LHl)KG#ybMHlI-q4iQ7(-Fe%ad, FIͅFeKa8GW7(Ս$ʖq42n$Q6gI- #hn$Q6gI-1ǶJSɳYNz6Y (OGUxЫA/U|vY|@il ouGRaKf$E ofs!awi23np>|>p.OZ^v塽K?l>mIeaCi#;N[ztZދ] Q0Y{5Zݜyx[v/ a՞?/2q?Di`3pe@\v}VSvygolPN JVJk|˄L2+ ߥ0ݓ6lhrk'_BS ¦x6~)x@>|%[o B׼i6ߐ:[;K(~mL>bJN6? LJ|dʆK.׉96c>|ԔW·OPN]@䡔 #as3E~əGL @@OA @U FғycYoh _jd>ka MBBDk NtFAfc4)=;ʥr3Ejfs`1s0 Z >Ai~׋ۘY?i@%u kW?bL1X#3l:<&!%rf'$UaOƫH7N$Ebb-m$d^<6b`>GfuNPѼGnFLJG[#Su O&͸qvMEIHX;^YC+w^CB?6sI3lgy㮆"!,mc[GCyͮz'g ڴb]A/ _YƷIŞ]%t|^A{5]Woك(uk5>BHru+p(:gZmN[-o~^*w|zW V8 B BQ;&(;RGQ",f<昊W[I]ybKY; #~܂ϿBիb*\WGKbI,j:yCѹy#avn=2_J`-B `|p*Z x0Zjz n7?Hg'/ߊ/1Wn~;»hv#W~F/^i.4\~qvޏpFooc4- i<`<p2P!}w JG ĥ{~aV{C OsҘ]"ZV+0`\k# &ߑ}@ntd'5hU%|nx2=?Xap'O03{[jjh5!Ia )ᨹԼ4O>)5a!_2 .4B;/C;2Œ@(Ҏ~,{~R_+xVO#"yaO"M|! +G $!Yh!e &rajGx {DI?Ŵk6*ʓILi@At0c'ğ*6CƐA+cx{e~^ .5$3]S(D3*YOKKo>'M<2kۘ`?dIo"K13 Xˌ$e9tf&Ic6{#Krri& >πO# R;pl#Z{oU|+n#_GCx06O++g~p<<(<ٺ~ ׮p7 g\hVn9^=0u3FٚΝ4=wLt.|SOQزѿџ~G78y͗\Ԕ&oG)/ Ǭ{CL79u7 ?p?_V{۲=7r7wai9 q{XwBAm3~ C1Y>r;\eLl0Z ,GcF<= Odؑ"sW{cCo!q1^r 0)`scLyWz|h!|L;1pjKOgՅ#6wG?HƗ0QR zHW#vݠϕ?UƓ t7O8rrgUz/$||H{tS!E*WO$|Oj^]_`\ޯg:Q/$O_Dy$zh!x 瀾0j'#/]|~Z; b|l'#lo~|x8х <M=!|l/ |o,j0/UU7EKF(_͗_,>_Fom7CW.ԡ-w><5!;+!_免d@1+mT+y=#d,(ƨw&߀ #vnBw 9{j3_ o w/ރ88r>_D뛠 .#D)E%eXV7gr@|(OF"ij4XJ^nglef< s{oZ$U6Tʗ"Ǖo}q`tϡi xCb< YH8Ry "QyΨ__ |3r=: &7<<&o#OM>C2 hlz=+!=Ӷ|&mc{h=<$rlOɱ=Û1:a,9ȱ=U2x)Tp\3Ktjr3x y6ArxWBqw#wJ^n w/Mܗ{ɋ}3p6|8yxy9x| y#xcDOIjO}A;K!g Zp6<ٸ ɬ?><Ln$7gǀgǃgP#<< <<D><|:< $_LngHRr'_-A|98-_A|y1xoꏕ~p͜s#e={WNp{go$ڮ期E;N=Wj?ݳxHeO˹K%Gr^y8A\_7}s(?ǜ09sq߉sGsR.#.=_9o\Iwp眯k\zE+7-Z9',Q|9w`rg3r9I|=9U)Y95A.9yg1] _g 󞒷|5W~0>K?DP~3{gK~0MWି zpv4pvK滱l~/I^~ =͛7yjr|m$e":}ʵL),<6>;#7mrs#δKT:{`=:γ:-yD&<ğokK/Y*<˲9KsG36`(j/H]qUjϒ&<᜖'}GmKAmyٙ|{U{ڴctl2s¹m6}v=â2t3hLH잪P2r}KKEKmC C<ƮYRfϽ!g > ?iÓ0x~$A|\1I? <~t i`*Z c7(>*_*`*8_(_ȳS ~#A|ͨ%gz^TҤO !󏿿s;1UC EKm _@i!:&-s(l_>\ @A|xz48|7 ~"?X^⧯Py㿦@?`uŏ S:.~BiO/ e'Et["_y;į;VBCY"CW!Vc-Oz[`},?׿ZAnt-W1ҵS^촦~<~O౓9X8 ї{[ YQ;lEejI mk6}ed%y%Bs%'덡WZiR||;&?AB7nn'ٖ\W*jK|M_ u5W/Fnl]ShIgZUviN<;ӝiY*Y8E[*2/Oǥ9eON)ʬqloIe9:轱'>4tsju~ ka8nVƈ=)#NDŽׯcuM3{3-l϶-%9zo+9~M꽊'~W5wޗöoԐ`Hȃas"j2˟q5=+}οzL)3g}|e8lWQ?{Qm -y/v7v~8mBʩa~ ;{9|wŘo}P/ef$$^ZP}cG[vz7VEn>w%Xo;9bӨ).sp~GD{,l?w3jt}z귧+#/XbiҮΰt03dʺLIZUpnO9rŃ{v7-nSҰ {No۔vN}`x36Ϛe7-Za-ž'BW\ xSUھI[jK ǔB)_*H66MBBll(/(7pdUaDED9~9?34=-s:N#(-GFWER.i/O96oO*{K:ټe|   Eo]d.=ƾb+)h$]DX(8+Kݢ0ПUVr v#21p"=͚E>awcEO^;͔nJi38&]}2Wp )$^ȌEOn6>5%X_dQ=צ8E|Ҿ >4w'^{ry=vgycp< Y`(UBAxOX+Jۏ ZVXlD(-='UFd{V_I/:,6P}7_$5#8آhMpC:lruQ:z~A~ҜO9\Мf 9Kr 7[Xθo{ګYS7׬ꙛD_{ABVTh]ג9K[WFj&I:>+5k-KfET̔~|VĔdA^Q^VAVw#WeD^V2TFv5X8.5+\fX3ǚXX+<pŚc- W%8VGbuX}ኵ:>\NıN W3p3r}>4+BICB^,)KO (hI!r!,U #+ѭq+2J?A>+G "C&'- KIze:K!M8oe1~xp};x7c 77!{ؠ_B L_7ϓOi X??"ow0qp@7yzox0Y}}"nrDhC2Q(0 N:k O=C!vHWt/\{4 n *IoZs>8޼ )HyAF'40*y|hž9BqnebWr!a!"%St |̀/(H!/*k↖$L'cz^Lϋh5 op?g Xs (lE%L6ݏ:tr s`0g(C Cq& à?_s^9;r'#*ya"Hw$4ޣ}?5u[ 8lZtBn.ΓH"y7֛r>>N<܆>`ED_?[5p`:-vv A pxM[Ɩcm,?*k[h28'BlLCPc?":?qoֱz,_ZGYmsK:Ge\yy~S*%}I RYWwFxy56#/"4BI1KgvwSCc$\KH~'CHT}%JAA t9-J񾊐oU6RqװQ;x\ٝ`Bq~75NN}\xr7Њ! ߐKOGq xGR/3n io~>f&$ D.̀fo8D6oyc ?פa?O?KC?֔S}@C1}^?KP?\u%Ɵaz../ПaMsҙ͂z1KۥOx> f/643A}#ɠˏ) ?a1g#ob`x kO .|&؏q]~а&*х^crϸ3/Wb߬a\كfob?Cþ6԰b+~M`Ͽ*>eP\P-ҩ=}@_g4Y=C'[yYЯ/ BGCFu*wPC?o-?̓ko?2R.Z|~u8OĈH6.eI"VI̽RME I_v+`r[b4G"bcc!R'fx6-o={_\鸀i.Jw;'f,ܹyVLY~:sPSgڸ_xTI;Z.z#:o]7ltߕ^;%[>%N{zyIY_̰wS]_?qnpe#c^{N}w]\6Y_f/[kV]*\ buQnO6^~!bzבǦ;⭈x&铧^{ɴh_||~No%G 1?߳`KEL.g{vд^rn{N'=dk+3yZX={qVZbmo̬vgL7n~&{FOK|t`kc }E.p59/|{/>?yՑ=tUxxZ'W- _X9_Y&^tk9]G\/6rX6y⊛7n=[?-usI?0y5Ml8nxUjϮ _|Ҳ+ϽVtuJ7,Fi#tJ,8DrK\yxEHTNE5 ΀рQ"v3瀀|1+"xSd]Y]w ɊKdj70|}c=O~zj`\x,K,h)V 1~ .}/JCYt@^HB{e+l=V?G~ﵟ]6SIiX{OɕO77gaJڛgzͣjo7VNؒt匞yy꼢^T$*dU.ꂬ͙EN(5ek(\ +Kvf2# GTJM(˪V]k֢++2} )(ܓGsI{+ke(hUOsxRR"ߞ?#|u^Fo}CIUPv|&o? cx3CS_QZ4lׇ~R}IC}} eþ [NӺȆܩ+:ٵ><6{#X7tDY;?5u#e)ue"2}fV~֨_] ȭlmߎD^ugk9^*^3 -%{$9Wx .險8!5az^M2h=Ƀ+ְ1ӣYC>,-dt X{e$%IS EK :nDǫN+$G8T *6k|l:ț77 ؜Ĕ_󺂹 hZmQ1Gc&41Yvsl0Y'O,fsapQH4$ U5?DG1zLTBFTO9%E•)H@ڒ(3{skޓ-A.p&3;񈧾J}?JIp5l^x=Od~ǔLP^kɭB?{Sj@+S!BuWŽ+Mn;ԡšZ9Ⱀt=2YPrѭ?W p6̤yү: Իt{gy4V?i?j25O7iސJ"˼,wL$K߮[d1$?/1į?u*jP -)w1aFPn1~N7Zo0ud{}Z.0gٱI*@0~X<݈F:._b#RN~BrwFua- p"a&c\[~Ar_!йVkcܾW 0 S w-mHMi&)增 V/GpR4{WJوwo" \,*y7#w+fB`3g m?_^Zp. xd'<$3/_2^zC1i >Fl $L>64pjlk!<&[}=x@ϱn0p}*~ͷxSN1b҈"^bƺWjrGDhɭ>3σwv8 W.[uO'ڪ &x7c"3x]S>FH6AI_A݋;S79c0K)+!D<5Qc?p7pJZZ:uH.6t|G{tdI%\23y6Vظ}\xpPǹw95\#څɟDrHoAy{"J3D_6.nU/3ʩ6:$ `? _֗ OM֯4N&wx=(Zs@a)6ЫE}'"[Gqrzo$ ,Fޡy=fO,?7yG4Nxf-C?jC@$68^?Q;GИ4ގ] Y]r1AzlI6qˋjB> )$|8 FP'N^%N6t~wPN;;&g&-$l9ȝCrxIPmϨ| ԝƖHmN.'Jdt凢]]ߨ>&>d.KBt_>x)n*'HRz0P z'g^r:t𓛤h1<{1Fopc~VϵK^2D9y3\H_U#AAU t3=>g\iyzNDID**@_F=:\^}y %L$>ńȄO7;ZqKt`R&\bvJ! 䋡\9}+C|%݁?|)4]c y{=O哢|g˔cqa;=Ia`]><`-~,:CȫtgN*uV;(O CvV{vH[FOGwcYiϖq6L(n5 YϞ}89~79p<)OېQxķ?σ2̷-|7B;kp>cFxƟ~ǧC<~XnB;S;"I8gXJxVLrWo㋹b _de  o3Q9G$رV3I y9C㰅@'d8Z%%¢t'R 뛁 a}.GAm=P6.J6߳m~!v{\ՠZ Mjl(}U {總.#Tr[FQzC idW:5޻f 3ZYՄI%d3e`4\x˜H<Z;%O"giqpSy/a/7 W__+-P M9|MF9?IV?o6w+"_5%+;LD 8d\|z4,=e 㒸~צ0M|m5o,M'lʇ%q 2W@܏&FޝN2xʴZ?G? vy)Z.]M_@g_7es?{Q y1L.ˏb k9V|h]<||7&׎k' ~qӬ_`⿖3ϟ?l\/?.^kc?~/4}I@Je_9~e-y^Vt *tO!,ۏ>EANï./6ї`yS[^LNvrve=j-lo}QrZrE-2-01پ2%bSGٻfwNN(Il.efWһB )͵t,*ןtGwݺG]r"'R܋?э7_ ww(]q')0uʚdž}9b@ק~W圸d҉ɓ>9cy^z3N|4f[ڦW7RU'Nw;4uUch7=w9feucIOYNnP]gz ! <wx_CkZ;AIMz2Kie=!P/yαW{Jp=j7" pnE:1fX; 6U|yhfzmhkAoXӴ<ǹœҔ0٤614VJl%hp]Gc;ʤW#Ipj:~ d_< )ּ$(뼯||ٍ*F݂IKx βWr9S" 7IIfp/%!#v:W 4f; (1(Ro5t\$f bƨ[s6PQ>xZlgīH ⫍zS dv. S}-pI)xx ~Module signature appended~ U[ xUlm$ (n3$iր ЁHE!m:m/lOGPEf<}27DkDpad"`Fq J[vT>_sU]Q%&$4BRԣ֩<_/Vjoһ3HҺ lMS ,/Nﱔ[?[ִx/chS=t9mynm7BW53{4pؒrz-%ܟuCY I]nOBAi鱲מmnn&q=ZW͍, mdK7sK9eu˔HO19*z `Kgcu(D2sEJUevca {3ݺ:.}^ ~e 48y*O)1%]Y>wefDK2-%L^j "XX`2~:-W`_Ӹ\5hJ_:[ci :U2ݓ盛!5m1Wϴgf`=Dj mAw{J|Pe3 ;i,@q(ĸpU prqpRY)TeJ{u~Jz3-уLv]T=Kiv!(y5zP=zh gΌkRѯN(lڙ;~ٗᙅ?cMvhd&VwɌ.˴/n)qo]VukӋbѲ>5y0* G4cʵqە6ngV'Ѵ-%}jV ,(Y|Gc5]H}=V= a޼7VHGr[2BN,iVo̻(Wv[GAE"Z\$/o=ZZ6,9MRFX7K7D=DV<7,n`u+5ᜱeN}y2vq `,5mEybmyu3Sϫw*\atTlĬU{O7$2E 0X){DvW*AokioKÉ74+-4q퇣?B_4tPh=K>:Өq{gw6$q \3Ɋ,7>>_^.厈7,eR*K2!딠'춆ֈ/v< .҉YXBk5';U蕺֊p83ήt}no?8''rV@9 &/al$l-.w4?L1[wd+}-x<^r.c&@c 9@Cs*'ovg;(9" 0ߞmzz|Ga0n+/y|۝?M9ဟ `cǙ?8ۖ=`P~s=tk.9.A#ޅYdjN_.ؘ02 f:ƉI2]5 w_wȏMx/N?g&${(a u 'NϬױٖmC)<$v/vF,~g%|m_R%CۢDsm` Ԓr{NHd.JN`ˑ4g7AoOgxr(pVΊJcY:|]jdv2ȶz/Is1Ke6OΊ=/F* l=/mWmOV7vtW^~q8KC t;u4뇃vkKmY*~/eU箄蒽^ۦ?.|Ep;Ng,G>9\1緝*IΠ-O9;Jϫ覽|t ڒtӻT ({\\-+?"Sr>u/+r"Ty58N)a mvЯYoq G>r2̉86o[3Wy_վb),R"^u,tK`m:6| ZV~-jjJ3l-=g hsh.GnDx\<.1#G.`j MR7L^f)% N$ňٟ]/ӽÈ+_{$u~cEV[x'7x7A|=E4M]M= x7-SMj+^HdNAf5i_.Ŏԏ^ xY-{>!xw"xYӅx`/zmV˸uY;z1{} 8PjEi _<2+Giؼ JoCB׈s9oUXpm/pAV7׫mMGYd!K%ߎ:+5aIz/@LOPe7N7IOȧ/b6@|j _?xxx%?:8=*5~yd;ˉL_"a+ķ q>QS7"\ߍ/a k[s"-n딽&tnUp%tS\bɼw¿' xDw!fy|ŇUf ߏ$E,Smpߋ_Ahd>M?$i1 vOVq֓';~D`>kg)*DJǮ(04AIŵx~#DlQ%rt;SZ$Fy d{OFVNf"_j1w<@Ҿω ^<w]LO|3ÀO1I#R; OQ?xjEγV?A~o 1ylN|`L5&i?>F-svܗl5P*W,҉רcvZm@c|5˕XEDJ~Y/o^Dk wiR?B*"/iQ={I\| ^٪w h9ي_3X!{؟J{ı5ZizkI![@JX__~.z}v?ܯ9q0-玲ߡxDʱyo""ztm(ox+BiOԧ%^_o j%)&xf02q#VHYjP1g>OiQ}Ke_kn1v!Ha!ߴP֙wwnYr܃$IO,ލ:(9WYr 2WVae'AxU^+V|d+4zI:zG1P'y|N #ۍP0$/(OXՀ`w7ZpיXb_aj?bfa:'uӑ igzw!? CZo q fR/1-{} Ǒ_*_/ʅD;|R,nP? oQsNJ̎xڌ&HE<*m1xF^\]|^ӧ\Ofx-#sE >%O>LGAAG (!N׊hϱh-->aUbdÀFᅼ’ǏNel24|;!snXbG4֊ms<{{N[QррON6C 2g~~ N}cdgӒ_a4o0o1jodO::]u\ z!3UYv\Aw(6~A_$ +܊ :+7p%rU%zyBX[[q(k`ǪBn}4D燅my?+qwV.ek,+ ??eğo SMOV'yGr\yE=Gx|$;Ǟ^!祝S} sIlUu.Y."v|ޣs ^3sƟ&DI_M[kT `bBa4h%j+&& ӴLm=o̽3?D!}П~S1 Dž O ';_H/N^?Ղq3HAc'*wW C S㚃 F/1?vXɐ^qm [|7lT>?9΍Ľo >x 7KT93=K<= OGod$P=T7oozƇoooxO|l 6K7O"x(Dq}΋'K<Djog>S |.3&;8 dmǑ9Iv1p_jgyJbhaQG8qtldcc1c8?Nc-%q8?8* q&G|q`%G`SF<8;-6=  ?V [/~xpW =_'8;o&n~Q৉o!^x#h?O%4#FEIX#Ȟ Nuy?b8oօD?.!Jb;ۃJ᪱G9%y^Q؎!h͔:9י[b2̅6᫡jhcb6tĶlmPj'Sh IiIe`s k!'/;ǜg+PjA%= +uqcd'J3Y,֟eY3R2[Zcٱ7;7騿R#lVvKuc5lg^ CH޴ihTks'*3d m?%{ɋF5m+ '<>R/' vLEF?\A@b*9_.菓NA_O _D DKxxgRBc$Xg)䯣qljHI74wV8CA_G5O!;{B"Y'ʔ5s vQA!]X=?8gyr1ev~aC('?*K/DhL|}+=}2?MFŇ~  OW k[/N|3f+nS/&)A,\dۺtk&Vv=s'e}q׼i~QSwu)eJ >e`w,z;}2~'Ὦs]Ł>{w~=aktgC3"$_3/W֯_ǚ>ަepW7eQ_46fv&|vm#ujlW{BǍW~:AP}6վu^>]zOUո#m#A~{*>?+j&5M9a[,C,q\ xU$tPhFL0`` vܖFi:MA?BPTA-{:̈bx $bd} " su$H_sU Xoj4izn{jTlbta$j;zv*~Bc(<[ׂYp.(4NZIy87#T:Cm _Ny.;:f; uz oN3mA`hyVI̴J.d,2ʦvj(Bz׌B9RUBfo|3YkU:!f%0NĘa&|~[^WOq(Wy14DDIDr+'s Ol/B4cnLl.|s-0BSb)$';hKלW/H-? cj;Y[sX})wV \%hIO ÀdO >G*{LH:.mio700KbBRJЕyWb ^&4 MKbjK HI_1YHSN`@AV}+~z-.H߉ZJRsIS4c*ԢHtۖ"?Ʉɕ|8𲋺 b1QxC7f[C[G T r_M. h0qG@JSPk=ezRHfd6U&UΠRm4F,'G2Q|%`q!a;r \Z  #=iЄKrVaPT Få&|I=8qi3tGN-P3%\ASb O:Ch 'zEZoA%R*`v4.SG+StTJ4Ҥ'qn:Z˶[E`vX KP4Nl JYEHӎ4Md\c"T&R X%;zVV2GjY' su54bJYBdi\T'mmQI(xԉ{:QPv k7k-!:m AH$XPUXF ,Xg KŭEJ­[KjS҅o$Ve6|ΰ4k/DR"w; ˙ذ\Jp#L \c*CJ\8b?k/bxoR&$c5C)Z|q$LH8A 0d~" w>-MWVܕάp6f?9lZcjZrcΠFڰ24C!Cf ƸhJ'!+yiC4ͯ=)pf ?i@'U5ޠN ?AMs/}a8"SSQ-rx\jCt"fP&>;ZtW*3>/j &)A+Ι`9(+.Qu'WjD^t315N_0uJ.o{ ~pq;M6)JO#{pcvgrӺ艇{[x?i_aJwO[Wy]|lfxopqw<~%l:l*[Y+G-ڿt9r][cWT;x51|V>[Hm؋|Pq>ր.6Mg{^!<~1'=U_i+sVad*6'fV{Uqbuʋ.gkW<>*bdIw=w#+l9cmNw':@e]ek{W.?/y6>ݫt[!RUp - ~+ V(Su|$PUmA|٪\j(;yuyvƓE>۬mWy7)gCM=xX4 ;Κryo?\ub8>{|`N7q7o̶p",B@w70->*gK"ZDCU|n9jX -C.gF&a<"߇~щ1]q)Gpy=> m^A|K*˹{؊{W8 3{3r[탸k ~;8߮foLW.OYZUx}︗}jśO<]$_-|vq0/oat1FLg4BsVS?2 Y{ v_8a=0aJحfxRwF> M x-ZF_x9mw00 gKӨcQroax')dx:J?ȜH?LR# q]`xDڛ?R?|Hl)~=8߬Ucp3Ɍ! xVF 7r~T}W1O {/&Ә= S)"5`vˁ%!j6rx;pkd[7`߇]:}M VXɋ#k82׮zf#Fo]FT6UgH= ó2diNg*]|;WA>'dRgMG1p W3|&W1|^a*.W~VqlϗkÀa( vSSMӯ5bN6i%tBLq wE~ ) x;g s0ć˨(zGMg)cz5?_w5`WAٔDu\~~~Nqf`p*M,~m=Vv Q욉$0KsNК/t{9A_GpOe( V+co4e ? L4.. w>wO1}f< L_S鲁QײB0,W)7V{*"gpY239 .>Y|Uj%~IUgiv]WjMgu#\LOr(Gk\̊1}!#. 1/)}a>ٜh}߹\.xUb|1Nӣ@/7,:2!W ~-rO(lrTTEoO0\Ƥq.A.rY\"1p~D)5%L.vmgyCQs/!-%(̯7pum|Dz,;y[Y*=3\ܔG=Î{?8?pqSzr~9A^YC#N/sqR؋guY(󿉓{-Svr1~U?㐏+_~e+rySybdz&FS>Ws0/VZ+eGCbo_C?Sݗ.'ZOc~E%#bCoa(}1.1mޏ)ɜ]1iwzy\ڃ?UcYFU§n?;)Ľ yl%Yыq3eOow98*ls1bcv||FS10~0~0~Wx+dzW"AXVc#_Gcr4ZnqF53ߛ=  ?<| ~"~`%~{Kw`Hkm#@o<$hπ{`oȞdπɥ]V_:e ><Zs,-m gv=2~p %>o9|ç9 |=n!ؤA{ji&⿖aeH ' WB.0o ǛH|[{~PLK̯]NO8R6~zKςrTP@(seJw f ds9b6mK^X #R49n& 6[v Ww(~oc#{i2mdAg6l:]\o'ނ*yţ=UMv j|ۉB#0%Pꢀ𷏠bg:+AՅPi8K 'A }3.%K΀_F:A UPytxܖ e"f&BC^FEA^RTP+(Ђx5ZJxQ?{KYur~y{PY"ݎh/Q+>ګ?;ɷr7'Ps'a߃edM4܈?W𷱬g)O=ҤV _7O8^#r:fxO38)q?y_G|g`}b  ~ n -^N8I 5_cMo1QzShb4-3w|71 T1xg\TYI* 1)gMrMh51Օssl=gyGEzkrY[^UnA8;7[bi\mQ-vz ~гzTk9%G=^ڡGjzH33eY׈˥~A`L W<ۢrWA82fvLvUa"cqLBcA㜴#4a#<#ؘ1cGF] 3P7/vJ bWhgDXB53hi`tf𷌻m3(f(fla߷ӎ 1a!1nǤ׿ Mi7B?)%|!Cxo fog)z\,|/+C>K?OA*|\S,|ptٯ-"R8}8qX--// y$v%3Cx_'<~"ዅ>_X/YFsH|_>y_.;b;8_.S' {![ ~\Mxq-S u"^~8b*ۣ"L ½?./ .S"0įM}" IsC"^ūOt{DS""~+RE|՗; x>;> k3Rg{;FY*@[]k CDcZܙ'"\īrq M?$B'z?H% %aܔ;M:qlk;OÇAˑC9,IԱY] {O$WӋȟO%?/&;>sx)y*nnp/#:Hg\5+K߆?H~5{߂o 7FYMo"Wɧ[w? K 2+q9B|'-6kqh7"O%ς'1v6pJ>~ܧnhoVۑד+#]U\MGT'H#LGaH92u_<1yd9xy9E,sA?<~/ ȝ8 G9 s af?''y"y }QS-ʩ/Or_`(ʝF3 ͗8Mc 'CCsu߱OДoB 4vhİ%*Eߴu|$CXr;fX? .bc)|55/]i6j=| VD]S;נVCм(1R~OM o؝cz˿dX >A/߶ 4oJ?US/ 0ECQUS9{cG^!Ug9W5 ðm\{l'X.o#w(C-Ln֔?P~n|#C˱)i;4Ԕ_f(Hi$3P~RCh.SS|+_lډP3j{ cmZ7XshX{ךZ&9x-<ҍ^{Wh^N .a<7evKEktwr4v4agvHN^[dwحf\x(413clfߌfwI oՆ4d:3Zĥ*jQRG̿l|O>py_O<]tpv{-~D_>6_Vdܪ}vM;ѱ;yHƽ-O4//|=`]}n>ٵ wqU?]JUgTgiSG7<|zw /h'/)9;WKs vpZo<3[[;Gi/&\y[Fhm}4Fv;׮ݻϿKi݃69tki<;[6=urړ~Ы_铭8Jk/21?/<Բ(U<桩?h#C >bi}iO끽+_<+VEt+u՞#_Sc]EX[ te4n$HPڡfLBaRPMfh"NPFW;YS#*ή;b@XҼB@`⃇ !؂${G4M s:'U_믦x.O5:&wѣfQsvP& :]bN*3ƇkFUgm}GZv&R>d\\Ae5=1s^qܽKѕ̏~f z#1p?f}NYp.u.Y,t{c+mD>*[*vt,:Ҵ ]}u{]ʋ*=nǵzC(p(=PA0W3wf:|:Jdm R)))X?&ݘW3# ,n a0E)ff7XVVqy#ie4׮K b!7Q0QM &Q »ވǧU-Q!B$(mUgR5e?Nd-Q7i:աipxhi :43\MYGlgdm>&fvU ?DbG LO |;]i+cř,wZ/ E񍐎N;_o!;I+Yl.^޾2(SXH/4 kIZ-8= ~0O%%rmA@ՇU &CT9{Bq2Xk9\WAƮ'TKެ@9hzP@4矔'ȟHˉd>,%`!3;Y{uTxMP_$wRhD8nYde\j eg˱:;EF$8Y|_tMs)!&%,RAԾ  Lep-` oB!HJhD0 P4AX`Y_`rC@PPΪLmB33٩Άn[nCU7r Ȋi*nP@ۦ²$u7OVC=Ia e?^0e?ؒ)eåCt:F:-eY9PvIJVC+\R5H*Y.XE[8+K-\XiD^w%6H)ˡv( --ߠ{Gf(m3_E m~"?%XingageZhA\u -Jh Wc b` 3ԅPD&g-T'Ew{pQAzx|[;!,$yj[ٶ ]QJb~!qWį%m,+RVȽW( -XE_~F(sg"lt@d'p'o9Ӓ5zԑ<B_yRt5^(*h8l)iqWy+94 rMcªFhi퇯g퇖y' \ꖠqKcIYze.yMlCD֒쪴I[׬p*rZ_ؓJlGduJ{eHhSK[\zX w/^FGVK` zVF{hlܡ쐼7x5ʵ#5[3{T[~EEͽr_'PWvv=ˠP"ȡUz "Y  -x+;qpI[V hÕʺU.7גF#rtDXFC L ͩl2^n`ݑDLB*lJfC76ж ~ow¦|fn"tMJ;#ƴ3uÑ.PU+$a j$2! hGt(h&e_`3sZ!m]-6 )6BOvЕӽVב'IhWDu6eqd!? &KO.0H9݂m-ز$XI/v!W\Q?.G@a}=]@Ű9knDdDɮ5g=_WG]tQ퐠S>ۻR1F[ ̶ͺZd$#__;ZGh}vMK,YozQjh +GJ犧JbP.m3k_h7Qԍ}ޫ7j])uU_QGoeE:2^1B1̺"wE(- |@ vA<%22ܟ;[w?`Q^uZ'QWR*dMyJ wn,ޢ\]7wsy]e~wW)en0w\asteuYVֲ"gS*B$* $a> >9Sws!1TF@:đz 6R?kӵNU ǏǏǏ_ȟ2e5M`hNߜR `gɔ q_w{)'?d8C,ŷmkj)~穮DuR8L]gFJ}Qpb$2H ⽠'FQ0!Ge?}lf@1&F/ĹHxoC)t]GQNMmhLr)>tLON<❀6QC ^tЅ1D}bj(F蛳cdfz"/ zsƒQK8m}+w31"gߥLN(~Np%g%_fp)?MdR<9gEy z 2w$/(~+?M1:ü5})gb&끧Πy5T-} Ca0AP_PfDc n{(>y<{!߇Þ[h:i¸G# /c#_@ 7q~]j c&6b 92&qL{~調e.}v9iiw&b.c _k.#PHǑ.FHrzk%0 re}) QS}!>fxN23V 3⯢z02ìw~a< =f͔*_vBӗ|i7>D0z x2)B-3L Ƀ{?w=,d3;Ms|i(bhLT SŔ/ok,3 :hW[coejg]iNQS 7N\4s cLtl9gv.ޠGilbd8z1tPW ~mo>IW&{N-NhL 0Z~Cb87؃\䪙 q֢Ʒѧ0vi[r}kvY;H>G>VNOIQ1vO1u;og=גVY=u֫37mgcFL4Gr?#FlZ7LiŮ3qZsG[{럖W>6N/Ǚ76N<+8ᅘ:z!WX3qZ`3$v++"=;{zeWu" q[H1A81} ?F Ũ7 N1-b{/G c}Gm+j_?k,<_3~bޝww]t 81A&rS5^!~7),;^G{>ʏl1}"uR Uw>td$ ދÓ^bΐapxZGw˃_Jdh| 3\_';P 偁AjI`d'gsAz>_ %)|ɨZ- ap'K+cg@/'l "$h|aaLxx ,I >rRz>Aa;9H}ܣ _ߍx $?Nwpx,c>E֨ q$;"3w0Ehf~ad1?Gy;\nsh6bc3gqbt6619;rؽr3YS<01-wU8݂JcxJE$}p%:b_bz0L-EO(N'@~IL&'.yi"Sh9/%PMs9@#T ۣ{@3Lc7xC5!{΄m # ۵3BO7.qM'5pÇqx&p<p7q.ot-gsB7pV8KWxsWq8:'T)2$I>Gg}8"(oAP P<>2d^=427?=B!q+.'Ů Ϧhv>?LC1WdZO LTRt&ű-yQ'Q7(7^I}B׳} !5j6'RsZBԗ]v?B˙܏=U)O.ʼnU2qs8>U)N8|%߃(> DR~'QFUైG¯O@&"~5*}kㅐpHuFϮWj$^izdHv29j 8A!|Ⓛ c&[8#x⇀! ?g!>lĻE%Hv{8[xp'x? Yij!>7 F+Ej d1UĉqҏvخavM_l횔۵خk6 >ClSc:Z/4خg`/xĉupl/{خɍvu2pl&/خ?‡v}sl׀c^5YC خu t|lnخsa܈8Y؂Uˁ7"𝈧8ʨ'^GC d9SGOB:E#ם'8Qn@afBw Oq}p|:N:'Yl( M-6ߩc<8>73œj,sUPhAiOs7\]FRNg'Wt\95VJ)+VU0s%fu: PRZpbO귕*MCu]: hJ8J&igq;(Mu ʞOʺ!PV!Yx`䤯pzIOE82>a[TA8N'=#$0 xM.}Q/x^dgsM̋/1C7?]}k?TsҮKF-/6akggy9Wg܊K{߾;u׷\- --˟)ȝ٭?ܰͽ[=+zдߎ9[¡,ݑ2ʁʭ77}⅚'}׽xĊCۧߟ9R1&齹Ͼzmzꄽ9o7vcr]ѓ6]|b#~qmI5 Pem1\.ÓTK־'l-Qx=wj~>#^+{$-ڌo=g21=ԕxt :iNKZ׳g:m&'H+l*:xpejq9oĉEOBuOKC~uUmuuFD]O\k?:JKgI? 6oc}6_9ïC˾}=/vNv usdz] %{mފgk[ tE\CL A!\1!$@p%0d:ɐ0GLP# kAUW%B*!, jK}Kׯ~2k5%/Sbc0KW^z#rz;M2t ҧ(ݛQ,-;gF+{;׍w+w3'Ml_mU:V$]yKWFw>R" SiƳϦ4J%T,))o)P~TU #V*c㨩Ure__#.rFaImvOZ ::=2voz8'/J`m4ofn19uH`zE*Doh4,Qr/nv9 WEtgNaON˚ϱZ S #hg@L6n*DAj|*0Z DCqVG?l8=f M\ }t/H!m{NpX,M+Y1U~g47L.ɓߛ}s53[/9vKX\y\ sn2m`?z9!MzzҬr俞aY}Kh,49{_Ӽwf)kϮs>9T6d3;CIK.`xg! C].N:;n"d;];RKj(R~`Q=~OݔڧOw}<ƮΆ?NF ~DtaO8ܘ\sԋ}w<0 74kSC7uoi)F7M܉~L-DjK-mx''4!<iP> uFMp i/&|;?'8w۞ x7E@_< ? i\I p^K6NDx ,L׻32o} \if 9dF3'oBx;_"|c_nd:oT/7fonk/ wcxm|ԡE~* B&N6!u`]cdzz> `LwPMQp:3P'øM3n"MQ[X]5bl8PT-_ 6tlXm0Y_(ԛmfø9^z0tGNyFC-]kQA$!xA3,'q> gߧAl-Y >A4]I}{'|J&c雄{#M//)eB{!MaCwNܟey3"ݫt(BT??x5 oL} H1dNcrpě˶?4 MxJƗuO`ؕd979>p=1[6M\?o~FCNPX79n[Z4k4@pMºCDC'^I7GBa\P\%7Ő0탉˘穀|_≾XӽR3 98m}U:cڗ:l^DWP>D;ƤɁ~ݫ FfygspޅIPOH=a9_?ͽ2kw tǐ~B0Y{X8 䟯O: fq,5C= }&TNy.]p-2];}{ގէd7?~!'_Vգf֏ 󕭙J kP8ِ;l=@ga0)?P?qc+53 ?mQoW*c nu$%,]#ӱL?uLiﮞ@ɀkWhly+c>s]ЯO5SZ #=ӹ?9CTA:8ގzN9ůi|=JrJ%(+0QؗHߍ$¹4)ĕnwuA!.^Es/ۑ&χ)]y!K>F%}$==>S#= 9}q z:&fM!MQ8 g# >iKnc | ‡ŝ D@SH4H?B{Wk|!o{g/Ml&!zX@zY3݀OrkK| _=:J|]%ZGrgWpwܟ|=C{yo2ޖ>8XB5ӷaBmxg@lH|~ُN)Gsoӳ 1So#NFL̈́_a> B1n]ЙSdbc+*ER&E}ܤeewxD1D6fRdYаZL-9p1VC.{2Ywrzt=$;py(;ݗ?ߑSN BH?NorTO'TU~ֈFtD<d >x ENoGTxm!=;OKtǻ*9=݂ӷӳ+ӳONU8=kpN_,NʣT9W'g?{8=ہsYϷT6Q T..G<\lEt;fj'bqb٭)'-Ckp#jjZ-@RroG`3azD7Pfts?o[ट0YF>Pٓ'l開aV'c EePf;٢' ܤlGkRSgƺ=|{xߑ0 ?sG ҳ u-aUAod!]* P8o^T>J RrpxCU3xMiqe o\y=|_͞>7k:MCxgW &NZ-+U?ǿB;U_Mſ(*s8F~LW /G@BUq =F>6Q~Wس~<~vs~F w?od1HO!^]b|m? O?{?FI%&^~?Cw)@:Vg$uҔPT?W7Zk8$KSg;{y_mEGW9?Ržo>gǍ׮ n~ ׄh׾MEZw_piĀ@Lc}Ȋ,nx\Oct\аFfRltN?ۨgš?H{x}"*k 郄sN\=ެ:Z k7|zj_w68kc8?w;|4rCv\.7+.ǦO>ûX􃮧st;̌sڟ79tf3U{-8~3^wgxmǷ*Vi5'-)ptW옶4#0 nt3lm5Әs"}MDEMoӉ6(T#54osStЙ.12n|v`_ֹo]q3G=;ìYVJlkʾ9wUb{G >#Ws̶kvWܞrV,w3#>#\]EZOr8SvoZxV$Y%\iT=Yz|rۑoӥ W<Cc'5\]m9lOWݟ=0i-ҿ2hKeǚ#NXŽoxk~`栳ksT=ꔮ,yVͰ"/:ڒAm͵S7;?g!WC\ xU$@$RaaR.Ј7n7j$ץQ]:4q}jGߦ$IʗC?l+:P=:M4TV[+^f"vȡ7UNgv+yY.k*{ʨ.Q!ACF&3Yao?OC4"dn"IcOH?Zcbs؛+9E"sv--- ţyt)p|Ky@* By!fZ.??y, y%h\MDR J8J9%6[9jnɡl֜e\WjȾQWrANyrh &`KhR9ҒS嶥c S;Xa#{*?d%W%Qv ' wsyYd|gVRk'[났ȃ%YۤJ5&WdCQգ2vL-<̂x7 XϪͬ{,{I s`L"Y'٠v޴.3OìwtݸH t;uhhv⩳%=mbxQ2Po7_Y$^y\WsOcrƉrFl#TQ΍*`vͨF y8 |JޫiŅ,HwI*P._qiɴgNW|ŝRy9AK:]Jj' I`PJ1A%e|^,@Yr_ KO? 渧I ѧ(wKg)@]ac3_sZ+a+լOM)٬{f'C4u4pGf%Qұzn'X])ovM+,^?R>I6|Y@aIlN/Fn;#5$ᳬᇈi~*G`V78kAt<0%V#>{>ŭ8*"V^vy>m’S ,pMwL :}1bYG{c?ЋŬ-QJ\:b9&uLOS;fawy#]MW?Q)V=zu-|P ~ b?roN}Zԧ+C dL;A3#^rjs8XG-Bsx=Gd]¯_>17}.}&8a,qY\ƚVǹ%n1ZtjX Y;8,cxOXKqO'ɮ+OQ~Q\?1vzg/6z.A.c)?@vkpDv߮/7b;?%UwOE@wf8c]ygYj.>踍ߡ=అ,ZNU;g 96Hlw Vg,uS\gVpoP *XNϛˆ]Ӈ}=1"_jgh#/qnv/ o/xd"heNU hoߪ&U29 7i}(4BBp6m{ri`4j:x}`#FG_Ry94أf M&}@lO4԰e(wx}cqw fF|𫉅AnJ KLį/i=+t x+7M ؿ p-̈́.][@̾qv2iser97 rF#xIo M&mM\VZm>D"D{qVQⷡ7?,^]A|YU&=П=coEfu݈ r܊3ksaɼNsޟ7# ϓ9ѫsr>\܃< |ċo9>=7GVw/>OCK_wíb]n =pڼ渥6O6qݴ}$y~s''=J׷/v_ nL#{Ix 6,Oi/M8>8' fӍKeJA;_~%Mėotۯx?#>cvxFxp.}d~~3 ݽψ tHؐB"rD^Ƣ?#]'o z{+qGj('rD+?@oHr cHwWEK:0x~<#(.ı$δVTԣ{}R?-B~P0??x_IrAO@"WIJt7qev  kؼ _ aH$|HkңQ=Fb/Q0kQ-#$v|[̑c6 yFkWǙ$Ozۋ牜#"Yobmt`/BǷG _g|/_Qb,o6? }u7䵰s럾m2S??Waz? ~ʷ`=~4c_Cddx8N'=f"DC@CiM3ǠnDh~|Ϡ >Z_{^B/(-( A Gz>/}=dr>%y{z9F~9`~F?7^EۄD758q-M$WDO'Ċkjn1, 192pc%E@dw>([$.JϬ-% VtW~vI#0;Xa`2-m>GoE,h}k!n/>Uʽ-&rCYy߃D*I`,¾.LQۓ]/]e]wB'H׃2_狀w9?U! ? 1 Gp ⥀!^}`2&6#8>%?y~ɈY\f11]:,o,@,ףoޫzzڛN1fsQ\\keƍ 3eRwjmZwdTAɥH1@g4//k{|Yc6_vةgNQ'_,;^)bGb4g8B"h ?- O!f_= 7d-[YN;XoB-GYPl؋bi>b$%ZH]$^Q9=}|A>ZA?̡O<7-WA's9W+ NKM~Az?+ُ" 5>l |/4c4QRD<|GKxQ+I\u*_v^ŭkt]7n߳; yT-7$IRĸ~|=e8n(nbaOwK$X4׶sҟD<%y2z̾wsq;>2y&_&&ɘ_u܆e= tgؚ%m~4o&A}e$q&*Ӝ3{::9CۡѼWGug6 ׄ<7Ћ$j `zz!;4u1{.3^QD;i}'O"e hFt"9KLoRxrN_WkOMȭ1,J^ hzF@Z|"ʺg_F'Ǣ5x 듮5Fѣnm}ZN a|/&PKłpB3~ҝBGsGb* sd>؋zbn<7-lt6kq˵'Z_&}}Q.EN "ycBNob͆ 佨_ZV㇀Iz7,vn$d+] ÀgM$MdOj$hǀ]ٹGU\n^PBI1 E|D6u3X yfl<솇JPB RJXZڦ H("m}3{3=3g̝{ϊ6f1ޯt0QU*ofhYR^.n/{Iv2!#zakZ̃YLD#wC 25 פ0Y[)uvh  .gqfd6)!#뿦K$p^$tF玮ıY2a^%W(ÿ_SEҾk\B/5l^Kn$[E^喡i}:'~w CA2͌hIM=3eVHzt7%e-зQͲ mq]}'y~/VVĕSrk)a?/=tF7/(j?=2J͸.~d m$N?uߝLl178AGvΝMѴ(D(lr|}pA8+밡75ƳsxUlF[xE/up~\OE/wYy㙬C 7@7ˉ5F[' sOZi/_fk=iNr >IF'.UCC$%eZ/-cJ<9 nNpBs}`Jض8P;_e^?M?"X2]Q /0RoH\ͫW@^<[}R4'y& Јhlg\h S,؆FHtxվ0_ K[!7:lm Q{)mq~E6=~!?Ԥ%" IL!7NQpx?c]o|>Ǡ<)^yЛ^ 8bgV#k1 _ |tʞPuC_4KЯ7& .\qU?1~JL'N;ׅ*p7Pہ0~?rK,Wng|1 a~o]woa /^> 8a5?wAZΣH@0OgX(!6K2c.G3_8Ay*vhҟƼq;oo|_*x9vB~Pb_+|Qc Ue{*CG* >CK|PunѡNA?Q*̊.X ^ ި C97x1dL?`ghOyeQ5icW xEEUPHI:1 /;J'b0ivL-R /̯cPtJMqd0[N3=Lg%Pግn,,Q|bp-⨾l0{\<Jn.3D&~Ovz\ZeO7Wq¥ԲY\X `OE7 aH3zib<0mf6Δ¶8C&ceNV-xf֒т0d 2;qfcY!,LSfM]p *̽s+*oXșMYSv;`x\p7/>WN'~B$CEL >]N hI:9$D^zq2^/zTȣuJ'Ch EO#|4?o)ҹHc fNZBtA4s‹ ?N8m'N8mIr?6ҵ̤(O@gM IL_$!EYi=~&3K6;\Ur[OlwN7?Dx+?U(#| gFsy| ˹p/N: zK I~O"%xRNq%$kf:<8>?Ny$"f]ôxs2S%z+q1H h{CrE>y>kG<-iϧDu{2Cs? | 㗀;{b|݌>c3< (s3~4ٌ^REo^Iedhas/`^1 ƛ3.Ռ_xGX&ƏBlnFE#8ޯCk7y}ޯ !<~fy~va>_θ~}¼_0׸~}¼_nƷ@%~8׍y #y$ޯہ~Lw5?~ :5K~=8׸_ya __8׍yk|u7[w0?2㽀f7W >o|v͌ ?2n~-'?)€wqlc| Ǐo.2ex-z7@'΄~m{0~x_/7pɸ矌'xGv3J8t-e1/8dNsD.[-#KuE}xgaA: L !lg_0S.qw3<]rg8Og#2q^d^Z>n'~i13pZ>>݄{SDx!S =WV3'QUi}A8-7lRN8-Li E8-77VJ&9~P@8-7t*HvYE:w8c)e^Gؿ ^+fL#ۑ CA_ i|搻ojG2 /$hNuhP3}jlENeedr[8@`Ϝ}oquOD^41.%Z$ * Ṱt1'$U˽M*iSǚPI^L{r{51ru/8.Pz'2߮_~K6 ;@?rC8J&ǂZkS ;]i'p"bB?zy^t!Eq; 4 ?e3hkƒσWty),J~t8//C|'<|NjV~g ~<8Úy/:S֟F48ߪПy՟aBnhc /W?j__W $GI{|,] <oreZK#_ޠ)q|mwW_ :Mן *= F2=1YxB~mY i &蟫o XDbfx{i0tGUIeM9g;/?90RmJ]EP;asZ$u_WNdZ6X-NΎI ,~["(fɮ.b ssDv[ !5W2+l.iZ~i;O_iik8}׼ ?q%g|EgC^sW_2snBoӟ{WsfщOoz;e峹צ\|Ҕ/_oNLo#׮yr𿧼qzaG~sxGŀ6Z|fIk ?:+T/{=в}szζ>ԒC]5v4wӅ?:,^KƟߵ_ci]_/ۂo9^^ضޣ~}o2ʒs~w]}v\OM>񳂖gNcCWԍg=:^SF_^6Bˬn{3G?[5/]~em׭wU!æ͙uǕa?}ovcw>ˇg}.{{oM{x̹z!\̙o;IJgVQuˑSnXMctsNg}mD}gJ*;~7W@ I7\ tSUNB-#.׊ " P9ъU) MMSʣuk ,H["2 RyXqzsཱིfY}N}l6lդ}ӮJ gg?S_<ݥ6 ]-:cGƶ挖FF~LVBO̓k?M eJONJLSYL_ѬunFؒ!tɖ~+*Vz}N.^˞kPOn`kySeڰELдB`b[9[=5|vZ<#>|F(X]~#4<-E dkgr&Ycn\[Up~Q(-Q(|l2B9ksTs'ס̃\[+(Rb-rk>RiAQ X0K6sZ62-"iR;= ,0^f7+9\B`&28ADՎ`= 7'bخ4yDgsyƋh㽙TNMͣ4uhK eYzW 2<͊H Nkk/92 O^=9YӒsTP ̀,XsZPX fY}c:ܱ$.QgF)E'ʽ9V" 9UuPU/ɯ=q|8꿙(0˚4?_2s_2PYB`TE0uC˙: ]O(e" mU#ruԻ.,u w*%Q Km[9_׮NU*N:f8*2-i㰫ʬ3ͬk 1sGX` NV"[ Q؂yӤ?Գ`@H j5hj h ^VgXs]!Y+? ԱY­cxh +GKG*FٴѾ8Sf1> W) GY촄4_خTHϤm| pel#ߋ骞V[:;(R^(]bzeOfxx $@VF#˚d-6^nwTf%gePԄ4r7*eGlGNS= OqZrۡWp62@^daϪ/7QޡyXL[E2gzLqO17f:}a)RF/˲z,PdԲݪ"r^[O!Nm- 3-XE\3pwi,hq fe6Y ~sV l(U(ͪ pzI%t8>$ǕWr\%8-_a19 !hdpelq]r(:VN_^s;Py9lt:\C\~'voG9?_,pCS_C~#w2_ּ\@RZ2.7 /hb>solt{p9KJ&OmǮccD5?!O|뎅Ngkߗ:#{1n0!z{d1~׿Wo ~nE'( nF2{}rWY;wBYt \; %_iuZ8_6MZ.^q9=yӽ#/\xW=m-)bz7̧^-],STBL s ZK%/N6㒏4,* LmOhkQs`ܾŷ |[s}|/BZGuW=1~E2=(bfY{'#;Q"? 2Ċ)|uǀ"WCpğ|x-Z4  Z f+ f{#f׮G?nZ\,n!&2߆`^&d&iGq|&pFcsE$D[n~kyIoB # ? ~W~Bs7kb~2t׀ ؃;C|-|*+yB#= M8~Ou~"f"U{$ 2vIz1yοC) ?Cb4;o77E1yܲ@c"тYyy \SrE%F:=u2s$sTCB $.ʿXJxg!vɤ,.&!F>IgbOʑ&!tf" t;03DKxxvw][4JLy_>o[i4?H"Bd]TeJGHU]u%:و&QmzJTGɎx33W x3"~V{ydJtAp7SNw& `\:d,.G~荘f1'4sH8>ܧuĎk %4}HϋFq \&gnMsEʓ7@fGd;uO9m:r^>ur%6 {cZyx9^7/{f'iLa>be$==;t~!{Q) |q17!9x7i)9"j#3'j<sh5%<3j}|>׌1_b詧OHx)MH '3~{(\# [?| 1ϳYoPOyOWCc 0Dbː\'{ [/~4^?4@Yټ؋bi>tf$#$;$^(iy $} ap˧: K_$}6~֚%hw&ogǠH%I ~E?7FWOMCڛIX#/}Ungk˽O?]7Z}φ5O9fb--/ h[LA}^A/6{_!i4QIjw(:z1 !?%Uz s<߹)d&1 ?I⠿Oc<8Et^aI@`/\,gb%4[.)RNYm=gې5ٹWQ\|͓$%B "p ! HL <!P Æ*4 VhІ4*|@-|@K["wv{;!w̙=;{vvw\ [5ks <Lu ?lVTgiz>C~F! kS{p=̟ m>v\|?%ӊcBϗ,=ܕC)! ӷkס+OѴ_cT)[MJ1EO'"}^Oi=0M3ѼH)^o=Aю]>f3NOQzEO;ٴB^ԹH't]~=zt zHi4mh>MQ>A nFi+rVs{U_K)Ǭه_+jM=̍Gh/2ׅc'0/5@De~1e.4*R/8Zq0kڊσ3>Mns4isH ;!6;s{vA:/P.D>N_lDb 7 -nGzc'شrzϑ4-#e?ִ![{Co?o6򝑎8d֚./I#៦ǹ7=J|UZGGF#lTȧ|0 ?Kk>Yɺ{!KJJ ]JĈ!S᪔Ai$NCT+-@ yEZ%B֕IJ7c);!iI by#Y#KF$%#eFk-we+Ъd ')iF #TctU?(ev}OF$y|biR ؓ .s x_!L^$\Bkvx7_6U}iVc _ `[ }Xτ+ >ZS|#|oV ~L?Sh\7 _k |;ogBV*xoW)xW[ ϚG(xU |犡E)1z"=u9's&ч"63[T9͈s q!kԓ1>|gYjc& ӫ-˭vz)7^sL7`Md I}`SPQA>YTo!yqgdF1e,;O\yJJ+]ؑ2g]V'{D tVTo)7zFGJi"GKܮЧ='kvw=ɤD "_Fh|^g!|,w@>nHxN$gz|E𩄿@Ks ·Dۄ?B'6tC7T‹EK `]S; tsyO'| yo!<?NxTS ,'s=tw*pj^Ae*YNN7%غZ~l7,z&rnDuiC!?Nu*É|&D8m,' I? 9i j'sHshsũydB{/2w hOul% ޅ9[7ƻ!wE2+8ߢ?>n!Ejvs}n s yn7?؟ 6<4pnBn1@H`<!)Ɍ׃cMƯOf|&4灧`&lg e2jtV9[ gLgvuG@tfSrCfI TeȋrFjs =`0qfiY56όX'wP$wpF6r)ޔ>s%Sez12 7<UȐnff@˿3 IPZEvA*OKi9U,x]}0>#)Sj=9UEmjXZ 8 'vM3H-?lr[p[7tjutOzkdDGdh۟#rӴkoPb*oΓ~ ";װ67"/rͪ4hMF(k6{7 |= Qav~o$g[vA۹;vBhԤzt8f1ᘡ؆W?nnrp-Μ#9[Έc /$ sAOpJi8-rr=?09P ٖP_w ʬAvA];.6DA ҀgI`{ӷgVNn=:gw 3ߒY %̒@ + d#z6g4hXcvĦ٢=lHBǺx;T\<ylMFFŽ$ߎ0$k f}iW KXo.p00.*I~<#B0xo*R[e{ EPOp/s R' Av\As'ۘe'}BwXwAJ \g6SqC(< 6t7B;g~>7cW?Թ N(q|r剥yQ\@i0Pt.mM]qXz_tn8/Ȯ~OwP7϶gPA<,:UL=PwagWї-H^xڤ]kPz A x 7^8o.ǟpa`R&wA>L3%6T]0x(`]?IkC?[2GjG+a- 蝘~Uj7의xSs#=~JA?|EvF>GyevGOwSe}m{ H7qK{q˹$f44 rSsv8l<#Ή-;Pqȿ50Q~=~=~=~=!<_ׯgꚕGmZ氷\`/{"n w/>U9tĭoklk_0g6Yx5W^x5lkW#^K8Հ ѱ^{L,KKY`g⭀G|TO,.YKg|O_#fCp2_`u_#m;~_wwF p7|HGQvB5}.#YgĬm.E̞" 9> &+[|$M4cbNa%޴j9é1fґw(ڌ:7 >x3"fr6Z"f.??Ӕ۷eOob`7u k~E,/羥K&`{8ηEBkm=5Y;|>+A2⅀dsWs?_ #i x%ۇM/'LPξux+5pҰyD|Au{57p0͈w]I䃄gDWxɋw_vތ pz%y/"w)IHS Iλy5GI&B y7 ;2_I~$~~ػj,/P_I*ś{ u1堞&7|L" 8qܿ_@W#_|uZJt!֙3漖GzvugA! x A0'\|!ǐ#EX{ emy6ҦK2 Hha~;q-72m:WwwˠCAIl._فo+`Gw7c 5*xc'Fb<]cExS Gfz | ?Dz٤#o! b\A2A;Î sG%9_1{>@?FxOil`ɏe{SgTWQwf ѥqZ "pu8?Yi "~ D.:}mze~ > m Lb-$bH知qRHSIP)=CDyrL_h}a0 }YOS$~_'-3_'DתU&vH%bǥu G랫%Ex݋zT=KmC7splՊ8U8zkZ9>/nU)OԫEr>ۦOI@.'m'/+Tз?j`YbV!fk:"ft#fȿ%و1H̏WiI]!~KY|O188&WǮEr*_!wvz1KC)iټ`si.EnyH~ 9JXa1N"u$?ƻ075R\J}}]wzzңg&v"դ~b~<Uf(5'l߹-Cq"~dz8'R3gU1~vz@%q\]UF8-}W0hɒU~OKSy aϋH72&ty^#G=F{c*o) ??M_bL ohoM ?:X-Rfz艶#c?Q_PvSv"v8KN]qW> m/UTᧈϹUKWjwOzv7*iB/^;-N^#EjE{=_38퉶ϯU}Mr4,-VX|1qZi>Ijy:L|opBoH@ANh;8K|< ~)}b/][`=жm_`"x>|{XF$ZKO =MmO"^*kGY,oENzǶZzJW"&.Z;NY=onZ(NΗ%"y fɗ:Y w]نِyn-wl+Ɲi=O~>/niY5my 8`&y,?QӮ@?_mlغJO<Wzud|9ù zG4ZF0iڟ?N״?ShnLs#B.WԑS}jkW:ή!eB> -]M}b.օ,ͲXW>;"#v"27Yձo1$d7kaʯ~ۂKqihg<.V;^? k+j C< 3s>'/߷P~żlC;Xd!Oi/n͸kȐ_=!x/DVgu_";Q>WCI^'آ0>sR<s%y>O֣,xיgX KQdGT ʐg"VgH\=|-`qB^gP] Hj;m-WX7ۙ͂|g!n!g!BB^n!?a!gU4/9-=,N yB~BBBB~B~B_l!Ǎor |[@.  t&bYҫG8\675`%(ЫG7Ze iE] SN r0b%. p)"Ŕ+XΘ2GQ%6SszP@Xwz\źP*7aX {CXU16M䭸[EvdzO;ibvښ7y.i#,y_}ʸ膮IL9S~U1wC#b8yGvv>PQUyof@C"ơϬ!9Ԫ 0"̴pih5-װpO0UR7-Ze6LPwU4RWeם;o~{tϙ}޻{srYKqY+֝K||T8_얧(ߎx"!n@ )"xшG!u!ıumr zQOLēGqFu9<'u#͟*Ovr2|x3p_r9Ǵ4?qx42;2C|?"\ָq|R}n;' A?~@;1{(Io@2\yMp$ ;Gǫo~Q `PzA&(J89mew)") '!(?H`-}-qny+]OO?7>> G7}_,K_A@Ӊ տ#( 4w{em$'#X s.Ȉ_~w$zFCrOV@T@k$wT?ZdrnDS%v@?w~@Ϲ}CQЯ@}@?SA +,T^_@AEv$D#q\Ay%?P]q4⽋=m#zb6GJoQosJ.T|3#w coyˣT 7U%qc"F%3gTjX{eYcM`k,@툌eEU\M?5+ߊ|zkJ.=,-A%|߹vMFwеڙeY]{:wսe6cOUXlӵA^KƦ?ӹگaogz\¾[AO_stKK.7V3[-;5nq䫍;ò:?s6K}9˼L 혐i7]?svyLz4S*OYVÿ7=/ͯl_nwf۪ejIKn׮Ĭl+zqDk윓unׂ!WOxQ6p`@^|?O}s%/r.~t#|nTv9%K텳N0-؀W'{6^>t3}"oS_6եf=z.++*ﳷt[ xTU$Y;/c#LоpFRr8QҦ@Bp)#;з-o{ ۳$e~ʕC?r;Z"(Qç:E\6ڝ_B<4"Y1I)Mr.|D.`n`63X7br$;}(F+n\Mّ5)Yqyup棻4)p\sscօQaL<, [ \X;J~nRT%ºWut)5)[=u^XQԘ# fC0 ÀZMv3^ahXLE<O5`1TjzYOQI[ A*JXNNDʺdэba>Z&LșH71{SiprN3^dbsl9ܬ)UM *رDx͔T\ͬoH"hh,:O jvHp vG;!.ưhaʼnw&4| )℈=6:T}p6W"N {6wO:4$k(S /V\FO''ݓ{zaeEo ؁r]_o=SLSȦrHm@?N\ulR-xL+ 9| k)640v93udN;|€I;}BÙ) MD~+tz)6J s:SK{35rt z.ا7 J:!GߑX* <[ ?XOWx`c1rT.+5&L)ެg;CNCf]{ɅOԍΟcF,BB{_4.n ^apƣY?ì ;ݎ2W6gQ8?5{$X K?{kysy >v]Zu";a`gMT]IPépI;qܵf ƶ~7,XǮoN^5u.DC Sy7<- αTޟ yg0ǕTn=Z76X}2.^(ֶ+[ں / }IzWJ=#u_\G`qn9b8cd%ɹX@9?\=Zط Xz3}dWAgiw_ʶ 7 ܇Y3&evg9 䱳x2"1fS ˁA"oڇ(xt;mn,oLïbE"Lq iaNT>9_mhQ-YL0'~.k'rFQU1sNoNoΡg!L[[܊5T[V<)>J]/j/O˯_F/+߮߮߮߮_5rĈ݅.31eȠk ٣&)GX: C8ހ+|d!fp#>Zس;<Ľ %:UM*o-n93tmW^m³ F\x kx=3&՗&՗߈xx+q&| z f4! DͼEB̈́.z;x%E=w<#|qcU+Yi#n6_j?Rs{`^>J"~ZpOe0/"įc9I.&ۭw_IxC:Uoz+F5?0sٻ7qlQ͝=N y@]1kvHn]|-Ak;UߏoFJ R+ ]* iFsgk Lώ;9@? [8fcڌ9X hYCO#t.K;f@_SguG,EC_sѩ um z{ w:D:9пз&ɜKrf{h佛7d1H.8uǾ{l?&x[ܾ#lBx-? BEjr5bVKfrj9bVWov8qzw}c7D<#BAR2_%|.=Qd܄o:Yqw=f?#r'. '=_X?U#5`&ꉻ=Pgj?Jr:9*#_=H'.[7>0\2VQ-þ22tY(c"4N >,,O9.' I.qOXd㊹Bt|{59@ֶyCb-"!UQb-!sF.NBwZ|ao)C'IR#ґ }zh3<ю|g-Hc?1>7tISU:iMhy]m@^[Wj'ˢvb-'~:OKΊXѺ3;A|;0qf|)'TM-g 퀿r.!c>XU߅`>{&#ያT:>QcʐJ>ݵz(RGq:IR:'!~Bď~ B+/ qzK7^_LpOMEwl~L;x,g fAC̾1 <  07bKkՕk_ ~#x3Ok[97)7 s#t;ؒ+byy;t溹NV_D6MM%G+N.Gć+#F-mn iNv%Z~z@uBy0QNWEЦ=^= |x1[j91 c~i>1=!Ccd-Ov~y՜Dac>gGkQW{Q-͇^X_|ɣ WD-9wO4?̏X̡O7-7EOg}Z%:val)BEhLإcQ8F_%-"Ṁ7ı"J^N/ - +)e0z=B_I77 _GĿe:= s~O䁰%R^ 8Oii=O ` ]'oK|gEvψ/]^IMΘ_W q%ǫ֜a7-nm2_p" 8Aw9Șא1k:utbú7'b(#ɭwt`Z~tk G:3f 3QD;i}'sŐ/H猦1b {w]"SCjF>Aq@t9ZMK~eބM:r_DK!m/;7ʸ{QN }:/ʺЎD'_Gѫ}UIa.?J.>Fԛy- {s8ߥb@BɰXps26!m?kGsO{Y}?{Fg{1ߨ柣+4ϛ-5fWߴD{5Չeu<(z[桖_ujy1/1ӼW{{q;tZsXFGXYm=-i=wqYE$q9kޏ4sͺ{9|;sQ/KYm I1y$H#s &I}$im <&f2? Σh=!LJW}1mI o{:J:"k=3yB Q#2HP2N\A$@Pg2$d$LdbQG~< "_+ve5*vu;sN>[unW~TW%HkHV j,V4|8> x1gx+ 2֓S.e|wna|r5= M2)F8em>xc,-Gp8B }|x*h<dCh;o7ݽLrY"bJI| ȏ?JxV_I'11ƼgH>ʸ%H2 _)OKV UߓfoYe _m>J'I, K?/%I?%g̓%ӷ{ '|$|" w~,ǘy3 #E%$ԓI'"^"s[,; Jhs -SF!kq'p7᭄{5/‹ B8=j ϧv Z 'O+ #%©?7D.zoަyJY!HDŽS"|6q $NٓOx6. /z~mG>R pz] ߳PH8_K.%Y4Ewߝc9WGuP~$0>DQ|&0V}t! Tް_;u6SdObx gIP1Wޯq^Rbܯ,q\&~A0~ <`>~3_3 e ;p_ǀf| 1nw7`y^ 10Kgx+O_x?=W1~x ka 71 _d<|g_euƷo$\([@Q~msp/} yA6sNs8KM_yD.~ _%wcF%~i&pp% _Z %~]/_j1/_st8KsSP/5_ye272>~ 371>!gz0Iq^ ƛx 3co~S/0~x~Cx3n'0~xoqf{"+.!wa ͌_ng:`<pƓ;q\1ǁay^I\x+ƿg, m+צm3 2>gf|"Um5W}W%z3~zs򩌣r}TnguI8O6~x8<3瑟q>In >pjSM!mNNV@xS v@x5ëa?SN톃-pjd©R vNևpj7'nلS.3#+vM$|;LƼ!FR-P 螧eSe-BRLѼo|ud2KL̦b"__V+ W-)-Yrx'P>[E:w E}Y[0py:s%;_),r+a{f/*=6<6/V_`{1fc^^qkx[*|i =xA_Kx'2(џ=~Ljϯ\`ЏV5?ߪDn~}mC$cX>W~k0 H _eIzX⏦y~Q%o}>x ,ʧ3ARۯʧ0oS +{OR Ϗ)\-6R_I1~h O1F?\6xZ $Rng?Ŗ 2pǿ2ҟ /p ] _a9迱}\~'-~@#3eJ7<?@5eo+џZGaD?]n>z %A? 􋘲 Fろ+Oc?J~)N;o?ɹ[ O븘Ϛ~½}Eu *qg/*SʼIEf)*{ļ&%l3eTb}}xF8KnLn I(j^bI P{RҜq67 >{?ovUg>j)V2+)c:oQxzIWn7r6pƲ[/~cglju_/%G[lz뛗LјA[?)kuEiNy{[%[6럋qͬo~=ڻ1WbOG/L񵙝>mh޽;v?~}#k/};z'k?u6ξ׎d͖O.Hioٽgw?nw+\c˾mn`Ĕ~|]vc#mg|d㘛.}3 j <wƂoZa>Wُ͊ |ȼ7>Ķq_ۿ_5ﶎ<[SsܵuYOǥG>w9|ҙ_Y2Q{ڳE>Tcu_`I[[{xTEI @G#*BB:G2i@41@" I$M:m0*k sfu}|]7?O֯~SNʝfII$%jPyO(iZ8N[lٺ8cNPՕY!M((w:\7smTqBsG+Ϝm͟Y'X/,"e:)3 T\-E6ʎr(L 6wS; {I Z(,cۚ[C+wʘ 7;w۵>ss dr-O5:7,,]T_KunSjU{n\/4~}=۹.b眖;l{B{5G3pC%1!oЦV3_@eǴLֿ3֨re{k3m#_ͭ[4߈gBh;`ipQsԾJ|!YcFGlSk 26dsFGW*nne-Vl3VmX* I2([zK렖HevliuǾw>B`o]T&9rwsjr6͈:y&YEKmcL-"[K+NO^ B~PnxKo]ggUeUnՖ!%4MƓ&gޛѯABU$8Gjף;߰ΧqCXk\ r婶^\2|1(Fm z@18 .D9HsK-י-Hzί3YwvH†c$V͋v˒ѧjrr4~jܞMsIy4f py?m4-S[^*JE+k&M j՛k ~QWE~UEcւkrL00BSRMP%OT J kkFa_ΪNJ" ѸVK]ĺ@KE, F4q43yvJ33 gW;Z舓eԬ3Ю>QLNzli?ѝ<ÌD{<L[^vlY|)W~ځ 2O????cZaa5'>.+'+{~$ V`| 9܏€=.ZWӋ_${?$JF7F$'_~oF2+_L5}`JOؙxsMV# ɴ | 0 NeZ{C"x`?zO%x4}5'^x?Ӂ A|sg/$8D~0ͯgo7e0|w_DseT~q YINWӡ}

:m&C)`&H#MJvwa>\`˘.Js]"x#_% ~}=ȯٯ.(|3"ݑHWtπ(4YP[cJl_|"_~E|?S?8L(O$ڽ\>pGd&>JP ;/oXIoLך%` 0WǶ\"g~p))2h uNL$7NtJlAwcs9R#+Rrs@j~ 0tvxG?ro$/ą˟@r${ÿ@W:UqJg}ObStq=$8?pɇP.vi cnǕ>rasMEAp{Pg>N8`G֞3ӱ cLs OCt 5I4cu i3:k'ksȟÂZG$aJ,|'ȿtAN8QK\먝(5MuH~θbS:%^rLkQlk<ѯ:~z~|H?skI* :ẋHـ%xXXw\x2F s~{ٳ%MHR+R`}MF{FLsÈd].sIBnߪov|+Gg#d-&\NMB=CFǍd}^Mok~|X$[od yv'i䯔Dpg'w[kǀ뛶mv˱ эxףz$'ʉjQY\ՖU%JHz%4Y/VNj^ۉQtsY%I4)AB>̀n0{} + a&j)PuwL޸|?(y`deOiO(>o3?VDC<vP53HNn$$?/ '> /~]=:w9P V g?$n:iځbbv^qP!ɄAw%y#|Pυr= 7!c;dS2 Ln'5y$BWCNxA'"`|>`Am/.?A'/Z_My~~qy>33ͥ꜁$}u֙5q뛢ogoO1>v~%.{ȿh`gπ?ngI4%z"vB)#j( ee{7+fˮ"z*yqt>=VIe>G}⏆d37މ,~\0[yDBt;5 u ~&@*eƈG7I=aF{bF`e/ $><&JpxyYV};-̺;uK;;Op,lg}GŃ| oZw+]g;R옍 ?mEG/Di;ϟWc@ěM >f};v .)Z#>x+rvak?%|糠z Ey;HKK=jЯY#CI_ I_} u֬߯)E5~0t(Sು%(?AA󋁿V~2i%HூS{[W@TzosP_(˘ |/ !_ *_/o _.$!%ěP]/G/<2|r ԭu/mPI?g%$}[/]?iPA;~ nK e? f% Y ih|RC?xU_/ *6 |*L?'X-7z~ __ :?N=+㽥 +X@ʜ(]N9d€PTJP X>RaBN6XbLMDMtmGNuۂxo moށx.k!+wFC5ɾqoo!~z.i/}ĉ'C$ƚ}q; ^ :.8#Nэ ŠN5zL;JO})dCrғ* 0)Nݸ\/_Xs◯G> Tb쏢ۃ:&G-6<4 {_La b1 I$nZW(c|C1 5M& ˗dCr\X2/ 4 Pj ]&8R52͎B]({ͫ[Zr>V3T\sT-VedD^`]F^nPcN,"q3.)< vAlžqVxOHǣ? cpKH ~0~|B/я6wX}[xx藁9S@?P`}UA½3(K@ƚ${ |E{NC \4uڻmK8cD_x"㏼\xѿ2rę6 LQ0 gd;Ǵ(Fe#2l$cSbS2yđ^;ziZysC>RUQ?ͷOD.GѷkN9]zAeXa(^F[1tfT`(l}lĢ `}03^H}2@ENjo^WHj)b2F.?!r_|U+#˟O.kE!o/ SexjvOaAE U] Lf|!@ D?FTNl*W3EEKm 2Һl=dI'bEӕA4dI 1 R 9 1U(n gᏗ5 &%V߮HUw69ѥrxXz{`KĮ&wY5]gxCIQXd)2;l#mV$Hr-nXdQ;n$19)pM3r:\&@{[R4z Ve$?"MEzN]aթW)jNN꒴bbZ]M (rz4E\nsr)$nѭ]Ns Қ!đ?:fHwR1*AU\͝S܎~َ㎔0p;cEfX=Wҭvt bv8x.O*ʲɑޮnيשׁA/Țf̳sn5\5{-2Y$|4<̟TF4[&nҵXj{ZzRDnuYk/45nSkkۛSd49)jC~Nol7o?~2f.}p^+,͍ٝ%p7GɽBt.Nor73~[g˳J$[itz&qs{l$zJknjvyi}ɏ?-9zJdI?s-97Zvybr82yOT$Y\`ښ6piʳКLDh3;9| &-1RّlJG]%MA=Vd_ yq݇|dv\ ފd|mx;kfߖ*[!AbgS[ $SF06bCL;I B] 9A"8'V۞ 0 #,{ǜ x6 "<鬺m'Zt 0}G6B t m%'!"rxB3_LvL?/-!r|z>YߟgMߢ}07Ð%*s/O$Q۩.#q)%eW(gp/$60NoE%x%{Oz߅d#[x  8!X [>M wO'6䰥ru 'KsϹ:d@n ﻃmD.{@OL "c!SQTLgGAp`1mDj{#8FEC6&Bc%|`pn('gi;>BI{:mQh *";wΤ> cCN^r .? pGPc$ ڸ#{̸cc\ٍd!qh~yG֏wY?䂐epɳ~ecc9\w= vXOF?Yȑ1cc\0H.ɱ@?E]Oi$"V߃6rtOBnHA~ZcкNe(r˿.3V|cy|Sf~ezx~}s/AWqFOȿ4C~s# χ·hoG./[ek>/IH~L8z;d.Ѥ 4~* V/MoFрw> 0DoPöi+//CB2X&e[j3Kcr_#9{I=L.S Lug{Z,zEfngµQWevF}xXko\vj9?n9TI%2rvjP̿6bSɖ c;sxd=8McԍDM!.,g'h pv[84 <L&5}|3HM~7Z#mi)WosL艹o`:Wh!u2=T"-?*^D0GC>dp@'b}<<R_t$!IH @s͔Yl382S2~QS\I۰f 6~c&H srl߻9!@v/V |k^ӀS;/pN~SyȇPgΣ|G\~0ZƗE2Pȷ/q ?x*79!C9pζsNJ|:D#9Ag7pmKTϚNlMAphd*yR;*E*Hk^ |O~x?G_ FcTcc/!,'|L>Fm\="G՞HH-O:B=.)XoVd.3O5p'/FY^&QNvbc IpSEt<VQPy8RV`7Fe*nm [o+Vfh[aioVTf!+kmU|"{"~!~6#@|5G!8q{)g?0vVۉRjyCN'OWA< <ُA*_ge gW)]w#~wg Cx~x:4&z|4^1?A-/^[vfI p`?ߎKvi8~6Q"=8~#=9BX9>?O8np'54lJk'4q>;8rkpq~0} ESOr 3_vO5,*#ԏx~@<Ta-c]֭\Pz,/LM6# }YaE?a:YRxI3shiu$!WFhtYM) YdyLiI̅٢ŋfm\6;]H˰QٱĆP3TfHw&8ɳRnhZb{Az̝wS >Pxϟx~DgE4XAMIRh<Nϯgvi|R]8v'~>++ׂ~CAq<_!lA>oJ$j8s +o7 /w -k?/ 2O;*y/9_ _&T4]!}zL)k'Z i$>HGh_*6?nHCwPh!l? }'{? Dk/P ?>R#m&#N }do}Vgn{f?҄~=+/8I0/N3 "퇄UHU5So ju|a/jZ҅ŵj5yAe T Sgb"7&n.2CP@v`HhI=} :M\gz% .>DShq)R {&p/]S_ XYuXk8O-lѶnʌqIe=i==4yUIۿ;yUQompGF&?_d<'򾧏 T qlx_պvOՒt?v3-Oa?>b)7^:{QOLsNu,,?0 7:ar>hL|s݊,!];2RVAɣ()|jO X|}]_N\Z UTplR3h̳ߍ1 ;%}I.0lzGw;SׄYwܨڵm6BVy/;7G2l1)]˺ XsYZnڤب'}*e~`͔] W(M-9a* 1Iv=ç̶K=ٳֽm펅KͨpS#N\p˝;+N⌡+Yg- =YRl}d_uO1^|8So.)i|;â19/ޖܒ`ZJZ tUϤַ a7jX,Վ$2TYi#44EŴȜ!tA]{|/Z}||B h6LKw;{s2;iA>].~q.; -J8(>*b5do_|!7Js0<%90'7{IN6Kյƪ)m˜q=t:^ nd9] ?^|sgId E NuAJ١U3V,.]ʭymM^ I)Ph\9v|st1޸$n56Z %)|dǡ$f{xpUK)!YXU^TH7Dql 1P3+x+z;P@5I%u1@l.Y)8Q^ٸ~P x*䵜^"rꓒіÄK7NG4'm2,H1V$nRS0-* ]n *#!4cv@ `[qall4FGVE\%ac*B=A#HW ҖbY~2:85$%}h2*bנ2S:eWFem]FFl[wrؕ04VL=v'ƁY6ݽ[Ocs3eD$]“R%CMZi6K9f5KLxlS6W8 lb|!`E+1|+L8oo4Hm:1d?sQa;}< `Ea5:4yz㠄U"iA*f?a|uAuY8z pxq_ 7WR5;U8Hd[uz.KhNGt Ś+Ǐ+7s:})"ORTm ӂ=X!@%e2MG>UۀtK&>2ż~hs"pYRz@d*'UWHU>&GL<6N& n#=/F62::+G#L>ѶZnDBd-'."q@\A`k̖@]QQq' yXD60^77 ԴufI>` t9ZJ .MdZ"e;F엲KwҖ9 uC e)y9Onl.lv/>DٰE,lkOJa 3+hæ~IaAas@co36% ;@:CPuøŸ۸q$+F;p [MHwoa8i#cW sLV TN³3ѸՕяYФ SY@Y3vIumQAVRݱޒ m$| {5g/5)62܄;-XѨf̲FA\v/(~Sǚ1<9' 0昡CǚxR͚~s~sK@ǰ P,ҷd}F)Z!g$ۭQ9?nTۨD6*X]إ8`Q#J؎+W|zZE6K42%o H&ɧC')E {;) q vW hL$B-.oHk\jΓPJ)vyd8ȍМk%˽C [D%sKR&X`R+68w%7bs6+4:!:L9d3IEW^%u.vP;mqXle+GIN va^h.4%m"&os4c"qCLI=p5<& NPQRH p=²A DGfo0<{rbN){2xꅷ~rS.dvgtQ-xr{iU%SGOyМՂ2J!A'>ŕW=z*$y,-sz}kgNfnZc˰'~N,.vQԙ?.E0ԁ1)S, ӜiΩ@axckLLV;'W0bM\jRyfȎ3k,ʟ^ҵYTO{ܾrO@G2Kq53Ο I.SxqOБ#srv^2J-O>+,/8K].v߰S9MNYh?}69☎si* qޫD8vwer[rFx?=-.$ܟwQ^%?1rĈtn&ː̻22A4|ݟv32PpzSa6pzഔ_CW$V0k=*3Gp_ 5M=l|-m  x?^ta.}'}0dx3Bb?(9'6wN- o Kk?|߭p3[aex ͅ 7.e p9'l}*/00߄B q_0_\KiPoϩ^8ܸO8M;) zϤ /|omp*guq9~Oq#xś 4}˯a?g2>/`K1| pÿ/F؞ ㉟3hs&k<-hRk)E4Nl-+fx9ՏPpèo=cb=Y=;qg>~z K [/glns8<1q6AM~lpm:gt=zy7я=@sZdb2C c?zs c-e0>C1~G2|c0_b0AF\U#~qn.`s}[Osu=K]wN\WsHͽy)LN^U{x?`1.' :S뀯"'8bNl6s~ӟ(OKi'37|y9^51,6S0^D|u\.z1W&nN0꼢*݁j[_&sVp> _N*#~Fu]\ ;ҡŷ{WGlO|ί8{TmGP}Q ؋ϻqrXOTjsK$4l^le71}pb>Vڧk}!;#Ӏ1SqvW9F!fMxn%<+! ׇt; %pA<ȿ488oE^z)[Jw?UMz}CCj60/jzqDQ¿~C›ZO5< ē_eB|⩈_ԁP.'#Ϗ|#yLU|I|>q&\٭?,@(?!-s`?SAzp?"dyyVzֻM q>W#xz{!> qފ!"-q+{g9}_ꗏIH~cM93r yoDž'~EHO:uxpbbvO"oҏ˿G.( 8o?|ܘ8O v#ks_4`?-Lw"O4_o4_~8^>ѣz~qN.. _se9G?L1%>AXOgCzpl#g4OA\ALh?oG >H; h%00ΆbxK`ϰ1Ag080 H; E3%="0oQ_~">0 |(gZ`^"`8;pw3S."Rk]KൄN5pwQ yo,5?L~!@- ܿAp&/C|/!^8^m b < m>) a{Y~}-"U`~>?{ `X|12O? ߶L>`&UC}pzm l,,$Jl;^w>|XXv/o'7|j$B$M?߼'(4o4577oVɔ4><(lb5XbTi Q,ca͋EVgZ,~DIj).*f[e%|Һz^}w/>q.I]e4odjX盕GKN]T[C^ -fzc/ơ\[1ϵlh0nsRfmsϟZlm6o7oeϟ1Og=yCH.1Q IKSZ}ͼ.mݳn{*nHћ]?RxI ]?"QV;o${uN6紫jNg~gPmVU^folEU:7$9/x[yxE2F!C $DU&3d`.&3,dj ⹺ , Qr JSNc=O~EQxXPΔR48v |GJkMܑ?zn١9e{nF=lٝr,#!,2!:>Cr}oӓ9?\~ɇ}>s%]Bjg"Ū%ʂ}YDzeyU} eΣg/#Ǭ=;)3[Oz|\ǧ'K>&3*3y_f痨TVٵ=;$=j$#ݭn]N:˯wYM蜲HzIerehs2),s,Gɇ3i9ME,. B/SimHRwߑ-OvYjFY M&pI~vyK ԫ \{#-ť.Wk[{6{"_WoO"V"4PGŜ3{j_Anmbݮ|r#ӳ2K6o fav;vXjv&y9 abcsYwCLf?Vpu7gC8=>m5]J!(&)C_cdQ,Yck(:/;t[.{}b rt̶%pW4$Ǩm.[xXj wPWb췓n;(Qq=G)NI盋Kcǧc.6/q$EӮ,5My&jKk5<1JL&j'>D^Ґُ+d.YqmR2!k_iy6=EſHh/i_.O|n ;l&S_.F:JGt$C5-u)1M:Zie:!XdS/_/R*6rA_{C-_˯U'|G?$?S!g'CDp.~\i`VWgEx!_ }?> tܴVd0 p9l (eq}  D xm_p+»>p57w磊62O-HCwh!Mu{y+.k!m `?o*K$\3ЌNL =dW)' o|1|)"I 9l+pe±I_7$ ^'4,Cd<_'!_TՀy0w pZ3r<8ހxS "z?#BsF:9IԏՈ?p{$p"`&%[xDxtiMr}Cy-st=%[ؑP< ͑3ux{dT't-%X9 +g:# 8iϣD9U+} ɍ@xt=:yHn,ꋳ%WǑWa@.@rbco)\c;aY<8~3<y4&- GRHf<l*ya\!cv䟷R= 3NrtOAn&#]' ~8r4~1/>6Y8)n +(L>XxգRtԷG80H.PLٛX{=BPYܡsUy=fOM>+7>ޯV#Glg!;a5ϣQR֯@ycr ScHz:.<-Eyb?2YcxJ|Xp |;^}~]}31i_Ls$_!]#pxM[^cU΍! hڹsS[ "y֧/ zOȿ!5c:j=45*sK ߦүn$'%-jGp hrxHe>D|XܧHW|~=9?rCM8zVD{(v:Dr̛O2}<JeL~"@."BTY7~&B#Vn5w?`5~nRCCXiem xZ޷QZ2JFDS.ROH{>w'{ʸbG|נC%aZR}79.P_;8TTԇ5vU*\3u|찚s7^DK?2pNٹbm=6ly:Ȇczb=8;7y֣?Tч"5;Ih w찱 {=c}[w(]~ R.NRS~'8eV:sYOiio$g>tNU=YD=.+mIm#.kspJQ;Fw>7|D!@w@TэH#\==[[ ܼ(74d=IIB=!X[BV"b3Y|8,=z^S_;lj,nO(0f阯nCj /)i'J#VI|x N `WPw|*wztE:Zc9t r8>Q9~(ۉxć| |0/yI|t\A>P^V_筅@W<A+bXuWقC?fh&tP ) !KL&E.?LTGhț>+Lf|_-ٵ ok4,Q? NbM1F 1*ӔaJ$jx~ j")= =jw{Q{ӽC@jiR3直VZ Wq2FY1iZ~x~%,^K=QWu䩧UA]F5=IM.fJNe EpE6%:"{Iěy J M;zf@]_3~Z?9]7 ?etYwO7P h^]Ez$BΈ$*~-9w<%_"]BQ7#y z޺! > 7'-S" ]D~=s?q>F<Eq΢qޘ`F8nA|3ķ@BByiźP > )7hȏhijIT爆}Vxul_go -8r|{8olx''p,8'q|1 x#dz[6~8dzBdz߱%?K/o/;8={8} _t Y|W_/k̻|u J[|PW6OWQpǷ@,~Atu#=b] dN qbG)8z87"Vo%%uC^lJ|2T-+;3xt7G$RO٩``NCoxW|af%?evW!kTl*l{FLY# k*E0=, d?i"~'}"JHF&Jȉ>՚_(H&Nr,6{򋉊t}ࡣ̖IᑼAaloFҠw'GŸ_x@#.B1KKRP+4@lTj7߿ Ox>2ZCjmz+X 85Y/%TB8g~8l_8SPo߂yuzy@ۭMЯ.9EhXИ0&yGϟo4 ߼ O 4{俅 <݀.x1lEA%cNA~ǟ$ | `_PǩO >bR?޷?|\Sh1BP-|}Oш?B녺+BmяT W?34YwMZ^Ҁ>-WC)>t(4gLCG*;$֭ myqQbnlkZ䨤M&7`HO<[$+%bIyIcZ 6K?Kvн?ن&+Ac~KHUk|s?Qӂ^tUZC:݈V=ToyY4u?x9ZCόvno3so}8~}5m چO*˺]ݽmmnkꛙliHI2d%Ɲq:WS9gQncMfc+>Xu7:l_N#6?{Š5O֓ۻܺ=_5Y5kn\͌%^y/~!ft 6/mkV_rK?Z gn*C&8yɓEjᾸc_PA-N$ҝa?ήްPR{+bۄIׇ=}l&\CVnngt&_tS7xtΐ9lؗ 24}䚏rfk7g`YȂòwQ{ĜmlՁ 1׿o~(C!KM/_9탳B)۱{bkݜ~M,V)\CDc^ t)g%; Ԕ:.~‚O\ tUtBU!QBhd1Ԣ$ H`A#QAEQ" O(9:V→:g;st}k{:'-I$t۩9\&"T?88o;=*FV:~t6m?uoZίeNܞs[?1Yz/Jglg)gtg$|_8jTa 1PV(?p4"j Z/n8n4I-sE$e8YkȻw~4Dގ&~vބ^9fv?mVQ-1Ǻ 4jH5oQȥUQ Vp@x]Qo p0xn|~ >/r5k_j5]g [`MȺ*Bxkbu+1W(ǿ*T9[p2+lS?5[uptB=sNB;h?_wW o[LJK֡b jc?{Y\гGK_Jd;;wfa]eKwgk3s_"E x#/g]ƫ &$:;ۀ_b|-`fb;qdڢHٿq<ȰU9[}{FOfx ~efx] W,Yx~!|r [=}>zcWNt>^>޽Pewދ3~&8څ}t} }\ }=~yo>-3iW&=y>l0;^~Uex=aV1g2's+H&ᯁ `x |^F903` bzG pW Kj9,#Y uΏh:UkTG+W9@2= i)rx@׿@ {FP܃Iܴsd9'ԯY{13Gl _Ŝ)ʁQ37q?[ =oE&Φn~?B/ו_7TO݄?:θ~-?b:8iDp=7KIc =r~}9yT980=Hf%G!?pxN{-y,ܹ1u)g?3 FMmESs9s):Q;F`z)B ڕ>^6Xrpo$?[ *BA\T(בG~b5*Nw-H-ԏw.$'ʽErxmP+ZQ08vϏQTNx 1/6O ~*yBY1>?hw R|]a>Kqq}:l/ZGnOtd/ ^!AIԆOcO(s̋|Y3W'eA1iŦ06@{Z3;]wM'9hcsŤO 1/ ^ȎEÃnC}/';/KR3ؕ?bٕ ٕĮMǚ8|e)G3ᯘ% 0S[vnSAy: 1tx'>iۢ8 .Z ]fsKS;U# -4)q;7Y, ]Z1?n WGg5# \VLєJ{cLqGReD] ϐ+쪗}55~_$+4LJ%'OT*g*u|U!f[\9fmI/Ɲ5y>ՄocgM&|$nw.bRLSp%QM׋@3/ѐ_|X\^"|P<-Qu<|,=ȋC7T>/nGL4'U~`ۥ7=_$QEPASζIσ|w~;}}jBK}/!S1 Jvhy7|;}S'}ƧOOfA^(RyW9B~3RWNq>K*9./zRK z1Ә 臙V'/$|Oߪv瓷MOZ<$8>oHBo*_N-~Ӡη7yxCabn䩝rG[;1ɉ-&I9;{>c$&2\_xw|=Oz|9CC-<7qU{]XH^g^0Y؏ H iP S 2/ G]5:$.*XNV&ivMuY#6a& [[%~7M1AE`_%%z>t4P$: 3h/=v4(L4 ~ C~'$\IDb#R2D$?3L?CA;'ogD~"O G!m9 <_Yտ u8Pb#_KI!> bMAW#k‹:Ż͍C򃐝K$'M+Qo"e8F_nrd+3򽈝 _hbG5<#'3s!s? =46E|=MG`PxVtwId(hBQQ|>% = /&vcaZbqv~wIy1)&`Rޮrryy9c@q_E-Wd\k$r͖5_J.b?k#)!#i&|*TF>/~_Dxx>>w ~8 ?2‹}ӁHW^旪0Մ  <|'>C?|`\4^gGxKn J`o%17VJdB(ۈ0~HǿSw>U{jjq[hJae v|a0`}=35n!(?4k~yI}pIHĊE z%<4ӠGg=*b&B _<TLɗ>ȶDk?dm +R3 OxLwE%7i~L&h-^26W>ĿHKZ&&T4UyY?6w`&/֐PAnvv݋gr@WDbѳO0{D/=6O+  L? mg2P7eR_">diR~W!DM$;!-?D?&k&Cch?_?Ko2Ar9 ?gKM,u<5;y Ѯ[9:Tiim|8x<&r ,Kk;psř6 [,^xSgűT52K]RY32\gQ{$b:l;)[^">m{%1Zv@"%+vO [bmpSSygՕ|zH0>F¶Վ˔L+׈_>D9`dAZj BO5¸!rww78ނrZe2??oOQ+.bt_[Ob󥷪=Y~Module signature appended~ F8X[ktU/;(Htq1yHK7TK$N"Iw vP͈,.UqFEDDGȈy8#؀ "}NکTkJW_>OU{df~-igږ1Uãq_'-mg,Ou*u)b{KXVvN'ɉ(+U6e7񳿻-+ fIMD͝.R} CMklI.e+[3d_-w$l{ S{d_g,5+@Rf/NVek5RYj˄I\fSoLw %-79[[[)e9eE[RfCI:(I;!28FE+уykx4Z(:K)jL*A͙A5ڬFdncluZV/2۷M79k-Փx&:jY]:DfcR2,Y r%X]c3V.(JfaXxdĥ&2-c a5 0#YaHG  ڙf̡|Vȉ.cNUC2 ʆ ,&޳Ao,T˵w:~hYr$lVr; +G3=p# |p d=)lHdZG>,{+N]Y(YޜS˄ڳHΙc\dx}]qJq5y\k|u5s,2'nF9i,5S@!?mr7gȵXy\} 1Nteq!ArveC]vj0ysleo5r+?-N)}NNp}P{䓦B:pz9k9y[3g=y55Le3oRʖ5ZKnz0aRAU02 9~NEnH\dʑLnJ`j>8]U=ԩUdv+3 &g_hll]dTrc̫@y1BHpMݶ'۰tfi >XDY@٨|bWꡮmӛ cl1)Pvڋb@]-$4~Rd?WK VVؖV,dD 50E05 &6G\E!8rZez Kk7¼?dF V=ť"{DZt*lJdqlɆ |rmUcuXm8 O''U OWAOoޠZ2BVN7r>kz_CM)rMpBYZs17FHd01a.%W=Gak9K-a^gj^f~t`Lg[otCa),irvkCd:R;rʭd+O6/rrhoOD/ дZ[]z[װӱMD? 4x@9C#ȵ1*6S8$\>7+7X J<'eP|Rg~LLBS\Jp4+=Q8ɋ6Rn͠˖e}h^*],X֑& 6Kf 2U|FLmp@9TtC`6b0cȉ4b\J@9Vb弃-X XؼR fLAW\-I;;2m_xA(,<9>閈5n[oy(։p!gdS &Z#!o- ^4D``?):d3[ E<*}@?j\[*G|P̍b@0?UZrGQuL0 L̄(~+huVGi] `Ey]TzgF Ϲ}pQBk+CQke T b#VIb7ru܄b 2q3I25;7i;jЙ_\w+z>g(|m/}^85s=ۡ.t lOc<OOYy W+6,g? !<ިJO̚D} yg=h4b|{6$Ua/ΎxWZٱXIeymv"rWƮfύQm-[QնvOO !u(9פW[tG#H?NoU5+iiii3!xV O,lg{.E2nk`B v vX~3zUٚ` bhBz Ljo>մfvz[ȯⷈ{7"o-!N>݇E4ۛ0i}Co;o<ͤw6iˈ?"wAkbYj:VNB x⿑x<OFfRu+< /2k}& ",^B̞>To_K$C=n+F*ݮu:z" l*.Q}U⹚xCV|o9/ gUv=>ٿ{ ޣ\ />Mb|= Tx9*~Rۘ.k@~6!Ad5*FƢ tA9i@y1_U=#E߲OoV$&C8&!Ndzuiꑶ1 L?5c< 2̯*uG1Vdd6~-bV+DN-bo v:,PA_Y=N!Y &cGb0`A\"WHpq+:42_XyӉ1V=1!@x]ȋ ^3t ;(O?u'qlj\](٤}=hJVIƙο +b*؄.S2u1`q^PqH.vϡv($cYOt;ru9@Al7Z磐0Vڵ0ۏuz"\^h0\{5׎n0^O3ү!~g䉾TmԾBKGj'A&WQ3E?<%qo=ǽG$qrWgzOv?%Zd-qZN$MgLY~NvW ISa.y|u蛟sf"fc1{F=wB̞ 2K6jXoEִ9Šviw2BW?trFD^鿣>.D~96ܗw`Fy!(?}K67k+i%Ƚ`mYuZw>Dk&"l[q`&fn^1{I>!r"ޏgDɽcx+c]63s:-7|.ס{Ft'ucsL~bZ9uΙn@u,n8^ ǁ˚缰#R+C{Y˚s^M[ڽdwVDOgO4ϴ'y;'qL.j:&]؜uNN 'J 6E+Wh\xl򆽕{/E>OEy$_ J^н =ֶ4/>!boNg^sqp!NM,q$onqUv&Q^CbQ#9wnW9xC~8'>3[#iM-פ-9QOG;-? sth'Kq N"q,\,Z8߭In6g#/sW!ϻxk,_ymEf7vWη!ׂ*FY7)U))S'S/:دK)HCy#dnI3১)X *4KlBfM -))hP7)XR9Css_ƓǾ1 \))?!_@?F+11A:d;1Xzڽ]Xزոبnq!|IF'|I'@M3s1ޔn,n,/?C o}#94R_8>6S RwkdYz!&<[Z})쿠?u)o8E_O ;ߓv yOx:~ "OE8Cs?/ _؟yءIy3O4?#igmpFqH3[!?iJ&i[9&3oXPP"x%&+==TB)-TI$ (m G?e=*醬(r< vGNM.<+ؔe7+6>5[?)q?JF֟ʩ?i-t_@_pv?^˩qz>Ў8S<tCWul}-[J:{@[ g%rPTb|PSE#s^/ :8QtUWdsvYŠBԜh5缕6̭gss]*WXcH mf ꠃR*wkZ(rwԇ8NS1ȯB[l@Ln3MƘl"ab /!se]a;d/+sc\nY[~=$5xߩM+^ը&gӤX鹶CZaQ^&)nA j80Lt_xW#.AG]7I"H_-?Q"H_#lH~,(_É_(_/L<3%>֙0}T7CqOs7C|(8A?q쿋AAjT*'uty ._H.q+@C%g~4~՟'OCi'ڦ? LK?999/x#$s8 x׋39/F jѫ%o}z֓-GoD%k9/@+T6NN)øE~yO?3QXݥܗ*YhR|_IiQ!d±47tͪՏҬ_ ߽c;zmkȺK5ت'^ҝaAC×W#i[+'tw&{N8H??r}3g۾%W_؏r4ĉz٨1=joF:񃄤h[s聍[Tl~c(/u)JuN_ߛZ<վ>u1D˸%PžùAG_~M^Ϲ>[9өfWEfUW//!t?/~9kV=|eՏMluEÕ1jΤCOռaɬ?Q;TFTFv^}k twOS4i{֝;U캯O Iuު3No(uXz_}6ngg)]{gN\o),_rw1]-qBr_iy.`v }H|&qkyGI';=kbèȣBA̶M 'e[ xU@Z eMaK4ILi$!0BlDP]uuUGy3CxΪ aEUN՝v/U{ι׭,sn6~v gy0@X;N'[bK\}Һ-[`6dK-6kSMthPlZKϤ7cm]OO1H CDG)ϲȹv89),bpU:uڜtr4&ʣDyBF̄3T-Jc3l*ir̐^ +YOAQ6PT_k14e޴L/DYEi~K1ҹ3n0Y*ʓmR f#a6QԦ "{YMPTX{. ssLأ*Lh~d181QE&3)0y(nX|9<)M,Ȗ|E1@-¸EZ5)IYj_J[2 7,T{{m8i#R1''!O[daq0XT89qD\\jf*BԚ _lA0`:#t4vd3&heizH>#ޟ,[tۏם ՝;ZY jxUzӥS݅` ©Ptirk2oy%pu'R<[cҚki.Blq@2I;&e)irl,lm.my֥o,&\^3wAlXX3N5A\ꔟ>A6Dy@@jvJ|)JP8Ҙyy<ڞR,ٜ` [fS37\yV՝[p`Af5bMB`fA]a?LwNr^(pJ'=3R|9.Ty[sJMSP>rRNjikN  ^jS,z$qzpR(gX~Ҳ eM-GEG֫RdP1/ Ӟ;\ w3M뻖֝X&oʅ6d/[LoR9Kb:cbn2q7܆'q-uJ< Sxi·}W7v|C$0Aiet-UHg[')Jȫ Ow5W{^UͥaO3|T\53y⮸?H_?Y|\>.}jKqTTy=!o׿c&!gfA诒, p; _N aa#fĽ52 - ~4ގ[o"<-w#}3o1{.1j֒dr z<Ťw6=&mLZ$b ?R⒀x/{ }B#- f,m@EQ<񛀧5;K@ p 30wfmK ~ 1MUikTAXn%_\<"WJ'\ 5l!x'oӏw*$o)1ƍ˼KNO'XhаRkno-]jtsKX5{0t/ᏃU0݈`/_El^>RC. OS-CF|ğ@%(G!N"K|Z!<P],y #/ 6ުb.|o!RՆ)jPx?FTK@7W6;>BL{4u BwMTe3aS$˾xp}+ү C9=?wѓ4յZhہ>r2x-}^GbMD3YA'c#I.9 ?1=lr8c@ۥܳ|B@nL>!/!/O&dꚆcwY; mU}_=֣ l߻z> /mFYp3$e'5/FlX9z\1qqkLKwW@G[[_Qb5`V; SC%9!^얓^|]|p<9}7/B=q_=%c:Y^u?MnHsy휂 ԯǕG`^ߘܟ !ßѳ§Ҳ &sq<_Ե^r56pZ_+pe#k,[C0b]qϊt?ew{W|j9NxW1̮Dv1b# ^4 Ivr3A~_Ap3?,0&k9K@-6PX3?Eu"f3Nx#~P[JHy'֑ߨ5GNsϫS>^CkYQ}Qh'%U?#QuƇgz-ܱ@Y#+|uĸs>QӧQ G/Ľ Ul*n)əg#M"+bc'|I:kH\Gx-CTG?R/"$oa$7Ɔ}WH|ه ߥ=c9_PCbӐP;05wNy&dN6Cz>z+S 'S.@[̏V1W:k%$@ot;~aiOd'.tC]q {ޘ4|]J1KBNA+w o!3 z^?k3{<#}wq~'~vji.1; yF*w% ?Fv@~0c$~o<0z֭&כM苐CEH\w90xA5n+><(CMd;IoY@z}.Y"xqD|zxp{[By]]f隆8=MG }Qݻ}"ޞܱ#H;:4S3^Ij17U WT=^Yw=FՌE'ŹB|ƿdk 2Ǎanh~Wp-yI\I ~#4p\6Ҙ?|typt5䞏 sI{ >ί=%/lpo*b ᛏnrku+fPoko?k]6Ƚ!/\y7Ewqy\W?Z u[G';"5zE}zi>b%GuuMjjWa_V}/^}Cpb ,| "Qqu. ׀ŏ f*<<" \ KXnaTH5r*(r C2IƜ$$@RAA\ k@(AnB<\uwz歙wgIꚮꊧД[0]tg9Rss\%b܍t ,wp]ƻy/5Brr2mW{?6"߻dާLau7׳55yџ| Ӫ1p#4^[7Y8IX7Η_OŻdϿX^W O ~v a x>zo;(ࢵG!xYr8 ~& .~ (OyM#nfx q3n_ż n!I>T7|~K} I-,ʓ6"|(7[?.P_/!"ϋ b;u}bɇ5C=NL_þw41ޜk=&{Z ^ \y@\n?kL$ŋ1{sσĞ/7!_fxѨ*<4L4~8~_xgz7)Q6u| ߪDG ?ďx؎9,S5/j|?/&sH_q 0B ďи[EAoh|hR4^#R4Aj@,۶0lD_ǀ>Fsɝ۵SW5wQsCp -,3grh];uA';y u\5 |BJV/a@V0ݡ qptH_rQ-pdx=ΉQXQn+%?ayb78b?u$vV\ˑp)כ 3Օ7C3p&SFЌ]C;ʊzAyth*h 7˿-鄢ɆT#_Ȅi$co)eR: +lЙQĀNe^_/pF+C\Vhsp;Iۉ|=%HO՚l'Y>\?,y$Fx)9Pz?PmU|kvu )^.ύ4UђħB#ߔ\Ͽ$+z/{iuoD_.+4=%otx(`I.5v v3?Vwc)?+o|J}iRr L!/D{jį}I7}Rrqsrqm'ÿ!I.H9:,||z$54r}]S{|<%%o]K\.7q}Lc5r&1/%o~ )~/ۿ_::H%y)|28 ]ٷ÷cPbAK qӄ|V&\ 5ͤޯdzb> V~-~T;q~%rhOO]A(pxxWSnh?qa rKśs7CƹܺfùNҋK{{/'!?O~;31(k}T c,S<_acbN&?K ykꝘ<;ow 0N<'z':Bq[ywȬ< V\sոMs_\ト's\N¹ޝs ~||lmw"_\ ,rx5y8C]<׷G!G..277!o,ګMvV3gɟ'.rrlr"|hwWvY`rѯb(y dž">!r'<\ _ {w ɿO'/&/?E>fh7#o_ |1yKRr;|9sEC/ڟ7qJ2\F2|7rr s9+ȓ'Ȼ+!C;Gm{?}]|W3*O㙯5Crwa٘"|0#o.co;WNhfEi>/;5OMH")'i_HEs4^բW8K"}?J *'#5umM8VUw)LgP`WF?3.?G6_=?0 Q\S}'mxY mse,J/- kEFO,fcFfYyHh(:V3o{ko?=Xbi㻌gQޏ"K> ^ۼ˹s.AKBHl0fYL/]o߬^m2._c5Z^*z/ 8ZVϛzNenhd8z㟏4=f|= KF{튬 ٖY@Ɍc۾ѨI_{e%[JJori;l3Ӽcn轢UFwNj_\=ra>8ttW:r5;βb[hUf:rz[*޻+|V}^zcn) }ղs iq?ڝEK/~y[fvW}ۿ[ݴw.]9;^tуu~{6TNzXŖܕF]1_uXUw|<-q+:޼ӹv{pօN}{X,eӳ,-\Tiy5|vs|`[z}+`Vw^W2s}瞛:[=yˆԹg؃ & ݑ_V:KC||wz{!;\9'k OZ teni1m4 I40nґjh$ FI:$&~@F!HMيzdG]t`0DP3+&{w.;g99ֽ}UzihpASUlsz]=i5ӯε3ޒQCVRZ~ en/t7iSҔl4&i.F H&.V UYA*̔fg %Hg.k4%SChqXbk ڝa<9L=Tou_ĞKKf%IB]cj y޹n\S4Ep{SlTE3@ sPdĩ6Tf b S-G @4:%^ Y-^av od̚m>>:՚u.Kv$8me'0@/$IcQ2C{6H~ s.o?յծ%p%p`HA4&XLѿ+! sA\) RiS)-cƘ\R%{U!ZCc@Ǯ.tԺyn\Fv㻮p-K!!WA{el f!~y%-H搴ɹgSW>>^}h˜c a@VOQr)6d;t\RYےܛ=W<ct6)/Chɗ5Ta.g 7WjN+ÝRmu>E,Kof@bX̥NyCIz=hTR #BKUn@C;j(lHc?2@K)C ]KC0ʅK)1[,L!b~/hbiET Lvm?B R4=YpgVߚɼ *jOv#(Y}DA,g]&7ÉVqRTh ˛Ƃܦ+/_Zb^RV#Hp)prROec;Mjַծ8k|Ֆɣ4!CwCɖC*Ts=/˥uN.p ~.Sb{^8;Q # s4C{ܒKVcs^:ġ3> ,?*[*7G69%̌MɖXw 4&ק]4H"&՚u ?#"WYy/el|%9X%9`#]Nna !7;wTMj [T(04k+$tҜbAKlq6 [eE!SfŹ6gM.D83."X'kwim`5ɴCuWOuvVJ ߗ&5Pn8ږRSApAK3],e+9 !Xbd> 2\R)T֮"`80{]Bng0_.0 !MY^g*mTd*y:;G, d2*?!\hx-CglSU/r5uAXW_I'͇|p|Ѥ{Y({C)њD6B C(I"~޼mjW2w1;x9XBV+sbx|MwIR-6cmrl1`*sY{bq2!d&g]RCYf$2>αǺ8:ې3ڎ1߸ ۹c]I0Ue^%`gg/d ļ%@ypђW͚b^\%ec*ג4բ\YNDJ+F(oϰYZ̼++іލ'^:EhiQc/B^_e^9}bCi6 &4BcԽIs0^(w6J7ܵ}|(ۇ=`W 2F 3x*OU,ηҾfyǪ T9OT{dto +VPw!3ekmWͫ'*rȅ ~xe+c<+e cg&>x[n?'zzDC6 H2᪰O-b>Q؏ҷD=񃩑ws&k&㳉$\̭ǺU{|6sae9MmQ!s ME^~Ͽ"L2#'u|2ugwY+C U}_51GFCI'ԿZ>*1o'>ێ4׫I41~W)[5c%4qaĬ%+mbǕ}ІG]2נ\9B'&L-&C=Wb[Mj^C[9?Ss?POr+ڿ߮J"Q¿J/[M8,'-_Oo >{ę:}%}SOdz53??.)¿{<{ILNWf'Dߘq92q>\8rO%sAxN-r;||z~hynQM0ur\qks$OƊ=bynG50:GQ8_wL0D~SyNmkOh{sDç׷&CJ 5N?qih}%W-6ߘG:{^ZRΞ?W`L|\-cjAG a &>MOtm'fLhjn'>J *~ϮDv9b/ u2s⯁U ^/vīA[ 5ꋿ2Kw!> 2G% 1`0;q6bm?jb`iM\^iMi&z5anPqo`~>CȘr/7&߭@~fkJ4?xFA>8E3:5oo+㹶 '|t/q]Å=vU;m1ó\CEŗV(<=nMStO:3M76D۱3FN7ǨN~wd e> gBH<[%1֛o!6I=>|1r f~D=tN;Нd|=(}1}M,| 9w<'A埏"{=~k-JOU1ic=NK$1Lw o&w~45=}s_8 ]jqmzc<#7]zWJuψt"N轷Hxڈ唆xQ~׽y7t8R3{Q)o?]G޲ï|:2{u❋["]Ay-v=t:_- sdǐֆ&'d['߉W!Oܳqxp;i}=Ouz| \%f[ol&52M zc'Ow5WwSqM:rK.o-q]gm(Gf|.3q8zN>i4'Pw\Kq~cM.4*i.֞kb_2`XO/6W oS= n0rr |U>r w#Ƞ1$@ %!hDDB'tw AtA#^.áF 0 2 vu~/_׃|T׷^{u_^kvg2$.KH#ghJ Hܟ~Cܝ-5rsgP`y{7>HW_oXxsp`E]x߶@E_/b1^IJ?5@qDV˵뽂'lim4HY`m6yc{DttHF OsRbj&nY f?`kFٔ)!y;l!i%3LenW̙.Oɔ*9,sbdL?3>2>$ҖUi|;eټ&n™9r6|}k>2sf{]>c[2۴^vӞN kO[-/Ð::tF[ Z%`=gK!"h!j;30Wb\_iUWZgڀwS jFI^g lPcD?zQZ?yGѡ>TMC}2<9&ԟQ[| Ԡ<[V㸎+#鷃U) G?8J5c x:ODYoۘ^UrC^7j|ݸCM=??ZkҟeGE|﷝55>RE4JjPi>Ѥ~W4#ͽ{k|Gk|i%h|jNMT|K-N縜iT|JSR0{͹93!ty\^OU(G ,o-*x*a?aJmkD!ۥe^FO;MXmզԔsE8)HŞAZ_ZY]*$Lxm>xΗ% Mi~v:UiLi]s9S~~Y5Fq뻅ubc/bIXw&nmi@=C=h:f /&@Xwfàǒaw#<-'YH/˿Ti#ᣅ>\x3yy 4ͼ)Ნ4c74"\p%+g&\g7kʳ_195">Sx.<]ǚq<+\3!2»j|!}-\ 6>&.dT}^.χ-߭H/mb4mb)\k_bjX`i^^~xKo.&%MܦU$\n\D՚lo{"}HCxHc̷i1_EMz{yT8\~f1֊+o otygdy<eH?P߯ILw|0}z7\B{ W|}׃$v[,(pyPa}s%W{_Nqt4$ҏ|wI?&0|.U^ oMw/DÜ|IÕ4/O_"("u?~Mn}!|mBGvӼ.a[soy o87ty~' O#o`r<<Ig/"|4\Oyp"L w_/&oAH* ^N?W߄!u:>wE+7ë-^&_N~|5y\kɳ5 eMk~y!|oɫ{WB y_#}:-qhr_SWu8i##0qDo84Ǒv#u8NH p#p#n8Ǒrx:q7p#'GG~s8ux> 8tHGlGGGf9xG`X8R8,!e#ǑG9_A?GB8rq38ǑG9wsQ[8DqHw8Np8Ǒ:,8ǑG988>8Ǒ"]Ǒ+p#Q/#o E/^ÓTϓ&N~IYGZmgG#ȣ1"OøXJ |J~FrOY4OI/'yʊ |F)I)$ÚP[syj4ȒTXPZh3WU. 8K-u^h^Ht CT h9UҘQZb:_ĴO+sdk^ ˦OcDθ>n&G78p1-6m* ~w"uP_j߃|9_F/h2?H"zq&[(I4j iȟMӏj=#hTf-o_c oInBKx 1X5iҲL tH̎_;8gDO Wg#f&o?f?*+* IJ>1,94?) ͂oeRo5Wt9(d59_?lz!k-i|[۟ O;K׍h$wtwM $~!#^NvAh>FM&ՠv߲߯0<&S\'G"Iwf|y|^j5|'6Nf׮1?za3x}'6QłO,WM ljzWMl+VijMOj GجƄJfMg{ҟʟ,97ypJbr(?oVjԹީ).{\;@u1l3SuAfߘig]~{=zåW2ႯVۿ{L?z>5+:$X7 3m29#oغp݀SU쳌|ڠIX̩ei/:1y "Fv{{b񔌽?}O?[?|ȫǼ~miA1o/'2~EW[$[_mz&EmX)zdd8vSϸ]ۼf}lD^[t|岗j=u1WzEˍ8~Ck36FD@ v|#a rTQ]r4>G9 \>0||j'FA2C &|XEЪhۓ`[M9@\nM%3 Ԣ> 'dps@=$=`6h;"(>&olB|2GBhO@'-@9{P2n>j0lC8X|)OєNgy&xpGTj ;i}q4 ,#Chv2xs(]H0YBJPA_p.*\O > e+H:@@5!˜>ɺ "rr2ފ -8 VܢZ#>K!<8nȹϓRu"<L =AxoZ{/*vNO7>:W)&1!  %ϞHr/0`(pl<$= aj.0DH<~xLD&V;I!Cui'ocg@*R="o"8jmNY464n %A7hj.8.z.Qw.KD㉱~0KtLƘ)-VMHfĎPM֌{l#ISzE]]0n:^} U(6h Ûa q9ID30Rܜkޫ1k$JI8`yp/fFyH(ʹ91`h?<;h̭e!Ϭnʰ)RkbE"uVL"V@'Q QY 410-$O5Ҩ>zGYr @]݌_fA a#% 7/oܼtJ#2XptlC6x;T,0&*dJYfEI1C ySwT"(MnA0_'OMh,w]KM)O>C+[KY% &ZyCT݃SO9j&bJš~ ɒgb6N H(u_q.],0vtXiĘ5HU*;|7jX r/tFOi MgMF)ao:|QK8fGͣUY\rQ чGl1:Ux71f.: U9Ϫ) 7M\UT-Ț Ljh^dq\aCTyU>ӌ{QO>lDo`Ac*\3 [M؟W]LnP1ZOUX[4%LI _ ܂Sdx r+d.!hG(èR27, BX\+ `J0HŚc9E`C#!cѱ@) 뀍@c.Uop$!~s' ΁vGmY*sde+3`*ݗC+RQisIPG͌1JsrWd<*G uilQ(`:<9Y}.@GAx[^~  \1?4#kL\UMT}ȫGzoVvuZ}XLJ"W> ~W$h9:r\#m^rͬ!yOqR:e*O.\RZt}q/3r >kHg| z^|!ILt|[ӝ\<_nVc}5IO`5zz|_ɬƳ3#U'(MfbQ:/U߉⩡2`mHs619k >M)[)lՙ`̑2 4gc+ˁzr[|?M͜˂ca) `X)fHDrrAO橫Σv#oOiA{>mbڸڸ#B4QqАϼl [7^(Mtw.t.s"Lx>Iv~~ hO62Nw eZ1HO^#E`) ;q>es~4b4P=%f<@s);~U+oYŝk |yY+,}rV/+ NXX[䟸peya`fp]NJcow%:)Sc2ஃDgU&e]w % MW KKRRgΘ-D KZʭ .-w 溧.{%Ab$"E*, )J%K٦@Yiqa 2,/]\25QIN4eB҄_ d,) gW# =*@ }_ 8']tw=IҶ #[4oOlrL{wNo7w?c_jv4vҡdFŕZQ2+qؚ{.9Gzѿgv@ee%{/xr@n^Qv^AQ|y #PY^(,)TO~<[c/-,\_x>s᯼l['ݍOa + efWV+.?yB|./ɻqͫWƧa\vyo^Xc[ʒ+'^3__Y.]VZwG/9b܏Z^w\9≵UtJ+dƋ} !heWx+Zq{#!h[ůJ!hkuz]ߝZ\VXw+S'&&9$K.1›.I&pbq=TA nƓӂn6+~#K/#԰^'k(u6:C}=[g M}Эhi >nF5Ѳ5ln9n:K^`e1l_щ'e먠q^}nz?O#, hQП=FL\þV' IqR4Aoٰ虢}sqnXhJT56 AAxY¯$h8 p+h251~H7 1)^a=HD/QwHۑ AY&̃,<-A saNu6}m3/Róxܒ7Km}#оWzA vI:Lzъe{D[{v&k7aS}hL8-5K${5aP`hx,?Mf\Ml}}6,xqf@[#?w춵ﳍ6yr.\75}ܒCG;"$.϶w Ħ(f L]l7bvzAcY-pǘ cZ1qtAboBk6rls͍2Wo˶Ʒf>;q69~$y ^M~LxE/%BεW |/`l~(g|6(v1*m|}8m򢍿".pį?_ ۬)hNj4mc-Bn@,QBJ(;PBڤmiZTZT(beQDv."-~HE"/7s齅͝_9͝;wf'O+_ӓ)L_ ~0Q]ږ{6 1i|RQ`41uM-`DwF~ ̴QJ?✋%&l&؎W1ڟ :wkG0NB^o` 7OG'G6+3`_-{'h>zvw'~Uq_ k_riSOݨ>ψ{~M9t['.mW?Vqtq=Q\N_ m{pzf_16QwBw2Ǚ4Sga)8~3u}F O7>>o[S <_f6pQ[v_CxI@-*|M?>>ZΙt&9r18H?&1h&{iFy}N t[  k!V5 FCIr9C;YR8sga&&̤LNaҝt*NSr K^ͧ _^-WV߄>bCYG:xRH#*1я(^obkAGx xc䡉֯KpӇ6 ƒ>TU3<?nx0& VӋ`/BUHjz Ns>|L?\O`<Wl8n P5#K'oE/߇id~OQǷ7h7kѨ_|"%> x{ǁ]p<|O9Lگ`5wy;_DƉS g/ *NxSŞ>Twhу7|}߯nhwx3ŞNl)[GJ:Uԑ>V<&>`_|-ykC7j&$6?O%\|/2h-x}%EF-wEnd L[V9ǜ#!S(߰ \ሇy%ǀG!^ oo\Rm?\UC_eAAZ1}"u3Quz9p\?~L-?\? į@V <܄_S܂m-g n@x:' <>#> q'w ^xp7>7x}Z | Ag!N"~}"C`<ĺo|W ĝ"|oFvċD|݈=| !&cW?;O#ψ97 M/"ķ5O=G# שK+- q87܀`ήB'"lHI 1&%M=xN#!qπ8OΖ˄xbAG=*X~$4S8q~]SǻZ..TqEyU"bNuWt!]]̩.n@W]sl 8FoyϞJ}M8vY$1gec4zܮqNwd$|O,}8K|,)u\@2wQVWswؼN[2%Rxu*#0ي܂S^'KQs}vqncRH3ȓ4+"?\nQ!VP~v,H>ُrZ !}42 ;ҍ+_NC?k:tK{p8^3n#ЯmcOֈcT~hyOo/? =*зrC9#.]}W x q:jοȟ7߉~D c%~AcR\ #}X@2F/@;[lj/ IO AC-uw:~nQKd$.@@l\$M9+p$h@vmPrD}KC9{#oJo}J,/}a<}߳@dǚ\یjFF,&i7OW^?`֝ʡKw'>qMwzm~"gт G.tϾW.sN+M۲]aNk~#;ʥ4l}m S D_~>f9/5̊SX~<訓֭"z낳/6{:`mZ7k݇]"mnZݺtl{iJW]?c|6d#y`Olۮ?o:G~δ!̞Lޡzd[7Lt-'{o߅L֯: G*QLŭ&zNꘙSVlތtDM^{r\kg9.Dqow .8֕L]Ⱦf=yǶLL~0Ww|#'ܪ'}K24ހAQFijsEQk#%:(18#2AV/@Y]ǝߥW1SNؐ;6F>(2ʧϢXQYRjԋы~;{VsK׬S4MK|^t#?>ا\>qS}B@!UN?nTcا4|F 6MZ(~_nNonr~г}cpᕅz۷ĹxYls1'!bf Btk"=J/M&e}Pꍾ j>1YݰJP0UGb!zߴ1ZOfc P/~o/&B!+pۥFyYC(<;n  %e ՠPq=wA&C(,QeX  y-:،Ed@4T.71TqتcczTTC%00J`aر1c-}d7E H ѯџ*ց{331R1P=|.d-}wO?Gogz/ggI9׽Q.$7I@"P.d E iD2Btw!S(N.Zkj kP|p[Lq^ /їi@73E7^L.xCvo宆l.5~"4Џ/p..&.N[] :OЫQpKX&+]/ ?+6KWg챱*m:YzE>Oʞ; zّO Ry>ʕx}pm(^GH{O#E{H+9K8}w@S2l/lO\HP:~޽nF b-% hG/{pLWOnuoa Kk\%R%GmS83\Wo!sEeLȯ5k #}NߏVYŵ>T$cUÃYhUD7X{ŵbf?ӢZd}獪>w7RM<"Xb>M"rlkmVrt3w~U!lƾ{Sp;nVxTScN\1|<]fq5*5JwZSEGǗ*u]'f;U#n:ssD͑eSxЗ(b=iu ;,pYr4Cj&XZ醷؜]j^M.<5S&9c͓H%6OW9%=I uOhcөw$>fKk9hcջ-8{t1|_ sOںOfUd /]o׽iyw7>y_o'nٚq*D~`[FV_aS~%Iȉ<97ɑx(-Z`^`\(}bBRwنN[\rg C.=iyص'v"5zMr7]8 e&*(kc:d%(<"VAQKgqI}2#^c%. zl ۱l+䬠W7|Lqؾg%osћz2f1.4m Ign}}̭Ug,qAJS~5-{#q]ˇ«C1:nl֥{9*myJKh}A/B9X%3(}Y.dkFJF#KC޼lTUٟWsk[k\Lk^J|j5;J\ma&w=2q{aG LȎ.Ka=w3&WAIBjBb# YXSt$6h'":׳7U97^MPIUs}PQ-|fIriӮ/YyZn$?Xu{x0:R;?219aUYQ*ya_-w\rڻ`2I{}Xqk.OJ`WM]bkT^]-<5(Q.ް/nĢ?u)U]~/BҊ9}fꎬOrɻe%lu0VcDDm~mj%Ɇq¢~\XQ%%x#E>UA$疝+t\ջ oYb^:NSO}~Ol\S;㣫_"tJ~ \I5xi`MB.*Y8[xXAjaSTm8Wsw( vz>/Դhf<>ܤsl]Zc!,7Uu9={ٯu>)gp gۢLF7J%lЍ)%Dޙo^߳E$25z8x]1tFO}ʢH=.ST,ּ=rG@3ʅR9Ǹuf`ov P{jsE}975Ӹ_21!xq턾w>d 9OLF'r_ءk"Panq$. Wpmzs $t{k;6].Y:/{30>zv`U2կu+?~_-ջ`wȌA:b\xW={#vL7Nt^DN7rjUNH+9e?_A՟V[eAǔON]lZ_,۬,V ;y^-?,Wv5KYsku/ߒ |oNOnq[6<~f ͆9j؛~?>Wvۗ)>|DpéD  VeǾY\[ei>Gsk,޹c/b\_OIeyw¢%ָS{cFb]o5|Clz7(H7&g,&uwKrLw,^9͢n*}ۡ[ּa,WaV4sOҋc1cɰ9h'r .Syj?;e*U*+w||Tܝ_r<=~ l=Ё)R'ȻPX0b?X^bT|V@ąufox7P&VKE)9_ɣ\N=(]u'#ͪ~v:WUwEhsGy[˂ȷz&[`x<]-;䵮3 %M/VTn$}6 RѸX]tCѵ7}[&ғ]_~_122|TAju&˗ٖmqL6|suC ez54F_9ϖ|ꍶ殩 UR WŬhh9t%ݪ䩌|PɅ_(wZwDwCHԍS7[j:(@-l|?pn{,X-J6t؁Y0uuH[q-CGtD^|1eDkr6eߑ)[*;g&3^dVIխuuCJx Z+q6BB!TS34fb ʊ[6:ޮ (.6TUJ`VPH"-fIӇ%U'o+sɴG#.͎B; +)KygJZ}z>좱*7{BiU5/V'&y.ǽ͉O<;b[5XxQ˯FW_q ~]!] kMQ't7n"zX`G҇X{ ~2^ΰ{U&]b$7Rg-u꡻g"_m-B񥐉>ξdy ʫ릝4} ɑckFwv#:RѩaB &ܢ=<|IDwO_ooooW֯{I8%EYp_\O~OSXڏl9~|? W?2fZ7B  |»1sq:@1sm 4c[7 k uGAPB C;"s*j~ý0j0 p 렃 AF湘1sc3ã0gRιLQ'ѨdhtN`/Rk%Mqx()8fƻANo@2*4 a!lpq{‰Sל+ OW&#/VZ~@8X:i0GIƹuƊ6ffOh||Eh S}<Z r'i1`,'n>Yb  Aß!L/TtdVbڥ)/(Up fSB9UX_pb/ b+amrhX/3Ŭp > ku,}+|lXš<L Ա0ul/@\h/XNm5: k.&g c9^ f'=@/\ })i ,xG{v ^/;0 ]~&7Cawx=5X?;"vxtyxGڦ ~}Y:`ޯ8r]1? 5]^ s 7oF o[z s.G;)Go/v=fX0E~}#Xܫq#{q6N~oFavӛ/p;1yQ+}ͤ>`y__;/\,otҧaFlyotyFO`0qZ?_Kd'}~S2|M[`,ddvkg,6LާI@wF|>L_ԣ QrMCas5=Ga^9}{%״`㧒A\k*qgRQ\0`&'l6fcXrtohHF)o .x,n7CXwn>v("d!qFI1h/G#Ht37k) RQSh" ˬeLAɞ>$"^P_g8xio|@K_=cVG&! _N0APo~Y%讠X\N%jD .>$:eoN'|~.dpq xeclkN"Ch͠Bv$ۓK7$D 12]P 7/  ?ߑaԗX<b}J#?jR!w,yFrꟉyXͣOS4G!rVه κ?yRy}E Ÿ@_#}%"x Y|)8HRLp?[ l\SoUטH†8Ʀ=5rVKn&U!giJ*oCL%g~`_iw3g:[ ٴk~gumB87(d8Ms=u>V|vK9z~wӕC6NYVABMR9cJֲﯽԥBrd hD=y&.񥳠a认3ܜW%u7X?վV fz֤*7ܤo]ȶЦ $`WKLrH[ TWnV "j- (AZHi:4mwcГq܎c͛83qFg|K!I01.IebF[_Rs9c~oKߢ_gNhV4“R5VVrVXSWd935$LU5TnL OҩjdFBVIfXuò~+A ̈́`APAHl0VUVuDXHI32o9<4˚gjӪ7>\}s>>$&gL|g>}A>O|Y-jᤡpS` ]EaH 뽿zԖ>܇DQ>Lg>>Ϭ{s?g>->,٧]u{ƽcl;vG,B4>h7j$+pfPڒU#R֤xL55J_"4J_"0i%C2ː7>Q⿌|}GORC!| (4s| >Fid'mx'q Sg)M.z'm!B-|u8g],3_P C7S:!ڃf8]%dEkܷTӠ>oSbNG6y8Kdtot%RH(ߍ8>t/ӹ0A#p"8Ot p:wЯuONQ}=VtrtKsLdc0+r\ap-wi;A`,Whf"]DJ^$WX~8,DmEy{jK[h:+S+ t!7.ΓE e2.Gs\`~b~X֣1= 6ٸ8\#7V_k&]N%OkQظ1:T5saWW*~<1}[<6 =׾,a 0^39=0}d* =>i[r巩{*{'{;( ^ɳ1]gZoTߍ/A~o+{u{hN{oG-/T, A[2?A}7 ?NdwESUW y8 T,Y.:/I!{4;!7b'H,7GHϏ9Ƚᤏ#8ɀ0}*(2z*heWv]}k]d[3h ꗎx[pi_KזY/:|%pYih?! &u&yVk!M{A ݺ.~bdPexVxyv #`?gپ0 j_Ɵ^xYg$hЎND<>%$sNh^4\,o~'ZC4K3q/| j'k^s<R{\r]Kn -V4/d.\D[mV Pzl$nGt z۟-p[!LV6L=$QY=%Җ^Tn/xJ[Y3jK=Dmj/u E=9nb~JlCDz& v{̅>=wXRt0f )n?HΦuu@/#Ap"z"[_OH/KPOǑJy\{z\E{ӧ>Z۞{Ȗz8|yzU^h^38ɋ~x^=>zN/Ρo~ɗ㠿+??ƏAQ])ͤe|HpZo_MNmQ?RO/#?'O9(ñ`5]¯Q?1g:S&-6{l ^Vmrħ!1LF'mZa{woCEXj\z&Hq-Bmj4q/5jD?6ưH+"6ƍ2Du  3Ke݊ ^_ct<ԕ."E é=ڵKw^ʑ7wݡɵF / XTg1Dκs4`azۆ 7\|w`'=gy̸/t̄wcpY[[V;A슙WuSGy6jܰ=%ԇ-7\ső#o8+OW^2|#7Ǐc<},! ~|}a}n=x;l*Ĉ1^9nNxx/떈[v9±iK ULz{.W]xqwnNqyR%8|ӥI['F4cQadeTI0uto) :z&~?׎ޜO?kUSu?sI<ݚ۪?Wazd}?ЃرC1]VܜطY^Qz:Xeiwϟ(unkL3DI3hlr?} tEvM08 1QQ@PPzl*!"v("+*.1$!faGdS[]t);1S{oݺKUO Nvr8u9=Au{$]ޞ^=It8djݗFB=P7F_q~lWS7N: }M!Hv5n'RQ1gńt+N7F<_Uv8;iKF t#,t#Ͽω{3i?c/ Qdpu@MozB*c#F+$Ky2<\]<١15:p-&nݘJc569sH_`y9xDÙS^Powi@_e\Is^'Slvaҩ/G~E/3? 6U d?Aיc UkT F7=[u%>.Q0;gGyH;@luنsU8H.R7 })[onm_!g|vBH\HS$eu_& c';Zׯ qQuuD"DeSB]Z`Ma1%^hv d@1F8Eb)\ `X! n8K]̜v-Ǝ.z#M 3tW(,9;:X!2X][ٞ08,B}i(l5ϵo̡3۽Zp~8TzW{H_(1(=#Z%\^LBum/Aؙ힘;8bN{ׂV=gR׸ݺod5%'1nGy͑44Cm5F"(NlUo+Z7v4Ƃ(F/ ꡝӵ-FVH`oj͵Ґ'Ƕ1TAU '|֊tGcu5 suzJ}¤>T*VAT1zވOf2 ktm7,cF87[0%VANF|#ѫ?t"%~ɺj"(ƴ&:&{'L3 ^Єy5^44JWLW+F%2#b >qF1y(>M~!VAqfokevᆩ@ OaucT-/ĘɌ<]+46匁H.]DLjx dLVҊF1mxփUe2틼lA񙫈3iNfr'[d L ("t\,| ޙ<(3灺@dbBy(K?o Z<6X,PwBm=5zȻdZbP X ɮ;)"yQl}U0zPnf񪋙m௖_:O T/{RZCuʓ I!wDL}X柛ݭ; &&S7QLEkF|_/]r^n鼞`}o ؚ>Ʒ g5c_N 2^M)[Ԥػ`}Μ_wXyIM^ZӺ {xOoP OQ|U;Hwu *ZH. {H]^ cwg!oV5k^F(iQ(izrȥ4!#u!01ܾZڨڽͧWGE [Js8^׊|E;m kePێm.֪P3܉,f?hԅby~viު->Z!iJԙQn=.s)jB'NY8s6Ywn^PL9o쥜=wtbOÂk2( ɁS l9۫[w&ut+X S#9k'XvbߊAW&/$|f3-K/Ih]hpEH=;k^㼫U'jH.f7yij}wCc$[E*0yX1^rWa\qY'Z}MyyΜ5R;u\=%l>mM1-emKʬs.nBmXj}ے O|˹2Z3>X2X*KzklyVxJ W/1]|w>RLKCv ew1ƌ(W=*;\m= d_RL72YbVOs]}PC"XvJY`4S,of/FD!o?b:ķ 񭗇xaU$13YmV4xyvWu&Z{D*V*2'*ZghCjQ=#q>S꩷=hTݨ/_a=Q2]|Oe< "Z_ӆkSB *vE_٢nT0^zWk~uyV?eVװzmLwϥ|HUG[M<2 A" U,L/}J8)c˛ceE?hjPpύ栯Rwϥ/\⫡2XF[wnme2!Gַ{uYMo-UV[Y.`;9:2=; M9צ 6.e`R7[|/[7lP`ROvqewE$8yKq|WWuÖnB(a:_BǹA^ٹY%DzToK0J}< 1ECldt\Yn9f<'x+ؙݾnWcj.lGy*j%Pi(t|]MpldǵMNc<[&=CFouPykd{~Ǐ^yEbtMtz<|Qzv_֔w-ckδ5%1tΎlVAcZsQר׍;eGFFg/>b5,ʛ1_eLE5 9;edǾ]q^:jR݂y5ÈxVj EJE^Y6Eֈ}ےgΎo}J9^UkX_Ѱ+I' p`S&vШDq(>N uϿGQ^ pJz/n?H( yh~{s[bSrR9 D&ŎXK'ag:m5}Qz 6yM ~dCY"H< WkV+E5ޯCS~ѿupJa^~@<9*ސx\iuckQāyffďD/F)lugW7"w ^5ϖ"卷 .'kz}]Xq1rs?Y*k4fVFƴ[5'ܘ6۬(91qؿ3hVf%،S՗?<A/ҵMQLG9-4FV3O c,q*0?w41ǜb~V7TNgSK*VKܧ>4]ӵ b`$7ВߠgT0GhSyj'ȓ tm<hҼ%PC ƴ^hO1g'j9Vni턮2^$|nx,p3Sm*Rſ!tuA0v?v\mܞN~wiʼnoou^O3)$DlƎ)?r1,)G=>y4=hl.u%-7엒x[#8)k[Hw)2oOI4"\B A#aggd٥.U~` yw/dV=}˯_Ұׯ瀯9CZZ~(O$R0h،- Ő f'JI!{2rЈԌ: ΩCSFD{҆ 9t2RғGv`#RR:b.dTlw; d`=z4eMc%0Fvz(6j ~f?\իݛŲ)S6M^d#G~-[߱{=p +)gغuؤI YÆؠA嬼+ʕ[n9Ν~Rt6fLV/_fO?m1ll=-_~= 6M[٭g۟`'Ntd;ne[~þ3ܹkh1[x4=z"8q2<0;|fv͇ءCϳoZecǎ^y k$\ɮ+5|˾v[l&9UV~Ͼ>%lk5gЁu`cG/֫׃ 7[-bW]͢`_|:{.K<7_ծ5kiw;>}ze^Ţl7dXf:/ٗ_~že!,$d[wYE9s3l㏿^}ti ۲e [&%&agfwbj{ٽfge}= r:5Mp8&{͛M7nvs؜9XVjZƎfHg/_W+nd7؉uogeud={eGgo(:-kv![9k__6l3 ;xWon B&1 lLxI8X&c8Q:pH 8/èg`` o(6㽄 PJ~'N"%&>(3/$0L8z$HLf: 0ppGǑ,!SH\"X?Ez< Goz l&6$6Q!=gtc!`Br`NL6YI= |3x ^8ݘLn86k2$^AS|HÑW"ؚ d"@B/97 ģpR8h[>U`$L$HnqH.==wH?0/!ؖÑ &Apk1yg^ @0?I.Cؽ0!aApzH n$!1GR`r>8A@ʻHN-!ϐК#?Gg"@h$Arjn nIoGExI+A| G35b>* 0 )$_7HaH\̇xs-H {"gwFBn@Z$p;"$$pې8T,رj=ThTNZk'`p T꯱hK6~*xFJTk'VPb5j&l4b*XU|U~A+X NJ *˨Xec u-*Z`u*TPJl*w_bx+nX4AU=c½DE?0jaz+T**8V#VKXmJs3 TX-JC NJ7VSB Jڋʵ ++jGXr/*XF`U,J{`R3P߇DbcVaU7W*UoE_UXicpX983 dr.rZ  drr2R@ABK@NCNFNNGipdHrD8  ENP0bdpJ4iR(ISRB   3%JB hr)PPP`ӒӄdRGGɒ989%Vr rr DJ:h)RbCJAB) %OJzH(R`D@GIɐ%/J6()R"&!#Ǣd@Aɀ%5rHv%7wS>*-Y{MfnXAGLOQcD: /m~O={KԭW )`dAO% Tio^sWIi2S3߈cnoƖfJ?'iDʐԑ)# [ M~L69jDzRQO=CLhf?*jp{L#Rl8dԀsaÓG$ ;|TSo_!vPF8VtQP[9&Fic8#_"zQ4)KDhqu+'_^h"l8wU/]x\R^:w+'-#5=%Zkq)$l0{M($ڈshϣF6};Ndn?sDZY"9/;XhrUM oE{&mWVѬE{WIE{hiѦuciM]> >l%j:&4`s*څmhGv"~7B7C.6@oF^A:'zD;QN6ڇMvVho& )tI!טi${f&M`~]f{5Mj>\B`Xhn3 G'Eioi_A ~`qf Z=h#Nh$~}+/ڡmRN;բ4@WЁ;rhEn?+2![sy9kkϪilvLz<'136oy/K^uM2vv*6f:Ix Oa0߈i)jF ~;7h$X̦[PmL{F津*֮%A6V2?ch%WZ66<|R {CDgWj>Pvqk[ .1ߓ4mݩ,-uR!@fբ xh7Bib\okBY輶'F? ujӫXCMޫEos{DX>v{//^1`;  `Fβx1lM/?wx668 W|.I)`vI/Xr%ך|ּۜ^l1&lmѷD lI/6;~ux<"@,ZtCl2mztxѯMj> 6c%y׋q6?;6>~*;LjVδa6YoD?{6Yt՟MOV]~Dvzf'k,yr~mGȱ?znȕd ޒ@ݯgr^A3yQD梩h~Ѧ=r+Ѧ6H9Ȫ7 ̞Vȝj ;~M]\ޚ7}'{l?7IYsSrNbVK[*>L .ij;lu;\z&m[{&B?{~.h*6ZN*; | GW[?OiuۘVQ7_c얚4]Osf>Wo|oxlލOvqnF{=Bik4QGW yY [EA͖+su8co><:t;@]UѠ1쩔Iir nHIw=TQm%m_]k+~e" b5q ܜQE_**rCQhZxHMpV@eW@^*J׮+3n2|^>[,r}CLuoYj[? #?&->X uY ǭ6:2e7^W+"k#OEj~%"xg{kAWU]KrPv:LW%[[藊P>Wܷtk}ir#%jV[IYPW[j@uW,_ ) >I./RFWC:T34MI۽;߷j׊%%zC=IIÆ'ުa-0n.060|g 8)i@r򈔑#$ JK>*#bPД)#'䒒2 x/ɸC\i t/ K(v~ r+FPV'r) ̿ > 2.<&JSA!wBN|.* O[]ƅ;e\, .ݺ̫gre\ϔqe)~[) }"?JBƅܻe\tJUZg >(_F!˸nqq Bn\Ce >*V~B~Z Je\]QOABP >4q:}rqiBw?VЯR]mg`>2.D˸Z˸AA]!Bd|RY'W?_A[!gܛo)わGDW? rWTǯSg!Y\Xno#OB:Ы!O |qqݧ)ܑ *JgB )^Tm008|:˸UŕQ!wB:|+)_'"0}re\t.|F)R🩠BG 'od> e\i&U;)> >*,SSEAH!B͍]N2./JRV!wB' K|+lVSRA_rȸqkW'Y5V~B;LtY }+_[{Jϕ)rɸ^EA |BY o(+~[Z'|qq]#3}kr+V3F W r(U"*0ke\"W'B9 }V+NgQL2.+KAB\/|*lRWB%要ʸ >^ ))S]\'_gBVПSe e\^%כ cܕ e }N+Ԏ'L%タKA[Q  o(s_B1DʸLťɸNAE!Bn<|+W/RTȭT m2.q+A~B )++г 2nqѩ }PPg[ _+(S9 OcTзq뼇N) |&*}Okrw(^Puc`>e\i*r˸BnoWYB}B!v0 %ܾ2noq˸f(W!sr_|O *;ɸ{Bnk >_*W(SYQ=%Ow|d\\G+_P}Y!HD稂i>co Aƅ[e\t?Pg>)+Q]+~ 㧷[۶ǰq6ieíp_)u.&. ~"j!۹O;>B (Dۊ*kߋXg$͎vlx&tقڍ#>$W:Q|fK(7uk޺rEa(!NJ;+nS/rpYM -ê$Vw+GG6 c|+I~幉B[ VR8Z8 SC''. S_(IܟFƿMpedh=EE/_Ʌ?W (G BF!$P]ѿ;Oa:7 9E]l8UeI%_,P(o@tM?jH~6WX!?)WWȟ^M9$I7)GM1 ȿ66 BOr4eB=_@>Bd)տq9OFM9__i>]gFHTG}l?ZWs3? $pE21#"MZRޭi`rB@ AuH̡MzdcA#׸NC?FKY>hqMIЫ?WO>Eo|iʃqG_)Ah6 f/̹M[l EPw']bq᪇\?v5޻M:6~e3uK(ـ/6}tI?<޵xYTȟhv6Nƿ?囟 pk^mwՔC5>ǵ+nEݥƆmFaϿtDי:3jqm uz}2s>}ѽyw=-_;%?K΍ϭĖwSo qsq8kG7tU΢f>͹vBҤ3_o͉7uof ;'}0%n*FAユ=W~frWNyԷe'^#7U,}sBV/)hM% r]uMZ>995~Xt:͎gphw=GyiO}K:矋nѡeڛWﮛB޸i=͉+&ōn]9#'&_˪s´c/?ȷ#S(%z@S?Lۿ| 8T C!JR.&׊h0J(RMCnхJbҷ=IAJBW%ݑJ3gcv}k^2D{gN#6:m }Ƕ6s͈ٶ" '6V[NTL؞rb!zW='KBp'R;lERNcv dUٙ0 :5IM؄)+r`ۜ,We@a+lFf~3`i8Cvr$.,Qx9Yxb4܋+ -D`@y"ȁm'fBOxv0L703 m0kE,kO~S RP %+L9Y.ʐ%VsQS);ؑ-v`@ xhk+3q`Ǣ<,TnX'*SX 'O{Hn+ ^Cr`:d+ʗVRGLS[@ȑh:SO#>$im'KB85+'VI' d28$؀k 5=bP 8QSF-ve` <܈RyPdq؊yb/ǔ27XO d]o_04}2ӕ.\uq>.,L&uj!Ū`@maF{7:VDa%AϪ#VWΗGPAߒ&B) ׶ID͚`>+,{mxa[p3.[ʆzPMA6Q/!m$󺴱K[dg)yհ6hpZ/? Hm1Xq%rn1jϕsGuR۾6?8}ڵq1yb-G/UHD`+\/Z 87rŎL[.v` f rm, HOj^7]![:qVΑ "N;X{#vq1A u偑HGAt4M-n u@`/!vԶbq%206бG&(x2^d̃]`( DF)Ńі}`/*q9.2&Ds%7cͫnc[Q @Hp1!\IS3=㱕Ap04 $&`Q\$m[ -c1Җ 3Ă-* rɺ[L]mEerS5q5wÀAV j]y8E2 -˰OfP{k+(;>'1Ŏnp'K8ߤu`NZt Ԗڌ@<ϲmfA@ Vڊ>>;[iŠT-G;9S|%dJXOsmsVyΰ; ٖ'v47m;JP:rQ!V3%<ȔX;<-lp?THoDy/2"5$])<\/)Ү 2=deGDmuu s[ [ƽs~/?Iy2N6oAs_'ܞu@fcxT=Ww=Kk)K|lCX04\C'M7nVsޮ U/Ҭ~ow̬1 VȽݑ@tgo0N;1Λ4o0{H[^=ɉa|lQ|)-rB}_n}t?,R>է`EWX>}zT3΍Y~nz{+T-տRPt\攪8ӆpƗ7y3LZ}c;3@ř}^,]kUݳ:׏ U'zuߒNrjT7kš9íܖv W?&cü=CvJلQ sv.䝟р #i=ۨ T9=z{^(˼fJ#,]ʙ2QdT:gȥƗ]qtSiyڃ_95<'K%qYNm1Nqfske>c[`V[|K'u4PuLe/MU6UWυ}K+Ȕs'ܬҿ⣧$9Yf#CM., OLܵxݬYOV\2@+TMƩ!kFj0D1TE%%~n.}ty '⧏)Cws`;6ײ{5m{mnF֧sJswqM-b?4峺~ХQ',W4OVݩ}$]7Zڵ^=B+fBE. ,lK:V9u+%nahp"gQ}ޛ-g:[wsMփrԮgA;d<줽W?%)'rg_]uᢥƷׅjs.;ƍ3Oa.C}%籶u+‹l9 &:hg:&KurGjf4>|g+_>&ZrVЫ>{i(0qZӗM; 24zp[λ㦌aᘃ n\3tGlSftndV\O{bthʰ5wn*|g+KkP*Jz7'mwi>OfBqF͋{uvis{2fnS} c6+\yh`4vYˀ4~bs[>Ͽy&?~lF)رnW}Z}}N9|}鳷 ;iSu4y-\}|B[C;Q|.2X“='_~TS'79c`#֛>xXp\:)WҦ%WrUU{u1!VGW9Oq39õ3tFX\@_7ppk 3/}ϱkkߧيs_>KLFX]I_w6@yiйcXjh[\4^$e٨sD۽^psOS>ehזG\jz sH8@#~I'5M{l7kȺ~l]8{92OQqrYҭwʴk{k{=]?>|+glO,Ȑ ^煉&kX2Ό _wv^~|w)/痽?ܙOF|No<)8}4dCRYМ07V/ܼ#>hn~ {/5@]o>Z+@iOMik 6?n*j6o9?G*_̩-ȍj%:9[Ywsv(}ron{l?!%F֥іF*+|x$;pnVћ=Eǝ /]{=t~F?VKa-‚چ% [wMҶjߜ{zwlX$8ԭQ$_+^_pqJG;x0%5q?v32]UkwJbXE/LEW_(8usZQAƻ&?/e3]t8wrCiWg6OU{~Yx|@!>jx>2(zz F/1z7|wlKf;b8=9LW i۶igl\gzЖF@zNͧgf)s#?sSw߉3ΨNvROe@?!ȕ g7%OaﲻxOrђ߾wwG,ٜaMw _]Z]oN?rU>hِg۫AC~ݗPtUgU-Q}ĈwYsmD/utON؇>4]3?20z+N;z& }_yQS1}MUj٭[̲jv{ؘg~}#ya5IYO~sͽE߯U3~"jΪ5|r`6xJMXOl}dʪ}{ڰ)τ WdT5q̍`=[{ϓqټ)-M-o 6nwOߘZ=Gq'>\y \__9#|ie>;$?_:腏炝 4ߟzjgW2bl!Qɋmqb;v4kz>/YfW((ڶ|Qk4yÞ:yf3rzi-R[}t#S_j_a߭aG#/at[t-(Sg2r#"KKN7Zxrӹv.zulij-b3`.#~ Yխ|ŽӅ8t3!Nx+Uқׂc~ĶwOp >7[Z=^1$IhjOun-˖|u+s`渦/-mvvp7]D#s -r̓z=h9}93ܻܧ5x3&Wa-Ov:^[n}/$)N1 Zcg:ػd=q SShrœƠ$FNw8fP1Y{ n]haYm!jz`>0<2:$0^# cfcPa423)=$1($*: RGA[H1p}R q}tLP#gR,/fDgo1[&?·VMs5Iq\q+Lf>5ٰ~ۃw?u|?aC ~:7DZcG؆FtfF 36;4mV}=XlaeUe{P>"}Jc){ P>NC9k skC2C<ȗ|<*/t\K@~ !ʘ}, $Px\ d/zxI|Ŀ$?X~A>4l(xW(M1A&B&_tm|m|d_EP6sߊCH(+?A_p2?nr2g C\ ޝ0yi= 6*lIqfG\qeuC>q8AmmIr”{J􉽮4Nv~/8qL,0>v`\qxA|.E1 xNx+  qc(O*+Jn ~gE+2og:~ nK4= ))Ѧ.&-| NAEW0]-Ż>@UoDŽ%)K?Bĵ){)>+D_wòO- "t\m5ڮhTsCOF|'6BlTaQ0p|ԷK9O5*ƿ -Y8 ӢiQ(3Ze0PpAtqi/paa`H3ٰlD6u#JᦉLD"dKFIywvK _1 "G# D"~(I|cCTU/6e oSq/P?my!ҞSVs$~gLޗUz]I]C*%wI6RqȓOGĿ!O*Rqe*yzPqRq1owD""x'<O"B__??/FC߂gd*N[*73Bߙ8LCAS~%I '8VFK;Ol$ 'CO$d^<~7 w sx) ll}-NMqELDA' 8<U8Q%dH8_!p7rOB 7"2O5o ߅-%d~N7&8<A~!"5M#;^Tdu#d3H8o '#x6"@g"/#;/(UIxuM;kޡ"x!NAD#U;!"]cD?ގd6~컒^T1g`N>fI+~i''ȷ0@^w10N:é߃?q*fNNfx`~SNW20q< o@K g?ÃpaBD8Jg(@ċD|'4Gx|ě ~x'S^4qc~D |0CzLOB+-K2tĩOpekF-w Px2#. I<ır>["Nס8]?ua8;o=Ύ0d0A}Zĩw*û (xpb)JN;jȑ;I<>M]7l`$ =F^#8A aLO%ߏǞ^OD~ tFeG>{L!I !c{p+-PF?78Eq~9vzB&\BYabWƉ?x7q@qW0"@qAx$)sj\ws]p]mp~9kt<.+3pXߟoo iͪ <K)t% Q4R5 u^JH 9M1Q-QM3\RB啠m$yA#p#% ApB煇vrd?}ujk>}h{E~ϤE ;7̾?2FkM(34;-kxÍqiVFQW}ϑF $Չw'%x]캩n[[e]27ڴ l:ͽv(N~q퇧[kϢghW]˸/mĉ)^5,n{ 2zwn&gz۶U;*bO \}GyO&TiJ ]ʷ-??vѭ=E׈4i-[uIjV9dVNI!7:Z}|n~u-,[.{:&;r)]G]{ev Ufj:)7^}rg3eIu,XQhzqM/V*z-ސ߹04zM8~؜_i?P=Rh2)Ǡ7%;.PuR.uv'[ |L-$% iFHc & PeD2! 1R[*TCK-I5ZKJ,Eiw=9s<|r|o;.svL^2TBT]9Zxm;Idl.^/ґ~SŶrۉJMM?uA]1 |SS "bnh-O:wNڊGn}81d+BFnjXuAY9VcI[sVlI>T cH N,爒4$N΍Ū`<56{`sSؒt`36/`B;r&4jOj˴1mYMk\믷ܞJQ\(KRs?XIBχpfKu= &)Dɿ"TED6@T"S2 ODl!z&q@&q搪\'~2T[UY[pm9*-~ԥ-HK _J!v`PDKO¶Dʢ*NN .#Y]ml " %JvA*ΊPd=IikL) BTt(`L:&ehJPQ\)Es1=-䴰 U c"IEk>+1AowQX^om- {Jo>nP٬ }BOol{u>?ApnT叨R<D:z"SGi 5 QF%.p鸛{`K׀'aWeH;@]#G(0P @ !Qs+>1-TT>moMGնye8QG]_7@37`p_QF誟ggy鐡dS[}E4[Ӽ.zy)'7iga[L~8ӽi8 zjz0AIQזz'{{ME^~gīo4Ω3L9)I֬)9ְFbJ!!g$Ɯ)j2GDa?ʔ=hegYL1 SќcijTlH2KLfh&1'gYn1Z2Lf|xђnJ ֆvj~bO,df[3R 挬T F ,;k65[u%eLze§tӬm%'ہ'"zm4k=kǼًǞ2O^gZ{_#?vt%kG ͚3hʡWx/aZN=N7'4T ]?㧽^?ꪒ͈X˳ιx߰5F_n'1O_Vu1mwRvdyw 9pnU' i<8"x徇 [~s=qGe?whVO]3ٷttwW}ȳ]?ᷮ~{̞GN7icf(a^])Ɋgs=g=pC km/tyE1B[$(ͩ?5ə.w n٥eSg~y{5*6iWʧͯگoUfc=?mw]$&㾿Z+EfM(y# a+|Q;5đ mg onS߮~mW/5-v/^r}ʴ&gI6Fs"z*m=t~q-R\-] r֡\nm} / NܪcHU!K/;y1󞭟^r~7}'f#G}|:DUcɬW s? mٝi[Dy|/Mn{Rv]^:8s;ϲ7lV ]kmJ8g/e6c^ t^b'JdI!賳T"ux}}П_iTRm^s8ﺃ~­ T \ҔЦ7`l`oDRMf3RIm k~ڋ#F"w"7~ˀ߅Q kKc:2_|ى\Pcc<3W0u=x,EXAnF|n X/i^#|P# ۫%9bN| 2x1ޙ ^ڗse o($n|Ӱ>6;X`>68~u]KD;>@pCFay?Ĭ jDT~σ ^&KӇq(gB uɛ%_Fx( @k?|Xȑ/V32u ֑'meO|g.+7'̼s Y5a(99M#x+ڹ?3k& Zs/_}q|=/Zl`je9K8#Y`^z[KP±Ll+ _swk@\|ya|~< 0wUd:lmVp @x?bMӳ*1:x< Ȕ2c`x|Ły3+/$wNhk_:ۍ{ ीIb6x =#?X'J2%q@H Iˇ4/mx8 ;V/d61]Գ>詵rM\I)MD1udxq%Y`A +7A-?JʘawHqC9yyoKU#}z2U{~Ч'`.op|xt[F%O9^ʝy_W;+? 3OBl yY#m[@^ϯk`'W|sODi Zq *7߃ǿvC^x}+xy힌TzvPr"x+/>դ롯Ï^nqc<ޏ'p|y][AJ2R.qܬ"Z)"}LAkZI]Ww]O_('%^?r:ZvFeB"v "_[[A~~u ak $g"|!¿kܜ Δ nS2RؿCh|`2eu&Lw; ӡtaZD ɩcNN !%Øl6&;vEPH0;m! Vȿrp-Ws')a\bMmݐ0Y)C"f\o]b9Gep)usZR\ǎIJƗa6] ,5D Re>ս9j4h;S.B~S7u)J~͖iZ;uω5]>'ybٚDs9rBo~޷>j54zx~{O[ g ?1|7 owy<{6ó~R:gǵ涋ǷYx.ؿ-8x~  ml3ó/bxz_9Jo"~D5OeH򴚴m"vs@$"~ : fx6ή"vbEOdx6 "vw'qVk-"K5@PqEbVV$6&8b5>JLX$>0ƣ bHhDYa;%sr|~ w_8 \8=pV7ᬝy gur'rsn~ >s9?r~.΅*Y_snv` Ʊ!gyH۟!mƱr0v )mS>wևF<0 1~Rιq8fpLiL~wb?ɯ`x(=>>  5Ç1<}/Q2\d 3p66qp2b!~qWho>P{PrsxWFpqwO! <) \SaBx鈿\x8sk/o_~?<\? x7p#fĭ-w2@/4a?B{~NoEo8s2pv8s/hi\8OB(/v|=p5%|ptai%ϿE8?|p+t]k +"Nň/CxemWߌho^UՈAZqA! á;A_c>'/gs g.".'Aֿ?@{Ch\}v8K9(ĩߪqyi gr`u '?t_8]/dxl`"R˜G ҼV썮ۏES5 zj`$t[;fm+S-2%+3MJsJ>DzAic$C:(XS^)b(*EO.h5LG'Xn0 2ZtY\|B6`w9'f4Wtz%W#ڲۆK~%{2v _>ᆸhɾ.& 7'hO]B@9uL#?}:}W x1џo}/}w ώM$x/OޗE(8=%Wp!xS^wS)umIQ>2q(F߿ݜV(S I_Y(? q\4_Tj\W8";=)Ue% YZ~)¸# ( ?|^./I:q$N:1]j6xD)owhKU$w -єt "yU!W-z\ '4^$Ϸg[mϦZ tsYKu|FH.pQ8pCs¿٬qxč6~iKI LQ$}>;ۡWoTn/M4\"¶n~vķu?͚ǫt^ݢX5M3rA=caY%U'e h5eͶ9e]gS(ptIȺKˎO*YTΌ:1,)aMuEgMOWH?jSE1!`d5RzNe m^~rGaǜݍڜy 6oѹe[65=i|Esg*'~U(˿cf0uobNwэCL\;sHF$7ޮ [ 9'iE48Y{NͦIc;NI|;ʐiJT3޲>5Be[y8wWM22rA9 ޾8<BPX/,}7eӡy9flwz"Z1Ă}?wgQyUq`Uoilr:~vqڰ·O;J;ϯd{,^ÀB[D;j}:[{v;Nw1\FI93s uQTlgdev?z~~u^⦓Z8!2.椊[d'ME lu7BY*6zXǜK_OfQ6׈htk|aw'7%SVxkfdc>5f01&wݎbxʴN^-I4K:zodARV鏘,Q#W^X0ۅ@6׌*PM t\,#UϬ? 7Ӿ,?j72e\QbJ~]R)67 $7YGxq"bj[)M}:"\c'>V6|OҴ\Hq teO)|[Ke:hwːs;o&lzt#ϱ=֓=1p]%Aes#?yK_}u' %X^,29:kFj\ڳ0'_R$'b5\J;z4:g%tZ,};DDZEDoqFf ¥WRƵ%'j99/.iYW XWv{ٻ׏Jp L{~+uǠl[GTuG=O!%qN8-Ń^,CHﻝ|c,xoYM)fW.(A%X-Z'MmʢvIxY28n~sfj%qV{4vtR7L͜gCM'ިZT=;s'7v2/O1b>e_Jf'ם0:Sg[W][)ADm`B/suxIw[niLZs*{hx1(N\Ur]sC7ɛjwu/>[^@OYGpOu~ޚr1|Ey.'*)}ea+>lɝUog.qD7zGgݽ̂7x8}8"Nbqs ZRmzv=q>h͘Jٝ^GTN9oڌصO0v/0&Ȳm9kk:}K̟&2QVZ9cwVG(ڤa4s+ΑZn^FQQ6s_3кGȹxA롍ݽ$w9č7|p!G'5MSn]ihf_ykg=W FfKg{b6lT]SzѓZ(kwT=LIYqb,׺$=r*w%{6}w[].{K 1N-:Ĩ(;ʼn[6d#ROK- n>x?HyוIvyvw}3؜zx>N?-b4n{&;n8~▘F<-dQ>k蓱^v]r\P$}w\m ${>h))65A/Q6rMZʯrq5b`[UVUBpL.jrm&G.e?\yk%4]TgXIHďwOr:^U$N H48.3ح㦚Ix[DU7u?ϭ#U*Dc~U5ܐخϪ,F^Z=oM.ݏR}U7v{`ތXK'_F zj\JzNE?q^#%o%ϛBNo|Ho 6 {`c9W~lw#C{ʅEUIOo?ވ)I4y+ rl9yfA~lаe L:J#7xMT9sJkbۦf㧮ouYXgƬ}"w㌴\*E:x:62Y6X4v; Ən{=᝿lHK{|YN}+|hzw?e{y[|Ӝ<;+n=_zӆfey.?Wԑd}$qefceε{v6y+]0ZhCJ# )WENl.j{h$Y5zpUo1V6[_6MXo/(Ҽ|JUҙ[y~xѱViv$Q:;]z|{{:g:~jAweLS^!"ZZBڣt͙O ;kJ*Ohӽ LmKr%׹;FU+nQivuK㥫s6gy+)rX )TKzpNGNvZl,~G@Tڋ{iv|*+uή3!,{F|:aY{SXXeIœح]:jby&c%Jd:Zieھ'D lss>h ǫٺjF.rdm8`9l|gc̈́W>0h8pYIz5A/Na6f yU"=Z2 IGb9tIvӜ¸vvkzGuE3O6.Fyx忥:+X2?}TA+ ˭92wc揘k}qR`RjjpxQPs'<E3~>aekø2t^l?I^ZC6TIc|ͱ6w74t*lOr~eG?>O}cáSV|;iU]z4Q RTl50Qa$%NT_y/^ h>Z~Ξv0fKS/+L]Usໟgs7{@g+ &{R[ 9*LWnnhi%ж)$~P^`ΏK ~vPt{T\#A[OI|?[%fu0h`} ַ ߳1:6ĜStÃ1=`fs>e_k<Ӽqe !ʞBA П+_xB{iWAt@÷Љ#0rstnfr5=.#.Q˄]f3ωL, o@Q(*PEPNzQZ_|7~gOOOOY 6cu<h73'(adRRfj,׋|rcbw ^Suk%ĉlP Pe 0THSlE UAU1Ր2k |ZW|֯&|cC`)Z/#z16n)9a[!;?nb_pL(yٟ2F@C6@ _@X 6KwBXva BG0Y?U~9b5U&>U 0/x!f^ U,|^3uG*sp*6d46R/=޷ ? E9*. oA Pu`_F1t.|0T a[߅h*n0;gsen! 0p!<jĀYxMz~u⿡W }`XLy0Y &ppHكh{Zllrk% :G;iz,!R{a&L6g|h r 0W|?qH=Z{NlN!4ru5̋*L>qE#0EKCEܓ͟Ez[G 1Z"FR1m \> aC@~/Z . χ~= l@ G!:#l<2ojG"2.6?~QZ^@! xpͅl8pgQ5<>g%OOb`\Lh~bTM3.D~ЀGΣv2p2w{|䖤U ?sq}}r}?SO=?SCO=%У0$WXԋW ])vtT ɉ/ٴ4r"h@ K $H'`#+ ^(; at0$06~_ y`m)ſh9<|~$h<&7 "",Pu>8<2nя}!_@_%~4<6"o}: VJ><2VuL_rh6%lRJ_@)QMIjCG)g 2w$Mm#"sE&H%hL1#dQ,; QY4Z]n#s@GAS.hbhhL$ Ym[HgEƁ[M9N]+'@CǶ|_8i^$5U]V499sx3ff@GcP7M|+]6J:֩W~M ,~@MU2+0vH`m wQ^lGyGԈ_n6Ԛ!.u}lzkה糕󖳶z$ɕW0?ԾlwgGx .v4˝VTS &Y[!Q?cƼmK'&آ0R{+~FpuaL_k«zjVJ xl&guYޒ91sɞQeWL 7/9ky}$E泵ȣ&̬<m~°kB̚e9X^X%/{,÷kn8UQd1"O١fދߚ}4췾.NSu 91W"1p |hY^yLJ.6|vwc'>4peSȮKU(7l|PJ k75vu\`@\Z(/QzLΨpXɳbGSZ<?di.;0 ?:D\@ Q$_w:Y p[Օl( 0`-U@ \j3I<'qH lkbBzcBg7 ,Х;,-n)tfX$!`;'vIcVBb9'˿ٙ]}{=;P]>eBg? AK$p|Šg΀\8-JAnס1#"o0<@᭵4Ph'3 qkVk8!l-mb4Hfʃ <@9ˆ gtQ3Q/*b{wΨ<ִXMB J_|nXJ1o,%`$)BCP-<|I{ *AӽAx@,#NFi!ӗ9 a<oe!&ѯXyc ܕv IO|A#^;ڊ%9~CҮHe N_.E%9q ]gѡ35_KD="oE0Taϰ B񺾏8.z|=l[@ !Fph+[v|ӕc;QW٠,&]W#d;Z]>BPͤ(mr"(M0h9$vsвˌ.""J\m[%W_iՆzgsi%H6y&[hYt"LPuyvIۼKcn8dNPm:}j/]rQzxe+fZSK-4## +k0NO~~wĸ\K_|.VJ/(EQ++#B5!K,~] 6oLi\]m- ř>  s?£_BN嵜žMT HJg)ĽTfߴh;I5#0+BZRs #;A9^`T̒&Ydoni^Yi!k}ZYxy #N1LT%樥N69sdpfggMDInD][.myG>v[D F7Ž9=.Ziޥ{}@_W&@񩥀R@bxPxMHG"Qx3C@yxk! HGT>CQlN[*鎽)u8:Եy\}CħI-u`a}؆o"NP:]K0>_?i)fFL>x0L.=.kӿ%.d0ڹ( ~$r\Hٙc}xorȣ%/ n N뭒VeZiK?Bw5R; ^M7em(lst} )6( %a^k+@STŝOeq<<;Ty2O,A} ;='!6jadaR7SA]pYvCYYZ.6FoPd3KWO}[zjЁEzΫJk GPv2a%OTiۘ)ܰ!SV`kmnM9{,MP芐;_G8ďVROX$g`miiƌfa K*d[LviExW}j<^!Vj "m v?j^*O@%ԧ}9dzQr #3@Ȁ:d8`qC_4}ITe{B/oCqVY:L,M:,cq@bǼX)p_pra 3xFP8P .e~YFB1ya)m `Su(XWe澺[ z x/ҩnQa`} t*(rXP A{ ^`kEr3[.@4C %xgk ɵ62LB`8\RZ.q$-`p>Hx'7P`M ]E o炍l[]Vn_}D7TUu *G 4L߶; ?_>g'O5NA?|/yYw|:/_8to32Lz/>~~3&LbEZh M5fոt|HznsI9VE1jeN9&e rLPb)S3=CK{7٩{:' C`2oʼm}So׋ʚJ_)pX8DL?أh|he(@7=pk _|w2h8P+G~2^~lC  F3s޻uDzh/VF ɕ ̖jw/ V6TWǂ2Pf>Fh#3vgOoe+nCeuuc{mX8'W>=NPYmO\Iu3WSF*ߍ3_,OG3$drѩ H_̒{ աp.?o>n:uJ~FjF:=~o[!5/0 eQO{R;6U_~`-7\4ҏ%&d3)z?ѺN$z}b] OGi=;oxXΘKHg;}ܬ)ſU57 }%i1 QZz~MnB?d$6zeO+߷߷߷7O^! '/+.K _| )-# wgm9J3Yld'΂\,RyBk }7˕L% I!of:ە |Bުz|;:dK nOȻ FY:Pjc_)oe&W3R =d=z.LfA^{+|yr";M:mzrK\_oҟZca< v)y:z:gSwK?Ka3Ee?_`u~iuQz;-y_ZA^䷔dIC"+ wd5jKq)Oo,u"u;\aʅ`z Ã}.ީ873&83 f: ic,G&Ly ӟCR]V:ݍ8^u:Ih AI? JTYz\$\E•H #"dgz_|?p,wt׎! G9_}Hg~Yډko'KY 49yQ?*Qd=Yax:&/cضpfجE[w3pgչ#oYHjFy}R3_u((zp_D(wG _E('7.芝G^NDxq9 <T=pL|&x_ӕnS{X NӁ` : 8uYƾor᭼}_n+7\TTKF3ɂo9:-<V6x&x3_ D}'A<[`_>P_N]ׁ'DJ}12ԟDXFFƾn4sߋ/kWo˷~JK}uݽcܩyS>--*~Pp3&8QCL]1f^}7>g L zw߰8#c|g/s*M:ːrC`r̔9ǡC,Ns>\ !S4܀NzGAc\~㙦^4 I:\읓tJK:8v6Tg*)F\٪*4.aX(5(;g"l?Z.i 5h *Ow\aU B3ej[aEEn֡eL>}n"NԺ^@ +b8,"ךqX{AWeYoɼ߲~.]f4'ZgI Kxo#V{[DwU,5h<\腼.bm= <"Ɨ3(oz`wSu;?D6 8egA98OOBxA? l_c?,_ߏlƧ0^ˌgHsxz11j p]Ōd|A!L_/BcL?͌0>Ōc|=}Iw\>{OGSu/pۿXKX]6xPy c LLLy=b!ƣr`CYL8F05;_/-֏1g{ӟg' 9y{BƫDzh!=ټ/&uf=q5oc @^FpS;*{/}#8}'p?\yLWe喀eܶ}PwAGCzշuіq5%)h`s2#e,e7g& v/Ty~?5 d03-9鏉rN(ӣ@ݹQvNo\>9 kl19Ƨ3>ĠBc.^Ĺܮn\>iПԎ*s_9yz5s<=+bU0Yy=v~Hp'237NnSyAϯtz;L?q^naMKq 9c}I-G3J y]nK7p4cϻ.Osݹis>@9d0=q&xko[|6wC߻'_">~T'c~NH`;I}\~Go}n=o #Y >?+4ܟ !.!#O&qI0X ٮڢ=v΍ CЮ7T8ǁvE _vv\`7ٮɉv\I#LσOA ?GσԤɂ7&x x-g KσmyPLł_&xrǁ >yW_#8['"? ^.S[ x&jJ׀|? ^-5^+G!xB6pN%79_|(w > |'/|b/s ^&8=p?/x#Ղ_#x:_/#rۃo<Bw&x6xG=z^-Fk41OB?+8[?'x!XoP(!7.)z(@Lg >|O/v |^& Z |U]/??Ej ?&x x4~b]g։skO?* ۫_+]%] nLOÿHoXW,փrQlXqO6/_~_>mn-q">#F a4 xxɂSbSO(8ݏ N4it4.Z8oB9Nq2i\h \r<_TNAS/8ՂW+8u''t_;'98dui~|'>ʙ~y>SGfc]qۙ2?qj_ThI*M/ʚ\QOzJ:yYES]1'oN^dgTm51>00TUTgɾ^sK@c/{ '/'mW@ΘgS=b,@AzQFgM1yE*gBn״g)XV.Snֱ'zuN8UzeEקЎ[vh }C<{ŝW {C\k) ._e_򈵧~Yt`KDj~;׵/u~[x=Ta;q!|V7[6@sEoK]>޺_aݾ\z;ώe\CG^B}o2؟ K>oj 5دR~Z0~ ;>d!|,3\?fH%־hhlO-NNOGK}q[-.) "(0pL~vIw~kڗ![8O1ʼn8d:le[90D 93؏}y㙆1/jH~:)r9n2">In87JMrԖnK]+ھʭ?$\ϗKQ2|¬B]3'eݡeW,NpYH9)> 5w⬀JmRK31&iHР?[QcĸVL`D3AsKܸBvSoKhq[_z@ji|Mv]A\s-x'.dF_Zc=pjy}wlIjvcBs6oM+μÅ?7ywX;VV[}; t1~Eck%4 hCma5go죸˪{$LiUx(tŘe_سhÇW%O: yW|2.>14}kVL<7]v>mְ^ddMڴޚw49֪~ߵ)kݰs4Mvu3Ot=ԥcw4ؼQ|p|[>_v7 K7gNZzL޺alֱ*x}9 V^t*4bzڎ?/?eiϺ=Swf:A]k$L5XiUkzt:q$Ť<̇?U/t+0rL/~黑) ̸ԍ_et 7m>^_7 v޴w~ oFjH}l71gl^z͊K/(ʜߦ<\ xEI G":`$fBL89@ 8 2*B8$`DDUV]u=gA7 !h/ [7nGz;:}%tK:.SuN`*CdnvcA UQ%8_^cm607}IMR8SͯjJRŏRťaR.T1D84A@Z8uZ  R!AZo/X]6cg*-ydX"U 7y`~T1T&I MeabRƍRiզ9r>״B^$+ 5J&.3jgJ~SB^+5"%bTJQ`\(7.ފhkGɽ/w nj9vvhHY;HI3MpHHmw1dv d1Q8ؗ*YDi%$AL!" (ȡ /G(3ll0qpMPoI8'%IK9qD4^-pSY(_O+/؏TxAIX<=a!$6?Z^i~hg}WսU͞جi+v*d>=F2t5RjU(Lvv*G DDP:AQ2ŴzПsmgye__Lݏ^ke i(fN՗] ?sZ1nq8/*ZjNjbj4m&Xfz-s'y3Fػڛ*t2!P4}~Zj,tx` V2t8cRCDݮIVW;t]>{vAF&MPj)8\IJ=^e-Cq;.?`Z; 3SY)3SpxaZK6Kt[m i(;."q5AںVb|EXDZV+"Zo^[ZRM+QFeYb}zu+q\+y\mV}R߿_[ K,%"y?lFbh8Tgh.=^nz\Y<,^xOỂԨ"žineee\W/S"V*Lx "[ ]W~s&i[=96 ^<]vrQ>3M ơG"uɈ\V\GQ__W}R#G#~{w3&:=hHIKIMp3:!<|J eyo^- p=!E'y\'Ёw_G&UHf+~=o@2 Fc;ˏf.ܖVp[:"b-Fx "ޯ `ږK4o x/|v%!bV ];8d!|؞$x xmuI.R b3^)pi@P+(n%|m݄#|  C.#$5ru V_[ɻC}p;l_1dQm Cm~^&xrPi8dN {7 t+5oC؎C?$kQR I_Lc0yoo҉|) ϋxppJQmY:oJh$ 1_>3bт~I1Q+ O}&Epߋp!ip vXoG?4OUwN"yJ\$WX|B?LG]/S_/~sq"e1~tClHO"e`q^Td$?' B/]OM֯L87Q(L> X N^ekr&!{3Q=x9^vhTb>InP9*(w'|?5|.'_V?ӊ#S;0^ٚځ7vVNoG@/DqcrWҧz g0Uʼn3*\e\E]HizcB/'UN< }~]39Y"ZO^B1o:$ ˞BE*˱2]e}]*+jTzɳ~_ G!.#\E~=?y/z,^zHlF_x;jqV|\V~qN]oH^4~vWVrw]e$,0=K4&%~lĆW58HF§ݎ΋(zTNsoma4(}ر5 !B:ĮKާuc?!\>c嫡-Insgb~~[g0-ߥKݶ# CW ^ow,1P^TC~^,!k߇.W;Kgu:M6өtfWu:KNgt:LVf2SX6Y9B x,ʇYݐ ?1=#nj}My/,}.Y]nb@ZV_A4}E'֑_+-Dq!w՗Tg̹0y_S=ǁk|gK0#.yHgPNOGjQ]~wתW5)|K5䇠~D|; ;7!nHݧihsl{} BZr3mGꓯQǹ'Y|נ_\1_O9VP'|xSOzN98~'h>׌T|:dz~El[񻀗8~8~3oo~8dzsdzqrXg6yQ=Cl\,r|qP(Db]ZJlCK OBJw d>ܼ2rr<* ɳ4 ^f![nP߁;jg*^Rz5?2 vc!rMy|~8>+;5GE_KƗ&дtK4 q<P俉5ׁWFC%{74_ ǩ X0rr5F%lʖ1~۟4k)or-%Wp?9KkU7|l]|N=# ^Uopg}mUh7(O#w;|ŠO]r`]6it_e.Md%gP"(P>~_97qjWrOjVLfKjk (# Q37ImplIgG:Z`b:sLR0'G6nfIb6w%R$,c>0jW3Ϝc|h}I&!:]U. ~qS՜g8Ӧ]{1f~~t􈴆mK~wo>hSRLGohCOYl?WwhiWIgϫ#w乞)2dd{Gϵݴ#z |Ow7G,Ho`nƇڔ8kmݞ~Yd5v-DŽ%Sz<5;c;47s3qolQc7 jOfXo{ژ\jm;(̙oq\ԍYȿxeU48rLŔ3'1%<`w'5ID(\e,3Q -ljC[zŋBIȣP@21kfXWGT;(ԂB*W{윦%8u Kh5IR stTu|Bf·6jvk]&CR9Z0rEӓڤ69XO/+F' 5e`o6JYZQ1D߷zoPT: b|`99 ePŒ75{Cq$}?ehhblsI7]}Knh?ȈWWsA 52̝r#ˡ$\9UKա[a \\s6L@?%ٛJKK + 4_dƅƌ* 7m%Lo,)]h?mא0.t&A4U1YMv qId  ߘwQ<)?m lu&6N;}}ޅw88}#ϷD:% p^~' S.OUjR- EfWeo=ТU:nq`2ÐPӘpКRڢ,"O-*dRlgC7j^o׭Ğ^IuYf+B9q2friY˥dnV%Iԧ.rfcm4kԌI/."׬Ze}aOcV`@V]ZNT(oՐ$猷,%35{(Ta3Ȟl Rڼjraޤ8X#rκo2JZ}p,BøP, cה lFM 57}Ĵ1Q?1PG~{In(g^?c6_  :EYSɁ$b|VHpe2t cD+9ds155\ %Y,3Y*Hm]ԖOkl"d7AfAXhr#;a$Cٳ~rjQzȾyefU_h&{aBف?3a~~m ҡ]Ur橩rYWPEmTL Gn2|e4Hk`';mag]݅'MD>Zbsfl"ףa`pau,ROZ NNW]st]aišd̞\u!1K*z,nks:rЌ X }*;w9 lv0^yn3tW"mc-_]VG'nNu[wIs5Ren Vwf1$3{Ȱ3^C(qy 5raw  1HI"UVpSB G!aFowl F^ГMϓiJ;#o[h#JjBRϏ S[XLt4;h=urw?pwXj\.Ry Iť?[HkMnk㵺M6kvX8ӤC8`]uo+&4鹈|'/H?v6@CYW  :mE.,YO/?)ڇ3%1oHC$ec.vq#xC_!쁕>;IwsV`Re0~+>\v5fi1Y!E' ?Bt1M[I^i"uAm.XOv_I O>d79}yiշuZG,.W\ۃ‹GH:EW©q8݅*8ὅ21C jNk}X#E x=ތxo FgHx7̀?DL|H&jXzjX&Ļ@O❀'kxք'g. > 8٤cF,KG@x7aZ%'!߆"~s9&v;<6k1g؏^KmHmċ_`< 1]x (1F^J~6 x S|nkw'wᔎ|<ĥmSԞyKL].kٓv*0IN܁LTL ax9"~T!|[2ѫaGe0tbCC x2⣀툏^~pzqo!Wxy]p-OWp0a V'"EI2l1kd6p_N1qLG}U3iUT:H|9w#Gc@>vx"Ӈ\aFAOd%l" 2Z綞c[hrҵq ovנ#~oq2dmF|&*z(LTI_DU)E(Wq~!WPV˔p'؀[X3d>؅es&{5Gq/%_3X-Qb引YȔ |6!?c~jA58Is{b?k1w kt=oV,ԉ'\#q%/Ko;a0u}hv|/8'μan bH2 /OԟL.˜B|\#U v ڍrp:KDalpA~0\|~AR57ZP.A6R}\5w#Qr\_4V<.ԉnG:ʣia^xAA%GJ!obDg;{h)(yzN7nO=Q9C{1r<Ů:O\^(:P)1ȫQa{ ( ? "(ܺdz.:un1_uk$V7 czRKDhye~-2j~u]Q!p܆}%BAyL!mk /UT; =ԓtO!I^tcȝ?J ~Y@Y <(nw?Fm}{ x`L#$)Z֫}%뮂c-={'#&샘KGLif!&nx ^$\##poVQjJ 򉀷 <@3K|}0 OF#yoLUM'~ ?O'=| %=ߕ}kN=yR$%~!撺Kc:y0@h#gRs߈sj,'Mpyl1yqpTUd|;2/h/%/nHԳ9Lk$?oN}1; Gͼ5"؟(wb?yiO(0^Rs=Y] 7վyJ t'a ="K\|8VFq[-k-7y*Q%9]>-Q=T#SH]❍zW.yvٔ^:SKkh ?Gζy;_JnTNC~AF8綒8 lO /DNE&cͱ|LV 3)_hp68G\#u@O޵zvno?ւVC=+4ԓtmXVls(\@;񚿰xO5+L CJ=>#=CEDEh"ӹr=MHCR4'Dk$;CFHOWoI х]ӗSjٸk~ҕDzoD:5Uٽ@EUq% e4TD J RCFcC|&qS2M5VQhhQAYfVVjz f=k}w>|繇4>@X bOOW[z@6S^W=+]}0ԄmJ~{TRROJN oxm>$/K\9T%>\$"IW 6IZXqIK!~($>II|%wH|ߑ9+γi Sg%&(%c9JG]=΁ cvvȸzk2X<::em]\Dւ%ɉڗ)2w|ީImNj;swR:vmwDˑo'lf@\8/[:NsԭP:mQ1z4Dy2cٺ b4Y1T(ԤK`(1byR~/νox[mRO_;2wq.*ԯҹPzg&vþ8ddػT*us(n FkcMދНMһȩӠs/"qϷ=KO2Of^'礤Nk>yDq2= =Y\b/󳐕Wc˥"Vy&ט )I(w1n]HfYT(/EFpq \8?iN2LA;+7<_/g1XY>\uVyz=t橒y<_0!g6O$uhe52_^澽d0bsd/{=i%|1󋒸=/q<|9͜o?}> /ļZsOao0:o'1۱~q_z7j>%1o:^nV>9œ￟K^Y|y\d1K\tTڍ?e*)Otmq23ʋm︿I N>k ϱN41zjO,<'siyh A<<|:xS%O7y| G8~l<poڠrǑ[ɋ+KWM^GcJj*O_'ó5uw7hG <\gĀyF0ψxy::0Ϭq3u]0ϼEg8wiU<#wc1ψrX gcW1$cI"<89Jr3ݩLp\̫gZ1|HyF<<|(y A࿈s+]x:y'y7y y,x?8 =dE))S/%_<| y66uȋ H)| !TWoo&y-%g;{F;%o|^*&t 6ya8V9m[Ghד9P^ a"DÜ/W˙ .);\g3. pJE^*Q%؞uŲ-xoGIyq|V~yP|*Ѫ{}QY^q3GДkJ#i>@Ksn(s6Q_PdJH}FO P=*PdV5S17WBIrs~6}i٢aD; Xc{'fII~l=mƕ҂,_\d. /Z75ǔilhST7h{g\_PʛnmSj)D4∼$Iw8*_)[%J a~n$5/RJ|e *xVziPpHU9οlz}߻Oc2utlLN+*Wk_(ۏq/QEI:/O%SuI7{*ߗ7PG7 \2}0`*ݟzI Nʽ]~L_Jpuka6⾋Xn=1ՍlMaZs2e?uPNIs֙{U⏖?8qwĿGOƟ(?X%\IpaBTi)P_:'^|>uS s`w8:Uw:?,ZFL_Oo#LGq^\qW˥nN+չh=2+&W72"i#׸+H h\[#^*߸F?Hj;-5ZKY?\"?{mc̕ >5TNڷ'Vq[(_*ec$Uܫ.\Mxm)M%/\s; N8pŢ=]e}ܫf^Lv=qbP.E_I|^NoWJwo}럸ts6FilzCƮ)]O }1rsW8U׸M'7vܽس}beRȱm9֘4cotc/>9#r/ 5~maOMl%*|Nhr7mnݴVY;bż~s65=躿~7 d\7`z7G>MK!;I5 DO8w:i0{\[>VmRϷ:3yڐթc7g5kW,)amM] 6vp:*du)kGn9P:ڮqrRloxI'& wˁ-r.90iL I/l#o97rU_+sS98? jaVU+'F< ioL #Ғ.'鵿K?#WcMPmjo \`M^M]R8S:ˁڢ.bܔ),JlPzs~6rz[2mצ!xȆH(Q2y L37mU)rYX#͘zRT+Y`8r#OL 4:-1t?/M'GxSA*1G͉0'7p.(֜ E6?OՎH{)5"5*ܩ/[t6Sd|Rhgf\i¤bĚl e#)sܝ ~t_O~K{o r|w*@7V!-._V 7ɒ7&eKV˲ygyA M0}6w]Y99YRSWn:yt.=kBa>],{%®ZL:a6t 4a]jt9R3IkRcSIU1㱝mfj__T*dU_Zn'nsuOwvϦ귷\![,^{fXl3,+vߔ̀ggyӱAş|Ft,6+3kcH~35 u~UGQJlq=zOZY|띮v?gʓ/2Y|t]1bqXlt|@W[,װvVk:76̿Ocpõ{2"*<=|d [؟~=s+g$٫KV!}vd̲*߷}/os]v)v;KUp+]3_RuԵ;zIih9a= +L^é-]J ?V.t-N,w 'm!śO=Tŏ:ZL_[=~Oߜ&\mWdS!iTv %wzG\p|.ps3nF=}n.g9gycf~=Ûd2 o&.72&~~5c 0r#fv&C߅dJ34%u 01*x%0<^m`x" xSKd J5;UX{0=Yq =2b+u܄?F(~~\x7 ~8f4E¿ ̋T;8K һd2RT\1nۉh+ޔYTy7 ? ّNgƬLb10Sa s |yp%vF2> FgQ.g/ +/fˠjLJQȾKۖoæ LQ'2GlU<{׫?+ oAś0zPbDH`OP*(Ch|f0w2HYj>!t%kk#Q_B80C~F3N݌?% v_ oC؎.n6 KŸ ס 6E8ܧd xFm-3AHa6VbZѫF}{ Evy\rw!{8V/n s5_H7 8~[bdGOOh^ Ux=M\-vrmsHV=t28j'og\oZ9_ЈOӓ~i; }Zc>,%|}*`< +\?uM7\?A-q8l:ꆨi22gIxT1"fxmO1,|^;gϸug5"䟬-6ds|~ʩl W9+(WdN:}~KUѺxqSggh3Ei|l>#ʰ/x4 zȏHʙfybt0@~ !(w*fW T7]z&ӽwU۱}P=84xb + w+ z ߧPRI÷%K^D |1&c$?H #aAR/,?Tc_P=-C9/ >[\.ͼ%Q|c[;t+tuIȼ#Bo{A;PuF_ÿ_?w)Y,œ/֒oGW{ؐ0m:CM-kiYi0 IoEV A3UY" ?$ 8ݻu΍ݨl{]} iy?(^U/4<#s-q^[F32Y~%}kۭv/;|X(&8nuNz_I#F8qRb::9#癵 :'mqg|bg"kt?F|O#~?pHz>֨mQ[>xoG?SG~ǐ|ˇz>G!o?ݣ5wϟsy{/^"$gOxK ~"x8D-'~BtdWblkuHҎI;VU{B'|7' /A-䃊{@C^CT~1x!~0(~,2G8L٢KLʴ2l"xʴwBci?DqOq!c xڏہ||!>Fa)&pK5|9$<l ~>~/5CGCxo3__CF$/"7/#i!8|0AW~O~$k? K+~=~F—"|9;uw=~& CHw?xJ9‹}% "w o"x|Lxa'%P6^8L"/ַLx1qe~:C[>t׉?'UF__6\ 䔓Ht@t7FCK<]H6䩬gK`>_NȰa&8bb"5枱Q?vgR8=dǯD%(PUQu9o$vS_hhP``mG?bM,;j0BuUV"<)t+Ҿs߭3(-TNã}r7zLhhU~Module signature appended~ zT[ XGN * g/F/tEPL/xqi`dAa( ,#eQ]Mj$&*Y\5cM&pF' %71A1SPEnlDnOw_lBW 0uMS%.i[ߎomi>&)&cI;zo˝:!Z6rz`ay%KTj OEIN[R'NKdVb-r9N*0CrZ>cgĤvW?zd(, ]6s($9p~J8 /ڝXr:o*]h-=^2|''} _O ϯӹ7'l.MCfo~~2U 9fvݻӗl5%찔J~/}x]WOzxXPS%]ay+Dc.s\~.u%3# Gwꍽ Ɇ.P 'YCLG7?*<nFC7' [0}.x0nM5$7o^( oY{E66$wNF2{7fKK'>@dOx|d*|]LOV6r#$| I𕈓C'~:R!!x8t8m\Op ³t>C0_{S ~6Bs%qg!p9ljN"|3_\Om|b".Cc}矟B6^!VQtPp_Fo' W4y5?OF&a _@g@DdO' 6>Ex v>GpA2]a jZI]H&ீNA~<|?3y|O_ZnS[hEYT5gr׈ug ?¯'>J 0zcVĠ7Qt9S"4wlWI4?{ݚL7s7 *u C6uuf_+pKAc t:&ޡ{gt)w|Ă_凢"<4/gqy Z+T '-`5[ S^E"~`zix03/j"İ5uJ_$7ɍLDrfs/ AgAvXZ{+ȅ"[r=x^}~]ze^^E˱6:5yMeczxۀ9ɩ[o y j,T7# c%jg;~e%ɿ2{!(X$ij3 C|/Cd>-n ?SDIt-`>cpG)4< Z#ހ Q] ˧k;5Ґgm~Mo4hCQ!H>ɳ>J;$\hGrBhGs.hpib`4O/԰ okx;l<'<}(Aj=h9:pyhwa$g^|>>fK8?lpCtg`s=Vr{5%m@)?g1%JR_pWe8{L'NMmmcdQx.i? v'ѲQ[jӮ;*0\df$zk@MQH| cUЏ„OK:W?4gC݁7 4WC>^A qٺ 1ls|<@A]S4O7}RtB .5/,7Thvr`.\Saz!:Si#9H/ߺMGY?*oԈĿ@?Z%=lΡ_: Z,L_N oTjX{k:~?xCT7|vQ@?4{[k i!4溜=_[&QoJ᯿bC~h^G\/^k)>>&u-l*gry5a rI*׽ڤ|[Qb\P:Q4F%5 m2uIu"m01X{1IIqA9X8lz&(P@ $7"U.fEws7Z:ZCr0't׳S|AZA'Vr)Z 917&Fzn CFyV׾}r֕+i3cpٺ{-UիS\y˦߯Nuz\u+[Ö/=tߌC񕱳r|cY93c{ǞyܗAY6toZÐe}NV]7moS{Ή?]'vŇ-|j__Sݶ&Fi &g~6[UNyUhefqю:\[DyN;M [ WxN~!k%[*\}b%=0z7@?j HxH гXқx]'(xٿ4J,> =ouxrM}p+/,^OdHzV#N!QY;]8!5z`|ߒ&Ӱ?/"O$?/tzxDȡ>Ys?>57N!O ~n\TvD~C'?Bd[鯗D&|l >Gp5n ] ЂO:;"eix2OZŸ.Gx{S_F\R ]1h8 ɺ5b\%*%uDwYH Cj_Ss \C65f+p\KA} t8&n] A~)w~;|(Ă۞_")AqwoqUo%ȎZh^L<9Ep"7&w?}g=6#aVr'o?Ϩ ř ~߇V*ɷ+u|>֫Q+q7@_W^{YgP~X˿m {1=έC֭ H)3 z|?vUa~yIAիUCH/2 D#}C!g] =&/ {橪]O! sp%,=Fk\[Y`ޭ'`~I$SMH,ސ>p}uDxy 0yѽ|0]v6ߩ?V,w$1d+?ؔV׍8E~D_|-)S`j"cUr~A p]p Rr:| S/5~4ԙyӠη/#E_u6HI|>{#J?,iٜ D'?%>痝C$>,8Y=O 8_,O%j$z'.VXswq|(g%_z@>?eCPg |,>y֟Ryo/\ɳ8߆:%|3iA;Sd\7Wq_^y-/1 WO|| T=O0 z6wAt-9r{+ӽte:96Mv&ڭFj"kQ"WrRt `Qn/ ,|s[+I7C=V(dgb{;1/)e6[MKYF!xmnȚwsr(ALc8U'Z;tN~?ݓh>Oת7G|,;Tgȳu>;o** ޮob?'"yvڧMya~9>?-9>?#`o篫ğ(*_bvXy`y`>1E<:]PrOdeTMN٪Dr9,+1  ėS 3 -LqgV'~ ;pUgV|k'-u@DpB>ן_o+*H/Pog?Jj0_*l}s<^%j7ǿ[,(j9:%0[r6ܖb_mS`(3my{Fj,Xqi[1n{wJsD~A :h}tn§[׶YV]K*v}}75|3=?~"hoC-.ǥo".=7;>3VgaXMf}xs؟c|/[>y g7w/,w:“F%m#NT71ƌ6ϩe5CV_8/|È=>:3jen|/pTkF.{E}yF{oٚ rϳ뺋V~3װp̄e'_*fřޱis׮ǘ?[] SRǟ,VcIyPA9LǪhX-3"tEhAZ{XT?s(hR:"AX/sN>* `)@A MM4 hJA+RJA+-4Hzi^Z9h娕VZ9hgMjԳA=*Ъ@B *Ъ@tQׁ]z h5ՠVZ h5)U O3M ĈDAQ$vDQK-D@+ 2@+ 頧tAO *P Ђ(R> QjЪQjкzQ=kAZjAh՛l$Ph1[Z-:I3$.3Ar`6EkLvGz*^vUlR 9V-zS-Z0V>:[0 Uo'魅|Cnt:4Rݧo^ V*#9UeB]Uhf]al0!x'>%Kѵ3ٹ>ne6x!e}b-WYISUv95W^0/,kc;,tqZŮ5Ȩ&l/u3*2F]Կ_4?,B!X qE{V%BZa:bo8#/ozxw% = <4 d``$m Pe,"h3m )Fm7jG$vz}FK>%>h m6M4Kluw8p}SB xs{ 1VX/ U8x7qOagsߏfrpOxBq? +b?q *wV͝~'<: C1< Sğ>'~EL< gl!&!> #HZ X$O6">xg ఫf11 n[!ny QܡĴOlH: ~t 1MH1WH1߃ᵙ/s/ c`p _s6s!L.2| 1+bhΏMv#N͙HMw8f _!{⫀w#lǁ0'Lq:*}O 1Y s'K̥Y,po5c8;%ך׵Z52Ɍ]7jw?/{/kޗ3p"&Oth:#e5s$CoLqygɬ<௓ו+ 81Έw`d8b;@f7Ccw=[ގkd:{L<9;-ƞi57bڿ݂ :ojahSƷ#2kK$cMf\y{~2%>3g51})qL\{W3+Ʀ#=B (;kOk{E6}65S;,+3.]&jR#)2ϧodf%AJӤRRgjB;