Built motion from commit eddce310.|2.6.12
[motion2.git] / server / api / openchannelInteraction / openchannelInteraction.controller.js
index 8575877..44828b1 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x5b7d=['Contact.mobile','Contact.fax','o.fullname','Owner.fullname','o.internal','GROUP_CONCAT(DISTINCT\x20t.id)','ui.OpenchannelInteractionId\x20IN\x20?','groupBy','rows','show','params','includeAll','include','options','create','describe','addMessage','OpenchannelMessage','ids','findOne','OpenchannelInteractionId','format','findAll','setTags','removeTags','download','unix','server','files','tmp','join','root','attachments','User','firstName','lastName','Attachment','Messages','direction','secret','OpenchannelAccount','Account','Owner','get','Openchannel','YYYY-MM-DD\x20HH:mm:ss','closedAt','disposition','threadId','Private','existsSync','createReadStream','createWriteStream','basename','System','out','renderFile','views','downloadInteraction.ejs','transcript-','.pdf','createPdfFromHTML','log','unlinkSync','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','crypto','papaparse','../../components/auth/service','../../components/export/pdf','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','redis','defaults','socket.io-emitter','./openchannelInteraction.socket','register','sendStatus','status','json','offset','undefined','count','set','Content-Range','apply','save','update','then','destroy','end','error','stack','name','send','Users','map','fullname','TagIds','Tags','split','forEach','push','catch','waiting','talking','answered','unmanaged','total','UserId','closed','index','rawAttributes','fieldName','type','key','model','query','keys','filters','attributes','intersection','length','hasOwnProperty','limit','order','sort','where','select','field','from','tools_tags','u.id','u.fullname','user_has_openchannel_interactions','left_join','users','u.id\x20=\x20ui.UserId','openchannel_interactions','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','openchannel_accounts','a.id\x20=\x20i.OpenchannelAccountId','openchannel_messages','me.OpenchannelInteractionId\x20=\x20i.id','openchannel_interaction_has_tags','it.OpenchannelInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','parseSearch','sqlOperator','find','unreadMessages','value','having','`\x20>\x200','Contact','$substring','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','ContactId','buildExpression','start','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','operator','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','text','body','some','isEmpty','OpenchannelAccountId','i.OpenchannelAccountId\x20IN\x20?','createdAt','parse','$gte','$lte','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','null','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','tag','isArray','filter','replace','isNumeric','MATCH\x20(me.body)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','i.from\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','i.id','SELECT','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','resolve','user','agent','getOpenchannelAccounts','i.OpenchannelAccountId\x20IS\x20NULL','sequelize','toString','keyBy','merge','OpenchannelInteraction','fields','a.key','Account.key','Account.mandatoryDisposition','CASE\x20WHEN\x20i.from\x20IS\x20NOT\x20NULL\x20AND\x20i.from\x20<>\x20\x27\x27\x20THEN\x20i.from\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END','contactName','i.*','Contact.firstName','c.lastName','c.email','c.phone','Contact.phone','c.mobile'];(function(_0x3f5dca,_0x59472b){var _0x5b833a=function(_0x1cb84b){while(--_0x1cb84b){_0x3f5dca['push'](_0x3f5dca['shift']());}};_0x5b833a(++_0x59472b);}(_0x5b7d,0x126));var _0xd5b7=function(_0x21e54a,_0x378be3){_0x21e54a=_0x21e54a-0x0;var _0x25f992=_0x5b7d[_0x21e54a];return _0x25f992;};'use strict';var emlformat=require(_0xd5b7('0x0'));var rimraf=require(_0xd5b7('0x1'));var zipdir=require(_0xd5b7('0x2'));var jsonpatch=require(_0xd5b7('0x3'));var rp=require('request-promise');var moment=require(_0xd5b7('0x4'));var BPromise=require(_0xd5b7('0x5'));var Mustache=require(_0xd5b7('0x6'));var util=require(_0xd5b7('0x7'));var path=require(_0xd5b7('0x8'));var sox=require('sox');var csv=require(_0xd5b7('0x9'));var ejs=require(_0xd5b7('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xd5b7('0xb'));var squel=require('squel');var crypto=require(_0xd5b7('0xc'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0xd5b7('0x9'));var querystring=require('querystring');var Papa=require(_0xd5b7('0xd'));var Redis=require('ioredis');var authService=require(_0xd5b7('0xe'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var pdf=require(_0xd5b7('0xf'));var hardwareService=require(_0xd5b7('0x10'));var logger=require(_0xd5b7('0x11'))(_0xd5b7('0x12'));var utils=require(_0xd5b7('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xd5b7('0x14'))['db'];config[_0xd5b7('0x15')]=_[_0xd5b7('0x16')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0xd5b7('0x17'))(new Redis(config[_0xd5b7('0x15')]));require(_0xd5b7('0x18'))[_0xd5b7('0x19')](socket);function respondWithStatusCode(_0x5ed974,_0x210720){_0x210720=_0x210720||0xcc;return function(_0x285651){if(_0x285651){return _0x5ed974[_0xd5b7('0x1a')](_0x210720);}return _0x5ed974[_0xd5b7('0x1b')](_0x210720)['end']();};}function respondWithResult(_0x116f02,_0x33c99c){_0x33c99c=_0x33c99c||0xc8;return function(_0x4b58cd){if(_0x4b58cd){return _0x116f02[_0xd5b7('0x1b')](_0x33c99c)[_0xd5b7('0x1c')](_0x4b58cd);}};}function respondWithFilteredResult(_0x142f52,_0x3a8c32){return function(_0x5bbf65){if(_0x5bbf65){var _0x20b7d0=typeof _0x3a8c32[_0xd5b7('0x1d')]===_0xd5b7('0x1e')&&typeof _0x3a8c32['limit']===_0xd5b7('0x1e');var _0x43df6f=_0x5bbf65[_0xd5b7('0x1f')];var _0xed2fa1=_0x20b7d0?0x0:_0x3a8c32[_0xd5b7('0x1d')];var _0xefb2fa=_0x20b7d0?_0x5bbf65[_0xd5b7('0x1f')]:_0x3a8c32[_0xd5b7('0x1d')]+_0x3a8c32['limit'];var _0x4c9d4b;if(_0xefb2fa>=_0x43df6f){_0xefb2fa=_0x43df6f;_0x4c9d4b=0xc8;}else{_0x4c9d4b=0xce;}_0x142f52[_0xd5b7('0x1b')](_0x4c9d4b);return _0x142f52[_0xd5b7('0x20')](_0xd5b7('0x21'),_0xed2fa1+'-'+_0xefb2fa+'/'+_0x43df6f)[_0xd5b7('0x1c')](_0x5bbf65);}return null;};}function patchUpdates(_0x1ed260){return function(_0x11d9bb){try{jsonpatch[_0xd5b7('0x22')](_0x11d9bb,_0x1ed260,!![]);}catch(_0x8440d7){return BPromise['reject'](_0x8440d7);}return _0x11d9bb[_0xd5b7('0x23')]();};}function saveUpdates(_0x54242c,_0x2dcba6){return function(_0x21bdda){if(_0x21bdda){return _0x21bdda[_0xd5b7('0x24')](_0x54242c)[_0xd5b7('0x25')](function(_0x1ef20c){return _0x1ef20c;});}return null;};}function removeEntity(_0x17a46d,_0x374bee){return function(_0x7c23){if(_0x7c23){return _0x7c23[_0xd5b7('0x26')]()['then'](function(){_0x17a46d[_0xd5b7('0x1b')](0xcc)[_0xd5b7('0x27')]();});}};}function handleEntityNotFound(_0x436363,_0x5a712e){return function(_0x510dde){if(!_0x510dde){_0x436363[_0xd5b7('0x1a')](0x194);}return _0x510dde;};}function handleError(_0x20e03d,_0x4516c4){_0x4516c4=_0x4516c4||0x1f4;return function(_0x7251b0){logger[_0xd5b7('0x28')](_0x7251b0[_0xd5b7('0x29')]);if(_0x7251b0['name']){delete _0x7251b0[_0xd5b7('0x2a')];}_0x20e03d[_0xd5b7('0x1b')](_0x4516c4)[_0xd5b7('0x2b')](_0x7251b0);};}function getInteractionUsers(_0x1d92f0,_0x372536){return new BPromise(function(_0x282b95,_0x273ab2){try{if(_0x372536[_0x1d92f0['id']]){_0x1d92f0[_0xd5b7('0x2c')]=_[_0xd5b7('0x2d')](_0x372536[_0x1d92f0['id']],function(_0x8b045){return{'id':_0x8b045['id'],'fullname':_0x8b045[_0xd5b7('0x2e')]};});}}catch(_0xa3c57c){_0x273ab2(_0xa3c57c);}_0x282b95(_0x1d92f0);});}function getInteractionTags(_0x33611d,_0x2f8d4c){return new BPromise(function(_0x4e1242,_0x2fcd30){try{if(_0x33611d[_0xd5b7('0x2f')]){_0x33611d[_0xd5b7('0x30')]=[];_0x33611d[_0xd5b7('0x2f')][_0xd5b7('0x31')](',')[_0xd5b7('0x32')](function(_0x2ed657){_0x33611d[_0xd5b7('0x30')][_0xd5b7('0x33')](_0x2f8d4c[_0x2ed657]);});}delete _0x33611d[_0xd5b7('0x2f')];}catch(_0x9f201c){_0x2fcd30(_0x9f201c);}_0x4e1242(_0x33611d);});}function updateOpenchannelInteraction(_0x2ed4a0,_0x43a36e,_0x3f12ab){return new BPromise(function(_0x593ebc,_0xa4ffb6){return getInteractionUsers(_0x2ed4a0,_0x3f12ab)['then'](function(_0x6f0162){return getInteractionTags(_0x6f0162,_0x43a36e);})[_0xd5b7('0x25')](function(_0x4ee4ed){return getStateInteraction(_0x4ee4ed);})[_0xd5b7('0x25')](function(_0x294e41){_0x593ebc(_0x294e41);})[_0xd5b7('0x34')](function(_0x4b6073){_0xa4ffb6(_0x4b6073);});});}function getStateInteraction(_0x35646e){return new BPromise(function(_0x4d3c50){_0x35646e[_0xd5b7('0x35')]=0x0;_0x35646e[_0xd5b7('0x36')]=0x0;_0x35646e[_0xd5b7('0x37')]=0x0;_0x35646e[_0xd5b7('0x38')]=0x0;_0x35646e[_0xd5b7('0x39')]=0x0;if(!_0x35646e['closed']&&!_0x35646e[_0xd5b7('0x3a')]){_0x35646e[_0xd5b7('0x35')]+=0x1;}if(!_0x35646e[_0xd5b7('0x3b')]&&_0x35646e['UserId']){_0x35646e[_0xd5b7('0x36')]+=0x1;if(_0x35646e['waiting']){_0x35646e[_0xd5b7('0x35')]-=0x1;}}if(_0x35646e[_0xd5b7('0x3b')]&&_0x35646e[_0xd5b7('0x3a')]){_0x35646e[_0xd5b7('0x37')]+=0x1;if(_0x35646e[_0xd5b7('0x36')]){_0x35646e[_0xd5b7('0x36')]-=0x1;}}if(_0x35646e[_0xd5b7('0x3b')]&&!_0x35646e[_0xd5b7('0x3a')]){_0x35646e[_0xd5b7('0x38')]+=0x1;if(_0x35646e[_0xd5b7('0x35')]){_0x35646e[_0xd5b7('0x35')]-=0x1;}}_0x35646e[_0xd5b7('0x39')]+=0x1;_0x4d3c50(_0x35646e);});}exports[_0xd5b7('0x3c')]=function(_0x54e936,_0x2f0ea1){var _0x4a8014={},_0x570011={},_0x1a275f={'count':0x0,'rows':[]};var _0x447dc5=_[_0xd5b7('0x2d')](db['OpenchannelInteraction'][_0xd5b7('0x3d')],function(_0x3a58c0){return{'name':_0x3a58c0[_0xd5b7('0x3e')],'type':_0x3a58c0[_0xd5b7('0x3f')][_0xd5b7('0x40')]};});_0x570011[_0xd5b7('0x41')]=_['map'](_0x447dc5,'name');_0x570011[_0xd5b7('0x42')]=_[_0xd5b7('0x43')](_0x54e936['query']);_0x570011[_0xd5b7('0x44')]=_['intersection'](_0x570011[_0xd5b7('0x41')],_0x570011[_0xd5b7('0x42')]);_0x4a8014[_0xd5b7('0x45')]=_[_0xd5b7('0x46')](_0x570011[_0xd5b7('0x41')],qs['fields'](_0x54e936[_0xd5b7('0x42')]['fields']));_0x4a8014[_0xd5b7('0x45')]=_0x4a8014[_0xd5b7('0x45')][_0xd5b7('0x47')]?_0x4a8014['attributes']:_0x570011[_0xd5b7('0x41')];if(!_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x48')]('nolimit')){_0x4a8014['limit']=qs[_0xd5b7('0x49')](_0x54e936['query'][_0xd5b7('0x49')]);_0x4a8014[_0xd5b7('0x1d')]=qs[_0xd5b7('0x1d')](_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x1d')]);}_0x4a8014[_0xd5b7('0x4a')]=qs[_0xd5b7('0x4b')](_0x54e936['query'][_0xd5b7('0x4b')]);_0x4a8014[_0xd5b7('0x4c')]=qs[_0xd5b7('0x44')](_['pick'](_0x54e936[_0xd5b7('0x42')],_0x570011[_0xd5b7('0x44')]),_0x447dc5);var _0x1d07dd=[];var _0x17a858=squel[_0xd5b7('0x4d')]()[_0xd5b7('0x4e')]('id')[_0xd5b7('0x4e')]('name')[_0xd5b7('0x4e')]('color')[_0xd5b7('0x4f')](_0xd5b7('0x50'));var _0x4bbba4=squel[_0xd5b7('0x4d')]()['field'](_0xd5b7('0x51'))[_0xd5b7('0x4e')](_0xd5b7('0x52'))[_0xd5b7('0x4e')]('ui.OpenchannelInteractionId')[_0xd5b7('0x4f')](_0xd5b7('0x53'),'ui')[_0xd5b7('0x54')](_0xd5b7('0x55'),'u',_0xd5b7('0x56'));var _0x59ea13=squel[_0xd5b7('0x4d')]()['from'](_0xd5b7('0x57'),'i')[_0xd5b7('0x54')]('cm_contacts','c',_0xd5b7('0x58'))[_0xd5b7('0x54')]('users','o','o.id\x20=\x20i.UserId')[_0xd5b7('0x54')](_0xd5b7('0x59'),'a',_0xd5b7('0x5a'))[_0xd5b7('0x54')](_0xd5b7('0x5b'),'me',_0xd5b7('0x5c'))[_0xd5b7('0x54')](_0xd5b7('0x5d'),'it',_0xd5b7('0x5e'))[_0xd5b7('0x54')](_0xd5b7('0x50'),'t',_0xd5b7('0x5f'));var _0x23b4b1=squel['expr']();var _0xc06ea6=[];var _0x2775bc=squel[_0xd5b7('0x60')]();var _0x40a4ad;if(_0x54e936[_0xd5b7('0x42')]['search']){_0x40a4ad=as[_0xd5b7('0x61')](_0x54e936[_0xd5b7('0x42')]['search']);var _0x44ab42=_0x40a4ad[_0xd5b7('0x62')];for(var _0x4cefd7=0x0;_0x4cefd7<_0x40a4ad['conditions']['length'];_0x4cefd7++){var _0x579a3a=_0x40a4ad['conditions'][_0x4cefd7];var _0x5373cb='i';var _0x206784=_[_0xd5b7('0x63')](_0x447dc5,['name',_0x579a3a['field']]);if(!_0x206784){switch(_0x579a3a['field']){case _0xd5b7('0x64'):if(_0x579a3a[_0xd5b7('0x65')]==0x1){_0x59ea13[_0xd5b7('0x66')]('`'+_0x579a3a['field']+'`\x20=\x200');}else{_0x59ea13[_0xd5b7('0x66')]('`'+_0x579a3a['field']+_0xd5b7('0x67'));}break;case _0xd5b7('0x68'):if(_0x579a3a['operator']===_0xd5b7('0x69')){if(_0x579a3a[_0xd5b7('0x65')]['split']('\x20')['length']>0x1){_0x23b4b1[_0x44ab42](_0xd5b7('0x6a'),qs['getFullTextValue'](_0x579a3a['value']),null);}else{var _0x52c3fd='%'+_0x579a3a[_0xd5b7('0x65')]+'%';_0x23b4b1[_0x44ab42]('c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?',_0x52c3fd,_0x52c3fd,_0x52c3fd);}}else{_0x206784=_[_0xd5b7('0x63')](_0x447dc5,[_0xd5b7('0x2a'),_0xd5b7('0x6b')]);_0x579a3a['field']=_0xd5b7('0x6b');_0x567393=as[_0xd5b7('0x6c')](_0x5373cb,_0x206784['type'],_0x579a3a);_0x23b4b1[_0x44ab42](_0x567393['text'],_0x567393['value'][_0xd5b7('0x6d')],_0x567393[_0xd5b7('0x65')][_0xd5b7('0x27')]);}break;case _0xd5b7('0x6e'):var _0x14ea44=_0x579a3a[_0xd5b7('0x65')][_0xd5b7('0x31')](',')['map'](function(_0x304c30){return Number(_0x304c30);});_0x14ea44[_0xd5b7('0x32')](function(_0x19bda9){_0x2775bc['or'](_0xd5b7('0x6f'),'%,'+_0x19bda9+',%');});_0xc06ea6=_[_0xd5b7('0x70')](_0xc06ea6,_0x14ea44);break;case'User':if(_0x579a3a[_0xd5b7('0x71')]===_0xd5b7('0x69')){_0x23b4b1[_0x44ab42](_0xd5b7('0x72'),'%'+_0x579a3a['value']+'%',null);}else{_0x206784=_[_0xd5b7('0x63')](_0x447dc5,[_0xd5b7('0x2a'),_0xd5b7('0x3a')]);_0x579a3a[_0xd5b7('0x4e')]=_0xd5b7('0x3a');_0x567393=as[_0xd5b7('0x6c')](_0x5373cb,_0x206784[_0xd5b7('0x3f')],_0x579a3a);_0x23b4b1[_0x44ab42](_0x567393[_0xd5b7('0x73')],_0x567393[_0xd5b7('0x65')][_0xd5b7('0x6d')],_0x567393['value']['end']);}break;case _0xd5b7('0x74'):_0x567393=as[_0xd5b7('0x6c')]('me',null,_0x579a3a);_0x23b4b1[_0x44ab42](_0x567393[_0xd5b7('0x73')],_0x567393[_0xd5b7('0x65')]['start'],_0x567393[_0xd5b7('0x65')][_0xd5b7('0x27')]);break;}}else{var _0x567393=as[_0xd5b7('0x6c')](_0x5373cb,_0x206784['type'],_0x579a3a);_0x23b4b1[_0x44ab42](_0x567393[_0xd5b7('0x73')],_0x567393[_0xd5b7('0x65')][_0xd5b7('0x6d')],_0x567393[_0xd5b7('0x65')][_0xd5b7('0x27')]);}}}else{var _0x4017a6=_(_0x54e936['query'])['keys']()[_0xd5b7('0x2d')](function(_0x9a4719){return _[_0xd5b7('0x75')](_0x447dc5,[_0xd5b7('0x2a'),_0x9a4719])?_0x9a4719:undefined;})['compact']()[_0xd5b7('0x65')]();if(!_[_0xd5b7('0x76')](_0x4017a6)){_0x4017a6[_0xd5b7('0x32')](function(_0x10c4df){if(_0x10c4df===_0xd5b7('0x77')){_0x59ea13['where'](_0xd5b7('0x78'),[]['concat'](_0x54e936[_0xd5b7('0x42')][_0x10c4df]));}else if(_0x10c4df===_0xd5b7('0x79')){var _0x96e4b7=JSON[_0xd5b7('0x7a')](_0x54e936['query'][_0x10c4df])[_0xd5b7('0x7b')];var _0x19f8fa=JSON[_0xd5b7('0x7a')](_0x54e936[_0xd5b7('0x42')][_0x10c4df])[_0xd5b7('0x7c')];_0x59ea13[_0xd5b7('0x4c')](_0xd5b7('0x7d'),_0x96e4b7,_0x19f8fa);}else{if(_0x54e936['query'][_0x10c4df]===_0xd5b7('0x7e')){_0x59ea13[_0xd5b7('0x4c')]('i.'+_0x10c4df+'\x20IS\x20NULL');}else{_0x59ea13[_0xd5b7('0x4c')]('i.'+_0x10c4df+_0xd5b7('0x7f'),_0x54e936[_0xd5b7('0x42')][_0x10c4df]);}}});}if(_0x54e936[_0xd5b7('0x42')]['read']){if(_0x54e936['query'][_0xd5b7('0x80')]==0x1){_0x59ea13[_0xd5b7('0x66')](_0xd5b7('0x81'));}else{_0x59ea13['having'](_0xd5b7('0x82'));}}if(_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x83')]){_0xc06ea6=_[_0xd5b7('0x84')](_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x83')])?_0x54e936[_0xd5b7('0x42')]['tag']:new Array(_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x83')]);_0xc06ea6[_0xd5b7('0x32')](function(_0x4edc39){_0x2775bc['or'](_0xd5b7('0x6f'),'%,'+_0x4edc39+',%');});}if(_0x54e936[_0xd5b7('0x42')]['filter']){var _0x535c77=_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x85')][_0xd5b7('0x86')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0xd5b7('0x87')](_0x535c77)){_0x23b4b1['or']('i.id\x20LIKE\x20?',_0x535c77+'%');}else{_0x23b4b1['or'](_0xd5b7('0x88'),qs[_0xd5b7('0x89')](_0x535c77))['or'](_0xd5b7('0x8a'),_0x535c77+'%')['or'](_0xd5b7('0x8b'),_0x535c77+'%');}}}_0x59ea13[_0xd5b7('0x4c')](_0x23b4b1);_0x59ea13['group'](_0xd5b7('0x8c'));var _0x306ee3={'type':db['Sequelize']['QueryTypes'][_0xd5b7('0x8d')],'raw':!![]};var _0x1386ef=_0x59ea13['clone']();_0x1386ef['field'](_0xd5b7('0x8c'));_0x1386ef[_0xd5b7('0x4e')](_0xd5b7('0x8e'),_0xd5b7('0x64'));if(_0x4a8014[_0xd5b7('0x4a')]){_0x4a8014['order'][_0xd5b7('0x32')](function(_0x42f030){var _0xe8aa47=_0x42f030[0x0]==='contactName'?_0x42f030[0x0]:'i.'+_0x42f030[0x0];_0x59ea13[_0xd5b7('0x4a')](_0xe8aa47,_0x42f030[0x1]==='DESC'?![]:!![]);});}if(!_[_0xd5b7('0x76')](_0xc06ea6)){_0x59ea13['having'](_0x2775bc);_0x1386ef[_0xd5b7('0x4c')]('t.id\x20IN\x20?',_0xc06ea6);}BPromise[_0xd5b7('0x8f')]()[_0xd5b7('0x25')](function(){if(!_0x40a4ad){if(_0x54e936['query'][_0xd5b7('0x77')])return;_0x1386ef['where']('i.OpenchannelAccountId\x20IS\x20NOT\x20NULL');_0x59ea13[_0xd5b7('0x4c')]('i.OpenchannelAccountId\x20IS\x20NOT\x20NULL');return;}if(_0x54e936[_0xd5b7('0x90')]['role']!==_0xd5b7('0x91'))return;return _0x54e936[_0xd5b7('0x90')][_0xd5b7('0x92')]({'attributes':['id'],'raw':!![]})['then'](function(_0x42c07d){if(_[_0xd5b7('0x76')](_0x42c07d)){_0x1386ef[_0xd5b7('0x4c')](_0xd5b7('0x93'));_0x59ea13['where'](_0xd5b7('0x93'));}else{_0x1386ef[_0xd5b7('0x4c')]('i.OpenchannelAccountId\x20IN\x20?',_[_0xd5b7('0x2d')](_0x42c07d,'id'));_0x59ea13[_0xd5b7('0x4c')]('i.OpenchannelAccountId\x20IN\x20?',_['map'](_0x42c07d,'id'));}});})['then'](function(){if(_0x54e936['user']['role']===_0xd5b7('0x91')&&!_0x40a4ad&&!_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x77')])return[];return db[_0xd5b7('0x94')][_0xd5b7('0x42')](_0x1386ef[_0xd5b7('0x95')](),_0x306ee3);})[_0xd5b7('0x25')](function(_0x2a73fb){_0x1a275f[_0xd5b7('0x1f')]=_0x2a73fb[_0xd5b7('0x47')];if(_0x1a275f[_0xd5b7('0x1f')]===0x0)return[];return db['sequelize'][_0xd5b7('0x42')](_0x17a858['toString'](),_0x306ee3)[_0xd5b7('0x25')](function(_0x1c5327){_0x1d07dd=_[_0xd5b7('0x96')](_0x1c5327,'id');_0x306ee3=_[_0xd5b7('0x97')](_0x306ee3,{'model':db[_0xd5b7('0x98')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x54e936[_0xd5b7('0x42')][_0xd5b7('0x99')]){_0x4a8014[_0xd5b7('0x45')][_0xd5b7('0x32')](function(_0x3f5de5){_0x59ea13[_0xd5b7('0x4e')]('i.'+_0x3f5de5);});}else{_0x59ea13['field'](_0xd5b7('0x8e'),_0xd5b7('0x64'));_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0x9a'),_0xd5b7('0x9b'));_0x59ea13[_0xd5b7('0x4e')]('a.mandatoryDisposition',_0xd5b7('0x9c'));_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0x9d'),_0xd5b7('0x9e'));_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0x9f'));_0x59ea13[_0xd5b7('0x4e')]('c.firstName',_0xd5b7('0xa0'));_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0xa1'),'Contact.lastName');_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0xa2'),'Contact.email');_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0xa3'),_0xd5b7('0xa4'));_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0xa5'),_0xd5b7('0xa6'));_0x59ea13[_0xd5b7('0x4e')]('c.fax',_0xd5b7('0xa7'));_0x59ea13['field'](_0xd5b7('0xa8'),_0xd5b7('0xa9'));_0x59ea13['field'](_0xd5b7('0xaa'),'Owner.internal');_0x59ea13[_0xd5b7('0x4e')](_0xd5b7('0xab'),_0xd5b7('0x2f'));}if(_0x4a8014['limit'])_0x59ea13[_0xd5b7('0x49')](_0x4a8014[_0xd5b7('0x49')]);if(_0x4a8014[_0xd5b7('0x1d')])_0x59ea13['offset'](_0x4a8014['offset']);return db['sequelize'][_0xd5b7('0x42')](_0x59ea13['toString'](),_0x306ee3);})[_0xd5b7('0x25')](function(_0x102dd6){if(_0x102dd6['length']>0x0)_0x4bbba4[_0xd5b7('0x4c')](_0xd5b7('0xac'),_[_0xd5b7('0x2d')](_0x102dd6,'id'));return db[_0xd5b7('0x94')][_0xd5b7('0x42')](_0x4bbba4['toString'](),_0x306ee3)['then'](function(_0x481314){var _0x397bce=_[_0xd5b7('0xad')](_0x481314,'OpenchannelInteractionId');var _0x2dad8e=[];_0x102dd6[_0xd5b7('0x32')](function(_0x6831eb){_0x2dad8e[_0xd5b7('0x33')](updateOpenchannelInteraction(_0x6831eb,_0x1d07dd,_0x397bce));});return BPromise['all'](_0x2dad8e);});});})[_0xd5b7('0x25')](function(_0x41c756){_0x1a275f[_0xd5b7('0xae')]=_0x41c756;return _0x1a275f;})['then'](respondWithFilteredResult(_0x2f0ea1,_0x4a8014))[_0xd5b7('0x34')](handleError(_0x2f0ea1,null));};exports[_0xd5b7('0xaf')]=function(_0x2bd4d7,_0x503795){var _0x1b71bc={};if(_0x2bd4d7['query'][_0xd5b7('0x3f')]&&_0x2bd4d7[_0xd5b7('0x42')][_0xd5b7('0x3f')]===_0xd5b7('0x4f')){_0x1b71bc[_0xd5b7('0x4f')]=_0x2bd4d7[_0xd5b7('0xb0')]['id'];}else{_0x1b71bc['id']=_0x2bd4d7[_0xd5b7('0xb0')]['id'];}var _0x273a1d={'raw':![],'where':_0x1b71bc},_0x24a588={};_0x24a588[_0xd5b7('0x41')]=_[_0xd5b7('0x43')](db[_0xd5b7('0x98')]['rawAttributes']);_0x24a588['query']=_[_0xd5b7('0x43')](_0x2bd4d7[_0xd5b7('0x42')]);_0x24a588[_0xd5b7('0x44')]=_[_0xd5b7('0x46')](_0x24a588[_0xd5b7('0x41')],_0x24a588[_0xd5b7('0x42')]);_0x273a1d['attributes']=_[_0xd5b7('0x46')](_0x24a588[_0xd5b7('0x41')],qs[_0xd5b7('0x99')](_0x2bd4d7[_0xd5b7('0x42')]['fields']));_0x273a1d['attributes']=_0x273a1d[_0xd5b7('0x45')]['length']?_0x273a1d[_0xd5b7('0x45')]:_0x24a588[_0xd5b7('0x41')];if(_0x2bd4d7['query'][_0xd5b7('0xb1')]){_0x273a1d[_0xd5b7('0xb2')]=[{'all':!![]}];}_0x273a1d=_[_0xd5b7('0x97')]({},_0x273a1d,_0x2bd4d7[_0xd5b7('0xb3')]);return db[_0xd5b7('0x98')][_0xd5b7('0x63')](_0x273a1d)[_0xd5b7('0x25')](handleEntityNotFound(_0x503795,null))[_0xd5b7('0x25')](respondWithResult(_0x503795,null))[_0xd5b7('0x34')](handleError(_0x503795,null));};exports[_0xd5b7('0xb4')]=function(_0xc16cb5,_0x45067e){return db[_0xd5b7('0x98')][_0xd5b7('0xb4')](_0xc16cb5['body'],{})['then'](respondWithResult(_0x45067e,0xc9))[_0xd5b7('0x34')](handleError(_0x45067e,null));};exports[_0xd5b7('0x24')]=function(_0x2613d5,_0xdfafb2){if(_0x2613d5['body']['id']){delete _0x2613d5[_0xd5b7('0x74')]['id'];}return db[_0xd5b7('0x98')][_0xd5b7('0x63')]({'where':{'id':_0x2613d5[_0xd5b7('0xb0')]['id']}})['then'](handleEntityNotFound(_0xdfafb2,null))[_0xd5b7('0x25')](saveUpdates(_0x2613d5[_0xd5b7('0x74')],null))[_0xd5b7('0x25')](respondWithResult(_0xdfafb2,null))[_0xd5b7('0x34')](handleError(_0xdfafb2,null));};exports[_0xd5b7('0x26')]=function(_0x4fb8b2,_0x5de399){return db['OpenchannelInteraction']['find']({'where':{'id':_0x4fb8b2[_0xd5b7('0xb0')]['id']}})[_0xd5b7('0x25')](handleEntityNotFound(_0x5de399,null))[_0xd5b7('0x25')](removeEntity(_0x5de399,null))[_0xd5b7('0x34')](handleError(_0x5de399,null));};exports[_0xd5b7('0xb5')]=function(_0x517513,_0xdd5000){return db[_0xd5b7('0x98')][_0xd5b7('0xb5')]()[_0xd5b7('0x25')](respondWithResult(_0xdd5000,null))[_0xd5b7('0x34')](handleError(_0xdd5000,null));};exports[_0xd5b7('0xb6')]=function(_0x13cbea,_0x5eb127,_0x41b736){return db[_0xd5b7('0xb7')][_0xd5b7('0x63')]({'where':{'id':_0x13cbea[_0xd5b7('0xb0')]['id']}})[_0xd5b7('0x25')](handleEntityNotFound(_0x5eb127,null))[_0xd5b7('0x25')](function(_0x2c855e){if(_0x2c855e){return _0x2c855e['addMessage'](_0x13cbea['body'][_0xd5b7('0xb8')],_['omit'](_0x13cbea[_0xd5b7('0x74')],[_0xd5b7('0xb8'),'id'])||{});}})[_0xd5b7('0x25')](respondWithResult(_0x5eb127,null))[_0xd5b7('0x34')](handleError(_0x5eb127,null));};exports['getMessages']=function(_0x1ef3a0,_0x4c9e37,_0x2fb66d){var _0x504c7a={'raw':![],'where':{}};var _0x5514cb={};var _0x3e38c9={'count':0x0,'rows':[]};return db[_0xd5b7('0x98')][_0xd5b7('0xb9')]({'where':{'id':_0x1ef3a0[_0xd5b7('0xb0')]['id']}})[_0xd5b7('0x25')](handleEntityNotFound(_0x4c9e37,null))[_0xd5b7('0x25')](function(_0x82b1c6){if(_0x82b1c6){_0x5514cb[_0xd5b7('0x41')]=_[_0xd5b7('0x43')](db[_0xd5b7('0xb7')]['rawAttributes']);_0x5514cb[_0xd5b7('0x42')]=_[_0xd5b7('0x43')](_0x1ef3a0['query']);_0x5514cb[_0xd5b7('0x44')]=_['intersection'](_0x5514cb['model'],_0x5514cb[_0xd5b7('0x42')]);_0x504c7a['attributes']=_[_0xd5b7('0x46')](_0x5514cb['model'],qs[_0xd5b7('0x99')](_0x1ef3a0[_0xd5b7('0x42')]['fields']));_0x504c7a[_0xd5b7('0x45')]=_0x504c7a[_0xd5b7('0x45')][_0xd5b7('0x47')]?_0x504c7a[_0xd5b7('0x45')]:_0x5514cb[_0xd5b7('0x41')];if(!_0x1ef3a0[_0xd5b7('0x42')]['hasOwnProperty']('nolimit')){_0x504c7a[_0xd5b7('0x49')]=qs[_0xd5b7('0x49')](_0x1ef3a0[_0xd5b7('0x42')]['limit']);_0x504c7a[_0xd5b7('0x1d')]=qs[_0xd5b7('0x1d')](_0x1ef3a0['query'][_0xd5b7('0x1d')]);}_0x504c7a[_0xd5b7('0x4a')]=qs['sort'](_0x1ef3a0[_0xd5b7('0x42')][_0xd5b7('0x4b')]);_0x504c7a[_0xd5b7('0x4c')]=qs[_0xd5b7('0x44')](_['pick'](_0x1ef3a0[_0xd5b7('0x42')],_0x5514cb[_0xd5b7('0x44')]));_0x504c7a[_0xd5b7('0x4c')][_0xd5b7('0xba')]=_0x82b1c6['id'];if(_0x1ef3a0[_0xd5b7('0x42')][_0xd5b7('0x85')]){_0x504c7a[_0xd5b7('0x4c')]=_[_0xd5b7('0x97')](_0x504c7a[_0xd5b7('0x4c')],{'$or':_[_0xd5b7('0x2d')](_0x504c7a[_0xd5b7('0x45')],function(_0x321101){var _0x28cd71={};_0x28cd71[_0x321101]={'$like':'%'+_0x1ef3a0['query']['filter']+'%'};return _0x28cd71;})});}if(_0x1ef3a0[_0xd5b7('0x42')]['$gte']){var _0x32e990=_0x1ef3a0[_0xd5b7('0x42')][_0xd5b7('0x7b')][_0xd5b7('0x31')](',');var _0x496d99={};_0x496d99[_0x32e990[0x0]]={'$gte':moment(_0x32e990[0x1])[_0xd5b7('0xbb')]('YYYY-MM-DD\x20HH:mm:ss')};_0x504c7a[_0xd5b7('0x4c')]=_['merge'](_0x504c7a[_0xd5b7('0x4c')],_0x496d99);}_0x504c7a=_[_0xd5b7('0x97')]({},_0x504c7a,_0x1ef3a0[_0xd5b7('0xb3')]);return db[_0xd5b7('0xb7')]['count']({'where':_0x504c7a[_0xd5b7('0x4c')]})[_0xd5b7('0x25')](function(_0x1af08d){_0x3e38c9['count']=_0x1af08d;if(_0x1ef3a0['query'][_0xd5b7('0xb1')]){_0x504c7a[_0xd5b7('0xb2')]=[{'all':!![]}];}return db[_0xd5b7('0xb7')][_0xd5b7('0xbc')](_0x504c7a);})[_0xd5b7('0x25')](function(_0x314c4c){_0x3e38c9[_0xd5b7('0xae')]=_0x314c4c;return _0x3e38c9;});}})['then'](respondWithFilteredResult(_0x4c9e37,_0x504c7a))['catch'](handleError(_0x4c9e37,null));};exports['addTags']=function(_0x463415,_0x16f022,_0x56c0b5){return db['OpenchannelInteraction'][_0xd5b7('0x63')]({'where':{'id':_0x463415[_0xd5b7('0xb0')]['id']}})[_0xd5b7('0x25')](handleEntityNotFound(_0x16f022,null))[_0xd5b7('0x25')](function(_0x53ca1c){if(_0x53ca1c){return _0x53ca1c[_0xd5b7('0xbd')](_0x463415[_0xd5b7('0x74')]['ids'],_['omit'](_0x463415['body'],[_0xd5b7('0xb8'),'id'])||{})['spread'](function(){return db['Tag'][_0xd5b7('0xbc')]({'attributes':['id',_0xd5b7('0x2a'),'color'],'where':{'id':_0x463415['body']['ids']}});})[_0xd5b7('0x25')](function(_0x25da08){socket['emit']('openchannelInteractionTags:save',{'id':Number(_0x463415[_0xd5b7('0xb0')]['id']),'tags':_0x25da08||[]});return{'id':Number(_0x463415[_0xd5b7('0xb0')]['id']),'tags':_0x25da08||[]};});}})[_0xd5b7('0x25')](respondWithResult(_0x16f022,null))['catch'](handleError(_0x16f022,null));};exports[_0xd5b7('0xbe')]=function(_0x58ba86,_0xa8c1af,_0x11b2ca){return db['OpenchannelInteraction'][_0xd5b7('0x63')]({'where':{'id':_0x58ba86[_0xd5b7('0xb0')]['id']}})['then'](handleEntityNotFound(_0xa8c1af,null))[_0xd5b7('0x25')](function(_0x3e3191){if(_0x3e3191){return _0x3e3191[_0xd5b7('0xbe')](_0x58ba86[_0xd5b7('0x42')][_0xd5b7('0xb8')]);}})[_0xd5b7('0x25')](respondWithStatusCode(_0xa8c1af,null))['catch'](handleError(_0xa8c1af,null));};exports[_0xd5b7('0xbf')]=function(_0x1630bf,_0x3568e8){var _0x5e67c9=moment()[_0xd5b7('0xc0')]()['toString']();var _0x4d6aa2=path['join'](config['root'],_0xd5b7('0xc1'),_0xd5b7('0xc2'),_0xd5b7('0xc3'));var _0x19108d=path[_0xd5b7('0xc4')](config[_0xd5b7('0xc5')],_0xd5b7('0xc1'),_0xd5b7('0xc2'),_0xd5b7('0xc6'));var _0x594753=path[_0xd5b7('0xc4')](_0x4d6aa2,_0x5e67c9);var _0x8ffdf6=util[_0xd5b7('0xbb')]('transcript-%d-%s.zip',_0x1630bf[_0xd5b7('0xb0')]['id'],_0x5e67c9);var _0xef600b=path['join'](_0x4d6aa2,_0x8ffdf6);var _0x594f01=[];_0x594f01[_0xd5b7('0x33')]({'model':db[_0xd5b7('0xc7')],'as':_0xd5b7('0xc7'),'attributes':['id',_0xd5b7('0x2e')],'raw':!![]});_0x594f01[_0xd5b7('0x33')]({'model':db['CmContact'],'as':_0xd5b7('0x68'),'attributes':['id',_0xd5b7('0xc8'),_0xd5b7('0xc9')],'raw':!![]});if(_0x1630bf['query'][_0xd5b7('0xc6')]){_0x594f01['push']({'model':db[_0xd5b7('0xca')],'as':_0xd5b7('0xca'),'raw':!![]});}var _0x5607c1=[{'model':db[_0xd5b7('0xb7')],'as':_0xd5b7('0xcb'),'attributes':['id','body',_0xd5b7('0x79'),_0xd5b7('0xcc'),_0xd5b7('0xcd'),_0xd5b7('0x80')],'include':_0x594f01}];_0x5607c1[_0xd5b7('0x33')]({'model':db[_0xd5b7('0xce')],'as':_0xd5b7('0xcf'),'attributes':['id',_0xd5b7('0x2a')]});_0x5607c1[_0xd5b7('0x33')]({'model':db[_0xd5b7('0xc7')],'as':_0xd5b7('0xd0'),'attributes':['id',_0xd5b7('0x2e')]});return db[_0xd5b7('0x98')][_0xd5b7('0x63')]({'where':{'id':_0x1630bf[_0xd5b7('0xb0')]['id']},'include':_0x5607c1})[_0xd5b7('0x25')](handleEntityNotFound(_0x3568e8,null))[_0xd5b7('0x25')](function(_0x1c7e85){if(_0x1c7e85){var _0x4a73f0=_0x1c7e85[_0xd5b7('0xd1')]({'plain':!![]});fs['mkdirSync'](_0x594753);var _0x4310bd={'channel':_0xd5b7('0xd2'),'account':_0x4a73f0[_0xd5b7('0xcf')][_0xd5b7('0x2a')],'agent':_0x4a73f0['Owner']?_0x4a73f0[_0xd5b7('0xd0')]['fullname']:'N.A.','createdAt':moment(_0x4a73f0[_0xd5b7('0x79')])[_0xd5b7('0xbb')](_0xd5b7('0xd3'))[_0xd5b7('0x95')](),'closedAt':_0x4a73f0['closed']?moment(_0x4a73f0[_0xd5b7('0xd4')])[_0xd5b7('0xbb')](_0xd5b7('0xd3'))[_0xd5b7('0x95')]():'','disposition':_0x4a73f0[_0xd5b7('0xd5')],'visibility':_0x4a73f0[_0xd5b7('0xd6')]?'Public':_0xd5b7('0xd7'),'messages':_(_0x4a73f0[_0xd5b7('0xcb')])['filter']({'secret':![]})[_0xd5b7('0x2d')](function(_0x50633e){if(_0x50633e[_0xd5b7('0xca')]){var _0x415a9b=path[_0xd5b7('0xc4')](_0x19108d,_0x50633e[_0xd5b7('0xca')]['basename']);if(fs[_0xd5b7('0xd8')](_0x415a9b)){fs[_0xd5b7('0xd9')](_0x415a9b)['pipe'](fs[_0xd5b7('0xda')](path[_0xd5b7('0xc4')](_0x594753,_0x50633e['Attachment'][_0xd5b7('0xdb')])));}}return{'date':moment(_0x50633e[_0xd5b7('0x79')])[_0xd5b7('0xbb')]('YYYY-MM-DD\x20HH:mm:ss')[_0xd5b7('0x95')](),'sender':_0x50633e[_0xd5b7('0xcc')]==='out'?_0x50633e[_0xd5b7('0xc7')]?_0x50633e[_0xd5b7('0xc7')][_0xd5b7('0x2e')]:_0xd5b7('0xdc'):_0x50633e[_0xd5b7('0x68')][_0xd5b7('0xc8')]+(_0x50633e['Contact'][_0xd5b7('0xc9')]?'\x20'+_0x50633e[_0xd5b7('0x68')][_0xd5b7('0xc9')]:''),'body':_0x50633e[_0xd5b7('0xca')]?_0x50633e[_0xd5b7('0xca')][_0xd5b7('0xdb')]:_0x50633e[_0xd5b7('0x74')],'direction':_0x50633e[_0xd5b7('0xcc')]===_0xd5b7('0xdd')?'A':'C','secret':_0x50633e[_0xd5b7('0xcd')],'read':_0x50633e[_0xd5b7('0x80')],'attachment':_0x50633e[_0xd5b7('0xca')]};})[_0xd5b7('0x65')]()};return ejs[_0xd5b7('0xde')](path[_0xd5b7('0xc4')](config[_0xd5b7('0xc5')],_0xd5b7('0xc1'),_0xd5b7('0xdf'),_0xd5b7('0xe0')),{'interaction':_0x4310bd})['then'](function(_0x261778){var _0x1fbfd0=path[_0xd5b7('0xc4')](_0x594753,_0xd5b7('0xe1')+_0x4a73f0['id']+'-'+_0x5e67c9+_0xd5b7('0xe2'));var _0x3459fc={'path':_0x1fbfd0,'channel':_0xd5b7('0xd2'),'interactionId':_0x4a73f0['id']};return pdf[_0xd5b7('0xe3')](_0x261778,_0x3459fc);})[_0xd5b7('0x25')](function(){return new BPromise(function(_0x46a2fc,_0x147487){zipdir(_0x594753,{'saveTo':_0xef600b},function(_0x2b82c0,_0x897d3a){if(_0x2b82c0)return _0x147487(_0x2b82c0);return _0x46a2fc(_0x897d3a);});})['then'](function(){return new BPromise(function(_0x4825d5,_0x580df0){rimraf(_0x594753,function(_0x29a048){if(_0x29a048)_0x580df0(_0x29a048);return _0x4825d5();});});})[_0xd5b7('0x25')](function(){return _0x3568e8[_0xd5b7('0xbf')](_0xef600b,_0x8ffdf6,function(_0x143da7){if(_0x143da7){console[_0xd5b7('0xe4')]('err',_0x143da7);}else{fs[_0xd5b7('0xe5')](_0xef600b);}});});});}else{return _0x3568e8[_0xd5b7('0x1a')](0xc8);}})[_0xd5b7('0x34')](handleError(_0x3568e8,null));};
\ No newline at end of file
+var _0xe0a8=['update','describe','addMessage','OpenchannelMessage','ids','getMessages','findOne','hasOwnProperty','nolimit','sort','pick','where','OpenchannelInteractionId','filter','split','YYYY-MM-DD\x20HH:mm:ss','count','rows','addTags','setTags','omit','spread','Tag','emit','openchannelInteractionTags:save','download','toString','join','server','files','tmp','attachments','transcript-%d-%s.zip','User','fullname','push','lastName','Attachment','Messages','createdAt','direction','secret','read','Account','Owner','get','mkdirSync','Openchannel','format','closed','closedAt','threadId','Public','Private','basename','existsSync','createReadStream','pipe','createWriteStream','firstName','Contact','value','views','downloadInteraction.ejs','transcript-','createPdfFromHTML','Unable\x20to\x20delete\x20zip\x20file','unlinkSync','rimraf','zip-dir','moment','util','path','ejs','lodash','ioredis','../../components/interaction/service','../../components/parsers/qs','../../components/export/pdf','api','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','register','status','json','undefined','limit','offset','set','destroy','then','end','sendStatus','error','name','send','index','map','OpenchannelInteraction','fieldName','type','key','getOptions','findAll','openchannel','query','user','catch','show','from','params','model','keys','rawAttributes','filters','intersection','attributes','fields','length','includeAll','include','merge','options','find','create','body'];(function(_0x2ff6f4,_0x5e96c8){var _0x1caa48=function(_0x48ad9b){while(--_0x48ad9b){_0x2ff6f4['push'](_0x2ff6f4['shift']());}};_0x1caa48(++_0x5e96c8);}(_0xe0a8,0xc6));var _0x8e0a=function(_0x40a045,_0x516f0e){_0x40a045=_0x40a045-0x0;var _0x1a687c=_0xe0a8[_0x40a045];return _0x1a687c;};'use strict';var rimraf=require(_0x8e0a('0x0'));var zipdir=require(_0x8e0a('0x1'));var moment=require(_0x8e0a('0x2'));var util=require(_0x8e0a('0x3'));var path=require(_0x8e0a('0x4'));var ejs=require(_0x8e0a('0x5'));var fs=require('fs');var _=require(_0x8e0a('0x6'));var Redis=require(_0x8e0a('0x7'));var interaction=require(_0x8e0a('0x8'));var qs=require(_0x8e0a('0x9'));var pdf=require(_0x8e0a('0xa'));var logger=require('../../config/logger')(_0x8e0a('0xb'));var config=require(_0x8e0a('0xc'));var db=require(_0x8e0a('0xd'))['db'];config['redis']=_[_0x8e0a('0xe')](config[_0x8e0a('0xf')],{'host':_0x8e0a('0x10'),'port':0x18eb});var socket=require(_0x8e0a('0x11'))(new Redis(config[_0x8e0a('0xf')]));require('./openchannelInteraction.socket')[_0x8e0a('0x12')](socket);function respondWithStatusCode(_0x568d55,_0x3a4754){_0x3a4754=_0x3a4754||0xcc;return function(_0x4879d9){if(_0x4879d9){return _0x568d55['sendStatus'](_0x3a4754);}return _0x568d55[_0x8e0a('0x13')](_0x3a4754)['end']();};}function respondWithResult(_0x42cecb,_0x1f32f2){_0x1f32f2=_0x1f32f2||0xc8;return function(_0x2d322c){if(_0x2d322c){return _0x42cecb[_0x8e0a('0x13')](_0x1f32f2)[_0x8e0a('0x14')](_0x2d322c);}};}function respondWithFilteredResult(_0x238194,_0x1f91fe){return function(_0x3efb28){if(_0x3efb28){var _0x115bc0=typeof _0x1f91fe['offset']===_0x8e0a('0x15')&&typeof _0x1f91fe[_0x8e0a('0x16')]===_0x8e0a('0x15');var _0xdd304d=_0x3efb28['count'];var _0x4e28b3=_0x115bc0?0x0:_0x1f91fe['offset'];var _0x310ae4=_0x115bc0?_0x3efb28['count']:_0x1f91fe[_0x8e0a('0x17')]+_0x1f91fe[_0x8e0a('0x16')];var _0x317e5a;if(_0x310ae4>=_0xdd304d){_0x310ae4=_0xdd304d;_0x317e5a=0xc8;}else{_0x317e5a=0xce;}_0x238194[_0x8e0a('0x13')](_0x317e5a);return _0x238194[_0x8e0a('0x18')]('Content-Range',_0x4e28b3+'-'+_0x310ae4+'/'+_0xdd304d)[_0x8e0a('0x14')](_0x3efb28);}return null;};}function saveUpdates(_0x172dff){return function(_0xf0d3b8){if(_0xf0d3b8){return _0xf0d3b8['update'](_0x172dff)['then'](function(_0x39fd1f){return _0x39fd1f;});}return null;};}function removeEntity(_0x64c80){return function(_0x42406c){if(_0x42406c){return _0x42406c[_0x8e0a('0x19')]()[_0x8e0a('0x1a')](function(){_0x64c80[_0x8e0a('0x13')](0xcc)[_0x8e0a('0x1b')]();});}};}function handleEntityNotFound(_0x149fa8){return function(_0x41030f){if(!_0x41030f){_0x149fa8[_0x8e0a('0x1c')](0x194);}return _0x41030f;};}function handleError(_0x4ed7d8,_0x5e2409){_0x5e2409=_0x5e2409||0x1f4;return function(_0x5cb69a){logger[_0x8e0a('0x1d')](_0x5cb69a['stack']);if(_0x5cb69a[_0x8e0a('0x1e')]){delete _0x5cb69a['name'];}_0x4ed7d8[_0x8e0a('0x13')](_0x5e2409)[_0x8e0a('0x1f')](_0x5cb69a);};}exports[_0x8e0a('0x20')]=function(_0x4920b9,_0x129573){var _0x521979={};var _0x183cc1=_[_0x8e0a('0x21')](db[_0x8e0a('0x22')]['rawAttributes'],function(_0x233bce){return{'name':_0x233bce[_0x8e0a('0x23')],'type':_0x233bce[_0x8e0a('0x24')][_0x8e0a('0x25')]};});_0x521979=qs[_0x8e0a('0x26')](_0x183cc1,_0x4920b9);return interaction[_0x8e0a('0x27')](_0x8e0a('0x28'),_0x4920b9[_0x8e0a('0x29')],_0x4920b9[_0x8e0a('0x2a')],_0x521979,_0x183cc1)[_0x8e0a('0x1a')](respondWithFilteredResult(_0x129573,_0x521979))[_0x8e0a('0x2b')](handleError(_0x129573,null));};exports[_0x8e0a('0x2c')]=function(_0x49cb7b,_0x502210){var _0x158038={};if(_0x49cb7b[_0x8e0a('0x29')][_0x8e0a('0x24')]&&_0x49cb7b[_0x8e0a('0x29')][_0x8e0a('0x24')]===_0x8e0a('0x2d')){_0x158038[_0x8e0a('0x2d')]=_0x49cb7b['params']['id'];}else{_0x158038['id']=_0x49cb7b[_0x8e0a('0x2e')]['id'];}var _0x1c4cb4={'raw':![],'where':_0x158038},_0x268de8={};_0x268de8[_0x8e0a('0x2f')]=_[_0x8e0a('0x30')](db[_0x8e0a('0x22')][_0x8e0a('0x31')]);_0x268de8[_0x8e0a('0x29')]=_['keys'](_0x49cb7b[_0x8e0a('0x29')]);_0x268de8[_0x8e0a('0x32')]=_[_0x8e0a('0x33')](_0x268de8[_0x8e0a('0x2f')],_0x268de8[_0x8e0a('0x29')]);_0x1c4cb4[_0x8e0a('0x34')]=_[_0x8e0a('0x33')](_0x268de8[_0x8e0a('0x2f')],qs['fields'](_0x49cb7b[_0x8e0a('0x29')][_0x8e0a('0x35')]));_0x1c4cb4[_0x8e0a('0x34')]=_0x1c4cb4[_0x8e0a('0x34')][_0x8e0a('0x36')]?_0x1c4cb4[_0x8e0a('0x34')]:_0x268de8[_0x8e0a('0x2f')];if(_0x49cb7b[_0x8e0a('0x29')][_0x8e0a('0x37')]){_0x1c4cb4[_0x8e0a('0x38')]=[{'all':!![]}];}_0x1c4cb4=_[_0x8e0a('0x39')]({},_0x1c4cb4,_0x49cb7b[_0x8e0a('0x3a')]);return db[_0x8e0a('0x22')][_0x8e0a('0x3b')](_0x1c4cb4)[_0x8e0a('0x1a')](handleEntityNotFound(_0x502210,null))[_0x8e0a('0x1a')](respondWithResult(_0x502210,null))[_0x8e0a('0x2b')](handleError(_0x502210,null));};exports['create']=function(_0x15f5d7,_0x398ad7){return db['OpenchannelInteraction'][_0x8e0a('0x3c')](_0x15f5d7[_0x8e0a('0x3d')],{})[_0x8e0a('0x1a')](respondWithResult(_0x398ad7,0xc9))[_0x8e0a('0x2b')](handleError(_0x398ad7,null));};exports[_0x8e0a('0x3e')]=function(_0x5e386e,_0x41b39d){if(_0x5e386e[_0x8e0a('0x3d')]['id']){delete _0x5e386e['body']['id'];}return db[_0x8e0a('0x22')][_0x8e0a('0x3b')]({'where':{'id':_0x5e386e[_0x8e0a('0x2e')]['id']}})[_0x8e0a('0x1a')](handleEntityNotFound(_0x41b39d,null))['then'](saveUpdates(_0x5e386e[_0x8e0a('0x3d')],null))[_0x8e0a('0x1a')](respondWithResult(_0x41b39d,null))['catch'](handleError(_0x41b39d,null));};exports[_0x8e0a('0x19')]=function(_0x372e9c,_0x44e590){return db[_0x8e0a('0x22')][_0x8e0a('0x3b')]({'where':{'id':_0x372e9c[_0x8e0a('0x2e')]['id']}})['then'](handleEntityNotFound(_0x44e590,null))[_0x8e0a('0x1a')](removeEntity(_0x44e590,null))[_0x8e0a('0x2b')](handleError(_0x44e590,null));};exports[_0x8e0a('0x3f')]=function(_0x2890ef,_0x15ac7){return db[_0x8e0a('0x22')][_0x8e0a('0x3f')]()['then'](respondWithResult(_0x15ac7,null))[_0x8e0a('0x2b')](handleError(_0x15ac7,null));};exports[_0x8e0a('0x40')]=function(_0x36a32f,_0x69e8b){return db[_0x8e0a('0x41')]['find']({'where':{'id':_0x36a32f[_0x8e0a('0x2e')]['id']}})[_0x8e0a('0x1a')](handleEntityNotFound(_0x69e8b,null))[_0x8e0a('0x1a')](function(_0x555b76){if(_0x555b76){return _0x555b76[_0x8e0a('0x40')](_0x36a32f[_0x8e0a('0x3d')][_0x8e0a('0x42')],_['omit'](_0x36a32f[_0x8e0a('0x3d')],['ids','id'])||{});}})[_0x8e0a('0x1a')](respondWithResult(_0x69e8b,null))[_0x8e0a('0x2b')](handleError(_0x69e8b,null));};exports[_0x8e0a('0x43')]=function(_0x1b7f10,_0x14fd3b){var _0x173fef={'raw':![],'where':{}};var _0x1ea8e5={};var _0x4570a1={'count':0x0,'rows':[]};return db[_0x8e0a('0x22')][_0x8e0a('0x44')]({'where':{'id':_0x1b7f10[_0x8e0a('0x2e')]['id']}})['then'](handleEntityNotFound(_0x14fd3b,null))['then'](function(_0x3c26aa){if(_0x3c26aa){_0x1ea8e5[_0x8e0a('0x2f')]=_['keys'](db[_0x8e0a('0x41')][_0x8e0a('0x31')]);_0x1ea8e5[_0x8e0a('0x29')]=_[_0x8e0a('0x30')](_0x1b7f10[_0x8e0a('0x29')]);_0x1ea8e5[_0x8e0a('0x32')]=_[_0x8e0a('0x33')](_0x1ea8e5[_0x8e0a('0x2f')],_0x1ea8e5[_0x8e0a('0x29')]);_0x173fef['attributes']=_[_0x8e0a('0x33')](_0x1ea8e5[_0x8e0a('0x2f')],qs['fields'](_0x1b7f10[_0x8e0a('0x29')][_0x8e0a('0x35')]));_0x173fef[_0x8e0a('0x34')]=_0x173fef[_0x8e0a('0x34')]['length']?_0x173fef[_0x8e0a('0x34')]:_0x1ea8e5[_0x8e0a('0x2f')];if(!_0x1b7f10[_0x8e0a('0x29')][_0x8e0a('0x45')](_0x8e0a('0x46'))){_0x173fef[_0x8e0a('0x16')]=qs[_0x8e0a('0x16')](_0x1b7f10['query'][_0x8e0a('0x16')]);_0x173fef[_0x8e0a('0x17')]=qs['offset'](_0x1b7f10[_0x8e0a('0x29')][_0x8e0a('0x17')]);}_0x173fef['order']=qs[_0x8e0a('0x47')](_0x1b7f10[_0x8e0a('0x29')][_0x8e0a('0x47')]);_0x173fef['where']=qs['filters'](_[_0x8e0a('0x48')](_0x1b7f10[_0x8e0a('0x29')],_0x1ea8e5[_0x8e0a('0x32')]));_0x173fef[_0x8e0a('0x49')][_0x8e0a('0x4a')]=_0x3c26aa['id'];if(_0x1b7f10[_0x8e0a('0x29')][_0x8e0a('0x4b')]){_0x173fef['where']=_[_0x8e0a('0x39')](_0x173fef[_0x8e0a('0x49')],{'$or':_['map'](_0x173fef[_0x8e0a('0x34')],function(_0x1b87d9){var _0x5466e6={};_0x5466e6[_0x1b87d9]={'$like':'%'+_0x1b7f10['query']['filter']+'%'};return _0x5466e6;})});}if(_0x1b7f10[_0x8e0a('0x29')]['$gte']){var _0x3cf9f6=_0x1b7f10[_0x8e0a('0x29')]['$gte'][_0x8e0a('0x4c')](',');var _0xe56d8d={};_0xe56d8d[_0x3cf9f6[0x0]]={'$gte':moment(_0x3cf9f6[0x1])['format'](_0x8e0a('0x4d'))};_0x173fef[_0x8e0a('0x49')]=_[_0x8e0a('0x39')](_0x173fef[_0x8e0a('0x49')],_0xe56d8d);}_0x173fef=_[_0x8e0a('0x39')]({},_0x173fef,_0x1b7f10['options']);return db[_0x8e0a('0x41')]['count']({'where':_0x173fef[_0x8e0a('0x49')]})[_0x8e0a('0x1a')](function(_0x28ee12){_0x4570a1[_0x8e0a('0x4e')]=_0x28ee12;if(_0x1b7f10[_0x8e0a('0x29')][_0x8e0a('0x37')]){_0x173fef[_0x8e0a('0x38')]=[{'all':!![]}];}return db[_0x8e0a('0x41')]['findAll'](_0x173fef);})['then'](function(_0x3fc070){_0x4570a1[_0x8e0a('0x4f')]=_0x3fc070;return _0x4570a1;});}})[_0x8e0a('0x1a')](respondWithFilteredResult(_0x14fd3b,_0x173fef))[_0x8e0a('0x2b')](handleError(_0x14fd3b,null));};exports[_0x8e0a('0x50')]=function(_0x17f37d,_0x435ad2){return db[_0x8e0a('0x22')][_0x8e0a('0x3b')]({'where':{'id':_0x17f37d[_0x8e0a('0x2e')]['id']}})[_0x8e0a('0x1a')](handleEntityNotFound(_0x435ad2,null))[_0x8e0a('0x1a')](function(_0xf462dc){if(_0xf462dc){return _0xf462dc[_0x8e0a('0x51')](_0x17f37d[_0x8e0a('0x3d')][_0x8e0a('0x42')],_[_0x8e0a('0x52')](_0x17f37d[_0x8e0a('0x3d')],[_0x8e0a('0x42'),'id'])||{})[_0x8e0a('0x53')](function(){return db[_0x8e0a('0x54')][_0x8e0a('0x27')]({'attributes':['id','name','color'],'where':{'id':_0x17f37d[_0x8e0a('0x3d')]['ids']}});})[_0x8e0a('0x1a')](function(_0x304d59){socket[_0x8e0a('0x55')](_0x8e0a('0x56'),{'id':Number(_0x17f37d[_0x8e0a('0x2e')]['id']),'tags':_0x304d59||[]});return{'id':Number(_0x17f37d[_0x8e0a('0x2e')]['id']),'tags':_0x304d59||[]};});}})[_0x8e0a('0x1a')](respondWithResult(_0x435ad2,null))[_0x8e0a('0x2b')](handleError(_0x435ad2,null));};exports['removeTags']=function(_0x3f8fa0,_0x394d4c){return db[_0x8e0a('0x22')][_0x8e0a('0x3b')]({'where':{'id':_0x3f8fa0[_0x8e0a('0x2e')]['id']}})[_0x8e0a('0x1a')](handleEntityNotFound(_0x394d4c,null))[_0x8e0a('0x1a')](function(_0x17ca5b){if(_0x17ca5b){return _0x17ca5b['removeTags'](_0x3f8fa0[_0x8e0a('0x29')][_0x8e0a('0x42')]);}})[_0x8e0a('0x1a')](respondWithStatusCode(_0x394d4c,null))[_0x8e0a('0x2b')](handleError(_0x394d4c,null));};exports[_0x8e0a('0x57')]=function(_0x834048,_0x386efe){var _0x293b07=moment()['unix']()[_0x8e0a('0x58')]();var _0x3929a3=path[_0x8e0a('0x59')](config['root'],_0x8e0a('0x5a'),_0x8e0a('0x5b'),_0x8e0a('0x5c'));var _0x2cdfe9=path[_0x8e0a('0x59')](config['root'],_0x8e0a('0x5a'),_0x8e0a('0x5b'),_0x8e0a('0x5d'));var _0x2c0fae=path[_0x8e0a('0x59')](_0x3929a3,_0x293b07);var _0xa9fe5a=util['format'](_0x8e0a('0x5e'),_0x834048[_0x8e0a('0x2e')]['id'],_0x293b07);var _0x1cbcd9=path[_0x8e0a('0x59')](_0x3929a3,_0xa9fe5a);var _0x3784c5=[];_0x3784c5['push']({'model':db[_0x8e0a('0x5f')],'as':_0x8e0a('0x5f'),'attributes':['id',_0x8e0a('0x60')],'raw':!![]});_0x3784c5[_0x8e0a('0x61')]({'model':db['CmContact'],'as':'Contact','attributes':['id','firstName',_0x8e0a('0x62')],'raw':!![]});if(_0x834048[_0x8e0a('0x29')][_0x8e0a('0x5d')]){_0x3784c5[_0x8e0a('0x61')]({'model':db[_0x8e0a('0x63')],'as':_0x8e0a('0x63'),'raw':!![]});}var _0x4c1950=[{'model':db[_0x8e0a('0x41')],'as':_0x8e0a('0x64'),'attributes':['id',_0x8e0a('0x3d'),_0x8e0a('0x65'),_0x8e0a('0x66'),_0x8e0a('0x67'),_0x8e0a('0x68')],'include':_0x3784c5}];_0x4c1950[_0x8e0a('0x61')]({'model':db['OpenchannelAccount'],'as':_0x8e0a('0x69'),'attributes':['id','name']});_0x4c1950[_0x8e0a('0x61')]({'model':db[_0x8e0a('0x5f')],'as':_0x8e0a('0x6a'),'attributes':['id',_0x8e0a('0x60')]});return db['OpenchannelInteraction'][_0x8e0a('0x3b')]({'where':{'id':_0x834048[_0x8e0a('0x2e')]['id']},'include':_0x4c1950})[_0x8e0a('0x1a')](handleEntityNotFound(_0x386efe,null))[_0x8e0a('0x1a')](function(_0x36262e){if(_0x36262e){var _0x15465e=_0x36262e[_0x8e0a('0x6b')]({'plain':!![]});fs[_0x8e0a('0x6c')](_0x2c0fae);var _0x18cb5b={'channel':_0x8e0a('0x6d'),'account':_0x15465e[_0x8e0a('0x69')][_0x8e0a('0x1e')],'agent':_0x15465e[_0x8e0a('0x6a')]?_0x15465e[_0x8e0a('0x6a')]['fullname']:'N.A.','createdAt':moment(_0x15465e[_0x8e0a('0x65')])[_0x8e0a('0x6e')](_0x8e0a('0x4d'))[_0x8e0a('0x58')](),'closedAt':_0x15465e[_0x8e0a('0x6f')]?moment(_0x15465e[_0x8e0a('0x70')])[_0x8e0a('0x6e')](_0x8e0a('0x4d'))[_0x8e0a('0x58')]():'','disposition':_0x15465e['disposition'],'visibility':_0x15465e[_0x8e0a('0x71')]?_0x8e0a('0x72'):_0x8e0a('0x73'),'messages':_(_0x15465e[_0x8e0a('0x64')])[_0x8e0a('0x4b')]({'secret':![]})[_0x8e0a('0x21')](function(_0x931e3c){if(_0x931e3c[_0x8e0a('0x63')]){var _0x89f97a=path[_0x8e0a('0x59')](_0x2cdfe9,_0x931e3c[_0x8e0a('0x63')][_0x8e0a('0x74')]);if(fs[_0x8e0a('0x75')](_0x89f97a)){fs[_0x8e0a('0x76')](_0x89f97a)[_0x8e0a('0x77')](fs[_0x8e0a('0x78')](path[_0x8e0a('0x59')](_0x2c0fae,_0x931e3c[_0x8e0a('0x63')][_0x8e0a('0x74')])));}}return{'date':moment(_0x931e3c[_0x8e0a('0x65')])[_0x8e0a('0x6e')](_0x8e0a('0x4d'))['toString'](),'sender':_0x931e3c['direction']==='out'?_0x931e3c[_0x8e0a('0x5f')]?_0x931e3c[_0x8e0a('0x5f')][_0x8e0a('0x60')]:'System':_0x931e3c['Contact'][_0x8e0a('0x79')]+(_0x931e3c['Contact'][_0x8e0a('0x62')]?'\x20'+_0x931e3c[_0x8e0a('0x7a')][_0x8e0a('0x62')]:''),'body':_0x931e3c[_0x8e0a('0x63')]?_0x931e3c[_0x8e0a('0x63')]['basename']:_0x931e3c['body'],'direction':_0x931e3c[_0x8e0a('0x66')]==='out'?'A':'C','secret':_0x931e3c['secret'],'read':_0x931e3c[_0x8e0a('0x68')],'attachment':_0x931e3c['Attachment']};})[_0x8e0a('0x7b')]()};return ejs['renderFile'](path[_0x8e0a('0x59')](config['root'],_0x8e0a('0x5a'),_0x8e0a('0x7c'),_0x8e0a('0x7d')),{'interaction':_0x18cb5b})['then'](function(_0x103209){var _0x4bbbc2=path[_0x8e0a('0x59')](_0x2c0fae,_0x8e0a('0x7e')+_0x15465e['id']+'-'+_0x293b07+'.pdf');var _0x80547a={'path':_0x4bbbc2,'channel':_0x8e0a('0x6d'),'interactionId':_0x15465e['id']};return pdf[_0x8e0a('0x7f')](_0x103209,_0x80547a);})[_0x8e0a('0x1a')](function(){return new Promise(function(_0x4bc0ca,_0x19a3a7){zipdir(_0x2c0fae,{'saveTo':_0x1cbcd9},function(_0x51257e,_0x5f0c0a){if(_0x51257e)return _0x19a3a7(_0x51257e);return _0x4bc0ca(_0x5f0c0a);});})[_0x8e0a('0x1a')](function(){return new Promise(function(_0x50b6b5,_0x156388){rimraf(_0x2c0fae,function(_0x10b0cd){if(_0x10b0cd)_0x156388(_0x10b0cd);return _0x50b6b5();});});})[_0x8e0a('0x1a')](function(){return _0x386efe[_0x8e0a('0x57')](_0x1cbcd9,_0xa9fe5a,function(_0x253f66){if(_0x253f66){logger[_0x8e0a('0x1d')](_0x8e0a('0x80'),_0x253f66);}else{fs[_0x8e0a('0x81')](_0x1cbcd9);}});});});}else{return _0x386efe['sendStatus'](0xc8);}})[_0x8e0a('0x2b')](handleError(_0x386efe,null));};
\ No newline at end of file