Built motion from commit a61a4a20.|2.5.46
[motion2.git] / server / api / jscriptyAnswerReport / jscriptyAnswerReport.controller.js
index 53adf84..24b6100 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xe178=['fieldName','type','key','model','name','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','findAll','rows','catch','show','params','rawAttributes','includeAll','include','find','create','body','describe','html-pdf','eml-format','fast-json-patch','request-promise','bluebird','mustache','util','ejs','lodash','squel','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../mysqldb','sendStatus','status','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','end','stack','send','map','JscriptyAnswerReport'];(function(_0x39bfb6,_0x4272c8){var _0x23fef9=function(_0x5f83c1){while(--_0x5f83c1){_0x39bfb6['push'](_0x39bfb6['shift']());}};_0x23fef9(++_0x4272c8);}(_0xe178,0xb0));var _0x8e17=function(_0xee645c,_0x4da3dc){_0xee645c=_0xee645c-0x0;var _0x4be732=_0xe178[_0xee645c];return _0x4be732;};'use strict';var pdf=require(_0x8e17('0x0'));var emlformat=require(_0x8e17('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0x8e17('0x2'));var rp=require(_0x8e17('0x3'));var moment=require('moment');var BPromise=require(_0x8e17('0x4'));var Mustache=require(_0x8e17('0x5'));var util=require(_0x8e17('0x6'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x8e17('0x7'));var fs=require('fs');var _=require(_0x8e17('0x8'));var squel=require(_0x8e17('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x8e17('0xa'));var toCsv=require('to-csv');var querystring=require(_0x8e17('0xb'));var Papa=require(_0x8e17('0xc'));var Redis=require('ioredis');var authService=require(_0x8e17('0xd'));var qs=require(_0x8e17('0xe'));var as=require(_0x8e17('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x8e17('0x10'));var utils=require(_0x8e17('0x11'));var config=require('../../config/environment');var db=require(_0x8e17('0x12'))['db'];function respondWithStatusCode(_0x19da95,_0xa09e2){_0xa09e2=_0xa09e2||0xcc;return function(_0x4646f4){if(_0x4646f4){return _0x19da95[_0x8e17('0x13')](_0xa09e2);}return _0x19da95['status'](_0xa09e2)['end']();};}function respondWithResult(_0x5db9f9,_0xa215b){_0xa215b=_0xa215b||0xc8;return function(_0x25769a){if(_0x25769a){return _0x5db9f9[_0x8e17('0x14')](_0xa215b)['json'](_0x25769a);}};}function respondWithFilteredResult(_0x3fe7a8,_0x57a8b6){return function(_0x1a15af){if(_0x1a15af){var _0x17a2f3=_0x1a15af[_0x8e17('0x15')],_0x69ae4e=_0x57a8b6['offset'],_0x56c657=_0x57a8b6[_0x8e17('0x16')]+_0x57a8b6[_0x8e17('0x17')],_0x4e212b;if(_0x56c657>=_0x17a2f3){_0x56c657=_0x17a2f3;_0x4e212b=0xc8;}else{_0x4e212b=0xce;}_0x3fe7a8[_0x8e17('0x14')](_0x4e212b);return _0x3fe7a8[_0x8e17('0x18')](_0x8e17('0x19'),_0x69ae4e+'-'+_0x56c657+'/'+_0x17a2f3)['json'](_0x1a15af);}return null;};}function patchUpdates(_0x45e9a9){return function(_0x59a335){try{jsonpatch[_0x8e17('0x1a')](_0x59a335,_0x45e9a9,!![]);}catch(_0x2d94d2){return BPromise[_0x8e17('0x1b')](_0x2d94d2);}return _0x59a335[_0x8e17('0x1c')]();};}function saveUpdates(_0x3861da,_0x250b8a){return function(_0x284c1c){if(_0x284c1c){return _0x284c1c[_0x8e17('0x1d')](_0x3861da)[_0x8e17('0x1e')](function(_0x54b66e){return _0x54b66e;});}return null;};}function removeEntity(_0x5829e2,_0x50b394){return function(_0x3c7631){if(_0x3c7631){return _0x3c7631[_0x8e17('0x1f')]()[_0x8e17('0x1e')](function(){_0x5829e2[_0x8e17('0x14')](0xcc)[_0x8e17('0x20')]();});}};}function handleEntityNotFound(_0x5305ed,_0x383d8f){return function(_0x5040d0){if(!_0x5040d0){_0x5305ed[_0x8e17('0x13')](0x194);}return _0x5040d0;};}function handleError(_0x6d6ee6,_0x3e75b9){_0x3e75b9=_0x3e75b9||0x1f4;return function(_0x20eadf){logger['error'](_0x20eadf[_0x8e17('0x21')]);if(_0x20eadf['name']){delete _0x20eadf['name'];}_0x6d6ee6[_0x8e17('0x14')](_0x3e75b9)[_0x8e17('0x22')](_0x20eadf);};}exports['index']=function(_0x577c22,_0x1890e7){var _0x5c99fd={},_0x389ded={},_0x40b8df={'count':0x0,'rows':[]};var _0x163280=_[_0x8e17('0x23')](db[_0x8e17('0x24')]['rawAttributes'],function(_0x3b8ae0){return{'name':_0x3b8ae0[_0x8e17('0x25')],'type':_0x3b8ae0[_0x8e17('0x26')][_0x8e17('0x27')]};});_0x389ded[_0x8e17('0x28')]=_['map'](_0x163280,_0x8e17('0x29'));_0x389ded[_0x8e17('0x2a')]=_[_0x8e17('0x2b')](_0x577c22[_0x8e17('0x2a')]);_0x389ded[_0x8e17('0x2c')]=_['intersection'](_0x389ded[_0x8e17('0x28')],_0x389ded[_0x8e17('0x2a')]);_0x5c99fd['attributes']=_[_0x8e17('0x2d')](_0x389ded['model'],qs[_0x8e17('0x2e')](_0x577c22[_0x8e17('0x2a')][_0x8e17('0x2e')]));_0x5c99fd[_0x8e17('0x2f')]=_0x5c99fd['attributes'][_0x8e17('0x30')]?_0x5c99fd['attributes']:_0x389ded[_0x8e17('0x28')];if(!_0x577c22[_0x8e17('0x2a')][_0x8e17('0x31')](_0x8e17('0x32'))){_0x5c99fd[_0x8e17('0x17')]=qs[_0x8e17('0x17')](_0x577c22[_0x8e17('0x2a')][_0x8e17('0x17')]);_0x5c99fd[_0x8e17('0x16')]=qs['offset'](_0x577c22[_0x8e17('0x2a')][_0x8e17('0x16')]);}_0x5c99fd[_0x8e17('0x33')]=qs[_0x8e17('0x34')](_0x577c22['query'][_0x8e17('0x34')]);_0x5c99fd[_0x8e17('0x35')]=qs['filters'](_[_0x8e17('0x36')](_0x577c22[_0x8e17('0x2a')],_0x389ded['filters']));if(_0x577c22[_0x8e17('0x2a')][_0x8e17('0x37')]){_0x5c99fd['where']=_[_0x8e17('0x38')](_0x5c99fd[_0x8e17('0x35')],{'$or':_[_0x8e17('0x23')](_0x163280,function(_0x1c11ff){if(_0x1c11ff[_0x8e17('0x26')]!==_0x8e17('0x39')){var _0x466cc2={};_0x466cc2[_0x1c11ff[_0x8e17('0x29')]]={'$like':'%'+_0x577c22[_0x8e17('0x2a')][_0x8e17('0x37')]+'%'};return _0x466cc2;}})});}_0x5c99fd=_[_0x8e17('0x38')]({},_0x5c99fd,_0x577c22[_0x8e17('0x3a')]);var _0x1cf587={'where':_0x5c99fd['where']};return db[_0x8e17('0x24')][_0x8e17('0x15')](_0x1cf587)[_0x8e17('0x1e')](function(_0x17bedc){_0x40b8df['count']=_0x17bedc;if(_0x577c22[_0x8e17('0x2a')]['includeAll']){_0x5c99fd['include']=[{'all':!![]}];}return db[_0x8e17('0x24')][_0x8e17('0x3b')](_0x5c99fd);})['then'](function(_0x2421f6){_0x40b8df[_0x8e17('0x3c')]=_0x2421f6;return _0x40b8df;})['then'](respondWithFilteredResult(_0x1890e7,_0x5c99fd))[_0x8e17('0x3d')](handleError(_0x1890e7,null));};exports[_0x8e17('0x3e')]=function(_0x212d23,_0x55b741){var _0x11ed97={'raw':!![],'where':{'id':_0x212d23[_0x8e17('0x3f')]['id']}},_0x14affc={};_0x14affc[_0x8e17('0x28')]=_['keys'](db[_0x8e17('0x24')][_0x8e17('0x40')]);_0x14affc['query']=_['keys'](_0x212d23[_0x8e17('0x2a')]);_0x14affc[_0x8e17('0x2c')]=_[_0x8e17('0x2d')](_0x14affc[_0x8e17('0x28')],_0x14affc[_0x8e17('0x2a')]);_0x11ed97[_0x8e17('0x2f')]=_[_0x8e17('0x2d')](_0x14affc[_0x8e17('0x28')],qs[_0x8e17('0x2e')](_0x212d23['query']['fields']));_0x11ed97[_0x8e17('0x2f')]=_0x11ed97[_0x8e17('0x2f')][_0x8e17('0x30')]?_0x11ed97[_0x8e17('0x2f')]:_0x14affc['model'];if(_0x212d23[_0x8e17('0x2a')][_0x8e17('0x41')]){_0x11ed97[_0x8e17('0x42')]=[{'all':!![]}];}_0x11ed97=_['merge']({},_0x11ed97,_0x212d23[_0x8e17('0x3a')]);return db['JscriptyAnswerReport'][_0x8e17('0x43')](_0x11ed97)[_0x8e17('0x1e')](handleEntityNotFound(_0x55b741,null))['then'](respondWithResult(_0x55b741,null))[_0x8e17('0x3d')](handleError(_0x55b741,null));};exports[_0x8e17('0x44')]=function(_0x14e531,_0x40b40b){return db[_0x8e17('0x24')][_0x8e17('0x44')](_0x14e531['body'],{})[_0x8e17('0x1e')](respondWithResult(_0x40b40b,0xc9))['catch'](handleError(_0x40b40b,null));};exports[_0x8e17('0x1d')]=function(_0x331975,_0x270fd2){if(_0x331975[_0x8e17('0x45')]['id']){delete _0x331975['body']['id'];}return db[_0x8e17('0x24')][_0x8e17('0x43')]({'where':{'id':_0x331975[_0x8e17('0x3f')]['id']}})[_0x8e17('0x1e')](handleEntityNotFound(_0x270fd2,null))[_0x8e17('0x1e')](saveUpdates(_0x331975['body'],null))['then'](respondWithResult(_0x270fd2,null))[_0x8e17('0x3d')](handleError(_0x270fd2,null));};exports[_0x8e17('0x1f')]=function(_0x52a2dc,_0x1a6aeb){return db[_0x8e17('0x24')][_0x8e17('0x43')]({'where':{'id':_0x52a2dc[_0x8e17('0x3f')]['id']}})[_0x8e17('0x1e')](handleEntityNotFound(_0x1a6aeb,null))[_0x8e17('0x1e')](removeEntity(_0x1a6aeb,null))[_0x8e17('0x3d')](handleError(_0x1a6aeb,null));};exports[_0x8e17('0x46')]=function(_0x46379a,_0xce1376){return db[_0x8e17('0x24')][_0x8e17('0x46')]()[_0x8e17('0x1e')](respondWithResult(_0xce1376,null))['catch'](handleError(_0xce1376,null));};
\ No newline at end of file
+var _0x11e5=['lodash','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../mysqldb','sendStatus','status','json','offset','limit','undefined','set','Content-Range','apply','save','update','then','error','stack','name','index','rawAttributes','fieldName','type','key','map','query','keys','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','filters','filter','merge','VIRTUAL','count','includeAll','include','JscriptyAnswerReport','findAll','rows','catch','show','params','options','find','create','body','destroy','describe','eml-format','zip-dir','fast-json-patch','moment','bluebird','mustache','path','ejs','fs-extra'];(function(_0x436981,_0x371571){var _0x2e4f86=function(_0x2da649){while(--_0x2da649){_0x436981['push'](_0x436981['shift']());}};_0x2e4f86(++_0x371571);}(_0x11e5,0x8b));var _0x511e=function(_0x2a50fc,_0x792726){_0x2a50fc=_0x2a50fc-0x0;var _0x5aa6a2=_0x11e5[_0x2a50fc];return _0x5aa6a2;};'use strict';var emlformat=require(_0x511e('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x511e('0x1'));var jsonpatch=require(_0x511e('0x2'));var rp=require('request-promise');var moment=require(_0x511e('0x3'));var BPromise=require(_0x511e('0x4'));var Mustache=require(_0x511e('0x5'));var util=require('util');var path=require(_0x511e('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x511e('0x7'));var fs=require('fs');var fs_extra=require(_0x511e('0x8'));var _=require(_0x511e('0x9'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x511e('0xa'));var deskjs=require(_0x511e('0xb'));var toCsv=require(_0x511e('0xc'));var querystring=require(_0x511e('0xd'));var Papa=require(_0x511e('0xe'));var Redis=require(_0x511e('0xf'));var authService=require(_0x511e('0x10'));var qs=require(_0x511e('0x11'));var as=require(_0x511e('0x12'));var hardwareService=require(_0x511e('0x13'));var logger=require(_0x511e('0x14'))('api');var utils=require(_0x511e('0x15'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x511e('0x16'))['db'];function respondWithStatusCode(_0x327880,_0x42679e){_0x42679e=_0x42679e||0xcc;return function(_0x258e2f){if(_0x258e2f){return _0x327880[_0x511e('0x17')](_0x42679e);}return _0x327880[_0x511e('0x18')](_0x42679e)['end']();};}function respondWithResult(_0xdd0dcd,_0x33fd64){_0x33fd64=_0x33fd64||0xc8;return function(_0x4e6507){if(_0x4e6507){return _0xdd0dcd[_0x511e('0x18')](_0x33fd64)[_0x511e('0x19')](_0x4e6507);}};}function respondWithFilteredResult(_0x4f50b9,_0xed773e){return function(_0x162c91){if(_0x162c91){var _0x3b990b=typeof _0xed773e[_0x511e('0x1a')]==='undefined'&&typeof _0xed773e[_0x511e('0x1b')]===_0x511e('0x1c');var _0x2e66b6=_0x162c91['count'];var _0x26af67=_0x3b990b?0x0:_0xed773e['offset'];var _0x34e6cd=_0x3b990b?_0x162c91['count']:_0xed773e['offset']+_0xed773e[_0x511e('0x1b')];var _0x5c4fb9;if(_0x34e6cd>=_0x2e66b6){_0x34e6cd=_0x2e66b6;_0x5c4fb9=0xc8;}else{_0x5c4fb9=0xce;}_0x4f50b9[_0x511e('0x18')](_0x5c4fb9);return _0x4f50b9[_0x511e('0x1d')](_0x511e('0x1e'),_0x26af67+'-'+_0x34e6cd+'/'+_0x2e66b6)[_0x511e('0x19')](_0x162c91);}return null;};}function patchUpdates(_0xd4df6f){return function(_0x3d3f46){try{jsonpatch[_0x511e('0x1f')](_0x3d3f46,_0xd4df6f,!![]);}catch(_0x452f20){return BPromise['reject'](_0x452f20);}return _0x3d3f46[_0x511e('0x20')]();};}function saveUpdates(_0x39e0b4,_0x2ebf30){return function(_0x1a273b){if(_0x1a273b){return _0x1a273b[_0x511e('0x21')](_0x39e0b4)[_0x511e('0x22')](function(_0x886b6){return _0x886b6;});}return null;};}function removeEntity(_0x2f28fc,_0x211b90){return function(_0x26618d){if(_0x26618d){return _0x26618d['destroy']()['then'](function(){_0x2f28fc[_0x511e('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1ff5c4,_0x53017d){return function(_0x3fbd19){if(!_0x3fbd19){_0x1ff5c4[_0x511e('0x17')](0x194);}return _0x3fbd19;};}function handleError(_0x406dfb,_0x1f8040){_0x1f8040=_0x1f8040||0x1f4;return function(_0x1bb7f9){logger[_0x511e('0x23')](_0x1bb7f9[_0x511e('0x24')]);if(_0x1bb7f9[_0x511e('0x25')]){delete _0x1bb7f9[_0x511e('0x25')];}_0x406dfb[_0x511e('0x18')](_0x1f8040)['send'](_0x1bb7f9);};}exports[_0x511e('0x26')]=function(_0x1d754d,_0xb563f6){var _0x1aaac1={},_0x369be6={},_0x50305a={'count':0x0,'rows':[]};var _0x431b75=_['map'](db['JscriptyAnswerReport'][_0x511e('0x27')],function(_0xb1d444){return{'name':_0xb1d444[_0x511e('0x28')],'type':_0xb1d444[_0x511e('0x29')][_0x511e('0x2a')]};});_0x369be6['model']=_[_0x511e('0x2b')](_0x431b75,_0x511e('0x25'));_0x369be6[_0x511e('0x2c')]=_[_0x511e('0x2d')](_0x1d754d[_0x511e('0x2c')]);_0x369be6['filters']=_[_0x511e('0x2e')](_0x369be6[_0x511e('0x2f')],_0x369be6[_0x511e('0x2c')]);_0x1aaac1[_0x511e('0x30')]=_[_0x511e('0x2e')](_0x369be6[_0x511e('0x2f')],qs[_0x511e('0x31')](_0x1d754d[_0x511e('0x2c')]['fields']));_0x1aaac1[_0x511e('0x30')]=_0x1aaac1[_0x511e('0x30')][_0x511e('0x32')]?_0x1aaac1[_0x511e('0x30')]:_0x369be6['model'];if(!_0x1d754d['query'][_0x511e('0x33')]('nolimit')){_0x1aaac1['limit']=qs[_0x511e('0x1b')](_0x1d754d[_0x511e('0x2c')][_0x511e('0x1b')]);_0x1aaac1[_0x511e('0x1a')]=qs[_0x511e('0x1a')](_0x1d754d['query'][_0x511e('0x1a')]);}_0x1aaac1[_0x511e('0x34')]=qs[_0x511e('0x35')](_0x1d754d['query'][_0x511e('0x35')]);_0x1aaac1[_0x511e('0x36')]=qs[_0x511e('0x37')](_['pick'](_0x1d754d[_0x511e('0x2c')],_0x369be6[_0x511e('0x37')]),_0x431b75);if(_0x1d754d['query'][_0x511e('0x38')]){_0x1aaac1[_0x511e('0x36')]=_[_0x511e('0x39')](_0x1aaac1[_0x511e('0x36')],{'$or':_[_0x511e('0x2b')](_0x431b75,function(_0x1a989a){if(_0x1a989a[_0x511e('0x29')]!==_0x511e('0x3a')){var _0xde4b8={};_0xde4b8[_0x1a989a[_0x511e('0x25')]]={'$like':'%'+_0x1d754d[_0x511e('0x2c')]['filter']+'%'};return _0xde4b8;}})});}_0x1aaac1=_[_0x511e('0x39')]({},_0x1aaac1,_0x1d754d['options']);var _0x51716f={'where':_0x1aaac1[_0x511e('0x36')]};return db['JscriptyAnswerReport']['count'](_0x51716f)[_0x511e('0x22')](function(_0x200207){_0x50305a[_0x511e('0x3b')]=_0x200207;if(_0x1d754d[_0x511e('0x2c')][_0x511e('0x3c')]){_0x1aaac1[_0x511e('0x3d')]=[{'all':!![]}];}return db[_0x511e('0x3e')][_0x511e('0x3f')](_0x1aaac1);})[_0x511e('0x22')](function(_0x396542){_0x50305a[_0x511e('0x40')]=_0x396542;return _0x50305a;})[_0x511e('0x22')](respondWithFilteredResult(_0xb563f6,_0x1aaac1))[_0x511e('0x41')](handleError(_0xb563f6,null));};exports[_0x511e('0x42')]=function(_0x5086e0,_0x5a7a12){var _0x19ffde={'raw':!![],'where':{'id':_0x5086e0[_0x511e('0x43')]['id']}},_0x29dcc1={};_0x29dcc1[_0x511e('0x2f')]=_[_0x511e('0x2d')](db['JscriptyAnswerReport'][_0x511e('0x27')]);_0x29dcc1[_0x511e('0x2c')]=_[_0x511e('0x2d')](_0x5086e0['query']);_0x29dcc1['filters']=_['intersection'](_0x29dcc1[_0x511e('0x2f')],_0x29dcc1[_0x511e('0x2c')]);_0x19ffde[_0x511e('0x30')]=_['intersection'](_0x29dcc1['model'],qs['fields'](_0x5086e0[_0x511e('0x2c')][_0x511e('0x31')]));_0x19ffde[_0x511e('0x30')]=_0x19ffde[_0x511e('0x30')][_0x511e('0x32')]?_0x19ffde[_0x511e('0x30')]:_0x29dcc1[_0x511e('0x2f')];if(_0x5086e0[_0x511e('0x2c')][_0x511e('0x3c')]){_0x19ffde[_0x511e('0x3d')]=[{'all':!![]}];}_0x19ffde=_[_0x511e('0x39')]({},_0x19ffde,_0x5086e0[_0x511e('0x44')]);return db[_0x511e('0x3e')][_0x511e('0x45')](_0x19ffde)[_0x511e('0x22')](handleEntityNotFound(_0x5a7a12,null))[_0x511e('0x22')](respondWithResult(_0x5a7a12,null))[_0x511e('0x41')](handleError(_0x5a7a12,null));};exports[_0x511e('0x46')]=function(_0x3a8395,_0x2c2573){return db[_0x511e('0x3e')][_0x511e('0x46')](_0x3a8395[_0x511e('0x47')],{})[_0x511e('0x22')](respondWithResult(_0x2c2573,0xc9))[_0x511e('0x41')](handleError(_0x2c2573,null));};exports[_0x511e('0x21')]=function(_0x3d6f6e,_0x31e949){if(_0x3d6f6e[_0x511e('0x47')]['id']){delete _0x3d6f6e[_0x511e('0x47')]['id'];}return db[_0x511e('0x3e')]['find']({'where':{'id':_0x3d6f6e[_0x511e('0x43')]['id']}})['then'](handleEntityNotFound(_0x31e949,null))[_0x511e('0x22')](saveUpdates(_0x3d6f6e[_0x511e('0x47')],null))[_0x511e('0x22')](respondWithResult(_0x31e949,null))['catch'](handleError(_0x31e949,null));};exports[_0x511e('0x48')]=function(_0x1217df,_0x33d555){return db['JscriptyAnswerReport'][_0x511e('0x45')]({'where':{'id':_0x1217df[_0x511e('0x43')]['id']}})['then'](handleEntityNotFound(_0x33d555,null))[_0x511e('0x22')](removeEntity(_0x33d555,null))[_0x511e('0x41')](handleError(_0x33d555,null));};exports[_0x511e('0x49')]=function(_0x32df56,_0x523669){return db[_0x511e('0x3e')]['describe']()[_0x511e('0x22')](respondWithResult(_0x523669,null))[_0x511e('0x41')](handleError(_0x523669,null));};
\ No newline at end of file