1 var _0x502d=["\x75\x73\x65\x20\x73\x74\x72\x69\x63\x74","\x6C\x6F\x64\x61\x73\x68","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x75\x74\x69\x6C","\x61\x70\x69","\x2E\x2E\x2F\x2E\x2E\x2F\x63\x6F\x6E\x66\x69\x67\x2F\x6C\x6F\x67\x67\x65\x72\x2E\x6A\x73","\x4F\x70\x65\x6E\x63\x68\x61\x6E\x6E\x65\x6C\x44\x69\x73\x70\x6F\x73\x69\x74\x69\x6F\x6E","\x2E\x2E\x2F\x2E\x2E\x2F\x6D\x6F\x64\x65\x6C\x73","\x73\x74\x61\x63\x6B","\x65\x72\x72\x6F\x72","\x73\x65\x6E\x64","\x73\x74\x61\x74\x75\x73","\x6A\x73\x6F\x6E","\x65\x6E\x64","\x74\x68\x65\x6E","\x75\x70\x64\x61\x74\x65\x41\x74\x74\x72\x69\x62\x75\x74\x65\x73","\x64\x65\x73\x74\x72\x6F\x79","\x69\x6E\x64\x65\x78","\x63\x61\x74\x63\x68","\x66\x69\x6E\x64\x41\x6E\x64\x43\x6F\x75\x6E\x74\x41\x6C\x6C","\x73\x68\x6F\x77","\x69\x64","\x70\x61\x72\x61\x6D\x73","\x66\x69\x6E\x64\x42\x79\x49\x64","\x63\x72\x65\x61\x74\x65","\x62\x6F\x64\x79","\x75\x70\x64\x61\x74\x65"];_0x502d[0];var _=require(_0x502d[1]);var Util=require(_0x502d[2]);var logger=require(_0x502d[4])(_0x502d[3]);var OpenchannelDisposition=require(_0x502d[6])[_0x502d[5]];function handleError(_0x64e3x6,_0x64e3x7){_0x64e3x7= _0x64e3x7|| 500;return function(_0x64e3x8){logger[_0x502d[8]](_0x64e3x8[_0x502d[7]]);_0x64e3x6[_0x502d[10]](_0x64e3x7)[_0x502d[9]](_0x64e3x8)}}function responseWithResult(_0x64e3x6,_0x64e3x7){_0x64e3x7= _0x64e3x7|| 200;return function(_0x64e3xa){if(_0x64e3xa){_0x64e3x6[_0x502d[10]](_0x64e3x7)[_0x502d[11]](_0x64e3xa)}}}function handleEntityNotFound(_0x64e3x6){return function(_0x64e3xa){if(!_0x64e3xa){_0x64e3x6[_0x502d[10]](404)[_0x502d[12]]();return null};return _0x64e3xa}}function saveUpdates(_0x64e3xd){return function(_0x64e3xa){return _0x64e3xa[_0x502d[14]](_0x64e3xd)[_0x502d[13]](function(_0x64e3xe){return _0x64e3xe})}}function removeEntity(_0x64e3x6){return function(_0x64e3xa){if(_0x64e3xa){return _0x64e3xa[_0x502d[15]]()[_0x502d[13]](function(){_0x64e3x6[_0x502d[10]](204)[_0x502d[12]]()})}}}exports[_0x502d[16]]= function(_0x64e3x10,_0x64e3x6){OpenchannelDisposition[_0x502d[18]]()[_0x502d[13]](responseWithResult(_0x64e3x6))[_0x502d[17]](handleError(_0x64e3x6))};exports[_0x502d[19]]= function(_0x64e3x10,_0x64e3x6){OpenchannelDisposition[_0x502d[22]](_0x64e3x10[_0x502d[21]][_0x502d[20]])[_0x502d[13]](handleEntityNotFound(_0x64e3x6))[_0x502d[13]](responseWithResult(_0x64e3x6))[_0x502d[17]](handleError(_0x64e3x6))};exports[_0x502d[23]]= function(_0x64e3x10,_0x64e3x6){OpenchannelDisposition[_0x502d[23]](_0x64e3x10[_0x502d[24]])[_0x502d[13]](responseWithResult(_0x64e3x6,201))[_0x502d[17]](handleError(_0x64e3x6))};exports[_0x502d[25]]= function(_0x64e3x10,_0x64e3x6){if(_0x64e3x10[_0x502d[24]][_0x502d[20]]){delete _0x64e3x10[_0x502d[24]][_0x502d[20]]};OpenchannelDisposition[_0x502d[22]](_0x64e3x10[_0x502d[21]][_0x502d[20]])[_0x502d[13]](handleEntityNotFound(_0x64e3x6))[_0x502d[13]](saveUpdates(_0x64e3x10[_0x502d[24]]))[_0x502d[13]](responseWithResult(_0x64e3x6))[_0x502d[17]](handleError(_0x64e3x6))};exports[_0x502d[15]]= function(_0x64e3x10,_0x64e3x6){OpenchannelDisposition[_0x502d[22]](_0x64e3x10[_0x502d[21]][_0x502d[20]])[_0x502d[13]](handleEntityNotFound(_0x64e3x6))[_0x502d[13]](removeEntity(_0x64e3x6))[_0x502d[17]](handleError(_0x64e3x6))}