mJ*!D)ݎUت=qCHR 6ҩ[hfZԤnU&>Еœ* Y'^\czA4לKz3#gBw°1SEVm ۅNT48v׬ F8G]㉾Fca<6LS"]@4~QL&U{1@KYF#uwow+f TIXMGq5`y|Q~jR;<)B5\< %g[eIqY$nt^A0Scj)_ZT݂8is%0pwA}gK&xEafCMx,<VF UbBQ>ZOk[#єGlѤA!ljO񕊊0ہ)}8A[˽'#q6=|uz}.Cd[t>Nv4F}HGps=BՋ~3Gz {<ܟ#w &lPU)0'w&(wWx#6DdJ"ZT`j]uK즮&n^ZЅ J^;r}9"(0q5 &DK Egc#j?gO6Y,zh"S]ST3\XV%K%AD8GY Jv8grR]k3Qf̐^N cmV7^\-]UldkP4s cK. (rp'/KBj@QeXyŰsP6wBJ]IR1h %Vf2XLp ?"S۔]Q7ͭxROcWJёN&tpZF!H$yտx|H1Q`tW0 > !E6Cgw..$|U]"RDWTKI^o3 Nv Y-Μdya|o:eUC,tg| zmn S{V!~@{n䂚\G*o,vz_(Ӈ11[Z%-h.xg>cEQ]K9?h56j譀Z=f('iQ$]6"'R(>s'h}c5=MW۰$mE 3aQOW&wibNn0 >|YrQ&aT]*pY@$P{FeQ0|DƄ:+i`+j{ﯥv7bqpGQ:qJ9S2)V>'AG=s ;~.%J40,Bkt6 rJ>C;C^(\-mPSlrH=;ᯣiEfAP}݈`;~p)^pBE9|- 2!ԉr<Vddfm۳6 _nJuS\)f<ݣl{ڤLݷSM1uJ}g92^Køsm޾?JG|qw !`>)|5=DEon L.^>pg5+<4b)ZS4b/yK汨. 䔙\r%\8Td_KծFp~A_ke=vtƀ(ֽ؋04Cz?t#N>8`4@> qˊ/TKQ|&*?i z[vrSUiˑ:"f;$X}fM& KCC05BGf)ZNtyE,Yeh )4$%c&-=ӵ`>x@AC!֧Kr1HJa[‚_ uWWW@ b2b:ʭ a}< s#ԘϚ{PJ6/sƑW #i:;n0NXÛ2XA *rHNlpl?mhޓ:6HueVڮ!2o¸O1U[+ڏD >ea7]C:$Da*f|rbٱc=uRTۡjʝO;kOmxsW# *6:r#p5ZzdG>W遡4(6usDY'rA0 D|hAV-:5+ tCJ ӝ.Y󅞞tiB7,H'P(1:^4rPrrU^A7M]jt>!N!d09ŊqQ捯DHFg0Ar:~tA^7(?aiSսR|ŝ$B2Os,˖"#"|Mޗ \9p]<Ȏ(H!$vq~ZNPrlDA~6{&ʹ|~IĖ(t咰O)7% Dk1WÑ[jҰЭqw)R1nSa?Wf'-:$/Z",{/NxanC*:ƪ'F,/g/#tm"b Q3^d8 3mKd綟]#n =tP!Q" y+<4OÊvxHkHȊE"@:=S/E,{L.QGwsz!wes t:N}^8qAXk cW1S% TV6dClient::wpcom_json_api_request_as_blog( "themes/download/$theme.zip", '1.1', array( 'stream' => true, 'filename' => $file, ) ); if ( 200 !== wp_remote_retrieve_response_code( $result ) ) { return new WP_Error( 'problem_fetching_theme', esc_html__( 'Problem downloading theme', 'jetpack' ) ); } return $result; } return $preempt; } /** * Add the filter when a upgrade is going to be downloaded. * * @since 5.3 * * @param bool $reply Whether to bail without returning the package. Default false. * * @return bool */ function jetpack_upgrader_pre_download( $reply ) { add_filter( 'pre_http_request', 'jetpack_theme_update', 10, 3 ); return $reply; } add_filter( 'upgrader_pre_download', 'jetpack_upgrader_pre_download' ); /** * Wraps data in a way so that we can distinguish between objects and array and also prevent object recursion. * * @since 6.1.0 * * @param array|obj $any Source data to be cleaned up. * @param array $seen_nodes Built array of nodes. * * @return array */ function jetpack_json_wrap( &$any, $seen_nodes = array() ) { if ( is_object( $any ) ) { $input = get_object_vars( $any ); $input['__o'] = 1; } else { $input = &$any; } if ( is_array( $input ) ) { $seen_nodes[] = &$any; $return = array(); foreach ( $input as $k => &$v ) { if ( ( is_array( $v ) || is_object( $v ) ) ) { if ( in_array( $v, $seen_nodes, true ) ) { continue; } $return[ $k ] = jetpack_json_wrap( $v, $seen_nodes ); } else { $return[ $k ] = $v; } } return $return; } return $any; }