From 8a4e9533deb967a8fe21ed2e8c8053e23704e99a Mon Sep 17 00:00:00 2001 From: xuxinchao Date: Tue, 1 Aug 2023 18:26:56 +0800 Subject: [PATCH] =?UTF-8?q?[3.4.0]Taxi=E4=B9=98=E5=AE=A2=E5=B1=8FUI?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/res/layout/taxi_p_base_fragment.xml | 2 +- .../hmi/ui/widget/SingleTrafficLightView.kt | 105 +++++++++++++----- .../drawable-xhdpi/hmi_light_green_taxi_p.png | Bin 0 -> 18696 bytes .../drawable-xhdpi/hmi_light_red_taxi_p.png | Bin 0 -> 17887 bytes .../drawable-xhdpi/hmi_lightyellow_taxi_p.png | Bin 0 -> 17847 bytes .../layout/hmi_view_traffic_light_taxi_p.xml | 67 +++++++++++ .../src/main/res/values/attr.xml | 2 +- .../src/main/res/values/color.xml | 3 + .../src/main/res/values/strings.xml | 4 + .../union/IMoGoTrafficLightListener.kt | 4 +- .../v2x/CallerTrafficLightListenerManager.kt | 4 +- 11 files changed, 155 insertions(+), 36 deletions(-) create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_light_green_taxi_p.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_light_red_taxi_p.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_lightyellow_taxi_p.png create mode 100644 core/function-impl/mogo-core-function-hmi/src/main/res/layout/hmi_view_traffic_light_taxi_p.xml diff --git a/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_base_fragment.xml b/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_base_fragment.xml index d82b2a051a..5367e1e268 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_base_fragment.xml +++ b/OCH/mogo-och-taxi-passenger/src/main/res/layout/taxi_p_base_fragment.xml @@ -99,7 +99,7 @@ android:visibility="gone" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" - app:traffic_light_user="taxi_p" + app:traffic_light_user="traffic_light_taxi_p" /> diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt index 9c8b4a77b0..8c229f8890 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt @@ -7,6 +7,7 @@ import android.view.View import android.widget.ImageView import android.widget.LinearLayout import android.widget.TextView +import androidx.core.content.ContextCompat import com.mogo.eagle.core.data.config.HmiBuildConfig import com.mogo.eagle.core.data.enums.DataSourceType import com.mogo.eagle.core.data.enums.TrafficLightEnum @@ -20,7 +21,7 @@ import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager import com.mogo.eagle.core.function.hmi.R import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI -import com.mogo.eagle.core.utilcode.util.ThreadUtils +import com.mogo.eagle.core.utilcode.util.ThreadUtils.* import com.mogo.eagle.core.utilcode.util.UiThreadHandler import kotlinx.android.synthetic.main.hmi_view_traffic_light.view.* @@ -58,7 +59,11 @@ class SingleTrafficLightView @JvmOverloads constructor( override fun onAttachedToWindow() { super.onAttachedToWindow() - LayoutInflater.from(context).inflate(R.layout.hmi_view_traffic_light, this, true) + if(trafficLightUser==1){ + LayoutInflater.from(context).inflate(R.layout.hmi_view_traffic_light_taxi_p, this, true) + }else{ + LayoutInflater.from(context).inflate(R.layout.hmi_view_traffic_light, this, true) + } mLightIconIV = findViewById(R.id.hmi_traffic_light_iv) mLightIconBG = findViewById(R.id.hmi_traffic_light_bg) mLightTimeTV = findViewById(R.id.hmi_traffic_light_time_tv) @@ -71,8 +76,8 @@ class SingleTrafficLightView @JvmOverloads constructor( if(trafficLightUser==1){ hmi_traffic_light_bg.setBackgroundResource(R.drawable.traffic_light_bg_taxi_p) - hmi_traffic_light_source.setTextColor(resources.getColor(R.color.color_2D3E5F)) - hmi_traffic_light_divider.setBackgroundColor(resources.getColor(R.color.color_2D3E5F)) + hmi_traffic_light_source.setTextColor(ContextCompat.getColor(context,R.color.color_FF213757)) + hmi_traffic_light_divider.setBackgroundColor(ContextCompat.getColor(context,R.color.color_CC5C71AB)) } } @@ -89,17 +94,17 @@ class SingleTrafficLightView @JvmOverloads constructor( } override fun onSkinModeChange(skinMode: Int) { - ThreadUtils.runOnUiThread { + runOnUiThread { when (skinMode) { 0 -> { hmi_traffic_light_bg.setBackgroundResource(R.drawable.traffic_light_bg) - hmi_traffic_light_source.setTextColor(resources.getColor(R.color.color_FFFFFF)) - hmi_traffic_light_divider.setBackgroundColor(resources.getColor(R.color.color_FFFFFF)) + hmi_traffic_light_source.setTextColor(ContextCompat.getColor(context,R.color.color_FFFFFF)) + hmi_traffic_light_divider.setBackgroundColor(ContextCompat.getColor(context,R.color.color_FFFFFF)) } 1 -> { hmi_traffic_light_bg.setBackgroundResource(R.drawable.traffic_light_bg_day_light) - hmi_traffic_light_source.setTextColor(resources.getColor(R.color.color_2D3E5F)) - hmi_traffic_light_divider.setBackgroundColor(resources.getColor(R.color.color_2D3E5F)) + hmi_traffic_light_source.setTextColor(ContextCompat.getColor(context,R.color.color_2D3E5F)) + hmi_traffic_light_divider.setBackgroundColor(ContextCompat.getColor(context,R.color.color_2D3E5F)) } } } @@ -184,12 +189,22 @@ class SingleTrafficLightView @JvmOverloads constructor( if (redNum > 0) { resetView() mLightTimeTV!!.setVertical(true) - mLightTimeTV!!.setColorList( - intArrayOf( - resources.getColor(R.color.hmi_traffic_light_red_color_up), - resources.getColor(R.color.hmi_traffic_light_red_color_down) + if(trafficLightUser == 1){ + mLightTimeTV!!.setColorList( + intArrayOf( + ContextCompat.getColor(context,R.color.color_FF384D6E), + ContextCompat.getColor(context,R.color.color_FF384D6E) + ) ) - ) + }else{ + mLightTimeTV!!.setColorList( + intArrayOf( + ContextCompat.getColor(context,R.color.hmi_traffic_light_red_color_up), + ContextCompat.getColor(context,R.color.hmi_traffic_light_red_color_down) + ) + ) + } + mLightTimeTV!!.text = redNum.toString() } else { disableTrafficLightCountDown() @@ -204,12 +219,21 @@ class SingleTrafficLightView @JvmOverloads constructor( if (greenNum > 0) { resetView() mLightTimeTV!!.setVertical(true) - mLightTimeTV!!.setColorList( - intArrayOf( - resources.getColor(R.color.hmi_traffic_light_green_color_up), - resources.getColor(R.color.hmi_traffic_light_green_color_down) + if(trafficLightUser == 1){ + mLightTimeTV!!.setColorList( + intArrayOf( + ContextCompat.getColor(context,R.color.color_FF384D6E), + ContextCompat.getColor(context,R.color.color_FF384D6E) + ) ) - ) + }else{ + mLightTimeTV!!.setColorList( + intArrayOf( + ContextCompat.getColor(context,R.color.hmi_traffic_light_green_color_up), + ContextCompat.getColor(context,R.color.hmi_traffic_light_green_color_down) + ) + ) + } mLightTimeTV!!.text = greenNum.toString() } else { disableTrafficLightCountDown() @@ -224,12 +248,21 @@ class SingleTrafficLightView @JvmOverloads constructor( if (yellowNum > 0) { resetView() mLightTimeTV!!.setVertical(true) - mLightTimeTV!!.setColorList( - intArrayOf( - resources.getColor(R.color.hmi_traffic_light_yellow_color_up), - resources.getColor(R.color.hmi_traffic_light_yellow_color_down) + if(trafficLightUser == 1){ + mLightTimeTV!!.setColorList( + intArrayOf( + ContextCompat.getColor(context,R.color.color_FF384D6E), + ContextCompat.getColor(context,R.color.color_FF384D6E) + ) ) - ) + }else{ + mLightTimeTV!!.setColorList( + intArrayOf( + ContextCompat.getColor(context,R.color.hmi_traffic_light_yellow_color_up), + ContextCompat.getColor(context,R.color.hmi_traffic_light_yellow_color_down) + ) + ) + } mLightTimeTV!!.text = yellowNum.toString() } else { disableTrafficLightCountDown() @@ -247,28 +280,40 @@ class SingleTrafficLightView @JvmOverloads constructor( private fun updateTrafficLightIcon(lightId: TrafficLightEnum, lightSource: DataSourceType) { when (lightId) { TrafficLightEnum.RED -> { - mLightIconIV!!.setBackgroundResource(R.drawable.hmi_light_red_nor) + if(trafficLightUser == 1){ + mLightIconIV!!.setBackgroundResource(R.drawable.hmi_light_red_taxi_p) + }else{ + mLightIconIV!!.setBackgroundResource(R.drawable.hmi_light_red_nor) + } this@SingleTrafficLightView.visibility = VISIBLE } TrafficLightEnum.YELLOW -> { - mLightIconIV!!.setBackgroundResource(R.drawable.hmi_lightyellow_nor) + if(trafficLightUser == 1){ + mLightIconIV!!.setBackgroundResource(R.drawable.hmi_lightyellow_taxi_p) + }else{ + mLightIconIV!!.setBackgroundResource(R.drawable.hmi_lightyellow_nor) + } this@SingleTrafficLightView.visibility = VISIBLE } TrafficLightEnum.GREEN -> { - mLightIconIV!!.setBackgroundResource(R.drawable.hmi_light_green_nor) + if(trafficLightUser == 1){ + mLightIconIV!!.setBackgroundResource(R.drawable.hmi_light_green_taxi_p) + }else{ + mLightIconIV!!.setBackgroundResource(R.drawable.hmi_light_green_nor) + } this@SingleTrafficLightView.visibility = VISIBLE } else -> this@SingleTrafficLightView.visibility = GONE } when (lightSource) { DataSourceType.AICLOUD -> { - mLightSourceTV!!.text = "云端下发" + mLightSourceTV!!.text = context.getString(R.string.light_source_ai_cloud) } DataSourceType.TELEMATIC -> { - mLightSourceTV!!.text = "自车感知" + mLightSourceTV!!.text = context.getString(R.string.light_source_perception) } DataSourceType.OBU -> { - mLightSourceTV!!.text = "OBU" + mLightSourceTV!!.text = context.getString(R.string.light_source_obu) } else -> { mLightSourceTV!!.visibility = GONE diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_light_green_taxi_p.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_light_green_taxi_p.png new file mode 100644 index 0000000000000000000000000000000000000000..5880ac9fd672698a6651bc56ef242c4d9e62bd3b GIT binary patch literal 18696 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 literal 0 HcmV?d00001 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_light_red_taxi_p.png b/core/function-impl/mogo-core-function-hmi/src/main/res/drawable-xhdpi/hmi_light_red_taxi_p.png new file mode 100644 index 0000000000000000000000000000000000000000..35886c0737bd5558522f5ab340a609e45c08945f GIT binary patch literal 17887 zcmV)SK(fDyP)Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91bf5zO1ONa40RR91bN~PV09Xppz5oC~07*naRCodHz1goPNp|0t%Wt_$ z-P)I~?&|60a5znLi=>AG2^^UQ%X$zXKo69teiC57Z?s{+@B<%>a_Jw?yC6tUB5jNx zZNQKrpogY00^|`*)7{{Z!(q>K&2&#y*Lv$Nzb(_B&&h~i<^9#&s@I{xxHo?p84(#7 zalUa*oH!8~Sr-5Qb>#_FYfp&(YZ+brwJi1D6#7UCoYabsyzvW+SeEh2VyR^Tx=Mdp z#W)qoSIT;-dp?gu%X0i&Q|pkLFALtqed)y?98$)=c0sp`Vuh}stO~b^;!6kQla>70 zU7rado@IAxUp)6T)a!!2ohtJnN_?3l|(HOXkMII1n!C+|rW+4nMzhugm-9l~amT9;!>H?jrqW4yL>Z z+)l!1(D%k->W>Q|4ah5wLIOu-^HH`yG%MQrNw8 z{nfSSiTyp&e0{5E;~6)*8?L1L4uDJ{abUh=tJ#YPdc;q6TQ8~$_$+>V`F|GK zbp$-Fq_>l3y~X4D0Q&T|d*J2LNZ`z2A0|NFOp$NpM7?v4>jfR_eeaOicT-r7yPg_= zfFA%irTcatUBU#IdWNH(N0OsQ{3Fw(Y)*apJUR5#g*Yr>=Ei>9X~6oye z@cg`oy+Y)29R_SK*_Y<+HIh$NhRElzW=2bmI9h7BK3A@CWS<)^ByQ|;VJ2_}?aqy& zy!WC2o>0vz0DR+42lCev*qKwkHFNL7W4N}@v2v^TL5FbA;W;t|fx77D;?ixWK7FAa z+6VKf5@xZQ`@Nh_FyGlJVwiPrp15$5V~gTO@{Xo2#-YzqM7G{I*a*lQf0IOp=H8qq4tTPfQNCY4Lt&NB@)_mOgC=Ezav zJcwEruNQ@cUIp#`tSDbf`9D~^7?A0<<>_MG0rL?dmxi6c54N0Jyida!q`1Vra%`Vl z&2TA>sWkuLGN{l*js8%QB`^++OWB-w`dm0vAboNMGnXR3InY>j;kEQ#I;XWfW1gu-a+)jDCQ5217?{kdxTrY|{ z;Q`ph(r*bY4N+kK+%!FR6X2|K2GuBO(xcC(0?+(b-KPOG2!2wDs7$2G{be7_)qYa0 z434Cf0VHQdsGRr}{NG;zYwt`^Jq5@)aalyK;n!tQ_PWdE?|SlWB_O$s^8FN#%Fh`% zaQ$fqWNtWLA?-($A#<)-P|k2ljVYkM#rfUT?+a`Ufo>M1+!~;MJJI0??ld!LNnxTq z>C)gAa{1;Lxhd}H19>|Y;#SHfgXrZdkXwuy9Un@7tmH)B_0ezEe zIajf~1+aTbESqFXxZ?PSNn?KdNwF|IbE^I;SGvZLIn|Dp|8USNlQo}H%rp5*z;kiS zL_NYQt~BsqY$&lLjXZak`YB?srLmld^$c&!xSc!T>4af-}tsPgZ_bIn&CHA&6|Y z-4m~h)dBtFfU_KV4-m!s0)7FM3n5%L-M3j3avt|o0=AETLIc2CR1kj3byj{1JItvp zjR3Goz>fEec8%*@!V#@aaPm%fCma~udx`Le0BWPSGAtT7b`EfJ`d7vAJ;D{kTlS@} z_k^%KhRwhp;MByTnN#8D;KEyna3htAxUNJ;|DKjZgIGsrlVTF08B7%*E2&e1{Q>6y zlk*+=ASzezU##yHl|a(+i;wp^G5i+ccL8;>S(N7hRqhi+&jb2UM-MXq-Y(V)IklRg{7nGLLIrMZD)G_*h@pIqm}HS;F?co|o;mPr!}MkMn%3XyjPHt`SqW;!YwoOuO`Uw0_L^^X!)s@TA|(Ldgq6}4jX z8bo^paDsHX*nk_`axf|?xv;6)s^VG>olo&|ub`TCmO$k4IY5ViXgaxb%9%$LE!;OO z*IGeu>avu33nI@nd+o<5?fIr?en#Rc<+(5{7WT6bXk2r-k~Dvd`Z#9Awc8hqN>2S_ z9s+-t2Yp%_|L3ul(Pk3;h%G!H$}A= zw$(ZE64V80&vBjstZ^`TaD-gu^Jc?mWv8!R5@}n&aByGK3SwEd`olMr zKkHWyh+m%PkOm(a)VeF^4{vQwqom&|6%q0KEg4M*S>nviJql zG3EDZ-MauK*9x9s+D|S7XueSm0ckO7Ioq#t9>SUPwmu8l8p23eD{h|>zQvi*Mzu*^ zDkyWVQBn}d$**755OM+uMu$_+}{wjvWabg@a;-k>epsw{VBZFy->F7}%B zdblW>SyQ&dc2{Mnf{8EA36yt<|2!0>AU1g) zeOK|;VH zQCsTN&IA(eXq>pTh8q#N&0ecZ(^a7agE| zOkNIm763a*3ey=l^}}S4*usAeEjT#!4x9?Wf~xCtYBoGT)=c(%ekN+3#dR6(J8PyC~qH0@@CS>(yW|;Ml@HDr%(WU^E=i+YZ{%VAu{l=J*X8 zwe`p}>+`|zOf{%^%5Yv5!zni*?gzAh!N6zK#bB~%2c^%V44ah2GAS*l9Q&wCmU%DL zA?iY%tebVrb=99~AWfu=G|H||JAe$AX`IuX_PiwYVK>k;mhrcfpMpeKe(*atF|h%r zR*|>JB*biQXfm z)`Q^adVvvv=xPjC&W0^XiV(|kYl)(y$fl6;UzBwqMyk-bnouoBXvwfQjI0PHj6O2_ zWm7Ju$N~6ou|^ymw?G4K7^gO9U5g5FyeBs{<$RZO1-CMMX$JFZ(d_O-e>#9`<+Mz)nT5D=)Iy4Op^$v zYWnKX#JH#1otPC&4F$I9i-_30cC$P;Z!46L`V3$)20?J43<2aEam)B_uz~obRn!bB zhNE&&u90R!7^qcLpdR6GD%u8sZtyHLT&@9s5TcjqJ!Etm!nTObHN++?j8q0(h+Z~} z2BoVR0@kc-n+-Ywl-YKFQO+mryg6I7vkerU1y59^J_C?6vVxhK<_Ya&hfFWc+xGFs zCgazg;yzMn9n<1PM6X>7voRHlU?@zhLz--SkcMF<%yi9&O1$S?#^*U;j{7MEsp3iZ(b4=4i1QVrz(wxjSeF4Pth}F=~ri zWr)^4+Cmut;z0#R)-}2&iYC2Z1ww<3rmZVN#i}X=6-A1$c~w`4;n0c!3AL50>>w!^ z!;~mtM71#AfFGJmgG$t(B{xHr<#xUx-9l}8qZuqP9+Zn}z8FthxwG1bvxkTQie92# zJ9=I0LP-oA^C|LWgbGa8+*sEg#>GDV26Xrf&Q}P}Lz+7uqGQmPzGVX3AEj>VW^cJ^ zrh5;E=RoZ4?tTvi^sqYsG78ooq6nr_U~;A|Y_q6#=McH0i$!^ruszbK&B~cpP%(RP z-Ttzz5UWEOgmGMjNF5C6wRY&s=w!?5aOk5k^rv4$hC*6L6zvd^5C9W7 zTQ4|YxO(o&*7b{TjW$NF(NkWp>*`8XRqJJ0t+h0Sw!wzbF7_9T#m9@;{KM(a?9TSb zPu_d*)B8WJ;m-MN(F{lJY&NeKDn~Lb8Z(?(%m=f<{OMq}SZ~VN)|^ob8rFod5(?7n zAx&rpj-|gZ9pa4EHs)vQ-C~Yb3xG76qIK#|@w-mIUFx^}fJun!MFU;yZ2NWk&8asX zbPgC$l5&Gw!je5XqPwH}JrvM>g5&%y!_Y>%oMlLf^K40tGNi~+S-_AG=XI1HEj|r^ zu7lic49m;_i~g{3_<_Pu(O*6u7sJ6~0AIEPv`~hGE!s;xkYizu!Keh!x*cA5>EbKr zU%ULDt!-`m2GqO?zjaMdJvMbUfJqn+t%^GnD3R+K{oqz<`e|&wtAH*ak{@;}d1y%o zoZKmAzQv)|W~8$wFLVArhgKl9Jp0QSXEHPywP#R(5P_3sFdi4xBQ%=<`2cus7LgjBOsfW?RZww8#)>R$Vz|Jj<#O8^x8{byZ-iIZTzbNoS+4Wr0l!E zHGVpLEvc8fxQBqUJiB&g?eEbj{@#^WFa7xbPe1;je)d;)|Ab~Y#i}%K=GCC77PA^@ z-3-d*bO+-;mA7uCsvsdu`{@GSQpT;9&9j%pSBD)1d?IL z#>K6x*MIrO?~Ko`e~W$(9=D^kB>Z>|fB$R%_0HfeLGRLgsY>jPax$9KS1!N$((j$W zdhxycAAI}=4?g_(FL?&du14e+(*f%Fgk)=j!E|>qtJ+=0rrfI`{t}?>B6bn6#U7>K zWWH|-yeLWp7R{^l8F%5#hbm2I&8~=W>J8BwCAgZWf-KGvE@6^u`CO`F0nMr5&gaZ~ zc|liR%oSXi#E7#d7tsFpxYocP7NE^dBw1S`YO2s?5xJYFEc*i#8o(7y6(0;WL##BM z>(LaE%2<3js2o?eqgTK2_21dNwDk|DK6(?S>wdao1~R$Chr~rx+=NenO=BQHq8^7I zlY9y)2IJwIFMaLhe|G+*3*Y_m_y6i&ReOtVy2oO&sLKHYmw$@h}k)Vd-}NnR)+B&iZ0#LXsxL*8nkO0>uYCT`}JS^uZA0n*ST^2)=LOw~t0x?^K%a)ObE!cegO)>{@+_P! z?PBGFbfYMOdYHyb)B$Jlbpc4{O@p&^aoST}lj?9p_iA^FUu>PB2+5VMDqzV5qPAf8 z)`kLwII0>d$=IY)p_ShM!EsOw&x`9Dmv~-NG~X zKO6+RxS6g|d`h(+#X$3f=^$>o0e5Pv9b+6=(84g8l`b3E!Zh}iDMJXZA2CE3u5VTo z40Jel-!nIoaaW~`l;Lq*eCGN>ND#SAMDDn;04F9No$*CEOoIM!Be>y|TXlpcu3u+PCuJ34pe!u6Ma>E-_h z+E8sW6udYrK?HPX?FNR26WA2TKr*}?1CoUB#G!_F;Og<;I6WNt)6rcLOI*jf%=BD3 z|6g8x0`{0E-_>nSfj35jS=BEpJV?=LXPS@~bCKWA&IGDUKtmtA#-t&;Hqy z2ai8!nnv-`PSKK>8N!@6C?5~8=EJMZvSBzZ7CTg$zO%-#KcCTm)@XVcFgol~<4iLj zBQ0+b=P)J@VeaPVivfrVYGPK0GP#6OAp9qCXwFY%C@VycKa1D9m^_Q%P{kJKP{lPs zQ?%QOW<5F@TPTWBz3Ctv^|ir5P>%t1E{HWIR0br8Gv`gU_LXmb^>?dbjU5F7I|c|P zh4NbDAa?Rw4G*1Z8suEZRs^6@X3om@1xn_}O&TCP2!p%04ZrDmX51HP&CYPMGk@>p znl^gr)vN#AXgoSs4!b_JMfSiQ!wKC;O{YuU>*>50oT1($ltE0D<-;j9=w_poHquC1 zMPHh@G}BVr290@apYB|q=uQpjYEFuV`?M(EEpZXFLzS2kqZ@HS*BOj50%;3WF>npg zK45AE!UBX5tr%<$3zy z%atND!cy7*q6^bl-)XhRc`t5xPGQUZ6Ua0e!8KpFlH1E`*MITG?{XvkJ_6SA59`6X zAya*tG6}p$x1uG<`aebd=H)RReQ3&LBh93pG?bRo^f0k&5l`cmA~)B^n{K5$VefFt zaJ4R5jfbYb5V!c1{Vsw=MUQo}C<@Eo8q6J z0G>#n7=F$@@QrbyQ8X6)>0VFuVDPJ#uU-1aqYv+Yk6F703$R8Im(DCUn?bW%&o$6% z$ZvNs;4_KPo+G2D%%N()*VrHc($0QYT3$!DXB9-yIA&s?yCOFAqdfH)KKgYA26;Gt zA`Vr?n~`QO&lbqD9ew9Eiw!)k19I~EJj&1-=WQ%Q%xfruRf1{_>r|7KCG?}rd0zVJ z%fAg#>4^X(2$u*hfddRh9!C~`oh(eCc#mM3mf{4c{3uQdi?O9)LbIppMQOAYwho#ym!q_@#c~K5)wQNqKA|C6u|=*TnPYO zbVe>+8W^{E&IbUcp^Z_QE8`qFc1fdQcuQm;uwIxye*UUKb>s3&m;O`wl`*SkG!LQ^ zps~9wq8^mmt9hYnpk}W@We81T5jZrGR?;lL+L0a`%8@kAlOCD&eLQm7)$_4{t|s=n z-*U35ozuk<3|gUv1i8~SLG~Z`kw+~CF#OQKR?MVkJ)B|eW2DYZRLzXZKSCj4O#r#c z2?>+PJ9A3LLQ)1@I|66RPBgK&k4U*(fCVDbdXFHGAg+B*uQAwod=7Cj^PRZS{xSee zWeDzNkrLfVluQu<=p>>|=D@@)1mY=P#XmWiVQMD|3ky?`!}NO&6ThdE+9T|7yUvhCQy}doXs5O-Eq#?SwB1*EB%0(~&|Y`f zpNz-1y*S(*%Aurp+ZL(xoXZ+meskLQGxMS-6T8^U7N~!Us=kg^Yd?bAMU{7vd(Bi7 zpiWth1E<2BgEQC8eJgWLfWhs-b&|0UUidRG2_0>*0ZdMt;sX$25D||qKJt^>2xq~8 z!Er>t>+>wQj$672!ssg_i{N0dl?)_^QBou<*0A|1ZD7AJl(>ol(?iYL8JEK_^el=E zxYVq5_M@)chzowCp|tcm(>BvOr^)Bz@L4_}C%(M`q}o*;f95p#d=-zw5*Iz&xo34; zgFMSYSbm8@z_Cvy(HctL;9}K?BA5P@19<6n=xR6DeqG|VtksNjj3@O z>3|@NCLZY&)ft48F3>Td_Z#2c6sN$Ma4!O^{0#Hc?_U5&rcsRUx>L^ZTOR+2(?{?5 z#&BbJPUWtdRWTvY@`?(>d@N|Q+mRMD@RBuBVcX91l6KNiT1wNyoERiccNx8kl@ZSY zx=h{ke6#1*>ySlR|Bx1CA+qz8zDH{;al}5k#!BV|A_V%lg2YK)w0hv<+|YLp0oguh zb8G!7Gai>aFrl4&7A}YhL4$xQN>Wwo<#Ue9AO%?kx4Soz35a;aZNw#iXFM<~<5Qm8 z(1Gp~m^QI(rG8ks*lD=%wf=Z^7jLFE0Q%Z$edElVEQdkzINp{!5k%Bk2}Rv2rqyEM zTLEo+x#|)0>c0jlEv2cnmBxLyia|fF?>`lw{TuW<`0a=J_OvS#3{#XifJTIbs70)( z$wj3qdR3QMt~qE!+#>Mm^^0fT=uqG)0Psu(nP@?Dh!+Hwh#Z0zha4g(22v#Nlj{<= zkw~B{*Q3EZAY@a0v0xUot z0xW@p;2GU6+~BUClgM%mg%FQuAcQT?DNoV|mXS>dwrQGpZpVdcw*rQyEiv`!CZh+P{m_Q2Ba#?||plXjh)z%RI6^Y3Vv$D^61na0vw+Mm`P zujL+*i?24UMrp>H6X+NV!$`&28mEbzL5j*?d>7!sXyGC~fM)RR8L@OtVnTjf0l%~{ za~Guu^EbTtC!Gn62ru=(*@0rZHYk)U(|N>ycNPG`dXI_gNFSM!Sg^xSzJh38-XV~2 zV+Up)%XYVw*D%Nfq`Fa4&5%x06x|6cLRm?}FlAP4k%voh)H8fTN{fWFb73|mUb>)h zVw`2*DLevd@jkIr-KN3%=2r}3SO8tJ5Lr`uIm42K)xBgftyl$!zSB7_HG&~_qn~Ln zORxYllt69}U`xdzEyJIyYm}NT^^YKb;)n?RaJTX1Ar3}nKqE7+&Da=1BkRtf08b4;m5~>GzgFR7MqBqP1cg_@u*nrjkt2^4BA9yW*c2nbW3KB zb1dq7@`Qs+GWtX=9&joSbyfFiI%N$CxnHnIs_H}koJ(O^DTpS^f;Ver;ZG3cJ>3wi z-T<)zh4AwuMdLq+l`kP^cO6yNZ&kcif1Coz$WOp{Fwy+kH|iJINZ)a4cMmaifGjUf z*>&jyz}%>4Au8YV;>rY5|DnO6QgUNMQh!?)>n&(7KYwMGAy68J7G%KrEeNNv&Yi;0F9t>sCn_Ol^ zyX~Nm0~mWtjbH;ZkY14!UOa*+K-oz|Ik8J+;*Oi*T4EBJa8BHqxYEE#Zti*_W#r|f zBVX?&E<|}W43{5RneO?l_K%W;HHje0#os!;M!bxSy1+lL$tcCTq|wOtbK!euX}HUg zY1)f=A@8w(<}ql0XmZ-zA-;_}j;AoF#(CCFK^@EqW?~%uC}aTC!~!BFtt4pXiU{Jz zU{68&?%H&b9wINTL2)0~#)WDeH$+lG2q!_@mw>iN(IPU?k;=zx%ZoQ*9ex+i$ESk1LQTst~`d30ELjX;ef`a%q)R5`KjUh>c7spVI}wH z;f@6~uinnPQ@%(6oYP|_#h#N@)7?5%7e1w$(1Uilwe5mefKZ4NNI_6(6(k`|<|va3 z7KDqmoTZ_+J>xnqpkjwY0uwB}Nkz%=rs7g@YCfj*FD_DMOC^b%J5EgZd(B_|<>vU0 z^4MdhJh|UqXz9>iUFC-W;f)VMZDVQ=fCRqszRe*w zp6G1NIE?cln1aT$*`sL_Z%-2Vq-P`9Lk;+fGGpFM%ELKPb?Ybc1WKb)x zm@e+YjlU3?2N2z3faMZF+QUDn65J#X< z>7D@GR+GTa5+H^{n*O4}@lfNj@#VHhi}{$VxLq}fnKGAiw!Gj}u!1wT1nA?d66Cfz zO0$!k7zp}FPC%m?oT<`_J2zkQ{S1uIK}T~?ixV)NBG*a?9vp&RD;aQ|{PI=IkKCNV zLdZcuC8Hq*)+PcC%SFVC%LNSpA`S7~f0v*`hCB@H^6a!$q6MLsxC&-r8`*UcZ;1ml2XND>*2(eFmu{kXQ}X|P2syOK(2$IO`q5_p1x;b}A3oBd_I z#+Zh?#Z#L@jM0mVlpAbSoPF}pBmCMtQcFot%ayi+{3#(@rT z7Y!lNjwDMbjeoejI=$yqBG>HR^M`jXJpJDcke&KTn+KOqjH3Sbr@CDV%YW+%aTZ4f z30O|vVh(KGq{-Le;YNBM1mfQ0!{+Q7)8)KSY157tPbL5ww3Jo?ZN@%5=o!TbFujf| zse~w%TSBCEfdN=>64xCZwkAl)zc1$Oq)to)R#AfXYo3wL zTF72eok*GTA}sDT?=JtGZ=73pS)DWwkU-$d0&7yu=|APx*qRmpS?aqO5Kl2#vm1s4 zmC3Ph#IA6uG`^D_|01W{)g61!_f}$kkQ)KBTV-rFnxoyK^xCxKC0DrcF1RovTVrm8 zHLC0&g7E~S39^Ve7%;6mQG|${&nL4#j*ds-!zEBUh$r``X$C0y457PgC}tSqQ%j8| zyKZL0Fb=>n%(Lmt|5-e;Apo=SKAVOeB5x5f-aI%PZMf+pY4(%fqWO=!v7;We zKnaR^4yhwA>R=ed^2Zs_e8amfc=(Kgna!!?fJH9H6b(57WxG=_U>yVB0HbkzK}>hc)0AAZYfuej#`HJ-IdIibZq;M|DNwJskKs_EvUH>lOPNnGwzn zmN9VqghJZtV(atHd*HW+&w+3+4h3|XDw`y37RwLNTzQ{Zn$x9gXu3e+DmAt}bD>yl zy5w8iRIEX4EVlKLocA2q)Cp1B%-M~Cy%*WEiLPc&=Q_t^gitQsw(0w<+xQ{1|0=g6 zNBvYA1Kk{U@Z14R8k>KP3Xkjv=+PSVco+dyy@)(19p@#l8=P|?sm~28;~~p-L=L*{ zX{33=jP-Y>vzG0tDz?%nT^u@RK6E~#n`w3t!ANErbhC}x%REfWZmf&FVYLVjrO~?) z2U4vq(k|KV4fyy29sxSn^jM{7pVpbiC!LQ4 z)CQ3oMOK~NDCr8KA%CPMKfpbBoONg4p2lr1-GX#yS~gDs6=TZc3|x7RgFdt2z4HZD zYsl>4z-G?=F*B4FT6ggy&VL$24U8bJjNs29M<_Xj2jBurG69$9aVXCW%vs2x2{5@Y z6fqSi!4WJU6Mk>-))dB>)CQ!mi1hkr`2Iaook2#)MxpMP!CGpz#hLA)9CD2^xHvzU z&jgkQV9ho(aVuA83#?soLO#40_{q%kR@gldMvgfzu+(QDfE0bLe z`}Dzum`WXwUcj=uUTz|P%61F6!}L+}WLj41q}6hQK@4%kdo8^5JVM)L#5%)DVmXFz z(VUt4|Aj4Wu5*o)=?gbPytIm4Fdm$MR-oI9L92Ak) zinnyAVd?jr55=(JRMDzfl;h;q5Q&nKYy92N=9w5(T*pB?u^~=Fj0UF*Y)8-NzikAO zk7xc7E9?;WKeE->hqTct-O6;19sugoV$3#y)F~P+5@}9dcL8@D8mx0>tGM>;kPRZC zk+hO#(oPymOKB=?rLnY@=F)yS+8}HdpFVbgc z1n!3N5lT}SZIYdsR3PXSC-yaEZ*la2u3wBwOzl8prPIw0sGO3V;Wbrv6~vZ zc@K9Pi(Vbf<|FpJMC|cuKI_Wd{1SN!LFq%$XIY|5ZOMtIP*guad;DLE`QjgvQ%DjC zLE;2&-=AXyM}Ka!0FluoRNT8^j%m_8w7{HNGnOv6GUXF}=d%=yiR*vQ#ytNgoj+S7 z!;v-L7MQz;ubnLhm{I_gUUWW!GucRE2AGSdNG4~WE{w|g6ATNya@X*_5ATmAno(n) zD=lN@<$e0iO+$+K+N>Dv(-Lf&-Ni3W-v@ytgR!B!Hdl+5w~SEggI~G%_E+N%Zj}tr*|mhO>xa#VOr!`MJbe} z(uE&eKsy}&elZ&T5usCh3Ho~W3MpA`;{M4C1r#~~AWj)|x~2J??O5&Rt+OV-Cx~Hg ziuSZoZ3m5{l{Ay2nTDCBhGm!g&x}P5KkR%gptsWU+n2`Ge0$GTs`NxVYzMC)VGpAM>&lq{XBV!yDiR6>bU=}yOWC70 znjone*R^|q>I+)?>>Kx!YHj^r!Vy1E!C4YqzW}SqBqb@%C{D0McVy)$DN4)nBiH#} z(8RCe1d9f!`U&e4q`Skl^?$+M=I>fQ2VG3Fac-xx8QV?r-Vqjs2};qF@z<1IgMBl~ z84^>V=j+saW6qFmf)WHB&eOnEhNO|Sl4jCQ8cIuPDs8hul)=mxWK0eN)3CnCJu1y} z;c8vlcK?DHr_3~JWH+O5R|R+Rg#850Vys2%5;t$ef&M7$Ub6riU?tdML!9c`$&%wK(Z0h}F+!qw=I95D>Eu^u`;*@y{A}QqOM9U3 z`GRxycF5+`2hP!_vOgoA82E0rvGHBhYo{<#;Ms-d-W~E^Fj~x@n$`mO-7j~SR1M$u^HKHV_UiC#!-W~An5fGBs~$Uv=Hu*jZyQ(n)*(tu$fZkgZ#3UtSj^c$YxWcY!!96GrU&ON*>q!FK0rWi;K==L z^aW~ney!w7Oxx{UXrv;v?&m+CzT)U*dMnlWh{wYe&ZDu@7-E+J&8)b}s#SK_ zLNfwXI$x*2N3erB6ynZzW6(U<;t>iW3z@-iV2=%WQOrkcYyYubU;7gbh+EBU_S$?l zf1PGcmtXO(Ti@V28gYQ>s!}rU2^Z*5i(vd%4VsyaR;l`;E zMqi22M&C&1I$>?9{iWm1**+#{cMU^JV7JsM7l6qe@9Zh1!1Om|49*ZHbPC0)M)>$j z1oNS9K%<`$HcIq!vyqcr!sN(gtAIYMa=PVqI={J+g(BfQX(ga)w$Xo#+WkX4&JO`B z!&JVC@T9ymJ6pYm$aU9`%jkx*#QBK9=^7KM8mRBW1e*+4-4vL)QRp>*UT7q&XhlNt z#sQl;jxeurMjyp=$R=}4#=*SAl7+wqpyJ(~_@l0AYDlPUdGC(zDb^uOuF$(6qg3rV-zJz($W?;tC5VyRa%}A4u zoiGd}7)N&COp?w=;* zTZeo^Hsb)GeV6fChOGj+j5v)aD@WOgOkWyK(Tj)Cbl3Uspdc+!kS+o66H$RmNZ0sY z3N~Quy(KF>XT01qEGOu_$T9W{9Iy))vu^CN5i8f}OYJL>srILsg6UIP`hX0y+eIj| zPohf&NrGO3P2444Xv_6z8z5u6z`f$6w9B{}FyYKwtsIuC3W)3x7#z+6EJCQ?gQE_h~ z!^o#Edh-}b<;XO~-9Y@_`yf7O-rPCIH$wTQ<{iS_+Qux#^ryV|%eFpj0K={lekx-P zt;lVt=rr3+KDV&TKxP9}W{lX_R)Z$MXP4}fP%SY^@KFc0p!KT|U;{U~p8*pYs3~aB zR0t{)#u>KbWw)+urINM?Xc2-9ibPC}!zDK+Lm5{zhl} zS}q>QV5XwR>2|uvIP~KV^B)ChfXEHh@d)?r6n?XaufhBNqAkt+>DVx-_3KJE_$<_f zkE5FM%y}xY|ET(Cajv~Mt`-1UjrJKRbgF5~Y((+M(x5Q0BUQ8G1}UzFBQJFnw|rDx zVk85)D82y8M|{{V$Iqo`DD;Q z;6e^s(P9J#PWko&{EB=43d|ioE2z<$q;fc#@qR&Lk%9)DU2i24I zCBU@b+_uxiNs|Iu>qiIjjEdpQmGPOb1|ID)KF_5%P}%2V6QC=1FZVD)42N-X`PyL? zy#yIE=dkkLqMpoUx zt#IaGjqShbo`!6<<|Z87UPo{u8(>z1(|_{H4B8Tlx8Xao@MU726s^ezCr1a2{-VZ2 zCkd!^{yf5&iqEpD;H z_X2&ppATg)Xs;&giv>f8`IHX~>|;zq>r^koViRY+gZfq-2;GQ}_VA9s`y#=mh;G;-c3tr$>)ekblH>J8 zR}nDIK;?|iR*{PuJI9nk!*aTdvmeyC4<~O8r}Mp?vT=fX54p|)>1cGDu0N(Bs@*#D zI!`xphdehBvu|t^i}wJ{d14iym}1sr%kD5u4`GoTkzV zA_HH*oblIztAJ)qrYK|6;zwANwioC9R%m$o&eBe5E^5l#3uI;E6 zYyycoTDeib+vV`_WOf{ZQ!y-4P9Pq)Mf{(j^k$i&K}YCvW%o!T&2r+fT*1(P4+dqllwftulnYpi9jo6 z`$~=oz5KkY#tr&Nk3kXn_(N%n{s9eWP!`F4oj{thpmz*G| zLx2U}yyjEQ*pt}hX$#vv8jwo~VP-ybGvd3RUHP0hCpoOu5y|gsW2R#}P(&+SvrUg# zF(Jm9C*DwCDGi)I1vuU_(tOvjWeH0~x_%PlAKGcP_<(dCmy?vy*#7?}uDnNh9-4e3 zbOu06Vj_b{lII-s47UpAa|w?LI4z*Ij3CM}c~R;v_U79~tL7`H`4tKc&jQ~c(!?hh z;nXY8+K&*p_xfeTmfZRyB-~k)kLi9}@mdA&l*JZ<3qRSB6g-$Cm=>WCRA?)-k3QAciK*VM7ycD}pARV+^0@W%wyvl>MZ1 zCxi4Xhe&%wt`SH1;{3Mv#1BeQ+Ral%DF?e#Gr*SlBY1BxtjQby{)ELSru$_#XU7Td zgjKCBdvxq-7@szZv*H&+ZtN;D;roy(Q+a-Io9P+TdhIqla-Pmt5OiCUu5a^NQR<5& z8jc-)sChf(Xa5+B$I-}Lg)wG0vQ<9{68ssH(*zZ-_$^AD0g?r6`YR5;pZZIOC2F#c zGc#tZ3eX|L6SH}ayg>wG4vFi65B{E(Ll55df>&8l@-~$MjSs1^F-&wVs$3J4Q7Zrd z1wBbbK~$p#oC!qBulz{Og^qyDgT*=bZ4ctvccI;u65TfRlJ};)X!q4wacZlcxr0|z zJ16(?CR`AWuiN79_e4M0?+B8_>k;YqB{lOvt_a@j~OCzoN$vkv-o zjxjx3*X%wI1t{m;Kld6yKloUG+_Nk_NpC04yp?Xtoa$v?QS$oUy^eFjAbmmIq^1P=0D_1&jvzat2K*k}&;yJgyz(K#b)*qG7(+le^kN^Eb zIJ92`l>*I#hUHlX0aX*cgDC!1YTXYI!=_Ob+dti>q&?*;z;J4gt!Mdc2IEo_<2E3& zXMsZbI@CFY;N_u6rzq8#{u*JijyT1g^Ha)#xHvYRf~Cv)b~oM+@0 z^{;ZK zTnT-`-8zK(dWAkvzI4lpr%%J7@jwdjY;bqTooo%j&leBd9|P<+Q$OX32-El~qe{z@B50BV1OF(moNz z%K)=V3|ADG*te%$(QZFKN#F^jaeXia(y-iL-h8LKrcp1&tMNy<1ZL!MRGO2*SL<+6 z`cuWsE=6~1Qt}1oe4l$g2!7^7lf0j}(L4gk_dAX>?pPqxdLYwT=e~m`2l~o>+-KoW zjp9>h75N;XWXh5XM4Z4W3ZY&!V%RCUap9TkRVS z?{npga%9eTS;5Z`^e>b{b45;b&IIcNo5frf$A{&Ux$3aE!@_c&$HiUmMdot#f_|>N zy+-nxmn-r8R6l&oHt_@I&L58GJ&|=gFZ_;9dp7dt5CtVRBsp;6CLNk(Li|h>8VQIgfZVvEPKs#83PRUu8VfCRa*S-25SM`;KZbb-hxaPnFlFxp`TRFP$PUSc_%ByZgTM;;)qF1#9!g zBwv>C%c9n@06!<79Y^++vL2W8uU*_pb^Ef~$LC7Ozfp=lSMq-Gng4&p$I>BYBewkj O0000Px#L}ge>W=%~1DgXcg2mk?xX#fNO00031000^Q000001E2u_0{{R30RRC20H6W@ z1ONa40RR91bf5zO1ONa40RR91bN~PV09Xppz5oC~07*naRCodHo!gHcM}FV?+|QXS zZ$pU^C9P$xv=O}<*b5t3X9F`p5FkJvoH%?65Fjsx69fqI;75Z){{wjsg5)W70_D*G z0tW$PXM;81$O}85V6A1@>*b0Px#WA zyHs^`b*=a@b(5l~ozyfglH|wF)qnh&^#6B@PVB`$3Zyy2X+JEUs!-`iowF-d{o%p) zd_X%5{b$tlN-;kQU^jnwFh0XO-IB(ON~{;QqR^fL_)J?`T=6l;`&Q6Qk(4k@kmE@U!jRC$xdCn(lR6 zpUs?jbNz5B^EmLv;UuS?y?a01`}*2(cb{LxJ9DCEIr!FkN^~6OmK4T&x_i&L^;x3I z+npup=Sy=0&(Fasc0^1hj;qDE7?D5@VOa9)IK%k#AZ~8VG9Dl+o>&rHw$3qw3LG1_ftr~zB-LO z2z<1W>Tte{x?i5Ze*S2!-Xo2GM+dooP==u!vz(3Io`Osz4*_h3b$^m8?=+>ya|XC9 zKHvTG`O``tCD%d0x7O1=ZxVGX2a@L9YqcVC*!dEWT-vo9sQ7Qsi>zFq4ZdG?plbYV z)JE9>1pNB#qph2QTNWa~x61I%^`q(Yy`BTO&y7QKojNslLZ zzMc1$gLS!HPpgkp?&tpdw2hxzAt;i{nMazeE3>gv<;r;?_1kZzvNAVT87^~Q2JOyf zt+>B^dK<2m)xI;g`iCRe7AM8k<EXfc19#uIW~*qlZ>ab1$gr) zc({J2oc&-qvXoI#xy^85lv8~>E|qQ$lOP2$R}TeYbLo58GdWfot{ zC0A<1WR7gVnCd1M>LhaJv~~&FgZ*0ZVp-vb{jx1=Hm7@4yGjXaMms`+UN%@|% zlYgO1tCu;mSBZOAhF4Y+0h>=!glRX+&hb{snGcBTl<5UmcXccI*Otg%*8jaXQ(U1) zcsBuSn=`0hz3C4fJ-N>XURlN=FBg0$@+>FRB;}o3rS*eyXE`%-rMhxfPs)|EK+27o z6EhcHF1c`Xt6ppl(!I{-u}N9`9DiJ6mRpBwzOj)~8o#`hMC`o^_h!z`T)SW4*ebVL ziu(1<8E(y>W=@T}tsky~aV6#Oj$VsAC;uD}{^WGitK22!sorj$;gh*B=gdGVUbAS; zMov{XW?lI3apJ;t9H58d3a*D4r*Vt)l>EaOW9JW$p0} z*VDWwxGb3(4GW> zZC!ghK;~8TY2r@q#g&q%VM;rT zHDacqr5UchBeEk3^p{=smlGd)?wISjEUXI*K76sG|u;huUCzX^Ee5zG!8*?~(k*F6A8 zU1L-$`Wzb^^@XC?!_Th1o5C$Eq111}f*S6o6yppmr`-lX?KFxpeuKk~vQNCg>cYTk z)u_vuI?<)6lO4{YcQKr-JB&?1sk^H}w1(d%EtrOr24|T|E|Y&&?|=ZOlrWi;9C|n% z`PUDo@NQHtW=r-EXL9}BMZhU7*G0r@7&>bSR6%SmNw@@J=0pLM6WgVz^)_`luivZ} z;8^U90koakQWs>-&*IwkNq}hDaeq>DIo~1N9*ⅅC+CUb1zmncb_;pb-2ZWA37Fp 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 a1^hod%e>`1CI@2x0000 + + + + + + + + + + + + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/attr.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/attr.xml index 8519e67a96..ff93b33d7e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/attr.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/attr.xml @@ -79,7 +79,7 @@ - + diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml index 4db8ecf5b7..25544292eb 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/color.xml @@ -25,6 +25,9 @@ #D4D8DC #27FFFFFF #1E111111 + #FF213757 + #335C71AB + #FF384D6E #FF999900 #FFCC0000 diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/strings.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/strings.xml index 2ea3cd0e92..35244d89ef 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/strings.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/strings.xml @@ -82,4 +82,8 @@ 再按一次退出应用 %s-%s + + 云端下发 + 自车感知 + \u3000OBU\u3000 diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/datacenter/union/IMoGoTrafficLightListener.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/datacenter/union/IMoGoTrafficLightListener.kt index 13491090cd..a612706b6c 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/datacenter/union/IMoGoTrafficLightListener.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/datacenter/union/IMoGoTrafficLightListener.kt @@ -49,11 +49,11 @@ interface IMoGoTrafficLightListener { fun showTrafficLight(checkLightId: TrafficLightEnum, lightSource: DataSourceType) {} /** - * @param readNum 红灯倒计时 + * @param redNum 红灯倒计时 * @param yellowNum 黄灯倒计时 * @param greenNum 绿灯倒计时 */ - fun changeCountdownTrafficLightNum(readNum: Int, yellowNum: Int, greenNum: Int) {} + fun changeCountdownTrafficLightNum(redNum: Int, yellowNum: Int, greenNum: Int) {} fun changeCountdownGreen(greenNum: Int) {} diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/v2x/CallerTrafficLightListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/v2x/CallerTrafficLightListenerManager.kt index b795e482a8..b71eb67d59 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/v2x/CallerTrafficLightListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/v2x/CallerTrafficLightListenerManager.kt @@ -71,10 +71,10 @@ object CallerTrafficLightListenerManager : CallerBase } } - fun changeCountdownTrafficLightNum(readNum: Int, yellowNum: Int, greenNum: Int) { + fun changeCountdownTrafficLightNum(redNum: Int, yellowNum: Int, greenNum: Int) { M_LISTENERS.forEach { val listener = it.value - listener.changeCountdownTrafficLightNum(readNum, yellowNum, greenNum) + listener.changeCountdownTrafficLightNum(redNum, yellowNum, greenNum) } }