Built motion from commit b5413ace.|2.6.9
[motion2.git] / server / api / jscriptyAnswerReport / jscriptyAnswerReport.controller.js
index 5de19a8..cfab35e 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xc08a=['JscriptyAnswerReport','rawAttributes','type','key','model','map','query','keys','filters','attributes','fields','hasOwnProperty','nolimit','limit','order','sort','where','merge','VIRTUAL','filter','then','includeAll','include','findAll','rows','catch','show','params','intersection','length','options','create','body','find','describe','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','json','count','offset','set','Content-Range','apply','reject','save','update','destroy','end','error','name','send','index'];(function(_0x244858,_0x22aa17){var _0xd4c60b=function(_0x26b6e0){while(--_0x26b6e0){_0x244858['push'](_0x244858['shift']());}};_0xd4c60b(++_0x22aa17);}(_0xc08a,0x167));var _0xac08=function(_0x26993e,_0x4bd61a){_0x26993e=_0x26993e-0x0;var _0x85102f=_0xc08a[_0x26993e];return _0x85102f;};'use strict';var pdf=require(_0xac08('0x0'));var emlformat=require(_0xac08('0x1'));var rimraf=require(_0xac08('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xac08('0x3'));var rp=require(_0xac08('0x4'));var moment=require(_0xac08('0x5'));var BPromise=require(_0xac08('0x6'));var Mustache=require(_0xac08('0x7'));var util=require(_0xac08('0x8'));var path=require(_0xac08('0x9'));var sox=require(_0xac08('0xa'));var csv=require(_0xac08('0xb'));var ejs=require(_0xac08('0xc'));var fs=require('fs');var _=require(_0xac08('0xd'));var squel=require(_0xac08('0xe'));var crypto=require(_0xac08('0xf'));var jsforce=require(_0xac08('0x10'));var deskjs=require('desk.js');var toCsv=require(_0xac08('0xb'));var querystring=require(_0xac08('0x11'));var Papa=require(_0xac08('0x12'));var Redis=require(_0xac08('0x13'));var authService=require(_0xac08('0x14'));var qs=require(_0xac08('0x15'));var as=require(_0xac08('0x16'));var hardwareService=require(_0xac08('0x17'));var logger=require(_0xac08('0x18'))(_0xac08('0x19'));var utils=require(_0xac08('0x1a'));var config=require(_0xac08('0x1b'));var db=require(_0xac08('0x1c'))['db'];function respondWithStatusCode(_0x42d4a2,_0x4fe1a2){_0x4fe1a2=_0x4fe1a2||0xcc;return function(_0x61d0f7){if(_0x61d0f7){return _0x42d4a2[_0xac08('0x1d')](_0x4fe1a2);}return _0x42d4a2[_0xac08('0x1e')](_0x4fe1a2)['end']();};}function respondWithResult(_0x3f15d3,_0x319b3b){_0x319b3b=_0x319b3b||0xc8;return function(_0x15bf10){if(_0x15bf10){return _0x3f15d3[_0xac08('0x1e')](_0x319b3b)[_0xac08('0x1f')](_0x15bf10);}};}function respondWithFilteredResult(_0x20b618,_0x349a6a){return function(_0x4867ec){if(_0x4867ec){var _0xdcd026=_0x4867ec[_0xac08('0x20')],_0x1e213b=_0x349a6a[_0xac08('0x21')],_0x2b61b0=_0x349a6a[_0xac08('0x21')]+_0x349a6a['limit'],_0x3b8194;if(_0x2b61b0>=_0xdcd026){_0x2b61b0=_0xdcd026;_0x3b8194=0xc8;}else{_0x3b8194=0xce;}_0x20b618['status'](_0x3b8194);return _0x20b618[_0xac08('0x22')](_0xac08('0x23'),_0x1e213b+'-'+_0x2b61b0+'/'+_0xdcd026)[_0xac08('0x1f')](_0x4867ec);}return null;};}function patchUpdates(_0x42e00c){return function(_0x26223a){try{jsonpatch[_0xac08('0x24')](_0x26223a,_0x42e00c,!![]);}catch(_0x386577){return BPromise[_0xac08('0x25')](_0x386577);}return _0x26223a[_0xac08('0x26')]();};}function saveUpdates(_0x1f205f,_0x11cf36){return function(_0x4e2510){if(_0x4e2510){return _0x4e2510[_0xac08('0x27')](_0x1f205f)['then'](function(_0xd3ab4d){return _0xd3ab4d;});}return null;};}function removeEntity(_0x2b6dbc,_0xdcf2b7){return function(_0x48de6f){if(_0x48de6f){return _0x48de6f[_0xac08('0x28')]()['then'](function(){_0x2b6dbc[_0xac08('0x1e')](0xcc)[_0xac08('0x29')]();});}};}function handleEntityNotFound(_0x57e5dc,_0x278187){return function(_0x2cdbab){if(!_0x2cdbab){_0x57e5dc[_0xac08('0x1d')](0x194);}return _0x2cdbab;};}function handleError(_0x4aefb3,_0x13d507){_0x13d507=_0x13d507||0x1f4;return function(_0x4f9813){logger[_0xac08('0x2a')](_0x4f9813['stack']);if(_0x4f9813['name']){delete _0x4f9813[_0xac08('0x2b')];}_0x4aefb3[_0xac08('0x1e')](_0x13d507)[_0xac08('0x2c')](_0x4f9813);};}exports[_0xac08('0x2d')]=function(_0x53f6ed,_0x2d628d){var _0x3c9b4d={},_0x30db1e={},_0x3cdfe3={'count':0x0,'rows':[]};var _0x5123a3=_['map'](db[_0xac08('0x2e')][_0xac08('0x2f')],function(_0x325c43){return{'name':_0x325c43['fieldName'],'type':_0x325c43[_0xac08('0x30')][_0xac08('0x31')]};});_0x30db1e[_0xac08('0x32')]=_[_0xac08('0x33')](_0x5123a3,_0xac08('0x2b'));_0x30db1e[_0xac08('0x34')]=_[_0xac08('0x35')](_0x53f6ed[_0xac08('0x34')]);_0x30db1e[_0xac08('0x36')]=_['intersection'](_0x30db1e[_0xac08('0x32')],_0x30db1e[_0xac08('0x34')]);_0x3c9b4d[_0xac08('0x37')]=_['intersection'](_0x30db1e[_0xac08('0x32')],qs[_0xac08('0x38')](_0x53f6ed[_0xac08('0x34')][_0xac08('0x38')]));_0x3c9b4d[_0xac08('0x37')]=_0x3c9b4d['attributes']['length']?_0x3c9b4d[_0xac08('0x37')]:_0x30db1e[_0xac08('0x32')];if(!_0x53f6ed[_0xac08('0x34')][_0xac08('0x39')](_0xac08('0x3a'))){_0x3c9b4d['limit']=qs[_0xac08('0x3b')](_0x53f6ed['query'][_0xac08('0x3b')]);_0x3c9b4d[_0xac08('0x21')]=qs[_0xac08('0x21')](_0x53f6ed[_0xac08('0x34')]['offset']);}_0x3c9b4d[_0xac08('0x3c')]=qs[_0xac08('0x3d')](_0x53f6ed[_0xac08('0x34')][_0xac08('0x3d')]);_0x3c9b4d[_0xac08('0x3e')]=qs['filters'](_['pick'](_0x53f6ed['query'],_0x30db1e['filters']));if(_0x53f6ed[_0xac08('0x34')]['filter']){_0x3c9b4d[_0xac08('0x3e')]=_[_0xac08('0x3f')](_0x3c9b4d[_0xac08('0x3e')],{'$or':_[_0xac08('0x33')](_0x5123a3,function(_0x18c3b3){if(_0x18c3b3[_0xac08('0x30')]!==_0xac08('0x40')){var _0x575661={};_0x575661[_0x18c3b3[_0xac08('0x2b')]]={'$like':'%'+_0x53f6ed[_0xac08('0x34')][_0xac08('0x41')]+'%'};return _0x575661;}})});}_0x3c9b4d=_[_0xac08('0x3f')]({},_0x3c9b4d,_0x53f6ed['options']);var _0x83dccf={'where':_0x3c9b4d[_0xac08('0x3e')]};return db[_0xac08('0x2e')][_0xac08('0x20')](_0x83dccf)[_0xac08('0x42')](function(_0x1c72d3){_0x3cdfe3[_0xac08('0x20')]=_0x1c72d3;if(_0x53f6ed[_0xac08('0x34')][_0xac08('0x43')]){_0x3c9b4d[_0xac08('0x44')]=[{'all':!![]}];}return db[_0xac08('0x2e')][_0xac08('0x45')](_0x3c9b4d);})[_0xac08('0x42')](function(_0x5372fe){_0x3cdfe3[_0xac08('0x46')]=_0x5372fe;return _0x3cdfe3;})[_0xac08('0x42')](respondWithFilteredResult(_0x2d628d,_0x3c9b4d))[_0xac08('0x47')](handleError(_0x2d628d,null));};exports[_0xac08('0x48')]=function(_0x5ca499,_0x36c729){var _0x1b7470={'raw':!![],'where':{'id':_0x5ca499[_0xac08('0x49')]['id']}},_0x1bcb85={};_0x1bcb85[_0xac08('0x32')]=_[_0xac08('0x35')](db[_0xac08('0x2e')][_0xac08('0x2f')]);_0x1bcb85['query']=_[_0xac08('0x35')](_0x5ca499[_0xac08('0x34')]);_0x1bcb85[_0xac08('0x36')]=_['intersection'](_0x1bcb85[_0xac08('0x32')],_0x1bcb85[_0xac08('0x34')]);_0x1b7470['attributes']=_[_0xac08('0x4a')](_0x1bcb85[_0xac08('0x32')],qs[_0xac08('0x38')](_0x5ca499[_0xac08('0x34')][_0xac08('0x38')]));_0x1b7470[_0xac08('0x37')]=_0x1b7470[_0xac08('0x37')][_0xac08('0x4b')]?_0x1b7470[_0xac08('0x37')]:_0x1bcb85[_0xac08('0x32')];if(_0x5ca499[_0xac08('0x34')][_0xac08('0x43')]){_0x1b7470[_0xac08('0x44')]=[{'all':!![]}];}_0x1b7470=_['merge']({},_0x1b7470,_0x5ca499[_0xac08('0x4c')]);return db[_0xac08('0x2e')]['find'](_0x1b7470)['then'](handleEntityNotFound(_0x36c729,null))['then'](respondWithResult(_0x36c729,null))[_0xac08('0x47')](handleError(_0x36c729,null));};exports['create']=function(_0x5b09a2,_0x3ef9b0){return db[_0xac08('0x2e')][_0xac08('0x4d')](_0x5b09a2[_0xac08('0x4e')],{})[_0xac08('0x42')](respondWithResult(_0x3ef9b0,0xc9))[_0xac08('0x47')](handleError(_0x3ef9b0,null));};exports['update']=function(_0x42fbf0,_0x4cb9e5){if(_0x42fbf0['body']['id']){delete _0x42fbf0[_0xac08('0x4e')]['id'];}return db[_0xac08('0x2e')][_0xac08('0x4f')]({'where':{'id':_0x42fbf0['params']['id']}})[_0xac08('0x42')](handleEntityNotFound(_0x4cb9e5,null))[_0xac08('0x42')](saveUpdates(_0x42fbf0['body'],null))[_0xac08('0x42')](respondWithResult(_0x4cb9e5,null))['catch'](handleError(_0x4cb9e5,null));};exports[_0xac08('0x28')]=function(_0x1976c7,_0x38998b){return db[_0xac08('0x2e')][_0xac08('0x4f')]({'where':{'id':_0x1976c7[_0xac08('0x49')]['id']}})[_0xac08('0x42')](handleEntityNotFound(_0x38998b,null))[_0xac08('0x42')](removeEntity(_0x38998b,null))[_0xac08('0x47')](handleError(_0x38998b,null));};exports[_0xac08('0x50')]=function(_0x4d0382,_0x1eb8fe){return db[_0xac08('0x2e')]['describe']()['then'](respondWithResult(_0x1eb8fe,null))[_0xac08('0x47')](handleError(_0x1eb8fe,null));};
\ No newline at end of file
+var _0x4317=['../../mysqldb','sendStatus','end','status','json','limit','undefined','count','offset','reject','save','update','then','destroy','name','send','index','map','JscriptyAnswerReport','rawAttributes','type','key','model','query','keys','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','options','includeAll','include','rows','show','params','catch','create','body','find','describe','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','util','path','sox','fs-extra','lodash','squel','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util'];(function(_0x321bb2,_0x202794){var _0x9c12ed=function(_0x263dd3){while(--_0x263dd3){_0x321bb2['push'](_0x321bb2['shift']());}};_0x9c12ed(++_0x202794);}(_0x4317,0x7c));var _0x7431=function(_0xa464c9,_0x7c86d8){_0xa464c9=_0xa464c9-0x0;var _0x3d73c4=_0x4317[_0xa464c9];return _0x3d73c4;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x7431('0x0'));var zipdir=require(_0x7431('0x1'));var jsonpatch=require(_0x7431('0x2'));var rp=require('request-promise');var moment=require(_0x7431('0x3'));var BPromise=require(_0x7431('0x4'));var Mustache=require(_0x7431('0x5'));var util=require(_0x7431('0x6'));var path=require(_0x7431('0x7'));var sox=require(_0x7431('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x7431('0x9'));var _=require(_0x7431('0xa'));var squel=require(_0x7431('0xb'));var crypto=require(_0x7431('0xc'));var jsforce=require(_0x7431('0xd'));var deskjs=require(_0x7431('0xe'));var toCsv=require(_0x7431('0xf'));var querystring=require(_0x7431('0x10'));var Papa=require(_0x7431('0x11'));var Redis=require(_0x7431('0x12'));var authService=require(_0x7431('0x13'));var qs=require(_0x7431('0x14'));var as=require(_0x7431('0x15'));var hardwareService=require(_0x7431('0x16'));var logger=require(_0x7431('0x17'))(_0x7431('0x18'));var utils=require(_0x7431('0x19'));var config=require(_0x7431('0x1a'));var licenseUtil=require(_0x7431('0x1b'));var db=require(_0x7431('0x1c'))['db'];function respondWithStatusCode(_0x3d3367,_0x367915){_0x367915=_0x367915||0xcc;return function(_0x4421d6){if(_0x4421d6){return _0x3d3367[_0x7431('0x1d')](_0x367915);}return _0x3d3367['status'](_0x367915)[_0x7431('0x1e')]();};}function respondWithResult(_0x1b13cc,_0x90e5eb){_0x90e5eb=_0x90e5eb||0xc8;return function(_0x4adbe4){if(_0x4adbe4){return _0x1b13cc[_0x7431('0x1f')](_0x90e5eb)[_0x7431('0x20')](_0x4adbe4);}};}function respondWithFilteredResult(_0x14bf18,_0x541904){return function(_0xc08396){if(_0xc08396){var _0x4bf072=typeof _0x541904['offset']==='undefined'&&typeof _0x541904[_0x7431('0x21')]===_0x7431('0x22');var _0x2fe0df=_0xc08396[_0x7431('0x23')];var _0x4a7048=_0x4bf072?0x0:_0x541904['offset'];var _0x167238=_0x4bf072?_0xc08396[_0x7431('0x23')]:_0x541904[_0x7431('0x24')]+_0x541904[_0x7431('0x21')];var _0x1e7fdf;if(_0x167238>=_0x2fe0df){_0x167238=_0x2fe0df;_0x1e7fdf=0xc8;}else{_0x1e7fdf=0xce;}_0x14bf18[_0x7431('0x1f')](_0x1e7fdf);return _0x14bf18['set']('Content-Range',_0x4a7048+'-'+_0x167238+'/'+_0x2fe0df)['json'](_0xc08396);}return null;};}function patchUpdates(_0x354e0c){return function(_0x901aa2){try{jsonpatch['apply'](_0x901aa2,_0x354e0c,!![]);}catch(_0x3cb70e){return BPromise[_0x7431('0x25')](_0x3cb70e);}return _0x901aa2[_0x7431('0x26')]();};}function saveUpdates(_0x51c7a7,_0x12c4cf){return function(_0xcbc861){if(_0xcbc861){return _0xcbc861[_0x7431('0x27')](_0x51c7a7)[_0x7431('0x28')](function(_0x49a64b){return _0x49a64b;});}return null;};}function removeEntity(_0x2e9fe7,_0x1688f6){return function(_0x4570b8){if(_0x4570b8){return _0x4570b8[_0x7431('0x29')]()[_0x7431('0x28')](function(){_0x2e9fe7[_0x7431('0x1f')](0xcc)[_0x7431('0x1e')]();});}};}function handleEntityNotFound(_0x183e53,_0x18e40c){return function(_0x9afb30){if(!_0x9afb30){_0x183e53[_0x7431('0x1d')](0x194);}return _0x9afb30;};}function handleError(_0x46e460,_0x551f92){_0x551f92=_0x551f92||0x1f4;return function(_0x43116e){logger['error'](_0x43116e['stack']);if(_0x43116e[_0x7431('0x2a')]){delete _0x43116e[_0x7431('0x2a')];}_0x46e460['status'](_0x551f92)[_0x7431('0x2b')](_0x43116e);};}exports[_0x7431('0x2c')]=function(_0xb1ac3,_0x2701e2){var _0x30e63f={},_0x24f91c={},_0xb184c={'count':0x0,'rows':[]};var _0x26a1be=_[_0x7431('0x2d')](db[_0x7431('0x2e')][_0x7431('0x2f')],function(_0xa63228){return{'name':_0xa63228['fieldName'],'type':_0xa63228[_0x7431('0x30')][_0x7431('0x31')]};});_0x24f91c[_0x7431('0x32')]=_[_0x7431('0x2d')](_0x26a1be,'name');_0x24f91c[_0x7431('0x33')]=_[_0x7431('0x34')](_0xb1ac3[_0x7431('0x33')]);_0x24f91c['filters']=_['intersection'](_0x24f91c[_0x7431('0x32')],_0x24f91c['query']);_0x30e63f['attributes']=_[_0x7431('0x35')](_0x24f91c['model'],qs[_0x7431('0x36')](_0xb1ac3[_0x7431('0x33')]['fields']));_0x30e63f[_0x7431('0x37')]=_0x30e63f[_0x7431('0x37')]['length']?_0x30e63f[_0x7431('0x37')]:_0x24f91c[_0x7431('0x32')];if(!_0xb1ac3[_0x7431('0x33')][_0x7431('0x38')](_0x7431('0x39'))){_0x30e63f['limit']=qs[_0x7431('0x21')](_0xb1ac3['query'][_0x7431('0x21')]);_0x30e63f[_0x7431('0x24')]=qs[_0x7431('0x24')](_0xb1ac3[_0x7431('0x33')][_0x7431('0x24')]);}_0x30e63f[_0x7431('0x3a')]=qs[_0x7431('0x3b')](_0xb1ac3[_0x7431('0x33')][_0x7431('0x3b')]);_0x30e63f[_0x7431('0x3c')]=qs[_0x7431('0x3d')](_[_0x7431('0x3e')](_0xb1ac3[_0x7431('0x33')],_0x24f91c[_0x7431('0x3d')]),_0x26a1be);if(_0xb1ac3[_0x7431('0x33')][_0x7431('0x3f')]){_0x30e63f[_0x7431('0x3c')]=_['merge'](_0x30e63f['where'],{'$or':_[_0x7431('0x2d')](_0x26a1be,function(_0x1c557c){if(_0x1c557c['type']!=='VIRTUAL'){var _0x1cb05a={};_0x1cb05a[_0x1c557c[_0x7431('0x2a')]]={'$like':'%'+_0xb1ac3[_0x7431('0x33')][_0x7431('0x3f')]+'%'};return _0x1cb05a;}})});}_0x30e63f=_[_0x7431('0x40')]({},_0x30e63f,_0xb1ac3[_0x7431('0x41')]);var _0x4e8db2={'where':_0x30e63f['where']};return db[_0x7431('0x2e')][_0x7431('0x23')](_0x4e8db2)[_0x7431('0x28')](function(_0x53dba5){_0xb184c['count']=_0x53dba5;if(_0xb1ac3[_0x7431('0x33')][_0x7431('0x42')]){_0x30e63f[_0x7431('0x43')]=[{'all':!![]}];}return db[_0x7431('0x2e')]['findAll'](_0x30e63f);})[_0x7431('0x28')](function(_0x540a5d){_0xb184c[_0x7431('0x44')]=_0x540a5d;return _0xb184c;})[_0x7431('0x28')](respondWithFilteredResult(_0x2701e2,_0x30e63f))['catch'](handleError(_0x2701e2,null));};exports[_0x7431('0x45')]=function(_0x150431,_0x32589c){var _0x50e648={'raw':!![],'where':{'id':_0x150431[_0x7431('0x46')]['id']}},_0x100c83={};_0x100c83['model']=_[_0x7431('0x34')](db[_0x7431('0x2e')][_0x7431('0x2f')]);_0x100c83[_0x7431('0x33')]=_['keys'](_0x150431[_0x7431('0x33')]);_0x100c83['filters']=_['intersection'](_0x100c83[_0x7431('0x32')],_0x100c83[_0x7431('0x33')]);_0x50e648[_0x7431('0x37')]=_['intersection'](_0x100c83['model'],qs[_0x7431('0x36')](_0x150431[_0x7431('0x33')]['fields']));_0x50e648[_0x7431('0x37')]=_0x50e648[_0x7431('0x37')]['length']?_0x50e648['attributes']:_0x100c83[_0x7431('0x32')];if(_0x150431['query'][_0x7431('0x42')]){_0x50e648[_0x7431('0x43')]=[{'all':!![]}];}_0x50e648=_[_0x7431('0x40')]({},_0x50e648,_0x150431['options']);return db[_0x7431('0x2e')]['find'](_0x50e648)[_0x7431('0x28')](handleEntityNotFound(_0x32589c,null))[_0x7431('0x28')](respondWithResult(_0x32589c,null))[_0x7431('0x47')](handleError(_0x32589c,null));};exports[_0x7431('0x48')]=function(_0x4006a6,_0x4f1092){return db['JscriptyAnswerReport'][_0x7431('0x48')](_0x4006a6[_0x7431('0x49')],{})[_0x7431('0x28')](respondWithResult(_0x4f1092,0xc9))[_0x7431('0x47')](handleError(_0x4f1092,null));};exports[_0x7431('0x27')]=function(_0xd66659,_0x6f7b4){if(_0xd66659['body']['id']){delete _0xd66659[_0x7431('0x49')]['id'];}return db[_0x7431('0x2e')][_0x7431('0x4a')]({'where':{'id':_0xd66659[_0x7431('0x46')]['id']}})[_0x7431('0x28')](handleEntityNotFound(_0x6f7b4,null))['then'](saveUpdates(_0xd66659[_0x7431('0x49')],null))['then'](respondWithResult(_0x6f7b4,null))['catch'](handleError(_0x6f7b4,null));};exports[_0x7431('0x29')]=function(_0x11dfb7,_0x2e6d44){return db[_0x7431('0x2e')][_0x7431('0x4a')]({'where':{'id':_0x11dfb7[_0x7431('0x46')]['id']}})['then'](handleEntityNotFound(_0x2e6d44,null))[_0x7431('0x28')](removeEntity(_0x2e6d44,null))[_0x7431('0x47')](handleError(_0x2e6d44,null));};exports['describe']=function(_0x30ddfe,_0x12cae0){return db[_0x7431('0x2e')][_0x7431('0x4b')]()['then'](respondWithResult(_0x12cae0,null))[_0x7431('0x47')](handleError(_0x12cae0,null));};
\ No newline at end of file