Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / intDynamics365Field / intDynamics365Field.controller.js
index 2a336a5..32fe30c 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x688b=['findAll','rows','catch','find','create','body','params','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','fs-extra','squel','desk.js','querystring','papaparse','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','update','then','destroy','error','stack','name','send','index','Dynamics365Field','rawAttributes','fieldName','type','model','map','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','pick','where','merge','filter','options','includeAll','include'];(function(_0x4138b6,_0x4ba4f2){var _0x48c0cb=function(_0x4211d2){while(--_0x4211d2){_0x4138b6['push'](_0x4138b6['shift']());}};_0x48c0cb(++_0x4ba4f2);}(_0x688b,0x10f));var _0xb688=function(_0x5dee2a,_0x47d02a){_0x5dee2a=_0x5dee2a-0x0;var _0x31e98e=_0x688b[_0x5dee2a];return _0x31e98e;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xb688('0x0'));var moment=require(_0xb688('0x1'));var BPromise=require(_0xb688('0x2'));var Mustache=require(_0xb688('0x3'));var util=require(_0xb688('0x4'));var path=require(_0xb688('0x5'));var sox=require(_0xb688('0x6'));var csv=require(_0xb688('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xb688('0x8'));var _=require('lodash');var squel=require(_0xb688('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0xb688('0xa'));var toCsv=require(_0xb688('0x7'));var querystring=require(_0xb688('0xb'));var Papa=require(_0xb688('0xc'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xb688('0xd'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xb688('0xe'))(_0xb688('0xf'));var utils=require('../../config/utils');var config=require(_0xb688('0x10'));var licenseUtil=require('../../config/license/util');var db=require(_0xb688('0x11'))['db'];function respondWithStatusCode(_0x4c548c,_0x557755){_0x557755=_0x557755||0xcc;return function(_0x3b11ef){if(_0x3b11ef){return _0x4c548c[_0xb688('0x12')](_0x557755);}return _0x4c548c[_0xb688('0x13')](_0x557755)[_0xb688('0x14')]();};}function respondWithResult(_0x4010a5,_0x5c7be7){_0x5c7be7=_0x5c7be7||0xc8;return function(_0x16a845){if(_0x16a845){return _0x4010a5[_0xb688('0x13')](_0x5c7be7)[_0xb688('0x15')](_0x16a845);}};}function respondWithFilteredResult(_0x1cd194,_0x55936c){return function(_0x22a67a){if(_0x22a67a){var _0x101a5a=typeof _0x55936c[_0xb688('0x16')]===_0xb688('0x17')&&typeof _0x55936c[_0xb688('0x18')]===_0xb688('0x17');var _0x126116=_0x22a67a['count'];var _0x3085bf=_0x101a5a?0x0:_0x55936c[_0xb688('0x16')];var _0x5c8dea=_0x101a5a?_0x22a67a[_0xb688('0x19')]:_0x55936c[_0xb688('0x16')]+_0x55936c['limit'];var _0x50842f;if(_0x5c8dea>=_0x126116){_0x5c8dea=_0x126116;_0x50842f=0xc8;}else{_0x50842f=0xce;}_0x1cd194[_0xb688('0x13')](_0x50842f);return _0x1cd194[_0xb688('0x1a')](_0xb688('0x1b'),_0x3085bf+'-'+_0x5c8dea+'/'+_0x126116)[_0xb688('0x15')](_0x22a67a);}return null;};}function patchUpdates(_0x51c4c0){return function(_0x3ae520){try{jsonpatch[_0xb688('0x1c')](_0x3ae520,_0x51c4c0,!![]);}catch(_0x1eaa15){return BPromise['reject'](_0x1eaa15);}return _0x3ae520['save']();};}function saveUpdates(_0x243d3d,_0x311c87){return function(_0x463eb5){if(_0x463eb5){return _0x463eb5[_0xb688('0x1d')](_0x243d3d)[_0xb688('0x1e')](function(_0x47e9b6){return _0x47e9b6;});}return null;};}function removeEntity(_0x242c8d,_0x8cb9ea){return function(_0x8c07f6){if(_0x8c07f6){return _0x8c07f6[_0xb688('0x1f')]()[_0xb688('0x1e')](function(){_0x242c8d[_0xb688('0x13')](0xcc)[_0xb688('0x14')]();});}};}function handleEntityNotFound(_0x34e65d,_0x518b64){return function(_0x51b0a0){if(!_0x51b0a0){_0x34e65d[_0xb688('0x12')](0x194);}return _0x51b0a0;};}function handleError(_0x23e095,_0x356744){_0x356744=_0x356744||0x1f4;return function(_0x4d8b19){logger[_0xb688('0x20')](_0x4d8b19[_0xb688('0x21')]);if(_0x4d8b19[_0xb688('0x22')]){delete _0x4d8b19[_0xb688('0x22')];}_0x23e095[_0xb688('0x13')](_0x356744)[_0xb688('0x23')](_0x4d8b19);};}exports[_0xb688('0x24')]=function(_0xd5d25d,_0x463630){var _0x323ad5={},_0x235d6c={},_0x549de8={'count':0x0,'rows':[]};var _0xf0f4c8=_['map'](db[_0xb688('0x25')][_0xb688('0x26')],function(_0x32d255){return{'name':_0x32d255[_0xb688('0x27')],'type':_0x32d255[_0xb688('0x28')]['key']};});_0x235d6c[_0xb688('0x29')]=_[_0xb688('0x2a')](_0xf0f4c8,_0xb688('0x22'));_0x235d6c['query']=_[_0xb688('0x2b')](_0xd5d25d[_0xb688('0x2c')]);_0x235d6c[_0xb688('0x2d')]=_[_0xb688('0x2e')](_0x235d6c[_0xb688('0x29')],_0x235d6c['query']);_0x323ad5[_0xb688('0x2f')]=_[_0xb688('0x2e')](_0x235d6c['model'],qs[_0xb688('0x30')](_0xd5d25d[_0xb688('0x2c')]['fields']));_0x323ad5[_0xb688('0x2f')]=_0x323ad5['attributes'][_0xb688('0x31')]?_0x323ad5[_0xb688('0x2f')]:_0x235d6c[_0xb688('0x29')];if(!_0xd5d25d['query'][_0xb688('0x32')](_0xb688('0x33'))){_0x323ad5[_0xb688('0x18')]=qs[_0xb688('0x18')](_0xd5d25d[_0xb688('0x2c')][_0xb688('0x18')]);_0x323ad5['offset']=qs[_0xb688('0x16')](_0xd5d25d[_0xb688('0x2c')][_0xb688('0x16')]);}_0x323ad5['order']=qs['sort'](_0xd5d25d[_0xb688('0x2c')]['sort']);_0x323ad5['where']=qs['filters'](_[_0xb688('0x34')](_0xd5d25d['query'],_0x235d6c[_0xb688('0x2d')]),_0xf0f4c8);if(_0xd5d25d['query']['filter']){_0x323ad5[_0xb688('0x35')]=_[_0xb688('0x36')](_0x323ad5[_0xb688('0x35')],{'$or':_[_0xb688('0x2a')](_0xf0f4c8,function(_0xef195b){if(_0xef195b[_0xb688('0x28')]!=='VIRTUAL'){var _0x21f77d={};_0x21f77d[_0xef195b['name']]={'$like':'%'+_0xd5d25d['query'][_0xb688('0x37')]+'%'};return _0x21f77d;}})});}_0x323ad5=_[_0xb688('0x36')]({},_0x323ad5,_0xd5d25d[_0xb688('0x38')]);var _0x217133={'where':_0x323ad5[_0xb688('0x35')]};return db[_0xb688('0x25')][_0xb688('0x19')](_0x217133)[_0xb688('0x1e')](function(_0x21eb19){_0x549de8[_0xb688('0x19')]=_0x21eb19;if(_0xd5d25d[_0xb688('0x2c')][_0xb688('0x39')]){_0x323ad5[_0xb688('0x3a')]=[{'all':!![]}];}return db[_0xb688('0x25')][_0xb688('0x3b')](_0x323ad5);})[_0xb688('0x1e')](function(_0x266533){_0x549de8[_0xb688('0x3c')]=_0x266533;return _0x549de8;})[_0xb688('0x1e')](respondWithFilteredResult(_0x463630,_0x323ad5))[_0xb688('0x3d')](handleError(_0x463630,null));};exports['show']=function(_0x518202,_0x147dcc){var _0x6a30b0={'raw':!![],'where':{'id':_0x518202['params']['id']}},_0x21700f={};_0x21700f[_0xb688('0x29')]=_[_0xb688('0x2b')](db[_0xb688('0x25')][_0xb688('0x26')]);_0x21700f[_0xb688('0x2c')]=_[_0xb688('0x2b')](_0x518202[_0xb688('0x2c')]);_0x21700f['filters']=_[_0xb688('0x2e')](_0x21700f[_0xb688('0x29')],_0x21700f[_0xb688('0x2c')]);_0x6a30b0[_0xb688('0x2f')]=_['intersection'](_0x21700f[_0xb688('0x29')],qs[_0xb688('0x30')](_0x518202[_0xb688('0x2c')][_0xb688('0x30')]));_0x6a30b0['attributes']=_0x6a30b0['attributes'][_0xb688('0x31')]?_0x6a30b0[_0xb688('0x2f')]:_0x21700f[_0xb688('0x29')];if(_0x518202[_0xb688('0x2c')][_0xb688('0x39')]){_0x6a30b0[_0xb688('0x3a')]=[{'all':!![]}];}_0x6a30b0=_['merge']({},_0x6a30b0,_0x518202[_0xb688('0x38')]);return db[_0xb688('0x25')][_0xb688('0x3e')](_0x6a30b0)[_0xb688('0x1e')](handleEntityNotFound(_0x147dcc,null))[_0xb688('0x1e')](respondWithResult(_0x147dcc,null))[_0xb688('0x3d')](handleError(_0x147dcc,null));};exports[_0xb688('0x3f')]=function(_0x1b1697,_0x3e62f7){return db[_0xb688('0x25')][_0xb688('0x3f')](_0x1b1697[_0xb688('0x40')],{})[_0xb688('0x1e')](respondWithResult(_0x3e62f7,0xc9))[_0xb688('0x3d')](handleError(_0x3e62f7,null));};exports[_0xb688('0x1d')]=function(_0x4ef5e4,_0x540070){if(_0x4ef5e4['body']['id']){delete _0x4ef5e4[_0xb688('0x40')]['id'];}return db[_0xb688('0x25')][_0xb688('0x3e')]({'where':{'id':_0x4ef5e4[_0xb688('0x41')]['id']}})[_0xb688('0x1e')](handleEntityNotFound(_0x540070,null))[_0xb688('0x1e')](saveUpdates(_0x4ef5e4['body'],null))[_0xb688('0x1e')](respondWithResult(_0x540070,null))[_0xb688('0x3d')](handleError(_0x540070,null));};exports['destroy']=function(_0x5b2534,_0xbab770){return db[_0xb688('0x25')][_0xb688('0x3e')]({'where':{'id':_0x5b2534[_0xb688('0x41')]['id']}})['then'](handleEntityNotFound(_0xbab770,null))['then'](removeEntity(_0xbab770,null))[_0xb688('0x3d')](handleError(_0xbab770,null));};
\ No newline at end of file
+var _0xd766=['status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','end','stack','name','send','index','map','Dynamics365Field','rawAttributes','type','query','keys','filters','intersection','attributes','fields','length','model','hasOwnProperty','nolimit','order','where','pick','filter','merge','VIRTUAL','options','includeAll','include','rows','catch','show','params','find','create','body','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','path','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','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','sendStatus'];(function(_0x541ebd,_0x594de1){var _0x312623=function(_0x2ff4c1){while(--_0x2ff4c1){_0x541ebd['push'](_0x541ebd['shift']());}};_0x312623(++_0x594de1);}(_0xd766,0x1b2));var _0x6d76=function(_0x53417c,_0x126dee){_0x53417c=_0x53417c-0x0;var _0x49407d=_0xd766[_0x53417c];return _0x49407d;};'use strict';var emlformat=require(_0x6d76('0x0'));var rimraf=require(_0x6d76('0x1'));var zipdir=require(_0x6d76('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x6d76('0x3'));var moment=require(_0x6d76('0x4'));var BPromise=require(_0x6d76('0x5'));var Mustache=require(_0x6d76('0x6'));var util=require('util');var path=require(_0x6d76('0x7'));var sox=require('sox');var csv=require(_0x6d76('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x6d76('0x9'));var _=require(_0x6d76('0xa'));var squel=require(_0x6d76('0xb'));var crypto=require(_0x6d76('0xc'));var jsforce=require(_0x6d76('0xd'));var deskjs=require(_0x6d76('0xe'));var toCsv=require(_0x6d76('0x8'));var querystring=require(_0x6d76('0xf'));var Papa=require(_0x6d76('0x10'));var Redis=require(_0x6d76('0x11'));var authService=require(_0x6d76('0x12'));var qs=require(_0x6d76('0x13'));var as=require(_0x6d76('0x14'));var hardwareService=require(_0x6d76('0x15'));var logger=require(_0x6d76('0x16'))(_0x6d76('0x17'));var utils=require(_0x6d76('0x18'));var config=require(_0x6d76('0x19'));var licenseUtil=require(_0x6d76('0x1a'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3e3528,_0x426eae){_0x426eae=_0x426eae||0xcc;return function(_0x400010){if(_0x400010){return _0x3e3528[_0x6d76('0x1b')](_0x426eae);}return _0x3e3528[_0x6d76('0x1c')](_0x426eae)['end']();};}function respondWithResult(_0x32b8d1,_0x1a309e){_0x1a309e=_0x1a309e||0xc8;return function(_0x34b974){if(_0x34b974){return _0x32b8d1['status'](_0x1a309e)[_0x6d76('0x1d')](_0x34b974);}};}function respondWithFilteredResult(_0x54f681,_0x2d9a4c){return function(_0x1c716e){if(_0x1c716e){var _0x171254=typeof _0x2d9a4c[_0x6d76('0x1e')]===_0x6d76('0x1f')&&typeof _0x2d9a4c[_0x6d76('0x20')]===_0x6d76('0x1f');var _0x535ef2=_0x1c716e[_0x6d76('0x21')];var _0x460529=_0x171254?0x0:_0x2d9a4c[_0x6d76('0x1e')];var _0x2a1345=_0x171254?_0x1c716e[_0x6d76('0x21')]:_0x2d9a4c[_0x6d76('0x1e')]+_0x2d9a4c['limit'];var _0x2fcd02;if(_0x2a1345>=_0x535ef2){_0x2a1345=_0x535ef2;_0x2fcd02=0xc8;}else{_0x2fcd02=0xce;}_0x54f681[_0x6d76('0x1c')](_0x2fcd02);return _0x54f681[_0x6d76('0x22')](_0x6d76('0x23'),_0x460529+'-'+_0x2a1345+'/'+_0x535ef2)[_0x6d76('0x1d')](_0x1c716e);}return null;};}function patchUpdates(_0x16fa68){return function(_0x104926){try{jsonpatch[_0x6d76('0x24')](_0x104926,_0x16fa68,!![]);}catch(_0x43c55f){return BPromise[_0x6d76('0x25')](_0x43c55f);}return _0x104926[_0x6d76('0x26')]();};}function saveUpdates(_0x33e76e,_0x51ac17){return function(_0x38f167){if(_0x38f167){return _0x38f167[_0x6d76('0x27')](_0x33e76e)[_0x6d76('0x28')](function(_0x46d5e4){return _0x46d5e4;});}return null;};}function removeEntity(_0x174356,_0x5f3ce5){return function(_0x516602){if(_0x516602){return _0x516602[_0x6d76('0x29')]()[_0x6d76('0x28')](function(){_0x174356['status'](0xcc)[_0x6d76('0x2a')]();});}};}function handleEntityNotFound(_0x10334c,_0x4a6427){return function(_0x118df7){if(!_0x118df7){_0x10334c[_0x6d76('0x1b')](0x194);}return _0x118df7;};}function handleError(_0x56003,_0x3480b7){_0x3480b7=_0x3480b7||0x1f4;return function(_0xb5e0e0){logger['error'](_0xb5e0e0[_0x6d76('0x2b')]);if(_0xb5e0e0[_0x6d76('0x2c')]){delete _0xb5e0e0[_0x6d76('0x2c')];}_0x56003[_0x6d76('0x1c')](_0x3480b7)[_0x6d76('0x2d')](_0xb5e0e0);};}exports[_0x6d76('0x2e')]=function(_0x146e7e,_0x509147){var _0x3a6b2d={},_0x1ff433={},_0x599df5={'count':0x0,'rows':[]};var _0x212a9d=_[_0x6d76('0x2f')](db[_0x6d76('0x30')][_0x6d76('0x31')],function(_0x8bfb93){return{'name':_0x8bfb93['fieldName'],'type':_0x8bfb93[_0x6d76('0x32')]['key']};});_0x1ff433['model']=_[_0x6d76('0x2f')](_0x212a9d,_0x6d76('0x2c'));_0x1ff433[_0x6d76('0x33')]=_[_0x6d76('0x34')](_0x146e7e[_0x6d76('0x33')]);_0x1ff433[_0x6d76('0x35')]=_[_0x6d76('0x36')](_0x1ff433['model'],_0x1ff433[_0x6d76('0x33')]);_0x3a6b2d[_0x6d76('0x37')]=_['intersection'](_0x1ff433['model'],qs[_0x6d76('0x38')](_0x146e7e[_0x6d76('0x33')][_0x6d76('0x38')]));_0x3a6b2d[_0x6d76('0x37')]=_0x3a6b2d[_0x6d76('0x37')][_0x6d76('0x39')]?_0x3a6b2d[_0x6d76('0x37')]:_0x1ff433[_0x6d76('0x3a')];if(!_0x146e7e[_0x6d76('0x33')][_0x6d76('0x3b')](_0x6d76('0x3c'))){_0x3a6b2d['limit']=qs[_0x6d76('0x20')](_0x146e7e[_0x6d76('0x33')]['limit']);_0x3a6b2d[_0x6d76('0x1e')]=qs[_0x6d76('0x1e')](_0x146e7e['query']['offset']);}_0x3a6b2d[_0x6d76('0x3d')]=qs['sort'](_0x146e7e[_0x6d76('0x33')]['sort']);_0x3a6b2d[_0x6d76('0x3e')]=qs[_0x6d76('0x35')](_[_0x6d76('0x3f')](_0x146e7e[_0x6d76('0x33')],_0x1ff433[_0x6d76('0x35')]),_0x212a9d);if(_0x146e7e[_0x6d76('0x33')][_0x6d76('0x40')]){_0x3a6b2d[_0x6d76('0x3e')]=_[_0x6d76('0x41')](_0x3a6b2d['where'],{'$or':_['map'](_0x212a9d,function(_0x170d6d){if(_0x170d6d[_0x6d76('0x32')]!==_0x6d76('0x42')){var _0x5ef65e={};_0x5ef65e[_0x170d6d[_0x6d76('0x2c')]]={'$like':'%'+_0x146e7e['query']['filter']+'%'};return _0x5ef65e;}})});}_0x3a6b2d=_[_0x6d76('0x41')]({},_0x3a6b2d,_0x146e7e[_0x6d76('0x43')]);var _0x8522dd={'where':_0x3a6b2d[_0x6d76('0x3e')]};return db[_0x6d76('0x30')]['count'](_0x8522dd)['then'](function(_0x3d5a27){_0x599df5[_0x6d76('0x21')]=_0x3d5a27;if(_0x146e7e['query'][_0x6d76('0x44')]){_0x3a6b2d[_0x6d76('0x45')]=[{'all':!![]}];}return db['Dynamics365Field']['findAll'](_0x3a6b2d);})[_0x6d76('0x28')](function(_0x1084af){_0x599df5[_0x6d76('0x46')]=_0x1084af;return _0x599df5;})[_0x6d76('0x28')](respondWithFilteredResult(_0x509147,_0x3a6b2d))[_0x6d76('0x47')](handleError(_0x509147,null));};exports[_0x6d76('0x48')]=function(_0xc7fe07,_0x1a6bc){var _0x1ebff7={'raw':!![],'where':{'id':_0xc7fe07[_0x6d76('0x49')]['id']}},_0x4ee7be={};_0x4ee7be[_0x6d76('0x3a')]=_[_0x6d76('0x34')](db['Dynamics365Field']['rawAttributes']);_0x4ee7be['query']=_[_0x6d76('0x34')](_0xc7fe07['query']);_0x4ee7be['filters']=_[_0x6d76('0x36')](_0x4ee7be[_0x6d76('0x3a')],_0x4ee7be[_0x6d76('0x33')]);_0x1ebff7[_0x6d76('0x37')]=_['intersection'](_0x4ee7be[_0x6d76('0x3a')],qs[_0x6d76('0x38')](_0xc7fe07[_0x6d76('0x33')][_0x6d76('0x38')]));_0x1ebff7[_0x6d76('0x37')]=_0x1ebff7[_0x6d76('0x37')][_0x6d76('0x39')]?_0x1ebff7[_0x6d76('0x37')]:_0x4ee7be['model'];if(_0xc7fe07[_0x6d76('0x33')][_0x6d76('0x44')]){_0x1ebff7[_0x6d76('0x45')]=[{'all':!![]}];}_0x1ebff7=_[_0x6d76('0x41')]({},_0x1ebff7,_0xc7fe07[_0x6d76('0x43')]);return db[_0x6d76('0x30')][_0x6d76('0x4a')](_0x1ebff7)['then'](handleEntityNotFound(_0x1a6bc,null))[_0x6d76('0x28')](respondWithResult(_0x1a6bc,null))['catch'](handleError(_0x1a6bc,null));};exports[_0x6d76('0x4b')]=function(_0xf138b5,_0x485727){return db[_0x6d76('0x30')][_0x6d76('0x4b')](_0xf138b5[_0x6d76('0x4c')],{})[_0x6d76('0x28')](respondWithResult(_0x485727,0xc9))[_0x6d76('0x47')](handleError(_0x485727,null));};exports[_0x6d76('0x27')]=function(_0x16a564,_0x50bcdd){if(_0x16a564[_0x6d76('0x4c')]['id']){delete _0x16a564['body']['id'];}return db[_0x6d76('0x30')][_0x6d76('0x4a')]({'where':{'id':_0x16a564[_0x6d76('0x49')]['id']}})[_0x6d76('0x28')](handleEntityNotFound(_0x50bcdd,null))[_0x6d76('0x28')](saveUpdates(_0x16a564[_0x6d76('0x4c')],null))[_0x6d76('0x28')](respondWithResult(_0x50bcdd,null))[_0x6d76('0x47')](handleError(_0x50bcdd,null));};exports[_0x6d76('0x29')]=function(_0x25b6f0,_0x2f1efb){return db[_0x6d76('0x30')]['find']({'where':{'id':_0x25b6f0[_0x6d76('0x49')]['id']}})[_0x6d76('0x28')](handleEntityNotFound(_0x2f1efb,null))[_0x6d76('0x28')](removeEntity(_0x2f1efb,null))[_0x6d76('0x47')](handleError(_0x2f1efb,null));};
\ No newline at end of file