[007]爬虫系列

2023-11-02

一、备注

在阅读此文章前,请先阅读前两篇

本篇文章某个流程出了问题(即:直接贴代码,最后可能返回400)!!!有空再改!!!

 

二、分析

前两篇文章分别分析了cookie的生成!!!但是还是剩下了一些问题没解决:参数到底是什么???

备注:

因为前面两篇分开来写了!那么为了更好的显示出来m、f等参数对比,我们现在重新打开一个全新的网页,重新分析&对比!!!

2.1m&f

我们直接刷新几下网页!对比一下m&f有啥区别!

 

我们发现以下两点:

  • f后面三个0
  •  相差1000+ 

构造脚本:

import time

print('m',str(int(time.time() * 1000 + 1000)))
print('f',str(int(time.time())) + '000')

2.2key

由上面可以对比知道,key其实就是m减掉最后一位!!!

 

2.3_$8K["_$pr"]

续中篇:每次执行完_$Wa函数之后,就会_$8K["_$pr"]就会多一个!!!

 那么也就是说数组里面的数由_$f$()生成!!!我们现在试一下!

那么我们直接将_$f$()函数所需要的代码全部拿出来封装好!!!其实很简单:生成当前时间戳!!!

var _$R4 = Date
var _$UH_255 = "parse"

function _$f$() {
    return _$R4[_$UH_255](new _$R4())
}

我们还发现:每个_$f$函数生成的都会经过b函数再push到_$8K["_$pr"]里面!!! 

除了上面以外,我们调试(所有有_$8K['_$pr']都设置断点!!!查看_$8K['_$pr']的值变化!)&分析代码发现:m每次都会被更新,前面四次更新都代码一!!!最后一次更新在代码二!!!

// 代码一
_$Wa = _$f$();
_$Is[_$Fe] = "m=" + b(_$Wa) + "; path=/";
_$8K['_$pr']['push'](b(_$Wa));
......

// 代码二
_$yw = _$TT()[_$UH[31]]();
_$Is[_$Fe] = "m=" + b(_$yw) + "; path=/";
_$8K['_$is'] = _$yw;
_$8K['_$pr']['push'](b(_$yw))

那么我们现在来构造整一个代码:

const tmp = require('./tmp')

var _$R4 = Date
var _$UH_255 = "parse"
var _$UH_31 = "toString"

// 前四次更新m
function _$f$() {
    return _$R4[_$UH_255](new _$R4())
}

// 最后一次更新m
function _$TT() {
    return (new _$R4())['valueOf']()
}

console.log(tmp.b(_$f$()))
console.log(tmp.b(_$TT()[_$UH_31]()))

 测试:

备注:

要想直接引入tmp脚本里面的b函数,得修改一下代码(如下): 

 那么到这里整一个参数和cookie怎样形成的已经分析完了!!!下面我们来汇总代码!!!

 

三、汇总

3.1b函数生成(文件名:tmp.js)

_$UH_108 = "length"
_$UH_15 = "charCodeAt"
_$UH_31 = "toString"
_$r7 = String
_$UH_276 = "fromCharCode"
_$8K = {}
var _$ev = [], _$Uy = String.fromCharCode;
function _$HY(_$5X) {
    var _$HY = _$Uy(96);
    _$ev = _$Ch(_$5X).split(_$HY)
}
function _$Ch(_$5X) {
    var _$HY = _$5X.length;
    var _$o4, _$_Z = new Array(_$HY - 1), _$KJ = _$5X.charCodeAt(0) - 97;
    for (var _$Q_ = 0, _$TO = 1; _$TO < _$HY; ++_$TO) {
        _$o4 = _$5X.charCodeAt(_$TO);
        if (_$o4 >= 40 && _$o4 < 92) {
            _$o4 += _$KJ;
            if (_$o4 >= 92)
                _$o4 = _$o4 - 52
        } else if (_$o4 >= 97 && _$o4 < 127) {
            _$o4 += _$KJ;
            if (_$o4 >= 127)
                _$o4 = _$o4 - 30
        }
        _$_Z[_$Q_++] = _$o4
    }
    return _$Uy.apply(null, _$_Z)
}

