zoukankan      html  css  js  c++  java
  • js逆向核心:扣代码2

    http://match.yuanrenxue.com/match/2

    这道题是一道假动态的cookie。每次运行时,会加载不同的cookie生成方式,但是最后生成的算法一样的,所以我们只需要扣出一套代码来即可通用

    先用hook cookie的代码找到生成cookie的代码,

     然后复制发到js文件里。进行扣代码,运行,缺啥补啥

    A未定义

    我们点报错点地方,找到A在哪,复制报错的地方,放到页面里搜

    鼠标放在搜到的位置

    发现A是一堆数组我们按照习惯先搜索AIaQf

     发现并没有

    我们试着向上找A,尝试搜索var A

    发现是被y赋值的, 我们鼠标放到y上,是这个没错了。我们向上找找y定义的地方

    在这里

     我们复制一下放到js文件里面,老样子,运行js

     补上b以后继续运行

     可以看到$a是一个数组长度为274 尝试随便搜索里面的单词,并为搜到, 那么我们往上找找看

     发现定义的地方。并且下面的函数自身调用,做了一个数组移位的操作,我们复制再运行

     发现卡死了,这种情况只有两种可能

    1 浏览器指纹检测

    2 格式化检测

    现在我们复制这些代码放到浏览器下面的控制台输出。来观察是否是浏览器检测

    如果正常没有卡死,说明是浏览器检测,如果还是卡死了,说明是格式化检测

    我们发现回车之后再次进行回车,已经没有反应,说明肯定是格式化检测了,

    格式化检测,一般都是匹配正则表达式,现在我们需要对自己对代码打上断点,放到控制台,f10和f11一步步对去对他进行调试

    像这样

    第一个是每点一次跳到下一个函数,第二个是进入当前函数,第三个是跳出当前函数

    一般刚开始对时候,你不确定是哪个函数格式化检测是, 你就一步步对运行第一个,看到哪个函数卡死了,再进入到这个函数里面进行一步步到找

    另外由于刚刚是补完$a,出现了这种情况,所以一般在出现这种卡死到情况函数之前打断点是最好的

    我们断点打好后放入控制台里面

    我们f10一步步的往下走

    发现到标记到地方卡死了 

    现在对卡死对地方之前打断点

    f11进入该函数,然后和f10继续,看看里面是否有其他函数卡死

    我们发现到这里进入了一个循环, 而且貌似是死循环。我们可以跳出这个函数看会不会卡死,如果没有卡死,说明不是死循环,卡死了,说明这段代码有问题

    我们尝试跳出shift+f11。发现卡死,说明这是个死循环(这种方法最好不用,跨越度较大, 整个堆栈都会跳出来)

    或者我们在这个循环后的下面打上断点,看程序是否走到这里,如果能正常,说明不是死循环,不正常就是死循环

    另外,对于不是死循环,但是循环次数有点多,本身不想点代码,也可以在下面debugger直接跳过这段,检测后面有问题的代码

    发现找到在循环后面debuuger直接卡死,说明这个循环是死循环

    于是我们重新调试,找到这个方法的调用栈

    判断如果不等于j进入这一步,我们可以直接暴力的去掉!或者找到j赋值 的地方,看看情况,

    发现是h 而h又是一个正则表达式匹配的函数

     它匹配的是这个函数,用来检测代码是否被格式化,我们只需要找到这个函数,把他的格式化 的方式去掉,让他不格式化就行了

     像这样,注意return之间不要留空格

    改完之后再次运行代码,

    发现还是卡死,不要心急,我们再次进行调试。有可能是其他的代码格式化检测

    发现到这一步卡死了

    继续打断点调试

     我们发现到这个地方卡死,

    继续断点(一般来说shift+f11进入一个函数之后,再f11,一个个函数的跳,去看报错的函数里面又有哪个函数出了问题)

     我们发现到这一卡死了, 又是个正则匹配,鼠标放到函数上面,看看g['test']匹配的是哪个函数的内容

    是这个函数

    我们把他去格式化操作一下

    久违的报错终于来了。我们继续补

    继续

    补完B之后发现又卡死了

    由于是在B补完卡死的 ,所以我们在B的地方打断点,来操作最好

    到这个地方卡死,继续断点

    tip:时常观察右边的输出,看看输出是否有正则

    找到之后我们尝试把return后面的返回值放到浏览器里面输出验证看浏览器是否卡死,果然,卡死了

     第一个是test,那后面的a4肯定是要匹配的函数,鼠标放上去,找到a4的函数,

    发现并不好搞,于是直接干脆点,直接返回true,或者返回为空算了

    再运行

    久违的报错又来了

     navgator一般代表浏览器指纹,我们在网页里搜索就只搜到了一个

    尝试在控制台输出这段代码

    发现是个空的字符串,那就好办了

    直接重新定义成字符串

    继续运行

     

     鼠标放在上面,发现y是个时间戳

    我们找到调用栈,查看里面调用函数到信息,哪个是时间戳

     这个是生成的代码,带入进入

    后面的就没啥了,缺啥补啥,

    最后当打印输出的时候,报错

     这种情况一般是对console进行重写了,此时我们重新定义一个console_bk=console就可以了

    整体代码如下



    // console_bk=console
    function Sd() {


    var $a = ['x77x36x76x43x75x7ax59x3d', 'x77x70x44x44x6fx7ax6bx3d', 'x77x34x44x43x70x31x45x3d', 'x53x73x4fx77x5ax67x3dx3d', 'x56x67x58x43x6dx51x3dx3d', 'x4ex54x37x43x6ax77x3dx3d', 'x53x73x4fx41x4dx51x3dx3d', 'x77x70x33x43x6bx4dx4fx32', 'x77x37x59x72x77x37x51x3d', 'x55x47x55x42', 'x58x4dx4fx65x63x41x3dx3d', 'x51x54x76x43x6dx51x3dx3d', 'x5ax63x4fx30x57x67x3dx3d', 'x41x43x6cx4f', 'x53x32x30x69', 'x77x37x38x66x77x72x6bx3d', 'x77x34x64x4fx77x72x45x3d', 'x64x58x55x4e', 'x58x6ax50x44x6ex51x3dx3d', 'x77x72x6ax43x69x68x49x3d', 'x77x70x6cx76x48x67x3dx3d', 'x77x6fx72x43x6ax38x4fx6f', 'x54x38x4fx58x66x51x3dx3d', 'x77x35x72x44x72x41x34x3d', 'x4bx51x42x6e', 'x56x46x59x4d', 'x50x77x2fx44x74x67x3dx3d', 'x77x37x44x43x6ax4dx4fx62', 'x77x72x50x43x70x38x4fx50', 'x55x4dx4fx58x77x70x73x3d', 'x4fx43x72x43x72x77x3dx3d', 'x77x37x4dx4bx77x37x41x3d', 'x48x51x56x2b', 'x77x37x39x47x59x77x3dx3d', 'x77x36x58x44x68x52x38x3d', 'x77x6fx72x44x76x32x51x3d', 'x77x71x64x61x47x77x3dx3d', 'x46x73x4bx36x77x6fx45x3d', 'x43x44x2fx44x68x77x3dx3d', 'x59x77x38x4f', 'x77x35x7ax44x6cx44x6bx3d', 'x64x4dx4fx6fx77x71x38x3d', 'x4fx48x51x73', 'x77x35x58x43x6fx4dx4fx4c', 'x54x6cx50x43x71x77x3dx3d', 'x77x70x48x44x71x38x4bx79', 'x4dx77x31x43', 'x77x34x76x43x70x46x45x3d', 'x58x63x4fx46x41x67x3dx3d', 'x77x71x62x43x6ax58x55x3d', 'x77x35x78x61x52x77x3dx3d', 'x77x72x46x34x43x77x3dx3d', 'x57x41x4cx43x71x67x3dx3d', 'x77x34x37x43x6dx52x30x3d', 'x46x38x4bx76x58x67x3dx3d', 'x77x6fx41x71x56x51x3dx3d', 'x64x63x4fx79x77x71x73x3d', 'x57x63x4fx63x77x70x51x3d', 'x77x37x37x43x72x68x34x3d', 'x66x4dx4fx69x77x71x34x3d', 'x77x37x62x44x6cx6cx77x3d', 'x4bx79x41x31', 'x47x54x76x43x76x67x3dx3d', 'x77x71x2fx44x6fx63x4bx53', 'x62x53x4dx4a', 'x77x34x64x78x77x6fx63x3d', 'x44x38x4bx38x77x70x73x3d', 'x58x63x4fx4fx77x72x6fx3d', 'x77x34x58x44x69x69x45x3d', 'x77x35x50x43x75x45x51x3d', 'x50x79x33x44x6fx41x3dx3d', 'x61x30x66x43x74x51x3dx3d', 'x56x4dx4bx67x77x34x6bx3d', 'x77x35x64x6fx77x6fx63x3d', 'x77x36x38x45x77x6fx63x3d', 'x77x35x63x49x77x72x67x3d', 'x58x4dx4fx41x5ax51x3dx3d', 'x77x70x33x43x75x63x4fx4d', 'x77x36x33x44x6cx73x4bx69', 'x77x72x56x49x43x51x3dx3d', 'x77x72x54x43x6ex73x4fx41', 'x55x63x4bx67x77x6fx6bx3d', 'x77x36x50x44x71x78x73x3d', 'x46x47x4dx4f', 'x55x7ax76x43x70x77x3dx3d', 'x77x72x48x43x72x6ax45x3d', 'x77x70x6cx30x47x67x3dx3d', 'x77x36x51x35x77x36x59x3d', 'x43x73x4bx35x77x72x77x3d', 'x77x36x74x58x77x6fx6bx3d', 'x59x38x4bx7ax77x37x51x3d', 'x41x53x4cx43x70x51x3dx3d', 'x57x63x4fx58x4cx77x3dx3d', 'x44x78x35x67', 'x77x6fx44x43x72x78x63x3d', 'x63x4dx4fx74x77x72x59x3d', 'x77x36x37x44x72x63x4bx33', 'x58x38x4bx4bx77x34x34x3d', 'x4cx4dx4bx67x77x72x77x3d', 'x77x34x67x38x77x70x6bx3d', 'x65x33x6ex43x74x41x3dx3d', 'x41x53x72x43x72x41x3dx3d', 'x4ax33x38x42', 'x5ax51x55x31', 'x77x36x77x58x44x41x3dx3d', 'x49x73x4bx78x55x41x3dx3d', 'x77x35x48x43x6dx68x41x3d', 'x56x4dx4bx6fx77x35x77x3d', 'x4ex4dx4bx61x77x70x34x3d', 'x77x70x45x51x77x6fx34x3d', 'x4dx79x64x63', 'x62x6bx54x43x69x41x3dx3d', 'x77x36x7ax44x72x6ex55x3d', 'x77x37x42x49x77x71x30x3d', 'x77x34x70x33x59x51x3dx3d', 'x77x37x4ax46x77x72x51x3d', 'x4fx31x30x73', 'x77x34x48x44x72x63x4bx30', 'x45x4dx4fx59x77x34x34x3d', 'x66x42x58x43x68x51x3dx3d', 'x77x72x76x44x6fx63x4bx4f', 'x4dx68x33x44x69x77x3dx3d', 'x35x35x2bx5ax37x37x2bx70x35x4cx36x2f', 'x63x52x6bx58', 'x41x51x64x31', 'x57x4dx4bx41x77x6fx51x3d', 'x41x55x33x43x72x41x3dx3d', 'x77x35x4dx7ax47x41x3dx3d', 'x77x70x37x44x67x63x4bx32', 'x77x34x42x31x62x51x3dx3d', 'x77x37x46x35x53x77x3dx3d', 'x77x34x62x44x74x43x77x3d', 'x77x70x72x44x73x38x4bx47', 'x63x73x4fx61x77x70x30x3d', 'x55x73x4bx4ex77x35x49x3d', 'x47x73x4bx39x77x70x6fx3d', 'x77x36x56x49x77x6fx49x3d', 'x77x71x66x44x6ex38x4fx5a', 'x77x6fx33x44x73x63x4bx62', 'x5ax63x4bx63x77x6fx77x3d', 'x54x38x4bx42x77x34x73x3d', 'x77x36x39x30x77x72x51x3d', 'x77x36x42x78x51x67x3dx3d', 'x52x38x4fx36x77x72x77x3d', 'x77x35x77x4ax43x77x3dx3d', 'x43x4dx4fx66x77x34x41x3d', 'x49x51x52x55', 'x77x6fx58x43x75x52x34x3d', 'x42x63x4bx48x53x67x3dx3d', 'x77x34x66x43x6ex38x4fx79', 'x77x6fx4cx44x70x77x51x3d', 'x77x37x74x76x77x72x41x3d', 'x4ex58x73x38', 'x52x33x41x66', 'x77x72x44x43x6bx7ax34x3d', 'x77x71x46x50x41x41x3dx3d', 'x4ax45x63x66', 'x77x70x4cx44x6ax30x49x3d', 'x62x63x4bx63x77x6fx4dx3d', 'x45x44x64x58', 'x77x70x62x43x6dx68x49x3d', 'x44x79x66x43x69x51x3dx3d', 'x53x57x45x4c', 'x52x6ax49x36', 'x77x37x6ax44x6cx31x30x3d', 'x77x70x50x44x70x4dx4bx78', 'x4ax38x4fx57x53x77x3dx3d', 'x53x43x7ax43x72x41x3dx3d', 'x77x70x64x52x4dx51x3dx3d', 'x56x47x34x69', 'x77x37x6ex44x74x41x73x3d', 'x63x56x37x43x74x77x3dx3d', 'x77x35x35x51x62x67x3dx3d', 'x77x6fx48x44x76x73x4bx32', 'x77x34x58x44x70x73x4bx74', 'x51x69x7ax43x6ax51x3dx3d', 'x77x35x39x4ax77x6fx4dx3d', 'x77x36x78x47x61x51x3dx3d', 'x77x36x56x42x77x71x4dx3d', 'x77x34x6ax43x6cx42x77x3d', 'x77x35x5ax4cx61x77x3dx3d', 'x45x44x6bx77', 'x77x70x6ex44x6dx32x63x3d', 'x54x63x4bx6cx77x37x63x3d', 'x52x73x4fx52x59x41x3dx3d', 'x45x4dx4fx6dx54x51x3dx3d', 'x41x4dx4bx78x77x70x51x3d', 'x77x71x64x52x4bx51x3dx3d', 'x47x73x4bx77x77x71x41x3d', 'x5ax63x4fx50x77x72x30x3d', 'x77x34x54x43x75x54x77x3d', 'x50x63x4fx43x77x34x59x3d', 'x35x4cx75x42x35x35x57x69x36x49x75x77', 'x64x58x4cx43x73x77x3dx3d', 'x51x78x66x43x70x67x3dx3d', 'x4ax77x4ex61', 'x77x70x62x44x6cx63x4bx71', 'x77x72x55x68x77x6fx6fx3d', 'x50x4dx4bx37x56x51x3dx3d', 'x45x4dx4fx53x77x34x63x3d', 'x77x34x37x44x6ex63x4bx6b', 'x77x70x77x78x63x41x3dx3d', 'x50x63x4fx38x77x37x4dx3d', 'x63x6dx62x43x74x77x3dx3d', 'x77x6fx76x44x74x38x4bx4e', 'x49x73x4bx70x58x51x3dx3d', 'x49x67x52x2f', 'x77x6fx72x44x6ex38x4bx76', 'x57x38x4fx4cx66x77x3dx3d', 'x77x72x72x43x68x7ax77x3d', 'x4fx51x70x4a', 'x59x68x34x55', 'x48x38x4fx32x77x35x38x3d', 'x63x4dx4fx76x65x41x3dx3d', 'x77x6fx7ax44x71x52x38x3d', 'x77x37x74x30x55x77x3dx3d', 'x77x34x72x43x72x38x4fx48', 'x4ex73x4fx67x77x34x30x3d', 'x4fx7ax33x44x68x67x3dx3d', 'x59x4dx4bx4ex77x36x77x3d', 'x62x6ex2fx43x67x77x3dx3d', 'x41x63x4fx64x52x41x3dx3d', 'x57x38x4fx6dx4ax41x3dx3d', 'x61x67x41x77', 'x59x6bx76x43x75x41x3dx3d', 'x77x35x70x5ax66x41x3dx3d', 'x77x71x58x43x6cx69x49x3d', 'x5ax55x6fx56', 'x77x36x54x44x6cx63x4bx68', 'x56x38x4fx51x77x72x30x3d', 'x66x69x30x63', 'x77x37x68x6fx64x51x3dx3d', 'x77x37x44x44x6fx47x34x3d', 'x51x43x30x67', 'x66x55x76x43x76x77x3dx3d', 'x77x34x4cx44x73x41x6bx3d', 'x77x37x41x32x4ax77x3dx3d', 'x59x41x44x43x75x41x3dx3d', 'x77x34x62x44x72x63x4bx59', 'x53x68x4cx43x6cx51x3dx3d', 'x77x70x6cx51x46x67x3dx3d', 'x50x44x76x43x69x51x3dx3d', 'x61x48x7ax43x75x41x3dx3d', 'x44x67x50x44x71x41x3dx3d', 'x5ax38x4fx77x77x72x49x3d', 'x46x4dx4fx55x77x37x45x3d', 'x51x73x4fx6cx77x71x45x3d', 'x53x73x4fx4bx57x77x3dx3d', 'x57x38x4bx74x77x71x59x3d', 'x77x34x34x62x77x35x63x3d', 'x42x43x6ax44x6cx41x3dx3d', 'x54x77x76x43x68x67x3dx3d', 'x61x38x4fx33x51x67x3dx3d', 'x4fx4dx4fx43x77x35x6bx3d', 'x77x71x56x44x4dx51x3dx3d', 'x61x73x4bx58x77x35x63x3d', 'x77x72x37x43x73x63x4fx42', 'x48x63x4fx44x77x34x45x3d', 'x77x37x6ax43x72x4dx4fx38', 'x59x33x2fx43x74x41x3dx3d', 'x77x72x37x44x71x55x63x3d', 'x61x47x55x36', 'x77x6fx64x4fx45x51x3dx3d', 'x54x4dx4bx52x77x6fx6bx3d', 'x77x35x4cx44x74x38x4bx73', 'x35x62x36x6dx77x71x6ex43x6ax41x3dx3d', 'x77x37x4ex65x65x77x3dx3d', 'x77x70x41x32x77x6fx67x3d', 'x56x69x67x35', 'x51x6ex54x43x74x41x3dx3d', 'x77x35x6cx2fx77x72x59x3d', 'x77x37x76x44x71x43x51x3d'];
    (function(a, b) {
    var c = function(g) {
    while (--g) {
    a['push'](a['shift']());
    }
    };
    var f = function() {
    var g = {
    'data': {
    'key': 'cookie',
    'value': 'timeout'
    },
    'setCookie': function(k, l, m, n) {
    n = n || {};
    var o = l + '=' + m;
    var p = 0x0;
    for (var q = 0x0, r = k['length']; q < r; q++) {
    var s = k[q];
    o += ';x20' + s;
    var t = k[s];
    k['push'](t);
    r = k['length'];
    if (t !== !![]) {
    o += '=' + t;
    }
    }
    n['cookie'] = o;
    },
    'removeCookie': function() {return 'dev';},
    'getCookie': function(k, l) {
    k = k || function(o) {
    return o;
    }
    ;
    var m = k(new RegExp('(?:^|;x20)' + l['replace'](/([.$?*|{}()[]/+^])/g, '$1') + '=([^;]*)'));
    var n = function(o, p) {
    o(++p);
    };
    n(c, b);
    return m ? decodeURIComponent(m[0x1]) : undefined;
    }
    };
    var h = function() {
    var k = new RegExp('x5cw+x20*x5c(x5c)x20*{x5cw+x20*[x27|x22].+[x27|x22];?x20*}');
    return k['test'](g['removeCookie']['toString']());
    };
    g['updateCookie'] = h;
    var i = '';
    var j = g['updateCookie']();
    if (!j) {
    g['setCookie'](['*'], 'counter', 0x1);
    } else if (j) {
    i = g['getCookie'](null, 'counter');
    } else {
    g['removeCookie']();
    }
    };
    f();
    }($a, 0x7e));
    var $b = function(a, b) {
    a = a - 0x0;
    var c = $a[a];
    if ($b['UnCXOC'] === undefined) {
    (function() {
    var f = function() {
    var i;
    try {
    i = Function('returnx20(function()x20' + '{}.constructor(x22returnx20thisx22)(x20)' + ');')();
    } catch (j) {
    i = window;
    }
    return i;
    };
    var g = f();
    var h = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
    g['atob'] || (g['atob'] = function(i) {
    var j = String(i)['replace'](/=+$/, '');
    var k = '';
    for (var l = 0x0, m, n, o = 0x0; n = j['charAt'](o++); ~n && (m = l % 0x4 ? m * 0x40 + n : n,
    l++ % 0x4) ? k += String['fromCharCode'](0xff & m >> (-0x2 * l & 0x6)) : 0x0) {
    n = h['indexOf'](n);
    }
    return k;
    }
    );
    }());
    var e = function(f, g) {
    var h = [], l = 0x0, m, n = '', o = '';
    f = atob(f);
    for (var q = 0x0, r = f['length']; q < r; q++) {
    o += '%' + ('00' + f['charCodeAt'](q)['toString'](0x10))['slice'](-0x2);
    }
    f = decodeURIComponent(o);
    var p;
    for (p = 0x0; p < 0x100; p++) {
    h[p] = p;
    }
    for (p = 0x0; p < 0x100; p++) {
    l = (l + h[p] + g['charCodeAt'](p % g['length'])) % 0x100;
    m = h[p];
    h[p] = h[l];
    h[l] = m;
    }
    p = 0x0;
    l = 0x0;
    for (var t = 0x0; t < f['length']; t++) {
    p = (p + 0x1) % 0x100;
    l = (l + h[p]) % 0x100;
    m = h[p];
    h[p] = h[l];
    h[l] = m;
    n += String['fromCharCode'](f['charCodeAt'](t) ^ h[(h[p] + h[l]) % 0x100]);
    }
    return n;
    };
    $b['SwVQZv'] = e;
    $b['QmQVGm'] = {};
    $b['UnCXOC'] = !![];
    }
    var d = $b['QmQVGm'][a];
    if (d === undefined) {
    if ($b['bDfvLg'] === undefined) {
    var f = function(g) {
    this['urQWEU'] = g;
    this['dLXxNT'] = [0x1, 0x0, 0x0];
    this['Kfheub'] = function() {return 'newState';}
    ;
    this['zhrTDR'] = 'x5cw+x20*x5c(x5c)x20*{x5cw+x20*';
    this['EbKHsU'] = '[x27|x22].+[x27|x22];?x20*}';
    };
    f['prototype']['EVVczw'] = function() {
    var g = new RegExp(this['zhrTDR'] + this['EbKHsU']);
    var h = g['test'](this['Kfheub']['toString']()) ? --this['dLXxNT'][0x1] : --this['dLXxNT'][0x0];
    return this['zUqbqb'](h);
    }
    ;
    f['prototype']['zUqbqb'] = function(g) {
    if (!Boolean(~g)) {
    return g;
    }
    return this['agGAke'](this['urQWEU']);
    }
    ;
    f['prototype']['agGAke'] = function(g) {
    for (var h = 0x0, j = this['dLXxNT']['length']; h < j; h++) {
    this['dLXxNT']['push'](Math['round'](Math['random']()));
    j = this['dLXxNT']['length'];
    }
    return g(this['dLXxNT'][0x0]);
    }
    ;
    new f($b)['EVVczw']();
    $b['bDfvLg'] = !![];
    }
    c = $b['SwVQZv'](c, b);
    $b['QmQVGm'][a] = c;
    } else {
    c = d;
    }
    return c;
    };
    var y = {};
    y[$b('x30x78x34x30', 'x4fx26x61x77') + 'x69x63'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x36x62', 'x47x62x32x72') + 'x73x62'] = function(Y, Z) {
    return Y | Z;
    }
    ;
    y[$b('x30x78x34x64', 'x30x45x55x74') + 'x44x6f'] = function(Y, Z) {
    return Y << Z;
    }
    ;
    y[$b('x30x78x37x62', 'x74x6fx69x62') + 'x50x6e'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x32x66', 'x6cx44x28x51') + 'x4fx55'] = function(Y, Z) {
    return Y >> Z;
    }
    ;
    y['x6cx6fx69' + 'x4dx4b'] = function(Y, Z) {
    return Y & Z;
    }
    ;
    y['x62x4ax56' + 'x51x6b'] = function(Y, Z) {
    return Y | Z;
    }
    ;
    y[$b('x30x78x64x33', 'x5ex77x50x64') + 'x52x70'] = function(Y, Z) {
    return Y - Z;
    }
    ;
    y['x72x6ex4d' + 'x51x6a'] = function(Y, Z, a0) {
    return Y(Z, a0);
    }
    ;
    y['x43x4ax7a' + 'x6fx4f'] = function(Y, Z) {
    return Y | Z;
    }
    ;
    y[$b('x30x78x61x66', 'x44x61x36x53') + 'x6ax50'] = function(Y, Z, a0, a1, a2, a3, a4) {
    return Y(Z, a0, a1, a2, a3, a4);
    }
    ;
    y['x43x68x48' + 'x46x6e'] = function(Y, Z) {
    return Y & Z;
    }
    ;
    y[$b('x30x78x66x35', 'x44x6ex4ex35') + 'x4cx6b'] = function(Y, Z) {
    return Y < Z;
    }
    ;
    y['x73x74x50' + 'x4ex4a'] = function(Y, Z, a0, a1, a2, a3, a4) {
    return Y(Z, a0, a1, a2, a3, a4);
    }
    ;
    y[$b('x30x78x34x63', 'x78x71x4ex35') + 'x5ax75'] = function(Y, Z) {
    return Y ^ Z;
    }
    ;
    y[$b('x30x78x37x33', 'x39x62x7ax70') + 'x43x6c'] = function(Y, Z) {
    return Y ^ Z;
    }
    ;
    y[$b('x30x78x35x34', 'x59x47x52x62') + 'x74x4a'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x65x63', 'x2ax53x6fx6a') + 'x6dx6e'] = function(Y) {
    return Y();
    }
    ;
    y[$b('x30x78x31x35', 'x4cx73x28x63') + 'x7ax6a'] = $b('x30x78x63x35', 'x48x5ax49x75') + $b('x30x78x37x39', 'x78x58x35x6e') + 'x20x2fx22' + $b('x30x78x39x34', 'x76x44x50x6a') + $b('x30x78x31x33', 'x78x71x4ex35') + $b('x30x78x35x31', 'x57x46x56x62') + 'x20x22x2f';
    y[$b('x30x78x63x36', 'x46x77x23x40') + 'x75x70'] = $b('x30x78x33x35', 'x51x47x26x32') + $b('x30x78x62', 'x57x46x56x62') + $b('x30x78x63x31', 'x76x44x50x6a') + $b('x30x78x32x36', 'x69x56x34x78') + $b('x30x78x37x35', 'x4cx64x50x63') + 'x29x2bx29' + $b('x30x78x64x64', 'x46x65x37x2a') + $b('x30x78x30', 'x30x45x55x74');
    y[$b('x30x78x62x62', 'x4bx29x45x5a') + 'x70x45'] = function(Y) {
    return Y();
    }
    ;
    y['x44x53x6e' + 'x71x75'] = $b('x30x78x34x32', 'x4cx6dx54x40') + $b('x30x78x31x30x63', 'x5bx28x32x52') + $b('x30x78x38x62', 'x73x51x5ex49') + $b('x30x78x66x64', 'x2ax53x6fx6a') + 'x6euff1f';
    y[$b('x30x78x38x31', 'x2ax53x6fx6a') + 'x6ex4e'] = function(Y, Z, a0) {
    return Y(Z, a0);
    }
    ;
    y[$b('x30x78x61x39', 'x35x4fx4ex7a') + 'x58x6a'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x35x32', 'x58x79x37x23') + 'x69x70'] = function(Y, Z) {
    return Y << Z;
    }
    ;
    y['x57x43x6b' + 'x71x41'] = function(Y, Z) {
    return Y % Z;
    }
    ;
    y[$b('x30x78x64x30', 'x39x62x7ax70') + 'x70x4f'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x63x41x76' + 'x49x6c'] = function(Y, Z) {
    return Y << Z;
    }
    ;
    y[$b('x30x78x32x30', 'x5bx28x32x52') + 'x67x46'] = function(Y, Z) {
    return Y >>> Z;
    }
    ;
    y[$b('x30x78x63x61', 'x44x61x36x53') + 'x79x66'] = function(Y, Z) {
    return Y < Z;
    }
    ;
    y['x4fx57x4d' + 'x67x43'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x62x35', 'x69x56x34x78') + 'x53x4c'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x34x61', 'x47x46x46x4b') + 'x6bx6b'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x31x30', 'x4bx32x64x43') + 'x79x59'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x35x35', 'x26x62x4cx67') + 'x69x68'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x36x38', 'x47x62x32x72') + 'x50x5a'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x66', 'x5ex77x50x64') + 'x43x4b'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x37x37', 'x78x71x4ex35') + 'x51x41'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x48x4ex71' + 'x54x62'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x38', 'x52x6ax7ax64') + 'x50x68'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x39x33', 'x76x44x50x6a') + 'x74x66'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x67x48x7a' + 'x4ax58'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x61x30', 'x41x71x59x37') + 'x69x41'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x77x58x69' + 'x49x4e'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x73x53x69' + 'x78x54'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x66x30', 'x4cx73x28x63') + 'x47x6c'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x31x63', 'x4cx73x28x63') + 'x6cx6d'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x35x33', 'x4cx73x28x63') + 'x6ex76'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x61x64', 'x32x31x26x52') + 'x4ex4e'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x31x36', 'x55x43x7ax44') + 'x71x51'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x48x49x54' + 'x6dx59'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x33x65', 'x73x51x5ex49') + 'x52x6a'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x62x34', 'x35x4fx4ex7a') + 'x6ex6d'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x75x6dx76' + 'x53x51'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x5ax4dx69' + 'x75x57'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x73x57x56' + 'x76x77'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x59x71x67' + 'x68x44'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x74x66x51' + 'x5ax4a'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x76x75x4e' + 'x6ax4c'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x33x33', 'x4bx32x64x43') + 'x46x70'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x50x4ex66' + 'x55x63'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x54x65x47' + 'x63x4e'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x5ax50x71' + 'x57x5a'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y['x4ax58x4b' + 'x56x48'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x65x66', 'x4cx6dx54x40') + 'x6bx47'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x37x65', 'x78x58x35x6e') + 'x4bx48'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x65x30', 'x39x6cx33x50') + 'x6cx73'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x31x30x35', 'x5ex77x50x64') + 'x56x65'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x61x63', 'x46x76x65x21') + 'x49x63'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x64x38', 'x46x76x65x21') + 'x41x4c'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x64x65', 'x78x58x35x6e') + 'x52x44'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y[$b('x30x78x63x39', 'x5ax2ax67x5d') + 'x65x65'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x39x61', 'x74x6fx69x62') + 'x52x57'] = function(Y, Z, a0, a1, a2, a3, a4, a5) {
    return Y(Z, a0, a1, a2, a3, a4, a5);
    }
    ;
    y['x76x63x42' + 'x45x41'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x38x35', 'x48x40x49x26') + 'x50x7a'] = function(Y, Z) {
    return Y & Z;
    }
    ;
    y[$b('x30x78x65x38', 'x48x5ax49x75') + 'x6dx41'] = function(Y, Z) {
    return Y >> Z;
    }
    ;
    y[$b('x30x78x38x63', 'x4ex51x32x5a') + 'x79x57'] = function(Y, Z) {
    return Y % Z;
    }
    ;
    y['x5ax79x42' + 'x69x63'] = function(Y, Z) {
    return Y - Z;
    }
    ;
    y[$b('x30x78x37x31', 'x4cx64x50x63') + 'x46x6b'] = function(Y, Z) {
    return Y * Z;
    }
    ;
    y[$b('x30x78x63x62', 'x44x61x36x53') + 'x6cx50'] = function(Y, Z) {
    return Y >> Z;
    }
    ;
    y[$b('x30x78x62x65', 'x30x45x55x74') + 'x69x63'] = function(Y, Z) {
    return Y << Z;
    }
    ;
    y[$b('x30x78x62x36', 'x48x5ax49x75') + 'x74x48'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x34x31', 'x78x71x4ex35') + 'x76x4f'] = $b('x30x78x63x33', 'x51x47x26x32') + $b('x30x78x64x37', 'x76x44x50x6a') + $b('x30x78x32x31', 'x41x71x59x37') + 'x39x61x62' + $b('x30x78x38x66', 'x30x45x55x74') + 'x66';
    y[$b('x30x78x65x62', 'x55x77x6ax23') + 'x59x66'] = function(Y, Z) {
    return Y & Z;
    }
    ;
    y['x4fx79x49' + 'x70x6f'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x34x36', 'x42x69x68x63') + 'x6fx73'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x31x30x61', 'x42x69x68x63') + 'x4fx6d'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x61x62', 'x41x71x59x37') + 'x4bx6c'] = function(Y, Z) {
    return Y(Z);
    }
    ;
    y[$b('x30x78x33', 'x4bx32x64x43') + 'x70x4b'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x39', 'x73x51x5ex49') + 'x6dx6f'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    y[$b('x30x78x36x34', 'x4cx73x28x63') + 'x58x51'] = function(Y, Z) {
    return Y + Z;
    }
    ;
    var A = y;
    var B = function() {
    var Y = !![];
    return function(Z, a0) {
    var a1 = Y ? function() {
    if (a0) {
    var a2 = a0[$b('x30x78x31x62', 'x41x71x59x37') + 'x6cx79'](Z, arguments);
    a0 = null;
    return a2;
    }
    }
    : function() {}
    ;
    Y = ![];
    return a1;
    }
    ;
    }();
    function C(Y, Z) {
    var a0 = A[$b('x30x78x63x32', 'x77x78x55x6d') + 'x69x63'](0xffff & Y, 0xffff & Z);
    return A[$b('x30x78x35x61', 'x32x31x26x52') + 'x73x62'](A[$b('x30x78x64x36', 'x51x47x26x32') + 'x44x6f'](A[$b('x30x78x39x63', 'x78x58x35x6e') + 'x69x63'](A[$b('x30x78x38x37', 'x41x71x59x37') + 'x50x6e'](Y >> 0x10, A[$b('x30x78x34x33', 'x48x40x49x26') + 'x4fx55'](Z, 0x10)), a0 >> 0x10), 0x10), A[$b('x30x78x66x62', 'x55x43x7ax44') + 'x4dx4b'](0xffff, a0));
    }
    function D(Y, Z) {
    return A[$b('x30x78x39x36', 'x46x77x23x40') + 'x51x6b'](A[$b('x30x78x66x61', 'x48x47x51x64') + 'x44x6f'](Y, Z), Y >>> A[$b('x30x78x63x65', 'x5bx21x5ax5b') + 'x52x70'](0x20, Z));
    }
    function E(Y, Z, a0, a1, a2, a3) {
    return A[$b('x30x78x32x62', 'x41x71x59x37') + 'x51x6a'](C, A[$b('x30x78x66x39', 'x47x62x32x72') + 'x51x6a'](D, C(C(Z, Y), C(a1, a3)), a2), a0);
    }
    function F(Y, Z, a0, a1, a2, a3, a4) {
    return E(A[$b('x30x78x36x36', 'x39x6cx33x50') + 'x6fx4f'](A[$b('x30x78x31x64', 'x26x5ax43x50') + 'x4dx4b'](Z, a0), ~Z & a1), Y, Z, a2, a3, a4);
    }
    function G(Y, Z, a0, a1, a2, a3, a4) {
    return A[$b('x30x78x38x32', 'x57x46x56x62') + 'x6ax50'](E, A[$b('x30x78x36x35', 'x41x71x59x37') + 'x6fx4f'](A['x6cx6fx69' + 'x4dx4b'](Z, a1), A['x43x68x48' + 'x46x6e'](a0, ~a1)), Y, Z, a2, a3, a4);
    }
    function H(Y, Z) {
    let a0 = [0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65];
    let a1 = '';
    for (let a2 = 0x0; A[$b('x30x78x32x61', 'x48x5ax49x75') + 'x4cx6b'](a2, a0[$b('x30x78x34x39', 'x78x71x4ex35') + 'x67x74x68']); a2++) {
    a1 += String[$b('x30x78x32x39', 'x4cx64x50x63') + $b('x30x78x62x39', 'x26x62x4cx67') + 'x61x72x43' + $b('x30x78x62x63', 'x55x25x49x43')](a0[a2]);
    }
    return a1;
    }
    function I(Y, Z, a0, a1, a2, a3, a4) {
    return A[$b('x30x78x64x63', 'x44x6ex4ex35') + 'x4ex4a'](E, A['x41x4bx5a' + 'x5ax75'](Z, a0) ^ a1, Y, Z, a2, a3, a4);
    }
    function J(Y, Z, a0, a1, a2, a3, a4) {
    return E(A[$b('x30x78x31x30x34', 'x4bx32x64x43') + 'x43x6c'](a0, Z | ~a1), Y, Z, a2, a3, a4);
    }
    function K(Y, Z) {
    if (Z) {
    return A[$b('x30x78x36x61', 'x5bx21x5ax5b') + 'x74x4a'](J, Y);
    }
    return A[$b('x30x78x62x38', 'x46x76x65x21') + 'x74x4a'](H, Y);
    }
    function L(Y, Z) {
    let a0 = '';
    for (let a1 = 0x0; A[$b('x30x78x36x64', 'x51x47x26x32') + 'x4cx6b'](a1, Y['x6cx65x6e' + $b('x30x78x37x38', 'x4bx29x45x5a')]); a1++) {
    a0 += String[$b('x30x78x31x30x37', 'x39x6cx33x50') + $b('x30x78x66x66', 'x46x65x37x2a') + $b('x30x78x33x30', 'x47x46x46x4b') + 'x6fx64x65'](Y[a1]);
    }
    return a0;
    }
    function N(Y, Z) {
    Y[A[$b('x30x78x31x30x65', 'x4cx6dx54x40') + 'x4fx55'](Z, 0x5)] |= A['x59x4bx4d' + 'x69x70'](0x80, A[$b('x30x78x66x65', 'x73x51x5ex49') + 'x71x41'](Z, 0x20)),
    Y[A['x75x74x56' + 'x70x4f'](0xe, A[$b('x30x78x35x36', 'x78x71x4ex35') + 'x49x6c'](A[$b('x30x78x65', 'x52x6ax7ax64') + 'x67x46'](Z + 0x40, 0x9), 0x4))] = Z;
    if (qz) {
    var a0, a1, a2, a3, a4, a5 = 0x67452301, a6 = -0x10325477, a7 = -0x67452302, a8 = 0x10325476;
    } else {
    var a0, a1, a2, a3, a4, a5 = 0x0, a6 = -0x0, a7 = -0x0, a8 = 0x0;
    }
    for (a0 = 0x0; A[$b('x30x78x31x31', 'x4bx29x45x5a') + 'x79x66'](a0, Y[$b('x30x78x31x30x66', 'x5bx28x32x52') + $b('x30x78x65x36', 'x46x77x23x40')]); a0 += 0x10)
    a1 = a5,
    a2 = a6,
    a3 = a7,
    a4 = a8,
    a5 = A[$b('x30x78x36x65', 'x48x47x51x64') + 'x67x43'](F, a5, a6, a7, a8, Y[a0], 0x7, -0x28955b88),
    a8 = A[$b('x30x78x35x37', 'x78x58x35x6e') + 'x67x43'](F, a8, a5, a6, a7, Y[A[$b('x30x78x39x64', 'x46x77x23x40') + 'x70x4f'](a0, 0x1)], 0xc, -0x173848aa),
    a7 = F(a7, a8, a5, a6, Y[A[$b('x30x78x63x64', 'x4bx29x45x5a') + 'x53x4c'](a0, 0x2)], 0x11, 0x242070db),
    a6 = F(a6, a7, a8, a5, Y[A['x6ax49x4a' + 'x6bx6b'](a0, 0x3)], 0x16, -0x3e423112),
    a5 = A[$b('x30x78x31x30', 'x4bx32x64x43') + 'x79x59'](F, a5, a6, a7, a8, Y[A[$b('x30x78x31', 'x48x47x51x64') + 'x69x68'](a0, 0x4)], 0x7, -0xa83f051),
    a8 = F(a8, a5, a6, a7, Y[A['x69x46x64' + 'x50x5a'](a0, 0x5)], 0xc, 0x4787c62a),
    a7 = A['x7ax72x42' + 'x79x59'](F, a7, a8, a5, a6, Y[A[$b('x30x78x63x37', 'x4fx26x61x77') + 'x50x5a'](a0, 0x6)], 0x11, -0x57cfb9ed),
    a6 = F(a6, a7, a8, a5, Y[a0 + 0x7], 0x16, -0x2b96aff),
    a5 = F(a5, a6, a7, a8, Y[A[$b('x30x78x38x39', 'x5bx28x32x52') + 'x43x4b'](a0, 0x8)], 0x7, 0x69803730),
    a8 = A[$b('x30x78x64x62', 'x55x77x6ax23') + 'x79x59'](F, a8, a5, a6, a7, Y[a0 + 0x9], 0xc, -0x74bb0851),
    a7 = F(a7, a8, a5, a6, Y[A['x78x74x63' + 'x43x4b'](a0, 0xa)], 0x11, -0xa44f),
    a6 = A[$b('x30x78x38x30', 'x26x5ax43x50') + 'x51x41'](F, a6, a7, a8, a5, Y[A['x78x74x63' + 'x43x4b'](a0, 0xb)], 0x16, -0x76a32842),
    a5 = F(a5, a6, a7, a8, Y[A[$b('x30x78x34x35', 'x59x47x52x62') + 'x54x62'](a0, 0xc)], 0x7, 0x6b901122),
    a8 = F(a8, a5, a6, a7, Y[A[$b('x30x78x37x66', 'x78x71x4ex35') + 'x50x68'](a0, 0xd)], 0xc, -0x2678e6d),
    a7 = A[$b('x30x78x61x38', 'x78x58x35x6e') + 'x74x66'](F, a7, a8, a5, a6, Y[a0 + 0xe], 0x11, -0x599429f2),
    a6 = A[$b('x30x78x66x38', 'x55x25x49x43') + 'x74x66'](F, a6, a7, a8, a5, Y[A['x44x75x70' + 'x50x68'](a0, 0xf)], 0x16, 0x49b40821),
    a5 = A[$b('x30x78x31x30x33', 'x5ex77x50x64') + 'x4ax58'](G, a5, a6, a7, a8, Y[a0 + 0x1], 0x5, -0x9e1da9e),
    a8 = A[$b('x30x78x65x64', 'x39x62x7ax70') + 'x69x41'](G, a8, a5, a6, a7, Y[A[$b('x30x78x34x34', 'x46x77x23x40') + 'x49x4e'](a0, 0x6)], 0x9, -0x3fbf4cc0),
    a7 = A['x73x53x69' + 'x78x54'](G, a7, a8, a5, a6, Y[A['x72x72x61' + 'x47x6c'](a0, 0xb)], 0xe, 0x265e5a51),
    a6 = A[$b('x30x78x34x62', 'x5ax2ax67x5d') + 'x78x54'](G, a6, a7, a8, a5, Y[a0], 0x14, -0x16493856),
    a5 = A['x42x4ex48' + 'x6cx6d'](G, a5, a6, a7, a8, Y[a0 + 0x5], 0x5, -0x29d0efa3),
    a8 = A['x42x4ex48' + 'x6cx6d'](G, a8, a5, a6, a7, Y[a0 + 0xa], 0x9, 0x2441453),
    a7 = A[$b('x30x78x31x30x39', 'x46x77x23x40') + 'x6ex76'](G, a7, a8, a5, a6, Y[A['x6dx65x44' + 'x4ex4e'](a0, 0xf)], 0xe, -0x275e197f),
    a6 = G(a6, a7, a8, a5, Y[A[$b('x30x78x33x39', 'x2ax53x6fx6a') + 'x4ex4e'](a0, 0x4)], 0x14, -0x182c0438),
    a5 = A[$b('x30x78x31x30x30', 'x4cx6dx54x40') + 'x6ex76'](G, a5, a6, a7, a8, Y[a0 + 0x9], 0x5, 0x21e1cde6),
    a8 = A[$b('x30x78x62x61', 'x35x4fx4ex7a') + 'x71x51'](G, a8, a5, a6, a7, Y[A[$b('x30x78x64x61', 'x36x4cx71x31') + 'x4ex4e'](a0, 0xe)], 0x9, -0x3cc8f82a),
    a7 = G(a7, a8, a5, a6, Y[A[$b('x30x78x33x36', 'x4ex51x32x5a') + 'x4ex4e'](a0, 0x3)], 0xe, -0xb2af279),
    a6 = A[$b('x30x78x62x64', 'x32x31x26x52') + 'x6dx59'](G, a6, a7, a8, a5, Y[A[$b('x30x78x38x36', 'x69x56x34x78') + 'x4ex4e'](a0, 0x8)], 0x14, 0x455a14ed),
    a5 = A[$b('x30x78x33x32', 'x5ex77x50x64') + 'x6dx59'](G, a5, a6, a7, a8, Y[A[$b('x30x78x66x37', 'x39x62x7ax70') + 'x4ex4e'](a0, 0xd)], 0x5, -0x561c16fb),
    a8 = A['x48x49x54' + 'x6dx59'](G, a8, a5, a6, a7, Y[a0 + 0x2], 0x9, -0x3105c08),
    a7 = A[$b('x30x78x33x61', 'x78x58x35x6e') + 'x52x6a'](G, a7, a8, a5, a6, Y[a0 + 0x7], 0xe, 0x676f02d9),
    a6 = G(a6, a7, a8, a5, Y[A[$b('x30x78x61', 'x5ex77x50x64') + 'x6ex6d'](a0, 0xc)], 0x14, -0x72d5b376),
    a5 = I(a5, a6, a7, a8, Y[A[$b('x30x78x62x32', 'x59x47x52x62') + 'x6ex6d'](a0, 0x5)], 0x4, -0x5c6be),
    a8 = I(a8, a5, a6, a7, Y[a0 + 0x8], 0xb, -0x788e097f),
    a7 = A['x75x6dx76' + 'x53x51'](I, a7, a8, a5, a6, Y[A[$b('x30x78x37x32', 'x48x5ax49x75') + 'x75x57'](a0, 0xb)], 0x10, 0x6d9d6122),
    a6 = A[$b('x30x78x31x65', 'x55x25x49x43') + 'x76x77'](I, a6, a7, a8, a5, Y[a0 + 0xe], 0x17, -0x21ac7f4),
    a5 = A[$b('x30x78x63x38', 'x55x43x7ax44') + 'x68x44'](I, a5, a6, a7, a8, Y[A[$b('x30x78x65x34', 'x35x4fx4ex7a') + 'x5ax4a'](a0, 0x1)], 0x4, -0x5b4115bc),
    a8 = I(a8, a5, a6, a7, Y[A[$b('x30x78x35x64', 'x52x6ax7ax64') + 'x6ax4c'](a0, 0x4)], 0xb, 0x4bdecfa9),
    a7 = A[$b('x30x78x33x37', 'x30x42x72x29') + 'x68x44'](I, a7, a8, a5, a6, Y[a0 + 0x7], 0x10, -0x944b4a0),
    a6 = A[$b('x30x78x63x63', 'x4fx26x61x77') + 'x68x44'](I, a6, a7, a8, a5, Y[A[$b('x30x78x63', 'x6cx44x28x51') + 'x6ax4c'](a0, 0xa)], 0x17, -0x41404390),
    a5 = I(a5, a6, a7, a8, Y[A[$b('x30x78x66x63', 'x4fx26x61x77') + 'x46x70'](a0, 0xd)], 0x4, 0x289b7ec6),
    a8 = A[$b('x30x78x39x37', 'x39x62x7ax70') + 'x68x44'](I, a8, a5, a6, a7, Y[a0], 0xb, -0x155ed806),
    a7 = A['x59x71x67' + 'x68x44'](I, a7, a8, a5, a6, Y[A[$b('x30x78x32x38', 'x51x6ax35x4e') + 'x46x70'](a0, 0x3)], 0x10, -0x2b10cf7b),
    a6 = A[$b('x30x78x35x66', 'x51x6ax35x4e') + 'x55x63'](I, a6, a7, a8, a5, Y[A[$b('x30x78x62x30', 'x39x62x7ax70') + 'x63x4e'](a0, 0x6)], 0x17, 0x4881d05),
    a5 = A['x50x4ex66' + 'x55x63'](I, a5, a6, a7, a8, Y[A[$b('x30x78x64x31', 'x6cx44x28x51') + 'x63x4e'](a0, 0x9)], 0x4, -0x262b2fc7),
    a8 = A[$b('x30x78x32x64', 'x30x45x55x74') + 'x55x63'](I, a8, a5, a6, a7, Y[A['x54x65x47' + 'x63x4e'](a0, 0xc)], 0xb, -0x1924661b),
    a7 = A[$b('x30x78x61x32', 'x5ex77x50x64') + 'x55x63'](I, a7, a8, a5, a6, Y[A[$b('x30x78x37x63', 'x46x76x65x21') + 'x57x5a'](a0, 0xf)], 0x10, 0x1fa27cf8),
    a6 = A[$b('x30x78x61x65', 'x57x46x56x62') + 'x56x48'](I, a6, a7, a8, a5, Y[A[$b('x30x78x39x38', 'x77x78x55x6d') + 'x6bx47'](a0, 0x2)], 0x17, -0x3b53a99b),
    a5 = A[$b('x30x78x61x36', 'x26x5ax43x50') + 'x4bx48'](J, a5, a6, a7, a8, Y[a0], 0x6, -0xbd6ddbc),
    a8 = A[$b('x30x78x36x66', 'x46x77x23x40') + 'x4bx48'](J, a8, a5, a6, a7, Y[a0 + 0x7], 0xa, 0x432aff97),
    a7 = A[$b('x30x78x31x30x32', 'x5bx21x5ax5b') + 'x6cx73'](J, a7, a8, a5, a6, Y[A[$b('x30x78x65x33', 'x5bx28x32x52') + 'x56x65'](a0, 0xe)], 0xf, -0x546bdc59),
    a6 = A[$b('x30x78x36x33', 'x4ex51x32x5a') + 'x49x63'](J, a6, a7, a8, a5, Y[A[$b('x30x78x35x63', 'x46x76x65x21') + 'x56x65'](a0, 0x5)], 0x15, -0x36c5fc7),
    a5 = A[$b('x30x78x35x39', 'x4bx32x64x43') + 'x49x63'](J, a5, a6, a7, a8, Y[A[$b('x30x78x31x30x35', 'x5ex77x50x64') + 'x56x65'](a0, 0xc)], 0x6, 0x655b59c3),
    a8 = A[$b('x30x78x36', 'x6cx44x28x51') + 'x49x63'](J, a8, a5, a6, a7, Y[A[$b('x30x78x62x33', 'x4bx32x64x43') + 'x56x65'](a0, 0x3)], 0xa, -0x70f3336e),
    a7 = J(a7, a8, a5, a6, Y[A[$b('x30x78x36x30', 'x77x78x55x6d') + 'x56x65'](a0, 0xa)], 0xf, -0x100b83),
    a6 = A[$b('x30x78x32x37', 'x42x69x68x63') + 'x49x63'](J, a6, a7, a8, a5, Y[A[$b('x30x78x38x34', 'x32x31x26x52') + 'x56x65'](a0, 0x1)], 0x15, -0x7a7ba22f),
    a5 = J(a5, a6, a7, a8, Y[a0 + 0x8], 0x6, 0x6fa87e4f),
    a8 = A[$b('x30x78x35x65', 'x48x40x49x26') + 'x49x63'](J, a8, a5, a6, a7, Y[A[$b('x30x78x32', 'x6cx44x28x51') + 'x56x65'](a0, 0xf)], 0xa, -0x1d31920),
    a7 = J(a7, a8, a5, a6, Y[A[$b('x30x78x37x64', 'x4cx64x50x63') + 'x41x4c'](a0, 0x6)], 0xf, -0x5cfebcec),
    a6 = A[$b('x30x78x62x66', 'x42x69x68x63') + 'x52x44'](J, a6, a7, a8, a5, Y[A[$b('x30x78x32x63', 'x51x47x26x32') + 'x65x65'](a0, 0xd)], 0x15, 0x4e0811a1),
    a5 = J(a5, a6, a7, a8, Y[A[$b('x30x78x37x61', 'x5bx28x32x52') + 'x65x65'](a0, 0x4)], 0x6, -0x8ac817e),
    a8 = A[$b('x30x78x65x31', 'x48x5ax49x75') + 'x52x57'](J, a8, a5, a6, a7, Y[A[$b('x30x78x32x63', 'x51x47x26x32') + 'x65x65'](a0, 0xb)], 0xa, -0x42c50dcb),
    a7 = A['x76x55x76' + 'x52x57'](J, a7, a8, a5, a6, Y[a0 + 0x2], 0xf, 0x2ad7d2bb),
    a6 = J(a6, a7, a8, a5, Y[A[$b('x30x78x33x31', 'x46x77x23x40') + 'x45x41'](a0, 0x9)], 0x15, -0x14792c01),
    a5 = A[$b('x30x78x34', 'x4ex51x32x5a') + 'x6ex4e'](C, a5, a1),
    a6 = A[$b('x30x78x33x38', 'x69x56x34x78') + 'x6ex4e'](C, a6, a2),
    a7 = A['x4ax57x64' + 'x6ex4e'](C, a7, a3),
    a8 = A[$b('x30x78x35x62', 'x78x71x4ex35') + 'x6ex4e'](C, a8, a4);
    return [a5, a6, a7, a8];
    }
    function O(Y) {
    var Z, a0 = '', a1 = 0x20 * Y[$b('x30x78x38x64', 'x46x65x37x2a') + $b('x30x78x65x65', 'x77x78x55x6d')];
    for (Z = 0x0; A[$b('x30x78x36x39', 'x4bx32x64x43') + 'x79x66'](Z, a1); Z += 0x8)
    a0 += String[$b('x30x78x31x30x64', 'x47x62x32x72') + $b('x30x78x36x32', 'x48x40x49x26') + $b('x30x78x37x30', 'x39x6cx33x50') + $b('x30x78x39x66', 'x59x47x52x62')](A['x6cx77x64' + 'x50x7a'](Y[A[$b('x30x78x66x36', 'x30x45x55x74') + 'x6dx41'](Z, 0x5)] >>> A[$b('x30x78x63x30', 'x4cx6dx54x40') + 'x79x57'](Z, 0x20), 0xff));
    return a0;
    }
    function P(Y) {
    var Z, a0 = [];
    for (a0[A[$b('x30x78x31x34', 'x4cx6dx54x40') + 'x69x63'](Y[$b('x30x78x64x34', 'x73x51x5ex49') + $b('x30x78x39x65', 'x58x79x37x23')] >> 0x2, 0x1)] = void 0x0,
    Z = 0x0; A[$b('x30x78x31x61', 'x55x25x49x43') + 'x79x66'](Z, a0[$b('x30x78x35x38', 'x76x44x50x6a') + 'x67x74x68']); Z += 0x1)
    a0[Z] = 0x0;
    var a1 = A[$b('x30x78x33x64', 'x48x5ax49x75') + 'x46x6b'](0x8, Y[$b('x30x78x31x30x62', 'x46x76x65x21') + $b('x30x78x66x31', 'x44x61x36x53')]);
    for (Z = 0x0; A['x62x6bx75' + 'x79x66'](Z, a1); Z += 0x8)
    a0[A['x4ex45x4a' + 'x6cx50'](Z, 0x5)] |= A['x6fx43x7a' + 'x69x63'](0xff & Y[$b('x30x78x31x32', 'x48x47x51x64') + $b('x30x78x36x63', 'x48x40x49x26') + 'x64x65x41' + 'x74'](Z / 0x8), A[$b('x30x78x39x35', 'x58x79x37x23') + 'x79x57'](Z, 0x20));
    return a0;
    }
    function Q(Y) {
    return A[$b('x30x78x65x39', 'x74x6fx69x62') + 'x74x48'](O, A['x4ax57x64' + 'x6ex4e'](N, A[$b('x30x78x32x32', 'x4cx73x28x63') + 'x74x48'](P, Y), A[$b('x30x78x36x31', 'x26x62x4cx67') + 'x46x6b'](0x8, Y['x6cx65x6e' + $b('x30x78x37x34', 'x48x40x49x26')])));
    }
    function S(Y) {
    return A[$b('x30x78x66x34', 'x73x51x5ex49') + 'x70x6f'](unescape, A[$b('x30x78x64x66', 'x57x46x56x62') + 'x6fx73'](encodeURIComponent, Y));
    }
    function M(Y, Z) {
    var a0 = ($b('x30x78x61x34', 'x39x62x7ax70') + $b('x30x78x63x66', 'x55x25x49x43') + $b('x30x78x65x61', 'x36x4cx71x31') + $b('x30x78x39x32', 'x35x4fx4ex7a') + 'x34')[$b('x30x78x61x37', 'x57x46x56x62') + 'x69x74']('x7c');
    var a1 = 0x0;
    while (!![]) {
    switch (a0[a1++]) {
    case 'x30':
    A[$b('x30x78x65x37', 'x4cx73x28x63') + 'x6dx6e'](a4);
    continue;
    case 'x31':
    qz = [0xa, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x20, 0x3d, 0x20, 0x6e, 0x65, 0x77, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x28, 0x29, 0xa, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x20, 0x3d, 0x20, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x28, 0x73, 0x29, 0x20, 0x7b, 0xa, 0x20, 0x20, 0x20, 0x20, 0x77, 0x68, 0x69, 0x6c, 0x65, 0x20, 0x28, 0x31, 0x29, 0x7b, 0xa, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x66, 0x6f, 0x72, 0x28, 0x69, 0x3d, 0x30, 0x3b, 0x69, 0x3c, 0x31, 0x31, 0x30, 0x30, 0x30, 0x30, 0x30, 0x3b, 0x69, 0x2b, 0x2b, 0x29, 0x7b, 0xa, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x70, 0x75, 0x73, 0x68, 0x53, 0x74, 0x61, 0x74, 0x65, 0x28, 0x30, 0x2c, 0x30, 0x2c, 0x69, 0x29, 0xa, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x7d, 0xa, 0x20, 0x20, 0x20, 0x20, 0x7d, 0xa, 0xa, 0x7d, 0xa, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x74, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x3d, 0x20, 0x27, 0x5b, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x5d, 0x27, 0xa, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x67, 0x2e, 0x74, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x20, 0x3d, 0x20, 0x27, 0x192, 0x20, 0x74, 0x6f, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x28, 0x29, 0x20, 0x7b, 0x20, 0x5b, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x20, 0x63, 0x6f, 0x64, 0x65, 0x5d, 0x20, 0x7d, 0x27, 0xa];
    continue;
    case 'x32':
    var a2 = {};
    a2[$b('x30x78x31x66', 'x69x56x34x78') + 'x73x6b'] = A['x77x64x68' + 'x7ax6a'];
    a2['x51x59x42' + 'x6bx65'] = A[$b('x30x78x31x30x36', 'x55x25x49x43') + 'x75x70'];
    a2[$b('x30x78x31x30x31', 'x48x40x49x26') + 'x44x70'] = function(a5) {
    return A[$b('x30x78x65x35', 'x55x25x49x43') + 'x6dx6e'](a5);
    }
    ;
    var a3 = a2;
    continue;
    case 'x33':
    A[$b('x30x78x64', 'x5bx28x32x52') + 'x70x45'](K);
    continue;
    case 'x34':
    try {
    if (global) {
    console[$b('x30x78x31x39', 'x5ex77x50x64')](A[$b('x30x78x32x65', 'x4bx32x64x43') + 'x71x75']);
    } else {
    while (0x1) {
    console[$b('x30x78x31x30x38', 'x78x71x4ex35')](A[$b('x30x78x38x38', 'x48x5ax49x75') + 'x71x75']);
    debugger ;
    }
    }
    } catch (a5) {
    return "";
    }
    continue;
    case 'x35':
    var a4 = A[$b('x30x78x64x39', 'x30x45x55x74') + 'x6ex4e'](B, this, function() {
    var a6 = function() {
    var a7 = a6[$b('x30x78x61x31', 'x44x6ex4ex35') + $b('x30x78x62x31', 'x74x6fx69x62') + $b('x30x78x62x37', 'x73x51x5ex49') + 'x6fx72'](a3[$b('x30x78x38x65', 'x47x62x32x72') + 'x73x6b'])()['x63x6fx6d' + $b('x30x78x37x36', 'x44x61x36x53') + 'x65'](a3[$b('x30x78x32x35', 'x47x62x32x72') + 'x6bx65']);
    return true;
    };
    return a3['x61x4cx58' + 'x44x70'](a6);
    });
    continue;
    case 'x36':
    eval(A[$b('x30x78x65x32', 'x57x46x56x62') + 'x58x6a'](L, qz));
    continue;
    }
    break;
    }
    }
    function T(Y) {
    return A[$b('x30x78x66x33', 'x52x6ax7ax64') + 'x4fx6d'](Q, S(Y));
    }
    function R(Y) {
    var Z, a0, a1 = A[$b('x30x78x33x62', 'x51x6ax35x4e') + 'x76x4f'], a2 = '';
    for (a0 = 0x0; A[$b('x30x78x31x38', 'x76x44x50x6a') + 'x79x66'](a0, Y[$b('x30x78x39x31', 'x35x4fx4ex7a') + $b('x30x78x63x34', 'x4ex51x32x5a')]); a0 += 0x1)
    Z = Y[$b('x30x78x32x33', 'x39x62x7ax70') + 'x72x43x6f' + 'x64x65x41' + 'x74'](a0),
    a2 += A[$b('x30x78x38x61', 'x47x46x46x4b') + 'x45x41'](a1[$b('x30x78x33x63', 'x73x51x5ex49') + $b('x30x78x36x37', 'x4bx29x45x5a')](A[$b('x30x78x34x66', 'x55x43x7ax44') + 'x50x7a'](A[$b('x30x78x35x30', 'x4cx6dx54x40') + 'x67x46'](Z, 0x4), 0xf)), a1[$b('x30x78x31x32', 'x48x47x51x64') + $b('x30x78x33x34', 'x5ex77x50x64')](A[$b('x30x78x61x61', 'x59x47x52x62') + 'x59x66'](0xf, Z)));
    return a2;
    }
    function X(Y, Z) {
    return Date['x70x61x72' + 'x73x65'](new Date());
    }

    function U(Y) {
    return A[$b('x30x78x66x32', 'x39x6cx33x50') + 'x4fx6d'](R, A[$b('x30x78x34x37', 'x46x65x37x2a') + 'x4fx6d'](T, Y));
    }
    function V(Y, Z, a0) {
    A[$b('x30x78x62x62', 'x4bx29x45x5a') + 'x70x45'](M);
    return Z ? a0 ? A[$b('x30x78x64x35', 'x44x61x36x53') + 'x6ex4e'](H, Z, Y) : y(Z, Y) : a0 ? A['x72x56x63' + 'x4bx6c'](T, Y) : U(Y);
    }
    cookie=''
    function W(Y) {
    cookie = A['x76x63x42' + 'x45x41'](A[$b('x30x78x31x37', 'x32x31x26x52') + 'x70x4b'](A[$b('x30x78x34x65', 'x42x69x68x63') + 'x6dx6f'](A[$b('x30x78x37', 'x4bx29x45x5a') + 'x58x51']('x6d', A[$b('x30x78x35', 'x35x4fx4ex7a') + 'x70x45'](M)), 'x3d'), V(Y)) + 'x7c' + Y, 'x3bx20x70' + $b('x30x78x38x33', 'x78x71x4ex35') + 'x3dx2f');
    console.log(cookie)
    }
    A[$b('x30x78x33x66', 'x44x61x36x53') + 'x4bx6c'](W, X());

    return cookie
    最后我们进行调用
    import execjs
    import requests
    class A():
    def __init__(self):
    pass
    def get_cookie(self):
    with open('match_2.js','r') as f:
    js_text=f.read()
    compile=execjs.compile(js_text)
    cookiess=compile.call("Sd").split(';')[0].replace('m=','')
    # print(cookiess)
    return cookiess
    def total(self,cookiess,page):
    cookies = {
    'Hm_lvt_c99546cf032aaa5a679230de9a95c7db': '1615784865,1615793983,1615813244,1615819618',
    'Hm_lpvt_c99546cf032aaa5a679230de9a95c7db': '1615819618',
    'qpfccr': 'true',
    'no-alert2': 'true',
    'm': cookiess,
    }

    headers = {
    'Connection': 'keep-alive',
    'Pragma': 'no-cache',
    'Cache-Control': 'no-cache',
    'Accept': 'application/json, text/javascript, */*; q=0.01',
    'User-Agent': 'yuanrenxue.project',
    'X-Requested-With': 'XMLHttpRequest',
    'Referer': 'http://match.yuanrenxue.com/match/2',
    'Accept-Language': 'zh-CN,zh;q=0.9',
    }

    params = (
    ('page', page),
    )
    response = requests.get('http://match.yuanrenxue.com/api/match/2',params=params, headers=headers, cookies=cookies, verify=False)
    return response.json()
    def run(self):
    dd_list=[]
    for page in range(1,6):
    cookies=self.get_cookie()
    html=self.total(cookies,page)
    data_list=[]
    for i in html['data']:
    value=i['value']
    data_list.append(value)
    dd_list.append(sum(data_list))
    print(sum(dd_list))

    if __name__ == '__main__':
    s=A()
    s.run()over结束



    }


    Sd()
  • 相关阅读:
    初学Python,对于开发工具不是很了解?一文带你选择适合你的开发工具
    Python文学家为Python写的一首词?(附中英文版)
    大数据到底怎么学: 数据科学概论与大数据学习误区
    Python写代码的时候为什么要注释?Sun因此被Oracle收购
    大数据分析:大数据时代如何发现身边的大数据?
    大数据经典学习路线(及供参考)之 一
    关于如何获取移动端 touchmove 事件中真正触摸点下方的元素
    webservice
    VS文件后缀名大全详解
    string 转 char* (C#)
  • 原文地址:https://www.cnblogs.com/wuxianyu/p/14534555.html
Copyright © 2011-2022 走看看