Built motion from commit 092f8824.|2.5.49
[motion2.git] / server / api / intSugarcrmField / intSugarcrmField.controller.js
index 7be2df0..5b6714a 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x207c=['../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','then','error','stack','name','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','where','merge','VIRTUAL','filter','SugarcrmField','findAll','rows','catch','show','params','includeAll','options','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','ejs','lodash','squel','jsforce','desk.js','to-csv','papaparse','ioredis'];(function(_0x4ceed6,_0x546eb4){var _0x3c74fe=function(_0x7cfabb){while(--_0x7cfabb){_0x4ceed6['push'](_0x4ceed6['shift']());}};_0x3c74fe(++_0x546eb4);}(_0x207c,0x1e8));var _0xc207=function(_0x3b1e04,_0x1b7b69){_0x3b1e04=_0x3b1e04-0x0;var _0x4b6fa0=_0x207c[_0x3b1e04];return _0x4b6fa0;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xc207('0x0'));var rimraf=require(_0xc207('0x1'));var zipdir=require(_0xc207('0x2'));var jsonpatch=require(_0xc207('0x3'));var rp=require(_0xc207('0x4'));var moment=require(_0xc207('0x5'));var BPromise=require(_0xc207('0x6'));var Mustache=require('mustache');var util=require(_0xc207('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xc207('0x8'));var fs=require('fs');var _=require(_0xc207('0x9'));var squel=require(_0xc207('0xa'));var crypto=require('crypto');var jsforce=require(_0xc207('0xb'));var deskjs=require(_0xc207('0xc'));var toCsv=require(_0xc207('0xd'));var querystring=require('querystring');var Papa=require(_0xc207('0xe'));var Redis=require(_0xc207('0xf'));var authService=require(_0xc207('0x10'));var qs=require(_0xc207('0x11'));var as=require(_0xc207('0x12'));var hardwareService=require(_0xc207('0x13'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0xc207('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0xc207('0x15'))['db'];function respondWithStatusCode(_0x2782ce,_0x59d401){_0x59d401=_0x59d401||0xcc;return function(_0x3e1108){if(_0x3e1108){return _0x2782ce[_0xc207('0x16')](_0x59d401);}return _0x2782ce[_0xc207('0x17')](_0x59d401)[_0xc207('0x18')]();};}function respondWithResult(_0xe993a0,_0x51e967){_0x51e967=_0x51e967||0xc8;return function(_0xc62672){if(_0xc62672){return _0xe993a0[_0xc207('0x17')](_0x51e967)[_0xc207('0x19')](_0xc62672);}};}function respondWithFilteredResult(_0x4031ad,_0x4ef6c4){return function(_0x564cef){if(_0x564cef){var _0x554e5c=_0x564cef[_0xc207('0x1a')],_0x1cebfa=_0x4ef6c4['offset'],_0x6e793d=_0x4ef6c4[_0xc207('0x1b')]+_0x4ef6c4[_0xc207('0x1c')],_0x3d9c7b;if(_0x6e793d>=_0x554e5c){_0x6e793d=_0x554e5c;_0x3d9c7b=0xc8;}else{_0x3d9c7b=0xce;}_0x4031ad[_0xc207('0x17')](_0x3d9c7b);return _0x4031ad['set'](_0xc207('0x1d'),_0x1cebfa+'-'+_0x6e793d+'/'+_0x554e5c)['json'](_0x564cef);}return null;};}function patchUpdates(_0x42c8ba){return function(_0x33ddb1){try{jsonpatch[_0xc207('0x1e')](_0x33ddb1,_0x42c8ba,!![]);}catch(_0x461f6a){return BPromise[_0xc207('0x1f')](_0x461f6a);}return _0x33ddb1[_0xc207('0x20')]();};}function saveUpdates(_0x35c0b0,_0x464dea){return function(_0x212005){if(_0x212005){return _0x212005[_0xc207('0x21')](_0x35c0b0)[_0xc207('0x22')](function(_0xe227a){return _0xe227a;});}return null;};}function removeEntity(_0x40de25,_0x4b52a7){return function(_0x163b36){if(_0x163b36){return _0x163b36['destroy']()[_0xc207('0x22')](function(){_0x40de25[_0xc207('0x17')](0xcc)[_0xc207('0x18')]();});}};}function handleEntityNotFound(_0x83253f,_0x3539f4){return function(_0xd209ac){if(!_0xd209ac){_0x83253f[_0xc207('0x16')](0x194);}return _0xd209ac;};}function handleError(_0x1493fb,_0xa52138){_0xa52138=_0xa52138||0x1f4;return function(_0x2385f7){logger[_0xc207('0x23')](_0x2385f7[_0xc207('0x24')]);if(_0x2385f7[_0xc207('0x25')]){delete _0x2385f7[_0xc207('0x25')];}_0x1493fb[_0xc207('0x17')](_0xa52138)['send'](_0x2385f7);};}exports[_0xc207('0x26')]=function(_0x5e0bd1,_0x4cb3af){var _0x18ef72={},_0x3a05f3={},_0x2e41b1={'count':0x0,'rows':[]};var _0x2057ff=_[_0xc207('0x27')](db['SugarcrmField'][_0xc207('0x28')],function(_0x463ac8){return{'name':_0x463ac8[_0xc207('0x29')],'type':_0x463ac8[_0xc207('0x2a')][_0xc207('0x2b')]};});_0x3a05f3[_0xc207('0x2c')]=_[_0xc207('0x27')](_0x2057ff,_0xc207('0x25'));_0x3a05f3[_0xc207('0x2d')]=_[_0xc207('0x2e')](_0x5e0bd1[_0xc207('0x2d')]);_0x3a05f3[_0xc207('0x2f')]=_[_0xc207('0x30')](_0x3a05f3['model'],_0x3a05f3[_0xc207('0x2d')]);_0x18ef72[_0xc207('0x31')]=_[_0xc207('0x30')](_0x3a05f3[_0xc207('0x2c')],qs[_0xc207('0x32')](_0x5e0bd1[_0xc207('0x2d')]['fields']));_0x18ef72[_0xc207('0x31')]=_0x18ef72[_0xc207('0x31')][_0xc207('0x33')]?_0x18ef72[_0xc207('0x31')]:_0x3a05f3['model'];if(!_0x5e0bd1[_0xc207('0x2d')][_0xc207('0x34')](_0xc207('0x35'))){_0x18ef72[_0xc207('0x1c')]=qs[_0xc207('0x1c')](_0x5e0bd1[_0xc207('0x2d')][_0xc207('0x1c')]);_0x18ef72[_0xc207('0x1b')]=qs[_0xc207('0x1b')](_0x5e0bd1['query']['offset']);}_0x18ef72[_0xc207('0x36')]=qs[_0xc207('0x37')](_0x5e0bd1[_0xc207('0x2d')][_0xc207('0x37')]);_0x18ef72['where']=qs[_0xc207('0x2f')](_[_0xc207('0x38')](_0x5e0bd1[_0xc207('0x2d')],_0x3a05f3[_0xc207('0x2f')]),_0x2057ff);if(_0x5e0bd1[_0xc207('0x2d')]['filter']){_0x18ef72[_0xc207('0x39')]=_[_0xc207('0x3a')](_0x18ef72['where'],{'$or':_[_0xc207('0x27')](_0x2057ff,function(_0x49bada){if(_0x49bada[_0xc207('0x2a')]!==_0xc207('0x3b')){var _0x48b4de={};_0x48b4de[_0x49bada[_0xc207('0x25')]]={'$like':'%'+_0x5e0bd1[_0xc207('0x2d')][_0xc207('0x3c')]+'%'};return _0x48b4de;}})});}_0x18ef72=_['merge']({},_0x18ef72,_0x5e0bd1['options']);var _0x37cc19={'where':_0x18ef72[_0xc207('0x39')]};return db[_0xc207('0x3d')][_0xc207('0x1a')](_0x37cc19)['then'](function(_0x3a6f45){_0x2e41b1['count']=_0x3a6f45;if(_0x5e0bd1['query']['includeAll']){_0x18ef72['include']=[{'all':!![]}];}return db[_0xc207('0x3d')][_0xc207('0x3e')](_0x18ef72);})[_0xc207('0x22')](function(_0x487f98){_0x2e41b1[_0xc207('0x3f')]=_0x487f98;return _0x2e41b1;})[_0xc207('0x22')](respondWithFilteredResult(_0x4cb3af,_0x18ef72))[_0xc207('0x40')](handleError(_0x4cb3af,null));};exports[_0xc207('0x41')]=function(_0x48efac,_0x47d43a){var _0x223349={'raw':!![],'where':{'id':_0x48efac[_0xc207('0x42')]['id']}},_0x123a46={};_0x123a46[_0xc207('0x2c')]=_['keys'](db[_0xc207('0x3d')][_0xc207('0x28')]);_0x123a46[_0xc207('0x2d')]=_[_0xc207('0x2e')](_0x48efac[_0xc207('0x2d')]);_0x123a46[_0xc207('0x2f')]=_[_0xc207('0x30')](_0x123a46[_0xc207('0x2c')],_0x123a46[_0xc207('0x2d')]);_0x223349['attributes']=_[_0xc207('0x30')](_0x123a46[_0xc207('0x2c')],qs['fields'](_0x48efac[_0xc207('0x2d')][_0xc207('0x32')]));_0x223349[_0xc207('0x31')]=_0x223349[_0xc207('0x31')][_0xc207('0x33')]?_0x223349['attributes']:_0x123a46[_0xc207('0x2c')];if(_0x48efac[_0xc207('0x2d')][_0xc207('0x43')]){_0x223349['include']=[{'all':!![]}];}_0x223349=_[_0xc207('0x3a')]({},_0x223349,_0x48efac[_0xc207('0x44')]);return db[_0xc207('0x3d')][_0xc207('0x45')](_0x223349)['then'](handleEntityNotFound(_0x47d43a,null))['then'](respondWithResult(_0x47d43a,null))[_0xc207('0x40')](handleError(_0x47d43a,null));};exports[_0xc207('0x46')]=function(_0x45fa1d,_0x4dc267){return db[_0xc207('0x3d')][_0xc207('0x46')](_0x45fa1d[_0xc207('0x47')],{})[_0xc207('0x22')](respondWithResult(_0x4dc267,0xc9))[_0xc207('0x40')](handleError(_0x4dc267,null));};exports[_0xc207('0x21')]=function(_0x2afcd1,_0x2fda4f){if(_0x2afcd1['body']['id']){delete _0x2afcd1['body']['id'];}return db[_0xc207('0x3d')][_0xc207('0x45')]({'where':{'id':_0x2afcd1[_0xc207('0x42')]['id']}})['then'](handleEntityNotFound(_0x2fda4f,null))[_0xc207('0x22')](saveUpdates(_0x2afcd1[_0xc207('0x47')],null))[_0xc207('0x22')](respondWithResult(_0x2fda4f,null))[_0xc207('0x40')](handleError(_0x2fda4f,null));};exports['destroy']=function(_0x26cb97,_0x50bdf1){return db[_0xc207('0x3d')]['find']({'where':{'id':_0x26cb97['params']['id']}})[_0xc207('0x22')](handleEntityNotFound(_0x50bdf1,null))[_0xc207('0x22')](removeEntity(_0x50bdf1,null))['catch'](handleError(_0x50bdf1,null));};
\ No newline at end of file
+var _0xbc31=['hasOwnProperty','nolimit','order','sort','filter','where','merge','VIRTUAL','options','include','findAll','rows','show','params','includeAll','catch','create','body','find','destroy','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','util','path','sox','ejs','fs-extra','squel','crypto','jsforce','to-csv','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','sendStatus','status','json','limit','undefined','count','offset','Content-Range','reject','save','update','then','end','error','stack','name','send','index','map','SugarcrmField','rawAttributes','fieldName','type','query','keys','filters','model','intersection','fields','attributes','length'];(function(_0x40220a,_0x22feb1){var _0x3903cc=function(_0x33a296){while(--_0x33a296){_0x40220a['push'](_0x40220a['shift']());}};_0x3903cc(++_0x22feb1);}(_0xbc31,0xa6));var _0x1bc3=function(_0x4a5f54,_0x52b134){_0x4a5f54=_0x4a5f54-0x0;var _0x36b486=_0xbc31[_0x4a5f54];return _0x36b486;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x1bc3('0x0'));var zipdir=require(_0x1bc3('0x1'));var jsonpatch=require(_0x1bc3('0x2'));var rp=require(_0x1bc3('0x3'));var moment=require('moment');var BPromise=require(_0x1bc3('0x4'));var Mustache=require('mustache');var util=require(_0x1bc3('0x5'));var path=require(_0x1bc3('0x6'));var sox=require(_0x1bc3('0x7'));var csv=require('to-csv');var ejs=require(_0x1bc3('0x8'));var fs=require('fs');var fs_extra=require(_0x1bc3('0x9'));var _=require('lodash');var squel=require(_0x1bc3('0xa'));var crypto=require(_0x1bc3('0xb'));var jsforce=require(_0x1bc3('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x1bc3('0xd'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x1bc3('0xe'));var authService=require(_0x1bc3('0xf'));var qs=require(_0x1bc3('0x10'));var as=require(_0x1bc3('0x11'));var hardwareService=require(_0x1bc3('0x12'));var logger=require(_0x1bc3('0x13'))(_0x1bc3('0x14'));var utils=require(_0x1bc3('0x15'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x574896,_0x405510){_0x405510=_0x405510||0xcc;return function(_0x244223){if(_0x244223){return _0x574896[_0x1bc3('0x16')](_0x405510);}return _0x574896[_0x1bc3('0x17')](_0x405510)['end']();};}function respondWithResult(_0x2965ef,_0x14e24a){_0x14e24a=_0x14e24a||0xc8;return function(_0x253f40){if(_0x253f40){return _0x2965ef[_0x1bc3('0x17')](_0x14e24a)[_0x1bc3('0x18')](_0x253f40);}};}function respondWithFilteredResult(_0xcf56b5,_0xe93eec){return function(_0xb2b084){if(_0xb2b084){var _0xb2ada8=typeof _0xe93eec['offset']==='undefined'&&typeof _0xe93eec[_0x1bc3('0x19')]===_0x1bc3('0x1a');var _0x164961=_0xb2b084[_0x1bc3('0x1b')];var _0x1aa101=_0xb2ada8?0x0:_0xe93eec[_0x1bc3('0x1c')];var _0x5db585=_0xb2ada8?_0xb2b084['count']:_0xe93eec['offset']+_0xe93eec[_0x1bc3('0x19')];var _0x2e30db;if(_0x5db585>=_0x164961){_0x5db585=_0x164961;_0x2e30db=0xc8;}else{_0x2e30db=0xce;}_0xcf56b5[_0x1bc3('0x17')](_0x2e30db);return _0xcf56b5['set'](_0x1bc3('0x1d'),_0x1aa101+'-'+_0x5db585+'/'+_0x164961)[_0x1bc3('0x18')](_0xb2b084);}return null;};}function patchUpdates(_0x5d8193){return function(_0x200157){try{jsonpatch['apply'](_0x200157,_0x5d8193,!![]);}catch(_0x94a3c5){return BPromise[_0x1bc3('0x1e')](_0x94a3c5);}return _0x200157[_0x1bc3('0x1f')]();};}function saveUpdates(_0x4e760a,_0x4e8c7c){return function(_0x27cbb4){if(_0x27cbb4){return _0x27cbb4[_0x1bc3('0x20')](_0x4e760a)[_0x1bc3('0x21')](function(_0x345374){return _0x345374;});}return null;};}function removeEntity(_0x2cbb50,_0x55071b){return function(_0x535f79){if(_0x535f79){return _0x535f79['destroy']()[_0x1bc3('0x21')](function(){_0x2cbb50[_0x1bc3('0x17')](0xcc)[_0x1bc3('0x22')]();});}};}function handleEntityNotFound(_0x5db2eb,_0x3d107a){return function(_0x238581){if(!_0x238581){_0x5db2eb['sendStatus'](0x194);}return _0x238581;};}function handleError(_0x5ca27b,_0x56e6c2){_0x56e6c2=_0x56e6c2||0x1f4;return function(_0x1e8c93){logger[_0x1bc3('0x23')](_0x1e8c93[_0x1bc3('0x24')]);if(_0x1e8c93[_0x1bc3('0x25')]){delete _0x1e8c93[_0x1bc3('0x25')];}_0x5ca27b[_0x1bc3('0x17')](_0x56e6c2)[_0x1bc3('0x26')](_0x1e8c93);};}exports[_0x1bc3('0x27')]=function(_0xcde2e2,_0x1ac17){var _0x5c90e2={},_0x5bca43={},_0x385cfa={'count':0x0,'rows':[]};var _0x54063c=_[_0x1bc3('0x28')](db[_0x1bc3('0x29')][_0x1bc3('0x2a')],function(_0x435ecd){return{'name':_0x435ecd[_0x1bc3('0x2b')],'type':_0x435ecd[_0x1bc3('0x2c')]['key']};});_0x5bca43['model']=_[_0x1bc3('0x28')](_0x54063c,_0x1bc3('0x25'));_0x5bca43[_0x1bc3('0x2d')]=_[_0x1bc3('0x2e')](_0xcde2e2['query']);_0x5bca43[_0x1bc3('0x2f')]=_['intersection'](_0x5bca43[_0x1bc3('0x30')],_0x5bca43[_0x1bc3('0x2d')]);_0x5c90e2['attributes']=_[_0x1bc3('0x31')](_0x5bca43[_0x1bc3('0x30')],qs[_0x1bc3('0x32')](_0xcde2e2[_0x1bc3('0x2d')][_0x1bc3('0x32')]));_0x5c90e2['attributes']=_0x5c90e2[_0x1bc3('0x33')][_0x1bc3('0x34')]?_0x5c90e2[_0x1bc3('0x33')]:_0x5bca43[_0x1bc3('0x30')];if(!_0xcde2e2[_0x1bc3('0x2d')][_0x1bc3('0x35')](_0x1bc3('0x36'))){_0x5c90e2['limit']=qs['limit'](_0xcde2e2[_0x1bc3('0x2d')][_0x1bc3('0x19')]);_0x5c90e2[_0x1bc3('0x1c')]=qs[_0x1bc3('0x1c')](_0xcde2e2[_0x1bc3('0x2d')][_0x1bc3('0x1c')]);}_0x5c90e2[_0x1bc3('0x37')]=qs[_0x1bc3('0x38')](_0xcde2e2[_0x1bc3('0x2d')][_0x1bc3('0x38')]);_0x5c90e2['where']=qs[_0x1bc3('0x2f')](_['pick'](_0xcde2e2[_0x1bc3('0x2d')],_0x5bca43[_0x1bc3('0x2f')]),_0x54063c);if(_0xcde2e2['query'][_0x1bc3('0x39')]){_0x5c90e2[_0x1bc3('0x3a')]=_[_0x1bc3('0x3b')](_0x5c90e2[_0x1bc3('0x3a')],{'$or':_[_0x1bc3('0x28')](_0x54063c,function(_0x5705b9){if(_0x5705b9[_0x1bc3('0x2c')]!==_0x1bc3('0x3c')){var _0x32e290={};_0x32e290[_0x5705b9[_0x1bc3('0x25')]]={'$like':'%'+_0xcde2e2['query'][_0x1bc3('0x39')]+'%'};return _0x32e290;}})});}_0x5c90e2=_[_0x1bc3('0x3b')]({},_0x5c90e2,_0xcde2e2[_0x1bc3('0x3d')]);var _0x385982={'where':_0x5c90e2[_0x1bc3('0x3a')]};return db[_0x1bc3('0x29')][_0x1bc3('0x1b')](_0x385982)[_0x1bc3('0x21')](function(_0x1015e6){_0x385cfa['count']=_0x1015e6;if(_0xcde2e2[_0x1bc3('0x2d')]['includeAll']){_0x5c90e2[_0x1bc3('0x3e')]=[{'all':!![]}];}return db['SugarcrmField'][_0x1bc3('0x3f')](_0x5c90e2);})[_0x1bc3('0x21')](function(_0x100895){_0x385cfa[_0x1bc3('0x40')]=_0x100895;return _0x385cfa;})[_0x1bc3('0x21')](respondWithFilteredResult(_0x1ac17,_0x5c90e2))['catch'](handleError(_0x1ac17,null));};exports[_0x1bc3('0x41')]=function(_0x3f2370,_0x5cf7b1){var _0x5ace5e={'raw':!![],'where':{'id':_0x3f2370[_0x1bc3('0x42')]['id']}},_0x1a85eb={};_0x1a85eb[_0x1bc3('0x30')]=_[_0x1bc3('0x2e')](db[_0x1bc3('0x29')][_0x1bc3('0x2a')]);_0x1a85eb[_0x1bc3('0x2d')]=_[_0x1bc3('0x2e')](_0x3f2370[_0x1bc3('0x2d')]);_0x1a85eb['filters']=_[_0x1bc3('0x31')](_0x1a85eb[_0x1bc3('0x30')],_0x1a85eb[_0x1bc3('0x2d')]);_0x5ace5e[_0x1bc3('0x33')]=_[_0x1bc3('0x31')](_0x1a85eb[_0x1bc3('0x30')],qs['fields'](_0x3f2370['query'][_0x1bc3('0x32')]));_0x5ace5e[_0x1bc3('0x33')]=_0x5ace5e[_0x1bc3('0x33')][_0x1bc3('0x34')]?_0x5ace5e[_0x1bc3('0x33')]:_0x1a85eb[_0x1bc3('0x30')];if(_0x3f2370['query'][_0x1bc3('0x43')]){_0x5ace5e[_0x1bc3('0x3e')]=[{'all':!![]}];}_0x5ace5e=_['merge']({},_0x5ace5e,_0x3f2370['options']);return db[_0x1bc3('0x29')]['find'](_0x5ace5e)[_0x1bc3('0x21')](handleEntityNotFound(_0x5cf7b1,null))[_0x1bc3('0x21')](respondWithResult(_0x5cf7b1,null))[_0x1bc3('0x44')](handleError(_0x5cf7b1,null));};exports[_0x1bc3('0x45')]=function(_0x36814b,_0x3f6d88){return db['SugarcrmField']['create'](_0x36814b[_0x1bc3('0x46')],{})[_0x1bc3('0x21')](respondWithResult(_0x3f6d88,0xc9))['catch'](handleError(_0x3f6d88,null));};exports['update']=function(_0x3a329f,_0x40b5fe){if(_0x3a329f[_0x1bc3('0x46')]['id']){delete _0x3a329f['body']['id'];}return db['SugarcrmField'][_0x1bc3('0x47')]({'where':{'id':_0x3a329f['params']['id']}})[_0x1bc3('0x21')](handleEntityNotFound(_0x40b5fe,null))['then'](saveUpdates(_0x3a329f[_0x1bc3('0x46')],null))['then'](respondWithResult(_0x40b5fe,null))['catch'](handleError(_0x40b5fe,null));};exports[_0x1bc3('0x48')]=function(_0x18f95e,_0x4e2f9a){return db[_0x1bc3('0x29')][_0x1bc3('0x47')]({'where':{'id':_0x18f95e[_0x1bc3('0x42')]['id']}})['then'](handleEntityNotFound(_0x4e2f9a,null))[_0x1bc3('0x21')](removeEntity(_0x4e2f9a,null))[_0x1bc3('0x44')](handleError(_0x4e2f9a,null));};
\ No newline at end of file