4@               E E E        " $        . . .               y           O  O  T     .  ! E" E# $ %  & ' O( )  * E+  , O- O. / O0 O12 u 34 5 O6 O7%Q 8 9:; <= <> ?@ ? AB EC <D <E FG HI OJ OK OL OMN O uP Q  R ST UV@È .W X Y Z[  \]  ^_ `a b cd ef  \g h i j k l m n Oo  p q r s tu v w x yz { | } y~                        `      E I   $          h   h   h (                  h  h     - / - / - / - / -   :    ? ?   / / / / /    L  R        Z \ \                ! " # $ % & ' u( ) * + , - . / 0 1 2 3 4 5 67 89 :; <= > L? @ A BC BD EF  GHI J K L MN OP Q R GS  T UV W XYZ[ \ X]^ o_ ` a bcd .efgh i j Eklm ( nop ( q rs  tu vw x Ly z ]{ |  } ~}     E   o X   ~ ~          `         ?  LOGLorg/slf4j/Logger; smsService$Lcn/wildfirechat/app/sms/SmsService;RuntimeVisibleAnnotations8Lorg/springframework/beans/factory/annotation/Autowired; mIMConfigLcn/wildfirechat/app/IMConfig;announcementRepository0Lcn/wildfirechat/app/jpa/AnnouncementRepository;favoriteRepository,Lcn/wildfirechat/app/jpa/FavoriteRepository;userPasswordRepository0Lcn/wildfirechat/app/jpa/UserPasswordRepository; superCodeLjava/lang/String;4Lorg/springframework/beans/factory/annotation/Value;value${sms.super_code} userLogPath${logs.user_logs_path}adminUrl${im.admin_url}defaultUserPwdZ${wfc.default_user_password}userNameGenerator.Lcn/wildfirechat/app/tools/ShortUUIDGenerator;authDataSource*Lcn/wildfirechat/app/shiro/AuthDataSource; rateLimiter'Lcn/wildfirechat/app/tools/RateLimiter;compatPcQuickLogin${wfc.compat_pc_quick_login}ossTypeI${media.server.media_type}ossUrl${media.server_url} ossAccessKey${media.access_key} ossSecretKey${media.secret_key}ossGeneralBucket${media.bucket_general_name}ossGeneralBucketDomain${media.bucket_general_domain}ossImageBucket${media.bucket_image_name}ossImageBucketDomain${media.bucket_image_domain}ossVoiceBucket${media.bucket_voice_name}ossVoiceBucketDomain${media.bucket_voice_domain}ossVideoBucket${media.bucket_video_name}ossVideoBucketDomain${media.bucket_video_domain} ossFileBucket${media.bucket_file_name}ossFileBucketDomain${media.bucket_file_domain}ossStickerBucket${media.bucket_sticker_name}ossStickerBucketDomain${media.bucket_sticker_domain}ossMomentsBucket${media.bucket_moments_name}ossMomentsBucketDomain${media.bucket_moments_domain}ossFavoriteBucket${media.bucket_favorite_name}ossFavoriteBucketDomain${media.bucket_favorite_domain} ossTempPath${local.media.temp_storage}supportPCQuickLoginUsers(Ljava/util/concurrent/ConcurrentHashMap; SignatureOLjava/util/concurrent/ConcurrentHashMap;()VCodeLineNumberTableLocalVariableTablethis!Lcn/wildfirechat/app/ServiceImpl;init StackMapTable Ljavax/annotation/PostConstruct;getIp()Ljava/lang/String;indexrequestAttributesBLorg/springframework/web/context/request/ServletRequestAttributes;request'Ljavax/servlet/http/HttpServletRequest;ip getUserStatus(Ljava/lang/String;)IoutputUserStatusIMResult$Lcn/wildfirechat/sdk/model/IMResult;inputOutputUserInfoIMResulteLjava/lang/Exception;mobileLocalVariableTypeTableNLcn/wildfirechat/sdk/model/IMResult;QLcn/wildfirechat/sdk/model/IMResult;MethodParametersgetUserStatusByUserIduserId sendLoginCode4(Ljava/lang/String;)Lcn/wildfirechat/app/RestResult; userStatuscoderestCodeRestCode InnerClasses)Lcn/wildfirechat/app/RestResult$RestCode;remoteIp sendResetCodeoutputUserInfoIMResultoptionalLjava/util/Optional;up&Lcn/wildfirechat/app/jpa/UserPassword;subject"Lorg/apache/shiro/subject/Subject;;loginWithMobileCode(Ljavax/servlet/http/HttpServletResponse;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Lcn/wildfirechat/app/RestResult;uae0Lorg/apache/shiro/authc/UnknownAccountException;ice6Lorg/apache/shiro/authc/IncorrectCredentialsException;lae/Lorg/apache/shiro/authc/LockedAccountException;eae3Lorg/apache/shiro/authc/ExcessiveAttemptsException;ae0Lorg/apache/shiro/authc/AuthenticationException;timeoutJ httpResponse(Ljavax/servlet/http/HttpServletResponse;clientIdplatformtoken*Lcn/wildfirechat/app/shiro/PhoneCodeToken;getUserDefaultPassword&(Ljava/lang/String;)Ljava/lang/String;loginWithPassword userResult defaultPwd.Lorg/apache/shiro/authc/UsernamePasswordToken;responsepasswordisUseDefaultPwd 2changePasswordF(Ljava/lang/String;Ljava/lang/String;)Lcn/wildfirechat/app/RestResult;oldPwdnewPwd resetPasswordX(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcn/wildfirechat/app/RestResult; resetCode`(Lcn/wildfirechat/app/jpa/UserPassword;Ljava/lang/String;)Lcn/wildfirechat/app/jpa/UserPassword;digestLjava/security/MessageDigest;salthashed[B hashedPwd ExceptionsverifyPassword;(Lcn/wildfirechat/app/jpa/UserPassword;Ljava/lang/String;)ZonLoginSuccessp(Ljavax/servlet/http/HttpServletResponse;Ljava/lang/String;Ljava/lang/String;IZ)Lcn/wildfirechat/app/RestResult; displayNameuserNametryCount userIdResultuser+Lcn/wildfirechat/pojos/InputOutputUserInfo;booleanValueIMResult isNewUser tokenResult(Lcn/wildfirechat/app/pojo/LoginResponse; sessionIdLjava/lang/Object; withResetCodeNLcn/wildfirechat/sdk/model/IMResult;PLcn/wildfirechat/sdk/model/IMResult;RLcn/wildfirechat/sdk/model/IMResult;fsendDestroyCode"()Lcn/wildfirechat/app/RestResult; getUserResultdestroy\(Ljavax/servlet/http/HttpServletResponse;Ljava/lang/String;)Lcn/wildfirechat/app/RestResult;isUsernameAvailable(Ljava/lang/String;)Z existUserusernamesendPcLoginRequestMessage:(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)VresultSendMessagefromUsertoUser conversation$Lcn/wildfirechat/pojos/Conversation;payload&Lcn/wildfirechat/pojos/MessagePayload;dataLorg/json/simple/JSONObject;OLcn/wildfirechat/sdk/model/IMResult;sendTextMessage9(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)VtextsendImageMessageK(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Vurlbase64Thumbnail sendMessage_(Ljava/lang/String;Lcn/wildfirechat/pojos/Conversation;Lcn/wildfirechat/pojos/MessagePayload;)VcreatePcSessionQ(Lcn/wildfirechat/app/pojo/CreateSessionRequest;)Lcn/wildfirechat/app/RestResult;/Lcn/wildfirechat/app/pojo/CreateSessionRequest;session#Lcn/wildfirechat/app/jpa/PCSession;output(Lcn/wildfirechat/app/pojo/SessionOutput;loginWithSessionresulttt4Lcn/wildfirechat/app/shiro/TokenAuthenticationToken;scanPc confirmPcR(Lcn/wildfirechat/app/pojo/ConfirmSessionRequest;)Lcn/wildfirechat/app/RestResult;0Lcn/wildfirechat/app/pojo/ConfirmSessionRequest;cancelPcQ(Lcn/wildfirechat/app/pojo/CancelSessionRequest;)Lcn/wildfirechat/app/RestResult;/Lcn/wildfirechat/app/pojo/CancelSessionRequest; changeName createUsernewNamecomplaingetGroupAnnouncementpojo0Lcn/wildfirechat/app/pojo/GroupAnnouncementPojo;groupId announcement;putGroupAnnouncementR(Lcn/wildfirechat/app/pojo/GroupAnnouncementPojo;)Lcn/wildfirechat/app/RestResult;member'Lcn/wildfirechat/pojos/PojoGroupMember;imResult isGroupMember&Lcn/wildfirechat/app/jpa/Announcement;SLcn/wildfirechat/sdk/model/IMResult; saveUserLogse(Ljava/lang/String;Lorg/springframework/web/multipart/MultipartFile;)Lcn/wildfirechat/app/RestResult;Ljava/io/IOException;file1Lorg/springframework/web/multipart/MultipartFile; localFileLjava/io/File; addDeviceK(Lcn/wildfirechat/pojos/InputCreateDevice;)Lcn/wildfirechat/app/RestResult;outputDeviceIMResult createDevice)Lcn/wildfirechat/pojos/InputCreateDevice;JLcn/wildfirechat/sdk/model/IMResult;PLcn/wildfirechat/sdk/model/IMResult; getDeviceListNLcn/wildfirechat/sdk/model/IMResult; delDeviceO(Lcn/wildfirechat/app/pojo/SendMessageRequest;)Lcn/wildfirechat/app/RestResult;-Lcn/wildfirechat/app/pojo/SendMessageRequest; uploadMediaT(ILorg/springframework/web/multipart/MultipartFile;)Lcn/wildfirechat/app/RestResult;bucket bucketDomainLcom/qiniu/http/Response;putRet'Lcom/qiniu/storage/model/DefaultPutRet;rex!Lcom/qiniu/common/QiniuException;cfg!Lcom/qiniu/storage/Configuration; uploadManager!Lcom/qiniu/storage/UploadManager; localFilePathkeyauthLcom/qiniu/util/Auth;upTokenLjava/lang/RuntimeException; ossClientLcom/aliyun/oss/OSS;putObjectRequest'Lcom/aliyun/oss/model/PutObjectRequest; minioClientLio/minio/MinioClient; Lio/minio/errors/MinioException;uLjava/net/URL; Ljava/net/MalformedURLException;-Lcom/qcloud/cos/exception/CosClientException;cred$Lcom/qcloud/cos/auth/COSCredentials; clientConfigLcom/qcloud/cos/ClientConfig;ss[Ljava/lang/String; cosClientLcom/qcloud/cos/COSClient; mediaTypeuuidfileName-Lcn/wildfirechat/app/pojo/UploadFileResponse;9=PVciesw{putFavoriteItemH(Lcn/wildfirechat/app/jpa/FavoriteItem;)Lcn/wildfirechat/app/RestResult;fromKeytoBuckettoKey bucketManager!Lcom/qiniu/storage/BucketManager; objectNamepathmediaURL&Lcn/wildfirechat/app/jpa/FavoriteItem;premoveFavoriteItems#(J)Lcn/wildfirechat/app/RestResult;idgetFavoriteItems$(JI)Lcn/wildfirechat/app/RestResult;countfavsLjava/util/List;/Lcn/wildfirechat/app/pojo/LoadFavoriteResponse;8Ljava/util/List;getGroupMembersForPortraituserInfoIMResultgroupMemberListIMResult groupMembersmids9Ljava/util/List;?Ljava/util/List;loginWithUserIdAndIdNumberidNumber#lambda$getGroupMembersForPortrait$1Q(Lcn/wildfirechat/pojos/PojoGroupMember;Lcn/wildfirechat/pojos/PojoGroupMember;)Io1o2lambda$sendResetCode$0:(Ljava/lang/String;)Lcn/wildfirechat/app/jpa/UserPassword; SourceFileServiceImpl.java(Lorg/springframework/stereotype/Service;1cn/wildfirechat/app/jpa/PCSession$PCSessionStatusPCSessionStatus VW&java/util/concurrent/ConcurrentHashMap RS      %cn/wildfirechat/app/tools/RateLimiter V #$  admin @org/springframework/web/context/request/ServletRequestAttributes  X-Real-IP unknown X-Forwarded-For   a    )cn/wildfirechat/pojos/InputOutputUserInfo a &cn/wildfirechat/pojos/OutputUserStatus java/lang/Exception W  `a request send sms from {} {}    }(java/lang/StringBuilderIP  请求短信超频 a   kl    !"          java/lang/Stringrequest send sms from {}     a    BootstrapMethods  $cn/wildfirechat/app/jpa/UserPassword    (cn/wildfirechat/app/shiro/PhoneCodeToken V .org/apache/shiro/authc/UnknownAccountException4org/apache/shiro/authc/IncorrectCredentialsException  -org/apache/shiro/authc/LockedAccountException1org/apache/shiro/authc/ExcessiveAttemptsException.org/apache/shiro/authc/AuthenticationException !" #Login success $   %  &  '"  V  ( )  * + , -. /,org/apache/shiro/authc/UsernamePasswordToken ,reset password error, user is correct {}, {}  0a 1 2 %org/apache/shiro/crypto/hash/Sha1HashSHA-1 34 5W6 789 :; <= >? @A BDE FG H I Ja KaUser not exist, try to create  L  M N用户O PQ R S T U&cn/wildfirechat/pojos/OutputCreateUser VCreate user failure {}W XY ZGet user failure {}  [\Get user token failure {} ]^&cn/wildfirechat/app/pojo/LoginResponse*cn/wildfirechat/pojos/OutputGetIMTokenData _a ` ab ca d ea f V g  h ij kl m n oap qr s t ua vr(cn/wildfirechat/pojos/OutputBooleanValue  w x y Llogin with session success, userId {}, clientId {}, platform {}, adminUrl {}java/lang/Object  z {| authToken }Exception happens {} ~ z{    W "cn/wildfirechat/pojos/Conversation 5cn/wildfirechat/proto/ProtoConstants$ConversationTypeConversationType .$cn/wildfirechat/pojos/MessagePayload-cn/wildfirechat/proto/ProtoConstants$PlatformPlatformWeb端登录请求 Mac 端登录请求Linux 端登录请求Windows 端登录请求PC 端登录请求 .0cn/wildfirechat/proto/ProtoConstants$PersistFlag PersistFlag .org/json/simple/JSONObjectp t <  send message successsend message error {} a    .[图片]  %  a    &client {} create pc session, key is {}2cn/wildfirechat/app/shiro/TokenAuthenticationToken   .  a a     Login successuser {} scan pc, session is {}   X !user {} confirm pc, session is {}  { &Complain from user {} where content {}cgc8c8VV  .cn/wildfirechat/app/pojo/GroupAnnouncementPojo$cn/wildfirechat/app/jpa/Announcement a  a  a     +cn/wildfirechat/pojos/OutputGroupMemberList   " %cn/wildfirechat/pojos/PojoGroupMember a 4cn/wildfirechat/proto/ProtoConstants$GroupMemberTypeGroupMemberType  @所有人 .     java/io/File _ a java/io/IOException a     &cn/wildfirechat/pojos/OutputDeviceList "cn/wildfirechat/pojos/OutputDevice a    (  ( . (        (  (   ,cn/wildfirechat/app/tools/ShortUUIDGenerator- P 0 2 4 6 8 > < @ B H J D F/ '(com/qiniu/storage/Configuration  Vcom/qiniu/storage/UploadManager V a , .   com/google/gson/Gson a%com/qiniu/storage/model/DefaultPutRet   P  com/qiniu/common/QiniuException E com/aliyun/oss/OSSClientBuilder * %com/aliyun/oss/model/PutObjectRequest V com/aliyun/oss/OSSExceptioncom/aliyun/oss/ClientException Wio/minio/MinioClientio/minio/PutObjectOptions  V io/minio/errors/MinioExceptionError occurred: &java/security/NoSuchAlgorithmException!java/security/InvalidKeyException'com/qcloud/cos/auth/BasicCOSCredentialscom/qcloud/cos/ClientConfig\.  acceleratecom/qcloud/cos/region/Region   ap-shanghai java/net/URL  a  java/net/MalformedURLException   com/qcloud/cos/COSClient V  +com/qcloud/cos/exception/CosClientException+cn/wildfirechat/app/pojo/UploadFileResponse  : N a L com/qiniu/storage/BucketManager V com/aliyun/oss/OSSClient    y  Xjava/lang/Long  !-cn/wildfirechat/app/pojo/LoadFavoriteResponse " # $(getGroupMembersForPortrait failure {},{} %ajava/util/ArrayList &'( )* +, -.+cn/wildfirechat/app/pojo/UserIdPortraitPojo  $getGroupMembersForPortrait exception xl66666 / )0cn/wildfirechat/app/ServiceImpl1 23cn/wildfirechat/app/Service%javax/servlet/http/HttpServletRequest'cn/wildfirechat/app/RestResult$RestCode org/apache/shiro/subject/Subject"cn/wildfirechat/sdk/model/IMResult&javax/servlet/http/HttpServletResponsejava/util/Optionaljava/security/MessageDigestorg/slf4j/Logger!cn/wildfirechat/app/jpa/PCSessionjava/util/Iterator/org/springframework/web/multipart/MultipartFile'cn/wildfirechat/pojos/InputCreateDevice+cn/wildfirechat/app/pojo/SendMessageRequestcom/qiniu/util/Authcom/qiniu/http/Responsecom/aliyun/oss/OSSjava/lang/RuntimeException"com/qcloud/cos/auth/COSCredentialsjava/lang/Throwable$cn/wildfirechat/app/jpa/FavoriteItemjava/util/Listcn/wildfirechat/app/IMConfig admin_url admin_secretcn/wildfirechat/sdk/AdminConfig initAdmin'(Ljava/lang/String;Ljava/lang/String;)V(II)V admin_user_id$org/springframework/util/StringUtilsisEmpty(Ljava/lang/Object;)ZLookup(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;?%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandles!$              s s s s   !"  #$% s&'( s)* s+, s-. s/0 s12 s34 s56 s78 s9: s;< s=> s?@ sAB sCD sEF sGH sIJ sKL sMN sOP sQRSTU-VWX>**YY HZ [\]WX{8** * Y<ȷ *  * Y!.7Z 8[\^7 _`aX_L+M,N---,N-$--,6 --,Y2  %'0@HNVXZ4Hb(_[\Xcd SefJg^'hij.klXD+M,4,*, !N---"#M,%9=$Y& !/:=>BZ4!mn5on>pqD[\Drs!mt5ou^:BvwrxlXD+&M,4,*, !N---"#M,%9=$Y& !/:=>BZ4!mn5on>pqD[\Dys!mt5ou^:Bvwyz{X*'M()+,** ,+&,-.Y/01,12134*+5> 678:*9+::; 7*<+=:; >*9+?7N-%*9+?@7?P$Qq$r$$YR?EJQXdlr   ZHEW|(XD}d8~ pq[\r^)?j j jjvwr{X 4AM,BCDEN*':(FG-+PH7-&:IL+ J7:%+ @7* +',-.Y/0112134*+56 678:*<+=:;@*K-L:-MNO:  P QR*K SW>7:%@7<im$&$ %&$Y#'.5<BM\!c"j*m%o&t'{(/0567;<=>?@ABC E&G(I-KZ B(nopq1! Y}K~(pq4[\4r0y{|(sB(u1^D <jj Bv/YjjjjvwrX A:TY,-U:V0:@7:Y7:Y7:Y7:Y7]8B^7(.Y/_1`3a*9,? Y7*+,bW%X.Z7[@\YVPRU`VW%X'Y.Z0[7\9]@^B_IaSbac}defiZ'09Ba$[\r}(^5jjjHHHH>wr}XZ+c++cdd+YmZ[\r^@jwrX6,:e Y7 @7*K L:*,f: g<*h.OY i: *  j:  k:6Y7*h -l6mO:  n Q oep r7 s  n`s Qt*K SW*,56   67A: uY -v:   V0:@7:Y7:Y7:Y7:Y7 ]H B^7(.Y/_1`3a s t*K SW Y7:%@7*+,b%(W%1X%:Z%C[%L\$,$-$$$0$19$:B$CK$LT$U$Y9rt uwy&z-|C}J~RYmw~%(*13:<CELNU_mZm *3<ENm4 nChJa  |(    pq[\r(s uCh^Vj)3%jjjjHHHHNjjjBv wrX3iAN-BCDE:*KL:g3*mO+w*mO,jW>:% J7@7+MQ$Y6 #+;INQSX[bZHSpqi[\iieSy#Fs #F^NjBv w X /A:BCDE:+u+: @7 :4 l!(x y@7:%@7*KL:gmO:,zlQ{e| ~7,zl*;,*l0*-jWP*KSW>:%@7Y7J76$7$$Yz%07?Oby!(Zp %[n pq pqx/[\/r//*ys%[u^) 7j0Bv A ^v w rXNN-:--,::++*K+SW+Y*      +5;ALZHN[\NNH<+#5$w XC+N:--,::+lY" !/9ZHC[\CC> 7/9 ^ !j$w X޸A:,:6 eIJ(a6 *,:   @7* ߻Y: *).Y/1k3:  ,,:   6 ( G@7.(@7: -:  ( @7BC Y:         a8: *K L:  g mO:OY : PQR*KSW   ***  **"* *W*** *** W: ***  **** **¸G *ø:  , ! Ŵƚ* W: *Ǹ**  *Ƿ*ȸ.*ɸ!**  **ɷʲ(Y SY-SYSY*SB: + ѹ >:%(@7m}$$@$A$$5$6$YRT#& *+,#2&4)536:7A9J<S=Z>d?@ABDEFGHJKOPQSWXY/Z6]I`Ra\blcsd}eghiklnpqrsvwx{*|<~I`m} +B\zZ 3 &( :n SW} G ".n n n Rr  pq[\r(s4: G . u ^& jj jjjH jjj- jj jj0j!((#_v##KBv#7IjjvwrXYAL+BCDEM,&N-(--I: *հN-%@7J7BF$Y2 (4<CFGKRZ>4r)nG pqY[\UDys )u^CjBv XoAN-BCDE:&:XMI:8*9,ֲ;(W*9?*K->:%@7J7vz$YF-:BRXalrwz|ZR:=rZn| pq[\}yys Zu^wjBv w }X+M,e۠M,%$YZ*npq[\s u^BvwX Y:,Y:^ 8 )   Y:WW+:(a"(۸:%($Yv %*49CISXbipv  Zf <npq[\( s <^o 4b jjjj jjjjBvwX4Y:,Y:-*+Y" $*3Z>4[\444 +w XIY:,Y:-*+Y.  $*1 7!?#H$ZHI[\IIII @+wXE^+,-:(a"(۸:%(DG$Y& ()*%,D1G.I/N0]2Z><nIpq^[\^^^s <^K%jjjjBvw X/+M+,AN-BCDEM*,*,M*9,+++N,** ,+-  - :( + *>Y6 79:;)>0??@ADVEZFnHtIJZ>[\eyV8t^)j,we {X=AMY+N*9+: ~7 7`*9Y:&:# :% 7 7,-V0:@7:Y7:Y7:Y7:Y7,](a Y7*9+:,~7,BC:"(,@7Y:(YSYSYSY*S>:%,@7T$WXZ[\=w$x$Y9OR SUV$W,X3Y<ZB[K\T^^_f`vaecdfghijq|rstuvwxyz{}~$+=QYkqxZ^( npqTEQnPpq[\   s^( uQ^V$ RBvIHHHHLXj vw{X,AM,BCDEN(-+**9-+Y"Z*,[\,(ywXYAM,BCDEN*#+*- !W *-"W(#-+$**9-+$%Y"#3<LZ*Y[\YeUDy^ 3jweX@ *9+&'YZ [\ ewe{XѸAM,BCDEN+:۠!- l>(7e۠^-&:۠  @7+:۠>@7@7@7:%@7D$EK$L$$$$$YZ .@ELZ`{ZHnn pq[\ysu^1Ej.+jjvw{X0AM,BCDEN()-+y*-*+>Y"+Z*0[\0,yw{X^*++,M,gH-Y.N-,m/01-,m/23-,m/45-,m/67->87Y&  (6DRWZ*=^[\^ Ss  S^Ww X+5cAM,BCDEN6+19:h`:;R:;<:=6>?:@-lAA 6Ƨ :% C7Y:+1Y:.Y/D1+513E+3:(a)(۸@7 :%(@7/YFM,+1G,+3H,+5I+Q7,+7J*+,KW+>"$IM$Y* "+Lt   !"$$C%J+M'O(T)c*j.r/z012356Z t$!"+p#npqCnOpq\Ky"H$[\er7%s+p#&C^ ^'j(9Bv r'jj'jj Bv'we)*XFLY*M.Y/+1N1,O13PN,-Q:S@7>)03RY;)>0B3?5@:AADZ45 p+F[\FyF,-)./^3j012 w y,34X|AM,BCDEN+T=+TU:+V-WC7e @7+X: >M,%@7F{$GX{$Yw{$YBJKMN(O3P@QGSRTYX_YoZx^{\|]_ZH(15ntcy_ n|pq[\67s(158_ 9^GjBvw6:XEAL+BCDEM,YN---Z[>N-%@759$Y& degh(i6m9k:l>nZ4#n:pqE[\A0ys #;^6jBv<4X иAM,BCDEN+T+TU:t\]-WY+\^_\]-`W+\]a+X: >@7C7e @7J7H7M,%@7$$$$$$YVuvxy(z3{G|V}h~w}ZH}  n(5nypq[\67s}  9(58^3=j=vw6>XܸAM,BCDENY:+b+c+deY:+f+g+h+ij+kl+m+n+o+pE+qr+st-:۠ > :%@7$Yf'09BKT]foxZR#npq[\e?yBs #^ @jBvweABX W AN-BCDE:uYv:.Y/1w1Q`w11w1,O13:LY*xP:,Q:S@744CRap44*y:*z: Z*{:*|: K*}:*~: <*:*~: -*:*: *:*: *:*: .Y/ 1113: *Y: Y : : :**::  :Y:.:::@7*OY***: Y:   W:  @7 c*wY***:  Y, ': .Y/1 3@7:  %@7:  %@7**ԻY**: Y: *:  Z 2l Y 2: YY*: öħ:Ʋ@7 ǶȻY  :˶Wͧ$:ϲ@7::Y:    >jruRz!!AruArArRArAr$$;>apxapxYg$[jruw| :BNY`dqz    !!#( /#6$A(V,r6u-w./01234579:;<=>?A$C1D;H>E@FEGLLTMaPpUuVxQzRSUSUVYZ[Z1w p+ CD CD CD CD CD  CD -EFG"HE)IJNKL YMN `O d~PqqQRzhS# pT 1UV "WX VYZ w"p[  pq  pq 1 \]@ p^zp_`a bc de a8fg[\h(,-y$i[TjjE./CD :u  k ^u0jjj12 4 jj0jjj1jjjlmjjnjo!0jjj1jjjlmjjnjopo 0jjj1jjj; 0jjj1jjjqrs {tcvMv Tuvwhx +0jjj1jjjuvwyzV{ 0jjj1jjjw h,|}X PAM,BCDEN+ӸY+ӷ::ûY*z¶öl *y:ûY*|¶öl *{:ûY*Է¶öl *}:ûY*~¶öl *:ûY*¶öl *:`ûY*¶öl *:>ûY*¶öl *:ûY*շ¶öl:*Y:d:**: *: :  -ؚ.Y/-1w1 13: Y :    W+.Y/*ն1113ӧV*Y***:d:::  -ؚ.Y/-1w1 13: * W+.Y/*ն11 13*c`d:::-ؚ.Y/-1w113:Y***:  *+.Y/*ն1113ӧ<*1*)Y**:Y:*:  Z 2lY 2:YY*:  öħ:  Ʋ@7ǶȻY: d:: :  -ؚ.Y/-1w1 13:   * W+.Y/*ն11 13 ͧ$:  ϲ@7: :  :%+-+Q*+W>`wz     " -$-$ *-$Yr\`acf,h/iHjQkjlsmnopqrstuvw6|;}B~JV^kqu~ (:Zalz~*1>Q`mwz|   '*-/49@KZ$V~KL^v~kiQR qc u_ . mUVa] ~pl3YZ m \] | p^  p_ `a bc*de fg  } B,]/C/pqP[\PeL;y^Qjj!!!!!!b jjjljnjj=jjjPqjj;AjjJ Tuvwhx HyjjwzV{ jBvweXJ*>Y  Z[\wX>`A:BCDE: @*:Y:>Y"&5>EZZH`[\``([Hy5+>"s 5+^D"jB0jjw {X,+9M,&(,,y@7YN,:;<:=$>?:A -W- -- NY:-<:=`>?:@&:%Y@WY@W>M,%(,@71$2$Yb+2:ajsv    %Z\ a!"DnN!"n:upq,[\,s*Du&:u^> 2('(LjvwX] +&N-e J7- @7-:,l J7*+6 67A:TY U:V0:@7:Y7:Y7:Y7:Y7]0B^7(.Y/_1`3a Y7BC Y: ** **¸G *ø:  , ! Ŵƚ* W: B:  Ѷ>N-%@7mvyWmvXmvZmv[mv\J$$&$'B$CV$W$$$$$$$Y1 !"$ %''0(<)C-J.P/W2\5m8vCy9{:;<=>?@ABDEFGHKNO PQS+T=VJX[YyZ^\abcdefZ{[.n n0|Jb|(\Pm?  pq[\ys[. u^g!jjHHHH6XKBvjjvw y XD*A+A*A +A+A *A*+Y&  $&68ZD"D"^ w  X3 OY*iY?Z  ywyWX" (YI B@    B HFC :=;