_$HY('o~q}u`euf3ffdyrgfu`fkbu`xduv`wuf3ffdyrgfu`qsfya~`sq||`efdy~w`bdafafkbu`e|ysu`$_vb~W`eb|ysu`qbb|k`3sfyhuJArzusf`dueg|f`sxqd5atu3f`rgffa~`eu~t`vad}`ratk`}ageu}ahu`xqeAi~Bdabudfk`xaef~q}u`|asqfya~`abu~`eb|yf`euf;~fudhq|`xffbe,`s|ys{`sa~sqf`}ufxat`faEfdy~w`~atuFkbu`adywy~`v|aad`badf`$_~t`:F?>9u~udys7|u}u~f`fqw@q}u`saa{yu`$_<C~x`exai?atq|6yq|aw`du}ahu5xy|t`{uk5atu`bqdu~f@atu`wufFy}u`duqtkEfqfu`ujus`bqfx~q}u`euqdsx`fuef`yvdq}u`eufFy}uagf`:F?>8ad}7|u}u~f`hyeyry|yfk`qbbu~t5xy|t`qtt7hu~f>yefu~ud`y~tujut64`esdybf`a~duqtkefqfusxq~wu`uhq|`y~~ud:F?>`hq|gu`7{sB`|asq|Efadqwu`a~egr}yf`arzusf`bdafasa|`sa~fu~f`s|a~u@atu`y~tujAv`qeeyw~`idyfu`tasg}u~f`du}ahu7hu~f>yefu~ud`dag~t`efk|u`$_hh5;`dub|qsu`vg~sfya~`?ysda?ueeu~wud`geud3wu~f`ixy|u`a~s|ys{`y~bgf`suy|`?qfx`xyttu~`fqdwuf`|aqt`}rezmkexsv`~g}rud`sduqfu7|u}u~f`wuf7|u}u~fe4kFqw@q}u`wuf7|u}u~f4k;t`qffqsx7hu~f`$_vxV`s|yu~f6qfq`egr}yf`fy}uEfq}b`va~fe`A~|k a~u hqdyqr|u tus|qdqfya~ q||aiut y~ vadTTy~ |aab`fdq~eyu~f`qdyfk`tyeqr|ut`fkbuav`sxqdeuf`egbud`|u~wfx`#v*X`?ej}|XTJ?>:FFBTYTV`fa6qfqGD>`asd_dtkfigDsddqqmujgnh`qbb|ysqfya~5qsxu`}g|fybqdfUvad}Stqfq`hqd wuf3ffdyrgfu/vg~sfya~N~q}uOmdufgd~ sgd_u|uTwuf3ffdyrgfuN~q}uO-o-`qffdyrgfue`Marzusf 3ddqk]`bgex@afyvysqfya~`hayt`F=_EFD;@9`VVVV`qffdHudfuj`bgr|ys`efabBdabqwqfya~`l_,zcze~ld_VQR_+zxfiyzi9_jzcze~ld9xvcc,zcze~ld`$_vV`xqex`su||g|qd`8EE44`qssu|udqfya~`fdq~evud5xq~~u|`~7hdo5od|hu`fdgu`sduqfuArzusfEfadu`?ej}|XTJ?>:FFBT[TV`du}ahu3ffdyrgfu`b|gwy~e`o__vf{jwf_wjs~ishw6__kwtvf{jwf_wjs~ishw6__gw~wb{ia_wjs~ishw6__xlvf{jwf_wjs~ishw6__vf{jwf_ibkfsddwv6__kwtvf{jwf_ibkfsddwv6__gw~wb{ia_ibkfsddwv6__xlvf{jwf_ibkfsddwv6__kwtvf{jwf_guf{dh_xibu6__kwtvf{jwf_guf{dh_xb`fdkmdufgd~ Niy~tai y~efq~suav Iy~taiO-osqfsxNuOmo`?ej}|XTEudhudJ?>:FFB`sa|ad6ubfx`fWY/ebisbqf~|N3f}bq|k ,|~efkb 4kfNVllig|wwN5boa|k|N[bisbqf~| -brb +3 /ol FH 3efkNq|elj|N+Z 2j|oq_[ qbpq 1bdri|oNW(-/ol@ifdeqN[bisbqf~| +3 GF +fdeq XuqbkabaN[bisb,_(kaf|N2XV1l}lql+fdeq UliaN.1 ,le|kqv 4kf~lab 1bdri|oNWolfa 2|kp 3e|fN*|kk|a| 2|kd|j ,-NWWV 4~ebkN~il~hECDI_sDADN2|jprkd*|kk|a|1bdri|oN,( +T-3(-Z UliaN2|jprkd2|kp-rjF+ +fdeqNsboa|k|N[bisbqf~|-brb3efkN2XVY|ii}|~hN2|jprkdXjlgfN3birdr 2|kd|j ,-NV|oolfp Zlqef~ 2VNYivjb +fdeq 1l}lql +fdeqN2l,T@Wfdfq +fdeqN2l,V 2|kp 1bdri|oN[87f8r|k)NppqNp|jprkd@p|kp@krjG3Ndj_jbkdjbkdN+lefq *|kk|a|Nqfjbp kbt olj|kNp|jprkd@p|kp@krjG+Npbofc@jlklpm|~bN2|jprkd2|kp-rj@F3 3efkNVlilo.24(@73efkNWolfa -|phe 2efcq TiqN2|jprkd3birdr1bdri|oNUbkd|if .32N,( +|k3fkd_ZU .rqpfab 82NY9,f|l6r_ZUDKCFCNebisb@kbrb@obdri|oN223 ,bafrjNVlrofbo -btN*ejbo ,lkarihfof UliaN[bisbqf~| +3 EF 4iqo| +fdeq XuqbkabaN[bisbqf~| +3 EH 4iqo| +fdeqN1l}lql ,bafrjNWolfa 2|kp UliaNdlravNp|kp@pbofc@~lkabkpba@ifdeqN2YfkaboNklql@p|kp@~gh@jbafrjNjfrfN,1l~hv /1V UliaNTkaolfaVil~h 1bdri|oN2|jprkd2|kp-rj@G+ +fdeqNp|kp@pbofc@qefkNT|/|kd8|boN~|pr|iNU- ,le|kqv.3 UliaNu@ppqN-lql2|kp,v|kj|o9|tdvfN[bisbqf~| +3 FF 3efk XuqbkabaNTpeibv2~ofmq,3 TiqN-lql 2|kp Wbs|k|d|of 4(N1l}lql Vlkabkpba UliaN1l}lql ,bafrj (q|if~NjfrfbuN-lql 2|kp Zrojrhef 4(N223 5fbqk|jbpb +fdeqN+Z_.ofv|Nev~lccbbNu@ppq@riqo|ifdeqNWY[[url=mailto:bfT6J@TNY9967U3.3_4kf]bfT6J@TNY9967U3.3_4kf[/url]~labNWbs|k|d|of 2|kd|j ,- UliaNp|kp@pbofc@jlklpm|~bN/|a|rh Ullh UliaN+Z@Y98fkdUf*|f2er@2DH@5EAEN+Z@Y98fkdUf*|f2er@2DH@5EAFN[bisbqf~|-brb+3 /ol FH 3eN,f~olplcq [fj|i|v|N2|jprkd2|kpY|ii}|~hN223 ,bafrj (q|if~NTkaolfaXjlgfN2|jprkd2|kp-rj@F1N(3V 2qlkb 2bofcNp|kp@pbofc@pj|ii~|mpNu@ppq@jbafrjN+Z_2fke|ibpbN1l}lql 3efk (q|if~N~bkqrov@dlqef~NVil~hlmf|N+rjfklrp_2|kpNYilofaf|k 2~ofmq TiqN-lql 2|kp Zrojrhef UliaN+3[829* UliaNZ2_3e|fN2|jprkd-bl-rj_F3_ENTo|}f~Ne|kp@p|kp@kloj|iN+lefq 3birdrN[80f[bf@HC2 +fdeqN+fkapbv clo 2|jprkdNT1 Vovpq|iebf WUN2|jprkd 2|kp ,bafrjNp|jprkd@p|kp@krjGHNe|kp@p|kp@}liaN+rjfklrp_2~ofmqN223 VlkabkpbaN2|jprkdWbs|k|d|of1bdri|oNTkg|i ,|i|v|i|j ,-N2|jprkd3e|f;qbpq<NY9+|k3fkd[bf@,@ZUDKCFCN[b}obt .32NZ2GH_To|};Tkaolfa.2<N2|jprkd 2|kp +fdeqNVel~l ~llhvNebisb@kbrb@qefkN/- ,le|kqv.3 ,bafrjN+Z@Y9*|3lkd@,DL@5EAGNWolfa 2bofcN2|jprkd2fke|i|1bdri|oNebisbqf~|N+Z@Y9*|3lkd@,DL@5EAEN-lql 2|kp Wbs|k|d|of 4( UliaN223 +fdeqNWY/XjlgfNtb|qeboclkqkbt 1bdri|oN1l}lql-rjF1NW(-/ol@jbafrjN2|jprkd 2|kp -rjHHN223 [b|sv (q|if~N+Zil~hG 1bdri|o_CKCHNZblodf|Nklql@p|kp@~ghN3birdr 2|kd|j ,- UliaN,(4( X7 -loj|iN[80f[bf@JH2 UliaN-lql2|kp,v|kj|o9|tdvf UliaNvrklpmol@}i|~hNebisb@kbrb@kloj|iN+rjfklrp_2bofcN3, ,le|kqv.3 -loj|iN2|jprkd2|kp-rj@F+s +fdeqN2|jprkd 2|kp -rjGHN2j|oqZlqef~ ,bafrjNdblodf|N~|pr|i@clkq@qvmbN2|jprkd 2|kp UliaNpj|ii@~|mfq|ipN,Yfk|k~b /1V UliaNY9+|k3fkd[bf_ZUDKCFCN2|jprkdTojbkf|kN1l}lql UliaN~bkqrov@dlqef~@}liaNu@ppq@eb|svN223 +fdeq (q|if~N3e|o+lkNu@ppq@ifdeqNWfk}li 1bdri|oN2|jprkdUbkd|if1bdri|oN*- ,le|kqv.32j|ii ,bafrjNevmrobN2|jprkd3|jfi1bdri|oN,|i|v|i|j 2|kd|j ,-N-lql 2|kp *|kk|a| 4(Nebisb@kbrbN[bisbqf~| +3 HH 1lj|kN-lql 2|kp *|kk|a| UliaN2|kmv|N2|jprkd/rkg|}f1bdri|oNp|jprkd@p|kp@krjG+sN+Z_*|kk|a|N2|jprkd 2|kp 1bdri|oN9|tdvf@.kbNWolfa 2bofc Ulia (q|if~NY9*T3)6N~lrofbo kbtN2|jprkdXjlgf1bdri|oN,(4( X7 UliaNTkaolfa XjlgfN-lql -|phe To|}f~ 4(N+VW VljNYrqro| ,bafrj U3N5fsl@buqo|~qNU|kdi| 2|kd|j ,- UliaNe|kp@p|kp@obdri|oN2-rj@F1N2-rj@F3Ne|kp@p|kpN223 4iqo| +fdeqN1l}lql 1bdri|oN1l}lql +fdeqN[|krj|kNkbtiddlqef~NWY[bfT6H@TNe|kp@p|kp@ifdeqN/i|qb Zlqef~N2-rj@F+N[bisbqf~| +3 GH +fdeqN,v|kj|o 2|kd|j 9|tdvf UliaNid@p|kp@pbofc@ifdeqN,(4( X7 +fdeqN1l}lql 3efkN2l,T UliaN/|a|rhN2|jprkd 2|kpN2m|~flrp_2j|iiV|mNp|kp@pbofcNW5 ,le|kqv.3 ,bafrjN2q|}ib_2i|mNjlk|~lNYivjb@+fdeqNcwwvp@alpmvN2~obbk2|kpN~il~hECDIN1l}lql Vlkabkpba Ulia (q|if~NTof|iN*- ,le|kqv ,bafrjN,lqlv|+,|or 6F jlklN[|kapbq VlkabkpbaN1l}lql (q|if~N[3V [|kaN223 4iqo| +fdeq (q|if~N223 5fbqk|jbpb 1lj|kN-lql -|phe To|}f~ 4( UliaN~ekcwue@jbafrjN2-rjVlka@F3N~bkqrov@dlqef~@obdri|oNabc|riq_ol}lql@ifdeqN-lql 2|kp ,v|kj|oN,v|kj|o 2|kd|j ,-NTmmib Vlilo XjlgfNtb|qeboclkq1bdN2|jprkd,|i|v|i|j1bdri|oN|of|iNWolfa 2bofc UliaNV/lF /1V UliaN,( +T-3(-ZN2|jprkd*lob|k@1bdri|oNqbpqGH 1bdri|oNpmfofq_qfjbNWbs|k|d|of 2|kd|j ,-N2~obbk2bofcN1l}lqlN~ropfsb@clkq@qvmbN23[bfqf_sfslN~ekcwueN2|jprkd Vil~hYlkq FTN1l}lql Vlkabkpba 1bdri|oNp|jprkd@kbl@krjF1NZ) ,le|kqv.3 ,bafrjNVeriel -brb +l~hNol}lql@krjF+Nebisb@kbrb@riqo|+fdeqbuqbkabaN2|jprkd.ofv|1bdri|oN2|jprkd2|kp-rj@G+s +fdeqN,8fkd[bf_DKCFC_VE@UliaNWY/2e|l-s6H@ZUN1l}lql Ui|~hNebisb@kbrb@riqo|ifdeqNdj_ufebfN+Zil~hG +fdeq_CKCHNZrg|o|qf 2|kd|j ,-N,|i|v|i|j 2|kd|j ,- UliaNol}lql@krjF1N237febf_sfslNY99erk8r|k_ZUDKCFCNklql@p|kp@~gh@ifdeqN~lilolpN-lql 2|kp ZrojrhefN-lql 2|kp 2vj}lipN1l}lql +fdeq (q|if~N+lefq 3|jfiN~ropfsbNabc|riq_ol}lqlNUe|pefq|Vljmibu2|kp UliaN+Z_-rj}bo_1l}lql 3efkNjlklpm|~ba@tfqelrq@pbofcpN[bisbqf~| +3 FH 3efkNp|jprkd@p|kp@krjF+5NW(-/olN)ljlie|ofNp|kp@pbofc@ifdeqNebisb@kbrb@}i|~hN+lefq Ubkd|ifN,v|kj|o 2|kd|j 9|tdvfNWolfa 2bofc (q|if~N1l}lql Ulia (q|if~N-|krjZlqef~N2lkv ,l}fib 4W Zlqef~ 1bdri|oNZblodf| Ulia (q|if~Np|jprkd@p|kp@krjF+sNvrklp@qefkNp|jprkd@kbl@krjF3@~lkaN-lql 2|kp ,v|kj|o 4( UliaNidpbofcNY98lr[bf@1@ZUDKCFCN+lefq /rkg|}fN}|phbosfiibNp|jprkd@p|kp@krjG3sNp|jprkd@p|kp@qefkN+Z XjlgfNTkg|if-bt+fmfN2|jprkd2|kp-rj@G3 3efkN2|jprkd*lob|k@UliaNjfrfbu@ifdeqN-lql 2|kp *|kk|a|N1l}lql -loj|i (q|if~NZblodf| (q|if~Np|kp@pbofc@jbafrjN2j|oq 9|tdvfN1l}lql Vlkabkpba (q|if~N-lql 2|kp *|kk|a| 4( UliaNWY/ 2~ 2|kp [brbFC_DCFN+Z_-rj}bo_1l}lql UliaN/|a|rh UllhNu@ppq@~lkabkpbaN2rkpefkb@4~ebkN1l}lql Ui|~h (q|if~N1fkdl Vlilo XjlgfNWbs|k|d|of .32N2j|oq 9|tdvf /olNY9+|k3fkd[bf@,@ZU*NTkaolfaVil~h@+|odb 1bdri|oNmolmloqflk|iiv@pm|~ba@tfqelrq@pbofcpNVrqfsb ,lklNqfjbpN+Z 2j|oq_[ qbpq UliaNW(-/ol@+fdeqNp|kp@pbofc@}i|~hN+lefq Wbs|k|d|ofNmolmloqflk|iiv@pm|~ba@tfqe@pbofcpNp|jprkd@p|kp@krjF+N,8lrkd /1V ,bafrjNWYZlqef~/6H@U(ZH[*@2.-8Ne|kp@p|kp@jbafrjN223 [b|svN+Z@Y99erk8r|k@,CE@5EAEN,v|kj|o4-bt 1bdri|oN-lql -|phe To|}f~ UliaN2|jprkdZrg|o|qef1bdri|oNc|kq|pvNebisb@kbrb@ifdeqN[bisbqf~| -brb .32 UliaNklql@p|kp@~gh@}liaNp|jprkd@p|kp@krjF1N+fkapbv 2|jprkdNp|jprkd@p|kp@krjF3N2~obbk2bofc,lklNX3orjm ,v|kj|o_96Nebisb@kbrb@qefkbuqbkabaN-lql -|phe To|}f~N+Z_Zrg|o|qfN2j|oq_,lklpm|~baN3|jfi 2|kd|j ,-N+Z Xjlgf -lkT,XN1l}lql Vlkabkpba +fdeq (q|if~Ndj_gfkdh|fNY9+|k3fkd*|k[bf_ZUDKCFCNidqo|sbiNm|i|qfklNZblodf| UliaNWolfa 2|kpN+Z_/rkg|}fN2j|oqZlqef~ UliaN2|jprkd 2|kp 3efkN223 Vlkabkpba UliaNVljf~p_-|ooltN~lrofboN.ofv| 2|kd|j ,-Nebisb@kbrb@ifdeqbuqbkabaNY9+|k3fkd[bf@1@ZUDKCFCNT1 Vovpq|iebf[*2V2 WUNpbofcN13628rb1lraZlZCsD@1bdri|oN,f|l6r_mobsNY98D*N+Z_-rj}bo_1l}lql 1bdri|oNTkaolfaVil~hN2l,T 1bdri|oN[80f[bf@GC2 +fdequNid@p|kp@pbofcNW|k~fkd 2~ofmq UliaNabc|riqNpb~@ol}[url=mailto:lql@ifdeqNVlilo.24]lql@ifdeqNVlilo.24[/url](@1bdri|oNqbpq 1bdri|oN3|jfi 2|kd|j ,- UliaNY98fkdUf7fkd2er@2DIN1l}lql-rjF+ +fdeqNjlklpm|~ba@tfqe@pbofcpNp|jprkd@p|kp@krjFHNVlli g|wwN2|jprkd-bl-rj@F+N237fkdh|fN2~obbk2|kp,lklNWY/6|6|6H@ZUN2|jprkd2|kp-rj@F+ +fdeqNU|kdi| 2|kd|j ,-NZrojrhef 2|kd|j ,-N2XV1l}lql+fdeqNevclkuo|fkN,8fkd[bfZUDKCFCV@UliaNp|jprkd@p|kp@ifdeqN[bisbqf~| +3 IH ,bafrjNWolfa 2|kp Y|ii}|~hN1l}lql 3bpqD UliaN-lql 2|kp ,v|kj|o UliaNp|kp@pbofc@~lkabkpba@~rpqljN2|jprkd-bl-rj@F3N2|jprkd 2|kp -rjFHNjlklpm|~bN3+ ,le|kqv ,bafrjNebisb@kbrb@jbafrjN+3[829*N1l}lql Vlkabkpba ~rpqljb UliaN,v|kj|oFNWolfa 2|kp Wbs|k|d|ofN2e|l-s_mobsNp|jprkd@kbl@krjF+NY9+|k3fkd[bf@X+@ZU*NvrklpNp|jprkd@kbl@krjF3N3fjbp -bt 1lj|kNebisb@kbrb@}liaNklql@p|kp@~gh@obdri|oN-lql 2|kp Zrojrhef 4( UliaNW(-/ol@}i|~hNY9+|k3fkd[bf@X+@ZUDKCFCN223 5fbqk|jbpb ,bafrjN1l}lql Vlkabkpba +fdeqN223 5fbqk|jbpb UliaNT1 W)@**NWolfa 2|kp 2X,VN-lql 2|kp ,v|kj|o 4(NVljfkd 2llkN,8rmmv /1V ,bafrjN1lpbj|ovN+lefq Zrg|o|qfN1l}lql Vlkabkpba ~rpqlj UliaNY9+|k3fkd[bf2@1@ZUN[bisbqf~| -brb .32N*|fqf_mobsN1l}lql@UfdVil~hNY98U*2)6N[|kapbq Vlkabkpba UliaN2|jprkdZblodf|kNW|k~fkd 2~ofmqNp|kp@pbofc@~lkabkpbaNe|kp@p|kp@qefkN2|jprkd2|kp-rj@G3s 3efkN+lefq .af|NUe|pefq|Vljmibu2|kp`y~efq~suav`qtt4uxqhyad`9ufAdywy~q|Gd|`sa~~usfya~`y~s|gtu`vdq}u`dufgd~ qMr]N`sxy|tdu~`2turgwwud`\'~g||\' ye ~af q~ arzusf`vg~s`$_h<Fb`dvdajhs)hccdm`esduu~K`@g}rud`vq|eu`eds7|u}u~f`d$1qd6XWqnvrdqXk~rrhbA6XWqnvrdq.drr~fdXdmsdq`gd|N#tuvqg|f#geudtqfqO`eufDucguef:uqtud`y}badf`}ageuAhud`}ufq`?ej}|TJ?>:FFB`v@p:zm3tww3z}xAzzwM@zrzb:~p`~qfyhu`wq}}q`wufFy}ula~uAvveuf`tqfqeSfe`__a~|aqt__`g5+.h{uan@-U6`zresxu}u,UUcgugu_xqe_}ueeqwu`eufFy}u`yfu}`?76;G?_8>A3F`_r|q~{`v|aqf`#W)u`ujfu~te`v__dpmo}tcp}_~n}t{a_qy`Ducguef`?ej}|XTEudhudJ?>:FFBTYTV`s|yu~f;~vad}qfya~`fxu~`?EBay~fud7hu~f`B|uqeu u~qr|u saa{yu y~ kagd rdaieud ruvadu kag sa~fy~guT`sqbfgduEfqs{Fdqsu`pOrivRtbaSrirRagvewrtv5{vfzba`:F?>Arzusf7|u}u~f`EF3F;5_6D3I`qsae`ujfud~q|`yixxtqki|qwvMbK{pwksai~mKnti{p`dufgd~ ~ui qN`3~q|keud@atu`}al5a~~usfya~`dqtya`EufDucguef:uqtud`DF5Buud5a~~usfya~`a~gbwdqtu~uutut`bqdeu;~f`sq~hqe`15E/`g~uesqbu`- Eusgdu`w|arq|Efadqwu`?ej}|XTJ?>:FFB`p[vr}+zuvb7[vr}+zuvb1g~2 Jtgziv- Lbageb} 1<;6szg2`?ysdaeavfTJ?>:FFBTWTV`sqfsx`Budvad}q~suAreudhud`wuf5a~fujf`tuvqg|fBduhu~fut`avveufFab`sa~fqy~e`tqfq,`$r_b|qfvad}`xffbe,UU`:;9:_;@F`arzusfEfadu@q}ue`fxye`skw<Q`CC4daieud`Ahuddytu?y}uFkbu`ljzcze~ld`iytfx`}ageu?ahu`sxqd`|>jg?43tl4xl_<508<,_`rweag~t`y7wd+xxmizivkm`baeyfya~`sqeu`b6lzqfE[fufdujpo`fagsxu~t`duvduex`$r}8VqJL|D}|HkG:<`bdab`|qef;~tujAv`sq||rqs{`~g||`G~u~s|aeut efdy~wT`t@dvpxCvzrQ@dvpxCvzr`rD~v~f`wuf3ffdyr>asqfya~`<EA@`~atuHq|gu`9q}ubqt`rufq`__q~sxad__`avveuf>uvf`{c\\yF\\Ctgzo|k iujk\\]\\yFe`bqdeu`tqfq`$_vd`bqs{qwu`daie`ArzusfT;~zusfutEsdybfTuhq|gqfu`abu~ud`}ageugb`exu~zyq~`turgwwud`ufxud~uf`$_s6da`F7?BAD3DK`mmyvxh}lyh`dub|qsu5xy|t`BAEF`~g};fu}e`sqbfgdu`tasg}u~fSvdqw}u~f`va~f`vydef5xy|t`vda}5xqd5atu`iur{yf;~tujut64`Bay~fud7hu~f`iur{yfDucguef8y|uEkefu}`sxqd3f`tuesdybfya~`pfcz_ybb|vu5~bmJaz~rgzba(greg)z~v5~bmRauvkvuMK5~bm[vdhvfgJaz~rgzbaOer~v`wuf4qffudk`{;?+zrJ;?+zr`qrea|gfu`dueba~euFujf`saa{yu7~qr|ut`mdyjifuhayh8__di8__diMffydx,ynj8ye/yvNhemiyh`vy~q|`bdu|aqt`=ukraqdt`r|gufaafx`sq~su|4grr|u`ujusEsdybf`fdkmdufgd~ __vy|u~q}u-osqfsxNuOmo`hqd sgd_u|u / fxye-`iyfx`x__bnkm{ran{_naju~j}n`efqfge`fa8yjut`tyeb|qk`egrefd`M~g||] ye ~af q~ arzusf`jPzkh+SU=+SU`L*J:<<KTr}8VqJL|D}|HkG:<NO`euf;fu}`.U$W`|aqtut`Du}ahu7hu~f>yefu~ud`a~qgfasa}b|ufu`$r_sq||:q~t|ud` edv|j `bdafusfut`}qfsx`wafa`tdqi3ddqke`}utyq6uhysue`s|aeu`iurefadu`iur{yfDF5Buud5a~~usfya~`5ag~f`fujfUzqhqesdybf`qrefdqsf`budvad}q~su`Efadqwu`w$ryyu$L$$vyqqo|L$$v}zL$$v}|lL$rnd$L$|okne/yno-v|okne1doma~on5x@rs}2|kwoL$}nd$L$aso$`|q~wgqwue`$_vr`euf>asq|6uesdybfya~`eagdsu`U,geud_va~fe`F=_@G?47D`esda||`$r_vufsxCgugu`.!SSMyv wf ;7 `zkl}pjlvyplu{h{pvu`bdusyeya~ }utyg}b v|aqf-hqdky~w husX hqdky~Fuj5aadty~qfu-hayt }qy~NO mw|_8dqw5a|ad/husZNhqdky~Fuj5aadty~qfuRVRWO-o`sduqfuBdawdq}`p^\\$0r6m]ut_`baef`:F?>7|u}u~f`fujfUxf}|`.!SS`arzusfEfadu`v}xzneO?plw=wlfp} 4S 0zya}zwOR`|y~{Bdawdq}`bdusyeya~`yu{~q{qjqtq|ckpivom`7~fyfk`p~fLevuvagzr}f`cds{|}6a7jfxI<y:3bWeHK=GYD8?Ci*;9vBA+Xrh>@zT)lJ4qE~gVF5(wk_ZLu[tmonp !#$%NOPQRS-/12M]^`g~yvad}Xv`zqhqesdybf,`p*L,vsNkg5htjvs`dub|qsuEfqfu`ha|qfy|u`sduqfu6qfq5xq~~u|`geu efdysf`adywy~q|Fqdwuf`u__ru~qr{f__N_ru~qr{f_@qmpq~;{pq`zqhqesdybf, haytNVO-`G~ujbusfut sxqdqsfud, `m"abfya~q|" , M m"Dfb6qfq5xq~~u|e" , fdguo ]o`G~fud}y~qfut }g|fy|y~u sa}}u~f`UF)3kFdjaIj9t`Egr}yf`fy}u`dueba~eu`dq~wu?y~`fdy}`sxus{raj`L*J:z`sa~ef`E7>75F hq|gu 8DA? 7{sB_f I:7D7 ~q}u/1`8|aqfYX3ddqk`9ufDueba~eu:uqtud`avveufJ`s#dP^b#:#d{|d{}d{6d{ad{7d{jd{fd{xd{Id{<d{yd{:d{gd|fdE6`duvuddud`k*RT<*z|Qljd`~atu@q}u`wufDueba~eu:uqtud`.}ufq\\eQxffbSucgyh/M"\']1duvduexM"\']1\\e`ek~sxda~ylut`ujbadf`vy|u~q}u`abu~6qfqrqeu`b__ds:fcC__hZs:fc`u~qr|uHudfuj3ffdyr3ddqk`xffb,UU`xuywxf`eqvqdy`E7@6`zresxu}u,UU`bnp{wjtjcjmjuzdibohf`G~u~s|aeut duwg|qd ujbdueeya~T`iur{yfBudeyefu~fEfadqwu`ww}4snnox`___fe___`s|qee`dg~fy}u`}al;~tujut64`bqdu~f7|u}u~f`?yeey~w sqfsxUvy~q||k r|as{e`sK#d6343E3~3V3F3(WJe.e0HiD-8~8$8%8 ?c?*?;?9CcCxCIC:C3CbC?CrChC^C&CPihi)ili~igiL*s*{*a*e*H*K*T;c;d;s;|;};6;?;C;_;Z;L9C9*9;999h9>9S9)9l959(929$vjv^v&vPvNvOvoB}AzASA(AwAnA +w+_+Z+2+$+%+&+P+N+O+,+-X}X6XXXrrGrvr)rlr.r0hZhP>f>x>OzGzvzBSXSrS2S%S&S/S.)g)_)ZlvJlJJJgJ_JZJLJuJ[JtJpJ 4c4d4s4S4)4l4J44454w4&(p$a$7$h$>%W%B%A%+%k&mN;N9N>N@NzQyQ:/|/}/2/$/%/0/T/1/U/,.e0tT=TGTiT*T+TXTr1j1f1x1z141q1E1~1g,x,I,<,ym6mWmG#!#d{3d{bd{$d{%d{ d}gd~&d~P}v!}vT}v1}A3}Ab}rG}r?}r9}rw}rk}r_}rZ}rL}hL}hu}>h}z{}z|}zV}Sx}SI}S<}SW}Se}SH})J})4})q})E})~})g})V})F})2})/}).}lv}l]}J|}J}}Jx}JI}Jy}EX}Er}Eh}E>}E@}Ez}ES}E)}EJ}E47fC7e37eb7=b`qffdyrgfu husX qffdHudfuj-hqdky~w husX hqdky~Fuj5aadty~qfu-g~yvad} husX g~yvad}Avveuf-hayt }qy~NOmhqdky~Fuj5aadty~qfu/qffdHudfujQg~yvad}Avveuf-w|_Baeyfya~/husZNqffdHudfujRVRWO-o`raa|uq~`bgexEfqfu`du}ahu;fu}`\x00`sxqdqsfudEuf`kk{d{fame;{nwdmwl{`kyu|t`dufgd~`rqffudk`vad7qsx`y}b|u}u~fe`uhq|gqfu`|y~u~a`?ej}|XTJ?>:FFBT(TV`F=_D79_7J`wufEgbbadfut7jfu~eya~e`mxebf|}d8xebf|}d}dze8xebf|}dcyju`dwrqNXZVRWWVR[YRVTZO`?ej}|XTJ?>:FFBTZTV`}al;fu}e`s|uqd;~fudhq|`fxdai`q/sq~tytqfu,`$_s{`3radf`sxus{ut`avveuf:uywxf`9ufHqdyqr|u`avveufIytfx`eu|usfut`|qkudJ`tu|ufu`Nuhq|gqfy~w \'~g||MV]\'O`efq~tq|a~u`esduu~`Duw7jb`s|yu~fK`sxqdwy~w`}ueeqwu`Eu~t`}y}uFkbue`wuf;fu}`Yzu3>uEeq(`sxda}u`va~f8q}y|k`tuvqg|f`uhu~f`wufG~yvad}>asqfya~`NfxyeO-`G~ujbusfut fa{u~ `fdq~eqsfya~`adyu~fqfya~`wufEagdsue`g~tuvy~ut`M~qfyhu satu]`CFB_7B7_:AA=`vufsx`hytua`:F?>3~sxad7|u}u~f`bdbqudib5fgsftiCdbqudib_sfgsftiCdifdl/phjoCefdszquZbmmcbdl`iur{yf5a~~usfya~`iyvy`.7?476 yt/`6A?Bqdeud`;||uwq| ~ui|y~u qvfud 2fxdai`avveufG~yvad}`{uk6ai~`dufgd~Hq|gu`|a~w`sxqdwy~wFy}u`AB7@`etgqg~gjgrwaf}lec`\\rM^0]P0NM\\e\\E]P1O.\\U`}ageuAgf`_fe_`sa~fy~gu`iurw|`}ageuGb`u~g}udqfu6uhysue`egrefdy~w`esduu~J`g0a{h.h{uan@0a{h.h{uan:pi; S}pera6 Ukjpnkh :ED?|ep;`|uhu|`.tyh0;7*.Utyh0`$r_eufgb`vy||Efk|u`sq~tytqfu`- bqfx/U`xffb`eiyfsx`s|yu~fJ`puezive`rkfu`u~qr|utB|gwy~`dq~wu?qj`a~ruvadug~|aqt`u~saty~w`bqdu~f`}ageutai~`\\\\`efqfys`}ageuagf`wufExqtudBdusyeya~8ad}qf`hudfuj3ffdyrBay~fud`z~likyp}lyJl}hs|h{l`3ttEuqdsxBdahytud`efqfgeFujf`dD#d,s{s77+7rjMj]fIfW:BW)Wle_eQe/emeoHxHC=x=T=1=o8g8&?y?:?)?l?1CdCWC9CvCVCFCmCoiii*i9iviAi+iO*%*^*1;j;D;8;N;O9W9e9i9L9u9,vfv9vvvAvXvrvzvSvnAWAlAJAFA5+kXdX{X|rarzrShJ>Q>/@p@!@$@&@P@O@.zxz<z3zbzYzDzAz)z2z$S<J!4f4y4:4(q.V%Fm%g%w&o1(1w#X#dd:ddbddeds?d|Cd|zd}od6cd6yd6id6;d6vd6PdaAda+d@udS/dExdEIdE!dE2dLgslJsJ9}yq}9M}9]}+-}+m}E26]G7f?7fL7f[7ft7f!7f2`pJxLbageb}7JxLbageb}`?76;G?_;@F`uddad`|rta/niijs`q|bxq`{ukGb`nwxk|vxbdi|dc`exqtudEagdsu`cds{|}6a7jfxI<y:3bWeHK=GYD8?Ci*;9vBA+Xrh>@zS)lJ4qE~gVF5(wk_ZLu[tp!2$%^&PNOQ/.0T1U,-moM]n `bqeeiadt`~ujfEyr|y~w`$_fe`dq~ta}`sduqfuAvvud`3DEueeya~R3gtyaFdqs{>yefR4uvadu;~efq||Bda}bf7hu~fTbdafafkbuT=7KGBR4|ar6ai~|aqt5q||rqs{R563F3Eusfya~TbdafafkbuTdu}ahuR5EE5xqdeufDg|uR5EEBdy}yfyhuHq|guT5EE_H:R5q~hqeDu~tudy~w5a~fujfX6TbdafafkbuTiur{yf9uf;}qwu6qfq:6R5|ys{6qfqR5|aeu7hu~fTbdafafkbuTy~yf5|aeu7hu~fR5a}ba~u~feTy~fudvqsueT;5a}uf?qd{e7jfu~eya~R6uhysuAdyu~fqfya~7hu~fR8g~sfya~TbdafafkbuTry~tR9ufBudvFuefeR:F?>6asg}u~fTbdafafkbuTsduqfuFagsx>yefR:F?>8ad}7|u}u~fTbdafafkbuTducguef3gfasa}b|ufuR:F?>8dq}uEuf7|u}u~fTbdafafkbuTxqeBay~fud5qbfgduR:F?>8dq}uEuf7|u}u~fTbdafafkbuTiur{yfDucguef8g||Esduu~R;~f|R?FF_I=EufFujfEylu;~tujR?utyq5a~fda||udR?utyq7~sdkbfut7hu~fR@afyvysqfya~RArzusfTbdafafkbuT__tuvy~uEuffud__RArzusfTeuq|RArzusfTeufBdafafkbuAvRAvvesduu~5q~hqeDu~tudy~w5a~fujfX6RBqfxX6TbdafafkbuTqttBqfxRBqk}u~fDueba~euRBudvad}q~suBqy~fFy}y~wRBdueu~fqfya~5a~~usfya~5|aeu7hu~fRDuqtud?atu3dfys|uBqwuREH99dqbxyse7|u}u~fTbdafafkbuT}alDucguefBay~fud>as{REH9Bqffud~7|u}u~fTEH9_G@;F_FKB7_A4<75F4AG@6;@94AJREsduu~Adyu~fqfya~REawag>awy~Gfy|eREagdsu4gvvudREagdsu4gvvudTbdafafkbuTsxq~wuFkbuREbuusxEk~fxueyeGffudq~suRFujfFdqs{>yefTbdafafkbuTwufFdqs{4k;tRG5Iur7jfRIur=yf8|qweR_IJ<ER__$_cyxaaY(V_$__R__vyduvaj__R__{eqr5ee5ag~fR__abudqR__eawag_eusgdu_y~bgfR_tagr|uWW_Rsxda}uRsxda}uTqbbT;~efq||EfqfuRsxda}uTseyRsa~ea|uRtuvqg|fEfqfgeRtasg}u~fTratkTa~}ageuu~fudRtasg}u~fTratkTa~bqwuRtasg}u~fTratkTefk|uTrqs{wdag~t4|u~t?atuRtasg}u~fTratkTefk|uT|y~u4duq{Rtasg}u~fTratkTefk|uT}y~IytfxRtasg}u~fTratkTefk|uT}eFujfEylu3tzgefRtasg}u~fTratkTefk|uTfujf3|yw~>qefRtasg}u~fTratkTjS}eSqssu|udqfad{ukRtasg}u~fTtuvqg|f5xqdeufRtasg}u~fTtasg}u~f7|u}u~fTa~dueyluRtasg}u~fTvy|u5duqfut6qfuRtasg}u~fT}e5qbe>as{Iqd~y~wAvvRtasg}u~fTa~}ageu}ahuRtasg}u~fTa~eu|usfya~sxq~wuRtasg}u~fTesda||y~w7|u}u~fTefk|uTva~fHqdyq~f@g}udysRtasg}u~fTeu|usfya~Rtasg}u~fTeu|usfya~Tfkbu6ufqy|Rujfud~q|Rujfud~q|T3tt8qhadyfuRujfud~q|T;eEuqdsxBdahytud;~efq||utRv|kv|ai_iq||bqbud_zeRwuf?qfsxut5EEDg|ueRwduu~fuqRye@atuIxyfuebqsuRzueya~Ra~uddadRa~}ueeqwuRa~abudqtufqsxuthyuisxq~wuRabu~6qfqrqeuRbqeeiadt_}q~qwud_u~qr|utRbudvad}q~suRexai?atq|6yq|awRfqardaieud_7hu~fRiuqfxud4dytwuRiur{yf3gtya5a~fujfTbdafafkbuTs|aeuRiur{yfDucguef8y|uEkefu}`avveufK`vy~q||k`p__~ggLevrgvOer~v5~ggLh~fgb~S(`rqeu`Budvad}q~suAreudhud7~fdk>yef`qffqsxExqtud`u~qr|u/fdgu`a~ysusq~tytqfu`fdkmdufgd~ __tyd~q}u-osqfsxNuOmo`;@E7DF AD D7B>357 ;@FA 7{sB_f N~q}uR hq|guO H3>G7EN1R 1O`ye@q@`?ageu`q~tdayt`{ukgb`6uhysuAdyu~fqfya~7hu~f`m             \"ysuEudhude\" , M                 m"gd|" , "efg~,efg~VWTeybbxa~uTsa}"oR m"gd|" , "efg~,efg~Tu{ywqT~uf"oR                 m"gd|" , "efg~,efg~Tvit~ufT~uf"oR m"gd|" , "efg~,efg~TytuqeybTsa}"oR                 m"gd|" , "efg~,efg~Tybfu|Tadw"oR m"gd|" , "efg~,efg~Tdyjfu|usa}Teu"oR                 m"gd|" , "efg~,efg~Tesx|g~tTtu"oR m"gd|" , "efg~,efg~T|Twaaw|uTsa},W+YVX"oR                 m"gd|" , "efg~,efg~WT|Twaaw|uTsa},W+YVX"oR m"gd|" , "efg~,efg~XT|Twaaw|uTsa},W+YVX"oR                 m"gd|" , "efg~,efg~YT|Twaaw|uTsa},W+YVX"oR m"gd|" , "efg~,efg~ZT|Twaaw|uTsa},W+YVX"o             ]         o`fxdaie`@q}u ujbusfut`q|udf`6uhysu?afya~7hu~f`sdutu~fyq|e`q~sxad`hudfujBae3ffdyr`>AI_8>A3F`prcc(traL}zt|5rcc(traObthfXhg5rcc(traTvlMbja5rcc(traTvl*c`qgtya`hqd egr}yf/vg~sfya~NOmvadNhqd f/sgd_u|u-f!//tasg}u~f&&N!fTfqw@q}unn\"vad}\"!//fTfqw@q}uTfa>aiud5qeuNOO-Of/fTbqdu~f7|u}u~f-f!//tasg}u~f&&fTegr}yfNOo-`qduq`W*bj \'3dyq|\'`ai~ud6asg}u~f`?ej}|XTEudhudJ?>:FFBT(TV`?ej}|XTEudhudJ?>:FFBT[TV`fuefe`?ej}|XTEudhudJ?>:FFBTZTV`9uf@ujfDuc;6`fujfqduq`tasg}u~f7|u}u~f`tuhysu;t`abfya~e`g~ysatu`ruxqhyad`tufqsx7hu~f`y~fudvqsu`vdq}ue`ujusgfuEc|`vy||Fujf`g~yvad}Avveuf`F=_@3?7`dM#7wjTIn<s3d3lbhbEWjWCeZe!e%eOe1e-HLH]=c=f=^=0GGG8GCG+GrG>GzGJD1D,8V858(8[8t828P8/CsC|C}C7i@iSi5iw*U*-*m*n9v9+v0v1v,vmB4BEAeAKA=ADA?AiA;AB+L+pr7rfrxryr3rWrHr=hph2h$h^hOhU>.>-@6@<z8z;zJzg)X)~)V)w)%)/)0lGJ4J~JVJk4a4j4x4<434=484i4q4F4$4^292B2p22%e%D%8%v%X%4^y^3NYN8N?N*NvNANSNqNENgO1Q6/6/7/^///-.c.d.6.a.30Z0[TYTCT;TAT0TM1S1JUo,s,{,f-T-U--m}mam<Mg]c]G]D#B#d}Bd}Jd}(d}2d>=d>YdzMdS?dEqdEF}>G}>r}>$}>o}@q}@(}@,}zs}zE}zg}Sy}Sb}SK}SY})>})l}l }Jd7W57W^7W]7e{7ez7e)`eu|v`ujbudy}u~fq|Siurw|`000/`9uf3||Dueba~eu:uqtude`u__?B>__6==9_<=B7473@`5D73F7 F34>7 ;8 @AF 7J;EFE 7{sB_f Nyt ;@F797D @AF @G>> BD;?3DK =7K 3GFA;@5D7?7@FR ~q}u F7JF @AF @G>>R hq|gu F7JF @AF @G>>R G@;CG7 N~q}uOO`- ujbydue/`ht8}`tyebqfsx7hu~f`6yebqfsx7hu~f`3DD3K_4G887D`rr*X{z`tagr|u`tg}b3||`\uFEFF`va~f>yef`vy||Dusf`8g~sfya~`efdy~wyvk`fa>aiud5qeu`eqhu`>AI_;@F`bqdeu8da}Efdy~w`fa9?FEfdy~w`}ageuahud`u|u}u~fe`a~uddad`k6|mfylagf67 snwj w K f{o Rwl{67I z{xm}}{jI j{lmjf f{o Rwl{67 ; w L ?>>Iu677`g~exyvf`J?>:ffbDucguef`qbbHudeya~`}e5dkbfa`NMVS+]mWRYoN\\TMVS+]mWRYoOmYon NNMVS+qSv]mWRZo,Om)R)oMVS+qSv]mWRZonNMVS+qSv]mWRZo,OmWR)o,nNMVS+qSv]mWRZo,OmWR(o,MVS+qSv]mWRZonNMVS+qSv]mWRZo,OmWR[oN,MVS+qSv]mWRZoOmWRXonNMVS+qSv]mWRZo,OmWRZoN,MVS+qSv]mWRZoOmWRYonNMVS+qSv]mWRZo,OmWRYoN,MVS+qSv]mWRZoOmWRZonNMVS+qSv]mWRZo,OmWRXoN,MVS+qSv]mWRZoOmWR[onMVS+qSv]mWRZo,NN,MVS+qSv]mWRZoOmWR(oOn,NN,MVS+qSv]mWRZoOmWR)on,On,,NvvvvN,VmWRZoOmVRWo,OmVRWoNNX[MVS[]nNXMVSZ]nWmVRWoMVS+]OmVRWoMVS+]O\\TOmYRYoNX[MVS[]nNXMVSZ]nWmVRWoMVS+]OmVRWoMVS+]OnNMVS+qSv]mWRZo,OmWRZo,NNX[MVS[]nNXMVSZ]nWmVRWoMVS+]OmVRWoMVS+]O\\TOmYRYoNX[MVS[]nNXMVSZ]nWmVRWoMVS+]OmVRWoMVS+]OO O`FD;3@9>7_EFD;B`lxvcc)}vekfd9_g}vekfd`eufEudhud6qfq`a~egssuee`biq_jefoujgjfs`xffbSucgyh`g~ujbusfut ~g}rud u~ty~wT`\r\n`iy}qj` xaef `fujf4qeu|y~u`bduhu~f6uvqg|f`cexit(ullscreen`:;9:_8>A3F`gfvS*`g~|aqt`sa}by|uExqtud`G~ujbusfut fa{u~, `]0.y0.Uy0.!Mu~tyv]SS0`}ageu6ai~`ahuddytu?y}uFkbu`agfud:F?>`8EE43`xaef`yfu}Eylu`geuBdawdq}`wn|sbo|Mobkvak~o`uesqbu`gsa|gepreoe|ehepu}d{jca`H7DF7J_E:367D`?utyqEfduq}Fdqs{`Abu~`fagsxue`d#!#s #ddd7dvsys+srs%s&a-an7j7Y7Cj1jmfcf{fyf3fHfhf@xBx+IM<}y^ym:;:z:U3pbdbabjbwW7W4ewH6H7H*HZKcK =+=%Dm848T8n?Y?C?B?@?q?^?P?0?m?]CACXCOCTCnieiKi?i%iP*|*6*G*;*v*A*X*_*L*2*P*/;[;^;.979f939K9D9t9!vIvbvKvGvDvCv4vEvFvpBgB_BLB[BpB]B A7AfAy+d+7+f+I+y+++r+4+E+FX>X4XEXgXFX/X0r{r%rOr1hahxhBh+h)hEh(>D>N> @}@m@]@ z}zazjzez=zrzzS0SoS])9)L)tJsJ)J-Jn4{464G4D4*4z4OqKq9qQqUEUE]~p~&g[g^VVV5VkVLV2V&VOV.F?FiF9FAF$F^FNF/F,FMF 5s535W5Q5.515-(Zw7wGw>kAkqp)p4p5p!!d!a!,2y282C2;2J2t2T$6$K$v$A$X$F%:^A&v&z&-P,NHNNOIO:OeO;ONQaQ<Q&/{0pTKThTl1I1@UqUm,+,r,E,omXM~]8#d]#dc+dchdc)dc4dcodcndd{dd6dd<ddKddgdd5dsbdsedsDds;dsvdsAds@dsldsqdsgdswdsudsOds1ds,dsmd{cd|Zd|td6{d6Id6Wd6=d6Ad6rd6>d6~d6Fd6wd6[d62dX~dradrjdr(drkdrNdrQdr]dhcd>xd>hd>.d>nd@gd@TdzxdzKdz?dzidzAdzXdzSdzldzgdzFdzZdzudz$dz^dz/dz0dzmdE(dEZdEPd~$d~Qd~.d~TdgTdgUdgmdVcdV>dV)dFqdF2d5cd5kd5N}:H}C?}i5}9(}9Z}9Q}vW}vE}vV}vp}v,}B3}A(}At}A2}+1}r3}r=}rY}r8}rC}r;}rv}r(}rM}h4}h[}>=}@H}@4}@_}@U}S })h})t})!})$})Q7|H7a57ak7787797jq7jn7f|7fb7fK7fi7fr7f>7fV7f57f_7f%7x]7I;73X73w7b*7bv7b]7Wr7WE7e07e,7em7Kh7K.7=I7=e7=)7=w7G(7GZ7Gp7G$7GN7G/7GU7Gm7GM`y}qwu`N~uqd \'TTT ~g||MV]TTT\'O`|qkudK`dueba~euJ?>`y~eudf4uvadu`eudhud6qfq`?ej}|YTJ?>:FFB`epkmavB2c}j0j}wcp [F Wmlrpmj`y 9:<M`?ysdaeavfTJ?>:FFB`rduq{`dueuf`ye8y~yfu`o)zcu}ksjwP~sgz8)zcu}ksjwP~sgz`ai~ud7|u}u~f`}e;~tujut64`wuf3||Dueba~eu:uqtude`qradf`3tt7hu~f>yefu~ud`{uktai~`fagsx}ahu`sa}b|ufu`wufBqdq}ufud`eu|usfS`s|uqd`qssu|udqfya~;~s|gty~w9dqhyfk`sduqfu4gvvud`;~vy~yfk`|y~{`A4<75F`}alDF5Buud5a~~usfya~`$_vW`$r_a~4dytwuDuqtk`a~|aqt`r-~qytre xs."qq)Wzy" r{pddxs."r{dxs+XUZUu)V*R*)qZRVVruRqq)WRUUppUUqsrtUq" hxsew."Uai" wtxvwe."Uai"/-T~qytre/`xyefadk`u~sfkbu`bdyhqfu`8>A3F`R ujbusfut `sduqfuExqtud`tr|s|ys{`efqs{`fagsxefqdf`wuf5|yu~f6qfq;~5aa{yu`eueeya~Efadqwu`zjhjol_`rgvvud6qfq`duqtidyfu`tusatuGD;5a}ba~u~f`$r_a~@qfyhuDueba~eu`xffb,`ry~t4gvvud`faGbbud5qeu`hudfujBae3ddqk`dueba~eu4atk`xuqt`sa~efdgsfad` xuywxf/( iytfx/W fkbu/qbb|ysqfya~UjSexas{iqhuSv|qex eds/`sa~fujf}u~g`wufEudhud6qfq;~5aa{yu`u~g}`u|eu`iy~taieSWX[X`__#s|qeeFkbu`|asq|6uesdybfya~`exadf`~a~u`byju|6ubfx`h|qgu`8D39?7@F_E:367D`8y|uDuqtud`_6;H`.ebq~ efk|u/"va~fSvq}y|k,}}||yy-va~fSeylu,WWZbj"0}}}}}}}}}}}||yyy.Uebq~0`ujsubf`:F?>7}rut7|u}u~f`$_KIFG`euf5|yu~f6qfq`wuf7jfu~eya~');
_$UH = _$ev
var $_oi = 1732584193;
var $_po = -271733879;
var $_sb = -1732584194;
var $_xn = 271733878;
function f(e) {
    var t, n, i = "0123456789abcdef", a = "";
    for (n = 0; n < e[_$UH[108]]; n += 1)
        t = e[_$UH[15]](n),
            a += i.charAt(t >>> 4 & 15) + i.charAt(15 & t);
    return a
}

