From 88f94dfd47d472b16757c9b966c75426cba03ab5 Mon Sep 17 00:00:00 2001 From: LukeZGD <26163116+LukeZGD@users.noreply.github.com> Date: Fri, 29 Jul 2022 16:59:38 +0800 Subject: [PATCH] Update the ramdisk thing expect and irecovery2 are not needed at all --- resources/depends.sh | 13 ++++--------- resources/device.sh | 33 ++++++++++---------------------- resources/tools/irecovery_linux | Bin 33752 -> 0 bytes resources/tools/irecovery_macos | Bin 46000 -> 0 bytes restore.sh | 3 +-- 5 files changed, 15 insertions(+), 34 deletions(-) delete mode 100755 resources/tools/irecovery_linux delete mode 100755 resources/tools/irecovery_macos diff --git a/resources/depends.sh b/resources/depends.sh index 0f791db..7d7ca14 100755 --- a/resources/depends.sh +++ b/resources/depends.sh @@ -52,9 +52,6 @@ SetToolPaths() { python=/ fi - if [[ $platform != "win" ]]; then - expect="$(which expect)" - fi cherrybin="../$cherry/cherry" ideviceenterrecovery="$MPath/ideviceenterrecovery" ideviceinfo="$MPath/ideviceinfo" @@ -64,7 +61,6 @@ SetToolPaths() { ipwndfu="$python ipwndfu" irecoverychk="$MPath/irecovery" irecovery="$irecoverychk" - irecovery2="../tools/irecovery_$platform" partialzip="./resources/tools/partialzip_$platform" ping="ping -c1" powdersn0w="../resources/tools/powdersn0w_$platform" @@ -80,7 +76,6 @@ SetToolPaths() { if [[ $platform == "linux" ]]; then irecovery="env LD_LIBRARY_PATH=./resources/lib $irecovery" - irecovery2="env LD_LIBRARY_PATH=../lib $irecovery2" opensslver=$(openssl version | awk '{print $2}' | cut -c -3) if [[ $opensslver == "3"* ]]; then cherrybin="env LD_LIBRARY_PATH=../resources/lib $cherrybin" @@ -165,23 +160,23 @@ InstallDepends() { fi if [[ $ID == "arch" || $ID_LIKE == "arch" || $ID == "artix" ]]; then - sudo pacman -Sy --noconfirm --needed base-devel bsdiff curl expect libimobiledevice openssh python2 udev unzip usbmuxd usbutils vim xmlstarlet zenity + sudo pacman -Sy --noconfirm --needed base-devel bsdiff curl libimobiledevice openssh python2 udev unzip usbmuxd usbutils vim xmlstarlet zenity elif [[ -n $UBUNTU_CODENAME && $VERSION_ID == "2"* ]] || (( DebianVer >= 11 )) || [[ $DebianVer == "sid" ]]; then [[ -n $UBUNTU_CODENAME ]] && sudo add-apt-repository -y universe sudo apt update - sudo apt install -y bsdiff curl expect libimobiledevice6 openssh-client python2 unzip usbmuxd usbutils xmlstarlet xxd zenity + sudo apt install -y bsdiff curl libimobiledevice6 openssh-client python2 unzip usbmuxd usbutils xmlstarlet xxd zenity sudo systemctl enable --now udev systemd-udevd usbmuxd 2>/dev/null elif [[ $ID == "fedora" ]] && (( VERSION_ID >= 36 )); then ln -sf /usr/lib64/libbz2.so.1.* ../resources/lib/libbz2.so.1.0 - sudo dnf install -y bsdiff ca-certificates expect libimobiledevice openssl python2 systemd udev usbmuxd vim-common xmlstarlet zenity + sudo dnf install -y bsdiff ca-certificates libimobiledevice openssl python2 systemd udev usbmuxd vim-common xmlstarlet zenity sudo ln -sf /etc/pki/tls/certs/ca-bundle.crt /etc/pki/tls/certs/ca-certificates.crt elif [[ $ID == "opensuse-tumbleweed" || $PRETTY_NAME == *"Leap 15.4" ]]; then [[ $ID == "opensuse-leap" ]] && ln -sf /lib64/libreadline.so.7 ../resources/lib/libreadline.so.8 - sudo zypper -n in bsdiff curl expect libimobiledevice-1_0-6 openssl python-base usbmuxd vim xmlstarlet zenity + sudo zypper -n in bsdiff curl libimobiledevice-1_0-6 openssl python-base usbmuxd vim xmlstarlet zenity elif [[ $platform == "macos" ]]; then xcode-select --install diff --git a/resources/device.sh b/resources/device.sh index 9d24973..df06b84 100755 --- a/resources/device.sh +++ b/resources/device.sh @@ -511,36 +511,21 @@ Ramdisk4() { cp -rf ramdisk ../resources cd .. fi - cd resources/ramdisk Log "Sending iBSS..." - $irecovery2 -f iBSS.n90ap.RELEASE.dfu + $irecovery -f resources/ramdisk/iBSS.n90ap.RELEASE.dfu sleep 2 Log "Sending iBEC..." - $irecovery2 -f iBEC.n90ap.RELEASE.dfu - + $irecovery -f resources/ramdisk/iBEC.n90ap.RELEASE.dfu FindDevice "Recovery" error Log "Booting..." - $expect -c " - spawn $irecovery2 -s - expect \"iRecovery>\" - send \"/send DeviceTree.n90ap.img3\r\" - expect \"iRecovery>\" - send \"devicetree\r\" - expect \"iRecovery>\" - send \"/send 058-1056-002.dmg\r\" - expect \"iRecovery>\" - send \"ramdisk\r\" - expect \"iRecovery>\" - send \"/send kernelcache.release.n90\r\" - expect \"iRecovery>\" - send \"bootx\r\" - expect \"iRecovery>\" - send \"/exit\r\" - expect eof" - cd ../.. - + $irecovery -f resources/ramdisk/DeviceTree.n90ap.img3 + $irecovery -c devicetree + $irecovery -f resources/ramdisk/058-1056-002.dmg + $irecovery -c ramdisk + $irecovery -f resources/ramdisk/kernelcache.release.n90 + $irecovery -c bootx FindDevice "Restore" error Log "Device should now be in SSH ramdisk mode." @@ -553,6 +538,8 @@ Ramdisk4() { Echo "* Mount filesystems with these commands:" Echo " mount_hfs /dev/disk0s1s1 /mnt1" Echo " mount_hfs /dev/disk0s1s2 /mnt1/private/var" + Echo "* To reboot, use this command:" + Echo " reboot_bak" } EnterPwnREC() { diff --git a/resources/tools/irecovery_linux b/resources/tools/irecovery_linux deleted file mode 100755 index 8f7716e727cb9e8ad0948685a299e3e8c3e6c103..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33752 zcmeHwd3;k<`u9y2pe$`sKvumVC|gTGKo+YM2&4+iR#61gv`yPUo75&@Q8o=_h_T2h zIOs5nSP-EgNJZ4dRxOBH9ksvjbC#Q%v_am_@AJNYydSU9=bUFh z&w0*rx7=mMNfV+B21Opx%FPPZ%CF#y)m4w zHB8j~S8}|BdO3Inp?`-2Jsge) zjSdNkmyRi)yK<;}@pe{i0)OFXMM5bz6>{X~sKAyreCVKp zoTLJq-Muhr;fUc$!-pn29mzvjyF0)U%BhLBXDCOGFET3efBNjLv7H~fvGJ=(8B?ae zM}CtJq>p&$Abw$vK}rFlYwa>5Dk3eEemx$MsR)jy$3Q3&Lnef{0t%bMlN~jLlUM8! z_-iBJheyDF5CJ~{W}5S7V+8){2>i|n{69v(=S9%-QUw075%32h;JZeM|JDfnPes6A z89`581pXf);4KmGJrD;K|H6;T2>iz);HO5wcZ`64EdqWM9BD2eToLeVBjDpA=9e75~DIMtoi0nU%WUSX%`### zbvv`nPOHmovqMX+CEIGY6u1cEvf1+#!H`|xa9U->QDn8l@_ZY37ua0+=J~c9bCE4a z(u=L6k26RdVX__eTw9*I*y6G|?2?dOV6hbjjZ1W~wZLj|TALD}#8vDlFuRH^c4w}& zSPEDd+FY`nx>|vs((3BDc#44g@rNo;f>zo;lZIW7zC`OR?f~73a8%2)G>cl-xWkm{BQ! z)Sp zWQx&Gxr(#EYAu38*$XY^TpK*J-EU=5P;WM))3Qb97g}s~QXo4oX>f81EtV-1D;WVo zj39(P+g)VgvwgGBG(v~h z_DP_P(c#IqJWM*gj2+RY=5G;T%7*Wugh@I^X25=A=}>hSRz zR#BGg@CiEnDjhyihhL+^>(|fqI=o07CbdzAr@g8?HtFykB@%G64&O z_%1qpr4HX!hp*D%yXo-NI=p_vTcg9%9!4I19sX*G1gzKLuhHQfba+*VSH$?D-07*q zx6F|j<{IxoKXC1z`4zKF)eRTM~I{bAye2NZ#y$(M@hwrPykI~`#>F_2UzP}DX zMTe)oggoxj;gclt|04V@;p(4Fp1M{hU+f99qL@m`T~UoyCeNW(2btBzVP}DE>~ju( z6RsJ964mpG7N}{&(dQ)9X{rfSvHB6J(-adZXZ81}PE%uGGpiqNLd! z*0B1URHvyWu$%AKTLI+G6E^A z{t(q^stBm8em~V|iU=gKdNI{$Y6vK-K9}k=B?Rh!1ENnB)f1^+!|JoB-k$1JtUitE zG$jPeS^ZY3(^L@H%<5yQPE$Z&Bdd?1It~568de`dbsF-4<*eSH>NL~?MXcV7>a=tO zGFiPV)oI8Frm*@IRHvaH7{ltVsZK*YkizOwRHvaGP+9%wdr_w$9Y|#L3sk3}98g&O zE2>{Z_4;3_{b#AJQoV-NPg0$RY@mwOk5HY4YM`9e-=jJW(ZFU_KR|UFnt_e1zLV-S zBm-+${Y|RVPz)?*^_QtmLoiUp>VKy?4ZT1n>Xg5OzfSiazSrbEYx10{pE6@oX>1D& z9aCw$M=`QYrKwM2L2c}KVK%OEtU+~u4q;<=5*XRw>WI|;4``J7ag8+z*DQx_<)DDz z|1;ws_Ar5dznQ%Crv2aCV%pyjZ8E%LI{cff0~EX<6trrr$xXOsd{CbJTb`N$S;c)r zhRKuq5I7Z+_j6Y}lP~p)IpkRpQ2uPh_MO;)U^L7*n46q%%?ffuIhY$P)A%EOfjsbL zKu1OF*V&5lAd+n-{n`5phS5Hf^2egx+^QN$7g z+ql4MLSS@7tPjOrBtU<30?%=Q6xdlU>y-JUwtq+M!67m`w zOb;$;XvFL^|4JC2N$O^SQbrEe-UH?aPq`uCttxo4GmBz1xjx??ttivdz3--#Q7CuN zpPlq)?-=|c-F>O)o2DzTKmbn`@q3NcFj-9|OH(Vc(EHoK49OA8AkAb9O!_jQa56Q# zdM~8}aeUnnW~n&dT>R~R=^>Y7+= zG29LCsIJ0zF=N8`M9-3P5>S>a3JG9|^coNOCLe;~xO`avs zE3OtE<0eCG3!m{2IGCbQ$bpw=sbKxDq_J_JPXV~C>`lWTYF9@J4pP8t+)#TPBnu&l z?D2DHLs<6EYOiI_NeUp#9)mkh#G|$)3e-@~k`0ImV!Z+*$p6fb)EgTDFG4|u@fGsG zRAHH_n869ikw)-`@%}<31+) z^KtGyyp!gwy*(*g;d%-+k`40pOdC*Ne}{GSj-a~G!K4|u7Y2Su`G?3?+J0mT zmin@$>wFp3`7tAFXQWcZ!mBlT0VYe&Y9HL+M%K=j(h;Pc-jZG>PO$%|vP*g(a{OCVd%DIJpKy zzqZcD>bSe04Bh+vZM>8v)qNVVIl#$AjK^4sq~LY0@qN#d_Z2r5zV~VAt}s@SgB8Z3 z9I#rTAB_E6R*uv{c#6cbLJ!+T z(x&>-yT~IHGPVzB!G?Z+QuwN-usameR`RA;M%}G~`lv?z4N-y%KF&r6&(J5dQ?9)a4SR%SX?y(p4f_f4 zmJOrxg`VW((QibgYA5gwa`{MOm5azjh`dcBUr$ZJF1OWEFNmo`Tn{2;8>M0aF;a@4 zAt9UU&p^;dS_(#5wby+#Y_R!^M@!f6Y)mj6*x!Hz#R_&*m!LI>;?XDff7Q`Y#jyRb zNjc|Pa*ieHIi9F~GGAe2AW)AoTw@tpLm7Hb%g{QXv5qC3UrV}bo^*bmbR%$E{&$j& z@O<^5cqf5GpMD40k{{yPW=tqeB zqm4BQkHlcZiZXA^JaU32ah4#Flj~#ZOr$*ms3q5+%WuF2Ax`IBls!jrrN+OYP9|5f zmRx>D{+h^lY2*ZQAM+fNtJ&%LX>e*ul!zp1z^vGyxUNO|HBkBu!M?wwd=XhbK&pSO zm6oTXBl4z;4xQV~`2%Lo;Ii@&f-3rzbUjVF-q3XM(;v-|Ca2WC*k7k%ddX?d3{oO! z#xBgTlO~q1wRE1d57IQ4q2ZDzx`Tq^B5+Yl%OSsv88Z3GIoFAv)v(OCT z`h#_2aN*G8-BXFQ3mc0SB}ajTvr0utHI>Fhp>#^a)o7)2qU4MHZmK*_q}=shji4?5 zN)CoeI7u@3O2`xz)D<9-i<96DX6$Q)k#cEd!@lSh6(wZEusLc)pp=ayDLhpOCtRNJ zln~*oh42x0b{Uqh3=yuyg-LRIU8t}Yo9A!Q+)jbp#}K|?o6CgoT@i%WhYCL#BJ2^u z-MFxN>44RmgJ!1+$xj2U!M`WjM@q77V|NJiea#Sv^Ih*lSUXLnCG|M_-APmKUdj@R z${?^*lu$mT(AI~um`XdoG#S^eCU7Q`_t5@go~>z4MMs?Dt|IsO|S| zLi1^0l5*JL_TLxwUx&6}-qvRMSPq*?*Ac4;r#9XaKb3q8R4B1fEh@Nj6;q+mgNG7P zinAYJD2(`?Sor%;7m zc!0TJ(=3Qy#HJmEQeD#~AZSnipBhkvfd~1}hC4nsw3C$1iZYTRi(f)3O1q&I2ftvg z7%GgQuP?6^f2AH}9h5qU^gKX%^qsX!bXF7((}&27%L>!8LT;2a;EVlBP{_ zwXrnSNFojApiwN4b6dNw3cnm^8 zQ-v#%;wwq<1fAkhn&M5jUBcs@LUFfn#VWQ5ey{sn`1)p~ts(Y?=e)*?wFy34reAL| z82u>pGoC}_N5Pt@)LrkJj9P|2ZAT8+)4lb39~71h2snDCB_sg$`ivI`kl+$pZEun% zn023Ny;7Q5+y!l$3k*8*0V?0i%Uh^CjhA;*c>*uLOXX3#{BJ5J^YTe5_u}PRDtF@L zmK3|zygZu9znx{a98|u*%a2p}3toPU$|rgGV=DiLmm8^kfS0?`Al}Z)gQ)y6FFUFH zG%r6&<;Qq=3zb*$@^LEP&&zFSYP6#)?v?DL==*!1qxqoNjc7^|-7WPG0WT*R(WRXI z6SR$&W{AveR(_9{|3&z{y!<7V-{j?JYR8Mbd_9$);^pa7UX60#KFsQHhwM3lBsX%oy-o~` z`ULRtwKOBhe4Ah%$(e^kz6}iX_V(rt;rrc$745iKgSPbEj@c#fBV{JHOm33pI#@zW z2SeFj^eR_&92O9jdTgHSaoMMwi`5hVdFF=2a2J=kv=yZg`}SCuAYNl z-iD)4q>-?{MAhRrcuP)!w>AyC4wAt|^%b$qOgr3`3CFc|_u{zHDUIHBT;LtfuXy%Q zU0JqW+MtW<2-gnWDy!`wk=P!QnNkiwzMitqw~obw`@L6T;jHj`$l;Rmgp#O6;^8ra z$gWRB2ZXOrXFye zK1SSNX56QP+>a6WucsyVlbkz8ulw~NcMfrXpmERR+{3}muQ^M1>cAr0xtl~bXd)vZ zf}A%f{z|ymTo(0>hrm2dpe5PBHvU(Bnq~6rp>Qa!Nr)zuke64(1a(s)8w);Wa%`BOnom{H+Juq@#3>L( z0;QT$A5eb^)ev}z!c#h|2cEj2-X1|!F&1&=LG3FY_S{vRNbSLdUL?lsP8yF|`oG2; ziCs39tgWkuq}a5BDeTmPx^Hhe{*c8lSdjQx6`5msF#;BOTyEs;6P_fs;X;1~7M`?Z zqp|iTU3>CQVt8&LML5A=`YQa-0f*6gE=@PK_W{Q&gwGY*LEv+RcL{Drxob>bx~NSn zg0Z2(hzppQwwyp(1F>`4UlT(&r7n68$ML&jTwjg%y;X^x!a9RAhFj4Wv0{3b)G5pU#5@^b zY!FYBJXkjc=Tau`o-&*zHJ#4RkI^-`4lNV&$GaVn#IsMx(fS~tat`Xb<5`H=LZ?!a_LWECH*Hd3$nS;B?Qv!UM`%@eQ-qQrWrTL?x z#7}e_=uB!La`AeRsLQw>Vt^jT$EKwO(ESfV4@8&|q}X&#?RrvMntBB>%?UDTGtPKy z88G8ODP|n9y>zILRoR_LO{byi9p)1^K+jtE(O#agD@ko>>`5Td&T8g02k>MXB|BC# zU_&oo6ftLF({3UE))778DKEuC8$Fv4a(UuTO6lP`M9IReSNPMR7ULvS1Vd}*Y}`u< zX=lP}Bc_SVYwIsC!rS`PaSXP$5X7_$>vWh(w^7klT6&0qb>$4OCgThSzMX)$HtqF= zgP2Fbh;Q&|W#Yhu*@s9Tcf5%_Q{81?8WL$|r8QV#m@j|12u_u4qdP?cMus7Np3q)zGZHbk{$ zjBfn1t7=U87`a^oH$03TD=~|lN~8!KR?QBCCLDmM2B!E zqQA5qXEgQCXGp1_A>sKq;xyqeOq&a5CDIeYP$d}Vb8|B_bM(4ckeker-z(^JBV5NL zLdOuMBcbFji1Nglhfx(s578v--Xmmw`;ayB29Y#Nn~BvvoJ6RWv;WY(3!BhGK5>U<)3r{`f3PCC_03Pm8rEBu1NGj)Y8turb{KCU`ni= z$2~hjWpj{6Xj>$-UCFieyhKyYn4xNWtidA_m`ZMgod27{Vx0Tu;yf3GHKwq;BR3t< z2E3;((Yxdq>^?AIb{s`!ONZUaKOrXu)&|-mzY79;H zwK%&^{X3!Jfx^YAdY=(~)5d%3f2HB)NFUVUd;!k9E1xH(=XcX)PQv~8WJO84Gu?YE zEhF9gecFsP?=Kmq(xibvPoLE9S9&JjZ?1y+{l7-Lt{MDs!ZpiD+a&LWN#1Y9d%sL; z>~O~9IcPAAJnjApt6{5q=A_L|o0E2LnpywMFxfi@IfCptf9=VB(ncp8)MiDwXFPkc zZ;p!B37vQYP#x#6+pXF3%3gAiIE`NM3#W$4Prw^;)*RL4P@PtLj+*T#EVKajbvYa= z-c-!%hX(5HHP5fJX|&_rMzU#fyBtYb4u>mQffrW${2)ek6}#~woMpZhXuRP^TuN~k z*_l%8$SbxK&QUW+kChz5n{zq%Q(#S2`}T46qYDc$Y^&3m>n2#cEJ`dsGC$ykt|jCT`G5{iS=c9K#6qfx67v($)m+P9 zEm57CC4Db1v}U_mxVcG9h{rG39xG>b*hS02`$fj{_xM8E%bA;PZ*%>p<`z2&)hu@| zUPKMIAMUS+f4GF!KIv~r|A%v5qJP8N8RlCPJD1DP+rg8MXYL}Nhm;LX{E_)>U5Gxm zA;G7(T`GSSShd;J@e?xCLPw4@S+PyYci62r3>>VLhG?Z5L}>`4I&wIdBWEb9TXF^i zX4swXq9RAJ3!NqO_i-kx<1F^;U8=CI(%Z>ufvwP5Y#D4%ZmqCsizSy3$#%HuwPz;{ zDwfUJ`EL6>H6JhB>akK^k%hHg8v^l9Cdhj}hgE zLh^qjKO~a<$iHozcDcGr-w`pnM)3sA|~PrDrbX&Qe4y3soS<~TX% z!Ur*LXKE_#Oq>pce~>zs1$i9bVmQ^*)YeMeAZ?rQzfCu0Fm4c~B2t$Uk}_0FZS(=T zAvz##5X%i!mAxQRg;I=$cQCm{JO}Y^*7!wLOvo3EOmm?$LJliG6>?!6-VN@2lNG>tG2 zaX+e$dyr|G+is`TSM(D0e@^mJuSafB*bjHm%n zp65{W6m)WuBR7d{^$TrIC;g;JANQy}3rF>_>y%|#a@h1vUMIuvpgTl?R;+7GHp!wS zWh+U=N>Y}Rl&d7Um86AAl2u76P?DTVQXX%OzCCioSj10kRIIS>LTolvXOT7AmTR-( zTmirKp$x$dXrP*Bb>ur-K;pb{A(C~jWuR&^jd0pi79_WxW@W!+ zf^!yiVzG76^hI`;Wnpsb^g?()9~}$)LTj-*3nAi%wqFgN7b04;g&L?Ld$Q;0W>VGW zl$%Smg*H%qWqR~eC$sIQrVfclN+>vrpLFMw+a54aUD_npSZqk!iDF9JSM0XdvPKlnjo<50j_Ts)Won1YLEF2Egt zYXM!jwzm~<5-x@x1$+VUBH(X;9ikOw=4r?So&}r%cpmpOU4U)RKpt=e;ATL&m0tx| zhr9RnfSqv}C=rj zEnBTYI|z?Q7?jNi8XE@@$M}}G9;GO~@oy;pHSB9_+z5Y__{0hEoo`KOv!K;-<(96a z``GqAwvi-GD}WL3iU08y+eN((h#M(G!u%2GEN@AE>9JOtCKmZ8>Py00wn;)nZ!>{4$K4 zbs@IbXtoUzX<93Pqn_k3;1-5 z!Sf;XI!0Haav|_tF*ZL7(f#;arFJCBV|92?(?{XWt;=xK#V(J4*-IR1#h z9})N?0)Ir{j|lt`fj=VfM+E-=h=BaPO8NVgwC$yXp30y@*3-i3)57ZXo0@dA`m#Ad(+Kyu7!i% zeWfEs(B<_2dU%ZvJOjxNI!~Yj53_|FLJTJm94*9@YC(|ay~3P=XD!)LB@|11gD@=p zt`>ZFQjZoq)pyoFL$x0_F-h zU%-_DJ|W;<(uZ^-2YS7uXXQQAHHL@p~H!S7TMXU2|s_|u2pHJY9D=XqHWT- zw9Jo+@5}r9;d9Y9O*|TN+pi_`z+-re=_n4fmP@>xOk5clje z#t+&ZJ9T&J;eWo8a^kvC$|qBoPd#4Q$x^j%+r_OtuRXNo&L`LH{2<|lJ!MaqMfGj9 zD%SkwiMH?b4zzjWPm3Lc+E2>A>z_R=`%{y0x35V%HNVAu9~*Y7N7naG{ODV6$s6}w zvu%5e7tZZ_=7ytX{=dK5a^cXQl!Vor;-2WdKK|2P?dC2^N-b>lmx7!>8)j#JadGOr zd0Cc%?$s&QlG~N63tz8mQSiVEhHm>Wwt8shp@i?>IkDL~CGgf2UzP3kEncXE!{*-^gaP@BoTG-~y%=+Nk zuC@gb@k-#-gv~(XZYFtY3mlWeLs3)n_W9PMfDnVU2MkQ(L3Mn+h)(3 zkImXTAZG5C*)KI7KQQ=%s%^ffPYmqw+9&sHK9KX*>n>#1ZFp|3yY=IRQU7QWx8auI z@wFv+EsL+5sl+~X>%Mgz?k_w0+JHA67}0He+rO?p@>sjQAASDTx2G2OJo9mzqenhm zIri+)^9@^0=i5CeulaYUy${}V-HsnVU9j1)VB%YyznIl(Rngpp#`i|I$erEB(7y3$ z>!Y^UvKl^YoM$n9P|#`N+14AsInwU<3{TAM2ew3yv|N|>(vO`ot0qshrGLD@e)Fw! z55IP5*0B@0ZO)9TA6Hzx)fx21HyuxHQ12X?-f^7xkNFFv=m zckJ-0osYLT{_lP>Kbf&F@5Hsq_vdaYyVY_is$2e?wF4aeZ`|8v>$9ud9_)4|c2?=P zQAx`tw5%zg5c;3R6qRo=tr^?muqAzDrX_t5{_V)@UX#ginZRWNmkHbzHD-o017`-# z3|y<4dx48Rd@pdbfSUu{9Mhci(fR8q&N0nOzcpW}U*4ef{a00s?z2pHvid^Q4_3u? zZ?AUf-LFgkE-BZ}n53*#dK>UBYVG3ujT76eZF>*yGNj9v{5wGD-8-j?VQmNeYY%Jt{MuSq3LOv zih51D(rXvmo$+Ox{OC+Wiea!}l+wT9aM48N+Qu&vx3$e*F*fF~GN5JEr2GwIW2&MC zM}hv`VWnrQ?umO=VG}VDzis|G-ihmi4Z!J!3 zw}Fm&@(ZZnhcb>8N_mumhx^7)OdER}9<@_}Q@bu~?0-jnV+wopPF2+J&aBzi^0sdI zz}?XPsSnS0-e*vkZ&O}>X!9NQo3}*)8u}`?b)E>>Gwiqfbq-oB1xN$f&uL+7dNowzTC|4P2;>$=#l4HQqN}#XrKg z#T-S)a~$B?T+RFQ74Qb+;W-LO*wLK-4UFfCCV5ETdokdyVR#;1!2;VfK7AOz>9`od z^fb-SClQAzI_nD?r?-Ru3beOIoR`Y;$a@(+tU;(2MZlK`J?xjK!N=~Y0n+^=6)^mG z1Ni2?$Fc9=d)&@qb<98@nF{J!XObJc+d9J|PE+4fyu(e{)!#FO8u8 zFG7zZo*!ZN0-@_!fq%6(SIq8_qPQ!9o;T1h&Bft(1paeEKRtg>2fNP*Nblq|rzbjs z{-OJp<63-TVmn2Y{zM3D3h-5%}p|V{`g9N5H=w0Z-Rg zRMAE~_!9W`QCBrN@4Xm7PfJXIlvlk)|9XY8PQbTUg6k}*?C2x-cZm7_d4V4)@NRmz z0|&cT4>(rf&-7$yh25h^k)D+xyT?SLv3u9R-y`rvVxF;bF=ZaZi;4~`6Z|{Gg{Ef( zZFL0xe?-8?U_2&b{;v|_MVg@B9wtBM2>l{W6?%)6@a3X22MK|HMbQ6=(Bli!QyYOl z1`{mlzfEi~+5L6cNC2M3^>Q~iNc&PcRN%?~@cC*W)5Cf6f9Y4sNdL;4IrcL_oEm}O zD)=9!jRX$%tOnqH0{>*#xcgHCJ&#AgKNA7JJp%sS2>8?RUCVBzFL>oR%y|V4TqrW<;3Hs8v&Fqo!84Ub1$cZg2PaR>a?mHXY-USwv1O4N z57^<`VYzsd$ZF1U7Zxsph^~eYmf2h(tlBg1ke*tALJJ0?t+Zk%DBkv4Xck+jlBzRcN9H)|u>WwnkOBR}#*-}9o6l;Im^p-ApK zWciyFm;4qT|JqroJd`>^G3*;>p(y>g+RRq=mIePxS|}SDaOqFj(esgrx;+OU#^YaQ z3su1Aczl#uU=`{^MK;bX9y2!6=iG#`reCLHa_sS6>SN@mEq9TbKLkvX#XAbG1b74xsaF=a&-e2PtcKQ72gT_Qi*rsWNuMaA>_h(ZdU<>%j(3zcZ{Nw`ol|1Mo9 zj(x>06os*YXJ+|_@C$G7nB7i9T2RFUqp~WV$reQZ)|SFz?RHx7=&Om^U|<=*KgJg{OR*Qi z^o)0QA$4iUM+1YrH_9Fj{T88gjD1d#eH1V#qEpY_RFN9+(n{E;6PeHak@D~?g-2OV zr|2V*tr5T1$UY9Jr8L>${^?t(FUuqw%Dx^*qmE^~&>%()8;#*#b!4Ad3~eeB2wzJK z#fk9HbMoxXP5S0xD2K3xo(=s9B&DOp70RpYE9rUKU_6p<3*+OTSqzmmoAE(SIrY+) zHkzObXl?h5iADtWr;nu zU!)|nr7+L#PR?@M@KI!Zg_EPw#-=CH%9u)>RUbs@^MB7){%lV-9tU#x-oIgph#F2NT=E+NZMY$>#5!v(yaOMjA? z0j>=Bt0dEV4)o&O|N5ZwPi&=e4S^r>x~GKl{%?aytrb@K4Ii>#`Cq z7Y4E2Vr`f5^8WUnz~j_Hlb6?TC6xE&!NLxTwf?vl6}ks5?aS-D5@rf!>A&QYa31J% zPhHmK^EdT1zNcu1!|&{m)DIYl=tg81-C*elfFd-499yf17<;%rMgoJ&>bsA|<%FFsw zVe<0&w}kTf5Xm3z|3)FNxj9B~3iw^Ts0$$DC$XDQ(2rkvJzc_IB%^@g_P2-0%j@nE zHc)cwj&S?spplD`O+NP`zgr*9FY6M%4_REb(B$QH{PHdHGz8lF3CfiKsiIoP^(k zrk9u3r7|sC=q~BF(4h(_!S^VTF6qBKKP}7S9CDtL{L-$h|BM3JPmu@#rF{4~wQPDxY(YRaL*iDoXh>@sv9#9K z?sT!WJ8fNX$EBiO6s=mfDz;WbvDK<|ulaswX6_`UK7F6({lEX~`>ywU!gb#>=gc{0 z&di)SvnK4j`Rko#lBDpKq*5D{LQInG!=uHc)1|0KXr^e!jwWo=kD@7f zSBT{FKn6P9c+KSTO-UGkaZ{WmU|*o=@e|29ol!sA=%V$MR~m%EAbBGxjSs;-Jj&lb zQmH$r)0G%a86{4Xr@SE(xV#imNEwzH{DnN1ek4zqqt7qa8$jeKZ^=Y1FODi3AA&`c zBmSaaW>H~@tH7S}>Lzn}X`+w>Hz_Zd>U`^TnI%R;Zs9b6@st;y%H>^b$q5K{|1{AR z2|Asra8_<%mM*t2yNJO}+gAl7RoxLGgkVn@B8deqJBe41SG%Ra9#|8E2%Ky$0*3uc z^tjrgFke?Pry!#!Usr52K+n6&^Ov)LJmQx>Bqv%15bAW(id?Nga8r5y;3xg!1P{TU z@?u091v*`R`rqlN74m9Wq0t9Dy>+^* zbYr?Z+_bzELf-5EPDAkD+g(P9tC!uS{^oK0&|RG$cRLZ);7oJ*rKH4B|IoxI%08u3 z*h!oq1x%l+{yZc(?y@?eO2R3rl-uYLg!KUBPxV6hLli9JNlCg6g-EARJhQEmGzfxj zzb;93DBT>m6v1=|Aw6C2+`yy8^Upq^uSwFJyCk*%PKAf+qpzvN&^JFfqi@!n{4Buq zc>oXT;q_$gpLZVbKjx{f8Nc`(dv9ew;8b{^nk2OdWDmtzTYKM8JcM`%rHM}ul$_+G ziT*C*DPOXGmIp(U1TU8^&_|z@YYgij2CZ^47ztj)mxIU27t|eH=>@6pxH%<8eL>%( z+zdmyVNTx!LwbRJR*_+PN#Ef`27N-2sSpO2TT~d9EvNLIs5g`VQ_@%MK_l{+?4FNw z4~nVyyL=Ky{{#BoRXj_AG_JpUxfM6hp!FeFZUdB+7bR?%d&#?jm+I9Yc0qQ~Q^1n} zs}OH5;ENwhQVn(9|9t*a1OKUk|J1<$&ud_U*7~!0l6vB}6!U^mg{f1#ElOj#y5RmK z+XDZH@yQF19I$0j5%rgEuuzi-swM8{g_&px}!qoSC1d3HJ=ZOsDT(S zrDZb4=|rnT3n`@!_f=Z7fbH2N#kxaV9vKA}t+m$L4ZtK?cL6hS3}H^$hX7-#QI=WI zE zp*Is2*%yns2!}nNlC3+;u~!SAo$&#!&G(OVpls17Za-F4$Dq>tBY?9USC;(-sw7md z^<=~W`{SJ;?*zx#!-4_q<3&6$iV0WB!e4Rl!?}z=2)#$;0UL{?;tSA`XdD1N|2;v%Nb+5wpLRIjU?BsGUR*1F4{7{SCo ztforzh8W4%4NdNqhAeF1@u-&fFatuS_pwZ`X|3B)pC4*S%~SSI5o)Yw8!NQ7`A6(O z5tbq=5NQ~P+Q|-6b||BImXsahB?+bWGbyQ;UQ&i6gwRx3N{y)5AroaQC+*2rhV529 zwI3-&NBuYy#KB~#mz1fyFDY9lUqn4GPeN&G?2jQQaMch=TSoFo@(`7poNZvnUO! z>8Hmih_+h+vLp!ieUhxVJgZCS)KpW@+`z4vcS{Z1K(WK=pC)h*6`g3kQmfg??5I{# z2|6;&RTP>X3KPu#oL%b=?to^JWWA*=Z}Z_ln0eX9LmV8-(pUwmVUO0DygR8p_DxVR zpjs30tFl9!WUhJ5eElBfQ+qL8S8wry*u+eqr;-%c9raK?fhmu6)a+JoflHJcKEewL zecTg#DPb8;XziXrOMr&CJmFR7{3xNE&38PDg}|C;f}`PG6dIB-hCng)-ffGO zAREQ-wZG8@LZ3$C$ptdU{*(g+;3BGxD#$(gC;|Skj66u&azD~GkcRfph9RMRejR+G zJpeXNBf#58iS>eB%CZ*7b}J+N3WVm^a+1mZ7NacCUG6yl#sL&Qb>3LLN0MO zlQ`HZagbBuE{sraItIH*)Vm}agv2XQiA(IpBsNTwb+k{FOKof_aiiK*>U&%gRYKxh zPKgIWXpVi+De(oT#7<2m=DJDThK3NO-U~^vq48Y5Cz-TFr!=io+CgoT5Yr**dE%t3JA0-ny=hcW$%f78jJ;1WVI2t;2*P*_a0++tu6S}6iSKF+CsE8 zt$(~Nu64XkOSZKL`NB0l6^Bk|zT-b@J~`v^;Bh2A(`TVpv75Tz{5pI4dtrns^dlJ4 zvrJm(Rx%O$0PIgdP#6Tk%W{_+4RLJ5X}IIXICPAI%VS>cmqU9Ha&_PdoSwW-Wf>rsg#=z2mBB78WDT!&xSJWl&c)8fDB+C=h!lV zg(Sl2Irh$VPD_pg*wMh2#=fHmq_jLlnU+Vs4SnFa-k<=!Zb(mN&zA2Xo<`Z%A4aBZ z(6jC+jh2jIAfis?gAE^`o9*(Q0C5T$iT)T$EDrltVgcL+VQFj>T-t5$AL_E_LhQRfjh zydv~L#yjm-dr6W_v$K40>8}ol`G$|u%#zC^{a|OXlHVZ)_WctW8}+=%k!OK}(KH~i zKgpCawPXdnj{(ZEO5|XUeJc}zF&xUhISCB5`=HziuH5=~rVm%{A0#_~39vI8MsFES z{y5N=^2XFAnkHSTeA*S;sTHL5jO~uV6o!IkV~*1>7Ci|aE1G3Qlh+PVF3EbS@eRba zL=jFD<&kj|@4~2&&E&o)eelf;R-wU`Jxa?cBsI*z3qaWnM(6t@cIvgZ&HVn9p2~ovU=oJZwRU%w3;=K_b5OF1phtiV}b`^1g z`yd{PXOJ6i7~*ShIUE|K_xuxu!DGgA5Kkf|pikgAjz^x~uo+c~*46I|eiS35s9laRutnevZdOD1MyByHI=| zk4I5_2al&wd>xNZqxgqBzMSH3@How{?aO%lYl=U`Pq zk{w+FEj1)JWY?Z2R6ph{Lf=q{+CoHsb0AO1AGK zG}`k!gjj4)G!UX`K@mwF$x&wLdKwvk)d*ySdg0)>Cr4L5no^ z_F?*o`C+KmddvP)52lo|%pV<})&$nn-L`PFO~r85Qd1#7ZJXr-%+nl`$T1j;V#_#Y zATWuxS)srz;FzwQhK7&X9CHuH1Oa2<7zM|ufXU~W3m6R{r-#;ZRa@S^07zjqlX?0+ zo*qu=+?i*p(D>*<^2Q2U%mt1dD-foDb;qFjg6(0CRIlK@9kl93KTJ*)~l}ZPrg?o0XDm zxoRAUp=TeZA6IrLB|A_n*A8fhQH1QD*!dNHjg~XGfEeb2yWukrl1Xgs zMlQpYWYZjUy3UdSnAScubnMQZR0wxct$^M}XtYt}CWNsUOeDO!Cb;L){!5 z_21MTE|b0+j0Ka*rU{K#uA2~o*~~>M7sBfl#w|A0FP?BZ+nW4icDz+{2CoTcldQ>h ztLBPTb6snDqF8H#CZ>8v1u)h#NqG%9p#MH-uW^ZoO)M;(WHC9E$aqAI}c9ZS7Y55nPr;RC$809Gxz{P0l zYAsbzlg2Y`b*EO{TP>uR)lvZ@7FWtLT8JfD?`Rj^VKn88Tw7kw2$b==wbt@gpv6W2 zdZ2Yp4dTkO_l~B32G#a($cMKt545!-cq}qbMid+sOfbaqcZw%aVF`HzytOl7T!a2U7^IRgY zuyX*_(yr`UOC3hPk9^rGGRb;DTfUqS_K8R*Ki?jH9u13PjAVOl+wD=5g3de$A$rG3 zBKPDD{R?+*!F`?P?clzR(6*VBOR~aI@=SYzE#f%Y?gf-F-o|9J;+-NG)89Y9M$5S` z0b>BNS*S6fC#s!lg?SKV+53nKe}%O{d1Mh9G0FN1X4u;(dlah&%FgDi7>TsDHB`ZN z6Q!B2J4}y4zvlon4#=)B$KE#u(u^HYr6Hq0z?yUc&BV&v^yCwP8qk78hX8A3Qgakx zc4!xFCiU3V%O4womLgaHdDS4)sQqR?GHc%o%yd88SQWIctZJ`5^q z>Mm@2NY#KYW(F*-zsI*IR~o`48(BW~kHOdj*5TCR=#AVw?0_=)Ei!iyR_O=3`kalju1 zKB;^Sk+GTOCDh}KNT(4g6_s!QL=bz!5J>LceUdn`OD3u zg#CS_VmdjHb_0}9PQ8g{BT%XvQ%cef*3>C2n-t`8>$MAa(je?M$4ZnZL2LFxnj@vy zg`k>sR8&G8<+^f8Ra-}gm}3u(2gcY1IedfOgJQ?qSfirt%-Dt4@R2VY^=3h@MB7kI zupAY3aG-hH3)zm8P|`LX6x`u8BqJyEo|MG$(UT!39dd|bYEQ^0pOltly`eR4%Rx$# zNKsP?sSekfZH`qlom9{%n(GA89$2%mVF3p8OCMPoF=wjg8ueFix`wRHu@Vzdf|dF; zT2Nu1t31*N0@(KdN8oOpq}~KdN8@O9?Fb*#CKe$h`1ID;j15($PBfLiialUT#$=)s zy#ESRTaq?7u6|K{K&Hp!7&7ta}qLWpcSlo;S(W?T1k?D(A<=9eAZc8y*$uT|9J<*sgV|K_wq$B4TCHs`i-c-xF{%hF!8RwWAU4~t!d}xs zM@2mnVU*o)4n$ch%i2NRB+Z#C_-%|GZ|KiT_Z>qu?g zrH=l==pT>KrzhY$J3ta2-8l2K{eFP1VHIsGZFmu{^-toZu7>-%+bBII=VK(uqv>VD z?W-RmIW$V|bcx%Jl>fs~`cWYl6MmehXg)#_=zswO^eCjjHmOV#5XH2O>gjk2^5jRL zsHeS{B8Ymz_Eo&~$A-N~W=llj7@aeUO{D8Dc&(?hsjE-Wd;Ma(nYYWSpxB4>dV^kv z@yd(Ji_0-nqHRSAn^>^(&i^Wr(%IjqkXTI%HstQU3#T^!sj#K)H1*}e zlxr_LDyonrM7A@>R*k0IF&zzl&na>mL^gh?u@?EOt-7Fyn#PY^OIz1^apE}j7SWl- z!o}60=P++dmLJQOratg8LqzYTlO1$l+AcN6MzHKha;o7_>0xNn-l>T-ip_2tRXAfp zUglT@qo*3UK1{BG;UHo)@No}n-ix?(;Jz65?B6Lg8aXTn7R*yy57J(f^%hi0D(|C( z9KIf=u8EEsWG_JpME68HCRy*;_y11IO5;%U|4~$P?Wq4VRs7k`9dqPZ(%9pn4Bvm8 zhnU*2OA~W;-n%SsOu%cn19EPax>s--d#Q=uhrOr zA}>=>y$5c8tX6NgUz2-Z?g4ME^)5WnB$eh>d6~w)sCGok2;{pOpZ{PU8|{ygRyL9K)h9txteKrt>$0|S`jo9 zh|Y>kYWSWLG^qqVX%gzDi8tY7O_*87$y=zjxl~43c#N+L&r`EHX9CKy9ROXmLThS_ zu`rxon0KLa=sLtVU3k`W**-rNw$I&)C2blo>6Rm zqQx!_o2UPhWIb(POlde^r_-&+5KoFJ*lmhLb+U^l){|JcV-UB)5kVJh?Vf6Er{0Pk zeMjSc#L|mpNYhSn8Zs0JnpP~_No8}Jwz~W!?QgUB#lrK{3To>S~a*Hh{n=WMG zEjlVuF5kBB7Omfv%WL>tj`@Qvfn*|oiaC?A>=Oo~Olu}X57oBC$y>F|(lD>Z(VM2G zS}MhwTk?k>%|(!!7TvowX3MmB&&svT;i=Y9d}zTafqsw%Xe`d ztf|i%gM?m|_0W5lW(gS*6_Y|5Nywm9yy;u3d07CjE6_NaB~YTWR`U_Jsw!?(w2Qfd zTNK&tPXQPO=C4vHEk_YkuAQ(X$@-J|rkAp;u{jP3Zw4wYmk}|?`X@p*JB)W=bmGVR zwc#jVd*JyY;DJs|qrYg@(Wl`oWI(W|-n%p_)WB6j1eN6_3jao7^(NYNjb)pz9r=(I z6FY{sT%$3*wU4*ySJA$ar8SDu7{+%xLu1+2>%Dxn!;=3%i!>^E%QD0nAR-RLFTSKW zW=np4;SFm0IBd%-yur-j`5Ii&ux+MRemZq)l8rT_a_RTr!rd0ubjsGgyJ3OZ%13?c z5XSjm%vR2;$yWBXNZ`_DUPAMSAV$t+O(>ztXTe6+s1U8S%*LBO*y!I5?g5I$mL~w# zTE^o|b;9-owS>}?a@e{&9$>t6vk^f>qIH|rQKPk5dH{;qZsRs&t<@+;-?7wal<{|X zQH=h)aHfYe7~z(_30degYHN+!T(3~$YK_veoU+?vTTVK$d0Mi~G+VvtIzYA&-4kv& z$@(?lSLU`v4w7t1g`}r7D`@Mv4Wf77dRCTQ_9Jpsw6g3^MA z=H-Qzjs{4sO5+UM8mbMgH>Jn+_-AOpiCEu>+nR2V1DYlosk~ z>hcjG@i7;ZtmV;!TiO|uDC>7Z5bZxJu49h8N?WUjaga?Top;ZU3T&Guzl@&xDiCns zuT$^TR#UHJJ=3cBDA6{bhJRNNUGKDa<_32n-H zCDDcOju`?mG;lOFLj)nVtJ*qH_+a-0eQhP5LP<)rghOukckqUlYiB zsnYTlGQcfd=as(f3Q|$Mg)*jT?5zJw+OZ7a`0j-R_v6`_n#U{Gnkv+#cYKXeeD=El z4%)H9e5>g%~kHWsF zre>toCrX>S!&W{U35%2bf)?ld1#fEzL9~T>+xgJ=#aVtz%xUh{vEf>+6PkKf%*_AZ zvo>*FVlKfwmnZ?BQpgUB&n50jgy#|o_RsI5Me`Y06(7n5V&2*~pU*d( z$WDaJLB%LPU7ki&iIZqI2O zO*eU^v(b#Y^?Z+s=3j;~<`UV)D4R^vb)o-;TTCi9VSq6iD81A zqS8Va+{A#PEW3>b!+$4J%Fue3Y#tNY@Y+^dUZss$v%|}zxqFQPTZxLMsVi|gpk6}@ zP}tA3!5HQGzJXZ(MTgM9fu)@9LyR8=jKwLAh_H#UMM9#z5`27xjJr7EijjFfZ9)Hu z?6F^kZEV+wpJ+>+U29ndZer$2vpb1q5aaZR*0tqp_R$uFxTs;uSFW`X0=K=>IR#rK z^Gg~S)RWwhbW#pdoRLx%>gp@7JN0^cJ1Xd|1@j2;%J?;u?DPjN^(yGgLRwU^X*kC7 z#iSD%LjpMtD`SFamV>pt3LXz&+nGz1sXNf6W{NGkUo*9pZh z-%QXJ2daXOk7**Y0deXAW%n@9J_H42J3i})N;zydZkeV#w&6scj>U)=(IX;?n-?{R z#!0o7?J~+*z6;SL>*n1EYApxxCg;YP*wTQXx}YJ5m#^Kok~a2y=s+7nPhjh6i#X=C z|BTh^-{xN9o_no@a(AF)|5pCV)}h#!4yvZ>Ex6D`BG4O8urs0n?cn5kQw!|HP+N=d zpxLL;hRR>;0b8rC=6{kZ%cjFw-Erf5Y|QanFTAMi!Vij?=3dmBEvcyD8%tsj77l(l zN~ob(InDd`QrYI$)oM<#TGiC^D)q($6t{v-@#@4E=$fgmekhVC3vH$HOSJO&nXIO< z1=~F|Hp8hNanODwZ4=W>zqQsjqF8IL4Mn5ip5Jw?^?K?KM&eu?IQOGyTN!6izN>ms zp~(YXl(SHlk!NRH&ZAKoxLtdc;JfT1cJu<4Mg>aUPNByxqBXf5v!)tIx8v%{Y9cJ3 zUyU_teZ*D!!>GQki(y0dSEwSnnK>%_(Q0(_-`K_G+iD=KE{)jm_ie@$r9ogACgAM* zXq(XK`AxW6;wIcJcHGco;jJ;WEz{Lo{I!``jG#Y3_SO*4nha_^&gAj#H&gsBVXVYMfq6f~+ zzm`UKHa-B~Ks%+S4K&o6Is>$qVf{!8w20#o=-_8ri6FwXuhB2!c%v7)WMwxiq2m$f zrmbvmFb@?P^&&MY!s`^moa^Jz#6Jq)tUn6rd#pVvsIk{-u5c5-&Q09o(jwa&R?&g5 zb3d5;F%2MS-HtseAUXAJ$4dPu(YasV1yCYx6|l1)T%=Q$wW4&(0cBYLBLCODvew$V z3q12BtmxQ@(LZ<2=YqL&ext?z8_pTkc>o@qkC64Ime_xRGo*@^onbQcbF&|2-~UQ` zH>39c5F^gN-`?e;o11SmpQVC;Em+T?b1-+C8T7PPu^;C`<-Q-IUQ>50bkJ9AOqoEe zWe7x`k|R^)NPjufLXP|lp*T(|_x)Cmtd%3r%8|KpWU3q~VeDq)_!^#f@qCJh9N{)R zU*Y)<&j~y~>{!m(d(+@*<=YJ7ZE+zH$JvEq`Njq9GTW)s$UO=@=}1Q( zK=lH9jKW&YdESFA@*YH6aYy(F!S1f&c&*8O3i-amWUbXyLAN|;=XgEs_^a1TDmny; z-^28v2-`AX^Z9D(HP-nnoJR@oF$DGz_iD=34*IGhKO2ZRU_BY%ahKKfjdJ;R#dhV= z1&lDYlJ;P5yp!QO76wjxFjH8_ww$qjlerzIF(^;O9vm@PC)71|bQv4@mn2;9fw#vA zOET{ED)!*QA&wyuV`_1O*SbTkOgd_*Nw$8A73NX3b+2`|)>~77F{Apg`QCg8&s`E+q^` zPphfUIGKvMi;6j&`U{F#!a}yyq$#C+rhY)sK2tT0)Wkkh80|Y)ldEu2$L8IpRgSvk zm~+Y{ez2UzC@Q}>HYObTu;YwytZ4Y{g!oX3;YzbjQ;8wtQ~+*M5#L^zT*RJ6-}SU} zhRQJSoa{E!mHoB*_Y-=!xzIzb$>ggxxWq~@v_<|DvcVhHSk+Mhs9In@rx4$O<<_{{ zWsOz5CaLw{0+}@#Auy?Yehq{iB&Isz#mz-nA%)E-pbXx`{wI?QV67im^timOuTI=d z(&4O*h2&d?!9;SZkBNZDh#c(LFG! zG|yGRUyltnolD&zAKP2o(sV}LcP4-6{Qk~Wk(1UIc@Wbd`JDHvaS*;%Z(j(_@fDQ~ zNI@O7ZS27P!8v;lC75@FLbv8xTM4GHS54;{{SvJY@*7)j6BOtCLHwQsJ43&NQSXF` zDiXaXpc&_Z4!a&PWmt!X-67W*gkLm{ZtUukB{n!ApY2SoKfmmYxx{oG?F*@7Ry>h>AEk!A!=pU*|AtA0({s=Nhf1#s)(+F zT7qvAv7K3E*+)R220Dw=M7ll4w_(h&bVW^4T9)D6P=!}1y9w-Ln2B6T0fo16o#g<0 zd^Z2ygnO>cfi%gL?*zxOe2lN63-wj5EvJ>f`G&V)F1{5?2Sk!`#5QxypZo2O8uRs# zS$XX1auItP)*^`?M4MyRVZtpLarM*p6PmxXZy0ohfxr=jF*`YpF=#3(2NY$DLhRbE zq{?5oliI*-7>cNAut1=7oB6a7OU4Z$0JKWYel3oMd+yhkj}P#QxSFjj@{L3HxU4K% zVxl4=^1SIsD!VdTs-xHLY-Rpe*~%xDMADUYt$A07Hs*KJUTyjFZK#ym^3}mC0hcm* z?u)>$Qqb>LDA%?dxwu^mEw(*k_L+X)Rpv`HQc~thYCwFqOu4u@nhkpl^eqN_sfE7A zLU*?j4BJ)Kl~d!&$OS6f3ayo0ht*!gEh@`y#&K=SAQZ^HnbOhD_s`zt_#u{rKXD{$}M^ig9+_!-2EzKK0gH8#go z!9IgC;*eKizV0<^usOC>4+z8=E0x^l>x;=MZ>V?CKhaPY1o+AVsh?zRKzq@aRl`3( zt+C!wZ~Lu-MsY{I|4wq|Z*(7qHuyw=PzGgLXQGQZLp#Pv{QDjAOn}`sj%eF3GLPlO zzAJ+q)VO*Xb_#0F1(_iTQoeu` z9Dk4i7H=3qv1!0oIJ)|Q$ZpYpavbT!8 zJF#~c_U^{sJ=psp_U_HzVeB2w-u>8n0DDKVcQktsV(%gBJ(RuU*n1dz$Fp|=du!Qy zBzseRI=YTx?-ceP%iiPJdm?*JX74HN{V01s#@=b{ox$E&?48ZtIqaRs-udiZ$lk^5 zZD4OB-bwg=DGr#_;~ZUABCN={A6DByH{f!{!&@}aS}7-&Vh1P|2Y1x4n__4TsbLGn zV8&9zYKrxv*as9FPO(agWm4<~ip`?f5{f-bu|*W4`Fq1`iXEU>A;oS}EQ@0F3r!7E zC^mp%wD+2mL^0ZH&Y_tq`(Aj?OBCxzxGyNygJL@<_8`TMQLHt^E>kR!V*XT0iDF?C zyNbS(6HBr46icEQ`LUd-6r=6doIHxr+&yPD#dcC`F~v4e>;;NdQS5Dsy-TsrC`N}k zIW%51JV&uZ6kANOGZb4uvC9-QQp}6$Iges3DV9bt6~!h}Y#_ywC^mv(!zebFV$l?{ zQY?&OFH)=v#ondZ{S;e6u@H*wq?jMYzN6S}^sJm8DRzlsmndeZm>0G5Ns6_k7=710 zM@6x(C>B96c{oLT;qyow3#9sod3aHT1ceXBqv3e@O*r}h@8#p?9~gu+C;y;X9CYiA zuC~dz7s8v(>Yd)=w+&+gUb=5*L9=JBlaCUwrhy zi@lQ825g@9*@9+$s?R;!errWm$h!8IR8@J}8S5{fRBtJpfAHA-jc0x+7_;W!m0HVp z=7}rv@2OceJ!|fbj6cus(LX) zAAS^mwA&!*bIlr#Cm_UYSV`(&@JP@kCTH{-Zslj^{Vhe8fruv$Kw(P7P6zm;dUzR~|+ zwf(I<&1Mg{At{%x3V0!OMT^rLgY%x~6IxjgT?CHka; zw)J22z8v)9TJM(+ zd}fRpap;#%XB~L0O}FDd=C&tFS~bu7scdl8^F#9rf>%w+o7;R}i!-k|0+x0EL<;=u z^=9+qmnknEc-#M}oJ)!a?`-$WO`Vi+?dxg!(iu_t_nq^bUO4lCgLmqCeP^9A_gKg` zBY&7ybZY&L8yB`L9lmAVy@!@orP<#;e0agK{crBvek6MArBkDSpSE%Tv`L%Z{lRa| z!~cl-Tzjln@R6hk0zbVv(mN_`u8(@hg|t%>PEA{NVQFE+oGrNtOTI||`hIivrpg0F zU88=?8M}N|&^O*Anr~d+)~i$BZoU(?4Bqf%kLH^{e{Ra^UOstWJo=vF`|T0?>ekp^ zKia$fCnu*?ZO?k8+ojC&ufCmU3S3s;^}b)gs}D!DXtYdgX1HgPt@#Y5)eD~zA9}oV1{fi%R3eCqleA{-*!l~WX zUp+mms%X}Tb)jdc_%ANbQ#!sH?3ev$b45$X>-uMMKgqcMonv~sW?z2W**^wW{&pbv z`|)ONl4L?Remn@09WjUVT*3G`&$@I8*A19~3g^Gm7x5(7{us zR8`mhVG-F~yGpr(X66`53JNm^We?I1nm%aI3`sL~?C7zBRKtr*`B|#MBBQD}-B6-e zX@)1ptFjG61*&wzG*f}T(5UL(wWNEXG@)>MVbQEYCpu748}Zw@#YX&Wx5`+g!Y_gs z>NAaDVPUF3SvaXPoa6ObMAWsUx2m8hOP|kTnZ>zTs_@xe!w1ant;)y}K)>0Qh)hPHZsw2#Xw4++GfhUlq?t`2 z(UoKxa*K^DbwXi@skpevU_^m4iwX+T3yCXCH34{#s8a)a@^5}RC$5W0{VxbXrnrT$c$~ESw(hF6&qsOUu zrK@raRnS{iWKhXvV#a~e7s0IX8_RM1mh|3TVV9=MK#WVABktLxD2}QOm=MR;N&G`Y*R6WRiUDc9bR8-uPIQ3iwJu^LhiHky*V3V9n0s=~m=?2&us$H~0?o7R^1id1k zq|FEjm|=n`xzxbV|&m zFm0%t1E9X*w3qCnhdYX{f$T)T=2gNQjVhf?#Mx-hPOX|sX{pREoQ)?p9Q9Jx=-lwo z3U_NtH)kQ+k(*|sh^ijcuX?MffAm)AjhSK8aIEVGpgnSmX7RdVo(T!m&`4nI{nths zr#HGe*zDYCCIhQTRabOcy}^KXfN3!jbP!iMdSGXCaW{4*J3Bp757t5M+}zcPf-p-J z%v`)d-$!4Ffq?RbtK)QxLe(R88f;dd)zj(a(P>rL@Mij~Fx8~=T*eUr4Kr04dKiHo z_G2{6K?kRP&qko$s@#$i6Gj;V?>we1D9qZzltDG42E@j^N|3(OqrSbl9Fswe*PTj%Q_3}E*t-KLN>n9Cg$D? z^aVxm)-D=1PsVE#PI6{?K8C;CLUb}IfkrzTk+bRd=iM0jFs7paf#7E2F2QbHg{sYj zGCLJRaa`R9E}1Oh?#WH;NE&7+nyxQY6{EVO@faWB2vo-O{OQzUu6{Ne|5t?DrO9pl zgI~@vz~LB>5uZFTlak^wkD%ccG9=kb(0nkHqQa~a=3I<9dRblMQe0H5G8JQL5h!&n z8Kf%ao|I-R_`QA<1~#NBL`wupxkb}+jk=;@eW8v9932LVED1y0WX8x%ll0ESyaIN` zW;^^pRKTLf4O5NN8*Wg}# zsRSkoylupM)a2^=%+5j0azH;VG36UoJ-YTQfxjW8oE&oJ<1<)B9w@omjb(1oW2D1B zd!SAx%%2y9dpTwg)HKEUrfGeUsXG;UQV%j`@;@PzTiQv-JfCqP^FLz(UT7K z#0xC=xLwQRmJX8+U5P290Jbg)CgrB&6cy?tdPhhFQPJtePPm^`7~Rha_d|MNv@5+o z!7<^^^!~j;9}}M8hUgE3OTYleFu<7}N$`LOHy8p2xacE$gMWZ4!^qwP0LM7#qliD! z#UDiqMD};44`k_4ZZOiLT=dbDK9FF%3!G%pBqoa3@ODQd_bAF8ZrLvdB&f2Sl>;qAX?=1G#ENSpz0$LyNQIbaxe}sCg_sx@7{SU} zf;vKRjiRd1Ls@}2x}S`uwufkL@#$FuNyP|ZmIP95JDX)7>CrD-)?*-5)4&MsWr!H{ zG_aoxQkTx_A0d~4x-x;Yg+9?Fy1%f`^sHzS4bYVg+5Me*MU!lRu4Gh!+C-U|AEb6OPZ0h~0q+xG zpuisz@F@|}!4uK{EZ_?w1X@Z1{tp2=L`d=p@0-W#O({ZFKgE*NM!+3JNad1%?<(NF z?)0TDe54!R8~7mtP7ooJ?K1slnL`eA({bK^o z79o{af}P|G*eF6mtDZtV3wV(meJ9W_7I1|Ksa>eQyddD$MM!dn0soGGKN4XGCBWXk z5b#D3wgsBnWxIgC5+UhH^6LbAM1<5X)bCCT_^b%2T?l_(z*j^_atMD@hVywl5IyM` zAmElFq3=;V60`4n9vMZvG67WzF0*!x3B1yvq{0|Y5K7>yZ@MIBExd{K5 zfU`wNawY&@AYhXSNe4ARUyG3Hf#~-O_^1f!`UTKO;i&SA>5-z;B3<%0>8h1^lT9Nq@qx74S9@lKqf>s}=A85mLFx zpBxeJPa*_b8Ug$-0{%mU)Q`yiZwt6t5wCx;b81JWfJ5aFcpuAJ$Ar+i59;Zx( zqB$O(W5i+aN_M&5vw?UtbQ8q2^r>S3i0A<3{Sv;B0F&; z{whuC&^ZbhsCS!p|Yri$s-~PBu>9bpo?9^KsvV zz)~*)v-3?QIRq|dAdbchnVJ<0q+>QpT)`l&F~OA#rn_SVtr8FuTg8A9y`B}TnnO4( z?~*tQH<$2#H^5NCutvHi186scW*KsE=L=vRfjDYMUm)-Zfw;FL3Q^BMeE}+iQtbq~ z^t#AEV-9JiV`q*`OPC7J1k*#uTG&}hiaVYyYyU;!hp5nz^yfx88WiYMMW0TyO*>LUV{ zh1ClfCQIaY0UC=~bzgLXIIXAj>x3{l6)p8aSy@fH*$I57LMQo3Ub+Gt=<}OTx*XIX zEUPm=iI%$46jN%RTZl`4Zz%NAI|@1?mA+Mwg}7Y>Fng6qE4&PPX`weav=6+|l+s&1 zaK+Q6=?yyP5v#ZwB>m)r^W)r-9G%gSURVMzEiLoq*EUMX3Uty-zTQ$LHnqKGOP?!d z;x39#`qW$Uf+D*W?4qEK-_4R5e7vP95PIX916)MDOX3YhhADr#3%;Yk39(K(itFw* zgC%dNeh9sWDs;G~q)X@5E=#19-jcUo`pipQSh;{Q@cR`DQCCK3vlob^Lr_JRrOz-; z)8*@D>hq<8UUa+V57K1}l!h*@TSL+{FXutDbenP?Lm7{S&QM5t-aAt&^pO*cYhsLmVNrh=;KF;)-kex&rfH{HjS zu6k#fvZ;b^5tR;9HR<%q1gRd^NTk<%X6ghH)oLHy=8-n|=%gAS zAE{=M0tXp&PhzF&#V+`L@538T$F6(+0Fu(hL{iD#b^L83%*7>)wVdAd74)uomfjW1 z*!y{USFRwz==jnn!XR`Rb9B;bUmvN8{*faLjNSJ;<%|0vbp1nToP$d=Kl`GSXU$4C z=ymKStkejG8ZbcOYfSp<^uG88M3mkaSK(XXrK(qywk-9kR8;zegj6a@z3N&asPd~) zR4Hl{rTDAxD)lODSL$8iQ>9RaS9zsWD$**v)9NV6r@|*Bt+*aEQWn0zVubLZzSvVj zSRul+M6CY+)Bj7#;!_p&{?Y^94>;RfAyxepoJs^xQ3@kHvB0KyyJnI^KUyKfgzJJQ z4i9|@9)(vN0r(J1{567~e(aR^Wth^5AF8tt!Nl(l6Mu@5%Ze8KGA#4c|FWbH1;pRBRxw75dP``-v&(f z`KgC}R^t1dB&GoMNcJVegd_dXTL1`If7q?|5g4P!EX`#GA#2~^6dX< z{ib2#hG^du{4y-_vqYp5O!~XSq<>lmj-qddQ~70>NU8iO0eImUzs4hfcbM|83gh`t z5&SYN^Ot(?yTimE4nI${GX%d3|Ev5}g8ykbe*w$eLxX8aFx{_QfqfMxztin#H+!^9t_=KT8wzYNR# zAs+tC9VY&i;hdj-;)Lv1hGl+tdn5hbVd9tKIsdPMUxsCV6)BGo!Njj303U*hUnThe z6#Ozw>8$?{F+KznKbnhu2qyj%!QUDi*Gzu_Q##|P2tE`rem9u-OEo-gfZ&&5A|w73 zJoJ(I-C^Rd6a13|zYNR#m5kfP?+z1xaRN^(5d1PM^QU?6yTdGh!9P#VU%)bd1x4_o zU=&{NF!85pdD_#0UxtaE%AbaZJ~DqAgE&n5HG+SI;Fn>Uzs`-G@^^=czao*#S|#{p zSmrPF;CF|KKV&55r+>*n?JvVJzq`Ft{_ZgGtCBeXe!(xp|0;j@D9&#e{4(t1_s~DY z4W|6#1iwS@%dpI!=0;EYyTim^Dfl}#=jE4SnZMYB-yJ6YkkMTKWWg`PGJm}XzdKC) z7X|+u!7sxyzq`LB{oP^Wm&Wk?pBDTwEb|Zc;R+B;{4%@}^xcpa{s`w^OE8`a1BbsP z81uJ~e==V?iu4B|PhJnuzoj5pp5Ol=V0pgo3t5z&h6Y3+wGwctfGIDQF6PI*0k;65 zJl~CxVKILlFJO5-I!%U!KY3cfa(%2M*uA_2Lq}(M3C1JOSN957p06Ghuv{NBEGQLF z9v>6c0+#1<^z#M8FZ;IuGyuV}zYi5~jhH|560khKd00*l z=jBh4(|d4untLVt^Z=j&T!dQtz!WLU_*Ce!!i`Gt715Lo`{ z<^e}}z-kYee$EEjJNfBnD%|1u9`I`(@Mj#xn|}^^z`uFGcRXMv`V#VU@`roCqdeer z4mge|>H&Y^0dMnwzwv;-_ke%)fG=_wMc|)5J<@%BS^0qFpI{HTjR)M` z1McDh_wj%Sc))`^V6_LF;sH!1McMk_xFGYd%*D?aIyzH!2?e9fTwxD zMI3gPcY#Ox4VW4E@LPCpy08cwSG(OPy+X+u+JYDg0!_ys44?I2b zJcOqgp5A!+;Gy|PUp(P>BJlLX(;p9wEs=Pl@C?L5Ki7&+ToA%wJT$I%z@x&`5f9Bf zWAOZMuLG5&yURI;PJH8z9gYdW{S<<>q3?ng``y@=7Msz3OXIOI{kODD_Ot~h&KGd{ z;o9wQf_6U!kQ2mNjyNB2VsUgL;+{t@0!`;G?pyh8XtvSsg6UMi1<~n%fY?cqhlny|cB>*B+VK-4k@`;$#Y8%tu{Axpa!dHjDVJLs9d9)~dGbhf z9YfvyJ^`>zZV~{NkIoSt$1hfR-X3tKuzLeeXoTy=0C0bMSHP9-x+L%~+ztTAKe-lw zlqUB905`n|0L0(l006+PB*$fg%+?tYs_KKR$+Oa64?FJF+6kNkDTP0#x2P@f(0 z^V9vN$NCIn=lSwMzBs|xmGGl`T(@Dz>@39bJB4&gPaz%8Q^?NcDdMC=oTbnaJS71Ueq=zVYclGHA4idNGfebbL;qe) zl^8PnO7!C=a!LQYRTUQ2mt=)OR@24^OYh+>UzeZW#~ltU>M4&F?t>xw-6S_}{C95r zuD<{7qbYg(yNo~Vi|qf#V8EwA>{m);<(uYr*KwL(^$>;ncV{VVDE+U8*S`$Q!d7K9 zF=ufbX#u%SMrc0cF>$%u{N`_lWA?Kb&bupj`FQ}j@OPbZ{bi2fu4>as4jf36DFSPX zzf4+CcF(EKKbgw?k56LnHZgV2MD$=xiSIt$rS8an$xLpzyZy=q?rvrF@2A7hGEFxX z>x>aHt;k5iH6mBX=63)8HRttT|DuF2ng3S#o4UrkRR>$`iPz1OK{Z&Vt_LXZHFQB7 z`x1(m5z?yvUCRE38OkclA}D| zuFKO6=L&Xsb>4F`?oVA_vrVc`nzg>2{^UK{PZByLJpD?mmi|$^Yvo%fmWNJyF2V+QsU?g?My*UU@d9lpqSuV27JPimjM z7OZHds9fZ`)n}3KMxfW>`J!pkJ4mVo`c*tD{F)1{pg@IJXxa_1dg=&VO;Ow#})PFAYENYvq}_@7INODQ#VU zEol0Vm&VOa?N|QMwHMwBx$;8tD__>XS@zDJ&o^F)I@8)w{d#fuk{;cH-<`bUwY`;( z7;-MZ;~N~;aZ>9yzdiW<@bR~UUOhX!?`LJ#Uag+9xxKgb$-LKoe>ijO&f3d!FZ-qb zkoNYMn`S*+;7EAwy{&J);CO$*E79+?zkY7%%bz~{%5Gc2j=nFyF!BX^Sf{hS!rwnv zQu6)MVFTy)tM4#bYuokIg{Q5*^=o~#cWm(L-7CF14^Di%)1mS2M+83jd|Jry*Gszg zopI}jmLCT78|MGXz3ZZyPwJKS=bCLJZ(dyX%)5(HUU~O&?D{>vdwxD=Sh6zI7`}GY zTlMdRP7V9APileg^!r!CTg)juRIqGCn@QPkje2|0lW992%Uc=qt6g<2?X!}RzxXZw zC~VTWhx|`}ShjfT{0|EIwL2YSI5_)S?e`ylmQpzF%d{8!D$cG{f461e5a07tRBw21 zns!h5`c8R6){IFSx@!Mp58jzF>#d++pZ9wBnQwbre5 zVnWNyDZ32o_Ri`N((LolZCm%)Px&M*40vR8)*;0cX@}CEd;Fp6y|Q93r6d*HR?ozTn4z_Fg?pBI|CpyzpM^yx0ZnAOC%S_6Muq4Bqr!UdP$*7yYAt zcloZ;qwl}9anhh?%ddaaVf;%e=ILLLs%=$jw~bw0{>A6dd>XhQVCu(f)<6B+s$q|5 zv&!dvGj81cc?;hBBd;;uwB)HZcc!hoRJAu@^7&`er<|O6WzvA>CtDu>`1@JISL}Iw z~hcqPXby_EV#x7$-p?*$BL_wu3-LNnGM z%scgcrwgm2qmDfBZT`OL0Uh=vq)uLGtx8;$v2xVfI|+9VwC!%vBYS}9{BOqkao#0d3|3W+%nQMj0D8K1JqqkL> zUR|$$AS&m5?_L{fw#-lcZO)yG7Xns$e{!&2WA)b$o;ckpal`PKhWaP+KPil#I60sq zC)nou%AA?!e!3^rSD!Ge<@nQ`?|mw|F)@5mkk4D!Ki>Y}TffJ|j2-+|Q2uwJ%ToMa z`tt$Z<>Q;D2R`y=*Mqa~ziy3w>6*eXDfii&l`Rwh$jo}=mx$zd9~ku9XIHp0YuV};B>2v?FG_}hEQLU}!0bjIA8v6L8 zV_w}0UpoGxhg8(OL|F#(>A>{ z6HmTW1Y7}Pg}AnfAH$SJO6d$PVeum13#AfJ6$0+@H>o|tJG(M$6VcYEbwuy@asSV( zq|a(=hI~{|=ymx2G4@lGfq{Xd0Vf-)HXk#S6e|OZ$etCfcXe1(7QQ$iy8UIx8B>$~ W)^jWz?MA!f_pvVvVgd~}g8={(^UyH> diff --git a/restore.sh b/restore.sh index 275bc07..d29646a 100755 --- a/restore.sh +++ b/restore.sh @@ -137,8 +137,7 @@ Main() { [[ $DeviceProc != 4 ]] && Selection+=("Save OTA Blobs") if [[ $ProductType == "iPhone3,1" && $NoDevice != 1 ]]; then - Selection+=("Disable/Enable Exploit" "Restore to 7.1.2") - [[ $platform != "win" ]] && Selection+=("SSH Ramdisk") + Selection+=("Disable/Enable Exploit" "Restore to 7.1.2" "SSH Ramdisk") fi if [[ $DeviceProc != 7 ]]; then