Built motion from commit 9d7072cc.|2.5.39
[motion2.git] / server / api / cmHopperHistory / cmHopperHistory.controller.js
index 95a3294..3a5d074 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x0c3c=['catch','show','params','find','create','body','describe','uniqueid','html-pdf','rimraf','zip-dir','fast-json-patch','moment','mustache','util','path','sox','to-csv','ejs','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','sendStatus','status','count','offset','limit','set','Content-Range','json','apply','save','update','then','destroy','error','stack','name','index','map','CmHopperHistory','rawAttributes','fieldName','model','query','keys','filters','intersection','attributes','fields','length','nolimit','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows'];(function(_0x448fea,_0x526599){var _0x3f74b6=function(_0x20c998){while(--_0x20c998){_0x448fea['push'](_0x448fea['shift']());}};_0x3f74b6(++_0x526599);}(_0x0c3c,0x128));var _0xc0c3=function(_0x315add,_0x5e9ace){_0x315add=_0x315add-0x0;var _0x40956b=_0x0c3c[_0x315add];return _0x40956b;};'use strict';var pdf=require(_0xc0c3('0x0'));var emlformat=require('eml-format');var rimraf=require(_0xc0c3('0x1'));var zipdir=require(_0xc0c3('0x2'));var jsonpatch=require(_0xc0c3('0x3'));var rp=require('request-promise');var moment=require(_0xc0c3('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xc0c3('0x5'));var util=require(_0xc0c3('0x6'));var path=require(_0xc0c3('0x7'));var sox=require(_0xc0c3('0x8'));var csv=require(_0xc0c3('0x9'));var ejs=require(_0xc0c3('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0xc0c3('0xb'));var crypto=require(_0xc0c3('0xc'));var jsforce=require(_0xc0c3('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xc0c3('0x9'));var querystring=require(_0xc0c3('0xe'));var Papa=require(_0xc0c3('0xf'));var Redis=require(_0xc0c3('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xc0c3('0x11'));var as=require(_0xc0c3('0x12'));var hardwareService=require(_0xc0c3('0x13'));var logger=require(_0xc0c3('0x14'))(_0xc0c3('0x15'));var utils=require(_0xc0c3('0x16'));var config=require('../../config/environment');var licenseUtil=require(_0xc0c3('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x7983b1,_0x4d8399){_0x4d8399=_0x4d8399||0xcc;return function(_0x22bbfc){if(_0x22bbfc){return _0x7983b1[_0xc0c3('0x18')](_0x4d8399);}return _0x7983b1[_0xc0c3('0x19')](_0x4d8399)['end']();};}function respondWithResult(_0x39d3cf,_0x3bd56e){_0x3bd56e=_0x3bd56e||0xc8;return function(_0x356df4){if(_0x356df4){return _0x39d3cf[_0xc0c3('0x19')](_0x3bd56e)['json'](_0x356df4);}};}function respondWithFilteredResult(_0xd9e559,_0x2dfce8){return function(_0x177bb8){if(_0x177bb8){var _0x4a64b5=_0x177bb8[_0xc0c3('0x1a')],_0x2dd73a=_0x2dfce8[_0xc0c3('0x1b')],_0x4a36f4=_0x2dfce8[_0xc0c3('0x1b')]+_0x2dfce8[_0xc0c3('0x1c')],_0x751d49;if(_0x4a36f4>=_0x4a64b5){_0x4a36f4=_0x4a64b5;_0x751d49=0xc8;}else{_0x751d49=0xce;}_0xd9e559[_0xc0c3('0x19')](_0x751d49);return _0xd9e559[_0xc0c3('0x1d')](_0xc0c3('0x1e'),_0x2dd73a+'-'+_0x4a36f4+'/'+_0x4a64b5)[_0xc0c3('0x1f')](_0x177bb8);}return null;};}function patchUpdates(_0x4c2710){return function(_0xbbaac8){try{jsonpatch[_0xc0c3('0x20')](_0xbbaac8,_0x4c2710,!![]);}catch(_0x34a815){return BPromise['reject'](_0x34a815);}return _0xbbaac8[_0xc0c3('0x21')]();};}function saveUpdates(_0x401d28,_0xe8683f){return function(_0x425882){if(_0x425882){return _0x425882[_0xc0c3('0x22')](_0x401d28)[_0xc0c3('0x23')](function(_0x5e8b0a){return _0x5e8b0a;});}return null;};}function removeEntity(_0x29c0bc,_0x4b9e44){return function(_0x3b8b85){if(_0x3b8b85){return _0x3b8b85[_0xc0c3('0x24')]()[_0xc0c3('0x23')](function(){_0x29c0bc[_0xc0c3('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3f4abd,_0x3e529e){return function(_0xcbe8d0){if(!_0xcbe8d0){_0x3f4abd['sendStatus'](0x194);}return _0xcbe8d0;};}function handleError(_0x5982f6,_0x568aef){_0x568aef=_0x568aef||0x1f4;return function(_0x5bb257){logger[_0xc0c3('0x25')](_0x5bb257[_0xc0c3('0x26')]);if(_0x5bb257[_0xc0c3('0x27')]){delete _0x5bb257[_0xc0c3('0x27')];}_0x5982f6[_0xc0c3('0x19')](_0x568aef)['send'](_0x5bb257);};}exports[_0xc0c3('0x28')]=function(_0xe7e749,_0x4fe46f){var _0x4b0124={},_0x3b7fae={},_0xb2076={'count':0x0,'rows':[]};var _0x5511c2=_[_0xc0c3('0x29')](db[_0xc0c3('0x2a')][_0xc0c3('0x2b')],function(_0x2ef7ed){return{'name':_0x2ef7ed[_0xc0c3('0x2c')],'type':_0x2ef7ed['type']['key']};});_0x3b7fae[_0xc0c3('0x2d')]=_[_0xc0c3('0x29')](_0x5511c2,_0xc0c3('0x27'));_0x3b7fae[_0xc0c3('0x2e')]=_[_0xc0c3('0x2f')](_0xe7e749[_0xc0c3('0x2e')]);_0x3b7fae[_0xc0c3('0x30')]=_[_0xc0c3('0x31')](_0x3b7fae[_0xc0c3('0x2d')],_0x3b7fae[_0xc0c3('0x2e')]);_0x4b0124[_0xc0c3('0x32')]=_[_0xc0c3('0x31')](_0x3b7fae[_0xc0c3('0x2d')],qs[_0xc0c3('0x33')](_0xe7e749['query']['fields']));_0x4b0124['attributes']=_0x4b0124['attributes'][_0xc0c3('0x34')]?_0x4b0124[_0xc0c3('0x32')]:_0x3b7fae[_0xc0c3('0x2d')];if(!_0xe7e749[_0xc0c3('0x2e')]['hasOwnProperty'](_0xc0c3('0x35'))){_0x4b0124[_0xc0c3('0x1c')]=qs['limit'](_0xe7e749[_0xc0c3('0x2e')][_0xc0c3('0x1c')]);_0x4b0124[_0xc0c3('0x1b')]=qs[_0xc0c3('0x1b')](_0xe7e749[_0xc0c3('0x2e')][_0xc0c3('0x1b')]);}_0x4b0124['order']=qs['sort'](_0xe7e749[_0xc0c3('0x2e')][_0xc0c3('0x36')]);_0x4b0124[_0xc0c3('0x37')]=qs[_0xc0c3('0x30')](_[_0xc0c3('0x38')](_0xe7e749[_0xc0c3('0x2e')],_0x3b7fae[_0xc0c3('0x30')]),_0x5511c2);if(_0xe7e749[_0xc0c3('0x2e')][_0xc0c3('0x39')]){_0x4b0124[_0xc0c3('0x37')]=_[_0xc0c3('0x3a')](_0x4b0124[_0xc0c3('0x37')],{'$or':_[_0xc0c3('0x29')](_0x5511c2,function(_0x417d75){if(_0x417d75['type']!==_0xc0c3('0x3b')){var _0x32f70b={};_0x32f70b[_0x417d75[_0xc0c3('0x27')]]={'$like':'%'+_0xe7e749[_0xc0c3('0x2e')]['filter']+'%'};return _0x32f70b;}})});}_0x4b0124=_['merge']({},_0x4b0124,_0xe7e749['options']);var _0x17cfbf={'where':_0x4b0124[_0xc0c3('0x37')]};return db[_0xc0c3('0x2a')]['count'](_0x17cfbf)[_0xc0c3('0x23')](function(_0x58a5cd){_0xb2076['count']=_0x58a5cd;if(_0xe7e749['query'][_0xc0c3('0x3c')]){_0x4b0124[_0xc0c3('0x3d')]=[{'all':!![]}];}return db[_0xc0c3('0x2a')][_0xc0c3('0x3e')](_0x4b0124);})[_0xc0c3('0x23')](function(_0x4afa2c){_0xb2076[_0xc0c3('0x3f')]=_0x4afa2c;return _0xb2076;})['then'](respondWithFilteredResult(_0x4fe46f,_0x4b0124))[_0xc0c3('0x40')](handleError(_0x4fe46f,null));};exports[_0xc0c3('0x41')]=function(_0xb640e5,_0x3e40c5){var _0x13faf2={'raw':!![],'where':{'id':_0xb640e5[_0xc0c3('0x42')]['id']}},_0x1bab65={};_0x1bab65[_0xc0c3('0x2d')]=_[_0xc0c3('0x2f')](db[_0xc0c3('0x2a')]['rawAttributes']);_0x1bab65[_0xc0c3('0x2e')]=_['keys'](_0xb640e5[_0xc0c3('0x2e')]);_0x1bab65[_0xc0c3('0x30')]=_[_0xc0c3('0x31')](_0x1bab65['model'],_0x1bab65['query']);_0x13faf2['attributes']=_[_0xc0c3('0x31')](_0x1bab65['model'],qs[_0xc0c3('0x33')](_0xb640e5[_0xc0c3('0x2e')][_0xc0c3('0x33')]));_0x13faf2[_0xc0c3('0x32')]=_0x13faf2[_0xc0c3('0x32')][_0xc0c3('0x34')]?_0x13faf2[_0xc0c3('0x32')]:_0x1bab65[_0xc0c3('0x2d')];if(_0xb640e5[_0xc0c3('0x2e')][_0xc0c3('0x3c')]){_0x13faf2['include']=[{'all':!![]}];}_0x13faf2=_[_0xc0c3('0x3a')]({},_0x13faf2,_0xb640e5['options']);return db['CmHopperHistory'][_0xc0c3('0x43')](_0x13faf2)[_0xc0c3('0x23')](handleEntityNotFound(_0x3e40c5,null))[_0xc0c3('0x23')](respondWithResult(_0x3e40c5,null))['catch'](handleError(_0x3e40c5,null));};exports[_0xc0c3('0x44')]=function(_0x3b9772,_0x3d943c){return db[_0xc0c3('0x2a')][_0xc0c3('0x44')](_0x3b9772[_0xc0c3('0x45')],{})['then'](respondWithResult(_0x3d943c,0xc9))[_0xc0c3('0x40')](handleError(_0x3d943c,null));};exports['describe']=function(_0x23769c,_0x463b4c){return db['CmHopperHistory'][_0xc0c3('0x46')]()['then'](respondWithResult(_0x463b4c,null))[_0xc0c3('0x40')](handleError(_0x463b4c,null));};exports['update']=function(_0x48f25e,_0x1bf115){if(_0x48f25e[_0xc0c3('0x45')][_0xc0c3('0x47')]){delete _0x48f25e['body'][_0xc0c3('0x47')];}return db[_0xc0c3('0x2a')]['find']({'where':{'uniqueid':_0x48f25e[_0xc0c3('0x42')]['id']}})[_0xc0c3('0x23')](handleEntityNotFound(_0x1bf115,null))[_0xc0c3('0x23')](saveUpdates(_0x48f25e[_0xc0c3('0x45')],null))[_0xc0c3('0x23')](respondWithResult(_0x1bf115,null))[_0xc0c3('0x40')](handleError(_0x1bf115,null));};
\ No newline at end of file
+var _0x6a77=['show','params','options','catch','create','body','describe','uniqueid','eml-format','rimraf','fast-json-patch','request-promise','moment','path','sox','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','map','CmHopperHistory','rawAttributes','fieldName','type','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows'];(function(_0x33e23c,_0x2e4bc6){var _0x29826c=function(_0xb3eafd){while(--_0xb3eafd){_0x33e23c['push'](_0x33e23c['shift']());}};_0x29826c(++_0x2e4bc6);}(_0x6a77,0x1b8));var _0x76a7=function(_0x595b06,_0x1abfe5){_0x595b06=_0x595b06-0x0;var _0x4079ef=_0x6a77[_0x595b06];return _0x4079ef;};'use strict';var emlformat=require(_0x76a7('0x0'));var rimraf=require(_0x76a7('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x76a7('0x2'));var rp=require(_0x76a7('0x3'));var moment=require(_0x76a7('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x76a7('0x5'));var sox=require(_0x76a7('0x6'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x76a7('0x7'));var crypto=require(_0x76a7('0x8'));var jsforce=require(_0x76a7('0x9'));var deskjs=require(_0x76a7('0xa'));var toCsv=require('to-csv');var querystring=require(_0x76a7('0xb'));var Papa=require(_0x76a7('0xc'));var Redis=require(_0x76a7('0xd'));var authService=require(_0x76a7('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x76a7('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x76a7('0x10'))(_0x76a7('0x11'));var utils=require(_0x76a7('0x12'));var config=require(_0x76a7('0x13'));var licenseUtil=require('../../config/license/util');var db=require(_0x76a7('0x14'))['db'];function respondWithStatusCode(_0x3b56ea,_0x4b4d18){_0x4b4d18=_0x4b4d18||0xcc;return function(_0x3fa412){if(_0x3fa412){return _0x3b56ea[_0x76a7('0x15')](_0x4b4d18);}return _0x3b56ea[_0x76a7('0x16')](_0x4b4d18)[_0x76a7('0x17')]();};}function respondWithResult(_0x3685ee,_0x30269f){_0x30269f=_0x30269f||0xc8;return function(_0x3ca816){if(_0x3ca816){return _0x3685ee[_0x76a7('0x16')](_0x30269f)['json'](_0x3ca816);}};}function respondWithFilteredResult(_0x554168,_0x3c2073){return function(_0x1c355e){if(_0x1c355e){var _0x314c37=typeof _0x3c2073[_0x76a7('0x18')]===_0x76a7('0x19')&&typeof _0x3c2073[_0x76a7('0x1a')]===_0x76a7('0x19');var _0x347bfc=_0x1c355e[_0x76a7('0x1b')];var _0x43582a=_0x314c37?0x0:_0x3c2073[_0x76a7('0x18')];var _0x259b52=_0x314c37?_0x1c355e[_0x76a7('0x1b')]:_0x3c2073[_0x76a7('0x18')]+_0x3c2073[_0x76a7('0x1a')];var _0x1be1c4;if(_0x259b52>=_0x347bfc){_0x259b52=_0x347bfc;_0x1be1c4=0xc8;}else{_0x1be1c4=0xce;}_0x554168[_0x76a7('0x16')](_0x1be1c4);return _0x554168[_0x76a7('0x1c')](_0x76a7('0x1d'),_0x43582a+'-'+_0x259b52+'/'+_0x347bfc)['json'](_0x1c355e);}return null;};}function patchUpdates(_0xdea63a){return function(_0xde811f){try{jsonpatch[_0x76a7('0x1e')](_0xde811f,_0xdea63a,!![]);}catch(_0x2ebb42){return BPromise[_0x76a7('0x1f')](_0x2ebb42);}return _0xde811f[_0x76a7('0x20')]();};}function saveUpdates(_0x1523e3,_0x3ff6f5){return function(_0x459077){if(_0x459077){return _0x459077[_0x76a7('0x21')](_0x1523e3)[_0x76a7('0x22')](function(_0x51a400){return _0x51a400;});}return null;};}function removeEntity(_0x5bc072,_0x3eeb9b){return function(_0x559886){if(_0x559886){return _0x559886[_0x76a7('0x23')]()[_0x76a7('0x22')](function(){_0x5bc072[_0x76a7('0x16')](0xcc)[_0x76a7('0x17')]();});}};}function handleEntityNotFound(_0x34db32,_0x3ae3cb){return function(_0x30f469){if(!_0x30f469){_0x34db32['sendStatus'](0x194);}return _0x30f469;};}function handleError(_0x388947,_0x143b86){_0x143b86=_0x143b86||0x1f4;return function(_0x5a838d){logger[_0x76a7('0x24')](_0x5a838d[_0x76a7('0x25')]);if(_0x5a838d[_0x76a7('0x26')]){delete _0x5a838d['name'];}_0x388947[_0x76a7('0x16')](_0x143b86)['send'](_0x5a838d);};}exports['index']=function(_0x4e5bd0,_0x3199a9){var _0x57ec79={},_0x284043={},_0xd34d5d={'count':0x0,'rows':[]};var _0x347a99=_[_0x76a7('0x27')](db[_0x76a7('0x28')][_0x76a7('0x29')],function(_0xd76980){return{'name':_0xd76980[_0x76a7('0x2a')],'type':_0xd76980[_0x76a7('0x2b')]['key']};});_0x284043[_0x76a7('0x2c')]=_['map'](_0x347a99,'name');_0x284043['query']=_[_0x76a7('0x2d')](_0x4e5bd0[_0x76a7('0x2e')]);_0x284043[_0x76a7('0x2f')]=_[_0x76a7('0x30')](_0x284043[_0x76a7('0x2c')],_0x284043[_0x76a7('0x2e')]);_0x57ec79[_0x76a7('0x31')]=_[_0x76a7('0x30')](_0x284043['model'],qs[_0x76a7('0x32')](_0x4e5bd0[_0x76a7('0x2e')][_0x76a7('0x32')]));_0x57ec79['attributes']=_0x57ec79['attributes'][_0x76a7('0x33')]?_0x57ec79['attributes']:_0x284043[_0x76a7('0x2c')];if(!_0x4e5bd0[_0x76a7('0x2e')][_0x76a7('0x34')](_0x76a7('0x35'))){_0x57ec79[_0x76a7('0x1a')]=qs[_0x76a7('0x1a')](_0x4e5bd0['query'][_0x76a7('0x1a')]);_0x57ec79[_0x76a7('0x18')]=qs[_0x76a7('0x18')](_0x4e5bd0[_0x76a7('0x2e')][_0x76a7('0x18')]);}_0x57ec79['order']=qs[_0x76a7('0x36')](_0x4e5bd0[_0x76a7('0x2e')][_0x76a7('0x36')]);_0x57ec79[_0x76a7('0x37')]=qs[_0x76a7('0x2f')](_[_0x76a7('0x38')](_0x4e5bd0['query'],_0x284043[_0x76a7('0x2f')]),_0x347a99);if(_0x4e5bd0['query'][_0x76a7('0x39')]){_0x57ec79[_0x76a7('0x37')]=_[_0x76a7('0x3a')](_0x57ec79[_0x76a7('0x37')],{'$or':_[_0x76a7('0x27')](_0x347a99,function(_0x532ce0){if(_0x532ce0[_0x76a7('0x2b')]!==_0x76a7('0x3b')){var _0x16b8f6={};_0x16b8f6[_0x532ce0['name']]={'$like':'%'+_0x4e5bd0[_0x76a7('0x2e')][_0x76a7('0x39')]+'%'};return _0x16b8f6;}})});}_0x57ec79=_[_0x76a7('0x3a')]({},_0x57ec79,_0x4e5bd0['options']);var _0x3c6bcb={'where':_0x57ec79[_0x76a7('0x37')]};return db[_0x76a7('0x28')][_0x76a7('0x1b')](_0x3c6bcb)['then'](function(_0x149be6){_0xd34d5d[_0x76a7('0x1b')]=_0x149be6;if(_0x4e5bd0['query'][_0x76a7('0x3c')]){_0x57ec79[_0x76a7('0x3d')]=[{'all':!![]}];}return db[_0x76a7('0x28')][_0x76a7('0x3e')](_0x57ec79);})['then'](function(_0x33346e){_0xd34d5d[_0x76a7('0x3f')]=_0x33346e;return _0xd34d5d;})[_0x76a7('0x22')](respondWithFilteredResult(_0x3199a9,_0x57ec79))['catch'](handleError(_0x3199a9,null));};exports[_0x76a7('0x40')]=function(_0x438d22,_0x4046eb){var _0x343d8e={'raw':!![],'where':{'id':_0x438d22[_0x76a7('0x41')]['id']}},_0x41e130={};_0x41e130[_0x76a7('0x2c')]=_[_0x76a7('0x2d')](db[_0x76a7('0x28')][_0x76a7('0x29')]);_0x41e130['query']=_[_0x76a7('0x2d')](_0x438d22[_0x76a7('0x2e')]);_0x41e130['filters']=_[_0x76a7('0x30')](_0x41e130[_0x76a7('0x2c')],_0x41e130[_0x76a7('0x2e')]);_0x343d8e['attributes']=_[_0x76a7('0x30')](_0x41e130['model'],qs[_0x76a7('0x32')](_0x438d22[_0x76a7('0x2e')][_0x76a7('0x32')]));_0x343d8e['attributes']=_0x343d8e[_0x76a7('0x31')][_0x76a7('0x33')]?_0x343d8e[_0x76a7('0x31')]:_0x41e130['model'];if(_0x438d22[_0x76a7('0x2e')][_0x76a7('0x3c')]){_0x343d8e['include']=[{'all':!![]}];}_0x343d8e=_[_0x76a7('0x3a')]({},_0x343d8e,_0x438d22[_0x76a7('0x42')]);return db['CmHopperHistory']['find'](_0x343d8e)[_0x76a7('0x22')](handleEntityNotFound(_0x4046eb,null))[_0x76a7('0x22')](respondWithResult(_0x4046eb,null))[_0x76a7('0x43')](handleError(_0x4046eb,null));};exports['create']=function(_0x435163,_0x10a7ea){return db[_0x76a7('0x28')][_0x76a7('0x44')](_0x435163[_0x76a7('0x45')],{})[_0x76a7('0x22')](respondWithResult(_0x10a7ea,0xc9))['catch'](handleError(_0x10a7ea,null));};exports[_0x76a7('0x46')]=function(_0x4b5782,_0x15397d){return db['CmHopperHistory'][_0x76a7('0x46')]()[_0x76a7('0x22')](respondWithResult(_0x15397d,null))[_0x76a7('0x43')](handleError(_0x15397d,null));};exports[_0x76a7('0x21')]=function(_0x1a340a,_0x53389f){if(_0x1a340a[_0x76a7('0x45')][_0x76a7('0x47')]){delete _0x1a340a[_0x76a7('0x45')]['uniqueid'];}return db[_0x76a7('0x28')]['find']({'where':{'uniqueid':_0x1a340a[_0x76a7('0x41')]['id']}})['then'](handleEntityNotFound(_0x53389f,null))['then'](saveUpdates(_0x1a340a['body'],null))[_0x76a7('0x22')](respondWithResult(_0x53389f,null))[_0x76a7('0x43')](handleError(_0x53389f,null));};
\ No newline at end of file