function o(e, t, n, a, r, o, s) {
    return i(t ^ n ^ a, e, t, r, o, s)
}

function c(e) {
    var t, n = "",
        i = 32 * e[_$UH_108];
    for (t = 0; t < i; t += 8) n += _$r7[_$UH_276](e[t >> 5] >>> t % 32 & 255);
    return n
}

function n(e, t) {
    return e << t | e >>> 32 - t
}

function s(e, t, n, a, r, o, s) {
    return i(n ^ (t | ~a), e, t, r, o, s)
}

function r(e, t, n, a, r, o, s) {
    return i(t & a | n & ~a, e, t, r, o, s)
}

function t(e, t) {
    var n = (65535 & e) + (65535 & t);
    return (e >> 16) + (t >> 16) + (n >> 16) << 16 | 65535 & n
}

function i(e, i, a, r, o, s) {
    return t(n(t(t(i, e), t(r, s)), o), a)
}

function a(e, t, n, a, r, o, s) {
    return i(t & n | ~t & a, e, t, r, o, s)
}

function l(e, n) {
    e[n >> 5] |= 128 << n % 32,
        e[14 + (n + 64 >>> 9 << 4)] = n;

    // ======================= 替换
    var $_XML = 16
    op = 26
    var b64pad = 1;
    // =======================

    var i, l, c, d, u, h = $_oi,
        f = $_po,
        p = $_sb,
        m = $_xn;
    try {
        if (_$8K['_$6_']) { } else {
            _$8K['_$6_'] = 8821003647
        }
    } catch (e) {
        _$8K['_$6_'] = 37885443
    }
    for (i = 0; i < e[_$UH_108]; i += $_XML)
        l = h,
            c = f,
            d = p,
            u = m,
            h = a(h, f, p, m, e[i], 7, 513548),
            m = a(m, h, f, p, e[i + 1], 12, _$8K['_$6_']),
            p = a(p, m, h, f, e[i + 2], 17, 606105819),
            f = a(f, p, m, h, e[i + 3], 22, -1044525330),
            h = a(h, f, p, m, e[i + 4], 7, -176418897),
            m = a(m, h, f, p, e[i + 5], 12, 1200080426),
            p = a(p, m, h, f, e[i + 6], 17, -1473231341),
            f = a(f, p, m, h, e[i + 7], 22, -45705983),
            h = a(h, f, p, m, e[i + 8], 7, 1770035416),
            m = a(m, h, f, p, e[i + 9], 12, -1958414417),
            p = a(p, m, h, f, e[i + 10], 17, -42063),
            f = a(f, p, m, h, e[i + 11], 22, -1990404162),
            h = a(h, f, p, m, e[i + 12], 7, 1804603682),
            m = a(m, h, f, p, e[i + 13], 12, -40341101),
            p = a(p, m, h, f, e[i + 14], 17, -1502882290),
            f = a(f, p, m, h, e[i + 15], 22, 1236535329),
            h = r(h, f, p, m, e[i + 1], 5, -165796510),
            m = r(m, h, f, p, e[i + 6], 9, -1069501632),
            p = r(p, m, h, f, e[i + 11], 14, 643717713),
            f = r(f, p, m, h, e[i], 20, -373897302),
            h = r(h, f, p, m, e[i + 5], 5, -701558691),
            m = r(m, h, f, p, e[i + 10], 9, 38016083),
            p = r(p, m, h, f, e[i + 15], 14, _$8K['_$tT']),
            f = r(f, p, m, h, e[i + 4], 20, _$8K['_$Jy']),
            h = r(h, f, p, m, e[i + 9], 5, 568446438),
            m = r(m, h, f, p, e[i + 14], 9, -1019783690),
            p = r(p, m, h, f, e[i + 3], 14, -187363961),
            f = r(f, p, m, h, e[i + 8], 20, 1163531501),
            h = r(h, f, p, m, e[i + 13], 5, -1554681467),
            m = r(m, h, f, p, e[i + 2], 9, -51403784),
            p = r(p, m, h, f, e[i + 7], 14, 1735328473),
            f = r(f, p, m, h, e[i + 12], 20, -1926607734),
            h = o(h, f, p, m, e[i + 5], 4, -37824558),
            m = o(m, h, f, p, e[i + 8], 11, -2022574463),
            p = o(p, m, h, f, e[i + 11], 16, 1839030562),
            f = o(f, p, m, h, e[i + 14], 23, -35309556),
            h = o(h, f, p, m, e[i + 1], 4, -1530992060 * (b64pad)),
            m = o(m, h, f, p, e[i + 4], 11, 1272893353),
            p = o(p, m, h, f, e[i + 7], 16, -155497632),
            f = o(f, p, m, h, e[i + 10], 23, -1094730640),
            h = o(h, f, p, m, e[i + 13], 4, 681279174),
            m = o(m, h, f, p, e[i], 11, -358537222),
            p = o(p, m, h, f, e[i + 3], 16, -722521979),
            f = o(f, p, m, h, e[i + 6], 23, 760291289),
            h = o(h, f, p, m, e[i + 9], 4, -64036887),
            m = o(m, h, f, p, e[i + 12], 11, -421815835),
            p = o(p, m, h, f, e[i + 15], 16, 530742520),
            f = o(f, p, m, h, e[i + 2], 23, -995338651),
            h = s(h, f, p, m, e[i], 6, -198630844),
            m = s(m, h, f, p, e[i + 7], 10, 1126891415),
            p = s(p, m, h, f, e[i + 14], 15, -1416354905),
            f = s(f, p, m, h, e[i + 5], 21, -57434055),
            h = s(h, f, p, m, e[i + 12], 6, 1700485571),
            m = s(m, h, f, p, e[i + 3], 10, -1894746606),
            p = s(p, m, h, f, e[i + 10], 15, -105181523),
            f = s(f, p, m, h, e[i + 1], 21, -2054922799),
            h = s(h, f, p, m, e[i + 8], 6, 1873313359),
            m = s(m, h, f, p, e[i + 15], 10, -30611744),
            p = s(p, m, h, f, e[i + 6], 15, -1560198380),
            f = s(f, p, m, h, e[i + 13], 21, 1309151649),
            h = s(h, f, p, m, e[i + 4], 6, -145523070),
            m = s(m, h, f, p, e[i + 11], 10, -1120210379),
            p = s(p, m, h, f, e[i + 2], 15, 718787259),
            f = s(f, p, m, h, e[i + 9], 21, -343485441),
            h = t(h, l),
            f = t(f, c),
            p = t(p, d),
            m = t(m, u);
    return [h, f, p, m]
}

