<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
    <meta name="robots" content="noindex, nofollow">
    <title>bafang cn Vip</title>
    <style>
        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
            -webkit-tap-highlight-color: transparent;
        }
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
            background-color: #0e1114;
            color: #e8eaed;
            display: flex;
            flex-direction: column;
            min-height: 100vh;
        }
        .main-content {
            flex: 1;
            width: 100%;
            max-width: 600px;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
        }
        .header {
            padding: 32px 20px 24px;
        }
        .header-overline {
            font-size: 13px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1.2px;
            color: #8ab4f8;
            margin-bottom: 8px;
            display: block;
            opacity: 0.8;
        }
        .header-title {
            font-size: 28px;
            font-weight: 700;
            margin: 0;
            line-height: 1.25;
            color: #ffffff;
            letter-spacing: -0.5px;
        }
        .list-container {
            padding: 0 20px;
            flex: 1;
        }
        .list_1 {
            list-style: none;
            padding: 0;
            margin: 0;
            display: flex;
            flex-direction: column;
            gap: 12px;
            counter-reset: result-counter;
        }
        .list-item {
            margin: 0;
            padding: 0;
        }
        .dir-link {
            display: flex;
            align-items: center;
            background-color: #181b21;
            border: 1px solid #2a2e37;
            border-radius: 12px;
            padding: 18px 16px;
            text-decoration: none;
            color: inherit;
            min-height: 76px;
            transition: transform 0.15s ease, background-color 0.15s ease;
        }
        .dir-link:active {
            background-color: #20242c;
            transform: scale(0.98);
        }
        .dir-link::before {
            counter-increment: result-counter;
            content: "0" counter(result-counter);
            font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
            font-size: 14px;
            font-weight: 500;
            color: #5f6368;
            align-self: flex-start;
            margin-top: 4px;
            margin-right: 16px;
        }
        .dir-content {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }
        .kw-text {
            font-size: 19px;
            font-weight: 500;
            line-height: 1.35;
            color: #e8eaed;
        }
        .dir-icon {
            color: #5f6368;
            margin-left: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .dir-icon svg {
            width: 22px;
            height: 22px;
            fill: currentColor;
        }
        .list-item:first-child .dir-link {
            background-color: #141f2e;
            border-color: rgba(138, 180, 248, 0.4);
            padding: 24px 16px;
            min-height: 94px;
        }
        .list-item:first-child .dir-link::before {
            color: #8ab4f8;
            opacity: 0.9;
        }
        .list-item:first-child .dir-content::before {
            content: "Top result";
            font-size: 11px;
            font-weight: 700;
            text-transform: uppercase;
            color: #8ab4f8;
            background: rgba(138, 180, 248, 0.15);
            align-self: flex-start;
            padding: 4px 8px;
            border-radius: 6px;
            margin-bottom: 6px;
            letter-spacing: 0.5px;
        }
        .list-item:first-child .kw-text {
            font-size: 22px;
            font-weight: 600;
            color: #ffffff;
        }
        .list-item:first-child .dir-icon {
            color: #8ab4f8;
        }
        .no-results {
            padding: 24px;
            text-align: center;
            color: #9aa0a6;
            font-size: 16px;
        }
        .footer {
            padding: 48px 20px 32px;
            text-align: center;
            font-size: 13px;
            display: flex;
            justify-content: center;
            gap: 24px;
        }
        .footer a {
            color: #5f6368;
            text-decoration: none;
        }
        .footer a:active {
            color: #9aa0a6;
        }
    </style>
</head>
<body>

    <main class="main-content">
        <header class="header">
            <span class="header-overline">Directory Index</span>
            <h1 class="header-title">bafang cn Vip</h1>
        </header>

        <div class="list-container">
            <ul class="list_1">
                            <li class="list-item">
                                <a href="/kw-click?keyword=new%20electric%20bikes&position=0&clickUrl=https%3A%2F%2Fintivesearch.com%2Fsearch%3Fqs%3Dqsx-26ae3040cd61de230f05e6405fb6b17b20c9e89011353bbb28f1ae3a56653206e8a641c4a64fa37d513d25e36da9caea357bfe5033b6d8a52796d77115107922e44f27731fa7ab8e9e0b441ec32ef802dfe578ee6a4703087fadaa15990097db9da9d295e687a473d59c5fe648dc9172a60560c4fc71326b2997da3ece5da18466038ffd76f79b2196e4d46f6e9ebd962fcc251b101a8cfa28b3d72f25e7ad2f462e0a1a67e7996b8fdeb88f0db7d5ea38cd969d84e2e8d945c3281f7a842be6d8bee1fbf00bd7db434d72e057827e06a02b3c16607896915f09e82bae45b7df08ee74646b9dcc52089506abbf40dbb811d743489a587c1f929f9061a770d53a02b00382dcf8451a4a66aa128ef0195e9bae2d8044b88ecf35c42ab50e441638ffc250c85e45a92e8eed1123cf036b9b817fe8b71c741f2a78120e9cda8ea77c0f075c9d5cdbd41196e0b8539eafd5cc22b8ceb4380bcc572e8a0712be1518876daca3f91d07bac7deba6ebb96e255e4ee3e96ce5f9fba55cc69bb81dfec2f991623d2a72f48db6849eea3c1d528aba7dfb1933547ab6b0b7d77f71ed82aebc7331dd2cfef105505528fd8b54697beb6ce6790c68745eb9b2fd5dd0c0ce4d5210b16dcb2957a18c3ec7e3a2dc20ec390baa027661adf6f907deb8d10d1312ee99439d0407213639068cdd2ba825e7e6a3ecbb9ed671e1a432e7eb2b6da3170246ff0b2d7c6bede532b151c4b688a15145de12a85c527f385180544f9ccbeb3c183d2bc63baf5e21c3737ce.80ec5f81898b87989a567cbc8ac664bc%26type%3Ddm_t2GsA9xY__bafangcn_vip%26dmn%3Dbafangcn.vip%26q%3Dnew%2Belectric%2Bbikes%26testId%3D17%26tkn%3Dt2GsA9xY&testId=17&tkn=t2GsA9xY&source=&sid=aaf6c362-b90d-489a-8ee6-5789daeff7c5" class="dir-link" target="_blank">
                                    <div class="dir-content">
                                        <span class="kw-text">new electric bikes</span>
                                    </div>
                                    <div class="dir-icon">
                                        <svg viewBox="0 0 24 24"><path d="M9.29 15.88L13.17 12 9.29 8.12c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0l4.59 4.59c.39.39.39 1.02 0 1.41l-4.59 4.59c-.39.39-1.02.39-1.41 0-.38-.39-.39-1.03 0-1.42z"/></svg>
                                    </div>
                                </a>
                            </li>
                            <li class="list-item">
                                <a href="/kw-click?keyword=affordable%20electric%20bicycles&position=1&clickUrl=https%3A%2F%2Fintivesearch.com%2Fsearch%3Fqs%3Dqsx-26ae3040cd61de230f05e6405fb6b17b20c9e89011353bbb28f1ae3a56653206e8a641c4a64fa37d513d25e36da9caea357bfe5033b6d8a52796d77115107922e44f27731fa7ab8e9e0b441ec32ef802dfe578ee6a4703087fadaa15990097db9da9d295e687a473d59c5fe648dc9172a60560c4fc71326b2997da3ece5da18466038ffd76f79b2196e4d46f6e9ebd962fcc251b101a8cfa28b3d72f25e7ad2f462e0a1a67e7996b8fdeb88f0db7d5ea38cd969d84e2e8d945c3281f7a842be6d8bee1fbf00bd7db434d72e057827e06a02b3c16607896915f09e82bae45b7df08ee74646b9dcc52089506abbf40dbb811d743489a587c1f929f9061a770d53a02b00382dcf8451a4a66aa128ef0195e9bae2d8044b88ecf35c42ab50e441638ffc250c85e45a92e8eed1123cf036b9b817fe8b71c741f2a78120e9cda8ea77c0f075c9d5cdbd41196e0b8539eafd5cc22b8ceb4380bcc572e8a0712be1518876daca3f91d07bac7deba6ebb96e255e4ee3e96ce5f9fba55cc69bb81dfec2f991623d2a72f48db6849eea3c1d528aba7dfb1933547ab6b0b7d77f71ed82aebc7331dd2cfef105505528fd8b54697beb6ce6790c68745eb9b2fd5dd0c0ce4d5210b16dcb2957a18c3ec7e3a2dc20ec390baa027661adf6f907deb8d10d1312ee99439d0407213639068cdd2ba825e7e6a3ecbb9ed671e1a432e7eb2b6da3170246ff0b2d7c6bede532b151c4b688a15145de12a85c527f385180544f9ccbeb3c183d2bc63baf5e21c3737ce.80ec5f81898b87989a567cbc8ac664bc%26type%3Ddm_t2GsA9xY__bafangcn_vip%26dmn%3Dbafangcn.vip%26q%3Daffordable%2Belectric%2Bbicycles%26testId%3D17%26tkn%3Dt2GsA9xY&testId=17&tkn=t2GsA9xY&source=&sid=aaf6c362-b90d-489a-8ee6-5789daeff7c5" class="dir-link" target="_blank">
                                    <div class="dir-content">
                                        <span class="kw-text">affordable electric bicycles</span>
                                    </div>
                                    <div class="dir-icon">
                                        <svg viewBox="0 0 24 24"><path d="M9.29 15.88L13.17 12 9.29 8.12c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0l4.59 4.59c.39.39.39 1.02 0 1.41l-4.59 4.59c-.39.39-1.02.39-1.41 0-.38-.39-.39-1.03 0-1.42z"/></svg>
                                    </div>
                                </a>
                            </li>
                            <li class="list-item">
                                <a href="/kw-click?keyword=bike%20lights%20reviews&position=2&clickUrl=https%3A%2F%2Fintivesearch.com%2Fsearch%3Fqs%3Dqsx-26ae3040cd61de230f05e6405fb6b17b20c9e89011353bbb28f1ae3a56653206e8a641c4a64fa37d513d25e36da9caea357bfe5033b6d8a52796d77115107922e44f27731fa7ab8e9e0b441ec32ef802dfe578ee6a4703087fadaa15990097db9da9d295e687a473d59c5fe648dc9172a60560c4fc71326b2997da3ece5da18466038ffd76f79b2196e4d46f6e9ebd962fcc251b101a8cfa28b3d72f25e7ad2f462e0a1a67e7996b8fdeb88f0db7d5ea38cd969d84e2e8d945c3281f7a842be6d8bee1fbf00bd7db434d72e057827e06a02b3c16607896915f09e82bae45b7df08ee74646b9dcc52089506abbf40dbb811d743489a587c1f929f9061a770d53a02b00382dcf8451a4a66aa128ef0195e9bae2d8044b88ecf35c42ab50e441638ffc250c85e45a92e8eed1123cf036b9b817fe8b71c741f2a78120e9cda8ea77c0f075c9d5cdbd41196e0b8539eafd5cc22b8ceb4380bcc572e8a0712be1518876daca3f91d07bac7deba6ebb96e255e4ee3e96ce5f9fba55cc69bb81dfec2f991623d2a72f48db6849eea3c1d528aba7dfb1933547ab6b0b7d77f71ed82aebc7331dd2cfef105505528fd8b54697beb6ce6790c68745eb9b2fd5dd0c0ce4d5210b16dcb2957a18c3ec7e3a2dc20ec390baa027661adf6f907deb8d10d1312ee99439d0407213639068cdd2ba825e7e6a3ecbb9ed671e1a432e7eb2b6da3170246ff0b2d7c6bede532b151c4b688a15145de12a85c527f385180544f9ccbeb3c183d2bc63baf5e21c3737ce.80ec5f81898b87989a567cbc8ac664bc%26type%3Ddm_t2GsA9xY__bafangcn_vip%26dmn%3Dbafangcn.vip%26q%3Dbike%2Blights%2Breviews%26testId%3D17%26tkn%3Dt2GsA9xY&testId=17&tkn=t2GsA9xY&source=&sid=aaf6c362-b90d-489a-8ee6-5789daeff7c5" class="dir-link" target="_blank">
                                    <div class="dir-content">
                                        <span class="kw-text">bike lights reviews</span>
                                    </div>
                                    <div class="dir-icon">
                                        <svg viewBox="0 0 24 24"><path d="M9.29 15.88L13.17 12 9.29 8.12c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0l4.59 4.59c.39.39.39 1.02 0 1.41l-4.59 4.59c-.39.39-1.02.39-1.41 0-.38-.39-.39-1.03 0-1.42z"/></svg>
                                    </div>
                                </a>
                            </li>
                            <li class="list-item">
                                <a href="/kw-click?keyword=best%20ebike%20models&position=3&clickUrl=https%3A%2F%2Fintivesearch.com%2Fsearch%3Fqs%3Dqsx-26ae3040cd61de230f05e6405fb6b17b20c9e89011353bbb28f1ae3a56653206e8a641c4a64fa37d513d25e36da9caea357bfe5033b6d8a52796d77115107922e44f27731fa7ab8e9e0b441ec32ef802dfe578ee6a4703087fadaa15990097db9da9d295e687a473d59c5fe648dc9172a60560c4fc71326b2997da3ece5da18466038ffd76f79b2196e4d46f6e9ebd962fcc251b101a8cfa28b3d72f25e7ad2f462e0a1a67e7996b8fdeb88f0db7d5ea38cd969d84e2e8d945c3281f7a842be6d8bee1fbf00bd7db434d72e057827e06a02b3c16607896915f09e82bae45b7df08ee74646b9dcc52089506abbf40dbb811d743489a587c1f929f9061a770d53a02b00382dcf8451a4a66aa128ef0195e9bae2d8044b88ecf35c42ab50e441638ffc250c85e45a92e8eed1123cf036b9b817fe8b71c741f2a78120e9cda8ea77c0f075c9d5cdbd41196e0b8539eafd5cc22b8ceb4380bcc572e8a0712be1518876daca3f91d07bac7deba6ebb96e255e4ee3e96ce5f9fba55cc69bb81dfec2f991623d2a72f48db6849eea3c1d528aba7dfb1933547ab6b0b7d77f71ed82aebc7331dd2cfef105505528fd8b54697beb6ce6790c68745eb9b2fd5dd0c0ce4d5210b16dcb2957a18c3ec7e3a2dc20ec390baa027661adf6f907deb8d10d1312ee99439d0407213639068cdd2ba825e7e6a3ecbb9ed671e1a432e7eb2b6da3170246ff0b2d7c6bede532b151c4b688a15145de12a85c527f385180544f9ccbeb3c183d2bc63baf5e21c3737ce.80ec5f81898b87989a567cbc8ac664bc%26type%3Ddm_t2GsA9xY__bafangcn_vip%26dmn%3Dbafangcn.vip%26q%3Dbest%2Bebike%2Bmodels%26testId%3D17%26tkn%3Dt2GsA9xY&testId=17&tkn=t2GsA9xY&source=&sid=aaf6c362-b90d-489a-8ee6-5789daeff7c5" class="dir-link" target="_blank">
                                    <div class="dir-content">
                                        <span class="kw-text">best ebike models</span>
                                    </div>
                                    <div class="dir-icon">
                                        <svg viewBox="0 0 24 24"><path d="M9.29 15.88L13.17 12 9.29 8.12c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0l4.59 4.59c.39.39.39 1.02 0 1.41l-4.59 4.59c-.39.39-1.02.39-1.41 0-.38-.39-.39-1.03 0-1.42z"/></svg>
                                    </div>
                                </a>
                            </li>
                            <li class="list-item">
                                <a href="/kw-click?keyword=buy%20bicycle%20helmets&position=4&clickUrl=https%3A%2F%2Fintivesearch.com%2Fsearch%3Fqs%3Dqsx-26ae3040cd61de230f05e6405fb6b17b20c9e89011353bbb28f1ae3a56653206e8a641c4a64fa37d513d25e36da9caea357bfe5033b6d8a52796d77115107922e44f27731fa7ab8e9e0b441ec32ef802dfe578ee6a4703087fadaa15990097db9da9d295e687a473d59c5fe648dc9172a60560c4fc71326b2997da3ece5da18466038ffd76f79b2196e4d46f6e9ebd962fcc251b101a8cfa28b3d72f25e7ad2f462e0a1a67e7996b8fdeb88f0db7d5ea38cd969d84e2e8d945c3281f7a842be6d8bee1fbf00bd7db434d72e057827e06a02b3c16607896915f09e82bae45b7df08ee74646b9dcc52089506abbf40dbb811d743489a587c1f929f9061a770d53a02b00382dcf8451a4a66aa128ef0195e9bae2d8044b88ecf35c42ab50e441638ffc250c85e45a92e8eed1123cf036b9b817fe8b71c741f2a78120e9cda8ea77c0f075c9d5cdbd41196e0b8539eafd5cc22b8ceb4380bcc572e8a0712be1518876daca3f91d07bac7deba6ebb96e255e4ee3e96ce5f9fba55cc69bb81dfec2f991623d2a72f48db6849eea3c1d528aba7dfb1933547ab6b0b7d77f71ed82aebc7331dd2cfef105505528fd8b54697beb6ce6790c68745eb9b2fd5dd0c0ce4d5210b16dcb2957a18c3ec7e3a2dc20ec390baa027661adf6f907deb8d10d1312ee99439d0407213639068cdd2ba825e7e6a3ecbb9ed671e1a432e7eb2b6da3170246ff0b2d7c6bede532b151c4b688a15145de12a85c527f385180544f9ccbeb3c183d2bc63baf5e21c3737ce.80ec5f81898b87989a567cbc8ac664bc%26type%3Ddm_t2GsA9xY__bafangcn_vip%26dmn%3Dbafangcn.vip%26q%3Dbuy%2Bbicycle%2Bhelmets%26testId%3D17%26tkn%3Dt2GsA9xY&testId=17&tkn=t2GsA9xY&source=&sid=aaf6c362-b90d-489a-8ee6-5789daeff7c5" class="dir-link" target="_blank">
                                    <div class="dir-content">
                                        <span class="kw-text">buy bicycle helmets</span>
                                    </div>
                                    <div class="dir-icon">
                                        <svg viewBox="0 0 24 24"><path d="M9.29 15.88L13.17 12 9.29 8.12c-.39-.39-.39-1.02 0-1.41.39-.39 1.02-.39 1.41 0l4.59 4.59c.39.39.39 1.02 0 1.41l-4.59 4.59c-.39.39-1.02.39-1.41 0-.38-.39-.39-1.03 0-1.42z"/></svg>
                                    </div>
                                </a>
                            </li>
            </ul>
        </div>
    </main>

    <footer class="footer">
        <a href="https://intivesearch.com/privacy?dmn=bafangcn.vip&testId=17" target="_blank">Privacy Policy</a>
        <a href="https://intivesearch.com/terms?dmn=bafangcn.vip&testId=17" target="_blank">Terms of Service</a>
    </footer>

    <script>
        window.__cherami = {
            sessionId: "aaf6c362-b90d-489a-8ee6-5789daeff7c5",
            source: "",
            tkn: "t2GsA9xY",
            reportUrl: window.location.origin + '/cherami/report'
        };
    
        // Report an event. `payload.wa` is sent to the legacy report, `payload.dmFeed`
        // to the new dm-feed report; include only the destinations this event needs.
        function report(action, payload) {
            payload = payload || {};
            const data = { action: action, _ts: String(Date.now()) };
            const source = window.__cherami.source;
            const sessionId = window.__cherami.sessionId;
            const tkn = window.__cherami.tkn;
    
            // Carry the partner token so the server resolves the correct campaign
            // instead of falling back to the default token.
            if (tkn) data.tkn = tkn;
    
            if (payload.wa) {
                const wa = Object.assign({}, payload.wa);
                if (source) wa.cid = source;
                if (sessionId) wa.sid = sessionId;
                data.wa = JSON.stringify(wa);
            }
            if (payload.dmFeed) {
                const dmFeed = Object.assign({}, payload.dmFeed);
                if (source) dmFeed.source = source;
                if (sessionId) dmFeed.session_id = sessionId;
                data.dmFeed = JSON.stringify(dmFeed);
            }
    
            const reportUrl = new URL(window.__cherami.reportUrl);
            reportUrl.search = new URLSearchParams(data).toString();
    
            const img = new Image();
            img.src = reportUrl.toString();
        }
    
        function getCanvasFingerprint() {
            try {
                const canvas = document.createElement('canvas');
                const ctx = canvas.getContext('2d');
                if (!ctx) return null;
    
                canvas.width = 200;
                canvas.height = 50;
                ctx.textBaseline = 'top';
                ctx.font = '14px Arial';
                ctx.textBaseline = 'alphabetic';
                ctx.fillStyle = '#f60';
                ctx.fillRect(125, 1, 62, 20);
                ctx.fillStyle = '#069';
                ctx.fillText('Cherami fingerprint', 2, 15);
                ctx.fillStyle = 'rgba(102, 204, 0, 0.7)';
                ctx.fillText('Cherami fingerprint', 4, 17);
    
                return canvas.toDataURL().substring(0, 100);
            } catch (e) {
                return null;
            }
        }
    
        function getWebGLFingerprint() {
            try {
                const canvas = document.createElement('canvas');
                const gl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
                if (!gl) return null;
    
                const debugInfo = gl.getExtension('WEBGL_debug_renderer_info');
                if (debugInfo) {
                    return {
                        vendor: gl.getParameter(debugInfo.UNMASKED_VENDOR_WEBGL) || '',
                        renderer: gl.getParameter(debugInfo.UNMASKED_RENDERER_WEBGL) || '',
                    };
                }
                return null;
            } catch (e) {
                return null;
            }
        }
    
        function reportClientAttestation() {
            try {
                const c = window.__cherami || {};
                if (!c || !c.sessionId) {
                    return;
                }
    
                const canvasFp = getCanvasFingerprint();
                const webglFp = getWebGLFingerprint();
    
                const attestation = JSON.stringify({
                    jsExecuted: true,
                    screenW: window.screen.width,
                    screenH: window.screen.height,
                    dpr: window.devicePixelRatio || 1,
                    maxTouchPoints: navigator.maxTouchPoints || 0,
                    webdriver: navigator.webdriver === true,
                    tzOffset: new Date().getTimezoneOffset(),
                    cookieEnabled: navigator.cookieEnabled,
                    languagesCount: navigator.languages ? navigator.languages.length : 0,
                    platform: navigator.platform || '',
                    canvasFp: canvasFp,
                    webglVendor: webglFp ? webglFp.vendor : null,
                    webglRenderer: webglFp ? webglFp.renderer : null,
                    hardwareConcurrency: navigator.hardwareConcurrency || 0,
                    deviceMemory: navigator.deviceMemory || 0,
                });
    
                const payload = {
                    action: 'clientCheck',
                    wa: { extraString1: attestation, sid: c.sessionId || null },
                    dmFeed: { extra_string1: attestation, source: c.source || null, session_id: c.sessionId || null },
                };
    
                if (navigator.sendBeacon) {
                    const blob = new Blob([JSON.stringify({ action: payload.action, payload })], {
                        type: 'application/json',
                    });
                    navigator.sendBeacon(c.reportUrl, blob);
                    return;
                }
    
                fetch(c.reportUrl, {
                    method: 'POST',
                    headers: { 'Content-Type': 'application/json' },
                    body: JSON.stringify({ action: payload.action, payload }),
                    keepalive: true,
                    credentials: 'include',
                }).catch(function() {
                    // Silent fail - don't break page
                });
            } catch (err) {
                // Silent fail - don't break page
            }
        }
    
        window.addEventListener('load', function() {
            reportClientAttestation();
        });
    
        // ─── Funnel click tracking ────────────────────────────────────────────
        var pageOpenedAt = Date.now();
    
        function msSincePageOpen() {
            return Date.now() - pageOpenedAt;
        }
    
        // Which part of the result the user clicked (stored as click_zone).
        function keywordClickZone(clicked) {
            if (clicked.closest('.arrow') || clicked.closest('.kw-arrow')) return 'arrow';
            if (clicked.closest('.anchortext') || clicked.closest('.kw-text')) return 'text';
            return 'row';
        }
    
        function adClickZone(clicked) {
            if (clicked.closest('.arrow_wrap')) return 'cta';
            if (clicked.closest('.title')) return 'title';
            if (clicked.closest('.desc')) return 'description';
            if (clicked.closest('.url')) return 'domain';
            return 'ad';
        }
    
        function trackKeywordClick(link, clicked) {
            if (link.dataset.tracked) return;
            link.dataset.tracked = '1';
            var separator = link.href.indexOf('?') === -1 ? '?' : '&';
            link.href += separator + 'ttc=' + msSincePageOpen() + '&zone=' + encodeURIComponent(keywordClickZone(clicked));
        }
    
        function trackAdClick(link, clicked) {
            var ads = document.querySelectorAll('a.content-wrap');
            report('adClick', {
                dmFeed: {
                    page: 'ads',
                    step: 'click',
                    ads_variant: '',
                    test_id: '17',
                    root_domain: 'bafangcn.vip',
                    position: Array.prototype.indexOf.call(ads, link) + 1,
                    click_zone: adClickZone(clicked),
                    time_to_click_ms: msSincePageOpen()
                }
            });
        }
    
        // pointerdown/keydown fire before the new tab's URL is locked in; click is too late.
        function onKeywordIntent(event) {
            try {
                var clicked = event.target;
                if (!clicked || !clicked.closest) return;
                if (event.type === 'keydown' && event.key !== 'Enter') return;
    
                var keywordLink = clicked.closest('a[href*="/kw-click"]');
                if (keywordLink) trackKeywordClick(keywordLink, clicked);
            } catch (err) {}
        }
    
        document.addEventListener('pointerdown', onKeywordIntent, true);
        document.addEventListener('keydown', onKeywordIntent, true);
    
        document.addEventListener('click', function (event) {
            try {
                var clicked = event.target;
                if (!clicked || !clicked.closest) return;
    
                var adLink = clicked.closest('a.content-wrap');
                if (adLink) {
                    trackAdClick(adLink, clicked);
                }
            } catch (err) {}
        }, true);
    </script>    <script>
        const script = document.createElement('script');
        script.src = `https://s.appreports.net/serenity.js?v=${new Date().getTime()}`;
        script.onload = () => {
            const maxAttempts = 3;
            let attempts = 0;
    
            const interval = setInterval(() => {
                attempts++;
                if (typeof window.initDMKeywords === 'function') {
                    try {
                        const props = {"trafficSrc":"intango_park_dm_1638_1","ysid":"32I2J0DL7O4KM"} || {};
    
                        const keywordElements = document.querySelectorAll('.list_1 a');
                        const ykws = Array.from(keywordElements)
                            .map(function (a) { return a && a.textContent ? a.textContent.trim() : ''; })
                            .filter(function (text) { return text.length > 0; })
                            .join(',');
    
                        console.log({ ...props, ykws });
                        window.initDMKeywords({ ...props, ykws });
                        clearInterval(interval); // Stop the interval if init is called successfully
                    } catch (e) {
                        console.error('initDMKeywords failed:', e);
                        clearInterval(interval); // Stop the interval if reporting threw
                    }
                } else if (attempts >= maxAttempts) {
                    console.error('window.initDMKeywords is not a function after multiple attempts.');
                    clearInterval(interval); // Stop the interval if max attempts reached
                }
            }, 1000);
        }
        document.head.appendChild(script);
    </script>
    <script>
        window.addEventListener('load', function () {
            try {
                var anchors = document.querySelectorAll('.list_1 a');
                var kws = Array.prototype.map.call(anchors, function (a) {
                    var kwTextNode = a.querySelector('.kw-text');
                    return (kwTextNode && kwTextNode.textContent ? kwTextNode.textContent.trim() : '');
                }).filter(function (s) { return s.length > 0; }).join(',');
                report('keywordsPageLoad', {
                    wa: {
                        extraString1: kws,
                        extraString2: 'bafangcn.vip',
                        extraString3: '17'
                    },
                    dmFeed: {
                        page: 'keywords',
                        step: 'load',
                        kw_variant: 'keywords-test-9',
                        test_id: '17',
                        root_domain: 'bafangcn.vip',
                        item_count: kws ? kws.split(',').length : 0
                    }
                });
            } catch (e) {
                report('keywordsPageLoad', {
                    wa: {
                        extraString1: '',
                        extraString2: 'bafangcn.vip',
                        extraString3: '17'
                    },
                    dmFeed: {
                        page: 'keywords',
                        step: 'load',
                        kw_variant: 'keywords-test-9',
                        test_id: '17',
                        root_domain: 'bafangcn.vip',
                        item_count: 0
                    }
                });
            }
        });
    </script>
</body>
</html>