This patch updates the sun4u model to being much closer to a real Ultra 5 by moving devices behind the 2 simba PCI bridges (A and B) as found on real hardware.
The most noticeable change introduced by this patchset is that in-built devices are no longer attached to the PCI root bus, but instead behind PCI bridge A. Along with this the interrupt routing is updated accordingly to match the official documentation. Since the existing code currently bypasses the PCI bridge interrupt swizzling, the interrupt mapping functions are reorganised so that pci_pbm_map_irq() is used by the PCI bridges and pci_apb_map_irq() is used by the PCI host bridge. Behind the sabre PCI host bridge, the PCI IO space now needs to be split into two separate halves at 0x8000000. Therefore we also setup a new PCI IO space region of increased size on the PCI host bridge and enable 32-bit PCI IO accesses to allow IO accesses to reach devices behind PCI bridge B correctly. As part of this change we also combine the onboard sunhme NIC and the ebus into a single multi-function device as done on a real Ultra 5. For other NICs we initialise them and place them into the next free slot on PCI bus B. Finally we mark the physically unavailable slots (plus slot 0 in busA) as reserved to ensure that users can't plug devices into non-existent slots which will break interrupt routing. Note: since this commit changes PCI topology and interrupt routing, an updated openbios-sparc64 binary is included with this commit containing the associated changes to maintain bisectability. Signed-off-by: Mark Cave-Ayland <mark.cave-ayl...@ilande.co.uk> --- hw/pci-host/apb.c | 47 +++++++++++++++++++++++++++--------- hw/sparc64/sun4u.c | 60 +++++++++++++++++++++++++++++++++------------- pc-bios/openbios-sparc64 | Bin 1593408 -> 1593408 bytes 3 files changed, 79 insertions(+), 28 deletions(-) diff --git a/hw/pci-host/apb.c b/hw/pci-host/apb.c index b709456..bc54366 100644 --- a/hw/pci-host/apb.c +++ b/hw/pci-host/apb.c @@ -599,16 +599,35 @@ static uint64_t apb_pci_config_read(void *opaque, hwaddr addr, /* The APB host has an IRQ line for each IRQ line of each slot. */ static int pci_apb_map_irq(PCIDevice *pci_dev, int irq_num) { - return ((pci_dev->devfn & 0x18) >> 1) + irq_num; + /* Return the irq as swizzled by the PBM */ + return irq_num; } static int pci_pbm_map_irq(PCIDevice *pci_dev, int irq_num) { + PBMPCIBridge *br = PBM_PCI_BRIDGE(pci_bridge_get_device( + PCI_BUS(qdev_get_parent_bus(DEVICE(pci_dev))))); + int bus_offset; - if (pci_dev->devfn & 1) - bus_offset = 16; - else - bus_offset = 0; + if (br->busA) { + bus_offset = 0x0; + + /* The on-board devices have fixed (legacy) OBIO intnos */ + switch (PCI_SLOT(pci_dev->devfn)) { + case 1: + /* Onboard NIC */ + return 0x21; + case 3: + /* Onboard IDE */ + return 0x20; + + default: + /* Normal intno, fall through */ + break; + } + } else { + bus_offset = 0x10; + } return (bus_offset + (PCI_SLOT(pci_dev->devfn) << 2) + irq_num) & 0x1f; } @@ -669,6 +688,12 @@ static void apb_pci_bridge_realize(PCIDevice *dev, Error **errp) PCI_STATUS_FAST_BACK | PCI_STATUS_66MHZ | PCI_STATUS_DEVSEL_MEDIUM); + /* Allow 32-bit IO addresses */ + pci_set_word(dev->config + PCI_IO_BASE, PCI_IO_RANGE_TYPE_32); + pci_set_word(dev->config + PCI_IO_LIMIT, PCI_IO_RANGE_TYPE_32); + pci_set_word(dev->wmask + PCI_IO_BASE_UPPER16, 0xffff); + pci_set_word(dev->wmask + PCI_IO_LIMIT_UPPER16, 0xffff); + pci_bridge_update_mappings(PCI_BRIDGE(br)); } @@ -690,9 +715,9 @@ PCIBus *pci_apb_init(hwaddr special_base, d = APB_DEVICE(dev); phb = PCI_HOST_BRIDGE(dev); phb->bus = pci_register_bus(DEVICE(phb), "pci", - pci_apb_set_irq, pci_pbm_map_irq, d, + pci_apb_set_irq, pci_apb_map_irq, d, &d->pci_mmio, - get_system_io(), + &d->pci_ioport, 0, 32, TYPE_PCI_BUS); qdev_init_nofail(dev); s = SYS_BUS_DEVICE(dev); @@ -725,14 +750,14 @@ PCIBus *pci_apb_init(hwaddr special_base, pci_dev = pci_create_multifunction(phb->bus, PCI_DEVFN(1, 0), true, TYPE_PBM_PCI_BRIDGE); br = PCI_BRIDGE(pci_dev); - pci_bridge_map_irq(br, "pciB", pci_apb_map_irq); + pci_bridge_map_irq(br, "pciB", pci_pbm_map_irq); qdev_init_nofail(&pci_dev->qdev); *busB = pci_bridge_get_sec_bus(br); pci_dev = pci_create_multifunction(phb->bus, PCI_DEVFN(1, 1), true, TYPE_PBM_PCI_BRIDGE); br = PCI_BRIDGE(pci_dev); - pci_bridge_map_irq(br, "pciA", pci_apb_map_irq); + pci_bridge_map_irq(br, "pciA", pci_pbm_map_irq); qdev_prop_set_bit(DEVICE(pci_dev), "busA", true); qdev_init_nofail(&pci_dev->qdev); *busA = pci_bridge_get_sec_bus(br); @@ -798,8 +823,8 @@ static int pci_pbm_init_device(SysBusDevice *dev) sysbus_init_mmio(dev, &s->pci_config); /* pci_ioport */ - memory_region_init_alias(&s->pci_ioport, OBJECT(s), "apb-pci-ioport", - get_system_io(), 0, 0x10000); + memory_region_init(&s->pci_ioport, OBJECT(s), "apb-pci-ioport", 0x1000000); + /* at region 2 */ sysbus_init_mmio(dev, &s->pci_ioport); diff --git a/hw/sparc64/sun4u.c b/hw/sparc64/sun4u.c index c3280aa..2edd1cc 100644 --- a/hw/sparc64/sun4u.c +++ b/hw/sparc64/sun4u.c @@ -27,6 +27,7 @@ #include "cpu.h" #include "hw/hw.h" #include "hw/pci/pci.h" +#include "hw/pci/pci_bus.h" #include "hw/pci-host/apb.h" #include "hw/i386/pc.h" #include "hw/char/serial.h" @@ -42,6 +43,7 @@ #include "hw/nvram/fw_cfg.h" #include "hw/sysbus.h" #include "hw/ide.h" +#include "hw/ide/pci.h" #include "hw/loader.h" #include "elf.h" #include "qemu/cutils.h" @@ -436,7 +438,8 @@ static void sun4uv_init(MemoryRegion *address_space_mem, DeviceState *dev; FWCfgState *fw_cfg; NICInfo *nd; - int onboard_nic_idx; + MACAddr macaddr; + bool onboard_nic; /* init CPUs */ cpu = sparc64_cpu_devinit(machine->cpu_model, hwdef->default_cpu_model, @@ -450,10 +453,17 @@ static void sun4uv_init(MemoryRegion *address_space_mem, ivec_irqs = qemu_allocate_irqs(sparc64_cpu_set_ivec_irq, cpu, IVEC_MAX); pci_bus = pci_apb_init(APB_SPECIAL_BASE, APB_MEM_BASE, ivec_irqs, &pci_busA, &pci_busB, &pbm_irqs); - pci_vga_init(pci_bus); - /* XXX Should be pci_busA */ - ebus = pci_create_simple(pci_bus, -1, "ebus"); + /* Only in-built Simba PBMs can exist on the root bus, slot 0 on busA is + reserved (leaving no slots free after on-board devices) however slots + 0-3 are free on busB */ + pci_bus->slot_reserved_mask = 0xfffffffc; + pci_busA->slot_reserved_mask = 0xfffffff1; + pci_busB->slot_reserved_mask = 0xfffffff0; + + ebus = pci_create_multifunction(pci_busA, PCI_DEVFN(1, 0), true, "ebus"); + qdev_init_nofail(DEVICE(ebus)); + isa_bus = pci_ebus_init(ebus, pbm_irqs); i = 0; @@ -466,27 +476,43 @@ static void sun4uv_init(MemoryRegion *address_space_mem, serial_hds_isa_init(isa_bus, i, MAX_SERIAL_PORTS); parallel_hds_isa_init(isa_bus, MAX_PARALLEL_PORTS); - onboard_nic_idx = -1; + pci_dev = pci_create_simple(pci_busA, PCI_DEVFN(2, 0), "VGA"); + + memset(&macaddr, 0, sizeof(MACAddr)); + onboard_nic = false; for (i = 0; i < nb_nics; i++) { nd = &nd_table[i]; - if (onboard_nic_idx == -1 && - (!nd->model || strcmp(nd->model, "sunhme") == 0)) { - pci_dev = pci_create(pci_bus, -1, "sunhme"); - dev = &pci_dev->qdev; - qdev_set_nic_properties(dev, nd); - qdev_init_nofail(dev); - - onboard_nic_idx = i; + if (!nd->model || strcmp(nd->model, "sunhme") == 0) { + if (!onboard_nic) { + pci_dev = pci_create_multifunction(pci_busA, PCI_DEVFN(1, 1), + true, "sunhme"); + memcpy(&macaddr, &nd->macaddr.a, sizeof(MACAddr)); + onboard_nic = true; + } else { + pci_dev = pci_create_simple(pci_busB, -1, "sunhme"); + } } else { - pci_nic_init_nofail(nd, pci_bus, "ne2k_pci", NULL); + pci_dev = pci_create_simple(pci_busB, -1, nd->model); } + + dev = &pci_dev->qdev; + qdev_set_nic_properties(dev, nd); + qdev_init_nofail(dev); + } + + /* If we don't have an onboard NIC, grab a default MAC address so that + * we have a valid machine id */ + if (!onboard_nic) { + qemu_macaddr_default_if_unset(&macaddr); } - onboard_nic_idx = MAX(onboard_nic_idx, 0); ide_drive_get(hd, ARRAY_SIZE(hd)); - pci_cmd646_ide_init(pci_bus, hd, 1); + pci_dev = pci_create(pci_busA, PCI_DEVFN(3, 0), "cmd646-ide"); + qdev_prop_set_uint32(&pci_dev->qdev, "secondary", 1); + qdev_init_nofail(&pci_dev->qdev); + pci_ide_create_devs(pci_dev, hd); isa_create_simple(isa_bus, "i8042"); @@ -527,7 +553,7 @@ static void sun4uv_init(MemoryRegion *address_space_mem, /* XXX: need an option to load a NVRAM image */ 0, graphic_width, graphic_height, graphic_depth, - (uint8_t *)&nd_table[onboard_nic_idx].macaddr); + (uint8_t *)&macaddr); dev = qdev_create(NULL, TYPE_FW_CFG_IO); qdev_prop_set_bit(dev, "dma_enabled", false); diff --git a/pc-bios/openbios-sparc64 b/pc-bios/openbios-sparc64 index 7bdd6a1f4977eae6693883468cab78ba3ba363cf..955f45d33238dda2f1e99d97be9463fd1fac479d 100644 GIT binary patch delta 31686 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 E0sUr(c>n+a delta 31753 zcmd7534BvU_cxxoZ6RgNz0fvgX#*%N2yIwf*2a~f2tf-}K}dl@kwPPDRUR7LD2fm$ z^i)NOf>1Yzf+Q+JSd{9c5D>8<OA@!bK@@~MZh60R?@bFWJkRq!&+q;J{`d1K=gyfk zXU?2Cb7tnu+~9TQd!6~NBriL>P47L;SkG<YJxiImfN3<EH9AA=>ZY3_CQbgKa>u^w zTK?|P8Q9x8jn<@@+@idC-xPMbyvP1jwyk^w{ykJ)v_FllC||R`3(F|?>>tH;mTTWT z#O7_Qd2f6(wrN{m-!Va$7_+U#C#eG4wynpf2N=7){QR+n9q(8zSv4k2ml#LW&8JuE z3;|Sx^!P31-EHyZ-ouI8p8Kqy&~vIor_nDt<kxcPp8aySMIpQUa~I^YzhKZvW=#{G zXVQ$lu=;rWAs=%Bo*|euO_hwhKjpYp-3@wOp{CjE0}Xl*f6en;t7W=4g>Kwq+wzV- z9K%w!oj4iOj2+wN|8@goAC*7y-4pDkZMyF_$KIaf8#dYFfjT%eX=dtH>vEv1nFDy* zRgZ6m7HL$PrmJ<D4)smgsY8>JO`3b#l*gV;V+YE6oL$HY$~T_9jir=_&b}f(;~Uo5 z!~fRkI-yzjPT%%wh!`v1cGEA{37y_R>2}RN)WmI)J7wlhp5D~Nu0@SQAj!++j`KO} zALYLDgV?n47Qc>S$I2)CdK=3ruln^ymQeoVukWyj%d0N9+4tqvi&NP1<@+x#WbbVo z9G=2h_j2by#<6wV!vAO^FxR#gf8@k6@y!wJlVtWH8QQTNc9YxMj-88TUr}x<dxv#% zqZ`^cXTzw+b*w$R=r&)+vIO=n*?Y1+%;nzRlRem!)sV3tON$GX*J`xn>&*1-dHvY8 zjP0TcSuB<P>0Xq@s5v`AZEs}PiN8Q!l5dzb9mZ%dX~yhwTW(}eFm}Ox;wH9|u{0{W z1*Oi?@>|$5teVn?u~BS0l?-FwHyOixxA@a3WMKv>GqcU?2e)xJOJnR7ciydRWfOMJ zU29=6v23>c$6VGlj`eV#zl$|x?0fegce4#zcC*_#g&kyqMMJg%HjJGiPXT){nb5Z# z>-%uGiEG`Y88w_nOk=+%jNj43-{NS~%@-khJ7l#-)>xV_opoV1k$pPb#vY}<h3r9A zK`sDsq3@P}ng6ZL;)7tsjWl=$Bi7k{bOtLI5~_TreDnTEo0o!Jo1?MLSd-?qxwNQ= zy&;Sg$T*AL#tzb=S<vtva?N7n8M#}`hOluzt&TIrlkOBtqT*uKmc34o6tjm}XVTi( z6c+C;vavg3Sa-K~E?4Mr8Zn=J!CF%K0+uFbIFs@VeZ%q#p>~XR^KWkJ0;pLGLWpGF zO&ZPGzD~$$-a?LrC>3!Rm9Uf;A-}DA`Gf2iop4Jm*_X3%&{)lK_5<7L-v1=a(se7{ zYqM+I-3_`oV6X1}ex0bXGn3}J`&acgHro!Is4?;Me7fd2_DTFrYm)MfCe8I7D%P`M z@kZ($ia|<Cmi6q;gmX}BGIvJ8FFC*SQE1Yb&_U~2YQkBVe>0$E=<Uw^f$4ktaXrfv zjSfM>d=m}2HRwYy>r6eIu;gu2<b>h;MLV7B;cko7@_)Q77#MsDFTWJkbzFlqG|+Kv zZzso{bQeC)&NXFzn(z{O>>Qnc2~0N8O)s;#Y#Di8W@p(iRP_q-J|ferKsIx4e---b zb?w@Lp&aP8#HrK7!|5$GX@)$=-NZLd4A-Eh4ydL5hQWT#+QGIQh&kEq-NG%m57lmE zdxar_`&Ad48N;$jza5>KLW{Pu4Q!3u@Fv^JSUUN3u!Zb1GP|Mt5$?VoRvg0y(Z+XR zgG=4j@37_q+e$~@1<T*uf4s|HiD92m)gHE#S;)8-7TSfr+RFxEJQ?<Z=5e=qACT-> z`eQ$69&|tQ9_tZ9eXH3}Atyrfs@dRJ?v7XQZyQ@02`;7)AHZ0K(D`bX#mcD%PgxaY zDiwVI->`_vK46*M_M@qnI&@uWB+?;EtI+_q<9*Bf74J#p{{Y&vQ0|B9It)wuhpe1I z?QK6|2jaKzNuxA!dLVuE5zB<kZ9itkO(YMT(HpeqW0uI8lk;QNzDcZa;pU4kQ2s%n z{-m0Z*>v_LnGQmn6P%!3(>|YGLUEAR9K_gqhy0vkyGrp|Jw?KK{=T`l(SVsG*(F<G zpXbSZ2#Q-xj~rrM;&*IsYid^-@w>@&h^3W2vRcYFqsP&tKOf;u_au5d0JhndVQv0S zrj_Ftdy+KC&-XCs-cHhVbR?Oel0WZXHPE2B#Nk-L@&jI8*sE#9D~7ee{QE8jE?J%K zn(zq&cua47%^dH|Xkv|&M)obE2|o14L|WuyIq?pM)F}^DOr-rjsCFoYd~nWLDA2LO z3p2<$%v!`3fyf4;fs}igbrw$lP9=w7Zm&>>BN#i+(1ar>nm}bo*aG47mldC|i>$9Z z{0W>5tD;4p!j0bohC1G%uyLU@^2ZJ20Xl)#qkCCF$G;B0fUGVQ{*-kQU&LrPZd9^b z0i8%aj$v?R(xPLq$icMn7<)LmEuX77Tl<SnKF7D_a+gL<p<6!#4?FbjYxY~tGb(yB z%>x=;TKO4#(|&j8GuY>hX<P`0WQc)mv1_{<jXYf%`Mq>)Z<mpeNxa{~aSy5T?_K!f zIN<U)4*6Oa@JQdx)4qi-P6sX?>Fd?>B&3@mJ%Svc!#-ok`#GHT4dgryyE;p{<Lu7( z5o@I9YfB?v)KJlJWF{$@`+26Gj&i~n3LWP|k@Q~x*va$-TC$L)egX1(sS=>&J!q~K zl?^S8{PqgffS~2*)zaj2pmKm(ub^%QDjTRKK)pcOC(w0SH1!17w4llpthaC?LLULP zI`IoA?V#)d%2{MN39-7IWT~xAM3CV?Mg}q_@QnVgPMiU*3b+=)-9~FpLdXE^JjvP# z$N%IlPNT?4)*@~&OsR~#g)Fhj@$aDY5;8_$W}{BA776JNsk6^F!Kv@OSJO2#!D%Rs z9RG}LryyD)R|r_`BQKJj1Ww5*D$qT``<i5QjUMV|ylYGv<8RdVG{)}TWIc_-GieP6 z6RDbm(e6J^v(8NT;(Ia#Amws02e3AnOrZem>jg3eF?qg3WkKlINv{T3pN^RI4Cvu6 zj-#hL+Bf=}NM_dB{-pJH$%+Z{k09$hG<>laOz~(FlZN*?=#!78ZN69<3IDvNnKSZ` z&JcmOkL*p`{5$gC62d=lI{b;?`vqCQWJzoem3+zO4nNB6?&w4>Mz4W;hYm=i_V8|S z3V}-qco=#39iE4G*k`zkzw<>P(!%B*e%Nn#1Lc0jZe#^i`4!75?YwM=RRcL#rB2g! z@7$`b6_{Z#3AX!YZj~E;BKc|L@!{uax~ZJwcpk@lLCf=aIbH@d?Klk|4X8B{^4qxD z_fC3oTtd$I$=nyMiSssFBRTuR77l}k=?dxIubEN!gVDOL;U4!<&DZFPuc^g17>NC8 z>No7pZpKU6-I2Fvjj%hSw!Iy1JKBcnCES$$_y+yffv))$F18IX1w;9jEZ<^u6_Wj1 zOo-L=)weM0cS%<Z#kwfHmMttD4yGN^tYqG-(#UtWIj~-L$%FU3)jSW))2jJ;<YV`6 z**ecs8o5}+Jr3Z#-0J`qs_AJQuIkM@BeEa-(LonSt-=!b*)MnbAl{r_Ijw&4L;BX+ z<sLgen|gf5O2y;*4OVQj3@uPEOyT0AwDUWR_Qh259UIhXA0$Ywcl^8jNJFy7JA6?B zu05#l_fX)AwETN`GNS$8v&^_BR!dXT$?yY9jf1*AUqT&zfVvjaO+Ub}3uyTdP}5zs zlOuif)ek6mJ$3kz-6-xFkaMBEuSqAq@q>4`@HW|ggc4t%bw6TBSovGprY<lbgD-7U z8u&g!M}K5pIyQsTDe<Oliiy$W{IxgjMQ-a&k!}i-dDQkN*13DlZ=fmT&EQ)v)q+o< zf`_=m)C$q83yaD66DH+hRQ(f-<N(E<0q~FsAmJsn%2Th3-RO+Z6UcD}Q`y_(;vkNE zXINxNE(m>XG#W!`r1r6fJ*em}T*LKuDKiy+gj$3!?6;CJ#M&pn?vT3FM#aYZ1{$w< zeo)SZHZ(QFdbgWwMf!y<==bw!o4-V}uk)pC{=$(o*-9?XWept-!N{AC_GiqJ7s&iG z6hDDVer9LmwhTfs?)uu2{TG(nvL_r`NonN#chFE<3he;i`wMFmZvZ<N@F(a5$lwP5 z_=RQ0H*+KzY{0&+U^SF`j&+H<h=yCqF`FgEeY(*h87T4#Gl+Q)r`rr3jj2Ov<kPPl zNu7OUIgcT+iu~tTpJX5Et%kB-%HKL2P3)Mr&M)JpO#WXWgXuhL&i2xX^DxO`Dm)L9 z+J;(8GLJYbDoI!T_utRMx334YGO`_qKaU{IR=ZpLitbG4#<dID*f%k`zS*A-*Yh`0 z*#$VK4El%zfpiyHV!LyHxHJ4ZzAvzE^6Ig2>4PDUsq@?gGF@a3Cd5HI@KNWd^JO6- z6Xmd(?&P}&WzV7W7cuTnQC=AQKBjeHC_8~Z3d2SG3ReUr9xHN(!|W6jJpZ7Y-<X>% zaXWrzt%Z2oLv6h1+oOq8^e5)2Lw{l}vMabxCOoGz@lb;a>Kj6#KcRs*n1w@bc1ssm zu0vyj`aZddZu$#?d_;vD?4#v>q4O)r3y^@;cd5M8-cZ{`(qiVrwzo$FlkSl}$%<t1 zqpKyWHwGQ>kj|>%+~3fc;H!?7(z*!tcF()R9I#v6xl9<;6iac3Rv5?P#-oBN`Y~P@ z6n7h5t>hnpjo!#+LQ5>^CNvYa#=Q%)i|p%IqHs7u>CJ`y!XebzTo}a8xYsoozKmgq z$lh9bkeTU^*1~o1p7$5{EsyA&b~5UO&cgFrcdkxoFTl0hBq5WHAg3gZV$0njNf;Cp z=PivKnn1=x2y+LOB?_tWJ2%C86M*eVu0#;lR3r)Q8Jtm)&`vn`J7p&csc}!OZu=!R zPyE$i8aW8(oh0-bGM>AXy`xMTyVGjuJ?gI`FT`4zZ_<ldY0wMEj&5q}*F4-KWJt@o zkh)1@Y6F*|0jFBz&7}~y#n-~*l90TC^m?IBTt66Xh%9<xYr-Vnp^m$|)UN7n&?ud} z73+leS*82cWMQ*_6;^HsVSLmmKDvWE9fYj7r(^}6?;zx`GV0q==))eQ!j4dPQoUY3 zzKgsag)BCX!pMOh`=$ubh=zI_*}4UzKui7<VQw52-Ug#PFID)G#U<k1>Na%}cE`rg zQ*8Y2!${jzxK4EN((=MtW5VG4&`mdWMT1_3nUs*dgV2T6cNJR1b%zv{<m!r!36sC8 zFdqFgI1LIfB14+cuHEzd_uH)2IOq>Os(CcsWq3qmk9kD*g4Vq}O+aAlZ)EI-W?~gL zCG0NhCQNUR#m~{cXlFTT`w3~Ri`&>w$Q0t9gsdg*sae7l7S{*w4*Dn?Z8lTv01z*w z>;b}!YymAAfXcg2<p5z&OZbV-PDfjVr8Kf%B>w=Ak0Sj*sK`XQ1HrpLE#j#(^6*qg z@(&bJSwh7iv?iX6gOFfk8HB8hRKindsgkF@CNEE&BtHksDh3OE;;T`YuQc-B%QSef z(1nd8>tImcL}kdt&V1)!@O+wn<f$jgFa&v7Wai+0vJC;Uh&J++hdvr2WX8`|I%A)f zVuuRXwHyxSg|I9P$i2VO;Gv)&K(?W%{A+UX)HSq!sF2pN9Sm5{2eAW#cvW|!0YL{$ z?t38|7Q96{Lc3P`T7X7}JykYegphA2)Fse}9DuD<m;;vQs4Pdgu465FI_yZaYGQIO zblAIa^Foy${NUcT<l~f|QwZf+zK^A~M_HEaeVFtnp-;cPs4x$eXt+yX3xi*s7;vB$ zZbu_JHU&<^jQ^O<uUVQNf*<q3kL`bn>?UX~l{T7$4Pv!P)4s~t)}X;AyA)OSp}gy% z!nss-J$iO36jB0SSkUfGAm8;upX6Mi${x*d8T#d1Fl^V@c~*=g(di?{4MGC-x<P1% zz0ZgngtX*r?(4WsI$)FaYTEM+Ek`z@7~28*rGUy+8rkFHOgMF$oZpUdD|RGw_Hj#I zt>M$w-nO8t!s65fc{-5y2BG}`tWB)Wy^}UC<oc`E+a3?pV&MJ5S#d|pS@D6kS{`J3 z{-CKh3fHlp-HscD@j~49Ag^(UZWea4mV61r6kT|qrk%rtoP=YlRbXZO*Ec(wczKK8 zB%K*fZ4A0ZOMT6-__wLZEVPfC4qj&R4inmv6KQUeX2m4UXtIOa4oB({x@kC44^Yu? zbnhHmJ{%=eQL;oS=|%eHiKrHqzSqS2R%y(I_PjChhU}8Yd<{dh@_gRc(OE^Av-Vz3 zhFdY}-vEidqOXwacHJr<Hvb^`MnH@&D{dDKF&+7C7m}F4U3)vme|);)Gk1MV1`FJb zi56LeJ}n>TLX<`}lySo%;{mK4d={a5*WLe6GIncrV9GXW#M^n={z6WKhw8V>Yv>KL z$uL@&&Tgl&(ZbS}C5Wb^xZu&jF5TVX4gsO7+uh5@2&YrxZiPN;$Tm;-B2L0<t=lqR z_{4x1+cg!C^cOl`Aq-=!XfVNmlgLWKV_hf9@qfvrY55QaT506fCm>?-kx3@-f9+-8 zB&z}I>0)wJ3I^&?Dcq7cS<53RDA1f2Pzje&S*1V;WonjumY`-$q`prH;}i5($hv_x z@~p}$WOb#sPYX{AuSUrAv~U0mmXc?L2jjLtp7e6p@%H4tL+D0>*9o`9f9#vYRqI$y zj&(wW-RE{ZD|Cs8%SQL7lgBA^iOayN&FyyzOJms>cj1e|japXae)TmWGnVDKPrNSN z$ym%%<2C_*9LC}=4u4JD#%)dCT<&HjZI`BkM(6H2OxvwBD<Q*JZDy|$bd)AiW6P7_ z;V12Cx==|!o~@*3IhFM46aP`MsxaxsX%`5tSSlN*y@f;HIPEa(?i^FJx$dGo?eFny zs=IKqc555vCHte=Tq;_i9na=*0t@LEY8T@C!Lbl!Zc<R`CEBITNUjo~j1*RY>3;1> zq<r_wNc{r<gWc8#w4-7Ws&f4eOxOu`da2ee;DExv1leCv`a=L4$;QD6x91^kh0v_j zqBOfSkMbVX^5_9XB1AX!k7?bdVKvkH&*5lQx1}nbos&b?(e!@||Koz*{}BO7Yf3|$ zQS^x%-ra$}*IUuM)zLf|e|T4{lAkN%BZoimsc8ises{T&o}uRdy;e;t@bJ5;CTGZ+ z&y5^@H}7(WCu%Ndcw*h<41?Os8J^%t2&^!S96q5VXPNeNr=1EqSC#Ahb|rnUQv7gu zBRQ98ca$zs(nsR@s`S+|JQ8=!W#x~=sd`b%ABj`wYVOr3^sz@3`XYytmR?oMtNcWT zu11yTh|VSFm)1lXwl*mR?$yiiNSjJEZCBE*)dt;bQqsB-8P+T*Q_~aFv{LQ}7R{GD zks~^_<CavZbY2eIMvk<XUm{03m^dPGq~p$2OWKZz)GSdYAGl7z56)BJBOFGb$dSRS zW|#OlE^=hVR0ZZL8a#5lhjQ-LCb~~Op`FvGwQb6bo-?KvXgJKDm%nt>ZY}=e@z)H0 z&GFX)e=YIX$~|g#>*wt|OuDpqmQCryb*U`dZ62<3w_s&E#_INUjcx5)XQ2a&bl2eR zRSTU}-qx*kC;d&grWw!9b#Gm&8_Z-%_t`Stxw&!Of65c5xWD~F=ZIwvcL@{c2`zi| zGW0g~$}$-H5A17n|070}5_pj@)H+%8VWZ(s79-u6$?d;MT+*Cgw}>5u)-{+g#Y|RG zF<P9?s_<_rtxS}(v~sj)#vEKTT3m>zujLMLfgpy-)J#gDZ|)F9>_(ioiAmJ@P7$Z# zWM77InV;#J($G7_PRvHuJH;e;^pZQpR8gyHnJ=O=k-&&Tssb8Qxb8+VkxtzSZe|MI z2`Ox3$OSNyC0ERXOcSM4YJE_rquukxc=G0oi9(xds>v1CgSW2`vYdJcvOYIP%opuy zEqtO!Ep2?H8w(lANOy<WjYf|Z6LBcuEYu~^;;~{kKHEGhb)|!2A+C->W5q*!(>zWb zg;1U@PuxMR^2B61ohKS0mF_MvL(qHNrn|%@f}pP@{}f$9Oh6wZ>v%CmY8Se^?j##I z#*1m->lu%RrjvC#sy#Dad<&?m3COXNkAo7je635P)O*CHLWe`EmKex<kC-GnFK5@m zPPTi{WIO35f?X9EC!%3?3Z+YlG;yLBkN3ifVrHG9RTZFI=zCPWYod66lzikQF<wzs z#2+h*9SML=Wo#(bCD5~z#Ll8g6+!8<U<Qu%CPA{o%g}*TFZusOr=&VaXN8JV5j3+x z#7eSSIl7i7lW3(?)Fvwf+ON?U*$N6~KB}>ER*`_gKrW?-52T_zI+3B;ib1Ua+dW-A zDlmA+l`kg68`Q$6C?6FWYGpL7%)h*%;+X|?6?H;I`Lb+2aA0{<%To^0P8L&yP6*Y? z&_`w&hNy5dvUOC(fssNh(NBjai<NYCr7oRTP7$5RG)@(}3SDX_Z>pFka*_C>YQKx0 z9CEgwT+i#0=+IP*6fGH+b5od#PSa9&DtM=peJX}Q#Q;f1Lkoa6lDR+}DqQ0w>r~J_ zS0E+>=P7`_Ailyu8EL1X;%i-GoF-;alWC$vwrOH(u(VHu9i%IQL?ubJk$0NhWXC98 z`82T?%)u~S94T}~RAoABUQgcX;v|^9p-{X<NW=N-{h(Z2C=U*2A;iSyp-?OZg=q$= zPOl}$C`i3{hBzF0z);L+*38SRjRbV|ihISgz=rO{Sk{qYCW=>*X(q~bujLkxYY{Uc z52m=8@@V(X6c3;Rd6aA^5|=THJ9`!!09=G^HYoJu<iJcm4oWJD@h?U}F$^N3hOEUP z#o>HgSlZTN(STAuj>6#Ls8pMnDrCCIWCM9-E!k`eM-ITzCJ#ebA2EemJ*8_J6UcCp z;XZM!0BC!Z8}EJMbe;&`Cl(_%VHhrU<U|$o(fsG;K$RBq&EdY2bo0eDnlx9;=8Xnf zn?P^9tP;OqR8*5`rs}y+w_GHZQV+wmt^WjGbL2d9GBn0JeDOTdjtWshF`8m|687E4 zOooM`iK^#Am3mc%-g*knh4dCOE&xw6*%yFRm2Arb@h%v*T)JN+FFjG{k2u^yC<bFW z1`Rv35V|U(&_eJqlD-72t<mPe<K)4)%r1dgg;Z7|uH?E}3jUd}`upK5%@q%z3k_sh ztm{fcA3$vuvR@CKY<WN&fOqRjy#Mt8^kX37gXsGH9<u(TOQ8i1irAO>$@`!<O~?#U z`XaGEht@^t5DPgLK|;H%-BXLWQrzK1kPKY(iy<iNZ?W9Bmw5lhut5VEHerxO7DK2Z zv~n`uGfG9R&^<)ne(2jXb44vpEERPeV=EPNqE4{C;+F!~VF;9>u!UTU(9A(L3YDTh znBKi;NQND}hJ?tp6uidTMWZm(OO9>2Ov<@eY)vC24Bl1~x%njO$!{0=4j^PjXAWJ0 z*$rA+0u7*%uBB2MRsqf>@Ht3&mx!fewqhe1mue%JZ6D&M>LL3>Aj|NR^C1XkCl5!P ze5!3_7?g7TElRl_=8C8Iqy&27!{TOUsCWeO+vR^P_&1SK9zi2etN9U_E4<+&uo_#% zqvB9$h%yt@+3C<~vOEf{8~6~I$gLkr;UdUDRuS)eIRz*5n7CM`c}yNs{>LD7R&B*n zNSjql#--voOrfEOE|u1k)QaxeuZyQ$OU3jnRU2N4u5s`d;ZZ%Q(N5+vNMk35?3K#k zB;i67R8^Ung46k&Md+AWW5jsjhDr*RiTyEjM%^gsDQB6uSr`T%d^>vMuVv7{u-fRl zqBZq@T+|Du8nQeNT{$S^hMHD94l5Z}OU}okpArf^4rc%o^AoZ{;IdL_=@a7a%lMqS zU1~~yTP}*6(y<)Objs@HAaF1u|8fjwt2`Xrbyt-w`FI;6{_RyV<Q8au5;_|ZCfAeV z(z>Zo)xzyoGOxg5<90tM$5W3lS%FoSPQhM+uHtA@BXrFQOjfo=Xx&Os%c3Bwp0{Zw z>Ks|qh}^akT(phQRh)~d5xRz>8`r6IK&MVhcc9s$e3a*a;;@(mw&5Ix*1I^`+=#WG zqe~j0b*sdr0gal&$s$;TOr0}hLBX8I>~cC_k$VE~_06`ff<1Lzh0e2*1FWtfk7pGs zwr~!3>PyxF4O7*wMw>>vC|ibpdVPYn&8p=s-DRuA)<P$pQc8}WVamKCy=cblf-ZGy zm0S~f)<74S?>Q*r05jQI{BvpzCVTT*v6YbPr@Xb8akAEmB01Kg)^u_Kfu#*V5}jQu z>M;H*K=K(U(N%~|DW?L}kHKMFh1iw4R)CkaLX4v)@rE(w<irarFbGa^1V$}K9H>BP zSA`f$JxFXOjP+7Bp>bpVR7hebWf8Kg2>!uDUV<1)S1n1U2w}OiHTp)UNz^O2i>sF4 zP6k1ij7l+il|v^dguHRDFEKPF-+J&Vq}ugp2iAN}xXno(%9f#@tWI8^6ZJWrs3@Df zPS9b&{(`8lcpfED1g~U#9xmMKRT5S?5mFKkPGz9bS*acEeO^p}zn9;Cd0y;@UPI~r zLcT}AO@2XaE9A=sQ;A-HHVvF0nfAPZ&4fi^7<vK5VOP6TUA3;(kbVP(&19E~SFK|b zR<l#Zwlrab*uDE?|K*vZJv<!=jILGS9r`FF*9I|*mTnN?JD<cpC}Sh0oR%BKW>mZp z{X7=Qn7|~guz0HUEo8RZ2(qlVP=J%MS}NNprgn31hImwI#yWW-;uorA7#OQSe~gU` zTcD*{s@(|fTHLx9#feOq>LJ@EaVeY`(y5fRS+rs3$}5TWco&VF3m%pG^lUOziCv}X za<eYO=gIhxOnoW6qY5r1y%D;aqpc0m6)yo>*$_+FFQLvtUn9JYlWQBHt2o-!2<_+S zl16C#%jnb@u10vXjQ2Ofm%I!Qp=*S$0vcmQwp9Pi(6mi?*S&&wr}A!kMNE|LZP1P} zHDvOLNy&0ek-+3y&Ke!4rpI9U<`J<3n2hbvD`M95Jexn!4wrRXPd`)EN5s$MY9fKL z7EWBBudwMzH@_-M!yP;ikIJiI*@o#cMoxT1p3YaraSb<1<IJReO-yMwrbaI27hFp5 zdNyQw4aQhSg|CU3rB0rUM-^tAnI|HFTv^D*m5$}vykRQW+(J1W7~4Q04Qp2w5~T~= zTcwoiJT*^wxjG}cqlWtxvW6XXH8~s7sdB6RiKX=xtbEYP+r-4)4P~1oj|H@`TB&oK zUWH}_=6Wi&!t4<C*a|(GDqiQYgRNK;?|Mtr(b%n6^W@f&4>T0nASTextzsL#=I4bF zok1av*HM~FOf8)q;!N?V9dNY<{ZA>rLF3v48n*7<8me(&<QF#-td?}IV^m>ESk4#6 zurt%^7+GUfOBhqeTM<FeQsL{eeK}qiQ#v=yjv83BT2$u)d9Q3<8jq@m`%F9$@oS76 zYBUD<-$>vZwNLIdQTiM3EKV6;S8R-ttZ#@(og5rp--Buo*9~tBN9%ShYNBLn6QVXa zQ!#+LLC_FCHXW;6z6O3nGzgPwWh>&)HXVDVQQJiQ@TjFI6*O`O|9)qZYa6V_LjKpd zH-c_`Z(`Q_W1HAcx-b0SwEg=3tnKw4?qBIZSzn?DWicZGbdCMIE@9CBure~Fx!wkP z(2{Nk3>C3L^l^M4&xIpPC#Re15HHppVrnmK6feU%(}?!<*!0WsMOEb5A*MB42ai$M z)U{GA9`%oPK7`i_X|7kKiDpOL;lHk3m3B;B+w5+%O~op0<1SscjuUS98w4!fm@?BZ zZ$*P?ub~}c+Ov3M*Jk6Ok{p;L=`>#l9rVcYG%pZXM03zd88v>%r)aWnq#Kp=SS;(_ zg0DO45nD@9@1W|7_X0Az(lHMl;flAgIdG8uE!0^^&bJV<%dM?=8!1G8-o~C6$WO(T zW=-@8XDh;8K-XEATA{U)Y&)@pR18ja9g%=FT(J>;%BG5|c$7#WKb?&4fVxW2P#ro? zL7N(&%VZ{VIJV9$fr(c}&#i8NR;rxepvuYVWZ(jpT~0kYPiC^v*#NCnIlEzV5Kwp< zy|Q(uSjOj(Bmth-@-95Cjhws0{<P&?aR%P?yAV3Dk#(1t!)$Kk6thcapH?ven~Tg| z=s24Sy(q1tJ(IL;XoFYmz;^>)#61cTc7;bP-6QIim0iT&Rgpbl*So9spl3v-OX`fk zjs@60F|}@2rn+;xO4c<`Zezf1BFjD$#|k(FyTkYQA-GkD@Fr%`R{LQLc;Am8Dz@?a z5ri#N6cb%@U=Vos%ckPLgvil=$fyuG$oU@URPjDyU5-ntaNx$+zfpy3lnyc-kZGL< zpv@@fifW97I$2B`F(ZtuMgYxmd4{hVMeD5F@&Q7>2!;LEjO>3Gmkw{B{W0oD$c-vP zvCBYySW$a)^woJOHGgs*Sw0dcb^Ev3QO!qk?-@TvoC>b(V>u-Urp_+Z!CUMT5x@i6 z(3NxYaS!0&70cw~Ho>9#oZ@pj9H1S-rtM%gKSVkN%TL*leQ7J7IJ%+nVbx{xVVeu+ zIF6n7V~62fGCqerm66XUPPziU=`gn6SE9Ephb`_pEDmp2$XZRlO^CZ^9}yGVJygRL zi$}F{tEy<bY}g1uAA#4zis?4k#&bt-R;E`5@985r3<J$4XsL+`Kf(CZlj9R86S31z zaBg4?lfjL#mwHsx#+!Hz5sW!99+g*M*!m{6i;k(N|9!}>kfEq$pM+@pQ87*BlSl`T ziq|8Wq5Bl}i<$dV#N#kBKE)_<koQygB-LV~%#`}E#Q9XbKAIN|t70a%979y?YDJEr zDg>85gQ&O;3a6gjfHFGAVjw#{Lz@f93*z`ZMSecKxkT!yZzxepjm+L!BYS{<M!Bm- z9IXz#hRopnO`pRc8VH6~yFN!m7txm&(PJ6MvG>o}h;A5(w|Iq^FJ!F8;guSc%~hJ5 z+(7J0+Ui58E4LL`=Qm<P^MJKd(LpXe4%eT9Y+vyBOPK6$NLakA3X}5-I5IQYN+95w zFK|GBSZ*m!)JB~UPgB<u2<YUT6iu)r`$=vq6%X;ny3WOui2`8tNgP&Pk~W@#xvi_A zl2b4ZM5#I7gQpPOU5A5(eqyTo;wgk{_+II}E|pH-qeCFrFMcbmcTs39RFf0H6tvz$ zc>!!1oIWl;9yNTk3!(i0j2q#!S)6Y`Tm|=O4FYAw_c>xQ6?YVq+^xRE(7=A(x&}le zzrs;jmD~0eBG1AGzq{&dcuZ(0{ac)JY^ZfRzQv$n*;HE#b>hV4AVSl|@6d=UuM$I9 z`5oGCAm4Y$FRAz*r|vl6`c9Wn8c5f3*&>0L(*HN0yTuRUJ2B|f>N7a?DWS@<;>vil zBFU%{e6WBejUu4ms*4Ipl_7C@e4V`b5<$$mBx(Lx%qgwQjTZX<7D`cdMi&QNeWd$E zOe~G!|5KQ5QyP*cTU8`5QdL&E<?;r0cPi;b6(%X=#s@4aVf!+Lz+zY6e=1P4oW(`j zbK=lumKufMXboA;iHUc&3oGfVUIk7wsIW?bP1O9ZRwaF{Ux8h93LI@z(<;0s3aiO` zPE0CQ$x>83+|H^04Rda<u<=LKa?xh|-@^a8L;r6pY(QW79}nE<!e@-C(5P2d7fOL# zkD|%kS_O`DDKP4ft<^l8%Qq8BMt-^q^Hf--Laz!{y2&ctWR-5RN;k%;(2Xgh%3l#C zY0%QThEB;==%!SX>sJh^Xt-=_iGsgcx&KG_#yv30tO%lRQv$_m!)>Yt@2gVs)qqYw z-9ZJ^EmJ_<BLx<yicxn#ffCb|8d&<j<-65-ORq56M(GquN2x6x>Azg^Ydx2z|C_EU z{db1@e^bG~;E(#Rpn?B~6*j1k*Z;pM!2kAC`~QCr9HTlWy#oEwt4wWtO4qej$9bY& zNvpw-fW(vN+BWKFYVA<cI=ccD8@nkINb)KONv$ZsrKBxJ6>1eYsz!m=X3Nn3odN^t zA<F(;-aF*|F81%98dAs%=_<6UP{nsr@tv&X`CUvYy}ee+{}(pzKU68x`44#&`c6tZ z&?&5@JqqlsSJO3WI$MVR0bT_TRMLUbd2)JCV04-MQa3}WOGYg5l>+A!7<f@B5KuSu z0X>%De~4}@jLm;ykGvCicm9;mAmx>LtG~qjc(tkTVi!<^h4_lUL__DQYNfh&4GMf& zA*zc5?+lagFKjfbsP-?c>T%{45ob56FGW@+wZ)f@V)IUV&LR3l0$weDj|6u6Ram=f z$u+S^n^rBkDK-*(J-jwsN>lIj1iY$nyF+Vjl6qMHJd{QTUpK9FO1OfvHiSz-mHciN z_5@5y6ue&28Sx=)A(L8TTW1iYL}`ytsc?@+g<e$LA`;jm3kU(qRxKF}LG~g>DM%^J z_Nb<?r<$zs(k=MK4zdeUYB!TyJUCO4A+SHJu-nH0+O^lOLf$UwAxO;xm2=QtM%giF zg;Al{XHY3|Rg$A^D%zsLbgGPzGJ933Nrwup9O7v`t9WWbk@Aju_xboMpohXJ7Ozv2 zAu`5F{iW?5CB5IMLM@fVO2iN0<D{;_e$OS1;}raf1m3Grp-Y9TFz-1P-9;PETWF?m zoYY#~atGd1#d)ua^i85#<4pJy2^`QX@O_60OH^oA7)L8s7}qqBT1oGFRT5Q}_sb~U zL`sp~52<*+3O$tGR7#5~;Qd<4YZ?_G62ND1cp|~*8vTGO=K+sW`T(~ISiu3kY>t6y zSc4YUa6ql)fNBlZum-J!yM(wT-xh4cO7UvH3YFg1qW2G26}$SNma^le)OfY!)gf+H z!>~uL0v7#%o8kTGuXyQtgm3Y_SlHzuZ!-*qLe3J88f^N|Mq!|_p)@o{&wW@;W*K5+ zHwPL)#sq}SUT-cX!t!x}GnoSX-Byu^SFr_No%q}rBgNE0N)i6<BWnv3(<&FKx3-Y9 z$&=>J%b!=!b3uO5jHyqcVmq%r68H#T;c(It3IjAegZl`(?Uqtk>7!~+jYkz1_`;Sb zr6EU4v@@GrJe5Z^JY}aa2Tszrf-E27UW^QJFQ*mI8Y*c8THLDPz^rWZPq&h)pds&C zU84KB))HeF_)eY7*{hSzB4XeYrRfMaI3|N4Ly{~^I_#Ats*`CrjyT##rTn@|TW~I` z2qB^|s;#7rm+8<{Xr--mK{$-4A1*(-7bHkCcre1BC=H9x=0uUeLG0a=B!1xJJ+155 zJa9<Ge_|wC5`56H5YI@VO-WKG$mo9%2g6&BAWE9j12^vfN|K&}CK1(0p&fc@ILod` zmXZ|L0QOPkA<84+3jg|h5Yil%EL{|8ykuzyU40%VTRXHG@k0)vRu1yW#{ur#aZpLR z_8>j(A)^d&OHYO<+8)^`$^nXUfTA3rXnUxnlJp%=^b7Pz2N>BGxH;4Txwsz90S?tV z$URcc0WLWK(18w;SkX~xLKz(;op8cSrjGc$AhDx_tJNLhhEcYobO2@LE43#P4@!~x z3n$^9?#8UMB}M8*l!9BJXYmiZBo*~kks%eepMr^}LYh->l&PptM-H9~!BZtS1TQow zNDi{e!vXGn88EoYD7_OH_;FpU6S~A-Lxo67etERks~LEwn(yfpoqR6K4k_6coumZn z*jbXm*{OaB5l^E!OW82ivd+?hr~w5`<nMy!FX$rW)1+%8{)q<=rO}{n0Lg0*tu4Jq zvhu8Jq=gE=Prh9%nW8~Qka@0!FEc?Hm>iO(@le)Z*GhL?LSpTT7Aslq=ekPSf)K!^ z?&BallP;NP%e7KdcfW3u5CelpcnpET+A^~AfJT4tldT5|>#33h1V90ZdSLGU9sj_` z=z8++ReJEN^*tqi5!2EWbLo#YTp&EEo&M;jlAh=i^vo!H0P$K+sr~~9l>}qX-&0x% z5o{T#s)Q^~9YUWbb=3T1CU3QrPW}ujsgp_OUB~?=J5NUf(Kt#sJ?S&0)MO_|<56p9 zE+-;^GiI`6qSw#(`3+J;#4{y3oCp>KLxr;*vKVE<2ra~N=&YB#M(E*enEXZvS4Os8 z=#^1R;18bbB|XnHZc}e5hoRl}K2lD+omUYFgb>W@gBp^&6zU^g#2vvRT&r98EdS1? zKfjmPPfD(%MUbc;ssOF6pTq-zrvCCU@DG%3rrWcm<B-iTP#Q|pvL&l<!G(|LA)wu@ z8-PIrKZd;B7-I^Sfc=ajgCspOR`kbNMaE$1gXA(U79Ld*XVpd11rO<lpjY7Uhscgf zcc+v^r9&hG_o+jqiNYT>JBCVIV=>TNH%Ji-CD)D8QUF6N<_F777+qG<-YiWMVqhpY zqrjgo^4$!URt{2xm|D`^0&lCYIH~LEe(n}{I%Ii=!4Kndvl%LC<0IQ+IFvbKmfiwm z`(Sj)?%|TL!M)F5d|t(^(t7U8Z<QtX-U_wn?YK=s(ASD<l`!VnBcz`(3s`SQg*e64 zqxHBo9M7ZW7h$ALMoLS74=v&TQj}T?ZOr5uDHX%wtRvxjcW=|-Gl5akeIW9Vk|trw zHCSMYSQ%Te`qIi8yhMlOT!0B=g#}g*yLOJoLKA=w`V~Xq;GkSbH{JnvNQWC-qYH{o zf~s#3Bo|rzI14YmQ%Z-9<*&7N-6?g7F5cCS3W6?lCq%(wjDOI@N%%<1#e|^eVnqU% zP?qF!wR*{!ixT)8f&;kVTqzUUGmMckgtpaWkzttZV}M2&evFg_?bnWhb91N-<zJR# zAvDm5&wnwb6Fe$jF`{6Cmwfl&fT4J-WP}Ad$HFMBxEPPqfTrW5Od-KfhH3DrZJlHp zhrV)>W1K9IX)IK9aGc~6+M@6Cpf;SG=0U7PKZWp3gpdHE;a?PVy-PB3n!LND%;?8W zI$4N_U*l4wOMpS##ijGg>F9-vV1ktlkD;DZcS%|SqT(C{Zt*TygOjv(!!i?VDgAC( z5-xS#g{+BpD|I>UhVqg_<S)bsKXf-nf|WvdLvGBKar{JKJSuA^SB45zRp`;g2^{ZK zgit?52`1ofi%c&sd2sK@DCY+gG~@)mkQ^rOc*xQY^^HeAl#y<Nlp(cmplOAD-C0~6 z7nysK=xtDGJ#)_lG^Twm`6pn!mAQTQpuG()T?X~eib*gdxzjI^P?fx+{i@6hC&}6a zQ-ix|5*AD7Mmb^5msT*z;NvCnG|*9MHb*wD$xzb(U*8PN6x4)^E2?eSvSAyWrbx+{ z(!5iomC-{yRx5J|whQC4E~$TaHMHPoCK(@iMy)}kpIb1mVD<v_ZhEi_&Q_<w<Klyd z0=S0Vr(wa*t-$&6!2+q1x*8AScq?20Gk{N!jas%`97;{YV0Fs;{rxR640bW#8!@b0 zu0?bn3%{5k?AdT5zG(_x>!a{AX`yK4gm~&ll6|_=zuC32$|Br$z0)z8^rXdCUqYIT zoDag0j4XuzGVm|KW(#S4d?kkUC%zIheJBqyx8+_bg$do@hi76eo5?j+%An`6q^1zS zOa7VCEzP>A8bYkYSOkZ!4%f_^@oB~EB58Cdxdjj`mP;22_E79LsP;`THJkiJm{;{Y z8&4DdPb8RRP+$*yD?dx>dUua#*Q;!Lnw9)^Dm!(U1bbK~7Z=a#Ii+~kto+$imq+&z z!5&qd9#2F5eyW@$rQH>k5){|X?>#~=aN0<)5qrPPe%g$pf@PdS-KGS4rpu{D?0Z7| z*-}dPp0b#rQ4TAE87592xkL*}8uZrLQd06&r0rRQU+j_{p0Sww2AM0QbgHFm$j?g~ zcoI*8wr1c^z8J0{!;7!*q{JH<7SG6=IwOC2&qj^QaLU{o^Yc~I;)dY5VyStzY?VZ9 zU#5$v8@DgRhp+q~;Z=G&(_CSbQtr<5sN4YlS#M;TXD^tOKWomEr7FFh!$>gGp{5%s zAk#}Fi0E{Sc9trv(Ww-xH%TQ8a<2`-YOl=Am`x#@l-4cUSD^Z5!h+m%AGq1C!VMSo z?~_vRGN{?AY-%K?k)aqp#Rao^78Oq~&biDGd#S}6_I)oS)q*`{sw-L!vW;^fT*;M% z>s3Y8IS@{Fxp2M9c)D>f_o|vdx1gumH#zl#uvh5H?0XxiW)22nwA*BbM}mD+*w9XU z8)nS5&7aqEYQcgTQwr+Y_b$8&dne`11^cM<s#Ww+rEkRESv-GUJ^v@8W4w3mmD%@! z^kCmDD!stTBEi0Lb&;U@69>Weaz0vRp!9igcvlg&53VN61Gnf1iE>j*H{#|b*E}h) zU7ygEh3kvm4QE%WW~<XfzpDrba^rm1f$b{XU<dQzf3RlZ{zsk3gB?`i`eI2xAHwv# ziZJ~k%zT)UOpY4Vw)NNY+8S%BUpoJx2HTwC$pt-U<<FhD!miNuyNY!E(9a8`%x*eP zhDRMj{pGedwo;J07Dy@W`dy`8`=?Xw0+@|cW>&{8OYWJ*?E0tAojJqSb9TWzK1Jlz znN9x^wR{6-gztI_7lOS(%~mJ2tgA@d-!*s2oZ_M)jQJ@upFkNqFBb{+4|9m80sAZr zc+TD_XVy)>*?OLCtm`aeQE~p%o|E(EUOus9m8j(#vWN5~mq@SbI{PZpXSs@I%$rwK z(6eAR=9t+z(XPz8iuBo#p0jtVwF7Y9sxk0%<7qkDC{N4KP(i`$OO%s+73s4f{r#8- z^qigY{4>`La@YN^>+GvYI{<bKc6D~GDr2B(*A3^D0qNX5PA`~UFlWY;OWfmttJw7b z*!2TYM%1oVOBq<kC2y>Z0Zv&Nig&z383V3j=L6xtz`oR>Y69S&>3X0+W}iQ2`rONA zo`HpG`39CU(0OIc8W<Hv-V<sxwD>`J2a0v6{E7dA@H2?|J}6IG`bF4v4Dz~7i=;F7 zDa%?iE|$&+Lu%ZHQfUhlh9YEY$KH2PsN#LTJzgT^2}AtKcKx{}l0_Km<9qb!V3_w1 z7$V5a0m22V`IR+n+FcJxo3U5&*YI!MAC~UI-puzf7V!A;=27X|nBWcAzdwTgyPQr_ z!?7G|!S9jqfP;nK;#=`3HiI}qc@!H^Qyue)$Le{%|Cr3%uoQtGt^8qm9WU(_cxfrU z47?ojMy1&eX0GB$@a9UYER*H;ltD{Y@&hQRo5)vPyt$BcUn35XvkY;YLdshPl61Me zKUVJQNI)tf$1;d-M#x|d6cIFg$hQoP3n`=k-Qy@_<)!ebjBn6ZIIxkO^thyrZt>y_ zJU<dNJE(-0(8|e6>v27fUB_@g`5%`u>m*eTd1ROjPvB7HRu3<RN3G~q2U(twhDx_a zEhUP_*82$rl~z81@6u1k;ET%LGjVUwSFs#BBy@#;6@DUS;&Q1Q+F^VFyQKi)CUzc` z+r3;ec9KUKS0b+}66_sPU{txcdP(;rOi)XvC(+@EM)FiT`FKi8#uZT5aGdX~fS%H2 zO{`oYYuL8}rq>Euq4!t7lJPn03KT^2GX^zhu0((tae<XmV)v2NljqMUnm1#%ynd@+ zzl`*9N${xtV^kH{S0YLj^-@uE4Y^jzn*i4qtma4Ad0+uSZwG=#{Httf3td<#iIh2A zY!wq6g%c|WmK%1NbDeH2Wjq}T-hdXZLL|jbwpFlFJLy+L=rS^|#)c0;ta5DW!pdh@ z!BKp?KnWVsmBT2@lw2_2A87?g;a4Ea5oxe^)tXds?{t!{T(PNgskmX(>P{Qk)}Rh8 zm90UWjO1E_{qoW^QX2}ckrKEE00QmOuZ7-o5#V17L&7a;+giw}C+Aw^B8<BhgBxKw z1eIuL1$w@We1{N7T3I2Lp(o%RFowtAjEkT#d<tzPX=J+#vb{xsmvvDW{~4!KB4}p` z5j5?;43B}lq!Mh$VY|T3UdD<T;uw5SNzq@42z+9cYY5a-lk+Kz50k1Q#i04G9^t2x z`U@h0HBX~6Y|0NYX{hjNH2SVEIi7~Tu~B{+jV-Hq2Jy)<{)-xD)7=iTKO=hx-!s_W zYslzBSaR_N{8&TII-CH&r7eL>@((V}UMJ;)!nY2?WW1ML&q9-^+VCVs^QdQG!|2gp zK)mH|h$&Y9Axyx;r&9T!l`4b@@DJ;t;uX)KiF)Pzujiz6VSF{2?m;Nav|eh(6PEQ5 z9MCaIN^V_HRHU{S1_z{bJ$f2p-&v^l^m?g`*7LyFVyARpgU@b*R(u~WO=@T}Rz2A` zTJ|#FthxoD{m(-cB^dOuC|-0Jt;DO4U!$VP`vUCO5>0_Ti;6c$X~N`c{^L+M72AOL zdkNX*;9JUB8>ME5zPdK@3+@{cwbQxrj_|k>SGJ|y-Q-S;1Rpc=#zlf}$iozeynZD; z&8xy{9PY*dPrV-3CX?;}v_3tX^qX<S!YNR68h*cMGkOmv8Ne!xk)gWB9bwC;J9B#$ z&6qpyvI%!O{65GN<dIxYUR-(8@au=sN1O2z+L7R!C1k3CZ=GJltHPryYkDEss-&!j zI-D-MT=Z-eEX_jJDx8k!U&4DORq=Q0OE}6cq}@SXVoVS`952BZ9SZP}>1CvBWO)U9 z1EY@D7V$sJ0on*Z<b4^=tVBuPrurWX6#o)p{5@Q}SP~pS;VV*RCj+O#Bd-l2>b(b~ z^EeXs9ZWa@mm<L;Rp&FqGCoMpe;~D4<!FP3&&<PFdW%SKiB-w6RZ-rnI0?^Il0`Tf zd==8>DL2|9uS$7vck=D_($|#ZvDc)n7!i&wXgyB-ILIU47ML!=c3a?X5USZK6<=?X z8P<K3^pj!^__Ye9qB12vINLrqe_Fx3`)vhkf7zA%*(IcNVJ%ba!N<KB{3g8db!m6> zt~NY^)dRb1Rf*VP${SL*2BB7d+ukx-OlT9lPoBoWQ}rn#PLJM*#`5dY&seDH4K&51 z{BF~!H!x}7*M#1X#_>_8r%BtSO1PLJghMlag%e5LE)@%NLT<-)xLfqJ_e~6-Y%=VS zRtWQ}DfBiRAC^yWTd8z*hm<bn@n+#s?Q9lSFmAMK0Zy$v(!^#_pF0bz+~{vj9Sc8? zfi8r*^<X3*GRvvMC7e|x$f-RL0Ms67l6nfsv3YOFwkh}9`nM!obmgH@9WGWlhPQD5 zX5iJxhtuy!Newo`(c?gL*_?v>sgKlctsd}^<sH;&#|Z?w9ctPM9+>^!#YhOf15fur zI7(rEtPzECC!9qUxptzNV6k56*xb*Ya)Scs*Lr6Bltei&co)k@GZnszO4SK$H{OLs zAqu?<F8JJjSAEu`U6`IK`8<GWa2Kjateh`3PIJ6Xc~9Mq;)`AQ?pf+cvvx}#NQ=W< z0z7I56<I4L^69$>=In*jF7+$FZ1$X2N~WdW=nCtQ7ypZiRjJIlM|w=KW0~{@Ec36o zq}FuL5}h_CXme3$50(vO6^|n04C&Ho_FgF&|6!f-s5Q=1MhMq|bFcJmvfNem0$rND z4<pow50c@5Tkn@rg=gT%0pWoy`{6Vm4wH)~F{kZE`|~KgAIFwXWo9|_9%eK%Ir-1D z{q>$S0B*}rf^*{A-<R(0W>7_vK_pmK$zLKtC5{N6UaO=Z3&|IA;Nz8hVr9_40XPwZ znjNOX1Gt=_HmGeGUv6TsR!i}8`T(lORP;Hv1waf(J8<U!ie8#cwrco(tHPs9OU`O# zAn;FI4)OD7OcV)iBf(|zSOUyeNSDFu;hGSnRis%SBF6{dRH9~M8T5g?6wrN$5w{Hf z_(L$pA=8sMUoZVo+AS=TL;FeiX<P;Ocj;T<@mlp(!ADrMqDwx4Ypdi7Z~XMs$5=_J z=Z}jo$@VJQe|;?V;_?22=%o_!UBJR)(?O|BcoMyI=n~u^;8p<V!~LR_SiJfmWZsU$ z(zh`Uf4S(xN(vvvtmNP=!lU{!piQ6RAbm{@**}#QCZ{X8Q4?OP4t9{~j!9|B&Z}ly zj!Cz)TkF4SzU!Ej)6iTm;cj>ZJ(T(xE?!hBR~=@5CK-e^etcR6vq$ZIsS|zonUol> z+SA%9p4FMU*GLI<xLR^`#?kQf8p#mFRhY?9BW2Ykv1G2nGEtQ?+RinVr2QOvb&~b- z=q3v!mni8KJ|I7rTBP)T7#Vh6J`#ND@&Oirn*5(b$+FpiqQ1O+0J=~v-}ln;Ud{(k zJ)!M*qoo69>o|z9cJMfkuPjQ5`XUuypoFZI%NV&nMU5%Pq~@u%DVJ3FwEwd5!Aj`y z3n?k8AE?!ZBsA_gfq5tOnA9wFwrxti=YFPvg)}UWE>OywPe81y%PNx_aze^!_?tFd zZJfHX+R{(ruH!myBQCa+SL`MGF-)$!&2;#rl-O`DfNJDVI9r{Py3w~M<z1uhGdKm? zDU8Ver!ZevlB*mYEwk9eu}e?MWcHo#HGlDPpPho=o^>4a_t4WA!gj^tmY&91cwIF) zPs3V`inadZw3Hw`<Kl@dzSxy5(~rfjnZFyT%FnlBK+w1R?R{?HX#pgg@_(lDe}?gY zHV5GDbmR?yO*RLesa+8JH%xp%Y&V{&R&bAV96U-8WO)keH;!_W?n{t8T}zgqunMt$ z3HiI8mhcNn(1-m?s9oPkz119TZG_f+b;T~t`wE@3A=HT6$;q=Dp=&wX-Uw~{8eBG3 zH^P^E4RT#0w3nmv8lkn{0PSpqwtNHTFV;4~S8{S=Beb8RuV9Veg3BgvBXZlfAlEiR zdpO$C5M5CVY-K|%nQOs&v%eAE!O7Dbp=&tW)(CC*4qU1{jqruvfn3Gbdk%7Ow7C&= z_&e;B9f}_w`90<?1KGZZSz%-IJ*@A;@1?fF1{e9ihh1$5E69OAz}8G;`2log3hLz_ zK)2CHUXH`5{ZAM^oqohF$BO^Y3ViPV5k;!_dw=1@kb?V=<FFn75k(L<;ba4U0-H_P z`2GZ(PQktW6UboYKk=I?6=%R;b1eXPo<W9@Y-d1QB4a*0gW^?Q@^h3{Mh!d*A`4m0 z0)zRO4-4m6?gGA-S~m|qSHl$&3BFWIzOz^YS^1BjaYC<--wN33By$L>xvf63g|K8q z*^tB|B(5p&5h*`Q%akA-uD;9t1Bi=DKjR8_mBRORtiXRpG{+mdOz}aNhm5~qKlyrf z13Wg13`=X1ik3knxJ|ZCY>s^#0Vwx6pmO6Gn`UJxv&~AnbJ(q@#omx>1z9y^pTi2r zpq9pZ>l_vj+48+{#y5d&BEjw1O73>O3YCqvV~Mt93<OxU#6l(Kv1rRvv(w3W9t)zg z=MWyTlJ7h&F>J3<^D4>kE7az4(URHtg^KaNN^OMwezN^4P48xyl|QqfXR)ndcK+m| zg1YmaH|1(kUY#D>m@6(wqoTi;g8i1|Ph9?3cme(q^VJ1RTe!6(;&%6Kio5|_QpDP6 zQUfOxOf$&QLTQKJ&V{R+&Ue%(OZ(D`SmvAXUtNJC?DiszKu7+Iur)Io!dL)q50NE| zRg*is)Df2O*9L!W@t1(VM7JZHG;i1{hs7Oh(*Mv>{EAl*sd;EWhZ;?@$f_mTls!_v ZMVKE;wIlUI*~8?Vr|m#Dj?(}6e*jT)>+Apk -- 1.7.10.4