const sleep=ms=>new Promise(r=>setTimeout(r,ms)); const propsOf = el => { for (const k of Object.keys(el)) if (k.startsWith('__reactProps$')) return el[k]; return null; }; const fire = (el) => { let t = el; for (let i=0;i<6&&t;i++){const q=propsOf(t); if(q&&typeof q.onClick==='function'){q.onClick({target:t,currentTarget:t,stopPropagation(){},preventDefault(){},nativeEvent:{},button:0,detail:1});return true;} t=t.parentElement;} return false; }; let leaf=null; for (const el of document.querySelectorAll('*')) if (el.children.length===0 && (el.textContent||'').trim()==='连接性错误 (166)') { leaf=el; break; } if(!leaf) return {err:'no leaf'}; fire(leaf); await sleep(2500); // find the pagination area: search rightSide panel for elements with digits/页 let side=null; for (const el of document.querySelectorAll('div.rightSide')) side=el; const txt = side ? (side.innerText||'').replace(/\s+/g,' ') : ''; const controls=[]; if (side) for (const el of side.querySelectorAll('li,button,span,div,select')) { const t=(el.innerText||'').trim(); if (el.offsetParent!==null && t && t.length<12 && /^[0-9]+$|页|条|›|»|>|下一/.test(t)) controls.push(t); } return {tail: txt.slice(-300), controls: [...new Set(controls)].slice(0,20)};