DELL
2024-01-10 554f43497fca806ef44491c7833e1b7ad7c7b285
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
Êþº¾4¸com/battdata_rt/BattData_RT_SQLjava/lang/Object<init>()VCode
     LineNumberTableLocalVariableTablethis!Lcom/battdata_rt/BattData_RT_SQL;(get_MonData_From_BattData_RT_RamDB_Table?(Lcom/dec/fbs9100/MysqlConnPool;Lcom/battdata_rt/BattData_RT;)Vcom/dec/fbs9100/Sql_Mysql
 "(Lcom/dec/fbs9100/MysqlConnPool;)Vjava/lang/StringBuilderpSELECT mon_num,mon_vol,mon_tmp,mon_res,mon_ser,mon_conn_res FROM `db_ram_db`.`tb_batt_rtdata` WHERE BattGroupId=
 (Ljava/lang/String;)V    com/battdata_rt/BattData_RT  ! BattGroupIdI
# $%append(I)Ljava/lang/StringBuilder;' ORDER BY mon_num ASC
) $*-(Ljava/lang/String;)Ljava/lang/StringBuilder;
, -.toString()Ljava/lang/String;
0 12 sqlMysqlQuery((Ljava/lang/String;)Ljava/sql/ResultSet;4mon_num 687java/sql/ResultSet 9:getInt(Ljava/lang/String;)I    < =>    al_MonVolLjava/util/ArrayList;
@BAjava/util/ArrayList CDsize()I
@F GHget(I)Ljava/lang/Object;Jcom/battdata_rt/MonVolDataLmon_vol 6N OPgetFloat(Ljava/lang/String;)F    IR STmonVolFVmon_tmp    IX YTmonTmp[mon_res    I] ^TmonRes`mon_ser    Ib cTmonSere mon_conn_res    Ig hTconnRes 6j klnext()Z    n oplogger&Lorg/apache/logging/log4j/core/Logger;r+get_MonData_From_BattData_RT_RamDB_Table():
t,ujava/lang/Exception
wyx$org/apache/logging/log4j/core/Logger z{error*(Ljava/lang/String;Ljava/lang/Throwable;)V 6} ~close
€,java/sql/SQLException
ƒ „    close_con    conn_poolLcom/dec/fbs9100/MysqlConnPool;bd_rtLcom/battdata_rt/BattData_RT;sqlLcom/dec/fbs9100/Sql_Mysql;sql_strLjava/lang/String;resLjava/sql/ResultSet;    mon_indexeLjava/lang/Exception;Ljava/sql/SQLException; StackMapTable•java/lang/String—com/dec/fbs9100/MysqlConnPool™java/lang/ThrowablecreateBattData_RT_RamDB_Table$(Lcom/dec/fbs9100/MysqlConnPool;II)V!`db_ram_batt_rt`.`tb_batt_rtdata_Ÿ`¡ DELETE FROM £ WHERE ¥.num>0§CREATE TABLE IF NOT EXISTS © «(( `num` BIGINT NOT NULL AUTO_INCREMENT, ­&`BattGroupId` INT NOT NULL DEFAULT 0, ¯@`rec_datetime` DATETIME NOT NULL DEFAULT '1982-01-01 00:00:00', ±"`mon_num` INT NOT NULL DEFAULT 0, ³$`mon_vol` FLOAT NOT NULL DEFAULT 0, µ$`mon_tmp` FLOAT NOT NULL DEFAULT 0, ·$`mon_res` FLOAT NOT NULL DEFAULT 0, ¹$`mon_ser` FLOAT NOT NULL DEFAULT 0, »)`mon_conn_res` FLOAT NOT NULL DEFAULT 0, ½$`mon_cap` FLOAT NOT NULL DEFAULT 0, ¿%`batt_count` INT NOT NULL DEFAULT 0, Á'`online_vol` FLOAT NOT NULL DEFAULT 0, Ã&`group_vol` FLOAT NOT NULL DEFAULT 0, Å&`group_tmp` FLOAT NOT NULL DEFAULT 0, Ç'`group_curr` FLOAT NOT NULL DEFAULT 0, É%`batt_state` INT NOT NULL DEFAULT 0, Ë)`batt_test_type` INT NOT NULL DEFAULT 0, ÍG`batt_test_starttime` DATETIME NOT NULL DEFAULT '1982-01-01 00:00:00', ÏH`batt_test_recordtime` DATETIME NOT NULL DEFAULT '1982-01-01 00:00:00', Ñ*`batt_test_tlong` INT NOT NULL DEFAULT 0, Ó*`batt_test_cap` FLOAT NOT NULL DEFAULT 0, Õ*`batt_real_cap` FLOAT NOT NULL DEFAULT 0, ×*`batt_rest_cap` FLOAT NOT NULL DEFAULT 0, Ù0`batt_rest_power1_time` INT NOT NULL DEFAULT 0, Û0`batt_rest_power2_time` INT NOT NULL DEFAULT 0, Ý)INDEX index_BattGroupId (`BattGroupId`), ßPRIMARY KEY (`num`)) á#ENGINE=MEMORY DEFAULT CHARSET=utf8;ã INSERT INTO å (BattGroupId,çmon_num)é VALUES 
”ë ìívalueOf&(Ljava/lang/Object;)Ljava/lang/String;ï,ñ(ó)
õ ösqlMysqlExecuteøSELECT COUNT(*) FROM  6ú 9û(I)Iý createBattData_RT_RamDB_Table():bg_idbatt_cnttb_namesql_str0sql_str1sql_str2cntmcres_tcnt_rowselectRT_BttInf_Table[(Lcom/dec/fbs9100/MysqlConnPool;Lcom/battdata_rt/BattData_RT;)Lcom/battdata_rt/BattData_RT; <SELECT * FROM `db_battinf`.`tb_battinf` WHERE  FBSDeviceId=      ! FBSDeviceId FBSDeviceIp 6     getString&(Ljava/lang/String;)Ljava/lang/String;     ŒFBSDeviceIp_WG     ŒFBSDeviceIp_YM     Œ selectRT_BttInf_Table():updateBattState_RT_RamDB_Table#java/util/Date
"    
& '(getTestStartTime()J
"* +,setTime(J)V
. /(getTestRecordTime18UPDATE `db_ram_db`.`tb_batt_rtstate` SET  rec_datetime='3yyyy-MM-dd HH:mm:ss
576 com/base/Com 89getDateTimeFormat6(Ljava/util/Date;Ljava/lang/String;)Ljava/lang/String;;',=  batt_count=    ? @!MonCountB  online_vol=
D EF getOnlineVol()F
H $I(F)Ljava/lang/StringBuilder;K  group_vol=
M NF getGroupVolP  group_tmp=
R SF getGroupTmpU  group_curr=
W XF getGroupCurrZ  batt_state=
\ ]^ getBattState()B` batt_test_type=
b c^getBattTestTypee batt_test_starttime='g batt_test_recordtime='i batt_test_tlong=
k lDgetTestTimeLongn batt_test_cap=
p qF
getTestCaps batt_real_cap=
u vFgetBattRealCapx batt_rest_cap=
z {FgetBattRestCap} batt_rest_power1_time=
 €DgetBattRestTime‚ WHERE BattGroupId=„!updateBattState_RT_RamDB_Table(): dt_test_StartLjava/util/Date;    dt_recordupdateBattData_RT_RamDB_TableŠ7UPDATE `db_ram_db`.`tb_batt_rtdata` SET  rec_datetime='Œ'    Ž >al_MonVol_RtOld‘ WHEN “ THEN •%1.3f
—™˜java/lang/Float ìš(F)Ljava/lang/Float;
”œ žformat9(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
”  ¡.trim
”£ ¤Dlength¦, mon_vol = CASE mon_num ¨ ELSE mon_vol END ª, mon_tmp = CASE mon_num ¬ ELSE mon_tmp END ®, mon_res = CASE mon_num ° ELSE mon_res END ², mon_ser = CASE mon_num ´ ELSE mon_ser END     I¶ ·T mon_JH_curr¹, mon_JH_curr = CASE mon_num » ELSE mon_JH_curr END     ½ ¾¿    mTestDataLcom/battdata_rt/BattStatData;
ÁÃÂcom/battdata_rt/BattStatData ÄÅupdateNewDataRCTime(Ljava/util/Date;)VÇ updateBattData_RT_RamDB_Table():tmp_dt sql_str_voln sql_str_tmp sql_str_res sql_str_ser
sql_str_JH    sql_str_2getCreateBattTestDataStrÒ,`test_record_count` INT NOT NULL DEFAULT 0, Ô$`test_type` INT NOT NULL DEFAULT 0, Ö+`data_new` BOOLEAN NOT NULL DEFAULT false, Ø1`data_available` BOOLEAN NOT NULL DEFAULT false, Ú%`record_num` INT NOT NULL DEFAULT 0, ÜB`test_starttime` DATETIME NOT NULL DEFAULT '1982-01-01 00:00:00', Þ?`record_time` DATETIME NOT NULL DEFAULT '1982-01-01 00:00:00', à(`test_timelong` INT NOT NULL DEFAULT 0, â&`test_curr` FLOAT NOT NULL DEFAULT 0, ä%`test_cap` FLOAT NOT NULL DEFAULT 0, æ5INDEX index_test_record_count (`test_record_count`), èPRIMARY KEY (`num`));getInsertBattTestDataStr1(Lcom/battdata_rt/BattData_RT;)Ljava/lang/String;
Áì íîclone ()Lcom/battdata_rt/BattStatData;ðINSERT INTO tb_BattTestData_ò(BattGroupId, ôtest_record_count, ö test_type, ø
data_new, údata_available, ü record_num, þtest_starttime,  record_time, test_timelong,  online_vol,  group_vol,  test_curr, 
 
test_cap,      mon_num,     mon_vol, mon_tmp),     Á !testRecordCount    Á battTestType_For_DataSaveB
 $(Z)Ljava/lang/StringBuilder;    Á  !!    recordNum    Á# $† startTestTime&',     Á( )†
recordTime    Á+ ,T    onlineVol    Á. /TgroupVol    Á1 2TtestCurr    Á4 5TtestCap
7 89get_al_MonVol_History(I)Frt_data    mon_count tmp_test_data sql_str_data$getInsertOrUpdateBattTestDataStopStr4(Lcom/battdata_rt/BattData_RT;)Ljava/util/ArrayList;    SignatureH(Lcom/battdata_rt/BattData_RT;)Ljava/util/ArrayList<Ljava/lang/String;>;
@        D E>al_MonVol_History
G HImakeMaxMinMonVol(Ljava/util/ArrayList;)V    K LMMysqlDataResInfTable_ExistZO INSERT INTO tb_BattTestDataStop_Q (BattGroupId, Smon_vol)    ÁU V! testTimeLong
@X YZadd(Ljava/lang/Object;)Z\UPDATE tb_BattTestDataStop_^ SET `
 data_new=bdata_available=d record_num=f record_time='htest_timelong=j
group_vol=l
test_curr=    Án oTtestCurrAbsMaxq    test_cap=s  BattGroupId=u AND w test_record_count=y mon_vol = CASE mon_num
{ |}is_al_MonVol_History_New(I)Z END WHERE mon_num IN ( AND BattGroupId=
al_sql_str tmp_mon_voltemp_strLocalVariableTypeTable)Ljava/util/ArrayList<Ljava/lang/String;>;3Ljava/util/ArrayList<Lcom/battdata_rt/MonVolData;>;#getInsertOrUpdateBattTestDataInfStr2(Lcom/battdata_rt/BattData_RT;I)Ljava/lang/String;    Á‹ Œ! test_stoptype    Ž MMysqlRecordInf_Exist‘AINSERT INTO `db_batt_testdata`.`tb_batttestdata_inf` (BattGroupId, test_record_count, test_type, record_time_interval, data_new, data_available, record_num, test_starttime, test_starttype, record_time, test_timelong, test_stoptype, group_vol, test_curr, test_cap, max_monnum, max_monvol, min_monnum, min_monvol)  VALUES (    “ ”!mSaveDataTimeInterval    Á– —testLoaderType    ™ š!
mMaxMonNum    œ T
mMaxMonVol    Ÿ  !
mMinMonNum    ¢ £T
mMinMonVol¥) §>UPDATE `db_batt_testdata`.`tb_batttestdata_inf` SET test_type=©record_time_interval=«    data_new=­test_starttime='¯test_starttype=±test_stoptype=³ max_monnum=µ max_monvol=· min_monnum=¹ min_monvol=test_stoptype_tQ(Lcom/dec/fbs9100/MysqlConnPool;Lcom/battdata_rt/BattData_RT;I)Ljava/lang/String;
½¿¾&com/dec/fbs9100/BattResStorePro_Thread ÀÁinsertMonDataToResTableP(Lcom/dec/fbs9100/MysqlConnPool;Lcom/battdata_rt/BattData_RT;Ljava/util/Date;I)V
à ÄrecordTestParampoolÇ5 SELECT *  FROM `db_dev_testparam`.tb_batt_testparam_É WHERE BattGroupId = Ë AND test_record_count =     ÁÍ ÎÏ
test_param(Lcom/dec/fbs9100/FBS9100_batt_testparam;Ñ- UPDATE `db_dev_testparam`.tb_batt_testparam_Ó SET op_cmd =     Õ×Ö&com/dec/fbs9100/FBS9100_batt_testparam Ø!op_cmdÚ ,TestCmd =     ÕÜ Ý!TestCmdß,record_time = '    Õá ↠record_timeä ,HourRate =     Õæ ç!HourRateé ,DisCurr =     Õë ìTDisCurrî
,DisCap =     Õð ñTDisCapó ,DisTime =     Õõ ö!DisTimeø,GroupVol_LOW =     Õú ûT GroupVol_LOWý,MonomerVol_LOW =     Õÿ TMonomerVol_LOW,MonomerLowCount =     Õ !MonomerLowCount,BattGroupNum =     Õ     
! BattGroupNum ,OnlineVolLowAction =     Õ !OnlineVolLowAction,DCVolHighLimit =     Õ TDCVolHighLimit,ChargeCurrSet =     Õ T ChargeCurrSet,MonomerTmp_High =     Õ TMonomerTmp_High ,AutoTestStartVol =     Õ" #TAutoTestStartVol%,OnLineVol_Low =     Õ' (T OnLineVol_Low*,OffLineYH_Cycle =     Õ, -!OffLineYH_Cycle/,OffLineYHstarttime = '    Õ1 2†OffLineYHstarttime4,OffLineYHTimes =     Õ6 7!OffLineYHTimes9,OffLineYHOnceCycle =     Õ; <!OffLineYHOnceCycle> ,MonCount =     Õ?A
,MonVol =     ÕC DTMonVolF ,DisPower =     ÕH ITDisPowerK ,DisPreRes =     ÕM NT    DisPreResP ,CharCap =     ÕR S!CharCapU,CharTimeLong =     ÕW X! CharTimeLongZ,FloatCharTimeLong =     Õ\ ]!FloatCharTimeLong_,CharSotpCurr =     Õa bT CharSotpCurrd,MonVolHightLimit =     Õf gTMonVolHightLimiti,MonVolHightLimitCount =     Õk l!MonVolHightLimitCountn,CharHighTmp =     Õp qT CharHighTmps,DisWaitTime =     Õu v! DisWaitTimex,CharWaitTime =     Õz {! CharWaitTime},FlowOver_Count =     Õ €!FlowOver_Count‚,FlowOver_CharCurr_1 =     Õ„ …TFlowOver_CharCurr_1‡,FlowOver_CharCurr_2 =     Õ‰ ŠTFlowOver_CharCurr_2Œ,FlowOver_CharCurr_3 =     ÕŽ TFlowOver_CharCurr_3‘,FlowOver_CharTime_1 =     Õ“ ”!FlowOver_CharTime_1–,FlowOver_CharTime_2 =     Õ˜ ™!FlowOver_CharTime_2›,FlowOver_CharTime_3 =     Õ ž!FlowOver_CharTime_3 ,ChargeVolt =     Õ¢ £T
ChargeVolt¥,C_ProtectVol1 =     Õ§ ¨T C_ProtectVol1ª,C_ProtectVol2 =     Õ¬ ­T C_ProtectVol2¯,C_ProtectVol3 =     Õ± ²T C_ProtectVol3´,C_mon_uppervol1 =     Õ¶ ·TC_mon_uppervol1¹,C_mon_uppervol2 =     Õ» ¼TC_mon_uppervol2¾,C_mon_uppervol3 =     ÕÀ ÁTC_mon_uppervol3Ã,C_mon_uppernum1 =     ÕÅ Æ!C_mon_uppernum1È,C_mon_uppernum2 =     ÕÊ Ë!C_mon_uppernum2Í,C_mon_uppernum3 =     ÕÏ Ð!C_mon_uppernum3Ò,HV_charge_num =     ÕÔ Õ! HV_charge_num×,HV_charge_Vol1 =     ÕÙ ÚTHV_charge_Vol1Ü,HV_charge_Vol2 =     ÕÞ ßTHV_charge_Vol2á,HV_charge_Vol3 =     Õã äTHV_charge_Vol3æ ,HV_time1 =     Õè é!HV_time1ë ,HV_time2 =     Õí î!HV_time2ð ,HV_time3 =     Õò ó!HV_time3õ,HV_ProtectCurr1 =     Õ÷ øTHV_ProtectCurr1ú,HV_ProtectCurr2 =     Õü ýTHV_ProtectCurr2ÿ,HV_ProtectCurr3 =     Õ THV_ProtectCurr3,HV_mon_uppervol1 =     Õ THV_mon_uppervol1    ,HV_mon_uppervol2 =     Õ  THV_mon_uppervol2,HV_mon_uppervol3 =     Õ THV_mon_uppervol3,HV_mon_uppernum1 =     Õ !HV_mon_uppernum1,HV_mon_uppernum2 =     Õ !HV_mon_uppernum2,HV_mon_uppernum3 =     Õ  !HV_mon_uppernum3"1INSERT INTO `db_dev_testparam`.tb_batt_testparam_$ã(record_time,BattGroupId,test_record_count,op_cmd,TestCmd,HourRate,DisCurr,DisCap,DisTime,GroupVol_LOW,MonomerVol_LOW,MonomerLowCount,BattGroupNum,OnlineVolLowAction,DCVolHighLimit,ChargeCurrSet,MonomerTmp_High,AutoTestStartVol,OnLineVol_Low,OffLineYH_Cycle,OffLineYHstarttime,OffLineYHTimes,OffLineYHOnceCycle,MonCount,MonVol,DisPower,DisPreRes,CharCap,CharTimeLong,FloatCharTimeLong,CharSotpCurr,MonVolHightLimit,MonVolHightLimitCount,CharHighTmp,DisWaitTime,CharWaitTime,FlowOver_Count,FlowOver_CharCurr_1,FlowOver_CharCurr_2,FlowOver_CharCurr_3,FlowOver_CharTime_1,FlowOver_CharTime_2,FlowOver_CharTime_3,ChargeVolt,C_ProtectVol1,C_ProtectVol2,C_ProtectVol3,C_mon_uppervol1,C_mon_uppervol2,C_mon_uppervol3,C_mon_uppernum1,C_mon_uppernum2,C_mon_uppernum3,HV_charge_num,HV_charge_Vol1,HV_charge_Vol2,HV_charge_Vol3,HV_time1,HV_time2,HV_time3,HV_ProtectCurr1,HV_ProtectCurr2,HV_ProtectCurr3,HV_mon_uppervol1,HV_mon_uppervol2,HV_mon_uppervol3,HV_mon_uppernum1,HV_mon_uppernum2,HV_mon_uppernum3) &VALUES(();
t* +printStackTrace-"BattData_RT_SQL.recordTestParam(): sql_str_selparamgetDeleteBattTestDataStr2DELETE FROM tb_BattTestData_4 WHERE test_record_count=6 DELETE FROM tb_BattTestDataStop_8HDELETE FROM `db_batt_testdata`.`tb_batttestdata_inf` WHERE  BattGroupId=al_strqueryBattState_From_RT_Table<>SELECT * FROM `db_ram_db`.`tb_batt_rtstate` WHERE BattGroupId=>batt_test_type 6@ ABgetByte(Ljava/lang/String;)B    ÁD E battTestStateGtest_loadertypeItest_recordnumK
online_volM    group_volO    group_tmp    ÁQ RTgroupTmpT
group_curr    ÁV WT TestCurr_RTY
batt_state    Á[ \    battState^batt_test_starttime 6` ab getTimestamp((Ljava/lang/String;)Ljava/sql/Timestamp;
dfejava/sql/Timestamp g(getTimeibatt_test_recordtimekbatt_test_tlongm batt_test_capo batt_real_cap    Áq rT battRealCapt batt_rest_cap    Áv wT battRestCapybatt_rest_power1_time    Á{ |! battRestTime~queryBattState_From_RT_Table():rs_t0queryTestRecordCountMax_From_tb_batttestdata_inf#(Lcom/dec/fbs9100/MysqlConnPool;I)Iƒ^SELECT MAX(test_record_count) FROM `db_batt_testdata`.`tb_batttestdata_inf` WHERE BattGroupId=…3queryTestRecordCountMax_From_tb_batttestdata_inf():    rec_countcheckTbFbs9100StateIntegrity#(Lcom/dec/fbs9100/MysqlConnPool;J)VŠ?SELECT dev_id FROM `db_ram_db`.`tb_fbs9100_state` WHERE dev_id=
Œ $(J)Ljava/lang/StringBuilder;<INSERT INTO `db_ram_db`.`tb_fbs9100_state` (dev_id) VALUES (‘0BattData_RT_SQL.checkTbFbs9100StateIntegrity(): 
w“ ”debug–VBattData_RT_SQL.checkTbFbs9100StateIntegrity(): `db_ram_db`.`tb_fbs9100_state`.dev_id:˜     is existš/BattData_RT_SQL.checkTbFbs9100StateIntegrity():dev_id_tJrecreate_data_tagcheckTbBattDataIntegrity HSELECT BattGroupId FROM `db_ram_db`.`tb_batt_rtstate` WHERE BattGroupId=¢@INSERT INTO `db_ram_db`.`tb_batt_rtstate` (BattGroupId) VALUES (¤,BattData_RT_SQL.checkTbBattDataIntegrity(): ¦QBattData_RT_SQL.checkTbBattDataIntegrity(): `db_ram_db`.`tb_batt_rtstate`.dev_id:¨JSELECT COUNT(mon_num) FROM `db_ram_db`.`tb_batt_rtdata` WHERE BattGroupId=ªCSELECT mon_num FROM `db_ram_db`.`tb_batt_rtdata` WHERE BattGroupId=¬;DELETE FROM `db_ram_db`.`tb_batt_rtdata` WHERE BattGroupId=®IINSERT INTO `db_ram_db`.`tb_batt_rtdata` (BattGroupId, mon_num) + VALUES °PBattData_RT_SQL.checkTbBattDataIntegrity(): `db_ram_db`.`tb_batt_rtdata`.dev_id:²&BattData_RT_SQL.checkTableIntegrity():
batt_cnt_tlen    index_num
SourceFileBattData_RT_SQL.java!/*·±
      H»Y*·M»Y·+´¶"&¶(¶+N,-¶/:§š3¹56ž„ÿ+´;¶?¢{+´;¶EÀIK¹MµQ+´;¶EÀIU¹MµW+´;¶EÀIZ¹Mµ\+´;¶EÀI_¹Mµa+´;¶EÀId¹Mµf¹išÿb§":,´m»Yq·¶s¶(¶+¶v¹|§ N,´m-¶-¶v,¶‚§:,¶‚¿,¶‚±)ÍÐt    öù€     
r    "),7<?Kc {!“"«#ÃÍ&Ò'ï)ö*ú,. -./.0 R…†‡ˆ    ‰Š"ԋŒ)͍Ž7Œ!Ґ‘ú ’“3    þ,”6üúƒLtÿ    –€S˜    š›ý ï»Yœ·¶"ž¶(¶+N»Y ·-¶(¢¶(-¶(¤¶(¶+:»Y¦·-¶(¨¶(ª¶(¬¶(®¶(°¶(²¶(´¶(¶¶(¸¶(º¶(¼¶(¾¶(À¶(¶(Ķ(ƶ(ȶ(ʶ(̶(ζ(ж(Ò¶(Ô¶(Ö¶(ض(Ú¶(ܶ(Þ¶(à¶(¶+:»Yâ·-¶(¨¶(ä¶(æ¶(è¶(¶+:66§Ož»Y¸ê·î¶(¶+:»Y¸ê·ð¶(¶"î¶(`¶"ò¶(¶+:„„¡ÿ±»Y*·:¶ô»Y÷·-¶(¶+¶/:        ¹i™$    ¹ù6
 
ŸP¶ô¶ô§?¶ô§5:    ´m»Yü·    ¶¶(¶+    ¶v¶‚§: ¶‚ ¿¶‚±d´·€d×ß
ú>9:6;H<M=R>W?\@aAfBkCpDuEzGH„I‰JŽK“L˜MN¢O§P¬Q±R¶S»TÀUÅVÊWÏXÔ;ÙZë[ð\õ]úZÿ^_` a#cNdQ_Zgdikj‚kŒl–mœn£oªq­r´t¹u×wßváwæxéwîy „ ïþ!ïÿ!ÙŒ6¹ŒÙŒÿðŒí!U!d‹‰Š‚2Ž    –!
¹’    “bÿ    –””””0ÿX
–””””6ÿ        –””””€g˜            g”»Y*·MN»Y
·+´ ¶"¶+:,¶/N§*+-¹µ+-¹µ+-¹µ-¹išÿÓ§3:,´m»Y·¶¶(¶+¶v,¶‚§:,¶‚¿,¶‚+°([^€(~…
N~     €‚€!ƒ(…+†8‡EˆR…[Š`Œ~Ž…‡Ž‹ŽŽ’ >”…†”‡ˆ    ‹‰Š ‰Ž!s‹Œ`’“þ+6”&K€f˜    !«˜»Y*·M»"Y·$N»"Y·$:-+¶%¶)+¶-¶)»Y0·»"Y·$2¸4¶(:¶(<¶(+´>¶"î¶(A¶(+¶C¶Gî¶(J¶(+¶L¶Gî¶(O¶(+¶Q¶Gî¶(T¶(+¶V¶Gî¶(Y¶(+¶[¶"î¶(_¶(+¶a¶"î¶(d¶(-2¸4¶(:¶(f¶(2¸4¶(:¶(h¶(+¶j¶"î¶(m¶(+¶o¶Gî¶(r¶(+¶t¶Gî¶(w¶(+¶y¶Gî¶(|¶(+¶~¶"¶(+´¶"¶+:,¶ô§0N,´m»Yƒ·-¶¶(¶+-¶v,¶‚§:,¶‚¿,¶‚±    cf€    ƒŠ
‚ •    ˜™š"›+ž5 K¡]¢o£¤“¥¥¦·§É¨ß©öª«¬,­>®K¯Xž]²c³gµƒ·жŒ·¸“·—¹ H˜…†˜‡ˆ    ‰ŠR…†I‡†]‹Œg’“ÿf–€c˜    ˆ“ ;»Y*·M»Y‰·»"Y·$2¸4¶(‹¶(¶+N 8¨:6§v+´;¶EÀI´Q8+´¶EÀI´Q•™M+´¶EÀIµQ»Y¸ê·¶(`¶"’¶(”½Y¸–S¸›¶(¶+:„+´>¡ÿ‡¶Ÿ¶¢¤»Y¥·¶(§¶(¶+:¨:6§v+´;¶EÀI´W8+´¶EÀI´W•™M+´¶EÀIµW»Y¸ê·¶(`¶"’¶(”½Y¸–S¸›¶(¶+:„+´>¡ÿ‡¶Ÿ¶¢¤»Y©·¶(«¶(¶+:¨:6§v+´;¶EÀI´\8+´¶EÀI´\•™M+´¶EÀIµ\»Y¸ê·¶(`¶"’¶(”½Y¸–S¸›¶(¶+:„+´>¡ÿ‡¶Ÿ¶¢¤»Y­·¶(¯¶(¶+:¨:6    §v+´;    ¶EÀI´a8+´    ¶EÀI´a•™M+´    ¶EÀIµa»Y¸ê·¶(    `¶"’¶(”½Y¸–S¸›¶(¶+:„        +´>¡ÿ‡¶Ÿ¶¢¤»Y±·¶(³¶(¶+:¨:    6
§a+´;
¶EÀI´µ8+´
¶EÀIµµ»Y    ¸ê·¶(
`¶"’¶(”½Y¸–S¸›¶(¶+:    „
 
+´>¡ÿœ    ¶Ÿ¶¢¤»Y¸·    ¶(º¶(¶+:    »Y¸ê·¶(¶(¶(    ¶(¶+:
 
¶Ÿ¶¢¤$»Y
¸ê·¶(+´¶"¶+:
§»Y·+´¶"¶+:
+´¼»"Y·$¶À»Y-¸ê·
¶(¶+N,-¶ô§0N,´m»YÆ·-¶¶(¶+-¶v,¶‚§: ,¶‚ ¿,¶‚±        €    &-
A    ÅÇ)Å-É0Ê4Ë:ÌKÍ`ÎqϪ˶ÒÂÓÜÖà׿Ø÷Ù ÚÛV×bÞn߈âŒã’ä£å¸æÉçãêë4î8ï>ðOñdòuó®ïºöÆ÷àùäúêûûý þEúQ]wœ¨ÆÉßí
&-/3 6:! ¬;…†;‡ˆ    2‰Š-ًŒ0ÖÈT4ÒɌ7Ê!à&ˌãÊ!ŒžÊ!8Î͌;Ê!    ä"Ό    çjÊ!
œjό
 
’“xÿ:–””ûoú.ý    ”ûoú.ý    ”ûoú.ý    ”ûoú.ý    ”û]ú.üQ”ÿ)–€c˜    Ð ƒ»Y¦·*¶(¨¶(ª¶(¬¶(Ѷ(Ó¶(Õ¶(×¶(Ù¶(Û¶(ݶ(ß¶(À¶(¶(á¶(ã¶(°¶(²¶(´¶(å¶(ç¶(¶+L+°
Z*+,-".(/.041:2@3F4L5Q6V7\8b9g:l;q<w=}*> ƒŒ‹Œ    éêÿÖ*´><*´¼¶ëM»Yï·*´¶"¨¶(ñ¶(ó¶(õ¶(÷¶(ù¶(û¶(ý¶(ÿ¶(¶(¶(¶(¶(    ¶( ¶( ¶(¶(è¶(¶+N:6§(ž»Y¸ê·¶(¶+:»Y¸ê·ð¶(*´¶"¶(,´¶"¶(,´¶"¶(¶¶(¶¶(,´`¶"¶(‹¶(,´"2¸4¶(%¶(‹¶(,´'2¸4¶(%¶(*¶j¶"¶(,´*¶G¶(,´-¶G¶(,´0¶G¶(,´3¶G¶(`¶"¶(*¶6¶G¶(*´;¶EÀI´W¶Gò¶(¶+:„¡þØ»Y-¸ê·¶(¶+°
²,IJ K#L)M/N5O;PAQGRMSSTYU_VeWkXqYwZ}[ƒ\ˆKŒ^‘_—eœf³hÑiÞjëkõlÿmn'o@pMqZrgsttuŽvw´h¹_Â{ >Ö:ˆÑ;! É<¿ŒJ‹Œ‘E=Œ”.Ê!“ÿ—Á””û    >?@A¤Ž»@Y·BL*´>=*´¼¶ëN*´C:*¶F*´Jš»YN·*´¶"P¶(ó¶(õ¶(÷¶(ù¶(û¶(ý¶(ÿ¶(¶(¶(¶(    ¶( ¶(R¶(è¶(¶+:6§
ž»Y¸ê·¶(¶+:»Y¸ê·ð¶(*´¶"¶(-´¶"¶(-´¶"¶(¶¶(¶¶(-´`¶"¶(‹¶(-´"2¸4¶(%¶(‹¶(-´'2¸4¶(%¶(-´T¶"¶(-´-¶G¶(-´0¶G¶(-´3¶G¶(`¶"¶(¶EÀI´Q¶Gò¶(¶+:„¡þö+¶WW§Û»Y[·*´¶"]¶(_¶(¶¶(a¶(¶¶(c¶(-´`¶"¶(e¶(-´'2¸4¶(%¶(g¶(-´T¶"¶(i¶(-´-¶G¶(k¶(-´m¶G¶(p¶(-´3¶G¨¶(¢¶(r¶(*´¶"t¶(v¶(-´¶"¶+:+¶WW:»Y[·*´¶"]¶(x¶(¶+:6§ž*¶zš-´¤§cž»Y¸ê·î¶(¶+:»Y¸ê·`¶"¶+:»Y¸ê·¶(`¶"’¶(*¶6¶G¶+:„¡ÿ»Y¸ê·~¶(¶(ò¶(€¶(*´¶"t¶(v¶(-´¶"¶+:+¶WW+°
BP…† ‡ˆŠ!‹(9Ž?EK‘Q’W“]”c•i–o˜u™{š›‡œ’—ž ¢¡¹£×¤ä¥ñ¦û§¨©-ªF«S­`®m¯z°‡±œ£¡žª³±´´·Å¸Ë¹Ûºë»¼½,¿?ÀRÁdÂiÃvÄ|ʼn·ŽÆ•Țɫʱ˷ɼÌÂÎØÏÛÑàÓöÕ×;ÌDÙ`ÚmÛsÜ€Ù…ÞŒá f
Ž:ˆ†‚> ;!y<¿sƒ>—‹ŒšÊ!Žþ‹Œšò„Œ¿…Ê!…†‚†sƒ‡“4
ÿ@Á@”ûêùþ ””ûDøM    ˆ‰Ì¬¨M*´¼¶ëN-µŠ*´š»Y·*´¶"¶(-´¶"¶(-´¶"¶(*´’¶"¶(¶¶(¶¶(-´`¶"¶(‹¶(-´"2¸4¶(%¶(-´•¶"¶(‹¶(-´'2¸4¶(%¶(-´T¶"¶(-´ж"¶(-´-¶G¶(-´0¶G¶(-´3¶G¶(*´˜¶"¶(*´›¶G¶(*´ž¶"¶(*´¡¶G¤¶(¶+M§z»Y¦·-´¶"¶(¨¶(*´’¶"¶(ª¶(¶¶(a¶(¶¶(c¶(-´`¶"¶(¬¶(-´"2¸4¶(%¶(®¶(-´•¶"¶(e¶(-´'2¸4¶(%¶(g¶(-´T¶"¶(°¶(-´ж"¶(i¶(-´-¶G¶(k¶(-´m¶G¶(p¶(-´3¶G¶(²¶(*´˜¶"¶(´¶(*´›¶G¶(¶¶(*´ž¶"¶(¸¶(*´¡¶G¨¶(¢¶(r¶(*´¶"t¶(v¶(-´¶"¶+M,°
Ê2ìí îðò!.;    H
U _ i x‘ž·ÄÑÞëø,ò03=J ]!m"}#’$«%¾&×'ê(ý)*#+6,I-\.o/0†1“2™3¦ª6 *¬:ˆ¬º!©‹Œ ¡<¿“ý3”Áûv    ˆ»Ô¨N+´¼¶ë:µŠ+´š:»Y·+´¶"¶(´¶"¶(´¶"¶(+´’¶"¶(¶¶(¶¶(´`¶"¶(‹¶(´"2¸4¶(%¶(´•¶"¶(‹¶(´'2¸4¶(%¶(´T¶"¶(´ж"¶(´-¶G¶(´0¶G¶(´3¶G¶(+´˜¶"¶(+´›¶G¶(+´ž¶"¶(+´¡¶G¤¶(¶+N*+´"¸¼*+¸§…»Y¦·´¶"¶(¨¶(+´’¶"¶(ª¶(¶¶(a¶(¶¶(c¶(´`¶"¶(¬¶(´"2¸4¶(%¶(®¶(´•¶"¶(e¶(´'2¸4¶(%¶(g¶(´T¶"¶(°¶(´ж"¶(i¶(´-¶G¶(k¶(´m¶G¶(p¶(´3¶G¶(²¶(+´˜¶"¶(´¶(+´›¶G¶(¶¶(+´ž¶"¶(¸¶(+´¡¶G¨¶(¢¶(r¶(+´¶"t¶(v¶(´¶"¶+N-°
Ò4AB CEG#\0]>^L_Y`camb}c—d¥e¿fÍgÛhéi÷jklm,n9G=sHyMzP}Zh€{‹‚›ƒ±„˅߆ù‡ ˆ!‰5ŠI‹]ŒpƒŽ–¨­‘º’À“Î}Ò– 4ÔņÔ:ˆÔº!ыŒ È<¿“ýP”Áû
Ä ¿
Ï»YÆ·+´¶"ȶ(+´¶"ʶ(+´¼´¶"¶+MN:»Y*·:+´¼´Ì:Æ€,¶/N-Æ-¹i™û»Yз+´¶"Ò¶(´Ô¶"Ù¶(´Û¶"Þ¶(´à2¸4¶(‹¶(ã¶(´å¶"è¶(´ê¶Gí¶(´ï¶Gò¶(´ô¶"÷¶(´ù¶Gü¶(´þ¶G¶(´¶"¶(´¶" ¶(´ ¶"¶(´¶G¶(´¶G¶(´¶G¶(´!¶G$¶(´&¶G)¶(´+¶".¶(´02¸4¶(‹¶(3¶(´5¶"8¶(´:¶"=¶(´?¶"@¶(´B¶GE¶(´G¶GJ¶(´L¶GO¶(´Q¶"T¶(´V¶"Y¶(´[¶"^¶(´`¶Gc¶(´e¶Gh¶(´j¶"m¶(´o¶Gr¶(´t¶"w¶(´y¶"|¶(´~¶"¶(´ƒ¶G†¶(´ˆ¶G‹¶(´¶G¶(´’¶"•¶(´—¶"š¶(´œ¶"Ÿ¶(´¡¶G¤¶(´¦¶G©¶(´«¶G®¶(´°¶G³¶(´µ¶G¸¶(´º¶G½¶(´¿¶G¶(´Ķ"Ƕ(´ɶ"̶(´ζ"Ѷ(´Ó¶"Ö¶(´ضGÛ¶(´ݶGà¶(´â¶Gå¶(´ç¶"ê¶(´ì¶"ï¶(´ñ¶"ô¶(´ö¶Gù¶(´û¶Gþ¶(´¶G¶(´¶G¶(´
¶G ¶(´¶G¶(´¶"¶(´¶"¶(´¶"ȶ(+´¶"ʶ(+´¼´¶"¶+:§»Y!·+´¶"#¶(%¶(‹¶(´à2¸4¶(:¶(+´¶"î¶(+´¼´¶"î¶(´Ô¶"î¶(´Û¶"î¶(´å¶"î¶(´ê¶Gî¶(´ï¶Gî¶(´ô¶"î¶(´ù¶Gî¶(´þ¶Gî¶(´¶"î¶(´¶"î¶(´ ¶"î¶(´¶Gî¶(´¶Gî¶(´¶Gî¶(´!¶Gî¶(´&¶Gî¶(´+¶"î¶(‹¶(´02¸4¶(:¶(´5¶"î¶(´:¶"î¶(´?¶"î¶(´B¶Gî¶(´G¶Gî¶(´L¶Gî¶(´Q¶"î¶(´V¶"î¶(´[¶"î¶(´`¶Gî¶(´e¶Gî¶(´j¶"î¶(´o¶Gî¶(´t¶"î¶(´y¶"î¶(´~¶"î¶(´ƒ¶Gî¶(´ˆ¶Gî¶(´¶Gî¶(´’¶"î¶(´—¶"î¶(´œ¶"î¶(´¡¶Gî¶(´¦¶Gî¶(´«¶Gî¶(´°¶Gî¶(´µ¶Gî¶(´º¶Gî¶(´¿¶Gî¶(´Ķ"î¶(´ɶ"î¶(´ζ"î¶(´Ó¶"î¶(´ضGî¶(´ݶGî¶(´â¶Gî¶(´ç¶"î¶(´ì¶"î¶(´ñ¶"î¶(´ö¶Gî¶(´û¶Gî¶(´¶Gî¶(´¶Gî¶(´
¶Gî¶(´¶Gî¶(´¶"î¶(´¶"î¶(´¶"'¶(¶+:¶ô§x:¶)-Æ--¹|§$:    ´m»Y,·    ¶¶(¶+    ¶v¶‚§n:-Æ--¹|§$:    ´m»Y,·    ¶¶(¶+    ¶v¶‚¿-Æ--¹|§$:    ´m»Y,·    ¶¶(¶+    ¶v¶‚±Q#&t17:€Q-cior€Ÿ¥¨€
Ʊ 
¡¢. 2£4¤9¥C¦L§Q©Xªe¬v­„®’¯¬°º±È²Ö³ä´òµ¶·¸*¹8ºF»T¼b½p¾~¿˜À¦Á´ÂÂÃÐÄÞÅìÆúÇÈÉ$Ê2Ë@ÌNÍ\ÎjÏxІєҢӰԾÕÌÖÚ×èØöÙÚÛ Ü.Ý<ÞJßXàfátâ‚ãäžå¬æºçÈèÖéäêòëìíî*ï8ðU¬Zñ]ónôtõzö”÷ ø¯ù¼úÉûÖüãýðþýÿ
$1>KXer    Œ
¦ ³ À ÍÚçô(5BO\ivƒª· Ä!Ñ"Þ#ë$ø%&'(,)9*F+S,`-m.z/‡0”1¡2®3»4È5Õ6â7ï8ü9    :;ó>#?(@-B1D7E<F[IcAeBiDoEtF“I˜J›BŸD¥EªFÉIÎN p ÏņÏ:ˆ2.Œ4›Ž9–‹ŒCŒ‰ŠLƒ/Ï(‘<’    t’    ª’    “t ÿ]–”6”Õû¾ItS€ G˜ÿ    –”6”Õ˜€ ÿ–”6”ÕL€     0?@A*»@Y·BL*´¼¶ëM»Y1·*´¶"3¶(,´¶"¶+N+-¶WW»Y5·*´¶"3¶(,´¶"¶+N+-¶WW»Y7·*´¶"t¶(v¶(,´¶"¶+N+-¶WW+°
FWY[!\.[2]8_I`V_Za`cjeqfwg„cˆhŽj *:ˆˆ9>€<¿2^‹Œ… ˆ9†    :²¡»Y*·M»Y;·+´¶"¶+N,-¶/:¹i™p+´¼=¹?µC+´¼´CŸ+´¼´C I+´¼+´¼´Cµ+´¼F¹?µ•+´¼H¹5µ+´¼J¹Mµ*+´¼L¹Mµ-+´¼N¹MµP+´¼S¹Mµ0+´¼+´¼´0µU+´¼X¹?µZ+´¼´"]¹_¶c¶)+´¼´'h¹_¶c¶)+´¼j¹5µT+´¼l¹Mµ3+´¼n¹Mµp+´¼s¹Mµu+´¼x¹5µz§0N,´m»Y}·-¶¶(¶+-¶v,¶‚§:,¶‚¿,¶‚±    lo€    Œ“
~p    su%v/w@xKyVzd|u}†—€¨¹ƒÊ„؆釈‰(Š9‹JŒ[lp’Œ”““•”™•œ” – >¡…†¡‡ˆ    ˜‰ŠN‹Œ%GŽp’“'þV”6ÿ–€c˜    €Dr=»Y*·N»Y‚·¶"¶+:-¶/:¹i™?¹ù=§3:-´m»Y„·¶¶(¶+¶v-¶‚§:-¶‚¿-¶‚¬ 9<€ \c
B›œ Ÿ Ÿ¢&£0¤9¦>¨\ªc©eªi«lªp­ Hr…†rþ!p†! g‰Š‹Œ&Ž>’“ÿ<–€f˜    ‡ˆØÉ»Y*·N6»Y‰·¶‹¶+:-¶/:¹iš6™=»YŽ·¶‹ò¶(¶+:-´m»Y·¶(¶+¶’-¶ô§T-´m»Y•·¶‹—¶(¶+¶’§3:-´m»Y™·¶¶(¶+¶v-¶‚§:-¶‚¿-¶‚±    ‘”€    ´»
j²    ´ ¶·¶¸'¹1º4¼9½C¾L½Q¿jÀpÁsÎ‘ŖÆ´È»ǽÈÁÉÄÈÈÊ HɅ†É›œ    À‰Š …Mr‹Œ'jŽ–’“/ÿ4–”6>ÿ –€f˜    ž›X C»Y*·N6»YŸ·¶"¶+:-¶/:¹iš6™=»Y¡·¶"ò¶(¶+:-´m»Y£·¶(¶+¶’-¶ô§!-´m»Y¥·¶"—¶(¶+¶’6»Y§·¶"¶+:-¶/:6¹i™¹ù6¡    Ÿ6šI»Y©·¶"&¶(¶+:-¶/:6§¹ùŸ    6§„¹išÿã™Ë»Y«·¶"¶+:-´m»Y£·¶(¶+¶’-¶ô6ô¤ô6žÕ­:6    §P»Y¸ê·ð¶(¶"î¶(    `¶"ò¶(¶+:    d¢»Y¸ê·î¶(¶+:„        ¡ÿ¯-´m»Y£·¶(¶+¶’-¶ô§T-´m»Y¯·¶"—¶(¶+¶’§3:-´m»Y±·¶¶(¶+¶v-¶‚§:
-¶‚
¿-¶‚±     €    .5
GÍ    Ï ÑÒÑÓ'Ô1Õ4×9ØCÙLØQÚjÛpÜs݁ގݑá”ãžä¢ã§å¯æ²ç¼èÆéÒêÕîÚïäðèñíïòòúóýôõ ö÷ùô ÿ%/38QWZbg    l
q w ¢«Á Ëäêíû .57;>B z C…†Cþ!C³!    :‰Š ÿM싌'䍎²Y´!ý#µ!Zÿ!tWÊ!    ’“Oÿ4–”6>ü@ü*ú    üFüûIù(ÿ –€f˜¶·