zhubaomin
2025-04-07 eb50888b14af04d5f4677520b67754764f03a014
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
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
Êþº¾@  ,org/springframework/validation/BindingResult    hasErrors()Z      
 getFieldError-()Lorg/springframework/validation/FieldError;
 java/util/ObjectsrequireNonNull&(Ljava/lang/Object;)Ljava/lang/Object;)org/springframework/validation/FieldError
 getDefaultMessage()Ljava/lang/String;
 'com/dy/common/webUtil/BaseResponseUtils    buildFail8(Ljava/lang/String;)Lcom/dy/common/webUtil/BaseResponse;
  !,com/dy/pipIrrSell/wechatpay/dto/Code2SessiongetPhoneNumber
# $
getJs_code&java/util/HashMap
%( )*<init>()V,appid    ./0 ,1'com/dy/pipIrrSell/wechatpay/PaymentCtrlLjava/lang/String; 345 67 java/util/Mapput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;9secret    .; 91=js_code?
grant_type    .A B1    grantType    .D EFrestTemplateUtil)Lcom/dy/pipIrrSell/util/RestTemplateUtil;    .H I1loginUrl
KLM NO'com/dy/pipIrrSell/util/RestTemplateUtilgetT(Ljava/lang/String;Ljava/util/Map;Ljava/util/Map;)Lcom/alibaba/fastjson2/JSONObject;Qerrcode
STU VW com/alibaba/fastjson2/JSONObjectgetLong$(Ljava/lang/String;)Ljava/lang/Long;
YZ[ \]java/lang/Long    longValue()Jÿÿÿÿÿÿÿÿa登录凭证校验失败copenid
Se fg    getString&(Ljava/lang/String;)Ljava/lang/String;i session_key    .k lmclientSv#Lcom/dy/pipIrrSell/client/ClientSv;
opq rW!com/dy/pipIrrSell/client/ClientSvgetClientIdByPhonetv#com/dy/pipIrrGlobal/pojoSe/SeOpenId
u(
uy z{ setClientId(Ljava/lang/Long;)V
u} ~    setOpenId(Ljava/lang/String;)V
u ‚ setSessionKey„java/util/Date
ƒ(
u‡ ˆ‰ setCreateTime(Ljava/util/Date;)V
o‹ Œ    addOpenId7(Lcom/dy/pipIrrGlobal/pojoSe/SeOpenId;)Ljava/lang/Long;
‘ ’“java/lang/StringvalueOf&(Ljava/lang/Object;)Ljava/lang/String;
• –— buildSuccess8(Ljava/lang/Object;)Lcom/dy/common/webUtil/BaseResponse;    ™š› œ'com/dy/pipIrrSell/result/SellResultCodePHONE_NUMBER_IS_ERROR)Lcom/dy/pipIrrSell/result/SellResultCode;
™Ÿ  
getMessage
¢ £
buildError¥GET§/v3/certificates    .© ª«    payHelper"Lcom/dy/pipIrrSell/util/PayHelper;
­®¯ ° com/dy/pipIrrSell/util/PayHelpergenerateRandomString
²³´ µ]java/lang/SystemcurrentTimeMillisè
Y¹ ’º(J)Ljava/lang/Long;    .¼ ½¾resourceLoader,Lorg/springframework/core/io/ResourceLoader;
ÀÁÂ ÃÄ#com/dy/pipIrrGlobal/cert/WxCertUtilgetKey_pemBytes0(Lorg/springframework/core/io/ResourceLoader;)[B    .Æ Ç1schema
­É ÊËgetTokenn(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Long;[B)Ljava/lang/String;Í ÎÏmakeConcatWithConstants8(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;Ñ AuthorizationÓAcceptÕapplication/json    ×ØÙ Ú1#com/dy/pipIrrSell/wechatpay/PayInfo certificates
KÜ ÝO
getHeadersßheaders
Sá âã getJSONObject6(Ljava/lang/String;)Lcom/alibaba/fastjson2/JSONObject;åWechatpay-Nonce
Sç èé getJSONArray5(Ljava/lang/String;)Lcom/alibaba/fastjson2/JSONArray;
ëìí fîcom/alibaba/fastjson2/JSONArray(I)Ljava/lang/String;ðWechatpay-SerialòWechatpay-SignatureôWechatpay-Signature-TypeöWechatpay-Timestampøbodyú(com/alibaba/fastjson2/JSONWriter$Feature
Sü ýþ toJSONString?([Lcom/alibaba/fastjson2/JSONWriter$Feature;)Ljava/lang/String;
­  responseSignJ(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
­ responseSignVerifyM(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[B)Ljava/lang/Boolean;
 –    &()Lcom/dy/common/webUtil/BaseResponse;
   (com/dy/pipIrrSell/wechatpay/dto/DtoOrder getSessionId()Ljava/lang/Long;
  getVcId    .     paymentSv'Lcom/dy/pipIrrSell/wechatpay/PaymentSv;
 %com/dy/pipIrrSell/wechatpay/PaymentSv    selectOne7(Ljava/lang/Long;)Lcom/dy/pipIrrGlobal/pojoSe/SeOpenId;
u     getOpenId    .! "# virtualCardSv-Lcom/dy/pipIrrSell/virtualCard/VirtualCardSv;
%&' ()+com/dy/pipIrrSell/virtualCard/VirtualCardSvselectVirtuCardById<(Ljava/lang/Long;)Lcom/dy/pipIrrGlobal/pojoSe/SeVirtualCard;
+,- .(com/dy/pipIrrGlobal/pojoSe/SeVirtualCard getClientId
o0 12 getOneClient5(Ljava/lang/Long;)Lcom/dy/pipIrrGlobal/voSe/VoClient;
456 7!com/dy/pipIrrGlobal/voSe/VoClient getClientNum9java/text/SimpleDateFormat;yyyyMMddHHmmssSSS
8= )
8? @Aformat$(Ljava/util/Date;)Ljava/lang/String;ÍD0com/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard
C(
CG HsetOrderNumber
Cy
CK L{ setVirtualId
 N OPgetRechargeAmount()Ljava/lang/Double;
CR STsetRechargeAmount(Ljava/lang/Double;)V
%V WXinsertVCRechargeX(Lcom/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard;)Lcom/dy/common/webUtil/BaseResponse;
Z[\ ]"com/dy/common/webUtil/BaseResponsegetCode_0001
a bcequals(Ljava/lang/Object;)Z    ™e fRECHARGE_ADD_FAIL
S(
S4jmchid    .l j1n description    .p n1r out_trade_not
notify_url    .v w1    notifyUrlytotal
{|} ~java/lang/Double doubleValue()D@Y
ƒ„… ’†java/lang/Integer(I)Ljava/lang/Integer;ˆcurrencyŠCNYŒamountŽpayerPOST’/v3/pay/transactions/jsapi” Content-Type    ×– —1orderUrl
K™ š›postW(Ljava/lang/String;Ljava/lang/String;Ljava/util/Map;)Lcom/alibaba/fastjson2/JSONObject;    ×/
ž ’Ÿ(J)Ljava/lang/String;¡ Îg
­£ ¤¥buildMessage_signAgain\(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;§utf-8
© ª«getBytes(Ljava/lang/String;)[B
­­ ®¯sign([B[B)Ljava/lang/String;±    timeStamp³nonceStrµpackage·signType    .¹ ·1»paySign
½¾¿ NÀ$org/springframework/http/HttpHeaders$(Ljava/lang/Object;)Ljava/util/List; ÂÃÄ NÅjava/util/List(I)Ljava/lang/Object; ÇÈÉ ÊË'jakarta/servlet/http/HttpServletRequest    getReader()Ljava/io/BufferedReader;Íjava/lang/StringBuilder
Ì(
ÐÑÒ Ójava/io/BufferedReaderreadLine
ÌÕ Ö×append-(Ljava/lang/String;)Ljava/lang/StringBuilder;
ÌÙ ÚtoStringÜ+com/dy/pipIrrSell/wechatpay/dto/OrderNotify Þßà áâcom/alibaba/fastjson2/JSON parseObject7(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
Yä åæ    parseLong(Ljava/lang/String;)J< ìíî ïð(jakarta/servlet/http/HttpServletResponse    setStatus(I)VòcodeôFAILömessageø失败
úûü ýjava/lang/Boolean booleanValue    ­ÿ CERTIFICATE_MAPLjava/util/Map; 3 keySet()Ljava/util/Set;      
  java/util/Setiterator()Ljava/util/Iterator;   java/util/IteratorhasNext   next()Ljava/lang/Object;
Û  getEvent_typeTRANSACTION.SUCCESS
Û  getResource2()Lcom/dy/pipIrrSell/wechatpay/dto/NotifyResource;
 ! ".com/dy/pipIrrSell/wechatpay/dto/NotifyResourcegetAssociated_data
$ %getNonce
' ( getCiphertext    ×* +1key
-./ 01com/dy/pipIrrSell/util/AesUtildecryptToString,([B[B[BLjava/lang/String;)Ljava/lang/String;
S3 áã5transaction_id7 trade_state9 success_time
S; <=getDate$(Ljava/lang/String;)Ljava/util/Date;
%? @AgetVCRechargeByorderNumber=(Ljava/lang/String;)Lcom/dy/pipIrrGlobal/pojoSe/SeVcRecharge;
CDE FG'com/dy/pipIrrGlobal/pojoSe/SeVcRecharge getOrderState()Ljava/lang/Byte;
IJK LMjava/lang/Byte    byteValue()B
%O PQupdateVCRechargeH(Ljava/lang/String;Ljava/util/Date;)Lcom/dy/common/webUtil/BaseResponse;SREFUND.SUCCESSU out_refund_noW refund_statusYSUCCESS[)com/dy/pipIrrGlobal/pojoSe/SeVcRefundItem
Z(
Z^ _‰ setRefundTime    abc de7com/dy/pipIrrSell/virtualCard/enums/RefundItemStateENUMREFUNDED9Lcom/dy/pipIrrSell/virtualCard/enums/RefundItemStateENUM;
ag ]G
Zi jksetRefundStatus(Ljava/lang/Byte;)V
%m noupdateRefundItem@(Lcom/dy/pipIrrGlobal/pojoSe/SeVcRefundItem;)Ljava/lang/Integer;
ƒq rsintValue()I
%u vwgetNoRefundedCount'(Ljava/lang/String;)Ljava/lang/Integer;
%y zWgetRefundIdByRefundNumber
%| }~selectRefundByRefundId9(Ljava/lang/Long;)Lcom/dy/pipIrrGlobal/pojoSe/SeVcRefund;    €‚ dƒ/com/dy/pipIrrSell/wallet/enums/RefundStatusENUM1Lcom/dy/pipIrrSell/wallet/enums/RefundStatusENUM;
€g
†i‡%com/dy/pipIrrGlobal/pojoSe/SeVcRefund
%‰ Š‹ updateRefund<(Lcom/dy/pipIrrGlobal/pojoSe/SeVcRefund;)Ljava/lang/Integer;
†
†Ž PgetAfterRefund
+‘ ’TsetMoney    ”•– —˜3com/dy/pipIrrSell/virtualCard/enums/LastOperateENUMREFUND5Lcom/dy/pipIrrSell/virtualCard/enums/LastOperateENUM;
”g
+› œksetLastOperate
+ž Ÿ‰setLastOperateTime
%¡ ¢£updateVirtualCard?(Lcom/dy/pipIrrGlobal/pojoSe/SeVirtualCard;)Ljava/lang/Integer;¥成功
§(¨java/lang/Object    ×;    ×l    ×Æ    ×¹    ×p    ×H    ×v    ×A    .ÿ
³´µ ¶·org/slf4j/LoggerFactory    getLogger%(Ljava/lang/Class;)Lorg/slf4j/Logger;    .¹ º»logLorg/slf4j/Logger;‚(Lcom/dy/pipIrrSell/wechatpay/dto/Code2Session;Lorg/springframework/validation/BindingResult;)Lcom/dy/common/webUtil/BaseResponse;CodeLineNumberTableLocalVariableTableseOpenId%Lcom/dy/pipIrrGlobal/pojoSe/SeOpenId;recLjava/lang/Long;this)Lcom/dy/pipIrrSell/wechatpay/PaymentCtrl; code2Session.Lcom/dy/pipIrrSell/wechatpay/dto/Code2Session; bindingResult.Lorg/springframework/validation/BindingResult; phoneNumberjsCode queryParams headerParamsjob"Lcom/alibaba/fastjson2/JSONObject;
sessionKeyclientId    SessionIdLocalVariableTypeTable5Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;5Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>; StackMapTable
ExceptionsÙjava/lang/ExceptionMethodParameters    Signature—(Lcom/dy/pipIrrSell/wechatpay/dto/Code2Session;Lorg/springframework/validation/BindingResult;)Lcom/dy/common/webUtil/BaseResponse<Ljava/lang/Boolean;>;RuntimeVisibleAnnotations)Lio/swagger/v3/oas/annotations/Operation;summary登录凭证校验6Lio/swagger/v3/oas/annotations/responses/ApiResponses;value5Lio/swagger/v3/oas/annotations/responses/ApiResponse; responseCodeG操作结果:true:成功,false:失败(BaseResponse.content)content-Lio/swagger/v3/oas/annotations/media/Content;    mediaType,Lio/swagger/v3/oas/annotations/media/Schema;implementationLjava/lang/Boolean;5Lorg/springframework/web/bind/annotation/PostMapping;path:Lorg/springframework/transaction/annotation/Transactional; rollbackForLjava/lang/Exception;Lcom/dy/common/aop/SsoAop;RuntimeVisibleTypeAnnotationsLjakarta/validation/Valid;"RuntimeVisibleParameterAnnotations5Lorg/springframework/web/bind/annotation/RequestBody;methodhttpUrl    timestampkeyPemBs[Bheader
job_result job_headerswechatpayNoncewechatpaySerialwechatpaySignaturewechatpaySignatureTypewechatpayTimestampjob_body signatureStrvalid;()Lcom/dy/common/webUtil/BaseResponse<Ljava/lang/Boolean;>;下载平台证书4Lorg/springframework/web/bind/annotation/GetMapping;
placeOrder~(Lcom/dy/pipIrrSell/wechatpay/dto/DtoOrder;Lorg/springframework/validation/BindingResult;)Lcom/dy/common/webUtil/BaseResponse;order*Lcom/dy/pipIrrSell/wechatpay/dto/DtoOrder;    sessionId    virtualIdprepayIdpo seVirtualCard*Lcom/dy/pipIrrGlobal/pojoSe/SeVirtualCard;voClient#Lcom/dy/pipIrrGlobal/voSe/VoClient;    clientNum
dateFormatLjava/text/SimpleDateFormat; orderNumber virtualCard2Lcom/dy/pipIrrSell/virtualCard/dto/DtoVirtualCard;result$Lcom/dy/common/webUtil/BaseResponse;
job_amount    job_payer #javax/crypto/NoSuchPaddingException"&java/security/NoSuchAlgorithmException$*java/security/spec/InvalidKeySpecException&java/io/IOException( java/security/SignatureException*!java/security/InvalidKeyException“(Lcom/dy/pipIrrSell/wechatpay/dto/DtoOrder;Lorg/springframework/validation/BindingResult;)Lcom/dy/common/webUtil/BaseResponse<Ljava/lang/Boolean;>; JSAPI下单    signAgainpkg\(Ljava/lang/String;)Lcom/dy/common/webUtil/BaseResponse<Lcom/alibaba/fastjson2/JSONObject;>; 再次签名
/signAgain6Lorg/springframework/web/bind/annotation/RequestParam; orderNotify(Lorg/springframework/http/HttpHeaders;Ljakarta/servlet/http/HttpServletRequest;Ljakarta/servlet/http/HttpServletResponse;)Lcom/alibaba/fastjson2/JSONObject;result_notifyResource0Lcom/dy/pipIrrSell/wechatpay/dto/NotifyResource;associatedDatanonce
ciphertextresource job_resourceLjava/util/Date; seVcRecharge)Lcom/dy/pipIrrGlobal/pojoSe/SeVcRecharge;refundId
seVcRefund'Lcom/dy/pipIrrGlobal/pojoSe/SeVcRefund;vcId afterRefundLjava/lang/Double;seVcRefundItem+Lcom/dy/pipIrrGlobal/pojoSe/SeVcRefundItem;Ljava/lang/Integer;noRefundedCount&Lorg/springframework/http/HttpHeaders;request)Ljakarta/servlet/http/HttpServletRequest;response*Ljakarta/servlet/http/HttpServletResponse;readerLjava/io/BufferedReader; stringBuilderLjava/lang/StringBuilder;linebodyStr-Lcom/dy/pipIrrSell/wechatpay/dto/OrderNotify;timeDiff SerialIsValidZ    eventTypeú\&java/security/GeneralSecurityException 支付通知consumes7Lorg/springframework/web/bind/annotation/RequestHeader;ñ(Lorg/springframework/core/io/ResourceLoader;Lcom/dy/pipIrrSell/wechatpay/PaymentSv;Lcom/dy/pipIrrSell/util/RestTemplateUtil;Lcom/dy/pipIrrSell/util/PayHelper;Lcom/dy/pipIrrSell/virtualCard/VirtualCardSv;Lcom/dy/pipIrrSell/client/ClientSv;)V<clinit>
SourceFilePaymentCtrl.java(Lio/swagger/v3/oas/annotations/tags/Tag;name微信支付管理微信支付各种操作8Lorg/springframework/web/bind/annotation/RestController;8Lorg/springframework/web/bind/annotation/RequestMapping;paymentBootstrapMethodsm
nop Îq$java/lang/invoke/StringConcatFactory˜(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/invoke/CallSite;s uw prepay_id= InnerClassesz com/alibaba/fastjson2/JSONWriterFeature}%java/lang/invoke/MethodHandles$Lookupjava/lang/invoke/MethodHandlesLookup!.§º»½¾EFª«"#lm,191j1Ç1·1n1I1w1B1¼½«,Æ,¹™,¹¸ À¶¸°+¶N+¶":»%Y·':+*´-¹2W8*´:¹2W<¹2W>*´@¹2W»%Y·':*´C*´G¶J:P¶RÆP¶R¶X^”›    `¸°b¶d:h¶d:    *´j-¶n:
s: 
ÆJ»uY·w:  
¶x ¶|     ¶€ »ƒY·…¶†*´j ¶Š:  Æ
 ¸Ž:  ¸”°²˜¶ž¸¡°¾rk l o%p+r4sBtPu\vjwsx„zŸ{¥~®·Á‚Ńʅӆڇáˆè‰ôŠÿ‹Œ Ž‘¿ŽÓ>ÀÁ ÿÂà ÄÅÆÇÈÉ%öÊ1+ðË14çÌs¨Í„—ÎÏ®mc1·dÐ1    ÁZÑÃ
ÅVÒ1 Ó4çÌÔs¨ÍÕÖV ÿ„.33Sÿe.33SYuYù×ØÚ    ÆÈÛÜÝ_Þßsànsàáâ[@ãäs_nsåæ[@çèsÕÇ@éêcëìí[sîï[cðñò    óô õóÚ    ½ì¤L¦M*´¨¶¬N¸±¶m¸¸:*´»¸¿:*´Å*´¨+,s-¶ÈºÌ:»%Y·':й2WÒÔ¹2W*´C²Ö¶Û:Þ¶à:        ä¶æ¶ê:
    ï¶æ¶ê:     ñ¶æ¶ê:     ó¶æ¶ê:     õ¶æ¶ê:÷¶à:*´¨
½ù¶û¶ÿ:*´¨  ¶:¸°¾R§¨©ª¬#­>¯G°S±_²n³w´„µ‘¶ž·«¸¸ºÁ½×¿èÁ¿¶ìÄÅéö1æ÷1Þ³1ÒøÃ#Éùú>®û1G¥ßn~üÏwuýÏ    „hþ1
‘[ÿ1 žN1 «A1 ¸41Á+Ï×1èëÓ G¥ßÕרÛÝ_Þßsnsáâ[@ãäs_nsåæ[@çèsÕÇ@éêcëí[sÚîï[cðñ    
½  ,Æ,¹™,¹¸ À¶¸°+¶
N+¶:s:*´-¶:¶:*´ ¶$:¶*:    *´j    ¶/:
 
¶3: »8Y:·<:   »ƒY·…¶>ºB: »CY·E: ¶F    ¶I¶J+¶M¶Q*´ ¶U:¶Y^¶`š ²d¶ž¸°»SY·g:+*´-¶hWi*´k¶hWm*´o¶hWq ¶hWs*´u¶hW»SY·g:x+¶M¶z€kޏ‚¶hW‡‰¶hW‹¶hW»SY·g:b¶hW¶hW*´¨¶¬:¸±¶m¸¸::‘:½ù¶û:*´Å*´¨*´»¸¿¶ÈºÌ:»%Y·':й2WÒÔ¹2W“Ô¹2W*´C²•¶˜:Ç ²d¶ž¸°¸”°¾Â0× Ø Û%Ü+ß/á9â@äKåRç]èdëpì…ïŽð•ñœò£ó¬ô·õÅöÏùØúäûñüþý    þ7CNWa    l u †‹–¹ÂÎÚç÷ü ¿ ÄÅ    ÈÉ%ç Ã+áÃ/Ý19ÓÁ@Ìc1KÁRºÑà   ]¯
d¨1 pœ …‡1 Ž~·UØ4ÏíÏWµÏu—³1‹øÃ††ö1‹÷1–vø1¹Sû1ÂJß÷üÏÓ ÂJßÕ֒ ÿ®. YYu+Y48CZÿ6. YYu+Y48CZSSSY3S×!#%')ØÚ     ÈÛ+Ý_Þßs,ns,áâ[@ãäs_nsåæ[@çèsÕÇ@éêcëìí[s    îï[cðñò    óô õó-½8    Ž²œM¸±¶m¸N*´¨¶¬:+º :*´¨,-¶¢:*´¨¦¶¨*´»¸¿¶¬:»SY·g:°-¶hW²¶hW´¶hW¶*´¸¶hWº¶hW¸”°¾6 89:; </=G?P@ZAeBpC}DˆF¿\    ŽÄŎ1Š,1±1v³1 n.1/_ö1GG»1P>üÏרÚÛ/Ý_Þßs0ns0áâ[@ãäs_nsåæ[@çèsÕÇ@éêcëí[s1îï[cðñô 2âs34½Ô'»SY·g:+ä¶¼¹Á¸Ž:+ï¶¼¹Á¸Ž:+ñ¶¼¹Á¸Ž:+õ¶¼¹Á¸Ž:,¹Æ:    »ÌY·Î:
    ¶ÏY: Æ
 ¶ÔW§ÿí
¶Ø:  Û¸ÝÀÛ: ¸±¶m¸ãeçm¸¸:¶X锞'-ô¹ëñó¶hWõ÷¶hW°*´¨ ¶ÿ:*´»¸¿:*´¨¶:¶ùš'-ô¹ëñó¶hWõ÷¶hW°6*´¨´þ¹¹:¹ ™¹À:¶`™6§ÿÝš'-ô¹ëñó¶hWõ÷¶hW° ¶:Æ×¶`™Ì ¶:¶:¶#:¶&:²)¦¶¨¦¶¨¦¶¨¸,:¸2:q¶d:4¶d:6¶d:8¶::*´ ¶>:ÆN¶B¶H B*´ ¶N:¶Y^¶`š'-ô¹ëñó¶hWõ÷¶hW°§’ƍR¶`™‚ ¶:¶:¶#:¶&:²)¦¶¨¦¶¨¦¶¨¸,:¸2:q¶d:4¶d:T¶d:V¶d:8¶::X¶`š'-ô¹ëñó¶hWõ÷¶hW°»ZY·\:¶]²`¶f¶h*´ ¶l:  Ç/ ¶p'-ô¹ëñó¶hWõ÷¶hW°*´ ¶t:!!Æw!¶pšo*´ ¶x:"*´ "¶{:##²¶„¶…*´ #¶ˆW#¶Œ:$#¶:%*´ $¶$:&&%¶&²“¶™¶š&»ƒY·…¶*´ &¶ W-ȹëñX¶hWõ¤¶hW°¾Šb_    hi+j<kMnUo^qirtt{wˆzž{ª|³}¿~Ë΃݄æ†÷‡ÿˆ‰Š ‹#&O‘Y’\”_•d–m—y˜…™ˆŸŸ¦¦§­¨´©»«Û¬â¯ì°ö±²
µ¶&·3¸A¹JºV»b¼e¿xÆÇ†ÈÉ”Ë´Ì»ÏÅÐÏÑÙÒãÓíÔøÕÖ ×ØÜ%Ý,Þ7ßBàOáXâdãpäsî~ï‹ñ–ò¡ó¬ô¶÷½øÄùÏúÖûáüíý÷ ¿
4O +1325¦¿67­¸81´±91»ª:1ۊ;1âƒ<Ïìyr1öo51e71
[9=P>?–a@Ã"¡VAB#½:CÃ$Ä3DE%Ï(&x67†q81j91”c:1´C;1»<<ÏÅ2r1Ï(51ÙU1ãW1í
9=%ÒFGBµÂH ~yIH!ÄÅßJKLMN    Ïþ1+ðÿ1<ß1MÎ1UÆOP    ^½QR
fµS1 { T1 ˆ“3U ž}VÃÝ>1æ5ùú÷$ë&õWXŒY1Ö ÿ^ .½ÇìSÐÌüþYÛYþTZúý "ú(ü܏ÿ³.½ÇìSÐ̏ÛYZúSƒýVZƒÿƒ.½ÇìSÐ̏ÛYZú×%[ØÚ ßKMÝgÞßs]ns]áâ[@ãäs_nsåæ[@çèsÕÇ@éêcëìí[s3^[sÕîï[cðñô _)`½p*·¦*²œµ-*²©µ:*²ªµk*²«µÅ*²¬µ¸*²­µo*²®µG*²¯µu*²°µ@*»%Y·'µ±*+µ»*,µ*-µC*µ¨*µ *µj±¾2 ?J KLM N'O.P5Q<RCUN?¿HpÄÅp½¾ppEFpª«p"#plmÚ½Eª"la*½!    .¸²³¸±¾;bcÝ desfnsghií[sjklrltlvxùy{@|~€