98f6b540e17c789db4186cd4a9bf1dd671b80d4e
[motion2.git] / server / api / intSugarcrmAccount / intSugarcrmAccount.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x3647=['result','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','stack','name','send','merge','body','contact','agent','interaction','account','index','map','SugarcrmAccount','rawAttributes','fieldName','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','options','includeAll','findAll','rows','catch','show','params','keys','include','find','create','destroy','findOne','SugarcrmConfiguration','order','getConfigurations','addConfiguration','getSubjects','channel','Descriptions','getDescriptions','SugarcrmField','Subjects','assigned_user_id','created_by','description','date_start','duration_hours','direction','username','password','remoteUri','substring','POST','%s%s','JSON','xCALLY\x20Motion\x20Integration','Password\x20Expired','Calls','values','module_fields','remove','label','value','test','getFields,\x20%s,\x20%s,\x20%s','getFields','statusCode','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','jayson/promise','client','request','info','request\x20sent','debug','SugarcrmAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','SugarcrmAccount,\x20%s,\x20%s','message'];(function(_0x4a86a5,_0x1021df){var _0xd2fe11=function(_0x2fd648){while(--_0x2fd648){_0x4a86a5['push'](_0x4a86a5['shift']());}};_0xd2fe11(++_0x1021df);}(_0x3647,0x163));var _0x7364=function(_0x53c308,_0x28e59e){_0x53c308=_0x53c308-0x0;var _0x1be8b1=_0x3647[_0x53c308];return _0x1be8b1;};'use strict';var emlformat=require(_0x7364('0x0'));var rimraf=require(_0x7364('0x1'));var zipdir=require(_0x7364('0x2'));var jsonpatch=require(_0x7364('0x3'));var rp=require('request-promise');var moment=require(_0x7364('0x4'));var BPromise=require(_0x7364('0x5'));var Mustache=require(_0x7364('0x6'));var util=require(_0x7364('0x7'));var path=require(_0x7364('0x8'));var sox=require(_0x7364('0x9'));var csv=require(_0x7364('0xa'));var ejs=require(_0x7364('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x7364('0xc'));var squel=require(_0x7364('0xd'));var crypto=require(_0x7364('0xe'));var jsforce=require(_0x7364('0xf'));var deskjs=require(_0x7364('0x10'));var toCsv=require('to-csv');var querystring=require(_0x7364('0x11'));var Papa=require(_0x7364('0x12'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x7364('0x13'));var as=require(_0x7364('0x14'));var hardwareService=require(_0x7364('0x15'));var logger=require(_0x7364('0x16'))('api');var utils=require(_0x7364('0x17'));var config=require(_0x7364('0x18'));var licenseUtil=require(_0x7364('0x19'));var db=require('../../mysqldb')['db'];var integrations=require('../../components/integrations/configuration');var jayson=require(_0x7364('0x1a'));var client=jayson[_0x7364('0x1b')]['http']({'port':0x232a});function respondWithRpcPromise(_0x290b4a,_0x4974c2,_0x3314d0,_0x27ec63){return new BPromise(function(_0x4e24b,_0x30b477){var _0x31af4d=_0x27ec63||client;return _0x31af4d[_0x7364('0x1c')](_0x290b4a,_0x3314d0)['then'](function(_0x26053b){logger[_0x7364('0x1d')]('SugarcrmAccount,\x20%s,\x20%s',_0x4974c2,_0x7364('0x1e'));logger[_0x7364('0x1f')](_0x7364('0x20'),_0x4974c2,'request\x20sent',JSON[_0x7364('0x21')](_0x26053b));if(_0x26053b[_0x7364('0x22')]){if(_0x26053b[_0x7364('0x22')][_0x7364('0x23')]===0x1f4){logger[_0x7364('0x22')](_0x7364('0x24'),_0x4974c2,_0x26053b[_0x7364('0x22')][_0x7364('0x25')]);return _0x30b477(_0x26053b[_0x7364('0x22')]['message']);}logger[_0x7364('0x22')]('SugarcrmAccount,\x20%s,\x20%s',_0x4974c2,_0x26053b[_0x7364('0x22')][_0x7364('0x25')]);return _0x4e24b(_0x26053b[_0x7364('0x22')][_0x7364('0x25')]);}else{logger[_0x7364('0x1d')](_0x7364('0x24'),_0x4974c2,_0x7364('0x1e'));_0x4e24b(_0x26053b[_0x7364('0x26')][_0x7364('0x25')]);}})['catch'](function(_0x17a57d){logger[_0x7364('0x22')](_0x7364('0x24'),_0x4974c2,_0x17a57d);_0x30b477(_0x17a57d);});});}function respondWithStatusCode(_0x63df15,_0x230d1b){_0x230d1b=_0x230d1b||0xcc;return function(_0xa11e12){if(_0xa11e12){return _0x63df15[_0x7364('0x27')](_0x230d1b);}return _0x63df15['status'](_0x230d1b)[_0x7364('0x28')]();};}function respondWithResult(_0x353393,_0x52e603){_0x52e603=_0x52e603||0xc8;return function(_0x195573){if(_0x195573){return _0x353393[_0x7364('0x29')](_0x52e603)[_0x7364('0x2a')](_0x195573);}};}function respondWithFilteredResult(_0x2a8c64,_0x3d9a8){return function(_0x30507d){if(_0x30507d){var _0x4ee431=typeof _0x3d9a8[_0x7364('0x2b')]===_0x7364('0x2c')&&typeof _0x3d9a8[_0x7364('0x2d')]==='undefined';var _0x5736e8=_0x30507d[_0x7364('0x2e')];var _0x23cc9a=_0x4ee431?0x0:_0x3d9a8[_0x7364('0x2b')];var _0x963e8c=_0x4ee431?_0x30507d[_0x7364('0x2e')]:_0x3d9a8[_0x7364('0x2b')]+_0x3d9a8[_0x7364('0x2d')];var _0x266a68;if(_0x963e8c>=_0x5736e8){_0x963e8c=_0x5736e8;_0x266a68=0xc8;}else{_0x266a68=0xce;}_0x2a8c64['status'](_0x266a68);return _0x2a8c64[_0x7364('0x2f')](_0x7364('0x30'),_0x23cc9a+'-'+_0x963e8c+'/'+_0x5736e8)[_0x7364('0x2a')](_0x30507d);}return null;};}function patchUpdates(_0x1baccf){return function(_0x23dab1){try{jsonpatch[_0x7364('0x31')](_0x23dab1,_0x1baccf,!![]);}catch(_0x1fea3){return BPromise[_0x7364('0x32')](_0x1fea3);}return _0x23dab1[_0x7364('0x33')]();};}function saveUpdates(_0x40b4f3,_0x11c2cd){return function(_0xea7af){if(_0xea7af){return _0xea7af[_0x7364('0x34')](_0x40b4f3)[_0x7364('0x35')](function(_0x19f930){return _0x19f930;});}return null;};}function removeEntity(_0x549bbe,_0x449fa9){return function(_0x5b228e){if(_0x5b228e){return _0x5b228e['destroy']()[_0x7364('0x35')](function(){_0x549bbe['status'](0xcc)[_0x7364('0x28')]();});}};}function handleEntityNotFound(_0x454476,_0x21146d){return function(_0x323456){if(!_0x323456){_0x454476[_0x7364('0x27')](0x194);}return _0x323456;};}function handleError(_0x1423df,_0x147c66){_0x147c66=_0x147c66||0x1f4;return function(_0x329330){logger[_0x7364('0x22')](_0x329330[_0x7364('0x36')]);if(_0x329330['name']){delete _0x329330[_0x7364('0x37')];}_0x1423df[_0x7364('0x29')](_0x147c66)[_0x7364('0x38')](_0x329330);};}function getMustacheRender(_0x426221,_0x5396e5){return Mustache['render'](_0x426221,_[_0x7364('0x39')](_0x5396e5[_0x7364('0x3a')],{'contact':_0x5396e5[_0x7364('0x3b')],'message':_0x5396e5['message'],'agent':_0x5396e5[_0x7364('0x3c')],'interaction':_0x5396e5[_0x7364('0x3d')],'account':_0x5396e5[_0x7364('0x3e')]}))||'';}exports[_0x7364('0x3f')]=function(_0x42a3d5,_0x5c305d){var _0x2067d1={},_0x2986c5={},_0x1f7f98={'count':0x0,'rows':[]};var _0x38dd14=_[_0x7364('0x40')](db[_0x7364('0x41')][_0x7364('0x42')],function(_0x22ab2e){return{'name':_0x22ab2e[_0x7364('0x43')],'type':_0x22ab2e[_0x7364('0x44')][_0x7364('0x45')]};});_0x2986c5[_0x7364('0x46')]=_['map'](_0x38dd14,'name');_0x2986c5[_0x7364('0x47')]=_['keys'](_0x42a3d5[_0x7364('0x47')]);_0x2986c5['filters']=_[_0x7364('0x48')](_0x2986c5[_0x7364('0x46')],_0x2986c5[_0x7364('0x47')]);_0x2067d1[_0x7364('0x49')]=_[_0x7364('0x48')](_0x2986c5[_0x7364('0x46')],qs[_0x7364('0x4a')](_0x42a3d5[_0x7364('0x47')]['fields']));_0x2067d1[_0x7364('0x49')]=_0x2067d1[_0x7364('0x49')][_0x7364('0x4b')]?_0x2067d1[_0x7364('0x49')]:_0x2986c5[_0x7364('0x46')];if(!_0x42a3d5['query'][_0x7364('0x4c')](_0x7364('0x4d'))){_0x2067d1['limit']=qs[_0x7364('0x2d')](_0x42a3d5['query'][_0x7364('0x2d')]);_0x2067d1[_0x7364('0x2b')]=qs[_0x7364('0x2b')](_0x42a3d5['query'][_0x7364('0x2b')]);}_0x2067d1['order']=qs[_0x7364('0x4e')](_0x42a3d5[_0x7364('0x47')][_0x7364('0x4e')]);_0x2067d1[_0x7364('0x4f')]=qs[_0x7364('0x50')](_[_0x7364('0x51')](_0x42a3d5[_0x7364('0x47')],_0x2986c5['filters']),_0x38dd14);if(_0x42a3d5[_0x7364('0x47')][_0x7364('0x52')]){_0x2067d1[_0x7364('0x4f')]=_[_0x7364('0x39')](_0x2067d1[_0x7364('0x4f')],{'$or':_[_0x7364('0x40')](_0x38dd14,function(_0x304722){if(_0x304722[_0x7364('0x44')]!=='VIRTUAL'){var _0x234c67={};_0x234c67[_0x304722[_0x7364('0x37')]]={'$like':'%'+_0x42a3d5['query']['filter']+'%'};return _0x234c67;}})});}_0x2067d1=_[_0x7364('0x39')]({},_0x2067d1,_0x42a3d5[_0x7364('0x53')]);var _0x2ba966={'where':_0x2067d1[_0x7364('0x4f')]};return db[_0x7364('0x41')]['count'](_0x2ba966)[_0x7364('0x35')](function(_0x56d6e2){_0x1f7f98[_0x7364('0x2e')]=_0x56d6e2;if(_0x42a3d5[_0x7364('0x47')][_0x7364('0x54')]){_0x2067d1['include']=[{'all':!![]}];}return db[_0x7364('0x41')][_0x7364('0x55')](_0x2067d1);})[_0x7364('0x35')](function(_0x41f33c){_0x1f7f98[_0x7364('0x56')]=_0x41f33c;return _0x1f7f98;})[_0x7364('0x35')](respondWithFilteredResult(_0x5c305d,_0x2067d1))[_0x7364('0x57')](handleError(_0x5c305d,null));};exports[_0x7364('0x58')]=function(_0x15a8b0,_0x488606){var _0x5b6fd6={'raw':![],'where':{'id':_0x15a8b0[_0x7364('0x59')]['id']}},_0x325f8a={};_0x325f8a['model']=_['keys'](db['SugarcrmAccount'][_0x7364('0x42')]);_0x325f8a[_0x7364('0x47')]=_[_0x7364('0x5a')](_0x15a8b0[_0x7364('0x47')]);_0x325f8a[_0x7364('0x50')]=_[_0x7364('0x48')](_0x325f8a['model'],_0x325f8a['query']);_0x5b6fd6[_0x7364('0x49')]=_[_0x7364('0x48')](_0x325f8a[_0x7364('0x46')],qs[_0x7364('0x4a')](_0x15a8b0[_0x7364('0x47')][_0x7364('0x4a')]));_0x5b6fd6[_0x7364('0x49')]=_0x5b6fd6[_0x7364('0x49')]['length']?_0x5b6fd6[_0x7364('0x49')]:_0x325f8a['model'];if(_0x15a8b0[_0x7364('0x47')][_0x7364('0x54')]){_0x5b6fd6[_0x7364('0x5b')]=[{'all':!![]}];}_0x5b6fd6=_[_0x7364('0x39')]({},_0x5b6fd6,_0x15a8b0[_0x7364('0x53')]);return db['SugarcrmAccount'][_0x7364('0x5c')](_0x5b6fd6)[_0x7364('0x35')](handleEntityNotFound(_0x488606,null))[_0x7364('0x35')](respondWithResult(_0x488606,null))['catch'](handleError(_0x488606,null));};exports[_0x7364('0x5d')]=function(_0x2c6d96,_0x5c4185){return db[_0x7364('0x41')][_0x7364('0x5d')](_0x2c6d96['body'],{})[_0x7364('0x35')](respondWithResult(_0x5c4185,0xc9))['catch'](handleError(_0x5c4185,null));};exports[_0x7364('0x34')]=function(_0x49f6d4,_0x3df890){if(_0x49f6d4[_0x7364('0x3a')]['id']){delete _0x49f6d4['body']['id'];}return db[_0x7364('0x41')][_0x7364('0x5c')]({'where':{'id':_0x49f6d4[_0x7364('0x59')]['id']}})[_0x7364('0x35')](handleEntityNotFound(_0x3df890,null))[_0x7364('0x35')](saveUpdates(_0x49f6d4['body'],null))['then'](respondWithResult(_0x3df890,null))[_0x7364('0x57')](handleError(_0x3df890,null));};exports[_0x7364('0x5e')]=function(_0x56062f,_0x3c81f8){return db['SugarcrmAccount'][_0x7364('0x5c')]({'where':{'id':_0x56062f[_0x7364('0x59')]['id']}})[_0x7364('0x35')](handleEntityNotFound(_0x3c81f8,null))[_0x7364('0x35')](removeEntity(_0x3c81f8,null))[_0x7364('0x57')](handleError(_0x3c81f8,null));};exports['getConfigurations']=function(_0x5c5dcd,_0x5a931c,_0x4ef29f){var _0x532de3={};var _0x5ded67={};var _0x557210;var _0x504888;return db['SugarcrmAccount'][_0x7364('0x5f')]({'where':{'id':_0x5c5dcd[_0x7364('0x59')]['id']}})[_0x7364('0x35')](handleEntityNotFound(_0x5a931c,null))[_0x7364('0x35')](function(_0x255eaf){if(_0x255eaf){_0x557210=_0x255eaf;_0x5ded67[_0x7364('0x46')]=_[_0x7364('0x5a')](db[_0x7364('0x60')][_0x7364('0x42')]);_0x5ded67[_0x7364('0x47')]=_[_0x7364('0x5a')](_0x5c5dcd[_0x7364('0x47')]);_0x5ded67[_0x7364('0x50')]=_[_0x7364('0x48')](_0x5ded67[_0x7364('0x46')],_0x5ded67[_0x7364('0x47')]);_0x532de3[_0x7364('0x49')]=_[_0x7364('0x48')](_0x5ded67['model'],qs[_0x7364('0x4a')](_0x5c5dcd[_0x7364('0x47')]['fields']));_0x532de3['attributes']=_0x532de3[_0x7364('0x49')]['length']?_0x532de3[_0x7364('0x49')]:_0x5ded67['model'];_0x532de3[_0x7364('0x61')]=qs['sort'](_0x5c5dcd[_0x7364('0x47')][_0x7364('0x4e')]);_0x532de3[_0x7364('0x4f')]=qs['filters'](_[_0x7364('0x51')](_0x5c5dcd['query'],_0x5ded67['filters']));if(_0x5c5dcd[_0x7364('0x47')][_0x7364('0x52')]){_0x532de3[_0x7364('0x4f')]=_[_0x7364('0x39')](_0x532de3[_0x7364('0x4f')],{'$or':_[_0x7364('0x40')](_0x532de3[_0x7364('0x49')],function(_0x1fca91){var _0x22f9e6={};_0x22f9e6[_0x1fca91]={'$like':'%'+_0x5c5dcd[_0x7364('0x47')][_0x7364('0x52')]+'%'};return _0x22f9e6;})});}_0x532de3=_[_0x7364('0x39')]({},_0x532de3,_0x5c5dcd[_0x7364('0x53')]);return _0x557210[_0x7364('0x62')](_0x532de3);}})['then'](function(_0x186184){if(_0x186184){_0x504888=_0x186184[_0x7364('0x4b')];if(!_0x5c5dcd[_0x7364('0x47')][_0x7364('0x4c')](_0x7364('0x4d'))){_0x532de3[_0x7364('0x2d')]=qs[_0x7364('0x2d')](_0x5c5dcd[_0x7364('0x47')][_0x7364('0x2d')]);_0x532de3['offset']=qs[_0x7364('0x2b')](_0x5c5dcd[_0x7364('0x47')][_0x7364('0x2b')]);}return _0x557210['getConfigurations'](_0x532de3);}})['then'](function(_0x516cf3){if(_0x516cf3){return _0x516cf3?{'count':_0x504888,'rows':_0x516cf3}:null;}})['then'](respondWithResult(_0x5a931c,null))[_0x7364('0x57')](handleError(_0x5a931c,null));};exports[_0x7364('0x63')]=function(_0x5b9965,_0x5a667b,_0x5f6922){if(_0x5b9965[_0x7364('0x3a')]['id']){delete _0x5b9965['body']['id'];}return db['SugarcrmAccount'][_0x7364('0x5f')]({'where':{'id':_0x5b9965[_0x7364('0x59')]['id']}})[_0x7364('0x35')](handleEntityNotFound(_0x5a667b,null))[_0x7364('0x35')](function(_0x12332f){if(_0x12332f){_0x5b9965[_0x7364('0x3a')]['AccountId']=_0x12332f['id'];_0x5b9965[_0x7364('0x3a')]['Subjects']=integrations[_0x7364('0x64')](_0x5b9965['body'][_0x7364('0x65')],_0x5b9965[_0x7364('0x3a')][_0x7364('0x44')]);_0x5b9965[_0x7364('0x3a')][_0x7364('0x66')]=integrations[_0x7364('0x67')](_0x5b9965[_0x7364('0x3a')][_0x7364('0x65')],_0x5b9965[_0x7364('0x3a')][_0x7364('0x44')]);return db[_0x7364('0x60')][_0x7364('0x5d')](_0x5b9965[_0x7364('0x3a')],{'include':[{'model':db[_0x7364('0x68')],'as':_0x7364('0x69')},{'model':db[_0x7364('0x68')],'as':_0x7364('0x66')}]});}return null;})[_0x7364('0x35')](respondWithResult(_0x5a667b,null))[_0x7364('0x57')](handleError(_0x5a667b,null));};exports['getFields']=function(_0x3ea4b5,_0x288e80,_0x316c08){var _0x5411a1='';var _0x110020=['id',_0x7364('0x37'),_0x7364('0x6a'),_0x7364('0x6b'),_0x7364('0x6c'),_0x7364('0x6d'),_0x7364('0x6e'),'duration_minutes','parent_id','parent_type','parent_name',_0x7364('0x6f')];return db['SugarcrmAccount'][_0x7364('0x5f')]({'where':{'id':_0x3ea4b5[_0x7364('0x59')]['id']},'attributes':['id',_0x7364('0x70'),_0x7364('0x71'),'remoteUri']})['then'](handleEntityNotFound(_0x288e80,null))[_0x7364('0x35')](function(_0x1582bb){if(_0x1582bb){_0x5411a1=_0x1582bb[_0x7364('0x72')];var _0x539cea=_0x5411a1['slice'](-0x1);if(_0x539cea==='/'){_0x5411a1=_0x5411a1[_0x7364('0x73')](0x0,_0x5411a1['lastIndexOf'](_0x539cea));}return rp({'method':_0x7364('0x74'),'uri':util['format'](_0x7364('0x75'),_0x5411a1,'/service/v4_1/rest.php'),'json':!![],'form':{'method':'login','input_type':_0x7364('0x76'),'response_type':_0x7364('0x76'),'rest_data':JSON[_0x7364('0x21')]({'user_auth':{'user_name':_0x1582bb[_0x7364('0x70')],'password':_0x1582bb[_0x7364('0x71')],'encryption':'PLAIN'},'application':_0x7364('0x77')})}});}})[_0x7364('0x35')](function(_0x597718){if(_0x597718&&_0x597718['name']!=='Invalid\x20Login'&&_0x597718[_0x7364('0x37')]!==_0x7364('0x78')){return rp({'method':_0x7364('0x74'),'uri':util['format'](_0x7364('0x75'),_0x5411a1,'/service/v4_1/rest.php'),'json':!![],'form':{'method':'get_module_fields','input_type':'JSON','response_type':'JSON','rest_data':JSON[_0x7364('0x21')]({'session':_0x597718['id'],'module_name':_0x7364('0x79')})}})['then'](function(_0x59fa26){if(_0x59fa26){var _0x8316b9=_[_0x7364('0x7a')](_0x59fa26[_0x7364('0x7b')]);_[_0x7364('0x7c')](_0x8316b9,function(_0x3ee580){return _0x110020['includes'](_0x3ee580[_0x7364('0x37')]);});return{'count':_0x8316b9[_0x7364('0x4b')],'rows':_[_0x7364('0x40')](_0x8316b9,function(_0x534918){return{'id':_0x534918[_0x7364('0x37')],'name':_0x534918[_0x7364('0x7d')],'custom':_['endsWith'](_0x534918[_0x7364('0x37')],'_c')?!![]:![],'options':_0x534918[_0x7364('0x53')]?_[_0x7364('0x40')](_[_0x7364('0x7a')](_0x534918[_0x7364('0x53')]),function(_0x5a206d){return{'name':_0x5a206d[_0x7364('0x7e')],'value':_0x5a206d[_0x7364('0x37')]};}):[]};})};}})['then'](respondWithResult(_0x288e80,null))[_0x7364('0x57')](function(_0x381eca){var _0x29787b=_0x3ea4b5[_0x7364('0x47')][_0x7364('0x7f')]?0x1f4:_0x381eca['statusCode']||0x1f4;logger[_0x7364('0x22')](_0x7364('0x80'),_0x7364('0x81'),_0x29787b,JSON[_0x7364('0x21')](_0x381eca));delete _0x381eca[_0x7364('0x37')];if(_0x29787b===0x191){_0x29787b=0x190;}_0x288e80['status'](_0x29787b)[_0x7364('0x38')](_0x3ea4b5[_0x7364('0x47')][_0x7364('0x7f')]?{'message':'Wrong\x20credentials','statusCode':_0x381eca[_0x7364('0x82')]}:_0x381eca);});}else{var _0x497964=0x1f4;_0x288e80[_0x7364('0x29')](_0x497964)[_0x7364('0x38')]({'message':'Wrong\x20credentials','statusCode':0x190});}});};