91a8564c733d5be48f05bea43eac4281ee833975
[motion2.git] / server / api / cmContact / cmContact.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 _0x5b02=['field','name','color','tools_tags','select','from','cm_contacts','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20c.id','cm_contact_has_tags','ct.CmContactId\x20=\x20c.id','c.deletedAt\x20IS\x20NULL','expr','search','parseSearch','sqlOperator','conditions','find','Tag','split','map','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','and','DATE','buildExpression','text','value','start','filter','isNil','isEmpty','ListId','concat','Contact','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\x20=\x20?','isArray','tag','replace','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','c.id','QueryTypes','SELECT','resolve','user','agent','some','User','getLists','c.ListId\x20IS\x20NULL','c.ListId\x20IN\x20?','role','sequelize','toString','keyBy','merge','c.firstName','c.lastName','c.phone','c.mobile','c.fax','c.ListId','c.createdAt','c.CompanyId','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','Tags','rows','catch','destroy','params','tags','startsWith','columnName','displayName','values','body','findAll','get','mergeWith','join','info','[CmContact][merge]\x20to\x20%s\x20from\x20%s','CmHopper','[CmContact][merge][destroy][CmHopper],\x20%s','CmHopperBlack','ChatInteraction','update','ChatMessage','ChatOfflineMessage','MailInteraction','MailMessage','SmsInteraction','SmsMessage','FaxInteraction','FaxMessage','OpenchannelInteraction','OpenchannelMessage','CmHopperFinal','CmHopperHistory','VoiceCallReport','ChatQueueReport','FaxQueueReport','MailQueueReport','OpenchannelQueueReport','WhatsappInteraction','WhatsappMessage','WhatsappQueueReport','create','bulkCreate','each','duplicates','$or','findOrCreate','show','omit','format','cf_%d','$and','pickBy','table','setFields','id\x20=\x20?','toParam','phone','getTags','rawAttributes','options','setTags','ids','getHoppers','ContactId','includeAll','include','getHopperFinals','getJscriptySessions','JscriptySessionReport','No\x20ListId\x20specified','binding_keys','No\x20association\x20keys\x20specified!','binding_values','No\x20association\x20values\x20specified!','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','Incorrect\x20binding\x20parameters\x20passed!','zipObject','No\x20phone\x20column\x20specified','root','server/files/tmp','file','filename','0777','child_process','fork','../../components/import/cm/csv','CompanyId','socket_timestamp','File\x20uploaded\x20correctly!','pid','createReadStream','meta','import','binding','firstName','../../components/import/cm/csv2','stringify','message','start\x20child\x20process\x20correctly!','exit','error\x20child\x20process','mail','chat','sms','openchannel','whatsapp','voice','-createdAt','channel','toLowerCase','Invalid\x20channel','range','isValid','Invalid\x20date\x20for\x20range\x20from\x20filter','Invalid\x20date\x20for\x20range\x20to\x20filter','Invalid\x20createdAt\x20filter','source','destination','callerid','starttime','endtime','duration','note','createdAt','userDisposition','userSecondDisposition','fullname','findAndCountAll','startCase','Website','Account','closed','closedAt','disposition','secondDisposition','thirdDisposition','Owner','DESC','browserName','customerPort','deviceModel','osName','ratingMessage','ratingType','ratingValue','referer','substatus','externalUrl','threadId','Interaction','flatten','sortBy','reverse','slice','html-pdf','eml-format','rimraf','zip-dir','moment','mustache','util','path','sox','to-csv','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./cmContact.socket','register','sendStatus','status','json','count','offset','limit','set','Content-Range','apply','reject','save','then','end','error','stack','send','index','CmContact','describe','cf_','push','CmCustomField','findOne','trimStart','all','length','fieldType','type','model','keys','query','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filters'];(function(_0x3fed4d,_0x1de49d){var _0x474d17=function(_0x22fc1e){while(--_0x22fc1e){_0x3fed4d['push'](_0x3fed4d['shift']());}};_0x474d17(++_0x1de49d);}(_0x5b02,0xe9));var _0x25b0=function(_0x3ee7ff,_0x25b12c){_0x3ee7ff=_0x3ee7ff-0x0;var _0x219644=_0x5b02[_0x3ee7ff];return _0x219644;};'use strict';var pdf=require(_0x25b0('0x0'));var emlformat=require(_0x25b0('0x1'));var rimraf=require(_0x25b0('0x2'));var zipdir=require(_0x25b0('0x3'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x25b0('0x4'));var BPromise=require('bluebird');var Mustache=require(_0x25b0('0x5'));var util=require(_0x25b0('0x6'));var path=require(_0x25b0('0x7'));var sox=require(_0x25b0('0x8'));var csv=require(_0x25b0('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x25b0('0xa'));var squel=require(_0x25b0('0xb'));var crypto=require('crypto');var jsforce=require(_0x25b0('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x25b0('0xd'));var Papa=require(_0x25b0('0xe'));var Redis=require(_0x25b0('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x25b0('0x10'));var as=require(_0x25b0('0x11'));var hardwareService=require(_0x25b0('0x12'));var logger=require(_0x25b0('0x13'))(_0x25b0('0x14'));var utils=require(_0x25b0('0x15'));var config=require(_0x25b0('0x16'));var licenseUtil=require(_0x25b0('0x17'));var db=require(_0x25b0('0x18'))['db'];config[_0x25b0('0x19')]=_[_0x25b0('0x1a')](config[_0x25b0('0x19')],{'host':_0x25b0('0x1b'),'port':0x18eb});var socket=require(_0x25b0('0x1c'))(new Redis(config[_0x25b0('0x19')]));require(_0x25b0('0x1d'))[_0x25b0('0x1e')](socket);function respondWithStatusCode(_0x211658,_0x418954){_0x418954=_0x418954||0xcc;return function(_0x3b89e7){if(_0x3b89e7){return _0x211658[_0x25b0('0x1f')](_0x418954);}return _0x211658['status'](_0x418954)['end']();};}function respondWithResult(_0xfe1ea6,_0x4b2357){_0x4b2357=_0x4b2357||0xc8;return function(_0xa8280a){if(_0xa8280a){return _0xfe1ea6[_0x25b0('0x20')](_0x4b2357)[_0x25b0('0x21')](_0xa8280a);}};}function respondWithFilteredResult(_0x3267b9,_0x5e3a3a){return function(_0x1d850f){if(_0x1d850f){var _0x213a77=_0x1d850f[_0x25b0('0x22')],_0x20762e=_0x5e3a3a['offset'],_0x385334=_0x5e3a3a[_0x25b0('0x23')]+_0x5e3a3a[_0x25b0('0x24')],_0xe750bf;if(_0x385334>=_0x213a77){_0x385334=_0x213a77;_0xe750bf=0xc8;}else{_0xe750bf=0xce;}_0x3267b9[_0x25b0('0x20')](_0xe750bf);return _0x3267b9[_0x25b0('0x25')](_0x25b0('0x26'),_0x20762e+'-'+_0x385334+'/'+_0x213a77)[_0x25b0('0x21')](_0x1d850f);}return null;};}function patchUpdates(_0x232be7){return function(_0x19599b){try{jsonpatch[_0x25b0('0x27')](_0x19599b,_0x232be7,!![]);}catch(_0x35939f){return BPromise[_0x25b0('0x28')](_0x35939f);}return _0x19599b[_0x25b0('0x29')]();};}function saveUpdates(_0x5cb746,_0x9f432e){return function(_0x16623c){if(_0x16623c){return _0x16623c['update'](_0x5cb746)[_0x25b0('0x2a')](function(_0x2023d8){return _0x2023d8;});}return null;};}function removeEntity(_0x3546f0,_0x498fef){return function(_0x4b87c9){if(_0x4b87c9){return _0x4b87c9['destroy']()[_0x25b0('0x2a')](function(){_0x3546f0[_0x25b0('0x20')](0xcc)[_0x25b0('0x2b')]();});}};}function handleEntityNotFound(_0x24f847,_0xdbb459){return function(_0x23b396){if(!_0x23b396){_0x24f847[_0x25b0('0x1f')](0x194);}return _0x23b396;};}function handleError(_0x75ce7a,_0x22e024){_0x22e024=_0x22e024||0x1f4;return function(_0x596d14){logger[_0x25b0('0x2c')](_0x596d14[_0x25b0('0x2d')]);if(_0x596d14['name']){delete _0x596d14['name'];}_0x75ce7a['status'](_0x22e024)[_0x25b0('0x2e')](_0x596d14);};}exports[_0x25b0('0x2f')]=function(_0x251fad,_0x105129){var _0x214377={},_0x3285ae={},_0x12676b={'count':0x0,'rows':[]};return db[_0x25b0('0x30')][_0x25b0('0x31')]()[_0x25b0('0x2a')](function(_0x1e217c){var _0x3161c1=[];for(var _0x1ea374=0x0;_0x1ea374<Object['keys'](_0x1e217c)['length'];_0x1ea374++){var _0x7ce48f=Object['keys'](_0x1e217c)[_0x1ea374];if(_['startsWith'](_0x7ce48f,_0x25b0('0x32'))){_0x3161c1[_0x25b0('0x33')](db[_0x25b0('0x34')][_0x25b0('0x35')]({'where':{'id':_[_0x25b0('0x36')](_0x7ce48f,'cf_')},'raw':!![]}));}}return BPromise[_0x25b0('0x37')](_0x3161c1)[_0x25b0('0x2a')](function(_0x4dad3a){for(var _0x13ce9=0x0;_0x13ce9<_0x4dad3a[_0x25b0('0x38')];_0x13ce9++){if(_0x4dad3a[_0x13ce9]){var _0x5004cd=_0x25b0('0x32')+_0x4dad3a[_0x13ce9]['id'];var _0x49b3a5=_0x1e217c[_0x5004cd];_0x49b3a5[_0x25b0('0x39')]=_0x4dad3a[_0x13ce9][_0x25b0('0x3a')];}}return _0x1e217c;});})[_0x25b0('0x2a')](function(_0x21db1c){_0x3285ae[_0x25b0('0x3b')]=_[_0x25b0('0x3c')](_0x21db1c);_0x3285ae[_0x25b0('0x3d')]=_[_0x25b0('0x3c')](_0x251fad[_0x25b0('0x3d')]);_0x3285ae['filters']=_[_0x25b0('0x3e')](_0x3285ae[_0x25b0('0x3b')],_0x3285ae[_0x25b0('0x3d')]);_0x214377[_0x25b0('0x3f')]=_[_0x25b0('0x3e')](_0x3285ae[_0x25b0('0x3b')],qs[_0x25b0('0x40')](_0x251fad[_0x25b0('0x3d')][_0x25b0('0x40')]));_0x214377[_0x25b0('0x3f')]=_0x214377['attributes'][_0x25b0('0x38')]?_0x214377[_0x25b0('0x3f')]:_0x3285ae[_0x25b0('0x3b')];if(!_0x251fad['query'][_0x25b0('0x41')](_0x25b0('0x42'))){_0x214377[_0x25b0('0x24')]=qs[_0x25b0('0x24')](_0x251fad[_0x25b0('0x3d')][_0x25b0('0x24')]);_0x214377[_0x25b0('0x23')]=qs[_0x25b0('0x23')](_0x251fad['query']['offset']);}_0x214377[_0x25b0('0x43')]=qs[_0x25b0('0x44')](_0x251fad[_0x25b0('0x3d')]['sort']);_0x214377[_0x25b0('0x45')]=qs['filters'](_[_0x25b0('0x46')](_0x251fad[_0x25b0('0x3d')],_0x3285ae[_0x25b0('0x47')]),_0x21db1c);var _0x255e31=[];var _0x8a2eeb=squel['select']()[_0x25b0('0x48')]('id')[_0x25b0('0x48')](_0x25b0('0x49'))[_0x25b0('0x48')](_0x25b0('0x4a'))['from'](_0x25b0('0x4b'));var _0x1e39ca=squel[_0x25b0('0x4c')]()[_0x25b0('0x4d')](_0x25b0('0x4e'),'c')[_0x25b0('0x4f')](_0x25b0('0x50'),'uc',_0x25b0('0x51'))[_0x25b0('0x4f')](_0x25b0('0x52'),'ct',_0x25b0('0x53'))['left_join'](_0x25b0('0x4b'),'t','t.id\x20=\x20ct.TagId')[_0x25b0('0x45')](_0x25b0('0x54'));var _0x1e865a=squel[_0x25b0('0x55')]();var _0x5d3af9=[];var _0x1f868a=squel[_0x25b0('0x55')]();var _0x2d40c6;if(_0x251fad['query'][_0x25b0('0x56')]){_0x2d40c6=as[_0x25b0('0x57')](_0x251fad[_0x25b0('0x3d')][_0x25b0('0x56')]);var _0x3b6679=_0x2d40c6[_0x25b0('0x58')];for(var _0x28bdc4=0x0;_0x28bdc4<_0x2d40c6['conditions'][_0x25b0('0x38')];_0x28bdc4++){var _0x295193=_0x2d40c6[_0x25b0('0x59')][_0x28bdc4];var _0x5ad32a='c';var _0xbaeb06=_(_0x21db1c)[_0x25b0('0x3c')]()[_0x25b0('0x5a')](function(_0x4664af){return _0x4664af===_0x295193[_0x25b0('0x48')];});if(_0xbaeb06)_0xbaeb06=_0x21db1c[_0x295193['field']];if(!_0xbaeb06){if(_0x295193[_0x25b0('0x48')]===_0x25b0('0x5b')){var _0x23de77=_0x295193['value'][_0x25b0('0x5c')](',')[_0x25b0('0x5d')](function(_0x1fea01){return Number(_0x1fea01);});_0x23de77[_0x25b0('0x5e')](function(_0x29165e){_0x1f868a['or'](_0x25b0('0x5f'),'%,'+_0x29165e+',%');});_0x5d3af9=_['union'](_0x5d3af9,_0x23de77);}else if(_0x295193['field']==='User'){_0x1e865a[_0x25b0('0x60')]('uc.UserId\x20=\x20?',_0x295193['value']);}}else{if(_0x295193[_0x25b0('0x48')]==='dateOfBirth'||_0xbaeb06[_0x25b0('0x39')]==='datetime')_0x295193['castTo']=_0x25b0('0x61');var _0x14a8a7=as[_0x25b0('0x62')](_0x5ad32a,_0xbaeb06[_0x25b0('0x3a')],_0x295193);_0x1e865a[_0x3b6679](_0x14a8a7[_0x25b0('0x63')],_0x14a8a7[_0x25b0('0x64')][_0x25b0('0x65')],_0x14a8a7[_0x25b0('0x64')][_0x25b0('0x2b')]);}}}else{var _0x20d56f=_(Object['keys'](_0x251fad['query']))['map'](function(_0xf1e6bf){return _0x21db1c[_0x25b0('0x41')](_0xf1e6bf)?_0xf1e6bf:undefined;})[_0x25b0('0x66')](function(_0x422d9d){return!_[_0x25b0('0x67')](_0x422d9d);})[_0x25b0('0x64')]();if(_0x251fad[_0x25b0('0x3d')]['Contact'])_0x20d56f[_0x25b0('0x33')]('Contact');if(!_[_0x25b0('0x68')](_0x20d56f)){_0x20d56f['forEach'](function(_0x488df6){if(_0x488df6===_0x25b0('0x69')){_0x1e39ca['where']('c.ListId\x20IN\x20?',[][_0x25b0('0x6a')](_0x251fad[_0x25b0('0x3d')][_0x488df6]));}else if(_0x488df6===_0x25b0('0x6b')){var _0x3c190e='%'+_0x251fad[_0x25b0('0x3d')][_0x488df6]+'%';_0x1e39ca[_0x25b0('0x45')](_0x25b0('0x6c'),_0x3c190e);}else{_0x1e39ca[_0x25b0('0x45')]('c.'+_0x488df6+_0x25b0('0x6d'),_0x251fad[_0x25b0('0x3d')][_0x488df6]);}});}if(_0x251fad['query']['tag']){_0x5d3af9=_[_0x25b0('0x6e')](_0x251fad[_0x25b0('0x3d')]['tag'])?_0x251fad[_0x25b0('0x3d')][_0x25b0('0x6f')]:new Array(_0x251fad[_0x25b0('0x3d')][_0x25b0('0x6f')]);_0x5d3af9[_0x25b0('0x5e')](function(_0x4cce6a){_0x1f868a['or'](_0x25b0('0x5f'),'%,'+_0x4cce6a+',%');});}if(_0x251fad[_0x25b0('0x3d')][_0x25b0('0x66')]){var _0x5b39d3=_0x251fad[_0x25b0('0x3d')][_0x25b0('0x66')][_0x25b0('0x70')]('\x5c','\x5c\x5c')[_0x25b0('0x70')](/'/g,'\x27\x27');if(_0x5b39d3[_0x25b0('0x5c')]('\x20')[_0x25b0('0x38')]>0x1){_0x1e865a['or'](_0x25b0('0x71'),qs[_0x25b0('0x72')](_0x5b39d3),null);}else{if(qs[_0x25b0('0x73')](_0x5b39d3)){_0x1e865a['or'](_0x25b0('0x74'),_0x5b39d3+'%');_0x1e865a['or'](_0x25b0('0x75'),_0x5b39d3+'%');_0x1e865a['or'](_0x25b0('0x76'),_0x5b39d3+'%');_0x1e865a['or'](_0x25b0('0x77'),_0x5b39d3+'%');}else if(qs[_0x25b0('0x78')](_0x5b39d3)){_0x1e865a['or']('c.email\x20LIKE\x20?',_0x5b39d3+'%');}else{_0x1e865a['or'](_0x25b0('0x79'),'%'+_0x5b39d3+'%');_0x1e865a['or'](_0x25b0('0x7a'),'%'+_0x5b39d3+'%');_0x1e865a['or']('c.email\x20LIKE\x20?','%'+_0x5b39d3+'%');}}}}_0x1e39ca[_0x25b0('0x45')](_0x1e865a);_0x1e39ca['group'](_0x25b0('0x7b'));var _0x36d918={'type':db['Sequelize'][_0x25b0('0x7c')][_0x25b0('0x7d')],'raw':!![]};var _0x25fab4=_0x1e39ca['clone']()[_0x25b0('0x48')]('c.id');if(_0x214377[_0x25b0('0x43')]){_0x214377[_0x25b0('0x43')]['forEach'](function(_0x2cfe82){_0x1e39ca[_0x25b0('0x43')]('c.'+_0x2cfe82[0x0],_0x2cfe82[0x1]==='DESC'?![]:!![]);});}if(!_[_0x25b0('0x68')](_0x5d3af9)){_0x1e39ca['having'](_0x1f868a);_0x25fab4['where']('t.id\x20IN\x20?',_0x5d3af9);}BPromise[_0x25b0('0x7e')]()[_0x25b0('0x2a')](function(){if(!_0x2d40c6)return;if(_0x251fad[_0x25b0('0x7f')]['role']!==_0x25b0('0x80'))return;if(!_[_0x25b0('0x81')](_0x2d40c6[_0x25b0('0x59')],[_0x25b0('0x48'),_0x25b0('0x82')])){return _0x251fad[_0x25b0('0x7f')][_0x25b0('0x83')]({'attributes':['id'],'raw':!![]})[_0x25b0('0x2a')](function(_0x15f56a){if(_[_0x25b0('0x68')](_0x15f56a)){_0x25fab4[_0x25b0('0x45')](_0x25b0('0x84'));_0x1e39ca[_0x25b0('0x45')](_0x25b0('0x84'));}else{_0x25fab4[_0x25b0('0x45')](_0x25b0('0x85'),_[_0x25b0('0x5d')](_0x15f56a,'id'));_0x1e39ca['where'](_0x25b0('0x85'),_['map'](_0x15f56a,'id'));}});}})[_0x25b0('0x2a')](function(){if(_0x251fad[_0x25b0('0x7f')][_0x25b0('0x86')]===_0x25b0('0x80')&&!_0x2d40c6&&!_0x251fad['query'][_0x25b0('0x69')])return[];return db[_0x25b0('0x87')][_0x25b0('0x3d')](_0x25fab4[_0x25b0('0x88')](),_0x36d918);})[_0x25b0('0x2a')](function(_0x19e49c){_0x12676b['count']=_0x19e49c['length'];if(_0x12676b[_0x25b0('0x22')]===0x0)return[];return db['sequelize'][_0x25b0('0x3d')](_0x8a2eeb[_0x25b0('0x88')](),_0x36d918)[_0x25b0('0x2a')](function(_0x5279ab){_0x255e31=_[_0x25b0('0x89')](_0x5279ab,'id');_0x36d918=_[_0x25b0('0x8a')](_0x36d918,{'model':db[_0x25b0('0x30')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x251fad[_0x25b0('0x3d')]['fields']){_0x214377[_0x25b0('0x3f')][_0x25b0('0x5e')](function(_0x2a06c6){_0x1e39ca['field']('c.'+_0x2a06c6);});}else{_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x7b'));_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x8b'));_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x8c'));_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x8d'));_0x1e39ca['field'](_0x25b0('0x8e'));_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x8f'));_0x1e39ca[_0x25b0('0x48')]('c.email');_0x1e39ca['field'](_0x25b0('0x90'));_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x91'));_0x1e39ca[_0x25b0('0x48')]('c.deletedAt');_0x1e39ca[_0x25b0('0x48')](_0x25b0('0x92'));_0x1e39ca['field'](_0x25b0('0x93'),_0x25b0('0x94'));}if(_0x214377['limit'])_0x1e39ca['limit'](_0x214377[_0x25b0('0x24')]);if(_0x214377[_0x25b0('0x23')])_0x1e39ca[_0x25b0('0x23')](_0x214377[_0x25b0('0x23')]);return db[_0x25b0('0x87')][_0x25b0('0x3d')](_0x1e39ca[_0x25b0('0x88')](),_0x36d918);});})[_0x25b0('0x2a')](function(_0x23028c){_0x23028c[_0x25b0('0x5e')](function(_0x2a69ca){if(_0x2a69ca[_0x25b0('0x94')]){_0x2a69ca[_0x25b0('0x95')]=[];_0x2a69ca['TagIds'][_0x25b0('0x5c')](',')['forEach'](function(_0x472ae1){_0x2a69ca[_0x25b0('0x95')]['push'](_0x255e31[_0x472ae1]);});}delete _0x2a69ca[_0x25b0('0x94')];});_0x12676b[_0x25b0('0x96')]=_0x23028c;return _0x12676b;})[_0x25b0('0x2a')](respondWithFilteredResult(_0x105129,_0x214377));})[_0x25b0('0x97')](handleError(_0x105129,null));};exports[_0x25b0('0x98')]=function(_0x112c46,_0x1854f1){return db[_0x25b0('0x30')][_0x25b0('0x5a')]({'where':{'id':_0x112c46[_0x25b0('0x99')]['id']}})[_0x25b0('0x2a')](handleEntityNotFound(_0x1854f1,null))['then'](removeEntity(_0x1854f1,null))['catch'](handleError(_0x1854f1,null));};exports[_0x25b0('0x31')]=function(_0xe3b71,_0x5d3202){return db['CmContact'][_0x25b0('0x31')]()['then'](function(_0x329f38){delete _0x329f38[_0x25b0('0x9a')];for(var _0x5d798d=0x0;_0x5d798d<Object[_0x25b0('0x3c')](_0x329f38)[_0x25b0('0x38')];_0x5d798d++){var _0x4c9354=Object[_0x25b0('0x3c')](_0x329f38)[_0x5d798d];if(!_[_0x25b0('0x9b')](_0x4c9354,_0x25b0('0x32'))){_0x329f38[_0x4c9354][_0x25b0('0x9c')]=_0x4c9354;_0x329f38[_0x4c9354][_0x25b0('0x9d')]=_0x4c9354;}}return _0x329f38;})['then'](function(_0x5d22b0){var _0x183875={'where':{'$or':[{'ListId':_0xe3b71['query']['id']},{'ListId':null}]},'raw':!![]};return db['CmCustomField']['findAll'](_0x183875)[_0x25b0('0x2a')](function(_0x144464){for(var _0x148685=0x0;_0x148685<_0x144464['length'];_0x148685++){var _0x57f494=_0x25b0('0x32')+_0x144464[_0x148685]['id'];_0x5d22b0[_0x57f494][_0x25b0('0x9c')]=_0x57f494;_0x5d22b0[_0x57f494]['displayName']=_0x144464[_0x148685]['alias'];_0x5d22b0[_0x57f494]['custom']={'type':_0x144464[_0x148685][_0x25b0('0x3a')],'values':_0x144464[_0x148685][_0x25b0('0x9e')]};}Object[_0x25b0('0x3c')](_0x5d22b0)[_0x25b0('0x5e')](function(_0x4ecdd8){if(!_0x5d22b0[_0x4ecdd8][_0x25b0('0x41')](_0x25b0('0x9c'))){delete _0x5d22b0[_0x4ecdd8];}});return _0x5d22b0;});})[_0x25b0('0x2a')](respondWithResult(_0x5d3202,null))[_0x25b0('0x97')](handleError(_0x5d3202,null));};exports[_0x25b0('0x8a')]=function(_0x19642b,_0x47552d){var _0x270186;var _0x3837e3;var _0x21722b;if(_0x19642b[_0x25b0('0x9f')]['id']){delete _0x19642b[_0x25b0('0x9f')]['id'];}return db[_0x25b0('0x30')][_0x25b0('0xa0')]({'where':{'id':[_0x19642b[_0x25b0('0x9f')]['to'],_0x19642b[_0x25b0('0x9f')][_0x25b0('0x4d')]]}})[_0x25b0('0x2a')](function(_0x54065f){if(_0x54065f){if(_0x54065f['length']!==0x2){return null;}_0x54065f[0x0]=_0x54065f[0x0][_0x25b0('0xa1')]({'plain':!![]});_0x54065f[0x1]=_0x54065f[0x1]['get']({'plain':!![]});delete _0x54065f[0x0]['id'];delete _0x54065f[0x1]['id'];return _[_0x25b0('0xa2')](_0x54065f[0x0],_0x54065f[0x1],function(_0x53908c,_0x494088){if(Array['isArray'](_0x494088)&&!_0x494088['length']){return _0x53908c;}else if(!_0x494088){return _0x53908c;}});}})['then'](handleEntityNotFound(_0x47552d,null))[_0x25b0('0x2a')](function(_0x10e42a){if(_0x10e42a){if(_0x10e42a[_0x25b0('0x9a')]&&_['isArray'](_0x10e42a[_0x25b0('0x9a')])){_0x10e42a[_0x25b0('0x9a')]=_0x10e42a['tags'][_0x25b0('0xa3')]();}logger[_0x25b0('0xa4')](_0x25b0('0xa5'),_0x19642b[_0x25b0('0x9f')]['to'],_0x19642b[_0x25b0('0x9f')][_0x25b0('0x4d')]);return db[_0x25b0('0xa6')][_0x25b0('0x98')]({'where':{'ContactId':[_0x19642b[_0x25b0('0x9f')]['to'],_0x19642b[_0x25b0('0x9f')][_0x25b0('0x4d')]]}})[_0x25b0('0x2a')](function(_0x112a28){logger[_0x25b0('0xa4')](_0x25b0('0xa7'),_0x112a28);return db[_0x25b0('0xa8')][_0x25b0('0x98')]({'where':{'ContactId':[_0x19642b['body']['to'],_0x19642b[_0x25b0('0x9f')][_0x25b0('0x4d')]]}})[_0x25b0('0x2a')](function(_0x2a6a2a){logger[_0x25b0('0xa4')]('[CmContact][merge][destroy][CmHopperBlack],\x20%s',_0x2a6a2a);return db[_0x25b0('0x30')]['create'](_0x10e42a);});});}})[_0x25b0('0x2a')](function(_0x514269){if(_0x514269){_0x270186=_0x514269;_0x3837e3={'ContactId':_0x270186['id']};_0x21722b={'where':{'ContactId':[_0x19642b['body']['to'],_0x19642b[_0x25b0('0x9f')]['from']]}};return db[_0x25b0('0xa9')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db[_0x25b0('0xab')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xac')]['update'](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xad')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db[_0x25b0('0xae')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xad')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db['MailMessage'][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xaf')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb0')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb1')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb2')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db[_0x25b0('0xb3')]['update'](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb4')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb5')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db[_0x25b0('0xb6')]['update'](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db['ReportAgentPreview'][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb7')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xb8')]['update'](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db[_0x25b0('0xb9')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xba')]['update'](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xbb')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db['SmsQueueReport'][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db['JscriptySessionReport'][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xbc')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xbd')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})[_0x25b0('0x2a')](function(){if(_0x270186){return db[_0x25b0('0xbe')][_0x25b0('0xaa')](_0x3837e3,_0x21722b);}})['then'](function(){if(_0x270186){return db[_0x25b0('0x30')]['destroy']({'where':{'id':[_0x19642b[_0x25b0('0x9f')]['to'],_0x19642b[_0x25b0('0x9f')][_0x25b0('0x4d')]]}});}})[_0x25b0('0x2a')](function(){if(_0x270186){return _0x270186;}})[_0x25b0('0x2a')](respondWithResult(_0x47552d,null))['catch'](handleError(_0x47552d,null));};exports[_0x25b0('0xbf')]=function(_0x477d3d,_0x127db0){return db[_0x25b0('0x30')][_0x25b0('0x31')]()['then'](function(_0x58afc2){if(_0x477d3d[_0x25b0('0x9f')][_0x25b0('0x9a')]&&_[_0x25b0('0x6e')](_0x477d3d[_0x25b0('0x9f')]['tags'])){if(_0x477d3d[_0x25b0('0x9f')]['tags'][_0x25b0('0x38')]){_0x477d3d[_0x25b0('0x9f')][_0x25b0('0x9a')]=_0x477d3d[_0x25b0('0x9f')][_0x25b0('0x9a')][_0x25b0('0xa3')](';')+';';}else{_0x477d3d[_0x25b0('0x9f')][_0x25b0('0x9a')]=null;}}else{_0x477d3d[_0x25b0('0x9f')]['tags']=null;}return db[_0x25b0('0x30')]['create'](_0x477d3d[_0x25b0('0x9f')],{'fields':_[_0x25b0('0x3c')](_0x58afc2),'raw':!![]});})[_0x25b0('0x2a')](respondWithResult(_0x127db0,0xc9))[_0x25b0('0x97')](handleError(_0x127db0,null));};exports[_0x25b0('0xc0')]=function(_0x49233f,_0x18590d){var _0x375f5f=[];var _0x164af4=0x0;var _0x40d6fb=0x0;var _0x50dbb7=0x0;return db['CmContact'][_0x25b0('0x31')]()[_0x25b0('0x2a')](function(_0x2b3c95){return BPromise[_0x25b0('0xc1')](_0x49233f['body'],function(_0x59cff2){var _0x207078={'where':{'$or':[]},'defaults':_0x59cff2,'fields':_['keys'](_0x2b3c95),'raw':!![]};if(_0x59cff2[_0x25b0('0xc2')]){for(var _0x13d0fe=0x0;_0x13d0fe<_0x59cff2[_0x25b0('0xc2')][_0x25b0('0x38')];_0x13d0fe++){var _0x203e4e={};_0x203e4e[_0x59cff2['duplicates'][_0x13d0fe]]=_0x59cff2[_0x59cff2[_0x25b0('0xc2')][_0x13d0fe]];_0x207078[_0x25b0('0x45')][_0x25b0('0xc3')]['push'](_0x203e4e);}_0x207078[_0x25b0('0x45')][_0x25b0('0x69')]=_0x59cff2[_0x25b0('0x69')];}return db['CmContact'][_0x25b0('0xc4')](_0x207078)['spread'](function(_0x508ef3,_0x401907){if(_0x401907){_0x164af4++;}else{_0x50dbb7++;}})[_0x25b0('0x97')](function(_0x584acd){console[_0x25b0('0x2c')](_0x584acd);_0x40d6fb++;});});})['then'](function(_0x35d3f5){if(_0x35d3f5){return{'success':_0x164af4,'failure':_0x40d6fb,'duplicates':_0x50dbb7};}})['then'](respondWithResult(_0x18590d,0xc9))['catch'](handleError(_0x18590d,null));};exports[_0x25b0('0xc5')]=function(_0x778c7c,_0x224cf7,_0x4539bf){var _0x4d2b92;return db[_0x25b0('0x30')]['describe']()[_0x25b0('0x2a')](function(_0x149d79){return db[_0x25b0('0x30')][_0x25b0('0x5a')]({'where':{'id':_0x778c7c[_0x25b0('0x99')]['id']},'include':[{'model':db[_0x25b0('0x5b')],'as':_0x25b0('0x95'),'attributes':['id',_0x25b0('0x49'),_0x25b0('0x4a')],'required':_0x778c7c['query'][_0x25b0('0x6f')]?!![]:![]}],'attributes':_[_0x25b0('0x3c')](_0x149d79)});})[_0x25b0('0x2a')](function(_0x4727c1){_0x4d2b92=_0x4727c1[_0x25b0('0xa1')]({'plain':!![]});var _0x275df6={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x4727c1&&_0x4727c1[_0x25b0('0x69')]){if(_0x4727c1[_0x25b0('0x69')]){_0x275df6[_0x25b0('0x45')]['$and']['push']({'ListId':{'$ne':_0x4727c1[_0x25b0('0x69')]}});}}return db[_0x25b0('0x34')][_0x25b0('0xa0')](_0x275df6);})[_0x25b0('0x2a')](function(_0x31edba){return _[_0x25b0('0xc6')](_0x4d2b92,_[_0x25b0('0x5d')](_0x31edba,function(_0x5219fb){return util[_0x25b0('0xc7')](_0x25b0('0xc8'),_0x5219fb['id']);}));})[_0x25b0('0x2a')](handleEntityNotFound(_0x224cf7,null))['then'](respondWithResult(_0x224cf7,null))[_0x25b0('0x97')](handleError(_0x224cf7,null));};exports[_0x25b0('0xaa')]=function(_0x38534c,_0x4db8a4){var _0x30c1f7;if(_0x38534c[_0x25b0('0x9f')]['id']){delete _0x38534c[_0x25b0('0x9f')]['id'];}return db['CmContact'][_0x25b0('0x5a')]({'where':{'id':_0x38534c[_0x25b0('0x99')]['id']}})['then'](handleEntityNotFound(_0x4db8a4,null))[_0x25b0('0x2a')](saveUpdates(_0x38534c[_0x25b0('0x9f')],null))['then'](function(_0x1fedc9){_0x30c1f7=_0x1fedc9;var _0x26b8f6={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x1fedc9&&_0x1fedc9[_0x25b0('0x69')]){if(_0x1fedc9[_0x25b0('0x69')]){_0x26b8f6['where'][_0x25b0('0xc9')][_0x25b0('0x33')]({'ListId':{'$ne':_0x1fedc9[_0x25b0('0x69')]}});}}return db[_0x25b0('0x34')][_0x25b0('0xa0')](_0x26b8f6);})[_0x25b0('0x2a')](function(_0x391778){if(_0x391778){return _[_0x25b0('0xc6')](_[_0x25b0('0xca')](_0x38534c[_0x25b0('0x9f')],function(_0x570ceb,_0x547f76){return _[_0x25b0('0x9b')](_0x547f76,'cf_');}),_[_0x25b0('0x5d')](_0x391778,function(_0x42986f){return util[_0x25b0('0xc7')](_0x25b0('0xc8'),_0x42986f['id']);}));}})['then'](function(_0x3c810c){if(_0x3c810c&&!_[_0x25b0('0x68')](_0x3c810c)){var _0x5c88d9=squel[_0x25b0('0xaa')]()[_0x25b0('0xcb')](_0x25b0('0x4e'))[_0x25b0('0xcc')](_0x3c810c)[_0x25b0('0x45')](_0x25b0('0xcd'),_0x38534c[_0x25b0('0x99')]['id'])[_0x25b0('0xce')]();return db[_0x25b0('0x87')]['query'](_0x5c88d9[_0x25b0('0x63')],{'replacements':_0x5c88d9[_0x25b0('0x9e')]});}})['then'](function(){if(_0x38534c[_0x25b0('0x9f')][_0x25b0('0xcf')]&&_0x30c1f7){return db[_0x25b0('0xa6')][_0x25b0('0xaa')]({'phone':_0x38534c[_0x25b0('0x9f')][_0x25b0('0xcf')]},{'where':{'ContactId':_0x30c1f7['id']}});}})[_0x25b0('0x2a')](function(){return _0x30c1f7;})[_0x25b0('0x2a')](respondWithResult(_0x4db8a4,null))['catch'](handleError(_0x4db8a4,null));};exports[_0x25b0('0xd0')]=function(_0x197800,_0x267b4d,_0x2aa27f){var _0x59d333={};var _0xb77793={};var _0x12e20d;var _0x375233;return db[_0x25b0('0x30')][_0x25b0('0x35')]({'where':{'id':_0x197800[_0x25b0('0x99')]['id']}})[_0x25b0('0x2a')](handleEntityNotFound(_0x267b4d,null))[_0x25b0('0x2a')](function(_0x5870fc){if(_0x5870fc){_0x12e20d=_0x5870fc;_0xb77793[_0x25b0('0x3b')]=_['keys'](db[_0x25b0('0x5b')][_0x25b0('0xd1')]);_0xb77793['query']=_['keys'](_0x197800[_0x25b0('0x3d')]);_0xb77793['filters']=_[_0x25b0('0x3e')](_0xb77793[_0x25b0('0x3b')],_0xb77793[_0x25b0('0x3d')]);_0x59d333[_0x25b0('0x3f')]=_['intersection'](_0xb77793[_0x25b0('0x3b')],qs[_0x25b0('0x40')](_0x197800[_0x25b0('0x3d')][_0x25b0('0x40')]));_0x59d333[_0x25b0('0x3f')]=_0x59d333['attributes'][_0x25b0('0x38')]?_0x59d333[_0x25b0('0x3f')]:_0xb77793[_0x25b0('0x3b')];_0x59d333[_0x25b0('0x43')]=qs[_0x25b0('0x44')](_0x197800[_0x25b0('0x3d')]['sort']);_0x59d333['where']=qs[_0x25b0('0x47')](_[_0x25b0('0x46')](_0x197800[_0x25b0('0x3d')],_0xb77793['filters']));if(_0x197800[_0x25b0('0x3d')][_0x25b0('0x66')]){_0x59d333[_0x25b0('0x45')]=_[_0x25b0('0x8a')](_0x59d333[_0x25b0('0x45')],{'$or':_['map'](_0x59d333[_0x25b0('0x3f')],function(_0x38219f){var _0xb10bb4={};_0xb10bb4[_0x38219f]={'$like':'%'+_0x197800['query'][_0x25b0('0x66')]+'%'};return _0xb10bb4;})});}_0x59d333=_[_0x25b0('0x8a')]({},_0x59d333,_0x197800[_0x25b0('0xd2')]);return _0x12e20d['getTags'](_0x59d333);}})[_0x25b0('0x2a')](function(_0x569009){if(_0x569009){_0x375233=_0x569009[_0x25b0('0x38')];if(!_0x197800['query'][_0x25b0('0x41')](_0x25b0('0x42'))){_0x59d333[_0x25b0('0x24')]=qs[_0x25b0('0x24')](_0x197800['query']['limit']);_0x59d333[_0x25b0('0x23')]=qs[_0x25b0('0x23')](_0x197800[_0x25b0('0x3d')]['offset']);}return _0x12e20d['getTags'](_0x59d333);}})[_0x25b0('0x2a')](function(_0x57b8dc){if(_0x57b8dc){return _0x57b8dc?{'count':_0x375233,'rows':_0x57b8dc}:null;}})[_0x25b0('0x2a')](respondWithResult(_0x267b4d,null))['catch'](handleError(_0x267b4d,null));};exports[_0x25b0('0xd3')]=function(_0x1871c2,_0x4f9f2d,_0x36366c){if(_0x1871c2[_0x25b0('0x9f')]['id']){delete _0x1871c2[_0x25b0('0x9f')]['id'];}return db['CmContact']['findOne']({'where':{'id':_0x1871c2[_0x25b0('0x99')]['id']}})['then'](handleEntityNotFound(_0x4f9f2d,null))['then'](function(_0x574915){if(_0x574915){return _0x574915[_0x25b0('0xd3')](_0x1871c2[_0x25b0('0x9f')][_0x25b0('0xd4')]||[]);}return null;})[_0x25b0('0x2a')](respondWithResult(_0x4f9f2d,null))[_0x25b0('0x97')](handleError(_0x4f9f2d,null));};exports[_0x25b0('0xd5')]=function(_0x4dc3f9,_0x56d12a,_0x406a52){var _0x4da465={'raw':![],'where':{}};var _0x1497f={};var _0x16ce89={'count':0x0,'rows':[]};return db[_0x25b0('0x30')][_0x25b0('0x35')]({'where':{'id':_0x4dc3f9[_0x25b0('0x99')]['id']}})['then'](handleEntityNotFound(_0x56d12a,null))['then'](function(_0x1c3e46){if(_0x1c3e46){_0x1497f[_0x25b0('0x3b')]=_[_0x25b0('0x3c')](db[_0x25b0('0xa6')][_0x25b0('0xd1')]);_0x1497f[_0x25b0('0x3d')]=_[_0x25b0('0x3c')](_0x4dc3f9[_0x25b0('0x3d')]);_0x1497f[_0x25b0('0x47')]=_['intersection'](_0x1497f[_0x25b0('0x3b')],_0x1497f['query']);_0x4da465[_0x25b0('0x3f')]=_[_0x25b0('0x3e')](_0x1497f[_0x25b0('0x3b')],qs['fields'](_0x4dc3f9['query'][_0x25b0('0x40')]));_0x4da465[_0x25b0('0x3f')]=_0x4da465['attributes']['length']?_0x4da465[_0x25b0('0x3f')]:_0x1497f['model'];if(!_0x4dc3f9[_0x25b0('0x3d')]['hasOwnProperty']('nolimit')){_0x4da465[_0x25b0('0x24')]=qs['limit'](_0x4dc3f9['query'][_0x25b0('0x24')]);_0x4da465[_0x25b0('0x23')]=qs[_0x25b0('0x23')](_0x4dc3f9[_0x25b0('0x3d')][_0x25b0('0x23')]);}_0x4da465[_0x25b0('0x43')]=qs['sort'](_0x4dc3f9['query'][_0x25b0('0x44')]);_0x4da465[_0x25b0('0x45')]=qs[_0x25b0('0x47')](_[_0x25b0('0x46')](_0x4dc3f9[_0x25b0('0x3d')],_0x1497f['filters']));_0x4da465['where'][_0x25b0('0xd6')]=_0x1c3e46['id'];if(_0x4dc3f9[_0x25b0('0x3d')][_0x25b0('0x66')]){_0x4da465[_0x25b0('0x45')]=_[_0x25b0('0x8a')](_0x4da465[_0x25b0('0x45')],{'$or':_['map'](_0x4da465[_0x25b0('0x3f')],function(_0x51b251){var _0x3e4803={};_0x3e4803[_0x51b251]={'$like':'%'+_0x4dc3f9[_0x25b0('0x3d')][_0x25b0('0x66')]+'%'};return _0x3e4803;})});}_0x4da465=_['merge']({},_0x4da465,_0x4dc3f9['options']);return db['CmHopper'][_0x25b0('0x22')]({'where':_0x4da465[_0x25b0('0x45')]})['then'](function(_0x141773){_0x16ce89['count']=_0x141773;if(_0x4dc3f9[_0x25b0('0x3d')][_0x25b0('0xd7')]){_0x4da465[_0x25b0('0xd8')]=[{'all':!![]}];}return db[_0x25b0('0xa6')][_0x25b0('0xa0')](_0x4da465);})[_0x25b0('0x2a')](function(_0xddc1dd){_0x16ce89['rows']=_0xddc1dd;return _0x16ce89;});}})[_0x25b0('0x2a')](respondWithFilteredResult(_0x56d12a,_0x4da465))[_0x25b0('0x97')](handleError(_0x56d12a,null));};exports['getHopperHistories']=function(_0xa762f5,_0x5877e7,_0x175554){var _0xffc1dd={'raw':!![],'where':{}};var _0x4404aa={};var _0x3c11f1={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0xa762f5[_0x25b0('0x99')]['id']}})[_0x25b0('0x2a')](handleEntityNotFound(_0x5877e7,null))['then'](function(_0x1fdc8a){if(_0x1fdc8a){_0x4404aa['model']=_[_0x25b0('0x3c')](db[_0x25b0('0xb6')][_0x25b0('0xd1')]);_0x4404aa[_0x25b0('0x3d')]=_[_0x25b0('0x3c')](_0xa762f5['query']);_0x4404aa['filters']=_[_0x25b0('0x3e')](_0x4404aa[_0x25b0('0x3b')],_0x4404aa['query']);_0xffc1dd[_0x25b0('0x3f')]=_['intersection'](_0x4404aa['model'],qs[_0x25b0('0x40')](_0xa762f5[_0x25b0('0x3d')]['fields']));_0xffc1dd[_0x25b0('0x3f')]=_0xffc1dd[_0x25b0('0x3f')][_0x25b0('0x38')]?_0xffc1dd[_0x25b0('0x3f')]:_0x4404aa['model'];if(!_0xa762f5[_0x25b0('0x3d')]['hasOwnProperty'](_0x25b0('0x42'))){_0xffc1dd[_0x25b0('0x24')]=qs[_0x25b0('0x24')](_0xa762f5[_0x25b0('0x3d')][_0x25b0('0x24')]);_0xffc1dd[_0x25b0('0x23')]=qs[_0x25b0('0x23')](_0xa762f5[_0x25b0('0x3d')][_0x25b0('0x23')]);}_0xffc1dd[_0x25b0('0x43')]=qs[_0x25b0('0x44')](_0xa762f5[_0x25b0('0x3d')][_0x25b0('0x44')]);_0xffc1dd[_0x25b0('0x45')]=qs[_0x25b0('0x47')](_[_0x25b0('0x46')](_0xa762f5[_0x25b0('0x3d')],_0x4404aa[_0x25b0('0x47')]));_0xffc1dd[_0x25b0('0x45')]['ContactId']=_0x1fdc8a['id'];if(_0xa762f5[_0x25b0('0x3d')]['filter']){_0xffc1dd[_0x25b0('0x45')]=_['merge'](_0xffc1dd['where'],{'$or':_[_0x25b0('0x5d')](_0xffc1dd[_0x25b0('0x3f')],function(_0x4cf68d){var _0x87db68={};_0x87db68[_0x4cf68d]={'$like':'%'+_0xa762f5['query'][_0x25b0('0x66')]+'%'};return _0x87db68;})});}_0xffc1dd=_[_0x25b0('0x8a')]({},_0xffc1dd,_0xa762f5['options']);return db['CmHopperHistory'][_0x25b0('0x22')]({'where':_0xffc1dd['where']})[_0x25b0('0x2a')](function(_0x4ac25d){_0x3c11f1[_0x25b0('0x22')]=_0x4ac25d;if(_0xa762f5[_0x25b0('0x3d')]['includeAll']){_0xffc1dd[_0x25b0('0xd8')]=[{'all':!![]}];}return db[_0x25b0('0xb6')][_0x25b0('0xa0')](_0xffc1dd);})[_0x25b0('0x2a')](function(_0x24d95d){_0x3c11f1[_0x25b0('0x96')]=_0x24d95d;return _0x3c11f1;});}})[_0x25b0('0x2a')](respondWithFilteredResult(_0x5877e7,_0xffc1dd))[_0x25b0('0x97')](handleError(_0x5877e7,null));};exports[_0x25b0('0xd9')]=function(_0x16bfad,_0x5fa94b,_0x4f99e9){var _0x1f9273={'raw':!![],'where':{}};var _0x4fc1ff={};var _0x17ba5a={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0x16bfad[_0x25b0('0x99')]['id']}})[_0x25b0('0x2a')](handleEntityNotFound(_0x5fa94b,null))[_0x25b0('0x2a')](function(_0x40c5ef){if(_0x40c5ef){_0x4fc1ff[_0x25b0('0x3b')]=_[_0x25b0('0x3c')](db['CmHopperFinal'][_0x25b0('0xd1')]);_0x4fc1ff[_0x25b0('0x3d')]=_['keys'](_0x16bfad[_0x25b0('0x3d')]);_0x4fc1ff[_0x25b0('0x47')]=_[_0x25b0('0x3e')](_0x4fc1ff['model'],_0x4fc1ff[_0x25b0('0x3d')]);_0x1f9273[_0x25b0('0x3f')]=_['intersection'](_0x4fc1ff[_0x25b0('0x3b')],qs['fields'](_0x16bfad[_0x25b0('0x3d')][_0x25b0('0x40')]));_0x1f9273[_0x25b0('0x3f')]=_0x1f9273[_0x25b0('0x3f')][_0x25b0('0x38')]?_0x1f9273[_0x25b0('0x3f')]:_0x4fc1ff[_0x25b0('0x3b')];if(!_0x16bfad[_0x25b0('0x3d')]['hasOwnProperty'](_0x25b0('0x42'))){_0x1f9273['limit']=qs[_0x25b0('0x24')](_0x16bfad[_0x25b0('0x3d')]['limit']);_0x1f9273['offset']=qs[_0x25b0('0x23')](_0x16bfad[_0x25b0('0x3d')][_0x25b0('0x23')]);}_0x1f9273[_0x25b0('0x43')]=qs[_0x25b0('0x44')](_0x16bfad['query'][_0x25b0('0x44')]);_0x1f9273[_0x25b0('0x45')]=qs['filters'](_[_0x25b0('0x46')](_0x16bfad['query'],_0x4fc1ff[_0x25b0('0x47')]));_0x1f9273[_0x25b0('0x45')][_0x25b0('0xd6')]=_0x40c5ef['id'];if(_0x16bfad[_0x25b0('0x3d')][_0x25b0('0x66')]){_0x1f9273[_0x25b0('0x45')]=_[_0x25b0('0x8a')](_0x1f9273[_0x25b0('0x45')],{'$or':_[_0x25b0('0x5d')](_0x1f9273[_0x25b0('0x3f')],function(_0x193b58){var _0x33f57a={};_0x33f57a[_0x193b58]={'$like':'%'+_0x16bfad[_0x25b0('0x3d')]['filter']+'%'};return _0x33f57a;})});}_0x1f9273=_[_0x25b0('0x8a')]({},_0x1f9273,_0x16bfad['options']);return db[_0x25b0('0xb5')][_0x25b0('0x22')]({'where':_0x1f9273[_0x25b0('0x45')]})[_0x25b0('0x2a')](function(_0x4bac3d){_0x17ba5a[_0x25b0('0x22')]=_0x4bac3d;if(_0x16bfad[_0x25b0('0x3d')][_0x25b0('0xd7')]){_0x1f9273[_0x25b0('0xd8')]=[{'all':!![]}];}return db[_0x25b0('0xb5')]['findAll'](_0x1f9273);})[_0x25b0('0x2a')](function(_0x1d6165){_0x17ba5a[_0x25b0('0x96')]=_0x1d6165;return _0x17ba5a;});}})['then'](respondWithFilteredResult(_0x5fa94b,_0x1f9273))[_0x25b0('0x97')](handleError(_0x5fa94b,null));};exports[_0x25b0('0xda')]=function(_0x3e8e6e,_0x52400b,_0x3ba5cf){var _0x487839={'raw':!![],'where':{}};var _0x1de809={};var _0x1ba258={'count':0x0,'rows':[]};return db[_0x25b0('0x30')][_0x25b0('0x35')]({'where':{'id':_0x3e8e6e[_0x25b0('0x99')]['id']}})[_0x25b0('0x2a')](handleEntityNotFound(_0x52400b,null))[_0x25b0('0x2a')](function(_0x4b8953){if(_0x4b8953){_0x1de809[_0x25b0('0x3b')]=_[_0x25b0('0x3c')](db[_0x25b0('0xdb')][_0x25b0('0xd1')]);_0x1de809['query']=_[_0x25b0('0x3c')](_0x3e8e6e[_0x25b0('0x3d')]);_0x1de809[_0x25b0('0x47')]=_['intersection'](_0x1de809[_0x25b0('0x3b')],_0x1de809[_0x25b0('0x3d')]);_0x487839[_0x25b0('0x3f')]=_['intersection'](_0x1de809[_0x25b0('0x3b')],qs['fields'](_0x3e8e6e[_0x25b0('0x3d')][_0x25b0('0x40')]));_0x487839['attributes']=_0x487839[_0x25b0('0x3f')][_0x25b0('0x38')]?_0x487839[_0x25b0('0x3f')]:_0x1de809[_0x25b0('0x3b')];if(!_0x3e8e6e[_0x25b0('0x3d')][_0x25b0('0x41')](_0x25b0('0x42'))){_0x487839[_0x25b0('0x24')]=qs[_0x25b0('0x24')](_0x3e8e6e[_0x25b0('0x3d')][_0x25b0('0x24')]);_0x487839[_0x25b0('0x23')]=qs[_0x25b0('0x23')](_0x3e8e6e[_0x25b0('0x3d')][_0x25b0('0x23')]);}_0x487839[_0x25b0('0x43')]=qs[_0x25b0('0x44')](_0x3e8e6e[_0x25b0('0x3d')]['sort']);_0x487839[_0x25b0('0x45')]=qs[_0x25b0('0x47')](_[_0x25b0('0x46')](_0x3e8e6e[_0x25b0('0x3d')],_0x1de809[_0x25b0('0x47')]));_0x487839[_0x25b0('0x45')][_0x25b0('0xd6')]=_0x4b8953['id'];if(_0x3e8e6e[_0x25b0('0x3d')][_0x25b0('0x66')]){_0x487839[_0x25b0('0x45')]=_['merge'](_0x487839[_0x25b0('0x45')],{'$or':_[_0x25b0('0x5d')](_0x487839[_0x25b0('0x3f')],function(_0x5a96da){var _0x476566={};_0x476566[_0x5a96da]={'$like':'%'+_0x3e8e6e[_0x25b0('0x3d')][_0x25b0('0x66')]+'%'};return _0x476566;})});}_0x487839=_[_0x25b0('0x8a')]({},_0x487839,_0x3e8e6e[_0x25b0('0xd2')]);return db['JscriptySessionReport'][_0x25b0('0x22')]({'where':_0x487839['where']})['then'](function(_0x46f05a){_0x1ba258['count']=_0x46f05a;if(_0x3e8e6e[_0x25b0('0x3d')]['includeAll']){_0x487839[_0x25b0('0xd8')]=[{'all':!![]}];}return db['JscriptySessionReport'][_0x25b0('0xa0')](_0x487839);})[_0x25b0('0x2a')](function(_0x7e3ff9){_0x1ba258[_0x25b0('0x96')]=_0x7e3ff9;return _0x1ba258;});}})[_0x25b0('0x2a')](respondWithFilteredResult(_0x52400b,_0x487839))[_0x25b0('0x97')](handleError(_0x52400b,null));};exports['uploadCsv']=function(_0x4c3b11,_0x3429be,_0x6404e7){try{if(!_0x4c3b11['body']['ListId']){throw new Error(_0x25b0('0xdc'));}if(!_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xdd')]){throw new Error(_0x25b0('0xde'));}if(!_0x4c3b11['body'][_0x25b0('0xdf')]){throw new Error(_0x25b0('0xe0'));}if(!_0x4c3b11[_0x25b0('0x9f')]['socket_timestamp']){throw new Error(_0x25b0('0xe1'));}var _0x7c474f=_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xdd')]['split'](',');var _0x5ab8b3=_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xdf')]['split'](',');if(!_0x7c474f['length']||!_0x5ab8b3[_0x25b0('0x38')]||_0x7c474f['length']!==_0x5ab8b3['length']){throw new Error(_0x25b0('0xe2'));}_0x4c3b11[_0x25b0('0x9f')]['fields']=_[_0x25b0('0xe3')](_0x7c474f,_0x5ab8b3);if(!_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0x40')][_0x25b0('0xcf')]){throw new Error(_0x25b0('0xe4'));}if(!_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0x40')]['firstName']){throw new Error('No\x20firstName\x20column\x20specified');}var _0x37990b=path[_0x25b0('0xa3')](config[_0x25b0('0xe5')],_0x25b0('0xe6'),_0x4c3b11[_0x25b0('0xe7')][_0x25b0('0xe8')]);fs['chmodSync'](_0x37990b,parseInt(_0x25b0('0xe9'),0x8));var _0x234968=require(_0x25b0('0xea'))[_0x25b0('0xeb')](path[_0x25b0('0xa3')](__dirname,_0x25b0('0xec')),[_0x37990b,_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xdd')],_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xdf')],_0x4c3b11['body'][_0x25b0('0x69')],_0x4c3b11['body'][_0x25b0('0xed')],_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xc2')],_0x4c3b11[_0x25b0('0x9f')][_0x25b0('0xee')]]);return _0x3429be[_0x25b0('0x20')](0xc8)[_0x25b0('0x21')]({'message':_0x25b0('0xef'),'pid':_0x234968[_0x25b0('0xf0')]});}catch(_0x94c2cf){return _0x3429be[_0x25b0('0x20')](0x1f4)['send'](_0x94c2cf);}};exports['upload']=function(_0x404689,_0x39767f,_0x5419bb){var _0x2943a9=fs[_0x25b0('0xf1')](_0x404689[_0x25b0('0xe7')][_0x25b0('0x7')]);Papa['parse'](_0x2943a9,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x1e19ad){return _0x39767f[_0x25b0('0x20')](0xc8)[_0x25b0('0x21')]({'file':_0x404689['file'],'fields':_0x1e19ad[_0x25b0('0xf2')][_0x25b0('0x40')]});}});};exports[_0x25b0('0xf3')]=function(_0x1aaed1,_0x1f5659,_0x499069){return db[_0x25b0('0x82')]['findAll']({'raw':!![],'attributes':['id'],'where':{'role':'agent'}})[_0x25b0('0x2a')](function(_0x1d3da1){var _0x310d00=![];if(!_0x1aaed1[_0x25b0('0x9f')][_0x25b0('0x69')]){throw new Error('No\x20ListId\x20specified');}if(!_0x1aaed1[_0x25b0('0x9f')][_0x25b0('0xf4')][_0x25b0('0xcf')]){throw new Error(_0x25b0('0xe4'));}if(!_0x1aaed1[_0x25b0('0x9f')][_0x25b0('0xf4')][_0x25b0('0xf5')]){throw new Error('No\x20firstName\x20column\x20specified');}if(!_0x1aaed1[_0x25b0('0x9f')][_0x25b0('0xee')]){throw new Error('Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed');}var _0x67d139=require(_0x25b0('0xea'))[_0x25b0('0xeb')](path[_0x25b0('0xa3')](__dirname,_0x25b0('0xf6')),[_0x1aaed1['params']['id'],JSON['stringify'](_0x1aaed1[_0x25b0('0x9f')]),JSON[_0x25b0('0xf7')](_0x1d3da1)]);_0x67d139['on'](_0x25b0('0xf8'),function(_0x1688c0){_0x310d00=!![];return _0x1f5659['status'](0xc8)['json']({'message':_0x25b0('0xf9'),'pid':_0x67d139[_0x25b0('0xf0')]});});_0x67d139['on'](_0x25b0('0xfa'),function(_0xee06d5){if(_0xee06d5&&!_0x310d00){return _0x1f5659['status'](0x1f4)[_0x25b0('0x21')]({'message':_0x25b0('0xfb'),'pid':_0x67d139[_0x25b0('0xf0')]});}});})[_0x25b0('0x97')](handleError(_0x1f5659,null));};exports['getJourney']=function(_0x2d0add,_0x20f91a){var _0x4595ee=[_0x25b0('0xfc'),_0x25b0('0xfd'),_0x25b0('0xfe'),_0x25b0('0xff'),'fax',_0x25b0('0x100'),_0x25b0('0x101')];var _0x4eebdb={'offset':0x0,'order':qs['sort'](_0x25b0('0x102'))},_0x4be8d4={'count':0x0,'rows':[]};Promise[_0x25b0('0x7e')]()[_0x25b0('0x2a')](function(){if(_0x2d0add['query'][_0x25b0('0x103')]){if(!_['includes'](_0x4595ee,_0x2d0add['query']['channel'][_0x25b0('0x104')]())){throw new Error(_0x25b0('0x105'));}_0x4595ee=[_0x2d0add[_0x25b0('0x3d')][_0x25b0('0x103')][_0x25b0('0x104')]()];}if(_0x2d0add[_0x25b0('0x3d')][_0x25b0('0x106')]){try{var _0x30caa3=JSON['parse'](_0x2d0add[_0x25b0('0x3d')][_0x25b0('0x106')]);if(!moment(_0x30caa3[_0x25b0('0x4d')])[_0x25b0('0x107')]()){throw new Error(_0x25b0('0x108'));}if(!moment(_0x30caa3['to'])[_0x25b0('0x107')]()){throw new Error(_0x25b0('0x109'));}}catch(_0x4c2e1b){throw new Error(_0x25b0('0x10a'));}}if(!_0x2d0add[_0x25b0('0x3d')][_0x25b0('0x41')](_0x25b0('0x42'))){_0x4eebdb[_0x25b0('0x24')]=qs[_0x25b0('0x24')](_0x2d0add[_0x25b0('0x3d')][_0x25b0('0x24')]||0xa);_0x4eebdb[_0x25b0('0x23')]=qs['offset'](_0x2d0add[_0x25b0('0x3d')]['offset']);}var _0xa2728c=_0x4595ee[_0x25b0('0x5d')](function(_0x257786){if(_0x257786===_0x25b0('0x101')){var _0x2534e7={'attributes':['id','uniqueid',_0x25b0('0x3a'),_0x25b0('0x10b'),_0x25b0('0x10c'),_0x25b0('0x10d'),_0x25b0('0x10e'),_0x25b0('0x10f'),_0x25b0('0x110'),_0x25b0('0x111'),_0x25b0('0x112'),_0x25b0('0x113'),_0x25b0('0x114'),'userThirdDisposition'],'where':{'ContactId':_0x2d0add['params']['id']},'include':[{'model':db['User'],'as':_0x25b0('0x82'),'attributes':['id',_0x25b0('0x49'),_0x25b0('0x115'),'alias']}],'order':[[_0x25b0('0x112'),'DESC']]};if(_0x2d0add[_0x25b0('0x3d')][_0x25b0('0x106')]){_0x2534e7['where']['createdAt']={'$gte':_0x30caa3[_0x25b0('0x4d')],'$lte':_0x30caa3['to']};}return db[_0x25b0('0xb7')][_0x25b0('0x116')](_0x2534e7)[_0x25b0('0x2a')](function(_0x2589eb){_0x4be8d4['count']+=_0x2589eb['count'];return _[_0x25b0('0x5d')](_0x2589eb['rows'],function(_0x1f24a1){var _0x25b2ba=_0x1f24a1[_0x25b0('0xa1')]({'plain':!![]});_0x25b2ba[_0x25b0('0x103')]=_0x257786;if(_0x25b2ba[_0x25b0('0x82')]){_0x25b2ba['User']={'id':_0x25b2ba[_0x25b0('0x82')]['id'],'name':_0x25b2ba[_0x25b0('0x82')]['name'],'fullname':_0x25b2ba[_0x25b0('0x82')][_0x25b0('0x115')],'alias':_0x25b2ba[_0x25b0('0x82')]['alias']};}return _0x25b2ba;});});}else{var _0x59520=_[_0x25b0('0x117')](_0x257786)+(_0x257786===_0x25b0('0xfd')?_0x25b0('0x118'):_0x25b0('0x119'));var _0x21de27={'attributes':['id',_0x25b0('0x11a'),_0x25b0('0x11b'),_0x25b0('0x112'),'note',_0x25b0('0x11c'),_0x25b0('0x11d'),_0x25b0('0x11e'),'UserId',_0x59520+'Id'],'where':{'ContactId':_0x2d0add[_0x25b0('0x99')]['id']},'include':[{'model':db[_0x59520],'as':'Account','attributes':['id','name','key']},{'model':db[_0x25b0('0x82')],'as':_0x25b0('0x11f'),'attributes':['id',_0x25b0('0x49'),_0x25b0('0x115')]},{'model':db[_0x25b0('0x5b')],'as':_0x25b0('0x95'),'attributes':['id','name',_0x25b0('0x4a')],'through':{'attributes':[]}}],'order':[['createdAt',_0x25b0('0x120')]]};if(_0x2d0add['query'][_0x25b0('0x106')]){_0x21de27[_0x25b0('0x45')][_0x25b0('0x112')]={'$gte':_0x30caa3['from'],'$lte':_0x30caa3['to']};}switch(_0x257786){case'chat':_0x21de27[_0x25b0('0x3f')][_0x25b0('0x33')](_0x25b0('0x121'),'customerIp',_0x25b0('0x122'),_0x25b0('0x123'),_0x25b0('0x124'),_0x25b0('0x125'),_0x25b0('0x126'),_0x25b0('0x127'),_0x25b0('0x128'));break;case _0x25b0('0xfc'):_0x21de27[_0x25b0('0x3f')][_0x25b0('0x33')]('subject',_0x25b0('0x129'));break;case'openchannel':_0x21de27[_0x25b0('0x3f')][_0x25b0('0x33')](_0x25b0('0x12a'),_0x25b0('0x12b'));break;}return db[_[_0x25b0('0x117')](_0x257786)+_0x25b0('0x12c')][_0x25b0('0x116')](_0x21de27)[_0x25b0('0x2a')](function(_0x5c40b4){_0x4be8d4[_0x25b0('0x22')]+=_0x5c40b4[_0x25b0('0x22')];return _[_0x25b0('0x5d')](_0x5c40b4[_0x25b0('0x96')],function(_0x21e518){var _0x2764e7=_0x21e518[_0x25b0('0xa1')]({'plain':!![]});_0x2764e7[_0x25b0('0x103')]=_0x257786;if(_0x2764e7[_0x25b0('0x11f')]){_0x2764e7[_0x25b0('0x11f')]={'id':_0x2764e7[_0x25b0('0x11f')]['id'],'name':_0x2764e7[_0x25b0('0x11f')][_0x25b0('0x49')],'fullname':_0x2764e7[_0x25b0('0x11f')][_0x25b0('0x115')]};}return _0x2764e7;});});}});return Promise[_0x25b0('0x37')](_0xa2728c);})['then'](function(_0x124ba4){return _(_0x124ba4)[_0x25b0('0x12d')]()[_0x25b0('0x12e')](_0x25b0('0x112'))[_0x25b0('0x12f')]()[_0x25b0('0x64')]();})[_0x25b0('0x2a')](function(_0x2e8359){_0x4be8d4[_0x25b0('0x96')]=_0x4eebdb[_0x25b0('0x24')]?_0x2e8359[_0x25b0('0x130')](_0x4eebdb['offset'],_0x4eebdb['offset']+_0x4eebdb[_0x25b0('0x24')]):_0x2e8359;return _0x4be8d4;})[_0x25b0('0x2a')](respondWithFilteredResult(_0x20f91a,_0x4eebdb))[_0x25b0('0x97')](handleError(_0x20f91a,null));};