File size: 11,844 Bytes
00a0444
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
```html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>CodeCover Quest | Code Library</title>
    <link rel="icon" type="image/x-icon" href="/static/favicon.ico">
    <script src="https://cdn.tailwindcss.com"></script>
    <script src="https://unpkg.com/feather-icons"></script>
    <script src="https://cdn.jsdelivr.net/npm/vanta@latest/dist/vanta.waves.min.js"></script>
    <style>
        @import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&display=swap');
        body {
            font-family: 'Space Grotesk', sans-serif;
        }
        .gradient-bg {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
        }
        .code-block {
            background-color: rgba(15, 23, 42, 0.7);
            backdrop-filter: blur(10px);
        }
        .code-word {
            font-family: 'Courier New', monospace;
            background-color: rgba(30, 41, 59, 0.5);
            padding: 0.25rem 0.5rem;
            border-radius: 0.25rem;
            margin: 0.1rem;
            display: inline-block;
        }
        .code-word:hover {
            background-color: rgba(99, 102, 241, 0.5);
            transform: scale(1.05);
        }
    </style>
</head>
<body class="gradient-bg min-h-screen text-white">
    <div id="vanta-waves" class="fixed inset-0 z-0"></div>
    
    <div class="relative z-10 container mx-auto px-4 py-16">
        <header class="mb-8">
            <h1 class="text-4xl md:text-5xl font-bold mb-2 tracking-tight">Combinatorial Code Library</h1>
            <p class="text-lg opacity-90">Explore pre-computed covering codes for various parameters</p>
            <nav class="mt-4 flex space-x-4">
                <a href="/" class="text-white opacity-80 hover:opacity-100">← Back to Home</a>
                <a href="/pattern-analysis.html" class="text-white opacity-80 hover:opacity-100">Pattern Analysis →</a>
            </nav>
        </header>

        <div class="mb-8">
            <div class="flex flex-wrap gap-4 mb-6">
                <div class="code-block rounded-xl p-4 flex-1 min-w-[200px]">
                    <h3 class="font-bold mb-2 flex items-center">
                        <i data-feather="filter" class="mr-2"></i> Filter Codes
                    </h3>
                    <select id="codeTypeFilter" class="w-full bg-gray-800 text-white rounded px-3 py-2 mb-2">
                        <option value="all">All Types</option>
                        <option value="HDC">HDC Codes</option>
                        <option value="D">D Codes</option>
                    </select>
                    <select id="qFilter" class="w-full bg-gray-800 text-white rounded px-3 py-2 mb-2">
                        <option value="0">All Q Values</option>
                        <option value="2">Binary (q=2)</option>
                        <option value="3">Ternary (q=3)</option>
                    </select>
                    <select id="nFilter" class="w-full bg-gray-800 text-white rounded px-3 py-2">
                        <option value="0">All Lengths</option>
                        <option value="5">Length 5</option>
                        <option value="6">Length 6</option>
                        <option value="7">Length 7</option>
                        <option value="8">Length 8</option>
                        <option value="9">Length 9</option>
                        <option value="10">Length 10</option>
                        <option value="11">Length 11</option>
                        <option value="12">Length 12</option>
                        <option value="13">Length 13</option>
                    </select>
                </div>

                <div class="code-block rounded-xl p-4 flex-1 min-w-[200px]">
                    <h3 class="font-bold mb-2 flex items-center">
                        <i data-feather="info" class="mr-2"></i> Code Information
                    </h3>
                    <div class="mb-2">
                        <span class="opacity-80">Showing:</span>
                        <span id="showingCount" class="font-bold ml-2">0</span>
                    </div>
                    <div>
                        <span class="opacity-80">Total Codes:</span>
                        <span id="totalCount" class="font-bold ml-2">0</span>
                    </div>
                </div>
            </div>
        </div>

        <div id="codeContainer" class="grid grid-cols-1 gap-6">
            <!-- Code blocks will be loaded here -->
        </div>
    </div>

    <script>
        // Initialize Vanta.js effect
        VANTA.WAVES({
            el: "#vanta-waves",
            mouseControls: true,
            touchControls: true,
            gyroControls: false,
            minHeight: 200.00,
            minWidth: 200.00,
            scale: 1.00,
            scaleMobile: 1.00,
            color: 0x7d5fff,
            backgroundColor: 0x0,
            shininess: 35.00,
            waveHeight: 15.00,
            waveSpeed: 0.75,
            zoom: 0.85
        });

        // Code data from Python script
        const codeData = {
            // HDC2 Codes
            "HDC2(9,2)": ["000001101", "000010000", "001110010", "010100011", "011000011", "011101111", "100011111", "101110001", "101111100", "110000010", "110101110", "111001110", "100001101", "100010000", "100110010", "101010011", "101100011", "101101111", "110001111", "110110001", "110111100", "111000010", "111101110", "111111110"],
            "HDC2(9,3)": ["000000001", "0001101001", "0001101111", "0001110001", "0010010001", "0010110010", "0100011101", "0101011111", "0110000000", "0110010100", "0110010110", "0111001111"],
            "HDC2(9,4)": ["000000010", "0000001001", "0000010110", "0010011010", "0010011011", "0010110110", "0100100111", "0101001001", "0110001011", "0110100011"],
            "HDC2(10,2)": ["0000000001", "0000000101", "0000110010", "0001100000", "0001111111", "0010010011", "0010110001", "0011011110", "0011101100", "0011110000", "0100100110", "0101001100", "0101011001", "0101011101", "0101101011", "0110000111", "0110100101", "0110110100", "0110111000", "0111001010", "1000000001", "1000000101", "1000110010", "1001100000", "1001111111", "1010010011", "1010110001", "1011011110", "1011101100", "1011110000", "1100100110", "1101001100", "1101011001", "1101011101", "1101101011", "1110000111", "1110100101", "1110110100", "1110111000", "1111001010"],
            "HDC2(10,4)": ["0000000001", "0000000010", "0000001111", "0000010000", "0000110001", "0000110010", "0001111001", "0001111010", "0011111111", "0100000000", "0100000001", "0100000010"],
            "HDC2(10,5)": ["0000000001", "0000000010", "0000010110", "0000110001", "0001001110", "0100000001", "0100000010", "0100001010", "0100110001", "0101001110"],
            "HDC2(11,3)": ["00000000010", "00000110111", "00000111101", "00010100100", "00011111111", "00100001100", "00100101101", "00100101111", "00110000110", "00110110100", "01000001111", "01000011101", "00111111010", "00111111100", "01000010010", "01000010100", "01011010111", "01011011101", "01100001000", "01100010001", "01101110001", "01110000000", "01111000000", "01111011000", "01111110111", "01111111000", "01111111010", "01111111001"],
            "HDC2(11,4)": ["00000000001", "00000000010", "00000000111", "00000001000", "00000011111", "00000100000", "00000111111", "00001000000", "00001111111", "00010000000", "00111111111", "01000000000", "01000000001", "01000000010", "01111111111", "10000000000"],
            "HDC2(12,6)": ["000010011100", "0001001101101", "0001001110110", "0001001110100", "0001001110110", "0001001111101", "0010100111100", "0011001101101", "0011001110110", "0011001110100", "0011001110110", "0011001111101"],
            "HDC2(13,3)": ["0000001111011", "0000010000011", "0000100011111", "0001010110001", "0001100111101", "0001111000101", "0010011111011", "0010101000111", "0010110101001", "0010110111000", "0010111101001", "0010111101001", "0010111110111", "0011000111011", "0011001000001", "0011010101111", "0011011011001", "0011011101010", "0011011110111", "0011101101011", "0011111000111", "0100001010110", "0100101011110", "0100110000100", "0100111000000", "0101000010010", "0101101111110", "0110111101100", "0111000010000", "0111001010000", "0111010111110", "0111101011010", "0111110000111", "0111110101001", "1000010011001", "1000011001100", "1000011001100", "1000100000100", "1000111100110", "1001000000110", "1001000111111", "1001001000011", "1001010001111", "1001101011011", "1001110110001", "1010010111101", "1010011110011", "1010100000101", "1010101001111", "1010110101001", "1010110111000", "1010111101001", "1010111101001", "1010111110111", "1011000111011", "1011001000001", "1011010101111", "1011011011001", "1011011101010", "1011011110111", "1011101101011", "1011111000111", "1100001010110", "1100101011110", "1100110000100", "1100111000000", "1101000010010", "1101101111110", "1110111101100", "1111000010000", "1111001010000", "1111010111110", "1111101011010", "1111110000111", "1111110101001"],
            "HDC2(13,4)": ["0000000000110", "0000000001110", "0000000010110", "0000000011000", "0000000101100", "0000000111100", "0011111100011", "0011111110001", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "0011111111111", "001111111