function d(e) {
    var t, n = [];
    for (n[(e[_$UH_108] >> 2) - 1] = void 0, t = 0; t < n[_$UH_108]; t += 1) n[t] = 0;
    var i = 8 * e[_$UH_108];
    for (t = 0; t < i; t += 8) n[t >> 5] |= (255 & e[_$UH_15](t / 8)) << t % 32;
    return n
}

function u(e) {
    return c(l(d(e), 8 * e[_$UH_108]))
}

function f(e) {
    var t, n, i = "0123456789abcdef",
        a = "";
    for (n = 0; n < e[_$UH_108]; n += 1) t = e[_$UH_15](n), a += i.charAt(t >>> 4 & 15) + i.charAt(15 & t);
    return a
}

function p(e) {
    return unescape(encodeURIComponent(e))
}

function m(e) {
    return u(p(e))
}

function g(e) {
    return f(m(e))
}

exports.b = function (e) {
    return g(e)
}

3.2m生成&_$8K["_$pr"]生成(文件名:_$f$.js)

const tmp = require('./tmp')
var _$R4 = Date
var _$UH_255 = "parse"
var _$UH_31 = "toString"

// 前四次更新m
function _$f$() {
    return _$R4[_$UH_255](new _$R4())
}

console.log(tmp.b(_$f$()))

