Built motion from commit (unavailable).|2.5.23
[motion2.git] / server / api / voiceQueuesLog / voiceQueuesLog.controller.js
index 596837e..caa750d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xb1d3=['destroy','error','stack','name','send','index','map','VoiceQueuesLog','fieldName','type','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','limit','order','sort','where','filter','merge','VIRTUAL','includeAll','catch','show','params','rawAttributes','include','find','create','body','html-pdf','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','squel','crypto','jsforce','desk.js','ioredis','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','set','apply','reject','save','update','then'];(function(_0x39d656,_0x448264){var _0x2d9348=function(_0x524e87){while(--_0x524e87){_0x39d656['push'](_0x39d656['shift']());}};_0x2d9348(++_0x448264);}(_0xb1d3,0xe8));var _0x3b1d=function(_0x4a49d4,_0x219209){_0x4a49d4=_0x4a49d4-0x0;var _0x20c7a6=_0xb1d3[_0x4a49d4];return _0x20c7a6;};'use strict';var pdf=require(_0x3b1d('0x0'));var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x3b1d('0x1'));var rp=require(_0x3b1d('0x2'));var moment=require(_0x3b1d('0x3'));var BPromise=require(_0x3b1d('0x4'));var Mustache=require('mustache');var util=require(_0x3b1d('0x5'));var path=require(_0x3b1d('0x6'));var sox=require(_0x3b1d('0x7'));var csv=require(_0x3b1d('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x3b1d('0x9'));var crypto=require(_0x3b1d('0xa'));var jsforce=require(_0x3b1d('0xb'));var deskjs=require(_0x3b1d('0xc'));var toCsv=require(_0x3b1d('0x8'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x3b1d('0xd'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x3b1d('0xe'))(_0x3b1d('0xf'));var utils=require(_0x3b1d('0x10'));var config=require(_0x3b1d('0x11'));var licenseUtil=require(_0x3b1d('0x12'));var db=require(_0x3b1d('0x13'))['db'];function respondWithStatusCode(_0x404f03,_0x44b011){_0x44b011=_0x44b011||0xcc;return function(_0x2886d5){if(_0x2886d5){return _0x404f03[_0x3b1d('0x14')](_0x44b011);}return _0x404f03[_0x3b1d('0x15')](_0x44b011)[_0x3b1d('0x16')]();};}function respondWithResult(_0x3cc04b,_0x4b6108){_0x4b6108=_0x4b6108||0xc8;return function(_0x55225a){if(_0x55225a){return _0x3cc04b['status'](_0x4b6108)[_0x3b1d('0x17')](_0x55225a);}};}function respondWithFilteredResult(_0x7f639d,_0x12b960){return function(_0x2ebcae){if(_0x2ebcae){var _0x108c1f=_0x2ebcae[_0x3b1d('0x18')],_0xe9e6a8=_0x12b960[_0x3b1d('0x19')],_0x49b5aa=_0x12b960[_0x3b1d('0x19')]+_0x12b960['limit'],_0x511806;if(_0x49b5aa>=_0x108c1f){_0x49b5aa=_0x108c1f;_0x511806=0xc8;}else{_0x511806=0xce;}_0x7f639d['status'](_0x511806);return _0x7f639d[_0x3b1d('0x1a')]('Content-Range',_0xe9e6a8+'-'+_0x49b5aa+'/'+_0x108c1f)['json'](_0x2ebcae);}return null;};}function patchUpdates(_0x1ae608){return function(_0x455b74){try{jsonpatch[_0x3b1d('0x1b')](_0x455b74,_0x1ae608,!![]);}catch(_0x6e80b){return BPromise[_0x3b1d('0x1c')](_0x6e80b);}return _0x455b74[_0x3b1d('0x1d')]();};}function saveUpdates(_0x602d8e,_0x4c5da8){return function(_0x5637e5){if(_0x5637e5){return _0x5637e5[_0x3b1d('0x1e')](_0x602d8e)[_0x3b1d('0x1f')](function(_0x323047){return _0x323047;});}return null;};}function removeEntity(_0xd4aa8f,_0x1aeb1d){return function(_0x5940af){if(_0x5940af){return _0x5940af[_0x3b1d('0x20')]()[_0x3b1d('0x1f')](function(){_0xd4aa8f[_0x3b1d('0x15')](0xcc)['end']();});}};}function handleEntityNotFound(_0x555229,_0x4d3e9d){return function(_0x394ae5){if(!_0x394ae5){_0x555229[_0x3b1d('0x14')](0x194);}return _0x394ae5;};}function handleError(_0x44836b,_0x356709){_0x356709=_0x356709||0x1f4;return function(_0x5a72a2){logger[_0x3b1d('0x21')](_0x5a72a2[_0x3b1d('0x22')]);if(_0x5a72a2[_0x3b1d('0x23')]){delete _0x5a72a2[_0x3b1d('0x23')];}_0x44836b[_0x3b1d('0x15')](_0x356709)[_0x3b1d('0x24')](_0x5a72a2);};}exports[_0x3b1d('0x25')]=function(_0x58dde9,_0x403702){var _0x45e596={},_0x1794c5={},_0xea77a5={'count':0x0,'rows':[]};var _0x1dc271=_[_0x3b1d('0x26')](db[_0x3b1d('0x27')]['rawAttributes'],function(_0x36d8ba){return{'name':_0x36d8ba[_0x3b1d('0x28')],'type':_0x36d8ba[_0x3b1d('0x29')]['key']};});_0x1794c5[_0x3b1d('0x2a')]=_[_0x3b1d('0x26')](_0x1dc271,_0x3b1d('0x23'));_0x1794c5[_0x3b1d('0x2b')]=_[_0x3b1d('0x2c')](_0x58dde9['query']);_0x1794c5[_0x3b1d('0x2d')]=_[_0x3b1d('0x2e')](_0x1794c5[_0x3b1d('0x2a')],_0x1794c5[_0x3b1d('0x2b')]);_0x45e596['attributes']=_[_0x3b1d('0x2e')](_0x1794c5['model'],qs[_0x3b1d('0x2f')](_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x2f')]));_0x45e596[_0x3b1d('0x30')]=_0x45e596[_0x3b1d('0x30')]['length']?_0x45e596[_0x3b1d('0x30')]:_0x1794c5['model'];if(!_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x31')]('nolimit')){_0x45e596['limit']=qs[_0x3b1d('0x32')](_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x32')]);_0x45e596[_0x3b1d('0x19')]=qs[_0x3b1d('0x19')](_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x19')]);}_0x45e596[_0x3b1d('0x33')]=qs[_0x3b1d('0x34')](_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x34')]);_0x45e596[_0x3b1d('0x35')]=qs[_0x3b1d('0x2d')](_['pick'](_0x58dde9[_0x3b1d('0x2b')],_0x1794c5[_0x3b1d('0x2d')]),_0x1dc271);if(_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x36')]){_0x45e596[_0x3b1d('0x35')]=_[_0x3b1d('0x37')](_0x45e596['where'],{'$or':_[_0x3b1d('0x26')](_0x1dc271,function(_0xb26683){if(_0xb26683[_0x3b1d('0x29')]!==_0x3b1d('0x38')){var _0x12db42={};_0x12db42[_0xb26683[_0x3b1d('0x23')]]={'$like':'%'+_0x58dde9['query'][_0x3b1d('0x36')]+'%'};return _0x12db42;}})});}_0x45e596=_[_0x3b1d('0x37')]({},_0x45e596,_0x58dde9['options']);var _0x59fb19={'where':_0x45e596['where']};return db[_0x3b1d('0x27')][_0x3b1d('0x18')](_0x59fb19)[_0x3b1d('0x1f')](function(_0xd7b25a){_0xea77a5[_0x3b1d('0x18')]=_0xd7b25a;if(_0x58dde9[_0x3b1d('0x2b')][_0x3b1d('0x39')]){_0x45e596['include']=[{'all':!![]}];}return db[_0x3b1d('0x27')]['findAll'](_0x45e596);})[_0x3b1d('0x1f')](function(_0x39f0cb){_0xea77a5['rows']=_0x39f0cb;return _0xea77a5;})['then'](respondWithFilteredResult(_0x403702,_0x45e596))[_0x3b1d('0x3a')](handleError(_0x403702,null));};exports[_0x3b1d('0x3b')]=function(_0x18fa61,_0x14fbf4){var _0x138fce={'raw':!![],'where':{'id':_0x18fa61[_0x3b1d('0x3c')]['id']}},_0x5bc244={};_0x5bc244['model']=_[_0x3b1d('0x2c')](db[_0x3b1d('0x27')][_0x3b1d('0x3d')]);_0x5bc244[_0x3b1d('0x2b')]=_[_0x3b1d('0x2c')](_0x18fa61[_0x3b1d('0x2b')]);_0x5bc244[_0x3b1d('0x2d')]=_['intersection'](_0x5bc244[_0x3b1d('0x2a')],_0x5bc244[_0x3b1d('0x2b')]);_0x138fce[_0x3b1d('0x30')]=_[_0x3b1d('0x2e')](_0x5bc244['model'],qs['fields'](_0x18fa61['query'][_0x3b1d('0x2f')]));_0x138fce[_0x3b1d('0x30')]=_0x138fce['attributes']['length']?_0x138fce[_0x3b1d('0x30')]:_0x5bc244[_0x3b1d('0x2a')];if(_0x18fa61[_0x3b1d('0x2b')][_0x3b1d('0x39')]){_0x138fce[_0x3b1d('0x3e')]=[{'all':!![]}];}_0x138fce=_[_0x3b1d('0x37')]({},_0x138fce,_0x18fa61['options']);return db['VoiceQueuesLog'][_0x3b1d('0x3f')](_0x138fce)['then'](handleEntityNotFound(_0x14fbf4,null))[_0x3b1d('0x1f')](respondWithResult(_0x14fbf4,null))[_0x3b1d('0x3a')](handleError(_0x14fbf4,null));};exports[_0x3b1d('0x40')]=function(_0x396490,_0x3fece4){return db['VoiceQueuesLog'][_0x3b1d('0x40')](_0x396490[_0x3b1d('0x41')],{})[_0x3b1d('0x1f')](respondWithResult(_0x3fece4,0xc9))[_0x3b1d('0x3a')](handleError(_0x3fece4,null));};exports[_0x3b1d('0x1e')]=function(_0x15a692,_0x42c9d6){if(_0x15a692['body']['id']){delete _0x15a692[_0x3b1d('0x41')]['id'];}return db[_0x3b1d('0x27')][_0x3b1d('0x3f')]({'where':{'id':_0x15a692[_0x3b1d('0x3c')]['id']}})[_0x3b1d('0x1f')](handleEntityNotFound(_0x42c9d6,null))[_0x3b1d('0x1f')](saveUpdates(_0x15a692[_0x3b1d('0x41')],null))[_0x3b1d('0x1f')](respondWithResult(_0x42c9d6,null))['catch'](handleError(_0x42c9d6,null));};exports[_0x3b1d('0x20')]=function(_0x2f318d,_0x45e6c9){return db[_0x3b1d('0x27')][_0x3b1d('0x3f')]({'where':{'id':_0x2f318d[_0x3b1d('0x3c')]['id']}})['then'](handleEntityNotFound(_0x45e6c9,null))[_0x3b1d('0x1f')](removeEntity(_0x45e6c9,null))['catch'](handleError(_0x45e6c9,null));};
\ No newline at end of file
+var _0xe981=['mustache','util','path','to-csv','ejs','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/license/util','../../mysqldb','status','end','json','count','offset','limit','set','Content-Range','reject','save','error','name','send','index','map','type','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','then','includeAll','include','catch','params','keys','VoiceQueuesLog','rawAttributes','options','find','create','update','body','destroy','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird'];(function(_0x2f367b,_0x435345){var _0x401ece=function(_0x5db185){while(--_0x5db185){_0x2f367b['push'](_0x2f367b['shift']());}};_0x401ece(++_0x435345);}(_0xe981,0x1a3));var _0x1e98=function(_0x2e7a43,_0x3b3df4){_0x2e7a43=_0x2e7a43-0x0;var _0x52e9e1=_0xe981[_0x2e7a43];return _0x52e9e1;};'use strict';var pdf=require(_0x1e98('0x0'));var emlformat=require(_0x1e98('0x1'));var rimraf=require(_0x1e98('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1e98('0x3'));var rp=require(_0x1e98('0x4'));var moment=require(_0x1e98('0x5'));var BPromise=require(_0x1e98('0x6'));var Mustache=require(_0x1e98('0x7'));var util=require(_0x1e98('0x8'));var path=require(_0x1e98('0x9'));var sox=require('sox');var csv=require(_0x1e98('0xa'));var ejs=require(_0x1e98('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0x1e98('0xc'));var crypto=require('crypto');var jsforce=require(_0x1e98('0xd'));var deskjs=require(_0x1e98('0xe'));var toCsv=require(_0x1e98('0xa'));var querystring=require(_0x1e98('0xf'));var Papa=require(_0x1e98('0x10'));var Redis=require(_0x1e98('0x11'));var authService=require(_0x1e98('0x12'));var qs=require(_0x1e98('0x13'));var as=require(_0x1e98('0x14'));var hardwareService=require(_0x1e98('0x15'));var logger=require('../../config/logger')('api');var utils=require(_0x1e98('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0x1e98('0x17'));var db=require(_0x1e98('0x18'))['db'];function respondWithStatusCode(_0x1d7e35,_0x1402bf){_0x1402bf=_0x1402bf||0xcc;return function(_0x421665){if(_0x421665){return _0x1d7e35['sendStatus'](_0x1402bf);}return _0x1d7e35[_0x1e98('0x19')](_0x1402bf)[_0x1e98('0x1a')]();};}function respondWithResult(_0x1cf909,_0x38ce47){_0x38ce47=_0x38ce47||0xc8;return function(_0x191571){if(_0x191571){return _0x1cf909[_0x1e98('0x19')](_0x38ce47)[_0x1e98('0x1b')](_0x191571);}};}function respondWithFilteredResult(_0x4e1759,_0x47a0a6){return function(_0x569723){if(_0x569723){var _0x5485ba=_0x569723[_0x1e98('0x1c')],_0x3f6c8a=_0x47a0a6[_0x1e98('0x1d')],_0xb38b78=_0x47a0a6[_0x1e98('0x1d')]+_0x47a0a6[_0x1e98('0x1e')],_0x42b73c;if(_0xb38b78>=_0x5485ba){_0xb38b78=_0x5485ba;_0x42b73c=0xc8;}else{_0x42b73c=0xce;}_0x4e1759[_0x1e98('0x19')](_0x42b73c);return _0x4e1759[_0x1e98('0x1f')](_0x1e98('0x20'),_0x3f6c8a+'-'+_0xb38b78+'/'+_0x5485ba)[_0x1e98('0x1b')](_0x569723);}return null;};}function patchUpdates(_0x50db8c){return function(_0x2f458e){try{jsonpatch['apply'](_0x2f458e,_0x50db8c,!![]);}catch(_0x1f19eb){return BPromise[_0x1e98('0x21')](_0x1f19eb);}return _0x2f458e[_0x1e98('0x22')]();};}function saveUpdates(_0x4e92e8,_0x2a3018){return function(_0x5d6608){if(_0x5d6608){return _0x5d6608['update'](_0x4e92e8)['then'](function(_0x298c39){return _0x298c39;});}return null;};}function removeEntity(_0x13dc60,_0x4d9a0d){return function(_0x5ae7e1){if(_0x5ae7e1){return _0x5ae7e1['destroy']()['then'](function(){_0x13dc60[_0x1e98('0x19')](0xcc)[_0x1e98('0x1a')]();});}};}function handleEntityNotFound(_0x20a3d3,_0x4fb191){return function(_0x40c638){if(!_0x40c638){_0x20a3d3['sendStatus'](0x194);}return _0x40c638;};}function handleError(_0x39a19d,_0x5f3060){_0x5f3060=_0x5f3060||0x1f4;return function(_0x37662b){logger[_0x1e98('0x23')](_0x37662b['stack']);if(_0x37662b[_0x1e98('0x24')]){delete _0x37662b[_0x1e98('0x24')];}_0x39a19d['status'](_0x5f3060)[_0x1e98('0x25')](_0x37662b);};}exports[_0x1e98('0x26')]=function(_0x30bd50,_0x3ff0e0){var _0x2091d4={},_0x52bf4d={},_0x402f32={'count':0x0,'rows':[]};var _0x356a58=_[_0x1e98('0x27')](db['VoiceQueuesLog']['rawAttributes'],function(_0x2de0a3){return{'name':_0x2de0a3['fieldName'],'type':_0x2de0a3[_0x1e98('0x28')]['key']};});_0x52bf4d[_0x1e98('0x29')]=_[_0x1e98('0x27')](_0x356a58,_0x1e98('0x24'));_0x52bf4d[_0x1e98('0x2a')]=_['keys'](_0x30bd50[_0x1e98('0x2a')]);_0x52bf4d[_0x1e98('0x2b')]=_[_0x1e98('0x2c')](_0x52bf4d[_0x1e98('0x29')],_0x52bf4d[_0x1e98('0x2a')]);_0x2091d4[_0x1e98('0x2d')]=_[_0x1e98('0x2c')](_0x52bf4d[_0x1e98('0x29')],qs[_0x1e98('0x2e')](_0x30bd50[_0x1e98('0x2a')][_0x1e98('0x2e')]));_0x2091d4[_0x1e98('0x2d')]=_0x2091d4[_0x1e98('0x2d')][_0x1e98('0x2f')]?_0x2091d4[_0x1e98('0x2d')]:_0x52bf4d[_0x1e98('0x29')];if(!_0x30bd50[_0x1e98('0x2a')][_0x1e98('0x30')](_0x1e98('0x31'))){_0x2091d4[_0x1e98('0x1e')]=qs[_0x1e98('0x1e')](_0x30bd50[_0x1e98('0x2a')][_0x1e98('0x1e')]);_0x2091d4['offset']=qs[_0x1e98('0x1d')](_0x30bd50[_0x1e98('0x2a')][_0x1e98('0x1d')]);}_0x2091d4[_0x1e98('0x32')]=qs[_0x1e98('0x33')](_0x30bd50[_0x1e98('0x2a')][_0x1e98('0x33')]);_0x2091d4[_0x1e98('0x34')]=qs[_0x1e98('0x2b')](_[_0x1e98('0x35')](_0x30bd50[_0x1e98('0x2a')],_0x52bf4d[_0x1e98('0x2b')]),_0x356a58);if(_0x30bd50['query'][_0x1e98('0x36')]){_0x2091d4[_0x1e98('0x34')]=_[_0x1e98('0x37')](_0x2091d4[_0x1e98('0x34')],{'$or':_[_0x1e98('0x27')](_0x356a58,function(_0x31371e){if(_0x31371e[_0x1e98('0x28')]!==_0x1e98('0x38')){var _0x5eab69={};_0x5eab69[_0x31371e[_0x1e98('0x24')]]={'$like':'%'+_0x30bd50[_0x1e98('0x2a')]['filter']+'%'};return _0x5eab69;}})});}_0x2091d4=_[_0x1e98('0x37')]({},_0x2091d4,_0x30bd50['options']);var _0x40272e={'where':_0x2091d4[_0x1e98('0x34')]};return db['VoiceQueuesLog'][_0x1e98('0x1c')](_0x40272e)[_0x1e98('0x39')](function(_0x3dae6e){_0x402f32[_0x1e98('0x1c')]=_0x3dae6e;if(_0x30bd50['query'][_0x1e98('0x3a')]){_0x2091d4[_0x1e98('0x3b')]=[{'all':!![]}];}return db['VoiceQueuesLog']['findAll'](_0x2091d4);})[_0x1e98('0x39')](function(_0x574a68){_0x402f32['rows']=_0x574a68;return _0x402f32;})[_0x1e98('0x39')](respondWithFilteredResult(_0x3ff0e0,_0x2091d4))[_0x1e98('0x3c')](handleError(_0x3ff0e0,null));};exports['show']=function(_0x2c0fd0,_0xd9df68){var _0x5aaa94={'raw':!![],'where':{'id':_0x2c0fd0[_0x1e98('0x3d')]['id']}},_0x3bcde8={};_0x3bcde8['model']=_[_0x1e98('0x3e')](db[_0x1e98('0x3f')][_0x1e98('0x40')]);_0x3bcde8[_0x1e98('0x2a')]=_[_0x1e98('0x3e')](_0x2c0fd0[_0x1e98('0x2a')]);_0x3bcde8[_0x1e98('0x2b')]=_[_0x1e98('0x2c')](_0x3bcde8[_0x1e98('0x29')],_0x3bcde8[_0x1e98('0x2a')]);_0x5aaa94[_0x1e98('0x2d')]=_['intersection'](_0x3bcde8['model'],qs['fields'](_0x2c0fd0['query']['fields']));_0x5aaa94['attributes']=_0x5aaa94['attributes'][_0x1e98('0x2f')]?_0x5aaa94['attributes']:_0x3bcde8[_0x1e98('0x29')];if(_0x2c0fd0[_0x1e98('0x2a')][_0x1e98('0x3a')]){_0x5aaa94[_0x1e98('0x3b')]=[{'all':!![]}];}_0x5aaa94=_[_0x1e98('0x37')]({},_0x5aaa94,_0x2c0fd0[_0x1e98('0x41')]);return db[_0x1e98('0x3f')][_0x1e98('0x42')](_0x5aaa94)[_0x1e98('0x39')](handleEntityNotFound(_0xd9df68,null))['then'](respondWithResult(_0xd9df68,null))['catch'](handleError(_0xd9df68,null));};exports[_0x1e98('0x43')]=function(_0x409070,_0x42e9e0){return db[_0x1e98('0x3f')][_0x1e98('0x43')](_0x409070['body'],{})[_0x1e98('0x39')](respondWithResult(_0x42e9e0,0xc9))[_0x1e98('0x3c')](handleError(_0x42e9e0,null));};exports[_0x1e98('0x44')]=function(_0x471f25,_0x2590d7){if(_0x471f25['body']['id']){delete _0x471f25[_0x1e98('0x45')]['id'];}return db['VoiceQueuesLog']['find']({'where':{'id':_0x471f25['params']['id']}})['then'](handleEntityNotFound(_0x2590d7,null))[_0x1e98('0x39')](saveUpdates(_0x471f25[_0x1e98('0x45')],null))[_0x1e98('0x39')](respondWithResult(_0x2590d7,null))[_0x1e98('0x3c')](handleError(_0x2590d7,null));};exports[_0x1e98('0x46')]=function(_0x1767f4,_0x1e7715){return db[_0x1e98('0x3f')][_0x1e98('0x42')]({'where':{'id':_0x1767f4[_0x1e98('0x3d')]['id']}})[_0x1e98('0x39')](handleEntityNotFound(_0x1e7715,null))[_0x1e98('0x39')](removeEntity(_0x1e7715,null))[_0x1e98('0x3c')](handleError(_0x1e7715,null));};
\ No newline at end of file