Built motion from commit b33b832.|1.0.17
[motion.git] / server / config / automations / mail.js
index b4f48f6..2c483f3 100644 (file)
@@ -1 +1 @@
-var _0x30ee=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x65\x6E\x76\x69\x72\x6F\x6E\x6D\x65\x6E\x74","\x6D\x6F\x6D\x65\x6E\x74","\x73\x65\x71\x75\x65\x6C\x69\x7A\x65","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x4D\x61\x69\x6C\x52\x6F\x6F\x6D","\x53\x65\x74\x74\x69\x6E\x67\x73","\x45\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x4D\x61\x69\x6C\x20\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x20","\x6C\x6F\x67","\x4D\x61\x69\x6C\x20\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x20\x65\x78\x65\x63\x20\x65\x72\x72\x6F\x72","\x63\x61\x74\x63\x68","\x69\x64","\x64\x61\x74\x61\x31","\x73\x74\x61\x74\x75\x73","\x61\x63\x74\x69\x6F\x6E","\x66\x6F\x72\x45\x61\x63\x68","\x41\x63\x74\x69\x6F\x6E\x73","\x74\x68\x65\x6E","\x64\x61\x74\x61\x56\x61\x6C\x75\x65\x73","\x70\x75\x73\x68","\x24\x61\x6E\x64","\x77\x68\x65\x72\x65","\x41\x6C\x6C","\x24\x6F\x72","\x41\x6E\x79","\x66\x69\x6E\x64\x41\x6C\x6C","\x66\x69\x6E\x64\x42\x79\x49\x64","\x61\x6C\x6C","\x73\x63\x6F\x70\x65","\x41\x75\x74\x6F\x6D\x61\x74\x69\x63\x20\x6D\x61\x69\x6C\x20\x73\x74\x61\x74\x75\x73\x20\x65\x72\x72\x6F\x72","\x75\x70\x64\x61\x74\x65","\x66\x69\x65\x6C\x64","\x76\x61\x6C\x75\x65","\x65\x71\x75\x61\x6C\x73","\x6E\x6F\x74\x5F\x65\x71\x75\x61\x6C\x73","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x68\x6F\x75\x72\x73","\x73\x75\x62\x74\x72\x61\x63\x74","\x67\x72\x65\x61\x74\x65\x72","\x67\x72\x65\x61\x74\x65\x72\x5F\x6F\x72\x5F\x65\x71\x75\x61\x6C","\x6C\x65\x73\x73","\x6C\x65\x73\x73\x5F\x6F\x72\x5F\x65\x71\x75\x61\x6C","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x4D\x61\x69\x6C\x20\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x20","\x20\x73\x65\x74\x20\x77\x69\x74\x68\x20\x74\x69\x6D\x65\x6F\x75\x74\x20","\x74\x69\x6D\x65\x6F\x75\x74","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x65\x78\x70\x6F\x72\x74\x73","\x20\x63\x72\x65\x61\x74\x65\x64\x2C\x20\x74\x68\x65\x20\x73\x74\x61\x74\x75\x73\x20\x69\x73\x20","\x63\x68\x61\x6E\x6E\x65\x6C","\x6D\x61\x69\x6C","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x20\x75\x70\x64\x61\x74\x65\x64\x2C\x20\x74\x68\x65\x20\x73\x74\x61\x74\x75\x73\x20\x69\x73\x20","\x4D\x61\x69\x6C\x20\x61\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x20\x75\x6E\x73\x65\x74\x20","\x61\x66\x74\x65\x72\x55\x70\x64\x61\x74\x65","\x20\x64\x65\x6C\x65\x74\x65\x64","\x61\x66\x74\x65\x72\x44\x65\x6C\x65\x74\x65","\x4D\x61\x69\x6C\x20\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x20\x69\x6E\x69\x74\x20\x65\x72\x72\x6F\x72"];_0x30ee[0];var _=require(_0x30ee[1]);var config=require(_0x30ee[2]);var moment=require(_0x30ee[3]);var sequelize=require(_0x30ee[5])[_0x30ee[4]];var Automation=require(_0x30ee[5])[_0x30ee[6]];var MailRoom=require(_0x30ee[5])[_0x30ee[7]];var Settings=require(_0x30ee[5])[_0x30ee[8]];var activeMailAutomations={};function executeAutomation(_0x7261xa){console[_0x30ee[10]](_0x30ee[9],_0x7261xa);var _0x7261xb;return Automation[_0x30ee[30]](_0x30ee[29])[_0x30ee[28]](_0x7261xa)[_0x30ee[19]](function(_0x7261x10){_0x7261xb= _0x7261x10;var _0x7261x11={where:{$and:[],$or:[]}};_0x7261x10[_0x30ee[24]][_0x30ee[17]](function(_0x7261x12){_0x7261x11[_0x30ee[23]][_0x30ee[22]][_0x30ee[21]](getCondition(_0x7261x12[_0x30ee[20]]))});_0x7261x10[_0x30ee[26]][_0x30ee[17]](function(_0x7261x12){_0x7261x11[_0x30ee[23]][_0x30ee[25]][_0x30ee[21]](getCondition(_0x7261x12[_0x30ee[20]]))});return MailRoom[_0x30ee[27]](_0x7261x11)})[_0x30ee[19]](function(_0x7261xd){_0x7261xd[_0x30ee[17]](function(_0x7261xe){_0x7261xb[_0x30ee[18]][_0x30ee[17]](function(_0x7261xf){switch(_0x7261xf[_0x30ee[16]]){case _0x30ee[15]:setStatus(_0x7261xe[_0x30ee[13]],_0x7261xf[_0x30ee[14]]);break;default:}})})})[_0x30ee[12]](function(_0x7261xc){console[_0x30ee[10]](_0x30ee[11],_0x7261xc)})}function setStatus(_0x7261x14,_0x7261x15){return MailRoom[_0x30ee[32]]({status:_0x7261x15},{where:{id:_0x7261x14}})[_0x30ee[12]](function(_0x7261xc){console[_0x30ee[10]](_0x30ee[31],_0x7261xc)})}function getCondition(_0x7261x12){var _0x7261x17={};switch(_0x7261x12[_0x30ee[33]]){case _0x30ee[15]:switch(_0x7261x12[_0x30ee[37]]){case _0x30ee[35]:_0x7261x17[_0x7261x12[_0x30ee[33]]]= _0x7261x12[_0x30ee[34]];break;case _0x30ee[36]:_0x7261x17[_0x7261x12[_0x30ee[33]]]= {$ne:_0x7261x12[_0x30ee[34]]};break;default:};break;case _0x30ee[46]:var _0x7261x18=moment()[_0x30ee[41]](parseInt(_0x7261x12[_0x30ee[34]],10),_0x30ee[40])[_0x30ee[39]](_0x30ee[38]);switch(_0x7261x12[_0x30ee[37]]){case _0x30ee[42]:_0x7261x17[_0x7261x12[_0x30ee[33]]]= {lt:_0x7261x18};break;case _0x30ee[43]:_0x7261x17[_0x7261x12[_0x30ee[33]]]= {$lte:_0x7261x18};break;case _0x30ee[44]:_0x7261x17[_0x7261x12[_0x30ee[33]]]= {$gt:_0x7261x18};break;case _0x30ee[45]:_0x7261x17[_0x7261x12[_0x30ee[33]]]= {$gte:_0x7261x18};break;default:};break;default:};return _0x7261x17}function createInterval(_0x7261x10){console[_0x30ee[10]](_0x30ee[47],_0x7261x10[_0x30ee[13]],_0x30ee[48],_0x7261x10[_0x30ee[49]]* 60* 1000);activeMailAutomations[_0x30ee[50]+ _0x7261x10[_0x30ee[13]]]= setInterval(function(){executeAutomation(_0x7261x10[_0x30ee[13]])},_0x7261x10[_0x30ee[49]]* 60* 1000)}module[_0x30ee[51]]= function(){Automation[_0x30ee[55]](function(_0x7261x1a,_0x7261x1b){console[_0x30ee[10]](_0x30ee[47],_0x7261x1a[_0x30ee[13]],_0x30ee[52],_0x7261x1a[_0x30ee[15]]);if(_0x7261x1a[_0x30ee[15]]&& _0x7261x1a[_0x30ee[53]]=== _0x30ee[54]){createInterval(_0x7261x1a)}});Automation[_0x30ee[58]](function(_0x7261x1a,_0x7261x1b){console[_0x30ee[10]](_0x30ee[47],_0x7261x1a[_0x30ee[13]],_0x30ee[56],_0x7261x1a[_0x30ee[15]]);if(activeMailAutomations[_0x30ee[50]+ _0x7261x1a[_0x30ee[13]]]){console[_0x30ee[10]](_0x30ee[57],_0x7261x1a[_0x30ee[13]]);clearInterval(activeMailAutomations[_0x30ee[50]+ _0x7261x1a[_0x30ee[13]]]);delete activeMailAutomations[_0x30ee[50]+ _0x7261x1a[_0x30ee[13]]]};if(_0x7261x1a[_0x30ee[15]]&& _0x7261x1a[_0x30ee[53]]=== _0x30ee[54]){createInterval(_0x7261x1a)}});Automation[_0x30ee[60]](function(_0x7261x1a,_0x7261x1b){console[_0x30ee[10]](_0x30ee[47],_0x7261x1a[_0x30ee[13]],_0x30ee[59]);if(activeMailAutomations[_0x30ee[50]+ _0x7261x1a[_0x30ee[13]]]){console[_0x30ee[10]](_0x30ee[57],_0x7261x1a[_0x30ee[13]]);clearInterval(activeMailAutomations[_0x30ee[50]+ _0x7261x1a[_0x30ee[13]]]);delete activeMailAutomations[_0x30ee[50]+ _0x7261x1a[_0x30ee[13]]]}});return Automation[_0x30ee[30]](_0x30ee[29])[_0x30ee[27]]({where:{status:true,channel:_0x30ee[54]},attributes:[_0x30ee[13],_0x30ee[49]]})[_0x30ee[19]](function(_0x7261x1c){_0x7261x1c[_0x30ee[17]](function(_0x7261x10){createInterval(_0x7261x10)})})[_0x30ee[12]](function(_0x7261xc){console[_0x30ee[10]](_0x30ee[61],_0x7261xc)})}
\ No newline at end of file
+var _0x13d5=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x6D\x6F\x6D\x65\x6E\x74","\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x4D\x61\x69\x6C\x52\x6F\x6F\x6D","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x45\x78\x65\x63\x75\x74\x69\x6E\x67\x20\x4D\x61\x69\x6C","\x6C\x6F\x67","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x4D\x61\x69\x6C\x20\x65\x78\x65\x63","\x65\x72\x72\x6F\x72","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x4D\x65\x73\x73\x61\x67\x65\x3A","\x6D\x65\x73\x73\x61\x67\x65","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x53\x74\x61\x63\x6B\x3A","\x73\x74\x61\x63\x6B","\x63\x61\x74\x63\x68","\x69\x64","\x64\x61\x74\x61\x31","\x73\x74\x61\x74\x75\x73","\x61\x63\x74\x69\x6F\x6E","\x66\x6F\x72\x45\x61\x63\x68","\x41\x63\x74\x69\x6F\x6E\x73","\x74\x68\x65\x6E","\x64\x61\x74\x61\x56\x61\x6C\x75\x65\x73","\x70\x75\x73\x68","\x41\x6C\x6C","\x41\x6E\x79","\x6C\x65\x6E\x67\x74\x68","\x24\x61\x6E\x64","\x77\x68\x65\x72\x65","\x24\x6F\x72","\x66\x69\x6E\x64\x41\x6C\x6C","\x66\x69\x6E\x64\x42\x79\x49\x64","\x61\x6C\x6C","\x73\x63\x6F\x70\x65","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x4D\x61\x69\x6C\x20\x73\x65\x74\x53\x74\x61\x74\x75\x73","\x75\x70\x64\x61\x74\x65","\x66\x69\x65\x6C\x64","\x76\x61\x6C\x75\x65","\x65\x71\x75\x61\x6C\x73","\x6E\x6F\x74\x5F\x65\x71\x75\x61\x6C\x73","\x6F\x70\x65\x72\x61\x74\x6F\x72","\x59\x59\x59\x59\x2D\x4D\x4D\x2D\x44\x44\x20\x48\x48\x3A\x6D\x6D\x3A\x73\x73","\x66\x6F\x72\x6D\x61\x74","\x68\x6F\x75\x72\x73","\x73\x75\x62\x74\x72\x61\x63\x74","\x67\x72\x65\x61\x74\x65\x72","\x67\x72\x65\x61\x74\x65\x72\x5F\x6F\x72\x5F\x65\x71\x75\x61\x6C","\x6C\x65\x73\x73","\x6C\x65\x73\x73\x5F\x6F\x72\x5F\x65\x71\x75\x61\x6C","\x63\x72\x65\x61\x74\x65\x64\x41\x74","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x4D\x61\x69\x6C","\x73\x65\x74\x20\x77\x69\x74\x68\x20\x74\x69\x6D\x65\x6F\x75\x74","\x74\x69\x6D\x65\x6F\x75\x74","\x69\x6E\x74\x65\x72\x76\x61\x6C","\x65\x78\x70\x6F\x72\x74\x73","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x4D\x61\x69\x6C\x20\x73\x65\x72\x76\x69\x63\x65\x20\x73\x74\x61\x72\x74\x65\x64","\x63\x68\x61\x6E\x6E\x65\x6C","\x6D\x61\x69\x6C","\x63\x72\x65\x61\x74\x65\x64\x2C\x20\x74\x68\x65\x20\x73\x74\x61\x74\x75\x73\x20\x69\x73","\x61\x66\x74\x65\x72\x43\x72\x65\x61\x74\x65","\x75\x70\x64\x61\x74\x65\x64\x2C\x20\x74\x68\x65\x20\x73\x74\x61\x74\x75\x73\x20\x69\x73","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x4D\x61\x69\x6C\x20\x75\x6E\x73\x65\x74\x20","\x61\x66\x74\x65\x72\x55\x70\x64\x61\x74\x65","\x20\x64\x65\x6C\x65\x74\x65\x64","\x61\x66\x74\x65\x72\x44\x65\x73\x74\x72\x6F\x79","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x45\x72\x72\x6F\x72\x20\x69\x6E\x20\x4D\x61\x69\x6C\x20\x69\x6E\x69\x74","\x5B\x41\x75\x74\x6F\x6D\x61\x74\x69\x6F\x6E\x5D\x20\x4D\x61\x69\x6C\x20\x61\x72\x65"];_0x13d5[0];var _=require(_0x13d5[1]);var moment=require(_0x13d5[2]);var Automation=require(_0x13d5[4])[_0x13d5[3]];var MailRoom=require(_0x13d5[4])[_0x13d5[5]];var activeMailAutomations={};function executeAutomation(_0xc8bbx7){console[_0x13d5[7]](_0x13d5[6],_0xc8bbx7);var _0xc8bbx8;return Automation[_0x13d5[33]](_0x13d5[32])[_0x13d5[31]](_0xc8bbx7)[_0x13d5[21]](function(_0xc8bbxd){_0xc8bbx8= _0xc8bbxd;var _0xc8bbxe=[];var _0xc8bbxf=[];var _0xc8bbx10={where:{}};_0xc8bbxd[_0x13d5[24]][_0x13d5[19]](function(_0xc8bbx11){_0xc8bbxf[_0x13d5[23]](getCondition(_0xc8bbx11[_0x13d5[22]]))});_0xc8bbxd[_0x13d5[25]][_0x13d5[19]](function(_0xc8bbx11){_0xc8bbxe[_0x13d5[23]](getCondition(_0xc8bbx11[_0x13d5[22]]))});if(_0xc8bbxf[_0x13d5[26]]){_0xc8bbx10[_0x13d5[28]][_0x13d5[27]]= _0xc8bbxf};if(_0xc8bbxe[_0x13d5[26]]){_0xc8bbx10[_0x13d5[28]][_0x13d5[29]]= _0xc8bbxe};return MailRoom[_0x13d5[30]](_0xc8bbx10)})[_0x13d5[21]](function(_0xc8bbxa){_0xc8bbxa[_0x13d5[19]](function(_0xc8bbxb){_0xc8bbx8[_0x13d5[20]][_0x13d5[19]](function(_0xc8bbxc){switch(_0xc8bbxc[_0x13d5[18]]){case _0x13d5[17]:setStatus(_0xc8bbxb[_0x13d5[15]],_0xc8bbxc[_0x13d5[16]]);break;default:}})})})[_0x13d5[14]](function(_0xc8bbx9){console[_0x13d5[9]](_0x13d5[8]);console[_0x13d5[9]](_0x13d5[10],_0xc8bbx9[_0x13d5[11]]);console[_0x13d5[9]](_0x13d5[12],_0xc8bbx9[_0x13d5[13]])})}function setStatus(_0xc8bbx13,_0xc8bbx14){return MailRoom[_0x13d5[35]]({status:_0xc8bbx14},{where:{id:_0xc8bbx13}})[_0x13d5[14]](function(_0xc8bbx9){console[_0x13d5[9]](_0x13d5[34]);console[_0x13d5[9]](_0x13d5[10],_0xc8bbx9[_0x13d5[11]]);console[_0x13d5[9]](_0x13d5[12],_0xc8bbx9[_0x13d5[13]])})}function getCondition(_0xc8bbx11){var _0xc8bbx16={};switch(_0xc8bbx11[_0x13d5[36]]){case _0x13d5[17]:switch(_0xc8bbx11[_0x13d5[40]]){case _0x13d5[38]:_0xc8bbx16[_0xc8bbx11[_0x13d5[36]]]= _0xc8bbx11[_0x13d5[37]];break;case _0x13d5[39]:_0xc8bbx16[_0xc8bbx11[_0x13d5[36]]]= {$ne:_0xc8bbx11[_0x13d5[37]]};break;default:};break;case _0x13d5[49]:var _0xc8bbx17=moment()[_0x13d5[44]](parseInt(_0xc8bbx11[_0x13d5[37]],10),_0x13d5[43])[_0x13d5[42]](_0x13d5[41]);switch(_0xc8bbx11[_0x13d5[40]]){case _0x13d5[45]:_0xc8bbx16[_0xc8bbx11[_0x13d5[36]]]= {lt:_0xc8bbx17};break;case _0x13d5[46]:_0xc8bbx16[_0xc8bbx11[_0x13d5[36]]]= {$lte:_0xc8bbx17};break;case _0x13d5[47]:_0xc8bbx16[_0xc8bbx11[_0x13d5[36]]]= {$gt:_0xc8bbx17};break;case _0x13d5[48]:_0xc8bbx16[_0xc8bbx11[_0x13d5[36]]]= {$gte:_0xc8bbx17};break;default:};break;default:};return _0xc8bbx16}function createInterval(_0xc8bbxd){console[_0x13d5[7]](_0x13d5[50],_0xc8bbxd[_0x13d5[15]],_0x13d5[51],_0xc8bbxd[_0x13d5[52]]* 60* 1000);activeMailAutomations[_0x13d5[53]+ _0xc8bbxd[_0x13d5[15]]]= setInterval(function(){executeAutomation(_0xc8bbxd[_0x13d5[15]])},_0xc8bbxd[_0x13d5[52]]* 60* 1000)}module[_0x13d5[54]]= function(){console[_0x13d5[7]](_0x13d5[55]);Automation[_0x13d5[59]](function(_0xc8bbx19,_0xc8bbx1a){if(_0xc8bbx19[_0x13d5[56]]=== _0x13d5[57]){console[_0x13d5[7]](_0x13d5[50],_0xc8bbx19[_0x13d5[15]],_0x13d5[58],_0xc8bbx19[_0x13d5[17]]);if(_0xc8bbx19[_0x13d5[17]]){createInterval(_0xc8bbx19)}}});Automation[_0x13d5[62]](function(_0xc8bbx19,_0xc8bbx1a){if(_0xc8bbx19[_0x13d5[56]]=== _0x13d5[57]){console[_0x13d5[7]](_0x13d5[50],_0xc8bbx19[_0x13d5[15]],_0x13d5[60],_0xc8bbx19[_0x13d5[17]]);if(activeMailAutomations[_0x13d5[53]+ _0xc8bbx19[_0x13d5[15]]]){console[_0x13d5[7]](_0x13d5[61],_0xc8bbx19[_0x13d5[15]]);clearInterval(activeMailAutomations[_0x13d5[53]+ _0xc8bbx19[_0x13d5[15]]]);delete activeMailAutomations[_0x13d5[53]+ _0xc8bbx19[_0x13d5[15]]]};if(_0xc8bbx19[_0x13d5[17]]){createInterval(_0xc8bbx19)}}});Automation[_0x13d5[64]](function(_0xc8bbx19,_0xc8bbx1a){if(_0xc8bbx19[_0x13d5[56]]=== _0x13d5[57]){console[_0x13d5[7]](_0x13d5[50],_0xc8bbx19[_0x13d5[15]],_0x13d5[63]);if(activeMailAutomations[_0x13d5[53]+ _0xc8bbx19[_0x13d5[15]]]){console[_0x13d5[7]](_0x13d5[61],_0xc8bbx19[_0x13d5[15]]);clearInterval(activeMailAutomations[_0x13d5[53]+ _0xc8bbx19[_0x13d5[15]]]);delete activeMailAutomations[_0x13d5[53]+ _0xc8bbx19[_0x13d5[15]]]}}});return Automation[_0x13d5[33]](_0x13d5[32])[_0x13d5[30]]({where:{status:true,channel:_0x13d5[57]},attributes:[_0x13d5[15],_0x13d5[52]]})[_0x13d5[21]](function(_0xc8bbx1b){console[_0x13d5[7]](_0x13d5[66],_0xc8bbx1b[_0x13d5[26]]);_0xc8bbx1b[_0x13d5[19]](function(_0xc8bbxd){createInterval(_0xc8bbxd)})})[_0x13d5[14]](function(_0xc8bbx9){console[_0x13d5[9]](_0x13d5[65]);console[_0x13d5[9]](_0x13d5[10],_0xc8bbx9[_0x13d5[11]]);console[_0x13d5[9]](_0x13d5[12],_0xc8bbx9[_0x13d5[13]])})}
\ No newline at end of file