Built motion from commit 8613b0174.|1.0.22
[motion.git] / server / config / forked_routing / fax / queue.js
index 44c67f3..f00930a 100644 (file)
@@ -1 +1 @@
-var _0x10ad=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x66\x61\x78","\x2E\x2E\x2F\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x55\x73\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x46\x61\x78\x52\x6F\x6F\x6D","\x46\x61\x78\x51\x75\x65\x75\x65","\x52\x65\x70\x6F\x72\x74\x46\x61\x78","\x52\x65\x70\x6F\x72\x74\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x65\x73\x73\x61\x67\x65","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x63\x68\x61\x6E\x6E\x65\x6C","\x41\x50\x50\x20\x51\x55\x45\x55\x45\x2C\x20\x51\x55\x45\x55\x45\x3A","\x6E\x61\x6D\x65","\x53\x54\x52\x41\x54\x45\x47\x59\x3A","\x73\x74\x72\x61\x74\x65\x67\x79","\x49\x4E\x54\x45\x52\x41\x43\x54\x49\x4F\x4E\x3A","\x75\x6E\x69\x71\x75\x65\x69\x64","\x41\x47\x45\x4E\x54","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x52\x45\x4A\x45\x43\x54\x45\x44","\x69\x6E\x66\x6F","\x69\x64","\x70\x75\x73\x68","\x72\x65\x6A\x65\x63\x74","\x74\x79\x70\x65","\x6F\x6E","\x66\x69\x6E\x64","\x74\x69\x6D\x65\x6F\x75\x74","\x6C\x65\x6E\x67\x74\x68","\x6D\x61\x70","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x6F\x6E\x6C\x69\x6E\x65","\x66\x61\x78\x50\x61\x75\x73\x65","\x46\x49\x45\x4C\x44\x28\x55\x73\x65\x72\x2E\x69\x64\x2C\x25\x73\x29","\x6A\x6F\x69\x6E","\x66\x6F\x72\x6D\x61\x74","\x45\x52\x52\x4F\x52","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74","\x61\x67\x65\x6E\x74\x3A\x25\x64","\x6D\x65\x6D\x62\x65\x72\x69\x64","\x74\x6F","\x67\x65\x74","\x41\x47\x45\x4E\x54\x20\x53\x45\x4C\x45\x43\x54\x45\x44\x3A","\x66\x69\x6E\x64\x49\x6E\x64\x65\x78","\x73\x70\x6C\x69\x63\x65","\x68\x65\x61\x64","\x71\x75\x65\x75\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x6D\x65\x72\x67\x65","\x63\x72\x65\x61\x74\x65","\x4E\x4F\x20\x41\x56\x41\x49\x4C\x41\x42\x4C\x45\x20\x41\x47\x45\x4E\x54\x53","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78\x5F\x73\x65\x73\x73\x69\x6F\x6E\x3A\x73\x61\x76\x65","\x61\x64\x6D\x69\x6E\x73","\x75\x73\x65\x72\x73","\x45\x4E\x44\x20\x28\x4E\x4F\x20\x41\x4E\x53\x57\x45\x52\x20\x42\x59\x20\x41\x47\x45\x4E\x54\x53\x29","\x75\x70\x64\x61\x74\x65","\x55\x73\x65\x72\x48\x61\x73\x46\x61\x78\x51\x75\x65\x75\x65\x2E\x70\x65\x6E\x61\x6C\x74\x79","\x67\x72\x6F\x75\x70\x42\x79","\x76\x61\x6C\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x63\x6C\x6F\x6E\x65","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x6C\x61\x73\x74\x41\x67\x65\x6E\x74","\x66\x69\x6E\x64\x42\x79\x49\x64","\x73\x74\x61\x63\x6B","\x62\x65\x65\x70\x61\x6C\x6C","\x70\x65\x6E\x61\x6C\x74\x79","\x55\x73\x65\x72\x48\x61\x73\x46\x61\x78\x51\x75\x65\x75\x65","\x73\x6F\x72\x74\x42\x79","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x66\x61\x78\x5F\x72\x6F\x6F\x6D\x3A\x73\x61\x76\x65","\x72\x6F\x6F\x6D\x69\x64","\x54\x49\x4D\x45\x4F\x55\x54","\x53\x45\x43"];_0x10ad[0];var _=require(_0x10ad[1]);var util=require(_0x10ad[2]);var moment=require(_0x10ad[3]);var logger=require(_0x10ad[5])(_0x10ad[4]);var Agent=require(_0x10ad[7])[_0x10ad[6]];var Room=require(_0x10ad[7])[_0x10ad[8]];var Queue=require(_0x10ad[7])[_0x10ad[9]];var Report=require(_0x10ad[7])[_0x10ad[10]];var Session=require(_0x10ad[7])[_0x10ad[11]];module[_0x10ad[12]]= function(_0xd9c1xa,_0xd9c1xb,_0xd9c1xc,_0xd9c1xd,_0xd9c1xe){var _0xd9c1xf=[];var _0xd9c1x10;var _0xd9c1x11;var _0xd9c1x12;var _0xd9c1x13=0;process[_0x10ad[30]](_0x10ad[13],function(_0xd9c1xc){switch(_0xd9c1xc[_0x10ad[29]]){case _0x10ad[28]:logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[22],_0xd9c1xc[_0x10ad[23]],_0x10ad[24]);_0xd9c1xf[_0x10ad[27]]({id:_0xd9c1xc[_0x10ad[26]]});break;default:}});function _0xd9c1x14(_0xd9c1x15){var _0xd9c1x16=_[_0x10ad[31]](_0xd9c1xf,{id:_0xd9c1x15[_0x10ad[26]]});return _0xd9c1x16?true:false}function _0xd9c1x17(){var _0xd9c1x18=((_0xd9c1xa[_0x10ad[32]]- _0xd9c1x13)> _0xd9c1x12[_0x10ad[32]])?_0xd9c1x12[_0x10ad[32]]:(_0xd9c1xa[_0x10ad[32]]- _0xd9c1x13);if(_0xd9c1x18> 0){if(_0xd9c1x11[_0x10ad[33]]){var _0xd9c1x19={where:{id:{$in:_[_0x10ad[34]](_0xd9c1x11,_0x10ad[26])},online:true,faxPause:false},include:[{model:Room,attributes:[_0x10ad[26]],raw:true}],attributes:[_0x10ad[26],_0x10ad[17],_0x10ad[35],_0x10ad[36],_0x10ad[37]],order:[[{raw:util[_0x10ad[40]](_0x10ad[38],_[_0x10ad[34]](_0xd9c1x11,_0x10ad[26])[_0x10ad[39]]())}]]};Agent[_0x10ad[60]](_0xd9c1x19)[_0x10ad[44]](function(_0xd9c1x1c){if(_0xd9c1x1c[_0x10ad[33]]){var _0xd9c1x1d;for(var _0xd9c1x1e=0;_0xd9c1x1e< _0xd9c1x1c[_0x10ad[33]];_0xd9c1x1e++){var _0xd9c1x15=_0xd9c1x1c[_0xd9c1x1e][_0x10ad[50]]({plain:true});if(!_0xd9c1x14(_0xd9c1x15)){_0xd9c1x1d= _0xd9c1x15;break}};if(_0xd9c1x1d){logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[51],_0xd9c1x1d[_0x10ad[26]],_0xd9c1x1d[_0x10ad[17]]);var _0xd9c1x1f=_[_0x10ad[52]](_0xd9c1x11,{"\x69\x64":_0xd9c1x1d[_0x10ad[26]]});if(_0xd9c1x1f>= 0){var _0xd9c1x20=_0xd9c1x11[_0x10ad[53]](_0xd9c1x1f,1);if(_0xd9c1x20&& _0xd9c1x20[_0x10ad[33]]){_0xd9c1x11[_0x10ad[27]](_[_0x10ad[54]](_0xd9c1x20))}};return Report[_0x10ad[58]](_[_0x10ad[57]](_0xd9c1xb,{timeslot:_0xd9c1x18,application:_0x10ad[55],membername:_0xd9c1x1d[_0x10ad[17]],memberid:_0xd9c1x1d[_0x10ad[26]],queue:_0xd9c1x12[_0x10ad[26]],queuename:_0xd9c1x12[_0x10ad[17]],calledAt:moment()[_0x10ad[40]](_0x10ad[56])}))};logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[59]);return}else {logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[59]);return}})[_0x10ad[44]](function(_0xd9c1x1b){if(_0xd9c1x1b){_0xd9c1xd[_0x10ad[49]](util[_0x10ad[40]](_0x10ad[47],_0xd9c1x1b[_0x10ad[48]]))[_0x10ad[46]](_0x10ad[45],_0xd9c1x1b)}})[_0x10ad[44]](function(){_0xd9c1x10= setTimeout(function(){_0xd9c1x13+= _0xd9c1x12[_0x10ad[32]];_0xd9c1x17()},_0xd9c1x18* 1000)})[_0x10ad[43]](function(_0xd9c1x1a){logger[_0x10ad[42]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[41]);_0xd9c1xe(_0xd9c1x1a)})}else {logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[59]);_0xd9c1x10= setTimeout(function(){_0xd9c1x13+= _0xd9c1x12[_0x10ad[32]];_0xd9c1x17()},_0xd9c1x18* 1000)}}else {return Session[_0x10ad[65]]({leaveAt:moment()[_0x10ad[40]](_0x10ad[56]),timeout:true},{where:{uniqueid:_0xd9c1xb[_0x10ad[21]],leaveAt:null},individualHooks:true})[_0x10ad[44]](function(_0xd9c1x21){if(_0xd9c1x21&& _0xd9c1x21[_0x10ad[33]]&& _0xd9c1x21[1][_0x10ad[33]]){for(var _0xd9c1x1e=0;_0xd9c1x1e< _0xd9c1x21[1][_0x10ad[33]];_0xd9c1x1e++){var _0xd9c1x22=_0xd9c1x21[1][_0xd9c1x1e][_0x10ad[50]]({plain:true});_0xd9c1xd[_0x10ad[49]](_0x10ad[62])[_0x10ad[46]](_0x10ad[61],_0xd9c1x22);_0xd9c1xd[_0x10ad[49]](_0x10ad[63])[_0x10ad[46]](_0x10ad[61],_0xd9c1x22)}};logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[64]);clearTimeout(_0xd9c1x10);_0xd9c1xe()})[_0x10ad[43]](function(_0xd9c1x1a){logger[_0x10ad[42]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[41]);_0xd9c1xe(_0xd9c1x1a)})}}function _0xd9c1x23(){var _0xd9c1x18=((_0xd9c1xa[_0x10ad[32]]- _0xd9c1x13)> _0xd9c1x12[_0x10ad[32]])?_0xd9c1x12[_0x10ad[32]]:(_0xd9c1xa[_0x10ad[32]]- _0xd9c1x13);if(_0xd9c1x18> 0){Queue[_0x10ad[73]](_0xd9c1xa.FaxQueueId,{attributes:[_0x10ad[26],_0x10ad[17],_0x10ad[32],_0x10ad[19],_0x10ad[72]],include:[{model:Agent,where:{online:true,faxPause:false},attributes:[_0x10ad[26],_0x10ad[17],_0x10ad[35],_0x10ad[36],_0x10ad[37]],raw:true}]})[_0x10ad[44]](function(_0xd9c1x25){if(_0xd9c1x25){var _0xd9c1x1c=_[_0x10ad[68]](_[_0x10ad[67]](_0xd9c1x25.Users,_0x10ad[66]));if(_0xd9c1x1c&& _0xd9c1x1c[_0x10ad[33]]){var _0xd9c1x26;for(var _0xd9c1x1e=0;_0xd9c1x1e< _0xd9c1x1c[_0x10ad[33]];_0xd9c1x1e++){_[_0x10ad[69]](_0xd9c1x1c[_0xd9c1x1e],function(_0xd9c1x15){return _0xd9c1x14(_0xd9c1x15)});if(_0xd9c1x1c[_0xd9c1x1e][_0x10ad[33]]){_0xd9c1x26= _0xd9c1x1c[_0xd9c1x1e];break}};if(_0xd9c1x26&& _0xd9c1x26[_0x10ad[33]]){var _0xd9c1x27=_[_0x10ad[34]](_0xd9c1x26,function(_0xd9c1x15){return _[_0x10ad[70]](_[_0x10ad[57]](_0xd9c1xb,{timeslot:_0xd9c1x18,application:_0x10ad[55],membername:_0xd9c1x15[_0x10ad[17]],memberid:_0xd9c1x15[_0x10ad[26]],queue:_0xd9c1x12[_0x10ad[26]],queuename:_0xd9c1x12[_0x10ad[17]],calledAt:moment()[_0x10ad[40]](_0x10ad[56])}))});return Report[_0x10ad[71]](_0xd9c1x27,{individualHooks:true})}else {logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[59])}}else {logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[59])}}else {logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[59])}})[_0x10ad[44]](function(_0xd9c1x24){if(_0xd9c1x24&& _0xd9c1x24[_0x10ad[33]]){for(var _0xd9c1x1e=0;_0xd9c1x1e< _0xd9c1x24[_0x10ad[33]];_0xd9c1x1e++){var _0xd9c1x1b=_0xd9c1x24[_0xd9c1x1e][_0x10ad[50]]({plain:true});_0xd9c1xd[_0x10ad[49]](util[_0x10ad[40]](_0x10ad[47],_0xd9c1x1b[_0x10ad[48]]))[_0x10ad[46]](_0x10ad[45],_0xd9c1x1b)}};_0xd9c1x10= setTimeout(function(){_0xd9c1x13+= _0xd9c1x12[_0x10ad[32]];_0xd9c1x23()},_0xd9c1x18* 1000)})[_0x10ad[43]](function(_0xd9c1x1a){logger[_0x10ad[42]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[41]);_0xd9c1xe(_0xd9c1x1a)})}else {return Session[_0x10ad[65]]({leaveAt:moment()[_0x10ad[40]](_0x10ad[56]),timeout:true},{where:{uniqueid:_0xd9c1xb[_0x10ad[21]],leaveAt:null},individualHooks:true})[_0x10ad[44]](function(_0xd9c1x21){if(_0xd9c1x21&& _0xd9c1x21[_0x10ad[33]]&& _0xd9c1x21[1][_0x10ad[33]]){for(var _0xd9c1x1e=0;_0xd9c1x1e< _0xd9c1x21[1][_0x10ad[33]];_0xd9c1x1e++){var _0xd9c1x22=_0xd9c1x21[1][_0xd9c1x1e][_0x10ad[50]]({plain:true});_0xd9c1xd[_0x10ad[49]](_0x10ad[62])[_0x10ad[46]](_0x10ad[61],_0xd9c1x22);_0xd9c1xd[_0x10ad[49]](_0x10ad[63])[_0x10ad[46]](_0x10ad[61],_0xd9c1x22)}};logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[64]);clearTimeout(_0xd9c1x10);_0xd9c1xe()})[_0x10ad[43]](function(_0xd9c1x1a){logger[_0x10ad[42]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[41]);_0xd9c1xe(_0xd9c1x1a)})}}return Queue[_0x10ad[73]](_0xd9c1xa.FaxQueueId,{attributes:[_0x10ad[26],_0x10ad[17],_0x10ad[32],_0x10ad[19],_0x10ad[72]],include:[{model:Agent,attributes:[_0x10ad[26]],raw:true}]})[_0x10ad[44]](function(_0xd9c1x25){_0xd9c1x12= _0xd9c1x25[_0x10ad[50]]({plain:true});logger[_0x10ad[25]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[83],_0xd9c1xa[_0x10ad[32]],_0x10ad[84]);return Session[_0x10ad[58]](_[_0x10ad[57]](_0xd9c1xb,{timeslot:_0xd9c1xa[_0x10ad[32]],application:_0x10ad[55],queue:_0xd9c1x25[_0x10ad[26]],queuename:_0xd9c1x25[_0x10ad[17]],calledAt:moment()[_0x10ad[40]](_0x10ad[56]),joinAt:moment()[_0x10ad[40]](_0x10ad[56]),membername:null,memberid:null}))})[_0x10ad[44]](function(_0xd9c1x22){_0xd9c1xd[_0x10ad[49]](_0x10ad[62])[_0x10ad[46]](_0x10ad[61],_0xd9c1x22);_0xd9c1xd[_0x10ad[49]](_0x10ad[63])[_0x10ad[46]](_0x10ad[61],_0xd9c1x22);return Room[_0x10ad[73]](_0xd9c1xb[_0x10ad[82]])})[_0x10ad[44]](function(_0xd9c1x28){if(_0xd9c1x28){return _0xd9c1x28[_0x10ad[65]]({waiting:true})}})[_0x10ad[44]](function(_0xd9c1x28){if(_0xd9c1x28){_0xd9c1xd[_0x10ad[46]](_0x10ad[81],_0xd9c1x28[_0x10ad[50]]({plain:true}))}})[_0x10ad[44]](function(_0xd9c1x28){switch(_0xd9c1x12[_0x10ad[19]]){case _0x10ad[75]:_0xd9c1x23();break;case _0x10ad[79]:_0xd9c1x11= _[_0x10ad[78]](_0xd9c1x12.Users,[function(_0xd9c1x29){return _0xd9c1x29[_0x10ad[77]][_0x10ad[76]]|| 0}]);_0xd9c1x17();break;case _0x10ad[80]:_0xd9c1x11= _[_0x10ad[78]](_0xd9c1x12.Users,[function(_0xd9c1x29){return _0xd9c1x29[_0x10ad[77]][_0x10ad[76]]|| 0}]);_0xd9c1x17();break;default:}})[_0x10ad[43]](function(_0xd9c1x1a){logger[_0x10ad[42]](_0xd9c1xb[_0x10ad[15]][_0x10ad[14]](),_0x10ad[16],_0xd9c1x12[_0x10ad[17]][_0x10ad[14]](),_0x10ad[18],_0xd9c1x12[_0x10ad[19]],_0x10ad[20],_0xd9c1xb[_0x10ad[21]],_0x10ad[41]);logger[_0x10ad[42]](_0xd9c1x1a[_0x10ad[74]]);_0xd9c1xe(_0xd9c1x1a)})}
\ No newline at end of file
+var _0x3da0=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x6F\x6D\x65\x6E\x74","\x66\x61\x78","\x2E\x2E\x2F\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x55\x73\x65\x72","\x2E\x2E\x2F\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x46\x61\x78\x52\x6F\x6F\x6D","\x46\x61\x78\x51\x75\x65\x75\x65","\x52\x65\x70\x6F\x72\x74\x46\x61\x78","\x52\x65\x70\x6F\x72\x74\x46\x61\x78\x53\x65\x73\x73\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73","\x6D\x65\x73\x73\x61\x67\x65","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x63\x68\x61\x6E\x6E\x65\x6C","\x41\x50\x50\x20\x51\x55\x45\x55\x45\x2C\x20\x51\x55\x45\x55\x45\x3A","\x6E\x61\x6D\x65","\x53\x54\x52\x41\x54\x45\x47\x59\x3A","\x73\x74\x72\x61\x74\x65\x67\x79","\x49\x4E\x54\x45\x52\x41\x43\x54\x49\x4F\x4E\x3A","\x75\x6E\x69\x71\x75\x65\x69\x64","\x41\x47\x45\x4E\x54","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x52\x45\x4A\x45\x43\x54\x45\x44","\x69\x6E\x66\x6F","\x69\x64","\x70\x75\x73\x68","\x72\x65\x6A\x65\x63\x74","\x74\x79\x70\x65","\x6F\x6E","\x66\x69\x6E\x64","\x74\x69\x6D\x65\x6F\x75\x74","\x6C\x65\x6E\x67\x74\x68","\x6D\x61\x70","\x66\x75\x6C\x6C\x6E\x61\x6D\x65","\x6F\x6E\x6C\x69\x6E\x65","\x66\x61\x78\x50\x61\x75\x73\x65","\x46\x49\x45\x4C\x44\x28\x55\x73\x65\x72\x2E\x69\x64\x2C\x25\x73\x29","\x6A\x6F\x69\x6E","\x66\x6F\x72\x6D\x61\x74","\x45\x52\x52\x4F\x52","\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x74\x68\x65\x6E","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78\x3A\x73\x61\x76\x65","\x65\x6D\x69\x74","\x61\x67\x65\x6E\x74\x3A\x25\x64","\x6D\x65\x6D\x62\x65\x72\x69\x64","\x74\x6F","\x67\x65\x74","\x41\x47\x45\x4E\x54\x20\x53\x45\x4C\x45\x43\x54\x45\x44\x3A","\x66\x69\x6E\x64\x49\x6E\x64\x65\x78","\x73\x70\x6C\x69\x63\x65","\x68\x65\x61\x64","\x71\x75\x65\x75\x65","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x6D\x65\x72\x67\x65","\x63\x72\x65\x61\x74\x65","\x4E\x4F\x20\x41\x56\x41\x49\x4C\x41\x42\x4C\x45\x20\x41\x47\x45\x4E\x54\x53","\x66\x69\x6E\x64\x41\x6C\x6C","\x72\x65\x70\x6F\x72\x74\x5F\x66\x61\x78\x5F\x73\x65\x73\x73\x69\x6F\x6E\x3A\x73\x61\x76\x65","\x61\x64\x6D\x69\x6E\x73","\x75\x73\x65\x72\x73","\x45\x4E\x44\x20\x28\x4E\x4F\x20\x41\x4E\x53\x57\x45\x52\x20\x42\x59\x20\x41\x47\x45\x4E\x54\x53\x29","\x75\x70\x64\x61\x74\x65","\x55\x73\x65\x72\x48\x61\x73\x46\x61\x78\x51\x75\x65\x75\x65\x2E\x70\x65\x6E\x61\x6C\x74\x79","\x67\x72\x6F\x75\x70\x42\x79","\x76\x61\x6C\x75\x65\x73","\x72\x65\x6D\x6F\x76\x65","\x63\x6C\x6F\x6E\x65","\x62\x75\x6C\x6B\x43\x72\x65\x61\x74\x65","\x6C\x61\x73\x74\x41\x67\x65\x6E\x74","\x66\x69\x6E\x64\x42\x79\x49\x64","\x73\x74\x61\x63\x6B","\x62\x65\x65\x70\x61\x6C\x6C","\x70\x65\x6E\x61\x6C\x74\x79","\x55\x73\x65\x72\x48\x61\x73\x46\x61\x78\x51\x75\x65\x75\x65","\x73\x6F\x72\x74\x42\x79","\x72\x6F\x75\x6E\x64\x72\x6F\x62\x69\x6E","\x72\x72\x6D\x65\x6D\x6F\x72\x79","\x66\x61\x78\x5F\x72\x6F\x6F\x6D\x3A\x73\x61\x76\x65","\x72\x6F\x6F\x6D\x69\x64","\x54\x49\x4D\x45\x4F\x55\x54","\x53\x45\x43"];_0x3da0[0];var _=require(_0x3da0[1]);var util=require(_0x3da0[2]);var moment=require(_0x3da0[3]);var logger=require(_0x3da0[5])(_0x3da0[4]);var Agent=require(_0x3da0[7])[_0x3da0[6]];var Room=require(_0x3da0[7])[_0x3da0[8]];var Queue=require(_0x3da0[7])[_0x3da0[9]];var Report=require(_0x3da0[7])[_0x3da0[10]];var Session=require(_0x3da0[7])[_0x3da0[11]];module[_0x3da0[12]]= function(_0xb6a2xa,_0xb6a2xb,_0xb6a2xc,_0xb6a2xd,_0xb6a2xe){var _0xb6a2xf=[];var _0xb6a2x10;var _0xb6a2x11;var _0xb6a2x12;var _0xb6a2x13=0;process[_0x3da0[30]](_0x3da0[13],function(_0xb6a2xc){switch(_0xb6a2xc[_0x3da0[29]]){case _0x3da0[28]:logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[22],_0xb6a2xc[_0x3da0[23]],_0x3da0[24]);_0xb6a2xf[_0x3da0[27]]({id:_0xb6a2xc[_0x3da0[26]]});break;default:}});function _0xb6a2x14(_0xb6a2x15){var _0xb6a2x16=_[_0x3da0[31]](_0xb6a2xf,{id:_0xb6a2x15[_0x3da0[26]]});return _0xb6a2x16?true:false}function _0xb6a2x17(){var _0xb6a2x18=((_0xb6a2xa[_0x3da0[32]]- _0xb6a2x13)> _0xb6a2x12[_0x3da0[32]])?_0xb6a2x12[_0x3da0[32]]:(_0xb6a2xa[_0x3da0[32]]- _0xb6a2x13);if(_0xb6a2x18> 0){if(_0xb6a2x11[_0x3da0[33]]){var _0xb6a2x19={where:{id:{$in:_[_0x3da0[34]](_0xb6a2x11,_0x3da0[26])},online:true,faxPause:false},include:[{model:Room,attributes:[_0x3da0[26]],raw:true}],attributes:[_0x3da0[26],_0x3da0[17],_0x3da0[35],_0x3da0[36],_0x3da0[37]],order:[[{raw:util[_0x3da0[40]](_0x3da0[38],_[_0x3da0[34]](_0xb6a2x11,_0x3da0[26])[_0x3da0[39]]())}]]};Agent[_0x3da0[60]](_0xb6a2x19)[_0x3da0[44]](function(_0xb6a2x1c){if(_0xb6a2x1c[_0x3da0[33]]){var _0xb6a2x1d;for(var _0xb6a2x1e=0;_0xb6a2x1e< _0xb6a2x1c[_0x3da0[33]];_0xb6a2x1e++){var _0xb6a2x15=_0xb6a2x1c[_0xb6a2x1e][_0x3da0[50]]({plain:true});if(!_0xb6a2x14(_0xb6a2x15)){_0xb6a2x1d= _0xb6a2x15;break}};if(_0xb6a2x1d){logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[51],_0xb6a2x1d[_0x3da0[26]],_0xb6a2x1d[_0x3da0[17]]);var _0xb6a2x1f=_[_0x3da0[52]](_0xb6a2x11,{"\x69\x64":_0xb6a2x1d[_0x3da0[26]]});if(_0xb6a2x1f>= 0){var _0xb6a2x20=_0xb6a2x11[_0x3da0[53]](_0xb6a2x1f,1);if(_0xb6a2x20&& _0xb6a2x20[_0x3da0[33]]){_0xb6a2x11[_0x3da0[27]](_[_0x3da0[54]](_0xb6a2x20))}};return Report[_0x3da0[58]](_[_0x3da0[57]](_0xb6a2xb,{timeslot:_0xb6a2x18,application:_0x3da0[55],membername:_0xb6a2x1d[_0x3da0[17]],memberid:_0xb6a2x1d[_0x3da0[26]],queue:_0xb6a2x12[_0x3da0[26]],queuename:_0xb6a2x12[_0x3da0[17]],calledAt:moment()[_0x3da0[40]](_0x3da0[56])}))};logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[59]);return}else {logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[59]);return}})[_0x3da0[44]](function(_0xb6a2x1b){if(_0xb6a2x1b){_0xb6a2xd[_0x3da0[49]](util[_0x3da0[40]](_0x3da0[47],_0xb6a2x1b[_0x3da0[48]]))[_0x3da0[46]](_0x3da0[45],_0xb6a2x1b)}})[_0x3da0[44]](function(){_0xb6a2x10= setTimeout(function(){_0xb6a2x13+= _0xb6a2x12[_0x3da0[32]];_0xb6a2x17()},_0xb6a2x18* 1000)})[_0x3da0[43]](function(_0xb6a2x1a){logger[_0x3da0[42]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[41]);_0xb6a2xe(_0xb6a2x1a)})}else {logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[59]);_0xb6a2x10= setTimeout(function(){_0xb6a2x13+= _0xb6a2x12[_0x3da0[32]];_0xb6a2x17()},_0xb6a2x18* 1000)}}else {return Session[_0x3da0[65]]({leaveAt:moment()[_0x3da0[40]](_0x3da0[56]),timeout:true},{where:{uniqueid:_0xb6a2xb[_0x3da0[21]],leaveAt:null},individualHooks:true})[_0x3da0[44]](function(_0xb6a2x21){if(_0xb6a2x21&& _0xb6a2x21[_0x3da0[33]]&& _0xb6a2x21[1][_0x3da0[33]]){for(var _0xb6a2x1e=0;_0xb6a2x1e< _0xb6a2x21[1][_0x3da0[33]];_0xb6a2x1e++){var _0xb6a2x22=_0xb6a2x21[1][_0xb6a2x1e][_0x3da0[50]]({plain:true});_0xb6a2xd[_0x3da0[49]](_0x3da0[62])[_0x3da0[46]](_0x3da0[61],_0xb6a2x22);_0xb6a2xd[_0x3da0[49]](_0x3da0[63])[_0x3da0[46]](_0x3da0[61],_0xb6a2x22)}};logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[64]);clearTimeout(_0xb6a2x10);_0xb6a2xe()})[_0x3da0[43]](function(_0xb6a2x1a){logger[_0x3da0[42]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[41]);_0xb6a2xe(_0xb6a2x1a)})}}function _0xb6a2x23(){var _0xb6a2x18=((_0xb6a2xa[_0x3da0[32]]- _0xb6a2x13)> _0xb6a2x12[_0x3da0[32]])?_0xb6a2x12[_0x3da0[32]]:(_0xb6a2xa[_0x3da0[32]]- _0xb6a2x13);if(_0xb6a2x18> 0){Queue[_0x3da0[73]](_0xb6a2xa.FaxQueueId,{attributes:[_0x3da0[26],_0x3da0[17],_0x3da0[32],_0x3da0[19],_0x3da0[72]],include:[{model:Agent,where:{online:true,faxPause:false},attributes:[_0x3da0[26],_0x3da0[17],_0x3da0[35],_0x3da0[36],_0x3da0[37]],raw:true}]})[_0x3da0[44]](function(_0xb6a2x25){if(_0xb6a2x25){var _0xb6a2x1c=_[_0x3da0[68]](_[_0x3da0[67]](_0xb6a2x25.Users,_0x3da0[66]));if(_0xb6a2x1c&& _0xb6a2x1c[_0x3da0[33]]){var _0xb6a2x26;for(var _0xb6a2x1e=0;_0xb6a2x1e< _0xb6a2x1c[_0x3da0[33]];_0xb6a2x1e++){_[_0x3da0[69]](_0xb6a2x1c[_0xb6a2x1e],function(_0xb6a2x15){return _0xb6a2x14(_0xb6a2x15)});if(_0xb6a2x1c[_0xb6a2x1e][_0x3da0[33]]){_0xb6a2x26= _0xb6a2x1c[_0xb6a2x1e];break}};if(_0xb6a2x26&& _0xb6a2x26[_0x3da0[33]]){var _0xb6a2x27=_[_0x3da0[34]](_0xb6a2x26,function(_0xb6a2x15){return _[_0x3da0[70]](_[_0x3da0[57]](_0xb6a2xb,{timeslot:_0xb6a2x18,application:_0x3da0[55],membername:_0xb6a2x15[_0x3da0[17]],memberid:_0xb6a2x15[_0x3da0[26]],queue:_0xb6a2x12[_0x3da0[26]],queuename:_0xb6a2x12[_0x3da0[17]],calledAt:moment()[_0x3da0[40]](_0x3da0[56])}))});return Report[_0x3da0[71]](_0xb6a2x27,{individualHooks:true})}else {logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[59])}}else {logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[59])}}else {logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[59])}})[_0x3da0[44]](function(_0xb6a2x24){if(_0xb6a2x24&& _0xb6a2x24[_0x3da0[33]]){for(var _0xb6a2x1e=0;_0xb6a2x1e< _0xb6a2x24[_0x3da0[33]];_0xb6a2x1e++){var _0xb6a2x1b=_0xb6a2x24[_0xb6a2x1e][_0x3da0[50]]({plain:true});_0xb6a2xd[_0x3da0[49]](util[_0x3da0[40]](_0x3da0[47],_0xb6a2x1b[_0x3da0[48]]))[_0x3da0[46]](_0x3da0[45],_0xb6a2x1b)}};_0xb6a2x10= setTimeout(function(){_0xb6a2x13+= _0xb6a2x12[_0x3da0[32]];_0xb6a2x23()},_0xb6a2x18* 1000)})[_0x3da0[43]](function(_0xb6a2x1a){logger[_0x3da0[42]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[41]);_0xb6a2xe(_0xb6a2x1a)})}else {return Session[_0x3da0[65]]({leaveAt:moment()[_0x3da0[40]](_0x3da0[56]),timeout:true},{where:{uniqueid:_0xb6a2xb[_0x3da0[21]],leaveAt:null},individualHooks:true})[_0x3da0[44]](function(_0xb6a2x21){if(_0xb6a2x21&& _0xb6a2x21[_0x3da0[33]]&& _0xb6a2x21[1][_0x3da0[33]]){for(var _0xb6a2x1e=0;_0xb6a2x1e< _0xb6a2x21[1][_0x3da0[33]];_0xb6a2x1e++){var _0xb6a2x22=_0xb6a2x21[1][_0xb6a2x1e][_0x3da0[50]]({plain:true});_0xb6a2xd[_0x3da0[49]](_0x3da0[62])[_0x3da0[46]](_0x3da0[61],_0xb6a2x22);_0xb6a2xd[_0x3da0[49]](_0x3da0[63])[_0x3da0[46]](_0x3da0[61],_0xb6a2x22)}};logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[64]);clearTimeout(_0xb6a2x10);_0xb6a2xe()})[_0x3da0[43]](function(_0xb6a2x1a){logger[_0x3da0[42]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[41]);_0xb6a2xe(_0xb6a2x1a)})}}return Queue[_0x3da0[73]](_0xb6a2xa.FaxQueueId,{attributes:[_0x3da0[26],_0x3da0[17],_0x3da0[32],_0x3da0[19],_0x3da0[72]],include:[{model:Agent,attributes:[_0x3da0[26]],raw:true}]})[_0x3da0[44]](function(_0xb6a2x25){_0xb6a2x12= _0xb6a2x25[_0x3da0[50]]({plain:true});logger[_0x3da0[25]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[83],_0xb6a2xa[_0x3da0[32]],_0x3da0[84]);return Session[_0x3da0[58]](_[_0x3da0[57]](_0xb6a2xb,{timeslot:_0xb6a2xa[_0x3da0[32]],application:_0x3da0[55],queue:_0xb6a2x25[_0x3da0[26]],queuename:_0xb6a2x25[_0x3da0[17]],calledAt:moment()[_0x3da0[40]](_0x3da0[56]),joinAt:moment()[_0x3da0[40]](_0x3da0[56]),membername:null,memberid:null}))})[_0x3da0[44]](function(_0xb6a2x22){_0xb6a2xd[_0x3da0[49]](_0x3da0[62])[_0x3da0[46]](_0x3da0[61],_0xb6a2x22);_0xb6a2xd[_0x3da0[49]](_0x3da0[63])[_0x3da0[46]](_0x3da0[61],_0xb6a2x22);return Room[_0x3da0[73]](_0xb6a2xb[_0x3da0[82]])})[_0x3da0[44]](function(_0xb6a2x28){if(_0xb6a2x28){return _0xb6a2x28[_0x3da0[65]]({waiting:true})}})[_0x3da0[44]](function(_0xb6a2x28){if(_0xb6a2x28){_0xb6a2xd[_0x3da0[46]](_0x3da0[81],_0xb6a2x28[_0x3da0[50]]({plain:true}))}})[_0x3da0[44]](function(_0xb6a2x28){switch(_0xb6a2x12[_0x3da0[19]]){case _0x3da0[75]:_0xb6a2x23();break;case _0x3da0[79]:_0xb6a2x11= _[_0x3da0[78]](_0xb6a2x12.Users,[function(_0xb6a2x29){return _0xb6a2x29[_0x3da0[77]][_0x3da0[76]]|| 0}]);_0xb6a2x17();break;case _0x3da0[80]:_0xb6a2x11= _[_0x3da0[78]](_0xb6a2x12.Users,[function(_0xb6a2x29){return _0xb6a2x29[_0x3da0[77]][_0x3da0[76]]|| 0}]);_0xb6a2x17();break;default:}})[_0x3da0[43]](function(_0xb6a2x1a){logger[_0x3da0[42]](_0xb6a2xb[_0x3da0[15]][_0x3da0[14]](),_0x3da0[16],_0xb6a2x12[_0x3da0[17]][_0x3da0[14]](),_0x3da0[18],_0xb6a2x12[_0x3da0[19]],_0x3da0[20],_0xb6a2xb[_0x3da0[21]],_0x3da0[41]);logger[_0x3da0[42]](_0xb6a2x1a[_0x3da0[74]]);_0xb6a2xe(_0xb6a2x1a)})}
\ No newline at end of file