Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / squareReportDetail / squareReportDetail.controller.js
index a8b9f2a..139abcf 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x4ed2=['fields','attributes','hasOwnProperty','nolimit','sort','pick','where','merge','filter','options','includeAll','include','findAll','show','rawAttributes','catch','create','body','find','params','describe','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','path','sox','ejs','fs-extra','lodash','squel','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','offset','undefined','limit','count','reject','save','update','destroy','then','error','name','send','index','map','SquareDetailsReport','fieldName','type','key','query','keys','filters','intersection','model'];(function(_0x19e35c,_0x29cd1e){var _0x3e1fe8=function(_0x17258b){while(--_0x17258b){_0x19e35c['push'](_0x19e35c['shift']());}};_0x3e1fe8(++_0x29cd1e);}(_0x4ed2,0x13d));var _0x24ed=function(_0x57b54c,_0x54ce0d){_0x57b54c=_0x57b54c-0x0;var _0x59cc19=_0x4ed2[_0x57b54c];return _0x59cc19;};'use strict';var emlformat=require(_0x24ed('0x0'));var rimraf=require(_0x24ed('0x1'));var zipdir=require(_0x24ed('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x24ed('0x3'));var moment=require(_0x24ed('0x4'));var BPromise=require(_0x24ed('0x5'));var Mustache=require('mustache');var util=require('util');var path=require(_0x24ed('0x6'));var sox=require(_0x24ed('0x7'));var csv=require('to-csv');var ejs=require(_0x24ed('0x8'));var fs=require('fs');var fs_extra=require(_0x24ed('0x9'));var _=require(_0x24ed('0xa'));var squel=require(_0x24ed('0xb'));var crypto=require('crypto');var jsforce=require(_0x24ed('0xc'));var deskjs=require(_0x24ed('0xd'));var toCsv=require(_0x24ed('0xe'));var querystring=require(_0x24ed('0xf'));var Papa=require(_0x24ed('0x10'));var Redis=require(_0x24ed('0x11'));var authService=require(_0x24ed('0x12'));var qs=require(_0x24ed('0x13'));var as=require(_0x24ed('0x14'));var hardwareService=require(_0x24ed('0x15'));var logger=require(_0x24ed('0x16'))('api');var utils=require('../../config/utils');var config=require(_0x24ed('0x17'));var licenseUtil=require(_0x24ed('0x18'));var db=require(_0x24ed('0x19'))['db'];function respondWithStatusCode(_0x5e1cf7,_0x2e8811){_0x2e8811=_0x2e8811||0xcc;return function(_0xea470){if(_0xea470){return _0x5e1cf7[_0x24ed('0x1a')](_0x2e8811);}return _0x5e1cf7[_0x24ed('0x1b')](_0x2e8811)[_0x24ed('0x1c')]();};}function respondWithResult(_0x22ee47,_0xbc57c3){_0xbc57c3=_0xbc57c3||0xc8;return function(_0x5a7b69){if(_0x5a7b69){return _0x22ee47[_0x24ed('0x1b')](_0xbc57c3)[_0x24ed('0x1d')](_0x5a7b69);}};}function respondWithFilteredResult(_0x5d260f,_0x3c5129){return function(_0x34e1c2){if(_0x34e1c2){var _0x4f8af4=typeof _0x3c5129[_0x24ed('0x1e')]===_0x24ed('0x1f')&&typeof _0x3c5129[_0x24ed('0x20')]==='undefined';var _0x3f696f=_0x34e1c2[_0x24ed('0x21')];var _0xbdb421=_0x4f8af4?0x0:_0x3c5129[_0x24ed('0x1e')];var _0x142be8=_0x4f8af4?_0x34e1c2['count']:_0x3c5129[_0x24ed('0x1e')]+_0x3c5129['limit'];var _0x5a92c1;if(_0x142be8>=_0x3f696f){_0x142be8=_0x3f696f;_0x5a92c1=0xc8;}else{_0x5a92c1=0xce;}_0x5d260f[_0x24ed('0x1b')](_0x5a92c1);return _0x5d260f['set']('Content-Range',_0xbdb421+'-'+_0x142be8+'/'+_0x3f696f)['json'](_0x34e1c2);}return null;};}function patchUpdates(_0x466007){return function(_0xeabbbb){try{jsonpatch['apply'](_0xeabbbb,_0x466007,!![]);}catch(_0x37738f){return BPromise[_0x24ed('0x22')](_0x37738f);}return _0xeabbbb[_0x24ed('0x23')]();};}function saveUpdates(_0x589f49,_0x170661){return function(_0x2f1908){if(_0x2f1908){return _0x2f1908[_0x24ed('0x24')](_0x589f49)['then'](function(_0x67e0b7){return _0x67e0b7;});}return null;};}function removeEntity(_0x4693e6,_0x155abe){return function(_0x473b16){if(_0x473b16){return _0x473b16[_0x24ed('0x25')]()[_0x24ed('0x26')](function(){_0x4693e6[_0x24ed('0x1b')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2cb83b,_0x402fcb){return function(_0x1a332b){if(!_0x1a332b){_0x2cb83b[_0x24ed('0x1a')](0x194);}return _0x1a332b;};}function handleError(_0x4c6112,_0x2a5518){_0x2a5518=_0x2a5518||0x1f4;return function(_0x20dfb2){logger[_0x24ed('0x27')](_0x20dfb2['stack']);if(_0x20dfb2['name']){delete _0x20dfb2[_0x24ed('0x28')];}_0x4c6112['status'](_0x2a5518)[_0x24ed('0x29')](_0x20dfb2);};}exports[_0x24ed('0x2a')]=function(_0x4b3ffd,_0x28a7f8){var _0xd109c5={},_0xf79095={},_0x49bb76={'count':0x0,'rows':[]};var _0x431b2c=_[_0x24ed('0x2b')](db[_0x24ed('0x2c')]['rawAttributes'],function(_0x4b675c){return{'name':_0x4b675c[_0x24ed('0x2d')],'type':_0x4b675c[_0x24ed('0x2e')][_0x24ed('0x2f')]};});_0xf79095['model']=_[_0x24ed('0x2b')](_0x431b2c,_0x24ed('0x28'));_0xf79095[_0x24ed('0x30')]=_[_0x24ed('0x31')](_0x4b3ffd[_0x24ed('0x30')]);_0xf79095[_0x24ed('0x32')]=_[_0x24ed('0x33')](_0xf79095[_0x24ed('0x34')],_0xf79095['query']);_0xd109c5['attributes']=_[_0x24ed('0x33')](_0xf79095['model'],qs[_0x24ed('0x35')](_0x4b3ffd[_0x24ed('0x30')][_0x24ed('0x35')]));_0xd109c5[_0x24ed('0x36')]=_0xd109c5[_0x24ed('0x36')]['length']?_0xd109c5[_0x24ed('0x36')]:_0xf79095[_0x24ed('0x34')];if(!_0x4b3ffd['query'][_0x24ed('0x37')](_0x24ed('0x38'))){_0xd109c5[_0x24ed('0x20')]=qs[_0x24ed('0x20')](_0x4b3ffd[_0x24ed('0x30')][_0x24ed('0x20')]);_0xd109c5['offset']=qs[_0x24ed('0x1e')](_0x4b3ffd['query']['offset']);}_0xd109c5['order']=qs[_0x24ed('0x39')](_0x4b3ffd['query']['sort']);_0xd109c5['where']=qs['filters'](_[_0x24ed('0x3a')](_0x4b3ffd[_0x24ed('0x30')],_0xf79095[_0x24ed('0x32')]),_0x431b2c);if(_0x4b3ffd[_0x24ed('0x30')]['filter']){_0xd109c5[_0x24ed('0x3b')]=_[_0x24ed('0x3c')](_0xd109c5[_0x24ed('0x3b')],{'$or':_['map'](_0x431b2c,function(_0x1be267){if(_0x1be267['type']!=='VIRTUAL'){var _0x59b7e0={};_0x59b7e0[_0x1be267['name']]={'$like':'%'+_0x4b3ffd['query'][_0x24ed('0x3d')]+'%'};return _0x59b7e0;}})});}_0xd109c5=_[_0x24ed('0x3c')]({},_0xd109c5,_0x4b3ffd[_0x24ed('0x3e')]);var _0x3df4cc={'where':_0xd109c5[_0x24ed('0x3b')]};return db[_0x24ed('0x2c')]['count'](_0x3df4cc)['then'](function(_0x4c65c9){_0x49bb76['count']=_0x4c65c9;if(_0x4b3ffd[_0x24ed('0x30')][_0x24ed('0x3f')]){_0xd109c5[_0x24ed('0x40')]=[{'all':!![]}];}return db['SquareDetailsReport'][_0x24ed('0x41')](_0xd109c5);})[_0x24ed('0x26')](function(_0x54fa2c){_0x49bb76['rows']=_0x54fa2c;return _0x49bb76;})['then'](respondWithFilteredResult(_0x28a7f8,_0xd109c5))['catch'](handleError(_0x28a7f8,null));};exports[_0x24ed('0x42')]=function(_0x47b806,_0x54fe48){var _0x19da1f={'raw':!![],'where':{'id':_0x47b806['params']['id']}},_0x5f22a6={};_0x5f22a6[_0x24ed('0x34')]=_[_0x24ed('0x31')](db[_0x24ed('0x2c')][_0x24ed('0x43')]);_0x5f22a6[_0x24ed('0x30')]=_[_0x24ed('0x31')](_0x47b806[_0x24ed('0x30')]);_0x5f22a6[_0x24ed('0x32')]=_[_0x24ed('0x33')](_0x5f22a6['model'],_0x5f22a6[_0x24ed('0x30')]);_0x19da1f['attributes']=_[_0x24ed('0x33')](_0x5f22a6[_0x24ed('0x34')],qs[_0x24ed('0x35')](_0x47b806[_0x24ed('0x30')][_0x24ed('0x35')]));_0x19da1f['attributes']=_0x19da1f['attributes']['length']?_0x19da1f[_0x24ed('0x36')]:_0x5f22a6[_0x24ed('0x34')];if(_0x47b806[_0x24ed('0x30')][_0x24ed('0x3f')]){_0x19da1f[_0x24ed('0x40')]=[{'all':!![]}];}_0x19da1f=_[_0x24ed('0x3c')]({},_0x19da1f,_0x47b806[_0x24ed('0x3e')]);return db[_0x24ed('0x2c')]['find'](_0x19da1f)[_0x24ed('0x26')](handleEntityNotFound(_0x54fe48,null))[_0x24ed('0x26')](respondWithResult(_0x54fe48,null))[_0x24ed('0x44')](handleError(_0x54fe48,null));};exports[_0x24ed('0x45')]=function(_0x305a18,_0x5cee36){return db[_0x24ed('0x2c')][_0x24ed('0x45')](_0x305a18[_0x24ed('0x46')],{})[_0x24ed('0x26')](respondWithResult(_0x5cee36,0xc9))[_0x24ed('0x44')](handleError(_0x5cee36,null));};exports[_0x24ed('0x24')]=function(_0x19f42a,_0x23f4a8){if(_0x19f42a[_0x24ed('0x46')]['id']){delete _0x19f42a['body']['id'];}return db[_0x24ed('0x2c')][_0x24ed('0x47')]({'where':{'id':_0x19f42a[_0x24ed('0x48')]['id']}})['then'](handleEntityNotFound(_0x23f4a8,null))[_0x24ed('0x26')](saveUpdates(_0x19f42a[_0x24ed('0x46')],null))[_0x24ed('0x26')](respondWithResult(_0x23f4a8,null))[_0x24ed('0x44')](handleError(_0x23f4a8,null));};exports[_0x24ed('0x25')]=function(_0xf97c27,_0x3949ca){return db[_0x24ed('0x2c')]['find']({'where':{'id':_0xf97c27[_0x24ed('0x48')]['id']}})[_0x24ed('0x26')](handleEntityNotFound(_0x3949ca,null))['then'](removeEntity(_0x3949ca,null))['catch'](handleError(_0x3949ca,null));};exports['describe']=function(_0x3bf963,_0x195558){return db[_0x24ed('0x2c')][_0x24ed('0x49')]()[_0x24ed('0x26')](respondWithResult(_0x195558,null))[_0x24ed('0x44')](handleError(_0x195558,null));};
\ No newline at end of file
+var _0x628a=['jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','end','json','offset','undefined','count','limit','status','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','map','SquareDetailsReport','rawAttributes','fieldName','type','key','model','query','keys','filters','fields','length','nolimit','order','sort','pick','filter','where','merge','VIRTUAL','options','include','findAll','rows','catch','show','params','attributes','intersection','includeAll','find','body','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','squel','crypto'];(function(_0x436e1c,_0x351076){var _0x19e912=function(_0x1313b5){while(--_0x1313b5){_0x436e1c['push'](_0x436e1c['shift']());}};_0x19e912(++_0x351076);}(_0x628a,0x1bb));var _0xa628=function(_0x23d780,_0x458f78){_0x23d780=_0x23d780-0x0;var _0x335a06=_0x628a[_0x23d780];return _0x335a06;};'use strict';var emlformat=require(_0xa628('0x0'));var rimraf=require(_0xa628('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xa628('0x2'));var rp=require(_0xa628('0x3'));var moment=require(_0xa628('0x4'));var BPromise=require(_0xa628('0x5'));var Mustache=require(_0xa628('0x6'));var util=require(_0xa628('0x7'));var path=require('path');var sox=require(_0xa628('0x8'));var csv=require(_0xa628('0x9'));var ejs=require(_0xa628('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xa628('0xb'));var crypto=require(_0xa628('0xc'));var jsforce=require(_0xa628('0xd'));var deskjs=require(_0xa628('0xe'));var toCsv=require(_0xa628('0x9'));var querystring=require(_0xa628('0xf'));var Papa=require(_0xa628('0x10'));var Redis=require('ioredis');var authService=require(_0xa628('0x11'));var qs=require(_0xa628('0x12'));var as=require(_0xa628('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xa628('0x14'))(_0xa628('0x15'));var utils=require(_0xa628('0x16'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xa628('0x17'))['db'];function respondWithStatusCode(_0xe78f38,_0x20ecf2){_0x20ecf2=_0x20ecf2||0xcc;return function(_0x4ecc6b){if(_0x4ecc6b){return _0xe78f38[_0xa628('0x18')](_0x20ecf2);}return _0xe78f38['status'](_0x20ecf2)[_0xa628('0x19')]();};}function respondWithResult(_0x4b7a86,_0xa55921){_0xa55921=_0xa55921||0xc8;return function(_0xf0260c){if(_0xf0260c){return _0x4b7a86['status'](_0xa55921)[_0xa628('0x1a')](_0xf0260c);}};}function respondWithFilteredResult(_0x34ef6c,_0x34048c){return function(_0x46e541){if(_0x46e541){var _0x97d0f=typeof _0x34048c[_0xa628('0x1b')]===_0xa628('0x1c')&&typeof _0x34048c['limit']===_0xa628('0x1c');var _0x449552=_0x46e541[_0xa628('0x1d')];var _0x49a654=_0x97d0f?0x0:_0x34048c[_0xa628('0x1b')];var _0x6817bb=_0x97d0f?_0x46e541[_0xa628('0x1d')]:_0x34048c[_0xa628('0x1b')]+_0x34048c[_0xa628('0x1e')];var _0x213065;if(_0x6817bb>=_0x449552){_0x6817bb=_0x449552;_0x213065=0xc8;}else{_0x213065=0xce;}_0x34ef6c[_0xa628('0x1f')](_0x213065);return _0x34ef6c['set'](_0xa628('0x20'),_0x49a654+'-'+_0x6817bb+'/'+_0x449552)[_0xa628('0x1a')](_0x46e541);}return null;};}function patchUpdates(_0x540a22){return function(_0x5c4e94){try{jsonpatch[_0xa628('0x21')](_0x5c4e94,_0x540a22,!![]);}catch(_0x91c87d){return BPromise[_0xa628('0x22')](_0x91c87d);}return _0x5c4e94[_0xa628('0x23')]();};}function saveUpdates(_0x25390e,_0x489aba){return function(_0x138172){if(_0x138172){return _0x138172[_0xa628('0x24')](_0x25390e)[_0xa628('0x25')](function(_0xa70b6){return _0xa70b6;});}return null;};}function removeEntity(_0x25f680,_0x5d09b8){return function(_0xda925){if(_0xda925){return _0xda925[_0xa628('0x26')]()[_0xa628('0x25')](function(){_0x25f680[_0xa628('0x1f')](0xcc)[_0xa628('0x19')]();});}};}function handleEntityNotFound(_0x4bd4f6,_0x6f86bd){return function(_0x989e3a){if(!_0x989e3a){_0x4bd4f6[_0xa628('0x18')](0x194);}return _0x989e3a;};}function handleError(_0x380174,_0x41b4c3){_0x41b4c3=_0x41b4c3||0x1f4;return function(_0x5364f6){logger[_0xa628('0x27')](_0x5364f6[_0xa628('0x28')]);if(_0x5364f6[_0xa628('0x29')]){delete _0x5364f6['name'];}_0x380174['status'](_0x41b4c3)[_0xa628('0x2a')](_0x5364f6);};}exports[_0xa628('0x2b')]=function(_0x379951,_0x4e3272){var _0x352e81={},_0x158fef={},_0x1eb962={'count':0x0,'rows':[]};var _0x309ba0=_[_0xa628('0x2c')](db[_0xa628('0x2d')][_0xa628('0x2e')],function(_0x3857c0){return{'name':_0x3857c0[_0xa628('0x2f')],'type':_0x3857c0[_0xa628('0x30')][_0xa628('0x31')]};});_0x158fef[_0xa628('0x32')]=_[_0xa628('0x2c')](_0x309ba0,'name');_0x158fef[_0xa628('0x33')]=_[_0xa628('0x34')](_0x379951['query']);_0x158fef[_0xa628('0x35')]=_['intersection'](_0x158fef[_0xa628('0x32')],_0x158fef['query']);_0x352e81['attributes']=_['intersection'](_0x158fef[_0xa628('0x32')],qs[_0xa628('0x36')](_0x379951[_0xa628('0x33')][_0xa628('0x36')]));_0x352e81['attributes']=_0x352e81['attributes'][_0xa628('0x37')]?_0x352e81['attributes']:_0x158fef['model'];if(!_0x379951['query']['hasOwnProperty'](_0xa628('0x38'))){_0x352e81['limit']=qs['limit'](_0x379951[_0xa628('0x33')][_0xa628('0x1e')]);_0x352e81[_0xa628('0x1b')]=qs[_0xa628('0x1b')](_0x379951[_0xa628('0x33')][_0xa628('0x1b')]);}_0x352e81[_0xa628('0x39')]=qs[_0xa628('0x3a')](_0x379951[_0xa628('0x33')][_0xa628('0x3a')]);_0x352e81['where']=qs[_0xa628('0x35')](_[_0xa628('0x3b')](_0x379951[_0xa628('0x33')],_0x158fef[_0xa628('0x35')]),_0x309ba0);if(_0x379951[_0xa628('0x33')][_0xa628('0x3c')]){_0x352e81[_0xa628('0x3d')]=_[_0xa628('0x3e')](_0x352e81[_0xa628('0x3d')],{'$or':_[_0xa628('0x2c')](_0x309ba0,function(_0x3d7e72){if(_0x3d7e72[_0xa628('0x30')]!==_0xa628('0x3f')){var _0x105bac={};_0x105bac[_0x3d7e72[_0xa628('0x29')]]={'$like':'%'+_0x379951[_0xa628('0x33')][_0xa628('0x3c')]+'%'};return _0x105bac;}})});}_0x352e81=_['merge']({},_0x352e81,_0x379951[_0xa628('0x40')]);var _0x5b05ec={'where':_0x352e81['where']};return db[_0xa628('0x2d')][_0xa628('0x1d')](_0x5b05ec)['then'](function(_0x4def2b){_0x1eb962['count']=_0x4def2b;if(_0x379951[_0xa628('0x33')]['includeAll']){_0x352e81[_0xa628('0x41')]=[{'all':!![]}];}return db[_0xa628('0x2d')][_0xa628('0x42')](_0x352e81);})['then'](function(_0x402624){_0x1eb962[_0xa628('0x43')]=_0x402624;return _0x1eb962;})[_0xa628('0x25')](respondWithFilteredResult(_0x4e3272,_0x352e81))[_0xa628('0x44')](handleError(_0x4e3272,null));};exports[_0xa628('0x45')]=function(_0x5e6cd9,_0x23d2ae){var _0x48ecc8={'raw':!![],'where':{'id':_0x5e6cd9[_0xa628('0x46')]['id']}},_0x379969={};_0x379969['model']=_[_0xa628('0x34')](db[_0xa628('0x2d')][_0xa628('0x2e')]);_0x379969[_0xa628('0x33')]=_[_0xa628('0x34')](_0x5e6cd9[_0xa628('0x33')]);_0x379969[_0xa628('0x35')]=_['intersection'](_0x379969[_0xa628('0x32')],_0x379969[_0xa628('0x33')]);_0x48ecc8[_0xa628('0x47')]=_[_0xa628('0x48')](_0x379969[_0xa628('0x32')],qs[_0xa628('0x36')](_0x5e6cd9['query'][_0xa628('0x36')]));_0x48ecc8[_0xa628('0x47')]=_0x48ecc8[_0xa628('0x47')][_0xa628('0x37')]?_0x48ecc8[_0xa628('0x47')]:_0x379969['model'];if(_0x5e6cd9['query'][_0xa628('0x49')]){_0x48ecc8[_0xa628('0x41')]=[{'all':!![]}];}_0x48ecc8=_['merge']({},_0x48ecc8,_0x5e6cd9[_0xa628('0x40')]);return db['SquareDetailsReport'][_0xa628('0x4a')](_0x48ecc8)[_0xa628('0x25')](handleEntityNotFound(_0x23d2ae,null))[_0xa628('0x25')](respondWithResult(_0x23d2ae,null))['catch'](handleError(_0x23d2ae,null));};exports['create']=function(_0x3aeb81,_0x4ced29){return db[_0xa628('0x2d')]['create'](_0x3aeb81[_0xa628('0x4b')],{})[_0xa628('0x25')](respondWithResult(_0x4ced29,0xc9))[_0xa628('0x44')](handleError(_0x4ced29,null));};exports[_0xa628('0x24')]=function(_0x4753ea,_0x4fdd7f){if(_0x4753ea[_0xa628('0x4b')]['id']){delete _0x4753ea[_0xa628('0x4b')]['id'];}return db[_0xa628('0x2d')][_0xa628('0x4a')]({'where':{'id':_0x4753ea['params']['id']}})['then'](handleEntityNotFound(_0x4fdd7f,null))['then'](saveUpdates(_0x4753ea['body'],null))['then'](respondWithResult(_0x4fdd7f,null))[_0xa628('0x44')](handleError(_0x4fdd7f,null));};exports['destroy']=function(_0x17e538,_0x444782){return db['SquareDetailsReport'][_0xa628('0x4a')]({'where':{'id':_0x17e538[_0xa628('0x46')]['id']}})['then'](handleEntityNotFound(_0x444782,null))[_0xa628('0x25')](removeEntity(_0x444782,null))[_0xa628('0x44')](handleError(_0x444782,null));};exports['describe']=function(_0x19124e,_0x383fa3){return db[_0xa628('0x2d')]['describe']()[_0xa628('0x25')](respondWithResult(_0x383fa3,null))['catch'](handleError(_0x383fa3,null));};
\ No newline at end of file