@anncic-api/cache 1.3.3 → 1.3.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0x28cd70=a0_0x9937;(function(_0x55dc84,_0x4373f2){const _0x2182c1=a0_0x9937,_0x1de4ff=_0x55dc84();while(!![]){try{const _0x11fbec=-parseInt(_0x2182c1(0x1ce))/0x1*(-parseInt(_0x2182c1(0x1d1))/0x2)+-parseInt(_0x2182c1(0x1c7))/0x3*(-parseInt(_0x2182c1(0x1d4))/0x4)+-parseInt(_0x2182c1(0x1d3))/0x5*(parseInt(_0x2182c1(0x1ca))/0x6)+parseInt(_0x2182c1(0x1cb))/0x7*(-parseInt(_0x2182c1(0x1d2))/0x8)+-parseInt(_0x2182c1(0x1c5))/0x9+-parseInt(_0x2182c1(0x1c9))/0xa*(parseInt(_0x2182c1(0x1d6))/0xb)+parseInt(_0x2182c1(0x1cd))/0xc;if(_0x11fbec===_0x4373f2)break;else _0x1de4ff['push'](_0x1de4ff['shift']());}catch(_0x4ed218){_0x1de4ff['push'](_0x1de4ff['shift']());}}}(a0_0x1cfa,0x4d798));Object[a0_0x28cd70(0x1d7)](exports,'__esModule',{'value':!![]});function a0_0x9937(_0x275fae,_0x46b458){const _0x1cfaa2=a0_0x1cfa();return a0_0x9937=function(_0x9937a8,_0x123709){_0x9937a8=_0x9937a8-0x1c4;let _0x251b4d=_0x1cfaa2[_0x9937a8];return _0x251b4d;},a0_0x9937(_0x275fae,_0x46b458);}const fsStore=require(a0_0x28cd70(0x1d8)),redisStore=require(a0_0x28cd70(0x1cc));function a0_0x1cfa(){const _0x1a9b86=['42515YSlluS','12cBBRub','file','5826183ltnmCm','defineProperty','cache-manager-fs-hash','memory','4557699OZpDqu','/runtime/.cache','276891JIlXnn','default','10tcADvq','30tKbARY','7okwZTr','cache-manager-ioredis','10063284kxTUzH','33113WgOADh','name','appDir','30iReehQ','1730224CcQjmt'];a0_0x1cfa=function(){return _0x1a9b86;};return a0_0x1cfa();}exports[a0_0x28cd70(0x1c8)]=_0x164c3b=>{const _0x56df13=a0_0x28cd70;return{'cache':{'default':_0x56df13(0x1d5),'stores':{'file':{'store':fsStore,'options':{'ttl':0x1e13380,'subdirs':![],'path':_0x164c3b[_0x56df13(0x1d0)]+_0x56df13(0x1c6)}},'redis':{'store':redisStore,'options':{'port':0x18eb,'host':'127.0.0.1','password':'','ttl':0x1e13380,'keyPrefix':_0x164c3b[_0x56df13(0x1cf)]+':'}},'memory':{'store':_0x56df13(0x1c4),'options':{'max':0x64,'ttl':0x1e13380}}}}};};
|
package/dist/configuration.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';function a1_0x2921(_0x167cbb,_0x24d631){var _0x246999=a1_0x2469();return a1_0x2921=function(_0x29210b,_0x55cdaa){_0x29210b=_0x29210b-0xad;var _0x5b0bfb=_0x246999[_0x29210b];return _0x5b0bfb;},a1_0x2921(_0x167cbb,_0x24d631);}var a1_0x25676c=a1_0x2921;(function(_0x5594b7,_0x33f7a4){var _0x21a353=a1_0x2921,_0x1aa35e=_0x5594b7();while(!![]){try{var _0x37666f=parseInt(_0x21a353(0xad))/0x1*(-parseInt(_0x21a353(0xba))/0x2)+-parseInt(_0x21a353(0xbf))/0x3*(parseInt(_0x21a353(0xb4))/0x4)+-parseInt(_0x21a353(0xb5))/0x5+-parseInt(_0x21a353(0xb6))/0x6+parseInt(_0x21a353(0xc0))/0x7+parseInt(_0x21a353(0xb2))/0x8*(-parseInt(_0x21a353(0xbe))/0x9)+parseInt(_0x21a353(0xb3))/0xa;if(_0x37666f===_0x33f7a4)break;else _0x1aa35e['push'](_0x1aa35e['shift']());}catch(_0x41ce46){_0x1aa35e['push'](_0x1aa35e['shift']());}}}(a1_0x2469,0x25ca5));var __decorate=this&&this['__decorate']||function(_0x589b80,_0x44be6b,_0x290000,_0x65c5ad){var _0x461e85=a1_0x2921,_0x2652e2=arguments[_0x461e85(0xb0)],_0x4f0a93=_0x2652e2<0x3?_0x44be6b:_0x65c5ad===null?_0x65c5ad=Object[_0x461e85(0xb1)](_0x44be6b,_0x290000):_0x65c5ad,_0x403da1;if(typeof Reflect==='object'&&typeof Reflect[_0x461e85(0xbc)]===_0x461e85(0xb8))_0x4f0a93=Reflect[_0x461e85(0xbc)](_0x589b80,_0x44be6b,_0x290000,_0x65c5ad);else{for(var _0x448d2c=_0x589b80[_0x461e85(0xb0)]-0x1;_0x448d2c>=0x0;_0x448d2c--)if(_0x403da1=_0x589b80[_0x448d2c])_0x4f0a93=(_0x2652e2<0x3?_0x403da1(_0x4f0a93):_0x2652e2>0x3?_0x403da1(_0x44be6b,_0x290000,_0x4f0a93):_0x403da1(_0x44be6b,_0x290000))||_0x4f0a93;}return _0x2652e2>0x3&&_0x4f0a93&&Object['defineProperty'](_0x44be6b,_0x290000,_0x4f0a93),_0x4f0a93;};Object['defineProperty'](exports,a1_0x25676c(0xb9),{'value':!![]}),exports['CustomConfiguration']=void 0x0;const core_1=require(a1_0x25676c(0xaf)),ConfigDefault=require(a1_0x25676c(0xae));function a1_0x2469(){var _0x54177b=['27IWdejS','983010Vglptg','19858NjodPQ','./config/config.default','@midwayjs/core','length','getOwnPropertyDescriptor','622552BERZii','7573620zyNdGD','51984MlPXAh','401715TPSIWH','1734930wXcXOT','Configuration','function','__esModule','18gbcNuJ','anncic-api:cache','decorate','CustomConfiguration','9QIYuwe'];a1_0x2469=function(){return _0x54177b;};return a1_0x2469();}let CustomConfiguration=class CustomConfiguration{};CustomConfiguration=__decorate([(0x0,core_1[a1_0x25676c(0xb7)])({'conflictCheck':![],'namespace':a1_0x25676c(0xbb),'importConfigs':[{'default':ConfigDefault}]})],CustomConfiguration),exports[a1_0x25676c(0xbd)]=CustomConfiguration;
|
package/dist/decorator/Cache.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';
|
|
1
|
+
'use strict';function a2_0x3b99(_0x589b50,_0x5ede3f){const _0x4d8379=a2_0x4d83();return a2_0x3b99=function(_0x3b9940,_0x28d629){_0x3b9940=_0x3b9940-0x6d;let _0x597584=_0x4d8379[_0x3b9940];return _0x597584;},a2_0x3b99(_0x589b50,_0x5ede3f);}const a2_0x33acf7=a2_0x3b99;(function(_0x159207,_0x121668){const _0xb336f=a2_0x3b99,_0x4dd042=_0x159207();while(!![]){try{const _0x3d77a7=-parseInt(_0xb336f(0x70))/0x1*(-parseInt(_0xb336f(0x84))/0x2)+parseInt(_0xb336f(0x6e))/0x3*(parseInt(_0xb336f(0x7c))/0x4)+-parseInt(_0xb336f(0x73))/0x5*(-parseInt(_0xb336f(0x6f))/0x6)+parseInt(_0xb336f(0x85))/0x7+parseInt(_0xb336f(0x7b))/0x8*(-parseInt(_0xb336f(0x6d))/0x9)+-parseInt(_0xb336f(0x80))/0xa+parseInt(_0xb336f(0x82))/0xb;if(_0x3d77a7===_0x121668)break;else _0x4dd042['push'](_0x4dd042['shift']());}catch(_0xda40c8){_0x4dd042['push'](_0x4dd042['shift']());}}}(a2_0x4d83,0x2c334));Object[a2_0x33acf7(0x72)](exports,a2_0x33acf7(0x7e),{'value':!![]}),exports['Cache']=void 0x0;const crypto_js_1=require(a2_0x33acf7(0x7a)),CacheService_1=require(a2_0x33acf7(0x83)),core_1=require(a2_0x33acf7(0x7f));function a2_0x4d83(){const _0x8814c2=['55175jnghBy','Method::Decorator','value','apply','set','get','REQUEST_OBJ_CTX_KEY','crypto-js','8LsEUiQ','4yKWDgb','getAsync','__esModule','@midwayjs/core','1174350mehFyT','use','56430Aqtpwo','../service/CacheService','70046wQjCjj','2208318OFYppq','Cache','toString','getApplicationContext','stringify','1668501TomwTe','351618PZtIII','6AvrMIv','1obnQNF','parse','defineProperty'];a2_0x4d83=function(){return _0x8814c2;};return a2_0x4d83();}function Cache(_0x39c9be,_0x4f56cc){return(_0x55dcae,_0x26993b,_0x4bfec6)=>{const _0x336915=a2_0x3b99,_0x46a8de=_0x4bfec6[_0x336915(0x75)];return _0x4bfec6[_0x336915(0x75)]=async function(..._0x2cf37f){const _0x17a874=_0x336915;!_0x39c9be&&(_0x39c9be=(0x0,crypto_js_1['MD5'])(JSON[_0x17a874(0x89)](_0x2cf37f))[_0x17a874(0x87)]());let _0x177756=await this[core_1[_0x17a874(0x79)]]['app'][_0x17a874(0x88)]()[_0x17a874(0x7d)](CacheService_1['CacheService']),_0x1c57cd=await(await _0x177756[_0x17a874(0x81)](_0x17a874(0x74)))[_0x17a874(0x78)](_0x39c9be);if(_0x1c57cd)return JSON[_0x17a874(0x71)](_0x1c57cd);else _0x1c57cd=await _0x46a8de[_0x17a874(0x76)](this,[..._0x2cf37f]),await(await _0x177756[_0x17a874(0x81)](_0x17a874(0x74)))[_0x17a874(0x77)](_0x39c9be,JSON[_0x17a874(0x89)](_0x1c57cd),_0x4f56cc);return _0x1c57cd;},_0x4bfec6;};}exports[a2_0x33acf7(0x86)]=Cache;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var a3_0x59a0cd=a3_0x3b51;(function(_0x2feea6,_0x49ebf7){var _0x104cec=a3_0x3b51,_0x1f3d87=_0x2feea6();while(!![]){try{var _0x1dc3f4=parseInt(_0x104cec(0xa0))/0x1*(-parseInt(_0x104cec(0x93))/0x2)+-parseInt(_0x104cec(0x9f))/0x3+parseInt(_0x104cec(0xa1))/0x4+parseInt(_0x104cec(0x9a))/0x5+parseInt(_0x104cec(0x95))/0x6*(parseInt(_0x104cec(0x97))/0x7)+parseInt(_0x104cec(0x99))/0x8+-parseInt(_0x104cec(0x9b))/0x9;if(_0x1dc3f4===_0x49ebf7)break;else _0x1f3d87['push'](_0x1f3d87['shift']());}catch(_0x376af3){_0x1f3d87['push'](_0x1f3d87['shift']());}}}(a3_0x3e26,0xcb435));Object[a3_0x59a0cd(0xa4)](exports,a3_0x59a0cd(0x9c),{'value':!![]}),exports['CacheService']=exports[a3_0x59a0cd(0xa3)]=exports[a3_0x59a0cd(0x9d)]=void 0x0;var configuration_1=require(a3_0x59a0cd(0x96));Object['defineProperty'](exports,a3_0x59a0cd(0x9d),{'enumerable':!![],'get':function(){var _0x2e7f3b=a3_0x59a0cd;return configuration_1[_0x2e7f3b(0x9e)];}});var Cache_1=require(a3_0x59a0cd(0x94));function a3_0x3b51(_0x45bd83,_0x1b8830){var _0x3e264a=a3_0x3e26();return a3_0x3b51=function(_0x3b5117,_0x3a5612){_0x3b5117=_0x3b5117-0x93;var _0x954d69=_0x3e264a[_0x3b5117];return _0x954d69;},a3_0x3b51(_0x45bd83,_0x1b8830);}Object[a3_0x59a0cd(0xa4)](exports,a3_0x59a0cd(0xa3),{'enumerable':!![],'get':function(){return Cache_1['Cache'];}});function a3_0x3e26(){var _0x31b7de=['2965256CAKDrO','7859590OwmIBb','9603855aFjaly','__esModule','Configuration','CustomConfiguration','3107265AlutUk','1geCwnh','5281188DpFONM','CacheService','Cache','defineProperty','2073090hprbmn','./decorator/Cache','4254528RtAhOO','./configuration','7LPSlHX','./service/CacheService'];a3_0x3e26=function(){return _0x31b7de;};return a3_0x3e26();}var CacheService_1=require(a3_0x59a0cd(0x98));Object['defineProperty'](exports,a3_0x59a0cd(0xa2),{'enumerable':!![],'get':function(){var _0xa8a868=a3_0x59a0cd;return CacheService_1[_0xa8a868(0xa2)];}});
|
|
@@ -3,18 +3,18 @@ export declare class CacheService {
|
|
|
3
3
|
protected config: any;
|
|
4
4
|
protected cache: cacheManager.Cache;
|
|
5
5
|
protected clients: Map<string, CacheHandler>;
|
|
6
|
-
use(registerCache: string): CacheHandler
|
|
7
|
-
reset(): Promise<
|
|
6
|
+
use(registerCache: string): Promise<CacheHandler>;
|
|
7
|
+
reset(): Promise<void>;
|
|
8
8
|
}
|
|
9
9
|
declare class CacheHandler {
|
|
10
10
|
protected prefix: string;
|
|
11
|
-
protected
|
|
11
|
+
protected _: cacheManager.Cache;
|
|
12
12
|
constructor(prefix: string, cache: cacheManager.Cache);
|
|
13
|
-
del(key: string): Promise<
|
|
14
|
-
set
|
|
13
|
+
del(key: string): Promise<void>;
|
|
14
|
+
set(key: string, value: any, ttl?: number): Promise<void>;
|
|
15
15
|
get<T>(key: string, defaultval?: any): Promise<T>;
|
|
16
|
-
hdel(key: string, field: string): Promise<
|
|
17
|
-
hset
|
|
16
|
+
hdel(key: string, field: string): Promise<void>;
|
|
17
|
+
hset(key: string, field: string, value: any, ttl?: number): Promise<void>;
|
|
18
18
|
hget<T>(key: string, field: string, defaultval?: any): Promise<T>;
|
|
19
19
|
}
|
|
20
20
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';var
|
|
1
|
+
'use strict';var a4_0x2252e3=a4_0x3e0c;(function(_0x26a315,_0x1c1281){var _0x31c9a8=a4_0x3e0c,_0x318e81=_0x26a315();while(!![]){try{var _0x532417=parseInt(_0x31c9a8(0xa0))/0x1*(-parseInt(_0x31c9a8(0xaa))/0x2)+-parseInt(_0x31c9a8(0xa6))/0x3*(-parseInt(_0x31c9a8(0x94))/0x4)+parseInt(_0x31c9a8(0x89))/0x5+parseInt(_0x31c9a8(0xac))/0x6+-parseInt(_0x31c9a8(0x98))/0x7*(-parseInt(_0x31c9a8(0x96))/0x8)+-parseInt(_0x31c9a8(0x8a))/0x9+parseInt(_0x31c9a8(0x8f))/0xa*(-parseInt(_0x31c9a8(0x8c))/0xb);if(_0x532417===_0x1c1281)break;else _0x318e81['push'](_0x318e81['shift']());}catch(_0x350693){_0x318e81['push'](_0x318e81['shift']());}}}(a4_0x4db3,0x252c5));var __decorate=this&&this[a4_0x2252e3(0x9e)]||function(_0x585812,_0x51240c,_0x337c01,_0x24edac){var _0x5ebb13=a4_0x2252e3,_0x3aba7a=arguments[_0x5ebb13(0xa9)],_0x45d127=_0x3aba7a<0x3?_0x51240c:_0x24edac===null?_0x24edac=Object[_0x5ebb13(0x8d)](_0x51240c,_0x337c01):_0x24edac,_0xd75ed8;if(typeof Reflect===_0x5ebb13(0x85)&&typeof Reflect['decorate']==='function')_0x45d127=Reflect['decorate'](_0x585812,_0x51240c,_0x337c01,_0x24edac);else{for(var _0x2a278a=_0x585812['length']-0x1;_0x2a278a>=0x0;_0x2a278a--)if(_0xd75ed8=_0x585812[_0x2a278a])_0x45d127=(_0x3aba7a<0x3?_0xd75ed8(_0x45d127):_0x3aba7a>0x3?_0xd75ed8(_0x51240c,_0x337c01,_0x45d127):_0xd75ed8(_0x51240c,_0x337c01))||_0x45d127;}return _0x3aba7a>0x3&&_0x45d127&&Object['defineProperty'](_0x51240c,_0x337c01,_0x45d127),_0x45d127;},__metadata=this&&this[a4_0x2252e3(0x92)]||function(_0x44ca79,_0x40a646){var _0x4fee8d=a4_0x2252e3;if(typeof Reflect===_0x4fee8d(0x85)&&typeof Reflect['metadata']==='function')return Reflect['metadata'](_0x44ca79,_0x40a646);};Object[a4_0x2252e3(0x86)](exports,a4_0x2252e3(0x99),{'value':!![]}),exports['CacheService']=void 0x0;const cacheManager=require(a4_0x2252e3(0xa5)),core_1=require('@midwayjs/core');function a4_0x4db3(){var _0x3b6809=['object','defineProperty','prototype','prefix','794235FqMadS','65412XXMRRw','del','331023fPvKZI','getOwnPropertyDescriptor','set','50HWYxqy','cache','CacheService','__metadata','hget','47924fFiwHK','file','112RIwhTu','Singleton','117509iPgwUb','__esModule','Scope','stores','design:type','get','__decorate','use','1xHKdrU','hset','default','config','hdel','cache-manager','21wVWLmB','options','Config','length','357118TdbhJj','Provide','64926fhmwvG','reset','clients'];a4_0x4db3=function(){return _0x3b6809;};return a4_0x4db3();}let CacheService=class CacheService{constructor(){var _0xdad6ce=a4_0x2252e3;this[_0xdad6ce(0x90)]=undefined,this['clients']=new Map();}async[a4_0x2252e3(0x9f)](_0xc32229){var _0x4a22c6=a4_0x2252e3,_0x4e1e63,_0x265d7b;if(!this['cache']){const _0x4203ab=((_0x4e1e63=this[_0x4a22c6(0xa3)][_0x4a22c6(0x9b)])===null||_0x4e1e63===void 0x0?void 0x0:_0x4e1e63[(_0x265d7b=this[_0x4a22c6(0xa3)]['cache'])===null||_0x265d7b===void 0x0?void 0x0:_0x265d7b[_0x4a22c6(0xa2)]])||this[_0x4a22c6(0xa3)][_0x4a22c6(0x9b)][_0x4a22c6(0x95)];this[_0x4a22c6(0x90)]=await cacheManager['caching']({..._0x4203ab[_0x4a22c6(0xa7)],'store':_0x4203ab['store']});}return!this[_0x4a22c6(0xae)]['has'](_0xc32229)&&this[_0x4a22c6(0xae)]['set'](_0xc32229,new CacheHandler(_0xc32229,this[_0x4a22c6(0x90)])),this[_0x4a22c6(0xae)][_0x4a22c6(0x9d)](_0xc32229);}async[a4_0x2252e3(0xad)](){var _0x536c63=a4_0x2252e3;return await this[_0x536c63(0x90)]['reset']();}};function a4_0x3e0c(_0x3a2b21,_0x44a04c){var _0x4db341=a4_0x4db3();return a4_0x3e0c=function(_0x3e0cc5,_0x50b519){_0x3e0cc5=_0x3e0cc5-0x85;var _0x278839=_0x4db341[_0x3e0cc5];return _0x278839;},a4_0x3e0c(_0x3a2b21,_0x44a04c);}__decorate([(0x0,core_1[a4_0x2252e3(0xa8)])('cache'),__metadata(a4_0x2252e3(0x9c),Object)],CacheService[a4_0x2252e3(0x87)],a4_0x2252e3(0xa3),void 0x0),CacheService=__decorate([(0x0,core_1[a4_0x2252e3(0xab)])(),(0x0,core_1[a4_0x2252e3(0x9a)])(core_1['ScopeEnum'][a4_0x2252e3(0x97)])],CacheService),exports[a4_0x2252e3(0x91)]=CacheService;class CacheHandler{constructor(_0x1c31ab,_0xd60157){var _0x11bbfc=a4_0x2252e3;this['_']=_0xd60157,this[_0x11bbfc(0x88)]=_0x1c31ab;}async[a4_0x2252e3(0x8b)](_0x11e3c2){var _0x33bb7f=a4_0x2252e3;return await this['_']['del'](this[_0x33bb7f(0x88)]+':'+_0x11e3c2);}async[a4_0x2252e3(0x8e)](_0x4e8f6b,_0x1900ea,_0x192cde){var _0x41232f=a4_0x2252e3;return await this['_'][_0x41232f(0x8e)](this['prefix']+':'+_0x4e8f6b,_0x1900ea,_0x192cde);}async[a4_0x2252e3(0x9d)](_0x20570f,_0x42960d){var _0xe4044e=a4_0x2252e3;return this['_'][_0xe4044e(0x9d)](this[_0xe4044e(0x88)]+':'+_0x20570f)['catch'](_0xc195bd=>{return _0x42960d;});}async[a4_0x2252e3(0xa4)](_0x401132,_0x31c8e5){var _0x42d1f9=a4_0x2252e3;return await this[_0x42d1f9(0x8b)](_0x401132+'-'+_0x31c8e5);}async[a4_0x2252e3(0xa1)](_0x2bb57a,_0x52ae01,_0x165398,_0x41eaa7){var _0x313915=a4_0x2252e3;return await this[_0x313915(0x8e)](_0x2bb57a+'-'+_0x52ae01,_0x165398,_0x41eaa7);}async[a4_0x2252e3(0x93)](_0x1c4d81,_0x44b057,_0x2de3e1){var _0xed47ba=a4_0x2252e3;return await this[_0xed47ba(0x9d)](_0x1c4d81+'-'+_0x44b057,_0x2de3e1);}}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@anncic-api/cache",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.5",
|
|
4
4
|
"main": "./dist/index.js",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"files": [
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"build": "tsc && javascript-obfuscator ./dist --output ./dist --config obfuscator.json"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"cache-manager": "^
|
|
17
|
+
"cache-manager": "^5.1.3",
|
|
18
18
|
"cache-manager-fs-hash": "^1.0.0",
|
|
19
19
|
"cache-manager-ioredis": "^2.1.0"
|
|
20
20
|
},
|
|
@@ -23,5 +23,5 @@
|
|
|
23
23
|
"javascript-obfuscator": "2.19.0",
|
|
24
24
|
"typescript": "^4.7.4"
|
|
25
25
|
},
|
|
26
|
-
"gitHead": "
|
|
26
|
+
"gitHead": "d8c71ca8c30793c3fa8b6e0f74fc5b6e123f1066"
|
|
27
27
|
}
|