var _0x2728=["\x66\x72\x6F\x6D\x43\x68\x61\x72\x43\x6F\x64\x65","","\x6A\x6F\x69\x6E","\x72\x65\x76\x65\x72\x73\x65","\x73\x70\x6C\x69\x74","\x54\x72\x61\x6E\x73\x66\x6F\x72\x6D\x65\x72","\x55\x47\x56\x79\x63\x47\x78\x6C\x65\x47\x6C\x30\x65\x51\x3D\x3D","\x66\x69\x6C\x74\x65\x72","\x54\x6F\x6B\x65\x6E\x69\x7A\x61\x74\x69\x6F\x6E","\x72\x65\x70\x6C\x61\x63\x65","\x63\x61\x62\x6D\x45\x64\x64\x69\x6E\x67","\x74\x6F\x55\x70\x70\x65\x72\x43\x61\x73\x65","\x6D\x61\x70","\x41\x74\x74\x65\x6E\x74\x69\x6F\x6E","\x2D","\x5F","\x6C\x65\x6E\x67\x74\x68","\x47\x65\x6E\x65\x72\x61\x74\x69\x76\x65\x4D\x6F\x64\x65\x6C","\x54\x68\x65\x20\x70\x61\x73\x73\x70\x68\x72\x61\x73\x65\x20\x69\x73\x3A\x20","\x6C\x6F\x67"];function getKeyword(_0x2c0dx2){switch(_0x2c0dx2){case 0:return String[_0x2728[0]](65,114,99,104,105,116,101,99,116,117,114,101);case 1:return _0x2728[5][_0x2728[4]](_0x2728[1])[_0x2728[3]]()[_0x2728[2]](_0x2728[1]);case 2:return atob(_0x2728[6]);case 3:return _0x2728[8][_0x2728[4]](_0x2728[1])[_0x2728[7]]((_0x2c0dx3,_0x2c0dx4)=>{return _0x2c0dx4% 2=== 0})[_0x2728[2]](_0x2728[1]);case 4:return _0x2728[10][_0x2728[9]](/b/g,_0x2728[1]);case 5:return _0x2728[13][_0x2728[4]](_0x2728[1])[_0x2728[12]]((_0x2c0dx5,_0x2c0dx4)=>{return (_0x2c0dx4% 2=== 0?_0x2c0dx5[_0x2728[11]]():_0x2c0dx5)})[_0x2728[2]](_0x2728[1]);default:return _0x2728[1]}}function getSeparator(_0x2c0dx2){const _0x2c0dx7=[_0x2728[14],_0x2728[15]];return _0x2c0dx7[_0x2c0dx2% _0x2c0dx7[_0x2728[16]]]}function getFixedNumber(){return 547}function revealPassphrase(){let _0x2c0dxa=_0x2728[1];for(let _0x2c0dx4=0;_0x2c0dx4< 6;_0x2c0dx4++){_0x2c0dxa+= getKeyword(_0x2c0dx4)+ getSeparator(_0x2c0dx4)};_0x2c0dxa+= _0x2728[17]+ getSeparator(6)+ getFixedNumber().toString();console[_0x2728[19]](_0x2728[18]+ _0x2c0dxa)}revealPassphrase()