From 269f5605f1f432770a90c5c0e3799198eec881cd Mon Sep 17 00:00:00 2001 From: MilhouseVH Date: Tue, 22 Oct 2019 20:36:08 +0100 Subject: [PATCH 1/5] revert machine output exit code to string --- rpi-eeprom-update | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/rpi-eeprom-update b/rpi-eeprom-update index 6dad164..7da022f 100755 --- a/rpi-eeprom-update +++ b/rpi-eeprom-update @@ -454,12 +454,12 @@ checkVersion() if [ "${BOOTLOADER_UPDATE_VERSION}" -gt "${BOOTLOADER_CURRENT_VERSION}" ]; then echo "*** UPDATE REQUIRED ***" printVersions - write_status_info "${EXIT_UPDATE_REQUIRED}" + write_status_info "EXIT_UPDATE_REQUIRED" exit ${EXIT_UPDATE_REQUIRED} else echo "Bootloader EEPROM is up to date" printVersions - write_status_info "${EXIT_SUCCESS}" + write_status_info "EXIT_SUCCESS" exit ${EXIT_SUCCESS} fi } @@ -485,7 +485,7 @@ EOF else cat > "${MACHINE_OUTPUT}" < Date: Tue, 22 Oct 2019 20:56:28 +0100 Subject: [PATCH 2/5] handle undefined machine output consistently --- rpi-eeprom-update | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/rpi-eeprom-update b/rpi-eeprom-update index 7da022f..298131d 100755 --- a/rpi-eeprom-update +++ b/rpi-eeprom-update @@ -469,8 +469,8 @@ write_status_info() [ -z "${MACHINE_OUTPUT}" ] && return 0 exit_code="${1:-EXIT_FAILED}" - bootloader_cur="${BOOTLOADER_CURRENT_VERSION}" - bootloader_new="${BOOTLOADER_UPDATE_VERSION}" + bootloader_cur="${BOOTLOADER_CURRENT_VERSION:-0}" + bootloader_new="${BOOTLOADER_UPDATE_VERSION:-0}" vl805_cur="${VL805_CURRENT_VERSION}" vl805_new="${VL805_UPDATE_VERSION}" @@ -486,8 +486,8 @@ EOF cat > "${MACHINE_OUTPUT}" < Date: Wed, 23 Oct 2019 11:43:04 +0100 Subject: [PATCH 3/5] rpi-eeprom-update: Don't remove update files if run with no arguments Running 'sudo rpi-eeprom-update' will remove update files from the boot partition. Since the user may run this command to check if an update is required it will have the surprising side effect of removing the pending update applied by the systemd service which runs 'rpi-eeprom-update -a' at startup. Move the cleanup code so that it only runs if a manual or automatic update was requested. Add an explicit option (-r) to just remove the previous update files. --- rpi-eeprom-update | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/rpi-eeprom-update b/rpi-eeprom-update index 298131d..359278b 100755 --- a/rpi-eeprom-update +++ b/rpi-eeprom-update @@ -285,6 +285,7 @@ rpi-eeprom-update [options]... [FILE] -h Display help text and exit -j Write status information using JSON notation -m Write status information to the given file when run without -a or -f + -r Removes temporary EEPROM update files from the boot partition. -u Install the specified VL805 (USB EEPROM) image file. To extract the configuration file from an EEPROM image: @@ -394,6 +395,7 @@ lookupVersionInfo() checkAndApply() { lookupVersionInfo + removePreviousUpdates # Restrict the automatic updates to the EEPROM types selected by the -A option. if [ "${AUTO_UPDATE_VL805}" != 1 ]; then @@ -417,6 +419,7 @@ checkAndApply() fileUpdate() { + removePreviousUpdates echo "*** INSTALLING ${BOOTLOADER_UPDATE_IMAGE} ${VL805_UPDATE_IMAGE} ***" if [ -n "${BOOTLOADER_UPDATE_IMAGE}" ]; then @@ -501,7 +504,7 @@ AUTO_UPDATE_VL805=0 MACHINE_OUTPUT="" JSON_OUTPUT="no" -while getopts A:adhf:m:ju: option; do +while getopts A:adhf:m:ju:r option; do case "${option}" in A) if [ "${OPTARG}" = "bootloader" ]; then @@ -525,6 +528,11 @@ while getopts A:adhf:m:ju: option; do ;; h) usage ;; + r) [ "$(id -u)" = "0" ] || die "* Must be run as root - try 'sudo rpi-eeprom-update -r'" + echo "Removing temporary files from previous EEPROM update" + removePreviousUpdates + exit 0 + ;; u) VL805_UPDATE_IMAGE="${OPTARG}" ;; *) echo "Unknown argument \"${option}\"" @@ -534,7 +542,6 @@ while getopts A:adhf:m:ju: option; do done checkDependencies -removePreviousUpdates if [ "${AUTO_UPDATE_BOOTLOADER}" = 1 ] || [ "${AUTO_UPDATE_VL805}" = 1 ]; then if vcgencmd bootloader_config | grep FREEZE_VERSION=1; then echo "EEPROM version is frozen. Skipping update" From d94585e89a3499aed9726d0b37f177427072168c Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Wed, 23 Oct 2019 13:05:42 +0100 Subject: [PATCH 4/5] critical update: Update VLI to 000137ab revision recovery.bin is also updated from the beta revision in order to apply the VL805 EEPROM image. --- firmware/critical/recovery.bin | Bin 60484 -> 60820 bytes firmware/critical/vl805-000137ab.bin | Bin 0 -> 98712 bytes firmware/critical/vl805.latest | 1 + 3 files changed, 1 insertion(+) create mode 100644 firmware/critical/vl805-000137ab.bin create mode 100644 firmware/critical/vl805.latest diff --git a/firmware/critical/recovery.bin b/firmware/critical/recovery.bin index 50717cd2816fd6594b244472e9d13a4d30cfcbd4..6d0378ee11888b72f901e6041863cda17f31a498 100644 GIT binary patch delta 31441 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 Ugvp7 zeJ{g)_CLs{lI+cbvu{@urFCb^+4qaDW>YD}^knkYqBH4v_I!8~6^V=@)?b@?Iz8Qf zE&H=siO%;6>723b{ZX>-NM^3FdkV&O_OO4v@4quAF>$_xtX-DUDO;yYjg+#fXm*ZiN3#P&38|~4gX8rn9jqez|5~Gd;c?^ z>+gj}D#Q6YjX0N2y?k=`81W(&$WOrF=6#^Rcnn_KzI<}{DWKaoywMs3)zpo~EKxfh zdMWHT-98T7YVSOjDmdyUN(r6gh@7ut$W%!7On9f$IG)Jk5KSxe{USTnGPjU{>N_ol zMA`d#9`Q7(w9H5HeP3n|cUKKBg?6AMR_Dj`e?gsEjYOLGKj87d4bV%;zJy$Do2QeV-e$gM!kvf+pnKQMoo$u4|}rJXkGy_#!-8r{~96 ziP8uzL|386iabhNQhvl6rMCIoq)hGzyd0x_tVl;bSa7+hmkaL5-Y=4T>X^)#Q?-&h zk?r$5qU>{yM5cF=R#?q|+{tS-aAMy%tjfHi!x(?34OX*gxd9$q_EIa&^KKp*9&W1a z9hUFQ9lM(C$n(80);9i7Qf2eE`);eYv;S)7>Ug-Zm>&X9?d~WMmy^EKV9WG=!R-C#At_gpVnEH|P5D$Bm7dh_YYMys!;uSC2QW>!?|(rEjT!Ekp{n(OH;BEb$|L3H{p*)o6TQNR+)T%h94RaKe zyTqp^(Q)ik1z~^oO`SG8Vtl8@?;4$#*luMp2T5(&;J1IxOOXDW|B>-e6K4WdTB2{x z1I-4WG^6VIlYOr~FnidW36EP9id;v1bWOq^xO7n@tg&l9*MTH9c#Fz2qrl z*uUwLhC1{zP0-6W;Io7UYj9(szuMqAoXYAU7YA zFmaarj|(%aWK5!iKQ1$!(GTag?g)|Eogq?~SC&|l4v6LH!DSho@5B5OxAc=_77Ew_ zBT`CuOFZ6ALiUWi#q1e#OBhgz?aAgbEn`_BL0CSnb$o_UATS*ku|PT>D%ZamEY}}B z&%T?yt=_OBq|eGP!?P-_rom`_`dSssC-5130pC2OW$N;2t;IhvJHVi@3QK|0pdY9U z5#oDkVhsCV!+pP)Xk*fRpG^EU``~b&Qt%@;GrYx~ux6LVu)11xS8W+>c!pO=8)sda zN2D~4yi!fvhr2Hy)HGfkfT;?HS#D%QCt@!*2jT_Z2*@;&&ato69nk zzb?s8`tbV-gPV0;h2Sev9y1X1k;sNh2A!&Y#B`lrI}0;rwX%wy%+KDGC4Tm3)LQ!gIuWD&!ubD!$R9CfB7zbu&D2WT%z-%T%u`JBElxQH0 z8I%_qGn7{M!VIMiz*Y^|rU4TdBjI8sjM5U)r_u^o8(^&(tPM|HAiOe5`FLU0rH_#d zp~VQ%uiY2WjTe?=biaf5J9xi^_ghQS6|yM(5X6khLp! z7U~9Uc}$%B(jBDW1CDsW7PA4-3`i77Xk-Rr3b~juifbudy2HEC_x`jpH{NN0jR8O7 zw-nQYiIlfxk#e`}jY{MKgyRPoLgX~SbpszpLQA=UHxN3LPXZH2nqpYW48S1Ey%QZx z=}OGfvjrK7d1+vhO-WpOCZB%qnP~qWetHrruEE^~AmS*ZiD}<|=CSPC3)$@hJRJ$i zfD^jlY<>pNyfQJ1rqjYdpO}d-trD$Hr!f-)Tm36CSrAAMw;MQk00l9;M~A^?J+mJ3 zfk%d6#@s|?iz<5!aRw1nVQ%vZGc)J~>5}*b&Yd&_#RGh8YcxX$d%*fE(F#}B;qG9l$XdlI-*9!u@J zvUX0=A+;`$yQxBh>Hzgj*j31Q+{r3;sf{5RBAq}Re~P^jk{E<^#K)1r3xKcznNZWv zG9epNsnNj*lo_;O9fp2u2Q>9O)@6`3^6e=M13x{tfh5ET!cz)w*r_mvT?%U$E_f83 z!7eb!1>0`Mbk{K1ZTG;7eG?6H$sG1yz7qET@{6#)_8Zx|9y@6MnN1fzK1`CmACDo@ zg1}#igUiS*+M0v1nl?1GH?4hO`J<1vY^eG@6~wH}(yxnL2&{ zj1`2e6!iU5@qQTZ$#_@cosV}R-V^Z7!h0;<$%3KDAjJ2x2rtzo_1{}gNWM;w63cZ4 zx0>{FA8%IU4}HUPx;WhkejGoApUuaeOeBx;4WY`y{h@`0F9#Fc4WU_u&xIZ;>56+a5i)c-7)xTQBpa_&_OswC&S${l|>nCQOe1PP`& zYQh$fgDe^;CXiw}6HN4<(GV{{yb9kE-8623$Jn6q{v)c8oLKc-s9{TbMY)=gm7oxj z!fREE!?|T=XsLV4*Ulrsgsg^8%@&I8xzNllXON^kG#{k!$3Iht>3h|L<7a}y^k1tw zKTTV%CL(>M^*SZYIz*5a1X+JT5aLz%cAp>#1hIZa6-@b*pseN!r<#zQptwmJ{V+sP zR!3-Q);CTin2-#DvW5uCI)fC>(EP04Abb2%by(IAL0Mm`#81;Y)kLJP%=wBElruz7 z4hYKm0YQjY;oE(JT0xNDKjv0B(|k%%^6-jEHK7nqw1<8eA}IN((9-0q&SSxZLJ*WZ zL{Rb>q^JzdPd*k*1V6A@$B^@D^!au4JxxO~fgt@2N|1htAUz1u|9~LGtMu-FQPc*C z7=M?lvoe&R!n_K~A|Obj@F9WZK;}w^p#t#QG&J%5wryaxwT#&Vj=*l@bP{VtpP!tzZ#H;WvLQn(P?4kp$t#dXs z^JsX9`tSauA9)04xVXOSc?X%_Ux_+bU;7^`=*BbiTrGF;qFrp>Dr*o(}Sd%AskG1kG7> z(6C2TcYM}Cs9cKRG*oOr<#$t+`<1FYbR-xLRcp>_cWwj`bC(?q)hUZmv^0wzf3l24e>JL?cn7UBaq28eRxHmNCP#~DFyCGC|D4-_p4yXyc z>37UXF0@vuaV2x1&$AQ>{TH`;ZfKU(2W{RHOxO=AXYEnV`_YS5iogfmP2=X1*<`ND z?xz~v46B!4MKyX{a-GT|zf)7>bs$Iy#wE{%DyO)7p_$0b?x(8!Opx_cRqj5c#`$}K z!?LcaWPgQf&WU80>!#+x7plSAoa_akMhI(gQ$#O6u92Wrw?+ClyR8oWTZ_I$-9d8w z{@$SJ_+0rVJ9M3W+Inxh}wxW zLBW3s_Th{g?>`ND@s&F45KUXDx)TboI&T2UT!>n2NkgcigpzYGR8vBc9Dke^Y*J>o z(Oz~tKN<%PEuxQ$-C?ylJk=0D)68Kyy{o z{;puW33V+Tsw?s`ho}jn<_7gm?n0igV2Y>-nxn>TiKMI9O>v>Rc*mIzgxs~e<4`=M ztzkDL7E(Y3F%CcTp?cMD=;QHoLseDY(1I$|xGKU0^;MK$$^#JBs(>1|oAxKfbqi%V z2<(8f{R6OVh0chbYp7^<9x}8;;GCw2 zpw&RyY3BJu(mvBfGoOY{>rwUlFN6QTQrSags@Zxx7+*qVsleIpEZ0M1-JBjm>mCwV zbVZFDtQ*wt|LB1pl@hR^1YAk`XimwyP@z@m$(Td4(W5T~<5tc^kG`bFuY5_3TluaN z{g}1iSq+n!qqxwUhW*u{Sy}sFFW;(}9a@leLXE3B0BcEezE#oaj9AKjp$4n2VwcmP zkQ2L{-ypx!x*xW(-kGo8UsDZ&tZ&uate6cGxj!`1dZ%Vz#mg{{1K{y>RX1U?YInco z+!w0Zy$f0A?*2xgnIauU^Zn0+6RNrDRVOS3l=T8PECmFWT8?`6Z)-{(Kc$+N?Sno2 zuHseaR;o#pvz3i))Z)xa-V4k6N{xFK4C|W}`(RdoTk}eVe#n&Wh3V|8a5;|~^iDD4 z%-QXXt`T8!_rQqCHGzui(EOaeFr=^67%EP|g7$$~M^*)DWann5%ekAMxw%hxNVAs@ z!WPzSKEzkSG9JhCxbO;|uLy7A`KGYN&F@~ZMbK+T^@%%6^&Ex;nR<`(0iQo%o};We z-8nD6qWJ^i+P<4A9RW2mIUL>h&B}U}yUZ^kHyNoVveu<7J=4Ke^V%|%Es1aLQnD=~ zLUo%lvA#!lv$>~;Bv_k!L=3+Ub1v~>Z#Hp<{T;U=Gxt5D4}kk~@IT_#8`|v^p(Uog zZ4P+2AOHo;<+Jr5E*t>W{Szgqw ztSIVIRu<7>Fr*tQDLCUXO){=CD=7qSB>zw2AX6|qz7R^7nIhjl@I zK>xwE$+~=YAo;&tx%@1Zp?C&-=r(_ z(N+WIjqjuA0E%qPgr{qJ1%``%PL@QvSoDv9X1l0XSM5~p#g+E{iaBypAiI=s9Np%2 z^rRk~9m`e%)^~0!md-lTcVz6$-Ze%LWbdx5GQby@%RYbTMMCuI1>(XsG?pR0x*7TI zERntZ+{5JNlw{pyFW!62PGPK>y?g~>?(!FS#tR+NLxOyHGs0;CfB7$Xcb>G6fLI`; z*s*$98}|R~i%!vgwu+nvr6;}+)j8P0e@$<|LjQb(uIL33TlTR6lMXs*OjKt9-lrGc zJ%oM9;!$F&yOiRh_4abrVA?o&mtwBoRJgfllOxHQv|`gV`n|MACU#3H+HbUlkw^83 z*rrPMM87MO;lmBX4F>IpmtlC{xhp86bKEe#1z!V84R5E8vFtgkm0V?6Q2RsqXmi55&D)# zoiF?Rn=m0yr$&%HiN=qQr188JbY++ycTI`Zd%fOOWR_f0*N>00ZpcWJ9FIc^i)?4d zlMPd3?<&1(Dw*E#^7-}SnU0srn2s0AVx;xY6ubHZN%bbaY5Z^rU1@}>GC1fvu{1ENKE_<}-6l61Z`5nabns;7)3-1o8K`=^3 z&}U)){?EG{rD*i0Q~Iz&{6PszbeUeD%i!q5j6tfDj@s!g5!;7 z|Aqkqt>6+XL1l}1jJ8O{4%n1;ux(1vmfsr9tF1}WWa%jIr&!HYs2Y*Us4|}ax$82_ zm(0yBW2{w>qLEnubMCq%XlQQ#|{ zLnQ@bP%QXS>KXfK2e%`-8s}!j)g-y&)*{{-5G~EC2^C*Y3STAN0pC0Z4KZ z!+pqav_x{JV50j6lEqA9Jg22{IfZEZ_pr0~VK|0%Kiw$}b__epBS+I1Y|cr?@){0u zTq92w6zB(tShwBHUNYB{B0(g9R$`RmT?W*}p~0BQ(`DD*H~^t1TBuLmuD59+5_pS@ zQFxpHd`eHZAz+0u{c1CVvonG1=cUdblFLc1d|5O?r&&yq6!vspl*MaJtW>7fW?`F2 z3~jEqP17Hn(LV0)s$^}SmL_e;`BasXH}3=+h)JCxR~TNNvF5pz|zczkKSqmZ5>^WP1udMdg`>3acrDCp;an|z{T|JquZ6$V!ZS!b@(yU>V$6RR z0_!)3(StYG^@~s`47$5g7xsU6ukYM2eBN=-B~CG8i4i<6f;m_zVJwl_*T}(NTjbyc z3yZBr>}qUC5{Rc@ye z!t@`WgAPOLu>bM9YOrGE)oqfyh6r?3K8uK-qdQ2vMgFyM3xnj5ge&f*JQFRY?!EZP zsOFj;!n{9Cf7t774MlJx2<&*P&IRcn=kGP&9*w9xRo3u#RyfQ zdDi+GLt8A|j3^LTy**8wBX(j9#Mu5fFAL3E_qWo2 za|R0j>5LI7)zZ9VX=iA5?e>`;xo5qBXw?&*(Cospn&g^JoKd74;Dj)B#8Olgz3kl< z%kla^m~=v|V-c#+C&mbL0nru9@-0ZUUUVpOBMUOIIEf-{%Ff2Vb1@|B|LNT+X4)zY zHZk>`8$lR##7DBX!~r84s3300EJIi5OP#g#^K7CmcPm}BK=Q#hBO!?f9{YRQL2?u8 z)l$5X3=#_ziIQqC=MgOhIs8){Bi;}HSw}b4y_T3P(!F7HUFc7@sN9GB@84oXX0KKC z*d?(88+wM{rtxIADuMQ}|I$qwH6w=I&$s%{QMcnuJ9-f8f_*49A_>;MbHfq-yPdQ> zmf+wTs!Q`HO(vwesl83x(M1oPqL#W7FJL3Vya}yDz~+-&B6xH`<`o0M$*@;&zQh}{ z%if&~-FXEEC#dI;oKg5?L;RrSY-+O z@5x3h&!?a0^!=vX>aJsn8f6hbZ(^WCECl$3S6(0%Y`%EgZllnu!_sce6Gw>`w?whAlXAh}|)uK~Q0x&i^AC2POx|#cy=< z6s#a#3S9Lqsz`7nzhuvBB2+mZ<9U>7mMSurYw^SUjeS>D{j zLB~4@J2(XfLJ+vY3xtq3fgk(;Z{|cQ(G6Zi$SzP1X_f6UGuNNz9-eUh!#z^h zr2%}6z_G&^XF~~C0NwePsP7oP4jp{vE`>Z{6?;m_Q=`P5g@hX|ZkE@Qy~e9#pZ=B@ zcrR>@B~q*vyVBh_(b+_HBiRbVj}`+b!|hhmwou#1dMi0ulw&ePP9pMXwGz7%|1ZiW zu^xi;yD-^1Ox3NnG|MqNL*>?;>P*WH>|iW&63>9DmpOGS&Sp=+UKP6Q_Exe5dA{sB z0Pj;I4Legv8#N9UK(Chs$feglSB#g+RlQz@m$5@(&;>7`h%ePr)%k8NzJ>kIA%02i zKp|Ppo|7zbZnM{P9VJya_I;`@@V#4|!u~hw`=UBGbpbQtBq4t`)4i5B!QDq7DRi)p z(-x_|$q(kb*YIdxSS%NIzx?JFb7C8+&UkF9K~qlpLGnD^xM)kDy+Ff~cwW`xJi)d; zaw$E5sEibepSnf2Q^F2oNQHfccO)x849=g&8q{eiaTx&e>pUasm`mf4lcOd0`X4l9 zQ0!rUb03S-eA_UU5%xcSr^$*Pvv*eDdGO9UD}>9JGIQj}4+*W#Pll><(s+0)$LClG;+7^hg3 zY$bav94;4l&jwpw3PyI?MD+2Zd-n?_1FvsPD7Bq<&iC4^251$qq?m|~B>hLG(dKt< zCx_!S13O&I5DP@ozpapHg5CgG;t7?c7r8=_yL_jdj&4eYXt6=qV{XQ12AlHKc<0IP zaB`){T9cb)yWYdYDI3eIM>T0EgW2WKJ?$t>ZbsUE*)2Xo)>_+RV!&&$66ewVBe{8$ z)Eo%)lsUdqlke{7F1?0f0cRm_AN%X_S<^@BTSy=KOl!a zq?0^OrV}p?Dbs(cL+?oJRW0Vhvk5=q!`0^djMshg%}gb>X+0Xe;)>fP48|G3~jyeDjeZDIN|%L%zE z{t<+~^=)PIFkl<@48|Hr{{Yf|xj=7?MFmiQCNK_wKJglmCVpSUb#c6vT>h$zlA^o( zCEgF1&B7mWew)Ai8Da$j0m`udyL;9>Ho z*wN4Y`&&!I6;_Xdk)za|j&jwV#m@wL@h3ZZ(=GE@E_>~!HEYJuu>(Ehoo-LFmsOHI z_iC9FF2XqNc+zV;Fw?OqQ|C!n+wGgNXEn8G@~qMjQ@DOI(_wlG^ExF=8{32vYTvpH zjMR({ivE_zr43=f?e=<@v{J}J6G?2|l*xD8ewdeZPty&W6pFJ99=*CDGqK~=EP@;n zXakA7ImpnCQ>la)I@}@7WOGJlwvHH5aKbRP?k$zCHFoIh6#JN&j4I^mQsCp?0(o`G zQZUHWG8mp?HY+6Hh>8UTC43(nNp>KW7ZTGE;!1F?=|(#A*W0&Nf#f%DJ!&lrRhZ_k z&3%Y<5Gj5(b@JT{$-jW{^=$tCir3NjAlC^lK6X3o&-(m5w8p6csfl`fQ$DBu2_3LT zbolQ^-q;(f4q%i1O6U3*S*%jsC9?PY$Q#exhO0o`vbRS%hO98%7^5A~;07C6-}ALa z+8o7ZLp+XX*sIO<9i4)n!zer#ZGQW2w2GV@cXzX4c=Ki>ouMelJTh1#xm%fJ%b@4d zp8l-QjOjd=#9Bp(4v_WYW`h~n#)}Ddr?j(Eu+qHzY6Wu=M6Dt=OMkCS8gP(Uua@`N z+(Zoi#BOMURb=mc8EMkd#wKqLcsmJDnW!HXIcFQDwdj ztzgYSTHW4@8ew%Hj1B`d(_)}Hmw5%A&uUf`32R{;edprQ6aO4R0_7y^zj$jM=WJ@V zt#ISCgspwmJb5a-$Gco@-G6y{*1qo)q+|sNVs^xh0_Wjed4k+xF7&h z^hvut7^8aj@0|B#Bawszk4Fv`=JBHKm=-@;ID6Xxet zY!P47VX~{qm;PAJRm9w%>inoT?*DaEmBzMzUY3jw7ltcm*!8O_6gy z#mIs0-=-rY;d?cS911v^zz!zDr;=b2;P7}G6MZ`yZ0>)2OK@6&&KQRMyFaucETErT z4e6(3(qf1C2fXRFlt*V3hJzyx-PDUXO_|8>!?%+?S>>glL%9cr58j#a~c z_PhH-o;?-`)!oD9<5cao+?~LRy9{!9Sx_m47s5Cic*%@>jQmgJ`}r-_Js1NLF`{P) z&eqlC;Q$Nckiz~KKhgCsMA1zD1u$BMlAbS#EWXpOv9lZugM5SbHpcXJ#-n>fkBd+e ztnkgQh5hX}rdYvOA}>)W&UBc&a4IETIbu#%dd;-I`p(TKE#vbH`S#hex6{%*UYfvq z1h|YxpmU%lb8s>zeit&ia$0ei$e>o(Gfo{LPKV=EFKKxI+e2qFQd3D&F+Gxw}a83{*|r_e54is2}I)8gKYb3l!!B%|)KfKvYX4LQ7==uqdK zZX97jn~OY1kkRHJqSqP;r@WAT1crl?6I6O=XTzBF+4fo7p6YVSW?dQ?Cd`m*6KN_D z>{Fo9X%ePiEuu0oG&S}WP2B{nm%pJ{$lhr5D|1%IM841aipXxvrB4X^8VN|T!lTa;#HQa2RRp*J-!X`G_T8BxbNS&6(!45tE-oKNA+Cc*h)lEj-%3yT2 zB5b=VwX^1>i9G&O>^xR*F z-d@^MNG4hgqZv=jKk3xmNt}t7AQ`QYjB<=il%gq@dPTB4CpXQe9LeS{LBFZ#%B$JT zCFnqvdG@l}n)CPGVx|wji&C2MIu7&Bo)Y%&yh$V*LI)on(KvfbLUS6zI$)cdW(WI4 z@LZJAPrZso=3-`fj!k(TN6wbsTw>+Gr1u5?W%DrD9I66RlOy)>kJt%Z%uuO$_quPx z!;2d~8&2iXcQ@Nw+S5$BEl^Z9h#ad)Y2jVkVzl04fnteyIPSrsM)&+T>#dyBB&Oj8 z3>L!&*;{KS{rU9RkoSEvMZW2}FSF6%rpukYREXv4t#y@Pla?I1_{n)jLnf?h(|E>{ zs;(;0uWp+zLa(iy0a+1O7Q;*ZShfrOULYjT4pU|C(m1M2o=0uqwOwz)h??GSXSzEF-*%=(bxAoez136fO zHkc5H(;d~=Tn>1gw949=;pQ>Pq}LK|a#R5IloZ)JQcD*0j~*h%F!&xafX$LHVAqN; zV0o8lAp$LcYsR$GXCurJGX&=tt01_f%bbM1r5*E45>?_~T#vkZnC1N2J0u)oY5 zj?7!dewW70SvO>dZ7bmAv{S>X-7`m!mHn3TKsn|d!u~rqXn4l0jaKbEuP7*;xFI5F z7Ce(hn)b>KdgU0z`a2?1C!_-eoK5OGw;JyrY%G7-Ogv*Th+vSWE_|DK(p3g1`p#`Y zg03V+s}}?1L;8!fGiWcHBK1NRtzIQ&0sUM3^-Mfp4pWlO+=x`8;LgE?MN>pN&V2fVO|3Tkh0mcmX$v^pOnq3pREB1A!XGM)-7wOzz7QqZegqBk+eV6We3H$%t=Q&A;OS-6TF?Av2SsV6SKBd!Jxl*31 z3vUWB0m9(a8ig<#MEKPA(!zANI0y&!?0k|53qlV{hy8_vnXn3($~)pQ#fW(+GPo07 z5xvHVuIAC}tKf*nGvE>i3@i+03v@DuT8uW3Xc^QERMgaz@fy6s$o4Ouh!uo9I%App zWZ9I>M$yh%UGPj8dK6*g56>bDp`wV~hp&I>duq{WcEK>;u|>AY)x)Um$6_na2Iqnt z<6s}2f=1e9+Ex7v;ZOY3NS(P2;u&$Lh?Awme0LUEv;iBBo%OepTcpxyPTZ^{+AGpI zfx{|PX2z#b+lkT&Li+nq4;-8sHU(3#^eP*{ek<8__Emc0R4&=m2BulOoc`&xXExbj zaM?3*mP7f^E@DJUJcuH{#w`#JshbQ~5n^5TdD*R`-ECMex$Ngr3?np&g&8}rN~e=n z5^}hdY%~l2?y{HWG?5)?_mTVoNG7W7I0`4@nW~$%HE=wG>P;-2OZfBV}zR` zVxu&&!!bAl3}jnC^2Mvv4W=aP?bSWigdVXSX{qj+i4&7y{~xc~aN(9@FUV=7osvth zZs`!Qs5BM?B&tlmVt}BaNzUAhvFaq7NUx^C;Y}1U3v$GBA7H5T2E>r%pF zMbFt^g^h434`opU|Hwq&2RPqx$0thZ zC$h;&d~g})Kx;h)YOC)_SXJWHu>Z)_M{qkHVKFKZap_D6oNkJwBBgC|Hzw3NtO{`745=h1LY-H55}zl z?Z*2RD97cLjKl`!5!{z^g>shZY9`lEZd<-#!@3PqeRr4CFay3>OH*36#zxxzqq`3v z)$a$}tWD^y#2<7Qm7z?OJ6dhVEvNC#&BZMb(9Iw%({T^hjr*NSQzal3e9;HUvmd|; zVb~Z&OFlB_du!FWNeIhC%HZ!AfidwVGPe;=t#t!;kUuI=+zJFP&`}se%q&FKTI=DSaaBvSGn?cL` zpuSyeM+J~2C}KLeZzpQc1HrW~ajY5zetIX*iaB(+OBf)CQaY|w_+x8&X`1L*ZZOZ% z?MXsEP>lZ*Mai-K0Am3#QhuIqM~^Q8%C~^hi$s5oBK_H#wH>L^`udl?=cUmp&DWcu z^&~J4)pjk=b^A0Q?vC$WDal<2c`vV_e*%6sj4UO4Qbex}i4d+xG!oAYb$NQL#ABhV zRl_6M+oj5k0_e_Mtsmoantvd6viEn$lde*MoHSL zjyTi*nVyixG>Ko1T1?dlJfd}K#g~y)AS(4n7^_#qRPM>1`nP0KSxf(PwWGc#yJcKN z?y<-R0-V%E!Bw2J;@E){Esew2JZjanN#AP<)4wuoLWZ%v!6s`#hJ$8UPLixG<1iH} zb)az<7>RsMjWC5CBt8iRA$uz|5-3(H@Fa4SzikvdMWe@}GJyvHn*rF=w_THHnmojF5YI<0OHn9Tt$zmC zU8am-xb(CFA9L|B{cWG4wSK0_WW@B|I4HqQSrt9+=?y7Ne>K>Yny1sZhhyeoc9AsH z$|+EhUk$bLn+DQ9Do@&iHcAjN-h2W|e>sSEdqkZ^{p5%*5qObV0dHarYK;ru>`r9s zghHYAcH)>8B47gk!NStDU8uq1CA4KKz)h&td0O8TNiyJqDi|v|%NR9mm2q|6Saj55 zB{9|}%(Fz{%a8EoZtQB~7{FKMt#YHTZ>+8Cd69X}vJ(aI7>H9;tBp**iz-mid*~MR z1)2;Q6P6RJ*1s@r5^d010!{n>m32LEQB>Ri&g`Rw z%Srk$RbKhCihd7bCCe+fC>ObtXT@M0ND&8b1sZ#Kf_rkV!{mGyt%O`c>qHzgm>9*@ z4>~vxEQzRtStmI>z>Yj%rxuNz$Z5zMLN633?5)2za73BlO^uHx7C?>Ps$tSu3ygy> zrjX27{}ki8sv#$kR8e$`)jvjl1kqSC>-a_BdxA>i0o%pE5nWYjWeB4P$W^-{nJEPE zV~n}f1W5x1<+A78P6(l9kyxh_go9Hugp%&X(9cH)2W2ky4hj>Ui<=rFqg6qA(IO^u zUBke9`u(YG)6ur8jsRG2uqNmxj(Q%*b#v5TG^{KC7eZ^Cg4VAu5n0~F9tpW_j#`Lu z^tebr4UUnFn0IU+woW)0Y|$|5OgG|S{SqL04G=x5isD6M0Z>RV7U<$24VtAgr!hRoO{cV7YSt zg~omGP%n;NxykA$GYQQs5G!7~$b?umYhF1hRm|gxqCxGzD;& zGzn3!s@W8)d%@60a`=A>h6?p?EEv2&*0f;IDx$-~fauas1W}~|(a?+X;YGs+`CNP` zgovtlxpq&iDU$Cj3cD{Y(sBWTG31!P4YAAzIn0ArFvf$V%Rn_@hN7m?$6EELtbP^S!Im@W-ansvDTzG-A=7E-Yz!SPa=RX?E(aC0; zcrB0!XG}zbr{ zQa=(TVnpi3@$#z0WBHFR$nP(nz_rWQ7RQxzpEMyxmkG}J1rKgB7d&K8yti)!l4tj? zr%1&z73vk2ec7ogP_JY_%|Z^y4Uodig;jv^y_2MB=?9BjilT5?c~9YT?G&k3qDA99 z^~(8Ea$QN#sBcf*e|+6ZmwoT4B>2jcUt*x3h3&{4eFvidMfuB;k>0A1&>c+6*7jt~ zX7cYP(;qGhgJS@nU9A>l#2ptoW|+;o8exzxiXT2wHV;pPT7?{_J!6f$IW{I{JQhL_ z?}JeSLc44&9iz{N3lDT@7hWF1x-rBr$oopeBiFeMa4>fus1O(CXXfI`#{hlIo|~k- zFbf6YnT(Ke%;}WN%tN$S{Pfjes`6NKgk`3S?8)SLmWi@I558aaG)i&KGx)opRY=x3 z+mSLI<&#s7Y6AJAnSsMwg+LQ99qnRHCas;sIXh88Jj#+yqHt8BWk)l$D5E9$VVH|r zb2=3z{q@xaM>&*9IjZsHEJrhaQOK8bs&T_*_i{n7buwqSQu%HC^%vpEh?p36dYJPk zCHI%Rxdxa0=N{gfqGGc-=Op~KB{OFR&emj=a|X^*vf4Qp=T*trErfGT^6F&hpk3sH z20K00?RUL3QgaL40r<}he-fMejd3Z6#m%UToykr!2Tt2WQCA510SvX%Fzz~i^v2H4C zzd%rl2tNc5#Grw4SVcG=79dZn2znqGHE^Pk+JY_#>X6GTM#cwshJ@(QHmKJ`%`O9b z9$VvhsHWYGlT)MNA<5S39D>6$gA?h&OYQP!c<|~u(#~8yw}QU5Be3Q?#tL2b)2*zz z4s_)0;E~e-d%obv4oroq(q->#l}9a2ToiKw&MS{YU}?oIoKLngv0?mc2@M#){Tca$ zymoGW2&sa}Pm^A(Nx*6VBn@RKs-rt59U0ePia*AhD^Q&VTyzB+h!sOPuEUXb*{8P3 zpDqoaCBhpv4{Xg3#Z!){aeJPp8UhC#v|FXR=X6}N$T;bS!>CHpY2hDR0cNarMBo(} z(8dI}nskN;CXI0z#z!QK2=kCe;>n@MQ&$sM~z}t-N#jSguC?cKMXJ zhV!aXY!{{}_=oXgAuQ~O?k@zx-t&-vB0wEQ5?e%4?SUAxed_dDV9ucg#Goe(7sLqvVY{$j=#AVw2l8>_aNQXIt=o2E>&S;rJ4 z81>R88ZCh^5F~Kr`^}y=Q*W9sI94QUR`qKKBIJ$FMOZ%n{_zk~X=z1a>Aa#S)4~$O z4N|dPc9wdG~wz2S}<;8K-`j$&7>F7@Sox_dlz})2P`Yd!ZcP6j*rXy){)2a1%P(#B>8@OMDp! zz;bBi={B~gOgQYQ#VR@7aUj}+_P4dUU7RUcF{DbA`lL<%ta@<3cWv6Wp80}9GXu=l zp-FbxyW8a3)j{5u+a#e(h(*csZL+~KFJLWm+5OL{N41OBF}mmBs^2+zi^X8sqBy`b z!#wLPUPdVAtNUMN=??DkANRkGuM^a>odUiB18jcHv|>BXCz$6dUH(P{N8Ajo98+vx zHAo#|?ZP0FROeuU>$E2h9+;G@vR-j42st5WMc4eVTo*D8JfHgE3lUhOHntC?mP zjA+yF@T-hGqR50s#q4abiC)rzm+*GQEC?6ML^6b?@$ z49FM(R^s-?qjTa41E~Lm2xA6oz~9Z_Gh39ohIO^#DeCNoHTd+xc3`Qeog4sz1P(=D zRJ3L|3KdkPf;|;INJtA6i?9R5snQ~fp#fsW@pEdiVj}GUE5#l#3O-mK9$S0|Murh* z(z zIlt#pv$i_~-{Dy*>rICoY8}Pzz9Ub!4&#H=atThxZd7 zfaMHTYN4}J%~Y6J7!N5Mvj-@d(_q^Z-7(;;{$e4T^D;-*WOH_3zsNB(fwL$T6I^C9 zpM~X@(u5MFa5ptcMDTsih&81aC=C}T2pUP_XgQFYz@s~|7qa@tQIRK_vIk8e_g%L= zKF(!3|8Ero+TAz=+^IUHF6^UHuxVDX2`!-;l>#7-L=00Wc<}EXnzdodqwQz{qUM3$ z#>1~RU%TB0+xNBG8oBH=%xOCs`E0Au(5T9uY9eU*f}rB2*xKiydNl1vY-=M=d!=hY z{gihO{2o}hpaLE+{>DTU>BO8*2=)^-N?YOd(_=gTK_57zx(=qIs+86j2usYdy>xIA zT!=P=y6js!h+6KJxKAmxC7pA+LHb9J_54S8uSK81tmg? z-O`H7?&&%q5Q25mVuzPUu}}CMtb4{HU&kS?c96355G0g}SIs|7R~^F7 zXhPEI4vL{?Mhrc(waV70GP5eZ5<`zFq7T32GJ^eXH5KORCK@M1))QH}?en=O6hOm! zP6#XE*E!8)sYKuao%I#8)MX!s&6!F1NQFZY6#W6kyMTgv$~_Rnz&}B?efR#R@Dq znEZw<)^~1JN5qHZr9oz>qbF*k3CSJ8jG7A=c9)?!^fx_r|%=l;e= z=MQc+|NYUH?K6vy403MzB24qrsm#^m9{9!Fut-1fK+_;yal)`^%QGYP{C8LUd)~oG zQ(r$leMalcb8eJIJ#*FeLPcrejuinbj@Ib-BkO;6?W?<7oZWPD`>lOHuP8gbn+xE^ z&=Tqws4nw)#;)QpMCq&P8vmJLv^!0xG(3p3oK`cO-`h`KR5OfU-z2ZAG3Ec%#H11} zlM;1In(vJ?baJ0PfVhvizKZ-czVOC|iEld620FZ$G#Ljha?<*K*lCZvJUXZ+r({!2 z)dRB;05xT`m@2EC0sOQ^d9ZT`r{2hw$S*p>EaS!}&5w?opTuSqRv2Ou@mbNBBo;Gn zLUi#>Dw>y=5MLBKKaQ0b6&DpODe6;Ka1x$pcPj)T-TN*5WT%{a(dgkoj$-auYwpFDc+$H;U3CGSh*UAe+6 z5*45yRdODgKlLd{c{h;v%U|-;jZEt9lLxwBTXsMc`4KL4NYjs=9f)$b`;?=+P~CgW0!>GspfKvbLvjaP_jS-}>C}d+L$*n@YBw ztxNN<{PCpg+8-~%L{`$?>G26cRm;Q^( zJBuG~jhHd?t>0#~)ijth{ujCU?c@3T*Cijn(2*HD>YM#bk|Uxfhx&by_xvtK=lA*i1FyQPx{g<` zUcGwt>ecN2oICj`=SyIjaq>_$p4%QEavtk6{$mpHA9oQVd9rl!GS;e{G*t4uZIYj0 zr|UG6#1zTXEB~7v!6w;cBUkQfwh+QEi>>-;qtkoF7A@9{mps4d-6x2}BsPpD8^y7b z=go*^V;e^=8=uHYo}&?uS^7Apmk`rqCRDaLOgJ)$5RoVaWF^P8n@AtWN}N(fNP7%n zL>p2F;v&A1eH~`5J%O}woI6_4cE87vFeOT~BZ-JsMCD7Ix%?zUl%#GN>Li^~ZxhKn zyUu-6VcJs&bOIyp_lo(9D0%*zTQ5{1&oi2Oq)HwyOMJbc(>IQ; zqnYSG>&qmP=io3K=jF75+bd?K2zf$RM;lV#oFEEWD6>|>3!-2XC6}jOQ|(~!`E61l zNS>D_R3>+IG?AK=CSf(=UKA)mf%`QY6u1X(U$`U!T9A;tIJJLlf9R%eYoQrqVe(epko zO5oJyU*xTZOttxgyfrIRZN8PaW@oC+Kg(NlR&oU*+4mIR$3+Xgiomb=OoJd$1h%2{ zN>D>DNQv=6l0e)Airdb(3l+(8ubp*P5lN-w^Ep6GaBmE>{=;>PzV65C2kP4{y#3`C zvh}uYVTj~e!$`v4M7B4NJcgKyM_x2Ek7or*_{tZ!ykGPlArX>i6;FIE(O{EA43=*? zsS?oLJUfQVGR(EF11vQJ&$k1IxKLrRkSgd!ooLue$09onZzS`)GW>%BNlB8sVkdx zJKNliW9uf*V$?#6&q}gpHJvEUn_d?+%b=7JA6Wg#S(4{jPUqIW7b*HMo){61^pZ^S zSV$dXJCe7_taEGMV|#@#jux2g}5M2p%5S4TSP;R`=vclx$U-`Za2m*V&z(mtxxs}`toKbiqeh`qj zf9UZT*qB~&yt#g#uGC~7l* zW~ZMhSTgm3(72KDB(TQ|brC@2xrF%$_aGcm)pIg5&(L&p$ui4V%A>kqslUlbLQ+S) z#i9Y!F0-b(N6jd^G8p$Ey#ejLmKDss30+Y@4;g72<%rOD{VQWBKJVM)^w7nwgB+`l z>2RA)=oAghAYa&rlX=Xh^I)LI$n!IJcc?<@2AkUH%Dj#tOVJ4%!vDJqqyE2L*z?PO(fk`l?Crv=3E=S%FF_C@DBEJ$xi5kkebqeu+6-kH{dJoh07GzPOQea7H<07M^6K@THbIf%C;%_>n` zQ+2K#;bP~B$y1fi$x}DAF>|8CxDDJ)%v4fu5rsr`fsLb;Zwjq|b}&e1Ij-pPq&9YH zTbp+3m2KCTXf2GmAMaBXSDtp;FN&QbeLe`(g@hq5aABhHHGzco88w82h`PQsJhkfg z-i{Pv@S9J9$Zr`$VSQMo&?Njr*e#4+hm|Euo)|gWRb=*ZWp@ULb&$jOO1+aMuD(8^y&M!NoJCi^M~>y`3Z$)Z?| zL`qQ55?Tq*67|GwR3uM~Lo^U6T49jOcDR{{`UZjZ6{7ajXr~M9&i5g}A&vf8fW2x42?l7eZII?c7BH>$kmK9|-j5DvdFy8WfM$#(>At4T;(~`%O z8ARdz%wSU`XzDkau_E!Gx)lf=Gw6u^rx)pJFJk_y7hM^Y08?(>CO`suQ4??DxWg4BQ{TrCiB}{~ zPTEQ?Q(Q<$-)XI^#H6$JG4iFDVa!T7BG&1u;8*E)2}$1FCMp%{^(h$5l*26`@7N3~ z)v*G4*FWn9l_{yc|+VVmoA<7C#sWTP{tq&9c#jVF@lk#wprPLH!;>I@R}wj`lIsh*?rRtU^i{zI~F7uipW$P?Vao4Mne4DZyZq#G0#VcTN ztrb)vQjCJxi5a(dj0WA$&-;z_RR-!fmjj9-H4@{RDW!pWi4by6UIZrG6A|^ z>-q9X;x1I`_3UBS4r2H25KeYZi|4V{u#yf4F=C+gwOd&z{?FJ)EDd_Ce;D0028-*f zL6IG(z^({N(In>BZZw%0!wB>{{q`8X#h@0+vv4HwhtP&Sb?G4%+R+QQM5MQ<)O$HL zkvk~=C4NY0IL2T$CXVEpg)S^1yn9jq)MEmp_5T4QQ*SRsz3#(}gw|Pv+Gi_k?3{Op zm2*!(JMNxGvvac#nI2vf-;j+7GyWk;3d zaQ?B#Qcv}B)Uh{B76%o&ZbrA+q|p+L2`kjTFCV!d`cI&B+fA}>58?dp-k?P))gm=% zMEXJ@`*tAx6*av;O)p3KCrFpbe*_i_jNV0ai55NZX;<;VI-kaP4?@k z5%Pw?j+qZ4=h$BYfl|z}(k!5?e^O|Fhs)FY|Bh5}lFACbBZxansmBB;ni^>R+YLsj zA7F&fM-b^rE8nj(K-BTA|D3mjX4v85W z)oiaRY*uyIn^7xJ^Ytis@zAt{ucPROx+|&y;g@Ro&nPjm98 zpcKe_8k9;=h_@L_sZDw3=<9@$hL%McSuEMg(Rl>+8Fc3RSROeG>?T9Fg>{E^n(Um& zg+(QHB8TL8FN1chF^ban)KDu&YX*x1X#DM=^pJ~N}qn!|xvZ>H6J%0*|J=c+r zMWbvg){6}J&0z^8JQhNY@&N2bt1ag`Zjs=}{&XS@R?c;V3}n8HcogDa4Sc_VcnIQW z2jb__$ zzVm915+dftKog{dm={Z=2!(zN#%ITJ?Q7&#OBQR2l>crKG7rTX1Q8~V2}F>at1(SlYUt;7!tKHR;AweHy$OH8cu5{MGq%^@|$h zRA95d_lV^AooP#MtoV2i@AqI<9P+*{aK|K)s|snGR}l!d`Bv{qAxg~7&CbbId1P)R zRXIu{?^n0%jDH?Vb{!ps+HScZYc)z2#@=FCaZ}=xM&(Q@YWv} zGw`+`K4RdlGcIJ{Eh$Aa@D`c^rpupcvB}Ta7K8&KY%Fw=QPE<3Sut&ZuvXfiz(C6d!6y2N({9qH{wT=JZ7TGh!O2O8`TaAI|Ky~+`^tT6HF6q9Iew~|2X z`+bzWahI&vnV7@nF30eM1zok#L%}UoT`ClggqVU zMDJe)#q3#CH|SGf1`*jF45+vSw=Ghzxq%5&{|DIj^=Cb=Rx z)1VuPU572u`lI|*@+jt0`LD^F&4FcegjIvj%>1T3#$8jSh*zxGw=YYJV|M@>%>6o-><)bx|O44ES)ofyz<{EiX_>R#7P+l4oaF0rVrg^%GcEfc_iM0;RCe!g?@xM4Z|I2rZ!~Tn=9ct4bIA!bbnBn(?EdulM zNs$)fEf=8Uf`k}32gUA~GpH5ORcAt&ym+{o%?y(phbK+{r-N40hCExH#Ji(#2y#S) zEwz}Cve#Lo=U|vmBg|_Iwx!Kh$+L7st)42gi!HRwO4R!ibR&pBr`$VyIcs;yWh1O< ze-58gb#=#e#d_>N4(AqoUYOJQGd$kWpXJFX^1TB>1D z3mIUcT@DGhKvrCi)3YkD~%!t>BbHemyN^;vz?tniq10VFb>9655g^ ztU{A7|F1fy4Al86)YcVB>-;iQ9yT&%s3DYDhVAm`{lb<}bnmq#H_-a+H7W%IttaK` zk(-CD3tdf@Z1g11`pUI0vZBQ=vOh8WBWF4)c`#JgrdR0+sY07ir^@x|GsD9|*IN{U z5t~HGQxYP-n|`nP%aBgn8cUNmt(@J#2}DeSu{F>deNE2INMhd(kt;IlS%+QzAY&nW z#U>BWgaySQzn7W7=3jmFo6I=I{40YAhfWOPgeW1)*wqn2a#F~?2bkqYBw4Dn4SlIL6bjqKEnIZ)!pn5Z~S#<3GCR)ulm>agfAE-Vw6 zUM8ht13K{?sTV8pydX#Bq?RQK`j*6gU5l;%ywaG*yRC|@X|Nd5({?Yp_J}xo#kVJ? zPnBR44z&K#!?cCY&#Y-WLFQ~aLGo;qqh}=|#k{p|i4&spMg0=c>v_FskyqtRatXhQ zkB3o;g%r0h*FsqH<|sT1iM}NZ?Pd4tTSnlS+RyeX#QK;s)iGS7jnO8Ku%#txv$VP< zvzQ|)CyJ)N(^)k2;BoR{?1lopbV6gfxk z{x{IOpt$PwbAZfb{cMYD%}rom4U;G4S{Z}9B=;S5Qka}H>IwF$QU1fIVb1Zywa?%4 zJQvc7&FEwM^<3{aL?9YpxSsEgBFuf~l#LOr+&^ll%OpCz<`CaTXSZ2T^cr6m6Elj( z8pqrhHD=IQQ(o-om{BZNfhY%Cx6vHhOZej(CDCyprb5%3oz0Te1DO>@FktF|w2C6p zdZ2wV>l+Ovq`iV3bT|)`RyYroRiqtwYjK+Qt%_89PsKL}o(??it^)~+?FXy?2OtHI z2FL{D0`eEzy$Ka|uNB|`qyW+YnSfkCe#H@k%}W*n7Tdaso|LD0e*#%G&Rgr!(2UaA#1)G8Lx(d8WyQx3Bpuw1waJU0G0vj0QG=1fJVRufCOj;v;cMh zJb>MRJ%GJ{Hb4c2Q3TWgmI3Mj^^0Ao2rrF*4FCzy3}^xD0C)hq0eb*@0d0VnQJD{L z6!1FWEr0?z2{;XS4{!$X5#Uq67l1Cnc|b4VBH$9>Wz^+!Avg+n9q<-F0h|P!2D}G2 z1NaE=Dc}o07vMag7jO}92~Yt}76CPYWq>+BJzx!>5wHOu0h$3VfE@r2U^l?E2fg7W~s z*y-gVGL3i|@zmp~ui$$FoRxEUg$1l{CWGgaxJrbJDn&=PfO4ewC-zC!=`C8o`|MG8 zE}6mmoRy0A3z$L-J`3RSYltje2-cwM_6AzRiR)UT)h&c|-T&(FmOW(XRD~KfQO6!5L#XQdIt=_T<(p!kN?RE{e1Fo5iZ74>IsF{%!J+8Q&f$OC^qeL{3 zcvmh>Z+0P<4K4oAx=9@yW3_+qRuO?)sqFj+<-_8zKX_W z)VMXu`HnY94GiR;V&P8F!lT1;Q=?M`eaQ6vgf8M37s|)g%k;z}&^qUbdO_FM0=xpP zKV5?9TDvNVb@K}A`-v$$a++`ntnV~waIPB7pk}7`^zR8NIMNc$B`|Q>Se@K3ij#PS z^O=$-Bh|$va5NeAr!{=NtpVGri9B@)3bbZk47A?35NQ4CN68ZcuMg`GdY<%72(}do zL|gzH19fnzTvfTca>dBnhaRfVgd(7BL*siW6KOtW%eA&lcdqXFf$KtHjP%$VvlWg9diJG8Wofo_z z%V-|$_L@rEd0X~r0R*IBG<-@$;O+yewY=9`?Q8@f)iI%(pj z7^oHX=!!G)g#gltU+ z*7bXyn$c(;&V918$w~VjwZ3T#e5iN{ek9UZ_kC%RmL{iFw6AYNHtVr8LO(ytOJhmX z;p6T!rm1~0)Aamgqv*DEbxa|zsCL}>)~58X4v}n1YY>`&*5=`?wn_lwSrwt*l*GyJ z&DskOh(Q9|bEA-s?Jir0P^gtmT+b!Mv#OeVF5=lF&ea~oNaBd%(k_+P9v{@zF%cB` z+#-na7CMRa;uP^I8^Ie}xw&vZ_)lLgc{Y(YY{1~GK(;-6WyfWOi2WvN@1M5f;mW!P zYpknltL2{Asq7)kt5I|2F{&Xn)?TA8R$Ljy(_wmH$dmI)w9V}`WHz<&7N%v^NjKp} zj+s7%aNfpD4&F$t6!LZ9kwv7%jKk|>QLHjduvo=$7Axk)o<8;D6Bzt4R1mXp)*NUx z_gP^;r4~mK>Aw$MZiy8$#Y1Sp=28nihC(>(asM0VQl=`=P%6e+sLhp^Xpunc^WX89 zABAK+=7(Ob^6YnyB4rFVJXY>`xXAR!r{XAOoG?|GClFDqmXkb-hcdhlo&*B_XN8Q% z**SojDJO)0XmBus34cl*VR$pnzzr?^Q*{;wAD$FwT3i)ORf=e&77#bTY5;)X(HKNJY z$=g+cC>E+OwQ4B_gIh@0J|~tit(NQafej+Hd|xM?OuLzA z`rgNzO-pCtg@i{S&XEy+)_aR5&zV;&M=#7{GUXWyhiXrn8Pq7RSmE*lSlLh z_ehv&iJ5_&kz6C>=_!*>Ov_ts;I`+T*7v;!ny?|+EZMVmZLlK)QBg4!CaNwe8Z~xG(ad>zy`jlj#s|^eWGy|> zIc*N-wkW4h6zA#GW=NZUQlz-$gf?Q{imw!s$HJFlsiM_+gd}`nU>hWCpq05fJrR8O zr<)=ge)DD}!q;xnqQ9~ba4$IVw4iGmwi0;`-=ryzS`KkK)!FG`ThJ9VAHtrp=MYZ5 zwJ0-T12gzVLOwH5x70xETi+0{Kb^^vr^hT$ugG*IK+mAf*TF{c%nhc!4hIg5+p6f* z&guHd9t>{ZZWD5;@1g+r7##gQ^bP6WVlvDC<|e@9wCG-4}ov( zyXAvmwb6-sQRqBVzTF&xLoWUDq!U{*4HBnN1GW?GZoaX`;x)1o{}(7r)(B-sx9n3=0mBLca zqAeU;)dn&89-IXW$d;i3vU9_Phou!{yY3R%q3IWVX98gso%BcKs3flEUJD3EmJ-+A zR|A6Y#ei=4mJ=s4wH{!apJ&PicT*`mQHJu<+jCR zA+OMc5Q7sS;@<*NGh*RJvd=W2!#Raq0se4VL=_=(!89DPafjgs`bhk$!l_y#ENn9b zI8ntLL>(yk;(oE zS!PseP>lw7`#UZ%|0xn^6@Foa0xjA1C83CJGo8VrNE;x&Mnd1ViFJhQIXaqLbDH=b z*tD+AsDkDxI=}u76rK_ad zb)w|g!?vG4N%mEf8C4--7%B_d86++=JM_JPXEx0f|89K3RQOoa3U-_3T>*%57U3xT zPF9>#>GP4XXa$cilKMru^JQpN9U1J}{@JNq3vJR#(m{N@p%H0Cie*3P4@3n19B>f& zuXW%VjLlYK;}LFC-xdYps%niI2}{&={*q?r^?r@?iGTmm-v*eiUw-U1m8yso@Np8a zxc0q%ONU832*=jCi10T|BRIE-_QkdDgSK|lRA@RsqHKt!q1ruMbqmYrLUgIZSC$di8_eIK>rd; zy~si#4!SdHk4Yq6fWzIUv~!#FtL&OhBTMRSlSOx%Mi*PP*=0E3H3-;_C^dQ>JDh?e zRw8u%MgNf5gl1VZ8-cX@NvOG2U#MuN?)S!+3Y3D3N&~a?p94*v>Mv896h-*va9RO= zTAA8)&3egJm|8_V>xC6<-r+)}!(@xM>k5x|7EWTJ*lvc`pk#BgK8egtswM=DS34^8 zx%QaC+-$1iSh4?u>fB!k{gyf^QaZsqp@fl=m1p!@K&7N|iBd^NDZ+R+l+a_)!e9qX z4dz5_a||V{^xgZcWPGIjF-#7RJWJ(fG1)mJ^T zrgpWp=E0>)Ygb{V2?5%;juGgBdxB2XqW)d+(=aGHlzfZ0ruv8pr#*PE*63y@S*cczj!1uO$x2+Ri`zKD6OhOw>vCDQ(*a0t-A}EtH4tv>@ zUCFe`{;M7vDvqIRW*Zv(2LYN4{Pr<&pJ8Gh4lpDgEIvYIbVBCUu6l6kBZSOf_28NZ zS3F=XE-t-y&aB|EKaPBtk-j}FA;ltVP^y03aZ53w&gw`O9-2C?Z#O;_$$wiq$aP9p z3vt*Zbal|<(Vya!qb(%R`k`O)BuBA0I&C40D0yZAu@D7LeRri5#!!EfduuCe?nZzr zI!kXbhs#JM6bJ@85k|CimqZZglNX^kTD?-{S5U8czrd3rAXufqp@9n~wyyWy^yo;W7T$4MIK)c`d&4H!90#J>jW8g>e%;P%jlU04+2v*H9X(0W{6xh&DOsE_k*$ZUdl zq!+tX7HTxyddvhaV^*&(lktCqgJm|6ZYFhbcbfv!(PHY=Pe^wu^nbc3gL3)HZN2}g zSP=++&tzF>t<9(v?zx$_x1)OlP75@57HXjM9mW7Yv;FMr{2E*t1MHE-n!>s7w9o;kh=) z;e*f)?T3$&#&NrZ#<8pq^2YN}L?S1D@u1ZuF||n=$RE9={}D6h>Ih)uy!r_C-W&2k zN-IbSx8*2!$Gk_V2O_46AAFI|9ft8zGO6i-)@RR)NpP!+px(ljqv^0M#=eU_X=AAo zcJ;6sy+RvTu4KaNc|-nY_{1G@p?Zybh{AjK>JyJjgvS=H>nIq+N1J-(YnqX!XQ#1f zOzUlfTVjI=n|pzt=e~a{6q`HAvyRc>0R47zKZMi$)_(4*j(-xJt>8!=$uaAPG4AT` zXqleQ!R06OqpK1T(V)6}5^bP)u%dIKU~2SPG6* zkppJzlde)vB%1p1O^ilnB`7@{RZI$xvji*Yz0zRe#7ZF%4$dqTA6)hfhxe&^{Qie< zTKUbN<*J8p@Q9^`7b!D=ze~)*>Jdq>h{Y;eDNbn^&fpqm%iZ-qPEfgj@!xcCL zN6@*^93F;h{`&K;5T5?|AXxFibpM9i<71IuyuQIJsblto}IaECw}*Y&-ONn-Do zFyo>u+U|CjnxQBHQXRe7+aH{My1q7KgDERo=cWzjM$j#{11VRcgZ*26MGvR7BwblxOz2}kSkYN*R5KKm(>rhuT3A2*lNT@Z!i*i z=C0lpBqFxb*C=7TuAA__P<{XB^);%1(g{Hh{4QMU9xc$k)34EcU4hof8`M{s-o(TW zh3Kx1<#_JLJ;Kk!iF>$GFEGdx_=UI~3IiVQ>R5&EyP}zHX&eZ_U`tH=@2O++d00>w zqlm8tnSK?n1$hVmJRRZh0~DpmYe9>K@uqxcWs!^8qn5*Xgi%3zd!is#zoUKw*z;b* zI`?6LQurZkbRR-BgqS|}ts8sCdhwjHE@D64+$#dDW5091$dXJktA0P8G$jiuAf}qa zs3|Gm5l~?2%sGVxGnd?3Jh!+k=%1&Pw>N~jdVkc4ZHD~crUL@Z4+c|vMz^!}1geWyZ%Md#6jAGzM*S+gcH zekGNVY6CTAWjecu*t3KxNCMn&#!@JGel%KPl={DNa05BMLJsN|=Aw>a z2hl%6ANmBN0qtuK)MmZ^17Psqj$wz4qt}gDH)Q7(#fidmitM7=PPf2fiC9XAKVL(qNSkqtL0v_=e|*p)Ke5K_ z`t(OD?wp9W-1HjQYlTeesoaDPZ40F)R>uFVo*ujeS|14*EgI3P-qnCty^;8#BcR3= zMmm+A=Z4@G!f?UpzlO!D>e$`UvE(9wH6(|ih zMk-Vw=SwtLT)R3hq4JB7F`}d0K|;mDNS9y~)hKRgZ8pqfIzm(czVSnyfxs+OZ=lZB z_4xYlTatlDR=8j7M@LSFHsKo{@8;s+@ zC8a;oJG+6_nLmma+-O3>4M_~Fe1}92?R|;l`BzA=>gNWkcGzguHDst|6Eypr^lDPA zr>@%6C$1+%^#o6%sCy7sLL@j$Qm^oiTfEq;Gf?Ro|D&A#aJg%GXcaVn(dJD2iY_uF z&ob>uIeEp*_?H=jqtJS5B(k6VVVR{8V-|DQm_3QQThP`pr3!wbQB_srt4B^&T$bty zkR{h{k1Wl#7P&$daU|LKF=P$ycZX0EUj89b)~ri2-Kmn^T);VmT(Isw#wEgir>WdEW0aLi~Ew0qtA0jqD%fYwIlVy)ic? zxQ70_+EJy?v2!i4C6elcw_Gj!v350xCkb9u&|x6B&A|BgqWe6M?7s}3E;RVk%`6Km zQVkOthaftjC;Y3%QIIIuYxSlXnwD6U$C!Hx)EZyDtH!5MBW3G(E{ymhRCxwf(s7vx zT+>vcx>3dTyIbLULUxvR`RYy#uw8+Ex<}@^)As?c8Au%DK`zcjaF(M)glLDaJ5=7CZ;&r zxmsLGQY>)PwB2)O5Q1egP$mHv-$a`uwFVnX#^0+YM4;PBT#SOV>&@U$d}zRWt|Az& zcJDsdWvWge;8KC9S?y)j2y6xw1~@YcuU|chq zg}4pz{fH0ArzKn{@fb?%IcpHw1cTeGFurL>n~1b0&eo5jd9o1CKzs{Ine$I{mgu&j z_WB4XE^6Q;iT)TwptbR=T(#le>3QJ>H?NFJ&=^yTYiF&$ZOPyNN8QqJLU|75=D_EefMY z?Im<3%*9Qk`;b~IN;Zm?M!QLjb2bPuqQ>_Uvy{+H9u?mdy*96_F~12BI;pfm5sp-f zRvd(-hE^JlJ`*YO_^B0Bj=aP?ZN^qBpFs0v{H4I0Hnsb@m6BV4cdST-=u=uEeWR#D zfV2WNZ9CF>2Zmq_x@f;byV$69vE%zOE)zXGfdL+3#EL%R7F{N3S&AW8SWW-5)iKph z(x9&o_R(!a^MA+EOGkU}b+T_RS&b7OT$2$r+T-YLo|E&X67&^Hkx6&}y)7iGP}+uB zLnN(2%bmE9XIYK3Ty)x{7m80zn_9f$+CzuD!}Al&B@Y?R4zc&4gWlA9&KxN=Ok(^u zt_K34cNmNI)P`Ptuf$krby3$%P`W1qsYle+;LloID*T!DQmgiI*7sx3Ny=xmlT=m) zJE_V_7sTXkVYwDK4amwnlk+p2J<$~Jif8n~7e~;`t zLfXh7^1D0#!tgeHAT|cWP_MES1DEAO)ESg5PiW}r5`NMIgW$$6IZ|o};Gg8!D zZW>uKos`dFVcBcOFH;-~-3(69z;3|!Mesc(;H_(P#LvK_5ghSXHN+qHBc^1_oTyvh3Z>WN|J1)7B2D9Z4wu1A^sF&pLVHo``$p8FZ@BNzCyK=H0RQ4PLnc*5-n>Zfkv*gdQMucRzFxl^2&}`G|G7x{ z<+cPZIWn72Ekb85IdU%>qKgG>f=+|BOZ2WMZRAgAq!`P^Es=rk=`prpzowh~>Db^0T2Fl? z*FPRte&L)OJNi)7AD`~jj{W(feC6>Jd3ek0F*OeC!`afuh`%wGkb@T>92VB( zCZ@>siMZ*+^^(ivv1~(@jj7Mdl05H1kG>d#70L6Ce5_@psff^RwYH}&hFk;c-^f3- zB*86X(AFVrQj9!$YZ~)_T)j1U$lQPpMniA`DVeP6IUY@}Y4I)Pa<|02{da@_Xe z%ucyr`$qlPZ?$Oj)r<0}?MY0L{N46PmnokR_m7H6gs}z(RP;y3aNkDc`XpEgnw6Q8 z3KcHdsi(JPw{TwgQZ+4e>W z@7US@;-GFJ!H(F_e9*!)(u?aE-b$oK4;#{PUk-n(m9wEqG(ocQq5eQ<@y7OM$q-ypxg zYtx)(FK~zHKAc`KWqYNk_o#0+dc9OUcan{;wQs<ye<>#IpG(v;VcGgx-^K+5lXV)zxa=A0xtTBn@M^H#KA<211o&<_0xu{g;%S3l*UQ;QJ*f_Y0d6r z_WiHr^xfu=Gy}QTAMfr-GRUR7| z`lVFtk7vZmSZi2lU?85nf49@saZ40$kA0x^SGQmYBc{4IbA!z)vN(UGJP~MJa*O!e zz<0=bhbInn2YDjUI_Z`uP%$Q)p9^_0;rxB-MSp4lO%m|+Z&IS$&dkuZ7>i(%y2S#s z$@qyPZmX_jv`!p?B98O&%%@UpLvE3624#xa)nO$K5ET!yTBrn-s3ZSxbhW%LKlM~< z#EF}CW85dd|J2CTPj3?clQ10JjbFk5ew1f%_zDkh$aXpL=^3tlHznMM4&H!fdllSq zwx!W!i7Y&)tc=)yfxg+s(|cmhw6%3N&0Md7|5u= zDOPBv^e60+1O}ab^&DB=Ae>TKh$Ku=Iy0+4hCiIU?NpE~NNTRObMlR62In6;r`u{M z7Zfe-7amvWsq8<_c?7ys)e7{7l62rLkI*1Aq2g2L=*`Y-ymg+FXYZ+r8A<}Jh28w{ zF7Yyi05z_U>y}ULu})~g`Ewt41~TCwX+yXlle$Hf{KVe{B2j8ni!GH9>&{cJ6L>oy zhgM+RW%4h-88i{&-BWTza_XUClNlOw$pz|;x!uf*I^5;6KDK83>JeWnD=n+XQNM}H z=jZ{=s-$dCG|+m~FXulyKDC7u)~_13Hf?kL+VKr(Ont+6dJGvaJgjH8>dJ8-hGXc0 zyat0!-v6v~)IR@hf5AuMqqK?ITy3$okBijWOo3L9zpKN9-s#WZ&Jza7!L_%@zdSog z&VDY1wcU~{o*TxVWaSOd4U6yo%wWmY$KWUOGWEiRzPJD9Uk{rxmE@IeL(+M#Cv%Fe zv$HUdf%n}iY;>@hNv4h=kbHElP#r;ro?8u_!N%=kVq~R_H+~AD1zHDn;-;n|pJ|KX zKT}rXqxs4GyeYGnNPEF03EvWFH&j>Iynj|m^~x1XAABHvP2(C_-k;5r*~Mk@NBd_F zA%*u%n_0A^Y}%~ixn%{jN+)EE8l9h)lRIim_Acgwk#ybhK%pyV3HcsiO*cJ8ak zX~B2A66*-O%P$^GWJQDg!NFl{O0)d^!K%_7%|yBvrl@>9k)AdJ!iW?XL8N-bzeoD_ zc(;e(7C7E{Ko#Db0o^d~--4wfA8BP%%1W0^qm~!zW3L`LG{5jw5hX?A}8sO4cf~(OeD_`Pe<8l-uK16L@BL5QMaU*1wf!f7L?V80AWp|Ob2E`% zM%*-jVIsb_4}4#b%5Ee6_+9V2?|R>V*ZVCyk!B}C0Iej_!g~A?$x0WDV~7}65NVa0 zNJ{|~*+kj^h{_?-Sv+Y2{6->O%7SqXU_}M_bBL6SGDQpV<813-qze%Ce$ZFg_^dtU z+aOBwOGBL}*KAq&`R3y5Gv`&*y35{S4CI+7cC4+bdFO9W-8cBw)800h`$XAWeSg{a zqin1m_h9&%UGFxBGl%ZK|M~f2ZuBe^3Wp9l{Zh_zfB8%O=g*(p^k{L~Yn^YL3t6-% zEa9tjdw$JLTmRZSIpMS4*!E0)!|xmVW=bhJjDG4HFKzzz%#lCxyPlgr{DmhT81~#h zH+`LE`*!sU*1>;>bMZA34)(8Ys$2MQ>9_T3>t9{jIjr`(p1t<>Xa14Bzx1O6gOi?` z*!Ak#jM@wLU2(qn!OrgYKN$4n=wE*~`lZvwJKi&|){Kpu6+GZ-~KZ5sxGDaLP1;YJ6C5J`OWt6oBkh+ CLqN0u diff --git a/firmware/critical/vl805-000137ab.bin b/firmware/critical/vl805-000137ab.bin new file mode 100644 index 0000000000000000000000000000000000000000..8874e54c98048d4325b78831beef05811f6e4eeb GIT binary patch literal 98712 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 IU!%bP2j%Ny-2eap literal 0 HcmV?d00001 diff --git a/firmware/critical/vl805.latest b/firmware/critical/vl805.latest new file mode 100644 index 0000000..00b6cc4 --- /dev/null +++ b/firmware/critical/vl805.latest @@ -0,0 +1 @@ +000137ab From e559d075ffc80a7a98c50a42413e1af2133c4237 Mon Sep 17 00:00:00 2001 From: Tim Gover Date: Wed, 23 Oct 2019 13:49:12 +0100 Subject: [PATCH 5/5] rpi-eeprom-update: Verify DPKG checksums if available If the rpi-eeprom-images checksums file is available then validate the checksums before applying the update. Add a -i option to ignore checksums, this should only be required for developers or people who have cloned the rpi-eeprom Github and installed new files which are not available in the apt package. --- rpi-eeprom-update | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/rpi-eeprom-update b/rpi-eeprom-update index 359278b..49f39b6 100755 --- a/rpi-eeprom-update +++ b/rpi-eeprom-update @@ -139,8 +139,20 @@ applyRecoveryUpdate() } applyUpdate() { + checksums_file="/var/lib/dpkg/info/rpi-eeprom-images.md5sums" + [ "$(id -u)" = "0" ] || die "* Must be run as root - try 'sudo rpi-eeprom-update'" + if [ "${IGNORE_DPKG_CHECKSUMS}" = 0 ] && [ -f "${checksums_file}" ]; then + ( + cd / + if ! md5sum -c "${checksums_file}" > /dev/null 2>&1; then + md5sum -c "${checksums_file}" + die "rpi-eeprom-images checksums failed - try reinstalling this package" + fi + ) + fi + if [ "${USE_FLASHROM}" = 0 ]; then applyRecoveryUpdate return @@ -283,6 +295,7 @@ rpi-eeprom-update [options]... [FILE] WARNING: This command should only be run from console mode in order to avoid conflicts/deadlock with dtoverlay/dtparam settings. -h Display help text and exit + -i Ignore package checksums - for rpi-eeprom developers. -j Write status information using JSON notation -m Write status information to the given file when run without -a or -f -r Removes temporary EEPROM update files from the boot partition. @@ -503,8 +516,9 @@ AUTO_UPDATE_BOOTLOADER=0 AUTO_UPDATE_VL805=0 MACHINE_OUTPUT="" JSON_OUTPUT="no" +IGNORE_DPKG_CHECKSUMS=0 -while getopts A:adhf:m:ju:r option; do +while getopts A:adhif:m:ju:r option; do case "${option}" in A) if [ "${OPTARG}" = "bootloader" ]; then @@ -522,6 +536,8 @@ while getopts A:adhf:m:ju:r option; do ;; f) BOOTLOADER_UPDATE_IMAGE="${OPTARG}" ;; + i) IGNORE_DPKG_CHECKSUMS=1 + ;; j) JSON_OUTPUT="yes" ;; m) MACHINE_OUTPUT="${OPTARG}"