Built motion from commit 943eae279.|1.0.24
[motion.git] / server / config / integrations / motionbar.js
index bada2ac..91c80e4 100644 (file)
@@ -1 +1 @@
-var _0xaf25=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x75\x73\x74\x61\x63\x68\x65","\x6D\x6F\x74\x69\x6F\x6E","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x52\x65\x70\x6F\x72\x74\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x20\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x61\x74\x69\x6F\x6E\x2E\x2E\x2E","\x69\x6E\x66\x6F","\x68\x61\x6E\x64\x6C\x65\x45\x76\x65\x6E\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x50\x61\x73\x73\x65\x64\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x20\x61\x72\x65\x20\x6E\x6F\x74\x20\x65\x6E\x6F\x75\x67\x68\x20\x74\x6F\x20\x6D\x61\x6E\x61\x67\x65\x20\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x65\x72\x72\x6F\x72","\x69\x64","\x63\x6C\x6F\x6E\x65","\x6D\x65\x72\x67\x65","\x54\x79\x70\x65\x3A","\x64\x65\x62\x75\x67","\x63\x61\x74\x63\x68","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x50\x6F\x70\x75\x70\x20\x63\x72\x65\x61\x74\x65\x64\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x74\x68\x65\x6E","\x68\x74\x6D\x6C","\x72\x65\x6E\x64\x65\x72","\x3C\x68\x74\x6D\x6C\x3E\x3C\x62\x6F\x64\x79\x3E\x45\x6D\x70\x74\x79\x20\x54\x65\x6D\x70\x6C\x61\x74\x65\x3C\x2F\x62\x6F\x64\x79\x3E\x3C\x2F\x68\x74\x6D\x6C\x3E","\x73\x75\x62\x6A\x65\x63\x74","\x4E\x6F\x20\x54\x69\x74\x6C\x65","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x65\x76\x65\x6E\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x65\x78\x69\x74\x53\x74\x61\x74\x75\x73","\x73\x75\x63\x63\x65\x73\x73","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x49\x64","\x72\x65\x70\x6F\x72\x74\x5F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x3A\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x65\x6D\x69\x74","\x61\x67\x65\x6E\x74\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x74\x6F","\x63\x72\x65\x61\x74\x65","\x66\x69\x6E\x64\x42\x79\x49\x64","\x30","\x75\x72\x6C","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x77\x69\x6B\x69\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D\x2F","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x55\x52\x4C\x20\x63\x72\x65\x61\x74\x65\x64\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74","\x31","\x61\x70\x70","\x61\x70\x70\x64\x61\x74\x61","\x64\x61\x74\x61\x33","","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x57\x69\x6E\x64\x6F\x77\x73\x20\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x20\x6F\x70\x65\x6E\x65\x64\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74","\x32","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x41\x63\x74\x69\x6F\x6E\x20\x74\x79\x70\x65\x20\x6E\x6F\x74\x20\x72\x65\x63\x6F\x67\x6E\x69\x7A\x65\x64\x3A","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x74\x69\x63\x6B\x65\x74\x20\x63\x72\x65\x61\x74\x69\x6F\x6E","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x3A","\x6D\x65\x73\x73\x61\x67\x65","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x53\x74\x61\x63\x6B\x3A","\x73\x74\x61\x63\x6B","\x66\x61\x69\x6C\x65\x64","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x52\x65\x70\x6F\x72\x74\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x20\x63\x72\x65\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73"];_0xaf25[0];var _=require(_0xaf25[1]);var util=require(_0xaf25[2]);var Mustache=require(_0xaf25[3]);var logger=require(_0xaf25[5])(_0xaf25[4]);var ReportIntegration=require(_0xaf25[7])[_0xaf25[6]];var Template=require(_0xaf25[7])[_0xaf25[8]];function Motionbar(){logger[_0xaf25[10]](_0xaf25[9])}Motionbar[_0xaf25[12]][_0xaf25[11]]= function(_0xf70fx8,_0xf70fx9,_0xf70fxa,_0xf70fxb,_0xf70fxc){if(!_0xf70fx8[_0xaf25[13]]||  !_0xf70fx8[_0xaf25[14]]){console[_0xaf25[16]](_0xaf25[15]);return};delete _0xf70fxa[_0xaf25[17]];var _0xf70fxd=_[_0xaf25[19]](_[_0xaf25[18]](_0xf70fxa),_0xf70fxb);logger[_0xaf25[21]](_0xaf25[20],_0xf70fx8[_0xaf25[13]]);switch(_0xf70fx8[_0xaf25[13]]){case _0xaf25[44]:return Template[_0xaf25[43]](_0xf70fx8[_0xaf25[14]])[_0xaf25[25]](function(_0xf70fxe){_0xf70fxa[_0xaf25[26]]= _0xf70fxe[_0xaf25[26]]?Mustache[_0xaf25[27]](_0xf70fxe[_0xaf25[26]],_0xf70fxd):_0xaf25[28];_0xf70fxa[_0xaf25[29]]= _0xf70fxe[_0xaf25[29]]?Mustache[_0xaf25[27]](_0xf70fxe[_0xaf25[29]].toString(),_0xf70fxd):_0xaf25[30];_0xf70fxa[_0xaf25[31]]= _0xaf25[32];_0xf70fxa[_0xaf25[33]]= _0xf70fx9;_0xf70fxa[_0xaf25[34]]= _0xaf25[35];_0xf70fxa[_0xaf25[36]]= _0xf70fx8[_0xaf25[13]];_0xf70fxc[_0xaf25[41]](util[_0xaf25[40]](_0xaf25[39],_0xf70fxa[_0xaf25[24]]))[_0xaf25[38]](_0xaf25[37],_0xf70fxa);return ReportIntegration[_0xaf25[42]](_0xf70fxa)})[_0xaf25[25]](function(){logger[_0xaf25[10]](_0xaf25[23],_0xf70fxa[_0xaf25[24]])})[_0xaf25[22]](handleError(_0xf70fx9,_0xf70fxa,_0xf70fx8[_0xaf25[13]]));case _0xaf25[48]:_0xf70fxa[_0xaf25[45]]= _0xf70fx8[_0xaf25[14]]?Mustache[_0xaf25[27]](_0xf70fx8[_0xaf25[14]],_0xf70fxd):_0xaf25[46];_0xf70fxa[_0xaf25[31]]= _0xaf25[32];_0xf70fxa[_0xaf25[33]]= _0xf70fx9;_0xf70fxa[_0xaf25[34]]= _0xaf25[35];_0xf70fxa[_0xaf25[36]]= _0xf70fx8[_0xaf25[13]];_0xf70fxc[_0xaf25[41]](util[_0xaf25[40]](_0xaf25[39],_0xf70fxa[_0xaf25[24]]))[_0xaf25[38]](_0xaf25[37],_0xf70fxa);return ReportIntegration[_0xaf25[42]](_0xf70fxa)[_0xaf25[25]](function(){logger[_0xaf25[10]](_0xaf25[47],_0xf70fxa[_0xaf25[24]])})[_0xaf25[22]](handleError(_0xf70fx9,_0xf70fxa,_0xf70fx8[_0xaf25[13]]));case _0xaf25[54]:_0xf70fxa[_0xaf25[49]]= _0xf70fx8[_0xaf25[14]];_0xf70fxa[_0xaf25[50]]= _0xf70fx8[_0xaf25[51]]?Mustache[_0xaf25[27]](_0xf70fx8[_0xaf25[51]],_0xf70fxd):_0xaf25[52];_0xf70fxa[_0xaf25[31]]= _0xaf25[32];_0xf70fxa[_0xaf25[33]]= _0xf70fx9;_0xf70fxa[_0xaf25[34]]= _0xaf25[35];_0xf70fxa[_0xaf25[36]]= _0xf70fx8[_0xaf25[13]];_0xf70fxc[_0xaf25[41]](util[_0xaf25[40]](_0xaf25[39],_0xf70fxa[_0xaf25[24]]))[_0xaf25[38]](_0xaf25[37],_0xf70fxa);return ReportIntegration[_0xaf25[42]](_0xf70fxa)[_0xaf25[25]](function(){logger[_0xaf25[10]](_0xaf25[53],_0xf70fxa[_0xaf25[24]])})[_0xaf25[22]](handleError(_0xf70fx9,_0xf70fxa,_0xf70fx8[_0xaf25[13]]));default:logger[_0xaf25[16]](_0xaf25[55],_0xf70fx8[_0xaf25[13]])}};function handleError(_0xf70fx9,_0xf70fxa,_0xf70fx10){return function(_0xf70fx11){logger[_0xaf25[16]](_0xaf25[56]);logger[_0xaf25[16]](_0xaf25[57],_0xf70fx11[_0xaf25[58]]);logger[_0xaf25[16]](_0xaf25[59],_0xf70fx11[_0xaf25[60]]);_0xf70fxa[_0xaf25[31]]= _0xaf25[32];_0xf70fxa[_0xaf25[33]]= _0xf70fx9;_0xf70fxa[_0xaf25[34]]= _0xaf25[61];_0xf70fxa[_0xaf25[36]]= _0xf70fx10;ReportIntegration[_0xaf25[42]](_0xf70fxa)[_0xaf25[25]](function(){return})[_0xaf25[22]](function(_0xf70fx11){logger[_0xaf25[16]](_0xaf25[62]);return})}}module[_0xaf25[63]]= Motionbar
\ No newline at end of file
+var _0x8509=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x75\x74\x69\x6C","\x6D\x75\x73\x74\x61\x63\x68\x65","\x6D\x6F\x74\x69\x6F\x6E","\x2E\x2E\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x52\x65\x70\x6F\x72\x74\x49\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x54\x65\x6D\x70\x6C\x61\x74\x65","\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x20\x69\x6E\x69\x74\x69\x61\x6C\x69\x7A\x61\x74\x69\x6F\x6E\x2E\x2E\x2E","\x69\x6E\x66\x6F","\x68\x61\x6E\x64\x6C\x65\x45\x76\x65\x6E\x74","\x70\x72\x6F\x74\x6F\x74\x79\x70\x65","\x64\x61\x74\x61\x31","\x64\x61\x74\x61\x32","\x50\x61\x73\x73\x65\x64\x20\x70\x61\x72\x61\x6D\x65\x74\x65\x72\x73\x20\x61\x72\x65\x20\x6E\x6F\x74\x20\x65\x6E\x6F\x75\x67\x68\x20\x74\x6F\x20\x6D\x61\x6E\x61\x67\x65\x20\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x65\x72\x72\x6F\x72","\x69\x64","\x63\x6C\x6F\x6E\x65","\x6D\x65\x72\x67\x65","\x54\x79\x70\x65\x3A","\x64\x65\x62\x75\x67","\x63\x61\x74\x63\x68","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x50\x6F\x70\x75\x70\x20\x63\x72\x65\x61\x74\x65\x64\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74","\x6D\x65\x6D\x62\x65\x72\x6E\x61\x6D\x65","\x74\x68\x65\x6E","\x68\x74\x6D\x6C","\x72\x65\x6E\x64\x65\x72","\x3C\x68\x74\x6D\x6C\x3E\x3C\x62\x6F\x64\x79\x3E\x45\x6D\x70\x74\x79\x20\x54\x65\x6D\x70\x6C\x61\x74\x65\x3C\x2F\x62\x6F\x64\x79\x3E\x3C\x2F\x68\x74\x6D\x6C\x3E","\x73\x75\x62\x6A\x65\x63\x74","\x4E\x6F\x20\x54\x69\x74\x6C\x65","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E","\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x65\x76\x65\x6E\x74\x43\x68\x61\x6E\x6E\x65\x6C","\x65\x78\x69\x74\x53\x74\x61\x74\x75\x73","\x73\x75\x63\x63\x65\x73\x73","\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x49\x64","\x72\x65\x70\x6F\x72\x74\x5F\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x3A\x6D\x6F\x74\x69\x6F\x6E\x62\x61\x72","\x65\x6D\x69\x74","\x61\x67\x65\x6E\x74\x3A\x25\x73","\x66\x6F\x72\x6D\x61\x74","\x74\x6F","\x63\x72\x65\x61\x74\x65","\x66\x69\x6E\x64\x42\x79\x49\x64","\x30","\x75\x72\x6C","\x68\x74\x74\x70\x73\x3A\x2F\x2F\x77\x69\x6B\x69\x2E\x78\x63\x61\x6C\x6C\x79\x6D\x6F\x74\x69\x6F\x6E\x2E\x63\x6F\x6D\x2F","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x55\x52\x4C\x20\x63\x72\x65\x61\x74\x65\x64\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74","\x31","\x61\x70\x70","\x61\x70\x70\x64\x61\x74\x61","\x64\x61\x74\x61\x33","","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x57\x69\x6E\x64\x6F\x77\x73\x20\x41\x70\x70\x6C\x69\x63\x61\x74\x69\x6F\x6E\x20\x6F\x70\x65\x6E\x65\x64\x20\x66\x6F\x72\x20\x61\x67\x65\x6E\x74","\x32","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x41\x63\x74\x69\x6F\x6E\x20\x74\x79\x70\x65\x20\x6E\x6F\x74\x20\x72\x65\x63\x6F\x67\x6E\x69\x7A\x65\x64\x3A","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x74\x69\x63\x6B\x65\x74\x20\x63\x72\x65\x61\x74\x69\x6F\x6E","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x3A","\x6D\x65\x73\x73\x61\x67\x65","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x53\x74\x61\x63\x6B\x3A","\x73\x74\x61\x63\x6B","\x66\x61\x69\x6C\x65\x64","\x5B\x4D\x6F\x74\x69\x6F\x6E\x62\x61\x72\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x52\x65\x70\x6F\x72\x74\x20\x69\x6E\x74\x65\x67\x72\x61\x74\x69\x6F\x6E\x20\x63\x72\x65\x61\x74\x69\x6F\x6E","\x65\x78\x70\x6F\x72\x74\x73"];_0x8509[0];var _=require(_0x8509[1]);var util=require(_0x8509[2]);var Mustache=require(_0x8509[3]);var logger=require(_0x8509[5])(_0x8509[4]);var ReportIntegration=require(_0x8509[7])[_0x8509[6]];var Template=require(_0x8509[7])[_0x8509[8]];function Motionbar(){logger[_0x8509[10]](_0x8509[9])}Motionbar[_0x8509[12]][_0x8509[11]]= function(_0xf23ax8,_0xf23ax9,_0xf23axa,_0xf23axb,_0xf23axc){if(!_0xf23ax8[_0x8509[13]]||  !_0xf23ax8[_0x8509[14]]){console[_0x8509[16]](_0x8509[15]);return};delete _0xf23axa[_0x8509[17]];var _0xf23axd=_[_0x8509[19]](_[_0x8509[18]](_0xf23axa),_0xf23axb);logger[_0x8509[21]](_0x8509[20],_0xf23ax8[_0x8509[13]]);switch(_0xf23ax8[_0x8509[13]]){case _0x8509[44]:return Template[_0x8509[43]](_0xf23ax8[_0x8509[14]])[_0x8509[25]](function(_0xf23axe){_0xf23axa[_0x8509[26]]= _0xf23axe[_0x8509[26]]?Mustache[_0x8509[27]](_0xf23axe[_0x8509[26]],_0xf23axd):_0x8509[28];_0xf23axa[_0x8509[29]]= _0xf23axe[_0x8509[29]]?Mustache[_0x8509[27]](_0xf23axe[_0x8509[29]].toString(),_0xf23axd):_0x8509[30];_0xf23axa[_0x8509[31]]= _0x8509[32];_0xf23axa[_0x8509[33]]= _0xf23ax9;_0xf23axa[_0x8509[34]]= _0x8509[35];_0xf23axa[_0x8509[36]]= _0xf23ax8[_0x8509[13]];_0xf23axc[_0x8509[41]](util[_0x8509[40]](_0x8509[39],_0xf23axa[_0x8509[24]]))[_0x8509[38]](_0x8509[37],_0xf23axa);return ReportIntegration[_0x8509[42]](_0xf23axa)})[_0x8509[25]](function(){logger[_0x8509[10]](_0x8509[23],_0xf23axa[_0x8509[24]])})[_0x8509[22]](handleError(_0xf23ax9,_0xf23axa,_0xf23ax8[_0x8509[13]]));case _0x8509[48]:_0xf23axa[_0x8509[45]]= _0xf23ax8[_0x8509[14]]?Mustache[_0x8509[27]](_0xf23ax8[_0x8509[14]],_0xf23axd):_0x8509[46];_0xf23axa[_0x8509[31]]= _0x8509[32];_0xf23axa[_0x8509[33]]= _0xf23ax9;_0xf23axa[_0x8509[34]]= _0x8509[35];_0xf23axa[_0x8509[36]]= _0xf23ax8[_0x8509[13]];_0xf23axc[_0x8509[41]](util[_0x8509[40]](_0x8509[39],_0xf23axa[_0x8509[24]]))[_0x8509[38]](_0x8509[37],_0xf23axa);return ReportIntegration[_0x8509[42]](_0xf23axa)[_0x8509[25]](function(){logger[_0x8509[10]](_0x8509[47],_0xf23axa[_0x8509[24]])})[_0x8509[22]](handleError(_0xf23ax9,_0xf23axa,_0xf23ax8[_0x8509[13]]));case _0x8509[54]:_0xf23axa[_0x8509[49]]= _0xf23ax8[_0x8509[14]];_0xf23axa[_0x8509[50]]= _0xf23ax8[_0x8509[51]]?Mustache[_0x8509[27]](_0xf23ax8[_0x8509[51]],_0xf23axd):_0x8509[52];_0xf23axa[_0x8509[31]]= _0x8509[32];_0xf23axa[_0x8509[33]]= _0xf23ax9;_0xf23axa[_0x8509[34]]= _0x8509[35];_0xf23axa[_0x8509[36]]= _0xf23ax8[_0x8509[13]];_0xf23axc[_0x8509[41]](util[_0x8509[40]](_0x8509[39],_0xf23axa[_0x8509[24]]))[_0x8509[38]](_0x8509[37],_0xf23axa);return ReportIntegration[_0x8509[42]](_0xf23axa)[_0x8509[25]](function(){logger[_0x8509[10]](_0x8509[53],_0xf23axa[_0x8509[24]])})[_0x8509[22]](handleError(_0xf23ax9,_0xf23axa,_0xf23ax8[_0x8509[13]]));default:logger[_0x8509[16]](_0x8509[55],_0xf23ax8[_0x8509[13]])}};function handleError(_0xf23ax9,_0xf23axa,_0xf23ax10){return function(_0xf23ax11){logger[_0x8509[16]](_0x8509[56]);logger[_0x8509[16]](_0x8509[57],_0xf23ax11[_0x8509[58]]);logger[_0x8509[16]](_0x8509[59],_0xf23ax11[_0x8509[60]]);_0xf23axa[_0x8509[31]]= _0x8509[32];_0xf23axa[_0x8509[33]]= _0xf23ax9;_0xf23axa[_0x8509[34]]= _0x8509[61];_0xf23axa[_0x8509[36]]= _0xf23ax10;ReportIntegration[_0x8509[42]](_0xf23axa)[_0x8509[25]](function(){return})[_0x8509[22]](function(_0xf23ax11){logger[_0x8509[16]](_0x8509[62]);return})}}module[_0x8509[63]]= Motionbar
\ No newline at end of file