From 79390c897d213b2be1ea648f918a8e79116ae965 Mon Sep 17 00:00:00 2001 From: Mykola Grymalyuk Date: Mon, 24 Jan 2022 12:59:40 -0700 Subject: [PATCH] docs: Add Hash Mismatch info --- docs/TROUBLESHOOTING.md | 15 ++++++++++++++- gui/gui_main.py | 10 +++++----- images/Hash-Mismatch.png | Bin 0 -> 20578 bytes 3 files changed, 19 insertions(+), 6 deletions(-) create mode 100644 images/Hash-Mismatch.png diff --git a/docs/TROUBLESHOOTING.md b/docs/TROUBLESHOOTING.md index 3dc11ebf3..0b50385ec 100644 --- a/docs/TROUBLESHOOTING.md +++ b/docs/TROUBLESHOOTING.md @@ -14,6 +14,7 @@ Here are some common errors users may experience while using this patcher: * [No Graphics Acceleration](#no-graphics-acceleration) * [Black Screen on MacBookPro11,3 in macOS Monterey](#black-screen-on-macbookpro113-in-macos-monterey) * [No DisplayPort Output on Mac Pros with Nvidia Kepler](#no-displayport-output-on-mac-pros-with-nvidia-kepler) +* [Volume Hash Mismatch Error in macOS Monterey](#volume-hash-mismatch-error-in-macos-monterey) ## Stuck on `This version of Mac OS X is not supported on this platform` @@ -99,4 +100,16 @@ Due to Apple dropping Nvidia Kepler support in macOS Monterey, [MacBookPro11,3's If you're having troubles with DisplayPort output on Mac Pros, try enabling Minimal Spoofing in Settings -> SMBIOS Settings and rebuild/install OpenCore. This will trick macOS drivers into thinking you have a newer MacPro7,1 and play nicer. -![](../images/OCLP-GUI-SMBIOS-Minimal.png) \ No newline at end of file +![](../images/OCLP-GUI-SMBIOS-Minimal.png) + +## Volume Hash Mismatch Error in macOS Monterey + +A semi-common popup some users face is the "Volume Hash Mismatch" error: + +![](../images/Hash-Mismatch.png) + +What this error signifies is that the OS detects the boot volume's hash does not match to what the OS detects, this error is generally cosmetic and can be ignored. However if your system starts to crash spontaneously shortly after, you'll want to reinstall macOS fresh without importing any data at first. + +* Note that this bug affects native Macs as well and is not due to issues with unsupported Macs: [OSX Daily: “Volume Hash Mismatch” Error in MacOS Monterey](https://osxdaily.com/2021/11/10/volume-hash-mismatch-error-in-macos-monterey/) + +Additionally it can help to disable FeatureUnlock in Settings -> Misc Settings as this tool can be strenuous on systems with weaker memory stability. diff --git a/gui/gui_main.py b/gui/gui_main.py index c8d602aac..522564fa1 100644 --- a/gui/gui_main.py +++ b/gui/gui_main.py @@ -1195,7 +1195,7 @@ class wx_python_gui: self.header.GetPosition().y + self.header.GetSize().height + i ) ) - self.install_selection.Bind(wx.EVT_BUTTON, lambda event, temp=app: self.format_usb_menu(avalible_installers[temp]['Path'])) + self.install_selection.Bind(wx.EVT_BUTTON, lambda event, temp=app: self.format_usb_menu(avalible_installers[temp]['Short Name'], avalible_installers[temp]['Path'])) self.install_selection.Centre(wx.HORIZONTAL) else: print("No installers found") @@ -1223,7 +1223,7 @@ class wx_python_gui: self.frame.SetSize(-1, self.return_to_main_menu.GetPosition().y + self.return_to_main_menu.GetSize().height + 40) - def format_usb_menu(self, installer_path): + def format_usb_menu(self, installer_name, installer_path): self.frame.DestroyChildren() print(installer_path) @@ -1268,7 +1268,7 @@ class wx_python_gui: self.usb_selection_label.GetPosition().y + self.usb_selection_label.GetSize().height + i ) ) - self.usb_selection.Bind(wx.EVT_BUTTON, lambda event, temp=disk: self.format_usb_progress(availible_disks[temp]['identifier'], installer_path)) + self.usb_selection.Bind(wx.EVT_BUTTON, lambda event, temp=disk: self.format_usb_progress(availible_disks[temp]['identifier'], installer_name, installer_path)) self.usb_selection.Centre(wx.HORIZONTAL) else: print("No disks found") @@ -1296,11 +1296,11 @@ class wx_python_gui: self.frame.SetSize(-1, self.return_to_main_menu.GetPosition().y + self.return_to_main_menu.GetSize().height + 40) - def format_usb_progress(self, disk, installer_path): + def format_usb_progress(self, disk, installer_name, installer_path): self.frame.DestroyChildren() self.frame.SetSize(500, -1) # Header - self.header = wx.StaticText(self.frame, label="Creating macOS Installer") + self.header = wx.StaticText(self.frame, label=f"Creating Installer: {installer_name}") self.header.SetFont(wx.Font(18, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD)) self.header.Centre(wx.HORIZONTAL) diff --git a/images/Hash-Mismatch.png b/images/Hash-Mismatch.png new file mode 100644 index 0000000000000000000000000000000000000000..1e28922c35a32f920e7fe5d7c46a7757ab132a84 GIT binary patch literal 20578 zcmeFXV|Z;#voIRlHdk!hwr$(CZF9v=R?HRKwr$(V&ED_%zH_er-Jf^PXO6DfRn>*= z8e>#NU_V!bbx=|ss zYZCwf^^g<~aAg#k2G?m(SB=zcC)q@&DUM_E+JkH+N`+r#Ab=wLpr|0I(jbVah{7m{ z%02$#2qfisfdm9@5N}<%+kRhOwz>23)2eD}E^01vE|&m3oPtpB@S^g72uN7C7B+d4 zhbIRUA-{pt{Q=l}fb4(Ol-birNhtxOZD0DO9uflBG))gS8-Kcef49uIzYBW+0<`t5 z%yW%Vfec*&&{pe)|mbp60ug_|?tlZl<#yBF#oX$(^2j_bPu0seH{)sb zSqrNN7Ls9Y02F;J#4}0LYz@1g0&tDn4(#9aK8&$;c|*L?QQ)lq4hV)J<(cFxqdx&= z^f{yNG_Uiw)Xu*PG1?%Da1Xd3#@b*4WS=^hoF_{shbh5esr@g4OjiP@X8S`}(TGi_ z)?ZPhz>7xLL%+vohP9NqU!-sAoIM!uMqMiaUQQUu2Gn?{#zytyg_$QcMqgQEj6ShG;7;S_QSj*vUGD#AG=Ki?>>S} z7rx`S5su8CooIIWI-S3ph)aD0FRfhw63E?cKd^9++G#9d3(XMobfQmMF-a| zVntTP`m>zGc*oed*XCT!a>@qy6YCDAyyaheP)-1JdO!_#&LI2v2_R0g>~g~VE+0;S zk-|ZId%(jl6@BCESFRvKa#;xwy#o{A!{3->z1o+-2l^gj_!fSbV%%(A#cbjsg7EgR zgQWZGzqn02mCf+2UG#dTBi-n&N!ULI9%I8S|M~i6`(%5>k3^GZ*eo9SSQ-&|%|b2= zn;pb3d|>D!M@#0E1T}%;W7(yQQ52^5)E(ygIDtO_d;sx8;0g6T#EVCJU8bJw!JyXj zTSm+IZU&VENTmpy6D{wZGZ-ZYLxDyR8twCJl*g(yA+6b810U;9@_(c zHON|s6`1xw#~8XE-NOs|dsXMU#ckQnW@-H%GVl=OBaL^idWuF$R6;j7J3)KJe$XpM-{j2DC@DYSqKXr(r9W5TSqG&zyH2psddf zZ223W<^}`6MF)WX=tBtE9?;(d9zZSEV^DbLYDQiQp7|p+FIWzXX$PQ#A3`^dIUbyn zANd5(NFUHT0NFn1&jtMTy*L8+Q-E?jq@w^YIT%^5g*}=!Kw2-$49r>&&kX=K*rz^1 zM}XTjN;)vKK4z5wLU0Hz!WBdy2*_X}L1=@(T9FHp7eXS0h;Wzz zg#k!m)IFpENC)^^42EzFp$Wp&cmRo5V}3{C!T3mV+#=99%+si7VLbjL0;zbF5l>^P zi{s-Fh68R#)DVH$f>wFM8#q?s)%*^5#4_Nr{<5Sp=rU4evNH}#oF@ObkP`lee398P zbK*wgHF(^xDdDud%GsC`+81h>{4@p(7+_I^LV#QmGHC)*NGA-X0E?bRBQW};bP{T` z@o3b+3Im$jU)Id5$Xbz|!JSb)p}+g8;}en`5+#yOlQ@z>5{na3;ujM(3B5$060Bjx zLiUF#_Nnc+T0yk&u5hYRpHbLCwEC6yL2oVHwY&*4Q;;#GRcDfUilJ4WF60{P) z<4fan3AzQp;=QxIQ}~4t2u~2SAsK=TgRum;c2Re+K|wKaw?*ZIdICNs^Z-auuhPcFRD@oXfU3gL}d zjd=E%hVZ4Uq%);?r8%TwrGupTGTPD~(}U8X)3Y+R>+{rw)vMI^)Me|O>n0lJ>MCkI z>yB!5jeI6U^^px4Or;FD#+SyM2c~*$d+?@o$9!{ra)JVcl8ECA!}sBaVaRAoIn4mf z5RY}HG-y3(X{zhAp>|M>don~;EfhrnJuPeWfbUSdX^Ug4%-CmbOpK2$zfK4k{l zAiB1|KHfgWz8gYNSav|KNcy0hTu@n;nZHrcSs&grZZ2nrN5w025W-N?u+9*DaA**7 zKxS}$AZw6M>PCWH3Ps#m>LW2Z2_}`B>{T>UbWEL6rb6YcvN60d%{k)%8WRfBC&M@c zEki^@K?8qPsh;l8{BYs`Zq#MOW`t@)Y;1Xan*4^sojjQehH8#NlM+wWyDV6BPE}IX zQb|)KRV`MvtK>sOM4CjrSk^>SMSfB2G5f3tD-KKIkD`tAZ>de8&*-;wuof_hLP;aR zB(-_12F?4z)LPZNC6YhWYl&+KYcXql&dDxM=Z)t?F0jr{&hHQA4;K%zXEA5@C-0|v z3wreNOyZ2@Y{J-?7-$%9*mc+*n2T667*rV7Y*);L=_~2k%o+5k3^B|$EJEp+S-4Et z499HnEOyNRXrgGt)LWWRnxg7k^?m9ZnkgDSwW;-6W}7xbR{OR}W)0SrHd$uxL$V{Z zL)HB`b6bmDOJ89@)k69G>4m}jzQe<^)UtrGG*jwkUdNWlBtslP^{;X)n{@Cm`7{>M+bO+_*2qBSdAS=1ePut%SkU1H=cW+ z=4KdT>fS5-t>*5gFY3XL!VUw1MH0p?C@4*A6(pH(T?@}c5Q8|;m~kp`G*LPc4RP&w za=7?d+gSvO@xN~v6!>nvktj#0%8l@!yB2)*-0*V*5tuhx|iRTpFzTn}Ci z@{rV%l*aAH4ddW*8F&^HC)Y4{JAW2^kM=TN)`vPa-(B3{qi&&2%Ua}A@J;%1K0iz| z0h;NmVkxt#Kq{wX4`#>kyzgdzwq4yv9$QsvR5(?#SqfSW(W>j6RH>Bx`D0W$-X7kH z;pA|XcwYQ9{x?nQZ19W<8w1O+#-EBo&9uf-8~3lNtj?qk$soxN%>s8wB0(~`b_sGiI-piiPl`!$id6T^lKGeBrcs5xJ z`R4h~8M#={d0SX>UnAa>Ud{5S*}BYqPj&3I(>0^DH$FUHuv@gF-Z|?UsH#l8C2SRT|&*_r%h_eW@vUZEa=blsmAk~6v=m7Mr0P^gC z{L!Y?Z)myNc5DUu(%?Zh)`UDEXo`p;A!CN)4M;|_?N49YL0~{5R-{8p;YvJ&$;9-g zAkqWV-_;LS?^ci5S=#Pe!QF4YB|l_=1Of>KtNYf7E{LKE;GdEsK_e<9tX-+}5*dtvtEAbnzG$Xz*5 z&hVYLR&U4Ov0fok%2Il5_F*r&D5xHsjOiXu!}QiH>DXU;z~GEnP;Bvj;vN?&8~S$~ z2ihw7da61u8=rxqrM+UibfH@S<%VZCjq zMo>TMbLH1^U(N6)`%L1U@oE2p^v(hU3-2q-koozo(G5PUWI1c z#c{7O>oVzbnVl`^^)LD#3Kp3Tp4Oyhs;;iqSAE`lWc|~|xmMj6-Wl5L?HJ#Smsx{u z4aGf&u_;1)S!~X1Y;K=)A;N@a@jwXXm|u1`h^&BlzOkDNhLo zDIOL6>XNFe%D^R_Cr&HW$``5NC{n7pDj29?2Dk-OayGox4mrr6(*XWqxfJ+a`8Vv* z`#}Y^43-z8850$IIP)dlGxIeoOe0v`Q&U5|awUAFehu*w@o5|mA2%%fifg$&x$Wpe z#u?h)?O}#Q!ky7WK(}Eli1&9_jPK$X2_R;Gfq-mpCShPc%8e`rJbugz-XQKJo)VT9 z-Id9Q@sE4Xc<(-Oz=IRp6zM6h6|v{<=7^a#;MPny@t{T|r>jTWve(^PPe)=3)$VDJ zm(jB6xSgu1%39fLe!aV|MFh{)Ci$8G9#WvX$wB9~$&4dmmd4+o+<8D4FG4d$3VYw|G z!!pouGcsNN-kZTG06Gmt5;dBQO2@pQUInpDz>(W2ogv~>DpAxaz{^`L+Am!;f-vSD zan5`NlR`fiY6ib(VW;HSZ)kZj0_TdBLjrx)N5d$P1Kqye8AA?X4pD=T8K)CC;dye=_ z>{LKqcv`qUkRAINiyZ!r;72JyXYh-GJ%aZ1wM*;$8s|j1E7y^!iS^Gf9vZdhkO! zDpR>Xzw^ruDiS%Y+@~JB)gJ>gFQCJ$l+MJ_QE3tBd^$hMeIKEADTi53&r{hFvFw=t zG?H(^*wJ*l6#qGV`oqQJmUe~dym8TZs(D6xn&9zJ@GPDy);-Jg2YpSbw z0mp{kA4eXTv$g z64pHVy)T+-s;Vj*D~=Yn7j+o*Fx!-scEX0^#yR(92Z{IBM+J~@07LJ&phjN~k!AtV zPxLJf@J4l~VI*58OD3i!;-!oxrX+n5EfeXL#pj*;F|MF4?<{q10UID7UmUEZX2&c=G@=V2>p+s)Vf5eEvw51bCjh5*RO4~qe$ zwF4-~k2C^SoQJjn64$F$3y@EUChoZY4k?f540;yCOGu8$2w^77xrb#4H5%b8mLoJ( zc%Xn;CeTRFiOK`?-US0)`?Vs#$WxD&4N?t97u_vPE9IM}FOgmpPPP|5n7om!w)61_ z>w*IdEW`AN=aTI2=Y#tjGK?Wi97caSM#fqOu=(YvvuvCIL+A=;rHg)`OjL;pLyCO07T3MSkNusk=6Xc>4}Y!5QIgor417rj;JpyjpJU zQ11$2c%}Tuq-qzs;4Mj4I(WcEaMPMK)Yky`R(e8wWZ#YcPXv+r)A7ypsW$`REedP1 zO?Al*ySH)3ZApgDkNELYylG>Zs>uO->B$_qB4artGTcNNVIzK8?oH&)!cQ;DbCo6x zsAHwRIpx)fyjl)dMos!L-yu{k(dgrJm5Y9V6+LB6J@tsoE&dc&ELOm7RCijfb*(u3 zoxcyb6S@*B8Pe;83)A951Q+1O8|8c09OlQTYLT7Pu7jJ0RZ1i?tKLr4^RYo8IqXC zc*4pY+taH{Mi`0sDehSWf5#dLn-Z8Q!j+$^?@ZrPXSw2KTw-kJpx`d~f$Hc5lsF@e zD3DB4E$^z3qBuOmK8rPrIj_Zl!9+<9$uwTq+CW+>(%|K|;+W}_;gEHkewTTxao-Lt z42g$Wf$U4p*bpWtEwG`sS9B2192MPS9kh`dSiFaPXstr#(kR+>^tU-emh+<5^piD+ zE7V8Sij=fO=4cNst!m&;mbJ@8D2`zE%~YE9CwTnZNhWfAT5s(GtqyPQ&g3^^ zl{W9er1`ECd6id=!TTTuA z$FsRByi&fiI`-+3{Uwlep{oLrI^K=MaJsY@_~Oy zMcj$YOAyEka56hNX$J(L4-L3NzOtcRxwf&v4o!wl4A2OE?QOOe%c2aBOlO@xOv9)2 z^)=LR4|}HPF|kdv5-Yr}xhvkN(p-S_g5RBWsx*5mT=jDzVQ8W*VJag7K=}hh0003Z z0RaC%fInY=Fbe>Xe_;Rs(w`Op05~xe0Q{##`uWM{0sSv5U`QVD|AGOM{vi}l5|WVk zX_br|O-yW^%}+TajO`3fXx(k>|6u{(cIW&7ZA_dE z2;6O~ZJjvXd5Hd{;QWFA>82wh_?N`liib#DMxH>(&e4Q`m6o2Co`@HUfPjG8(b$wz zQCRf9*nj@<5ScqW+jG*=ZW1^~c(Bq1!I><)OT z1MZzYScmU2ntDL{OzE}}6J;G8V?#fPA4u zIz85b?Fx2(tCqygMau2@sN2m+^LIDb=5Oaj>&cU6i|6;QKi}+qhj`KmvC$&97;&-CQ+5+g*9jypllhUwp8o$C4M zm(7KW3jy-qjdq4c`V-|rWLrV3MB~|{y^Hr-K6BNrkqGPgPfj4Fc}1)fS|)f!5Thh^ zIM(F%E{^(>)_|#91Vn?_hMq|f$`ohbb&7fH4;f$Y%U;;w|PKz5{ zGw!5?{#{yABp^KtA;G=t`4E7Rz0WtgSC<{(<6a(kuIgEWy{22?pjeZ} zu+tjcK_GiSyK)nfk(Ig~$Ld_!ZM5FTCoe2iB_}6~MnFnHMnFP3NNY#7s9*ch_R`@{ zwr-=ixVRxqUnCCO7%Vo%j7X@cijinvM|_{nht|!5Tlcb! z!@Jgv!|J)jxq`&Ry^X-WzNYu5>(}vmlksK;Fmycx03xhH#TGFonQCVv>gE3MrymVm!MN-P@V04np z`|YI8=-cO9GC9_@iH(xf2BDkQoKuGUG`SP^+@5Q(L ziD*(80C5Woijf44@$4ZL^l0UxQ4R>%NC8f||Oz z`Gci7iYYW~!q4EA;p~>Vr~&2(WmDHRoE}0=s2vDuP?d?1QIQ-L+S>O=G@iz0W^r4! z2A>xQ9)t+|eNmlmgkQ^{^0j6Vj8gOsz_x00f9CD{N_^U%kR^WvprhL@h|~eGg1|kV zsR&*Bb-vLzGDPx&Kn%RKPyrt3(5Se$fSx|=r zij#V!`oDbu?XFqXv=(olbENPo&fx z^eiEW5ja5y!;$N-SflB-OIkeY6Wkgf2ZyKpgTH{_Q)4sQcQ4pn%aB31Plte01!cV|&qKwWJ z-6txJO!*VzL81gG^YD+=&HTXdpLr0~A8Z##1Cr!YR;e9UzwdvP3IpJ3PoKGnlX6C^KWz@XQc;( z6sv-PD4VF#LH|owm{V~=nlmC74v8y4J+4b?;pU*Wx58f-B%n!?v-7?*{WF1Q~ za#toAQlJz$wmX#6oyK76X_qvB^d48yQ&2#*Lrr=5cJcJU!}!DuiUz^qt|`^%@|^P+ z*A3)tx#?o7J3-u>33zC5q_p!0waVXY=m+MHaT*PJ2qTF1BNWg&9Y+5>8Ft8NO?Eeh zGQ)u@+YNK9p1VQpH^UQlue7ny6{lgiUDrg5o~sHTs~h~PSDMdCx)ZTX+gC4uJ?=}YjL&J z#AWQekoXfibP6ai$Xo4`-Rq$ndI z%mue9^ExPKI)+9@N*=CyAU9htCemUtMRK}biD$9eK0RA4oFp(CpXjf(=I>>E7o$qt z*i6R^o~%}oR-N<+0GE5kS+8|{N^$yrwDQ4=?gWLx6xF1^`nsG@ecy`{Cp;kPdD45x zBQb5MeSKDRb9S`9WmZyTT=wnAPgkT=T5!>In3$T*MIe)Xo>~$+PW!kixVo~vo#*D3 z=%_$&Hj*L1SQdV24!1?{D<~l18%yN}zXU5^1@KhB9dxU>A`ri<5m=-{YPDD-VO)t< zuwtntxm0O2Orb2-DT!Im{hA-R?Z56P_M7?JwDlZrq`cZ_fh=qlyfV=GYA9}CVPUaQ zrjWUz3T2>9Ma)z<*KoF#M@POKLGKB-s5SwY#bR}o{8(is6b4(qFdYyCh7sT&+`%g{lUG%3hv*w~v>&T6x?z`(<+lx$KeGFY|D^2o*D<;{zr*-MTD z6PS`ejZF)*L-xDfxfi|*sXGQGVJ)3PJnI8CX_=!eVR*3PT*1GL>7B^fW*+jEaPn9`muwye~!6}(q&pe_1}_sd11jznwPJnqq| zuVqX}2C0*=W|OVRl)eGA@u8!Q#NuZAK%>;ztDl!=3)S4lFj)dKYvo5xsC7LJQcrXF z0)&j|r!`@|Y)yS?H6dA+$nbq6 zbG<*x6+&Dtmj;;+t)3_HV$RtzF=fJHam~kAlFFr)X+Jz#Er!#$P9In8R5N`N4n zvQ8BEeADB9f5zQ$h7^s5!D0+|y;>P0US`K)aAbcxT^}y$zKlI(jt&_dO)6FIYzpD5 z%RJBVx-LPZ(Mo@o{eFAA7MoceU#wRVS$pcpo^5tGQ!~7MZ#j?98Ly&)W?Dj9aX9>vfcbU*X8pL*~P~X4v+H-2H}Ro zU=!r<`uJH44nIGq)AOdGoobSisJBNs?;9lm0HpS+#pzhqpel4(QzHAN?(r{?CN@(@ z&k%_LvllNkXmlW%jsxcTemgcx7(`f;)lyc1(=~7B#2)1Ww*FKSZFh1HH+UV~cRxID z#fvjhIM4mFA13ZoOZPjC<#s;qq=#25ri7f4DVUBomF~GeWjQ?ELg3cnDu|bBL9>k( zcEC)#8=dCes^Tyfp|Cy2tOA|^-{6~*w9f7~5L0~Aa7@1ITl`Q@=y zjE1wRkc1DV6Lm%MM07 z5nNvHbXMDqfiTi>kKVWBj7lyCy8wW-=DS|OtLr1#h@^C;;C|ohd@%&+o}W#k zt?OF##JxS`ac|Oy0CFa%zg}pZTbm6gZ8kI_AL#&l$I++8*tcD;E z9MZ;BESy!99zjxpRR#h+!67Tcq}+!Qou}oC^=})HYgqhcZ{V=#iDqnb&q`$0cP3`8 zv1YuFNVSUn#2lR_d8FflVsW_)1fw@XdW1u4yYE#aG7&0r^+8yo{^aP4T(bbdFUMuT{Uu!hHi8jM`u1S_IpnPra}-s%zJqOK?ZwoaU7H+MiH$a zgA{~l2$RWb20?|=YOyAs81a0(l32cnBSkO;Y0#}Q@2@i&j;>9df0SpCzyX341e|d@ zU0Z!vHa#iff5*1PbN_C#-5)f$-tsx(3cubxZ`iI?bT3RWv{wau<44p7S!=QZ$EmF* zh_Vpq$`C)2{z+Tp+nH$x@ttgyVz>u0MHCf@Ox&&mY&1m)^c$P)wso1t?x7a2%E#&u zs^Iy_r8}$xJ-Q7(!RA9dxUX3kOSsP_Mn>q@Nw{3k^yl<#2;+BJP=i^ZCG6{4LU7P>3ltt#ofo^<;wSnV*mk4yY+U2RK=bN zFK^oa;iEAHnZBh4Xs@`rQXB#<{OIC!N#!#DNubGU!E!-#^$6hoJYWj4sU<>s_402P zXl*i|4Wu<)MC?M|ABrm+%%z4)oxFWTRg-08y;N9wbHR@GM=&rm^IwAsWwM4gDEWy^EK!0%wVa!c@W>jOeE-n=gj;zI{a#wM-~h+rwYEMcP| z=VH@S?2$`}f{vexp^dh2^T)A8@9U>)ln4>7r5dg2^cv=0dMNOz>Ew zu!$*h@6O(6EcfczdSrYEUk zM%8HbOuSdY#yQiM)vDW`EIEBBw-1tn0?6dt&6IlYIC#>&p7a;>!N0hHK!KWjTo0p_ zN_1r=Gueu5sHq*$z)!E}Zm0wku$qTd9Nmu}&F&vbU1>NA6}xx%{MKG&P@IG}?1tBR>QPje*WlR#`} zW_5W!*^Bf9t2$4l*O{EoH&nzR!*V!gXjbS`dd6?R4%ZJQa03W~*}Lu&%@!k7NFi%E z91p_3+r|%@N=Z)RAq4mD7p>fnRfz?$*P864(rr4vzrs*oy=~!UZI$A#o%nqn0wCTW zuRD0AsTs}Orb}|FV*6xCvTA98L*pL7sjrM$7VkeijKr{}y!i&${gtDJMOixSEv0*yn22}G5I7;d4MYP6;U~(oe2#ms?Ld{#KH2yxg=Z^V zg$ek>{MhW6E>XzT3N#m0eQJZ zGwj{>x+*`gV7Qh+e>T2D!K`q@ro6b4gEq@uqXwK20Pszno}NCe?8g~a5|;F05E@d( zB_N5$A)vKRI0p)eRYYY7B0gDyBSXagfw?F2^_R!)oe&OV4I5Ruf%zuK1a#xjvyF60 zxoIdZb9-jT8u5Covp4@X@2@HuN(^8K89(Ut?~}on1y*2Nkmya=jZ3N z@YC6g=_;6BM1(kjegoJ=gW~FdzM!I)|9P0E7zX%TNAJ{|Bydz%o(Yn>??kngK=Sc_ zxEz7bBoNnAEPhgs4}VhQzYd?8UJF+<{glR>a!Sg1hl$4F2~T>=&Yliy&D+f1{hNZ7 z!Ggr%@hU{pA$at?itHm01C$6Jyz9$!2t@Ok6(MZrP+GKHBjd=3pWpH=3yb{Mb9zx!^! z#QriUypf*CTI+%WSlUK}qOU8ciM^(1wS2sjJXsqd_zh>|xl_pl3L0ZRC~2&*HKU}y zB}M++A5$)8xRwdc=_S$`hSqn?&Mb-4IZG?xg`gBbkv$v{{J$YWh_=huGx=cz0by(= z293(C!VD?-Ub&e*=eddP6)>}oLw}R#D(j;va;)PTlA*L7+C*K|b5rtt$zd_FN7+2W zRM$0uUT|jgdF?rPvc{823;CXFcx8664*9WJ#QeuyKJ=BH0b_hI#?e|rT zNCxA|%eHq{{rV!mK>55|?uM{@T+F2xKbWf76mZ*QA|6>Ei<>R6UsvHcUUhr1Ey$fk z`cVD2ix`e3955fB@rDHtU@G2n5?VZU_%Y#(d1cCK3CW$$kL{VFXzRk+L-TJSJQ_hRKTA!=5Zr|t~cXFJ-QyYx;sMI;E z;`;K)8~c9OBXGP9zO@R=9G0*IDCb?nwRth=mAwf84xG0(ysZ zQ#@Wnauz8K0p~N5{tJgIXtTda?&B63x4w>PX*be&$sv6PTd9#5fok+S{^{>4dSxz0 zc>5ACeEi88S;3!I0zL>gTYeqzqWV=B5urljR>)6G>y6&4P^{L^Es{&3v(*)6E#nZ> zN?W@i47{cGkhwzSV6mTHz4Q&|J?7mNp1=+QzKv?Ky6cC8SIN3_d6T`Spa_-$C>7Kl z(9aDbZTVw~&k4!sE2^D*YzXX=TL_g>v(r|UT23tYS(~EX2xa)|r}#5j@Swk6Xqfz> z@|kJ|BChWWc&I^Myn*BpwTs_le#64!AKsKc;FK24cNao~^NqP)wcj=MLxie-`|CSm zQDWEVkg{P%tcy12`AlY~hOj8TaGz{<=hh`Om_6fp#>A9G;QluCW{3Ah(buBLm6MwG zFv}^V3w{57@0Qlv34l4OhR0(Uj^g`_wz<|em8Qqxa^1iP2^u|~MUN>MCzUD6h~u?g zQV(3jm&iaMr+)-IuesT@PoEU+?)3$UtwV3Q{@md@!lwUuzkoCIgXs4BVAJJ8Ue=KU z276!vKYzOB(*F?0S@G-nwh35;X{9`jojuO2xqXkgA-fS7lIsXoiA29O$Qc@H1g9?E zGj2l=y-AbCFpEaT`#OV|%x&rM29uvQaeJP+!~6Y8-}%xRQ_j& zW#!EhGwav3uwDIkNU!ys(Oq(-bjtSkuG?x@Kc(mIPw8MvXjN4OG&C54RA5ydA;bmC z8)U$s(BaqnU|jM#*QjYIvJwNV4p{7?AdTzQZ;#2BLkN|UE~^!Yg;DAJidiic{0N2n z+Bb0Gc?FJ7icOv{6@m3tXV7~ndT(v{KXsWSDjiv7klakYD)r0R=lh4C*Veu0f1%Tq z#t-Docl>#eZnR{|67;_?eL*jvo1a5Uwmp*^ZWz-rIYm!D!L|93JthH}uM+D(ym+p= zp9woZkJg8%nLxr3FnS=H?;xEJ)d{*i-k6;jHMgW7LLtEU{>j6vOnatbW? zfSW}n+dv2P0G#Sp(`g%7j(>ft(c3sg*v#8*zWZ)nUAVCm=q7ng2Gna>k?`=8olW6y zA@m6R>AlQ4JnHiz!#guMrPg}f`og9wVCLE&8R3TWQ;!9cMJF1k;SQ038AO%4C)X(u z^afiPlht5BaNp|8vXUOz?ZHu*l^s$Tv!k=D5s7HTKuX^!yf%iqUEad z97RTn3hc#2*VR+OI0RVgw0ltOl0|J4RHi7{)l04=&GLM)I8VLM^)_am1oPNSrB0xt z;@4{8`*v$cjG+G)hx7A`8`xh&z46`YsnY(DB`L$%(M6!)Q6*M%H2jNt4m*L zpU3l|tTFXwtm+#>$k+blzMJop@LhL@#yxwR^rgn1__tqu9OMd0p#0ltKi?Bsz&t*J zw`7kJD$YmGD*_C%AbF21>V|2b?$3&NOPUDZ4L)x3>lDvgjX;731-tzW__kC(3L#jT zfQyN}>m`~P;+J&^Y7=7Td!M);Vnv?o4Kb^AAy0;G*qxJOXL!4n^EE#ME+Lo*{QA7} zlg8O*yNwUiC`csQ3I69Hct)><2vMu#H+V=K5$l`AEz(Z)7_-X9x60t`V{x~tPL!QBMOqy!1igu$Z&o(FPY5#|jXM=mz$bXTq@#n|$t#d1yYG!$ z+7Vn4%_uF+ZNUx&A?o-hjo??`TNb>x5MBmCI+sG(gCWuTPC%qX06i?;XJLD3rn|)>^E0;(7>$6c?xU5N6E39 zD$?cAVqP8j5CQ;7B8)wrV&{_hWu(0%iX0b7b>mb}PzdlF?|xm4W98ImFqaeNR2jxN zv-S6T*nJm6{oOpc9N5KJ8C_Oc(QfF@yCK*t3)*+F(6+|t-T8rPfaJ)2Y@oIed7A6f90`i4J$49TrZo+px+k_kCc5U6isqj2bq(o{oz z-2W`kq%w8rvXrmf`}6~zxd0+qG;c2ppHnBM>(5o{SO74%V(t~DvhR(=macN$n(xvx zz7n9d2o0~W1EfWApF_iy{_UBhM`YKp=Y&%8ms-8Lv_?Ajv+v>z3SlaYzyQ@D%AZ(( za6A0jDyzEk_r*U0n`z9lE7Gkx%iuE0QGn-VWyUQp1zHrK1=^^U*2j}}p~R+EvDVd%=m&BT0|U82#7IkN@Jl>smU zYiQyr?tLV|VEYNbFyXkI%@{o2CqLcNln#vOK`-hTU2fOt+inEPPgPwe@}o^>w!7#P zp`2X<^cfJ{1Kn=h!g4OY?eA zkj3oJw`Z2m7sGY*j<1;{T(;r{EGwxQ?zg=UQGkZaGsT}kG{>T80Ex~PjlmNg9mXe< z`{GneRsaU2VBS&^7SWqD6;0;1hzKzS{F_K{bNCYtOs#Quf#zrOt{1!ki_9LTi127V z{irZUAHZ?~V?M5*K7&~R&_48-aMTU#CF*2=NGCK3a{|2Cf9V zU*=m3nV(};;hBhK5iegUDWK1}{s}EI@^rsiv!C0IjJ2kCLFwBeb^KmT3>m!MY+7z? zGb<;l0X{>)IrJl%5H5nThPlja+xJyHPsI3G{$8K9Y)TiZyY~z@`}zWAvFD1|$3(d9 z3Sw6hoh;E z;MsVl`Y7x7qFenUs3Pw8T;d{y%LhS4V8vw$&*$s+W zYgP1RxL133yR{fnAAoN~GR*akC>Yci!S-XBgD&PgQZk&STf->(D9eisf`W;+E zOYJH+0y6(8^`;)eqQLhS_@`Xnjyy9_uQUs*+i{odaZXx)Sn{6k1%g(Gy(<=qPD z0O+R}$$5GC`eH!GcM4myFy5HHPjtr1z^dW@6h3L~+g=I_w2o z5KqY^^EzK|(anCP1W-Q(`AtP)_She*_4gm^(v{1U=47R(O$TIKgWq9HeiCJJU>hp( zoq!PFT^)Tc!D2DQe9;|*NLCdURq}}oM+7mARGQD8WzQN2;b8tpRCz>|V;S$BwQ>a& zSMS}r-wTt(M~K9s^6jEoE7^lkrgs-)0VcT`?4l!ga#x6kmwDMNREIRzhw~y#qw`;g zl;a%{D|aDmG^Ju#FdG-%TaNC+ZqAS7uG)D@l~0CN!p z3EZR)GL76KVdS?1-dJ2mK)j#p(V)QVa*DkOr(&h2Kb0FhI6`^NA%U~q&gW}1*6BUr z;~wbatx~l42L&Vt9BmsXt5g=l>An3$AqIC{2r#?}UT%)(*A~~Ax$|EvOy%a&&|55^ z6L7-*;=J5K+O(<6)yTPurhTfqwK$`k4z8!=f`k{-GXI|EUJ}>(2D#nCF5@&+x9iqW z_(Sdo+P0Eh4>|naHR#A%uJGaV%G)!;yCTcezw&{v>)WK{O_Rm-$Uvu!$YeGx@}Af> z-g8z23x?7M*=9Q=fUB`FdF?gD|;1Yt9Ov5KDU@5N$!!s`-1yUgeo}f zI-{eGEYrxbe~ZnS<8EH8;E?;QqcLpWD-%ua9o#xTC0rK~kL74)=& zAo{v8@F~-lDAYWnvjL@q@NiBxRLu`lEUnj{*OBaCNAKgY9AYn(gCuBNX z_E{1G+7uD^ERHt-^@1-bU-d|U8_gXTi7JmW{!eln(C1E+WN>{71?0PWtOPq+sc zz+J9qCCv=4LgfAF3ku-)XB*{)$Ui8Fw}Eb_ZY2>5brBR?a#CE5tyHwqlHr9{nMGgP zY^rqy=T^(w^TnkByR4#P(F1-c$a8;hk0Rl@qO_QW(d?JJsZ4pSe(xM>C4!AtuYaA6 z>J%dcvfG+0RH$|zS%gWAcNym`Xn&Vmmj2)OX+Q5VU*nq|-EVy@E-I2E?DVcsnq1;A zrx?WUp68Wwc)(y_E5TFDm`TpL8sFP(F}cW-93bfZ|H^uGvDRh#f> zJ?Z(Q5o||E1`n`gTs$j8kwk$p5B)T};+zwt^zZ_m>^;dnuJ%1;eTWcj+l-Sd`+j?A z-7N1L3CG}kA9z}o+|qR1--#SPoUSeO7x2rUm-k#j>^VC*xK&S(CC;pFa?){(1zmEgBF>F?`BIYvO%|&)27f+M1!{=WrBPm8B~*CuwOn(lPyyGxrt?AAGp5o5(u$G9#MX(76Lk zUR2KRDKh{mRGlBt|NQp{3=|~?7z;5LRE&;*@vB~p7V3N}(*1CWB-3Kig^_qQ!rMK$l%9Ax1q6O z7r8lE=5N-_KuB>k_jM=ImGmG!zV;FmrFlf#ED&okyN>r&+M`$kw@sHvoIwVt_T4(m zMtX_9+=u)jqW2L=3+>f5+SnF_pLKE3g(Q9p;?*}?I66qhAD$bFV}LZ-5&zi7pcp5C zdls=_{Za(&$!~OC^ICTsj)M_5UzAWzT)#DS`aDG`d3E*>zv`_!Gu!nb0C!5A`l)n**ohQpJBKqj4lm&tiZ znKRApy<(fIN7;uNS?SmU3$lb`-gLJoE=c2rPYn_G;s6hFV&ez?(Z6m!l4d)7??HnL zYYuir4@61`;T82S!S^Z{f7T+uGcz#>isngpphMS|R_WWlYnj#3cj*gbtFSCwb)10n zHG6NOL9V!H*izj+1vVp3|KKy72l~VpIfXwt>kE0MP@7`nA%PR$RK}^!VeLcv#Udut zCNHQRI3DF@-`09;>lVyX!}>JtM&Lk&9vV=;!kYyNb7AD7R)nk!{Qw6ABA2o{I?~FF zFBIQd6ob50m%|lW?pbU?%7a8chJt-p_S+#F_9So|$+(rR>sZ6MO`0Y#ODGc6U)*Q2qtw_n1>O2plb?)u0&{LV0YQ*ZYX}z>S>B-9u zvtu;@{O*9}ChNO!*9|s8^}c@ajdS-x6&Ya2SN>f0vcu5w9G`B4*08%O$E2D1C5v{@ z{d3|{QReLHy^61GeRA;*R;RN`54!8m&S6n!Gv&_|MQ76e%lpj;7~kSS3aFR=bM^FyRZFV+nJ7B0QVq5u*MKz#)s`Ktk zp8440hV4wxZ~1Yia=Fsc4P?E%!AtO#`i+7@Rg;(kwmvNylc?i01%BQH?@UbB1`%}!y7PfJ5 zp)Pos($4*(PUhLTr`S;0fq3v;frGd``Lty%sQk&OHR22=U_ zV|3!Wa_ry*Ecii~oECUmo0UjRK%N!TPVY{8hl? zPBNE^XzUq`UG2)&F&8I7i&s|}`5r?%S3JcwLl(v&xU;LfJs{o&&U7Kk4Ld06umnSv zfW8>hKF^ys8mVnU4ec?=VZA9mwtA!?2i+qRfG>f&oQ_|n6v{!A{V@P`O0H_tx?)09 zQgrAG^|{ZT3E`-<Du;GGnr=Xr)v{Ws&zw!K+sEt1)0T#rNnYI@!ecxZ~5iJaSo)$EYxlE-> zibYsyf|G?(R(5Cw+WZqQvVH;CT`G)m`*`vXwZ7VN#T9wesvZ9pU6KVQ>MEuUug3Rr zo-**vmijydw%(lnDcq88Hs2+GgZ$Qc5J4gn{-d#i1NQcC^&;&I`W4Mh{i1ok@Esey zBqJ5B9hLt!yZix}?G3`da$8iG%^w&{*n6jizh^CORF()JNPNczFAJGUdcJgeV0t`n z=1pVx{Q&Eu6>KYZC~R_B#HpX>Y<&}u-Y6zGbhs(;`=>wno(CLFjbb#;1mUPzbd65JB@ zP4l7jVZ6Prr-g#<(d^r2%z_5{v`rdxoZ{+BRZHJIc@kCQ)__!S}lBLtAs|rK)I|s7wWO!=3)YN(+rPOB!R4Xd!tQm%8i#$N=Y_`+&2nTFmo% z9eLf~zkN~P@U0d>j`HQ4{cpuztSd;-7hoErJv{IoI&D58iXB-AVBk1i-3PUE(d?{+ z-0WaNl|2EXK1>N~o~^*v{|qcB9Mv{Z>j!C)ob1LA+_)SAe?)c;&NP&jtse5RDb@r& ze4u7mN8Q+Frhr9y++7J*r=}F5R;MoLj4;EXpohje#2Pa_%H#*vR!VhZ0`@qt$!Sft zdEjCcHLSO#hEpAQy&x+<-0uh}t*2SwewU&u)(V7Qei8s;`zuKi>uuo&={}^glsVll z$w=q*zU<-VtXIaH=H`=)Xocj~fYV zP0u&QlkOJe=Crd07X;_235ohCBWySI%G#8N--jS&Tsvh~4l_#nmW~^0IY5@bGN1Au zhPlywWa`STPgHBih_>iZpM#Q*_8!+R%ER-%EEXKmF^kooXCJM6y`Z^P3K9g{!0l39 zV%0XAPxXs5KnV)7v1iO`W}r<1J(;y2;l%&Y^U_RgWBzFE0?sh2;Lg3A4;sqKe)ko^;y7)cwIU{pY^)*(6gBP5L63W&v3-qO1HX)i*y4DsjId)VTq z898CM8s5bI5PGl6Yn1hSVE021vUMC#=Ih%pAoMB~1_gpe_x4RYENFdW@OS+i9Q?Yr5_F(Z=}tjy%125+Pp}d z#=NTdcWZf7@@miK*th&`@5$XfL7$YMqk~7`pz;LsGt?NHWBXy;yTf8<7R7!3c!*FK z5u3`91_HP@lOjCcB+b^E_Wq7CTmu8{M?vs4R=yieXpYwE--1(E+0Ycz3HC(Oh; z<+Jw$C`q+)cz4^M#;8lMfD7eCClbS=4z77^X!6HTP);Dv`dd9FhoAfJPy|r-T3wcY zc?5mtfEA51Az4#2s35*F?8yIW{))bQ*ArxJ32`)7YHv1i3yfFJBLgRszxSz^`h6J3 z%&TVn4p;Q~0fTIn*p8*w9a(})Hh=hx!2)7Kd|ZnI)pzgm&;m|KfTvYoIk