From dbd684a6e21da7383e43c7ac4241b4ff9febe764 Mon Sep 17 00:00:00 2001 From: gongduoxiang Date: Tue, 6 Aug 2024 16:29:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=A4=84=E7=BD=9A=E9=80=9A?= =?UTF-8?q?=E7=9F=A5=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- common/src/main/res/values-zh/strings.xml | 1 + common/src/main/res/values/colors.xml | 2 + common/src/main/res/values/strings.xml | 1 + live/src/main/AndroidManifest.xml | 7 +- .../yunbao/live/activity/PunishActivity.java | 78 ++++++++++++++++++ .../live/activity/SystemMessageActivity.java | 37 +++++++-- .../yunbao/live/adapter/PunishAdapter.java | 56 +++++++++++++ .../live/adapter/SystemMessageNewAdapter.java | 12 +-- .../java/com/yunbao/live/bean/PunishBean.java | 9 ++ .../java/com/yunbao/live/http/ImHttpUtil.java | 19 ++++- .../res/drawable/bg_bk_ffffff_555555_8dp.xml | 15 ++++ live/src/main/res/drawable/bg_ffae04_6dp.xml | 7 ++ live/src/main/res/drawable/bg_red_yuan.xml | 7 ++ live/src/main/res/layout/activity_punish.xml | 45 ++++++++++ .../main/res/layout/activity_punish_item.xml | 62 ++++++++++++++ .../res/layout/activity_punish_no_data.xml | 28 +++++++ live/src/main/res/layout/view_sys_msg.xml | 37 ++++++++- live/src/main/res/mipmap-xhdpi/cftz.webp | Bin 0 -> 10724 bytes .../main/res/mipmap-xhdpi/cftz_no_data.webp | Bin 0 -> 23426 bytes 19 files changed, 406 insertions(+), 17 deletions(-) create mode 100644 live/src/main/java/com/yunbao/live/activity/PunishActivity.java create mode 100644 live/src/main/java/com/yunbao/live/adapter/PunishAdapter.java create mode 100644 live/src/main/java/com/yunbao/live/bean/PunishBean.java create mode 100644 live/src/main/res/drawable/bg_bk_ffffff_555555_8dp.xml create mode 100644 live/src/main/res/drawable/bg_ffae04_6dp.xml create mode 100644 live/src/main/res/drawable/bg_red_yuan.xml create mode 100644 live/src/main/res/layout/activity_punish.xml create mode 100644 live/src/main/res/layout/activity_punish_item.xml create mode 100644 live/src/main/res/layout/activity_punish_no_data.xml create mode 100644 live/src/main/res/mipmap-xhdpi/cftz.webp create mode 100644 live/src/main/res/mipmap-xhdpi/cftz_no_data.webp diff --git a/common/src/main/res/values-zh/strings.xml b/common/src/main/res/values-zh/strings.xml index b4627cfe7..a8b57e1b0 100644 --- a/common/src/main/res/values-zh/strings.xml +++ b/common/src/main/res/values-zh/strings.xml @@ -1545,5 +1545,6 @@ 違規原因: 處罰內容: 處罰時間: + 處罰通知 diff --git a/common/src/main/res/values/colors.xml b/common/src/main/res/values/colors.xml index d0ad06807..5fe3b1b9b 100644 --- a/common/src/main/res/values/colors.xml +++ b/common/src/main/res/values/colors.xml @@ -85,4 +85,6 @@ #FFF6F6F6 #F4F4F4 + #555555 + #525252 diff --git a/common/src/main/res/values/strings.xml b/common/src/main/res/values/strings.xml index 979a76d34..2e4a23c3b 100644 --- a/common/src/main/res/values/strings.xml +++ b/common/src/main/res/values/strings.xml @@ -1554,4 +1554,5 @@ Violation reasons: Penalty content: Penalty time: + Punishment Notice diff --git a/live/src/main/AndroidManifest.xml b/live/src/main/AndroidManifest.xml index 4603df43e..c7c8a66b3 100644 --- a/live/src/main/AndroidManifest.xml +++ b/live/src/main/AndroidManifest.xml @@ -1,7 +1,6 @@ + xmlns:tools="http://schemas.android.com/tools"> @@ -132,6 +131,10 @@ + \ No newline at end of file diff --git a/live/src/main/java/com/yunbao/live/activity/PunishActivity.java b/live/src/main/java/com/yunbao/live/activity/PunishActivity.java new file mode 100644 index 000000000..b750b9c11 --- /dev/null +++ b/live/src/main/java/com/yunbao/live/activity/PunishActivity.java @@ -0,0 +1,78 @@ +package com.yunbao.live.activity; + +import androidx.recyclerview.widget.LinearLayoutManager; + +import com.alibaba.fastjson.JSON; +import com.yunbao.common.activity.AbsActivity; +import com.yunbao.common.adapter.RefreshAdapter; +import com.yunbao.common.custom.CommonRefreshView; +import com.yunbao.common.http.HttpCallback; +import com.yunbao.live.R; +import com.yunbao.live.adapter.PunishAdapter; +import com.yunbao.live.bean.PunishBean; +import com.yunbao.live.http.ImHttpUtil; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +//处罚通知单 +public class PunishActivity extends AbsActivity { + + private CommonRefreshView mRefreshView; + private PunishAdapter adapter; + private List mData = new ArrayList<>(); + + @Override + protected int getLayoutId() { + return R.layout.activity_punish; + } + + @Override + protected void main() { + super.main(); + findViewById(R.id.btn_back).setOnClickListener(v -> finish()); + mRefreshView = findViewById(R.id.refreshView); + mRefreshView.setLayoutManager(new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false)); + adapter = new PunishAdapter(this, mData); + + mRefreshView.setEmptyLayoutId(R.layout.activity_punish_no_data); + mRefreshView.setDataHelper(new CommonRefreshView.DataHelper() { + @Override + public RefreshAdapter getAdapter() { + return adapter; + } + + @Override + public void loadData(int p, HttpCallback callback) { + ImHttpUtil.getPenalizeList(p, callback); + } + + @Override + public List processData(String[] info) { + return JSON.parseArray(Arrays.toString(info), PunishBean.class); + } + + @Override + public void onRefreshSuccess(List list, int listCount) { + + } + + @Override + public void onRefreshFailure() { + + } + + @Override + public void onLoadMoreSuccess(List loadItemList, int loadItemCount) { + + } + + @Override + public void onLoadMoreFailure() { + + } + }); + mRefreshView.initData(); + } +} diff --git a/live/src/main/java/com/yunbao/live/activity/SystemMessageActivity.java b/live/src/main/java/com/yunbao/live/activity/SystemMessageActivity.java index 4ba054ea5..ffed237b0 100644 --- a/live/src/main/java/com/yunbao/live/activity/SystemMessageActivity.java +++ b/live/src/main/java/com/yunbao/live/activity/SystemMessageActivity.java @@ -5,19 +5,18 @@ import android.content.Intent; import android.util.Log; import android.view.View; import android.view.ViewGroup; +import android.widget.TextView; import com.yunbao.common.Constants; import com.yunbao.common.activity.AbsActivity; import com.yunbao.common.activity.SelectImageActivity; import com.yunbao.common.bean.ImageEntity; -import com.yunbao.common.bean.UserBean; -import com.yunbao.common.interfaces.CommonCallback; +import com.yunbao.common.http.HttpCallback; import com.yunbao.live.R; -import com.yunbao.live.bean.SystemMessageBean; +import com.yunbao.live.http.ImHttpUtil; import com.yunbao.live.views.SystemMessageViewHolder; -import org.greenrobot.eventbus.Subscribe; -import org.greenrobot.eventbus.ThreadMode; +import org.json.JSONObject; import java.util.ArrayList; import java.util.Date; @@ -36,6 +35,7 @@ public class SystemMessageActivity extends AbsActivity { public static String type;//-1=单聊消息,1=系统消息,2=互动消息,3=猜你喜欢,-2=web页面打开 public static String type2 = "0";//判断是否注册监听 public static String nowUid, nowTitle, mowHeadImg; + private TextView punish, punishNotice;//处罚通知 public static void forward(Context context, String type, String uid, String title, String headImg) { context.startActivity(new Intent(context, SystemMessageActivity.class).putExtra("type", type).putExtra("uid", uid).putExtra("title", title).putExtra("headImg", headImg)); @@ -72,6 +72,14 @@ public class SystemMessageActivity extends AbsActivity { // mSystemMessageViewHolder.loadData(); // } init(); + punish = findViewById(R.id.tv_sys_msg_punish); + punish.setVisibility(View.VISIBLE); + punishNotice = findViewById(R.id.tv_sys_msg_punish_notice); + punish.setOnClickListener(v -> { + Intent intent = new Intent(getApplicationContext(), PunishActivity.class); + startActivity(intent); + punishNotice.setVisibility(View.GONE); + }); mSystemMessageViewHolder.btn_back.setOnClickListener(new View.OnClickListener() { @Override @@ -79,6 +87,25 @@ public class SystemMessageActivity extends AbsActivity { finish(); } }); + ImHttpUtil.getPenalizeStatus(new HttpCallback() { + @Override + public void onSuccess(int code, String msg, String[] info) { + if (code == 0 && info != null && info.length > 0) { + try { + JSONObject ob = new JSONObject(info[0]); + if (ob.getInt("unread_num") > 0) { + punishNotice.setVisibility(View.VISIBLE); + } else { + punishNotice.setVisibility(View.GONE); + } + } catch (Exception e) { + punishNotice.setVisibility(View.GONE); + } + } else { + punishNotice.setVisibility(View.GONE); + } + } + }); } //更新新消息 diff --git a/live/src/main/java/com/yunbao/live/adapter/PunishAdapter.java b/live/src/main/java/com/yunbao/live/adapter/PunishAdapter.java new file mode 100644 index 000000000..0762d4ac0 --- /dev/null +++ b/live/src/main/java/com/yunbao/live/adapter/PunishAdapter.java @@ -0,0 +1,56 @@ +package com.yunbao.live.adapter; + +import android.content.Context; +import android.text.TextUtils; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.recyclerview.widget.RecyclerView; + +import com.yunbao.common.adapter.RefreshAdapter; +import com.yunbao.live.R; +import com.yunbao.live.bean.PunishBean; + +import java.util.List; + +public class PunishAdapter extends RefreshAdapter { + + public PunishAdapter(Context context, List list) { + super(context, list); + } + + @NonNull + @Override + public PunishHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + return new PunishHolder(mInflater.inflate(R.layout.activity_punish_item, parent, false)); + } + + @Override + public void onBindViewHolder(@NonNull RecyclerView.ViewHolder h, int position) { + PunishHolder holder = (PunishHolder) h; + PunishBean item = mList.get(position); + holder.title.setText(item.title); + if (TextUtils.isEmpty(item.content)) { + holder.line.setVisibility(View.GONE); + } else { + holder.line.setVisibility(View.VISIBLE); + } + holder.value.setText(item.content); + } + + class PunishHolder extends RecyclerView.ViewHolder { + + public TextView title, value; + public View line; + + public PunishHolder(@NonNull View itemView) { + super(itemView); + title = itemView.findViewById(R.id.tv_punish_title); + value = itemView.findViewById(R.id.tv_punish_value); + line = itemView.findViewById(R.id.view_punish_line); + } + } + +} diff --git a/live/src/main/java/com/yunbao/live/adapter/SystemMessageNewAdapter.java b/live/src/main/java/com/yunbao/live/adapter/SystemMessageNewAdapter.java index 7d6d76ebf..533b2221e 100644 --- a/live/src/main/java/com/yunbao/live/adapter/SystemMessageNewAdapter.java +++ b/live/src/main/java/com/yunbao/live/adapter/SystemMessageNewAdapter.java @@ -1,6 +1,5 @@ package com.yunbao.live.adapter; -import android.app.Activity; import android.content.Context; import android.content.Intent; import android.text.TextUtils; @@ -20,7 +19,6 @@ import com.yunbao.common.bean.IMLoginModel; import com.yunbao.common.glide.ImgLoader; import com.yunbao.common.http.HttpCallback; import com.yunbao.common.manager.IMLoginManager; -import com.yunbao.common.utils.L; import com.yunbao.common.utils.RouteUtil; import com.yunbao.common.utils.WordUtil; import com.yunbao.live.R; @@ -77,9 +75,13 @@ public class SystemMessageNewAdapter extends RefreshAdapter { } void setData(SystemMessageBean bean, int position) { - SimpleDateFormat sdf = new SimpleDateFormat("MM-dd HH:mm"); - Date currenTimeZone = new Date(Long.parseLong(bean.getAddtime() + "000")); - messageTime.setText(sdf.format(currenTimeZone)); + if (!TextUtils.isEmpty(bean.getAddtime())) { + SimpleDateFormat sdf = new SimpleDateFormat("MM-dd HH:mm"); + Date currenTimeZone = new Date(Long.parseLong(bean.getAddtime() + "000")); + messageTime.setText(sdf.format(currenTimeZone)); + } else { + messageTime.setText(""); + } messageContext.setText(bean.getContent()); title.setText(String.valueOf(bean.getTitle())); diff --git a/live/src/main/java/com/yunbao/live/bean/PunishBean.java b/live/src/main/java/com/yunbao/live/bean/PunishBean.java new file mode 100644 index 000000000..1a3e24371 --- /dev/null +++ b/live/src/main/java/com/yunbao/live/bean/PunishBean.java @@ -0,0 +1,9 @@ +package com.yunbao.live.bean; + +//处罚消息的对象 +public class PunishBean { + + public String id; + public String title, content; + +} diff --git a/live/src/main/java/com/yunbao/live/http/ImHttpUtil.java b/live/src/main/java/com/yunbao/live/http/ImHttpUtil.java index ab3dfc4ab..dfa65a318 100644 --- a/live/src/main/java/com/yunbao/live/http/ImHttpUtil.java +++ b/live/src/main/java/com/yunbao/live/http/ImHttpUtil.java @@ -1,6 +1,5 @@ package com.yunbao.live.http; -import com.yunbao.common.CommonAppConfig; import com.yunbao.common.http.HttpCallback; import com.yunbao.common.http.HttpClient; @@ -110,4 +109,22 @@ public class ImHttpUtil { .params("message_id", msgid) .execute(callback); } + + /** + * 处罚通知是否有未读消息 + */ + public static void getPenalizeStatus(HttpCallback callback) { + HttpClient.getInstance().get("Message.penalizeStatus", "Message.penalizeStatus") + .execute(callback); + } + + /** + * 处罚通知列表 + */ + public static void getPenalizeList(int p, HttpCallback callback) { + HttpClient.getInstance().get("Message.penalizeList", "Message.penalizeList") + .params("p", p) + .execute(callback); + } + } diff --git a/live/src/main/res/drawable/bg_bk_ffffff_555555_8dp.xml b/live/src/main/res/drawable/bg_bk_ffffff_555555_8dp.xml new file mode 100644 index 000000000..8587b86d6 --- /dev/null +++ b/live/src/main/res/drawable/bg_bk_ffffff_555555_8dp.xml @@ -0,0 +1,15 @@ + + + + + + + + + \ No newline at end of file diff --git a/live/src/main/res/drawable/bg_ffae04_6dp.xml b/live/src/main/res/drawable/bg_ffae04_6dp.xml new file mode 100644 index 000000000..ba445586f --- /dev/null +++ b/live/src/main/res/drawable/bg_ffae04_6dp.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/live/src/main/res/drawable/bg_red_yuan.xml b/live/src/main/res/drawable/bg_red_yuan.xml new file mode 100644 index 000000000..c92ab1608 --- /dev/null +++ b/live/src/main/res/drawable/bg_red_yuan.xml @@ -0,0 +1,7 @@ + + + + + + + \ No newline at end of file diff --git a/live/src/main/res/layout/activity_punish.xml b/live/src/main/res/layout/activity_punish.xml new file mode 100644 index 000000000..ce7063919 --- /dev/null +++ b/live/src/main/res/layout/activity_punish.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/live/src/main/res/layout/activity_punish_item.xml b/live/src/main/res/layout/activity_punish_item.xml new file mode 100644 index 000000000..cbddb792b --- /dev/null +++ b/live/src/main/res/layout/activity_punish_item.xml @@ -0,0 +1,62 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/live/src/main/res/layout/activity_punish_no_data.xml b/live/src/main/res/layout/activity_punish_no_data.xml new file mode 100644 index 000000000..61127c9ab --- /dev/null +++ b/live/src/main/res/layout/activity_punish_no_data.xml @@ -0,0 +1,28 @@ + + + + + + + + + \ No newline at end of file diff --git a/live/src/main/res/layout/view_sys_msg.xml b/live/src/main/res/layout/view_sys_msg.xml index 6813f4f5a..cc30fbe79 100644 --- a/live/src/main/res/layout/view_sys_msg.xml +++ b/live/src/main/res/layout/view_sys_msg.xml @@ -1,5 +1,6 @@ + android:tint="@color/textColor" + tools:ignore="UseAppTint" /> + + + + + + android:background="@color/gray_ededed" + android:visibility="gone" /> d~K{}M7cdaU5Wwn@CWR11gSdG7!>il0-rPCe8Vu`nL3=`?2FktTni8eyXt^-GAz`L8aDLk^8|;udR_5`8<@tbHfRM(Gauugf#v zJm=XO=h?dF<=7*UZd3U>@csYB@q^j5XHIb=0j}S#&egeNrX?lT2jk^zLjV%s|M4ML zqC-IdfZLc_1JWIRSYJR*{?*r&A-zHTwp+iS@P|Jn!u|(3z;f&CnCn%cmC$T581Q*o z!AErZKH%nlsg|mEI#~y!jIeBxqR7j*X}7oU#2t>O~A!MQ0c&YGq-Y-IQI52ke${Jl=+r%QuRc5>wrsmx(5yeFn% zcC~Z2Up=;zqsUq7yBs@l+rCuUxA0nCTwpn)O=vke4%{BCE!S$7Nmw{nGHUm7>bRdA zKL1v1)8v}S3tRtm$2#Vp?5;dxy+_p!{@bw!jhC{)OTojl20>T8Zu2&h0CDtuVIAa_ ztzTr>LM2GZxogd@gfQ;U9w-Ix@Km%MR^~U?>)wsJriGtyoo7w%)!#j*$3Ikmv$t?( zZl1kB#^;O3Vh+1skDr_GtEorou|7ln#}~hx0AU!4x3Xg#N&+E8l;&|6bHV_+#AeQl zTz-qNlB0^PqBgwLRQbiY=XwE~bcR}#u9j1?R1X-e4&M+&9=>J~tCjq3#VN_%w_7uw z)Cm;>>p2S{MPD7xKF!r9DDM~{G&RB0%4bP>NLs=GXvJ%A)HE2(%ACF|}YIT`hHYXG(&y~0hKSw$>lPw>Pm`m3C^c{%@jy7#I*PmPHKEt1b@14pL7xymd*15k$^x}qWmq>3X(;})qY?9*v3$Hih@O^cTN`jt+Ss}+N~DZ zqvim59BLo{00shRSO*l%$05!IV+ltX$J0AdDFFy{Ni=drekm>C?RjR=34L0d`zGzJ zVEiC%W{v9K3h7!`HOWThU3^H0iSk17YAhwkno!2bwv58g2FP!5y z`$PO}Er^pxW|*j9vnAn{FA8ctJ2nBhq)nB}bwWhT&tHLrYl+O9!vASv1mOU{8Ap$O z&EfpuE!=<#ohm{p3{z}~W{FK1XVFTn1n9y`7?6{+H*!vROiGE(t%rp8%fOQv!bzva z;>~}tw|O0y>9X0*6Zf8f>Zm4eXDlGY26mGEz4iYTr&cKJA8FD1)wDw@#ttc z9cxn4kIFDZ3ZSFoJ1bg4L_!UN)MUAhuoi|zR00us}(+$Oc)@pp23&cIK(<) zBCyeLOGac0Qb2$l(~VL>Q`3)YVn~6~N-krXGHPKO0RU}Ziyo&effaFJNb8`D%|^4j z;wM#UE^^0@x&mAWk{4&^Et@K|XsZKmaRpzPQ2%7-xg@@9@^-Qotc%**3phyN-}+nF z9X;O3rKt)|tpySMLLRR{aZmXQT}i42Ck^-xUa0E@7(pm1dYt8Ugovgi_*vGRL+DaIXeghfcegFlW?N`V39T9d?#?ZZ|vZT!sSY< z$IUh{14$UiZ1Cgzg^ND?&wLjv3u5P;^X(eWyyjT^tSa7Th$Wdblrjjk954Qwdf zl7#$;ew0wqpDx1L`C8!wt!}Qlap^Qp9AfDN>AR(jgJXSOB1cYS5@SLICl?d=d?ZT1Im6 zC#jVwbRUchYFMok&jP!qEfN+zm-~)g&6`iUO~KuWPEUg|i^KDrL7p|#1$Y=v6uwh};7t&uv;!mSDbYT50*lzAi_9jxegP=KrU3lyq{V5U;RkRlb){CrTl zLIA?w`JHmE2H-dZusEUwuwf39e*18)!wn z+bXi??|4pM zSVMsXaou#bMW%1{6I(N*JDj~s0$G|4c4bs2{Qxd4#F zZ#CinHJu5La4Jh=y@mw1B-AJ{NI(E6vQow9^OH<6Kk)FsU=*5fICKvhDvnwtE}`Tv z`z04LZCa!@FY4bGfazmcz4@KkY~b-~NjOk6M2>rxtWufsV+V@>cOnB+(GdbgL89sT zin=)>JK!YI2q4{?DVk;zm~B>Tc#(n4zV7;ennNhBvqcUPw?IS{kw*F~v_(U|?( z#iD4?6g|EbsxGuTf>$VRpTlfe-ki+mdybonYUfQ5$f#lgH!@ z5)A`@4)BkWbb#AwvRzj5r59NdHY}eVQs&yeI{HMx7Q_|+Qb|`58OhjTsNzI5LAiAs zfy>#PRKx#gFyFI2h@00RJQjT++O2gQbddhsb6uyX$0Cbt*W1Gp$*ewX#7;UF<$%(M z@+rQlBjd&1h3;>hH9trR&X)5>hBS_3k6aI(%;u`)QgnoMjK|Pnn2_C;J2L(Y@_$k@ zw=IHKXBIq{F_T}{d~F|A2~3{VJ_8$@k|xQU#W@47H8W4W+s+3YWvy+yrg(t}GxwKqfYR?W$ zWtKWgG~X&Eeyt?w~fS;pH-DAPrEz%6Ok+Lq4$+>|VLC2Bla_xyAE;%;(#f8U{S z^KIOMr^Iak>5%`e_RFtItNY{I>mFOa>_BISszyA7w?snYX4p7P|0U|d%88{j+{%$o zmG2`4yg1#wSSuJk5=i7Kqwb7($I9!coAkI)n-K0(>?nD&qpp-L0GlQMaAKF&0rpW>F18OK8N!Ug}ZomZgDC%vli^Gz*?Ke_j z+-XYoc)`wt@Bx2XofblkNK6&s0`zUTjUREUN|W*_Mo#I-X1)8cHGy;ApZ57e>dkXw zezG{B+}6YWRr;dwjXvG(wAiCTGQ$JP`&9SK$VDolED@w7h5Gilo0is2=kg()Ox)yj zIQZn}qmqfCJ_Om2PusaiTD^|VXuhkCJRybPwltuw`@+q;cW{q~9*zbZ7~mz0LpgjL z+DYkG`=ZAE@tBjEGifV)5BfF|T-WwfdLG1sd}j2eP=K-PK>fPx zf;5Kb1A|lYUt28L-xr}PM>V;Nn3T9x;1S%0QW4S6LnOfXxt~K)}sTgRc7ASC9)cLmZr^E1+fM;+^DaAUp(d}PurA|B|Fo5 zTj*gA5B_RDbHBczUHD2QHqp3N**Z=mDXh%K$@yCcS4>lfvj|5eA}<08CFwwu03=qn zKMD=t5~_{w@{2gB0nRsE+;9~L3)eKIvLoaRLkSpWug#qH#WFQlZ2#!u zmz(y>a-vNhJYCBIVm+qgT}M^RrxEhGFcCV9R6sEriDnE{wY*oB@tjp){_l?w+vIhH zyUL+x23`mZN=k>Mg!5I^{K-yt-Rf`<|CsTdO?%#u1JL+5frv!$9>FPB!*w64ONSMNDXS2VU(fn$R3xz|X5h>&XIN84R zN|tAeF%D9JJMHZo%tEc3-6zzF5Jd`r912v132%9|`VhAqY^6pgMpefOKVh}?^-Zt< zQakB612)g_N?`|Gl5r$s9*%@;|D~-A+rd$MrkMKfdS7Ab`p8nY=ZESxj|ateQ-T>| zNBU)k`PW~s%4?a8drN33A<>m#d_{ue{AGWZ{HBku_8sVPDqo9tX1xw5qg3@#h>S`u z1eJh*wXtnI6c}b0v{w;hy=*7`+=eS||_);lrv;^1^u$RMvD>-!yA>3fRfUgQ>K%S)KvVG1OxUDgi11So&+mB;^Rk zLPjfoz{E#&ECE%nRw2`m70@mGkb7Sk}i_s7(+AxYNaGPzA)f9A@Bn(zIOXXrDULkyR7%C zcL!wlRoZuD{8qB-*DsdtRr%vSr!Nk_Z1D5hc-9*kDWZ}3FAoZVPJYTVfHc7N(5~L% zVCzWXT2fvKX?hCsImwRnTd-{-y7*xUS<^3^&402s5tU7(J`Sx z4sstr6MrW&%exUrwRAokzA}FL2CWeaz#>RT^*FZ>6z)zzR{@}<#pCz4#nWWdD*&Ct zSzn?tZ;3vfFNRAP;P#@Y0DCG3R}AfBcwc@6d|nnX2NYF$+TFgD?TS?dZ5da|Q}|g4 z2r#1{ar7msC?!_9C!9b!t5+90u}jLVSv(v8O?hVw1t2Pp(exx8pZ@ssm zf?#={R*4D$3!b=fDyfB14cCfcNaE|eFhM;)`0fa0iO5HK2b6=|*!OVsY8Ipt22|wV zCQj){iOIHYcb}dkfC@2(^ock!-tXM^7re0&0HIVFbm?Fg3;~RCcE zZeDNlz{HoNC9-*gchhazxWd`IYEG^p!b|nTRN<``AAu6aq6nZYr4nF?WXy~~QjK%Y z47`4_NH{MA@FB0h?zSAj(Lcbgr3J4Cybvfox7jBX6up}i1ENt8h}4t@&pTr@AetzZ z<=c?{b;z%49Uk)7nLmz_IM3x7E8)wAswTf$Y)rYtiawfG4**ba;Fh-32rb*K{2u`M zRr%@>uph4yU@|NBw^`w20dlL#v&yl;A-f_@LYr6|32F=gF!qC- zGPEQqHA#eP-h{9&)Vdsx3sB*OFnk0o!TG>T3fU0qkv|H_t&%f7nXp^1^V*S02>844 zx#@Z!(Wzac0ky5ZgDYyf3_DxPY;6qA*j~OKTKR5_AAv!B1gW|W%!)ss(Nc?g%OX>h zf8Fx!*WUd4HaDyt`w+N1+S3a^>3KQh+AJTqmhUn-o8q47GVWh{$zx*oJyHZW86KJ{ zf=pBsN#7AOzC5XRZT8=UYlbpFDR%~57!O8Oa=BYCkK^Spn+SQ&jJK@u@=w09&4%oq z57L&VZ*G+otY_x56UtqKj_PYQ7`bXI>GVKGF(G(XrjaKV`{FQH-}u0-N=TvX7`Me+aFobgaO>6mH8wBgs5mC2OMBzXsgA!WVQ3)-o_9ii;sJF^twCK8zyL^q$>eq|k*b2e*_DH6^S)Ri! zsoc$Fyn^(A(9Ei(NV_J{u_Ci}KC)d@1w&3n1u7ujVI7p9B9Pb3GD_nb@M>g1GoToD zc}%A8!u_}BAX)G}7w~Ii`gQQEOmN-DsUtwy)x356(wtz$S!-p>9cF0rIf9c5hPnbr zFwej*zqmBX9o0?^8pm!I5JeN7zwSN!ghuA7M=9{iy7RKrFv}E->;wlIC5$Os3BpjS%JBBbfYkXoq!uW!TE!$B*36K5$W|6R6Y7T*Fuqj%fkDeVn~*?RyWeRT4r zB7|sU-bAo6&@Q_d7drmEgFgj|A(`aGj;#0?nBht+cEE8^{WL*Ae%DoUJ@O6HlCSG% zJK`g0eS6`f{aKLwpX2@K!A2uF z&WRSt6Y4xAkS~DB5jEn`Jy4M%9m`x6BMZ3LSe2SHS4jITf7G7KJr4E73*{Kq6*~K@ zJf9y{IBUvnKi4$K`xiyE$Dz=Bia^9Fb6lpo$C}B=@!89ojqa&>yrU#G>}|3T@mo#q zc`43s-DU(^yVv$#pa63Apne8?jN)~6;*m}=L3@OLOz!PTuU62UR3DRu-<6 zmtYN^eN;bQaXjaBHaX+FTbn7<{@=|wY)O54(D=omkI&Uy=@subvfAtQFOf$JEWxCH z3fus?$WX=c4kAL;J}kyr!hb80mgu&hfhYcX&|2<;m$V?xuulwXR*b2KoabK+GoRW% zYAyVxvF_|~e^}u%xScq$s6hd|(c{B*b8!C`2}N7HTq)u!kdS&7pglP^gva%)w>}L1 z(Yx|#UjD0m`c8uSf?vQ+?Udl!6TzS*No(hAJngOvYe?UI;=2HVV}$aH!ua3kUa525dJ5(+wyB07svt^)`h2*7?SlGO892 zfm@e@%Wt@zzC*uz&RUpXlM!PNyI%45ti%xI;nU_)U4^STARbR1Z~k;UINvN#_>FoY>xY?638q>y338nXAJJuq0wRv@dwv8ix_S-0TSASF<-`9&z2+!mceqKF9# zTkA>%dCMCv1~o24O^_i0+@O4`7)oARnx;EHmoDSoq>~4mbyYw1-8tG0VPetxs*=P& zYQ;R_Xd9P#j;7Le?z0C6jbrTIH=N35y$O4cw?{yI!2H7xH&Um+$~O6W46zU6&BaWf zO70AtHks7EH{4&I>;Z-y;=qzH4p_!XKxzS0K?DOYH?_(?K%;{Is`MIQN873SCUblJ z;&`}iSEvoYNX`)l(D9<7p()>gm_AB}uYgtd4LpL67t}LW+{@3Ee^zMsX3P?dD<+&h z*?Pc$;T8jZEEWltvoassLG4vwEUowmiz6;ApOI}%PNrB*N6b>Tl=oeksFdsjJG3Y?U~^bY{S~o8}Yo11dAx9iU_ZqwEO<~hg#Y8_Q}n< zuOn;bgGKZ6?K1&7MP!k)%Sk?21#>dv>uG{yvF)Z3&)NlEdrgKlR}+ddc4W}&U&jqO zV9`jbq`L@uDBsAZ6b*_irEqdSO$Z6V0lfpg^AS7(J}?-1or)0hUkJml&i{QnSZ=@c zqUL_Os{fgQqZF1^`TH9V2AajntU*~zbFY0G)7d3kpOzG~vSPqJg9fy5etB)Qu zwF@$BJGs1;X<~UVzOv$$-MOx|WWs60g#H0mbOBOIy*w4xbP{R=0AUCNK*It6?m#(! zFtCZ?AXkJUHG!0kIO&hQADI%3-?)AJrGL`s(jfRncFHzTjQxC)+%b=vaXvpppY=rF0f%8R60pfdAKyJZ-T z;)$4s(zPeC!AF%%p6b=!SGP=uYRGtc*`*>tLyPyc5P z)yBqu$Ub^h(fhEJ$WS&^a!<$nRa(c#&C z*~5X;+MuTdxET04I#?i_*$B%BnEaZhywMk~1t2Bd6XE4aoy;g2=IxRi7u zZYY@g)YThZUGM*8?{V3`%kF(-vg0#daPseqiWi$i%-0(IoX)2GoW#vf<YvniCZA^w13XyrCqB6t3t9N@K`lunzHaafj;BAyqP*Sgv1F z1r@2z7$7kj3h+TlW6^n(blu;PzwwQynLDyP4pn{cs;r#(9kFDUu#n=#BBwK>5f^uB4@mOqPCohM`GCtRoX+m@Y&Lg1r$ zPxf%?+w^K&sY&({r2Jg9-|JZE!p99$)Zm4WRk#$<9V<1^N-9jRI8Uuw?F84;FgU=W zR+FCsSiv|UH(9u9E zCqmzibI?;{FrXgmaRMC4;ALVEPSoSD<)i|UxEG$Ms0rb<2Oo&0FObn!ph|RAe$)fwkjoc2S&8>sD@B|0>TwRKf69S)K?DEPV;~J3N%3l1l~iCWQ-)fdWqC z02d5{VN&MPKv-+sL7*9s5#J3vSs;)yUO%l0li*Y*{NHae^^JpGBB&d;x9dv=OZLtK z1Dsp#DV*512Cr}VdpTK$&z_|}hM=3}1$P!VBIo0TUS6EpXY4VhYR~)jMjANEjR;lP zZ}n*lPIwe=%yzwJ>QBhTzLjs_YkQ#h7{bL!mj^^98g?ji=1(vQr^moC5s@OAG0;5p zcen}^tw)Y9px40grivfoXkRG=R*Vuu${PjWFQ{xGgM7-UicO_U*o4F;hX!B$JdJe< zs8zs4-uM%sULO=tzD()7 z$$0qAJckd&JxK%vq@oYE`KXyW>sM9Om zz~uqye6M!Mz<}$vsJyeqE%t-3vC$Uns&5^&j;^<*Oo&^M`k(39Hj_!|JOAc?rr@>I1AbcLWQosr9C7Xyl3ube_OOO@T7I;d0~LTiYhgI2_p&ULe+qb z2jpQNDOFMgK{R3lzwIY1ar6SaF|&IpgbZ0Jntwgd>M7OhJ>=!*+-;ZPZMd%e$jAHU z+u5$H(}M~BKRmIiY%e<`Kiu%TB2Zwxsf<)eVN*>;vPQN{lL7$bAbjiN^H2R`KtY zS+0EpBH@-W5)YlA3yG=YgjV^G_ov4VhSdyp5%r&)OEO*f-uG8W<%Bizt=_GE6i9a^;_ueQ(EO}*C84?YoG_DO)C8(9)?(p= zkAED!Z?ZGn;_i+JjtdGh%tt=CiFn=U?a7PMw)MIA{$+5OiRc*9-T!Q?o#SuVU|vos z-_ak4vk`27xHo#?xUg=MuL1Ia-sgYC+QFr(US1 zriQazjV0>KnG4VTa%j#9a}N$C?Q4Eug$OS_9=tj{e%MZo#QygEmwHCOf$h}hzr^1r zi_??du5SrAp_kPoy&DQFMM^#)3)e#&DmH`hE8CuVI4 z7r%cNu63yOq<=!;5t|MTYs2JsV&1dOl~pw9p?$_xj)|wvPwQG89F6AYYfOAxN?ycU z)xR$LT>GO&)eB|VY%7ntFB3kJG%}O#(m0^$v!ifxa(mDbl-C#A&ShNxxQ3kN`5X^l z^@}+?|N6B}l-n(!V@O*5%*H<&U*sT@V=aE8zkKb_`HSXh`IPz1kJrlvccLDZ4~+;H zOBYjn*oX)GB$c}+9pm!B{!~SzksScE#~_%DjL+Jf&5pC7_diJdnG|-~dghVl6(DYW zcJxwz@qVrI{SDXk@H&@x!LrrOUVocq&zo5;JITF6SI=a$;_#btKYuchr>AaOeV%qN zcfL4EkI%V9B`Klkn2%bw7^X61Q$%pZ-#6 z!^nWTiEWCSwDr>+#?Rj59bM%m7L&*V1goU&&-ly?<5y{3MJAF?BXzY>EB-q(GzAk3 z4H8X9>!n9u$CAgo0|Rm^vRpez>+yTH=J6(@R^Uh7tu_8|i}Y9>^i$7WhhQ zl?Zc-O?bJR91pz|<{ok-G04t{{r20xN;D&;Ej~Y!HqAvmUcc!O1r-;uvQXR^c50r~ z#;tzA9USdVn#j++D5%Av>Lw~zAx?*0Cd~~rbA1O^U>jMATg%BY2jTRx0lOPml=kAx zOwMgLSh`Uv2?Pr#gF2y$U(%Vg&DKrs4|Re(<;zpli&>m+i1`%%cYH^bd#0wkPX4}v zd}iN^qdcY$`87$~qWY)$c5=2%K&7ycNu%kfDMwJ$D#D0-iZb;W%xf2PYR>VQHy5v- zc{3v-}*-I}4@e}M}Ei;M+Zl;aOdrqR6%8y?W!ehiv_ z0>cW;NQEXjN%KqZA^EKM?1}zme>3eK9p-}Te#b+l!xi4uK(AZK*tD}4Dl<5<2bSYKW8^P$Z3;x5C%;->YO~9?j zlS!XCFl7aUT;74vQ3IVs-`71x`!j2Wt0&XOYwSMjtKVAZ{5MPPnavG*id;2G*iZ=M zaZ~*|b064wc)WKgJv+Tqm8|N66q3rFlhHP+@NN>3ch&J8D(GVO3|be%z8EXt4Xljc z-El=f`tR!eRL@y*cH;0{_Dg{=Ovb#Xm!#R<v=LnI6kRr^WFPTbmm-X%13?-)K3eCZ@PkD@M*b~=*%7(QYs1n z%78VGRSalDhMXRRm=3egiT;#-X6|<}%?JR7)edB{nfusA?hJa;DefzUFKkcr& rSLO#y1$AqA1Dt3oGBP&K==s!@n~R={`}Hf2+|F2i{MY4FZXq}c8XSVVOK^90cb9_`oP$encemgk+}#fx+}&L^e{I!P{TExi z-_~9-S3TWt_w+n{(^9P@DJJHr4FRDp`cpwofm6ozUz*{2kJ=X$*YA1n-RQ9ejLamT zs<=|Y+Hj4e^I1e%z^N~)O- zyaPVCM2h{uzSHg0M1g$hWV_ytQ?oM#?N$v4{a#FGs#tcKE~Mc_IikLo#{ z2XTOTHnpyp2Lyve!w%NA{omhjrJmp0vYg?msd*HBV%G8~?$;Qzm;tKW+D7kN+qS{S zP7|&hW8-I^Y?%C=^=d3u!a+4wtQHqn3L%3xgs%}{@C~*rj4$sl#nEWFjkb7uF!tnp z>6Nz6sFLw#>+ji`R&D0CD+7SmCKeqi;NzuNdrB92az17(AtXVvF zu~jKK&q&T*t{USt*{(F&t~?z3+N?A(u}84Z=h!*51elOVm$2PK4n!g1D!vCnd^{fl z9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i&9|9i& z9|9i&9|9i&9|Hed0bg~;JdfYN0VO>0LQImd{Q0<5Hah`M1%ije3vjTpAEAezbDBEc z@N9XA1iZY6=-N~le>!{A+t>8YPOZVLbvOzo62wu@|>nI@xcjseft88b=ODrad#XlKKszRTUf zKacw5zSqfKNF6?h^3$ZntwIEB1r9+*YQEsctBGp%o10+2F};>qnk;?v^2TPdy8Gn0g1Z<^LEpD_I<k+qmm0J?lj3p_^y>B$(+^d6g8k;{C|}`Eo7PUecUSVFY8^{ls5Y|5ceNB$VD| z?Pvcl>I@_2qC}^iSan`C{I<$CI_Svf;fROxECE@cmfibLy()G1>Wf&{4U6x6IA& zRPHr2xwv3Z@^ZP0i+eyImFWU1YC4ai#{@Vp>fZ^_Q6xRX9dmpxTBC28FCDpr zh-w_PD+%T69QmQGgIgZHv&;kYWrT>mX0oMIjNC?s2;#Yb9tV1I3tR#zeXGOlgp{;^ z0W|cwr((5=Lvjmza*A6y_e$ z7#159_CMto*h}wOpnWhf3v>JnL@d{Xl;--7<*|;x`&+X#DmUVo8DDq_vn3PwmAm7% zUOG2($;AxD8Z58h-oyniJvjJzpL-Ssq@CWb1>+h^^`0kU^3D3|V&{4WMojV?vOWznV7KF4 z_ae%E9OIK-wa@bzYvw{ojE*uG(~qv7soq8U=}dr~PY0b^0EruI6u^6<02J{xQ(4dY z)>QCE%}Yhk?Xa8Un8A&1`C>})3`aItQ#FOC-EVJwMfs{yN-Haq$#8d#{Q3Uxi?=#r z;ma5mik$ny-q-1t--K)I^z=e2uVrQUYrZX4D(~p0S(W-8jG|7yp9`)uV=5nCh|F3| zTRQ)Z$ZIE-YZdJ@u6~x`eOgIcOdZ3E#7|$z$dBa0J|FgmkA;(3G|LY8L|&23-601CQlfQPl*An>BJS>!eGgj7 z350;=LFa2i=%~GhXY-~>B5^!~6;h;5SwzoNh!~3XtthEl4lzi7L0^fHgT*1^#;hXj zE)921b&{{B;sv+Ny36kD?xB#LU9!KK*M^#hN!_$CN`DXA!N<$KO+5I zzFvSmm~0>Ge$2YN8%yB^4QBKv7I(lWqR)%yJIukwX#6CAvwvYp@{|t#J#ooDT8vxk zfRNs~br!FHVJajYDfkMRMc;S9(J7Ik^C|Y>2X6QpDcK!_$X|6Jlz3Syv3Jw&3o?qe z$=W;x44yzvOkyINC})aHjD@b_ckspKPh`dfR@ z*8YNPF{X(Lw-xFS@q7oaNYw%Z+ce*i1<0OY1Ss~_#*^Y6>U9Wt!g>vEKnFy`;gcAq z;#El!z&4CihKo5|GGAK4TbN2lSW9E#YXfqw7fMCP8>@0R4t@IqeGKgYlN%8RGCPVm z#o%m(q!KVt%vWy}GeE>eP@GldWuQT|hp?h2MC7JqR^(6yPhhEPa%zZ(e|wh=@&gwNvb z|MLUSEV}_%DFmtaR~ERGh~mt%pJlArn`-W{|2pbJ5Y&oyu8*?NvcHyQbd zkw_R30Sl=T5a`b=rb6e)s~m<}!h;aRe+8--4=!)fT`_u@NS%FSap584a%g8EjG6W2 zA53Gkzs*2GX!GxMoLV}QWqsQ9d@__WBAH>yg@7niOael`27>zX*&eZ)Oh}Meu~1(L z_6N>ZD2Mt>y-HVe$6O;T-M@H5oaq9IuW@Js>{4$Gy!w&Y>R3d-N<(3izp>o)-FVPX ztVS)mmBy?*E^2O77mFK78R--$)=+8?xuC$p32k*@G|DtnN@&0aQl9NE4Jps=dr+nX zeJSDl_YD5sSRDGzIdZWBGT}&##~55d=hviQnZ*aGT%)`QfWwB*ERBZcVkfT=bQPP(Tf% z?)ygqU#Szjx0BPZO;>Zx7D)CJBN?!|`yo5MaIE_dBvf40?hCD z6@7og88FiA_fA?BRS8Kc696H*>a&a%F8;WJBu|WS;|EAzY_y*UKJh+5JOj|v0g{jL z@gmeAc_=-Wq(x`uP0H}Ht$52zo0L7s@LI>0WtK}-$uArmAa91oEEMZDx2og7H?&9^O3Hl3Mr zy7$FB_4B>6jd_g+@Cl0#BR{a)V$JJrK`=P+MS+Cqnz*ED36RCXGK$`%a?+VvhbI`5 znS1)irKK7PACl`8tNUrqR43RK7ac*!juA>Bed&qWo=lC^8vw`i<>W6)-gJwZ2_tfF zu$Xt&_gvkqupC(Zqv@y3dOm&y+6cYPh+)QYB{W2;DVs*dwKsJI#(d589YMzbq;oB z{+Ye_VPZ1TOZA($+D9pVP2GI%pa~b@AhsFV0oxCz%RuvD_7orgXtk<4ye;H~FT`ZP zU}I*-t8g5$YQWP3tiZRx|fbn-X+wpXzN}5E;Awt%5%+g6h$|YgY&Ar z{1xRlvOF#~%Sg=fZyJy%vdS375}ixb%Eks|fun;Wq}u=FOpDUlGE{x<;Ih&lrHmM` zV39T?A;OHVx|F?4X!G)2Rr^P$#X(G*(B%C7_mVfPdvpF)k>zZqw%m&5WD8BEPk|VP zNNPGc7LiyQ&Za-VHcS6BF!h8Y%j+%+-%Z`s@c03T(cL(7*fE;Z=OI)r(nA9e-L)~_ z#{snOl6_SxWMRV|gJ~WlB;Y z4hW87rs$jrHmDZ5`T~Ir3>VKG8K4)&cT}>qz5)ZAJcJ4?Js!oNQFPU=Ezp?udZEz@ z{;RxF^(Hg2eWGV+UN7Nf_HKB&#~JH9K|B9hw?BZllTdaU)dg*KPnF1~rc|H>a?d2}wyWV?-kC{(PCgNx9m< zC|DgWt+HQ9?kojdJkr(-r>?d^Vxjn0+O4b~ zDCBoTLm*%vA0FrE2_Hg!W+WeSd4N3TQ1*P2UJaDPY7M7RRo1zDNvLlLjatb^FdRQ+ z8*fD%RZ-S(+?7WFlzo1lBjre)CH*Rnc(_9j%?Yd|nsm(PTknVi8(%(0?2xaC^e7QF z_3-v;uWkKuAl}3!X6z?a)BT#~z~2k`c?tp|H?5rA`8oVqF(d5ui!r0~`!?p<;GV6a zZ|EVLZQJOI>hyUwu4`HhDA)V&fOWR1@a7=)K^0j-w7BdQ!b%`@`__}sq0)Jls{M_9 znC%=k3I`_FG(r$9;#S(*8EufU8`Hmk*4-EC=NHqXq4XiH@*Bc@@hh^WuJZXIh}Rg$tnb-3`Zf0e1#UC~iS%Zu0mxJC3*X)w-(Piw!-2 zNqkzn>PMdT9FrqxmXq&{B54a75X$wP5Z&ac2^U}H)3J9LrW%Y~?30{G&VTIL1fRmB zQFz{AG?g1|c)~Hvybup^xEONS#6^xRcfIv++*V({2SRzh^738urFmvIOpGxwB=JMe zN#GL8rW=O*T?MN(11a>4w+5mdh{md?i9kW$8R7wOD^0&j57jY_C}(wLw^VPmLN{5~ zO$kii1$37*+xM0;-k-x-IUJ1?va^c~FV6DTnn#7A0_2EXt(J^FFGQlya;H4Uw?XvB#6kPg2de}+R`;cQmp3|zci+pu1|-M%!IwM> zrRvBS1mx`&k^^`KT@Rcy;!)B+b1)T!^)&Z; zrrnhe1`9vEc%Gq%RZX_L48fa1KMC0Q&$H%1{1paxkw}Z6C)=sTzSH+(p1Rt zgI;`u&183Qr?Z-)<6d|z0g4UC8!UhFT6m_)ix`T|eF6(M7j*Z@2e#6P=P=ZPKkuOn zXX?LxGZ_P)W-3ZWa!XHqb&Fy57Ra-+wNG^EE!e)U%dT2)ICt#=d4iIU8Wd=rT+oi{ z@VZ>C2~uO%vUwNdTbu$1QgB*D1ze`-TS5GWjDB4rOnT>Q`$hQ1W_qFuWU|(b!qgLf zX2TXejZqwzhb&LUFC`fE0J5+rP!Vq$5S>?Rj2tY zN+b*zsJ}Aa{)FZ|Yu~{9N&`usw5DG1YA)SFN;t}<&Stu3Bdj4Xx8_^#j@>LjspGO~ zG;3Ge?v0ZjH{CAp0 zuIp90LJgX@E*lQw0J#=jhuo_G1+u=~kIT+>{PG-z_L8l8{C+6c=hxpj)3q=LlaW)5 z8K6j56vR4Ur$%|Jrd$a5kCNyb7Lu_1+YRHG(A+_t)S%I0HW0txl3x=6yWJnt-nY%{0;Yv|}twOhvd?@?z& z5Rz=ur$w^nu{w@IvI_X6BL_qiLz!JSP&IKs^z@MTbl37^JgAL_!TtdSX2Z=r_bkr= zzdMO?tE{CH;$!#~uFV(TM2WE%U<~)Ayhvl+ZZ(!19-pfe$7YBO>eMbG`Cer`^i!VOpUDx(!Tl7k_2kms4< z;IY2Qi+MvBWEH`ASaUk^WXsB4-k*^+DvsGsl%NNG?&o)8Db*f7h`WEQYUe=L#8M78 zt&V#{iB4jR2&;H$8Jaf)O4OG3WeDE$(L#OjX*!Y zjHDIy8&XjU9ZB&$O5w=h*rCsRuyH6~2(44gl@t?zn8NNkM?MQo)DjFK3LV!CT*b+R z!6rT0);pAhGpV};PZz84ZQBTmeOvF6nYAt^0z_wMj|*xr{4*iDia~Hg_Drnm$ugp`PdJwNrO&tCAGxo|X_ZTW`jngj^=y^YppL z-|>z7iC-wts}x`8Jv@DA2$LbzS3oYFGg6C@Eq6TbhDl<;q5cP>%@__(I1;6hP+fhD zN7KYU6b#eaApgTx%|%8Wby!*P8oE}5n5i7>E{Zja2aAVOTQ3ePZrwC0S~Na5V6XRF zAG;*(7%`mg6y~K5>Emdr7{PdXk>;;;d#>-TkR!tdEv=;eI?JTDpIW>y$Ec(*b&d9e zDA;7t5p-d)={U7ORMN>nzV5cvbU6OUxUoLQyZk-vWKu#2M(Fya&dY4q$Y447DPLgS5q#fd@GSxP-=@Ni>#7l zFuC8GdOLCQpV8+`qS^7`eLG}!BNt-goRc29TZ<~|HN8fS4Xp(53$Q*>AuP$M_rV(G z$}V-Niji1&C&mwlHBN-N93qw|Wq~SdWrVY15lj;RdF1^;OSq_FS-X9qtVa;1Ch4jB>C8S*-;q!o*OXwA{FTvnI z5hMGv?GOn8g-@F!k>1Y>!$Jpvsw<*RkZa|KECi%*yFb4LX+U^V&XU@#H?`Fkq9`_+ z0&IyqQEoAG1Ghx>bNJD@k9)BCm_yAf#Ah4zkMg2i|6eY+azpKAVG#?sQg&c%i1 z{(_*KxH2&F83#=+>!jVjrwwjUoQ>t-_l0)^UO+j160l8vefIStDVJ((#>;?*0DXcu z*Lw4#XL)J7D)zF7;2I5 zH9}^O=+v!@+fX7)l90cF`8!?58`gkgO1bQjb`&svn4dKzM|-eonc$^ac&PdZ1?quZ%HySGFiaW zxR*$LAjIED%zmT|dDKVWbspSZE9yH17-l}(6~>vMUJ;W{!+jx(<{JTbAC*&ih4=(t z30JQsQ>SiaP#x@Q#$Wm~J)y3itEpA6#yMcW%bhH-=a-p2w)4#~6u#0H3!I$+w6Qth z(cC#^C->NU5iYk0qdBx3cfssc1f6G&S5u@15dpnS8~f5g1zLtLHZpUS2P!qw)0-CJ z5nfTips_3qK!H}_GFmTL%gxiA%$2>9F4N0p-)eCBKE3=7y`H$VMEF9Qw1lpIH zTL%kYlP}A!pWa`eSEE{O1qsJ@x9g3!c)+h~Nupt$3A_8wmh~7TF@VKR;L)M+JmN2X z1wb}EP%rfiNE`Hd5-X|CGa%9<;UNzvYV%;qjPL9*eCyUkiac#D5^>|im^c2xc%b?{ zx`U6B+GBS=-=LG>_*$ODa~mRWmzX4kM#YGfrYRO(!2IRd{eq^-2FghuK=}=4#y4*C z{tN=*+{|;9^`AmMAHIFPINS8g)t~$D{_}~M<|0a|fJR_n9?iEZX>A&OVFOvewY67) zAN6CVEGk9Cr)(MuWqwS&abb4d=+H}n>qQmKe~b84^Jn!NNgkxG`Fkv@^ahyJVCriO&l7_(r1j0M)I97f3ZOcl` zq*N($IgUmybJolnLGf+6#Nl&+!qj!FtE_FB^tfK&@Y|{+DcWnfR_<$fecd4RWiMu! zO@n}-?7zR?bU*x3k7j-SsBw*pG~JYE`9*K~-02I2sR5T3B5mv4-PzC1Jxd+>XJkWX z_{PzYoYnX%159Yu7$>iO)WL^*Z8NH~k+bfWrwBfmpaj*XbqLb2_5ITy>BogcC_T1* z>)>ACKrrhsj4dw!z#BNTIn1oiMkpm>FvWJJ@wRJJGwy?bw{hZAofNZ`nl+JH(ZgCU zQTY|3#4`ggkZ4cf`~sp1JvWnC%3ydlQLO%ZUb?{cB0{lG>Drs$y-!vQ-yeNCsnfxR z<9Z0L=?A+QKGn>zIK*N%Ks)(Vu2X)Rm-uc~nzbqa!&6BGAuT=p4Oi9lx3g>A>9gL~ zD~`ejf(lL|hb`)=^h@2|BX&D`Ije<)^4{l!2K_y!d?#}bTR)*Yl+Hd|@K+_Ycjnxc z58@>ei}7T!~+`Dl^VG0~Q<{>ZrY7i35k-tHIbQ6iIPP|ghh)GKLE_9-NB z)2o$TwQ1>vxmUBKrSMIoKB!7On=jw1olUZptN^X&CRhHHq2~3v>p^2}Al`GsL;DVz zy3Qw)ph2X~y5SEMXW=wg z8;2MM(~1?;Ps%RTM<<4*GGMnnk)mP=oWH)B&soT6Iat_~6TJPI4?E1(N#`oB?=O;V zG-Q=n3y-Pvg_)grMur51lFyp-=Vt!O1ajw7Bd^gn6SFGz)2F23j+t+`E#<%EPJLzX zi1^v0ssVmr8ji)lY->}vjP=Xf?Xhe8=b>j1hqID%JQ=K0P^*xc`f|V zZAZ7qgXFSA{0t+o);6*;<(SAV%c}q6y~e+j83WHoI0`^z0V$okot3xk=y4q{$7m*) z3}UQD&w~Le&lSM>Y>2{~grYEK*^XGWVed+iafWhDW!v#ik-8hIu ztjbx+kOGO}v}`^TndzJrQM%RDGvpOm6fs;Ez9L9b`_-t-Nk+GrT~v2%j4OI;F{E!> zZ-j3(=}pWXv4@-x{I%`LFlPr2i=PSBzBgQnPA0B6KmX0I0hVf7cgML74-P!~IIfLi zH7R0=h!s6N%%Fd&=wr&vK#*aI`IXd!Nbr}g;nzt9`6;`NR&{pNuXqdpejvuAqb2vE z^J8?=VS6LTaW~kTa8v+Ct zH4M%$98W8ZH*jNbf?VC#49dJhL~ z&qRQ*J9khIrQZSWM95EEZ__U$wU}q zggN=1TXz^=hQflckH-|MY|uFone95tdoVrhri2t<#@p=W&|CD9a46=`F<#0;MbNyi zv{FW-+00j5=({Lw#~y0-ZxBr?LUhqOC5owW7F-ZXq^F&-cVEB8uXN!r-WYD`1^>+( zb{S;2CThC8M#UpVMi-6_NpamnOE0L#KfP9az2)p<0_eWmcX_iT*@XsH(Zz#liV5_O z$}$KOy0$xPv`1NFq!$hF!_f^(;FIkBq&|vd zS!eo7+wm1VE0kMuY4;`?d6$TXavzSKwVa0%)nTv9cLdW40z?SfaFg08AaKNWsGQiT)0# zC2_PPh!(hAOj!5L60qMiqnvyyGn{hL?aIHl+h_49ZnOT)M*Qc-ZnucaK;LfXBR-6!fth*Bkjhx#s1Z27C$xy_lQ z_&!!y?Sgd};CG_wn}vWIxYJ_0FG9@tXR*ETj&2g$l!Fu0Zo1*>xzi#(Yt9c^9(Sm2 zl47GfnhmQbhoI!}t!a~7QQvI*47jZUp;0TD-(^;J4!ou&UE>=QDaA0eq+X3{mv+>+ zxfHqy)dhC^(m0qmpYYuX1=~FCbxaPT#`xV&$Tseyg99(}E?+L~vfrxr^Ix3#&hH!F znoH+h3$aNReO4dm-%^z^a>H}hM>(bBz|-SiY+iKvbB4v34L7Y~`IN51g>Pn*9ror> zVwV?J_MP=thtEx}SLdCR4M&DulFhrXy@FO@LkM|sHf;P)N%w#JcHP`>GH~9PJMUsz z*&6Dw70NihovPTL_xU;W2RE}k5*_KmYf|^MeyX*KU|&xG@)=nBY&CAdrn8~FPUeXq z-ye1~p@$T@O(?U22g5j3Z$s+bEq-K#SI!{i z(&}>)XtF!Q9KdNlbOg9L+v~mtW2FRv@2gCN?7Gb`Gs#ol#Tl*^#4@Q*U=VXW7l>U7fxV zHuFoc32H>dx;m)Ujf~f(YpWz*F5pK8+8l*XxR`Y3O;8|U8%;mefxYVx5NgDQa;@eO z*x1+<&{k3)2nqRH{9lhMCG+Qmmc4%#fbI$jbz4ZEpewP}t#29w@nZzDQz&=p@DOmHX`r04({QaWI#g_>wILV+0{QLYam| z8o9K7x2e5y4ks!YDKT}7)189T7IiHwlmL}nMW=Gt;)c&>V{=!a>C{#wFaFiPQu3%Y zVo|D^)FdIZf=76JR#gf{jTx3%HTMVUbqsbVa`)_X4quP#NlcG?Ysy3A-(xbn79aK4~K?A1e3`=Wh|QsT#P{pZ1)WJv5BD9Si9KClb+JS@)H+ zNA~iaA2$PzSwVX2Y3!T%_dix|E*5O~C3c$9w%_y_-@AgQ)uDTx+wAEyva=oo0@$cKP1rH13US zK5x~kHf?WDzhCzpwg>_h znCi7ueG+E`_^V6nf8T$WaW)@!0L?$U{BBF-0=i*!$4O1R-8L%wnc<^J2FF+5D$Z*K z3bmX%)F#-uu+&Z69u!6jWr6`M5G&zjE9+Lxv8ROkpMPdEB7ohHqMU!D+I1+o{;76u z-@*_xfraj_s$zsHbbtRPw9!sL_0P^(^vbd9)r6~{CmApN6#@X6VWNYM9X zM((Ri`MsqIOFo4ir6SJYj5H-cQks!+3`r@_fMc4#@>nt)7Ex>71a-FY;td3}XQL#*idG;6j=sTOM-+V}^# z1T`Zg(TAauRSjWVg|^m{zIEW zO#t|y3$n4JW}H=D){?~berb}skL*-Q&|6&x*G8RfaCg31qj%xg=$UYLRKtYRq`J*YNng zy4-(B%vbq4lR=Y`Jg8y@HlJ!ZTw#ht4b#-eLwXu|L%TUMW@KWcQ&U3#RvPt6v)dPeC55HHRRl&$G z>I<1#bGAtE)1-@~1(f|^8$S^3`P@Vze(LY~PMS(k;je8yqbcsB_wSm6|Ek=TTV>K+ zr6lm&sfg|NXT?hwms?#CHPY}3rjIrp9)Oc{1^WuU?SFfl;-lb0;6va;;Qu6G0GZhX z`+o}hDF2TI1ZBa)P!JHhc9@j^aozu3!KGht4)VWe{a?NPa-==~^nVrkKZB4Cg1P^t y%#N_||ASipKSK|~MjZZM{`9~4kW;-U{r|Bqf9vm%{u8|a_36J@(eJs45dQ-bJruYA literal 0 HcmV?d00001