ELF8@@%"{ `bs.@`bsN@S``Z@ ! @{¨_{ *sQq#T!飐Rh>i=r}d @{¨_{g_WO**QqTb.@bN@3u@*ȢQqT!:9飐R=i=r}d_kaT,S@HRH!B***?qTRR*R**RR*RRR****ODWC_BgA{Ũ_C{og_WO***b.@buQqT@!B*ZN@qT q TqT?[R RR*{R#?R\R?R9RVqT *) +yJ @XK5*G@;Gy4@!B* VK5g):@:Y-\-HkK[k :@q T!RRRRRR R"R#R R"R#RAR"R#R @RR@ 4 @X-g) [-HkKQVk VK5:@?q T9Q @4@XK5G@qmTQ4 @@I*W :@4 @5*V F@qT @RR @@_x5*W :@4y@X[@ @@RR*g@ @@4;R**X(7*h6S@W[@_GJ6 @R*@X[@!R @R*@@_h@qkT RR*(7*h6 @W[@_ *OHWG_FgEoD{CC_@VK5:@F@Bc**{ O*b.@bN@,ET,E3*R?OB @{è_{_WO6b.@`bsN@uB-hE *OCWB_A{Ĩ_ր2@"@!;@!  B&Rb (R2y 7`b-w@bE! B&Rb (R2y7`-*u ` ` ``a@Bc*@B@B @Bc`hC{WOC@@R(rR u `BA!*@ @q- T@!*"@!*B @! @!#R7@"6tBAb@!Bc!Bz!BvBAb@!Bc@!`@!#R 7@&!BvBAb@!Bc@!`@!#R 7@*!BuBAb@!Bc @)@?TODWC@{AC_{WO@"&@"-JK )JqB#R|@#! _)@?TOEWD{C_{WO@"&@5" @ )J qkIqb#R|@#! _)@?TOEWD{C_{OC@B BJA!* Bc!*Bc@! !!B@ @)@?TOB{A_{ `B!`V @*{¨_{{_{O BAOA{¨_{og_WOs`@R(rrR bN BvJ@`bwy",@:@*yE9@@CZK@Z[@`,{@#[@`,{@CZ @`,z:@@4*!z-!B$!B! !!!B*OEWD_CgBoA{ƨ_UqRArR`-h`4*!B*!"R*!**4!"@`wB @{w!xw@q+T*R@! *9@?k T!!BZ !B*9 cw"3/`Byfhjy@`b`ynyvv`4*!B*:@{@`c z"@Q_q#T!飐RH?i=r}dӠ&@Qq#T!飐Rh?i=r}dӠ*@QqT!?i*7飐R=i=r}d`@ARR***`@aRR***`@RR***`!B`-!B!**4!!B!@{ WOtbuN@@BJ@"b@NOCWB @{Ĩ_{ O`buN@b@ `6!!@4! RR@4!BOB @{è_RR{O*T@T36!OA{¨_C{og_WO@*bN@hrTqaT  BA33C_R(rRrd@c   7OqhT*\!Z`W!BKqRhi**:#(!5@k*!qBTVkwB\ @2@@ R_h" R#" **2B @TR*@9* _)@?aTOHWG_FgEoD{CC_@*{O@3CC3t`@3R`@CፆR`@3R3C_44RC@44R3@q`s@` t 9 _)@?TOC{B R_{_WO`@!B`bt.@bN@xCR #S `@R R(rC+@R@}R7+@ 4*!`@!w*`@!B**OCWB_A{Ĩ_u!!!!!!!!!!!!3a RRRa RRR}RA~Ra RRR}RA~RA%RR*!RRR!RRR!RRRRAR!RR*RRCRRRCRARR#Ra RRCR RRCR!RRCR @qAT!R 7!R* 7!!!!!!!!*#-C,(RK ,E,E"R?*4`@!B**`@! `@!B{O`bs.@`bsN@`,tE`,`EaB,*?*OA{¨_{ `bsN@``@ @{¨_C{_WOC@`btN@B @>Q q(T )+ih8J @֨PQ> q T4@>p@R R">`@!B*!RR*ARR*%RR*Z@@s`btN@tb@ 4!~@@" 9A4"@9A!B* ca@99@" 9A 4"@9A!B*@99@@ARR#RZ@`4`@!B6@ !BRR @)@?TODWC_B{A*C_{_WO@*@"SbN@ q T"qTRRA9I@bN@3C3#**q4 @33"R@9qT@7!@bN@3C3#!R*F`4 @33"R`RRR*~w@"@Bc*q!T--kKk !RRRRRRRRRRRA9qT$R87@bN@3C3#!R*4@33#C"R`R@9I@bN@3C3#**`4 @33#C"R _)@?!TOFWE_D@{B*_{ WO*@"ӂւSbN@ q T"qTRR*RR*RR*!RR*-բ-jKQqj T SRR*!RR*Bv@"@@Bc*qTኆRBRCRኆR"R*RRR!RRR!RRRRRRRR*RRRRRROCWB @*{Ĩ_{g_WO@*@"SbN@"@!`AR7 qT @  q@T"qaTRRA9Y@bN@3C3#** 4`@!`@!`@!B _)@?TOFWE_DgC{B_j@33"R`x@@Bc*8y@@@Bc**qT@!RRRRCR*RR*RR*RRA9Y@bN@3C3#**>`4 @33#C"R*{O*@"SbN@qT"qT@`aA9* @`aA9"R*OA{¨_{og_WO**b.@`bsN@Hr TqT`{uD9 `{uD9*R**9~qTzH@k@T@SH@k Tz@H+@kT@H?@kTz@CHS@kT@Hg@k`Tz@H{@k T@3H@k`Tk7k TsqT@*47'5R7#UR47uR7R47R7R6@!B*(RT7Rn9`2@t@`"9@t @`B9 @t@`_s@*9OGWF_EgDoC{B_{WO`hB@aRSBӠ"& OBWA*{è_a@Bc*{ OB@b@bN@ B9h4 `"hJ@aRRSOB @*{è_@`"d&@@Bc{OB@b@bN@@`"t&OA*{¨_{ O`uB@b@bN@"J@ 4a@Bc*T5`@!BtROB @*{è_{ OB@b@bN@>@b@qR@9`"t&OB @*{è_{ OB@b@bN@`"sJ@>@b@4q9q9OB @*{è_{O**OA{¨_{_WO*@"ѳSbN@@BJ@ qT"q!T*M`@!BC@w@"@Bc*qaT~@7@",E@;@X1T`@! **RAR*OCWB_A{Ĩ_a@Bc{_WO@*@"SbN@@ QqhT ) +yJ @@bN@3ѣCѤScSR'Rr4rT)v@v43ѣScCS"RrTrT@`aA9* 3ѣSS"RrT* _)@?TOFWE_D{C_@"@@Bc*{ WO*@"ѓSbN@@ QqHT ) +yJ @@A9"R*B9H4R,ES,E!R"R`?ERARq`TqT(B9442aRRR,aRR*kRAlR2BR#R*RRRRBRCR,E3,E!R*`?**OCWB @{Ĩ_w@"@@Bc*~{ WO*@"ѓSbN@@ QqT ) +yJ @@`aA9"R?,Es,E"R!RBr`?1}RA~RqTqT}RA~R}RA~R2BRR*RBRCR,E3,E!RBR`?*OCWB @{Ĩ_w@"@@Bc*{ WO*@"ѓSbN@@ QqhT ) +yJ @@A9"R*2"RCR*!RRR R R@RR"R*,E3,E!R"R`?"~@7,~@7RfB94kRwRB94kRwR<Z@R@@RKĉRЉR@RA'RBRCRR"R#RqTqATRBRCR,E3,E!R*`? ĉRЉR@RRR*Z@AR@!RR*2BRCR***OCWB @{Ĩ_w@"@@Bc*;{ WO*@"ѓSbN@@ QqhT ) +yJ @@A9"R*2"RR*!RRR R R@RR"R*,E3,E!R2`?"~@7,~@7RfB94kRwRB94kRwR<Z@R@@RKĉRЉR@RA'RBRCRR"R#RqTqATRBRCR,E3,E!R"R`? ĉRЉR@RRR*Z@R@!RR*2BRR***OCWB @{Ĩ_w@"@@Bc*;{ WO*@"ӂւSbN@׺@ q`T q T"qTa&RR#RSqTqTqTtRCRa&RRB9h4RBRCRaRR*B9(4R"R#RRR*RBR*aRRR~@h7qR}R RA'RBR**v@"@@Bc*qT!R"R#RRRR!RR* ROCWB @*{Ĩ_{ WO*@"ӂւSbN@׺@ q`T q T"qT&RR#RSqTqTqTtRCR&RRB9h4R"R#RRR*B9(4RBRCRaRR*R"R*RRR~@h7qR}R RA'RBR**v@"@@Bc*qTQ!RBRCRRRR!RR* ROCWB @*{Ĩ_{ WO*@"ѓSbN@@ qT"q!Tq`TqTqTSa&RR#RJHw@"@@Bc*qTRRR!R"R#RqTq TqTCRCRRa&RRRBRCRqRArRRR*2"R#R*OCWB @*{Ĩ_{ WO*@"ѓSbN@@ q@T"qATRR*/-w@"@@Bc*qTRRR!RRRቆR"R#R2"RR*OCWB @*{Ĩ_{#WO@*@"SbN@ q T"qaT@bN@3ѣCѤScS!R'R4 @3ѣSS"RB9h4@bN@3ѣCѤScSaR'R4  @3ѣSS"RI!R"R*Uw@"@@Bc*qT@bN@3ѣCѤScS!R'R`4 @3ѣScCS"RB9h4@bN@3ѣCѤScSaR'R4 @3ѣScCS"R _)@?TOFWE#@{C*_{#WO@*@"SbN@ q T"qaT@bN@3ѣCѤScSAR'R>4 @3ѣSS"RB9h4@bN@3ѣCѤScSR'R4  @3ѣSS"R!RBR*Uw@"@@Bc*qT@bN@3ѣCѤScSAR'R`4 @3ѣScCS"RB9h4@bN@3ѣCѤScSR'R4 @3ѣScCS"R _)@?TOFWE#@{C*_{WO@*@ qT"qaTb@bN@3ѣCѤScSR'R4 F@3ѣSS"RRAR!RR*2v@"@@Bc*qaTb@bN@3ѣCѤScSR'RE`4 @3ѣScCS"R _)@?TOEWD{C*_{WO*@ "@!BR5RqT'@!BR`URq`T qT"q!TbR}RR@!BRuRqTBR#R**OBWA{è_v@"@Bc*{ Ob.@`buN@@h4%!RRRR"R#RR"R#RRR*RR*၆RR*RBRCRh@tOB @{è_{ O`bt.@bN@@4Q4 R"R*RBR*R"R*OB @{è_@Bc{_WOs`bvN@V@BJ@~@H7-@+(!B",ֆE@;@X1!T!B**OCWB_A{Ĩ_{*{_{ *s@qT* h~S5 qTA3h@9S @{¨_@*{ *s@qT* h~S5 qTA3h@9 @{¨_@*{ *s@qT*h~S5 qTA3h@9q @{¨_@*{ O5s !OB @{è_{ O3`bu.@bN@Z@5! `@!BOB @{è_{O`bt.@bN@Z@! `@!BOA{¨_{ O3b.@bN@uZ@! @!BOB @{è_{ORRRBc%R*4`@!B*OA{¨_{ WO`@RR(r`!BBr (R^v@BJ@&@Bc%R*4`@!B! v!B`@!BR!"R*OCWB @{Ĩ_{O`bt.@bN@TZ@`@ !OA{¨_{O*"f@3*OA{¨_{ o g _ W OC@"f@u@bN@!R!RB JA!BT@9qHTRR!R R+a$R#R'`87 @RR***nnB94@RR***Rr@R"R***@ARR***x3$#7@蟏H kIT诜R(rH }SIR R0q(5_ kR賈m 97@ Rr R_krMTk2- RrhRH rH( f PRr_k蘆R* 87(?)R} ?kmT( } R9 @} y@@!Bt3@蟏 Rr(  kTRHr?kMT @yq!T4;@k2 kT蟏R?kT诜R(r( }S0qTa5A RHr?kT5a-3@?kTk2'hRH r(( f PRr?k(R* 87?)R} k T } R @} x@@!B@@k2 kT k!T@  kTqT qTqC Tq T@ (Rn@D)C)R=@R=>!R@R"R#R**@@94@RRR**>a$R> Ru87 @RRR** _)@?ATONWM_LgKoJ{I_RBRCRARR#R@@}qT\ARR*RBR*/hRH r~ f PRrk蘆R/* 87>)R} kMT } R /@} /@ & /@K k KIk  J )} H}?kT TR 4Rn@ARRR**5(R!9!Թa@Bca@Bca@BcTRa@Bc{ O*"f@TbB*`! @!B*OB @{è_{ O*6OB @{è_{ WO*@bN@*!OCWB @{Ĩ_{ O**@bN@!6**OB @{è_{ O*@bN@*!OB @*{è_{O*rR$RROA{¨_{ !R @{¨_{O*"f@@bN@-Ea?OA R{¨_{O* qT`"`f@aRqT R*OA{¨_{O*cR"ROA{¨_{ !R @r{¨_{og_WO*"qT`@!B*=qMT*R|=rVRzx RyS}< c CwS `T9 {@zxR**VR|=rTOEWD_CgBoA{ƨ_{ O*****OB @{è_{O*6RRRRRR RR*RR*OA{¨_{ O** qTu@BJ@&@2*qT* rQRBROB @{è_{O*6RBRCRRRR RR*RBR*OA{¨_{O*rR RARR3ARR*OA{¨_{WO"f@@u46@bZ@4** nnB94vS *!$RROBWA{è_a@Bc*{O*bqR !6RR*OA{¨_a@Bc*{ WO"f@Ⱥ@H46@bZ@4!$RR**OCWB @{Ĩ_nnB94!$RrT @@!$RRuS$Rra@Bc{O*"f@rR6RROA{¨_{ O*"f@6@uS*!$RROB @{è_{og_WO@@bN@(@ya$RRmS #@yRR ##@yRR +#@y!RR8 #@ya$RR # @y$RR @RRR** @y @RRR**vpR @3R3C_487Q3]SC @CRC@3C_3*C @RR***3C_5r=ST qTqRAwR:5* 44G;@yR  K(!V#q+TR  *_!qBT *I6@_kk2 upR4 @3R @CR3C_C@3!*C4Z7Q5 @RR***@RRR** @y@RRR**upR@3R3C_487Q3]SC@CRC@3C_3*C@RR***3C_5r=S T? qTqRAwR5844G9yRK (!#q TR  _#qB TI:H@kk2 tpR4@3R@CR3C_C@3!*C46Q5@RR***v _)@?!TOGWF_EgDoC{B_@*@*@@yBc@@yBc7@Bc***@Bc****@Bc**u@Bc****e{WOC@B@`>@b@ @@q`"*t& @!B @)@?TOCWB{A_@*@@Bc**{WO`hB@nA"& * `@!BOBWA{è_s@@Bc* (%n4k4q4t4(0000000000400@0 "1001000000"1 1!1000 00@000p0#00 0@ 0 00Z0%1!1p%1 0@000n4n4  1%1@%1&1#0? 1 10ll/F (Pp<qcom,wcd937x-codec @ @                            0(1 0 0       '1P4"0#0%0000\4\4]4]4^4^400 0 0 00 00 0000900000000 000@0P 0`!0p"0#0$0%0(0*)0U@0A0V0W0X0Y0Z0[0\0g0+h0hi0j0Pk0l0m0n0o0p0q0r0s0w09x0y0oz0O{0.|0}0~000 0 08000000 0 0800000@0:00p001000Q000w00N0 0E0t00000h0d0000e0000200w00000000000P000D0@00000000(000F0P000P000T00030000 0 0U0000"0D000000111111 1!1"1#1$1%1&1'1(1)1 *1,1-121@3141516171"8191:1;1<1N=1T>1?1E1bF1G11W11111B1"111111P1111n1P11111 1 11`4444 4444 4 4 4U 4 4444U4U4U444f444c44444 4!4"4#4$4G%4C&4'4(4K)4&*42+4W,4c-4|.4W/4041424 34445464748494:4;4i<4T=4>4?4@4A4B4C4D4E4bF4UG4H4=I4.J4K4L4M4N4O4P4Q4R4S4hT4hU4hV4W4Z4[4\4]4^4_4+`4a4b4c4d4e4f4g4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x4y4z4{4|44444444@4@444444444444444444444444H44444444444444444444444444444444444444|||{!{_{{_wcd937x_info_create_codec_entrywcd937x_event_notifyRDAC3_MUX MuxADC2 MUX Muxwcd937xwcd937x_reset_lowqcom,cdc-micbias3-mvqcom,cdc-micbias2-mvqcom,cdc-micbias1-mvwcd937x_ear_pa_gain_putwcd937x_rx_hph_mode_putwcd937x_codec_aux_dac_eventwcd937x_codec_hphr_dac_eventwcd937x_codec_ear_dac_eventwcd937x_codec_hphl_dac_eventvariantwcd937x_mbhc_hs_detect_exitwcd937x_mbhc_deinitwcd937x_mbhc_post_ssr_initwcd937x_mbhc_initwcd937x_resetwcd937x_ear_pa_gain_getwcd937x_hph_impedance_getwcd937x_mbhc_hs_detectwcd937x_mbhc_get_moisture_statuswcd937x_add_slave_componentswcd937x_set_port_paramswcd937x_mbhc_get_result_params__wcd937x_codec_enable_micbiaswcd937x_csrwcd937x_mbhc_program_btn_thrwcd937x_get_logical_addrwcd937x_enable_reqwcd937x_wakeupwcd937x_mbhc_zdet_rampqcom,tx_swr_ch_mapqcom,rx_swr_ch_mapwcd937x_dt_parse_micbias_infoversionwcd937x_dlkm&(&wcd937x_mbhc->notifier)->rwsemwcd937x_micbias_controlwcd937x_mbhc_hph_l_pull_up_controlwcd937x_get_micb_vout_ctl_valwcd937x_get_hwdep_fw_calwcd937x_codec_enable_vdd_buckcdc-vdd-buck&wcd937x->ana_tx_clk_lock&wcd937x->micb_lockwcd937x_enable_clshHPHR_COMP SwitchHPHL_COMP Switchwcd937x_parse_port_mappingwcd937x_mbhc_moisture_configqcom,tx-slaveqcom,rx-slavewcd937x_get_hph_typeHPH TypeHPHR VolumeHPHL VolumeADC3 VolumeADC2 VolumeADC1 Volumewcd937x_rx_clk_disablewcd937x_mbhc_micb_adjust_voltageqcom,wcd-rst-gpio-nodeRX HPH Modewcd937x_mbhc_get_impedancewcd937x_wcd_mbhc_calc_impedanceHPHR ImpedanceHPHL Impedancewcd937x_soc_codec_probewcd937x_bindwcd937x_suspendwcd937x_variant_readwcd937x_version_readwcd937x_codec_enable_dmicwcd937x_soc_get_mbhcwcd937x_codecwcd937x_codec_enable_adctechpack/audio/asoc/codecs/wcd937x/wcd937x.ctechpack/audio/asoc/codecs/wcd937x/wcd937x-mbhc.cwcd937x_populate_dt_datawcd937x_codec_enable_aux_pawcd937x_codec_enable_hphr_pawcd937x_codec_enable_ear_pawcd937x_codec_enable_hphl_paRDAC3_MUXADC2 MUXIN3_AUXWCD937XDMIC6_OUTPUTDMIC5_OUTPUTDMIC4_OUTPUTDMIC3_OUTPUTADC3_OUTPUTDMIC2_OUTPUTADC2_OUTPUTDMIC1_OUTPUTADC1_OUTPUTWCD_MBHC_MICB2_VOUTWCD_MBHC_ADC_TIMEOUTCLS_H_PORTWCD_MBHC_HPHR_SCHMT_RESULTWCD_MBHC_HPHL_SCHMT_RESULTWCD_MBHC_MIC_SCHMT_RESULTWCD_MBHC_ELECT_RESULTWCD_MBHC_HS_COMP_RESULTWCD_MBHC_BTN_RESULTWCD_MBHC_ADC_RESULTWCD_MBHC_HPHR_OCP_STATUSWCD_MBHC_HPHL_OCP_STATUSWCD_MBHC_FSM_STATUSWCD_MBHC_MOISTURE_STATUSIN2_HPHRDMIC6_MIXERDMIC5_MIXERDMIC4_MIXERDMIC3_MIXERADC3_MIXERDMIC2_MIXERADC2_MIXERDMIC1_MIXERADC1_MIXEREARADC3 REQADC2 REQADC1 REQCLS_H_LPCLS_H_ULPEAR PA GAINWCD_MBHC_HPHR_OCP_DET_ENWCD_MBHC_HPHL_OCP_DET_ENWCD_MBHC_L_DET_ENWCD_MBHC_GND_DET_ENWCD_MBHC_ANC_DET_ENWCD_MBHC_OCP_FSM_ENWCD_MBHC_FSM_ENWCD_MBHC_ELECT_ISRC_ENWCD_MBHC_ADC_ENWCD_MBHC_HPHR_PA_ENWCD_MBHC_HPHL_PA_ENWCD_MBHC_HPH_PA_ENWCD_MBHC_MUX_CTLWCD_MBHC_MIC_CLAMP_CTLWCD_MBHC_BTN_ISRC_CTLWCD_MBHC_HS_L_DET_PULL_UP_CTRLWCD_MBHC_HS_L_DET_PULL_UP_COMP_CTRLWCD_MBHC_PULLDOWN_CTRLWCD_MBHC_MICB_CTRLIN1_HPHLVDD_BUCKCLS_H_HIFICLS_AB_HIFICLS_H_LOHIFIWCD_MBHC_HS_VREFWCD_MBHC_SWCH_LEVEL_REMOVEWCD_MBHC_ADC_COMPLETEWCD_MBHC_IN2P_CLAMP_STATEWCD_MBHC_ELECT_DETECTION_TYPEWCD_MBHC_MECH_DETECTION_TYPEWCD_MBHC_HPHL_PLUG_TYPEWCD_MBHC_GND_PLUG_TYPEWCD_MBHC_DETECTION_DONEWCD_MBHC_HPH_CNP_WG_TIMEWCD_MBHC_ADC_MODEWCD_MBHC_HPHR_GNDWCD_MBHC_SW_HPH_LP_100K_TO_GNDWCD_MBHC_HPHL_GNDCLS_H_INVALIDWCD_MBHC_ELECT_SCHMT_ISRCWCD_MBHC_BTN_DBNCWCD_MBHC_INSREM_DBNCAUX_RDACHPHR_RDACEAR_RDACHPHL_RDACG_M9_DBG_M18_DBG_6_DBG_M6_DBG_7P5_DBG_M16P5_DBG_4P5_DBG_M4P5_DBG_M13P5_DBG_1P5_DBG_M1P5_DBG_M10P5_DBG_M15_DBG_3_DBG_M3_DBG_M12_DBG_0_DBCLS_ABAUX PGAHPHR PGAEAR PGAHPHL PGADMIC6DMIC5012345DMIC4AMIC4RDAC4wcd937x_enable_rx3RX3MIC BIAS3INP3DMIC3AMIC3ADC3RDAC3wcd937x_enable_rx2RX2MIC BIAS2INP2DMIC2AMIC2ADC2RDAC2wcd937x_read_of_property_u32wcd937x_enable_rx1RX1MIC BIAS1DMIC1AMIC1ADC1RDAC1%s: failed to create wcd937x entry %s: failed to create wcd937x variant entry %s: failed to create wcd937x version entry %s: Impedance detect ramp error, c1=%d, x1=0x%x %s: ear_pa_gain = 0x%x %s Failed to find slave port for type %u %s: hph_type = %u %s: Failed to add snd_ctls %s: Failed to add routes %s: Cannot init wcd supplies %s: Failed to read port mapping from prop %s missing port mapping prop %s 3%s: NULL codec pointer %s: Invalid DMIC Selection 3%s: wcd937x priv is null 3%s: Invalid params, NULL tavil Failed to read port mapping %s: buck already in enabled state 3%s: NULL handle %s: plug type is invalid or extension cable 3%s: unsupported micbias voltage %s: Could not find TX swr slave device %s: Could not find RX swr slave device %s: Micbias3 DT property not found %s: Micbias2 DT property not found %s: Micbias1 DT property not found %s: widget not found %s: ucontrol->value.integer.value[0] = %ld %s: stereo plug type detected %s: MONO plug type detected %s:wcd937x module already created %s: BCL should have acquired %s: Tx-slave node not defined %s: Rx-slave node not defined %s get devnum %d for dev addr %lx failed %s: Regmap init failed %s: Looking up %s property in node %s failed 3%s: mbhc initialization failed %s: Codec registration failed %s:clk already disabled %s: vdd buck is not disabled %s: vdd buck is not enabled %s: reset gpio device node not specified %s: HS pull up current:%d %s: Invalid micbias index, micb_ind:%d %s: cal not sent by %d %s: invalid event %d %s: event %d DMIC%d dmic_clk_cnt %d %s: Failed to register notifier %d %s hwdep failed %d %s: Slave bind failed, ret = %d %s: ramp for HPH_R, noff = %d %s: ramp for HPH_L, noff = %d %s wname: %s event: %d %s: wname: %s, event: %d %s: invalid number of buttons: %d %s: Invalid micbias number: %d %s: micb_num: %d, cur_mv: %d, req_mv: %d, micb_en: %d %s: btn_high[%d]: %d, vth: %d %s: micb_num:%d, micb_ref: %d, pullup_ref: %d %s: mode: %d %s: IRQ init failed: %d %s: no power supplies defined for codec %s: Invalid DMIC line on the codec 3%s: Invalid params, NULL codec %s: bad micbias pdata Failed to allocate fw_data %s: Fail to obtain platform data 3%s: wcd937x is NULL 3%s: tx swr dev is NULL %s: platform data from parent is NULL %s: pdata pointer is NULL %s: handle is NULL 3%s: codec is NULL %s: pdata is NULL %s: Mono plug type with one ch floating or shorted to GND VER_UNDEFINED %s: disable moisture detection for NC %s:Invalid HPH Mode, default to class_AB WCD9375 WCD937X_1_0 WCD9370 %s: zl=%u(ohms), zr=%u(ohms) %s: impedance on HPH_R = %d(ohms) %s: impedance on HPH_L = %d(ohms) %s: d1=%d, c1=%d, x1=0x%x, z_val=%d(milliOhm) %s() %s: update_wcd_event api is null! %s: register_notifier api is null! 3%s: zl or zr null! %s: wcd sleep state request fail! %s: wcd active state request fail! 3%s: mbhc not initialized! %s: wcd static supply enable failed! wcd937x_soc_get_mbhcwcd937x_get_micb_vout_ctl_valwcd937x_mbhc_micb_adjust_voltagewcd937x_micbias_controlwcd937x_info_create_codec_entrywcd937x_mbhc_get_impedancewcd937x_mbhc_hs_detectwcd937x_mbhc_hs_detect_exitwcd937x_mbhc_ssr_downwcd937x_mbhc_post_ssr_initwcd937x_mbhc_initwcd937x_mbhc_deinitms{#0 qxP"nIVs|+jTdescription=WCD937X Codec driverlicense=GPL v2vermagic=4.14.290-g5893d2fa9ec8-ab9086278 SMP preempt mod_unload modversions aarch64name=wcd937x_dlkmintree=Ydepends=wcd_core_dlkm,wcd9xxx_dlkm,mbhc_dlkm,swr_dlkmAndroid (7284624, based on r416183b) clang version 12.0.5 (https://android.googlesource.com/toolchain/llvm-project c935d99d7cf2016289302412d708641d52d2f7ee)  techpack/audio/asoc/codecs/wcd937x/wcd937x-mbhc.cZ g4g4wcd937x_dlkm.module_layoutwcd_free_irq>wcd_disable_irqCwcd_enable_irq$wcd_request_irq blocking_notifier_chain_unregisterNn#Fblocking_notifier_chain_register=Owcdcal_get_fw_calŠsnd_soc_writeTzD__hwasan_load2_noabort~)HmemcpylUsnd_soc_add_codec_controls;8&Xdevm_kfreeh :__init_rwsemswcd_mbhc_initK\wcd_mbhc_deinit wcd_mbhc_stop%9wcd_mbhc_startwcd_mbhc_get_impedancelsnd_soc_dapm_put_enum_double*wNJsnd_soc_dapm_get_enum_doublexsnd_soc_put_volswҙӶsnd_soc_get_volsw*h @snd_soc_info_enum_double snd_soc_dapm_put_volsw5snd_soc_dapm_get_volsw¡Ksnd_soc_info_volsw߿msm_cdc_disable_ondemand_supplystrnstr /wcd_cls_h_fsm&"msm_cdc_enable_ondemand_supply+5dev_warn ťswr_slvdev_datapath_control/okstrtouintestrpbrkB2swr_connect_port|clear_bit\swr_disconnect_port53regcache_syncregcache_mark_dirtys}=F__hwasan_load1_noaborteswr_get_logical_dev_num+snd_soc_dapm_add_routessnd_soc_dapm_new_controlsiBwcd_cls_h_initsnd_soc_dapm_syncoGTsnd_soc_dapm_ignore_suspend wcd_cal_create_hwdep Mset_bit^devm_kmallocVvregmap_read__hwasan_store1_noabort?__sw_hweight8地__kmallocswr_device_wakeup_unvotep&swr_device_wakeup_vote?!msm_cdc_pinctrl_select_active_stateśmsm_cdc_pinctrl_select_sleep_state6(bmsm_cdc_pinctrl_get_statecWd0snd_soc_unregister_codeclcomponent_unbind_all+wcd_irq_exit҈Tjsnd_soc_register_codec __mutex_initQregmap_update_bits_base_=wcd_irq_initHqregmap_writeP}:__devm_regmap_init_swrm;get_matching_swr_slave_deviceE(component_bind_all zkfreehmsm_cdc_enable_static_suppliespmsm_cdc_init_supplies6Rcomponent_master_del܉component_master_add_with_match> component_match_add_releaseݷasimple_read_from_buffer1(snprintf7\aplatform_driver_unregisterHx?__platform_driver_register__stack_chk_failb=@of_property_read_variable_u32_array5pwof_find_propertyBmsm_cdc_get_power_suppliesGaof_parse_phandle"-kmem_cache_alloc_tracetFkmalloc_cachesg__stack_chk_guardCzsnd_info_free_entryiL(vsnd_info_register__hwasan_store2_noabort[snd_info_create_card_entry\__hwasan_store8_noabort(psnd_info_create_subdir__dynamic_dev_dbgr.blocking_notifier_call_chain__hwasan_store4_noabort8:dev_err>լJmutex_unlockGusleep_range6snd_soc_update_bits) _dev_info,0snd_soc_reade8^mutex_lockt_A__hwasan_load4_noabortXUprintkh'J__hwasan_load8_noabortEzZ__sanitizer_cov_trace_pcGNU)E?. 8 *88U @f @@zp888 l.TCL0Qd8w |@,P H`   034B, (ZT!lr `  0 x'&@'8L+85/@/TBP8`1z88 5889/08Rd:dj:h8;<<<0,]=878d$?$xH8HAh8C8Et:8b(It(8L`8^4O8GQc8S`8_ Ux80X(8F@[Y8w8@8`0a  H p 3! pp T  l 4 ^ !x !    8  +  12      0 P  h  P&  h;  PH  xh]  Pj  h  p P  Hh  P  h   P  h  *h  -  *h+  h.8@  hU  hj  *t  Ph  h  +  h  h  h  .P  ch  .P  Xh  @/P,  hA  /PN  chY  /Pi  ( h~  00P  h  0P  h  0P  ` h  c  d a ah'PbhAbp[ pd  pd (cl (v(t Pw}   pw xPh<4i <~4S 8~X888s!t\@tpYXutru\(v@hv0vdvhdw8 w4(wlE8m   D0U[n 6 !C ~6&U% Kd{R d  h &8|> x _vH $!8Idu(  *Ff{  (@Mdq0:H`lyfBe4HecVjt%<Sl~ XqmIUnF=\iYYz,:Ho(cld  *Th1 8 O ] o      $x$dwcd937x_micbias_control.descriptorwcd937x_info_create_codec_entry.descriptorwcd937x_info_opswcd937x_variant_opswcd937x_info_create_codec_entry.descriptor.12wcd937x_info_create_codec_entry.descriptor.15wcd937x_info_create_codec_entry.descriptor.18wcd937x_codec_driverwcd937x_version_readwcd937x_variant_readwcd937x_probewcd937x_release_ofwcd937x_compare_ofwcd937x_comp_opswcd937x_removewcd937x_bindwcd937x_resetwcd937x_wakeupwcd937x_parse_port_mappingwcd937x_regmap_irq_chipwcd937x_bind.__keywcd937x_bind.__key.58soc_codec_dev_wcd937xwcd937x_unbindwcd937x_handle_post_irqwcd937x_soc_codec_probewcd9375_dapm_widgetswcd9375_audio_mapwcd937x_event_notifywcd937x_soc_codec_removewcd937x_get_regmapwcd937x_codec_enable_adcwcd937x_codec_enable_adc.descriptorwcd937x_set_port_paramswcd937x_enable_reqwcd937x_enable_req.descriptorwcd937x_codec_enable_dmicwcd937x_codec_enable_dmic.descriptorwcd937x_codec_enable_dmic.descriptor.121wcd937x_tx_swr_ctrlwcd937x_ear_pa_gain_getwcd937x_ear_pa_gain_get.descriptorwcd937x_ear_pa_gain_putwcd937x_ear_pa_gain_put.descriptorwcd937x_rx_hph_mode_getwcd937x_rx_hph_mode_putwcd937x_rx_hph_mode_put.descriptorwcd937x_get_companderwcd937x_set_compander__wcd937x_codec_enable_micbiaswcd937x_codec_enable_vdd_buckwcd937x_codec_enable_vdd_buck.descriptorwcd937x_codec_enable_vdd_buck.descriptor.218wcd937x_enable_clshwcd937x_enable_clsh.descriptorwcd937x_codec_enable_ear_pawcd937x_codec_enable_ear_pa.descriptorwcd937x_codec_enable_aux_pawcd937x_codec_enable_aux_pa.descriptorwcd937x_codec_enable_hphl_pawcd937x_codec_enable_hphl_pa.descriptorwcd937x_codec_enable_hphr_pawcd937x_codec_enable_hphr_pa.descriptorwcd937x_codec_hphl_dac_eventwcd937x_codec_hphl_dac_event.descriptorwcd937x_rx_clk_enablewcd937x_codec_hphr_dac_eventwcd937x_codec_hphr_dac_event.descriptorwcd937x_codec_ear_dac_eventwcd937x_codec_ear_dac_event.descriptorwcd937x_codec_aux_dac_eventwcd937x_codec_aux_dac_event.descriptorwcd937x_rx_clk_disablewcd937x_enable_rx1wcd937x_enable_rx1.descriptorwcd937x_enable_rx2wcd937x_enable_rx2.descriptorwcd937x_enable_rx3wcd937x_enable_rx3.descriptor__wcd937x_codec_enable_micbias.descriptorwcd937x_rx_clk_disable.descriptorwcd937x_suspendwcd937x_resume__kstrtab_wcd937x_soc_get_mbhc__ksymtab_wcd937x_soc_get_mbhc__kstrtab_wcd937x_get_micb_vout_ctl_val__ksymtab_wcd937x_get_micb_vout_ctl_val__kstrtab_wcd937x_mbhc_micb_adjust_voltage__ksymtab_wcd937x_mbhc_micb_adjust_voltage__kstrtab_wcd937x_micbias_control__ksymtab_wcd937x_micbias_control__kstrtab_wcd937x_info_create_codec_entry__ksymtab_wcd937x_info_create_codec_entry__UNIQUE_ID_description91__UNIQUE_ID_license92wcd937x_dt_matchwcd937x_dev_pm_opswcd937x_snd_controlswcd937x_dapm_widgetswcd937x_audio_mapwcd937x_irqsdmic1_switch.compoundliteraldmic2_switch.compoundliteral.124dmic3_switch.compoundliteral.125dmic4_switch.compoundliteral.126dmic5_switch.compoundliteral.127dmic6_switch.compoundliteral.128adc3_switch.compoundliteral.129wcd937x_ear_pa_gain_enumwcd937x_ear_pa_gain_textrx_hph_mode_mux_enumrx_hph_mode_mux_text.compoundliteral.136.compoundliteral.138line_gain.compoundliteral.140.compoundliteral.142analog_gain.compoundliteral.144.compoundliteral.146.compoundliteral.148tx_adc2_muxadc2_enumadc1_switch.compoundliteral.213adc2_switch.compoundliteral.214rx_rdac3_muxrdac3_enumear_rdac_switch.compoundliteral.237aux_rdac_switch.compoundliteral.238hphl_rdac_switch.compoundliteral.239hphr_rdac_switch.compoundliteral.240adc2_mux_textrdac3_mux_textwcd937x_writeable_registerwcd937x_readable_registerwcd937x_volatile_registerwcd937x_defaultsmbhc_cbintr_idswcd_mbhc_registerswcd937x_mbhc_init.__keyimpedance_detect_controlshph_type_detect_controlswcd937x_mbhc_bcs_enablewcd937x_wcd_mbhc_calc_impedancewcd937x_wcd_mbhc_calc_impedance.__warnedwcd937x_mbhc_zdet_rampwcd937x_wcd_mbhc_calc_impedance.descriptorwcd937x_wcd_mbhc_calc_impedance.descriptor.16wcd937x_wcd_mbhc_calc_impedance.descriptor.18wcd937x_wcd_mbhc_calc_impedance.descriptor.20wcd937x_get_hwdep_fw_calwcd937x_mbhc_register_notifierwcd937x_mbhc_request_irqwcd937x_mbhc_irq_controlwcd937x_mbhc_free_irqwcd937x_mbhc_clk_setupwcd937x_mbhc_btn_to_numwcd937x_mbhc_lock_sleepwcd937x_mbhc_micb_en_statuswcd937x_mbhc_mbhc_bias_controlwcd937x_mbhc_hph_pa_on_statuswcd937x_mbhc_program_btn_thrwcd937x_mbhc_program_btn_thr.descriptorwcd937x_mbhc_request_micbiaswcd937x_mbhc_micb_ramp_controlwcd937x_mbhc_micb_ctrl_threshold_micwcd937x_mbhc_gnd_det_ctrlwcd937x_mbhc_hph_pull_down_ctrlwcd937x_mbhc_moisture_configwcd937x_mbhc_moisture_config.descriptorwcd937x_mbhc_hph_l_pull_up_controlwcd937x_mbhc_hph_l_pull_up_control.descriptorwcd937x_mbhc_get_moisture_statuswcd937x_mbhc_get_moisture_status.descriptorwcd937x_mbhc_moisture_polling_ctrlwcd937x_mbhc_moisture_detect_enwcd937x_mbhc_zdet_ramp.descriptorwcd937x_mbhc_get_result_params.descriptorwcd937x_mbhc_get_result_params.descriptor.28wcd937x_mbhc_zdet_ramp.descriptor.24wcd937x_hph_impedance_getwcd937x_hph_impedance_get.descriptorwcd937x_get_hph_typewcd937x_get_hph_type.descriptor__kstrtab_wcd937x_mbhc_get_impedance__ksymtab_wcd937x_mbhc_get_impedance__kstrtab_wcd937x_mbhc_hs_detect__ksymtab_wcd937x_mbhc_hs_detect__kstrtab_wcd937x_mbhc_hs_detect_exit__ksymtab_wcd937x_mbhc_hs_detect_exit__kstrtab_wcd937x_mbhc_ssr_down__ksymtab_wcd937x_mbhc_ssr_down__kstrtab_wcd937x_mbhc_post_ssr_init__ksymtab_wcd937x_mbhc_post_ssr_init.compoundliteral.90.compoundliteral.93__kstrtab_wcd937x_mbhc_init__ksymtab_wcd937x_mbhc_init__kstrtab_wcd937x_mbhc_deinit__ksymtab_wcd937x_mbhc_deinit.L21__UNIQUE_ID_vermagic61__UNIQUE_ID_name62__UNIQUE_ID_intree63____versions__module_depends__crc_wcd937x_soc_get_mbhc__crc_wcd937x_get_micb_vout_ctl_val__crc_wcd937x_mbhc_micb_adjust_voltage__crc_wcd937x_micbias_control__crc_wcd937x_info_create_codec_entry__sanitizer_cov_trace_pc__hwasan_load8_noabortprintk__hwasan_load4_noabortmutex_locksnd_soc_read_dev_infosnd_soc_update_bitsusleep_rangemutex_unlockdev_err__hwasan_store4_noabortblocking_notifier_call_chain__dynamic_dev_dbgwcd937x_disable_bcs_before_slow_insertsnd_info_create_subdir__hwasan_store8_noabortsnd_info_create_card_entry__hwasan_store2_noabortsnd_info_registersnd_info_free_entrywcd937x_populate_dt_data__stack_chk_guardkmalloc_cacheskmem_cache_alloc_traceof_parse_phandlemsm_cdc_get_power_suppliesof_find_propertyof_property_read_variable_u32_array__stack_chk_failinit_module__this_module__platform_driver_registercleanup_moduleplatform_driver_unregistersnprintfsimple_read_from_buffercomponent_match_add_releasecomponent_master_add_with_matchcomponent_master_delmsm_cdc_init_suppliesmsm_cdc_enable_static_suppliescomponent_bind_allget_matching_swr_slave_devicewcd937x_regmap_config__devm_regmap_init_swrregmap_writewcd_irq_initregmap_update_bits_base__mutex_initsnd_soc_register_codecwcd_irq_exitcomponent_unbind_allsnd_soc_unregister_codecmsm_cdc_pinctrl_get_statemsm_cdc_pinctrl_select_sleep_statemsm_cdc_pinctrl_select_active_stateswr_device_wakeup_voteswr_device_wakeup_unvote__kmalloc__sw_hweight8__hwasan_store1_noabortregmap_readdevm_kmallocset_bitwcd_cal_create_hwdepsnd_soc_dapm_ignore_suspendsnd_soc_dapm_syncwcd_cls_h_initsnd_soc_dapm_new_controlssnd_soc_dapm_add_routesswr_get_logical_dev_num__hwasan_load1_noabortregcache_mark_dirtyregcache_syncswr_disconnect_portclear_bitswr_connect_portstrpbrkkstrtouintswr_slvdev_datapath_controldev_warnmsm_cdc_enable_ondemand_supplywcd_cls_h_fsmstrnstrmsm_cdc_disable_ondemand_supplysnd_soc_info_volswsnd_soc_dapm_get_volswsnd_soc_dapm_put_volswsnd_soc_info_enum_doublesnd_soc_get_volswsnd_soc_put_volswsnd_soc_dapm_get_enum_doublesnd_soc_dapm_put_enum_doublewcd937x_reg_access__crc_wcd937x_mbhc_get_impedance__crc_wcd937x_mbhc_hs_detect__crc_wcd937x_mbhc_hs_detect_exit__crc_wcd937x_mbhc_ssr_down__crc_wcd937x_mbhc_post_ssr_init__crc_wcd937x_mbhc_init__crc_wcd937x_mbhc_deinitwcd_mbhc_get_impedancewcd_mbhc_startwcd_mbhc_stopwcd_mbhc_deinitwcd_mbhc_init__init_rwsemdevm_kfreesnd_soc_add_codec_controlsmemcpy__hwasan_load2_noabortsnd_soc_writewcdcal_get_fw_calblocking_notifier_chain_registerblocking_notifier_chain_unregisterwcd_request_irqwcd_enable_irqwcd_disable_irqwcd_free_irqp x3(T.l08@oHPXin`ch  (,( $ h(  (`0H 8 @HX P X`t h px+-@/t0x$23l2309L9 9:X;,; =(=08>@>H8P?X@`phApdCxDhEFH|IPLPLxNOQ RRTXT 0(|U0V8@XHYPX[`8\hpX]xh^`p`hDoLsHosr|srsxx{ $|(@0||8|@xH}P}X` hp(xLЅ`PĆx (4<HLPX\O`Odmhml(,d4d@!P"\#lptx|WW$%,%@%L&Th%t' )4Lt"!* ,!<*L"X!h*t'|!%%%%%% ("4!D*T'd!t*!*!,!<P%`t!+%!% $0<H\%lx+%+"!%*('4@L\+dlt'!!,  ( 4 @ H d          P P /( 0< D ZH ZP 1` 0l 0| 2 0   3 0   K K 1 0 0 2 0 @ @( 30 8 0L \ h x   4   8 O  8 O  ,   p Z p Z        $ ( ~, 0 ~4 8 < ,` 6d 6p t 78x 78  8  x x 9 0 :  !   ( 94 0@ H L T 9` 0l *x    ;    <  ! *    x x)(04K8<K@H)TX\<`d<l$t|);<! * <$(<0$8@LTX\`dhp)xjj;jj<!*d<d<$ j$(,j4)86@6h=660!bbCD 3>3> (606P=h6l60!YYooCD3 )3) 6(6H=\6`6lt09E9EF$(,48<@(D(L)T6\6x=G0(,7`07`8L8`0l5|000!H0,80HT0dp!I  )  )@@ $4(4, 0 8)D0PJXJ&0K  )))qq ),4L@0PXLh0tMxMN0pp!O!<<   ()4<@D HL T)`dHhHp00000P2 2 ) 0$!8<@DHLXt!!4Q<\QdQHHR..R00S``  ) T$U,LXdpTVU0JJW$,48<HPXX\n`np&xY)&Z & &$(,8@[p6t6;!\4L<\hlp|))J!!(!4!@!`*l*x*]**^J66 ( =< 6@ 6L T *` *l *|  _  _  _ !  !  !!! !^(!60!6P!=l!t!|! !! !!$!!!0!#!*!!`"0"a","b<"L"cX"\">`"d">h"l"t"""""")""""""")"0"I"I#d# ##d##$#d(# ,# 4#d8#a <#a D#dH#L#T#dX#\#d#dh#l#t#dx# |# #d###d# # #d#e #e #d#e#f#%#%#& $%$&,$%@$%T$%h$%t$&$%$%$%$%$%$%%%%!%` %` (%g0%0 4%0 @%hL%P%T%\%d`%d%l%dp%t%|%d%%%d%%%d%%%d%%%d%%%d%e%%*%0&x'&x'& &<&D&L&P&T&X&`&)h&t&|&&\&\&&&&x&x&&&)&&&&'' ','P'X'd''6'6''''''(d(d(!0(<(D(XH( L(XP( X()`(t(%(%(%((i((((X((n(n)) )^0)@)jH)T)k`)h)l)p)t)))))))k)^))^))j))k* ****$*),*4*k@*^P*X*l`*h*m|*%**n***@* *@* *)***o*****X*X+)++&+6 +6H+=h+6l+6|++++++k++, ,(,0,H,pP,kh,t,|,,,,,,,p,q -%--(-0-4-*8-<-@-*D-P-,d-"p-!-*-'-%-%-%-k-#-.4.<.D.L.T.t.r.a.k...../r/6/6*>> >*>>,0>@>L>X>d>!l>!p>!>w>>>>>>q>>q>&>>?? ?????, P  ` j p X   &  w \ }  +    0  @  P  `  p   i 4  H   *    0 @ P<`p(   H`PaX``ah`pa4    OOI  0 8@ P `p   Q5  0T@5P X`Tp]  ]a  a Qa  0 8@PL` pe L Q  0D@ P`Dpx55 U    U0 @  P  X `  p         C       0 @  P  X ` p     y  v v  l  j  j   f@ X {` |h }x   { | }   { | } x0 H {P |X }h   { | } H  { | }  8 {@ |H }X h  L+ `@/(C1h1 1y`1(l1hf1  500  ` 5p (  5 h  5 v  50p j ` 5p (   5  h!"#(%h&'(0*-*h. + 8+~@+8H+9X+ *p++~+d:+:+*++{+;+<<+,p(,{0,;8,<<H,`,x,{,,,*,P,,{,,,*,-4-{ -(-0-+8- P-(h-{p-x--+---{---+-- - -- .6..%. . (. 0. 8. @.-H. P.X. `. h.0 p. x. .=. . . .C.~... c//{ /|(/}8/XP/h/{p/|x/}//5/~///c/0{0|0}(0( @0X0{`0|h0}x0 00{0|0}0 00{1|1}1` (1Ih234 (6a h78O 9L+9`:L+(; ;@/h< <@/=0>.> `? 5p?.(@ @ 5@@/hA9A<B C<C`D<(E E=hFQF$?GU HHAHD`IC(J]JEhKLK(ILT MLM`N4O(OOQhPPSQ0R/R5`S U(TT0XhUU@[V 0W/W pX00(Y Y0hZ Z0[\(^ h_` ae 0cccccdd5d(vh@v4iXvshvtpvtxvXuvuv(vvhvvvvvvdwvwvwvA.symtab.strtab.shstrtab.rela__ksymtab.rela__kcrctab.rela__jump_table.rela.text.rela.data.bss.rela.rodata.rela.init.text.rela.exit.text.rodata.str1.1__ksymtab_strings.rela__verbose.modinfo.comment.rela__bug_table.rodata.str.rodata.cst32.data.unlikely.rela.gnu.linkonce.this_module__versions.note.gnu.build-id.note.GNU-stack @@@#/0*@ȧ #>0 9@` #PPDK@H#[V@# akxf@()# x(s@#8 @X`#2XP2130 @#<0=,> @x0#28>2l>@ >?@0#.B9]L]\]'$