1# -*- coding: utf-8 -*- 2""" 3hpack/huffman_constants 4~~~~~~~~~~~~~~~~~~~~~~~ 5 6Defines the constant Huffman table. This takes up an upsetting amount of space, 7but c'est la vie. 8""" 9 10REQUEST_CODES = [ 11 0x1ff8, 12 0x7fffd8, 13 0xfffffe2, 14 0xfffffe3, 15 0xfffffe4, 16 0xfffffe5, 17 0xfffffe6, 18 0xfffffe7, 19 0xfffffe8, 20 0xffffea, 21 0x3ffffffc, 22 0xfffffe9, 23 0xfffffea, 24 0x3ffffffd, 25 0xfffffeb, 26 0xfffffec, 27 0xfffffed, 28 0xfffffee, 29 0xfffffef, 30 0xffffff0, 31 0xffffff1, 32 0xffffff2, 33 0x3ffffffe, 34 0xffffff3, 35 0xffffff4, 36 0xffffff5, 37 0xffffff6, 38 0xffffff7, 39 0xffffff8, 40 0xffffff9, 41 0xffffffa, 42 0xffffffb, 43 0x14, 44 0x3f8, 45 0x3f9, 46 0xffa, 47 0x1ff9, 48 0x15, 49 0xf8, 50 0x7fa, 51 0x3fa, 52 0x3fb, 53 0xf9, 54 0x7fb, 55 0xfa, 56 0x16, 57 0x17, 58 0x18, 59 0x0, 60 0x1, 61 0x2, 62 0x19, 63 0x1a, 64 0x1b, 65 0x1c, 66 0x1d, 67 0x1e, 68 0x1f, 69 0x5c, 70 0xfb, 71 0x7ffc, 72 0x20, 73 0xffb, 74 0x3fc, 75 0x1ffa, 76 0x21, 77 0x5d, 78 0x5e, 79 0x5f, 80 0x60, 81 0x61, 82 0x62, 83 0x63, 84 0x64, 85 0x65, 86 0x66, 87 0x67, 88 0x68, 89 0x69, 90 0x6a, 91 0x6b, 92 0x6c, 93 0x6d, 94 0x6e, 95 0x6f, 96 0x70, 97 0x71, 98 0x72, 99 0xfc, 100 0x73, 101 0xfd, 102 0x1ffb, 103 0x7fff0, 104 0x1ffc, 105 0x3ffc, 106 0x22, 107 0x7ffd, 108 0x3, 109 0x23, 110 0x4, 111 0x24, 112 0x5, 113 0x25, 114 0x26, 115 0x27, 116 0x6, 117 0x74, 118 0x75, 119 0x28, 120 0x29, 121 0x2a, 122 0x7, 123 0x2b, 124 0x76, 125 0x2c, 126 0x8, 127 0x9, 128 0x2d, 129 0x77, 130 0x78, 131 0x79, 132 0x7a, 133 0x7b, 134 0x7ffe, 135 0x7fc, 136 0x3ffd, 137 0x1ffd, 138 0xffffffc, 139 0xfffe6, 140 0x3fffd2, 141 0xfffe7, 142 0xfffe8, 143 0x3fffd3, 144 0x3fffd4, 145 0x3fffd5, 146 0x7fffd9, 147 0x3fffd6, 148 0x7fffda, 149 0x7fffdb, 150 0x7fffdc, 151 0x7fffdd, 152 0x7fffde, 153 0xffffeb, 154 0x7fffdf, 155 0xffffec, 156 0xffffed, 157 0x3fffd7, 158 0x7fffe0, 159 0xffffee, 160 0x7fffe1, 161 0x7fffe2, 162 0x7fffe3, 163 0x7fffe4, 164 0x1fffdc, 165 0x3fffd8, 166 0x7fffe5, 167 0x3fffd9, 168 0x7fffe6, 169 0x7fffe7, 170 0xffffef, 171 0x3fffda, 172 0x1fffdd, 173 0xfffe9, 174 0x3fffdb, 175 0x3fffdc, 176 0x7fffe8, 177 0x7fffe9, 178 0x1fffde, 179 0x7fffea, 180 0x3fffdd, 181 0x3fffde, 182 0xfffff0, 183 0x1fffdf, 184 0x3fffdf, 185 0x7fffeb, 186 0x7fffec, 187 0x1fffe0, 188 0x1fffe1, 189 0x3fffe0, 190 0x1fffe2, 191 0x7fffed, 192 0x3fffe1, 193 0x7fffee, 194 0x7fffef, 195 0xfffea, 196 0x3fffe2, 197 0x3fffe3, 198 0x3fffe4, 199 0x7ffff0, 200 0x3fffe5, 201 0x3fffe6, 202 0x7ffff1, 203 0x3ffffe0, 204 0x3ffffe1, 205 0xfffeb, 206 0x7fff1, 207 0x3fffe7, 208 0x7ffff2, 209 0x3fffe8, 210 0x1ffffec, 211 0x3ffffe2, 212 0x3ffffe3, 213 0x3ffffe4, 214 0x7ffffde, 215 0x7ffffdf, 216 0x3ffffe5, 217 0xfffff1, 218 0x1ffffed, 219 0x7fff2, 220 0x1fffe3, 221 0x3ffffe6, 222 0x7ffffe0, 223 0x7ffffe1, 224 0x3ffffe7, 225 0x7ffffe2, 226 0xfffff2, 227 0x1fffe4, 228 0x1fffe5, 229 0x3ffffe8, 230 0x3ffffe9, 231 0xffffffd, 232 0x7ffffe3, 233 0x7ffffe4, 234 0x7ffffe5, 235 0xfffec, 236 0xfffff3, 237 0xfffed, 238 0x1fffe6, 239 0x3fffe9, 240 0x1fffe7, 241 0x1fffe8, 242 0x7ffff3, 243 0x3fffea, 244 0x3fffeb, 245 0x1ffffee, 246 0x1ffffef, 247 0xfffff4, 248 0xfffff5, 249 0x3ffffea, 250 0x7ffff4, 251 0x3ffffeb, 252 0x7ffffe6, 253 0x3ffffec, 254 0x3ffffed, 255 0x7ffffe7, 256 0x7ffffe8, 257 0x7ffffe9, 258 0x7ffffea, 259 0x7ffffeb, 260 0xffffffe, 261 0x7ffffec, 262 0x7ffffed, 263 0x7ffffee, 264 0x7ffffef, 265 0x7fffff0, 266 0x3ffffee, 267 0x3fffffff, 268] 269 270REQUEST_CODES_LENGTH = [ 271 13, 23, 28, 28, 28, 28, 28, 28, 28, 24, 30, 28, 28, 30, 28, 28, 272 28, 28, 28, 28, 28, 28, 30, 28, 28, 28, 28, 28, 28, 28, 28, 28, 273 6, 10, 10, 12, 13, 6, 8, 11, 10, 10, 8, 11, 8, 6, 6, 6, 274 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 8, 15, 6, 12, 10, 275 13, 6, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 276 7, 7, 7, 7, 7, 7, 7, 7, 8, 7, 8, 13, 19, 13, 14, 6, 277 15, 5, 6, 5, 6, 5, 6, 6, 6, 5, 7, 7, 6, 6, 6, 5, 278 6, 7, 6, 5, 5, 6, 7, 7, 7, 7, 7, 15, 11, 14, 13, 28, 279 20, 22, 20, 20, 22, 22, 22, 23, 22, 23, 23, 23, 23, 23, 24, 23, 280 24, 24, 22, 23, 24, 23, 23, 23, 23, 21, 22, 23, 22, 23, 23, 24, 281 22, 21, 20, 22, 22, 23, 23, 21, 23, 22, 22, 24, 21, 22, 23, 23, 282 21, 21, 22, 21, 23, 22, 23, 23, 20, 22, 22, 22, 23, 22, 22, 23, 283 26, 26, 20, 19, 22, 23, 22, 25, 26, 26, 26, 27, 27, 26, 24, 25, 284 19, 21, 26, 27, 27, 26, 27, 24, 21, 21, 26, 26, 28, 27, 27, 27, 285 20, 24, 20, 21, 22, 21, 21, 23, 22, 22, 25, 25, 24, 24, 26, 23, 286 26, 27, 26, 26, 27, 27, 27, 27, 27, 28, 27, 27, 27, 27, 27, 26, 287 30, 288] 289