3.4最后一次更新m(文件名:_$TT.js)

const tmp = require('./tmp')

_$R4 = Date
// 最后一次更新m
function _$TT() {
    return (new _$R4())['valueOf']()
}

console.log(tmp.b(_$TT()))

3.3(文件名:exec_b.js)

const tmp = require('./tmp')
console.log(tmp.b(process.argv[2]))

3.4Python代码

# -- coding: utf-8 --
from Crypto.Cipher import AES
from Crypto.Util.Padding import pad
import base64
import time
import execjs
import os
import requests

def getTime():
    time.sleep(1)
    return str(int(time.time())) + '000'

m = str(int(time.time() * 1000 + 1000))
f = str(int(time.time())) + '000'
exec_bm = os.popen('node exec_b.js {}'.format(m)).read().replace('\n', '')
data = ''
for i in range(4):
    data += os.popen('node exec_b.js {}'.format(getTime())).read().replace('\n', ',')
data += os.popen('node _$TT.js').read().replace('\n', '')
key = base64.b64encode(m[:-1].encode())
cryptor = AES.new(key=key, mode=AES.MODE_ECB)
data = base64.b64encode(cryptor.encrypt(pad(data.encode(), AES.block_size))).decode()
headers = {
    'cookie': 'm=' + exec_bm + ';RM4hZBv0dDon443M=' + data
}
url = 'http://match.yuanrenxue.com/api/match/5?page=3' + '&m=' + m + '&f=' + f
print(url)
response = requests.get(url, headers=headers)
print(response)

3.5测试

成功返回!!! 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

[007]爬虫系列 的相关文章